Dwarf Fortress Bug Tracker - Dwarf Fortress |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0006273 | Dwarf Fortress | Adventure Mode -- Reactions | public | 2013-01-02 05:58 | 2016-11-24 22:58 |
|
Reporter | Quietust | |
Assigned To | Footkerchief | |
Priority | normal | Severity | minor | Reproducibility | always |
Status | confirmed | Resolution | open | |
Platform | | OS | | OS Version | |
Product Version | 0.34.11 | |
Target Version | | Fixed in Version | | |
|
Summary | 0006273: Gloves produced by reactions cannot be equipped |
Description | Whenever a reaction is used to produce a GLOVES item, it does not set the "left" or "right" flag, resulting in an item which cannot be equipped by normal creatures.
When custom reactions create gloves, they should probably just create them in pairs and assign them as left/right appropriately (as with ones created in workshops), or possibly even examine the creator's body plan and produce one glove for each hand (e.g. 4 gloves for antmen); for consistency, the same should probably be done with SHOES (though they don't need to be flagged as left/right). |
Steps To Reproduce | |
Additional Information | |
Tags | gauntlets, modding, reactions |
Relationships | has duplicate | 0008320 | resolved | Knight Otu | Custom reactions that produce gloves/gauntlets/etc create unwearable items |
|
Attached Files | |
|
Issue History |
Date Modified | Username | Field | Change |
2013-01-02 05:58 | Quietust | New Issue | |
2014-08-12 07:53 | palu | Note Added: 0028873 | |
2014-08-12 08:12 | Footkerchief | Assigned To | => Footkerchief |
2014-08-12 08:12 | Footkerchief | Status | new => confirmed |
2014-09-19 00:03 | Knight Otu | Relationship added | has duplicate 0008320 |
2014-09-19 16:34 | chaosvolt | Note Added: 0030261 | |
2014-09-20 08:02 | chaosvolt | Issue Monitored: chaosvolt | |
2014-09-20 11:03 | Quietust | Note Added: 0030271 | |
2014-09-20 12:56 | chaosvolt | Note Added: 0030274 | |
2014-09-20 15:20 | Quietust | Note Added: 0030277 | |
2014-09-20 17:25 | chaosvolt | Note Added: 0030278 | |
2014-09-25 02:14 | chaosvolt | Tag Attached: gauntlets | |
2014-09-25 02:14 | chaosvolt | Tag Attached: modding | |
2014-09-25 02:14 | chaosvolt | Tag Attached: reactions | |
2014-11-06 02:16 | McFeel | Issue Monitored: McFeel | |
2015-09-02 10:09 | chaosvolt | Note Added: 0033026 | |
2015-09-02 11:04 | lethosor | Note View State: 0033026: private | |
2015-09-12 10:10 | chaosvolt | Note View State: 0033026: public | |
2016-03-14 04:48 | chaosvolt | Note Deleted: 0033026 | |
2016-03-26 11:37 | chaosvolt | Tag Attached: long-standing bug | |
2016-08-28 12:03 | chaosvolt | Note Added: 0035816 | |
2016-11-24 22:58 | lethosor | Tag Detached: long-standing bug | |
2017-03-19 07:34 | Ziusudra | Issue Monitored: Ziusudra | |
2017-06-08 19:28 | Huntthetroll | Issue Monitored: Huntthetroll | |
Notes |
|
(0028873)
|
palu
|
2014-08-12 07:53
|
|
|
|
|
Well bugger me, I thought I'd made certain to confirm whether this had been unreported before reporting it.
Anyway, to quote one useful thing I discovered:
I've got good news and bad news. The good news is this can be fixed. The bad news is this fix breaks other things.
By messing with body_default.txt, the [LEFT] and [RIGHT] tokens can be yanked out of the hands. In this case, the only relevant body that needs to be tweaked is HUMANOID_NECK.
This will cause all adventurers, migrants, and NPCs to generate "ambidextrous" gloves/gauntlets for their outfits, and affect any such items that appear elsewhere (caravans, armories, shops, etc). Likewise, the broken gauntlets produced by reactions will suddenly be usable.
So what breaks? Hard-coded reactions in fortress mode (craftsdwarf's workshop, clothier's workshop, leatherworker's workshop, metalsmith's forge) will still produce left/right versions of gauntlets, gloves, etc. These will no longer we wearable by your new citizens with their modded "left" and "right" hands. |
|
|
|
That's more of a workaround than a fix, and the fact that it breaks all hardcoded jobs doesn't make it a very good workaround... |
|
|
|
True, doesn't help much. Not sure if any of the info gleaned from that would be of use.
Also not sure what'd be the most effective way of actually fixing this. Adding some way to reference handedness in reactions (or make glove-type reactions automatically tweak pairs of output) seems like it might be difficult, but would fix the issue directly.
Making the hardcoded reactions reference whether the crafter has any handedness might or might not be easier, and would only enable the workaround. |
|
|
|
If you read my original bug report description, I pretty much suggested exactly that - have custom reactions producing a single GLOVES item create one glove for each GRASP part and assign handedness on each one as appropriate, and ideally have the hardcoded job do the same thing. |
|
|
|
I mainly mean that I'm not sure how easy that'd be to code, and which facet of that fix would be easiest to code. ^^" |
|
|
|
Is there any idea on what code causes this, or which solution would be most efficient for fixing this? Ideally, making it so that the "is it left or right?" code when equipping gloves can treat an answer of "neither" as acceptable for both hands. I'm betting high odds that the code is an if/else or case/switch thing that returns true or false based on results, so simply having a case of "neither" return true would solve this issue handily (pun intended).
That seems like it would be simpler than coding left/right into the reaction output. |
|