This is something i'd like to share on how after months I have tackled setting up a single line route to work with AI. Without even lifting a finger once in the cab!
The Problem
The problem we get with single line routes is the AI will lock the junction out of a passing loop, meaning for you to gain access to pass the AI you have to stop the AI's commands so it will free the loop.
If you forget about this you can end up going head on into the AI.
The solution of stopping the AI is rather bothersome itself, meaning you have to remember where the loop is, slow down, stop and then sort out the AI.. this is hardly realistic and can take away the immersion and realism of your route..
My Solution
What I have discovered is placing a catchpoint after the signal (see diagram if confused) at the end of the loop before you exit will stop the AI from locking the further point. It will lock the catchpoint (which by default will be set in your/its favour anyway so its not going to mess up your driving).
Usually for some strange reason once your train has entered the loop the AI grabs the exit point.. I do wonder why it doesnt do that in the first place and give the original problem again..
My solution for it not always freeing itself is a setup of triggers and set junctions rules which is very simple.
1.
This is a diagram of a passing loop showing my setup.

First you need to make sure your loop is set up. Place your signals normally but leave a bit of space so you can put in a catch point at the end (see diagram). Make sure you use directional markers, i've not put these on the diagram as I think its standard practice for loops and you will have done this before..
Next thing you need to do is set up triggers outside the loop (YY loop approach East and Westbound, note the YY can be replaced with the name of the loop or station).
These will be set up so a train approaching will set the loop in its favour so it may enter if the loops points have been changed/tampered with.. it also acts as setting the loop for ongoing trains once the train in opposite direction has left the loop.. so make sure its at least a trains length away from the loop entrance/exit
Next step is to add two triggers before the signal on either side of the loop. These triggers will ensure that when the train has entered the loop the points will change allowing the AI train out of the loop on the other track. (It can also be set up to let you out using a junction link, but this is an extra addition).
You can name these triggers in my format to make it easier to understand and set up later.
That is all you need to do in surveyor..
You now need to open the rules list.
Create an ordered list.. (there will be one ordered list for each direction a train enters the loop) to keep this organised I name them by the stations further down the line on each end, for example, if the town on the west of the loop is called Credo Junction and the one on the east is called Tunstead I will name the ordered list CJ-TS. Make sure you click edit and set it to Repeat forever!
Next you need to add a trigger check rule then a Set Junction and use the right arrow to move them across so it looks like this.
Ordered List (CJ-TS)
--Trigger Check
--Set Junction
In the first trigger check you will select the YY loop approach Ebound
and for set junction select the junction on the left J01 and set it to Left (you may have to test the trigger in surveyor as the correct direction may be Right or Centre, trainz is confusing with this)
You then add another two underneath so it becomes this;
Ordered List (CJ-TS)
--Trigger Check
--Set Junction
--Trigger Check
--Set Junction
For the next two, set the trigger check as YY loop ebound and the junction the same, but the opposite direction, this will make the point return to its previous state once you are in the loop and let out the train waiting in the other track...(make sure your trigger is at the far end of the loop just before the signal otherwise you may derail your train as the point changes and you are still entering the loop.)You have now created for any train traveling in the east direction and allowing a train traveling west to escape once you're in.
All you need to do now is set up the same ordered list for the opposite direction (TS-CJ) and the whole thing should work perfectly, allowing you to drive with AI, meet them in the loops and be allowed out withing even lifting a finger!!!
Few words on the catch points
This can be iffy, you may have to test once done and see if the AI will only grab the catch points. If it grabs the exit creaiting the original problem, try moving the catch point further from the exit and/or move the signal a bit further from the catch point.
Something extra you may want to add..
I have found a great way to improve this setup is to download the Junction Link from the DLS. This lets you link two junctions so when one is changed the other will also change.
You can set this so both ends of the loop are linked meaning when the points are set for the train to exit, the other points are also set... this works fine because on these loops the points will never be allowing you straight through and there is no risk of derailing an AI train by linking them.
If you think you should be able to drive straight through when theres no AI train approaching you can! think about it, once you hit that trigger that lets the AI out, if using the junction link your exit will change too! if you're not going insanely fast you won't even have to stop and will flow through the loop!
I will add screenshots of my setup in Trainz and a picture of the ordered list to make it clearer if you are confused..
I do hope this has helped you out.. Please give it a go and tell me how you get on!!
Long live single lines, AI and human co existing peacefully!!!!!
David
The Problem
The problem we get with single line routes is the AI will lock the junction out of a passing loop, meaning for you to gain access to pass the AI you have to stop the AI's commands so it will free the loop.
If you forget about this you can end up going head on into the AI.
The solution of stopping the AI is rather bothersome itself, meaning you have to remember where the loop is, slow down, stop and then sort out the AI.. this is hardly realistic and can take away the immersion and realism of your route..
My Solution
What I have discovered is placing a catchpoint after the signal (see diagram if confused) at the end of the loop before you exit will stop the AI from locking the further point. It will lock the catchpoint (which by default will be set in your/its favour anyway so its not going to mess up your driving).
Usually for some strange reason once your train has entered the loop the AI grabs the exit point.. I do wonder why it doesnt do that in the first place and give the original problem again..
My solution for it not always freeing itself is a setup of triggers and set junctions rules which is very simple.
1.
This is a diagram of a passing loop showing my setup.

First you need to make sure your loop is set up. Place your signals normally but leave a bit of space so you can put in a catch point at the end (see diagram). Make sure you use directional markers, i've not put these on the diagram as I think its standard practice for loops and you will have done this before..
Next thing you need to do is set up triggers outside the loop (YY loop approach East and Westbound, note the YY can be replaced with the name of the loop or station).
These will be set up so a train approaching will set the loop in its favour so it may enter if the loops points have been changed/tampered with.. it also acts as setting the loop for ongoing trains once the train in opposite direction has left the loop.. so make sure its at least a trains length away from the loop entrance/exit
Next step is to add two triggers before the signal on either side of the loop. These triggers will ensure that when the train has entered the loop the points will change allowing the AI train out of the loop on the other track. (It can also be set up to let you out using a junction link, but this is an extra addition).
You can name these triggers in my format to make it easier to understand and set up later.
That is all you need to do in surveyor..
You now need to open the rules list.
Create an ordered list.. (there will be one ordered list for each direction a train enters the loop) to keep this organised I name them by the stations further down the line on each end, for example, if the town on the west of the loop is called Credo Junction and the one on the east is called Tunstead I will name the ordered list CJ-TS. Make sure you click edit and set it to Repeat forever!
Next you need to add a trigger check rule then a Set Junction and use the right arrow to move them across so it looks like this.
Ordered List (CJ-TS)
--Trigger Check
--Set Junction
In the first trigger check you will select the YY loop approach Ebound
and for set junction select the junction on the left J01 and set it to Left (you may have to test the trigger in surveyor as the correct direction may be Right or Centre, trainz is confusing with this)
You then add another two underneath so it becomes this;
Ordered List (CJ-TS)
--Trigger Check
--Set Junction
--Trigger Check
--Set Junction
For the next two, set the trigger check as YY loop ebound and the junction the same, but the opposite direction, this will make the point return to its previous state once you are in the loop and let out the train waiting in the other track...(make sure your trigger is at the far end of the loop just before the signal otherwise you may derail your train as the point changes and you are still entering the loop.)You have now created for any train traveling in the east direction and allowing a train traveling west to escape once you're in.
All you need to do now is set up the same ordered list for the opposite direction (TS-CJ) and the whole thing should work perfectly, allowing you to drive with AI, meet them in the loops and be allowed out withing even lifting a finger!!!
Few words on the catch points
This can be iffy, you may have to test once done and see if the AI will only grab the catch points. If it grabs the exit creaiting the original problem, try moving the catch point further from the exit and/or move the signal a bit further from the catch point.
Something extra you may want to add..
I have found a great way to improve this setup is to download the Junction Link from the DLS. This lets you link two junctions so when one is changed the other will also change.
You can set this so both ends of the loop are linked meaning when the points are set for the train to exit, the other points are also set... this works fine because on these loops the points will never be allowing you straight through and there is no risk of derailing an AI train by linking them.
If you think you should be able to drive straight through when theres no AI train approaching you can! think about it, once you hit that trigger that lets the AI out, if using the junction link your exit will change too! if you're not going insanely fast you won't even have to stop and will flow through the loop!
I will add screenshots of my setup in Trainz and a picture of the ordered list to make it clearer if you are confused..
I do hope this has helped you out.. Please give it a go and tell me how you get on!!
Long live single lines, AI and human co existing peacefully!!!!!
David
Last edited: