How To Begin Programming A Game
A lot of programmers (and non-technical friends) wonder how I start a game. For me, it usually starts with a few hand-drawn pictures of how I imagine the game looking. Next, I play the game in my head. I imagine pieces moving and the buttons I have to click.
The first important step, though, is the "feature prototype". I pick a feature in the game and code as quickly as I can to get to that point. In Mythicum Goetia, that was movement and combat.
I took a detour getting there, though. I went ahead and built a lobby system and a way to add artificial players. To the new coders out there, DON'T DO THIS! I shouldn't have done this, but I trust that detours won't prevent me from finishing the game.
So what would I have done without A.I. players? I would have made the game temporarily a hot-seat game. You can play for everybody while testing the first few features.
N.R. made 3D dice for the game. I had some bouncy-ball code for another project and I adapted it for dice bouncing against each other. It's mostly convincing and it adds a lot to the board-game aspects. Feature #1: Implemented and worth the time!
The next feature was to test combat. This is a really rough prototype. It even requires that you use a little imagination because we have none of the weapons/spells available right now. Using your imagination is okay. In fact, seeing 75% of your idea implemented helps to motivate you and focuses your efforts on what will be more fun. Feature #2: Almost there and looks to be fun! It might need some tweaking, but it's better to know after a few weeks of coding then after months of writing the game.
Next is a more practical feature... loading and saving. We want players to be able to re-start a board game as though you left it on the table. There will be a few issues: connecting a player to his character's slot and having A.I.s take over for people who can't continue. I'll talk about this once I've got some progress.
Last Updated (Sunday, 2009 August 30, 04:47)