View Issue Details

IDProjectCategoryView StatusLast Update
0004932Dwarf FortressDwarf Mode -- Militarypublic2012-06-03 19:40
ReporterRafal99 Assigned ToToady One  
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Product Version0.31.25 
Fixed in Version0.34.11 
Summary0004932: Dwarves try to equip armor in order of its production instead of in order specified by uniform
DescriptionIt seems to be the main cause of dwarves-not-layering-armor-properly bugs.

For example assign a dwarf the following equipment:
2x chain mail
1x breastplate
5x cloak

Now produce these items in this order:
5x cloak
1x breastplate
2x chain mail

Look at Pri/Assignments screen for the given dwarf, it should show:
5x cloak
1x breastplate
2x chain mail

Which is not the order of equipment we specified! The problem not only appears in this screen, the dwarf will also try to equip it in wrong order, meaning he will probably end with only cloaks.

The problem can't be fixed by assigning only part of equipment at first, like that:
2x chain mail
1x breastplate
If you let the dwarf equip it, then add the cloaks back to his equipment, he will drop this stuff and go wear cloaks again, because they were produced earlier...


Steps To ReproduceLook above.
Tagsarmor, Equipment, Uniform

Relationships

has duplicate 0004522 resolveduser6 Military equip seems to work for the most part but is not thourough. 
related to 0000771 new Cloth/Thread partially used by medical dwarfs can't be dyed/woven & they prefer new supplies over used ones 
child of 0000535 acknowledgedToady One Equipping weapons/armor on military is erratic 

Activities

Mafia_Puppet

2012-03-20 01:26

reporter   ~0021608

Last edited: 2012-03-20 01:41

I can confirm this.

It is much easier to test by changing the layer_size of pants to 5 in the raws.

Greaves Layer_size 12, Layer_permit 4
Trousers Layer_size 5, Layer_permit 18

Produce 5 sets of leather trousers, then produce 5 sets of metal greaves.

You will find that it is impossible to get your dwarves to wear both, resulting in some incredibly painful pinching.

Now dump the trousers and produce 5 new leather trousers.

Your military squad will now wear both.

Maybe the game keeps track of this information in an array, and just adds new values as they are produced...?

Incidentally, you can fix this whole mechanic in the raws by just changing all the items to [LAYER_SIZE:10] [LAYER_PERMIT:20].

That way no matter what order, you can just equip two items on every body part. And Shaped will prevent armor spamming anyway.

Depending on how much armor you want to stuff on a body part (Helm/Cap/Hood, etc), you can increase permit.

Or just do [LAYER_SIZE:1] [LAYER_PERMIT:20] and stuff 20 cloaks and win the game.

user6

2012-03-20 19:48

  ~0021613

Toady may need an up-to-date save (0.34.02+) to fix this problem. It would be helpful for someone to upload a save to http://dffd.wimbli.com/ and post the link here.

kaypy

2012-03-21 06:34

reporter   ~0021637

34.05 test case: http://dffd.wimbli.com/file.php?id=5958

Issue History

Date Modified Username Field Change
2011-10-20 17:34 Rafal99 New Issue
2011-10-20 17:35 Rafal99 Tag Attached: armor
2011-10-20 17:35 Rafal99 Tag Attached: Equipment
2011-10-20 17:35 Rafal99 Tag Attached: Uniform
2011-12-07 09:47 user6 Relationship added child of 0000535
2012-02-27 17:03 user6 Relationship added has duplicate 0004522
2012-03-20 01:26 Mafia_Puppet Note Added: 0021608
2012-03-20 01:27 Mafia_Puppet Note Edited: 0021608
2012-03-20 01:41 Mafia_Puppet Note Edited: 0021608
2012-03-20 19:48 user6 Note Added: 0021613
2012-03-21 06:34 kaypy Note Added: 0021637
2012-03-24 07:40 user6 Relationship added related to 0000771
2012-06-03 18:42 Toady One Status new => resolved
2012-06-03 18:42 Toady One Fixed in Version => Next Version
2012-06-03 18:42 Toady One Resolution open => fixed
2012-06-03 18:42 Toady One Assigned To => Toady One