Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Minecarts, for fun and profit  (Read 2030 times)

k9wazere

  • Bay Watcher
    • View Profile
Minecarts, for fun and profit
« on: April 17, 2020, 10:20:14 am »

Personally, I love them. Games which let me build railways are extra awesome.

I now refuse to build any fortress now without minecarts.

But my problem is (insert joke here) that the dorfs are not as fond of them as I am. In other words, they tend to ignore them.

So how do you use them effectively?

Let's say your line (of considerable length and taking most of a year to build) extends from points A to G. All along the line (tunnel) you have ore being mined. Let's say A, B through G are all stockpiles with associated stops on your route.

Last time I played, dorfs would not take the ore to the closet stockpile (in terms of distance between stockpile and ore). Instead, each stockpile would generate a "fetch" event, and a dorf would be attached to it. Unless I'm remembering wrong, the dorf then fetches the closest ore to the dorf's location on being assigned the event?

Meaning that a dorf picking up ore at G is just as likely to manually haul it over the stockpile at A, rather than the stockpile at G.

Nothing makes me a sadder Panda than seeing the lovely minecart being ignored, and dorfs manually (or with wheeliebarrow) taking stuff to far-away stockpiles.

Without making a separate barrow for each zone (A to G - including a single stockpile in the zone) and manually assigning dorfs - then putting up with the haul cancellation spam that always results from such barrows - what can be done?

Postscript: I do feel the need to apologise for the anger management issues I experienced last time I posted (several years ago). These have been resolved with liberal use of lava and danger rooms, as I worked through my issues. Apologies to anyone I may have upset by being a douche. Fresh start and all that jazz.
Logged

PatrikLundell

  • Bay Watcher
    • View Profile
Re: Minecarts, for fun and profit
« Reply #1 on: April 17, 2020, 11:14:28 am »

My experience is that the stupid buggers will grab the stone last mined out in a LIFO queue style, regardless of distance. My attempt to set up a mine cart route largely failed because the workshops kept fetching the stones furthest away (with no wheelbarrow option), rather than the piles moved closer to them with mine carts.

I did battle your problem by painting the mine cart feeder stockpile for the stop over the area to collect stones from, although you could link such stockpiles to "real" feeder stockpiles by the route stops.
I know you can battle my issue by linking the workshop(s) to a stockpile painted under the track deposit tile, but I avoid stockpile linking due to its inherent risks (such as: I usually don't care what stone my furniture is made of, but THIS rock grate has to be magma safe. The mason then stops working as the stockpile linked to doesn't have any if the 10 gabbro stones you recently mined out elsewhere.

Also note the wheelbarrow bug: wheelbarrows are put into the mine carts when holding stones, and as soon as those mine carts are dump the wheel barrows they're hauled back to their owner stockpile, the stone still carried inside. Can keep the fortress amused indefinitely...

Logged

k9wazere

  • Bay Watcher
    • View Profile
Re: Minecarts, for fun and profit
« Reply #2 on: April 17, 2020, 11:26:03 am »

Hmm, yes the wiki says this too (re LIFO).

Interesting.

So that means, assuming my route A to G is a straight line / straight tunnel, I could place a 1 tile wide stockpile the whole length of the tunnel (assuming max 31 tiles long), and the dorfs should fill this stockpile fairly efficiently.

However they will still then have to carry the stone a long distance to the minecart stop (and you would only have 1 stop, in the middle of the stockpile. So they carry the stone up to 16 tiles to the minecart.

I ask all this in the hope of making a somewhat "realistic" mine, where ore is loaded on a minecart as near the origin of the ore as possible, and hauled via minecart to the workshop.

What would be really nice is a "max item range" limit on stockpiles, such that they won't take items further than (eg) 10 tiles away.

Rather than dorfs hauling the ore long distances on foot (or with barrow).
« Last Edit: April 17, 2020, 11:27:53 am by k9wazere »
Logged

PatrikLundell

  • Bay Watcher
    • View Profile
Re: Minecarts, for fun and profit
« Reply #3 on: April 17, 2020, 03:43:33 pm »

Micro managing, I guess. Make smaller stockpile (e.g. size 10) an make your route stop at the center of one of them. Once the stockpile is empty, delete it and move the route stop.
Logged

Moeteru

  • Bay Watcher
    • View Profile
Re: Minecarts, for fun and profit
« Reply #4 on: April 18, 2020, 01:51:36 am »

You can stop your dwarves from bringing things to a particular stockpile by bringing up the [q] menu on that stockpile and enabling "take from links only". I don't think there's any elegant way to handle a situation with multiple dig sites producing the same type of stone though. You could eliminate cancellation spam by locking each group of dwarves into their own section (minecarts can pass through statues), but that's not exactly a practical solution.

The other thing which might help in certain situations is the "limit workshops to burrow" option. Unfortunately stockpiles don't count as workshops so they will still generate jobs to fetch items outside the burrow.
Logged

k9wazere

  • Bay Watcher
    • View Profile
Re: Minecarts, for fun and profit
« Reply #5 on: April 18, 2020, 07:00:34 am »

You can stop your dwarves from bringing things to a particular stockpile by bringing up the [q] menu on that stockpile and enabling "take from links only". I don't think there's any elegant way to handle a situation with multiple dig sites producing the same type of stone though. You could eliminate cancellation spam by locking each group of dwarves into their own section (minecarts can pass through statues), but that's not exactly a practical solution.

The other thing which might help in certain situations is the "limit workshops to burrow" option. Unfortunately stockpiles don't count as workshops so they will still generate jobs to fetch items outside the burrow.
Being able to limit stockpiles to burrows would be amazing. Also a really great security feature, when you don't want dorfus mcidiot collecting a somehow non-forbidden sock surrounded by legions of the undead. Barrows atm restrict movement *but* you get an absolute metric ton of cancellation spam from stockpiles that really, really want that sock.

It would also be good for the stockpiles that can't "take from" anywhere, such as stone stockpiles, farm produce stockpiles, wood stockpiles.

If you have one area at the surface and one area 100 z levels below the ground (two mini colonies), a way to stop a stockpile way underground from accepting goods up at near the surface would be awesome.
« Last Edit: April 18, 2020, 07:04:55 am by k9wazere »
Logged

Fleeting Frames

  • Bay Watcher
  • Spooky cart at distance
    • View Profile
Re: Minecarts, for fun and profit
« Reply #6 on: April 20, 2020, 05:58:01 pm »

You can sorta do that: Just paint your whole mined-out stone area with a stone stockpile, take from links only, and link it to minecart feeder stockpile, also take from links only. However because you can't place stockpile into walls I've used "ride cart through statue" to deal with it in the past.

This post has few example shots as well.

To minimize stone to cart hauling distance, long tunnels are the worst; gotta think in three dimensions. Carving out a 5x5x40z area will give you 250 stones that are all at most 2 tiles from center after cavein (though carving out such a large pit would take about half a year with dabbling miner). Of course, after that you could just plant a workshop in the center to do whatever you want with 250 stones, and then fit much more products inside a cart....

Though if you wanted an optimal distance, I think every 12 tiles could be an idea, as then you could use "ride south when full" and "ride north when not full" and not need track expect to move z-levels.