A train runs the current ATC command once it receives it, including delayed instructions. If the train receives a new command, the current command is discarded.
Spaces can be inserted into commands as needed and are ignored.
# simple commands:
S<[0-9]+ speed or 'M'>
Set target speed of train to <speed>. Accelerates if slower, rolls if faster. 'M' means maximum speed.
Execution of command continues immediately.
B<[0-9]+ speed>
Brake until speed is reached. If faster, apply brakes, if slower, do nothing.
Execution of command continues immediately.
Examples:
SM : accelerate to maximum speed
S0 : roll to stand
B0 : brake to stand
S0B3 or B3S0: brake to 3, then roll to stand.
W
Wait until S and/or B commands reached the desired speed before continuing execution.
D<[0-9]+ time>
Delay: Wait for time seconds before continuing execution.
R
Reverse: change movement direction of train. ONLY WORKS WHEN TRAIN STANDS, else no-op.
Use B0WR to definitely change direction.
Examples:
B0 W R D10 SM
Subway train stopping in dead end station and returning in opposite direction
All door commands are relative to the arrow direction, so if a train drives to opposite arrow direction, L will open its right doors from driver perspective.
Execution continues immediately, there is no way to wait for all doors to be opened/closed.
Example:
B0 W OL D10 OC D1 SM
Subway train: stop in station and open doors, depart after 10 seconds.
Temporarily switch the train to "Autocouple" mode and wait for coupling.
This command makes the train continue at its current speed until it hits another standing wagon or train. Then, it couples to this train and ATC command execution continues.
ATC controllers that are configured as 'static' or 'mesecon' are persistent over mapblock unloads and will even command the train when the mapblock is unloaded. This is not possible with digilines since these do not work in unloaded mapchunks.
# LUA ATC controller (in development)
The LUA ATC Controller will operate by using LUA code. All operations shown above will have a function equivalent. Additionally all LUA ATC controllers share an environment and setting signal and switch status will be possible to allow for complicated railway systems/fully automated subways a.s.o.
Also planned:
- digicompute add-on to allow computer access to the ATC environment (railway maps... ... ... ... ...)