Ludum Dare 45: Post Mortem

A retrospective on Ludum Dare 45 as I prepare for LD 46… Better late than never, I guess! It’s already been five months since Sas, and I entered Fool’s Gold for Ludum Dare 45! Where has the time gone?!

Looking a bit further back through this blog, I see that I took my first steps into trying to get better at making turn-based strategy games in August 2018 during Ludum Dare 42. Now to be fair, I didn’t have a lot of time to spend on LD42, and it was a solo effort, but the difference between that game and what we submitted for LD45 is staggering! It went from a simple single-screen affair with loads of useless polish and barely any gameplay, to a reasonably complex roguelike with pathfinding, decent levels of polish and a cohesive narrative and gameplay experience in about a year.

Fool's Gold Gameplay

There were a few firsts this jam:

  • Our first jam since I moved to Germany: so it was our first remote collaboration.
  • Our very first game in PICO-8: it went unjustifiably well for learning the tool on the job.
  • Sas’s first time composing game music for us: it makes the game feel much more polished.
  • (probably) My first roguelike game in a Ludum Dare: completing the Reddit does the Roguelike tutorial a few months prior helped a lot.

So given all of that, I’m thrilled with what we managed to achieve: 623rd out of 2695 is top 25% - probably one of our all-time-bests!

But this time I managed to hack something together: the random movement of enemies still kind-of worked. At least this time, I called the failure early enough to put in a hack and move on, so the rest of the game didn’t suffer too much from it.

Pathfinding has sunk many of my jam attempts. The only real negative that I can recall from this jam is that pathfinding code nearly beat me again, but this time I realised I’m failing early enough to put in a hack and move on, so the rest of the game didn’t suffer too much from it. Maybe the key is to keep tilting at that windmill until defeating it becomes second nature, rather than working on games that don’t need it. I did at least manage to put in fancy Dijkstra map pathfinding a day or two after the jam ended, so maybe next time this will go better.

Other than that it’s so long ago that I can’t remember much, but some stand-outs in the comments:

  1. The length of a playthrough was just long enough for most people (fun without overstaying its welcome).
  2. The game was a little bit too easy without pathfinding, but maybe forgiving is useful in a game jam setting.
  3. Needed more variety, both in a single playthrough and between playthroughs.

Length

I can’t claim the length of the game was by design: we crammed in everything we could manage within the time constraints! People have many prototypes to get through after the jam though, so maybe aiming for 5-10 minutes maximum is a good idea.

Difficulty

The game was too easy. The lack of pathfinding along with a bug in the replacement meant that enemies never really attacked the player, which was a ridiculous mistake. The post-jam version is no longer an auto-play snoozefest - I have to concentrate a little bit to survive now, which I think would’ve been an even better experience.

As with length though, there may be something to be said for erring on the side of easier for game jams, to avoid triggering tired, overworked game jammers trying to review your crappy game prototype amongst a sea of shoddy prototypes.

Variety

For the lack of variety, I only have one answer: we must go harder, better, stronger, faster! Like this guy who can make 5-10 non-trivial 3D models in 10 minutes. That’s probably just down to practice, practice, practice. Making one or two small games a year is not enough to keep the many skills you need sharp. For this game we had:

  • a very basic randomly generated dungeon
  • 2 types of enemies
  • 3 items (gold, sword, cloak)
  • a shopkeeper and shop
  • a “win” condition

Two to four times that amount of items and monsters with a little more dungeon variety would probably go a long way towards adding more replayability. The only way to do that would be to become much quicker with the implementation of the individual pieces: quicker on the art, less code and maybe using classes of similar items to pad the content a bit.

Conclusion

It took several days to get my pathfinding logic in PICO-8 fast enough, but perhaps I should waste less time lamenting the fact that my prototype is trapped in a dead-end engine and instead embrace the fact that it’s a prototype. Use it to practice the skills. Learn from it. Then throw it away.

I could always rewrite it in something more suitable if I ever find an idea that’s interesting enough for me to keep me working on it long term.

Author

Matt Van Der Westhuizen

Back-end service developer at Ubisoft Blue Byte by day - wannabe game designer & developer by night.