Ludum Dare 18

I’ve just got home from CB2, where I have been participating in the Ludum Dare 18 Games Code Jam, in collaboration with George.

Between the two of us we’ve got 72 hours to build a working video game, which must relate to the theme ‘enemies as weapons’. We’re not entering the competition proper, otherwise we wouldn’t be allowed to collaborate and we’d only be allowed 48 hours.

Here’s a screenshot of our progress so far.


It’s a bit like Asteroids, except enclosed within a circular play area, and you can’t destroy the ‘asteroids’ directly. Instead, you can push them around by firing lasers at them. To destroy the ‘asteroids’ and score, you must collide them with each other – hence ‘enemies as weapons’.

Given that we’ve only been working on it since 10am, I’m pretty pleased with our progress. The game is basically playable, there are sound effects in most places where you’d expect sound effects, there’s a scoring system that even I’m happy with, and I even wrote a little bit of ‘music’, but I’m not sure if I’ll put it in since it’s painfully repetitive (like all my music). The only major remaining gameplay issue is that sometimes an ‘asteroid’ will spawn on top of your ship and destroy it without warning, but that’s actually easy to fix. Once we’ve fixed that, we intend to introduce some new mechanics to make the game more interesting – and more challenging as it progresses.

Frustratingly I spent about three hours today trying to make the ship and ‘asteroids’ bounce off the arena wall in a convincingly elastic fashion. The eventual code to implement that was about four lines long. One and a bit lines of code per hour is not particularly good going when you’re working to a deadline. I owe a debt of gratitude to Alan who gave me a hand with my dodgy vector math code, which got the bouncing working as expected. Other than that, everything has gone surprisingly swimmingly.

If you’re code inclined, you can follow our progress on GitHub. If you want to build the code, you need Flex and a little bit of nous. There’re no build instructions because, until the contest finishes, we have better things to do!

I have to say that a lot of the other entries are looking absolutely amazing, given that they’ve only seen a day’s work. I’m eagerly anticipating the finished products!

(Semi-crossposted to the Ludum Dare blog).