12 Jul 2008

The Project That Bit Back

Last November, I wrote an article describing an idea I had for a game/website.
Here is a short recap:

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.

Since then, I've been.. well.. busy and I haven't really done any work on it. To be honest, I had my doubts that any non-graphical game wouldn't really succeed in the current 3D game world.
A while back in 2002-2003, I used to play text-based games and I kind of liked them. But, they eventually died out (at least the ones I played).
Even though it is a niche market, I didn't think people today would be patient enough to even try it out.

I have a lot of time on my hands recently and I decided to give it another go. If anything, just to learn and improve myself.

For the technologies I want to use, obviously, I want to use MySQL as my database. As for the web platform (or MVC or... etc), I was thinking of using Erlang, simply because I wanted to get some experience in it. However, I am not entirely sure yet which language to use ( PHP, Ruby, Java..). I'll start thinking about the database tables I need and also write some code in stored procedures.

I'd prefer to put some (if not a lot) of the logic inside the database for several reasons:
1) I don't know which web platform I want yet or I might decide to change later (that's a tip I saw in a presentation from Giuseppe Maxia).
2) I plan on using decision tables for some of the game AI (I never really programmed a game AI before, but decision tables seem to be much better then a list of if-then-else statements that I might change later).
3) I like to be special....
4) Lets you see the speed of what you developed straight away when you run it in the query browser (I like this one).

There are a few disadvantages:
1) Its not that easy to debug errors. I just get a general error that the whole stored procedure doesn't work. It doesn't tell me where it doesn't work or it executes the script and then I need to check it myself. I might need to learn a bit more about it, but thats why I started this project.
2) There isn't really a proper IDE to develop. Nothing like eclipse for example. I may be wrong and I still need to go back and try Toad for MySQL, but it seems to me somewhat difficult to find more intuitive IDE. (leave a comment if you know a good one)

Well, wish me luck.
I plan on using my blog to write about how I progress with the project. Hopefully I wont be so lazy this time and finish it. But I have to admit, that thinking up a game, mechanics and rules for the game, is not that easy. So I better sharpen my math skillz.


  1. Nice idea. Best of luck for that !

    About IDE, I use Toad For MySQL, as I has used Toad For Oracle in my previous projects. Toad For MySQL has its own share of problems.

    You could try SQLyog or Monyog for development. But they are not that intuitive.

  2. I also like the idea of storing logic inside of the database. Actually MySQL Stored Procedures are much more robust than most folks realize. I've used them for just about everything including code generation and HTML output. In each case it's blazingly fast.

    Look forward to learning more about your project in the future. I'm a fan of the text based games myself.