View Issue Details

IDProjectCategoryView StatusLast Update
0006273Dwarf FortressAdventure Mode -- Reactionspublic2016-11-24 22:58
ReporterQuietust Assigned Touser6 
PrioritynormalSeverityminorReproducibilityalways
Status confirmedResolutionopen 
Product Version0.34.11 
Summary0006273: Gloves produced by reactions cannot be equipped
DescriptionWhenever 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).
Tagsgauntlets, modding, reactions

Relationships

has duplicate 0008320 resolveduser1294 Custom reactions that produce gloves/gauntlets/etc create unwearable items 

Activities

palu

2014-08-12 07:53

reporter   ~0028873

Still in 0.40

chaosvolt

2014-09-19 16:34

reporter   ~0030261

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.

Quietust

2014-09-20 11:03

reporter   ~0030271

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...

chaosvolt

2014-09-20 12:56

reporter   ~0030274

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.

Quietust

2014-09-20 15:20

reporter   ~0030277

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.

chaosvolt

2014-09-20 17:25

reporter   ~0030278

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. ^^"

chaosvolt

2016-08-28 12:03

reporter   ~0035816

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.

Add Note

Note

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 user6 Assigned To => user6
2014-08-12 08:12 user6 Status new => confirmed
2014-09-19 00:03 user1294 Relationship added has duplicate 0008320
2014-09-19 16:34 chaosvolt Note Added: 0030261
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
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