NecroBit - A first jam post-mortem

As three Brazilian data scientists and engineers, we love games. We have dreamed of making games for the longest time, and over the past several months, we have put this dream into practice by learning the tools of the trade. Ludum Dare 55 was the first time we worked towards a finished game that other people could play and give us feedback.

Play NecroBit here!

Screenshot 2024-04-20 at 11.16.11.png

We aimed to create something manageable yet polished and fun enough for others to experience. We learned a great deal from building this game, and this post is a way to share that with the community, give back in some sense, even if it's not as useful for LD veterans alike.

What worked

  • Focus on what's fun: This sounds obvious, but repeatedly asking ourselves “why would that be fun?” every time we added something to our game was paramount to achieving an engaging experience. From the get go, we believed that having a horde of summons working for a weak necromancer would be fun, and the act of summoning should be engaging. We never lost sight of those pillars, even when we changed fundamentally how the game worked on the last day. Even the bad parts of the game could be fixed if we followed that mantra more religiously.
  • Fast decision making: From the moment we decided to join LD we knew that we would disagree as a team. But we feared that would slow us down, and we structured things so it didn’t. We agreed that our game was going to be 2D, we knew we would use Unity, we knew our code was going to be a disgrace. And those types of decisions made decision making faster during the jam. This “disagree and commit” mentality was followed during the entire event and really made the difference. The schedule also helped us make the best use of our time: we discussed fundamental changes in the morning, worked until the evening and then did a round of playtesting and discussed things to change in the next day.
  • Limit scope with multiple shallow passes: We restrained ourselves from going too deep into any aspect of the game early on, and committed to revisit that aspect later if we deemed it important. Turns out we rarely did, choosing to focus on something else. We did that for art and animations (only one animation for each enemy at first), sound effects (there are only 4 sound effects in the game), environment tiles (again, very few tiles), and many other aspects. We didn’t have time to go back to any of those later, and that was totally fine, because there was always something else more important to do. Abandon levels, ideas, and remove everything that doesn’t contribute to the game experience. In a Jam, you don’t have time to produce a lot of content, so the core must be all that’s left. Also, some design decisions can be attractive while still easy to produce. Case in point the 1-bit art. Its low complexity allowed every team member to contribute to art while maintaining its attractiveness.
  • Feel motivated along the way: We could have prototyped everything with blocks and canned assets, but having a game that felt cute at the end of the first day was motivating. It also established the mood, and we were able to make the game around that. Following our gut and fixing something that felt utterly *wrong (like making the Boss fight fun) was important to make the game feel good every time we played it. Sometimes that minimal polish is the difference between a game that is fun and one that you throw away.
  • Making small in-game tutorials: Preferring not to interrupt gameplay with lengthy instructions, we found a simple solution by integrating bite-size, contextual tutorials.
  • Contribute to the Jam: Engaging with the community was fun, and it also resulted in a lot of feedback to our game. It was amazing to learn from similar games and even games totally different from ours. I'd never thought about making a Sumo game!

Screenshot 2024-04-20 at 11.17.04.png

What didn't work

  • Workflow problems: We lost a lot of time because of our Unity workflow. Merging stuff and losing something was the norm. We didn't know how to solve that, and we need to improve those skills for our next Jam. (ps: HALP! Is version control just bad for gamedev? We used Plastic within Unity's UI)
  • Graphic design: While the 1-bit art was very important, it resulted in visibility issues for our players. We knew we had to make something like colored outlines for projectiles and summons, but we didn't have the time for that. Also, it's surprisingly hard to use 16x16 px tiles with 1-bit. Making something coherent is very challenging, and maybe we could have used a 2-bit pallet or a bigger tile size to make that simpler.
  • Vampire survivor-likes are hard: The first idea was to make one of those. This is the kind of game that is ill suited for a Jam, especially for beginners. Roguelikes (can we call VS that?) live and die by their content and by the fun of repeating runs. We don't have the time to produce a lot of content and our players don't have the time to repeat it a lot of times. Also, performance becomes a concern a lot faster.
  • Combat should be rewarding: We didn't ask "why would that be fun?" when implementing enemies. They don't make satisfying sounds when they die, they don't have a cool animation and more importantly, killing them doesn't reward the player in game. At one point we had everything to fix that in place: enemies dropping things when they died, an upgrade system, a bone asset that we would use as drop. Well...maybe next time.
  • Level design: I'm personally proud of my first level. I love when games foreshadow upgrades way ahead of time, making players anticipate the reward, and there's one place I did that. We also had branching paths, I love them. However, not everything works as expected: the level is too long, and deep levels make backtracking more tedious. Finally, we didn't immediately show how Devil summon was useful as soon as you got it, so you only learned that (or didn't) during the Boss fight.

We definitely have a lot to learn in the next months, as we're even considering working a little more on NecroBit to fix the stuff we're unhappy with. The community was fundamental to those learnings and we're very surprised with how cool and welcoming it is. So thank you to everyone who played our game and took the time to give us feedback.

If you haven’t played it yet, please do it here, and thank you for the feedback and support!