DEMOCRACY - DEVELOPER POST MORTEM
So what was involved in the development of this game? First a few factoids: The game took roughly a year to make, there was only a single programmer (me) and 1 artist involved in the development. It was developed in C++ on Windows XP using Visual C++ 6. Other software I used included Whole Tomatoes excellent Visual Assist add-in for C++, and the free 1 client edition of perforce source-control software.
Amazingly enough I didn't sit down and write a design doc, then start coding. In fact Democracy is the end product of a long line of failed projects that never got anywhere. There's no point in working on a game you aren't motivated by, and I had a LOT of false starts. A brief scan of my hard disk shows projects called 'Gridlock' 'SpaceCat' 'HouseBuyer' and 'Tank Battle'. None of which got very far. The only one which got going was 'Space Governor' which was influenced by the 'planet' screen in imperium galactica 2. This started as a game where you ran several planets, then narrowed down to 1. Eventually I realised you could make a good game from running a single country. Initially, it was fictional, then I started basing them on real countries, and Democracy was born.
Things that worked out lovely:
I used perforce and visual assist. VA was pretty cheap all things considered, and it sped up development time no-end. perforce gave me peace of mind more than anything else, but it was well worth setting up considering how quick it was to do so.
I reused the graphics engine from my other games, adding some small bits here and there. This simplified things. I bought a sound library (KSound) in order to use ogg files for the sounds. this was hassle-free and saved me lots of code time. Well worth it.
I put political quotes into the game, pretty much on a whim. People absolutely love them, I'm sure they contribute 10% to the games success. I made a conscious effort to treat my players like intelligent educated people. Few games do this now, preferring to assume anyone not playing Doom is just after a match-3 puzzle game. I think this paid off.
I hired an artist to do the policy icons, I tried doing them myself but it was rubbish and took ages. James did a superb job, and also contributed a lot of general interface ideas that were very helpful.
Using a generic custom neural network design for the code. This was a bit evil to program initially, but now its done I can't imagine the game having the same flexibility any other way. I'm very happy with this system. I also used csv files and excel for my data, very easy to edit and use.
Nightmares and horror:
Actually very little of this...but I had a seriously hard time designing the interface for the game. There were a LOT of false starts. I couldn't think what to do behind the icons (once I'd decided on an icon-based game), at one stage it was a map of the country, then it was a simple grid, then it was user-selectable from pretty pictures like the windows desktop, then eventually it became flags.
I had some problems with the way I mixed GDI (for the games text) with DirectX. Some video cards didn't like it (almost always ATI ones), and I had to re jig and fiddle with the engine quite a bit before I could easily use GDI without causing major slowdowns.
Also, not staying on top of the phpbb hacking arms-race meant my forums got wiped out mid beta-testing. This didn't help things.
This game went well, it turned out exactly as I'd imagined it, with people having to make tough choices to run the country how they want and still stay in power. Its also sold extremely well. I'm very pleased with the outcome, and working on patches and improvements to the game now.