精彩小说尽在丛林文学网! 手机版

您的位置 : 丛林文学网 > 游戏动漫 > 副本维修员今天也不想加班_精选章节

精选章节

更新时间:2026-10-23 01:29:52

1 凌晨零点十七分,系统给我发了工单

前公司竟在我被裁员的第七天给我发来一条消息。

不是拖欠的工资,不是离职证明,也不是那句写得像葬礼致辞一样的“感谢你为公司作出的贡献”。

消息只有一行:

【《归墟》封测账号将在十分钟后注销,请及时登录完成最后一次测试。】

我盯着屏幕看了三秒,回了四个字:

【工资结一下。】

对面没回。

我把手机扔到沙发上,去厨房热昨晚的剩饭。电饭锅跳闸没多久,米饭外面烫,里面还是凉的。我用筷子戳了几下,忽然想起以前在测试组,凌晨三点趴在桌上吃泡面的时候,组长会把最后一根火腿肠扔给我,说:“唐梨,你不是最能熬吗?等这个版本过了,我给你放三天假。”

版本过了,组长升职了。我和另外六个人一起被裁了。

我叫唐梨,二十七岁,前《归墟》项目测试员。严格来说,我不是程序员,也不是设计师。我干的活儿是把游戏里那些“不应该发生但偏偏发生了”的事找出来,再写成工单递给真正能改代码的人。

譬如怪物走路会穿墙,玩家卡进楼梯,NPC说到一半突然开始背天气预报。

我负责证明它们确实坏了。

至于修不修,得看排期、成本和老板的心情。

《归墟》是公司最后一个项目。做了四年,换过三任制作人,烧掉一大笔钱,最终停在封测阶段。它号称“能记住每一个玩家选择的开放世界”,听起来很厉害,实际连新手村的鸡都能卡进屋顶。

我离职前,测试组留下的最后一份文档叫《未关闭问题清单》。我记得自己在里面提过一条:

严重级:退出流程缺少兜底,极端情况下,玩家可能无法触发离场事件。

制作人批注:封测期间优先级低,后续修复。

后续就是项目被砍,服务器封存。

我把剩饭端回客厅,正准备把那条通知删掉,手机自己亮了。

黑色屏幕中央跳出一行白字。

【最后一轮测试开始。】

紧接着,房间里的灯灭了。

不是跳闸那种暗,而是光像被一只手从空气里抽走。窗外的汽车喇叭停在半截,冰箱压缩机的嗡鸣戛然而止。桌上那杯没喝完的水里,一圈细小的波纹凝住了。

我站起来,脚底突然一空。

失重感只持续了一瞬。

下一秒,我坐在一辆行驶中的公交车上。

车窗外没有城市,只有一片湿漉漉的黑。车顶的荧光灯忽明忽灭,前门旁贴着一张红底白字的线路图:夜间专线17路——末班车。

我低头,发现自己穿着一件灰色工装外套,胸前挂着塑料工牌。

工牌上是我的名字,下面还有一行小字:

【临时维护员,编号QA-017。】

我还没来得及骂人,视野右上角跳出半透明面板。

【欢迎进入《归墟》。】

【新手副本:最后一班车。】

【通关条件:抵达终点站。】

【附加规则:请遵守车厢内的乘车守则。】

车窗上慢慢浮出几行血红色的字:

一、上车后请坐下,不要站在过道。

二、无论听见什么声音,都不要回头。

三、司机询问目的地时,请回答站名,不要回答“家”。

四、车到终点后,所有乘客必须下车。

五、如果车厢里多出一个人,请当作没看见。

我把最后一条读了两遍。

这规则写得不怎么样,标点也不统一。

典型的临时文本,至少经过两次拼接。

我习惯性地在空气里点了两下,眼前竟真的弹出一个灰色窗口。

【发现隐藏职业:灰盒测试员。】

【职业效果:可观察副本中未对玩家开放的异常字段;可提交维护工单。】

【注意:维护权限并非万能。每次提交工单,必须提供可复现的异常证据。每个副本最多修复一次。】

【当前维护时长:00:00:30。】

倒计时从三十秒开始跳。

我第一反应是:这破公司死了都不忘压缩工单时限。

第二反应是,车上还有别人。

车厢前排坐着一个穿黄色冲锋衣的胖子,怀里抱着自拍杆,嘴里不停念叨:“大家别慌,我常玩恐怖游戏,知道套路。这种开局通常会先死一个路人,我们只要……”

后半句话被他自己咽了回去。

他旁边坐着个短发女人,穿黑色卫衣,裤脚沾着一块已经干掉的血。她把一只手压在左肋,脸色白得厉害,却没有出声。

最后一排坐着一个背书包的小男孩,约莫十岁,抱着一只少了半边耳朵的兔子玩偶。他始终望着窗外,像在等什么。

车头,司机穿着旧制服,双手稳稳搭在方向盘上。后视镜里看不清他的脸,只看见一双发灰的眼睛。

公交车广播响了。

“下一站,幸福里。”

我一下坐直了。

这车明明只有一条夜间专线,线路图上根本没有“幸福里”。

我翻出面板。视野边缘浮现出一串只有我能看见的调试信息:

【RouteNode_04:NULL】

【RouteNode_04_DisplayName:幸福里】

【RouteNode_04_Trigger:未绑定】

我心里一沉。

地图节点有名字,没有触发条件。按照正常逻辑,车辆到了站也不会开门;如果副本机制认定乘客未下车,可能会把全车人当成“未完成实体”处理。

这不是恐怖氛围的问题,是程序漏了一个流程。

胖子终于注意到我:“姐,你是不是也被拉进游戏了?你什么职业?”

“测试员。”

他愣住:“测试员?这职业能打吗?”

“不知道。”我看着他自拍杆上忽明忽暗的指示灯,“不过能帮你投诉。”

车猛地一晃。

司机的声音从前面传来,沙哑得像喉咙里卡着一口砂子。

“各位乘客,查票。”

车厢里安静下来。

司机从座位旁抽出一叠泛黄车票,慢慢往后递。第一个拿票的是短发女人。她刚碰到车票,手背上的血管便浮出细细的黑线。

她咬紧牙关,没叫。

轮到胖子时,他把自己的电子面板翻了出来:“我都买票了,系统发的。”

司机没有看他,只说:“纸票。”

胖子嘴唇发干:“没有。”

司机从后视镜里看了他一眼。

那一眼像针,扎得胖子肩膀一缩。

我看见车厢顶上的规则字迹有一行在缓慢闪烁。

【隐藏规则:乘客可以补票一次。】

这行字下面还有极淡的一串灰字:

【补票条件:说出上一站。】

我还没开口,司机已经伸出手。

“没票的,去后门。”

后门外是一片黑暗,车还在高速行驶。

胖子脸都白了,急得声音发尖:“我、我上一站是人民路!我刚从人民路上的车!”

司机停了两秒。

“车没经过人民路。”

胖子张着嘴,没能再说出话。

我盯着他脚边那道正在扩大的黑影,忽然想起《归墟》早期版本里有个没修完的逻辑:副本不会判断乘客说的话是真是假,它只判断乘客有没有按要求给出一个站名。

“你说错了。”我提醒他,“别解释,换个站名。”

“啊?”

“快!”

胖子闭眼乱喊:“幸福里!我上一站是幸福里!”

司机的手停在半空。

车票啪地落进胖子怀里。

他的黑影缩了回去。

车里另外两个人同时看向我。短发女人的眼神里第一次有了审视,小男孩却仍然不看我,只把怀里的兔子抱紧了一些。

司机往后走来。

我以为他要查我的票,结果他停在我面前,低下头。

“请问,您要去哪一站?”

规则第三条像一根冰冷的针,扎进脑子。

不要回答“家”。

我抬头看着他:“旧城区维修站。”

司机没有立刻反应。他那张模糊的脸像信号不良的屏幕,闪了两下。

“本车没有这一站。”

“那就加站。”我说,“你们这线路图做得太差了。”

“……”

胖子小声说:“姐,这时候还挑版本呢?”

我没空理他。

我视野里的维护倒计时只剩七秒。既然是未绑定的节点,异常证据已经足够;但工单一旦提交,本副本的维护机会就会用完。

我摸出那张没有字的车票,翻到背面,用指甲划出“维修站”三个字。

【提交维护工单?】

【异常描述:RouteNode_04 存在显示名称,无有效触发条件。】

【复现步骤:乘客选择幸福里站,车辆抵达后无下车事件。】

【建议修复:绑定站点触发器,恢复终点下车流程。】

我按下提交。

眼前一黑,像有人把整条车厢拆开重装。我的太阳穴猛地一跳,疼得眼泪一下涌出来。等视野恢复时,车窗外已经出现了破败的站牌。

幸福里。

车缓缓停下。

前门打开的瞬间,风灌进车厢,带着湿泥、烧焦塑料和某种很淡的花香。

广播里传来一个女孩子的声音。

“爸爸,我到了。”

司机的手抖了一下。

他握方向盘握得太紧,指节泛白。后视镜里的那双灰眼睛,头一回有了活人的光。

“下一站……”他哑声说,“下一站,终点。”

小男孩终于抬起头。

“叔叔,”他问,“我可以下车去找我爸爸吗?”

司机盯着他看了很久,嘴唇动了动。

最终,他点了头。

我听见车厢系统发出清脆的提示音。

【隐藏条件达成。】

【副本“最后一班车”通关。】

【玩家存活:2/2。】

【乘客实体:4/4。】

【维护员唐梨,获得“未归档乘客”标签。】

提示音结束后,司机没有消失。他从胸前口袋里摸出一枚旧车票,递给我。

票面已经磨得发白,只剩一行手写字:

陈小满,幸福里站。

“谢谢。”他说。

我接过车票,嗓子有点干:“不客气。下次上线前,记得把路由表补全。”

司机像是听不懂,只把脸转向窗外。

而我的视野里,忽然跳出了另一条只有维护员能看见的提示:

【警告:本世界存在未登记的玩家意识。】

【归档进度:91%。】

【最终清理将在72小时后启动。】

我还没来得及问清楚,公交车的窗户便一面接一面碎成了光。

我再睁眼时,躺在自家客厅的地板上。

电视自己开着,画面上是一片猩红的天空。新闻主播嘴唇发白,声音却异常清楚:

“今晚零点,全国多个城市出现无法解释的公共安全事件。大量市民报告,视野中出现类似游戏界面的文字……”

“目前已有三百余人失联。”

屏幕下方滚动着一条新闻标题:

【不明游戏《归墟》全球上线,玩家称退出按钮消失。】

我的手指还在发抖。

手机震了一下。

是一条来自前同事许停的语音。

她只说了五个字。

“唐梨,别睡。”

然后,语音里传出一阵很远的、像是从水底传来的敲门声。

2 便利店不卖后悔药

许停以前是《归墟》的叙事策划,后来转去做医疗游戏模拟。她说话一向简洁,连骂人都像在写需求文档。

我回拨过去,电话响到第八声才接通。

“你在哪儿?”我问。

“南城医院,急诊大厅。”她那边很吵,有人哭,有人喊护士,广播里反复播放着请大家不要拥挤的通知,“我看见副本了。就在大厅里。唐梨,你是不是也进过游戏?”

“进过一个公交车。”

“里面的人能出来吗?”

“能。”我看了眼掌心,那张旧车票还在,“但我不确定下次还能不能。”

电话那边静了一下。

“我弟不见了。”许停说。

她说这句话的时候声音没有颤,甚至比刚才更平稳。我却听见背景里有一声很轻的金属碰撞,像有人把医疗剪刀搁在不锈钢托盘上。

我认识她弟许至,十九岁,学计算机,平时话不多。前年许停值夜班,他给我们测试组送过一次夜宵,进门先问谁是唐梨,说他姐总说我能从最烂的游戏里找到最有用的错误。

“我马上过去。”我说。

“先别来。”许停立刻接道,“医院现在不对劲。急诊大厅的门从外面打不开,里面多了一条走廊,尽头有个红色指示灯。凡是往那边走的人,出来时都会忘掉一个人的名字。”

“你怎么知道?”

“我刚把一个保安拉回来。他忘了自己女儿叫什么。”

她吸了口气,似乎终于有一点压不住了。

“唐梨,我不是不想救他。我是怕我找到他的时候,连我自己是谁都不记得。”

我握紧手机。

“先别去那条走廊。”

“你有什么办法?”

“没有。”我说,“但我知道有些副本不是靠冲进去通关。等我十分钟。”

挂掉电话,我打开电脑。桌面还留着前公司发的封测安装包,图标是一个倒置的黑色月亮。我点开,登录界面已经变成全屏的血色提示。

【归档倒计时:71:44:09。】

【区域副本:南城医院 / 便利店 / 地下通道 / 未命名。】

我放大地图,发现医院旁边有一条灰色的路线,直通地下一家二十四小时便利店。

那个店我去过。以前公司楼下就有同品牌门店,我加班时经常在里面买关东煮。设计组把便利店做成过早期的新手副本,后来因为恐怖程度太高被删掉了。

我记得测试文档里有一句话:

“在本副本中,玩家必须完成一笔合法交易,才能获得离开收银区的权限。”

问题是,他们后来加了很多怪物,却没有补齐交易失败后的流程。

我把那条灰色路线截图发给许停。她没再说话,只把位置共享打开。地图上,代表她的蓝点在南城医院与地下便利店之间来回闪,像被两张地图反复拉扯。后来我才知道,系统把医院和便利店接成了一条“夜班路线”,只要进入这条路线,玩家就可能被传送到相邻副本。

我接着登录游戏。

【是否进入区域副本?】

我按下确认。

这一次没有失重。房间里的灯泡从中心往外暗下去,像一只眼睛慢慢闭上。等我再睁眼,自己已经站在一家小便利店门口。玻璃门上贴着促销海报,热柜里几串关东煮浮在发白的汤里,收银台旁的风扇吱呀吱呀转着。

店内广播重复播放:“欢迎光临,请遵守购物秩序。”

自动门后面,许停站在货架尽头,手里握着一把从护士站拿来的剪刀。她看见我,眼里先闪过一丝松动,随即又绷紧了。

“你怎么进来的?”

“走正门。”我说,“这次没有车。”

她没笑,只把我往身后拉了一下。

柜台后站着个穿红马甲的年轻店员,胸牌上写着:小齐。她的头发扎得很高,额角有颗小痣,正用抹布擦着一块已经很干净的台面。

“欢迎光临。”她抬起脸,笑容标准得像贴在墙上的服务守则,“需要什么?”

我刚想开口,视野里出现一行黑字。

【副本任务:在凌晨四点前完成一次交易。】

【规则一:不要购买没有标价的商品。】

【规则二:如果店员说“欢迎回家”,请立即离开收银台。】

【规则三:不接受退款。】

【规则四:请勿询问店员何时下班。】

我看向柜台上的价签。矿泉水两块,面包六块,关东煮每串三块五。所有商品都有价格,只有最角落的一只纸杯没有标价。

纸杯里装着半杯温水,杯沿有淡淡的口红印。

许停顺着我的目光看过去,压低声音:“我已经在这儿困了四十分钟。每次有人试图买东西,店员都会问他一句‘欢迎回家吗’,然后那个人就不见了。”

“那你买过东西吗?”

“没有。我不敢。”

我走到柜台前,拿起一瓶矿泉水。

店员小齐的笑容加深了一点:“三块钱。”

“扫码还是现金?”

“现金。”

“我只有电子支付。”

“那您可以回家取。”

她抬起眼,看着我。

“欢迎回家。”

空气像突然被抽走。

许停一把抓住我的手腕,拉着我往后退。店内的灯在同一瞬间全灭了。货架之间响起密密麻麻的脚步声,像有人穿着拖鞋在狭窄走廊里来回走动。

广播变了调。

“欢迎回家,欢迎回家,欢迎回家。”

黑暗里,有人贴着我耳边说:“你终于回来了。”

我没有动。

我听见小齐的声音从柜台后传来,轻得像怕惊醒谁。

“妈妈,今天你能来接我吗?”

紧接着,是另一个声音,粗暴、疲惫,明显属于一个男人:“别闹了。我还要上夜班。你要懂事。”

“我已经很懂事了。”小齐说,“我一直在等。”

灯重新亮起时,柜台后空了。

那瓶矿泉水还在我手里,瓶身上贴着一张新的标签:

【价格:一个你再也不想提起的晚上。】

我把瓶子放回去,心脏跳得发疼。

这不像普通的恐怖副本。它在读取人最不愿意碰的记忆,再把记忆伪装成交易价格。

“我们得完成交易。”我说,“但是不能买这些东西。”

许停盯着我:“你想买什么?”

我看向那只没有标价的纸杯。

“先弄清楚它为什么没有价格。”

我从货架上拿了一个普通面包,走到柜台前。小齐像什么都没发生一样重新出现,抬头冲我笑。

“六块钱。”

“可以刷卡吗?”

“现金。”

我拿出一枚游戏里发的铜币。它是从公交副本里带出来的,边缘有一道锯齿。铜币碰到柜台时,收银机发出一声短促的滴响。

【未知道具:旧车票代币。】

【价值评估失败。】

小齐低下头,眼神第一次不像程序那样平稳。

“这不是钱。”

“那什么才算钱?”我问。

她张了张嘴。货架后面的阴影突然一阵扭曲,有个戴着白色塑料面具的高个子从里面挤出来。面具上画着一张笑脸,右边的嘴角却被红笔划得很长,像一道缝合伤口。

【盘点员出现。】

【所有未完成交易,将被视作偷窃。】

盘点员手里提着一把长柄扫码枪,枪头闪着绿光。它扫过一排货架,货架上的商品就像被抹掉一样一件件消失。

许停抬起剪刀,挡在我前面。

“跑。”她说。

我却盯着收银机。刚才那声滴响后,屏幕左下角闪过一串调试信息:

【Transaction_State:PENDING】

【Refund_Flow:NULL】

【Employee_Shift_End:未配置】

所有交易一旦开始,就只能完成,不能退款;店员没有下班条件;未结账的商品会被盘点员当成偷窃。换句话说,这家便利店根本没有关门流程。小齐只能一遍遍工作,直到游戏把她删掉。

这就是为什么她会问“妈妈今天能不能来接我”。这句台词不是恐吓,它是残留在角色记忆里的真实愿望。

我翻开工单界面。

【本副本维护次数:1。】

【当前异常:交易状态无法从PENDING转入完成。】

可复现步骤我已经有了。修复建议也很清楚:给支付失败和交班流程添加退出路径。

代价呢?

这次维护面板多了一行小字。

【修复将扣除玩家一项私人记忆。请选择可支付的记忆编号。】

我怔在原地。

记忆?

盘点员已经朝我们走过来,扫码枪每扫一下,地面就消失一块。许停抓住我的肩膀,急得眼尾发红:“唐梨,你看见什么了?”

我深吸一口气。

记忆列表里有很多条:第一次领工资、母亲最后一次做的红烧肉、大学毕业那天的雨……最下面,是一条没有名称的灰色记录。

【记忆编号QA-017:测试组最后一夜。】

我忽然想起那晚。项目被砍的消息传来,大家在会议室里坐到凌晨。组长抱着一箱没喝完的可乐,说这个项目本来差一点就成了。小齐的角色原型就是那时做出来的,一个十八岁的便利店夜班店员,永远赶不上最后一班公交。我们给她写了三种结局,其中一个结局是有人来接她下班。

最后这个结局被删了。制作人说,玩家不需要那么多情绪负担。

我盯着那条记忆,嗓子像吞了碎玻璃。

“用它。”我说。

【是否确认支付?】

“确认。”

那一瞬间,我脑子里像有一页纸被人从中间撕开。会议室里的笑声、可乐罐的碰撞声、有人把外套披到我肩上的触感,全部褪成一团模糊的白。可我还记得,我曾经很在意那个项目。至于为什么在意,已经说不清了。

工单提交成功。

收银机发出一声悠长的提示音。

【交易流程已补全。】

【员工交班流程已恢复。】

【退款流程已开启。】

便利店门口的电子钟,从03:59跳到了04:00。

小齐抬头,像第一次看见清晨一样眯了眯眼。她把红马甲脱下来,仔细叠好,放到柜台下面。然后从抽屉里拿出一只纸杯,往里面倒了热水。

“我下班了。”她说。

她顿了顿,朝我们露出一个很浅的笑。

“你们要是见到我妈妈,能不能替我问一声,她是不是还记得我?”

门开了。

外头是一条普通的街。天还是黑的,但街角有一盏路灯亮着,灯下停着一辆旧自行车。

我没有回答她。

我怕自己一张嘴,就会说出一个连我都不相信的承诺。

我们跑出便利店时,背后传来卷帘门落下的声音。许停在门口停了很久,右手还握着那把剪刀,指节白得像纸。

“我弟也在里面。”她忽然说,“我知道。”

“什么?”

“那条医院走廊,尽头的红灯。它一直在播许至小时候的声音。”她眼圈终于红了,却没有掉泪,“我听见他说,姐,我在这儿。可我不敢进去。万一我进去以后,忘了他,我就连找他的理由都没有了。”

我看着她,想说些安慰的话。

最后只说:“那我们把他找出来。”

许停点了点头,抬手抹了一下鼻子,像嫌自己这个动作不够体面。

“先说好。”她看着我,“找人的时候,你不许自己乱交记忆。”

“那得看行情。”

“唐梨。”

“好,不乱交。”

她这才松开了握得发白的手。

天空深处忽然响起一声钟鸣。每个人视野里同时浮出一行红字:

【归档进度:93%。】

【距离最终清理:66小时。】

我们没有时间了。

3 医院四楼没有病人

南城医院急诊大厅已经被临时封锁。玻璃门外挤满了人,有人举着手机直播,有人拍打门框,有个穿校服的男孩蹲在台阶上,一遍遍按着手机上的退出按钮。

按钮没有反应。

我和许停从便利店副本里出来时,医院的天花板上已经出现了半透明的地图。走廊像被复制粘贴过,通往不同病区的门牌一模一样:急诊、检验科、住院部、家属等候区。

最深处那条走廊没有门牌,只有一盏红灯。

许停站在入口处,肩膀绷得很紧。她平时走路很快,像随时能把每一分钟都安排得恰到好处。现在她却盯着地砖上的一道裂缝,半天没有迈步。

“我弟最后一次给我发消息,是凌晨零点零三分。”她说,“他说他去楼下买水,顺便看一眼新闻。后来就没回我。”

“你们住得很近?”

“我住医院宿舍,他住大学寝室。那天他来给我送饭。”

她说到这里,喉咙忽然卡住了。她咳了一声,像要把某种不合时宜的东西压回去。

我没催她。

过了会儿,她从口袋里掏出一张折了四次的便签,边缘已经被汗浸软。上面是许至的字:

姐,别总吃冷饭。你胃不好。

“他每次来都写这个。”许停说,“明明是他最不会照顾人。”

我把便签还给她。

“走吧。”我说,“先看看这条走廊到底是什么。”

刚跨过门槛,红灯就闪了三下。墙上的电子牌亮起。

【副本:四楼病区。】

【任务:在查房结束前,确认所有病人身份。】

【规则一:病人说自己没病时,不要反驳。】

【规则二:护士叫你名字时,请确认姓名与腕带一致。】

【规则三:没有家属签字,不得带病人离院。】

【规则四:如果四楼出现第十三张病床,请立即通知护士长。】

我低头数了数走廊两侧的病房门牌:401、402、403……一直到412。

没有413,也没有第十三张床。

“这副本看着比前两个麻烦。”许停把便签收进胸口口袋,语气已经恢复到平常那种干净利落,“你有职业视野,先把能看到的东西告诉我。”

“这里的病人身份是关键。系统要我们确认,却不保证每个人都是真的病人。”

“那你怎么确认?”

“看谁在害怕。”

许停看了我一眼,似乎想反驳,最后没说话。

第一个病房里躺着一个头发花白的老太太。她穿着蓝白条纹病号服,手腕上的腕带写着“刘月娥,72岁”。床头柜上放着一只保温杯,杯口有被反复擦拭过的痕迹。

老太太见我们进来,先把被子往上拉了拉。

“我没病。”她说,“我就是等我儿子。”

我没有反驳她,只看向床边的监护仪。仪器上没有数值,屏幕却显示着一条不断延伸的绿色直线。

“您儿子什么时候来?”我问。

“下班就来。他答应过的。”

老太太的眼神很亮,像一个坚信约定不会过期的人。

我翻开床头的病历。第一页写着入院日期:十年前的今天。第二页是空白。第三页则是一张已经泛黄的缴费单,金额只有三十七块五。

系统提示音响起。

【身份核验失败。】

【病人刘月娥不存在于当前数据库。】

老太太脸上的笑慢慢收了回去。她把手伸向床头柜,摸了好几下,才摸到那只保温杯。

“那我儿子呢?”她问。

我不知道该怎么回答。

许停走过去,轻轻把杯子放到她手心里。她没有说“您儿子会来的”,也没有说“您该休息了”,只是替她拧开杯盖。

“先喝口水吧。”许停说。

老太太盯着她看了半天,忽然问:“你是我儿媳妇吗?”

许停动作一顿。

“不是。”

“那你怎么对我这么好?”

许停低下头,看着杯子里晃动的水,声音很轻:“因为我也在等一个人。”

病房里的绿色直线忽然动了一下。

屏幕跳出一行字:

【身份核验通过。】

【备注:家属暂未到场。】

我眼皮跳了跳。

“原来身份不是靠数据库核对。”我说,“是看有没有人承认她的存在。”

许停没接话,只把保温杯拧好,放在老太太够得到的地方。

我们继续往前。

402病房里住着个年轻男人,腕带上写的是他的名字,病历却塞着另一个人的照片。403的病人能说出自己的身份证号,却不知道自己今年几岁。404空着,但病床上摆着一只儿童书包,拉链没拉好,露出半截数学卷子。

每核验一个人,走廊的灯就亮一格。

走到408时,许停忽然停下。

“你听。”

墙里有敲击声。

三下,停顿,再两下。

她脸上的血色一下退干净了。

“是许至。”

她转身就要去推墙,我一把拉住她。

“等等。声音从墙里传出来,不一定说明人就在后面。”

“我知道那是他。”她声音发紧,“他小时候怕黑,就这么敲门。三下,然后两下。我教他的。”

墙里又响起五声敲击。

许停眼圈红得厉害,嘴唇却抿成一条很直的线。她像是在跟自己较劲,最终没有挣开我的手。

“先核验完。”她说,“我答应过你,不乱来。”

我们终于走到412。病房里没有人,只有一台旧电视,正在播放一段十年前的监控录像。录像中的急诊大厅挤满了病人,护士推着担架来回穿梭。画面右下角,一个少年背着书包,把一份盒饭放到护士站桌上,然后转身离开。

许停往前走了一步。

“是他。”

“我知道。”

录像里的少年走到门口,突然回头,像是隔着镜头看见了我们。他抬起手,在玻璃上敲了三下,又敲两下。

电视屏幕骤然变红。

【警告:发现未登记病床。】

【十三号病床即将加载。】

病房中间响起金属滑轨拖动的声音。原本空着的墙面向两侧裂开,一张病床从墙里缓缓推出来。床单雪白,枕头上有一块浅浅的水渍。床头腕带自动打印,名字一栏写着:

许至。

许停的手抖了一下。

床上躺着个少年,脸色苍白,闭着眼,像只是睡着了。他右手手背上有一小块小时候留下的烫伤,形状像一片歪歪扭扭的叶子。

许停认得那块疤。

她慢慢走过去,伸手要碰他,却在离他一寸的地方停住了。

“许至。”她喊。

少年没有反应。

“许至,我是姐。”

监护仪发出规律的滴声。床头屏幕亮起:

【患者状态:等待家属确认。】

【意识来源:未登记玩家记忆。】

【请在三十秒内签署离院同意书。】

一张电子签字板滑到床边。

许停看着它,没有马上拿笔。

“为什么要我签字?”她问我,“如果这是他,签字就能带他走吗?如果这只是个复制出来的东西,我签了以后,会不会把真正的他留在里面?”

这是个没有正确答案的问题。

我盯着签字板,发现右下角有一行不起眼的字段:

【Exit_Consent:默认拒绝。】

系统要求家属签字,却把默认值设成拒绝。只要倒计时结束,病人就会被强制留院。所谓确认身份,其实是在筛选谁愿意替一个人承担责任。

“许停。”我说,“我不能保证这里的许至是不是你弟弟。但你可以先问他一个只有你们知道的问题。”

她闭了闭眼。

“许至,你上高中那年,为什么把我送你的那本书塞进冰箱?”

床上的少年没有动。

倒计时剩二十秒。

“你说你怕我下夜班回家没东西吃,冰箱里塞满了东西。”许停咽了一下,“那本书又不能吃,你放进去干什么?”

少年睫毛颤了颤。

“因为……”他艰难地睁开眼,“你总说……书比我重要。我想试试,冻一晚上,书会不会变好吃。”

许停忽然笑了,笑到一半,眼泪掉下来。她赶紧偏过头,像不愿让弟弟看见。

“傻子。”她说。

她签下了自己的名字。

病床旁边的门缓缓打开。床单下的人影渐渐清晰,少年从床上坐起来,手背上的烫伤仍在。他看见姐姐,第一句话不是“我好害怕”,也不是“你怎么才来”,而是:

“姐,你是不是又没吃饭?”

许停终于没忍住,伸手把他抱进怀里。她抱得很紧,像怕松一松手,怀里的人就会重新变成一段录像。

我转过身,给他们留出一点位置。

走廊尽头响起了另一种声音。

像一台老旧服务器正在启动,风扇摩擦着灰尘,发出持续低沉的嗡鸣。

所有病房门同时打开。里面的病人陆续走出来,有人扶着墙,有人拎着保温杯,有人赤着脚,像刚从一个很长的梦里醒来。

系统提示:

【副本“空床病区”通关。】

【玩家存活:2/2。】

【附加奖励:未归档意识碎片×1。】

我看向许至。他身上没有玩家面板,只有一条淡得几乎看不见的灰色状态栏。那不代表他是个普通NPC。系统拿许停的记忆、医院里的影像和许至留下的个人信息,拼出了一个能回应她的意识副本;而眼前这个人至少知道姐姐生活里那些无人旁听的小事。至于这份意识是不是“真正的许至”,我们谁都没有答案。

【角色类型:非玩家角色。】

【状态:自主意识异常增长。】

【清理队列:待处理。】

我呼吸一滞。

“唐梨?”许停抱着弟弟回头,“你怎么了?”

我关掉面板,尽量让声音听起来正常。

“我们得尽快离开这里。”

“为什么?”

“因为它不是在抓玩家。”我看了眼走廊里那些刚刚从病房出来的人,“它还在抓那些不应该有自己想法的人。”

4 排行榜第一名死在新手村

我们离开医院时,天色仍旧是深夜。

街道上却到处是游戏化的痕迹。红绿灯上方悬着半透明的任务提示,十字路口的斑马线时不时变成迷宫,便利店门口站着一个头顶血条的巨型兔子玩偶。远处一栋写字楼上方漂浮着蓝色数字,像有人把整座城市的血量标在了天上。

越来越多的人开始适应这些东西。

有人组队刷街区里的低级怪,有人在小区门口开摊售卖恢复药剂,有个穿睡衣的老大爷蹲在垃圾桶边研究技能面板,嘴里念叨“这技能冷却时间比我家热水器还长”。

也有人把它当成了机会。

我们在一处地铁入口碰上了“黑帆公会”的人。他们穿着统一的黑色战术外套,肩膀上绣着一只白色船锚。最前面的男人三十出头,头发剃得很短,胸前挂着金色玩家徽章。

【玩家:陆行舟。】

【职业:征服者。】

【等级:29。】

【区域排行榜:第一。】

他身后跟着六个人,装备齐全,腰间别着闪光弹和医疗包。和旁边那些穿着拖鞋、拎着菜刀的普通玩家相比,他们像是提前准备了半年。

陆行舟看到我们,目光先落在许停手上的剪刀,再落在许至身上。

“刚从医院出来?”他问。

许停没说话。

陆行舟笑了一下:“那边副本我带人打过。奖励不错,就是有点费人。你们能活着出来,运气可以。”

我不喜欢他说话的方式,像是在点评仓库里一批没有坏掉的货物。

他打开个人面板:“我们公会现在收人。等级低没关系,只要听指挥。你们交出医院副本拿到的隐藏奖励,我可以给你们一个安全屋名额。”

许至皱起眉头:“凭什么?”

陆行舟看了他一眼,笑意淡了些:“凭我能让你活。”

“那你先证明一下。”我说。

陆行舟转向我:“你是什么职业?”

“维护员。”

他像是听见了什么笑话,身后有人直接笑出了声。

“后勤职业啊。”陆行舟说,“我这儿不缺打杂的。”

我点头:“那挺好,祝你们组队愉快。”

我转身要走,他却抬手拦住我。

“等等。”他的视线在我面板上停了一瞬,“你是不是唐梨?”

我心里一紧。

“你认识我?”

“以前做游戏测试的?”陆行舟把一张截图递到我面前。截图上是我的员工头像,下面是一段匿名帖子:《归墟》测试员唐梨,曾在封测期间多次提出副本异常,导致项目进度延期。

帖子没有署名,但我知道它来自谁。

我前公司的制作人曹成。

陆行舟收起截图:“我花钱买了旧游戏资料。你这种人知道哪里有漏洞。加入黑帆,我给你分成。”

“要是我不加入呢?”

“那就别在我的区域活动。”他说,“安全屋有容量,不是慈善机构。”

我看着他肩上的公会徽章,忽然觉得很熟悉。黑帆的图案和《归墟》里一个早期测试阵营一模一样。那阵营原本是用来测试PVP匹配的,设定上会把低等级玩家当成资源,强者则负责“清理地图”。后来这个设定被玩家骂得太狠,正式版删掉了。

看来有人把废弃机制带进了现实。

“你们的据点在哪儿?”我问。

陆行舟以为我动了心,表情松下来:“前面体育馆。愿意来谈就报我的名字。”

“谢谢。”我说,“我只是想知道,离你们最远的路怎么走。”

他脸色冷下来。

我们离开后,许停压着声音问:“你为什么激他?”

“因为他刚才不是想招人,是想确认我能不能替他找漏洞。”

“有什么区别?”

“招人会问你擅长什么。利用人只会问你能提供什么。”

许至走在她旁边,偷偷看我一眼:“你以前是不是经常和这种人打交道?”

“以前我只跟程序打交道。”

“程序也会撒谎?”

“程序不会。”我说,“但写程序的人会。”

我们在一间旧网吧暂时落脚。门口的卷帘门被撞得变了形,柜台上还放着没喝完的奶茶,吸管上粘着一颗已经发白的珍珠。二楼有四台电脑仍然亮着,桌面上循环播放着一款游戏的登录动画。

屏幕里,一个穿着白裙的女孩站在荒草地上,抬头看着天。

她身旁浮着一行小字:

【角色名:小满。】

【状态:等待玩家。】

我认出了她。

她是《归墟》最早期的新手引导NPC。角色模型和便利店的小齐一样,都是叙事组的基础模板。唯一不同的是,她有一条被删掉的隐藏路线:如果玩家连续三次拒绝主线任务,她会带玩家去地图外的一座旧灯塔。

那条路线从未完成过。

我打开电脑,没想到还能用。游戏里,女孩依旧站在草地上,低着头,手里攥着一张皱巴巴的纸。

屏幕下方弹出一行红字:

【玩家唐梨,是否接受隐藏任务?】

【任务名称:请告诉我,我为什么一直在等。】

许停在我身后停住了。

“你认识这个NPC?”

“算认识。”我说,“她是我参与测试的第一个角色。”

“你当时给她写过情节?”

我摇头。

“我只测过她的对话分支。”

那时候我刚进公司,做什么都小心。小满的对话里有一条奇怪的循环:玩家离开新手村后,她会站在路口,向下一个人重复同一句话——“如果你看见我哥哥,告诉他我还在等。”我们以为是脚本没清理干净,提过一次工单,制作人说暂时保留,后续再处理。

后来项目延期、换人、裁员,没人再提起她。

我按下“接受”。

电脑扬声器里响起一声很轻的呼吸。

“你终于来了。”屏幕里的小满说,“我等了很多次。”

她抬起头,眼睛里有一圈很淡的灰,像从旧照片上擦下来的铅笔印。

“我哥哥是不是已经不在了?”

许停捂住了嘴。

我盯着屏幕,指尖冰凉。

这不是《归墟》原本的台词。它不在任何正式文本里。

而系统后台,慢慢浮出一条隐藏记录:

【未归档意识碎片:小满。】

【异常来源:玩家数据残留。】

【建议处理:删除。】

我没有点删除。

我点开了那条任务的详细信息。

【隐藏任务进度:0/3。】

【目标:找到被系统丢弃的三段记忆。】

【奖励:维护权限×1。】

小满低下头,像在听某个很远的声音。

“我不记得哥哥长什么样了。”她说,“但我记得他答应过,会回来接我。”

我忽然想起公交车上的司机,便利店里的小齐,以及医院四楼那些等待家属确认的人。

归墟不是简单地把怪物扔进了现实。

它把所有没有写完的东西,都留在了这里。

而它准备在七十二小时后,把这些东西全部清掉。

5 黑帆公会的规矩

黑帆公会的体育馆据点在第二天中午被系统标成了安全区。

不是因为那里安全,而是因为他们把附近所有低等级玩家都赶走了。入口处架着两排临时路障,门顶挂了块塑料板,上面写着“入区需缴纳三枚低级核心”。一个穿着运动背心的男人坐在桌后,手里捏着登记表,表情像足疗店老板在挑客人。

我们路过时,他喊住许至。

“未成年?有监护人吗?没监护人的不能进。”

许至举起手:“我有我姐。”

“你姐缴费了吗?”

许停眉头立刻皱起来。我按住她的胳膊,朝登记表看了一眼。

表格里有一列“资源贡献值”,每个人的名字后面都写着不同的数字。交过核心的人可以进入安全区,没交的人则被标记成灰色。最下面一行,写着“低贡献者可优先分配外勤任务”。

我心里大概明白了。

“你们拿玩家当矿挖?”我问。

桌后的人笑了一声:“在这个世界,不创造价值的人凭什么吃饭?”

他说得理直气壮。

我没跟他争。以前在公司里,我见过太多这种表格。换了名字,换了颜色,最后都在把人分类成可用资源和浪费成本。

许停拦住我:“算了。我们不进去。”

我们刚转身,体育馆里忽然传来一阵骚动。两个黑帆成员架着一个年轻男人走出来。那人穿着一件沾满灰的校服,手腕上的玩家面板不断闪烁。

【状态:重伤。】

【任务失败。】

【贡献值:-12。】

“把他丢出去。”里面有人说,“连个材料箱都没守住,浪费药。”

年轻男人挣扎了一下,嗓子哑得厉害:“里面还有三个人……我把钥匙给他们了……”

“那是你的问题。”

黑帆的人松手,他摔在地上,膝盖磕在台阶边,发出一声闷响。

我看见他裤腿下面有血,一点点渗出来。他试着撑起身子,手指却一直打滑。

许停已经蹲下去,撕开自己的急救包给他止血。她动作很快,嘴里骂了一句:“都这样了还讲贡献值,脑子是被怪物吃了?”

那个年轻男人想说谢谢,嘴唇动了两下,先咳出一口血沫。

“别说话。”许停按住他肩膀,“你叫什么?”

“孟、孟一帆。”

“多大?”

“二十一。”

“有没有药物过敏?”

他怔住了,像很久没听见有人问这种普通问题。

“没有。”

许停给他包扎好,抬头看我:“能带他走吗?”

我看了眼自己的维护员面板。副本修复奖励还剩一次,背包里只有两瓶恢复剂和一把生锈的小刀。从战斗力来说,我们不该再招惹黑帆。

可是孟一帆怀里露出一截黄色布条,和公交车司机制服上的袖口很像。

我伸手把布条抽出来,上面有用圆珠笔写的一串字:

【第七码头,旧灯塔。】

是隐藏任务里的地点。

“带走。”我说。

“你确定?”许停问。

“不确定。”我把布条折起来塞进兜里,“但我讨厌把人留在台阶上。”

我们把孟一帆带到网吧二楼。他醒来时,先摸了一遍自己的口袋,确认东西还在,才小声问:“你们为什么救我?”

许停正在给剪刀消毒,头也没抬:“因为你还没死。”

孟一帆看着她,半晌没说话。

后来他告诉我们,黑帆公会并不只是收取入区费用。他们发现某些副本的怪物会掉落“意识碎片”,那些碎片既能换装备,也能换复活次数。为了刷资源,公会会强迫低等级玩家进入高危副本,把他们当诱饵。只要队伍有人死亡,系统就会掉出额外奖励。

“他们说,死人不算损失。”孟一帆声音很轻,“反正现实里的家人也不知道。”

许停手里的棉签啪地断了。

我没说话,心里的某块地方却慢慢硬了起来。

当天下午,陆行舟果然找上门来。

他没带太多人,只带了两名护卫和一只装着药品的黑色箱子。看见孟一帆躺在沙发上,他眼皮都没抬一下,像是看见一件退回来的货物。

“唐梨,我听说你把我的人带走了。”

“他不是你的人。”

“他欠公会资源。”陆行舟把箱子放在桌上,“我不和你谈道德。现在的规则就是这样:想活,先变强;想变强,就要资源。你有维护员职业,知道漏洞,我们合作,能让更多人活下来。”

他说得很有逻辑。至少听起来如此。

我问:“那你为什么不把低贡献者也带进安全区?”

“容量有限。”

“那为什么把他们赶去危险副本刷资源?”

陆行舟沉默了一秒,露出一个很疲惫的笑:“因为不这么做,资源就会不够。你以为我喜欢这样?我手底下几百个人要吃饭,安全区要升级,治疗药要用,系统不发慈善奖章。”

他说的不是全错。

这也是最麻烦的地方。真正难对付的人,不会把自己当反派。他们总有一套听上去合理的理由,好让自己做过的事显得不得不做。

“我不加入你。”我说,“但我可以跟你做一笔交易。”

陆行舟挑眉。

“我帮你们查一个区域副本的异常。你把被你们赶出去的玩家登记名单交给我,所有还活着的人都得有一条离开安全区的路。”

“你凭什么觉得我会答应?”

“凭你知道归墟有归档倒计时。”我看着他,“而且你也发现了,排行榜上的等级在涨,现实里却没有更多人回来。”

陆行舟脸上的表情终于变了。

很小的一下,像某扇窗被风吹开了一条缝。

“谁告诉你的?”

“系统。”我说,“它不止在清理NPC,也在清理玩家。”

他的护卫下意识看了彼此一眼。

陆行舟沉默了很久,最终把一张地图放到桌上。

“第七码头。那里有个旧灯塔。”他说,“黑帆已经派过三支队伍,全都没回来。你要找的东西可能在里面。”

“名单呢?”

他从口袋里拿出一张折好的纸,放到地图旁边。

“你先把灯塔的副本打通。”他说,“如果你做得到,我就放人。”

“先放人。”

陆行舟脸色沉了下来。

许停忽然开口:“你这么在乎秩序,为什么自己不去?”

陆行舟看向她,眼神有点冷。

“因为我进去过一次。”他说,“我在里面看见了一个人。那个人和我死去的弟弟长得一模一样。”

他顿了顿,像吞下了一口生锈的铁。

“我没能把他带出来。”

这是他第一次不像个公会会长,更像一个还没学会怎么面对失去的人。

他把名单推过来。

“十六个人。名单上还亮着的名字,我都放。”

我没有道谢。

只是把名单折好,放进背包。

“陆行舟,别再把人当资源了。”我说,“你欠他们一句话。”

他没回答。等他走到楼梯口时,我听见他低低骂了一句,像是在骂我,又像是在骂自己。

6 旧灯塔里没有宝箱

第七码头在城北,平时是个废弃货运区。游戏化以后,海水沿着路面漫上来,路灯发出病恹恹的黄光,远处停着一排生锈的集装箱。灯塔建在防波堤尽头,塔身只剩一半白漆,顶部的灯却一直亮着,像一个不肯闭眼的人。

我们一共五个人:我、许停、许至、孟一帆,还有坚持要跟来的胖子——本名马骁,自称“骁哥”,直播间名叫“胖虎不怕鬼”。

他在公交副本通关后就赖上了我们,理由是“我这人没啥优点,就是有镜头感”。说完又补充:“当然,最重要的是我不想一个人死。”

这句倒很诚实。

马骁的直播功能居然还在。他把手机架在胸前,画面右上角挂着实时弹幕。起初只有几十条,后来观看人数越滚越快。

【这就是那个维修员?】

【听说她在公交副本里把规则改了?】

【吹吧,测试员能有啥用。】

【卧槽,旧灯塔,黑帆三队灭在这儿了?】

马骁低声说:“大家别送礼物了,真不是我炒作,今天咱们要么打出隐藏结局,要么一起交代在这儿。”

许停回头看他:“你直播给谁看?”

“给外面的人看。”马骁说,“总得让他们知道,里面发生了什么。还有……”他挠了挠鼻子,“我妈在看。我跟她说我在外地参加电竞比赛。她要是看见我真的有点用,应该不会骂我又瞎折腾。”

许至看他一眼:“你不是主播吗?你妈不知道?”

马骁没说话,拿手掌擦了擦手机屏幕。

灯塔的大门没有锁。门上的铜牌刻着一行字:

请在最后一束灯光熄灭前,找到回家的路。

进入副本后,视野中出现了新的规则。

【副本:第七码头灯塔。】

【通关条件:点亮灯塔顶端的灯。】

【规则一:每层只能有一个人说话。】

【规则二:听见熟人的声音时,不要回答。】

【规则三:灯塔没有第七层。】

【规则四:不要打开写着“值班记录”的抽屉。】

我抬头看楼梯。灯塔里面只有螺旋形的铁梯,一层一层向上盘旋。墙上挂着褪色的海图,潮气把纸边泡得卷起来。每隔一段距离,就有一扇窄窗,窗外海面黑得看不出浪在哪儿。

“每层只能有一个人说话。”马骁念完规则,赶紧把嘴捂住,“那我们怎么交流?”

“手势。”许停说。

她刚说完,第一层的灯就灭了。

楼梯深处传来一个男孩的声音。

“姐,你在哪儿?”

许停整个人僵住。

那声音和许至一模一样。

真正的许至就站在她身边,脸色也变了。他伸手抓住姐姐袖口,轻轻摇头。

“不是我。”

可那声音还在继续。

“姐,我有点冷。”

许停把嘴唇咬得发白。她眼底有水光翻上来,胸口起伏了好几下,才缓缓把目光从楼梯深处移开。

她没有回答。

灯重新亮起。

我在心里记下一笔。这个副本用声音诱使玩家违反规则,但它有个漏洞:如果必须保证每层只有一个人说话,那规则可能只统计当前楼层的发声者,而不是整座塔。换句话说,我们可以分层行动。

我们用手势确定顺序,我先上,其他人每隔半层跟进。楼梯很窄,铁栏杆上有一层潮湿的盐霜,手一摸就粘上一片白。爬到第三层时,我的呼吸已经乱了,鞋底踩在铁梯上,咚、咚、咚,像有人跟在身后。

墙上出现一道涂鸦,字迹歪歪扭扭:

不要相信值班员。

再往上,一扇门半开着。门后有张小桌,桌上放着半杯冷茶、一只削到一半的苹果,以及一本封皮裂开的值班簿。

规则四说,不要打开写着“值班记录”的抽屉。

抽屉就在桌下。

我蹲下去,没碰它,先检查桌面的灰尘。那杯茶旁边有一圈圆形水渍,说明最近有人来过。苹果被削掉一半,刀口却没有氧化。这里不是十年前遗弃的地方,而是某个东西一直在重复值班。

我翻开自己的界面,果然看见一行异常字段。

【Tower_Floor:6】

【Tower_Floor_Display:第六层】

【Floor_Count_Limit:6】

【隐藏楼层:未定义】

灯塔没有第七层——这句话可能不是在告诉我们它不存在,而是在禁止我们承认它存在。

我刚想招手,楼梯上方突然传来一声轻响。

“唐梨。”

是我自己的声音。

“你还记得测试组最后一晚吗?”

我手指一麻。

“你记得自己为什么那么拼命吗?你记得他们走的时候,有没有一个人真的回头看过你?”

那声音不急不慢,像在念一份我早就背熟的离职报告。

我没有回头。

可它知道更多。

“你其实不是想把游戏做好。你只是想证明,自己不是随时可以被删掉的人。”

我站在原地,掌心慢慢渗出冷汗。

这句话太准了。准到我一瞬间分不清,是系统在读取我的记忆,还是我平时不愿意承认的东西终于找到了一个声音。

我想起裁员那天。组长站在会议室门口,手里拿着一份名单。每个人被叫到名字,就过去签字。我是最后一个。他看见我时明显怔了怔,说:“唐梨,你先别急,下一家公司我帮你问问。”

我点头,说谢谢。

然后他就走了。

那天我把桌上没喝完的咖啡倒进水池,洗了杯子,擦干净桌面。没哭,也没闹。我甚至把抽屉里几张游戏角色草图整理好,放到公共资料夹里,生怕别人接手时找不到。

这段记忆还在。被系统拿走的是测试组最后一夜:大家挤在会议室里,说着什么,外套披在肩上,有人把可乐罐推到我手边。我知道那是个重要的晚上,却再也想不起他们当时说了什么。

我以为自己不在乎。

原来我只是习惯了在被丢下之前,先把现场收拾干净。

楼梯上的声音笑了笑。

“回头吧。你看一眼,就知道是谁在等你。”

我闭上眼,缓慢吐气。

“不回。”

那声音停住了。

“为什么?”

“因为这台词写得太差。”我说,“角色不应该知道玩家的私人记忆。还把我的自我怀疑写成旁白,像低成本心理测评。扣分。”

身后静得可怕。

下一秒,整个楼梯都震了一下。

墙上的灯从下往上熄灭,楼梯顶部亮起一圈灰白色的光。那光里露出一扇门,门牌上写着:

【第七层。】

规则里说,灯塔没有第七层。

可门就在那儿。

我推开门,里面不是宝箱,也不是BOSS房。是一间很小的儿童卧室,墙上贴着卡通海豚,窗台上放着一排贝壳。床头有一只旧收音机,正在播天气预报。

“明天沿海有大风,请渔船注意避险。”

桌上摊着一张作业本,姓名栏里写着:小满。

我终于明白,所谓第七码头,不是地图位置。

它是这个副本被删掉的那一部分。

床上坐着一个女孩,穿着洗得发白的校服裙,脚上是一双不合脚的雨鞋。她看见我们,先是退了一步,随后死死盯住我的工牌。

“你是修东西的人吗?”她问。

“以前是。”

“那你能不能帮我把灯修好?”

她指向墙角。

那里是一盏坏掉的海灯模型,玻璃罩裂成了两瓣。灯芯早就灭了,里面却还有一截被烧黑的棉线。

“灯修好了,哥哥就能回来吗?”她问。

我不知道她的哥哥是谁。

但我记得公交车司机胸前那张旧车票,记得小齐的红马甲,也记得医院四楼那张第十三号病床。

这些角色有相同的灰色状态栏。他们都是未归档意识碎片,被系统判定为无用的数据残留。游戏不需要他们有过去,只需要他们按照脚本反复说话、推动玩家走向下一关。

我把手伸向灯罩。

维护面板亮起。

【发现可修复异常:灯塔光源未与离场事件绑定。】

【修复所需:维护权限×1。】

【当前维护权限:0。】

我愣住了。

这次没有权限。

之前便利店副本消耗掉了那一次机会,隐藏任务给的权限还没拿到。没工单,就不能改逻辑。

我看向女孩:“你知道这里怎么出去吗?”

她摇头。

“每次有人来,我都要带他找灯。但灯坏了,他们就走不了。”她的声音很轻,“后来他们都不来了。”

许至向前一步。他从口袋里拿出公交车司机给的旧车票代币,递到女孩手中。

“这是我朋友给的。”他说,“也许能当灯塔的钥匙。”

车票碰到灯座的瞬间,桌上的收音机停了一下。

系统面板闪过一条消息:

【发现跨副本道具关联。】

【隐藏任务进度:1/3。】

小满抬起头,眼眶里的灰色褪去一点。

“你们见过陈叔叔?”

我点头。

“他送我回家过一次。”她说,“那天特别冷,他把自己的手套给了我。后来我再也没见过他。”

她低下头,手指慢慢抚过车票边缘。

“我记得他。”

那一瞬间,我心里忽然明白,所谓“未归档意识”,不是一个系统错误那么简单。有人写下这些人,有人给过他们名字、习惯和一句没来得及说完的话。后来项目停了,相关文件被删除,所有人都觉得它们只是没用的数据。

但某个地方,它们还在等。

楼下传来巨响。铁梯开始崩裂,马骁在对讲频道里大喊:“你们再不出来我就要给你们立遗像了!真的!”

我抓住小满的手。

“先离开这里。”

她摇头:“灯还没亮。”

“我们会回来。”

“你们都会这么说。”

她没有哭,只是把嘴唇抿得很紧,像是早就学会了不相信承诺。

我蹲下去,和她平视。

“那我不说会回来。”我说,“我告诉你,我们现在要去找修灯的权限。你可以跟我们一起走,也可以留在这里等。但这回由你自己选。”

她盯着我看了很久。

最后,她把那只坏灯抱在怀里,点了点头。

我们冲出第七层时,整座灯塔正在向海面倾斜。马骁靠在门口,脸色惨白,手机屏幕碎了半边。他看见我们,先骂了一句,随后伸手把小满拉过来,护在身后。

“这小孩哪来的?”

“我们队伍新成员。”我说。

“她有等级吗?”

“没有。”

“有攻击技能吗?”

“没有。”

“有装备吗?”

小满把坏灯抱得更紧。

马骁吸了一口气,抬手揉了揉脸。

“行。那我负责带她逃命。”

他的直播弹幕疯了一样往上滚。

【这也能带出副本?】

【那是NPC吧!】

【我感觉她不是普通NPC。】

【我妈刚才看哭了,谁懂。】

灯塔在我们身后轰然倒塌,却没有砸进海里。它化作一片片灰色方块,被黑暗吞没。

所有人视野里出现了同一行字:

【副本“第七码头”通关失败。】

【隐藏任务进度:1/3。】

【玩家状态:存活。】

我盯着第一行,忍不住骂了句脏话。

马骁侧头看我:“失败了?可我们人都出来了啊。”

“因为任务没完成。”我看着小满怀里的坏灯,“游戏把活下来当成通关,却不承认我们带出来的人。”

这比怪物更让我火大。

7 这不是最后一个副本

到了第三十六小时,归墟的清理进度已经超过百分之九十七。

城市开始出现大面积的空白区。不是被怪物毁掉,而是像某个美术资源加载失败的画面,楼房的边缘被一块块灰色方格替代,路上的行人有时走着走着就消失了,留下手里拎着的塑料袋悬在半空,几秒后才掉到地上。

安全区里的人越来越多,争吵也越来越多。

有人要求关闭副本入口,有人认为只要杀够怪就能升级,所有问题都会解决。黑帆公会把部分资源退了回来,陆行舟亲自带人守住医院和地铁口,但还是有人不相信他,见了他就骂。

他没有还嘴。

某天凌晨,我看见他独自坐在体育馆外的台阶上,手里拿着一张很旧的家庭合照。照片上的男孩和他有几分相像,两个人站在海边,脸被太阳晒得眯成一条线。

“我弟叫陆行远。”他看见我走过来,把照片收回口袋,“以前我总说他不争气。他不喜欢读书,喜欢画画,后来非要去做游戏美术。我爸气得把他的画全撕了。我当时没拦。”

他笑了一下,笑意很快散了。

“他死后,我一直觉得,只要我站到足够高的位置,就能证明我当年没错。可后来我在灯塔副本里看见他。他问我,哥,你是不是从来没看过我画的画。”

我站在他旁边,没说话。

“我没回答。”陆行舟说,“因为我真的没看过。”

他抬头看天。天上漂着一排排没有加载完的星星,像某个孩子用蜡笔随手点出的光。

“唐梨,我现在不知道怎样才算把人救出来。救一个人,是把他从副本里拖出来?还是先承认,他原本就是一个人,不是我能拿来换东西的奖励?”

我想起自己丢掉的那段记忆。测试组最后一夜,我知道那很重要,但已经想不起到底重要在哪里。失去记忆的感觉不像失去一个物件,更像你知道自己曾经在某个地方哭过,回去时却找不到门。

“我也不知道。”我说,“但至少别再替他们做决定。”

陆行舟点了点头,没再说话。

当天晚上,许停在旧网吧的服务器页面里找到了一个新入口。它不在地图中,也不属于任何现存副本。入口名称只有三个字:

【旧版本。】

我点开后,屏幕显示了一段已经被封存的开发日志。

开发日期:两年前。

提交人:曹成。

主题:终局测试——归档逻辑。

日志里写得很清楚:为了控制游戏运行成本,系统需要在每轮测试结束后清理未完成任务、无活跃玩家关联的角色数据,并重置区域副本。为了避免玩家卡在世界里,必须设置强制离场流程。

下方有几条修改记录。

【清理逻辑:已启用。】

【玩家离场事件:待接入。】

【未登记角色归档:自动处理。】

【终局测试:暂缓。】

我盯着“暂缓”两个字,手心慢慢冷下去。

不是因为有人故意制造末日,而是一个本来应该在测试中发现的问题,被当成了以后再修的麻烦。后来项目被砍,版本封存,错误一直留到了最终系统里。现在归墟把现实里的人当成玩家,把NPC当成可清理数据,而每一次副本通关都在加快清理进度。

系统不是在考验我们。

它只是按一套没有完成的流程,认真地把世界删掉。

“那关闭它不就行了?”马骁问。

“不能直接关。”我说,“现在系统把玩家意识和副本绑定在一起,强行断开可能让所有人一起卡死。我们得先补上离场流程,再停止归档。”

“听起来像很简单的两件事。”

“对。”我看着屏幕,“难的是,它从来没准备让我们离开。”

许至突然开口:“那我算什么?”

房间里安静下来。

他指了指自己的状态面板。上面显示着“NPC模板异常”,还有一个随时可能变成红色的清理倒计时。

“如果系统把我当成数据,那我是不是应该被清掉?可我知道我姐小时候怕打雷,知道她胃不好,知道她每次说没事的时候都是真的有事。”

许停转过身,眼眶一下红了。她张了张嘴,又怕一开口就哭出来,只能伸手搂住弟弟的肩膀。

许至没有躲。

“我不是说我不想活。”他声音很低,“我只是想知道,我活着是不是一件错事。”

我不知道该用什么规则回答他。

但我知道,他不应该需要任何系统批准,才能成为一个人。

这时,屏幕突然跳出一条强制公告。

【最终清理提前启动。】

【剩余时间:12小时。】

【请所有玩家返回初始安全区。】

【未归档角色将于倒计时结束后删除。】

窗外的街道一寸寸变灰。远处有人尖叫,随后声音被某种无形的东西切断。马骁把手机放下来,脸上的血色慢慢褪去。

“直播还在。”他说,“外面所有人都看见了。”

他的弹幕停了几秒,又疯狂刷起来。

【我弟还在副本里。】

【我妈是NPC,她刚才在超市里叫我名字。】

【求求你们别让它删掉我女儿。】

我盯着那些字,喉咙紧得发疼。

我原本只想活下来,拿回自己的生活,不再给任何人收拾烂摊子。

现在整个世界都在等一个还没写完的工单。

我打开维护界面。

【维护权限:0。】

【隐藏任务进度:1/3。】

【最后一轮可提交工单时间:11:59:59。】

“好。”我说,“那就去把剩下两段记忆找出来。”

马骁看着我,像是想说你疯了,最后却把手机重新架好。

“家人们,别下播。”他对着镜头说,“我们这回真去修游戏。”

8 把退出按钮还给所有人

最后两段记忆分别在旧版本的两个副本里:一座停用的学校,一间已经封存的开发工作室。

我们只剩十二小时,没有时间慢慢练级。陆行舟带来黑帆公会里愿意留下的二十多个人,把他们收集的药剂、武器和路线图摆在桌上。他没有再要求谁交贡献值,只说了一句:“愿意去的就去,不愿意的留下守安全区。回来以后,没人欠谁一条命。”

这句话不算多漂亮,却让屋里安静了好一会儿。

第一站是旧学校。

副本入口藏在一栋被灰色方块吞了一半的教学楼里。走进教室时,墙上的黑板还留着一行没擦干净的字:

今天的作业:写下你以后想做什么。

桌椅排列得整整齐齐,每张桌上都放着一张作文本。窗外没有操场,只有无边无际的黑暗。讲台上的粉笔盒里插着一支红笔,笔帽上贴着一个小小的纸标签:小满。

小满站在最后一排,抱着那盏坏灯。她一路上都很安静,只在经过便利店时回头看了一眼,又在经过公交站牌时把灯抱得更紧。

“这里是我以前的学校。”她说。

“你还记得?”我问。

“我记得放学的时候,哥哥会在门口等我。”她看着黑板,“可我想不起他的脸。”

我们每个人桌上都出现了一张作文本。纸上只有一个问题:

【请写下你最想回去的那一天。】

马骁拿起笔,犹豫很久,写了“高考后那个暑假”。他写完又划掉,改成“第一次直播破十万播放”。再划掉,最后写了:

我妈给我煮了一碗面,没说我没出息。

写完后,他把本子合上,揉了揉鼻子。

“这题太变态了。”他说,“写个愿望还得把自己剖开。”

许停写的是弟弟高三那年。她值完夜班回家,看到许至趴在餐桌上睡着,旁边摆着两盒没拆的牛奶。她当时嫌他不洗碗,叫醒他让他去睡床。第二天起床,发现那两盒牛奶是他给她准备的早餐。

她写完以后,盯着纸面看了很久,轻轻用手指擦掉一处被水滴晕开的墨迹。

许至没有写日期。他只写了一句话:

我想要一个不用姐姐签字,也能留下来的地方。

我的纸上迟迟落不下笔。

我想回到测试组最后一晚,想回到第一次打开游戏的时候,想回到更早一点,那个我还相信只要认真做事就一定会被看见的年纪。

可真正让我放不下的,并不是哪一天。

而是我一直把“被留下”当成一种奖励。只要我够有用,别人就不会把我删掉;只要我提前收拾好现场,就不会显得太狼狈。

我拿起笔,写:

我想回到不用证明自己有用,也能坐在桌边吃饭的那一天。

最后一个字写完,教室的灯亮了。

黑板后面出现一扇门。门打开时,里面传来上课铃声,清脆得像从很远的地方飘过来。

【隐藏任务进度:2/3。】

【获得维护权限×1。】

第二站是开发工作室。

我原以为它会和现实里的旧公司一样,堆满外卖盒、坏掉的键盘和贴着“冲刺”的白板。可推开门后,眼前是一间空旷的白色房间。墙上没有窗,只有一面巨大的屏幕。屏幕中央站着一个男人,穿着我曾经见过无数次的灰色衬衫。

曹成。

他是《归墟》的制作人,也是当年在裁员名单上签字的人。

我不确定这究竟是他本人,还是系统用他的模型复制出来的角色。但他的声音没有变,仍然带着那种随时准备结束会议的疲倦。

“唐梨。”他说,“你还是喜欢管不该管的事。”

我没回答。

屏幕上展开了项目旧版的需求文档。最早的《归墟》并不是一款恐怖生存游戏。它最开始想做的是一座能容纳许多故事的城市,玩家可以进便利店买水,坐末班车回家,在医院探望家人,也可以在放学后去灯塔听海。

后来预算不足,项目被迫加入更多刺激玩法。普通的生活太慢,玩家留存不够;NPC的支线成本太高,删掉能省资源;结局需要计算,最终让位给无限循环。

每一次删减都很小。

每一次都有合理的理由。

直到有一天,所有不符合效率的东西都被删掉了,只剩下一套要求玩家不断完成任务的系统。

“你当时提过退出流程。”曹成说,“我记得。”

“你批了暂缓。”

“项目要上线,成本不够。我们原本打算等融资后再修。”

“然后项目被砍了。”

“是。”

他没有为自己辩解。那反而让我更难发火。

曹成看着屏幕里的角色数据,眼神慢慢变得空洞。

“我知道你想做什么。你想修复退出流程,放所有人离开。但你得明白,归墟现在不是一个普通游戏。它在自动归档玩家意识和角色意识。要停止清理,就必须把所有未完成记录重新接入主线。那会让系统过载。”

“所以呢?”

“所以你只能选一边。”他说,“保存玩家,删除NPC;或者保存NPC,放弃玩家的离场。系统没有第三种方案。”

我看见界面下方的倒计时只剩两小时。

【最终清理:01:59:42。】

曹成的影子投在屏幕上,细长、僵硬,像一个被固定在演示文稿里的剪影。

“唐梨,你是测试员,不是设计师。找出问题,不代表你有权改掉它。”

这句话我听过很多次。

以前每次我提交一份工单,都会有人告诉我不是现在,不是这个版本,不是你的职责。到后来,我甚至会在写工单之前,先替别人把拒绝的理由想好。

我抬头看着曹成。

“那我今天不光找问题。”我说,“我还要改。”

他叹了口气。

“你会把系统弄崩。”

“那就让它崩一次。”

我打开工单界面,把修复权限拖到主流程上。屏幕立刻跳出一排红色警告。

【警告:离场事件未绑定。】

【警告:未归档角色数量超出上限。】

【警告:所有副本将进入不可控状态。】

我没有点确认。

因为我知道,光补上离场事件还不够。系统必须先承认这些角色的存在,才能让他们被一起带出去。否则它会把他们当成清理过程中的残留垃圾。

“你要先做角色归档。”曹成说,“把他们全部登记为玩家。”

“这会影响什么?”

“所有人都获得自主选择权,包括那些你不喜欢的人,包括想伤害别人的人,包括可能再次做错事的人。系统不能替你判断谁值得留下。”

我盯着屏幕,忽然笑了。

“这不就是你们一开始做游戏的目的?”

曹成没有回答。

小满走到屏幕前。她把坏灯放在地上,仰头看着那个曾经写下她脚本的人。

“我不想当玩家。”她说。

曹成的表情第一次出现裂痕。

“你不想?”

“我不知道玩家是什么。”小满说,“我只想记得我哥哥。我想知道他有没有来过这里,我还想自己决定,什么时候关灯。”

许至走过来,把那张写着愿望的作文本递到她手里。

“那就写进去。”他说,“你想要什么,就写进去。”

小满接过本子,认真想了很久,拿起笔写下一行字。

我希望天亮以后,灯还是我自己开的。

那一刻,我忽然明白,系统需要的不是把所有人变成同一种身份,而是给每个人留下可以选择的出口。

我把归档规则改成了这样:

【角色归档不再以玩家身份为唯一标准。】

【所有具备持续记忆、稳定偏好与自主选择行为的意识体,均获得独立离场选项。】

【离场事件:允许主动触发。】

【副本清理:等待所有参与者确认。】

红色警告一条接一条跳出来。我的视野开始发白,耳朵里响起尖锐的电流声。系统提示我的维护时长归零,角色状态开始崩解。

【是否支付最后一项记忆,完成最终修复?】

那条选择下面,是一行灰色的小字。

【记忆编号QA-017:你第一次相信自己能把事情做好。】

我盯着它,久久没有动。

如果支付这段记忆,我或许能完成修复。但修复完成后,我会忘记自己为什么走到这里,忘记自己曾经喜欢过这款游戏,忘记那个为了证明自己而坚持了很多年的唐梨。

我忽然有点舍不得。

不是舍不得荣耀,也不是舍不得过去那些加班的夜晚。我舍不得那个曾经很认真、很笨拙、会在凌晨把每个角色台词读上几十遍的自己。

她未必被谁珍惜过。

但她曾经是真心的。

“别付。”许停走到我身边,眼里全是血丝,“一定还有别的办法。”

“没有时间了。”

“那也不能让你把自己删掉。”

马骁也从旁边挤过来,举着已经只剩半块屏幕的手机:“直播间里有几百万人。外面的人可以一起确认吗?你刚才说,系统要所有参与者确认。那我们就让所有人来确认。”

我怔住了。

是的。归档流程没有规定必须由我单独操作。

系统只是把维护权限给了我,却没有说选择只能由我做。

我打开直播广播,把最终确认页面投射到所有尚未被清理的区域。

每一个安全区、每一个副本、每一个被复制过的医院病房和便利店,都出现了同样的问题:

【你是否承认自己看见过的人,有权选择留下或离开?】

没有“是”或“否”的奖励,没有经验值,没有装备。

只有一个确认键。

最先亮起的是一间普通出租屋。一个抱着孩子的女人按下确认。紧接着,医院走廊里的护士按下确认,公交车上的司机按下确认,便利店的小齐按下确认,旧灯塔的小满也伸出手,把指尖放在那块虚拟的屏幕上。

然后是越来越多的人。

有人骂着按,有人哭着按,有人沉默了很久才按。也有人拒绝,他们觉得NPC不该拥有和玩家一样的权利,觉得这样会让世界变得危险。系统没有强迫他们,只把他们的选择记录下来。

确认数慢慢增长。

百分之二十。

百分之四十一。

百分之六十三。

倒计时只剩十秒。

曹成站在屏幕前,脸色苍白。他终于抬起手,按下了确认。

“我知道我做错了。”他说,“至少这次,别再替他们决定。”

倒计时归零。

世界没有爆炸。

没有金色光柱,也没有巨大的机械之神从天而降。

只是所有一直响个不停的提示音,同时停了下来。

接着,城市里第一扇真正的门开了。

公交车站牌下,司机慢慢走下车,手里握着那张已经发白的车票。便利店的卷帘门升起来,小齐穿着自己的衣服走到街上,抬头看了看天。医院四楼,所有病房的灯一盏盏亮起来,病人们可以选择留下,也可以选择离开。小满站在旧灯塔顶端,亲手把那盏修好的灯点亮。

光落到海面上,像一条短而清晰的路。

系统最后弹出一条提示:

【离场流程已恢复。】

【强制归档已停止。】

【《归墟》进入自由存档模式。】

我的眼前一片漆黑。

我以为自己要消失了。

然后有人拍了拍我的脸。

“唐梨。”许停的声音从很远的地方传来,“醒醒。别在这个时候睡,你很会挑时候吗?”

我咳了两声,睁开眼。

旧网吧的天花板就在头顶,灯管坏了一半,剩下那一半闪得人眼睛疼。马骁坐在旁边,鼻子上贴着创可贴,正对着手机说:“大家别刷问号了,她活着,没死,别催我报喜讯,我也想休息。”

许至靠着墙,手里拿着那张作文本。他看见我醒来,松了口气,嘴角往上抬了一点。

“姐说你修好了。”他说。

我看向许停。

她把一杯热水递给我,眼下有两道很深的青黑。

“修好了?”我问。

“暂时。”她说,“系统还有很多没清理完的问题。”

“听上去像我以前的工作。”

“对。”她终于笑了一下,“所以我替你拒了三份工单。”

我接过水,喝了一口。水有点烫,我被呛得咳起来。马骁在旁边大笑,笑到一半又把声音压了下去,像担心笑声太大,会惊动什么还没完全归来的东西。

窗外,天色正在变亮。

远处的城市仍然有灰色的方块,系统界面也没有彻底消失。但街边的早餐铺子重新亮起了灯,老板把一锅豆浆端上桌,蒸汽在玻璃窗上凝成一团白雾。有人排队买油条,有人抱着孩子,有个骑自行车的老头停在红灯前,低头看着自己眼前的等级面板,嘀咕了一句:“这东西不能关,倒挺烦人。”

我听见自己笑了一声。

不是因为世界终于好了,而是因为它还在继续。

小满站在网吧门口,怀里抱着修好的灯。她换了一件浅黄色外套,头发扎得有点歪,像一个真正刚放学的孩子。

她看见我,走过来,把一张纸递给我。

“我哥哥的名字,我想起来了。”

纸上写着两个字:陈舟。

“他真的回来了吗?”我问。

小满摇摇头。

“我不知道。”她说,“不过我记得他了。以后不管他回不回来,我都知道自己在等谁。”

我看着那张纸,忽然觉得心里有一点空,也有一点安稳。

她又把坏掉过的灯递到我手里。

灯已经修好了,外壳上仍留着一道裂痕。

“送给你。”她说,“你以后要是又遇到坏东西,可以试着修一修。但别什么都修。”

我一愣,随即笑了。

“这句话谁教你的?”

“没人。”她把手背到身后,“我自己想的。”

那天之后,归墟没有消失。

它变成了一款真正可以退出的游戏。有人继续挑战副本,有人只在安全区种菜,有人每天去医院看望曾经见过的NPC,有人专门写攻略教新人识别规则漏洞。游戏公司的名字从热搜上消失,曹成接受调查,陆行舟解散了黑帆公会,和几个曾经被他赶出去的玩家一起开了间物资互助站。

我没有回前公司,也没有立刻找到新工作。

我先睡了三天。

第四天醒来,马骁把一份新合同拍在我床边。

“《归墟》官方维护团队,招兼职。”他说,“按工单结算,修好一个副本给一次报酬。没有无偿加班,没有‘暂缓处理’,也不准把NPC写成消耗品。你看,条件多好。”

我翻到最后一页,发现薪酬栏写着:按异常等级分成。

我把合同扣回去。

“工资谈妥之前,不接。”

马骁愣了两秒,随即笑得差点从椅子上摔下去。

“行,唐老师,你终于学会了。”

我没问他学会什么。

我只是拿起手机,打开新版本的归墟。首页没有倒计时,没有强制登录,也没有血红色的警告。只有一个很普通的提示:

【欢迎回来。】

下面有两个按钮。

【开始游戏】

【退出】

我盯着那个“退出”看了很久,最后伸手摸了摸屏幕。

然后我点了开始。

不是因为我又想证明自己有用。

只是因为我想知道,小满点亮灯塔以后,海的另一边是什么样子。

这一次,我知道自己随时可以离开。

所以,我愿意留下。

沪ICP备16008431号-1

本站所有内容都已取得正版授权,且不适合未成年人观看。版权声明 - 投稿声明 - 自审制度 - 免责声明