Robo Jerks – Post Mortem
“I can totally make a turn-based strategy game in 48 hours!” I stupidly exclaimed at the beginning of the Ludum Dare 25. I aimed high, eventually aimed for progressively lower targets, and still missed. My game, Robo Jerks, is in a playable state, but it is far from complete. But it does have an orphanage to destroy, because those smug orphans need to be knocked down a peg.
What went well
- LÖVE is so lovely, and it has the best library names.
- I’m not a huge fan of pixel art, so I’ve mostly stayed away from using ASEPRITE. However, this game had me making 32×32 images/tiles, so I gave ASEPRITE a try. Holiest of craps, that thing worked wonders! The art for this game was relatively painless. I’m not saying the art was great, but it wasn’t a painful, depressing process like it previously has been. Then again, that might just be because I was only making 32×32 tiles. Regardless, I’ll definitely be using ASEPRITE for things in the future.
- Trello! I used Trello to organize and keep track of what I needed to do, which helped me stay focused.
- The theme! You are the villian? It’s great because I could pretty easily make any kind of game I wanted to. I didn’t panic for a hour because I couldn’t think of an idea.
What could have gone better
- I put off adding sound and music until the end, which was a mistake. I should have definitely worked on the music earlier, since music isn’t that hard for me.
- I should have practiced (i.e., make warm-up games) and worked on my code base a bit more. There were definitely some libraries that I wish I had made beforehand that I definitely will be making for future LDs.
- I spend a couple of hours at a party on Friday. That was a social obligation I should have neglected.
- I rewrote the in-game UI because the first thing I did was make a really simple, keyboard-based UI (that took longer than I planned on) just so I could have units do things. And the kicker is the rewrite wasn’t anywhere near what I originally intended to do, but I had to settle because I was low on time. Hence, I ended up with a UI that was clumsy and frustrating, especially to those who didn’t spend several hours playing it. I should have just taken the time to get the UI right the first time. That would have likely saved some time.
- The GUI library I made for LÖVE was missing some features I thought I implemented, which caused quite the headache.
- The menu screens: boring.
- I really would have liked to have a multiplayer mode. In retrospect, I could have squeezed in the time for that.
- I intended on having an additional use for energy: abilities. The idea was you’d have these buildings you’d have to build, and for each one you build, you can use an ability (at the cost of energy); e.g., healing a unit, allowing units that have used their turn to go again, and bombing an area to damage units. I had to cut that.
What went horribly wrong
- Just like last Ludum Dare, I planned on doing too much. I though I was planning out a manageable amount of content, but had to cut out a lot of stuff (what does an alot of stuff look like) in order to make progress.
- AI. I completely underestimated how much effort the AI would take. I originally wanted the enemy army to be able to build units to fight you, but I didn’t have time to implement that. I also didn’t really have any time to implement any intelligent AI. Units just move towards your base (without thinking about the attack range of your units) and attack the first unit within range (without thinking about the health of your units). I originally just wanted one level, but since I didn’t have the time to get the AI right, I just quickly added 2 more levels (and a weird-looking level select screen) with more enemies.
- Since the victory condition is destroying the orphanage and the AI couldn’t produce units, there was a long, boring trek across the map to destroy the orphanage after defeating all the enemy units.
- Originally, I intended on having a fog of war and an extra unit: the scout. The scout’s purpose was to provide vision, especially for long ranged units with little vision (basically, the artillery unit). I had to drop the scout as soon as I dropped the fog of war. However, the units weren’t really all that balanced after that point. If I had originally planned for having 3 attacking units, I could have had a nice paper-scissors-rock thing going on. The infantry unit is cheap, but pretty useless. I wanted to give each unit abilities in order to fill the gap left by the scout, but I had no time for that.
- The maps: so boring. When I realized that adding terrain you couldn’t move across would be nice, I realized that I would have to rewrite and test a lot of things to make that change. So that went to be bottom of my to-do list, never to be seen again.
Normally, I fiddle around with my game for at least a couple of weeks after a Ludum Dare. I distinctly remember saying “NOPE!” to that when I submitted my game. I claimed I didn’t want to see any code for several days (which would interfere with what I do for a living). That was a filthy lie, I was working on the UI the next night. I might even follow through and release a less-terrible version in a couple of weeks…but I’m not sure I’d get my hopes up.