Are trains really more efficient than belts?

Post all other topics which do not belong to any other category.
arcturus_88
Burner Inserter
Burner Inserter
Posts: 7
Joined: Fri Oct 21, 2016 7:49 am
Contact:

Are trains really more efficient than belts?

Post by arcturus_88 »

Most people when transporting material over large distances in factorio set up rails, then put trains with wagons, then put signals, etc. But since belts are always moving and need no outside power/fuel, wouldn't it be more efficient to just put a Super Long chain of belts delivering materials throughout the whole map and not use trains?

I assume this would seem really stupid but it should be more efficient, right?

saturn7
Long Handed Inserter
Long Handed Inserter
Posts: 89
Joined: Wed Apr 27, 2016 6:14 pm
Contact:

Re: Are trains really more efficient than belts?

Post by saturn7 »

According to wiki, a blue belt has a throughput of 2400 per minute. A 6 wagon train can already store 12000 ore. So you need 5 parallel blue belts to emulate just one train per minute, which quickly gets out of hand.

Sure the initial cost to set up trains is high, but you only need to do that once. Expanding a train line isn't so hard with blueprints. Furthermore, you can have different sources and destinations for copper/iron/etc. trains in the train network easily, whereas crisscrossing multilane belts would be ugly and inflexible. And you can use your trains as a transport system, and to supply outposts.

Durentis
Fast Inserter
Fast Inserter
Posts: 105
Joined: Mon Jun 27, 2016 3:55 pm
Contact:

Re: Are trains really more efficient than belts?

Post by Durentis »

Short answer: Trains win and it's not a fair contest. For long distances and bandwidth, trains vs. belts are like cheetahs vs drunken sloths.

You would need a ridiculous amount of blue belts, which are very costly especially over long distance. Long distance belts are also hard on your computer's performance, supposedly. I've never tried.. belts are awful to set up long distance and then you have these massive busses a dozen lanes wide crossing over each other.. yuck. Belts are amazing for very short runs between assemblers and chests or for the early game main bus, which I usually end up ripping up eventually. I'll often use belts to link up two or three nearby ore patches to a single train station so that the station operates more efficiently.

I'm the opposite with running pipes though. I would rather "stitch" oil into my base with underground pipes than run barrels, but that actually is efficient unless you're getting oil from very very far away, at which point I start considering barrels (which store more in less space than tanks) and trains. At this point though, my rail network has already long been running past the good oil patches anyway.

Trains are awesome once you figure them out and no trouble at all. Just make a few key segment blueprints (straight, T-junction, (un)load station) and (when you get the tech) let bots build them (either from your personal roboport or by putting roboports in your rail segments to cover your entire rail system by the logistics network). I use a 2-wide two track system, drive on right, with 1-2-1 trains and they have absolutely no trouble keeping up to dozens of compressed blue-belts of throughput on a single rail system. If I have 20 active iron mines, the stations are all called "Mine - Iron" so the trains pick the closest empty one to fill up and I can identify their nature easily in the station list. I have multiple processing stations named differently, but in the case of one that has multiple unloading stations, all stations are called something like "Processing - Iron" and trains enter a small stacker before entering one of the available stations. I put requester chests at my unloading stations (not at the mines) that supply the engines with solid fuel.. it's free and lasts a long time.

Can get even more clever with circuit networks.

I don't understand why people complicate their rails with larger trains and/or loops. 1-2-1 seems to be big enough and allows for tighter timings at simpler junctions.

I think your thoughts will change naturally as you expand outwards over hundreds of hours on the same map - it's a very big map.

Loewchen
Global Moderator
Global Moderator
Posts: 8308
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: Are trains really more efficient than belts?

Post by Loewchen »

There are different kinds of efficiency, in Factorio the most important one is efficiency of CPU load, trains are unbeatable in this regard.

iceman_1212
Filter Inserter
Filter Inserter
Posts: 256
Joined: Wed Aug 17, 2016 9:49 am
Contact:

Re: Are trains really more efficient than belts?

Post by iceman_1212 »

Let's say you want to expand your iron production and you've exhausted your nearby iron mines - let's say you decide to belt it back to your base. The advantage of trains becomes unimstakable once you want to get your second distant iron mine. Rather than placing a second stretch of belt from the second mine to your base, you need simply extend your rail-line further.

Moreover, as you build bigger and bigger factories, both the CPU-efficiency and the plug-and-play nature of trains will be key.

Frightning
Filter Inserter
Filter Inserter
Posts: 807
Joined: Fri Apr 29, 2016 5:27 pm
Contact:

Re: Are trains really more efficient than belts?

Post by Frightning »

Trains versus belts has had the numbers run over and over again...and unless you don't need much throughput, trains win every time. (Rail costs less per tile than Red belts, let alone Blue belts, it's actually pretty comparable to Yellow belts in cost/tile). Trains also scale far better in almost every single way. (Easier on CPU load, easier to expand, easier and cheaper to increase throughput, etc.)

Hannu
Filter Inserter
Filter Inserter
Posts: 850
Joined: Thu Apr 28, 2016 6:27 am
Contact:

Re: Are trains really more efficient than belts?

Post by Hannu »

Durentis wrote: I don't understand why people complicate their rails with larger trains and/or loops. 1-2-1 seems to be big enough and allows for tighter timings at simpler junctions.
I like that my trains and rail networks look and behave like real trains and not like toy trains. Factorio is not as good as I would like to, but somewhat realistic railyards and 4-8 wagon trains are more interesting to build and see than Factorio-optimal small ones. I can easily get enough capacity with my way (>1M iron and corresponding amounts of other stuff per hour).

NorwegianBlue
Burner Inserter
Burner Inserter
Posts: 19
Joined: Fri Jul 01, 2016 12:54 pm
Contact:

Re: Are trains really more efficient than belts?

Post by NorwegianBlue »

You use large 8+ wagon trains because large trains are cool.

Do you need any other reason?

Frightning
Filter Inserter
Filter Inserter
Posts: 807
Joined: Fri Apr 29, 2016 5:27 pm
Contact:

Re: Are trains really more efficient than belts?

Post by Frightning »

NorwegianBlue wrote:You use large 8+ wagon trains because large trains are cool.

Do you need any other reason?
Actually, using longer trains is an effective way to cut down on deadlocks (and traffic inefficiency) in large train networks as it decreases trains/time over the most congested parts of the system. It's just that getting the those kinds of scales often means other things start to become performance bottlenecks.

iceman_1212
Filter Inserter
Filter Inserter
Posts: 256
Joined: Wed Aug 17, 2016 9:49 am
Contact:

Re: Are trains really more efficient than belts?

Post by iceman_1212 »

NorwegianBlue wrote:You use large 8+ wagon trains because large trains are cool.

Do you need any other reason?
Longer trains have more throughput (i.e., cargo wagons per second) because the braking distance (i.e., the distance a train will maintain between itself and the train ahead of it) is affected only slightly by train size (presumably because cargo wagons have brakes). In other words: for a given length of track, a system of longer trains will be able to fit more wagons than a system of shorter trains.

In my experience, longer trains - especially longer top-and-tail trains - are (much) easier to deadlock.

Frightning
Filter Inserter
Filter Inserter
Posts: 807
Joined: Fri Apr 29, 2016 5:27 pm
Contact:

Re: Are trains really more efficient than belts?

Post by Frightning »

iceman_1212 wrote:
NorwegianBlue wrote:You use large 8+ wagon trains because large trains are cool.

Do you need any other reason?
Longer trains have more throughput (i.e., cargo wagons per second) because the braking distance (i.e., the distance a train will maintain between itself and the train ahead of it) is affected only slightly by train size (presumably because cargo wagons have brakes). In other words: for a given length of track, a system of longer trains will be able to fit more wagons than a system of shorter trains.

In my experience, longer trains - especially longer top-and-tail trains - are (much) easier to deadlock.
They can deadlock easy if your network is too compact (too many intersections in too little space) because of their length being several blocks long, but in a sufficiently expansive network, that problem is alleviated.

blueblue
Long Handed Inserter
Long Handed Inserter
Posts: 75
Joined: Tue Apr 11, 2017 7:39 pm
Contact:

Re: Are trains really more efficient than belts?

Post by blueblue »

From the question it sounds like you mostly care about efficiency in terms of time needed to set up and trains win in that regard. This has been said before, but I'll make it a bit clearer. Lets say you are expanding to a new location and you have been using trains quite a while. You probably have a part of your rail network quite close already, so you wont have to go as far. Whereas with belts, you will need to make a belt that goes all the way to the smelters. Every time you need a new mine. Now lets say you are doing some other project, like get ammunition to an outpost, or make a large external smelter. With trains you dont really need to know where your input resources are coming from, you just connect it to your rail network. With belts, you need to make a new belt. If everything is happening very close to your base, then that doesnt matter too much but you can see how a rail network becomes very useful when you are operating on a larger scale.
unique_2 on discord and mod portal

realm174
Fast Inserter
Fast Inserter
Posts: 106
Joined: Sat Apr 02, 2016 12:32 pm
Contact:

Re: Are trains really more efficient than belts?

Post by realm174 »

Durentis wrote: If I have 20 active iron mines, the stations are all called "Mine - Iron" so the trains pick the closest empty one to fill up and I can identify their nature easily in the station list.
I haven't tested, but I am confused by one thing here. When you have multiple stations with identical names, the train will indeed pick the closest available station. But, if that closest station is mining at a slower pace than what's needed to fill up the train, do you not risk the possibility of either 1) having mostly empty trains going back to unload or 2) having trains waiting for a very long time before they get loaded because possibly all the stations are being occupied? What do you use for conditions on the loading part?

thanks!

User avatar
AileTheAlien
Fast Inserter
Fast Inserter
Posts: 217
Joined: Sat Mar 11, 2017 4:30 pm
Contact:

Re: Are trains really more efficient than belts?

Post by AileTheAlien »

realm174 wrote:When you have multiple stations with identical names, the train will indeed pick the closest available station. But, if that closest station is mining at a slower pace than what's needed to fill up the train, do you not risk the possibility of either...
This problem is being fixed in 0.15 - you'll be able to disable train stations by signal. So if you can wait, it won't be a problem anymore.

Until that time, what I do is just give my mines names like "Iron Mine 1", "Iron Mine 2", and so on. Depending on how lazy I am in the game I've (re)started, I then use dedicated trains for each mine, or just have the one train (2-4-0) go to each station, and wait until full, or until the ore at the mine is less than some amount. It burns more fuel and trains, but is stupidly simple to set up. I play Factorio to relax, so I don't often build complicated things, unless it's a pattern I've made before and memorized, or copied from the internet. :)

British_Petroleum
Filter Inserter
Filter Inserter
Posts: 321
Joined: Tue Dec 23, 2014 7:21 am
Contact:

Re: Are trains really more efficient than belts?

Post by British_Petroleum »

I like trains

noliVe
Filter Inserter
Filter Inserter
Posts: 327
Joined: Tue May 24, 2016 7:46 am
Contact:

Re: Are trains really more efficient than belts?

Post by noliVe »

his problem is being fixed in 0.15 - you'll be able to disable train stations by signal. So if you can wait, it won't be a problem anymore.

Until that time, what I do is just give my mines names like "Iron Mine 1", "Iron Mine 2", and so on. Depending on how lazy I am in the game I've (re)started, I then use dedicated trains for each mine, or just have the one train (2-4-0) go to each station, and wait until full, or until the ore at the mine is less than some amount. It burns more fuel and trains, but is stupidly simple to set up. I play Factorio to relax, so I don't often build complicated things, unless it's a pattern I've made before and memorized, or copied from the internet. :)
UH ??? thats the first time i heard that..
you can easily setup the train stop entry to RED signal if the loading input is less than 1000 items just connect the boxes
if the signal is close the train will move to the next closest station... i ALWAYS name my stations the same name! its much easier to open a new patch of resorces just name all the same you never have to reconfigure the trains by hand
140+ trains base ... I LOVE TransportTycoondeluxe (openTD)

legend:
= rail
0 Sign
! Trainstop
- wire

=======0===============!0=======
----------^----------------------^----------------------

aober93
Filter Inserter
Filter Inserter
Posts: 453
Joined: Tue Aug 30, 2016 9:07 pm
Contact:

Re: Are trains really more efficient than belts?

Post by aober93 »

noliVe wrote:
UH ??? thats the first time i heard that..
you can easily setup the train stop entry to RED signal if the loading input is less than 1000 items just connect the boxes
if the signal is close the train will move to the next closest station... i ALWAYS name my stations the same name! its much easier to open a new patch of resorces just name all the same you never have to reconfigure the trains by hand
140+ trains base ... I LOVE TransportTycoondeluxe (openTD-
Hmm sounds interesting, but isnt it a problem with 1: all the trains stack up on the closest miner? And 2: the trains constantly being rerouted due a station being occupied or just been drained empty?

Durentis
Fast Inserter
Fast Inserter
Posts: 105
Joined: Mon Jun 27, 2016 3:55 pm
Contact:

Re: Are trains really more efficient than belts?

Post by Durentis »

Hannu wrote:
Durentis wrote: I don't understand why people complicate their rails with larger trains and/or loops. 1-2-1 seems to be big enough and allows for tighter timings at simpler junctions.
I like that my trains and rail networks look and behave like real trains and not like toy trains. Factorio is not as good as I would like to, but somewhat realistic railyards and 4-8 wagon trains are more interesting to build and see than Factorio-optimal small ones.
Yeah, fair enough. There's certainly a lot of creative space in Factorio for such things.
realm174 wrote:
Durentis wrote: If I have 20 active iron mines, the stations are all called "Mine - Iron" so the trains pick the closest empty one to fill up and I can identify their nature easily in the station list.
I haven't tested, but I am confused by one thing here. When you have multiple stations with identical names, the train will indeed pick the closest available station. But, if that closest station is mining at a slower pace than what's needed to fill up the train, do you not risk the possibility of either 1) having mostly empty trains going back to unload or 2) having trains waiting for a very long time before they get loaded because possibly all the stations are being occupied? What do you use for conditions on the loading part?

thanks!
Yes, it happens when a loading station starts to run dry that it will load trains slower. This is unavoidable and just part of maintaining the supply. I tend to prune mines of their excess miners as I'm doing other things in the area and am always looking to add a new loading station, usually by linking up a few patches to a single loading station if possible.

1) Mostly empty trains going back to unload
No, except for the last train that the stop can provide resources to.

2) having trains waiting for a very long time before they get loaded because possibly all the stations are being occupied?
Trains can wait for a very long time to get loaded in the above case, where a station is low on resources and there is a trickle entering the loading chests. But this doesn't mean other trains will get backed up because the loading station is an offshoot from the main bi-directional rails. I use chain signals so that only one train can leave the bi-directional rails into the stop, so only one train will ever get "stuck" gathering minimal resources. If all stations are occupied and trains are waiting, either it's a momentary thing before they sort out their own timing, or there aren't enough well supplied loading stations, or there are too many trains for the stations to support and nowhere for them to wait safely off the main rails (stacker).

I've had trains back up at stations when I make mistakes with signals or fueling, but that's easily resolved and I move on.

A natural consequence of this set up is that when a stacked unloading station is backed up, trains will stall in the stacker until the backlog clears and be off of the main rails. If I have three stops in an unloading station and a stacker with four slots, I shouldn't have more than seven trains hauling for that unloading station but they're welcome to get material from the same loading stations as trains bound for other unloading stations.

What do you use for conditions on the loading part?
I tend to just set the inventory full/empty conditions. I don't set inactive because I'd prefer a train to sit at an empty station until I deal with it by removing the station - this is a good use for circuit conditions though.
aober93 wrote:isnt it a problem with [...] the trains constantly being rerouted due a station being occupied or just been drained empty?
Trains being rerouted isn't a problem.. that's a good feature and part of what makes the system work so well. I don't think it's a good idea to have bi-directional rails loop back on themselves too much because you don't want trains going around forever trying to enter a station only to have it occupied every time, but it does seem to help if done sparingly in key places. It just seems to be a matter of balancing the number of loading stations, trains, and unloading stations.

---

This has worked very well for me so far, but I have other ideas for expanding on my rail network and this is where "can get even more clever with circuit networks" comes into play.

As mentioned above, you can turn off stations - even without disabling the stop itself - by setting the signal leading into the stop to red. With no signal path into the station, trains will go to another station automatically. If I have a station that is isolated well off of the main rails, I make sure to not use so many signals that multiple trains can enter it or temporarily change the normal signals to chain signals - I only want one train going to each loading station. I would rather have more loading stations than use stackers at fewer loading stations - I put stackers at busy unloading stations. So far I haven't gotten around to disabling stops, as the one train per loading station seems to work well enough generally.

You can set the signal red based on whatever criteria you like, such as red if the sum of material in the loading chests is less than a full train load. Perhaps you can include the flow rate from the belts and allow a train to enter if there's no material left to mine and some material in chests but not a full train worth - no trains will enter if the chests are empty. I've been thinking of this off an on for a while, but haven't really started in on it and haven't decided exactly what I want the circuitry to do. I'm thinking of adding a green and red wire to my main bi-directional rail blueprints, though, so that I can easily wire up conditions to all the stops in the network but this is probably overkill. I don't know if I really need/want to manage trains in a central train yard (massive global stacker) of sorts for some reason.

Anyway, it's all about making sure that if a train enters the main (bi-directional) rails it doesn't stop until it leaves them.

noliVe
Filter Inserter
Filter Inserter
Posts: 327
Joined: Tue May 24, 2016 7:46 am
Contact:

Re: Are trains really more efficient than belts?

Post by noliVe »

the trains choose their destination by pathfinding... the closest AVIABLE path the train is going to route!
signals, stations and other trains pathing their way will restart the routing if needet.

lets say "IRON UNLOADING" to = > IRON LOADING

so once a train goes to IRON LOADING but a train already is in that spot it goes to next "IRON LOADING" it doesnt matter in distance if the other station is empty
and NO it wont stackup because there are 2 spots with the same name... BUT! the closest IRON LOADING will always be first in route! but thats totaly fine because you need Iron fast!
and it doesnt matter where the train get his iron when you can grab it fast!

4 mines = running 5 trains
6 mines = 8 running trains
10 mines = 16 trains...
WHY? that strange graph? have you ever unloadet 50 trains of iron at the same time? go for it!

User avatar
Deadly-Bagel
Smart Inserter
Smart Inserter
Posts: 1498
Joined: Wed Jul 13, 2016 10:12 am
Contact:

Re: Are trains really more efficient than belts?

Post by Deadly-Bagel »

I posted some detailed calculations in viewtopic.php?f=16&t=3948&start=80 - basically for a distance of 500 tiles a train with one wagon and a station that unloads only on one side but with Stack Inserters is comparable to a single red belt in cost. The throughput is obviously heavily in favour of the train as is expandability and moving outposts. I've fairly convincingly argued that the only advantage belts have over distance is simplicity. They're not easier, but they are simpler. You don't need to understand signals or work out a station or anything like that, but if that's your reasoning for using belts then you're playing the wrong game.

Even yellow belts can't compete in terms of cost, two lanes are only slightly cheaper than the rails including signals. Adding more lanes very quickly pays for the station, locomotive and wagons since these need to be added for the entire distance while most train costs are static.

Theoretically, you could argue that with time trains will eventually burn through enough coal or solid fuel that their cost actually exceeds belts, but trains might as well run off fairy farts and the increased bandwidth allows you to cart in more fuel from further away with less resources and time. If you're playing a finite map with limited resources then you will not reach far enough into the game for fuel costs to exceed the cost of belts.
Money might be the root of all evil, but ignorance is the heart.

Post Reply

Return to “General discussion”