dfhack
dfhack copied to clipboard
labormanager: validate job labor mapper against disassembly results
Reverse engineering recently located the function that assigns manager jobs to job-holding buildings. Analyzing the logic here may help to validate and possibly fill in some holes in labormanager's job-to-labor mapper.
For reference, the function in question is at 0x1405dd950 in 0.47.05/Win64.
This is a non-blocking issue; I'm mainly putting it here so I won't forget that this was found in reverse engineering.
Reverse engineering found the function that determines if a unit can perform a specific job (0x140c89cb0 in 0.47.05/Win64), the function that identifies the skill required for a specific job (0x14084c780 in 0.47.05/Win64) and the function that maps labors to skills (0x1406697e0 in 0.47.05/Win64). Brief examination of the disassembled code reveals that some of the mappings in labormanager are wrong (e.g. CollectClay is HAUL_ITEM, not POTTERY), and so this issue is now reclassified as a bug.
stale