Routing Cars Direct to Industries Routing Cars Via Multiple Class Yards |
Multiple StartAt and EndAt Staging |
INTRODUCTIONAdvanced Ops (abbreviated to AO) is a sophisticated, customizable, easy-to-use system for conducting both freight and passenger train operations on our TrainPlayer simulated model railroads. The AO system recognizes that all layouts have different needs regarding operations and incorporates the advantages of the Tag on Car, Card Waybill, Card Order and Computer Generated Switchlist methods of model railroad operation to provide a satisfying operating experience on layouts which may have many different design features and operating needs. This document is aimed at the user who has already gained some initial experience in designing and operating a TrainPlayer Ops enabled layout and who is now seeking to develop some expertise in using some of the advanced features of the Ops module. It therefore presumes the reader has a basic knowledge of the AO system and will have already read through our Advanced Ops for the Designer guide; if not we would recommend that you take a look at that document first. |
OPS CENTRAL INTERFACEOps CentralOps Central forms the heart of the AO system and you should familiarise yourself with all aspects of this dialog and its series of grids as this is where you enter and edit all the data needed to manage and control your operations scenario. Ops Central uses a series of eight tabbed pages. We will refer to each of these separately within this guide and explain how the interaction between some of these pages controls and modifies the movements of your trains and cars. We will use several different layouts in our examples as each layout has differing needs according to its own Ops plan. |
INTRO TABAn example of the Intro tab for our Clear Creek layout is shown in the section on Ops Central above. This page can't be edited directly but the Layout Designer can still edit this text by opening the Advanced tab and selecting the option to Edit Intro from the Development Combo menu. |
CREATING NEW LOCATIONS |
|
Highlight the tracksCreating an Ops Location starts with highlighting the relevant tracks which are to represent the new Location. |
Create the New LocationUse the Edit Track tool to select the tracks, right click on the selection and pick Create New Location from the Context menu. The New Location dialog always defaults to Class Industry with a basic label and name. It always makes good sense to change this default label and name into something meaningful which describes the Location. |
Supply the Location DataEdit the New Location dialog: > Provide a meaningful Label.
The Class must be either Industry, Interchange, Staging, Class Yard, XO reserved or Sound Only. The Sound menu lets you add a sound to any location. The Style button lets you change the font style, border and background used on the scenery label. Click OK to set the Properties for the Location. Note: Location Labels can be alphabetic, alpha-numeric or numeric-alpha but not purely numeric. Codes should be short enough to use on a car top as a destination label. |
Adjust the DisplayThe label given to the New Location only appears on one of the highlighted tracks when you click OK. All tracks which make up this location are also given the same label but most of these labels are hidden to reduce visual clutter. Use the Edit Track tool to display the label on other segments of the track by right clicking on the appropriate segment and adding a check mark to Show Label on the context menu. The Scenery label can be re-positioned using the Edit Scenery tool from the Build toolbar to drag the label to its new position. Repeat this process for every Industry, Interchange, Staging, Class Yard, XO reserved or Sound Only location on the layout. |
Locations GridThe Ops Central Locations grid can be opened from the Ops toolbar. If you need to make any changes this data can all be edited from within this grid. Our example shows a completed grid after all locations on a layout have been defined, labeled and classified. |
Each time you add a location to the layout regardless of its Class you are also adding a new row of data to the Locations grid. An Advanced Ops layout must have at least one Staging yard, or Interchange, and several industries. Class yards and XO reserved tracks are useful but not mandatory. Each new Industry added to the grid will display a VacantSpots value of 1. This assumes space to accept at least one additional car but this space may not be available and you may need to adjust this figure to 0 if the location has no extra capacity - if you use the FixOps subroutine this grid adjustment will be automatic. If your layout has one or more Class Yards, the ViaClassYard column should show the label of the yard to be used for routing cars to each specific industry. If there is only one Class Yard the decision is easy and FixOps can insert this data automatically. We recommend saving the layout often when adding Locations. |
Location PropertiesThe Location Properties dialog provides a user friendly way to modify the data in the Locations grid. This dialog can be opened by right clicking on the location name and selecting Location Properties from the context menu. This dialog is very similar to the New Location tool. |
The Location Properties dialog shown on the left can also be opened from the track context menu. This method is only available if the Select By Location option is already checked. |
Adding CarsTo enable your Ops Central grid to function properly all your new Locations will need to be populated with cars appropriate to the tasks which you envisage for them. This topic is covered in substantial detail in Step 2 of our designer's guide - Advanced Ops for the Designer - so the information will not be duplicated here. |
LOCATIONS TAB |
|
OverviewUse the Locations tab to name and classify the labeled tracks on your layout. This grid is generated by AO from an analysis of your tracks. You can't add, delete or duplicate rows in this grid because each row represents an existing track label. However all the columns in this grid can be edited, including the preset codes on the track labels. As the program is unable to identify which of the track labels were intended to be Staging, Class Yard, Interchange or XO reserved, the Locations Tab will initially classify all your labeled tracks as Industries. |
|
Location ColumnYou should edit the Location column to give meaningful names to all your industries, yards and staging etc. If no name is supplied AO will allocate a name identical to the Track Label. The name you enter in this column will be used whenever a name is needed to match a specific track label; for example in the Industries grid or on a Waybill. If you subsequently need to adjust a Location Name you must return to the Locations tab and edit the name here. |
|
Track ColumnYou can't add new Track labels directly to the grid, for that you have to apply your labels to the tracks on the layout. You can however modify a label simply by editing it in this grid. You will then be asked if you wish to apply the new label to all the tracks which originally used the previous label. This is a very cool way to relabel your tracks on a layout if you change your mind about the original codes. Click Yes to apply your new label to the grid. This will also be updated automatically within the properties of any existing tracks on the layout that previously used the original label. |
|
Class ColumnEdit the Class column to identify the purpose of the individual tracks. All tracks are originally set up as Industries and you will need to modify several of these to identify which locations should be your Staging, Interchanges, Class Yards and XO reserved tracks. Staging and Interchanges generate Waybills and Empty Car Orders. They also supply and receive the cars which service your Industries. Class Yards are used for sorting your trains or as Via destinations where cars can change from one train to another while on route. XO reserved tracks are used for Engines and other non revenue traffic; also used for Passenger Trains and dedicated Block Trains. |
|
VacantSpots ColumnThe VacantSpots value only applies to Tracks which are defined as Industries. This column will always default to a value of 1 and you should only need to edit this in special circumstances. Example: The Freight Shed at Easton has ample space for up to three cars but we want to restrict this to only a single car at any one time. We achieve this by only placing one car at the Industry and setting the VacantSpots value to 0. The default value of 1 assumes that when you placed your cars at the various industries you left sufficient space at each location to enable it to accept at least one more car. If you didn't leave the space for an extra car you will need to change the VacantSpots value to 0. |
|
Modifying VacantSpotsOccasionally you may need to increase the VacantSpots value for some of your industries to 2 or more. This should only be necessary if the layout has fewer industries than the number of CarsToPull. An upward adjustment could be needed if one of your Staging areas is defined as an Interchange, perhaps a car float, and you want to be sure of finding enough empty spots to unload the boat. If you set the VacantSpots to a value higher than one you must also ensure that the labeled tracks have the capacity to accept the additional cars. Show Counts on the Advanced Tab provides a way to check the actual space available for extra cars. You should not exceed this figure when editing the VacantSpots column in the Locations grid. |
|
ViaClassYard ColumnIf your layout includes one or more Class Yards, you should include the Location label of the yard which services each industry in the ViaClassYard column for each Industry. This will ensure that the Switchlist Generator will route all traffic between Staging and the Industry via the specified Class Yard on both the inbound and outbound journey. Industries intended to be served direct from Staging without changing trains in a Class Yard should have a Tilde character entered in the ViaClassYard column. |
|
Sound ColumnYou can add a layout Sound to any Location by double clicking in the Sound column against the relevant location to select a suitable Sound from the Combo Menu. The selected sound will be played whenever a train moves into the specified location. |
|
|
INDUSTRIES TAB |
|
OverviewUse the Industries tab to provide all the data required for generating the waybills needed to support your Industries. Each row in the Industries grid contains the information that AO will need to enable the Industry to place an order for a new load, or to place an empty car order to enable the Industry to ship out a load. All cells in this grid can be edited except for the Location name which is "Read Only" and can only be modified in the Locations grid. Rows can be added, duplicated or deleted by right clicking in the ID column and selecting an option from the context menu. |
|
What the Industries grid data meansLocation: Automatically filled by looking up the Industry code. If this needs editing it must be done in the Locations grid. Industry: Can be any track label which has already been classified as an Industry in the Locations grid. AAR: The AAR code of any loadable car on the layout, or the first character of any such car. A single character code means that the program can allocate any car type which starts with the specified letter to carry the load. For example to use a Gondola at an Industry we may have to choose whether to use the single character code G to permit any Gondola to carry our load, or to use the more complete two character codes e.g. GA and GB. If we opt to use GA and GB we will require two separate entries for this Industry in the grid, but a single entry G would permit either the GA or GB car to be dispatched to handle the load. We recommend not mixing single and double character codes of a car type in the same grid. It is OK to have G, XM, XI in a grid but not G, GA, GB, XM, XI because a match for GA prevents a second search for rows with a single character. |
S/R: S = Industry ships out the named load to Staging. R = Industry receives the named load from Staging. Load: This can be any Loadname whether or not there is an entry or image for this load in the TrainPlayer database. Loadnames not in the database will be displayed as text on closed cars or as a tarpaulin on open cars. Staging: Can be any track label which has been classified in the Locations grid as Staging (or as Interchange). A ~ (tilde) in this column means that any Staging yard (but not an Interchange) can generate traffic to and from this Industry. ViaIn: Can be any track identified as a Class Yard in the Locations grid. The car must change trains in this yard on its route to the Industry. A ~ (tilde) means there is no Via yard on the route and the car travels direct from Staging to Industry. ViaOut: Can be any track label set up as a Class Yard in the Locations grid. The car must change trains in this yard on its route back to Staging. A ~ (tilde) means there is no Via yard on the route and the car travels direct from Industry to Staging. Bridge Traffic: Optional data specific to Bridge Traffic, this will be discussed in detail when we look at the Sequence tab. Comment: Has no function. Can be used for reference notes. |
ROUTING CARS DIRECT TO INDUSTRIES |
|
These cars can't move anywhere without a train. Fortunately the Sequence tab provides a suitable train which StartsAt BSY Staging, visits all the stipulated Industries and returns to EndAt BSY Staging where it started from. |
Direct RoutingThe Industries grid at Binbrook Spur has only a ~ (tilde) in the ViaIn and ViaOut columns. This tells us that the cars will travel direct from Staging to each of the Industries without needing to change over to another train in a Class Yard. This doesn't mean that Binbrook can't have a Class Yard (it doesn't but you could still supply one for sorting your train when that would help). The Staging column also uses a ~ character which means that any Staging yard can service the Industries but as Binbrook only has one Staging yard (BSY) the ~ here is simply shorthand for BSY. |
ROUTING CARS VIA CLASS YARDS |
|
Industries TabThe Industries grid at Long Branch shows that all cars travel from the SY Staging to their Industry destinations Via one or other of the three Class Yards. To see how this works we need to peek ahead again at the Sequence grid. The Transfer Freight operates out of SY Staging visiting only the three Class Yards (BY, DY, FY) where it sets out cars with matching ViaIn codes and returns cars from these yards to SY Staging. |
|
Sequence TabThree separate local trains then operate as turns from these yards to deliver the cars dropped by the Transfer Freight. These local trains also pull any cars waiting at the Industries back to their respective ViaOut yards. From here they will be returned to SY staging on the next Transfer Freight. |
SEQUENCE TAB |
|
Train SequenceUse the Sequence tab to provide the data needed to enable your engines to deliver your cars to their destinations. The train Sequence is a list of the trains you need to run sorted into the order you want to run them. The sequence will repeat itself from the start once the last train has run. |
Each row in the Sequence grid contains the information needed to select the cars which are waiting for pulling from, or dispatching to, the Industries to be serviced by your engines. It is the Industries grid that tells you how an individual car will be routed, but that car can't be moved unless you also specify and schedule an engine to move it. Choreography is the key to success and your cars will only be delivered if an engine is scheduled to visit each car's current location and their next destination. Repeat cycles of the Sequence will not be identical to earlier trains because each switchlist uses different source data for positions of cars, Industries waiting for cars, available cars in Staging, and cars ready for pulling from the Industries for return to Staging. Cells can be edited except for the Row number column and the Active Train marker. Rows can be added, duplicated or deleted by right clicking in the ID column and selecting the required action from the context menu. |
What the Sequence grid data meansEngine: The Car Label of the engine chosen to run this train. The engine will be selected and highlighted when a switchlist is generated to enable this train to run. TrainName: A name allocated by the Designer for the train. This name will appear on the Control Bar and the Switchlist to clarify which train is being run. StartAt: Is a Staging or Yard location supplying the inbound cars for the train. Can be any track class except Industry. |
EndAt: The location which will receive outbound cars from Industries or Yards. Can be any track class except Industry. Visits: A list of all Industries and Yards authorized to be visited by the train (other than those in StartAt and EndAt). Active: Controlled by the program. X = The Active Engine. CarsToPull: The number of cars this train can pull from the Industries it visits. Also the number of cars entering the layout if StartAt is either Staging or an Interchange. Comment: Has no function. Can be used for reference notes. |
CARS TO PULL |
|
Default ValueIf no CarsToPull value is provided in the Sequence grid the train will use the default value from the Advanced Tab. If there are Industries on the Visits list AND EndAt includes either Staging, Interchange or Class Yards then CarsToPull is the number of Cars to be pulled from the listed Industries. If StartAt is Staging or Interchange AND the Visits list includes any Industries or Class Yards then CarsToPull is also the number of cars to send to the Industries with new Waybills. |
On a small layout with very few industries you may need to modify the default CarsToPull value to a figure less than or equal to the number of industries. When a Sequence row has Staging (or Interchange) in both the StartAt and EndAt columns AND includes Industries in the Visits column the AO system will automatically maintain a balance between Inbound and Outbound cars and prevent any overloading of the Staging areas. |
Multiple Class YardsWhen a Sequence row has only Class Yards in the Visits column (no Industries) and either of StartAt or EndAt are Staging or Interchange then special care must be taken to avoid a mismatch between Inbound and Outbound cars which could eventually overload a Staging area after a long series of Switchlists. Changes you make to the CarsToPull value will not take effect until the next switchlist is generated. |
In this example from Long Branch, SY is a Staging Yard, BY, DY and FY are all Class Yards, the other codes in the Visits column are all industries. The Transfer Freight doesn't visit any Industries so this train won't pull any cars for return to SY staging (except for cars already waiting in the three Class Yards). Only when the cars from this train are distributed by the local turns will cars be pulled from the Industries for return to Staging. To balance the inbound and outbound cars we need to set CarsToPull to exactly match the number of cars which will be pulled from the Industries by the three local trains which follow. So we set the CarsToPull on the Transfer Freight to 35 cars (11+12+12=35) this maintains a balance between cars heading to and from Staging and Industries. The inbound distribution may not work out in the exact proportions as the outbound cars from the three sectors. The split is dependent on the vacant spots in each sector and the car types available in Staging to serve them. |
BRIDGE TRAFFIC |
|
Bridge Traffic is generated automatically when StartAt and EndAt are both classed as Staging but are not identical labels. The number of cars to be used as Bridge Traffic should be set on the Advanced Tab. The program will then select a random number of cars between the supplied Max and Min values. By setting a high value in both the Max and Min boxes you can force every car not selected for an Industry to be transferred to the opposing Staging yard by operating a regular train backwards and forwards between the two Staging yards. One of the areas should initially be empty to receive the incoming train of Bridge Traffic. Note: Bridge Traffic is not applied to Interchanges so it is possible to prevent it from being automatically generated by setting up one of the two opposing Staging areas as an Interchange. |
The example screenshots on the left are from the Wiscasset, Waterville and Farmington layout. Here the Standard Gauge Maine Central train operates between two Staging yards on the MEC Rockland Branch. The sequence commences with a made up train at Brunswick (MB) and an empty Staging yard at Rockland (MR) waiting to receive the train. The Northbound train selects up to 4 cars for delivery to Wiscasset and then routes all the remaining cars from the MB Staging track as Bridge Traffic to Rockland. This train delivers 4 cars to Wiscasset and pulls 4 cars over to the Yard track to wait for the Southbound train before heading North for Rockland Staging. The Southbound train runs later from Rockland (MR), all cars on this train are selected as Bridge Traffic. The train stops at Wiscasset to pick up the 4 outgoing cars for Brunswick (MB) from the Yard track and continues South to complete the run. It is essential to apply a route to the Engine which is attached to the train at Brunswick as it will not return to MB until a later train. On the XO cars tab the route for ES14 is entered as MR,MB (Engine routing is covered in the XO cars section). |
Load Names for Bridge TrafficLoad Names for Bridge Traffic are initially set to the default load names for the car type with 30% of the cars travelling empty. For users who require more control AO provides a way to apply a specific Bridge Traffic Load Name for each car type dependent on the direction of travel. This optional data is applied in the Bridge Traffic column of the Industries tab against any entry relating to the car type. |
On the MEC Rockland Branch servicing Wiscasset we want the special car type XY to always travel North as an empty car, and always travel South loaded with Potatoes. This is achieved by finding (or inserting) an entry in the Industries grid for car type XY and placing an entry in the Bridge Traffic column MR,potatoes which tells AO that any XY car running as Bridge Traffic from MR will carry potatoes. Similarly we edit another line with an XY car and enter MB,mt in the Bridge Traffic column so that all XY bridge cars travelling North will be empty. Our HZ dedicated coal hoppers use the code MB,coal when travelling North and MR,mt when travelling South to simulate the traffic of the prototype. |
BALANCING THE TRAFFIC |
|
Cars in StagingThe number of cars needed in Staging by AO is relatively low. Cars returning to Staging are assumed to be elsewhere on the railroad system and are therefore available for reuse as a new car. We suggest that the number of cars placed in staging should be around one and half times the CarsToPull value. Overfilling Staging can be detrimental to car selection. If the CarsToPull value is 10 (the default) and there are 86 box cars within a pool of 250 cars it will require 25 switchlists to cycle through all the cars. Theoretically, but unlikely, you could get eight switchlists of boxcars before any other car type moves. Adding rows to the Industries grid doesn't increase traffic to the named Industry. It is the number of cars placed at the Industry that manages the flow of traffic as cars are pulled. Pulling a car from an Industry helps to restock Staging and adds the Industry to a list of spots requiring another car. No matter how many rows are listed for an industry in the Industries grid it will not receive another car until an existing car has been pulled for return to staging, nor will a new car be dispatched until the other industries with vacant spots have been serviced. |
Car FrequencyWhen an Industry requests another car it joins a queue, when it reaches the front of the queue a suitable car is selected and dispatched to the Industry to fulfill the order. If Industry A only ever handles one car type and a single commodity but is set up with four cars. And Industry B is also set up for 4 cars, but has 10 rows in the industries grid. Then these two industries would handle exactly the same amount of traffic, but you would see each of Industry B's loads much less frequently than the load for Industry A. If you have an industry that ships two commodities, nuts and bolts, you want the industry to ship twice as many nuts as it does bolts. Then placing two rows in the Industries grid for nuts and only one for bolts will achieve this. This is because if a car visits the industry to collect a load, it will select the load from a list of nuts, nuts, bolts so that the chance of it selecting nuts is twice that of it selecting bolts. The frequency of cars visiting the industry for loading is still constrained by the number of cars that were first placed at the industry in relation to those placed elsewhere. |
ROUTING CARS VIA MULTIPLE CLASS YARDS |
|
Industries GridWe have already discussed routing cars Via a Class Yard so that two trains are required to move a car from Staging to Industry and vice versa. It is also permissible to add a second Via destination in situations where there is no direct route between the existing ViaIn yard and the final destination without transferring to a third train in yet another Class Yard. This is demonstrated in our Saddlestring layout. Here the logging industry at O5 is serviced only by a log camp engine which Interchanges with the main line in the Pronghorn (PY) Class Yard. As the train which services PY starts from Saddlestring Mill (SM1) and calls at SYP any Pulpwood car from N1 Staging will need to change trains twice to reach its "O5" destination. |
The Industries grid coding needed to enable this route is shown on Row 77 below. This uses a comma delimited pair of two Class Yard codes in both the ViaIn and ViaOut columns. The Industries grid shows that the empty cars are supplied from N1 staging, the cars need to move first to SYP, then on to PY and finally to Industry O5. This will require three trains. |
Sequence GridA further three trains will be needed to take the loaded cars from O5 back to N1 Staging, Via the PY and SN1 Class Yards. This is the Train Sequence grid for Saddlestring, the trains which move the pulpwood cars are highlighted in yellow. If any of the highlighted codes are omitted the cars will not be selected for the train and the Ops plan will stall. |
Train Sequence analysis for Industry O5> Train 2 moves loaded cars from SN1 Yard to N1 Staging.
* Trains 6 & 7 will not move empty cars until the second cycle as there will be no inbound empties until we get to Train 10. When designing your own Ops plans it is essential to arrange your Train Sequence to ensure that cars are not left for unduly long periods in the Class Yards before another train is available to take them on the next leg of their journey. |
SYNCHRONIZING TRAIN AND CAR MOVEMENTS |
|
The Sequence grid for Clear Creek |
To explain the routing system at Clear Creek we will focus on
The Sequence data for the Westbound Freight (Train 4) shows that the inbound cars StartAt 9D1 and there are no outgoing cars because 1SY is a Class Yard (not Staging). The train is authorized to Visit all the industries at Silver Plume (1) but not the industries at the intermediate locations (2, 3, 4 and 5). The Westbound Freight does however Visit the Class Yard at Idaho Springs (4IY) so we can set down these cars in the 41Y yard for distribution by the Georgetown Turn. |
Part of the Industries Grid for Clear Creek |
The Industries grid shows that the Silver Plume (Location 1) industries to be serviced by the Westbound Freight have a Tilde in the ViaIn and ViaOut columns so that the cars can travel direct from Denver (9D1) to the Silver Plume industries on the same train. The cars for Georgetown and Idaho Springs (Locations 2, 3, 4 and 5) require the 4IY Class Yard listed as a via destination for both inbound and outbound traffic. This enables the Westbound Freight (Train 4) to set down these cars at 4IY to await the Georgetown Turn (Train 5). This local train visits all these industries to distribute the cars. It will also pull any Denver (9D1) bound cars to 4IY for picking up by the Eastbound Freight (Train 6) as it runs through Idaho Springs. |
CAR FLOATS & INTERCHANGES |
|
The Car Float on the Lockport layout
Lockport only supports eight industries yet the Car Float delivers 12 cars, so extra vacant spots are essential to accommodate all incoming cars. |
When a train collects its inbound cars from an Interchange AO attempts to find a destination for all the incoming cars. This is based on the theory that all cars left in an Interchange will be heading for industries on the layout. It is recommended that the initial number of cars placed at an Interchange does not exceed the CarsToPull value. To increase the chance of finding enough vacant spots for the inbound cars, we recommend that the industries include some extra free space and that this is shown in the Locations tab as additional Vacant Spots. When the Interchange is a Car Float it is also important that the number of outbound cars to be pulled from the Industries doesn't exceed the capacity of the float. This requires some extra care in the setting up process. If the inbound cars are from a Car Float the CarsToPull value must exactly match the capacity of the Car Float to ensure that the correct number of cars are pulled in every round. |
The Car Float on the Pelican Bay layout |
Pelican Bay uses a different approach based on the "Card Order" system. Here the car float delivers four XO cars in each round. A total of 12 XO Dedicated Service cars are needed to operate this car ferry, these are split into three blocks of four cars. The routes are set up in the XO cars grid as follows:
Note: HL and HL1 are both classified as XO reserved tracks. |
INDUSTRY TO INDUSTRY TRAFFIC |
|
Industries can be defined as StagingThere are no rules as to which tracks should be Staging and which should be Industries. The key point is that Staging is where cars originate and Industries are the points they serve. Tracks at a busy Industry which serves other Industries can be defined as Staging tracks to enable them to ship and receive loads to and from several other Industries on a layout. |
There is an example of this on the Saddlestring layout where some tracks in a Sawmill complex are defined as Staging while another track at the same Sawmill retains the Industry classification. The two SM1 tracks which are defined as Staging can dispatch empty log cars to several logging camps and receive return loads. They can also dispatch lumber to other industries and receive empty cars in return. The SM2 track which is defined as an Industry can still ship lumber to the UP and NP Staging yards, and receive supplies from those main Staging yards. |
Locations GridThe key to setting this up is in coordinating the data in the Locations and Industries grids with the data in the Sequence grid. The SM1 track is defined as Staging, the SM2 track is an Industry, as are the logging camps and several other industries which receive lumber loads from the Sawmill. Industries GridThe four logging camps ship to SM1 via PY and receive back empty cars. The Sawmill Staging track (SM1) ships goods to four other industries and also receives empty cars back for dispatching further loads. |
Sequence GridTrain 6 takes empty log cars from SM1 to exchange for loads waiting in the PY Class Yard, this train also pulls loaded gondolas from SM1 to QT and any northbound local traffic waiting in the SYP yard. If QT has any traffic for SM1 it will return on this train. Train 7 swaps empty log cars at PY for loads waiting at the camps. These cars will lay over at PY until the cycle repeats. Train 9 delivers Southbound lumber loads from SM1 together with any Southbound cars waiting in the SYT Class Yard. This train will also return cars from the SWT and TL industries to the SM1 Staging and to the SN2 and SU2 yards. |
MULTIPLE STARTAT AND ENDAT STAGINGThe StartAt and EndAt points for the Active Train are not restricted to a single track label and it is possible to split up a Staging Yard into several different tracks and refer to each track separately by providing a Comma separated StartAt list. The advantage of this is that cars being returned to Staging must then be spotted onto specific tracks. Grain cars go to the Grain Store and Dairy cars to the Dairy. This approach works best when used with AAR override codes to control the exact number of cars authorized to operate from each of the designated Staging tracks. XG = Grain Cars, XD = Dairy Cars. |
|
Multiple Staging TracksIn this example the Yard Goat can pull up to nine cars from each of the five StartAt tracks, although some of these only hold a couple of cars. The engine assembles these into a Northbound train in the 1AL Class Yard ready for dispatch to Albion. 1AL is the first ViaIn yard in the Industries grid for all these cars. The maximum the Goat can pull from some of these tracks is only two cars because that is all that there is available on the relevant StartAt tracks. The Goat also returns cars to the five EndAt tracks from the 1A Class Yard (arrival track) and from the 1ST Class Yard (the empty car storage track). This technique works best when the car routes use Via Yards because the CarsToPull value is unable to maintain an accurate balance when the cars are dispatched direct to Industries. This is because the CarsToPull value applies separately to each StartAt location but applies cumulatively to any cars to be pulled from listed Industries. By using a Via yard we can specify the Industry CarsToPull separately against the appropriate local trains and keep complete control of the in/out balance. |
MEETS AND PASSING TRACKSExample from the Wiscasset, Waterville and Farmington RailwayTrain 3 to Albion has arrived on the Weeks Mills Passing Track (10PT). It waits to Meet with Southbound Train 4 from the Winslow Branch which will pull two cars; including a car for 9W which was just set out by Train 3 on its arrival. Train 4 will also set out cars for the Albion branch which will be added to the waiting train before it departs as Train 5 Northbound. The Sequence grid for Train 3 shows how the train moves cars from the 1AL Class Yard to the Class Yard Passing Track at Weeks Mills. The train picks up one inbound car from the Staging at 4HTP, and sets out any cars for the Industries in areas 4, 5, 6, 7, 8, 9, 10 and 11 before parking up in the 10PT Passing track at Weeks Mills to wait for the Southbound train. The Industries grid shows the ViaIn route for some of the cars on Train 3, any cars to the South of Area 10 (Weeks Mills) are only routed Via 1AL the assembly track. Whereas the cars for the area North of Weeks Mills are also routed Via 10PT which is the Passing Track. This Industries grid data permits Train 3 to complete the first leg of its journey at 10PT by ensuring all cars are correctly spotted. When the train is ready to continue as Train 5 the car destinations will be updated. |
XO CARS TAB |
|
The XO Cars grid contains an inventory of the cars which have been allocated an XO (Exclude Ops) flag. These include Engines, Tenders, Cabooses and Passenger cars, plus other cars that you set to XO to exclude from the main AO system. XO Cars which always end a switchlist at the same location they started from will not require any data in this grid. If you move one of these cars "off spot" a label will be displayed requiring it to be respotted. XO cars that do change locations during a Switchlist require data to be supplied in the Route column. If these cars are loadable they also need data supplying in the Shipment and LoadAt columns. |
SETTING XO CAR TASKS |
|
Only the Route, Shipment and LoadAt columns need editing, all other data in the XO Cars grid is generated from the positions of the cars on the layout and the needs of the Switchlist Generator. The Route data for an XO Car will always end with the current position of the car to ensure it is back in place to repeat its journey when the Sequence restarts after the last train has run. An XO Car will not be selected to move unless its current location and its next destination both appear in the Visits list of the Sequence grid for the Active Train (or in the StartAt or EndAt column). We have used the XO cars grid from the Clear Creek layout as an example for explaining the flexibility of the different types of XO cars data. |
|
Engines which operate out of fixed locations (sheds or yards) do not require any Route, Shipment or LoadAt data if they always finish a switchlist task in the same location they started out from. Engines allocated to Turns can be optionally given a route to help with navigation. ES3 at 9G1 has the route 7BT,9G1,]] The 7BT ensures the engine is turned at Blackhawk turntable before returning to 9G1. The ]] suffix ensures the route automatically advances at each designated spot and that it doesn't stop doing so until the train reaches the location that immediately precedes the ]] marker. ES3 operates Train 1. |
|
Engines whose trains terminate in a different yard or staging area require a Route. ES129 at 9D1 has route 1SE,9D1, it travels to 1SE with Train 4 and returns to 9D1 with Train 6. |
|
Roving Cars such as F9 at 7BW are in dedicated service to a particular industry. Car F9 has a Route which delivers to many industries. 6FS,4IY,3SR,4IY,6FS,7BW,6FS,4IY,5AM,4IY,6LC,7BW,9G1,7BW,8ML,7BW, 6FS,4IY,2HS,4IY,6LC,7BW and the car keeps returning to 7BW (Blackhawk Boiler Works) for a new load. This car requires a loadname in the Shipment column and 7BW in the LoadAt column to show where it should be loaded. By only using one car for 7BW we restrict this Industry's output. |
|
Routed Passenger Cars have a Route through a string of XO reserved stations. PC123 at 9G4 has a route which involves a layover at 2GY; Route=6FC,4ID,2GD,2GY,]],2GD,4ID,6FC,9G4,]] This car will travel on Train 2 which starts at 9G4. The ]] marker tells the program to advance the route at each stop, and to stop advancing it after spotting the car at 2GY. This car will then layover at 2GY until it is picked up by Train 9 to work the return trip to 9G4 (where it will layover until Train 2 repeats). The Shipment name is Passengers and the LoadAt Location is 9G4,6FC. At other stops this car will be unloaded and different cars will be loaded. |
|
Idler/Spacer cars (none at Clear Creek) don't need any Route or LoadAt Data but can be given a shipment name of "mt" or "spacer." These cars will only display a Destination label if they are removed from their current location - to ensure they are respotted after use. |
|
Block Trains (none at Clear Creek) usually use two blocks of cars each operating in opposing directions. So Ffarqhuar has two cuts of hoppers to work the quarry. The cut standing in the quarry (AQ) all have the Route set to KY,AQ, and the cut in KY staging has the Route set to AQ,KY. Both cuts have a Shipment of Aggregates and both have LoadAt set to AQ (the quarry). |
SWITCHLIST TABThe Switchlist grid is automatically maintained and can't be edited. This is essentially a task list of the cars that still require moving from their existing PullFrom spots and delivering to the locations shown in the SpotAt column. As each task is completed the car will be removed from the Switchlist. This is the tab to check if your Car Monitor says there is still a car to be spotted and you don't know where it is. When the Switchlist is completed this grid will be empty. If you right click on any row in the list you can Zoom to Car to find it. You can also open the Car Properties dialogue or Show Waybill for more details of the Car's tasking. |
CARS TAB |
|
The Cars grid is a powerful navigation tool, right click on a row to Zoom to a car, or display its Properties or Waybill. |
The Cars grid is an inventory of all the cars on your layout. This summarizes the information from the Car Properties dialog in a convenient list format. The Car, Image, Type and AAR columns are fixed properties of the car which can't be edited. Location, Dest, Load, ExcludeOps and PropStr can all be edited but this serves no useful purpose as the data in these fields is being continuously updated as AO generates its Switchlists. The AAR Override code can be edited to control car movements. |
AAR OVERRIDE CODES |
|
AAR Override codes (AAR/o) were introduced in TrainPlayer 7.1 to provide increased flexibility in car movement control. This feature permits you to modify the "factory default" AAR code on any car for a code of your own choosing. To demonstrate the power of AAR/o we can look at the Industries grid on the "Mount Brydges" Layout. This layout has three Industries that handle Tank Cars in various forms. Gallon Paint accepts cars of type T and TM, Davis Chemical uses types T and TG, while Foster Fuel uses type TM only. The use of any car with a single character AAR code (and there are a lot of them) causes problems for AO because if a matching car with the identical code is not found then AO will seek to substitute any car starting with the stipulated character. Many of the TP collections which have been built up over many years use the same code for cars which are painted to carry widely different commodities. This can lead to situations such as Milk Tanks carrying Oil or Fuel, or, as at Mount Brydges, a fuel tanker being selected to deliver Chemicals. |
First we need to decide which AAR codes to use for each industry and apply these custom codes to the Industries grid AAR column. Let's say Gallon Paint will use TP, Davis Chemical will use TC and Foster Fuel will use TF. We can make these adjustments to rows 4, 5, 7, 8, 36 and 41 of the Industries grid (image in left column is prior to editing). Then we apply a new AAR Override code to each of the Tank Cars shown in the Cars Grid based on what the car image suggests it would be carrying. Entering an AAR Override code automatically replaces the code in the AAR column. The image below shows the Mount Brydges Cars Grid with some changes made and some still to do. Note how the AAR/o code is also applied by TrainPlayer to the AAR column. We will also need to apply one of our new codes TF, TC or TP to each of the remaining blank white boxes as the T, TM, TG and TW codes are no longer in the Industries grid. You could also use an AAR/o code for an industry that only shipped a load very infrequently. Just apply a special AAR/o code to the commodity in the Industries tab and only supply one car of the specified AAR/o type on the layout. This would prevent any of the other cars from being selected to complete this task. |
Another AAR Override exampleOn the "Wiscasset Waterville and Farmington" there are a total of 83 standard XM boxcars in constant demand from a large number of Industries. There is a requirement to weight the loads heavily in favor of some of the larger Industries. When only one car type (XM) is available this can lead to all the cars heading for heaviest users to the point where there is no car available to enable a light user to ship his load. The solution is to use AAR Override codes in different proportions to ensure that all car orders can be fulfilled, This will ensure that there will always be a car available for the required load. It allows us to populate the layout with cars in the proportions needed for the different commodities. When you enter an AAR Override it allocates the new code as a temporary AAR for the car you apply it to. |
So instead of 83 XM Box Cars the WWF has 19 XS cars for inbound supplies, 18 XL cars for outbound lumber, 14 XP cars for outbound potatoes, 7 XC cars for outbound canned corn, 6 XG cars for inbound grain, 4 XF cars for inbound feed, 4 XW cars for outbound woolen goods, 4 XD cars for outbound dairy produce and 8 XZ standard gauge box cars running on the Maine Central. When you Generate the First Switchlist the temporary code is also applied to the car ID label. |
CAR SWAP |
|
Changing a car by deleting the original car and selecting an alternative from the Car Chooser is not useful with Advanced Ops because the new car will not retain the Ops Properties of the deleted car. The Car Swap feature resolves this by permitting you to Swap any car on your layout for a different car from any Car Collection. This Swap retains all the Ops Data that had been applied to the original car. The car AAR types don't need to be identical but we recommend that you restrict Swaps to cars of the same basic type to avoid unforseen complications (such as Fuel Oil being loaded into a Stock Car). First ensure that the car you want to 'swap out' is visible, either in Layout view, in the Train Window or in one of the Ops Central grids (The Cars Grid is recommended if you want to swap multiple cars). Next bring up a car source, either the Car Inventory Bar or the Car Chooser and navigate to the image of the car you want to use to overwrite the original. Drag from your car source to the target. If the target car is eligible to swap it will be highlighted with a red frame and [+] cursor. Release the drag and check the confirmation alert to ensure that the original car's AAR code will be retained after the swap (here the new car is an RS but the RA code is retained.) Click 'Yes' to complete the Swap (this step is undoable). As all Properties from the original car are retained on the new car it will remain fully compatible with the existing Operations plan for the layout. |
The AAR code from the original RA car has been applied to the AAR override column and is also retained in the AAR column demonstrating that RA is now overriding the AAR code of the replacement RS car. If the Alert differs from our example in the left hand column you should answer No to the prompt and repeat the drag using the Right mouse button. Release the right mouse button when you see the red box and [+] cursor, and select 'Car Swap Settings ...' from the context menu. Ensure your Car Swap Options match the image on the right and click OK. These settings are saved in the Registry and will be used for future Swaps. No changes have yet been made to the Cars Grid, but you can now revert to using the left mouse button to Swap your cars and retain all the relevant Ops data. Note that dragging with the right mouse button (instead of the left) often provides an additional option to use the newly sourced car image as a swap for all occurrences of the target car's AAR type. TrackLayer users with the Pedersen Car Sets can use the Swap Cars feature to modify local copies of their favorite AO layouts to use Pedersen cars without jeopardizing the existing Ops scenario on the layout. To add new Car Sets to the Car Inventory Bar you need to use the drop down selection arrow and first pick Car Chooser. Then select the Car Set required from the Chooser, click "Choose" to copy it into the Car Inventory Bar and add it to the list of available Car Sets. The oldest entry in the list will be removed as there is a registry setting to dictate how many car sets can be listed - CarBarMRUListSize. |
ADVANCED TAB |
|
The Advanced Tab is used for setting a default value for the number of CarsToPull which is used when the Sequence tab doesn't specify individual CarsToPull values for each train. You can also set a Minimum and Maximum value for the number of cars to be run as Bridge Traffic when a train runs from one Staging yard to another. The two check boxes enable you to define whether or not the Ops Central dialog should be activated to display the Intro page as the layout opens, and whether the display should Zoom to the location of the Active Engine. The Development combo menu includes all the instructions and tools needed to create and fine tune an AO enabled layout. Our Advanced Ops for the Designer guide covers this topic in detail so these instructions are not repeated here. |
Resetting your Layout to the Starting ScenarioEach time you work with an AO layout you are prompted to save the current situation at the end of every operating session. This enables you to continue working the switchlists from the saved position the next time you load the layout. There may be times when you want to completely reset your layout back to the default Switchist 1 scenario, perhaps you just want to start over again, or maybe you want to adjust the track layout, change the mix of cars on the layout or adjust the data in one or more of the Ops Central data grids. To reset the layout go to Advanced Tab Development Menu and select Reset Trains to Start Positions, then click Yes to confirm. Once the trains have been reset you can make changes to your tracks, cars and/or grids and then use the Generate First Switchlist option to produce a new revised first switchlist which incorporates all your changes. Don't forget to Save the layout before closing it to lock in the new Switchlist. |
SHOW COUNTS AND SHOW VARIABLES |
|
Show CountsShow Counts from the Development Menu provides access to additional information that can be very useful to help you balance the numbers of cars placed at your Industries, Staging and Class Yards. This includes a break down of car positions by location so that you can identify how many cars of each type have been placed at Industries to help you balance up a similar number of cars in your Staging yards. The "Track Capacities" section includes an analysis of how many cars will fit on each labeled track together with a count of how many cars have been placed and the available free space. |
Show VariablesShow Variables can be useful for the tech savvy user. For example, you may be wondering why a car that you expected to move has not been selected for a Switchlist. The data, which is constantly being updated includes: cPickuplist - Cars standing at Industries awaiting collection, listed in the order that they will be pulled when the location is visited by the Active Train. cSpottedset - Cars which are correctly spotted and do not require moving. cStilltospot - Cars displaying labels which need to be delivered by the current "Active Train". nSwitchlistNo - The current Switchlist number. sScheduleJob - Name of the current job from the Sequence grid. sSchValid - List of Locations authorized to be visited by the "Active train". Tspotsvacant - Industries with outstanding car orders, listed in the sequence the orders will be filled when a suitable train is due to visit the Location. |
THE FIXOPS SUBROUTINELaunching FixOpsThe FixOps subroutine provides a structured guide to collating your Ops data and building the Ops Central grids to produce a functioning layout. You can use FixOps with any layout which includes data for Locations regardless of whether the layout has already been set up for operations. To get started, just type "FixOps" into the Script Command Prompt dialog which opens from the Command Box button on the Script Toolbar. |
|
Getting StartedWhen FixOps opens read the preamble, then press the F1 key to start the process. Fix Ops starts by conducting some basic data checks to ensure the viability of the layout for operations. These initial checks include verifying a workable combination of Staging, Yard and Industry areas, and fixing any syntax errors found in track labeling. |
|
Basic Layout Data ChecksAn XO flag will be applied to Engines, Tenders and Cabooses to exclude them from the calculations used by the Switchlist generator. If FixOps fails to locate any critical Ops information, such as a missing Staging yard or the absence of an engine, the process will terminate with an error message. | |
Locations GridThe Locations grid will be tested for any anomalies. Suggestions will be made for correcting any errors, and any serious problems will be fixed automatically. |
|
Check and edit the Locations gridIn this screenshot FixOps has counted the cars at DC and overwritten the default Vacant Spots value of 1 with a 0 because there was insufficient space to accept an additional car. The number of vacant spots have been increased to two at some other industries which have ample space available. FixOps has also identified that there is only one Class Yard on the layout and opted to use this yard to transfer all cars from the Fast Freights onto Local trains at that location. If there were no Class Yards on this layout the ViaClassYard column would be shown as a ~ (tilde) character. If the layout had more than one Class Yard the column would also show a tilde which would then require editing by the designer to identify which of the industries needed to be serviced by each individual yard label. Click OK button in the small TrackLayer Alert to accept the Location grid and move on to building an Industries grid. |
|
Building the Industries GridFixOps may take a couple of minutes to build an Industries grid from the car types positioned at the industries but this process is very much faster than building it line by line. This grid contains all the essential data needed to generate the Waybills that will ensure a viable operating sequence. |
|
Industries GridFixOps makes use of the existing Build Industries Grid from Cars feature of Advanced Ops to supply one inbound car order (S/R=R) for each AAR car type found at an industry, plus an additional outbound car (S/R=S) for each boxcar, reefer and gondola AAR type. The Industries data produced by FixOps is fully functional but can also be edited to customize your Ops scenario. A detailed explanation of the individual cells in the Industries grid can be found under the INDUSTRIES TAB information if you need to refer to it. If you study the data in the newly generated grid you will see that, for each Industry listed on the Location tab, FixOps has inserted data for each car type standing at those Industries. The cars authorized to service the Industries from the PCI Interchange will each travel direct from Interchange to Industry. The cars authorized to visit the Industries from the two Staging yards (represented by a Tilde in the Staging column) will all travel via the EY Class Yard. The trains required to make these car movements will be set up separately when FixOps reviews this data and builds the Sequence grid. You can right click on any row and use the context menu to add new rows to the grid, delete any unwanted rows, or duplicate and edit existing rows to add new loadnames or modify the car types. When you are satisfied with your Industries grid and are ready to move on Click OK in the TrackLayer Alert to generate a Train Sequence for the layout. |
|
Sequence GridFixOps then generates a train Sequence grid. In this example FixOps has provided two separate fast freight trains to serve the EY class yard, the first uses the local ED2 switcher to pull cars from EY class yard and exchange them for replacement cars from the ENY staging yard in the east. The other operates with a dedicated engine, ED96, from WC staging yard in the west - delivering cars to the EY yard and pulling cars from EY for return to WC in the west. All local traffic is handled by three trains headed by the ED2 switcher. This Sequence is viable but neither of the fast freights operate as through trains connecting WC to ENY. To remedy this the Sequence grid needs to be edited. Engine ED96 is parked in the WC Staging yard which means the eastbound train needs to run first. The StartAt position in row 1 was changed from ENY to WC (retaining the ENY EndAt position), the engine on row 1 from was changed from ED2 to ED96 - once the first train has run this engine will be left at ENY ready to run Train 3 back to WC. Then we changed the StartAt position in row 3 from WC to ENY (retaining the EndAt position as WC). These changes are enough to ensure that trains 1 and 3 operate as separate eastbound and westbound services between WC and ENY, calling at EY to set down cars for the local trains to distribute, and to pull cars waiting at EY for return to the appropriate destination Staging yard. On completion of the editing Click OK in the TrackLayer Alert to continue. |
|
XO CarsFixOps will review any Sequence grid changes and update the XO cars grid data. ED2 operates from Location ET to run the local trains, it does not need a route because it always returns to its own spot. ED96 needs to lay over between trains at ENY so it requires a route to transfer it to ENY with Train 1 and return it to WC with Train 2. FixOps has already applied this route for us. Editing the XO Cars grid should be restricted to the Route, Shipment and LoadAt columns. all other columns are updated automatically by the Switchlist generator. |
|
SwitchlistClick OK in the TrackLayer Alert to generate the first Switchlist and save the Ops layout to the original folder. The Switchlist is for information only and can't be edited. |
FixOps is completedYou can review a summary of all the steps used by FixOps to build the Ops sequence in the Schedule window. If you want to edit the information on the Intro tab you can do this from the Edit Intro option on the development menu of the Advanced Tab. Click OK in the TrackLayer Alert to operate your layout. |
THE TRYOPS SUBROUTINE |
|
Launching TryOpsTryOps can be used to test any Advanced Ops layout through a series of consecutive switchlists equivalent to five times the number of rows listed on the Sequence tab. |
TryOps is launched from the Script Command Prompt dialog. |
TryOps ReportTryOps starts by saving a copy of the current layout to enable its recovery after testing. This process is non destructive and will restore the original layout. The Switchlist Robot completes the first Switchlist and the next Switchlist is prepared. This process repeats until the subroutine has checked through five times the number of switchlists included in the Sequence grid. In the unlikely event that a problem is encountered the process will stop to enable the error to be investigated. If errors are found they will likely relate to a shortage of storage space in Staging or Class Yards. These errors are best fixed by increasing this storage space, or by reducing the CarsToPull value in the Sequence grid to shorten the trains. When you are satisfied that the Sequence is viable, Click OK in the TrackLayer Alert to close TryOps and reload the layout. |
ASL SUBROUTINE |
|
ASL (Advance SwitchList) is a subroutine to advance a train sequence through a single switchlist, or through a fixed number of Switchlists. This repositions the unspotted cars ready for starting the next switchlist in the sequence. Advancing through the switchlists allows a developer to test that his Ops Plan will continue to function properly many steps ahead of the current task. The ASL subroutine makes use of a Script Command which completes the current switchlist by moving all the unspotted cars to their next planned destinations. This is followed by a further Script Command to Generate the Next Switchlist. Testing a layout with ASL enables the future car positions to be reviewed and ensures that the yards and industries have sufficient capacity to accept your cars through many cycles of the Train Sequence. If any of the interim switchlists can't be completed for lack of track capacity the process will terminate and highlight the problem for investigation. To spot the remaining unspotted cars on any switchlist and generate the next switchlist just type ASL at the Script Command Prompt and click OK. If no parameter is supplied the layout will advance by just one switchlist. To repeatedly spot the unspotted cars and generate the next 100 Switchlists type ASL 100 at the Script Command Prompt. To monitor cars passing through a particular location you can select the area you want to watch before launching ASL. |
To monitor the progress of an individual car over multiple Switchlists type ASL 50 XM123 (use your own car ID) at the Script Command Prompt and click OK. As each Switchlist progresses the layout view will keep zooming to the present position of the specified car. When ASL is running you can press the [END] key on your keyboard at any time to terminate the process and examine the car positions and the data. To restart just reenter the appropriate ASL command at the Script Command Prompt. ASL can also be useful when your TrainPlayer layout represents a physical layout in your basement. Just use the TrainPlayer version of your layout to generate the next switchlist from the current positions of your virtual cars. You can make paper copies of your switchlists by right clicking in the Switchlist grid, choosing "Select All", right click again and select "Copy". Then paste your clipboard into Notepad or Excel ready for printing. |
QUESTIONS - OPS CENTRAL |
|
How do I add or delete rows in the Industries and Sequence grids? Right click on the row number. Select 'Add New', 'Duplicate' or 'Delete' from the context menu. How do I rearrange the order of my trains in the Sequence grid? Right click on the row number. Select 'Move row up' or 'Move row down' from the context menu. Clicking Add Row in the Industries grid adds a row at the top of the grid (not where I clicked). I can't move the new row. Where the row is displayed is entirely dependent on the Sort Order of the grid. You can't reorder the Industry rows but you can sort the grid on any column. New rows are always allocated the lowest unused row number (replacing any deleted rows). Each row relies on having a fixed row number as this needs to be continuously referenced by the program in order to find and select data from any cell on the row. Why does the Industries grid offer 'Copy' and not 'Paste'? You can't paste a complete row into this grid and must use either the Add Row or Duplicate options to insert a completely new row (see previous answer). The Copy function is provided to enable you to highlight and copy any rows or cells to an external program such as Excel or Notepad for analysis. Why can't I minimize the Switchlist to free up screen space? This is not necessary, you can quickly close the Switchlist (or any grid) by clicking OK or clicking the OC grid toolbar icon. When you click the OC icon again the Switchlist will reopen exactly where you left it, or it will be updated if the situation has changed while it was closed. Clicking on the Load column in the Cars grid opens a combo of loads, why is this too narrow to see a full description of available loads? The combo menus open at the same width as the column which contains them. So if you extend the width of the Cars>Loads column the combo will be wider. However the cars menu plays no part in load selection for AO, loads for AO Waybills are sourced from the Shipment column of the Industries tab. My Industries grid has Viain and Viaout Class Yards for each car type and product but only a Tilde in the Staging column. Does it increase the probability of a car being pulled from Staging for the Industry if I indicate a specific Staging area? Yes, because it will be less likely that the vacant spots at your specified Industries will have already been reserved for a car traveling from one of the other Staging areas. The tilde (~) says the Industry can accept cars from any Staging Yard but often you will want a commodity to come onto the layout from a specific direction. If you add a row to the Sequence Tab, clicking the 'Move Row Up' function, doesn't work on the bottom row. It will only move a row down. Gray-out is also reversed for what Move Up should be. You will only see the 'Move Row Up' option grayed out on the bottom row if the grid has been sorted on one of the other columns leaving Row #1 at the bottom. It is the grid row numbers (not the display order) which dictates the order in which the trains are run. So if a two row grid is sorted in reverse order only row number 2 can be moved up to take on the new number 1, but it will appear to move down because you have the grid sorted in reverse order. Row #1 will always be the first train to run even if it is at the bottom because you sorted on another column (or reverse sorted the left column). |
"Zoom-to-Industry" would be nice (at least on the Switchlist) since who can remember all of those codes? Right click on any track label in the Switchlist grid and select 'Zoom to Track'. This works in most grids as does 'Zoom to Car'. Why does a track label reference remain in the Industries grid after I remove the label by editing Track Properties? Correct, removing a track label doesn't always apply to a single track, segment, or you might be deleting the label with the intention of placing it elsewhere. You would feel pretty sick if TrainPlayer deleted all the information you had painstakingly entered. Note that you can relabel tracks by changing the label in the Locations tab but the data on the Industries tab must then be edited separately because you might want to retain it for modifying to a different industry. It would be helpful if the Visits column (Sequence tab) had a dropdown selection box (easier add/delete) -- who can remember all these codes? Not sure I can agree this would be helpful, it is much quicker to type a comma delimited list than it would be to keep adding codes to a list individually from a drop down combo menu. In the visits tab you are planning a route for the train (not the car). These locations in the Visits lists on the Sequence tab are used to decide where cars are picked up and set out. If you design the layout and choose your names and labels carefully it is straightforward to think of the names (labels) when planning a route from DEnver to GOlden to Blackhawk. On the Industries tab, does "Staging" have a meaning for received (R) cars?. Yes, waybills are only applied to cars in the staging yard they start from, the waybill includes the route used to dispose of the car following its unloading. We still need Staging in the grid to tell the waybill generator how to dispose of the car. Tilde (~) does not mean blank, it means you can use any staging yard as the car source. Empty cars will be directed back to their source yard. I am still not clear about the Staging field for an "R" designation.
It is both. There is no difference in the handling of an R row and an S row. For an R row the car leaves staging loaded and after the industry returns to staging empty. For an S row the car leaves staging empty and after the industry returns to staging loaded. There is no difference to the logic other than where the car is loaded and unloaded For an 'R' row the Staging column represents the Staging yard which supplied the load and this is also the RET (Return Empty To) staging yard. Have there been any discussions about adding a "frequency" column (and related functionality) to Industries? Frequency has little meaning when the Sequence can relate to the trains that run in a single day OR to trains that run in a week. The frequency of traffic to and from an industry is controlled by the number of cars originally placed for pulling and the number of cars which you choose to make available in staging to serve the industry. The Pull Value and number of other industries waiting for cars also have an effect on how long it takes to locate a replacement car for an industry. |
QUESTIONS - CAR PROPERTIES |
|
Your User Guide says "Only the cars standing at these locations which also have a destination matching the EndAt location will be highlighted for pulling by the specified train." What is meant by "cars having a destination"? Is that the car's Staging column entry in the Industries grid? NO. All cars have a destination property (Dest) on the Car Data tab, this changes as the car progresses along its individual route. The car may also have a list of subsequent destinations in the Car Note field. When a new Switchlist is generated all cars on the layout are checked, if the new Active Train visits the location of a particular car, AND visits the next destination the car is routed to, then the waybill of the car is advanced, its next destination is added to the Car Dest field, the label is switched on and the car is added to the current switchlist. For cars in Staging a new Waybill is created if the Active Train starts from that location AND visits the first destination on the car's planned route. When placing cars on a layout is there a way to search for available Cartypes by AAR code so as to avoid mixing different Tank car types? The easiest way to populate your layout with "specific" AAR codes is to select them from the car chooser. Use the context menu to set List View in the center pane and sort the list on the AAR code column. This puts all your tank cars together already sorted into sub types. Alternatively you could just select a suitable image from the Car Inventory bar and then use an AAR Override code to change the mixed classes of Tank Cars to a common type. This feature permits you to place a TA car with a suitable image onto the track and give it a TM alias applicable only to the current layout. You can also use your own custom codes in this override box to allocate certain images to specific Industries and use this code in the Industries grid. |
It would be great if TrainPlayer could know the reporting mark and car number for a given car. Keeping in mind that car number is alphanumeric as in the case of MOW cars (AV-69035, for example). You can already put reporting marks onto a TrainPlayer car. The car label field is editable in the props dialog and can be anything you wish. So you could edit the label for a box car from say XM82 to AX-69035. Then it would always appear on the tooltips and AO waybills as your customized label for that car. You would need to regenerate the first switchlist on an AO layout after adding the reporting marks to the car label field. The original number is retained elsewhere as the unique car ID (or tag) and the AAR code is also retained in a separate AAR field which remains with the car and will still be used by AO for allocating appropriate loads. Alternatively you can add a custom car property by adding to the string in the props box of the Car Data tab. Mark=AX-69035 these props are delineated with the vertical bar or pipe character |. Then you could set up Junction Actions triggered by any car to read and report the data in any format you wish. Previously I could apply a closed car load to a covered hopper or box car by clicking the choose by name option on the load menu but that option is greyed out now. Since the release of TP7 you can use any loadname of your choice on a closed car. Just right click the car, select Load, then New and type in the name of your choice. This will appear on the recent menu the next time you want to load a closed car. The original closed car loads file is no longer needed and any text loadname is acceptable for a closed car. |
QUESTIONS - TRAFFIC MANAGEMENT 1 |
|
My staging yards are just that. The terminus towns each have a Staging and their own Class Yard in town. Why do I have difficulty generating traffic from terminus Class Yards to their local Industries? With AO you can't generate new traffic from Class Yards, these are solely for classification and passing on cars to other trains. All waybills are generated in Staging when the particular Staging yard is the StartAt position for the active train. A train can still StartAt a Class Yard but will only pull cars with existing waybills that have already been deposited there by a previous train from Staging. How do I deal with an industry like a Team Track that handles more car types or loads than it has capacity for? If a team track only takes a half dozen cars and you need it to handle additional car types you only have to add additional rows for the types that won't fit on the track to your Industries grid. The system will not send cars to your Team Track unless a vacant spot has been created by a pulled car. This is why a pulled box car is not automatically replaced with another box car. The car which is selected to fill the vacant spot will be of a type that the industry is authorized to handle but not necessarily of the type that was placed in the industry to start with. So if you have an Industry which only has a spot for one car but takes three different car types, you place one car on the spot, set the Vacant Spots field on the Locations grid to 0, and ensure you have matching rows for all three types in the Industries grid. There is a feeble attempt to differentiate the levels of traffic to and from the industries. For example; a propane dealer which should receive one car load per week versus a grain elevator that may ship three car loads a day. Each location is apt to see a similar level of traffic as AO attempts to keep the sidings full but not over full. If your Propane Dealer uses a specific car type then you only need to ensure the industry uses a car with a customized AAR override code and only a single car is placed at the Propane Dealer prior to generating the first switchlist. If there are no other cars of this same custom type on the layout the Propane Dealer will be unable to receive any further traffic until after the initial car has been pulled and returned to Staging. The Grain Elevator which had perhaps three cars placed prior to set up and several more cars of the same type available in Staging will be able to receive replacements for each car pulled from the Industry. Why is there is there no provision for traffic between Industries on a layout? It states in the manual that AO is only designed for traffic between Industry and Staging. The handling of XO Dedicated Service cars was designed for light Industry to Industry traffic. There are no hard and fast rules as to which tracks can be defined as Staging and which as Industries. The Staging classification can just as easily be applied to a Quayside transfer yard as to an off stage yard, and in the right circumstances it can also be applied to selected tracks within an Industry to feed other Industries. |
Why is there is no way to balance loads to and from each industry? As an example; a sawmill. It is unreasonable to think a sawmill will receive the same number of carloads of logs as it ships lumber or wood chips but AO will not make that distinction. AO is unable to read English, so it can't interpret what type of industry the traffic is being generated from, only the designer can do that. This is why the initial placement of cars in the right proportions is so important to balancing the traffic patterns. In the case of your sawmill example, if the log loads are running as XO block trains they will be delivered according to your settings in XO cars grid so that part of the process is totally under your control. If the cars are not XO and are relying on the waybill generator then the number of outgoing lumber loads depends entirely on the number of appropriate cars preplaced at the sawmill, the number of cars set as the pull value, and the number of replacement cars available on the staging yard track that feeds the sawmill. My AO settings are for 5 cars and 2 to 5 bridge cars, But I just got a switchlist with way more than that, about 30 cars! In one sense I understand because I created an industry that is pulling most cars on the layout towards it, but I thought AO would manage it in bits. The Pull Value doesn't relate to the number of cars on a switchlist, it is a reference to the number of cars that will be "pulled from the industries" listed in the visits column for a single sequenced train. It isn't a reference to the total number of cars to be hauled by your train. If your sequenced train starts and ends in Staging then a similar number of inbound cars will also be selected for delivery to your industries. So that at the very least a pull value of 5 will mean 10 cars to move on even the simplest of layouts. Bridge traffic is extra to the pull value as are XO car movements. So if you are in the steam age you can also add engine, tender and caboose to the Switchlist. Any cars laying over in Class Yards which are added to your train are also additional to the calculations because these cars were already counted during the round that delivered them to the Via yard. This figure can also be high on an early switchlist. If you preplaced a lot of cars in the yard most of these will be pulled for return to Staging. I get the point about Class Yards but I still don't understand why so much traffic goes to Staging and not to local Industries. When you preplace cars at an Industry the 'First Switchlist' algorithm seeks out a suitable waybill that could legitimately have brought them to the current location and modifies the route to show that the next leg is to start out back towards Staging. When you preplace cars in a Class Yard the algorithm can't detect whether you intended the cars to be travelling inbound to the Industry, or outbound to Staging. There would be several technical problems regarding keeping track of vacant spots and the queue of cars to pull if we were to assume that some, but not all, of these cars were heading inbound for the Industries. It is therefore assumed, for the first Switchlist, that ALL cars preplaced in a Class Yard (loaded or empty) are on the return leg of their journey towards Staging. This will only ever affect the first train to pull cars from the Class Yard. Subsequent trains will find inbound cars in the Class Yard which have been delivered from Staging. To overcome this limitation it is only necessary for the designer to ensure that the Train Sequence has an inbound train from Staging to the Class Yard which precedes any train operating between the Class Yard and the Industries it serves. |
QUESTIONS - TRAFFIC MANAGEMENT 2 |
|
Attached is a file where Locomotive ES129 just needs to get moved into its engine house (LE) for sequence 5 to terminate and a new switchlist be generated. My problem is that I would like ES69 and its Passenger car P306 on track LY to get selected, and they do. But ES83 and cars P374 and P154 are also selected and I don't want that! Your XO car selection is working properly. Any engine stored at LE will be selected if the Active Train Visits or StartsAt LE and also Visits or EndsAt a location mentioned on the car route. Here both engines meet this criteria hence both are selected. That is both ES69 and ES83 are routed to StartAt LE and both Visit LP1 as part of their routing, so both engines are selected. The best way to prevent this would be to relabel the LE storage tracks with individual labels, LE1, LE2, LE3 etc. and only use the appropriate code in the Sequence list for the train they are intended for. Once the engine tracks are relabeled the appropriate track label should be included in the Visits list for the train it must run on. So if ES69 and its tender were stored in LE2 instead of LE. The Train 6 Visits list would also use LE2 instead of LE making this track exclusive to this train. The route for ES83 and its tender would use LE3 instead of LE and the Visits list for Train 10 would also use LE3, again making this exclusive. The same principle applies to the three coaches sharing a track at LY. Any XO coach standing at LY will be selected if the Active Train uses LY and the train Visits or StartsAt LY and also Visits one of the other locations on the car's route. So these coaches also need storing on separately labeled tracks within the yard, or on separate segments of the same track, each using a different Location label to the yard itself. These new storage locations should be XO reserved tracks with unique labels to enable the appropriate degree of control in the Sequence Visits list. I have a team track or freight house for instance. Unless I want that location to ship or receive only a single commodity or two, that's going to make for an inordinate number of waybills for that location. NO this is not correct, the large number of grid entries (not waybills) for the freighthouse will not increase the traffic to this industry. It does not need balancing out by increasing the grid entries for industries which only handle a single commodity. The number of cars preplaced at the industry manages the volume and flow of traffic. So if industry A only ever handles one car type and a single commodity but is set up to handle four cars; while industry B is also set up for 4 cars but handles 10 different commodities (entries in the industries grid). Then these two industries would handle exactly the same amount of car traffic, but you would see a lot of A's loads while the individual loads for B would be much less frequent. |
I want the yard switcher to take the cars deposited at ARR and sort them as required to LZ, PZ, GZ or OZ. Would I set that up as those cars "Visiting" ARR rather than making it a Via location? NO, The Via location refers to the movements of an individual car, whereas the Visits list refers to the places a particular Sequenced Train is authorized to call at. For a car to be selected to move it must be located at a place the train is authorized to StartAt or Visit, and (if at StartAt) its destination must be in the train Visits list (otherwise the car stays where it is). Similarly if the car is situated at an industry included in the Visits list then its destination must also appear as a Class Yard in the Visits list (or as the EndAt position). Cars follow routes on their Waybill, whereas trains follow routes defined in the Sequence tab. Only when both car and train have compatible routes will the car be selected for moving. I have run this layout over 70 SLs without issue but I am not happy with this XO hopper train: I believe the routing should be either "NY,EY,E08,EY" or "NY,EY,E08,EY,NY". But as soon as I run FixOps it changes it to "NY,EY,E08,EY,E08". So after the first 3 times it is called, it ends up stopped at E08 because there is no way for it to go to NY. Your cars are at E08, they need to travel empty to EY on Train 2, then move to NY for loading onto Train 1, then travel back to EY on the next Train 1 and return to E08 on Train 2 to get back to the start position. So you need "EY,NY,EY,E08" as your route. Imagine you are a hobo climbing onto the car at E08, where could you get off before you end up back where you are now? You were trying to send these cars to NY first but there is no engine in the Sequence to do that from E08. FixOps has added the final E08 because the car must end up where it stands now. The problem was that you had placed E08 in the middle of your route. After E08 the first stop is EY so that must come first in your route, then it is just a matter of riding along on the car. After changing the XO cars grid route to "EY,NY,EY,E08" you must run Generate First Switchlist again. You can check this route out then by zooming to E08 and running ASL 50 from the Command Prompt and/or follow your block around the layout and watch it wait for the appropriate trains with ASL 50 LO25 |
QUESTIONS - MISCELLANEOUS |
|
I have done all this on the fly and changed so many things that I would like to reposition all the cars, clear out their AO instructions and start over. It is not clear to me how to do this. Any advice? The required process is as follows.
Is AO a simulation of model railroading operations, or a simulation of real railroad operations? They are not the same. AO is intended to be Model Railroad operations. It uses two separate systems because some tasks are more suitable to Card Waybill ops and others such as block trains and passenger service are better fitted to Card Order operations. However as model railroading seeks to replicate real railroading there is an element of both involved. The main difference to both model railroading and real railroading is that we only run one train at a time which is a restriction placed on us by TrainPlayer. So essentially we have turned up in a RR owners basement and have been allocated a train to run, we are concerned only with completing the task we have been allocated, although all the other cars on the layout are also tasked for subsequent trains and can be checked by peeking at their waybills, or at the columns on the cars tab. Only the cars in staging which have no labels are not yet tasked and these cars will not receive their waybills until the train which is to move them becomes "Active" in the Sequence. What if I want to complete a switchlist, move a few cars around, add and delete a few here and there and generate a switchlist to see how that works? I'm afraid that would be an absolute anathema to what we have tried to achieve with AO. If you start adding and deleting cars you are deleting cars which are already on route and which contain critical waybill data, you are also adding in cars which don't have any ops data. This would be a recipe for disaster unless you were to re-edit your Ops Central grid and generate a new first switchlist every time you make a change. I'm not completely understanding this, on the Locations tab, does capacity minus cars on spot equal VacantSpots? Why not just use track capacity? Industries need to be populated with cars in the proportions you want to see them used, more cars means a busier industry. Vacant Spots refers to the number of additional cars the industry can cope with over and above the number of cars you originally placed (default value 1). If you don't leave at least one Vacant Spot per industry you will need to modify the Vacant Spots value in your Locations grid for the affected industry to 0. Capacity is equal to the number of cars originally placed plus the defined Vacant Spots value. Calculations involving measuring cars would require considerably more data to be processed, this was trialed during early development but we found it far more efficient to count in terms of available spots. Bear in mind that the longest siding at a particular industry may be at the industry that needs to handle the fewest cars. By defining how many cars the industry should handle we keep the traffic weighting within the sphere of control of the individual layout designer. As mentioned previously Re-spotting seems to be left out. Re-spotting should not be necessary under the AO system because industries don't order cars or loads without first having a spot available to accept them - unless an occupied spot is already scheduled for clearance by the train bringing in the replacement car. You can temporarily respot a car anywhere on the layout but its label will not be cleared until it reaches its assigned destination. |
Some errors from 'Test Layout' are not explained, eg: "XO Cars: car ED40: Invalid track label". Does that mean the track where ED40 is standing has a bad label? (this only seems fixable by editing the rrw). An invalid track label on an XO car could be a non existent label entered in a route field but it might be more likely to mean that the car has been placed on a track that has no label at all. Running the FixOps subroutine should give you a better explanation of exactly what needs doing to fix this problem. For layouts with more than one train, the Sequence seems to advance upon clicking the "new switchlist" button, rather than advancing upon completion of the current switchlist. To me this feels like forced regimentation. Railroads operate to timetables, the Sequence is the nearest we can get to that at the moment with the TrainPlayer caveat that we can only drive one train at a time. As layout designer you are free to decide whether to have one, two, three or twenty trains. If you are interested only in the overall picture then set up the layout for one single train (you can still use as many engines as you wish). Or if you want to see a day or a week's sequence of trains then set it up that way, keep the passenger service separate from the fast freights, keep the peddlers separate from the Class 1 trains, and route your cars through classification yards so they have to transfer to other trains to reach their destinations. You can easily simulate the operating pattern you are asking for by only setting up one train from and to each staging area. If you authorize the train to visit every industry and class yard on your layout then every car selected to move will display a label and you will be free to complete the job in any way you wish. When I start an ops session, I want to see the whole layout, to get a feel for the scope of that days work. For me at least zooming up on something when a switchlist is generated is the opposite of that. I guess some of us like it the other way to concentrate on the task in hand and see what the train crew see. The map window (extreme right Ops toolbar button) gives you a plan view of the whole layout. To see the whole layout when it opens then View "fit to window" in your Master Script should do the trick. Staging and class yards and interchange tracks all have a real world capacity, but no entry in AO. Correct, but if we limit the capacity to fixed amounts at both ends of a run, Staging and Industry, we can very soon find ourselves in a situation where no traffic can move at all. We could be unable to pull a car because the Staging track it needs to go to is full, while also being unable to deliver a car because the relevant industry is full. In the real world the whole continent is available to accept the cars sent to what we perceive as staging. So we should design our layouts with enough staging capacity to take what is placed there plus the number of cars set as the "Cars to Pull Value", maybe a little more to be comfortable. In practice as inbound and outbound car counts are roughly matched there is unlikely to be a problem if a little extra capacity is available. We therefore assume that Staging, representing the rest of the national network has infinite capacity and if you put too many cars on your layout for it to cope with then you quickly find out and can usually add capacity in staging more easily than at an industry. It is industries that generate the inbound traffic and empty car orders and we need to be able to ensure that they can accept the cars that we send to them otherwise the switchlists can't be completed.
|