TC插件/自動尋路
簡介
thumb|right|Setup of 3 destinations and a switcher sign to route trains between them
我們可以通過TC插件的switcher、blocker和destination控制牌的相互配合,實現一個複雜的鐵路系統,讓不同列車前往不同的目的地。在本頁面中將介紹自動尋路系統的工作原理以及配置方式。
TC插件可以在路網中設定路徑點,同時通過列車自身的路徑點屬性將列車導向不同的方向。配置路徑點的信息請參閱此界面。在路網中,道岔以及路徑點的位置被稱為「節點」。為了避免列車衝突,可以使用路阻來限制自動尋路的方向。
配置方法
設定路徑點
Start by placing down destination signs with a name for the destination on the third line. The fourth line can be used to set a new destination to go to once a train goes over the sign, but can be left empty.
Designate the switched nodes
Places where the track should be switched need to have an always-powered switcher sign placed. Now when a train moves over it that has a destination set, a route will be calculated and then the track is switched.
Enforce one direction
When it is desirable that trains only ever go in one direction over a piece of track, an always-powered blocker sign can be used. This is useful when having two tracks side-by-side, each going in opposing directions. The path finding system will automatically ignore paths that are blocked by blocker signs.
Test it out
Place down a minecart on the track, and use the Destination command to set a destination:
/train destination [name] /train destination output
Now give the minecart a push towards the switcher sign, and observe how it will automatically switch the track to send the train towards the destination. You can change the destination again and send it to the switcher again. Continue to experiment with multiple switchers, blockers and destinations.
If you run into a problem where the switcher appears to make a mistake, use the Reroute command to force a recalculation of all routing information:
/train reroute
It is also possible to use the property sign to set a destination:
Advanced
Once the basic system is understood, there are some more complicated features to discuss.
Debugger
The plugin offers a debug stick with which path finding information can be displayed. Use the stick item to click on rails to show information about the route(s) that can be taken. Sneak (shift) while clicking performs a reroute, which recalculates the track reachable from where you clicked. If you have multiple smaller rail networks, this can be more efficient than executing the global reroute command.
All destinations
Use the following command to get a stick item that displays all destinations reached from a given track:
/train debug destination
The track clicked is followed until a node of the track network is found, after which all routeable destinations are listed. For every destination the total distance to it is listed, and particles are displayed leading into it. If you find that a certain destination is not listed that should be, you can move further along the track clicking occasionally to find where the break is.
A single destination
Use the following command to debug a specific destination:
/train debug destination [destination]
Now when you click on the track, particles are displayed what route is taken to reach the destination. This is useful when debugging a specific destination so no particles are displayed for routes and destinations that aren't relevant to you.
Route Manager
Normally only one destination is set at a time. It is possible to set the next destination to go to on the destination sign itself, but that means you can only have one possible route. With the route manager a list of destinations to visit can be configured, and then applied to trains. Trains will then go down this list, advancing it every time they pass by a destination on it.
Commands
First, edit a train, then use the following commands to set a list of destinations:
/train route set [destination1] ([destination2] [destination3...]) /train route set outpost hillfort dungeon
To add additional destinations to the existing route, or to remove them, use these commands:
/train route add [destination1] ([destination2] [destination3...]) /train route remove [destination1] ([destination2] [destination3...])
You can then use the destination command or property to start the route at a desired destination. Otherwise, the route is started from the beginning the moment the train hits a destination sign. To inspect the route of a train, use the base route command. The current destination the train has is highlighted green.
/train route
Persistence
The route of a train can be saved globally under a name so it can later be applied to other trains instantly.
/train route save [name]
To load a saved route, this command can be used:
/train route load [name]
Alternatively, it can be done using a property sign as well: