Over the past few weeks I have been reading about and coding my first iPhone game. So far it has proved very fun.
In my entire software programming career I have done a lot of business applications. Mostly in the financial services industry. There’s a lot of mundane stuff that comes up with those sort of applications where you end up coding admin interfaces, tweaking the layout of input fields, or handling errors with friendly messages. Testing this involves (hopefully) some automated unit tests which are a tedious job to write.
Games however are a different beast. At least for the type of game that I’m writing, which is a 2D scroller, most of the things that need to be tested are related to gameplay and require actually playing the game to see how code changes affect the feel. Things like how fast should the bullets move or how sensitive should the movement controls be take some hands on testing.
It’s a workflow that I enjoy using. Write some code, play the game, make notes of things that need to be done, then code some more, and repeat.
It can also be a good laugh to see how some simple changes can affect the game play. Make the controllers extremely sensitive and suddenly the dynamic of the game changes. Introduce a devastating new weapon and it becomes too easy. There seems to be a delicate balance between all the factors involved to produce something fun.
It is fun to write code that actually makes me laugh out loud when I test it out.