Difference between revisions of "TrainCarts/PathFinding/zh"

From BergerHealer Wiki
Jump to navigation Jump to search
(Created page with "因为插件在自动寻路时会设定最短路径,但有时候这个路径会造成进路冲突。举个例子,如果希望列车在复线轨道上只朝一个方向行...")
Line 35: Line 35:
 
=== 设置单行线路 ===
 
=== 设置单行线路 ===
  
<div lang="en" dir="ltr" class="mw-content-ltr">
+
因为插件在自动寻路时会设定最短路径,但有时候这个路径会造成进路冲突。举个例子,如果希望列车在复线轨道上只朝一个方向行驶,可以使用blocker控制牌,让插件计算路径时把可能造成反向行车的路径排除在外。
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.
+
File:Pathfinding_Blocker.png|在第一行写入 ''[+train:left]'' 可以阻挡左侧开过来的列车,只让列车从右往左走。同样地, ''[+train:right]'' 就是让列车只能从左往右走,阻挡右侧开过来的列车。
<gallery mode="slideshow">
 
File:Pathfinding_Blocker.png|With ''[+train:left]'' trains coming from the left are blocked, only allowing movement from right to left. Similarly, ''[+train:right]'' and other directions can be used.
 
 
</gallery>
 
</gallery>
</div>
 
  
  

Revision as of 15:40, 30 December 2021

Other languages:
English • ‎中文 • ‎中文(中国大陆)‎

« 返回上一页


简介

我们可以通过TC插件的switcher、blocker和destination控制牌的相互配合,实现一个复杂的铁路系统,让不同列车前往不同的目的地。在本页面中将介绍自动寻路系统的工作原理以及配置方式。

TC插件可以在路网中设定路径点,同时通过列车自身的路径点属性将列车导向不同的方向。配置路径点的信息请参阅此界面。在路网中,道岔以及路径点的位置被称为“节点”。为了避免列车冲突,可以使用路阻来限制自动寻路的方向。


配置方法

设定路径点

首先将destination控制牌放置在轨道下方,在第三行写上这个路径点的名称。第四行可以为经过的列车设置一个新的路径点(这一行可以留空,列车经过此路径点之后destination属性清空)。


设置新的道岔节点

在道岔处放置一个一直激活的switcher控制牌,TC插件会将道岔识别为路网节点。当一列火车驶入道岔时,插件会根据线路情况自动计算出一条路径,并按照此路径切换轨道,把列车引导到对应的轨道上。需要注意的是,这个节点和现实中的道岔并不完全相同。如果给列车设定的路径点在驶入方向的后方,列车会被“弹回去”。


来试试吧

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:

Signtemplate.png
[+train]
property
destination
outpost


高级功能

Once the basic system is understood, there are some more complicated features to discuss.


故障处理

Displays the destinations with a distance to them

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.


所有路径点

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.


单一路径点

File:Pathfinding Debug Destination Specific.png
Displays the precise route to one 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.


路径管理

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.


指令

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

File:Pathfinding_routes_set.png

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

File:Pathfinding_route_info.png


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:

Signtemplate.png
[+train]
property
loadroute
myroute