6 Nov 2007

Finally, My Project

So, I have been putting it off a lot and I decided to do something about it.
This whole blog is supposed to in one part, describe the steps and progress of my project and write some things about my progress with MySQL (and other databases).
I actually did plan to use stored procedures very much when doing my project so the 2 areas are very much connected to one another.


Main Idea

I wanted to make a web-based text game called Shadow People. Shadow people will be a game to do with government agencies and spy organizations.
There will be two different groups of agencies: Government owned/regulated ones and Terrorists/Freelance ones.
If it helps you imagining how it will look like, if anyone saw the series “"La Femme Nikita" with the actress Peta Wilson.
The game revolves round the cool and secret world of small yet highly effective organizations that either try to keep order in the world or cause chaos.
These organizations have the highest skilled personal, best equipment possible and will stop at nothing till they get what they came for.


Feature List

Going with the idea of feature-driven development, here is the features list or what you will be able to do in the game.

  1. Create and manage your own spy agency
    1. Create your new character to go on missions and lead others
    2. Choose to be either a government agent or terrorist
    3. Choose your field of expertise
    4. Employ agents into your agency
    5. Train your agents
    6. Install research facilities in your base
    7. Purchase new weapons
    8. Install security facilities in your base
  2. Manage your agents to help them succeed in their assignment (Learn the art of choosing the right agent for the right task)
    1. Find out as much as you can about the assignment
    2. Choose the agents according to their field of expertise and your own personal tactic to succeed in the assignment
    3. Equip the agents with armor, weapons and extra gadgets to increase their likelihood of succeeding in the assignment
  3. Send teams to go on missions and campaigns
    1. Send your agents on missions for reputation or profit.
    2. Go on long campaigns that have many missions and many rewards
  4. Send teams to attack other players bases
  5. Join with other players and go on missions or attack other bases
  6. Create or join a spy network and play along side other players
  7. Play “capture the flag” games versus other spy networks.

How I will do it

I don't know if this is an entirely smart decision, but I want to create the website using database stored procedures. Even to the level of managing the html code inside the database.
I predict that this will be a bit long winded, but I am determined to at least try. If anything I will benefit from the experience.
The advantage of doing it this way, is that I am assisted by configuration-management principles, which basically means that I am forced to keep the html code in the database and then compile along side the data to produce results. Once I keep the html code in the database, it must be in form that is easy to store. If I will need to make changes to it in the future, it should be easy to find because it was stored properly. Unlike PHP which on the one hand is very simple to create, but I have run into situations when I had to change something and then realize I needed to manually change many PHP pages.

This is similar to something I saw on Oracle called Database-assisted Web Publishing using Java Stored Procedure, where they used their WebCache along side their Java Stored Procedures. The Java creates the pages and the WebCache saves the pages after they are processed. If there is a change to the pages, the Java informs the WebCache to delete the specific page and updates it.



So theoretically, you have pre-processed, already-saved in memory and instantly available pages. But theory is a nice thing and reality is another.


Conclusion

I am crazy and wish me luck. If you are interested, please contact me to contribute.

Thank you for reading my blog.

No comments:

Post a Comment