Project Climb Post-mortem


Intro

Project Climb was a challenge I've set for myself: make a complete game, from scratch, using a new language & framework, in one month. A complete history of my thoughts during the challenge is available on my log: this post-mortem is basically a summary of it with videos.


Week 1 - Failing to make a physics engine

This was my first time using Haxe, and my first time using an object-oriented language besides C#/Java/C++, so it was pretty disorienting at first. I wasted the first few days on making an entity-based physics engine when my game didn't need an entity-based physics engine. I removed that feature by the sixth day.

Tip: Don't make features you don't need when under a time constraint.

I spent the rest of the week exploring LDtk and making stupid dependency mistakes. By the end of the first week, I had pretty much nothing besides a simple (copy-paste) LDtk renderer and a controllable cube. The future looked bleak.

Week 2 - Actually making a physics engine

After removing most of the physics code from the previous week, I've began working on implementing tilemap-based physics & collisions. It took me most of the week to get that working, and it had a ton of bugs (there's actually a bug with knockback in the final release, but I made sure the enemies can't trigger it anymore. It was very annoying).

Tip: Don't make physics engines unless you hate yourself.

Besides the physics stuff, I've begun working on animations & gameplay that week. I've added the snail enemies (which didn't do anything yet at that point) during the last day.

Week 3 - Adding basic gameplay

During this week, I've added most of the mechanics of the final game, like the spellcasting logic and all Fire spells, taking damage and multiplayer.

It was a very productive week, and allowed me to add basically everything else relatively easily, but I didn't think that at the time, and thought that I'll have to really tone down my vision - especially since I hadn't programmed the teleport spell yet.

Tip: Don't panic.

Week 4 - Speedrun time

During this week, I tried my best to add as many features as possible in as little time as possible. This was also the first time I started really hard-coding stuff, but it paid off.

While making the UI, I thought of adding a Kirby style, always present boss health indicator to force me to make a boss. It worked. In the last four days, I worked on Project Climb a bit too much, neglecting my university homework, to add things like keybindings, four spells and a boss.

Tip: Don't neglect university homework. It doesn't end well.


Conclusion

It was definitely an interesting challenge, and I'm very happy with the end result - I think Project Climb is one the best games I've ever made, even without content. I've also learned a lot from this. Anyway, now I'm back at working on Frogman Gaiden, so I'll have to leave Project Climb. For now.


Note: this post-mortem was originally written on 22/06/2021 - I just never got around to publishing it until now (20/06/2022), one year after finishing Project Climb.