Development Notes: Commander Cookie

Aug 20

Cookie Asteroids

This post is long overdue. I usually prefer to write up development notes for my games as soon as possible after finishing them, but I never got around to putting this one up until now.

Commander Cookie (in Space!) was one of my first games written in ActionScript 3. I wanted to do something simple to help me get up to speed with the new language. I figured making a clone of a classic arcade game (Asteroids) would let me focus on the programming without getting caught up in gameplay issues.

The graphical concept for Commander Cookie was inspired by this fantastic stop-motion short Game Over by Pes.

The film recreates a lot of the classic arcade games, and I thought it would be really great if you could somehow create a playable version of that. A stop-motion game, instead of just a stop-motion film.

As I said, part of the goal in making this game was to get comfortable programming in Actionscript 3. The transition wasn’t too tough, though it took a while to get the hang of some of the trickier concepts like the display list and events. Colin Moock’s book Essential Actionscript 3.0 was a lot of help when I was first getting started.

Gary Rosenzweig’s AS3 Game Programming University was a lot of help too. Although it’s a bit on the simple side in terms of programming concepts, it was really helpful to see games being built in AS3. He even has an Asteroids-style game as one of the examples in the book.

In order to create a stop-motion feel for the game I had to create all the graphics with photos of real-world objects. I settled on the concept of having all of the elements made of candy or junk food: the asteroids are cookies of different sizes, the player’s ship is made from Good & Plenty, the enemy ship from Mike & Ikes, and the bullets are Nerds. I used gummy letters and some other numbers and letters from the craft store to create the scores and in-game text.


Next began the painstaking task of masking out all the assets in Photoshop (removing them from the background). This took quite a while since a lot of the elements would be animated, meaning a single object would be made up of multiple photos.

I was immediately disappointed with the results when I started importing the photo assets into the game. Everything looked too smooth and computer-animated, instead of having that jerky stop-motion feel.
I was able to add some artificial jerkiness to some of the elements (like the score at the bottom and the ‘Level Clear’ message), but overall I still think everything moves too smoothly.

Another big problem was that I decided to rotate the elements programmatically, instead of taking separate photos of the objects rotated to different degrees like you would in a stop-motion film. This contributes to the too-smooth feeling, but it also means that the shadows on the objects rotate with the objects, which is enough to break the stop-motion illusion. I briefly considered trying to re-shoot all the objects with multiple degrees of rotation, but it would have been a huge task to mask out all those photos and the extra assets would have increased the file size of the final game by orders of magnitude.

I also don’t think it’s apparent enough that all of the elements are photos of actual objects. This is mostly just due to my inexperience with this style of stop-motion. Most of the genius of the Pes videos is how he is able to use objects that are very recognizable and transform them into something else through animation.

In the end I accomplished my main goal of learning enough Actionscript 3 to make a real game, but the game I made isn’t that great. It doesn’t have enough of the stop-motion feel to be as visually stunning as I had hoped, and since it’s just a clone of a very familiar game, it isn’t original enough in its gameplay to be much fun to play for long.

But don’t let that dissuade you from giving it a try:
Play Commander Cookie (in Space!)

Let me know what you think.