Another weekly update, sort of on time. Progress:
- Semi-written the class for my NPCs, to the point where they will spawn in towns with some basic properties such as health. They currently have no AI though, and probably won't do for a while. The concept of coding AI currently terrifies me.
- The groundwork for the RPG side of things has been coded into my Player class. HP, XP, etc, etc. Leading on to...
- The beginning of combat. The player now has the ability to attack, and attacking an NPC knocks the NPC back and does damage based on the player's STR (strength) statistic. Should an NPC's health fall below 0, it will "die". If an NPC is dead, they're no longer shown on screen and the player can no longer interact with them. The instance of the NPC class remains, however, until the town is left. Also, walking in to an NPC hurts the player, knocking them back and lowering their health, which can be seen on the...

I've also changed up some colours in the still flat colour tileset to make things a little easier on the eye, and have been researching how to do draw good tiles and tilesets. I'm getting quite into it. Plan for this week:
- Get Inventory screen drawn up and Inventory system working, with items generated when NPCs are killed.
- Expand the RPG stuff, with the player gaining experience points when an NPC is killed and then levelling up when enough points have been acquired (standard RPG stuff)
- Once that's done, I can move on to the stuff I really want to get right: Quest generation. This is the big one, and the way I'm planning it will involve me moving a lot of code around to get it working as ultimately intended rather than as prototype code. I'm going to have to code the quest generation system itself, get friendly NPCs going, get some more map generation stuff going and get the player dying properly.
I also have a fair amount of bugginess and undesirable behaviour to code out, mainly surrounding controls. Should make for a fun week.