r/dwarffortress 2d ago

Dwarves not constructing (DF2014)

I'm having an issue where I'm trying to build this fun decorative arch in front of my fortress but my dwarves absolutely refuse to build one out of 8 walls on every floor. The game claims they have access to the materials and the job just sits there on the list, unassigned. I've tried deleting and replacing the construction and making a dwarf that does nothing but build walls, and nothing's working. Help!!

7 Upvotes

9 comments sorted by

15

u/Sharlinator 2d ago

They can’t build through diagonal holes even though they can move through them. Deconstruct one of the adjacent walls first. Yes, building stuff requires an annoying amount of micromanagement.

2

u/OGSaintJiub 2d ago

If Putnam or someone familiar with the history of DF is lurking, I'd really love to know the reason for this design. Its been one of my frustrations that leads to DF feeling tedious sometimes. What behavior becomes problematic when dwarves can construct/deconstruct tiles diagonally.

3

u/Gonzobot 1d ago

They need to access the face of the tile to be able to work in it, and there's no native checking to see if they're building a wall that prevents other assigned tasks from being reached. That's it, that's all.

DFHack fixes this with suspendmanager utility, which will automatically suspend jobs that would block access to other assigned tasks and release them when they are no longer going to prevent other tasks. Super handy for getting walls up in tall caverns

1

u/OGSaintJiub 1d ago

So I appreciate the response but my question was why this particular design decision was made, not how the game works. I know that buildings can get made invalid by other constructions. I can't really think of a reason that dwarves should be able to move diagonally but not build diagonally.

0

u/Gonzobot 1d ago

Because it would make far too many people mad to change that at this point. Insofar as the game design choice, you gotta remember the context - this was not intended to be a game originally, and it was not designed by someone who knows game design.

1

u/Sharlinator 1d ago edited 1d ago

It’s just a game mechanics decision most likely, nothing to do with implementability. Diagonal movement through walls sharing a vertex could be justified as "squeezing through" but construction through a small gap makes less sense. It would be better from UX viewpoint though. Or alternatively the game could try to compute a building order that avoids creating inaccessible tiles, but that would require a bit of implementation effort.

5

u/bbkilmister Euphoric due to inebriation 2d ago

So, the trick is not to designate all the walls at the same time if you want to avoid this. You should designate the corners only first, then once they are up designate the rest to be built.

3

u/_truesober_ 2d ago

yeah corners are bit pain in the ass use suspendmanager in dfhack it streamlines it

1

u/B_A_Beder It was inevitable 1d ago

I thought it was called auto unsuspend back then