J Lawson

Ludum Dare

Ludum Dare is a game creation competition which runs every 4 months and challeges designers, programmers and artists to create a working game in just 48 hours. See their webpage for more information.

Over the last few years I have created games for the competition when I could fit it around other commitments.

  • Hype - Ludum Dare #2726 August 2013

    I completed my second Ludum Dare game in August 2013.


    Hype is a 2d platforming game where you have to reach a goal on each level. The physics are handled using the Box2D physics engine, so I tried using that to control the motion of the character, which proved interesting. I’m going to claim that the odd controls are a feature, but I guess its just something you have to get used to.

    I made the game in Java using the LibGDX platform which is really good. The way UI components are used is a bit odd until you work it out, unfortunately its not really something you just stumble upon. Other than that I can’t complain too much.

    I was hoping to get the game running online, either using GWT and html5 or just using a Java applet but unfortunately neither were possible. A recent(ish) update in Java broke the LWJGL applet code and the libGDX html5 wrappers don’t include any Box2D stuff. Sucks.

    The code for the game is available on Github.

  • Adrift - Ludum Dare #2220 December 2011

    In December 2011 I made a small game for the 22nd Ludum Dare competition.


    This was the first time I had made a whole game, from an empty project through to a complete product with menus, settings and most importantly gameplay. The whole experience was great fun and I got a number of incredible comments from other participants.

    The game I chose to make was a top down maze/exploration game. Starting out in an abandonned space ship you find your way around before things start shooting at you. It was a fun introduction to the ideas behind programming games. I am sure there are many problems with the code and numerous things that I would do entirely different if I were to do it again.

    Currently the game source is available on Github.

    Post Mortem

    The day after the competition I wrote the following post-mortem on the experience:

    The not so good:
    • I was coding in Java using the LibGDX framework, which worked really well. Unfortunately there are parts of libGDX with little documentation, so I was frequently ducking into the source to try and work out how to get it to do what I wanted.

    • I had plans for a much more elaborate game with more graphics, more levels etc but as is the case with this, ran out of time. I think I spent too much time on the menus and other screens whereas the game should probably have come first.

    • Why can I never get up when my alarm goes off?

    The better:
    • Sound effects were much easier to add than I had expected. Setting and remembering volume was a bit fiddly though, and making the sound I wanted in sfxr was time consuming although quite good fun.

    • I actually finished a game! Usually I get caught up in trying to optimise everything as I go along, but for this I was forced to just get on with making the game. This does of course mean performance is hit slightly. I was only getting about 20 to 30 FPS on my old laptop, but more modern machines should cope better.

    • I stole a second monitor from my sister after about 12 hours. Wow did it make everything easier. But now I have to give it back.

    • libGDX meant I could get a dekstop and applet version of my game made easily at the same time. I also have an Android version, but I have no idea how/if the controls work, what the performance is like, or what it looks like. I also have no way of testing it, so decided not to release the .apk file. (I did have it running in android-x86 in a virtual machine, but that was really slow).

    Now to sort out my sleep patterns and retrain my fingers not to press Ctrl+s all the time.