Well, something happened that is worthy of this devlog, and this is the only rightful place for the story. I thought about putting it on Facebook, but too nerdy and obscure even for there. So, I was working on a bug where you couldn’t position-swap the princess after you befriended her. Turns out this was applying to any creature with the “friend” attribute, which otherwise yields insta-taming. The problem lay in how the “attack” logic was firing, it would return early as if the new friend had been tamed, even when it was already tame. That was not a tough fix.
The interesting part was what happened when I was trying to repro. The labyrinth maze spawned, a 12×12 area, and the princess spawned directly next to me adjacent to the stairs at the end of a dead-end passage. A few things were funny about this. First, it was the only eventually that would allow the bug I was trying to find to kill the game dead in its tracks: With the princess un-swappable at the end of that passage, my character could not move at all. Second, it should never actually happen. The spawn points are all selected to be at least 3 city-block units apart.
It turned out, my algorithm for finding the distant points was relatively sound, I just had the number of permutations it would attempt tuned unrealistically low, and had it fail out and give me whatever solution was in its memory banks. Interesting bug, happy to have it sorted it out in an hour or less.
Also added the logic for chests, there’s now a chest for every quest, sometimes as a part of the quest and sometimes after successful completion. Chests are items that, when their tile is moved on by the hero, get replaced by a human-type loot item, scaled by level.