Page 3 of 3

Re: Trains reserve paths by segments instead of blocks

Posted: Sun Jun 19, 2016 4:58 pm
by ssilk
Why do you think that I ignore that?

It depends on your task. If the task is to create iron-plates ASAP, then my strategy is without question the better. If the task is to produce as low pollution as possible, then of course not. But I'm not sure, if the other strategy is so much better, cause assemblies/inserters etc. need also standby-power and the longer it takes, the longer you produce also pollution.

But I don't have a problem to decide this, cause I have in general the ASAP-task. :)

Re: Trains reserve paths by segments instead of blocks

Posted: Sun Jun 19, 2016 8:43 pm
by sparr
OK, guys. Let's get back on topic. If you want a thread about decreasing traffic by increasing wagon capacity, PLEASE make a new thread.

This thread is about changing train pathing to use segments instead of blocks.

Re: Trains reserve paths by segments instead of blocks

Posted: Mon Jun 20, 2016 3:59 am
by Harkonnen604
It would be nice if trains could be routed some predefined path via wait-time-zero stations on their schedule and these wait-time-zero-no-direction-change stations do not enforce full stop. Current implementation forces trains to stop at such stations.

My point in this thread is that signals are not to prevent trains from colliding (that can be automated), but to prevent deadlocks. Trains collision is not fun because they are not destroyed and you are not forced to put lotsa belts/inserters go gather stuff dropped from wagons :)

The proposal is that trains get several segments reserved ahead as their breaking path. Whenever two or more trains' breaking paths intersect, one train is allowed to go (the one with longer breaking path) while others take deceleration decision in their update cycle. That will resolve following issues:

1) Trains will never collide, for it's not fun anyway. It's not disasterous enough :)
2) You will need no signals at criss-cross and other trivial situations.
3) Trains can chase each other on the same block (what this thread is about)