openttd吧 关注:3,023贴子:10,842

OpenTTD铁路/信号灯简要教程【更正版】

只看楼主收藏回复

鉴于吧内部分老教程因不可抗力暂时无法访问,本人决定自己写一篇尽可能简要、基础向的铁路/信号灯教程,以方便萌新掌握游戏的一些基本操作。
由于本人水平有限,有不对的地方欢迎指出,有更好的方案随时欢迎跟帖。想到哪写到哪,如果不幸TJ了欢迎接力或另开新帖。
本楼主要更正了之前由@abcTom123 发现的一些错误,并补充了一些内容,不能编辑帖子也真的是没办法……
那么重新开始~


IP属地:广西1楼2019-08-19 22:57回复
    首先,让我们先以最左边的这种最基础的“通过信号灯”开始,这个灯功能最基础而原始,但通过它能帮助你更好地理解OpenTTD信号灯的运行规则,以下描述如无特别说明均是先以这种灯为例。

    如果是最近才接触这款游戏的朋友,您可能是从第5、6种灯“路径信号灯”开始玩的,如果是这样的话,这里也请暂时忽略他们。“路径信号灯”有高效实用的智能判断功能,但对于没理解基本机制的萌新来说,有时会难以理解路径信号灯的工作逻辑,你很可能会纳闷它们为什么有时候让车通过了,有时候又没让车通过,有时候还会有车反向通过,有时候又没有……
    而“通过信号灯”只要前方“区间”内有车,则入口亮红灯,判断方式简单粗暴,一看便懂。所以,为了将来能随心所欲地设计路轨,还是让我们先从简单的开始一步一步来吧!


    IP属地:广西2楼2019-08-19 22:58
    回复
      刚才我们已经提到了“区间”,信号灯的一个基本作用就是划分轨道“区间”,当一个“区间”内有列车存在时,后方的信号灯就会亮红灯,阻止后车通过(废话,通过就撞车了)

      是不是很简单的一个道理?各种信号灯就是通过判断区间“是否有车”作为发出信号的基本依据。因此要用好信号灯,就要理解好“区间”这个概念。


      IP属地:广西3楼2019-08-19 22:59
      回复
        “区间”简单地说就是两盏信号灯之间的路轨,不管你两盏灯之间是10格铁路还是100格铁路,也不管你两盏灯之间是否有多条并行的冗余路线,他们对区间的判定都不构成影响。

        如下图所示,该区间的入口亮起了红灯,显然区间里面并不止一条路轨,但系统并没有把它自动当做多个区间处理。

        萌新时期少不了建这种一个信号灯都没有的路线,不难发现在没有任何信号灯的情况下,整条铁路会被判断成一个单一的“区间”,所以这上面永远只有一趟车在跑,其他车都在车库里干等着排队。


        IP属地:广西4楼2019-08-19 23:00
        回复
          有一个特殊情况:对火车来说互不相通的正交路口也会被认为是一个连通的区间,如下图所示。

          当然,对于“区间”的判断和信号发出的依据,不同的信号灯有其不同的逻辑。不同的信号灯即便按同一种摆放方式,组合出来的信号系统也可能有完全不同的表现。前面也说过,这里用“通过信号灯”作关于“区间”的说明只是为了方便理解,有了“区间”的大体概念后,我们再回过头看看其他几种信号灯的特性和区别。


          IP属地:广西5楼2019-08-19 23:00
          回复
            首先还是我们刚才一直在演示的“通过信号灯”,前面已经说过它是一个判断规则很简单的信号灯,只要前方区间有车的话就亮红灯,否则亮绿灯,这在刚才对“区间”的解释里相信你已经看到多次。“通过信号灯”可以设置成双向或者单向,在路轨上多点几下就可以切换。

            顾名思义,单向“通过信号灯”只允许列车从它的正面通过,而对于从它背面来的车则相当于一直亮红灯,通过连续放置单向的“通过信号灯”可以达到单行线的效果。(温馨提示,点击建好的信号灯拖拽可按设置间隔等距放置同样的信号灯)

            进一步地,这个特性常用来制作复线铁路,如下图,上行线下行线都是单行线,互不干扰,是大容量干线铁路的基本形式。


            IP属地:广西6楼2019-08-19 23:01
            回复
              双向的“通过信号灯”一般用得相对少一些,因为无论是用哪种灯,设计双向复用的线路都要比设计单行线路都要复杂得多,很容易出现各种运行BUG或问题。下图是一个可供参考的待避方案,线路主体还是单线,但中途设计多个双向的待避区间允许多辆车同时使用该路线:

              嗯…你应该也发现了有功夫搞这个还不如直接建复线
              下面展示一种不正确的设置方式,这里将一盏信号灯A放在了一个有两条路轨的区间中间,并没有将区间隔断,对于A来说两边都是同一个区间。这时候只要有列车无论从哪个方向进入该区间,对于A来说都是“另一侧区间有车进入”而亮起红灯,实际上将上方的路轨隔断而无法为任何列车使用。这说明实践中要熟悉信号灯的功能逻辑,避免这种BUG发生。


              IP属地:广西7楼2019-08-19 23:02
              收起回复
                那么我们继续看第2、3、4种灯,分别是“入口信号灯”“出口信号灯”和“复合信号灯”。这里列一块是因为它们在功能上都属于带有预警功能的信号灯,要相互配合使用才能发挥其特殊作用,这里我暂且叫他们预警信号灯。

                简单地说,预警信号灯就是通过判断“出口信号灯”的状态,给“入口信号灯”一个额外的预警信号,当区间内的“出口信号灯”全部亮红时,该区间的“入口信号灯”就会收到预警信号而亮红灯。预警信号灯组可用于避免列车在区间没有出口可用的时候,进入该区间阻塞其他车辆通行,可以用在一些容易拥堵的汇集节点。如下图,ABCD四个“出口信号灯”均亮红灯,则入口E点的“入口信号灯”亮红灯,尽管此时中部区间内并没有列车停留。

                除去传递预警信号这一附加功能,三种预警信号灯的行为模式与“通过信号灯”基本相同,在其前方的区间内有车辆停留也会亮红灯,预警信号灯也具有单双向的区分,单向状态下无论哪种灯都不允许列车从它背面通过。


                IP属地:广西8楼2019-08-19 23:03
                回复
                  需要注意的是,非预警信号灯的信号状态不会作为预警信号灯的判断依据,且预警信号灯组并没有智能识别空余路轨的功能。如下图,尽管下方小车的路线是依次通过C、A,而且看到A点的“通过信号灯”是绿灯,区间实际也有路轨可以通行,但由于位于B点唯一一个“通过信号灯”亮了红灯,符合“区间所有出口信号灯都亮了红灯”的条件,故C点入口灯依然是亮红灯。

                  但非预警信号灯依然会阻断“预警信号灯”的区间判断,这在一些时候会导致一些问题,如这种情况下“入口信号灯”前方有一个“通过信号灯”,则这个“入口信号灯”不会接收到“通过信号灯”后方“出口信号灯”的预警信号,因为“通过信号灯”实际已经将区间隔断,“入口信号灯”也就不能发挥预警作用,实际与一个“通过信号灯”作用无异了。


                  IP属地:广西9楼2019-08-19 23:04
                  回复
                    “复合信号灯”则是结合了“入口信号灯”和“出口信号灯”两者,同时具有两者的功能,可以作为预警信号的中继传递者建设大规模的多级预警网络,如图所示,三个“出口信号灯”的红灯信号通过“复合信号灯”中继,使两个“入口信号灯”亮红:

                    嗯…这三种灯放一块确实容易看花眼,记住一横黄是入口,一竖白是出口,一竖黄是复合就行了(好吧其实更混了是吧)。我们进一步看上面那个路网,如果有一个“出口信号灯”亮绿灯,则“复合信号灯”就按“入口信号灯”那“有出口亮绿灯那就亮绿灯”的判断依据亮了绿灯,这时对于前方的“入口信号灯”来说,两个“复合信号灯”相当于是“出口信号灯”,既然他们亮了绿灯则“入口信号灯”也亮了绿灯。


                    IP属地:广西10楼2019-08-19 23:05
                    回复
                      预警信号灯组的作用和后面要介绍的“路径信号灯”用途上有共通之处,但实用性不如后者,主要是它不会判断列车进入区间后有没有路径能顺利出去,如下图,尽管要去C车库的①车根本没法通过出口,但因为这个区间内还有其他“出口信号灯”亮绿灯,“入口信号灯”按规则还是亮了绿灯,车子依然被放行进入了区间,实际造成了区间的阻塞。

                      要避免上述问题,使用预警信号灯必须确保所有出口都是“等效地”前往同一个目标,否则还是会出现前往不同目标的列车进入分支区间相互阻挡的情况。
                      总的来说,预警信号灯组是早期版本中留下的内容,很多场合中完全可以被效率更高的路径信号灯代替,这里感兴趣的朋友请自行探索,我也没有什么特别好的案例,我们就先继续介绍我们一开始被暂时冷落的“路径信号灯”!


                      IP属地:广西11楼2019-08-19 23:07
                      回复
                        作为原版唯一具备智能路径选择功能、唯一允许多列列车进入同一区间的信号灯,“路径信号灯”是如此强大,以致于不少玩家有了它之后把其他信号灯纷纷抛之脑后。它的唯一缺点就是对电脑运算能力的消耗较大,在配置不高的电脑上大量使用很可能会导致游戏后期运行速度显著变慢。与其他信号灯不同,菜单里“路径信号灯”和“单向路径信号灯”是直接分开的两个选项。

                        “单向路径信号灯”与之前介绍过的各种信号灯单向状态类似,它不允许任何列车从其背面通过,本身也会隔断区间。

                        非单向的“路径信号灯”则非常特别,它对列车具有反向透明性,也就是说它的背面对列车来说相当于不存在,这和其他信号灯的双向状态有本质的不同,因为这个反向透明性会影响区间判断。如下图所示,相向而行的A车和B车所“看到”的区间实际上是不一样的。


                        IP属地:广西12楼2019-08-19 23:08
                        回复
                          对于列车来说,碰到“路径信号灯”和“单向路径信号灯”后会获取区间内可以安全停靠空间的信息,只要区间内有能够让列车通过/停驻/待避/装卸的空余路轨他就能奔着这个空位开进区间,无需重复部署其他信号灯进行区间拆分和引流,就能允许多躺列车同时进入一个区间。
                          如下图这个车站仅有一个进站的“单向路径信号灯”和出站的三个“通过信号灯”,但进站车辆在通过“单向路径信号灯”后直到出站前,都不用玩家操心它的寻路和停靠问题,区间也会在站台冗余时允许多列火车同时进入。当然这个车站还用了“路点”和“车库”两种轨道部件进一步发挥引流和待避功能,这个我们等会会详细介绍。


                          IP属地:广西16楼2019-08-19 23:17
                          回复
                            “路径信号灯”的反向透明性最容易让萌新感到困惑,如下图所示是一个错误的示范,制作者原本想设计单行线,但全部用“路径信号灯”的轨道实际上会允许列车从信号灯背面返回,因为对于列车来说,回程路上相当于一盏信号灯都没有。

                            反向透明这个特性当然不是设计出来专门恶心人的,在设计一些双向通过系统的时候它大有所为。
                            如下图这种双向进站的车站,对两个方向的来车来说,用于引导另一边来车进站的“路径信号灯”对自己来说是不存在的,不会造成干扰,实现了“双向进站”。同时,由于入口采用的“单向路径信号灯”,使车站两侧的区间均允许多辆列车同时进入,实现了“多路并用”:

                            当然,如果您第一次接触这样的设计,很可能会摸不着头脑,尝试用之前我们讲过的区间分析法多想几遍吧。下面是增加了一组过站车道的双向车站方案,允许不经停的列车直接绕开车站,你可以尝试自己分析一下它的区间关系:

                            除此之外,“路径信号灯”还可以有其他应用,如下图是双向四车道的一个换行区间,使用“路径信号灯”而不是“预警信号灯”可以在路径冗余充分时让多列车同时经过换行区间,而不是一次一列这样低效地通过。


                            IP属地:广西17楼2019-08-19 23:19
                            回复
                              好了,关于各种信号灯的基本特性到这里就介绍完毕,下面我们介绍一下“车库”。萌新可能会问,车库有什么好介绍的,不就是买车的地方么?其实不然,轨道交通中的车库有很多意想不到的用途。


                              IP属地:广西18楼2019-08-19 23:19
                              回复