May 02 2011


This competition, right? You make a game from scratch in 48 hours over a weekend. The weekend that just went past, in fact. I was maybe going to do it, and then the mandatory theme came out, and I was like “wait, this theme sucks”, and then I had an idea and I did it anyway. And I am SUPER PROUD because I got to do some cool sprite animation, script some cutscenes and make a game in a genre I haven’t tried before: the genre of PUNCHING.

The theme was “It’s Dangerous to go Alone! Take this!”. Now, every time I do a Ludum Dare, I look for a chance to test myself or expand my skills, so I usually have a notion what kind of game I’m going to make before I go in. For LD #19, my plan was to make a content-heavy, story-based game. Combining that with the theme of Discovery led me to make Beacon.

This time, inspired by playing Nicolau Chaud’s Beautiful Escape: Dungeoneer (review) last week, my plan was to make something contemporary and human. That led me straight to the idea of making a game where you punch people who don’t have rape alarms until they’re scared enough to want rape alarms. For their safety.

Consequently my entry “Vigilance” is a game about suspect charities, lonely women walking through empty parks at night, and pretending you’re a ninja. Go play it!

OK, here’s something I feel a little guilty about: I was even less organised this time than I was for the last one. I didn’t even do a timelog, didn’t really bother with scheduling and cutting scope until I had about two hours left, and the whole thing’s frankly pretty hazy. Here’s what I remember, though:

– I started off working on the graphics, as always, and then focused on character movement and response. Because the characters in “Vigilance” are normal humans and move about a lot – this is a gritty, realistic brawler of a fighting game – I ended up doing a ton of animation work. Including writing a decent animation system. Between this and rewriting my basecode because I never published it, getting a controllable character running around on a blank screen took me about 12 hours. But it was great! I learned a ton about animation, and making a controllable character with that fidelity and level of animation was enough of a victory that I could have stopped then and been happy.

But instead, I soldiered on. I set my character up so you could give a few NPCs with no AI a kicking. Here’s a playable version of what I had after day 1.

– Next I added the AI and game rules for the brawling part of the game, since I felt that part would need the most polish and balancing. (Also, I didn’t have a firm design in mind for the daytime scenes yet.) Getting the night scene into a decent state took about 3 hours, and I was polishing it and adding to it for the rest of the weekend.

– I now had about 14 hours left. The daytime scene came next. My original design called for conversations with each of the NPCs where you’d choose dialogue options, but for the sake of getting something in there fast, I built a minigame where you had a time limit and had to go interact with as many NPCs as possible. The whole conversation part of the interaction was abstracted out, so the NPC just gave you a final outcome at random. With a time limit added this turned out to be fun enough, so I dropped my further plans and focused on refining what I had!

– I spent a while here balancing the night-time combat, setting up the day-night-day-night game flow and putting in little bits of conversation text.

– I started work on the first major cutscene (“This asshole town!”) with about 8 hours to go and spent the next few hours adding context and jokes to the game.

– I added the ending screen to the game with about 4 hours to go. I think this is roughly when I managed my last start-to-finish playthrough. I don’t really recommend doing hours of development and then releasing without thorough testing, but I just didn’t have the time to make sure everything worked before I submitted. 😀 (I got lucky – everything did!)

– Started work on the sound effects (with bfxr) with 3 hours to go.

– Started work on the music (in Reason) with about an hour and a half to go. I wrote three music tracks in literally under an hour. I am so incredibly happy they’re not terrible! By all rights, they should be.

– Tidied up a few loose ends with about 15 minutes left, like adding palette swaps for the NPCs so they weren’t all redheads with green shirts and putting in the mandatory “It’s dangerous to go alone!” conversation with an NPC… and submitted seconds before the end of the 48 hours. Result!

I’ve spent today sleeping, recovering, rating other people’s games, and refreshing my entry page compulsively to see if it’s had any new comments. It’s been good.

My current plan with “Vigilance” is to clean it up and do all the things I sadly couldn’t find time for during the competition, like decent background graphics instead of those placeholder scribbles, better sound and about a 50% bigger script. I’ll try to get the final version (with its own page on here and everything) ready in time for LD #20’s judging results three weeks from now in case this ranks highly. Fingers crossed 🙂

2 Comments on “LUDUM DARE #20

  1. I just played it, and though short, this game is awesome. Love the concept, loved how it was developed, love the sprites and animations. Even for a short game, it’s incredible that you made it in one weekend. We need more street ninjas in real life.

Comments are closed.