Ruby Weekly is a weekly newsletter covering the latest Ruby and Rails news.

Ludum Dare for Rubyists: An Online 48 Hour Game Coding Competition

By Peter Cooper / December 13, 2011

Ludum Dare is an online accelerated game development event that focuses on regular 48 hour competitions. Think Rails Rumble but for games! It's been around since 2002 but has had a big publicity boost recently due to the participation of Notch, the creator of the mind-bogglingly popular indie game Minecraft.

The next Ludum Dare contest is taking place this coming weekend between December 16-19, 2011 and I want to encourage Rubyists to take part. The competition tends to be dominated by Java, Flash, Microsoft XNA developers, and HTML5 developers, so it'd be great to see more Ruby entries (of which there have only been a couple so far).

During August's event, I, along with hundreds of others, was glued to Notch's livestream watching him code his game, Prelude of the Chambered (a 6 minute version is on YouTube). I was inspired enough to port his Java code into Ruby using JRuby, producing
potc-jruby (sadly far slower than the original Java version). This time, I plan to enter for real and build my own original game.

How to Take Part in Ludum Dare

Go to the Ludum Dare homepage, read the rules and guide, register on their WordPress blog, wait until the 'theme' has been decided, and start coding once the countdown is finished.

During the 48 hours (or 72 if you do the 'jam' version), you can post blog entries directly to the main Ludum Dare site (if you want) and submit your entry via a special link at the end. Entrants play and judge each other's entries for a period of three weeks before the winners are announced. Having more Rubyists involved would be useful since our games may be less likely to work cross platform or without Ruby installed.. (more on this shortly)

A quick summary of the rules:

  • You have to work alone. (If you want to do a team effort, you need to enter the less restrictive 'jam' contest.)
  • All content and code must be created within the 48 hours (except for libraries, legally licensed fonts and drum/instrument samples).
  • Your game has to be based on the theme given out before the contest.
  • You must share the source code with the other participants at the end of the contest though you do not have to give it an open source license.

The contest has a popular IRC channel (which is already quite active) at #ludumdare on I'm petercooper on there - say hi! I'll be lurking in there a lot over the next week. Also, follow @ludumdare on IRC for more updates and info.

To get a feel for the contest, check out this "keynote" from the last Ludum Dare. There'll be a new one for this year soon:

Building a Game in Ruby?

Building games in Ruby isn't popular but it's not frontier country either. Rubystein, a Wolfenstein 3D pastiche by the Phusion guys, remains a favorite of mine and it even runs on 1.9 with only a few tweaks.

There's a great series by Andrea Wright that dates from 2007 but still has some handy pointers. We also have Ray, RubyGame, and Gosu which all have their fans (Ray is the most recent Ruby game library I'm aware of).

Or.. JRuby!

My choice for the contest is none of the above. Instead, it's JRuby. As part of the 'warmup process' for the contest, I've been playing with JRuby and the popular Slick2D Java library. The performance is amazing and the development process pretty straightforward.

Being a popular library in the Java world, I can use a lot of the Java-based tutorials and code samples for Slick2D to get a feel for how it all works. And.. I'll be writing an article for Ruby Inside in the next day or two showing you how to get started with it for yourself :-)


  1. Martijn says:

    Don't forget chingu, an excellent game library that leverages Gosu but also handles game states, input and assets. I was able to create a pretty complete game with it in mere hours.

    However I'm curious about JRuby + Slick, too. Somehow I missed Slick in my search for a game library, even though I know of games that use it :)

  2. Karlin says:

    You left out gamebox (which makes use of Gosu and Chipmunk). It's been used in LD compos in the past, and it's a great way to start making games with Ruby!

  3. kikito says:

    And.. I'll be writing an article for Ruby Inside in the next day or two showing you how to get started with it for yourself

    Man, what a teaser.

    Hopefully on the next Ludum Dare rite will have already been opensource, and we'll have another tool in our belt for this kind of things.

    Until then, I'll keep using LÖVE (warning! Not ruby!) for my 2d gaming experiments.

  4. Soleone says:

    +1 for Chingu, really nice little framework!

    Very productive environment to build 2D based games. Good documentation and tons of example files to get started.

  5. Michael Bensoussan says:

    I've been playing with JRuby and libGDX (based on LWJGL) and it's great.

Other Posts to Enjoy

Twitter Mentions