View Issue Details

IDProjectCategoryView StatusLast Update
0008940Dwarf FortressDwarf Mode -- Jobs, Designationspublic2015-05-16 10:50
ReporterXolroc Assigned Tolethosor  
PrioritynormalSeverityminorReproducibilitysometimes
Status acknowledgedResolutionopen 
PlatformLenovo G710OSWindows 8.1OS Version8.1
Product Version0.40.24 
Summary0008940: Mining jobs leave dwarves scrambling up and down stairs
DescriptionWhen designating several rooms to be dug across a couple adjacent floors, if the rooms are vertically adjacent, dwarves will dig out a small section of one room and then run all the way to the stairs to go dig the corresponding portion of the room above. This appears to have been introduced in version 0.40.21, where the changelog says "(*) Made digging look up/down for continuing jobs". While this is a good idea, I think the logic behind when to look up/down should be modified somewhat, as it seems that dwarves prioritise changing levels over moving on the same level, and changing levels usually means a much longer path (to reach the stairs and then go all the way back) than walking a step or two forward.
Steps To ReproduceDesignate two rooms for digging in a fortress, one directly above the other. Watch your miner run back and forth between the two rooms and the stairs.
TagsNo tags attached.

Relationships

has duplicate 0008951 resolveduser1294 Miners mine one square by z-level then change 

Activities

Afghani84

2015-04-28 09:57

reporter   ~0032624

The way you describe it this might be better in the suggestions forum. It sounds to me that it works as intended by Toady (although maybe not ideal).

Wyozenzuzex

2015-05-16 09:27

reporter   ~0032690

I've encountered this too. I think this is definitely a bug, and a fairly serious one at that. The impact on mining efficiency is in some cases devastating.

I encountered this while digging out my magma piston. A ring of mining (not channeling) surrounding a 3x3 block, 130 levels deep. Accessed by a stairwell adjacent to the outside of the ring. Extremely slow mining! I ended up adding a stairwell on each face of the ring, designated at a higher priority to force them to be dug out first. This resulted in MUCH fewer wasted steps, but still FAR from anything I'd call efficient.

If this had been a LARGE ring for a huge piston, the efficiency would have degraded MUCH further.

Mining/smoothing etc needs to PATH one step, AND then two steps, in all directions including up/down, before looking for designations further afield (of the same priority, that is).

I don't like random, it's less efficient and looks ugly besides. So ideally IMHO, the evaluation order would be consistent but symmetrical, so..

Suggestion: Store the direction of the last step the dwarf took, and path clockwise from there, or CCW, whatever. This would result in a dwarf mining clear across a large area in a 3 wide tunnel (arm's reach?), and then continuing around the edge of the area, still in a three-wide (or, worst case, 2 wide) pathway.

Basically, a very nice pattern that does the edges first. Several dwarves would end up quite a bit different depending on how delayed the later ones where, but should still give something orderly looking. Or at least looking like the individual dwarves at least had a plan, which is TOTALLY lacking in the current algorithm.

Slightly less obvious to implement because "last step taken" can be up or down when digging stairwells. I think it's still way better than randomness.

Add Note

Note

Issue History

Date Modified Username Field Change
2015-04-28 09:32 Xolroc New Issue
2015-04-28 09:57 Afghani84 Note Added: 0032624
2015-05-07 10:40 user1294 Relationship added has duplicate 0008951
2015-05-16 09:27 Wyozenzuzex Note Added: 0032690
2015-05-16 10:50 lethosor Assigned To => lethosor
2015-05-16 10:50 lethosor Status new => acknowledged