异星工厂吧 关注:62,731贴子:401,515

2.0版本同名火车站及自动调度机制思路浅见和蓝图分享

只看楼主收藏回复

一、声明
1、本人仅是一枚2周目还未完成,且第1周目没有研究过火车的萌新。
2、分享的蓝图仅供参考,分享的主要目的之一是希望大家帮忙找bug和抛砖引玉。
3、所有思路均参考了本吧相关帖子和B站相关视频,十分感谢!!!
4、欢迎各位大佬指正。
二、思路要点
1、同名火车站
2、2.0版本的火车中断机制
3、下货站优先级和上货站优先级
4、优先运输矿物的优先级
三、思路实现
1、火车站:上货站默认双侧48个箱子上货,下货站可选双侧48个箱子或单侧24个箱子下货;车站名矿物图标参数化,拍蓝图时选择后自动命名。具体设置如下
1.1、固体矿物上货站,箱子矿物数量转化为1-128的信号P,推送给车站作为优先级;常数运算器信号L(参数化)作为车站列车限制;信号P大于等于7时启动车站(默认火车站有48个箱子,P=7时能装满一列火车,该值未参数化,可参照下货站设置蓝图参数)。


1.2、液体矿物上货站,可参考固体上货站


2.1、固体矿物下货站,箱子矿物数量转化为1-128的信号P和1-256的矿物信号(信号范围错开是为了防止相混),信号P推送给车站作为优先级,当矿物信号大于等于128时通过雷达发给下货站和车库车站的选择运算器,选择运算器取最大矿物信号给到火车,从而决定火车去装什么矿物;常数运算器信号L(参数化)作为车站列车限制;信号P大于等于7时启动车站(火车站有48个箱子时,P=7时能完全卸完一列火车,该值已参数化,拍蓝图是选择单侧货双侧下货会自动调整)。


2.3、信号ps:固体矿物信号用绿色线/信号,液体矿物信号用红色线/信号,防止相混。
2.4、车库站台;分固体列车车库和液体列车车库,当列车无任务或者目标车站满时停留。另附有车库信号部件
从左到右分别为固体列车车库、液体列车车库、车库信号部件

3、火车中断机制:分为固体车厢编组和液体车厢编组,如下
3.1、固体列车设置

上货

下货

加油

等待固体列车发车任务

3.2、液体列车设置:上货和加油中断机制同固体列车,下货和等待液体列车发车任务中断机制如下
下图

等待液体列车发车任务



IP属地:浙江1楼2024-10-31 14:55回复
    2楼自用


    IP属地:浙江2楼2024-10-31 14:55
    收起回复
      2025-08-31 21:52:03
      广告
      不感兴趣
      开通SVIP免广告


      IP属地:江西来自Android客户端3楼2024-10-31 16:47
      回复
        顶一顶


        IP属地:安徽4楼2024-10-31 16:56
        回复
          你这个还需要分液体车库和固体车库,还没有充分利用新的中断机制


          IP属地:河南5楼2024-10-31 17:09
          回复
            在不使用运算器的情况下,单靠目前的火车机制已经可以做到:
            1.所有上货站只分固体液体两种,只有两个站名
            2.所有候车站完全同名,不需要区分种类
            3.所有车只分固体液体两种
            4.只有下货站需要区分特定种类货物一类一站
            你可以参考这几条再思考思考:
            1. 正常执行的停靠站列表里面只填一个不可到达的无效车站,用于频繁的通过“找不到路径”来触发中断
            2.所有的正常行为都通过中断实现,上货一个中断,下货一个中断,候车一个中断,补充燃料一个中断
            3.中断机制其实非常灵活,想要前往哪个站点不一定只能检查这个站点的情况来作为条件,比如我设计的火车系统里面就有一个检查上货站和下货站都空闲才会去上货站拉货。


            IP属地:河南6楼2024-10-31 17:17
            收起回复
              我也是差不多的设计,但是有一个问题解决不了,怎么样才能避免一发信号,所有火车一股脑全跑出去了,有没有办法一辆一辆车发


              IP属地:浙江来自Android客户端7楼2024-10-31 22:18
              收起回复
                妈的周目 我都不知道是啥


                IP属地:山东来自Android客户端8楼2024-10-31 23:44
                回复
                  2025-08-31 21:46:03
                  广告
                  不感兴趣
                  开通SVIP免广告
                  你忽略了一个无法忽视的问题,就是7楼提到的问题,通过限制供应站无法解决该问题。
                  假设车库中有40辆车,某需求站需要3车货物,据此将供应站的车辆限制改为3,其主要问题是:
                  需求站发出信号的那一刻,虽然只有3辆车会会出发去供应站,但是整个车库里正在等待的车将会被写入一个前往该供应站的时刻表,即使需求站已经填满,这些车也将会前往供应站获取那些货物。如果是高频使用货物还好说,但是是铀矿之类的低频使用货物呢?


                  IP属地:江苏来自Android客户端9楼2024-11-01 05:00
                  收起回复
                    收藏了


                    IP属地:江苏来自iPhone客户端10楼2024-11-01 09:14
                    回复
                      解决7楼问题的一个思路,不直接通过信号控制发车,而是:
                      1.通过下货站物品数量控制下货站开关
                      2.上货中断改为 如果下货站未满且上货站未满,则前往上货站,这里可以使用信号通配符来统一遍历所有上货下货站
                      3.下货中断改为 如果自身装有某种货物,则前往货物对应的上货站
                      而且我看你好像只使用了流体通配符和固体通配符,其实信号通配符是很强大的,你可以研究一下使用方法。
                      信号通配符(图标是一个芯片边框中间是一个白色线圈的那个通配符)的含义是,在任意车站发车之前,会使用被车站推送上来的每一个信号校验一下整个中断条件,只要有任意一个信号校验通过,则会用此信号替换后面中断执行计划里面的所有信号通配符然后执行计划。


                      IP属地:河南11楼2024-11-01 09:15
                      收起回复
                        请问,怎么能让蓝图拍下去的火车立刻自动获取第一件燃料。


                        IP属地:山西12楼2024-11-01 09:52
                        收起回复
                          还有一个问题比如供货设置优先级的时候我是算仓库库存数+传送带上物品数-c*火车一车货物数+火车运载物,但是发现火车一离站,运载物就变0了,但是车要开一会c才归零,导致优先级会鬼畜一下,这个有没有好办法解决


                          IP属地:浙江来自Android客户端13楼2024-11-01 11:08
                          收起回复
                            太难……懒癌如我,单线双头火车,装满发车,卸完回来。几种材料就几条火车线,火车线不交叉,信号灯我都不用……


                            IP属地:山东来自Android客户端15楼2024-11-01 11:17
                            收起回复
                              2025-08-31 21:40:03
                              广告
                              不感兴趣
                              开通SVIP免广告
                              关于候车室所有火车一股脑全跑一个矿的问题,该思路已经基本解决了,可以用我的蓝图试一试。解决方案要点是实时更新矿物信号,具体可以试一试蓝图和我发的中断机制


                              IP属地:浙江来自Android客户端16楼2024-11-01 13:40
                              收起回复