Page 1 of 1
A few questions I haven't manage to find an answer for yet...
Posted: Tue Dec 29, 2020 6:09 pm
by realm174
Good day all,
I got a few questions I can't seem to find an answer for, so I'm hoping someone might have some knowledge to share.
1) What is the logic for calling construction bots to work? My map is getting to be about medium size now, and I use bots extensively to build outposts. All the material for outposts is at the main base, there are lots of free construction bots right next to the supplies. When I drop a blueprint to build an outpost, it looks like the summoned bots are coming from far away from the base, fly all across the map to get supplies then fly all across the map to lay things down to the blueprinted area. Why not use the bots that are already at the base? Or am I just misunderstanding the whole thing and there's a different way to do this?
2) UPS/FPS: Do we know what particular process has the biggest effect on ups/fps? What I found so far was that having 200 small (1-1) trains was killing my computer. I have since switched to 1-3 and it has improved a lot. Anything else that has that kind of impact?
3) Train swarm: Is there a way to prevent train swarming to a station? All my outposts have identical names based on the material they are supplying. I can use logic to turn off a station if it has less than a certain amount of supplies, but when the station gets re-enabled, there are multiple trains heading down that way even tho there's only enough supplies for a single train. When the first train grabs all the material, the station goes offline again, so the lined up trains need to find a new outpost to go to. So is there a way to limit the number of trains going to a particular station?
Thanks!
Re: A few questions I haven't manage to find an answer for yet...
Posted: Tue Dec 29, 2020 7:00 pm
by SoShootMe
realm174 wrote: ↑Tue Dec 29, 2020 6:09 pm
1) What is the logic for calling construction bots to work?
I think construction robots nearest the ghosts are assigned first. But while there are ghosts that haven't had a robot assigned, items in the logistic network to build them, and available construction robots, more robots will keep being assigned, possibly far away.
It generally works best to keep logistic networks small. I think a good technique for outposts is to have a train that will bring the building items (and supplies) loaded from a manufacturing area, but is an isolated network. The filters you can set on a cargo wagon offer a simple way to load a wagon with a variety of items.
realm174 wrote: ↑Tue Dec 29, 2020 6:09 pm
2) UPS/FPS: Do we know what particular process has the biggest effect on ups/fps?
Roughly speaking, FPS depends on what's on the screen and UPS depends on what's in the game. So FPS is affected graphics by settings, zoom level etc, but is not normally a major issue as far as I can tell. For UPS, I don't think there's any one thing that is particularly bad (maybe fluid handling) but various things can dominate when taken to the extreme (eg huge numbers of trains or rail signals, huge numbers of slow machines or inserters, huge numbers of splitters).
realm174 wrote: ↑Tue Dec 29, 2020 6:09 pm
3) Train swarm: Is there a way to prevent train swarming to a station?
There is a feature to do exactly this (limit the number of trains going to a stop) in the experimental version of Factorio. You might also look into mods such as
Logistic Train Network.
Re: A few questions I haven't manage to find an answer for yet...
Posted: Wed Dec 30, 2020 3:23 am
by astroshak
Personal construction bots are assigned FIRST, provided :
A - the job is within the personal roboport range,
B - personal roboport is turned on,
C - there are enough personal bots and material to do the job.
If there are more jobs within range, or jobs out of range, then bots will be assigned the jobs more or less at random. No, its not really random, but while a bot could be assigned for one job nearby, the next job might be assigned to a bot half the map away. There is no direct way to control this.
Indirectly, however, you can control it by using smaller, discrete logistics networks. Either have your personal bots do all the work, or bring materials in for base bots in a smaller outpost Ed network to build.
Not going to comment on Number 2...
As far as the Thundering Herd, there are mod ways to avoid it, and people have gone to pretty significant lengths to limit it, to the point of having a staging area for trains and only dispatching them one at a time via the circuit network. Personally, I just have them thunder along; if there are no mines (for example) that are open at any one time, that means I need to set up more of those mines. That’s less comfort for things such as electronic circuits, however.
Re: A few questions I haven't manage to find an answer for yet...
Posted: Wed Dec 30, 2020 6:34 am
by Koub
astroshak wrote: ↑Wed Dec 30, 2020 3:23 am
As far as the Thundering Herd, there are mod ways to avoid it, and people have gone to pretty significant lengths to limit it, to the point of having a staging area for trains and only dispatching them one at a time via the circuit network. Personally, I just have them thunder along; if there are no mines (for example) that are open at any one time, that means I need to set up more of those mines. That’s less comfort for things such as electronic circuits, however.
I was under the impression that this issue was mostly solved with
1.1.0 (experimental) :
Major Features
Added logistic requests to spidertron.
Train stop allows to set limit of incoming trains.
Re: A few questions I haven't manage to find an answer for yet...
Posted: Wed Dec 30, 2020 12:42 pm
by mmmPI
realm174 wrote: ↑Tue Dec 29, 2020 6:09 pm
1) What is the logic for calling construction bots to work?
When I drop a blueprint to build an outpost, it looks like the summoned bots are coming from far away from the base, fly all across the map to get supplies then fly all across the map to lay things down to the blueprinted area
there's a different way to do this?
I couldn't explain the precise logic. Having separate logistic network helps. Your could transfer material from one network to another using inserter if they are just 1 tile apart, or for an outpost you could use a train to bring material to the outpost and have a dedicated network just for the oupost. It's a bit more complicated but it allows far away outpost without covering the whole path of roboport
.
Apart from that when it's a small outpost i use personnal construction robot. ( or to place the static roboport and train station) .
realm174 wrote: ↑Tue Dec 29, 2020 6:09 pm
2) UPS/FPS: Do we know what particular process has the biggest effect on ups/fps? What I found so far was that having 200 small (1-1) trains was killing my computer. I have since switched to 1-3 and it has improved a lot. Anything else that has that kind of impact?
Trains pathfinding is known to be a potential UPS eater. Usually it has to do with the rail layout,a map covered by a small-square grid is full of equivalent path and intersections, which is the most frequent case where it impacts ups.
Personnaly i found that reading material on thousands of belts at a time everytime is what kills my computer the fastest
.
To have an idea of what impact performance you can press F4 ingame to open a debug menu. There are boxes to tick so you can see ingame stats. there is a breakdown between "entity" "train" "fluid" "circuit network" and so on. Maybe it helps to diagnose your game.
realm174 wrote: ↑Tue Dec 29, 2020 6:09 pm
3) Train swarm: Is there a way to prevent train swarming to a station?
Yes it's in the experimental version, as mentionned the "train limit". Instead of disabling/enabling a station, you can set the limit of incoming train to 0 or 1. ( or more ).
Instead of having the swarm moving when a station re-open, instead you can have the precise number of train called when the station increases its limit.
Re: A few questions I haven't manage to find an answer for yet...
Posted: Wed Dec 30, 2020 7:24 pm
by realm174
Thanks guys. A few notes:
Bots:
Well, apparently, one day, I had this brilliant idea of covering my entire base with roboports so that they are always reachable from anywhere. To be honest, it was an experiment, because I saw a streamer doing that and I thought, why not. I typically only cover the actual main base with roboports, and rarely use them at remote locations. I would normally have a supplies train, with reserved slots on the wagons so that I can build outposts with all of its needs. I wasn't expecting the bots to travel across the map repeatedly tho... I guess in my mind, the bots closest to the pickup location would have been used first.
I actually did some testing last night, to try and figure out the logic. I dropped a couple of hundred construction bots at various locations through out the map, just so that I know there were bots within zoomed-out screen range, or close to. Then, I would drop some blueprints of items I did not have in my inventory so that they would have to get picked up.
Even tho, in a few occasions, there were bots closer to the pick up point, or the blueprint point, some bots still came from far away to do the task. So I really have no clue how that's working.
So maybe I'll go back to local networks instead. It was a fun experiment tho except for the part where I had to wait 20 minutes for the bots to go back and forth to setup the outpost
UPS/FPS:
The interesting thing with this is that I would have thought that having 30k bots flying at the same time would have a larger impact than having 200 small trains. Turns out it's not the case. I have graphic settings as high as they can be.. maybe I'll tone them down a little.
Train swarm:
I used LTN in the past and I'm now using TSM. I believe LTN had a maxtrain settings, but TSM doesn't. I'm still running 1.0 because some mods I use won't work in 1.1. And since it's on a server, it's kind of a big deal to upgrade then downgrade again if things don't work out.. and I definitely wouldn't want to wreck my map. Thankfully, the server is running on vmware, so I Can just take a snapshot before making changes I suppose..