I always wanted to take part in Ludum Dare, but every time there were some important things going on in my life. This time I made it, thanks to my wonderful wife! She took our kids to her parents and I had at least 24 hours of free time. I walked with them to the train station and started to think about my game on my road back. Wait, I started to DESIGN my game then, sounds better. The theme was "Tiny world". So I had an idea of a simple god-game, played on a single screen. You must take care of your followers, but your only power is to create and destroy land. It's kinda surprising that all these design choices actually made it into final game!
First things first: play it here!
These are my ratings:
#100 Innovation 3.71
#114 Theme 3.67
#157 Audio 3.17
#201 Humor 2.77
#252 Mood 3.00
#255 Overall 3.28
#358 Graphics 3.02
#455 Fun 2.76
(there were 1402 entries)
Now, it's time for the classic post-mortem!
What went right
I chose to write my game in Java, using libgdx. I ended up using Universal Tween Engine as well. I'm familiar with both of them and feel comfortable using them. I set up my projects in the blink of an eye, thanks to gdx-setup-ui. There were literally no moments of fighting with any of these libraries. I just coded my game as I wanted to. Fun fact: I used Tween Engine for a lot of things, including terrain generation!
2. Hard design choices
I wanted to keep my basic principles (single screen, no direct influence on followers) and it helped me to actually finish the game. I had lots of additional ideas, expanding and even neglecting the base ones, but I quickly realized that if I won't stick to some choices, there's no way I'll finish it in 24h.
3. Not using sfxr/bfxr for sound
Most of LD entries are using some variations of above programs. While they're neat tools to quickly make old-school sounds, I don't really like these sounds. It's annoying to play dozens of games which basically sound almost the same. I recorded all my sounds using a simple microphone (or even my phone). I screamed, hit my desk, threw my children's toys, knocked on the sink etc., then quickly edited all of these in Audacity. It was kinda fun and I think it doesn't sound too bad.
4. Making a game
Yeah! That's the thing I'm most proud of - I created a game from scratch!
What went wrong
My game doesn't feel very fair and fun. (I got the worst place in Fun category, not without a reason!) Unfortunately, I was running out of time and I knew I won't be able to implement features I wanted to... So for the last 1 hour I just balanced all gameplay factors to make it winnable (and not too easy). I was aware that the player doesn't feel involved. But I hope to fix it in some post-compo versions!
2. Sticking to procedural generation
At the beginning I thought that it'd be cool to make a game with no pre-made textures. I wanted everything to be created at runtime. There was no reason to do it and I lost some time before I started drawing anything. Remember kids, don't do anything that slows you down!
3. No tutorial
Again, I had no time to create a decent tutorial, so I just wrote an instruction in the README file and on the LD page. Not everyone reads these things nowadays... Some people were totally confused with my game and never tried to understand it. It's my fault!
I'm very glad I took part in Ludum Dare. A few years ago I was very into painting; I remember that peculiar feeling of filling an empty canvas with an image straight from my head. There's something inexplicably amazing in the act of creation. Ludum Dare made me feel this again - especially that I managed to drive my work into a state of (partial) completion.