Thanks for taking the time to write this.
Yea, the dungeons don't have much variety.
The sword ranged attack comes out always at full health, and then has a probability of coming out that decreases until at 70% health, where it ceases to come out.
The libwinpthread-1 was there because there was a Windows 11 related bug with nimraylib_now where stuff wasn't getting linked properly. I fixed it by compiling on a separate Windows 10 machine and probably just forgot to take out the lib.
The spritesheet JSONs are generated by aseprite. I don't use the .aseprite portion, just the positions and animation data. The tileset JSONs are generated by Tiled which has an ID system which you use with the tilesize to calculate tile positions. I don't think it has any floating point errors or anything, although there are some mistakes in my mapgen for the digital area where the wrong tile is used for some corners and stuff.
This was just a project to learn Nim with, but I'll keep your criticism in mind for my next project!