| Tags: game development post-mortems

This last weekend I joined Ludum Dare along countless of fellow developers. This game jam is about making a game solo in 48 hours, creating code and art by yourself in that short span of time.

Here's My Little Metal Joint, a club simulator. You can play it here. If you are a rating Ludum Dare entries, you can find mine here :)



The theme was "Entire game in one screen", and I already had something thought for that theme but… when I woke up on Saturday and had a shower I changed ideas. So simulator it was (clearly a wrong choice, but we'll discuss this later).

I decided to do a HTML5 game, because I think right now it's the best choice for me for 2D games, since I can get anyone to play my games without too much hassle. I miss Ruby and Gosu, but Phaser is a great framework, and although I hadn't coded with it for long, I didn't have significant problems using it (the documentation and examples are great).

The days before the competition I had prepared an skeleton project, with some basic automation on it (by the way, this time I went for Gulp because I wanted to try it). The idea? To be able to start coding straight away. Plus the ability to build and deploy was great (I was able to show the WIP versions to some friends easily).

Saturday was all about coding. I ditched graphics, decided to settle for some basic HTML-based GUI (my regret is not investing time in making it pretty). The simulator runs in ticks, so I could code the whole game with no graphics, just log messages. The day was quite productive, I stayed up until 1AM or so, and then went to bed.

Sunday was about art and finishing. I woke up late because I needed to rest. Luckily for me, I can do somewhat decent programmer art while tired, so it was Wacom and Pixelmator time. I'm not as proficient in Pixelmator as I am in Photoshop, but Pixelmator has a license I can actually afford, so there it was.

I had lots of fun drawing pixel art, specially the bottles.


People was fun to draw too.


I was running out of time, so I didn't draw any animations, except for this rat (which I love).


After the sprites were made, I scaled them up 4x to keep that pixelated effect in a high resolution. I used Imagemagick with the nearest-neighbour resampling algorithm , since Pixelmator doesn't have it implemented:

convert s_rat.png -filter box -resize 400% rat.png

Then I started to integrate the art into the game… Was pretty painless, except for the fact that Phaser didn't allow sprites of the same group (aka "display list") to share the same Z, so I needed to re-order the sprite group manually whenever a new person was added to the crowd.

By the start of the evening I was ultra-tired and took a rest to watch Barça's game (where Messi pulled off a hat-trick!). And then… the classic panic attack of every game jam: "OMG THERE'S NO TIME WHAT I'M GOING TO DO". The issues I was dealing at the time were:

I decided to carry on and release an entry, no matter what. I coded the win and lose conditions, an intro screen and decided to leave the game settings as they were. At 1AM (competition ended at 3AM in Spain) I decided to put the only animation I had (the rat!) into the intro screen because I think it was cute.

And by 2AM, when I was submitting, I reviewed the compo rules and… found out that you were only allowed to use assets not created by you in the 72-hour jam, not the 48-hour compo. So I quickly ditched the background music track I grabbed from OpenGameArt and released a silent entry.

What went wrong

What went well

In summary

An amazing weekend to do crazy stuff and push myself to finish a mini-project. These jams are very good to experiment to get a motivation boost, because it makes you realise what you can accomplish in a short amount of time if you are really focused.

Please play and rate My Little Metal Joint!