Well, my 2nd Ludum Dare has come and gone. I decided to do a little mini post-mortem of my experience. Hope this is interesting or useful to someone else out there!
First, here’s a list of everything I used to make the game:
- Game Engine/Language: Unity 4.2, MonoDevelop, C# (~350 lines of code written)
- Version Control: Mercurial (TortoiseHg) and Bitbucket.org
- Unity Packages: Orthello Free, iTween
- Music Production: Reaper, Fender Strat guitar, a cheap Casio keyboard, Addictive Drums, and several free VST instruments and effects
- Graphics Production: GraphicsGale
- Web Hosting: Dreamhost
Click through to hear my thoughts on the whole development process:
What Went Right
- Unity – Unity is just the best thing to happen to indie game development ever… and I don’t make that statement flippantly. I am an unabashed Unity fanboy because Unity has empowered me to do things by myself, for free, that I couldn’t have dreamed of not too long ago.
- Theme – I knew up front that my participation time was going to be limited, so I decided that if I didn’t like the theme then I would pass this time around. Going through the theme voting, “10 Seconds” quickly became my favorite. I loved the possibilities that the theme presented. I loved how it seemed to push devs toward a style of gameplay that you might call “bite-sized”. I had ideas running rampant. When “10 Seconds” won, I had to participate. I had too many cool ideas and this was going to be my excuse to actually make one of them. That motivation helped me push through and submit something.
- Orthello – While the free version of this 2D package for Unity isn’t quite as good as some others, it’s becoming my go-to package for 2D Compo work since it is free. There’s really quite a bit of functionality in the free version including sprite animations, 3×3 sprite scaling, font rendering, etc.
- GraphicsGale – It took me a little time to get used to some of the quirks (especially related to alpha channels and transparency) of this lightweight little program but now I really like using it for making 2D sprites. It’s got Photoshop-like functionality without the massive footprint of Photoshop. I also like this GraphicsGale/Orthello combination a lot better than my RagePixel solution from LD26. RagePixel was cool, but, feature-wise, it just doesn’t compare to this pair of tools.
- Audio – My LD26 game, Tiny Runner, got quite a few complaints in the reviews because I didn’t get around to making any audio at all for it. I was determined not to let that happen this time, so I ended up swinging to the other extreme and making a music game. This allowed me to draw on my experience in amateur music production and get the music done quickly. I only took about 2 hours to go from concept to 3 finished songs sliced up into a bunch of separate audio clips.
What Went Wrong
- Time – This will probably always be a “What Went Wrong” for me. The theme was announced at 9pm my time. I brainstormed for the rest of the night and set up an empty Unity project, but didn’t actually build anything. Saturday I had to practice for and play at a wedding reception with the Top 40 cover band that I’m in. That pretty much shot that whole day. Then, Sunday came and I had to do some shopping, go to a birthday party, and help with other things around the house. I was finally able to work on LD by Sunday evening, but there was no way I’d get it done in time for the Compo deadline. I worked on it a good 10-12 hours before finally submitting Monday night. So, even though I worked almost entirely under Compo restrictions, I had to submit my game as a Jam entry. For the next LD, I may just need to blackout that weekend and make sure nothing else is going on.
- Little Kids In The House – Don’t misunderstand… I LOVE my kids! But it is next to impossible to focus on anything for an extended period of time while kids (especially very young ones like mine) are in the house. I have a 4-year old and a 6-month old. I had toyed with the idea of just letting my wife deal with them by herself on Sunday, but my conscience wouldn’t let me do it after she had already had them all day Saturday while she was trying to do work herself. That meant trying to code with an infant in my lap… trying to compose music while also making sure the infant on the floor beside me doesn’t eat pennies… and trying to draw pixel art while your 4-year old wants you to read him a story. Ideally, I think I need to be away from the kids next time.
- No Testing – Related to the time problems, I wasn’t able to get anyone else to try the game before submitting. With my game, especially, I was worried about this. Being that I wrote the music, I know exactly how the music is supposed to sound. So, I’m not really a fair judge of how hard it is to put the slices back together. Luckily it seems to have gotten a fairly good response so far, but I still worry that it’s too difficult especially for non-musicians.
- “Level” Design – Designing “levels” for this kind of game is difficult. I knew up front that I need to make sure that I did not slice the songs on the beat. I had to ensure that there was only one way to put the slices back together. If I sliced the songs on the beat, the slices could arguably be interchangeable. I also needed every slice to be the same length so they could be rearranged easily. This meant carefully selecting the tempo of each song before ever recording anything. I also realized that certain styles of music would be easier to rearrange than others. The drums are particularly difficult to rearrange because they are so repetitive compared to other instruments. I would’ve liked to have polished the songs a lot more if I had more time.
- Audio “smoothness” – The end result wasn’t quite as smooth as I wanted. As some reviewers noted, even when the slices are in the proper order, you can sometimes still hear a little hiccup or stutter between slices. I had always envisioned those stutters as being the indicator that your slices are in the wrong order. Apparently, playing a new clip as soon as the previous one ends doesn’t quite work like I’d hoped. Although the first song sounds much smoother than the others IMHO. Maybe they just needed to be cleaned up somehow? Regardless, I didn’t have the time to mess with it.
Overall, this Ludum Dare was a fun little experiment and I’m looking forward to the next one and playing everybody’s games from this one.