Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Bug: Stacking Rocks  (Read 911 times)

weasel

  • Bay Watcher
    • View Profile
Bug: Stacking Rocks
« on: September 20, 2006, 04:36:00 pm »

If I place a building (easiest to watch: large farm) over a bunch of stones, the dwarves begin moving the stones out of the way. In cramped areas, the place they move them to is usually a single tile - and usually my only door. The door then fails to close.. and takes ages to clear away =)

I think it's a bit buggy too because folks could abuse this to their advantage (using the unnatural stacking of stones in stead of processing and using bins).

Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Bug: Stacking Rocks
« Reply #1 on: September 22, 2006, 02:31:00 pm »

I guess the alternative would be suspending the construction if there are no sufficiently empty border tiles.  There are a few other ways to stack stones, but this seems like the easiest one to control.
Logged
The Toad, a Natural Resource:  Preserve yours today!

Kjoery

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #2 on: September 22, 2006, 03:57:00 pm »

If you want to clear the door, just remove it, and rebuild it.
Logged

Upthorn

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #3 on: September 22, 2006, 06:32:00 pm »

It would be preferable if doors weren't considered a suitable place to stack rocks.
Or if doors could only be blocked open by certain objects (like dwarves).
Logged

Aquillion

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #4 on: September 22, 2006, 10:11:00 pm »

Ugh, don't interfere too much with it, though...  the last thing the player needs is to have to set up some complicated stockpile system just to clear out some farmland.  Honestly, I don't have a problem with stacking them all in the same spot...  sure, it's inconsistent, but the truth is that if it was handled consistently with normal rock-storage then clearing out new farmland would become a huge bother and take forever.  For players who hadn't been moving rocks up until then (and therefore have several thousand to queue up) it could almost literally take forever.

Dwarves absolutely have to prioritize moving rocks out of new constructions zones... and there really can't be any chance of this failing.  Normal hauling is just too slow to have anything depending on it happening with any speed...  look at how much trouble we're having with lye!  The player shouldn't ever have to wait for a normal haul-job to complete in order to clear out a building area.  It's annoying enough now when it happens with new doors and other small furniture...  waiting for every rock in a huge farm to get taken out via normal hauling would be painful.

Basically, we shouldn't risk gameplay for the sake of consistency.  Most players aren't going to notice that rocks get put in the same place when clearing out a farm, but they will notice if it takes three seasons just to clean off some new farm plots.

...as for the rocks-in-door issue, you can currently avoid this by including an extra space before the door.  But maybe the cleaning job should include cleaning out doorways?  Of course, waiting for cleaning is even slower than waiting for hauling...

Logged
We don't want another cheap fantasy universe, we want a cheap fantasy universe generator. --Toady One

Maximus

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #5 on: September 22, 2006, 10:32:00 pm »

An explicit "move this object here" function (especially one that gets put at the top of the jobs queue) could solve a whole host of frustrations.  Maybe that goes too far in the direction of micromanagement, but there are a few cases where I just want to scream at the dwarves:

- Put the seed barrel next to the farm.
- Move that bar/block bin next to the furnace.
- Move that fish barrel next to the fishery.
- Get that object out of the door.

I've tried using the the "take from" stockpile function as a substitute, but it's neither reliable nor expedient.

Edit: if implemented, hopefully such a function would also override other tasks "locking" the item.

[ September 23, 2006: Message edited by: Maximus ]

Logged

Aquillion

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #6 on: September 23, 2006, 04:14:00 am »

Placing bins and barrels of stuff would make sense...  it would be nice if you could just order the dwarves to keep a fill barrel of a particular type at a certain spot.  I seem to recall that that's planned for the future.

But moving items that are blocking doors, cluttering your farm, or blocking construction is common sense; the player shouldn't have to order the dwarves to do that.  As an aside, it'd also be nice if construction that was blocked by an object was just delayed until that object is moved, rather than suspended; at the moment the player has to manually resume the construction when the blocking object is finally moved.

Perhaps moving items in those 'important' spots could just have a higher priority, so the items query for their move jobs more often and are more likely to hit an idle dwarf or something...  maybe this should wait until a real job-priority system is in?

[ September 23, 2006: Message edited by: Aquillion ]

Logged
We don't want another cheap fantasy universe, we want a cheap fantasy universe generator. --Toady One

Maximus

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #7 on: September 23, 2006, 09:58:00 pm »

Well, dwarves do clear they way for buildings (including farms) when they begin construction, but yes, they ought to clear the way when construction is ongoing as well.

As for clearing doors -- it'd be nice if they never dropped items on doors in the first place, unless they were killed or something.   (Or moved items onto doors when constructing buildings, but that might come with "don't drop on doors" code.)

I wouldn't want to wait for a complete job-priority system before I got a "move item" command, because "move item" is likely to be a lot simpler to implement.  Furthermore, "move item" doesn't depend on the existence of a priority system, although having one would be nice.  It could be given sufficient priority by being put on the same task queue as lever pulling, etc., which appears to be a de facto high-priority job queue.

Long-term, the dwarves ought to be smarter about a number of things, but until that day, I'd be happy to nudge them explicitly once in a while when it'd make a huge difference.

Logged

Aquillion

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #8 on: September 24, 2006, 11:41:00 am »

Ah, no...  I'm saying we should never get a "move item" command at all.  I don't think it fits with the game, and I don't think the player should have to micromanage things to that extent.  As is often the case with micromanagement, giving them the option to do it would already cause problems, because then every player would have to micromanage item removal if they want their fortress to run properly.

In other words, I think that a job-priority tweak should be used instead of manual commands move objects.  More manual commands to handle little things like that would be a bad idea.

Logged
We don't want another cheap fantasy universe, we want a cheap fantasy universe generator. --Toady One

mattg63

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #9 on: September 24, 2006, 12:10:00 pm »

One relatively simple way to work around this for now is to leave an empty space or two in the middle of your farm plot. I leave one empty row right down the middle and they pile the rocks there.

And yes, the door squares should be tagged off limits for storing anything. I had one disaster because a door was open due to a rock in the door square and a dwarf hit the lever before I realized it.

Logged

Mud

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #10 on: September 24, 2006, 10:33:00 pm »

quote:
Ah, no... I'm saying we should never get a "move item" command at all. I don't think it fits with the game, and I don't think the player should have to micromanage things to that extent. As is often the case with micromanagement, giving them the option to do it would already cause problems, because then every player would have to micromanage item removal if they want their fortress to run properly.

I think that being able to tag items as "transport to this stockpile" or at least "move to closest stockpile" is a good idea.  If you have to do it individually it'd be a pain in the ass, but right now the item collection system just doesn't make any sense.

As for not wanting to set up a "complex stockpile system," what's so complex about stone and ore piles? There's ample room and time to set up a small stockpile near your farm while the floodgate system is being set up, which can later be converted into a food-storage area for your farmers. Now, I'll admit that right now there's no way to ensure that the stones from the farm will be taken to a stockpile, but once the stockpile system's fixed this won't really be a problem. Or, of course, you could just leave some open spaces next to each of your farm plots ...

Basically, what I'm trying to say is that micromanagement of resources wouldn't only be viable with an improved stockpile system, but it'd be a better system for running your fortress. Right now, instead of micromanaging resources, people have to micromanage workshops: to avoid having crafters run willy-nilly all over the map to find the components they need, players have to constantly move them around and around so that they're close to the resource they're using. This eats up at least as much time as resource management (through stockpiles) would, and seems slightly more annoying. I'd prefer to screw around with what items stockpiles take and where they take them from than have to move my workshop constantly.


So what does this have to do with the stone/farm/door problem? Just keep the stone-moving as it is until the stockpile system is improved, and once it is require stones to be moved either to an empty adjacent square or a stockpile before building can commence on anything.

For players that have trouble with dwarves propping doors open with stones: make a fail-safe system with channels. In your farm room, build a channel in front of every door you build. That way, dwarves will move the stone into the channel instead of the doorway (so you can lock it if you want) and even if the door accidentally opens, you won't risk flooding your entire fortress, because the water will stop once it hits the channel. Even once the stone problem gets fixed, a fail-safe like this will still be pretty useful.

Logged

axus

  • Bay Watcher
  • Axe Murderer
    • View Profile
Re: Bug: Stacking Rocks
« Reply #11 on: September 24, 2006, 10:42:00 pm »

Stockpiles are for craftsman convenience, not for cleaning up!  Well, except refuse and graveyard ;p  The ground clearing code is good except for dropping on doors, if the stacking is considered a cheat then have the dwarves move it to non-door non-stoned squares.
Logged

Mud

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #12 on: September 24, 2006, 10:53:00 pm »

The problem with the whole "craftsman convenience" thing is that you have so little control over what goes into a stockpile. Wood stockpiles are obviously necessary for carpenters and stone stockpiles can sometimes be useful for masons, but since dwarves often choose the last item you mined to put into an ore/stone stockpile, it's often very difficult to get the items you want where you want them without making your stockpiles gigantic and grabbing up everything on the map. In particular, I have a lot of trouble getting limestone to my magma smelter to make steel.

What I'm saying is that being able to designate which items go into the stockpile next would be able to solve this particular problem. It'd solve a whole lot of problems that were much more important, (namely making crafting much easier -- I dream of the day I have a limestone-only stockpile right next to my magma smelter,) but they'll also solve this problem, so there's no reason to come up with a temporary fix to a minor problem that will be solved with something that's already being addressed in a Core (burrows) and a Req (better stockpiles).

[ September 25, 2006: Message edited by: Mud ]

Logged

Maximus

  • Bay Watcher
    • View Profile
Re: Bug: Stacking Rocks
« Reply #13 on: September 25, 2006, 01:34:00 am »

Okay, I will now admit the "move item" command is just a stopgap desire of mine, and probably a bad idea long-term.  

I realize my specific complaints would probably be well-handled by the planned stockpile specialization feature.  To that end, I've written up a number of thoughts on stockpile specialization in this thread.

Logged