View Issue Details

IDProjectCategoryView StatusLast Update
0007680Dwarf FortressDwarf Mode -- Itemspublic2014-12-18 05:25
Reporterhyndis Assigned Touser6 
PrioritynormalSeverityminorReproducibilityalways
Status confirmedResolutionopen 
Product Version0.40.05 
Summary0007680: Dwarves continually accumulate larger and larger numbers of tattered owned clothing items
DescriptionAs time goes on, a dwarf with a room will continually store more and more old clothing in his/her room. This may be an issue in long duration Fortress Mode games. There is no way to eliminated this gradual buildup of old clothing items other than removing room assignments and waiting approximately 1 full season for ownership to be cleared.

A new piece of clothing lasts about 1 year before becoming tattered. If a new clothing item is available, the dwarf will claim the new item. The old item will be dropped and then hauled to the dwarf's room for storage.

If the dwarf has no bedroom, office, throne room, tomb, or any other kind of room the owned item will have its ownership deleted after approximately 1 season of being left on the floor.

If a dwarf does have a room of some kind, such as bedroom, throne room, office, etc, and the old clothing is stored on the floor of this owned room, then ownership of this clothing item is never revoked for as long as the dwarf owns the room. A limited number of items can be stored in cabinets, but cabinets will become full and items will be stored on the floor.

This is a problem only in long duration forts. At first this is not an issue, but as years go on the number of items stored in the fort multiplies hugely.

Every piece of clothing a dwarf wears will be replaced approximately once per year. A dwarf can wear 10 or more clothing items at once. A fortress can have 100 dwarves. This means that every year, up to 1,000 additional items are being stored in this fortress. They remain and add up over time. A long duration fort, with perhaps 200 dwarves going on 50 years is going to have a very large number of stored clothing items. Easily many thousands of items.

This has appeared in prior versions as well.

Prior bug reports on this issue I have been able to find are 0002481 and 0003942. This issue is still occurring in 40.05. I have confirmed this tonight, playing the new build with no mods or alterations of any kind on the game. Prior builds of DF also had this bug. Behavior in 40.05 is unchanged from prior versions.

Suggestion for resolution:

A) Clear ownership of all items stored on floor, regardless if floor tile is in an owned room or not

B) Dwarf will only keep a limited number of owned items. If a new owned item is acquired, an older owned item has ownership cleared.
Steps To ReproduceCreate bedroom for dwarf.

Assign bedroom to dwarf.

Produce and/or trade for clothing. Ensure fortress has large selection of fresh, new clothing in stockpiles. (Goblin/elf clothes are fine too.)

Allow dwarf to live in fortress with same owned bedroom for several years. Suggest at least 5-10 years of dwarf living in fortress with ample clothing supply for this to be clearly obvious.

Check dwarf's bedroom. There should be tattered clothing everywhere.
TagsNo tags attached.

Relationships

related to 0002481 resolvedToady One Dwarves will claim new clothes when theirs is worn (xClothesx) but not wear it 
child of 0006185 new Worn Clothing stored as "finished goods" not refuse 
child of 0004403 feedbacklethosor It is impossible to dump owned items 

Activities

hyndis

2014-07-28 01:06

reporter   ~0027746

Last edited: 2014-07-28 01:07

A bit of math on how quickly the number of owned items can increase:

A dwarf will prefer to wear as many clothing items as possible, if available. As an example of my current book keeper:

2 pig tail fiber socks
2 giant cave spider silk gloves
1 pig tail fiber dress
2 groundhog leather shoes
1 wolverine leather cap
1 pig tail fiber trousers
1 giant cave spider silk coat
1 mule leather hood
2 giant cave spider silk mittens
1 cave spider silk cloak

This is 14 items of clothing. As my book keeper likes new clothes, she will obtain a new item of clothing of each piece roughly once a year. This means that every year she will obtain 14 new items.

This particular fortress is 2 years old. She has a total of 28 owned items.

If this fortress continues on for longer, say, 20 years, this single dwarf would have 280 owned items.

If I have 200 dwarves in my fortress (I like big fortresses) and each has the same access to clothing, this works out to an extra 56,000 items stored in the fortress.

This may contribute to framerate loss as fortresses age. It certainly causes a great deal of clutter in bedrooms. Cabinets can't hold infinite clothing.

Loci

2014-07-28 05:01

viewer   ~0027754

Alternate suggestion: destroy damaged clothing (silently remove from game) once the dwarf collects a replacement item.

At some point in the future, particularly ostentatious dwarves may acquire and own multiple items (say, cloaks) at a time. When switching one cloak for another, the previous item would be preserved (and stored in their cabinet) if it remained undamaged, or destroyed if it had become worn.

cephalo

2014-07-28 07:14

reporter   ~0027758

This issue has been around since before 40d. DFHack has some nice scripts to clean all this junk out, which becomes pretty important in a long running fort.

hyndis

2014-08-13 17:01

reporter   ~0029001

Is there any thought to allowing dwarves to send damaged but owned items for repair so they're new and in good condition again? This same process might also allow for the repair of other damaged items.

Or simply revoke ownership if an item lays around on the floor for too long, regardless of where the floor tile is. If a dwarf lets something sit on the floor for months, years, or even decades, never touching the item, they probably aren't very attached to the item.

This seems like this may be one of those low hanging fruit issues.

Peeps

2014-08-13 23:19

reporter   ~0029011

On the subject of dwarves wearing as many articles of clothing as possible, it would be nice if certain types of clothing could be forbidden from use by the normal populace in favor of the militia.
Making cloaks to supplement my militia's armor results in the civilian dwarves stealing them as fast as they can be made, and by the time every civilian in the fortress has as many cloaks as he can wear the first ones taken have started to wear out and they begin stealing more to replace them.
After five years or so of this I've hit the population cap and several of my militiadwarves still don't have a full equipment set.

greycat

2014-08-14 06:44

reporter   ~0029017

The standard workaround is NOT to give your dwarves a cabinet in their rooms. Without a cabinet, the accumulation of old clothing is limited to 1 article per empty floor tile. Any more than that will never get moved to the dwarf's room, so eventually its ownership expires and you can atom-smash it, magma-dump it, trade it to elves, etc.

If all the tiles of the dwarf's room are covered in non-cabinet furniture (restraints, statues, chests, weapon traps, levers...) then you can essentially cut the storage of old clothing to zero, at least for the non-nobles.

hyndis

2014-08-14 09:26

reporter   ~0029022

Last edited: 2014-08-14 09:28

> The standard workaround is NOT to give your dwarves a cabinet in their rooms. Without a cabinet, the accumulation of old clothing is limited to 1 article per empty floor tile.

This is not the case. I've seen dwarves pile clothes up many items deep, so the point they're wading through tattered socks piled hip deep in their rooms. There appears to be no upper limit with the amount of clothing a dwarf can accumulate.

If you really want to see the clutter, assign a small bedroom to a married couple. Twice the dwarf, twice the accumulation of owned items, and all in a small bedroom, such as in a 3x3 bedroom. Many items will be scattered around per tile. Items will of course be stored in cabinets first, but as soon as the cabinets are full things are going to be continually piled on to the floor in deeper and deeper piles.

There appears to be no upper limit to this. I've personally seen dwarves with 200-300+ owned items in a tiny bedroom.

Fortunately, DFHack allows cleaning up of these items via revoking ownership. But it would be nice if clutter would take care of itself without needing to use DFHack.

Just some method of automatically revoking ownership is all that is needed. I suggest any item laying on any floor tile for too long loses ownership. This means items in cabinets can be owned, but once cabinets are stuffed full and it ends up on the floor, those extra items have ownership revoked after laying on the floor for a while.

AFAIK, ownership revocation of owned items on floors of non-owned rooms is done at the season change. This is plenty of time for even the laziest dwarf to clean up his dirty laundry. And an un-owned item isn't destroyed, its just hauled back to a stockpile. Another dwarf or the same dwarf can claim this item once its gone back to a stockpile.

Additional update: I have not tested this in 40.08, so I cannot personally confirm if this still occurs in 40.08, but it most definitely did occur in 0.40.05 as well as in 0.34.XX and 0.31.XX. Behavior of this bug has not changed in many, many revisions of the game.

Larix2

2014-12-18 05:25

reporter   ~0031351

Last edited: 2014-12-18 05:36

A few observations:
clothing takes just under _two_ years to gain one level of wear. The first fresh clothes rush happens in autumn/winter of the second year, when the starting seven decide to exchange their gear for the first time. The average clothing exchange rate is seven items of clothing per dwarf per year.

The "store owned item" job will only spawn when a dwarf still has storage room in an owned place. That requires either a cabinet with remaining capacity or empty floor tiles. Dwarfs will not drag owned items from the dining hall to their room if all floor is covered and all cabinets full. Multiple-items-high clothes stacks can occur when a dwarf decides to pick up new stuff (shedding all old clothes instantly) while in their room - such stacks aren't normally re-distributed, since they're already in an owned room. As others observed, ownership over possessions in owned areas never expires, which is somewhat unproductive where worn-out socks are concerned.

Both items not stored in an owned area and forbidden items (even if the latter sit in the dwarf's cabinet) will have their ownership cleared after about two weeks.

I haven't run my forts' clothing reserves far down enough to check, but i think dwarfs would actually claim, pick up and equip xclothesx or even XclothesX if there was a severe lack of intact wearables. Worn clothes aren't really refuse, although dwarfs wearing such gear will always be on the lookout for fresher threads.

FWIW, the bug is still going strong in .40.18.

Add Note

Note

Issue History

Date Modified Username Field Change
2014-07-28 00:56 hyndis New Issue
2014-07-28 01:06 hyndis Note Added: 0027746
2014-07-28 01:07 hyndis Note Edited: 0027746
2014-07-28 02:28 user1294 Relationship added child of 0006185
2014-07-28 02:30 user1294 Relationship added child of 0004403
2014-07-28 05:01 Loci Note Added: 0027754
2014-07-28 07:14 cephalo Note Added: 0027758
2014-07-28 07:48 user6 Relationship added related to 0002481
2014-08-13 17:01 hyndis Note Added: 0029001
2014-08-13 18:20 user6 Assigned To => user6
2014-08-13 18:20 user6 Status new => confirmed
2014-08-13 23:19 Peeps Note Added: 0029011
2014-08-14 06:44 greycat Note Added: 0029017
2014-08-14 09:26 hyndis Note Added: 0029022
2014-08-14 09:28 hyndis Note Edited: 0029022
2014-08-14 09:28 hyndis Note Edited: 0029022
2014-12-18 05:25 Larix2 Note Added: 0031351
2014-12-18 05:36 Larix2 Note Edited: 0031351