Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Death of the quantum stockpile and more control over dumps  (Read 6377 times)

Amalgam

  • Bay Watcher
    • View Profile
Death of the quantum stockpile and more control over dumps
« on: December 18, 2009, 11:25:49 pm »

This thread is all about storage - stockpiles and dumps (damn walls of text >.<)

Item compression: The way dumps and item stacking are currently handled leaves much to be desired. You can't reasonably expect your dwarves to be able to able to store an entire mountain's worth of stone in one tile (despite how ambiguous space and size are in DF), and at the same time there shouldn't be a hard limit on how much you can store in a tile - stone in particular is a good example of this because it takes up the entire tile. Finding a place to put the stuff without using a quantum stockpile (which df tends to use when clearing out a space for workshops for the sake of simplicity) is very hard. I say there should be a way to compact items when it's really needed, while still being sensible about the disadvantages of trying to keep track of items in a total clusterfuck; I'm sure you've all been in a house where finding *anything,* let alone retrieving it without spilling things all over the floor is nigh impossible. I live in one of those houses. I suggest a system very similar to the clutter system in workshops. When storing an item with another item that would *not* normally stack with it, it should take 200 steps to store it, or 2 seconds with 100fps. Retrieving an items from a pile of 2 non-stacking items should take 200 steps as well. Adding an item to a pile of 2 non-stacking items would take 300 steps, etc... Stockpiles could include some kind of option that says how much you want to compress items in it, and dumps could have this as well. While it would probably be more practical to just use a larger stockpile most of the time this would be very useful for stockpiles like wood, stone and furniture that typically require a lot of space. Additionally, compacted items could slow movement for creatures walking through the tile by an amount proportionate to how compacted they are.

More control over dumps: One of the issues I have with dumps is the amount of micromanaging. Dwarves will usually use the nearest dump when dumping items, which might not be what you want - this often makes it impractical to have more than one dump in your fort at once, I find myself designating and deleting far too many dumps in DF. I suggest that when items are marked to be dumped, they become marked with a magenta 'd', signifying that they are pending to be dumped. After this, you can use 'i' to zoom over to the dump you want the items to be placed and press 'enter' (or some similar key, doesn't matter) to have all the pending items dumped there, which would be marked with a light magenta 'd' (like the one that's used now) to signify that they are actively being dumped. This would allow you to have multiple dumps at once and have greater control over where you items could be dumped.

Garbage bags: No, I'm talking about Glad bags - just simple cloth or leather bags used to hold items that are marked to dumped. You could select how many bags a dump can hold similar to how you can select how many bins or barrels a stockpile will use and any items that can be stored in a barrel, bin, or bag will be hauled off to the dump and stored in bags to conserve space. Why bags? Well, currently bags are a rather underused container. Cloth and leather from caravans is very plentiful (unlike wood which is a valuable commodity on treeless maps) and bags would be ideal for mass garbage disposal. Wooden bins and barrels can often be far too valuable to waste on storing garbage on maps with few trees (you can never have enough bins!), yet the need to conserve space is still there.

Thoughts/comments?
Logged

silhouette

  • Bay Watcher
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #1 on: December 18, 2009, 11:54:10 pm »

Ok im confused about topic 1.

topic 2.
THere is a thing in zones about the zone being "Active".

topic 3.
This would be intresting... kinda like it.
but continue on with the thing with bags going into barrels n that, (the filled ones aswell)
Logged
# PowerGoal49, SCREAM BALL, (Future): Trolls take the captives and see if they can throw them all the way over the chasm to each other.
---
SCREW EVERYTHING ELSE! I WANT THIS!

Amalgam

  • Bay Watcher
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #2 on: December 19, 2009, 12:04:06 am »

Ok im confused about topic 1.

topic 2.
THere is a thing in zones about the zone being "Active".

topic 3.
This would be intresting... kinda like it.
but continue on with the thing with bags going into barrels n that, (the filled ones aswell)
1: tl;dr: Quantum stockpiles are gamey but storage is a commodity in DF. If you want to store more items in a space you should be able to, but DF should acknowledge this isn't always the most practical way to go about things. I think it would make things more fluid.

2: You shouldn't have to explicitly disable every dump you don't want items being dumped in and then have to enable to one you want to use. And then if you want to use one of the other dumps again you'll have to switch the one you're using off and switch the one you want to use on. It just seems a little easier to be able to have them all active at once, and since you can dump all the items all in one go it's not like it's going to be fingerbreaking. In fact, it'd require less effort in anything - you only have to navigate to one of the dumps and designate the items to be dumped there instead of navigating to several. Plus, it's hard to keep track of a lot of dumps.

3: There isn't really much more to say about it, it would work very similar to a stockpile - except it's not, it's a dump. Nothing is automatically stored and it uses bags instead of bins or barrels.
« Last Edit: December 19, 2009, 12:05:52 am by Amalgam »
Logged

silhouette

  • Bay Watcher
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #3 on: December 19, 2009, 12:21:09 am »

Yeah but bags (filled) can be stored in barrels iirc, leading to more space saving.

1. yeah i understand that a bit.
But just adding steps seems to be more time consuming that anything, ild perfer it if it didnt take more time to stockpile more things in one tile, just keep stocking it.
Logged
# PowerGoal49, SCREAM BALL, (Future): Trolls take the captives and see if they can throw them all the way over the chasm to each other.
---
SCREW EVERYTHING ELSE! I WANT THIS!

Footkerchief

  • Bay Watcher
  • The Juffo-Wup is strong in this place.
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #4 on: December 19, 2009, 12:45:39 am »

Stockpiles could include some kind of option that says how much you want to compress items in it, and dumps could have this as well.

There's a dev item that concerns a related idea.  This isn't a "gotcha it's already in the notes," just something that might help you square your idea with how Toady may approach it.

# Bloat313, STOCKPILE CONSOLIDATION, (Future): Ability to order the consolidation of items in a given stockpile. Part of the item stacking problem.
Logged

Amalgam

  • Bay Watcher
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #5 on: December 19, 2009, 12:47:39 am »

...If it didn't take more time to store things with other items, you'd have a quantum stockpile that is literally a stockpile instead of a dump. That would just remove the whole storage mechanic entirely, which we're trying to improve. Better hauling has been the number one suggestion on the big list for a while and storage is inextricably entwined with it. If you remove the quantum stockpile quirk (which needs to be done eventually), where are you going to store all your excess stone? The only way you'd be able to do it is store it outside or in a dug out chamber in soil (ick, too much hauling). And the stockpile would have to be huge. It'd hog up too much space. Compression is a sensible way to deal with this issue, but there's drawbacks to it. Stone isn't the only thing that could use this either, I've heard a few posters who "do not know how to not produce ridiculous quantities of goods," which is fine - some people might want to play that way.

As for how it would affect the game as a whole... Probably not much, actually. It would still be far more efficient to use stockpiles as they are now, but there's instances where you just don't have the space to have everything set up all neat and tidy - above ground forts in particular suffer this. It's just making things more flexible.

tl;dr: The quantum stockpile quirk is weird but it's essential to storage, we need a way to justify item compression. The "realistic mining" thread crashed and burned for a reason.
Stockpiles could include some kind of option that says how much you want to compress items in it, and dumps could have this as well.

There's a dev item that concerns a related idea.  This isn't a "gotcha it's already in the notes," just something that might help you square your idea with how Toady may approach it.

# Bloat313, STOCKPILE CONSOLIDATION, (Future): Ability to order the consolidation of items in a given stockpile. Part of the item stacking problem.
Heh, it's cool. Though I find it unsettling how often people are able to say that something's in the dev notes - the developer thinks of everything, indeed.
Logged

Impaler[WrG]

  • Bay Watcher
  • Khazad Project Leader
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #6 on: December 19, 2009, 01:44:20 am »

I really like the first portion about adding Clutter levels to stockpiles, it extends something we already have and the slowdown on moving through and retrieving makes sense, though I would add one stipulation, the time slowdown for retrieval is proportional to the number of distinct object stack TYPES in the tile, so picking a piece of wood from a pile of identical wood or a stack of arrows from among many identical Cat bone bolt stacks is not slowed down no mater how large the pile is (cause you can just grab the log off the top without any searching) while picking the desired weapon out of a bin full of diverse weapons would take a longer, this would reward you for having specific stockpiles rather then mixed up hodgepodges.  I think Multiple Bins per tile makes sense, say a maximum of 7 bins which would be the equivalent of stacking to the ceiling, Dwarves would find more then 2-3 Bins make a tile impassible.  If you need to access something their a two step process of getting the bin and then getting the item in the bin, again the same logic applies but at each level the more types are present the slower it is but the bins have broken the problem down giving you logarithmically better performance over just dumping all the items in the tile directly.  We could even add a 'Shelves' construction that is either carved from native stone or built from wood/stone and can be part of a stockpile, it lets your dwarf skip the first 'bin' level search but still splits up the items into seven groups and thus speeds up retrieval a huge amount, especially for very diverse items (like eventually books).

The moving slow down would stay as you descrbed, based purely on quantity.  This might be reflected in the UI by using two separate values, Clutter being the retrieval slow down and a new 'Heaping' value for how full a tile is, though really some kind of limit should eventually be reached which blocks anything else from being added, alternatively the insertion time could grow as the tile becomes more 'heaping' (more time needed trying to cramp it in) and this acts as a de-facto limit on how much more can be added as haulers drop their loads (loosing all insertion progress) and wander off to get drinks.

The total effect would be for workshop clutter to more gracefully moved into stockpiles cluttering them and keeping things from completely grinding to a halt as they do now.  I particularly like the possibility of stacking wood in cords or my gold bullion till it reaches the ceiling like Fort Knox or my Alcohol barrels in a real 'wine cellar'.  Blocks would also no longer need Bins and Stones could be piled much more efficiently as well, fulfilling some of the ideas for compacting stone but doing it under an system that would manage all items rather then just stone.
« Last Edit: December 19, 2009, 03:07:50 am by Impaler[WrG] »
Logged
Khazad the Isometric Fortress Engine
Extract forts from DF, load and save them to file and view them in full 3D

Khazad Home Thread
Khazad v0.0.5 Download

Amalgam

  • Bay Watcher
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #7 on: December 19, 2009, 01:54:41 am »

Heh, thanks for the feedback. I tend to go for a relatively minimalistic approach but it could need fleshing out. Anything to store all this crap without cheating though :P
Logged

silhouette

  • Bay Watcher
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #8 on: December 19, 2009, 02:09:39 am »

Ive always supported the quantum stockpile, prob cos i mine a LOT without removing all that stone.

But if we also do this we need to reqork the pathfinding or atleast make it a tad better, to make people go for the nearest stone first to the furthest (ive had some masons run all the way to the entrance to use one stone when a stone right next to their workshop is usable.)
Or atleast making it so stone doesnt lagg like hell lol...
Logged
# PowerGoal49, SCREAM BALL, (Future): Trolls take the captives and see if they can throw them all the way over the chasm to each other.
---
SCREW EVERYTHING ELSE! I WANT THIS!

Silverionmox

  • Bay Watcher
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #9 on: December 20, 2009, 08:30:51 am »

Or at least making it so stone doesnt lagg like hell lol...
It doesn't. The corridors it comes out of do, though. Try to place doors to separate unused mining areas from the rest of the fortress, and lock them.
Logged
Dwarf Fortress cured my savescumming.

darkflagrance

  • Bay Watcher
  • Carry on, carry on
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #10 on: December 20, 2009, 10:04:59 am »

Or at least making it so stone doesnt lagg like hell lol...
It doesn't. The corridors it comes out of do, though. Try to place doors to separate unused mining areas from the rest of the fortress, and lock them.

It does. This has been demonstrated by folks who use cheats to embark with 100k stone, as by others who report stone-smashing/elimination leads to fps gains.

Also, locking doors exacerbates the fps drop by pathfinding problem rather than eliminates it, because dwarves will attempt to path through them anyway, though they fail. Better just to wall the areas off permanently.
Logged
...as if nothing really matters...
   
The Legend of Tholtig Cryptbrain: 8000 dead elves and a cyclops

Tired of going decades without goblin sieges? Try The Fortress Defense Mod

Silverionmox

  • Bay Watcher
    • View Profile
Re: Death of the quantum stockpile and more control over dumps
« Reply #11 on: December 20, 2009, 10:09:19 am »

Or at least making it so stone doesnt lagg like hell lol...
It doesn't. The corridors it comes out of do, though. Try to place doors to separate unused mining areas from the rest of the fortress, and lock them.

It does. This has been demonstrated by folks who use cheats to embark with 100k stone, as by others who report stone-smashing/elimination leads to fps gains.

Also, locking doors exacerbates the fps drop by pathfinding problem rather than eliminates it, because dwarves will attempt to path through them anyway, though they fail. Better just to wall the areas off permanently.
Strange, I found some improvements with locked doors. You're right that items cause lag in general, I was confusing it with pathfinding-related lag. Still, making static items take up less processing power seems like an easy fix.
« Last Edit: December 20, 2009, 10:11:20 am by Silverionmox »
Logged
Dwarf Fortress cured my savescumming.