Advtrains Train Controller
This mod provides a rebindable remote control for use with the advtrains mod.
How To Use
Binding To A Train
Punch a locomotive with the controller to bind it to that locomotive. The controller will remain bound to the locomotive specifically, not the train as a whole, enabling the user to retain control of the locomotive during shunting when the train id may change.
Note: the controller will only bind to locomotives, i.e. anything with is_locomotive = true
in the advtrains registered definition.
Rebinding To A New Train
To rebind the controller to another locomotive simply click the Bind To New Train
button. The saved locomotive will be erased from memory, ready for the user to rebind as above.
Train Information
The External Display
, Internal Display
, Routing Code
and Line
fields are read from the bound train when the user punches to use the controller. If any of these fields change between reading from the train and when the user clicks Update Train Info
then the changes made will be written to the train, overwriting any changes that the train may have accumulated in the meantime (e.g. Inside Display text being changed by a station track.)
Train Control
The Set Speed
field is also read from the train when the user uses the controller, except that it will read the train's actual speed at the time. The speed will only be sent to the train when the Confirm
button is clicked.
The Send ATC
field performs exactly as if the train passed over an ATC track section in the direction of the arrow. The user can use this to pre-program manoeuvres instead of constantly returning to the controller. See the documentation for the ATC Controller for commands and syntax. The command is immediately sent to the train when Send
is clicked and not kept in memory across controller uses.
The Disable ARS
and Autocouple
checkboxes also will be read from the train when the user uses the controller. Autocouple
will show as ticked if the train has been set to couple by either the Cpl
ATC command or set_autocouple()
LuaATC command. Manually ticking the checkbox has the same effect as set_autocouple()
. Disable ARS
requires the advtrains_interlocking
sub-mod to be enabled to be effective, and has the equivalent effect as the A
ATC command and atc_set_ars_disable()
LuaATC command.
Priv Requirements
Due to the ability to control a train from anywhere on the server, the train_admin
priv is required to use this tool.
Dependencies:
- advtrains
- default & advtrains_luaautomation for craft recipe only (not required for the code to work)
Licenses and Attributions:
This work is protected under the following licenses: - Code: MIT (Maverick2797) - Artwork: CC-BY-SA-4.0 (Maverick2797)
A copy of each license is included in the LICENSES
folder
Thanks to yw05 for the inspiration from the original train_remote mod which was written in Lisp.