Anonymous | Login | Signup for a new account | 2023-09-29 02:55 PDT | ![]() |
Main | My View | View Issues | Change Log | Roadmap |
View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||||
0011727 | Dwarf Fortress | World Generation -- General | public | 2021-03-23 16:23 | 2021-06-17 14:27 | ||||||
Reporter | Quietust | ||||||||||
Assigned To | |||||||||||
Priority | normal | Severity | minor | Reproducibility | have not tried | ||||||
Status | new | Resolution | open | ||||||||
Platform | amd64 | OS | Windows | OS Version | 8.1 | ||||||
Product Version | 0.47.05 | ||||||||||
Target Version | Fixed in Version | ||||||||||
Summary | 0011727: Worldgen positions check for permitted labors instead of permitted jobs? | ||||||||||
Description | While analyzing the game's logic for generating entity positions during worldgen (after somebody asked about a "Royal Treasurer" role), I discovered that the "Master of Beasts", "Doctor", and "Cook" positions are checking their prerequisites incorrectly - instead of looking in the list of permitted jobs, they appear to be checking in the list of permitted labors. As a result, the Master of Beasts requires Woodcutting (instead of Animal Trainers), the Chef requires Fish Cleaning (instead of Cooks), and the Doctor bizarrely requires Glazing (instead of Doctors). | ||||||||||
Steps To Reproduce | Generate a world with "[PERMITTED_JOB:GLAZER]" in the PLAINS entity (as it is by default) and observe the number of Doctor-related positions - I did a default world and had 21 doctor positions after about 100 years. Next, remove "[PERMITTED_JOB:GLAZER]" from said raws and generate another world and observe that there are no doctor positions at all. | ||||||||||
Tags | No tags attached. | ||||||||||
Attached Files | |||||||||||
![]() |
|
(0040991) Shonai_Dweller (reporter) 2021-03-23 16:59 |
Oh, wonder if this is related to the crash caused by combining fish_cleaner with no_eat in modded civs (Too many out of work cooks?). Would make sense as it started happening when these new positions were introduced. 0011458 |
(0041093) Quietust (reporter) 2021-06-17 14:27 |
To clarify, for the case of Doctors: 1. It should be checking "entity->raw.permitted_jobs[PROFESSION_DOCTOR]" 2. Instead, it's trying to check "entity->raw.permitted_labors[PROFESSION_DOCTOR]" 3. As a result, it's actually checking "entity->raw.permitted_labors[LABOR_GLAZING]" (since both PROFESSION_DOCTOR and LABOR_GLAZING are represented by the number 69) |
![]() |
|||
Date Modified | Username | Field | Change |
2021-03-23 16:23 | Quietust | New Issue | |
2021-03-23 16:59 | Shonai_Dweller | Note Added: 0040991 | |
2021-06-17 14:27 | Quietust | Note Added: 0041093 | |
2021-06-28 09:51 | Flying_Teasets | Issue Monitored: Flying_Teasets |
Copyright © 2000 - 2010 MantisBT Group |