Tutorial - Building a Perfect Track Crossover

MSGSapper

Trainz route developer
Note: This tutorial is also available in Adobe PDF file format from the following link:

http://rdalton.biz/RR/crossover_tutorial.pdf

Tutorial - Building a Perfect Track Crossover

Recently while working to upgrade one of my TRS2012 layouts I was testing the signals on the double track portion of the route and found that the signals did not display the proper aspect signal light at the crossovers which allowed trains to move from one track to another. This signal aspect problem is a well-known Trainz issue at track crossovers.

Wanting to fix this I tried several different signals which are available and experimented for a number of hours before finally finding a solution that worked flawlessly on my TRS2012 layout. I thought I would pass on this solution to save others from the issues and wasted time I had to face.

Before I begin realize that there are very few available signals on the DLS that will work correctly by displaying the proper aspect signal light with crossovers. The ones I use in the following example are made by norfolksouthern37 and have proven to work correctly and display the proper aspect signal light at all times and require nothing else, such as dwarf lights on the crossover track section, to work.

Here is a screenshot from Surveyor which shows how I laid out the double track double crossover which works flawlessly on my test TRS2012 layout:

crossover1.jpg


List of DLS content items used:

Here is a list of the content items I used to make this double track double crossover:
Downloaded from the DLS:

Ballast Light Brown,<kuid:439337:100843>:
http://www.auran.com/TRS2004/DLS_viewasset.php?AssetID=217086

Gantry 5m 2 Track,<kuid2:61119:24223:1>:
http://www.auran.com/TRS2004/DLS_viewasset.php?AssetID=196111

Searchlight Signal 06-LD Gantry,<kuid2:45324:24341:2>:
http://www.auran.com/TRS2004/DLS_viewasset.php?AssetID=210877

Searchlight Signal 06-RD Gantry,<kuid2:45324:24345:2>:
http://www.auran.com/TRS2004/DLS_viewasset.php?AssetID=210876

Track Wood SG with light brown ballast-TRS2010,<kuid:439337:100539>:
http://www.auran.com/TRS2004/DLS_viewasset.php?AssetID=205948

Junction Controller v3,<kuid:439337:100957>
http://www.auran.com/TRS2004/DLS_viewasset.php?AssetID=235227

Built into TRS2012:

Switch Lever,<kuid:-1:100553>

Note: Feel free to substitute your own favorite ballast, track and switch levers for items above but do not substitute for any of the other items or this won’t work for you as it should.

Placing your signals correctly

To ensure your signals work correctly you must place the correct signal with the junction type it was made for. The Searchlight Signal 06-LD Gantry light should be used on junctions that diverge to the left. The Searchlight Signal 06-RD Gantry light should be used on junctions that diverge to the right. To protect a double track double crossover will require four signals (two of Searchlight Signal 06-LD Gantry and two Searchlight Signal 06-RD Gantry all of which are placed on the gantry correctly).

Enhancing your crossover for ease of use

To enhance these crossovers and make them easier to use I have also added my Junction Control V3 content item which is an update of an item done by MiZi back in 2004. I have updated it to work in later versions of Trainz and not report any warnings in the TRS2012 CMP. I have made no changes to the code or functioning of this item so in all other respects it is identical to the original Junction Controller V2 version done back in 2004.

By using this junction controller you only have to have to click just one switch on either side to align BOTH required switches on the crossover to the correct direction. This helps to idiot proof the crossover process for layout users. In the screenshot above I have configured the junction controller to control all four switches and align them correctly. The popup box to the right of the track in the screenshot shows how I configured the junction controller to do this. To control four switches in a double track double crossover you will need to have eight rules displayed in that junction controller. Based on my own tests in TRS2012 rules you add to the junction controller will be stored persistently in the route layer so a layout session is not required. I can’t say if this will be the case in earlier versions of Trainz.

For a single crossover

This procedure will also work for a single crossover but you will need to use two of the following signal to protect the non-switched track sections around the crossover:

Searchlight Signal 04 Gantry <KUID2:45324:24330:2>:
http://www.auran.com/TRS2004/DLS_viewasset.php?AssetID=210880

Example 1: For a single crossover that diverges to the right you will need:
2 of Searchlight Signal 06-RD Gantry
2 of Searchlight Signal 04 Gantry

Example 2: For a single crossover that diverges to the left you will need:
2 of Searchlight Signal 06-LD Gantry
2 of Searchlight Signal 04 Gantry

You will also need to adjust the junction controller to control just two switches instead of four.

Finishing cosmetic touches

If you are using my Track Wood SG with light brown ballast-TRS2010 track you might also want to add my matching frog points to the crossover junctions to give it a more prototypical look. Just download the following and apply them to the junctions.

Turnout_Frog_Left_US_SG:
http://www.auran.com/TRS2004/DLS_viewasset.php?AssetID=234101

Turnout_Frog_Right_US_SG:
http://www.auran.com/TRS2004/DLS_viewasset.php?AssetID=234102

Summary

If you follow the example layout for a crossover as shown in the screenshot above you will have a perfectly functioning track crossover that will prove to be very easy to use on your TRS2012 layouts.

Author of this tutorial:

Bob Dalton (MSGSapper)
 
Last edited:
Looks like a very useful tutorial, Bob. Thank you very much.

Is there any reason this would not work for single and double slip switches?

Bernie
 
Nice tutorial. Works with suggested setup. Its just a pity that other signals wont work as well as this setup.
 
Looks like a very useful tutorial, Bob. Thank you very much. Is there any reason this would not work for single and double slip switches?Bernie

Bernie:

Without testing with each one I could not say for sure one way or the other. Why not run a test at your end on the single and double slip switches you have in mind and post the results here? Just be sure to post the KUIDs of the items you test so folks know exactly what items from the DLS work and which don't......

Bob
 
I find that juction links can create issues sometimes. If you are in multiplayer and some idiot changes an unlocked, linked switch, it can derail your train. For example, if a train was passing the pictured crossover by traveling toward Junction 38 via Junction 92, they would become locked, but Junction 64 and Junction 44 would not. As the train was passing through 38 and 92, somebody could change the direction on 64, causing the train to split the switch and derail. So far I have not found a way to solve that problem, but I am still searching. But overall, I think your setup here is very good and will hopefully be a model system for others. Once the junction locking issue I mentioned before is solved, this system should work flawlessly. I will post the solution of the issue if I can find one. A rule that locks a named junction when a trigger has been activated will solve this problem, if there even is such a rule.
 
great stuff but too add to crossovers if ya noticed in terminals they where shorter in point distance and on high ballin roads etc.... I basically measure out point distance like shorty=yard etc around 300 ft to main lined=600ft google maps helps alot....
 
I had an email from Peter Dehnert challenging the assertion I made in the description field of my "Junction Controller V3" content item that said that rules you added to the item were persistent and no separate session was required.

This assertion was based on my test results for the Junction Controller in my TRS2012. Peter said that the rules were not showing persistent in his TRS2010. It turns out we were both right. I'll let Peter tell you in his own words what he found on further testing at his end with both TRS2012 and TRS2010:

"after doing some more test, using TS12 this time, I can confirm your findings. It seems TS12 is storing all properties (of the last saving ?, for objects in the route layers only ?) as a copy with the map. The properties of the map are stored in the file mapfile.obs (check using a hexeditor). The properties of the session are stored in the file profile.dat. Each session can have its own set of properties, and the route keeps a default set for creating new session. Kind regards Peter (p-dehnert)"

The Bottom line:

1. Rules you add in in the Junction Controller V3 for TRS2010 or earlier will only be persistent in a session you create.

2. Rules you add in the Junction Controller V3 for TRS2012 will be persistent in the route layer and no separate session is required to maintain persistency unless you desire to have sessions that override the route settings.

My thanks to Peter for his testing efforts and help in clarifying this matter. I will modify the description field for the Junction Controller V3 in a future version to spell this out and ensure it is clearer to all who use it.
 
Last edited:
Already have used it on three problematic crossovers on the route I work on. Works beautifully. Have about 3 more to do. Is there a spline gantry that would work with this setup (for wider track spacings)? A clever workaround, thanks
 
Already have used it on three problematic crossovers on the route I work on. Works beautifully. Have about 3 more to do. Is there a spline gantry that would work with this setup (for wider track spacings)? A clever workaround, thanks

Natvander made the gantry listed above among many others he did. Just search on "username" of "Natvander" in the "Trackside Accessories" category to see them all.
 
Wanting to fix this I tried several different signals which are available and experimented for a number of hours before finally finding a solution that worked flawlessly on my TRS2012 layout. I thought I would pass on this solution to save others from the issues and wasted time I had to face.

Bob Dalton (MSGSapper)

I can't see that this produces a result any different than using a pair of Junction Links and any of the available signals - it still fails at the only tricky condition - both directions set to crossover. I have followed the procedure exaclty, using everthing except the track and ballast, but I can still get two green signals on the diverge for trains in the same direction. The realtive positions of the trains doesn't affect the signalling. Am I missing something about this?

Uploaded with ImageShack.us
 
I can't see that this produces a result any different than using a pair of Junction Links and any of the available signals - it still fails at the only tricky condition - both directions set to crossover. I have followed the procedure exaclty, using everthing except the track and ballast, but I can still get two green signals on the diverge for trains in the same direction. The realtive positions of the trains doesn't affect the signalling. Am I missing something about this?Uploaded with ImageShack.us

No, you are correct. Technically the signals are showing correctly although I agree they would lead to a crash if two trains crossed at the exact same time. This is a limitation and problem in Trainz that I am not sure any signal developers could work around when the crossover sections are so close together. With enough space you could probably place an invisible (or visible) signal in the middle of the crossover section and have it show correctly when all four turnouts diverge as you show them. There is just so much we can do to work around Trainz limitations such as this........

My goal here was to try to get the crossovers to show the right signal aspects, which they do, when the turnouts diverge using the signals I listed. With other signal types they don't......
 
No, you are correct. Technically the signals are showing correctly although I agree they would lead to a crash if two trains crossed at the exact same time. This is a limitation and problem in Trainz that I am not sure any signal developers could work around when the crossover sections are so close together......

OK. Firstly, I haven't had problems getting the signalling to work with other signal types and two Junction Links - for everything but simultaneous diverge. I assumed this was the problem your solution was going to fix. Perhaps your solution is fixing a problem that I don't see with my relatively simple signalling. I think the tutorial could be improved if, when you state that this solution fixes a problem, you state precisely what that problem is, perhaps even with an example.

Second, that the problem I was trying to fix could not be fixed by the signal design was exactly the uncertainty I had when I started implementing your solution, and I have to agree that it seems likely.

Thirdly, there is a possible fix by extending the rule. I haven't tested this and will do so asap. But it may be possible to create a rule that sets two other junctions for any switch of one junction to the diverge. The two junctions to be set are the diagonaly opposite junction (to create a valid crossover) and the adjacent junction (destroy the other crossover, if it was set). So the setting that the signals can't cope with is never created. Only one of the other junctins would need to be set in order to ensure that trains facing those other junctions saw a blocked section. This solution depends on how the rules are executed sequentially, and (possibly) whether changes created by executing a rule will then cause a rule to be executed, which are parts of the Junction Controller process that I do not know enough about. But as far as I can tell changes do not cascade through multiple levels of rules, and adding an extra change to ensure that the double diverge can never exist should not create a circular rule set.
 
Back
Top