Ludum Dare for Rubyists: An Online 48 Hour Game Coding Competition
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
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 irc.afternet.org. 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).
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 :-)