How MSTS Connects A Train with an Activity

Nagged by bad consists or want to remove an engine? This not-short Ğenough bit explains how MSTS loads your consist when running an activity. It''s an attempt to try and simplify a complicated arrangement, and hopefully will help with diagnosing errors and understanding how it actually works.

Ok, here we go. As an example, you made a consist called GP38_single. Made an activity with it and only it and called it GP38_tour. You called the player's service GP38_tour_service.

What you'll get is:

 

Location

Filename

What it needs to find:

1

Routes:USA1:Activities

GP38_tour.act

'GP38_tour_service' in a .srv file

2

Routes:USA1:Services

GP38_tour_service.srv

'GP38_single'  in a .con file

3

Trains:Consists

GP38_single.con

'GP38 GP38' (name/directory)

4

Trains:Trainset:GP38

GP38.eng

 

Starting in the Activities folder, GP38_tour.act has a line in it that says:

Player_Service_Definition ( "GP38_tour_service"    Line in gp38_tour.act      

It doesn't look for the file with that name, it looks for a line in a .srv (service) file that says this:

Name ( "GP38_tour_service" )    Line in gp38_tour.srv      

Once it makes it to the .srv file, it then looks for the next piece it needs: the consist.

Train_Config ( "GP38_single" )    Line in gp38_tour.srv      

We leave the ROUTES folders and venture into the TRAINS folder set. Once again, it just looks for a .con (consist) file with GP38_single in it, contained in the CONSISTS folder.

Name ( "GP38_single" )    Line in gp38_single.conˆ  

So it finds the consist file and gets the name of the engine it needs:

EngineData ( 'GP38 GP38' )   Line in gp38_single.con   

Why is that there twice? The first GP38 is the name of the unit, and the second is the name of the folder where the unit is located. So MSTS goes on its last look , moves out of the CONSISTS folder and into the TRAINSET folder. Finally it looks in the folder named GP38 for an .eng file that contains the name of the unit:

Wagon ( GP38    Line in gp38.eng   

Ahhh, found 'em all.

In each one of the the bold areas above, if one piece of the information gets changed in any way, there will be problems. If you are just installing an engine or new activity and get failures, one of these items may not be correct (or even missing). You can follow the path to troubleshoot the problem. Also, Carlos Gomes' ConBuilder (available on train-sim.com) is an indispensible tool for troubleshooting and repairing quite a number of engine and consist problems as well.

If you have not used the consist in any activity (including traffic and static consists in the .act file), you can safely delete the engine folder as long as you delete any consists that use it. If you have used the consist in any activity, you'll have to remove or update the activities first, and work your way through the services and consists, removing all references to the engine. It can get pretty hairy, so if you have 6 consists using 1 engine, 9 services using the 6 consists, and 12 activities using the 9 services (and possibly static consists), well, i think you get the idea (and it's rather ugly). With any luck, you'll never have to go that far...

Happy debugging...

Michael

 

© 2002 North American Locomotive Works. All rights reserved!

All release dates subject to change without notice.

© 2002 North American Locomotive Works. All rights reserved.