Dwarf Fortress Bug Tracker - Dwarf Fortress
View Issue Details
0010986Dwarf FortressDwarf Mode -- Militarypublic2018-12-31 18:232019-01-01 06:39
0010986: Military can be assigned equipment that is no longer on the map.
It's possible to assign specific equipment that is no longer present on the map.

I first noticed this after I sent 10 dorfs to conquer an elven site and stay there. Once everything was done and they settled there, I went to military screen to find out that the squad they belonged to, which was now empty, still had their specific items assigned. No worries, I simply deleted those, then put five new recruits in, then started assigning uniforms to them, which is where I noticed the issue.

Instead of being able to only choose from 7 steel breastplates (as it should be, because 5 were unassigned from a different squad and 2 I had in a stockpile), I was able to pick out of 17 possible ones, which means the 10 steel breastplates that left the site were still being thought of as available. I checked the other armor pieces and same thing - 10 more of them were "available" than the real number was supposed to be.

I then reverted the save (forcequit) to right before I sent my squad to conquer the elves and while messing around with the military equipment, I discovered that I can still assign two named copper shields that have been traded away to a human caravan a season ago and thus are no longer on the map.

Checking the Artifacts and Stocks screens revealed that these two shields are indeed no longer on the map, yet they do appear in military equipment / specific item assignment screen.
Save demonstrating the bug : http://dffd.bay12games.com/file.php?id=14170 [^]

If you go to military/equipment and try to assign a Shield by choosing specific item, you will be given the choice of two named shields - both of these were copper shields that was since been traded away and are no longer on the map.
No tags attached.
Issue History
2018-12-31 18:23uristkibkalanNew Issue
2019-01-01 01:24uristkibkalanNote Added: 0039065
2019-01-01 03:15FantasticDorfNote Added: 0039066
2019-01-01 06:39uristkibkalanNote Added: 0039068
2019-01-01 10:53uristkibkalanNote Edited: 0039068bug_revision_view_page.php?bugnote_id=0039068#r15876

2019-01-01 01:24   
Testing revealed that part of the bug can be somewhat prevented by disbanding the squad that has left your fortress to occupy a different site.

Simply disband the squad and create a new one, if need be - this skips the need for unassigning uniform and thus falsely "freeing" the items for reassignment.
2019-01-01 03:15   
When they return as i found out on 0010961 , they will be stuck wearing their equipment for a while, then return everything to the pile after becoming unassigned.

They *should be unassigned though on conquering & occupying, unless they weren't successful and your dwarves are dead/captured, which notably has different results. Ill have to try to save to get more info though.
2019-01-01 06:39   
(edited on: 2019-01-01 10:53)
The way I understand how uniforms using specific items works is that:

Items currently being assigned/sought appear in red in the list, so you don't keep assigning the same item to all dorfs (which automatically unassigns it from the previous one)

Items that have already been picked up and are being worn disappear from the list entirely, they first have to be unassigned so that they appear there again.

The issue, as it would seem, is that when the game returns a manually unassigned item back to the list of available ones, it doesn't check for whether or not the item is actually present on the map.

A quick update: The named copper shields in question may have glitched due to expelling some stressed soldiers several years prior. Unfortunately, I can't remember if I had assigned them specific weapons/armor, but it is more plausible than a glitched out caravan.