[…]Key here is, the green/doubleyellow/yellow extending isn't universal, it would be actually too hard if you wanted one more block or color.[…]
Is that a basic part of OpenTTD or what makes this hard?
The way how I implemented this. There is nothing like simple logic. PBS and track reserving in trunk is one huge spaghetti code. YAAM and yellow PBS are built on pillars of this mess.
If you change something without thinking about every possibility, you will break something else. And here are too many things to break. Or that's just programming.
If you know something about programming, check the source code and try to think how to implement ETCS2. First step is preventing stackoverflow in that crazy recursion. Then if you want more colors, you need to solve how to put more than 4 colors into 2 bits (you can't). Etc. etc.
I don't wanna spend hundreds/thousands hours on implementing ETCS2, I have other things to do.
[…]Also braking distance isn't predictable before reserving track with simple math (think about hills).
Okay I was assuming there is a way to change the reservation. If you could reserve more track later (aka block by block) you could increase the reserved paths until there is no free path left (or you reached another stopping point like a station) or you don't need any more track because the train can accelerate anyway. It does not require you to temporarily reserve track.
And there goes algorithmic complexity. If you compute something many times, it can have performance impact.
Game crashed as I over built a station tile with a different style platform. Station was attached to an airport. Not sure if that is helpful.
Can't reproduce this, I'd need more details.
Adding signals for the train entering the branch has the danger of letting a following train down and trapping the first on the branch line. Single track also has the issue that it is normally not signaled except for passing loops, so reservations can extend and block track much farther and earlier than desired, or end up with a train travelling a huge distance at reduced speed. It might be helpful to add a 'distant' signal, without a red aspect, that does not serve as a possible stopping point for trains, but does warn them of need to reduce speed ahead. This would let trains do their deceleration off the mainline, near the actual end of line, without trapping other trains.
Hmm what should happen if I place more distant signals in a row?
Lastly, at stations; trains try to reserve a long path ahead if able, even when stopping at a station. At certain types of terminus, or where two tracks merge just past the station, this means a train can block a significant distance ahead for a long time while it loads. This can lead to a stopped local train blocking an express passing through, or a loading train blocking the station entrance at end of line.
OH **** , I swear I fixed this before posting v3, seems like there is more to fix.
An observation: diesels produce a ton of smoke while braking - hopefully they are not trying to use thrust reversers!
So do electric trains, I hoped nobody will notice
Ik why, changing that is just TMWFTLB.
I hope this is helpful input, please don't take it as a complaint! Let me know if you want me to draw more signal types!
Nah you seem to be nice
Well, I don't need it yet, for testing purpose are reused PBS sprites enough. I don't have done anything yet and I don't know when it will be done. Your work has value only if there will be working code. I think it's good idea to wait if I can make new meaningful signal type. Then there will be place for drawing. Thanks anyway.