This past Sunday I attended the first ever Guelph Game Jam. In this post I’ll explain a little bit about the game jam, and then I’ll talk about the game I made (note: it’s a Flash game, so you can actually play it, woot!).
The Guelph Game Jam
This is the second game jam I’ve participated in. The first was TOJam, which I wrote about back in May. I enjoyed TOJam so much that when I heard about another game jam in the area, I just had to go. The jam was organized by Owen Goss, and despite being the first Guelph Game Jam ever, it went really smoothly (great job Owen!).
If you’re not familiar with what a game jam is, it’s basically just when a group of people get together to make games over a short period of time. In the case of the GGJ, it went from 12pm until 7:30pm (with a 30 minute dinner break), so it lasted only 7 hours. This may seem like a really short amount of time, and it was, but everyone was still able to make some cool stuff. The theme of the jam was “Big”, and there were a total of 16 participants. If you want to see the other games, I encourage you to check them out on the GGJ site, there are some really interesting games there.
Ideas and Technologies
I spent some time during the week leading up the jam trying to come up with an idea for a game, but I was having a hard time arriving at a solid idea that could also be executed in only 7 hours. Knowing that the theme was “Big”, I came up with a lot of concepts for physics games, but none of them really stuck out to me.
At this time I also wasn’t 100% sure of what technology/platform I wanted to create the game with. I had just received my iCade, so I knew I wanted to create something that used it, but I wasn’t sure whether I wanted to create a game for the iPad or a Flash game. After a ton of internal debating, I finally settled on going with Flash. Using Flash would give me a lot more development flexibility and speed, especially when it came to making art and animations.
On the morning of the jam, I knew what tech I was going to use, but I still didn’t have a game idea. The trip from my home (in Mississauga) to Guelph takes about an hour, so I figured I could finalize the game as I was driving. The game I came up with on that trip became “Big Runner”.
The Big Idea
The gist of “Big Runner” is that the main character is a skinny guy, but his goal is to burn as many calories as he can, so he’s trying to get as fat as possible so he can burn more calories. The catch is that the fatter he is, the slower he’ll move, and the screen is constantly moving, so he can’t get too fat or else he’ll go off the edge of the screen. I realize this game makes no sense, and I can’t be bothered to make up a decent story for it, so you’re just going to have to invent your own.
I decided that there’d be cake in the game as the food that makes him fat, because I love cake. Nom. I knew I was using the iCade and wanted him to be able to do more than just move around, so I planned on giving him two actions: puke (to make him lose weight), and jump (to burn extra calories – I later took this out).
The Big Animations
When the jam started, I quickly sketched out what the guy might look like as he gets fat, and then I then started making all the assets in Flash. If you have Flash enabled, you can see some of the awful sketches and the animation above. I knew I had to work fast, because with only 7 hours, I couldn’t afford to spend very much time on art.
I made the guy, the cake, and the street background. I also had to make a bunch of UI elements (main menu, score, etc.). The key with the guy was that I wanted him to visibly get fat, and do it gradually, rather than simply snapping to different fatness levels. Flash’s shape-tweens really helped to create a seamless transition between different amounts of fatness.
Late in the jam, I still needed some sort of “enemy”, and I happened to overhear Connor Pridham (son of @madgarden) jokingly saying something about how every game should have tanks. I realized that tanks would be a perfect fit for Big Runner, so I decided to put them in. Oh, and it turns out that Connor was working on a sweet mix of tanks and Minecraft called TankCraft.
The Big Finish
I spent 2 hours on art and animation, and the rest of the time coding. I finished implementing the tanks right as the jam ended at 7:30 (ok, a few minutes after). The “finished” game was playable with the iCade, and it was actually kind of fun. The music was made by Guelph local Tyler Shaw. My request to Tyler was “music that sounds kinda super-nintendoish, and upbeat, with the melody from Happy Birthday”, and he nailed it (Tyler also made the music for a few other games during the same time period – impressive!).
That 7-hour version had a bunch of things missing, including sound effects and a jumping mechanic. There are also some weird bugs and the hit areas on the tanks are really bad. I hadn’t finalized what I wanted to do with the puking mechanic, so you can puke almost all the time. Through the magic of Flash, you can play the original version right now.
On the drive home from the jam, I came up with a bunch of ideas for how to tweak the game. The next day, I spent two hours adding sound effects, changing how the puking works, and fixing most of the bugs. I decided it was good enough to put on Kongregate (a popular Flash games site), so I spent another hour implementing the Kongregate API (highscores, achievements, etc), and then I put it up there on Wednesday, after a total of 10 hours of work. You can play the Kongregate version here. See if you can beat 1500 calories.
The game is a simple side-scroller with very few elements, and yet it has a surprising amount of depth. The original version allowed you to puke whenever you wanted, so you could control your weight precisely, but I realized that having that much control actually took a way a lot of the decision making and planning. The final version has the limitation that you can only puke when you’re at your fattest, which adds a lot of interesting dynamics.
I really wanted the way you play the game to naturally change and evolve as you play it, and that’s exactly what happens. At the start of the game, you want to eat all the cakes you can, so you’re running around trying to collect cakes. By the later stages of the game, you actually want to stay skinny, so you start having to avoid the cakes. I think twisting something good into something bad over the course of a run is a pretty novel way to create depth and choices for the player, and at the end of the day, this is a game about trade-offs.
There were many happy accidents with the game design of the game, and one of them was with the tank; I really like how the tank’s turret gives a visual warning that the tank is coming. It comes far ahead of the tank’s hit area, so in the early stages of the game, you can tell exactly where the tank is going to come from before the full body of the tank arrives on screen – a subtle but interesting element.
I think that’s just about all I have to say about Big Runner. Please try out the game and let me know what you think! Feel free to send it around on Twitter and Google+ too, I’d love to see how high the scores can go. Also, make sure you check out the other Guelph Game Jam games, there are some cool projects there. As usual, you can post your comments here or send them @MattRix. Cheers.