We’ve been asked lately how hard is it to make a game. The answer is: it’s easy to make a game, but it’s hard to make a good one.
One of the most important things in game development is to make a good prototype. It’s really something many of us forget (we did the same thing). You can make a good game without a prototype, but more likely that you’ll spend much time on something no one likes.
So, rule number one: make a playable prototype. We’ve spent 1 and a half year on making an engine for the game and not the game itself. The result is that we have a world where you can go, explore, dig, build, jump and fly, but this is not a game and no one spend more then 5 minutes playing it.
Rule number two: limit development time. This one may be difficult to achieve as we want to make a good game, but remember: not many succeed from the first attempt. Look, for example, at the list of games developed by Rovio (studio that made Angry Birds). There are 41 games in a period of 4 years (2008-2012) listed on Wikipedia. There are practically more of them as some games never come out.
Rule number three: use a bug/issue tracker. The use of an issue tracker is a must, even if you work alone. With it you can plan milestones (releases / sprints / iterations), even if you work alone. We’ve been using Redmine. It covers our needs. Integration against a source control system is not a must, but it’s nice to have. And it is needless to say a source control system really is a must.
Rule number four: one click build process. It must be simple to make a release and it must be simple to start debugging the game under development. This should also apply to external libraries, but it’s not too easy to maintain huge blobs of library releases in a source control system.
Another rule that we’ve learned in a hard way is that the game should have a nice look and feel. You shouldn’t spend most of your time on graphics, but without it no one will ever even try it. We meet people based on how they look, unfortunately. The feedback on one of our first “Monster”-demos was “It looks like crap!”.
And, of course, build your audience! These people will help you stay on path and move forward, they will provide you feedback and help achieve your goals in the end. Read, for example, a wootcomms blog for ideas on how to do it.
Yes, it’s hard to make a game. Unless you have a great idea or just want to experiment with audio, graphics, networking and user input in the same program, it’s not rewarding.