SoulMate – Global Game Jam 2012

NOTE: This post is a bit late, but its taken me a while to actually get around to putting together a version of our game that was suitable for the web. You can skip ahead and check out the game here.

During the weekend of Jan 27-29th, myself and numerous other game devs submitted ourselves to the gruelling process of attempting to make a game in just 48 hours. My team consisted of Pouya Aflatoun (art), Michael Theiler (audio), Jenn Sandercock (design/project-management) and myself doing the programming.

The theme for this years game jam was simply an image of an ouroboros (see below), a symbol that has been used to represent the cycle of life death and rebirth in various ancient and medieval cultures. Drawing on this theme we developed Soulmate; a game where the player must travel around a circular, wheel-shaped world looking for their ideal partner. When the player’s soulmate is found they breed and the player then takes control of child and the process starts all over again. There are two modes of play, Reality where players have a limited time in which to find their partner, and Denial, an un-timed “zen” mode with  unlimited play.

To make things interesting the little creatures that we created to inhabit this world were all given different combinations of three simple traits; a shape (circle, square or triangle), a colour (red, green or blue) and a voice/song (bird call, camel roar, or robot buzz). Finding a soulmate requires players to find a partner with the one trait they desire, but with neither of the two traits they are trying to avoid. The child produced when a suitable mate is found, takes on a single trait from each parent plus one randomly assigned one.

While we tried to keep our game design simple and minimise scope creep, this game still ended up being a bit more ambitious than I had expected. All the time we thought we would have to play-test and debug the game ended up being eaten up by development and wrestling with our own unique approach to version control*. In the end we did submit our game within the 48 hour limit, but it was fairly buggy and had a number of user interface and gameplay issues that confused players.

So in the two weeks following the Game Jam our team spent a bit of time polishing and fixing up the game for presentation IGDA Melbourne‘s post jam showcase. The end result is something the whole team is really proud of and I’m already looking forward to teaming up again for next years Global Game Jam!

Web Player Version (requires Unity Plugin)
Original Game Jam Submission (with all the original bugs!)

* I had quite stupidly opted to manually merge exported packages over taking the time to install the free version of Unity Pro on offer that weekend and setting up Unity’s Asset Server. A lot of work was lost or had to be redone because of this. The lesson here; always go with the option that removes or minimises the risk of human error!

Done in a Flash! Wait? …where’d my holidays go?

Just before Christmas break Unity launched their open beta for Unity 3.5. To kick things off they ran a competition to showcase the new Flash Exporter in their developer preview by asking game devs to build a game in two weeks that exports to Flash.

So instead of just kicking back and playing Skyrim all holidays as I’d planned, I tried to see if I could put together an entry for this competition and expand my knowledge of Unity as I went. The end result was this very simple prototype/proof-of-concept I’ve dubbed “Lap-a-thon” (for lack of a better name). You can check it out by clicking here.

The idea was to make a simple slot-car-esque game where player control their car’s acceleration while switching lanes to overtake and avoid obstacles. I only managed to implement about a quarter of the features and content I had planned but building the game was a lot of fun and I learnt a number of interesting things, including…

Nice Art is Nice. I totally plundered the Asset Store for all the free/cheap art assets I used in the game. Which meant I barely had to rely on the dreaded “programmer art” at all. The game coud still use more polish but I’m just happy I didn’t have to name the game “Grey Box-a-thon”. It may sound dumb, but when my game looks nice I’m a lot more motivated to work on it.

Regularly test your Flash builds! The Flash Exporter is clearly in beta and not perfect and some stuff just doesn’t work. While this probably another obvious statement I have to  admit I found myself spending a whole bunch of time tracking down bugs that turned out to be caused by using features that just didn’t work with Flash. This could also be name “Read the Release Notes provided by Unity!” as that probably would have cut the time I spent  in half.

– Planning == Prioritisation. One of the things I’d really wish I’d done when I started was sit down and brutally prioritised the features I wanted to implement down to a few core things and either cut the rest or at least put them in order of importance. As it was I sort of winged it as I went (hey I was on holiday!) and really only started cutting features as the deadline loomed. Hence I found myself focusing on things I thought were easy instead things that were probably essential or at least more important. This is probably why Lap-A-Thon has a fancy-but-ultimately-useless title screen, yet no sound or music.

Regardless of mistakes made and the hi-jacking of my own holidays (I skipped out on a day at the beach to develop), I enjoyed the challenge and look forward to seeing if I can apply what I’ve learned at the Global Game Jam on January 27th!