[Enthusiastic independent developer and Xbox Live Indie Games repeat offender Nathan Fouts (Weapon Of Choice) comes back with a postmortem of Explosionade, a game conceived to be developed in one month to help with cash flow for his studio's efforts in developing larger titles.]
Development started on August 26th, and the original (internal) launch date of September 25 was set to get an initial sales surge on the books for third quarter of 2010.
We missed that goal, didn't make as much money in third quarter as needed, but managed to stay in business full-time through painful but artful money-shifting. The good news is the game turned out better!
1. Focused Vision
In a theme throughout the What Went Right section, design direction on Explosionade was like a laser-knife cutting through butter, under a microscope, conducted by Cyberdyne.
That is to say, while the actual game ideas may have fluctuated between brilliant and dim, there was no lolly-gagging during actual development.
Various level designs trying to create as much variety as possible.
I picked the design by mashing together several other designs of mine. I had plenty of ideas waiting around; it was a matter of picking something I knew could be fun, but also something doable, and within a small scope. Everything about the design was created to be reusable but still enjoyable and feel original.
The core idea of "invading tiny alien bases" drove everything from the design of intricate paths the player could take, to the mocking laugh animation the soldiers had when they managed to damage the player mech. If something did not fit this concept, it was cut. Immediately. Each piece had a purpose and we had no time for exploring frivolities. (Trust me, I like late-night, exploratory coding frivolities as much as the next developer, this just wasn't the time.)
Horronym soldier mocking the damaged player mech.
2. Rapid Languages
XNA was used to write the game and DarkBASIC was used to create the level editor. Both languages are well-suited for extremely fast prototyping. Richard Rosenthal, our current intern, knows DarkBASIC like some mystical coding wizard, and while I have no working of the language or IDE, it seemed to produce quixotic code, yet tangible and quality final results.
My original idea was to create "in-code" levels just like I did for Shoot 1UP, but since there was massive amounts more level collision in Explosionade it just made more sense to create a level editor. Fortunately Richard already had experience creating graphical editors before and was able to whip up something in DarkBASIC in literally a weekend.
I've written before about the amazing results one can derive from XNA for both Xbox 360 and PC. It bears repeating that all the robust, well-designed code libraries supported again made it possible to deliver a sweet-playing and -looking game to the home console with very little fuss.
3. Pre-existing Engine
Starting and finishing a game is tough even for those who've done it many times, but starting a game completely from scratch is truly a Herculean task that often needs not happen. Shoot 1UP was built on an XNA game starter kit, and Explosionade was built upon Shoot 1UP.
New sprite animation techniques and coding voodoo were further honed for Explosionade which made for massive amounts of polish and detail in a super-short amount of time. From collision, to player handling, to sprite libraries, having an entire game already built accelerated development as much as I could hope for. Special care was taken to make the gameplay feel very different in every way, but things that worked such as gameplay speed adjustments for players, and button remapping, were kept.
The peer-to-peer leaderboards in Explosionade were the fruit of Spyn Doctor Games (Johannes Hubert) and his near drag-and-drop library gave us an effective leg up here as well.
Early mech and player concepts. At one point the character was going to be human with a jetpack.