A Postmortem of Air Hare
Background
Air Hare is a 2D action/platform game that I began working on in June 2004. I had the concept for the game months earlier and the motivation to make it was that I wanted to make a tribute game to the 2D platform games of the 16-bit era. It was originally planned as a GBA game, but I switched to the DX Framework for Windows to expedite development. I had wanted Air Hare to be finished in two months (by the end of July), or at the latest by the end of August. Obviously, this didn't work out, but the game was more or less completed in time for the IGF Student Showcase submission deadline. In its present state, Air Hare is not ideally complete, since the game does contain some bugs and the level design and enemy placement is not polished. However, the game is very playable, and the project has been deemed complete for the time being.
What Went Right
Thorough Design
The strongest aspect of the development of Air Hare was the game design. Well before I began coding, I came up with the basic ideas for the gameplay, wrote up a rough design document and drew concept art. After I began coding, I continued to add my ideas to the design document which I eventually wrote up formally (you can read it here). Having a clearly documented design made the development go more smoothly because I had a reference of everything I wanted the game to include. Also, when I realized I would have to trim out planned features to finish the game in time, the ideas were preserved in the design document and will not be forgotten for the future.
Platform Switch to PC
After only a few days of working with the unofficial Gameboy Advance development tools, I decided to develop Air Hare for PC instead and use the DX Framework. At the time, I was a little disappointed in myself for not sticking with the tougher GBA hardware. But in retrospect, using the DX Framework made the development much easier and much quicker, and there is no way the game would have been completed in the same time frame had I not switched.
Finding an Artist
At the end of August 2004, the game was still incomplete, mainly due to the lack of enemy sprites. When school began, I wanted to find an artist through Wolverine Soft to help me finish the game. Luckily, when I said I needed someone to make sprites for me at the Wsoft mass meeting, Kay Fedewa gladly volunteered. Without her help on art in the last 2 months of development, Air Hare would have had some very ugly and incomplete sprites, since I had no time during school to attempt to make them myself.
Jib Kidder's Music
From the inception of the project, I knew I wanted Jib Kidder to make music for the game, since I had heard a lot of his music and thought the style would fit perfectly with a game like Air Hare. Despite the fact that the music was rushed into the game at the very end, I think the tracks fit very well and add a lot to the game.
Cool Gameplay
Despite all of the final game's shortcomings as compared to the original concept, I feel that the gameplay still shines through as fun and original. When people play Air Hare I expect them to think, "This game is an interesting 2D platformer with some cool ideas, and with more polish and variety it would be a great game."
What Went Wrong
Art Disaster
The art situation in the summer months (June, July, and August) was probably the greatest setback in the development of Air Hare. The amount of art I asked of Justin was far beyond what he had the time and desire to do, yet week after week I had faith that he would pull through for me. This misplacement of faith was partially my fault, but had he not continually told me that he really had the desire to work, I would not have had so much faith in him. Half way through July it became too apparent that he was not going to get nearly what was required done, and I was forced to all but abandon work on the programming and begin doing art myself. As Justin continued to work on the Air Hare sprite at a snail's pace, I did the art for all six worlds, as well as all the menus. By the end of August, all the level and menu art was complete, but the Air Hare sprite was still lacking a few of the animations and the enemy sprites were non-existent.
Poor Code Quality
As I programmed Air Hare, I coded a lot of things with the intention of returning to them later and cleaning up the code, since I was the sole coder on the project. This turned out to be a terrible thing to do because when I was forced to begin working on art, the amount of time I thought I had to finish coding the game was essentially cut in half. This led to most of the bad quality code to remain in there and many of the planned features to not make it into the game.
Lack of Level Editor
As I began designing the layouts of the levels, I did everything directly in the text files that consisted of a matrix of ASCII characters to represent the layout and a list of item and enemy locations. As I got further along, the need for a level editor became increasingly apparent, but since I had already completed many of the levels, I decided to forego writing one. In retrospect, had I taken the time to write a level editor at the beginning, I would have saved a huge amount of time later and it would have been well worth it.
Unrealistic Scheduling
My original plan to finish the game in just two months was simply unrealistic. Had everything gone smoothly, finishing by the end of the summer probably would have been possible. However, when the project was not finished at the end of the summer and school began, development nearly halted. It was nearly impossible to get any solid work done on Air Hare when I had school work to do. The final two months of development essentially amounted to just a week of work.
Team Structure
The way the Air Hare "team" (consisting of myself, Justin Wolfson, Kay Fedewa, Jib Kidder and Tim Chambers) was structured was as follows: I was the core of the development team and lead the project. All the other members of the team worked only with me to contribute their portions. To put it simply, the other team members never even met each other. I've learned that this is a terrible way to structure a game development team since it caused the other members of the team to lack connection to the project. Rather than the team's project, Air Hare was my project and the others helped by contributing their work. When the team members lack connection to the project, effort level diminishes and work quality suffers.
Conclusion
Despite the many problems with the development, I consider Air Hare to be largely a success, mainly because I learned a huge amount about the game development process and how to manage it. I also think the finished product is pretty good, even if it fails to live up to the original concept. Some day, I would like to remake Air Hare for the Gameboy Advance or even make a 3D version of the game.
Note: views and opinions expressed in this article are the author's and are not necessarily those of Wolverine Soft.
