他看向戴棒球帽的年轻人。
票号5。你的问题最麻烦——4号和5号之间封死了。但先别急。先跟着调度走到4号,到了那边我再想办法。
年轻人咽了一下。什么办法?
还不知道。陆辞说。这是实话。规则五封的是连接门,这个字段覆盖范围还得再看一眼代码才知道。但他现在不想再用Bug视界——短时间内第二次使用,冷却不够,太阳穴还在突突地跳。
到了4号再说。他说,一步一步来。
年轻人沉默了两秒,然后点了点头。行。你说怎么走,我就怎么走。
陆辞没有回答。他在心里排列着接下来四十分钟的行动序列——谁先走、从哪扇门过、在哪个窗口期完成关键换厢。整个过程他没有写一行代码,但他的大脑在做和写代码完全一样的事:
拆解任务。排列依赖。压缩关键路径。
距离下一次连接门开启,还有四分钟。
四分钟后,连接门开了。
陆辞站在3号车厢与4号车厢之间的门前,右手食指在扶手上轻敲——敲键盘的节奏。三十秒的窗口,够让两个人通过。他转身看向车厢内剩下的人。
3号车厢的人留下。其他车厢的,现在跟我走。
声音不大,刚好不触发规则六。有人动了,有人没动。一个穿西装的年轻人站起来,看了一眼手里的车票,又看了看陆辞,犹豫了三秒,最终坐了回去。
陆辞没有劝。时间不够。
七个人跟着他走出3号车厢。连接门在身后关闭,锁死。金属撞击声在虚空中回荡,像某种不可逆的判决。
——
天幕上。
弹幕密度在三秒内翻了一倍。
他在干什么??
清空车厢?他要让自己变成最后一个人!
@逻辑审计师:他在清空车厢?如果某节车厢人数降到极低……规则一和规则四之间的张力会急剧增大。但我不确定他的最终目标——也许他只是在做基础调度,把人送回正确位置?
卧槽这个人是真的猛
——
接下来的六十分钟,陆辞把自己变成了一个人肉调度器。
普通连接门窗口用来做辅助调度——把人先挪到相邻车厢,由相邻车厢的人接力传递。时序重叠期的五秒窗口用来完成关键换厢——那些跨越多节车厢的长距离转移。
第六十分钟。第二次时序重叠。
陆辞站在4号车厢的连接门前,身后是三个需要去1号和2号方向的乘客。广播提示音响起的同一秒,连接门的锁咔嗒弹开。两条指令互斥,系统卡住。
五秒。三个人鱼贯穿过。
但这一次出了意外。第三个人——一个五十多岁的瘦高男人——跨过门槛的瞬间脚下一绊,膝盖磕在门框上。他趴在两节车厢之间的通道地板上,而五秒的窗口在流血。
陆辞一把抓住他的胳膊,把他拽进了3号车厢。
门在他们背后咬合的声音像铡刀。瘦高男人瘫坐在地上,裤腿上洇出一片血,但活着。
四秒。差一秒。
陆辞松开手。手指上沾着对方的血。他在裤子上擦了一下,没有说话。
这是他第一次如此清晰地感受到窗口期的残酷——五秒不是数字,是刀刃。差一秒就是一条命。
灯在这期间又灭了两次。
第一次,他闭着眼听到那种冰冷的机械吐息从身边掠过。金属焦味浓到呛人,像把脸贴在烧红的刹车片上。有人在黑暗里咬着嘴唇发出压抑的呜咽。他一动不动地坐着,心跳稳定,呼吸均匀。不是不怕。是怕的优先级排在活着出去后面。
第二次灯灭,6号车厢又少了一个人。座位上多了一枚钥匙扣。
没有人提起那个消失的人的名字。甚至没人知道他叫什么。
陆辞知道自己救不了所有人。他只能救规则允许他救的那些。
——
第一百零五分钟。
前半段列车——1号到4号车厢——的乘客基本归位。票号对应,各就各位。但后半段出了问题。
三个人。一个票号是6的中年女人,一个票号是7的大学生,还有戴棒球帽的年轻人——票号5,从第二章一开始就跟着陆辞行动,现在已经被送到了4号车厢。但他们需要去5号及以后。
4号和5号之间的连接门永久封闭。规则五,白纸黑字。
那个票号2的中年女人——已经回到2号车厢——在之前的换厢过程中问过陆辞这个问题:4号和5号之间过不去,那边的人怎么办?
陆辞当时没回答。
现在他蹲在4号车厢最后一排座位旁边,仰头看着天花板。车厢顶部有一个方形的检修口盖,大约六十厘米见方,四角用十字螺丝固定。标准的列车检修口,用于维护人员在车顶进行线路检查。
规则五说的是连接门。
检修口不是连接门。
他再次调出Bug视界。太阳穴的胀痛几乎立刻加重——这是短时间内第三次使用,冷却时间远远不够。视野边缘开始发暗,像显示器亮度被强行压低。但他只需要确认一件事。
规则五的代码结构浮现出来。执行线程很简单:封锁对象是4号与5号车厢之间的连接门,类型判定精确锁定为carriage_connecting_door。没有通配符,没有模糊匹配。检修口的类型标识是maintenance_hatch——不在封锁范围内。
//Rule_05.blocked_path:type==connecting_doorONLY
//maintenance_hatch:NOTinscope
他松开视觉。鼻腔里涌上一股铁锈味——不是车厢的金属味,是他自己的。他用手背擦了一下鼻子,指节上沾了一道暗红。
流鼻血了。Bug视界的反噬。
他没有在意。
检修口。他对身边三个人说,规则五封的是连接门,检修口不是门。从车顶翻过去。
戴棒球帽的年轻人抬头看了看那个检修口,又看了看陆辞鼻子下面的血迹。犹豫了一秒。你确定?
代码里写得很清楚。封锁类型是connecting_door,检修口的类型标识不在范围内。
年轻人没再问。点了一下头。
陆辞等到了第一百二十分钟——又一次时序重叠期。五秒的判定真空。他在这五秒里拧开了检修口的螺丝——不是用工具,是用从座位底下拆下来的金属支架。螺丝松得出奇,像这个检修口从来没被真正拧紧过。
三个人依次从检修口翻上车顶。
车顶在Bug视界的残像里呈现出一种奇异的状态——没有颜色标记。不是绿色(合法区域),也不是红色(禁入区域)。是灰色的。空白的。像一块没有被任何规则声明过的内存区域。
undefined。
规则系统的覆盖范围不包括车顶。在它眼中,这里不存在。
车顶的风不是风——是虚空的压力,冰冷、无质量,像被推进了真空环境。没有声音。脚下是列车在虚空中行驶的震动,传上来的不是物理振动,而是某种信息层面的脉冲,像心跳。
三十秒。三个人从4号车顶爬到5号车顶,从5号的检修口翻下去。
没有惩罚。规则五的封锁范围不包括车顶。