Development Notes: Commander Cookie

Aug 20
2011

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.

Concept
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.

Programming
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.

Graphics
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.

Candy

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.

Failures
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.

Conclusion
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.

Investing in Myself

Jul 28
2011

There’s a great post on Daniel Jalkut’s Red Sweater blog called Invest In Yourself.

But many of life’s investments are risk free precisely because we don’t expect anything tangible in return. So be sure to spend at least some of your dollars and time on something more valuable and permanent than money. Education, artistic expression, good health, time with family & friends, travel, or pursuing your own particular favorite pastime.

Learning and mastering new skills is something I really enjoy. I do it mostly because it brings me pleasure, but I like the idea that I’m also making an investment in myself. I’m becoming a smarter, happier, and (hopefully) more interesting person by spending the time to learn something new. And I’m having fun doing it!

Flash Tutorial: Countdown Timer

May 12
2010

Countdown Timer Tutorial

Another tutorial for TutsPlus. This time I show how to create an airport-style flipping countdown timer.

The effect requires some complex layering of the graphic elements to make everything look right. It was a lot of work to try to explain everything clearly and concisely.

Check out the tutorial here:
Countdown in Style With an Airport Terminal Timer

Flash Tutorial: RPG Text System

Apr 14
2010

RPG Text Tutorial

I wrote this tutorial to show how to create an RPG-style text system. This method is similar to the one I used in the Vermonia Guardian Quest game.

Check out the tutorial here:
Make an RPG-Style Text System for Your Next Game

Flash Tutorial: Retro CRT Effect

Mar 12
2010

CRT Distortion Tutorial

In this tutorial I show how to separate a graphic into its three component color channels. I then animate each channel individually to create a retro style CRT distortion effect.

Check out the tutorial here:
Create a Retro CRT Distortion Effect Using RGB Shifting

Flash Tutorial: Pinball-Style Rolling Score Counter

Feb 28
2010

Pinball Score Tutorial

For my second tutorial on TutsPlus I show how to create a reusable score class that ‘counts’ up a new score when players earn points in your game.

I also show how to create the graphics for the glowing LED number display.

Check out the tutorial here:
Create a Pinball-Style Rolling Score Counter Class

Flash Tutorial: Static Distortion Effect

Jan 31
2010

Static Distortion Button

I wrote a tutorial for TutsPlus that shows how to create the the static distortion effect that I used on the buttons in Plant Pong.

This was my first tutorial, and I’m really happy with how it turned out.
You can view the tutorial here:

Create a Static Distortion Effect Using the Displacement Map Filter

Codename: ULTRA

Jul 1
2009

Screenburn at SXSW
Codename: ULTRA is a game concept that I entered into the game design competition at SXSW this year. The game was selected as one of the casual game semifinalists, which means I won a free pass to SXSW Interactive.

I didn’t make it into the final round, but I got to meet the judges at the event and got some good feedback on the game from them.

Here are some screenshots from my presentation:

Mission Desk
Codename: ULTRA is a logic puzzle game. You play the role of a secret agent attempting to discover the identities of a group of enemy spies. To complete each mission you must match each of the enemy agents with his or her photo, code name and home country.
The main interface for the game is this view of your desk. On your desk is your message inbox, shortwave radio (which can receive transmissions from the base), and your Mission Kit. The Mission Kit contains all the information you need to decipher the identities of the enemy spies (maps, photos, agent dossiers, and clues).

You play the game by reading the clues from your Mission Kit and using deduction to piece together information about the spies.

Radio
You can also get encrypted clues from your short wave radio. You can write down the codes that are being broadcast and decode them using your code sheet.

Dossier
As you discover bits of information you mark them down on the agent dossiers to keep track of your progress.

As you work through the game the missions will get more difficult (increasing the number of agents involved as well as the number of elements that need to matched with each agent).

The main idea for the game comes from classic logic grid puzzles, but with a more interactive and graphical interface.

Codename: ULTRA is still just a concept at this point. I would like to actually build the game at some point, but it’s a much bigger project than the games I typically make.

Beijing Olympics Update

Apr 30
2009

Stop Stealing
I still get asked about what happened with the Olympics stealing my game last year. I’ll try to bring everyone up to speed here.

What happened?
The Olympics stole my game.
I made a blog post about it here, and was later contacted by a reporter from the Sydney Morning Herald who wanted to write an article about the story. Apparently the reporter also contacted the Olympic Organization. While they didn’t comment for the story, the pirated game was quickly taken off the site.

Did you sue them?
No. My intention was never to sue. The only damage I suffered was the cost of a license for the game which would be at most a couple thousand dollars. It wouldn’t have been worth the effort for such a small matter. I was told though that had I registered the copyrights for the game, I wouldn’t have had to prove damages and could have gotten a large settlement just by proving they stole my game (which would have been incredibly easy). Let this be a lesson to you kids—always register your copyrights.

Did you at least get some publicity from it?
I got a fair amount of traffic to my site for a couple of days.
Something unfortunate happened with most of the major coverage of the story though. Ars Technica wrote up a nice article about the story and contacted me for comment. Unfortunately, for some reason they neglected to put any links in the story to my site, my games, or my blog entry even though they mention all three in the article. So I got virtually no traffic from that story.

To make matters worse, most of the other sites that picked up the story were either summarizing the Ars Technica story or simply posting a snippet from it, so none of these articles (like this one on Kotaku) brought me any traffic either.

Beyond just being disappointed that I wasn’t getting hits on my site, I felt the Ars article misrepresented the story. Even though they neglected to link to any comparisons of my game to the stolen one, they did link to the other games that were much more nuanced rips of the Orisinal games. So anyone reading the story checked out those games which are pretty similar, but not blatant copies like the one they made of mine, and concluded that I was just being whiny that someone made a game similar to mine.
I wrote to Ars Technica about this and they put up a new story with links to my stuff. I thought that was nice of them, but it doesn’t really correct the problem that anyone who comes across the original story is going to be misled about what really happened.

Did you ever hear anything from the Olympics?
No. I sent letters to both the BOCOG and Sohu.com (the company that made the web site) asking for a public apology and received no response.

Conclusion
The stupidest part about this whole thing is that if they had just contacted me, I would have been thrilled to license them the game, or to create something custom for the Olympics. It would have worked out better for everyone involved.

Body Mailin’

Apr 29
2009

Truck Spank
Body Mailin’ is a game I made based on some jokes from a podcast I listen to called You Look Nice Today.

It would be too difficult for me try to explain the nuances of the game concepts here, but if you want to try to get caught up you should listen to the episodes Aunt Nancy and Truck Spank. Although completely unrelated to the game, by far my favorite moment in the history of YLNT is the Cosby dream in Episode 1.

I made the game as quick afternoon project, so it’s not quite up to the standards of my other games, and therefore not officially listed on the site, but it does have a permanent home here:
Play Body Mailin’

If you’ve never listened to YLNT, the game is guaranteed to make absolutely no sense to you.