Friday, October 16, 2009

Release... pending

I can't believe it, but I'm almost done.
Bar saving out high scores, options to turn the sound off, pause screens and similar trivia, it's done.

Best of all, the game is really good. I'd buy it (although saying that reminds me of Buffalo Bill preparing for some naked mirror dancing in Silence of the Lambs - but maybe that's just me. Wait... I'm drifting...)

...and I've always thought you can tell how good a game is by how long the testing process takes.

Testing the game takes a long time. This is not because there's so much to debug (it's a modest little title, as it was supposed to be), but because I keep forgetting I'm supposed to be debugging it and find myself - half an hour later - staring at the Game Over screen wondering what it is I was supposed to be doing.

After the enormous massive-team, aeon-long timescale endeavours of the Fable series, this is a small, simple, addictive, fun little game. No feature-bloat. No agonising over key design decisions, story points, or cuts, and now it's pretty much done.

There has been something quite wonderful about the process of making Bounce, and the demands it has placed on me, personally, rather than some other unfortunate. Turnaround speed and feature implementation is frequently measured in minutes.

I make up to eight builds a day. That's not just eight compiles, but eight instances where I feel such a significant amount has changed that I need to individually name and backup the file to avoid significant (and heartbreaking) loss.

Here's an example. Up until yesterday, the beginning of the game was far too abrupt. From the start menu you tapped the screen and you were off! The time limit began ticking down immediately. It was jarring and stressful, nothing like the calm, rhythmic experience that the game was supposed to be.

As such I decided to add a countdown to the beginning, in cute Japanese racing-game fashion. I went downstairs to my sound recording PC, booted up Audacity and counted down into a microphone three times. I layered these over each other, then pitch-shifted the sample up an octave. I then split the file into the individual sounds and plonked them in dropbox, a remarkable little file-sharing and backup utility.

I returned upstairs to the dining table where I code (my wife, Kara, is appalled that our main living space has somehow become my office) and dragged the files from dropbox into the game project. Done.

I could see the outcome and efficacy of my design decision less than half an hour after I made it. I repeated this process about 6 times for the different sounds and found I had finished the entire game's sound effect set before lunch. Yes, alright, I did at one point have a balloon that sounded like a very specific brand of American flushing toilet, but I went back and changed it. In minutes. Not months.


I must make mention here of the wonderful sfxr, without which the whole sound creation thing would have been much more painful. Anyone who ever worked on the C64 will find themselves crying a small tear of nostalgia.

So now I have a game sitting in front of me. It requires a few cosmetic tweaks, but it's pretty much done...

...or is it? Now I have to make a decision whether to release early and update, or alternatively to keep adding to the feature-set. I mean, I have a great idea for a way to use rare cheeses in the game. And don't get me started on how a hard-hat could really turn the whole bonus experience on its head.

Perhaps things haven't changed quite so much after all.