Dwarf Fortress Bug Tracker - Dwarf Fortress |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0006511 | Dwarf Fortress | Dwarf Mode -- Interface, Unit-Job Screen | public | 2014-06-21 23:47 | 2021-02-02 11:28 |
|
Reporter | gavj | |
Assigned To | | |
Priority | normal | Severity | minor | Reproducibility | always |
Status | new | Resolution | open | |
Platform | Windows | OS | Windows 7 | OS Version | |
Product Version | 0.34.11 | |
Target Version | | Fixed in Version | | |
|
Summary | 0006511: Removing [JOB_PERMITTED] tags doesn't stop player from activating the job |
Description | For example, remove [JOB_PERMITTED:MASON] from the dwarf entity raws, start a new world. It will prevent you from assigning embark points to mason skills, but then in game, you can still just turn on masonry and build masons workshops with it and make stone furniture, etc...
I have been told that if you remove all tags for a whole category, then the category won't show up, but that's of course not very helpful for things like one type of crafting job.
This is a known bug on the forum when I qasked, but I can't find any bug tracker reports, sorry if duplicate. |
Steps To Reproduce | Remove a job permission tag from entity raw file
start a new world and game
go to unit's P-L menu and turn on that skill anyway
unit will now perform jobs of that skill despite it being not suppose to be permitted. |
Additional Information | |
Tags | entity, jobs, raw files, skills |
Relationships | related to | 0000286 | resolved | Toady One | Removing one permitted job for entity causes whole labor category to disappear | related to | 0006568 | new | | Permitted jobs tags don't work in a new way -- different from previous versions |
|
Attached Files | |
|
Issue History |
Date Modified | Username | Field | Change |
2014-06-21 23:47 | gavj | New Issue | |
2014-06-21 23:48 | gavj | Tag Attached: jobs | |
2014-06-21 23:48 | gavj | Tag Attached: skills | |
2014-06-21 23:48 | gavj | Tag Attached: raw files | |
2014-06-21 23:49 | gavj | Tag Attached: entity | |
2014-06-22 02:20 | Knight Otu | Note Added: 0024838 | |
2014-06-23 07:33 | Footkerchief | Relationship added | related to 0000026 |
2014-06-23 07:33 | Footkerchief | Relationship deleted | related to 0000026 |
2014-06-23 07:33 | Footkerchief | Relationship added | related to 0000286 |
2014-06-24 06:40 | Quietust | Note Added: 0024841 | |
2014-06-24 21:39 | gavj | Note Added: 0024845 | |
2014-07-07 22:38 | Footkerchief | Relationship added | related to 0006568 |
2021-02-02 11:28 | Quietust | Note Added: 0040894 | |
Notes |
|
|
I mentioned that behavior back in 0000286, but it seems that no proper report was ever filed. I'd better resolve that other report, though, since that no longer happens. |
|
|
|
It should be noted that the entity raw class DOES keep track of individual enabled labors, but the labor menu doesn't seem to be respecting its contents properly - most notably, the Alchemy labor is marked as "not permitted", but the game displays it anyways.
This is something that definitely worked back in 40d. |
|
|
(0024845)
|
gavj
|
2014-06-24 21:39
|
|
I'd also like to add that if you fix this, it would be nice to also still add a raw tag or something that still does what this does currently.
Specifically, [NO_EMBARK_POINTS] or something, that stops embark points, but doesn't stop activating it later. Because this is useful, just not for the intended thing.
For example, if you want to enforce dabbling skill forever, [NO_EMBARK_POINTS] plus turning[SKILL_GAIN] or whatever that tag is to 0% would do so, whereas otherwise they couldn't gain skills, but could still embark with somebody proficient. |
|
|
|
As of version 0.47.05, the code for viewscreen_dwarfmodest which populates the Labors menus calls a function (at address 0x1404641C0 on 64-bit Windows) which tries to filter out inappropriate labors, but that function only filters out the first 11 top-level categories of Woodworking (-2) thru Hauling (-12) based on their contents, ignoring the 12th category (Other Jobs) and all of the individual labors.
Version 0.31.25 behaved mostly the same (I'm guessing bug 0000286 was fixed before that), while version 0.28.181.40d (which had a flat labors menu) checked every labor and removed all of the non-permitted ones. |
|