Overall I'm very happy with this. It was a lot of work in 7 days. I created a basic engine in C++17 libtcod 1.24 SDL2 beforehand to prepare. Granted, most of it needed rewriting day 1! I used Lua with Sol2 to make it easier for me to add items and mobs. Realised afterwards that adding Lua might enable light moddability! (untested).
Features:
- Old school terminal code page 437 ascii graphics.
- Turn-based combat and tile-based movement.
- Game log window.
- Stats and health.
- Items auto equip into item slots and increase stats.
- Map generates a tower with rooms, in the shape of a pizza, with random amounts of enemies per room.
- Maps increase in difficulty as you progress.
- Lack of healing other than getting item upgrades results in having to pick your fights carefully, if you hope to beat the Lich!
- NPC’s with dialogue choices and optional rewards that can act as a difficulty slider if you decline rewards (will need some to beat the Lich).
- Monsters randomly wander and chatter in audible range, and will attack friendly characters in detection range.
Known issues:
- Console window may open, just minimise or ignore it. I couldn't get cmake to play ball with release.
- Rebooting the game is required for a new run!
- Maps look more similar than i’d like due to a mapgen issue, but you still spawn in different segments and random numbers of mobs & positions per segments, harder mobs appear as you progress.
Things I wanted to add but ran out of time:
- spiders poison effect
- food
- cooking
- monster drops
- more maps
- world outside of the tower
- proper death/win/new run screens
Pain points:
- This is my first C++ project, so of course the hat goes to learning pointers and cmake, oh and the dozen SEGFAULT errors! :D