I'm building a prototype route and so far the track has been placed according to how it really is, as best as I've been able to determine. Some tests have shown that the trains don't behave in a prototypical way. For example, one consist was waiting forever at a junction because other trains, even though they are very far away have seized the turnouts in front of it in anticipation of them (the other trains) using them.
At first I added a few more signals to create shorter blocks but that didn't help. Adding a few more turnouts for the trains to play with, although not prototypical as far as track work is concerned, resolved the issue.
The same thing happened on one of the background lines. I placed two pairs of portals in the background and joined them with some simple track. Then I programmed the portals to generate some traffic to give the area that liven-in look by having other trains moving around. These tracks are not connected to anything else. Trains would be generated and exit the portal and then not continue even though the line was clear, signals green and the previous train was far down the track. After adding a few turnouts and dead end track, everything started running smoothly.
At first I added a few more signals to create shorter blocks but that didn't help. Adding a few more turnouts for the trains to play with, although not prototypical as far as track work is concerned, resolved the issue.
The same thing happened on one of the background lines. I placed two pairs of portals in the background and joined them with some simple track. Then I programmed the portals to generate some traffic to give the area that liven-in look by having other trains moving around. These tracks are not connected to anything else. Trains would be generated and exit the portal and then not continue even though the line was clear, signals green and the previous train was far down the track. After adding a few turnouts and dead end track, everything started running smoothly.