View Issue Details

IDProjectCategoryView StatusLast Update
0000448Dwarf FortressDwarf Mode -- Jobs, Constructions (walls etc)public2012-03-17 23:49
ReporterShurhaian Assigned Touser6 
PrioritynormalSeveritymajorReproducibilitysometimes
Status resolvedResolutionno change required 
Product Version0.31.01 
Summary0000448: Dwarves wall themselves in, can't be prevented
DescriptionAs in 40d, dwarves prefer to stand on a particular side of a tile when channeling it out or building a construction onto it. This often leads to them getting stuck, and due to other bugs, cancelling tasks for dwarves all over the fortress.

However, in 40d, it was possible to force dwarves not to stand on a particular tile, at least when building constructions, by ordering another one to be built on the unsafe tile and suspending that. Dwarves will no longer respect this, multiplying the complexity of e.g. pump stacks by an order of magnitude, as they must always be provided a way out on their preferred side or the entire operation will grind to a halt.

Related pathing issues also occur with channeling(also in the context of a pump stack), but are less regular - the dwarves are backing themselves into corners for no apparent reason, but aren't consistent about which side they stand on.
Steps To ReproduceDig out a north-south tunnel.
Dig out an accessway leading east and then out from the north end of this tunnel.
Channel out the second tile from the north and ensure there is no ramp.
Order walls to be built on both the northern tile of the tunnel and the tile immediately to its east, the first tile of the temporary accessway. Suspend the one in the tunnel proper.
Watch as a mason stands on the suspended wall and walls himself in.
TagsAI

Relationships

related to 0003902 resolveduser11 Dwarf teleports into cavern 

Activities

Shurhaian

2010-04-04 23:00

reporter   ~0001005

Last edited: 2010-04-04 23:11

This is not guaranteed to happen, and seems to be essentially random. The workaround of building a wall on the unsafe square used to be reliable but is no longer.

No obvious correlation between whether or not it works and the order in which the walls are placed.

DoctorZuber

2010-04-04 23:35

reporter   ~0001012

Last edited: 2010-04-04 23:38

Unable to reproduce. I've just tested this with eight deadends, all eight placed the wall from the correct side and were not stuck.

1. create dead end
2. place two walls, one as intended, one to block the wrong side to build from
3. suspend both walls
4. unpause and let a few frames pass.
5. unsuspend the wall you want built.

If you're skipping steps 3 and 4 it's entirely possible they're jumping on the task the instant you place it, even with the game paused.. Dwarves seem to plan their entire path in advance, so they make the decision of which side to stand on the instant they accept the task which allows the to ignore a suspended wall because the decision was already made before the suspended wall was placed. this also could occur in 40d.

GauHelldragon

2010-04-04 23:58

reporter   ~0001016

one workaround to this is to place a door in the spot you DON'T want them to build the wall from. once the door is in place and there's nobody standing there that could be walled in, lock it, and build the wall.

DoctorZuber

2010-04-05 00:05

reporter   ~0001019

I guess I should also note that my usual tactic when building pumpstacks is to spend one extra stone to build a fortification before I cut my channels to power the stack. It wastes a stone sure, but stone is plentiful, and it saves a few steps.

Shurhaian

2010-04-05 06:17

reporter   ~0001061

Placing a door isn't viable when the space you don't want them to build is going to be a fluid-filled destination of a pump stack.

Fortification... may work but certainly isn't pretty in terms of dwarven labour.

I noticed the behaviour even when the "actual" wall was inactive for some time, so I'm not sure it's a pathfinding thing as noted in note 2. Perhaps I've just been singularly unlucky...

DoctorZuber

2010-04-06 18:40

reporter   ~0001641

did you follow my steps carefully for forcing them to the side you wanted? I've never seen that fail.

derigo

2010-04-20 23:20

reporter   ~0004419

Last edited: 2010-04-20 23:21

You place a fortification...where?

Like this?

###
#.#
# [
#.#X
#F#
###

###
#F#
#.#
# [X
#.#
###


Does that work?(as in, can magma be pumped into and sucked out of a fortification succesfully?) If so its brilliant. Dwarf labor isn't an issue if you have an Army Corps of Engineers. a la http://magmawiki.com/index.php/40d:Cross-training#Army_corps_of_engineers

Ghede

2010-04-21 16:31

reporter   ~0004521

Last edited: 2010-04-21 16:32

Another workaround. Only build on diagonal paths.

For example:
Build walls in this order.
####
#A~PUMP
  B##
####

Walls can only be built orthogonally, but dwarves can move diagonally. It takes a little extra work, but it does the job.

malvado

2011-08-12 16:44

reporter   ~0018493

I can confirm that while building walls some dwarves can be standing on the tile that is being built even when another tile that has no construction order is avaibable.

Dwarves also tend to get stuck a lot if you are not carefull.

krazykatboy

2011-08-16 06:30

reporter   ~0018531

I have this problem as well and appears to occur at random, making it difficult to predict and prevent. This will often go unnoticed by me (I have a large fortress) and the system, making them starve or dehydrate.

Kogut

2011-10-25 13:59

reporter   ~0018906

Last edited: 2011-10-25 14:01

"However, in 40d, it was possible to force dwarves not to stand on a particular tile, at least when building constructions, by ordering another one to be built on the unsafe tile and suspending that. Dwarves will no longer respect this" - absolutely unable to reproduce. Can you provide savegame that demonstrates this problem?

EDIT:Anyway, dwarf should check and decide to not stay on the side of wall with area smaller than (for example) 15 tiles

ellindsey

2011-10-26 19:16

reporter   ~0018914

Cannot reproduce. I have never once had the method of suspending a wall where you don't want the dwarf to stand fail, and I've built many walls and complex constructions in the current version. Please demonstrate a situation that reproduces this bug or provide a save.

Rafal99

2011-10-26 21:51

reporter   ~0018915

Placing a suspended wall never failed for me in DF 0.31.XX .

Kogut

2011-10-27 00:57

reporter   ~0018917

So I suggest to change this from "Dwarves wall themselves in, can't be prevented" to "Dwarves wall themselves in" as it is king of bug (mentioned in WoW but still bug)

Issue History

Date Modified Username Field Change
2010-04-04 22:59 Shurhaian New Issue
2010-04-04 23:00 Shurhaian Note Added: 0001005
2010-04-04 23:11 Shurhaian Note Edited: 0001005
2010-04-04 23:35 DoctorZuber Note Added: 0001012
2010-04-04 23:38 DoctorZuber Note Edited: 0001012
2010-04-04 23:58 GauHelldragon Note Added: 0001016
2010-04-05 00:05 DoctorZuber Note Added: 0001019
2010-04-05 00:28 Qloos Tag Attached: AI
2010-04-05 06:17 Shurhaian Note Added: 0001061
2010-04-06 18:40 DoctorZuber Note Added: 0001641
2010-04-20 23:20 derigo Note Added: 0004419
2010-04-20 23:21 derigo Note Edited: 0004419
2010-04-21 16:31 Ghede Note Added: 0004521
2010-04-21 16:32 Ghede Note Edited: 0004521
2010-04-21 16:32 Ghede Note Edited: 0004521
2011-08-12 16:44 malvado Note Added: 0018493
2011-08-16 06:30 krazykatboy Note Added: 0018531
2011-10-25 13:59 Kogut Note Added: 0018906
2011-10-25 14:01 Kogut Note Edited: 0018906
2011-10-26 19:16 ellindsey Note Added: 0018914
2011-10-26 21:51 Rafal99 Note Added: 0018915
2011-10-27 00:57 Kogut Note Added: 0018917
2012-01-08 11:31 user11 Relationship added related to 0003902
2012-03-05 08:59 user6 Status new => resolved
2012-03-05 08:59 user6 Resolution open => unable to reproduce
2012-03-05 08:59 user6 Assigned To => user6
2012-03-05 08:59 user6 Resolution unable to reproduce => no change required