[quick promotion!] I just finished the game Dead End for iPhone and iPod touch. It's on iTunes HERE for $0.99. You should go buy it! And play it! And hopefully love it!
It took me about 8 months of spare time to build Dead End, my first professional solo game, and if I were to say what was the strongest element of my process, it would be what I'm calling "under-design".
A game is anything but simple. Any solid, complete game ends up far more intricate than planned. I doubt that, unless you're a serious vet of the industry, you ever know what will be involved with any project. New things come up, goals change, features get expanded, other features no longer make sense when you are actually playing your game.
So when you set about to create a game solo or with a small team (or maybe even a large one), start with the smallest idea, because even that small idea has depth. A single seed can grow an amazingly complex tree of a game, and everything that grows from those simple roots will be more connected than if you throw a bunch of seeds all together. (Disclaimer: every rule has an exception, this is just my personal rule. There are plenty of exceptions.)
I learned a similar lesson when I was getting my degree in animation. One of my favorite teachers told us to cut, cut, cut our goals down. He didn't expect anything more than fifteen seconds of animation. Fifteen seconds was all we needed for the entire semester. He said even five seconds would be acceptable. But that five seconds better be the sweetest damn thing. Our teacher wanted to love every second of our final projects. Every frame better look fantastic. If we dared to make 60 seconds of animation, well, good luck! The best projects that semester were all twenty to thirty seconds.
This is how I approach my games: I see what I do as primarily craft. To me, that means simply that a game begins with a goal. Every game I make has a different goal, and I build up and out from there.
For my experimental game Sarajevo, I have one goal: create some sense of being a helpless civilian in a warzone. I started with something simple: How do you cope with living in a place that no longer has the safety you took for granted? So as a designer, how do I remove safety? Hidden, terrifying, dangerous threats such as snipers and mortars; these seemed to be a dominant topic from my reading about the siege of Sarajevo. So that's the first aspect I have only begun to tackle. If I am successful with that, I may work on how you interact with others or how war destroys the services we take for granted. I didn't start with all three concepts. If I can create the fear of being shot by snipers, the terror of avoiding places and yet not being able to avoid death, then I may try to flesh out the next aspect of being a civilian in war.
Total Toads, another WIP, is rooted in the idea that, unlike many games these days where you're score always goes up, I wanted the experience to be about you changing your score. You can keep playing the game and your score may never go up. Rather, your proficiency affects your score. And since it was for iPhone, it should have a swipe-based mechanic. And there's no reason this couldn't be family friendly. Total Toads is thus an answer to the small set of design goals I had when starting that project. (It's still not done for a variety of reasons, not least of which is free time.)
And for Dead End, my now-shipped solo iPhone game (I'M SUPER EXCITED THAT I COMPLETED SOMETHING ON MY OWN), my goal was to make a commercial, one-button game that I could ship in two weeks. HA. I originally was brainstorming games involving 4 gestures. HA. I didn't even know how to detect any gesture at all, so I said screw it, let's cut it down to one button, not even gesture-based, since that would take me weeks to learn. The player can press or not. Boolean control. Done. But what could I do with it besides making an endless running/jumping game?
Several years ago I tackled this challenge in a gamecareerguide.com game design contest. (I highly recommend trying out their design contests if you want to stretch your design chops.) I came up with a one-button FPS that involved the computer doing much of the thinking for you. You were a paranoid guy running through some town, being chased, perhaps by the CIA or FBI or who knows. You just ran and ran, and if you pressed space-bar, you stopped, slowly spinning, slowly checking your surroundings, looking where next to run. Wait too long and your guy gets antsy and his spinning becomes erratic. That was it. One button FPS. SOLVED.
Turns out this also translated nicely to 2d on the iPhone, a platform reliant upon simple interaction. And even though it started simple, the goal grew and shifted. I didn't have the resources or know-how to make large levels, so it shifted to a single screen. Well then, we need to make that screen engaging. Let's throw lots of enemies. What kind of enemies would flood a screen? Well (and I was reluctant to do this) zombies make a lot of sense to swarm a paranoid scared guy. So theme shifted to fit game constraints. Then I needed more guns to make gameplay more varied, then waves to break up the insanity so it's easier to play. (A hard-core mode will be returning eventually, without waves.) Then, spend several months adding art, dealing with xcode, and refining the gameplay, messing with speed and sizes and so on. Oh, then we need sound, and music. And some sort of information for beginners. And menus. And high scores! And some achievements. Finally, three weeks ago I submitted, after starting in late January.
I have more content to add, but the core game is done, and the process was plenty complicated. I started simple, knowing that simplicity was the root of all my favorite complexity. And the project ended up plenty complex for one newbie programmer.