[α0.8] Change in hauling AI? If so, seems to be a nerfsome downgrade. :/

Started by Chibiabos, December 13, 2014, 04:47:23 AM

Previous topic - Next topic

Chibiabos

Has anyone else noticed a change in the stack hauling AI?  Previously, it seemed as though you could select a hauler, right click on a stack of something, and the hauler would gather all it could from that stack and all neighboring stacks, up to 75 in a stack for most items ... but this seems to have changed, in that the hauler will only gather enough to finish off a destination stack (to get it as close to its max, again 75 for most items but 10 for others).

If I'm not just imagining this and it has, indeed, changed, it has made things a lot more frustrating ... when I try to quickly gather potatoes to bring to my food stores for easy access by my cooks while they are cooking, the haulers I use will only gather a few potatoes instead of a full stack of 75, and because the cooks are drawing from those stacks, the next run will only be small as well (the hauler will just try to re-top off the less-than-full stack the cooks drew some from).  I liked the old method better, where the hauler would gather all it could and bring to the highest priority stockpile zone, and would only top off a stack if all it could gather and is carrying is less than it would take to finish off a stack in the destination zone.  The always seek to finish off a stack means it takes a lot more trips, especially when the destination stockpile is being actively worked (as with the aforementioned potato stacks being actively worked by cooks, thus the hauler will always bring a small fraction of a stack and never bring full stacks of 75, which would be more efficient).

I agree it is nice to consolidate stacks, but I think it should be done after hauling, and only within a zone ... that is, if several stacks in a particular zone are partials, consolidate them down into as many full stacks (and as fewer overall stacks, thus freeing up space to store other items) as possible, and that should be a lower priority than hauling from a lower-priority stockpile zone (or non-zone) into the higher priority zone (that is ... haul long first, /then/ worry about consolidating stacks).

Now that there is temperature and all food (even meat) spoils, I think the cumbersome new AI strategy makes things harder than they should.  Because haulers will now tend to only gather partial stacks to finish off stacks at the destination, it will take much longer overall to move the materials from their origin (such as potato farms for raw potatoes) and thus more will be left out longer (and in the case of food like potatoes, more likely to rot before it can be moved to cold storage).
Proud supporter of Rimworld since α7 (October 2014)!

UrbanBourbon

No, that damn hauling scheme was already in Alpha 7. Eventually it made me want to stop playing and stop paying attention to RimWorld. It truly makes hauling very inefficient as a whole, dragging down the entire colony efficiency. Good logistics is hard to pull off though. The logic alone is a nightmare to design. But, that being said, gathering full stacks would be far more efficient compared to the current system. Maybe haulers could use a separate configuration XML-file, free for the player to edit and experiment with?

The questions would be:
-How far should a hauler be allowed to travel to collect loose items of the same type in order to assemble a full stack?
-Return items when the carried stack is X% full, and if the next closest loose "small pile" is over Y squares away, in which the player should define X, Y, and "small pile".
-To what point (percentage) should a stockpile level drop before haulers are sent out to fill up the stockpile?
-Are the haulers free to do hauling if they have nothing better to do, which is to ask should they aggressively try to keep stockpiles full or is it OK if a stockpile is 80% full and there are still items out there?
-In case of cold outdoor temperatures, how much injury (frostbites) are the haulers allowed to sustain, or should they always fully warm up themselves first before heading out into the cold?
-Should the haulers go for the most distant items first or the closest ones?
-Should the haulers deliver items to the furthest possible square of a stockpile or the nearest, which is the same as asking should they start filling from the back of the room first or should they conveniently create barricades for the future haulers?

Maybe some of the choices should be made adjustable in-game, because I sure as hell know that "good logistics" depends on the situation, as priorities and circumstances can shift quickly.

Note: I haven't played Alpha 8

Menuhin

I certainly agree that the current hauling AI can be a bit irksome.  The want to complete a stack that is already in the stockpile makes little sense to me.  When dealing with less important short distance hauling this priority is not a big deal.  But when doing resource gathering from across the map it can require a fair bit more micro management.  Main thing I've found helpful with this is creating smaller, temporary stockpiles.  Which should cause the AI to ignore the incomplete stack.  Still requires management but I find it helpful.

Tynan

It's actually a middle-aged bug which I intend to fix for Alpha 9.

https://ludeon.com/mantis/view.php?id=726

Hauling AI is actually one of the most complex parts of the game, because there are so many different situations. Hauling from multiple piles to multiple piles or multiple constructions, restricted by ingredient filters and storage settings, where anything can change at any moment and the AI has to adapt - it gets complicated!
Tynan Sylvester - @TynanSylvester - Tynan's Blog

Teovald

I get that hauling must be complicated to get right, but at the moment, it is one of the weakest parts of the game.   

I must regularly forbid items too far in the map because my colonists spend ages in order to go fetch items one at a time : first a gun, then a parka, then a pair of pants. I can see why it works that way, but it feels very broken. 

Not to mention colonist that miss perfect opportunities to haul some objects, like when they cross the whole map in order to get that shiny survival ration but can't be bothered to bring the rest of the stack with them.

Vas

Quick Tynan, make the AI self aware (like Skynet) so they can adapt better!
Click to see my steam. I'm a lazy modder who takes long breaks and everyone seems to hate.

keylocke

Quote from: Tynan on December 13, 2014, 01:33:11 PM
It's actually a middle-aged bug which I intend to fix for Alpha 9.

https://ludeon.com/mantis/view.php?id=726

Hauling AI is actually one of the most complex parts of the game, because there are so many different situations. Hauling from multiple piles to multiple piles or multiple constructions, restricted by ingredient filters and storage settings, where anything can change at any moment and the AI has to adapt - it gets complicated!

as an addition to fixing the hauling to incomplete stacks in the stockpile..

perhaps also try to remove hauling of items not inside a stockpile directly to a "job" that needs the item? and whenever a job requires an item not inside a stockpile, just call the haul-to-stockpile function first for that colonist (if colonist has hauling capability) before checking again to do the job..

this way, non-haulers cannot exploit the haul-to-job function to haul stuff that is not yet inside the stockpile. (since these guys are supposed to be none-haulers)