- v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
- Use this page to report any issues related to the migration.
40d:Help! My civilians keep running into combat!
After the bodies start falling, and sometimes even before, citizens will run like madmen right into the middle of a combat situation. We'd like to think of it as natural selection, but all dwarves are potentially that stupid.
Corpse looting
The most common cause is the death of a friend or enemy. A dying creature who carries objects drops those objects on death, and your dwarves just can't wait to start looting the corpses. Even the presence of hostiles will only deter them if they get close enough to be spooked, and then there's often no telling which direction they'll run - it's usually the wrong one. This behavior only occurs after someone dies. To prevent this behavior, as soon as bodies are generated immediately forbid (d f) all objects they were carrying and their corpse - including all parts thereof. Dwarves will cancel jobs to retrieve forbidden items.
Outside tasks
The second behavior which leads to civilian dwarves in avoidable combat situations is dwarves who try to take jobs which take them outside. This is really a more general version of the previous (as they are trying to job 'take item to depot' for dropped items), but can be generated by any object or stockpile that's sitting outside. This is much harder to deal with unless you've kept your stockpiles inside and kept track of every object outside, because finding them to forbid them can be difficult, especially on larger maps or maps with many outdoor z-levels. Finally, not all outdoor jobs are going to be item collecting jobs. Woodcutters will want to chop designated trees (deselect them to stop this or turn off the labor), fisherdwarfs are going to want to go fishing (turn off the fishing labor), trappers will want to trap and hunters will want to hunt (turn off these labors). You'll want to turn off gathering refuse from outside as well (o r o).
Resuce missions
One last behavior which can (rarely) bring a civilian into combat is an attempt to rescue a wounded dwarf.
Solutions
"All dwarves stay inside"
Notably, if combat (or other enemy deterrence systems) are at or near your entrance, telling dwarves to stay inside will not help - they will still try to take these jobs, walk outside (right into a combat situation), and then realize they aren't supposed to be there, cancel the job, walk back inside, and try to take the same job again.
Batten down the hatches
An easier solution to manage is locking all your dwarves inside, for instance by raising drawbridges. This tends to break invader AIs however, as they will just mill about outside (not walking forward into your traps) because they can't find a path to a dwarf. It also makes it more difficult to get military out to the invaders because when you open the doors your dwarves will start taking outdoor jobs again.
Military law
One last solution is to draft all your civilian dwarves and station them somewhere deep within your fortress. It will generate a lot of unhappy thoughts, and kill your productivity for the duration of the siege, but it will stop them from being stupid.
Forward barracks
Create your barracks, a food stockpile, weapons and armour stockpiles, small meeting hall, etc near the entrance of your fort for your military dwarves to use. Have the rest of your fort seperated by lockable doors. When fighting occurs, lock all non-military dwarves in the back of the fort where they can continue working undisturbed.
Conclusion
The existence of this problem is a strong argument for doing as much as you can to give your dwarves little reason to go outside. The fewer reasons your dwarves have for going outside, the fewer dwarves you will lose to crazy dwarves wandering into the line of fire. It has the side benefit of greatly reducing your casualties from ambushes.