Week 2
7/6/2021 - 7/12/2021
7/6/2021 - 7/12/2021
This was a pretty scattered section of the walkthrough, but covers a lot of stuff.
Setting up monsters and the player to do damage to each other with a somewhat generic damage and melee combat system, creature death, tracking map locations via index, and splitting the turn system up into a more manageable state machine.
The damage dealing uses an interesting ECS solution of adding a component to a creature that wants to deal damage, to be processed by a damage system. There are a couple of other things that I think I want to refactor at some point though. The actual application of damage is done by a random function but seems like it should be in the damage system itself and the deletion of dead characters happens as an independent call to the damage system, but seems like the system itself should trigger this at the end of the whole run sequence.
Most everything else in this section is straightforward though. I am excited to see what I can expand the indexing system into at some point as well.
Most of the UI work here is supported by the rltk library, so setting up the UI is pretty straightforward.
I am impressed by how easy it is to get all this working -- definitely a solid foundation for simple roguelike UI. I don't have much more to say about this part, other than some of the menus are pretty hardcoded, so I may refactor these in the future to be based on window size or something.
The "combat log" sort of solution here is standard for roguelikes, but I find it to be pretty clunky. Something I would like to expand on/change in the future I think.