《入侵你的代码层》 1. 代码囚徒 李析睁开眼时,第一个感觉是冷。 那种冷不是冬天刮风时的冷,而是像整个人被泡在冰水里,骨头缝里都在往外渗寒气。他下意识地蜷了一下手指,却看到自己的手掌是半透明的,指缝间能模模糊糊看到地面——一种灰白色的、像结了一层薄霜的平面,触感像是踩在玻璃上,每动一下脚下就会荡开一圈细碎的光纹。 他猛地坐起来。 这不是他睡着的地方。他记得自己昨晚在办公室里调试《深渊纪元》公测前的最后一次系统压测,凌晨三点才歪在椅子上眯了一会儿。可现在他不在办公室。这里——这里什么都没有。灰白色的空间向四面八方无限延伸,没有墙,没有天花板,只有他和脚下那片会泛波纹的“地”。 他深吸一口气,试图让自己冷静下来。 "调出菜单。" 声音从他喉咙里发出,但在空气中像是被吞掉了,没有回响。过了大约两秒,他眼前才勉强弹出一个半透明的界面,字体闪烁了几下,有一瞬间全是乱码,然后又慢慢拼凑回来。 【欢迎回来,李析。当前状态:异常。】 异常。他把这两个字看了两遍,伸手去点"登出"按钮。手指穿过屏幕,界面晃了晃,弹出新的提示: 【权限不足,无法执行该操作。】 他换了个指令:"外部通讯。" 【通讯频道已切断。无法连接任何外部终端。】 再来:"切换至表层视角。" 【权限不足。】 "状态自检。" 这一次界面稳定地展开了,列出他当前的状态参数: 【用户:李析】 【权限等级:工程师后台·只读模式】 【可执行操作:代码检视、任务模板查看、投影生成(受限)】 【可执行操作:无】 【定位:深渊纪元·底层代码区】 底层代码区。 李析盯着这几个字,心跳猛地沉了一截。他做了三年的全息架构工程师,太清楚底层代码区是什么地方了。这里是所有游戏数据的"地基",任何被系统判定为"异常"或"待删除"的数据都会被丢到这里,等待格式化清理。正常玩家永远不可能进入这里,甚至连官方运维人员都需要特殊权限才能打开底层入口。 他被人推进来了。 记忆开始往回倒。公测发布会现场,闪光灯和人声混在一起,他站在主控台前,面前是巨大的全息投影屏,上面跳动着《深渊纪元》正式开服的倒计时。他刚调整完最后一段接口代码,低头去够终端接口——然后后背上被人用力推了一把。 那一推的力道很大,他整个人踉跄着往前扑,摔进了主控台后面刚刚打开的维护通道。他在倒下去的瞬间回头看了一眼,只来得及看到一个模糊的轮廓:黑色手套,压低的身形,还有半句透过变声器传出来的话。 "……清理干净。" 然后通道门关上了,他坠入一片数据洪流。再醒来就是这里。 李析闭了闭眼。对方没让他"死",在游戏数据里死亡最多掉几级经验,但底层代码区的格式化是彻底清除,30天后他整个人就会被当成"冗余数据"删掉——连渣都不剩。在这期间他既不能登出也不能对外联络,等于被锁死在一个倒计时的棺材里。 他重新睁开眼,调出代码检视界面。 只读模式。他只能看,不能改。但至少还能看。 他花了几分钟扫描周围的代码结构。底层区的数据组织比他预想的更糟糕,大段的协议字段缺失,关键节点上满是红色的错误标记。他顺着数据流往上追溯,最终定位到问题的根源——核心协议被删除了。 核心协议是连接游戏表层和底层的中枢纽带,没了它,底层的数据会像断了锚的船一样在代码洪流里飘散、碰撞、崩塌。30天之内,如果他不能重建这段协议,底层区就会全面崩溃,格式化程序启动,把这里的一切永久抹除。 但问题在于,他只有只读权限。他看得到问题,却没有"手"去修。 他需要一个人。一个拥有全服最高权限的人,到底层来替他运行一段修复脚本。那段脚本他有备份,就躺在他的后台文件夹里,可他无法自己执行。必须要有人"代行"。 李析在代码层边缘坐了很久,盯着数据流里偶尔闪过的玩家活动痕迹。他的投影权限可以让他临时搭建一个"窗口"窥视游戏表层的情况,他打开那个窗口,开始扫描在线玩家的数据波动。 波动最大的那个——亮得像灯塔一样刺眼。 李析把那个玩家的公开信息调了出来。ID:张驭。全服战力榜第一。副本通关速度全服纪录保持者。竞技场胜率98.7%。个人简介栏一片空白,连个标点符号都没填。 他点开对战录像。一段BOSS战记录:张驭单挑S级副本"亡魂殿堂"的最终BOSS,血量掉到30%的时候他忽然放弃了所有防御操作,攻击键按到发疯,三秒钟之内把BOSS剩余血条清零了。屏幕上的伤害数字密集得像暴雨砸在水面上,弹幕全是"疯子""这人形自走炮台吧""有没有人管管他"。 李析又翻了翻张驭的行为日志:组队邀请拒绝率98%、公会申请拒绝率100%、世界频道发言记录为0。唯一一次被记录在案的"社交活动"是有人在世界频道骂他"装什么高手,早晚被教做人",当天晚上那人被张驭在竞技场堵住,连杀了十七次,直到对方主动下线。 李析把界面关了。他大概了解了这是个什么样的人:极度讨厌废话,极度讨厌被人当枪使,极度讨厌一切"试图操纵他"的行为。如果李析以"求助者"的身份出现在他面前,大概率话没说完就被一刀劈了。 所以他不能求助。他得发布任务。 李析打开任务模板后台。他的只读权限允许他查看所有已存在的任务模板,也允许他在现有框架下生成"变体"——类似于在系统允许的范围内伪造一个看起来合法的任务。他翻了几分钟,选定了游戏背景故事里一个叫"深渊意志"的设定。那是一个存在于官方设定集里的远古存在,掌管底层规则,已经死亡多年。 死得好。死了的东西没法求证。 李析新建了一个任务,填上名称:【深渊底层·崩塌的大陆】。描述:"代码层出现裂隙,需要勇士进入底层修复。奖励未知。" 他把"奖励未知"四个字敲上去的时候犹豫了两秒。如果写具体奖励,他给不出来,以后一定会露馅。模糊的奖励反而可能勾起张驭的好奇心——这种人什么都有,最缺的就是"没见过的东西"。 然后他锁定了张驭当前的位置:亡魂殿堂,S级副本,正在打最终BOSS。李析深吸一口气,在张驭推开BOSS房门的同一瞬间,把任务面板植入了他的游戏界面。 他屏住呼吸。 画面里,张驭的手停在半空。副本BOSS的石门已经开了一条缝,里面有暗红色的光透出来。但他没往里走。他面前弹出了一个他从未见过的任务面板,悬浮在半空中,字体规整到可疑。 张驭停了一秒。两秒。然后他转过头,四下扫视了一圈,像是在找谁藏在附近。确定周围空无一人后,他右手抬起——刀。 一刀劈下去。 旁边的一根石柱从中间裂开,碎石轰然落地。 "谁在装神弄鬼。"他说。 李析的后背全湿了。他的投影窗口里,张驭的脸正对着任务面板的方向——也就是正对着李析"看"他的方向。那双眼睛很冷,没有愤怒也没有慌张,纯粹是一种被打扰了的不耐烦。 李析强迫自己把呼吸调匀,切出系统语音生成器,用不带任何情绪的机械音开口: "我是深渊意志的残余碎片。底层代码出现裂隙,需要勇士协助修复。" 画面里的张驭冷笑了一声。"深渊意志?官网那本设定集里写这玩意儿三百年前就死了。"他抬刀点了点任务面板,"你这任务的字体格式跟官方活动通知一模一样。你是官方的人?还是哪个黑客闲得慌?" 李析心跳漏了一拍。他没想到张驭会注意到字体格式。这人到底是靠什么在玩游戏,显微镜吗? 但他不能退。他稳住机械音: "我确实已死。现在的我是底层数据残留的'回响',借用了官方系统的外壳才能触达表层。我的存在本身就是一个BUG。" 他顿了顿,加了一句: "30天后,如果裂隙不修复,整个《深渊纪元》的底层架构将崩塌,所有玩家的存档数据会丢失。" 最后那句话是假的。实际上崩塌的只有底层区,表层玩家的数据不会受影响。但李析必须把后果说得足够严重。他在赌——赌张驭虽然冷戾到极点,但还不至于对全服玩家的存档无动于衷。 画面里的张驭没说话。他把刀收回来,扛在肩上,歪着头盯着任务面板看了很久。李析几乎以为他要关了。然后张驭的嘴角动了一下,是一个极其微小的弧度。 "行,"他说,"任务我接了。" 李析还没来得及喘气。 "但我有个条件。" 张驭把刀从肩上拿下来,刀尖指着任务面板上的"深渊意志"四个字,一字一句地说: "你说你是底层残余碎片,那你应该能'出现'吧?别隔着个破面板装神弄鬼。我要你亲自来接我,NPC。到我面前来,当面告诉我下一步做什么。做得到,我就跟你走。做不到——" 他把刀收了,转身朝BOSS房门走去。 "——我就当你编了个不错的系统漏洞,懒得追究了。" 房门在他身后轰然打开,暗红色的光照亮了他的背影。他走进去之前偏了一下头,像是等着什么。 李析盯着那个背影,指节捏得发白。亲自接引意味着他要从底层搭一条投影通道到游戏表层,每一秒都在消耗底层本就残破的稳定性。他现在就像站在一个四处漏水的船上,还要拿船板去搭一座桥。 但不答应,张驭就走了。骗不到第二个了。 他闭眼,开口: "可以。接引通道将在明日开启,届时我会以投影形态出现在你面前。" 张驭"嗯"了一声,头也没回地跨进了BOSS房的暗光里。关门前扔下最后四个字: "别让我等。" 门合上了。画面里只剩一片黑暗。 李析关闭投影窗口,整个人从悬浮姿态跌坐下来,后背抵着一面看不见的数据墙。灰白色的荒漠空间里,只有他一个人,和头顶那串倒计时的数字在无声地跳动。 【倒计时:29天22小时14分。】 他把脸埋进掌心,低低地骂了一声: "……三十天。我怎么撑三十天。" 空旷的底层代码层没有给他任何回答。只有数字还在跳。 一秒。又一秒。 2. 接引任务 接引通道搭建了整整七个小时。 李析不知道自己是怎么撑过来的。底层代码区没有白天黑夜,头顶只有那串倒计时在不知疲倦地跳动,但他能感觉到时间在身体里流过——以疲惫的形式。他盘腿坐在灰白色的荒漠中央,面前悬浮着半个透明的代码编辑窗口,手指在半空中划来划去,一行一行地手写通道脚本。 "拆东墙补西墙……"他低声自言自语,从底层边缘抽了一小段"墙体"数据填入通道框架。"拆完了底层也塌了,但起码……撑过明天再说。" 他每拆一段边缘数据,周围的灰白空间就会暗下去一点点,像烛火被风从远处吹了一口。他余光瞥见那些暗淡,假装没看到。 到了凌晨——如果底层也有"凌晨"的话——通道框架终于跑通了。李析反复测试了三遍稳定性,确认投影形态可以在游戏表层维持大约两个小时。够用了。他不可能在张驭面前待超过两小时,那太危险了。 他最后看了一眼系统面板。 【倒计时:29天1时02分。】 时间又少了。他关掉面板,开始调整投影参数。面部——模糊,必须模糊。他手动加了一层数据迷雾,让整张脸像笼在晨雾里的远山,轮廓还在,细节全无。斗篷选了灰黑色,没有任何可辨识的标识或纹路。身高他微调矮了两公分,站姿重心也往后移了半寸——张驭看过李析作为工程师出席发布会的公开影像,他要确保自己走路的姿势、体态、一切"肢体语言"都和那个站在主控台前的李析对不上。 "启动。"他点击确认。 身体开始从底层"抽离"。像沉在水底的人忽然被一股力量往上拽,眼前灰白色的荒漠开始收缩、褪色,取而代之的是一层层飞速掠过的数据流——蓝色的、绿色的、白色的,像穿过一条由光构成的隧道。 然后光散了。 李析的投影落在亡魂殿堂副本外侧的石径上。游戏表层的色彩瞬间涌进他的感知——暗红色的天空压在头顶,像一块快烧完的炭。残破的石制建筑散落在道路两侧,灰色的雾气从地面裂缝里丝丝缕缕地渗出来。空气里有"焦糊味",那是副本附近残留的战斗特效粒子在缓慢降解。 他低头看自己的手。仍然是半透明的,但比在底层时稍微"实"了一点,能看清指节的轮廓。表层的数据密度比底层高得多,他的投影在这里像是泡在浓汤里,到处都是可感知的"东西"。 他确认周围没有其他玩家。安全。 李析深吸了一口"数据空气"——游戏表层模拟的风从远处吹来,带着一点尘土和金属的味道。和底层那个什么都没有的灰白空间比起来,这里简直像人间。他花了一秒钟贪婪地感受那个味道,然后收住心神,朝副本出口的方向走去。 张驭就靠在副本大门外的一块石碑上。 李析走近时,首先看到的是那把刀。S级武器,刀身上流转着暗红色的数据纹路,像嵌在钢铁里的血管,一明一灭地呼吸着。刀被扛在主人的肩膀上,刀尖朝后,主人懒洋洋地靠在一块坍塌了大半的石碑边缘,脚边散着几块碎石和一枚不知道什么时候爆出来的低级材料。 然后他看清了张驭的脸。 比录像里看着高,也比录像里看着宽。战斗服是黑色的紧身款,把肩线撑得很满——那肩宽在录像画面里被压缩过,站在面前才意识到"这人比普通人多占三分之一的视觉空间"。头发是黑的,剪得很短,额前有几缕散下来,堪堪遮住一点眉骨。五官偏冷,眉压眼重,嘴角自然垂着,没表情的时候整张脸像一块刚浇过水的青石板,又硬又凉。最引人注目的是那双眼睛——在暗红色天光下显得格外浅,瞳孔近乎灰褐色,像两块冻过的石头嵌在眉弓的阴影里。 李析走到大约五步远的地方停下。"来了?"张驭没动。他仍然靠在那里,只是眼珠从远处的天空转到了李析身上。那双浅色瞳孔在李析的投影上停住,上上下下地扫了一遍。目光像刀片在刮——不是"看",是"检测"。从李析模糊的面部到斗篷的褶皱,从半透明的指尖到站姿的重心脚,每一个细节都被那双灰褐色的眼睛过了筛子。 沉默持续了大约五秒。 然后张驭开口:"你就是深渊意志?" 他顿了一下,嘴角动了动,那个弧度介于嗤笑和嘲讽之间:"瘦成这样?" 李析在心里骂了一句。他料到张驭会打量他,没料到第一句就是拆台。"瘦"——一个神祇级的意志碎片怎么会有"体型"的概念?他维持机械音,语调不带任何情绪:"形体为数据投影,与生前的□□特征无关。请随我进入底层。" 张驭没接话。他从石碑上撑起身来——那个动作看着很松弛,像午睡醒了伸个懒腰。但李析注意到他的步距比普通人略小,重心始终压在前脚掌上。随时可以拔刀。这个人睡着的时候和醒着的时候,大概是一个姿势。 张驭走到李析面前,距离不到半步。他比李析高了大半个头,李析的视线平视过去只能看到他的下巴和颈侧的线条。张驭垂下眼睛——李析能感觉到那道视线落在自己的斗篷领口附近——然后突然伸出手。 两根手指捏住了李析斗篷边缘的布料。 那个动作太快了,快到李析没有时间后退。他能感觉到那两根手指捏住的位置传来了"触感数据"的反馈——张驭的指尖温度偏低,但捏合时的力度很稳,甚至微微摩擦了一下斗篷的纤维纹理。那纹理是李析随手复制的系统默认布材参数,他根本没想过会有人去摸。 张驭低头看了看自己的指尖,又抬眼看向李析模糊的脸,嘴角那点弧度又浮出来了。这次比刚才大了半分,像一枚硬币的边缘终于翻过了桌角。 "意志碎片还有体温?"他收手,指尖轻轻搓了搓,像在回味触感。"而且——"他垂眼看了一下自己的指腹,"布料仿真率挺高。你们这服务器的材质库该更新了。" 李析后背的冷汗在这一秒之内浸透了整条脊柱。全息游戏的NPC不会模拟体温——那是给玩家角色用的物理交互功能。他忘了把投影的"物理交互参数"调到零。一个只有"残余回响"的NPC不该有可以被触摸到的温度和纹理。 低级的错误。在张驭面前,低级错误就是能要命的错误。 李析的脑子在0.5秒之内飞速转了一圈,然后在后台瞬间触发了一段微小的数据干扰。他的斗篷表面闪过一道细碎的光纹,像老电视屏幕上的雪花,紧接着整个人影模糊了半秒。他用"数据不稳定"来解释刚才的一切——看,我不是真人,我只是个信号不好的投影。 同时他维持机械语调开口:"投影形态为高精度模拟,以降低玩家认知不适。请专注任务目标。" 张驭后退了半步,看着李析模糊又恢复的身影,眉头微不可察地动了一下。那个表情一闪就没了,快到李析几乎以为自己看错了。"你这是什么毛病?"张驭把捏过斗篷的手指垂回身侧,"信号不好?" "底层裂隙正在侵蚀投影稳定性。"李析用比刚才更冷、更机械的语调说,"时间有限。请尽快进入底层。" 他在催促。用催促覆盖刚才的破绽,用"紧急"掩盖"心虚"。这是他此刻能想到的最好策略。 张驭看了他几秒。那几秒里四周只有风声,副本外的荒原上有两只低级怪物慢吞吞地走过,完全无视了两人。然后张驭把刀从肩上拿下来,随手往地上一戳。刀尖没入地面一寸,周围的地砖裂了几道蛛网状的细缝。 "行。"张驭说,"但我先说清楚。" 他微微俯身,压近李析的投影。两人之间的距离从半步缩到了半步的一半。李析能感觉到张驭呼出的气流——玩家角色有模拟呼吸,那气流带着一点微凉的数据温度,扫在他模糊的面部轮廓上。 "我跟你下去,"张驭说,声音比刚才低了一个八度,"不是因为我信了那套'深渊意志'的鬼话。是因为三十天'全服数据崩塌'——如果是假的,你这系统漏洞编得挺用心,我陪你玩玩。" 他直起身。"如果是真的——那我也没亏什么。" 李析没接话。他转身朝自己来时的方向迈步:"请跟紧。通道入口在我投影的坐标点。" 张驭拔起地上的刀,不紧不慢地跟在后面。 通道入口在一片空地中央。李析的投影停在那里,脚下的地面开始变得透明——像冰面在阳光下慢慢融化,露出底下一层深灰色的"海水"。先是薄薄一层,然后越来越透,直到灰白色的荒漠地面完全变成了一块透明的玻璃板,下面是浓稠的、缓慢流动的数据暗流。 李析的身体率先下沉。不是坠落,是"渗透",像一滴墨滴进水层里,从表层的亮色慢慢溶入底层的灰色。他沉到胸口时回头看了一眼,张驭正站在入口边缘,低头看着那块透明的地面。他的倒影在数据暗流里微微晃动,像另一个深水处的自己正在抬头看他。 然后张驭也迈了进来。 穿过边界的瞬间,两人的数据流同时剧烈波动了一下——像穿过了一层静电帘,皮肤表面有细密的针刺感。李析预先做了防护,所以只是表皮微麻。张驭没有防护,整个人在穿过那层边界时明显地僵了一下。 "啧。"他偏头看了看自己的手臂,战斗服袖口上沾了几粒跳动的电火花。"有电?" "数据层过渡的伴随反应。"李析的机械音在通道里听起来格外空旷,"通常不会对玩家造成实质性伤害。" "通常。" 李析没接话。两人一前一后穿过灰暗的过渡层,周围的色彩像被水泵抽走一样一层层褪去——暗红色的天空变成暗灰色,暗灰色变成灰白,最后的最后,张驭的靴子踩在了底层荒漠的地面上。 他的双脚刚刚落地,鞋底下的灰白平面就瞬间亮了起来。 不是普通的"亮"。是大片大片的、密密麻麻的红色错误代码从接触点向外辐射,像踩到了一个埋在地底的警报器,红色的字符一层层炸开,向四周扩散,照亮了两人周围十步以内的整片区域。那些代码在空气中短暂停留了一两秒,然后像水纹一样散掉,但更多的又从更远的地方涌上来。 张驭低头看着自己的脚底,红色的光映在他的侧脸上,把他灰褐色的瞳孔染成了暗红。他没有躲,也没有后退。他反而蹲了下来——单手撑着膝盖,另一只手套着战斗手套,沿着一条正在发红的错误代码轨迹慢慢划了一下,像是在摸一道伤口的边缘。 红色的光一明一灭地映着他的脸。 "你们这底层……"他直起身,偏头看向李析,语气里第一次带上了一点说不清道不明的东西——不是恐惧,不是厌恶,更像是一种"确认了什么"之后的平静,像一个人在做了很久的猜测之后终于得到了答案。 "像活人的血管。"张驭说,"一动就流血。" 李析站在两米之外,喉头紧了一下。他没有接话。他在心里重新评估了一件事:这个人不是靠"数据"来理解世界的。他是靠直觉、触感、比普通人多一倍的感知通道来接收信息。跟他在一起的每一秒,李析都像站在一块薄冰上。 张驭收回了手,直起身,开始扫视四周。灰白荒漠向无限远的地方延伸,没有边界,没有参照物,没有天与地的分界。他和李析站在一个什么都没有的巨大空间里,脚下是不时会泛红的错误代码,头顶是看不见的倒计时在跳动。 "行了。"张驭转回视线,落在李析身上,"说正事。我要修什么?怎么修?你陪我多久?" 李析调出代码层地图的投影。一张半透明的结构图在两人之间展开,上面用红点标出了三十个密集分布的断裂处——核心协议被删除后留下的裂隙。那些红点分布在结构图的不同深度,有的靠表层,有的埋在深层,像一个倒置的树冠上缀满了病斑。 "三十个裂隙点。"李析指着那些红点,"每天修复一个,三十天完成。每个点需要你以最高权限运行我提供的修复脚本。全程我会远程引导。" 张驭看着那张结构图,目光从第一个红点移到最后一个,像在数。"三十天。"他重复了一遍,然后偏过头来看李析。"你陪我?" "我会全程指引。" "我问的不是指引。"张驭的视线从结构图上抬起来,直直地落在李析模糊的面部。"我问的是——你这个人,是不是也待在这里,待够三十天。" 李析被问住了。他从来没有想过"陪"的问题。他想的只是"骗一个代行者下来干活",至于他自己——他本来就被困在这里,出不出去不由他选。但张驭的问题隐含了另一层意思:如果李析不是一直守在底层,如果他随时可以"消失",张驭凭什么信他不会跑路? "……我会在底层。"李析说,"你每一个裂隙点都能看到我。" 张驭没 再追问,只点了点头。"行。" 李析带张驭往荒漠深处走。脚下偶尔有红色错误码闪烁,像走在一条会呼吸的路上。大约走了十几分钟,两人面前出现了一道墙。 准确的说是"数据墙"。由无数行灰白色的代码字符堆叠而成的巨大屏障,高不见顶,左右望不到边。那些字符以肉眼无法跟踪的速度飞速滚动着,像一条永远在流动的河流被冻在了原地。墙的正中裂开一道漆黑的缝隙,约一人宽,从底部延伸到李析视线够不到的顶端。 缝隙的边缘参差不齐,里面不断地往外渗出乱码和扭曲的字符——那些字符像有生命一样蠕动着、脱落着、又新生着。李析靠近时能感觉到缝隙内部传来的数据扰动,像站在一座半塌的大坝下面,能听见内部的水流在撞击裂纹。 "第一个。"他说。"难度最低。" 张驭仰头看了一眼那道裂隙的高度。"第一个"三个字从他嘴里出来的时候尾音微微上扬,不是疑问,是一种"你管这叫难度最低"的无声质问。 李析调出修复脚本的界面,悬浮在张驭面前。那是一个半透明的蓝色面板,上面滚动着一长串代码,最底部有一个醒目的红色按钮:【确认执行】。 "脚本已写好。"李析说,"你只需要把最高权限接入这段脚本,然后执行。" "然后什么?" "然后代码会自动缝合裂隙。" 张驭没再问了。他伸出手,指尖点上了蓝色面板底部的"确认执行"。 脚本开始运行。 灰白色的数据流从张驭的指尖涌向裂隙——那是最高权限玩家独有的数据色泽,纯净的亮白色,像冬天的第一场雪覆盖在黑色的裂缝上。那些白色丝线开始填充裂口的边缘,从底部向上,一点一点把张开的伤口合拢。李析盯着进度条,心跳比平时快了大概一倍。 前二十秒一切顺利。白色的修复数据稳步推进,裂口从底部缩窄了大约三分之一。然后裂隙内部忽然鼓动了一下。像一扇关到一半的门后面有什么东西撞了上来。 李析还没来得及开口警告——裂隙里猛地窜出了四五条暗红色的触手。 那些触手完全由乱码和错误数据凝聚而成,表面带着电流一样的细碎火花,扭曲着、滋啦作响着,从裂隙深处横扫而出。一条朝张驭的面门扑去,两条扫向左右两侧,还有一条绕了个弧度,直冲李析的投影而来。 张驭的反应像一帧一帧剪辑出来的动作片。他侧身让开第一条触手的同时右手已经搭上了刀柄——刀出鞘的瞬间暗红色的数据纹路暴涨了一瞬,刀刃划过空气带出一声尖啸。两条扫向左右的触手被他横向一刀同时斩断,断面整齐得像裁纸机切过,断掉的触手在空中扭了两下就化成碎码消散了。第三条朝李析扑去的触手在他回身之后紧跟着追到——张驭回劈的刀锋擦着李析投影的肩膀掠过,切面离他的投影边界大约一指宽,把那条触手从中间劈成了两半。 暗红色的碎片像烟花一样在李析面前炸开,散成细碎的乱码,落在他半透明的脚边,然后慢慢隐去。 张驭收刀,看了一眼在地上扭动着消散的触手残骸,然后侧过头来看向李析。他的呼吸几乎没有变化,像刚才那几刀跟呼吸本身一样不值一提。但他说出来的话带着一种不紧不慢的冷:"你们这'难度最低',起点挺高啊。" 李析站在原地看着他。刚才刀锋擦过肩膀的一瞬间,他清晰地感觉到刀刃带起的"气流"——张驭出刀的轨迹在数据空间里留下了短暂的扰动,如果偏一寸就会切到他的投影,但张驭就是卡着那一寸的边缘过去的。不是运气,是控制力。从拔刀到收刀用了不到三秒,三刀解决全部触手,身上连一点乱码碎渣都没沾上。 李析忽然清楚地意识到一件事:如果张驭有一天把刀对准他,他连躲的机会都没有。 "触手……是裂隙防御机制。"李析用机械音说,尽量不让那点后怕渗进语气里。"你的权限运行修复脚本会触发底层残留的防御程序。后续裂隙点可能也会有类似反应。" "嗯。"张驭把刀收回鞘里,转回去看那道裂隙——白色的修复数据还在继续运行,触手被清除后进度明显加快了。裂隙从底部慢慢往上合拢,像拉链被一双看不见的手从底下拉了上来。 几十秒后,裂隙完全闭合了。原处只剩一道浅浅的灰色痕迹,像旧伤疤褪色之后留下的印记。张驭的数据面板弹出提示:【任务进度:1/30。】 张驭低头看了一眼面板,把刀换了个肩扛的姿势。"二十九个。"他说,语气里听不出高兴还是不高兴,像在陈述外卖还剩几份没到。 李析维持着机械音:"明天的第二个裂隙点坐标,我会在你下次登录时发送——" "不用。"张驭打断了他。"你在这里等我。我每天来。" 他把视线从面板上移开,看着李析。那双灰褐色的眼睛在灰白的底层空间里显得格外浅,像两块埋在雪地里的石头。"我来了,你就在。"他说,"别让我下来之后找不到人。" 李析察觉到"我来了你就在"这六个字里有一种微妙的控制欲——张驭不接受"远程遥控",他要的是"面对面的确认",他要在每次下来的时候看到那个穿着斗篷的模糊人影还站在那里。像在确认自己的猎物没有跑出笼子。 "……可以。"李析说。 张驭转身朝来时的方向走去。通道还在,李析没有关,他穿过那片灰白荒漠的背影在空旷的空间里显得格外高大。走了大约五六步,他停住了。 他没有回头。 "对了,"他说,"你手上那团投影的光——刚才触手出来的时候,它抖了一下。" 然后他继续走了。穿过通道入口,黑色的战斗服被过渡层的数据流吞没,暗红色的刀光在灰暗里闪了一下就消失了。 李析一个人站在闭合的裂隙面前,低头看自己的右手。 指尖——在轻微地发颤。 不是投影的故障。是他自己控制的、身体本能的、害怕了。从被推进底层到现在,他第一次在"没有别人看着"的时刻允许自己发抖。 灰白色的荒漠里,裂隙闭合后的墙面平滑得像从未破过,倒计时的数字在他头顶安静地跳动。李析抬起那只还在发颤的手,看了很久。 他连"害怕"都不敢让别人看见。 可张驭看见了。 3. 第二个裂隙 张驭走后,李析没有休息。 他盘腿坐在闭合的第一个裂隙点旁边,面朝着那道浅灰色的伤疤,面前悬浮着投影配置面板。灰白色的荒漠安静得像被世界遗忘了,只有头顶的倒计时在无声地跳动。他把面板上的参数一条一条地调出来核对—— 物理交互参数:默认0.8,调到0。 布料材质反馈:开启状态,关闭。 温度模拟:活性,彻底归零。 碰撞体积:可触碰,改为穿透协议。 他甚至在投影核心层额外套了一层"数据偏斜层"——任何试图接触他投影的物理交互都会被轻微"滑开",像用手去捞水里的月亮,指尖碰到水面就散了。 "连最基础的投影配置都能漏……"他低声骂自己,指尖在面板上飞速划动,"李析你脑子是被格式化了吗。" 他的手已经不再发抖了。昨晚从张驭离开到他改完所有参数,大约过了两个小时,那段时间里他坐在荒漠的地面上,把自己从被推进来到现在所有的纰漏全都过了一遍。体温、布料触感、"谢谢"、手抖。一共四个破绽。前两个他已经用参数堵上了,"谢谢"他打算归因于"系统语音库采样了真人语音的残片",至于手抖——张驭看到了,但没有追问。 李析不确定那是好事还是坏事。 第二天,张驭如约出现了。 李析提前守在通道入口附近,看到那团黑色的数据流从通道上方沉降下来,像一滴浓墨坠入清水。张驭的双脚落地时,脚下的错误代码照例炸了一大片,红色的字符在地面上散开又消失。他今天换了一件深灰色的战斗服,刀没扛在肩上,而是横挂在腰后,刀柄朝右,出刀的角度和昨天不一样。 张驭落地之后先抬头扫了一圈荒漠,视线掠过灰白色的空旷平面,最后落在李析身上。他站的还是昨天那个位置。 "没跑。"张驭把刀从腰后解下来,随手拄在地上,像拄一根拐杖。"还行。" 李析用机械音回应:"我说过,我会在底层等你。" 张驭"嗯"了一声,没再说话。但李析注意到他嘴角有一个极其微小的弧度——和昨天、前天都不一样。那个弧度太轻了,轻到李析差点错过,它介于"确认了某件事"和"感到某种满足"之间。李析没有深究那个弧度的含义,只当作是张驭确认"工具还在"的日常反应。他转身朝第二个裂隙点的方向走去,步伐比昨天更快、更精确——昨晚他已经计算好了所有裂隙点的最短路径。 他走在了张驭前方大约三步的位置,比昨天远了半步。 沉默走了大约五分钟。荒漠在两人脚下延伸,灰白色的地面偶尔会因为张驭的踩踏而泛起几丝红色的错误光纹,像走在一条伤口还没有完全愈合的皮肤上。中间有一段时间,李析以为这段沉默会一直持续到目的地,但张驭开口了。 "你每天待在这里,"他的声音从后面传来,不紧不慢的,"无聊吗?" 李析没有回头。"底层区无需消遣。我是残余回响。" "我是说——"张驭顿了顿,像在斟酌措辞,"你一个回响,有'无聊'这个概念吗?" "……不。没有。" "那你怎么打发时间?" "我没有'打发'的需求。" 张驭又"嗯"了一声,然后不说话了。但李析能感觉到那双灰褐色的眼睛在自己的后背上落了一路,像一团不大不小的火,隔着三步的距离烤着他。 第二个裂隙点在一片隆起的数据丘陵之间。 那些丘陵不高,最高的也就到人的膝盖,表面覆盖着细密的灰色颗粒,踩上去像踩在干涸的河床上。这次的裂隙不在"墙"上,而是在地面上——横向展开的圆形撕裂口,嵌在丘陵中央的凹陷处,直径约两米。坑口深不见底,边缘不断地往外溢散灰白色的数据粉尘,像有什么东西在坑底缓慢地呼吸,把碎末吹到空中又落下。 李析蹲在坑边。他伸出一根半透明的手指,在空中划了几道分析轨迹,那些轨迹在空气中短暂停留,变成几行快速滚动的代码反馈。 "上一处是协议断裂,"他说,机械音里带着一种无法完全压住的、属于工程师的精确,"这一处是协议被篡改。形状不同,修复脚本也需调整。" 他在话出口的瞬间意识到了问题。"系统判定"和"我判断"是两套完全不同的用语体系。他用了后者。他在不知不觉中暴露了"这个NPC有主观判断能力"。 他立刻收住嘴,但余光里,张驭的眉毛已经动了一下。 张驭没有看坑。他在看李析。他看着李析蹲在那里划轨迹、调参数、把那句不该说的话收回去之后指尖在空中的停顿——然后他忽然开口,语气漫不经心,像在说一件无关紧要的事: "你一个回响,怎么知道代码被改过?" 李析的后背瞬间绷紧。但他没有转头,继续盯着坑口,用机械音回复:"底层回响与代码残留通感。我能感知被修改的痕迹。" 张驭没有追问。他走到坑边蹲了下来。那个动作出乎李析的意料——张驭没有站在他身后,而是绕到旁边,蹲在了他左侧大约一臂的位置。两人并排蹲在坑边,像两个一起看井的人。张驭偏了偏头,视线从坑里移到了李析的侧脸上。模糊的侧脸。他看了大约两秒,然后移开了。 "行,"他说,"你说怎么修,我就怎么修。" 李析松了口气。他调出修复脚本的界面,悬浮在坑口上方,蓝色的面板倒映在黑漆漆的深坑里,像往井里投了一盏灯。"接入权限,"他说,"确认执行。" 张驭再次伸出手,指尖按上确认按钮。白色的数据流从他指尖涌向坑口,开始缓慢地填充那个圆形撕裂。修复的过程比昨天平稳——触手没有出现,坑口的边缘从外向内一层层收拢,像有人从外围往中心一点点缝补一块被撕破的布。 但与此同时,李析做了一件额外的事。 他利用张驭的权限流作为"桥梁",从底层边缘拉了一段加固数据,伪装成"修复脚本的伴随数据流",混在白色的权限流里一起注入底层。他在加固通道入口。昨晚他算过了,如果每次投影都要消耗底层的稳定性,三十天撑不到头。他必须想办法给底层"续命"。张驭的权限流是最完美的掩护——最高权限的数据色泽可以遮掩任何混在其中的"杂音"。 坑口缩到一半的时候,张驭偏了一下头。 "你刚才,"他说,"是不是往里面多加了一段东西?" 李析的指尖僵了半秒。 "检测到裂隙修复过程中伴随数据溢出,"他用机械音说,语速和平时一模一样,"已自动分流至底层其他区域进行无害化处置。" 张驭盯着他。那双灰褐色的眼睛在灰白荒漠的光线下像两块浅水区的石头,什么都映不出来,但什么都收进去了。"自动分流?"他说,尾音微微上挑,"你一个回响,还能'自动分流'?" 李析知道自己刚才说的那句"自动分流"本身就有问题。一个连"无聊"都没有概念的回响,不应该知道"自动分流"是什么意思。他脑子飞速转了一圈,追加解释:"底层回响在特定权限流经过时会触发预设防御协议。那是……系统残存的本能。非我主动控制。" 张驭又看了他两秒。那两秒的沉默里,李析听到自己的心跳在耳膜上撞击的声音。 然后张驭把视线移回了坑口。"嗯。继续。" 他没有相信。李析知道他没有相信。但张驭没有拆穿。 修复脚本继续运行了大约十分钟。坑口从外向内层层收缩,最终完全闭合,只在地面上留下一圈浅浅的灰色环形痕迹,像一个圆形伤疤嵌在丘陵之间。张驭的数据面板弹出提示:【任务进度:2/30。】 两人往回走。李析在前面,张驭跟在后面,距离仍然是三步。荒漠空旷,脚步声在灰白色的地面上几乎没有回响,只有靴底偶尔踩到错误代码时发出的细碎电声。走了大约五分钟,张驭忽然说: "你知道我为什么要接这个任务吗?" 李析没有回头。"因为全服存档数据可能丢失。" 他听到身后传来一声短促的、近乎冷笑的气息。"我对全服存档没兴趣。我连自己的档都没怎么看过。" 李析的脚步微缓了半分,但他没有停。"那为什么?" 张驭沉默了一会儿。然后李析听到身后的脚步声停了。他只好也停下来,转身。 张驭站在原地,刀换了拄地的姿势,灰褐色的眼睛从几米之外看过来。他看起来不怎么严肃,甚至有 一点散漫——一只手插在战斗服的侧兜里,另一只手搭在刀柄上。但他停下来不说话这件事本身,就已经让李析警觉了。 "因为你——"张驭开了个头,又停住了。他像是在考虑要不要把这句话说完,或者说到什么程度。然后他说: "因为你看起来一点都不像NPC。你看起来像个被困在笼子里、还想再骗一个人进笼子替他干活的人。" 机械音在这一刻出现了约0.3秒的延迟。 "……我不理解你的意思。" "不用理解。"张驭迈步从李析身边经过,肩膀与斗篷擦过去的时候,他侧了侧头,声音从很近的地方传过来:"走吧。明天第三个。" 他走出去了。三步、四步、五步。李析站在原地,背对着张驭走远的方向,面朝着那条他们刚刚走过的荒漠来路。他站了大约五秒,然后转身跟了上去。 张驭穿过通道离开了。黑色的战斗服被过渡层的灰色吞没,暗红色的刀光在通道入口闪了一下,然后一切都安静了。 李析独自在荒漠里坐下来。他把今天所有的对话、张驭的每一个停顿、每一次视线停留,从头到尾过了一遍。 "你看起来像个被困在笼子里的人。"——张驭没有用"NPC"这个词。他用了"人"。这意味着在张驭的认知里,李析是玩家、是真人、是某个被关在这里的活物,不是数据造物。 "还想再骗一个人进笼子替他干活。"——他连李析为什么要骗人的动机都猜到了大半。他知道李析需要他帮忙,知道李析在说谎,但他没有走。 李析靠在一座数据丘陵的侧面,灰白色的颗粒硌着他的后背。他看着头顶的倒计时——28天14小时08分。距离被困到底层已经过去了一天半。他第一次从别人嘴里确认了"你看起来是个真人"这件事,而确认的人正是他想要蒙骗的目标。 他忽然意识到一件事:张驭在今天说那句话的时候,语气里没有愤怒。 没有被欺骗后的恼怒,没有"你耍我"的锐利,没有那种他以为会等来的、刀锋抵住喉咙的结局。张驭说出那句"你不像NPC"的时候,语气更像是在陈述一个他观察了一段时间、终于决定说出口的判断。像一个人收集够了证据之后,把拼图最后一块放了上去。 李析做了个决定。他不再做更多掩饰了。既然张驭已经摊了牌,他继续做"完美NPC"反而显得滑稽。他需要调整策略——从"装到底"变成"半藏半露"。用一部分真话来包裹核心秘密,不把张驭当傻子糊弄,但也不把所有真相一次性倾倒出去。他要让张驭觉得"这个人在慢慢坦白",才能让对方有继续留下来的理由。 他站起来,拍了拍斗篷上沾的灰色颗粒,朝通道入口走去。他打算再检查一遍通道加固的效果,确认今天偷渡的那段加固数据确实落了地。 然后他发现了那个异常。 他的扫描界面在检查加固效果时,捕捉到了一段不属于他、也不属于张驭的数据痕迹。那痕迹微弱得像荒漠里一根落在地上的头发,混在大量的空白代码之间,如果不是李析用工程师的精细度逐行扫描,根本不会注意到。 他把那段痕迹提取出来,放大。 格式不是《深渊纪元》的标准代码。他见过这种编码风格——在某份旧的项目文档里、在某个已经被离职的员工留下的遗产代码里,但他在脑子里翻了三遍都没能精确地定位出具体来源。那痕迹的"新鲜度"大约在24到4时之间,也就是说:在李析被困到底层之后、张驭第一次下来之前,底层区还有第三个人——或者第三方的数据——经过这里。 有人在他之前就来过了。 或者,有人在他之后、在张驭之前来过。无论哪一种,都意味着——被暗算的只有他。有人在他进来之前就已经动过底层了。核心协议的删除可能发生得更早,他被推进来可能只是掩盖。 李析把那段代码碎片拷贝到自己的后台文件夹里,加密、隐藏、反复确认不可能被发现。然后他坐在荒漠中央,把脸埋在掌心,沉默了很久。 "……还有谁来过?" 灰白色的空间静得没有一丝回音。只有倒计时的数字还在跳。 28天13小时56分。 又少了。 4. 共用一个终端 那一夜李析没有合眼。 他坐在闭合的第二个裂隙点旁边,身后是那道圆形的灰色环形疤痕。面前悬浮着三个并排的界面——左边是加密文件夹的迁移进度条,中间是他反复翻看了十几遍的第三人编码碎片,右边是一份他手写的"进入终端后的风险控制清单"。 他先花两个小时把自己的核心数据全部迁移到深层加密文件夹里。真实ID、原始修复脚本的备份、登出权限接口——所有如果被张驭看到就全盘皆输的东西,都被他打包塞进了一个七层加密的压缩包里,伪装成"底层回响的核心协议残留"。文件夹的名字他改了三遍,最后定了一个看起来最无害的:【system_core_protocol_v0.3_legacy】。 然后他开始看那段编码。 拇指长的碎片悬浮在半空中,灰白色的字符在灰白色的背景里极不明显,像雪地里的霜。他放大、剖解、逐行拆开又合上,翻来覆去看了至少六遍。编码风格明显是《深渊纪元》上一个版本时期的架构规范——字段命名习惯、缩进格式、注释写法,全都有种陈旧感,像翻到了一本三年前就不再用了的旧手册。 "不是在职的人写的……"他低声说,指尖在代码行之间划过,"在职的人不会用这套旧格式。但也不是完全不懂的人写的。这人对引擎底层很熟悉,只是……在用旧工具。" 但真正让他反复看的是那些编码里混入的一个东西:某种外部变量。一个他认得出"存在"、但暂时无法精确定义来源的符号标记,嵌在代码的深层结构里,像一张纸上的水印,透出来模糊的轮廓,却看不清具体是什么。 他在地上划了几行推测又全部抹掉。没有实质性的结论,只有一种越来越清晰的直觉:这东西他见过。在某份旧的项目文档里、在某个已经离职的员工的遗产代码里。他抓不住源头,但熟悉感像一根刺,扎在脑海里拔不出来。 他决定暂时压下这条线。明天要面对的事更棘手。 他转向右边的界面,开始逐条核对"进入张驭终端的风险控制清单": 一、我的真实身份层加密迁移至深层,更名为无害化文件名。 二、所有涉及"我是人类"的日志记录全部清除。 三、准备一个半真半假的"接入数据源"视图——里面塞几行真实的底层只读权限,再塞几行伪装成"底层回响系统日志"的假数据。 四、如果张驭问起加密文件夹,回答:"核心协议受原生代码保护,对玩家不可见。" 五、如果他坚持要看,预案B:触发一次小型数据干扰,以"底层波动"为由中断接入。 他把清单念了三遍,背进脑子里,然后靠在丘陵侧面闭了五分钟的眼睛。他没有睡着,但让思维空转了五分钟。五分钟后他重新睁眼,打开通道入口的监控画面,等待张驭的登录信号。 张驭来得比前两天都早。 那团黑色的数据流从通道上方沉降下来的时候,底层的错误代码甚至还没来得及完全炸开。他落地之后没有像前两天那样先扫视荒漠,而是直接看向李析站的位置——李析今天站在通道入口正前方,比前两次都靠近通道口,姿态也更挺拔,像一尊被摆正了的雕像。 张驭今天穿了件黑色的短款战斗夹克,刀横在腰后,两只手插在外套口袋里。他看了李析一眼,然后放慢脚步走过来。离着三步远的地方停下来,上下打量了李析一遍。 "你今天不太一样。"他说,"站得比平时直。" 李析用机械音回应:"今天开始,我将以数据流形式进入你的终端,远程引导后续修复。" 张驭的手从口袋里拔出来了。他插回去又拔出来,像在消化这句话的信息量。他侧了侧头,嘴角那个弧度浮了上来——比前几天都大了一点,嘴角差不多抬了两毫米,不仔细看会错过,但李析在终端后台监控里捕捉到了。 "进我系统?"张驭说,"你前天说的时候,我以为你开玩笑。" "你是唯一拥有最高权限的玩家。如果我要实时监控裂隙状态并同步调整脚本,只有接入你的数据通道才能做到。"李析维持机械音,一字不差地照着昨晚背熟的台词念。 张驭没有立刻回应。他看着李析模糊的面部,那双灰褐色的眼睛在灰白色的底层光线下像两块浅水区的石头。然后他说:"那你岂不是能看到我所有的数据?" 李析听出了这句话的性质——不是疑问,是陷阱。张驭在问他"你敢不敢承认你看得到"。 他早有准备:"接入仅限于游戏数据和系统权限。你的个人信息层受玩家隐私协议保护,我无法读取。"——真话。玩家绑定手机、现实账户、聊天记录都在另一层加密壳里,就算他进了张驭的终端也摸不到那些。 张驭靠在通道入口旁边的数据墙上,双臂交叉,把李析又扫了一遍。"那反过来呢?"他说,"你进我系统,你是不是得把你的'一部分'也打开?" 李析猜到了。他花了一整个晚上准备的"半真半假视图"刚好对接上这个条件。"可以。你在你的终端里会看到一个'接入数据源'的界面。我的部分数据会同步显示在那里。" 张驭的视线在李析脸上停了两秒,然后他点了头:"行。来吧。" 张驭打开了他的终端界面。 一个深蓝色的半透明面板悬浮在灰白色的荒漠空气里,边缘泛着细碎的光纹。面板上滚动着几项基础数据:玩家ID、等级、战力综合评分、技能列表。技能列表一共七个格,亮了四个——张驭只用了四种技能,剩下的三个格空着,连填都没填。背包列表也是简短的几行:药品、材料、那把暗红色纹路的S级刀,再往下是一片空白。 李析深吸一口气——尽管他没有肺,但他还是做了这个动作来给自己一个信号。他松开自己对底层荒漠的"粘附",数据化的身体开始从投影形态"剥落",变成一团细碎的银白色光点,从荒漠地面上浮起来,朝张驭终端界面边缘的接入端口涌去。 穿过端口的那一瞬间,他感觉自己像穿过了一层极薄的膜。 那层膜是张驭终端的安全协议。穿过的时候有一股轻微的阻涩感——像从空气里走进了水里,密度变了。然后阻涩感消失了,取而代之的是一种他从未体验过的"共居感"。 他"住"进了张驭的系统里。 最先涌进来的是声音。张驭终端内部的数据流在运转时发出稳定的低频嗡鸣,像一台大型机器的呼吸节奏。那种嗡鸣不刺耳,反而有一种令人安心的规律性——每秒大约振动三次,像心跳。然后是视野。李析的感知层从"荒漠全景"突然切换成了"张驭终端的内部视图",他能看到的数据内容变成了张驭系统结构树的每一个分支——但所有的分支都是半透明的,他只在自己被允许的范围内移动。 他扫了一眼张驭的系统内部。比他想像的更干净。游戏数据、战斗纪录、技能使用日志排列得整整齐齐,但文件夹全是空的——这个人几乎不存东西。聊天记录为零,好友列表为零,邮件收件箱里只有系统自动发的版本更新通知,连读都没读。 像一间住了很久但从没往墙上贴过一张照片的房子。 与此同时,张驭的终端界面上出现了一个小型的"接入数据源"窗口。李析预先准备好的半真半假视图在那个窗口里展开:几行底层只读权限、若干条格式规范的"底层回响系统日志"、和一个嵌在数据结构中间的深灰色文件夹——上面写着【system_core_protocol_v0.3_legacy】。 张驭低头看了一眼那个窗口。 "你这里面,"他说,"怎么有些文件夹是加密的?" 李析的心脏在张驭的终端里撞了一下——如果数据流也有"心跳"的话。他稳住了:"底层回响的核心协议受原生代码保护,某些数据层对玩家权限不可见。不影响裂隙修复。" 张驭没有追问。他看了那个加密文件夹的名字大概一两秒,然后把视线移开了。"嗯"了一声。但李析从接入状态里感知到一件事:张驭在看那个名字时,视线停留的时长比他看其他任何数据都多了两倍。那一两秒的停顿意味着张驭记住了那个名字。 "边走边说吧,"张驭关掉了终端面板,转身朝荒漠深处走去,"今天第三个。" 李析以数据流形态存在于张驭的终端内部,相当于被装在一个人的口袋里带着移动。张驭迈步的时候,轻微的颠簸会通过数据通道传导到李析的感知层——他"感受"到了张驭走路的节奏、每一步落地时的轻微冲击、外套布料擦过腰侧时带出的空气扰动。这种从未有过的近距离让他全程高度紧张,他不得不每隔几十秒就在后台微调一次自己的数据姿态,以适应张驭的运动节奏。 走了一小段路之后,张驭忽然说:"你现在能感觉到我走路?" "接入状态下,宿主的基础运动数据会同步到系统环境感知层。"李析说,"我能感知到你的位移、速度、以及与外部物体的碰撞反馈。" "那就是说,"张驭的步伐节奏没有变化,声音平直地传进终端里,"你现在知道我在哪个位置、在往哪个方向走、旁边有什么东西?" "严格来说,是的。" 张驭没有再说话了。但李析从数据通道里捕捉到一丝很轻的波动——像是张驭的呼吸频率在那一刻微缓了半拍。然后他听到张驭低声说了一句,音量太小了,小到像是自言自语: "那还挺方便的。" 方便什么,他没说。 第三个裂隙点在一片"代码峡谷"里。两片高耸的灰白色数据壁像被劈开的山体一样耸立在荒漠中央,壁面上密密麻麻地滚动着永不停歇的字符流。裂隙从壁面的底部直直贯穿到顶部,将近十几米高,像一道闪电劈开了整面山体。裂隙的边缘不整齐,残留着某种灼烧过的焦痕——黑色的烧蚀纹路嵌在灰白色的壁面里,李析一眼就看出来这处裂口不是自然崩塌,是用某种手段强行撕裂的。 "这个比前两个大。"张驭站在峡谷入口,仰头看了一眼裂隙的高度,"要修多久?" "修复时间取决于裂隙深度。预计比前两处长一倍。"李析在张驭的终端内部调出修复脚本,然后把投屏模式从"悬浮面板"切换成了"视网膜投影"。张驭的视野右前方出现了一块半透明的蓝色面板,修复脚本的所有参数和进度条都直接投在了他的眼睛里。 "你在我眼睛里写字?"张驭偏了一下头,像是在感觉那个投影的位置。 "这是最直观的引导方式。"李析说,"你只需正常看向裂隙,脚本数据会同步投射在你的视野里。接入权限。" 张驭伸出手。白色的权限流从他掌心涌向高耸的裂隙壁面,灰白色的字符流被染上了一层亮色,修复脚本开始从底部向上缝合那道焦黑的伤疤。 前二十分钟一切正常。白色的修复数据一层层覆盖焦痕,裂隙从底部开始收窄,进度条稳步推进到大约65%的位置。然后裂隙内部忽然鼓动了一下——和前两次都不一样,这次没有触手,取而代之的是一道灰白色的能量波,从裂隙深处向四周扩散,像一颗石子投进湖面。 那 道波扫过张驭全身的时候,李析感觉到了。 共振波直接传导到了"宿主-接入者"的数据关联通道里,他感知到了一连串极其清晰的身体信号——张驭的心跳猛然加速了一拍,从静息状态瞬间跳到战斗反应区间。紧接着是肌肉收紧的反馈:肩膀、后背、握刀的那只手——所有涉及"防御准备"的部位在同一秒内绷紧了。然后有什么东西从终端底层闪了一下。是一丝极其微弱的、数据层面的"痛觉"信号,像电流过载时系统报错的那种一闪即灭的报警。 李析整个人被那串身体信号撞懵了。 他第一次这么直接地感知到张驭的身体状态。不是靠看、靠推测、靠录像回放——是靠数据层"共享"到的。心跳、肌肉收紧、痛觉信号,全都在一秒钟之内涌入了他的感知通道,那种清晰度像两个人的皮肤贴在一起之后,心跳通过接触面互相传导。 张驭自己也感觉到了什么。共振结束后他偏了一下头,对着终端界面说:"你刚才——怎么了?" 李析花了大约两秒才把思维拉回机械模式。"……未检测到异常。"声音平直得像直尺。 这是假话。他内心一片混乱。那种"感知到另一个人的身体"的感觉让他思维断了两秒——整整两秒里他脑子里是一片空白,连脚本参数的实时监控都忘了看。 所幸修复脚本没有受到那两秒空白的影响。继续运行了大约十五分钟,裂隙从顶部最后一段合拢,焦痕覆盖处只剩一条极细的灰色细线嵌在壁面上。张驭的数据面板弹出提示:【任务进度:3/30。】 张驭活动了一下肩膀,把刀从腰后解下来换了只手拿。他没有立刻转身往回走,而是站在峡谷出口处,像是在想什么。然后他没有任何预兆地开了口: "你的接入状态好像不完全是'被动'的。" 李析的注意力立刻被拉回来了。"……什么意思?" "我刚才进背包看材料数量的时候,"张驭说,"你那边数据流的节奏变了一下。你在看我翻什么?" 李析的脑子里亮起一盏红灯。他确实看了。张驭的系统太干净了,当张驭打开背包翻找材料时,他的工程师本能使他的感知层自动追踪了张驭打开的那个数据片段——他在无意识中"看"了张驭的背包内容。而张驭连那个微小的数据节奏变化都感知到了。 "接入状态下,宿主的数据请求会产生环境数据扰动。"李析说,"我在确认扰动范围是否影响修复脚本的稳定性。" "行。"张驭没有再追问。他转身朝来时的方向走去,步伐比来时慢了大约十分之一。李析在终端里感知到那个节奏变化的时候愣了一下。张驭在背包里翻东西的速度也比之前慢——他打开背包界面时先停了一拍,然后逐条滑动材料列表,翻到最底部又滑回来,像是在故意放慢操作的速度。 李析花了三秒才反应过来:张驭在放慢动作给他看。像一个人走在路上,故意放慢步子,让口袋里那个"乘客"能看清楚沿途的风景。他知道了李析在看,他没有阻止。他甚至让李析看得更清楚了一些。 返程的路比来时走得慢。张驭没有说什么,李析也没有开口。只有张驭走路时稳定的步频在数据通道里像钟摆一样来回摆动——每一步的频率几乎一致,呼吸也维持着固定的速率。张驭做什么都有一种"标准姿态",连沉默都沉默得很规则。 李析在张驭的终端里,听着那个稳定的步频,忽然想到了一个问题——他沉默的时候在想什么?他立刻把这个问题压了下去。作为一个接入系统的"数据流",他不该对宿主产生这种"人在哪、在想什么"的好奇。他告诉自己这只是工程师对研究对象的好奇心。但他不确定自己信了。 回到通道入口时,张驭停住了。他准备跨进通道之前,对着终端方向说了一句:"明天继续。你今天在里面待了一天……挺安静的。" 他说完就跨进了通道入口。灰白色的过渡层吞没了他,暗红色的刀光在入口边缘闪了一下,然后消失了。 李析从张驭的系统里"退出来"。银白色的数据光点从端口回流到底层荒漠的地面上,重新聚拢成那个穿着灰黑色斗篷的模糊人影。他落地之后在通道入口旁边蹲了下来,后背靠着一片灰白色的数据墙。 他先打开自己的后台,把今天在张驭终端里看到的所有东西快速过了一遍——张驭的背包:九种药品、三种材料、那把刀。技能列表:七个格用了四个,全是攻击型。文件夹结构:一堆空壳。好友列表:零。邮件收件箱:只有系统通知。然后他打开加密文件夹,把那段第三人编码又翻了出来。 在张驭终端里待了一整天之后,他"捞"到了一点新东西。不是主动看到的——是在终端底层环境残留里无意间捕捉到的。一段极短的数据日志片段,像是被删除后没清理干净的碎片,混在大量的空白环境数据里,如果不是他以接入者身份在张驭系统里待了那么久根本不会注意到。 日志碎片的结尾处,嵌着一行三位字母的注释:【——L.F.审核通过。】 L.F.。审核通过。审核什么?谁写的? 他把那三个字母在脑子里翻来覆去地过了三遍。像一把钥匙,但他还不知道门在哪。 他关掉界面,靠在数据墙上。灰白色的荒漠在面前无限延伸,头顶的倒计时又少了一段。他闭上眼,脑子里同时转着三件事:张驭今天放慢了脚步让他看那些空文件夹。张驭感知到了他看背包时的数据流波动。还有那三个字母。 全是碎片。 但他隐隐觉得有些碎片在往同一个方向移动。 5. 系统共生 第四天结束后的夜晚,李析做了一个之前从未做过的决定。他没有把自己从张驭的终端里"抽"出来回到底层荒漠,而是直接以休眠态滞留在接入端口处。那种姿态介于在线和离线之间,像一盏没关但调暗了的灯,只保留最低限度的数据连接,不主动扫描任何东西,但也没有完全消失。 他告诉自己这样做的理由是节省底层接入耗能。每次从底层抽离再重新接入都会产生额外的通道损耗,留在系统里反而更经济。这个理由在技术上是成立的,所以他决定不再去找第二个理由。 第五天,张驭登录了。 终端启动的瞬间,接入端口处的休眠态被激活,李析的数据流重新活跃起来,像一台关机后被重新接上电源的电脑。张驭的视野刚从登录界面切换回游戏画面,他就感知到了那个"接入数据源"窗口里跳动的数据流重新亮了起来。 张驭停了一步。"你已经在了?"语气里带着一丝几乎察觉不到的意外。 "为节省底层接入耗能,未离终端。"李析的声音从终端内部传出来,平稳的机械音,"全天候待命模式。" 张驭"嗯"了一声。他站在原地,把今天的装备检查做了一遍——刀挂在腰后,药品补满,材料数量扫了一眼,然后他切换出地图界面确认方向。整个过程做得比平时慢了一点,像是给终端里那个"乘客"一点时间适应上线后的状态。 他没有说"你不用一直待在系统里",也没有说"这样挺好"。他只是沉默着完成了所有准备动作,然后朝第四个裂隙点的方向迈开了步子。 李析在终端内部"待着"。张驭的系统内部干净得让他的注意力无处安放——技能列表只有四个格亮着,背包精简到极限,好友和邮件两个模块的文件夹打开全是空的。空旷得像一间没人住过的房子,李析在这个空间里待了快两天,仍然找不到任何可以"看"的东西。 然后他的感知层扫到了一个角落。 那是系统底层一处不起眼的缓存碎片区,平时用来存放临时的、会被自动清理的数据残影。通常这类区域对接入者也是不可见的,但李析的工程师后台权限让他在经过时"扫"到了一小段残留在那里的数据痕迹。他没有主动翻找,只是"路过"的时候那团碎片从他的感知边界掠了过去。 信息量有限。日志时间是两年多以前,内容只剩残缺的片段:"……第七次。仍然没有反应。是不是我的权限……" 后面的内容被截断了,像一张纸烧到一半就熄了火。李析的感知层在那团碎片上停了大约两秒。他没有深入翻查——缓存碎片的残留太浅,多碰一下就可能彻底消散。他把那个时间戳记了下来,然后把注意力从碎片区移开,没有做任何多余的操作。 两年多以前。张驭在尝试某件事,试了七次都失败了。"仍然没有反应"——他在等什么东西回应他?权限?人?还是别的什么? 李析把这些疑问压进加密备忘录里,没有继续深挖。张驭对此毫无察觉——缓存区在张驭自己的终端界面上从不显示,只有接入者能感知到底层的系统留存。张驭的步伐节奏全程没有变化,李析感知到他正在接近第四个裂隙点的位置。 第四个裂隙点在荒漠更深处的一处"数据洼地"里。地表像被重物压下去了一块,形成直径约五米的浅坑,边缘呈放射状的裂纹向四周延伸,裂纹深处嵌着细碎的黑色痕迹,像被墨水浸泡过的裂缝。坑底是一个不规则的撕裂口,比前三个都小,但坑壁内层爬满了树根状的黑色蔓延纹路,从裂口向外部扩散,像某种寄生植物的根须钉进了数据墙体里。 "这一处协议被删除加篡改复合型损伤。"李析在张驭的视野里投出修复面板,蓝色投影浮在张驭的右前方,"修复脚本分为两段。先填充删除区,再覆盖篡改区。" 张驭站在坑边低头看了一眼那些黑色树根纹路。"两段。先填后盖。明白了。" 他没有问"为什么是两段"。没有质疑脚本的分段逻辑。甚至没有抬头再看李析那边。他直接伸出右手接入权限,白色的数据流从掌心涌向坑底。"开始。" 李析注意到这是张驭第一次没有做任何前置确认。前三天每次修复前张驭都会等李析说完"确认执行"才动手,但这次他在李析话音落地之前就已经在运行权限了。不是抢跑,是一种磨合完成之后的默契。 修复的第一段运行了约十二分钟。白色的填充数据灌入坑底裂口,黑色树根纹路被一层层覆盖,从裂口边缘开始向外部消退。张驭维持权限流稳定,姿势不变。一切看起来正常。 然后数据逆流出现了。 第一段脚本收尾、切换至第二段的过渡瞬间,坑底忽然涌出一股灰黑色的数据流——与修复注入的白色截然相反,逆着权限流的方向朝张驭倒灌。黑色的数据碎屑像被风吹起的灰烬,沿着白色的权限通道往回涌,目标直指张驭的掌心接入点。 张驭的手在刀柄上收紧了。他的身体在逆流涌出的第一个0.3秒内就已经完成了防御姿态的预备——肩膀压下来,重心前移,膝盖微弯,握着刀柄的手指关节绷紧。他能感觉到那股逆流的冲击力正在通过权限通道往回推,像一个人站在风口用手顶着一扇快被吹开的门。 他要拔刀了。李析从他的肌肉信号里读出了这个动作——肩膀再沉半寸,肘部就会外翻,刀就会出鞘。 "不要拔刀。" 李析的声音从终端里传出来。比平时快,比平时果断,但仍然维持在机械音的平整度上,像一个精密仪器在发出预警指令而非一个人在喊叫。 "保持权限流不断。逆流数据会在三秒后自行消解。" 张驭的手指在刀柄上停住了。肩膀沉到一半停在那里,肘部没有外翻,刀没有出来。他顿了一下,然后收回了拔刀的准备姿态,留在原地的只是维持权限的那只手——白色的数据流还在持续注入,虽然被灰黑色的逆流压得变细了一些。 一秒。两秒。坑底涌出的灰黑色数据流开始减弱,像退潮一样从白色权限通道上缓慢缩回裂口深处。第三秒结束的时候,逆流已经完全消散了。白色的修复数据重新占据主导,接续上了第二段脚本的运行。 张驭站在那里没动,只是看着坑口被一层层覆盖。大约十分钟后,坑底完全闭合,黑色树根纹路全部消退,只剩一圈浅浅的灰色伤疤嵌在洼地中央。进度条跳到【4/30】。 他收回了手,活动了一下肩膀,然后偏头对着终端的方向,声音不紧不慢:"你怎么知道三秒后消解?" 李析早有准备——或者说他不再像前三天那样对每个问题都高度防御了。他在回答的时候允许自己流露出一部分"不属于NPC"的东西。"逆流波形周期特征与代码删除区的残留结构匹配。基于波形分析预判的衰减周期。不是直觉,是算出来的。" 张驭没有追问"一个回响怎么会算这个"。他只说了两个字:"……挺好。" 然后他转身朝来时的方向走去。李析在终端里感知到他步伐的节奏和来时一样均匀。没有因为刚才的逆流而加速,也没有因为某种情绪而放慢。张驭做什么都有一种标准姿态,连意外之后的反应都被控制在同一频率里。 返程走了大约三分之一的路程时,张驭忽然开口。 "你平时——"他顿了顿,像是在找一个合适的说法,"除了修这个,还做什么?" 李析知道这个问题是什么意思。翻译成白话文就是:"你在现实里是什么人?你过着什么样的生活?"张驭在问他作为真人的日常状态,用一个他伪装的身份不应该能回答的问题在试探。 "底层回响无日常活动。"李析用机械音说,"我唯一的功能是监测裂隙并引导修复。" "那你真无聊。"张驭的语气很平,平到李析听不出是调侃还是怜悯。 李析沉默了一下。终端里安静了几秒,只有张驭走路时稳定的脚步数据在底层嗡鸣中匀速穿行。然后李析开口说了六个字,不在任何预定台词脚本里,是他主动"退让"的一步。 "……也没有那么无聊。" 张驭的脚步顿了一下。很短,大概只顿了正常行走的一个步距长度——左脚本该迈出去的时候迟了半拍,然后恢复了。他没有转头看终端的方向,他的视线还看着 前面的荒漠。但他出声了。 "是吗。"两个字。 语气里有一种李析捕捉到了但是无法准确描述的东西。不是惊喜,不是意外,甚至不是确认了什么之后的高兴。更接近于一种"慢慢来"的从容。像一个人在等一封迟到的信,现在终于看到邮差出现在街角,但他没有跑过去接。他就站在那里,看着邮差走近,说"是吗"。 回到通道入口的时候,张驭在跨进去之前停住了。他侧过身,偏了一下头,对着终端的方向——或者说对着空气——说了一句:"你待在里面,晚上……" 他顿了一下。李析在终端里等他说下去。 "不用一直开着感知。我下线之后没人跟你说话,你浪费电。" 李析用了大约一秒来解码这句话。表面上是在说"省电"——但李析没有耗电量的概念,那是给玩家角色备的生理模拟参数,他已经全归零了。张驭知道他在胡说。但张驭胡说出了一个不擅长说关心话的人能想到的最靠近"关心"的句式。 他沉默了一拍:"我无耗能休眠模式已配置。不必担心。" 张驭"嗯"了一声。然后他跨进了通道入口,灰白色的过渡层已经开始吞没他的肩膀。他在被完全吞没之前又加了一句:"明天我还是这个时间来。" 然后人消失了。暗红色的刀光在通道口闪了一下,底层荒漠重新回归寂静。李析从张驭的终端里退出来——银白色的数据光点从端口回流到底层荒漠的地面上,重新聚拢成那个穿着斗篷的模糊人影。他蹲在通道入口旁边,把今天张驭说的所有话重新过了一遍。 "你真无聊。""也没有那么无聊。""是吗。""浪费电。""明天我还是这个时间来。" 信息量不大。每句单独拎出来都像废话。但拼在一起是张驭第一次主动做了四件事:第一,问李析"平时做什么";第二,在李析承认"也没有那么无聊"的时候没有追问,给了空间;第三,在下线前说了一句笨拙的、让他关掉感知休息的软话;第四,在走之前确认了明天会来。 四件事分别代表好奇、尊重、关心、承诺。每一样都做得粗糙简陋,像小孩子用积木搭的第一座城堡,歪歪扭扭但你知道那是城堡。 李析坐进数据墙的阴影里,打开加密文件夹。他把嵌有"L.F."缩写的数据日志碎片和第三人编码碎屑并排展开。白天在张驭的系统里"待"了一整天之后,他回过来看那段第三人编码时看到了之前没注意到的东西——编码碎屑的注释语法和《深渊纪元》旧版架构的官方规范有一个细微的偏差。 官方的旧版规范里注释符号是"//",标准双斜线。而这段编码碎屑用的是"##"。 谁会用"##"? 他在记忆里翻找。三年前,他在一家数据安全公司实习的时候,某份内部技术文档里见过这种注释风格。那个项目团队的编码规范独立于游戏官方体系,他们有自己的注释习惯,双井号是那个团队的特征标记。项目代号的结尾恰好也有一个字母——F。那家公司的具体名称他已经忘了,毕竟快四年前的事,他只记得那家公司是《深渊纪元》早期开发阶段的外包安全合作方之一。 他把"L.F."和"##注释风格"两条线索写在加密备忘录的同一行里,中间画了一个箭头。 然后他关掉界面,靠进数据墙的阴影里。灰白色的荒漠在面前展开,头顶的倒计时安静地跳动。他闭了一会儿眼睛,没有睡着,只是在黑暗里听着底层空旷的寂静。 一个问题浮上来,他没有让自己想完整,但问题本身已经存在了——三十天之后,裂隙全部修复了,张驭还会来吗? 李析睁开眼,看着远处灰白的荒漠边界。他没有答案。他甚至不确定自己该不该有答案。三十天之前他只在想怎么活过三十天,现在他在想三十天之后的事。这个变化本身已经说明了一些东西。 他重新闭上眼,把"L.F."和"##"和"第七次"和"浪费电"四样东西一起收进备忘录里。碎片还是碎片。但有些碎片已经不再往同一个方向移动了。 它们开始靠在一起。 6. 第六天 第六天清晨,张驭登录的时候,一条官方公告先于一切弹了出来。 李析从休眠态被激活,数据流刚刚恢复脉动,视野里最先出现的不是张驭的系统界面,而是那条悬浮在登录界面右上角的官方弹窗:《深渊纪元》今日起将对“底层数据接口”进行例行安全维护,部分区域可能出现短暂延迟,请玩家谅解。落款是运维组,日期是今天。 李析盯着那行字看了三秒。 底层数据接口安全维护。 他在这里待了六天,比任何人都清楚底层现在是什么状态。核心协议被删除,数据墙在崩裂,裂隙一天比一天多,他在用张驭的权限拼了命地缝补一艘正在沉没的船。没有人来做过维护。不可能有人来做维护。底层已经是一间被锁死且正在着火的房间,而官方对外说“正在进行例行的烟雾检测”。 这条公告是假的。 李析的脑子飞速转动。发出这条公告意味着几件事——第一,有人知道底层的异常状态,并且有意遮掩。第二,那个人在运维组里有权限调用官方公告系统。第三,公告的目的是不让外界注意到底层的真实状况,把崩塌解释成“例行的维护延迟”。那个人不想让任何人发现底层已经出事了。 而那个人很可能就是把他推进来的那只黑色手套。 “啧。”张驭的声音从登录界面后面传过来,他已经进入了游戏画面,“底层接口维护……跟你的裂缝有关系?” 李析回神。“底层接口与裂隙无关。裂隙在协议层,不在接口层。”这是真话,但他说完之后没有继续解释那条公告的真实性。他在保留。他现在还没法判断张驭如果知道“公告是假的”之后会做什么反应——是帮忙追查,还是觉得水太深而选择退出。 “走吧。”张驭没有追问,打开地图看了一眼,朝第五个裂隙点的方向迈开步子。 第五个裂隙点比李析预想的更复杂。 那是一处“断裂带”——荒漠地表在这里裂开了一张不规则的网,从中心点向四周辐射出六七条深浅不一的裂纹,像地震过后留下的伤痕。每一条裂缝的宽度不一,最窄的只够伸进一根手指,最宽的足有半米。灰色的数据粉尘从所有裂缝里同时渗出,在空气中形成一层低矮的薄雾,漂浮在膝盖的高度,像踩在云里。 李析在张驭的终端里投射出解析图。“这是五处相邻的协议删除点,彼此之间存在数据串联。如果逐条修复,第一条愈合后会被第二条的残留干扰重新破坏。需要同时接入五条裂缝,同步运行修复脚本。” 张驭站在断裂带边缘,低头看着那五六条放射状的裂纹,把它们扫了一遍。“同时?”他说,“我只有一只手。” “你以最高权限同时覆盖五个接入口。”李析已经在调取终端内部的中转协议模块了,“我用终端内部的中转协议将你的权限流分成五条支路同步注入。” 张驭没有立刻回答。他把手从口袋里抽出来,活动了一下五指。裂缝里的灰色粉尘在他脚边缓慢翻涌,像地底下有什么东西在呼吸。过了几秒他说:“你要在我的系统里控制我的权限流?” “是。但只有这一次。这处分叉结构不这样做无法修复。” 张驭沉默了两秒,然后说:“……行。你控。” 他伸出右手。白色的权限流从他掌心涌出,进入终端界面。李析在接入端口处“接住”了那股数据流——这是他第一次如此直接地“触碰”到张驭的权限。那股流从他的感知层穿过的瞬间,他感觉到了某种“重量”,像用双手捧住了一股流动的水银,密度极大且微带温度。 他来不及细品这个感受,立刻开始分流操作。他以工程师的精密程度把那股权限流拆成五道支路,每一道的粗细、流速、注入角度全部精确控制,分别导向五条裂缝的接入口。五道白光同时灌入地面,从五个方向朝中心汇聚,断裂带的边缘开始一层层收拢。 同时操控五条支路对他的精神消耗极大。他的数据流在终端内部呈现出罕见的“过载”微振——那团银白色的光点在接入数据源窗口里以比平时快两倍的频率轻轻颤动,如果他不是以数据态而是以投影形态待在外面,张驭会看到他在冒冷汗。 但他撑住了。五条裂缝从不同方向同步愈合,进度比预想的还快了几分钟。大约十五分钟后,地面上最后一条裂缝收口,断裂带恢复成了一整块完整的灰白平面,只剩几道浅浅的灰色伤疤标记着原来的位置。进度条跳到【5/30】。 张驭收回手,活动了一下五指。他把手插回外套口袋里,偏头看了一眼终端界面,然后说了一句让李析心里咯噔一下的话:“你刚才——手抖了。” 他在接入数据源窗口里看到了李析数据态的微振。那团银白色光点虽然只是一堆没有形状的数据,但他在看——他一直在看。 “权限流分流导致接入端瞬时负荷上升。”李析维持机械音的平整,“已恢复。无影响。” 张驭没再追问。他转了转肩膀,转身朝来时的方向走去。走了大概十几步之后,李析先开了口。这是他第一次在张驭没有提问的情况下主动说话:“你今天看到的那条公告……日期是什么时候?” “就刚才。”张驭没有停步,“今早发的。怎么了?” “……”李析在他终端里顿了一下,“我待的这个底层,没有收到任何维护指令。这个月的运维排期我——”他在这里顿了一拍,“‘感知’到的运维计划里,没有底层维护这一项。” 张驭停下来了。 他站在荒漠里,回过头来,虽然视线是看着虚空——李析在他终端里,他没有具体的“方向”可以看,但他偏着头朝着终端的方向:“所以这条公告是假的?” “不确定。”李析说,“但底层没有收到对应的操作信号。” “有谁在瞒你?” 李析沉默了。这不是一个他能回答“是”或“不是”的问题。“瞒”的对象是整个底层,但底层里唯一的人是他,所以瞒的就是他。有人在公司内部封锁了底层的真实状态,然后对外发了虚假维护通知。目的只有一个——不让外界知道底层已经出事了。 张驭在他沉默的那两秒里自己得出了结论。他转回去继续往前走,步伐和之前完全一样均匀,但他说出来的话比刚才低了一些:“你在那个公司里,被人搞了。对吧。” 陈述句。 李析没有否认。他也不能再否认了。 两人继续走了一段路,荒漠在两侧延伸。张驭的脚步落在灰白地面上每一次都发出轻微的沙响,李析在终端里感知着那个稳定的节奏。然后张驭的声音又传过来了,这次的问法比之前的任何一次都直接: “谁把你弄进来的?” 李析的数据流在终端内部缩了一下。六天了。张驭第一次直接问那个问题——不是“你到底是什么人”,不是“你是怎么被困住的”,而是“谁”。谁动的手。那个名字,或者那双手。他从来没有在任何人面前回答过这个问题,因为答案他自己都不知道。但张驭在问他,他忽然觉得再躲下去已经没什么意义了。 “……我不知道。”他说,声音从终端里传出去的时候没有伪装成机械音——他自己都没有意识到他已经没有在“装”了,“那天我背对着。只看到一只手,黑色手套。声音变了形。没看到脸。” “那你之前得罪过什么人?” “我得罪过的人……应该都不至于把我删到底层来。这不是得罪,这是要我消失三十天。” “三十天后呢?” 李析停了一拍。“……如果裂隙没修完,格式化程序启动,连数据带人一起清除。如果修完了——”他第一次在张驭面前用了“我”字,没有再伪装成“底层回响”,“我会被弹回表层,但那个人会知道我出来了。” 张驭走在他前面。李析从终端里看不到他的表情,只能感知到他的步伐节奏和呼吸频率。两者都很稳定。但张驭的声音从前面传过来时,比刚才低了一点:“那你修完裂隙之后,打算干什么?” “……不知道。”李析说。这是真话。 接下来的几十步两人都没说话。荒漠空旷,只有张驭的脚步声在灰白的地面上一下一下地铺开。李析在终端里安静地待着,脑子里转着刚才那句对话的每一个音节,后知后觉地意识到自己刚才说了多少本来不该说的话。 然后张驭开口了:“等你出去了,把那天的事跟我说一遍。手套什么颜色、声音什么调、周围什么人在场——全告诉我。” 李析愣了。“……为什么?” “我帮你查。”张驭的语气很平,平到不像在做一个承诺,更像在陈述一个已经决定好了的事,“我在外面认识一些人。”他顿了一下,又加了一句,语速比前面快了一点点,像是这句话他想了半天才决定说出口:“不是无偿的。修完裂隙之后你欠我一次。” “……欠你什么?” “还没想好。”张驭说,步伐没有变化,“先欠着。” 先欠着。李析在终端里把这三个字翻来覆去地咀嚼了两遍。张驭的意思是——你要有理由在三十天之后还来找我,所以我现在先给你一个理由。他听懂了。他用机械音说“可以”的时候就一个调,但他内心知道自己为什么在说“可以”的时候没有犹豫。 回到通道入口。张驭站在边缘,和前几天一样准备跨进去。但他在跨之前偏了一下头,对着终端方向说了三个字——和前两天都不一样,不是“明天我还是这个时间来”,不是“别让我等”,也不是“浪费电”。就三个字: “我走了。” 李析在终端里回应了。他只用了两个词,说出来的时候没有经过任何“是否应该说”的过滤:“……明天见。” 张驭在通道口停了一下。很短,大概只停了一拍。然后他跨进去了,灰白色的过渡层吞没了他黑色的战斗服。暗红色的刀光在入口闪了一下,消失了。 李析从终端里退出来。银白色的光点回流到底层荒漠的地面上,重新聚拢成那个穿灰黑斗篷的模糊人影。他落地之后蹲在通道入口旁边,打开加密备忘录,开始整理今天收到的新信息。 第一条——官方发了假的维护公告。暗算他的人能动用官方公告系统,说明他在运维组有内应,级别不低。 第二条——张驭的权限流里嵌着旧版运维人员的身份标记。他在分流操作时捕捉到的那个标记,他刚才又翻出来放大了仔细看,确认了。那个标记的格式不属于当前玩家身份验证体系,而是《深渊纪元》开发期第一代运维人员的授权编码体系。嵌得非常深,像是很久以前写进去的,已经和张驭的数据核心融为一体了。张驭本人可能都不知道自己身上挂着这个东西。 第三条——张驭说“我帮你查。我在外面认识一些人。”张驭在现实里也有势力,不止是一个独行的高端玩家。 李析把张驭权限流里提取的那个旧版身份标记和第三人编码碎屑并排放在加密屏上。标记的生成时间是三年前。第三人编码碎屑的注释风格“##”指向的那家外包安全公司的活跃周期也是三到四年前。两条线索中间隔着一个共同的时间段——开发早期。 他在备忘录里写了一行字:张驭和L.F.可能是同时代的人。 他关掉面板,荒漠重新恢复灰白的寂静。头顶的倒计时又少了一段。他靠在数据墙边,把今天张驭说的最后一句话重新过了一遍——“我走了。”然后是“明天见。”他已经默认了明天会再见,所以不需要再问一次“明天你来不来”了。那个默认就是六天里发生的变化。 李析把脸埋进掌心,没有让自己把那个念头想完整。但他注意到一件事:六天前他根本不敢想自己能不能活到第三十天,现在他在想三十天之后张驭还会不会来。 这两件事同时存在他的脑子里。一件让他害怕,一件让他没有那么害怕了。 他把“害怕”两个字也记进了备忘录里。加密。藏好。 然后他闭上眼,在灰白色的荒漠里等待第七天的到来。 7. 第七天 第七天清晨,李析在张驭的终端里自然苏醒。 不是被登录信号唤醒,是他的生物钟到了时间。他待在这套系统里已经进入第三天——那些曾经让他高度紧张的系统嗡鸣、数据流声、权限层的暗涌,如今全变成了背景音,像搬进一栋新房子的第二周,开始熟悉冰箱的嗡嗡声和暖气管的咕噜声。 他甚至已经能够预判一些"规律"了。每天清晨六点零七分,张驭的系统会启动一轮自动维护,持续七分钟左右。维护结束后约二十秒,张驭就会上线。像一个人的闹钟在同一个时间响,准得不必去看。 李析把自己悬浮在接入端口旁边,让那团银白色的数据光点随着系统的低频嗡鸣缓慢浮动。他忽然意识到一件事:他正在熟悉另一个人的系统,就像熟悉另一个人的生活规律。这对一个"接入者"来说危险极了,因为熟悉意味着卸防。 然后登录信号准时亮了。张驭上线,终端界面亮起来,视野从空白切换到游戏画面。李析的数据流重新活跃,接入数据源窗口里那团银白色的光点恢复了正常的脉动频率。他等着张驭打开地图,等着他说"今天第几个"——但张驭没有。 张驭在登录点附近找到了一截断掉的石柱,坐了下来。 李析看到他正在从背包里往外掏东西——一块像素级的模拟面包,游戏内烹饪系统产出的简餐道具,补充体力用的。前六天张驭从来不在这时候吃东西,他上线就直接走,裂隙修完就下,中间连水都不喝一口。 但今天他在吃早饭。 "……你今天不直接出发?"李析的声音从终端里传出去,他自己都没有意识到语气里带了点意外。 张驭咬了一口面包。"吃早饭,"他说,嚼完咽下去之后又补了一句,"不吃扛不住一整天。"他低头看了一眼手上那块模拟面包的像素纹理,加了一句堪称"张驭式评价"的话:"这破游戏做得最像真的就这玩意儿。" 他把终端界面调到了高亮显示。接入数据源窗口被推到了视野正前方,比平时更清晰、更大,那团银白色的光点在他视线边缘安静地悬浮着。李析注意到了那个变化。张驭没有说"我想让你看到",但他把"让你看到"这件事做到了最大程度的可见。 李析没有接话。他安静地"看着"张驭吃完那块面包,站起来拍掉手上不存在的碎屑,打开地图确认方向,然后朝第七个裂隙点迈开了步子。 走了大约三分钟,张驭忽然开口:"你以前在公司的时候,吃早饭吗?" 问题太日常了。不是说"你到底是什么人",不是说"谁搞了你",不是任何和底层、裂隙、代码相关的玩意儿。他问的是"你过不过普通人的生活"。李析花了半秒才从机械音模式里调换出来:"……以前吃。通常是吐司或者便利店饭团。" "那还行。"张驭的步频没有变化,"不是不吃早饭的那类人。" "……这有什么讲究?" "不吃早饭的人修东西容易手抖。" 李析顿了一下。张驭在用上次"手抖"的事开一个玩笑。语气不重,嘴角那个弧度浮了一下又收回去了。李析在终端里安静了大约两秒,然后从机械音里漏出一声很短的气音。不是笑,但接近笑的前序。两个人都没有再说话,但那两秒的安静和之前任何一次的安静都不一样——更轻一些。 第七个裂隙点位于荒漠中一处像"门"一样的结构里。地面上一道弧线状的开口,边缘圆润光滑,不是撕裂型的崩口,更像一扇半开的门嵌在数据层里。门缝里透出暗黄色的光,一闪一闪的,频率不快不慢,稳定得像某种活物的呼吸。 李析扫描了裂隙内部结构,然后把结果投射到张驭的视野里。"这一处不同。裂缝内部有活体数据寄生体——《深渊纪元》开发期留下的一种旧版自我修复程序残骸。当年设计出来是为了辅助协议自愈,但核心协议被删除后它们失去了宿主对象,开始反向侵蚀裂隙结构。这处的崩塌速度比前六个都快。" 他停了半秒。"必须先清除寄生体再修复裂隙。清除不能用权限流冲刷——会导致它们四散逃逸,转移到其他裂隙点。需要你以精准定位的方式逐一切除。" 张驭听完,低头看了一眼门缝里透出的暗黄色闪光。他没有提问,没有确认"切除"是什么意思。他把刀从腰后解下来握在右手,刀身上的暗红色纹路在灰白的荒漠里亮了一瞬。 "我切东西还行,"他说,"你指哪我切哪。" 李析没有说"好"。"第一个,门缝左下方约三十度,深度两米。" 张驭的刀动了。没有任何预兆,没有蓄力,他手腕翻转刀尖向下,以一个极小的角度切入裂隙边缘。刀身没入门缝一半,抽出,暗黄色的光在切口处抖了一下,然后一股灰黑色的数据残骸从切口处飘散出来,像被抽走了芯的蜡烛。第一个寄生体清除。 "第二个,右上方五十度,深度四米。会在三秒后向左移动。" 张驭的刀在手中翻转,从下劈改成横切,手腕在极小的空间里完成了转向。刀尖在门缝右上方那道暗黄光最亮的点切入。光颤动了一下,散成灰黑色的残屑,落地即灭。 第三个寄生体试图逃逸。门缝内侧的暗黄色光猛地一收,像一只受惊的动物缩回了洞穴里——然后一道极细的灰黑色影子从裂隙边缘钻了出来,朝李析的接入信号方向扑去。李析在终端里看到那道影子的轨迹朝自己涌来,本能地缩了一下数据流——但他还没做完那个动作,张驭的刀已经到了。反手,回劈,凌空斩断。灰黑色的残屑在空气中炸开消散,像被风吹散的一团灰。 "第四个,正下方,深度五米偏左十五度,位置刁钻。"李析标定时迟疑了半秒——那个角度太窄了,普通人的手腕转不到那个弧度。但他还没来得及说"可能切不到",张驭的刀已经以一种近乎不可能的角度斜切了进去——他的手肘几乎贴住了自己的肋侧,手腕外翻到了极限,刀尖从门缝底部挑入。 暗黄色的光闪了三下,灭了。 "第五个,"张驭说。他的刀还没有从裂隙里拔出来,保持着切入的姿态。李析刚想开口标定位置,张驭的刀已经向侧面移动了大约两指的距离——那个位置,恰好是李析将要标定的第五个寄生体的坐标。 李析的话堵在了喉咙里。"……你感觉到了?" "嗯。"张驭的手腕微动,刀尖挑了一下。第五个寄生体消散,裂隙内部的暗黄色光彻底熄灭了。门缝变成了一片空洞的黑色,再也没有跳动。 张驭收刀。他站直身体,把刀换回左手的握持姿态——右手空闲出来准备接入权限。偏头对着终端方向说了一句:"标得挺准。" 李析顿了顿:"你切得也挺准。" 张驭没接这个相互夸奖的话头。他把左手伸向裂隙,白色的权限流从掌心涌出,开始运行修复脚本。裂隙的门缝从底部向上收拢,闭合,最终只剩一道浅浅的灰色痕迹嵌在地面上。进度条跳到【7/30】。 返程的路上两个人走了很长一段没有说话。不是冷战,不是有心事,是一种已经不需要用说话来确认彼此在场的沉默。张驭的步伐均匀,呼吸平直,李析在终端里安静地悬浮着。荒漠的风从两人之间扫过去——李析通过张驭外套被风吹动时产生的微振感知到了风的来向。 走了一段路之后,张驭忽然开口:"刚才第四个,你标定的时候慢了一下。" 李析从待机状态被拉回来:"……那个角度太窄了。我在计算可行性。" "那你下次不用算。" 张驭的步频没有变化,声音平平地从前面传过来:"你标,我切。" 李析在终端里安静了半秒。"……好。" 回到通道入口。张驭没有像前六天那样检查装备 、确认明天的坐标、或者站在入口边缘多看几眼荒漠。他站住之后偏头对着终端方向说了一句:"今天早点下。外面有点事。" 李析的数据流停了一拍。"……好。" 张驭感知到了那个停顿。虽然李析只说了一个字,但那个字的长度比普通回应多了大约半拍。"我明天还会来。"他说。 "……嗯。" 张驭跨进通道之前又停了一下:"你今天在里面待了一整天。你那个接入数据源的界面——一直亮着。我没关过。" 李析在终端里安静了片刻。他明白了张驭在说什么。张驭没有把他放进"静音"模式,没有把他当挂件一样随手调成后台进程。张驭知道他在里面,而且让他一直在"能看见外面"的状态里待着。 "……我看到了。" 张驭"嗯"了一声,跨进了通道。灰白色的过渡层吞没了他黑色的战斗服,暗红色的刀光在入口闪了一下,然后消失了。 李析从张驭的终端里退出来。银白色的光点回流到底层荒漠的地面上,重新聚拢成那个穿着灰黑斗篷的模糊人影。他蹲在通道入口旁边,没有打开加密备忘录,没有翻找线索,没有分析编码,就蹲在那里看着灰白色的荒漠。 他脑子里转着一句话——张驭说"我明天还会来"的时候,李析在那个瞬间发现自己"不想他走"。 那个念头来的时候心跳快了半拍。他没有把这句话写进备忘录。他甚至没有让自己把这句话想完。他只是蹲在通道入口边,听底层荒漠里的寂静,维持着那种"什么都没在想"的状态维持了大约五分钟。 然后他强迫自己打开了加密面板。 他把张驭权限流里提取的那个旧版运维身份标记、第三人编码碎屑、"L.F."的缩写,三条并排放好。做第三次交叉比对的时候,他看到了一个之前遗漏的细节——张驭的身份标记底部有一行被加密的字段,签发人信息。加密算法本身没有特殊之处,但加密方式的结构特征……他放大看了看,又放大了一点。 和他之前在一份"##"注释风格的安全公司文档里见过的算法变种一致。 张驭的旧版身份标记和那家外包安全公司之间,存在一条加密工具层面的连接线。签发人是谁,不知道。但签发人用的加密工具出自那家公司,这已经是一条实实在在的线索了。 李析把最近一周收来的碎片按照时间先后画了一条线: 三年前——"##"安全公司参与早期开发。 同期——张驭获得旧版运维身份标记,签发人使用了该公司的加密工具。 同期——张驭系统缓存里留着那条日志:"第七次,仍然没有反应。" 去年——李析入职。 今年——李析被暗算推入底层。 现在——底层核心协议被删除,裂隙出现。 这条线上缺了很多环节。"第七次"在等谁的回应?签发人和张驭是什么关系?L.F.到底是签发人,还是被签发的人?中间那三年发生了什么? 李析把时序线看了三遍,在两端各打了一个问号,然后关掉面板。他靠在数据墙边,灰白色的荒漠在面前展开,头顶的倒计时又少了一段。还有二十二天。他闭了一会儿眼睛,又睁开了。 心里有一句话在转,在他自己决定要不要说出来之前就已经自动成型了:"明天他来的时候,我要不要问他那件事。" 他没有决定好。他发现自己是在犹豫,而犹豫本身已经是一种回答了。李析把这最后一行念头也压进了那个"不想去看"的角落,然后合上眼,在灰白色的寂静里听了一会儿自己数据流的脉搏。 第七天结束了。他来的时候带了早餐,走的时候说"我明天还会来"。李析发现自己既在害怕那个倒计时,又在等明天。 两个感觉同时在他身体里并存着。 8. 空终端 第八天清晨六点零七分,张驭的系统开始自动维护。 李析在维护启动的一瞬间从休眠态中自然苏醒。那团银白色的数据光点在接入端口处轻微地跳动了一下,像一个人睁开眼。他悬浮在端口旁边,感知着系统底层的嗡鸣,默数着维护运行的时长。七分钟,不多不少。维护结束后的二十秒内,登录信号通常会亮起来,他几乎已经不需要用眼睛去看那盏信号灯了,身体记住了那个节奏。 二十秒过去了。信号没亮。 三十秒。一分钟。两分钟。李析的数据流停在端口旁边,维持着最低活跃度的待命状态。他每隔一会儿就扫一遍登录信号监测点,每次扫过去都是空的。登录信号灯灭了,系统在自动维护结束后进入了"等待登录"的静止状态,像是被人留在原地的车,钥匙还没插进去。 他开始数。数到三百的时候意识到自己在数数,然后停下来了。 没有别的事可做。他在张驭的系统里没有任何需要操作的内容,裂隙修复需要宿主在场,线索整理昨晚已经做完了,底层荒漠那边也没有任何需要他亲自在场的事。他什么都不用做,只需要等。 张驭昨天说"外面有点事",今天就没来。这本身不是什么大事,一个人请假一天再正常不过。但李析发现自己正在"等"一个人上线,这件事本身比"张驭没来"更让他在意。他不是在等一个玩家登录以便修复裂隙——裂隙不会跑,晚一天修就晚一天,他现在是在等"张驭"这个人回来。他意识到这一点的时候数据流缩了一下,那团银白色的光点不自觉地朝接入端口的内壁靠了靠,像被人踩到尾巴的猫。 等了大约半小时后,李析决定不再"钉"在端口旁边。 他第一次以"闲逛"的姿态在张驭的系统内部移动。没有预设目标,不追踪任何数据信号,就只是"走走"。他的感知层以极低功耗扫过系统结构树的各个分支——技能列表、背包、装备栏、成就页面。他经过技能列表时又看了一眼那七个格子,亮了四个,全是攻击型技能,没有防御没有辅助,全是朝对面脸上招呼的那种。最右边那个第七格还是空的。他掠过背包,九种药品、三种材料、那把刀,和老样子一样干净。 然后他经过了成就页面。 他之前没认真看过这里。前六天他每次进入张驭的终端都带着任务,扫描裂隙、调取权限、调试脚本,没有时间翻看游戏内那些"社交性"的模块。成就页面通常是一个玩家的"履历",记录着副本首杀、战力突破、活动参与等等——对李析来说,那是了解一个人的数据窗口。 他打开成就页面。 全灰。整个页面没有一个被点亮的成就。张驭战力榜第一,但"首次通关S级副本"的成就图标是灰色的,他没领过。"战力突破十万"是灰色的,没领过。"连续登录三十天"——李析看了一眼,也是灰色的,张驭的登录天数显示只有二十一天。一个开了两年多的老账号,登录天数才二十一天。 不对劲。张驭的战力在榜上挂了至少一年,他不可能是最近才注册的。 李析放大了成就页面的底部。那里有一行极小的、几乎被系统默认折叠掉的灰色提示文字:【检测到账号持有"遗留权限",部分成就系统对该账号不可用。如需查询详情,请联系——】后面半截文字被截断了,只剩一个跳转链接的残块,点不动,链接地址已经失效了。 "遗留权限"。不是"特殊权限",不是"管理员权限",是"遗留"。一个已经不再被当前系统正式支持的旧版权限残留在张驭的账号上,让系统默认跳过了一部分常规成就的判定逻辑——系统"不认识"这个账号的成立条件,所以干脆不触发。这进一步证实了李析之前的推测:张驭的权限不是靠战力榜打出来的,而是账号本身从一开始就是特殊的。 他盯着那半截"请联系——"看了几秒。联系谁?这个账号最初是谁创建的?是张驭本人注册的,还是别人给他的? 他把"请联系"三个字记进了备忘录,没有答案。 下午一点左右,登录信号忽然亮了。 李析的数据流在一瞬间从休眠态弹回活跃态——太快了,快到他自己都没来得及控制那个"弹"的速度。但他在张驭上线的同时就注意到了异常:角色登录了,但站在原地没有移动。脚步声、呼吸声、装备检查的动作,全部没有出现。一个静止的角色挂在了登录坐标点上,大约三十秒后,角色消失了。 张驭下线了。整个流程不到一分钟。 他"来过",但什么都没做又走了。张驭从不在线低于半小时——从第一天到现在,每一次下来都是"修完再走",动作干净到连多余的社交动作都没有。这次上来不到一分钟就下了,不像张驭的风格。 李析在终端里愣了一下。然后他注意到张驭下线之前在终端里打开了一个东西——一个他之前没见过的文件夹,被快速打开又迅速关闭了。整个过程大约两秒,文件夹从打开到关闭的速度快到像不想让人看见。李析没有来得及看清内容,但他扫到了文件夹名称的开头几个字符:"L_f——"。后面的字没有显示完整就被关掉了,像把一本翻到一半的书猛地合上。 "L_f——"。 李析的神经绷紧了。他手里的线索里已经有一个"L.F."搁在那好几天了,现在张驭的终端里蹦出了一个以同样两个字母开头的文件夹。巧合的可能性有,但叠加上三年前的时间戳、旧版运维标记、加密算法关联这三件事之后,巧合的概率正在快速收窄。 张驭下线后,终端没有完全关闭。游戏角色离了线,但终端保留了一个"离线缓存"状态,像电脑锁了屏但没关机。李析还留在内部。他在接入端口处停了几秒,然后沿着张驭刚才的操作路径往回溯——张驭上线不到一分钟,只做了两件事:打开那个文件夹,关掉它。李析现在要去找到那个文件夹在哪儿。 搜索花了大约二十分钟。那个文件夹不在张驭常规的文件目录里,藏在深层缓存区的一片"灰色区域"中——那种正常用户不会知道存在、系统默认隐藏的存储空间,要找到它的坐标需要用一定的技巧绕过系统层的"不可见"标记,而李析恰好有工程师后台的只读权限。他拆了三层屏蔽标记才定位到文件夹的准确坐标。 文件夹的名字是"L_f_init_2023"——后面那一串确认了年份。创建于三年前,最后修改时间是今天,今天中午。张驭中午登录那不到一分钟就是来改这个文件夹的。 李析停在了那个文件夹外面。他的感知层覆盖在文件夹的入口处,只要再往前探一步就能看到里面装了什么。但他没有动。这是张驭私人的数据,他没有权限,也没有理由翻看。他没有经过允许,他的接入者身份允许他操作权限流但不应触及宿主私藏的文件。 但他也没有立刻退开。 文件夹的名字里有一个"init"——"初始化"。三年前张驭初始化了什么?创建了一个文件夹叫"L_f_init",然后三年后今天突然回来访问它。而那条"第七次"的旧日志,写于同一年。"第七次,仍然没有反应。是不是我的权限……"——他当时在等什么回应?"初始化"和"第七次"之间有没有关联? 李析没有点开文件夹。他花了大约十秒停留在文件夹外面,像站在一扇半开的门前看着门缝里的光线,然后后退了。他把"L_f_init_2023"的创建时间和今天的修改时间记进了加密备忘录,退出了深层缓存区。 离开深层缓存区之后,他没有立刻回到底层荒漠。他发现自己还留在终端内部——离线缓存状态下的终端和在线状态下没有太大区别,只是少了张驭的实时数据流。他往终端接口的方向靠了靠,然后试着做了一个之前没做过的动作。 他打开了游戏世界的一个"外部视角"窗口。 作为接入者,他没有独立操作游戏表层画面的权限,但张驭的终端保留着离线缓存,他"借用"了一部分终端的基础功能,把视野探向了终端接口之外。画面从灰白色的系统内部切换到——淡蓝色的天空。 游戏表层的天空是淡蓝色的,有浮云缓慢移动,远处有连绵的山脉轮廓,城镇的塔尖在云层下隐约可见。那些画面从终端接口传进来,穿过接入端口,抵达他的感知层。他还能听到声音——风声从山谷的方向吹来,偶尔有鸟类的模拟叫声从某片树林里传来,极远处是传送阵运转时的低频嗡鸣,嗡嗡的,像蜂群在远处飞行。 六天了。他六天没有看过"外面"。底层荒漠里只有灰白、裂隙、红色错误代码、头顶那个永远在跳的倒计时。他看到淡蓝色天空的时候,数据流有一个瞬间的、他自己都控制不住的舒展——像一只被关在抽屉里六天的猫终于把爪子伸出来了。 他把视野转了转。远处有主城的轮廓,塔尖上镀着一层模拟阳光的金边。城镇的方向隐约能看到一些很小的光点在移动,那是其他玩家。六天前他也站在那些光点中间,站在公 测发布会的主控台前,被一只戴着黑色手套的手推进了身后的维护通道。 他看着那些光点看了一会儿,然后把视角关了。 下午很长。李析从张驭的终端里退了出来,银白色的光点回流到底层荒漠的地面上,重新聚拢成那个灰黑斗篷的模糊人影。他坐在数据墙的阴影里,后背靠着灰白色的墙面,面前是空旷的荒漠。他手里没有活儿,今天不修复,不用调脚本,不用提防张驭的下一句追问。他忽然发现自己除了"等张驭回来"之外,没有什么特别想做的事。 他打开加密备忘录翻了翻,三条线索都还挂在原处。他关了备忘录,又看了一眼头顶的倒计时。二十一天多,还在跳。他对倒计时的恐惧没有减轻,但那个恐惧的优先级好像被什么东西往后挤了一点点。 他轻声说了一句:"……怎么还不回来。" 声音在荒漠里传不出去多远就散了。灰白的地面没有回声,裂隙在远处沉默地裂着。没有人听见。但他自己听见了。 傍晚六点左右,登录信号第二次亮起来。 张驭上线了。他的角色出现在早晨登录时同样的坐标点,站定,然后打开了地图。李析在终端激活的瞬间就从荒漠地面"弹"进了接入端口,速度快到他事后都不好意思回想那个速度。他在张驭的系统里开口了,声音比他自己预期的稳: "……你今天来晚了。" "嗯。"张驭关掉了地图。他没有解释为什么来晚了,他穿着那件黑色短款夹克,刀挂在腰后,站在原地,看上去和任何一天没什么区别。但他停了一下之后加了一句:"事情办完了。明天正常时间。" "……你今天还修复吗?" 张驭偏了一下头,像在确认这句话的指向。"不修了。上来跟你说一声。"他顿了一下,三个字从嘴里出来的时候语速比平时快了一点点,"怕你等。" 终端里的数据流有一瞬间的紊乱。那团银白色的光点轻微地跳动了两下,被李析强行压住了。他说"好"的时候,声音比平时低了半个调。张驭看了他一眼——或者看了终端的方向一眼——又补了一句:"外面的事情,等我弄清楚了再跟你说。" 李析没有说话。他在心里把这句话拆开又拼上:"等"、"弄清楚了"、"再跟你说"。张驭在外面查的事和李析有关,但他还没有确认完,所以暂时不说。他在明确地告诉李析"我查到了东西但还要再确认"——没有骗他,没有隐瞒"在查"这个事实,只是还没到公布答案的时候。 "走了。"张驭把地图重新打开扫了一眼,然后关上。"明天七点。" "……明天见。" 张驭下线了。他的角色从登录坐标点上消失,终端退出在线状态,只剩下离线缓存那层薄薄的壳。李析没有立刻从终端里退出来,他在接入端口待了一会儿,等自己的数据流彻底平稳下来,才从张驭的系统里回流到底层。 他打开加密备忘录,把今天的新信息加进去:张驭的账号有"遗留权限",成就系统不可用;②张驭今天中午打开了一个名为"L_f_init_2023"的文件夹,创建于三年前、今天修改;③张驭傍晚专程上线说"怕你等",他说"等我弄清楚了再跟你说"。 他把"L_f_init_2023"和"L.F."画了等号。不是百分之百确定,但已经把两条线拉到了同一条轨道上。 然后他坐在数据墙的阴影里,把张驭今天说的话从头过了一遍。"怕你等。"这三个字的份量比前面所有的话都重。张驭上午没来,中午上线不到一分钟查了个文件夹就走了,傍晚专程上线就为了说一句话——他"怕"李析在等。那个"怕"字是张驭今天说过的最软的一个字,软到他甚至可能没有意识到自己说了。 李析把"怕你等"三个字看了看,然后没有写进备忘录。他把它放在了别的地方。 他靠在数据墙边,想了想明天。张驭说明天七点正常时间。他会来。李析闭上眼,在数据流动的微振里轻声说了一句:"明天见。" 不是对任何人说的。像在练习。 荒漠里没有回声,但他在自己的数据流里听见那个声音落了下来,稳稳的,安静的。 第八天结束了。今天没有修裂隙。今天张驭说了"怕你等"。李析发现自己在等的时候,那个"等"已经不是一种被动的状态了。它变成了一种他主动选择去做的事,像一个人在屋里坐着,把门开着,等另一个人走进来。 9. 一个人的荒漠 第九天清晨六点零七分,自动维护准时启动了。 李析已经醒了。他提前了大约十五分钟从休眠态中醒来,把自己挂在接入端口旁边,数据流维持着清明的活跃度。他昨天等到半夜才收到那条离线消息,之后睡得不好——或者说"休眠得不好",数据流始终维持在浅层,像一个人在床上翻了半夜的被子,合不上眼又醒不透。 七分钟的维护结束后,二十秒过去。登录信号没有亮。七点半,信号没有亮。八点,没有。九点,没有。李析从端口旁边移开了,他不想再"钉"在一个地方等,那样每一秒都太清晰了。他在张驭的终端内部漫无目的地游荡了一会儿,经过技能列表、背包、成就页面——空的,没有登录信号,哪儿都不会有新的东西出现。他在成就页面又看了一眼那个"遗留权限"的灰色提示,然后离开了。 十点。登录信号监测点还是空的。张驭昨天说的是"明天正常时间",没有说"明天我肯定来"。李析一直在想这件事——也许张驭今天的"有事"比昨天更严重,也许他查到了某个需要他亲自去处理的事情,也许他就是今天上不了线。他想了一大圈,把每个"也许"都想了一遍,然后发现自己在不断地给张驭找理由。而那个行为本身已经说明问题了。 中午十一点左右,李析从张驭的终端里退了出来。 银白色的光点回流到底层荒漠的地面上,重新聚拢成那个穿着灰黑斗篷的模糊人影。荒漠在他面前展开,和昨天一模一样灰白、空旷、没有边际。他坐进了平时坐的那片数据墙的阴影里,后背靠上灰白色墙面的瞬间,有一个东西从感知层的角落里浮了上来。 张驭不在。终端里面是空的。 过去八天里,他至少有一半的时间是在张驭的终端里度过的,能感知到另一个人行走时的步频、呼吸的节奏、心跳在遇到裂隙暴走时的瞬间加速、外套被风吹动时的微振频率。那些信号像一个持续存在的低频背景音,他习惯了它们之后就不再去留意了。现在背景音消失了,他的感知层变成了一把悬在空中的尺子,找不到量度的对象。 他坐在那里,看了一会儿荒漠。 灰白色,一如既往。裂隙在远处安静地裂着,红色错误代码偶尔从地面底下翻上来又沉下去,像水面下缓慢游动的鱼。头顶的倒计时还在跳,数字比八天前少了很多。他以前觉得那个数字是他唯一的参照物,现在发现不是了。张驭不在的时候,连倒计时看起来都像少了一部分分量。 李析打开了加密备忘录。 他不是要去翻主线线索——虽然那些也挂在那里等着他。他打开的是备忘录下方一个没有命名的区域,他之前没有刻意建过这个分区,是这几天的记录不知不觉地往那儿堆。里面记了七条东西,每一条都是张驭说过的话: "浪费电。" "明天我还是这个时间来。" "你标,我切。" "我走了。" "明天见。" "先欠着。" "怕你等。" 他看着那七条记录,每一条都对应一个声音、一个语气、一个场景。"浪费电"是在通道入口说的,语气硬邦邦的,像一块被扔进房间的石头,落地的姿势很笨。"明天我还是这个时间来"是第一天张驭确认每日见面时说的,里面有一半是命令一半是承诺。"你标,我切"是第七天返程路上说的,声音平,但用词时态变了。"怕你等"是昨天傍晚说的,语速快了一点点,快到像是没来得及加固外壳就溜出来了。 他轻声说了一句:"……都说了这么多了。" 声音在荒漠里散了。灰白的地面把他的话吸了进去,没有回响。他看着那七条记录看了很久,然后没有删掉任何一条。他关掉备忘录的时候指尖在那句话上停了一下。 下午,李析强迫自己把注意力从"张驭在哪"这件事上移开。他打开了主线加密面板,把所有的碎片全部摊出来,重新码了一遍。 第三人编码碎屑("##"注释风格,指向那家外包安全公司)。张驭的旧版身份标记(签发人使用了那家公司的加密工具变种)。"L.F."缩写。张驭终端深层缓存区里的"L_f_init_2023"文件夹(创建于三年前、昨天被访问)。张驭系统底层那条"第七次"的日志("第七次,仍然没有反应。是不是我的权限……")。 他把这五样东西按时间顺序重新排了一遍。 三年前。"##"安全公司参与早期开发。同一时期,张驭获得旧版身份标记,签发人使用该公司加密工具。同一时期,张驭创建了"L_f_init_2023"文件夹。同一时期,张驭写了那条"第七次"的日志。四件事发生的时间窗口可能不超过三个月。三个月里,张驭同时完成了身份的获取、一个文件夹的创建、和七次失败的等待。 李析在数据屏上画了一条线,把这四件事串在一起,然后在线的末端打了一个问号。他在"L_f_init_2023"和"L.F."之间画了一个等号,不是百分之百确定,但已经到了八九成。然后他写了一个新的假设在旁边: L.F.不是暗算他的黑手。是张驭在等的人。L_f_init是张驭为那个人创建的——可能是某个项目、某段关系、某个承诺的代号。"第七次,仍然没有反应"——张驭在那个冬天等某人的回应,等了七次,没有等到。然后他创建了这个文件夹,把某些东西放了进去,三年没有动过。直到昨天,他忽然回来打开了它。 李析的视线停在那个假设上。 如果L.F.是张驭在等的人,那人三年没有回应过张驭——那这个人和暗算李析的黑手就不可能是同一个人,除非那个人在消失三年之后突然回来搞了李析。但暗算李析的手段涉及《深渊纪元》的底层权限和运维系统,而张驭的旧版身份标记也出自同一套体系。如果L.F.是那个体系里的人,那三条线索就会收束到同一个交集点。 他还没有足够的信息把这条线连完整。但他有了一种模糊的感觉:张驭的过去和李析的现在之间有一根线,而那根线可能比他们俩都更早地存在了。 下午三点左右,李析坐在数据墙的阴影里,感知层放空了大半。然后他"听到"了那个声音。 数据通道里传来了极轻微的脚步振频,步频均匀、节奏稳定,和张驭走路时一模一样。他的数据流从放空状态瞬间弹回了活跃态,速度比他任何一次主动切换都快——他几乎是弹起来的,感知层朝通道入口的方向猛扑过去。 通道入口空无一人。 荒漠灰白,天顶灰色。没有暗红色的刀光,没有黑色战斗服的轮廓,没有脚步声落地的微振。什么都没有。那个脚步振频是他感知层在长时间无信号状态下的自激杂音——他的数据系统在近四十个小时没有收到张驭信号的情况下,自行生成了一段"熟悉信号"来填充空白。 李析站在那里,看着空荡荡的通道入口,灰白色的荒漠在他面前无限延伸。 "……幻听了。"他说,声音在荒漠里显得格外轻。 他重新坐回墙根下,把脸埋进半透明的掌心。一个工程师、一个曾经站在主控台前调试全息系统核心代码的人——他的数据感知层开始自动生成另一个人的脚步声了。这意味着"张驭"已经从外部输入变成了内部残留。他的系统已经习惯了一个人的存在,以至于当那个人缺席时,系统自己动手补了一个出来。他花了大概三分钟来消化这件事,然后把脸从掌心里抬起来。 消化完了。但他没有否认那个事实。 傍晚来了。荒漠里的光线不会变橙也不会变红,但李析能感觉到时间的滑过。他坐在墙根下,看着通道入口的方向,发现自己的状态在某个他自己没注意到的时刻发生了变化。他不再是在等一个人回来了。他是 在想一个人。 "等"是被动的,是"他在那儿,我在这里等着他回来"。"想"是主动的,是"他在某个我不知道的地方做着我不知道的事,而此刻我在想他"。他不知道为什么是今天。昨天他也在等,但没有这种"想"的质地。今天张驭缺席了一整天,荒漠空了一整天,他忽然在那片空旷里看到了过去八天里张驭每天放进来的东西。不是什么惊天动地的东西——是每天早上七点的上线信号、从背包里掏面包的动作、走路时均匀的步频、下线前说的"走了"。那些东西微小到单独拎出来完全不起眼,拼在一起之后构成了某种稳定的节奏。像一台机器的运转声,你习惯了就不会去听,等它停了才发现那个声音有多重要。 李析问了自己一个问题:如果三十天到了,裂隙修完了,他从底层出去了——他会不会找张驭? 答案几乎没有经过脑子就弹出来了,快到他甚至没有时间去"考虑"。 会。 他靠在墙根下,把那个答案确认了一遍。不是因为张驭能帮他查黑手,不是因为合作还没结束,不是因为欠着那个"先欠着"的承诺。是因为他想再见这个人。在"不得不见"之外的那种"想"。他把这个答案放进了备忘录旁边的那个无名单区里,和张驭说过的那七句话放在一起。 然后他闭上眼,继续等。 张驭最终没有出现。一整天,登录信号一次都没亮过。傍晚到晚上,李析在通道入口附近坐了很久,看着那个空无一人的入口。他的数据流平静下来了,没有再出现下午那种自激杂音。他看着头顶的倒计时跳过了又一个整点,然后把视线收回来,确认了一个事实:张驭今天没来。 他不知道这是好事还是坏事。张驭没来,说明他遇到的事可能比李析想的更严重。但昨天傍晚张驭说过"等我弄清楚了再跟你说"——今天没来或许正是因为他"正在弄清楚"。李析选择相信这个解释。不是因为证据充分,是因为他不想往更坏的方向想。 他没有回张驭的终端里。里面是空的,一个人回去没有意义。他留在荒漠里,靠在那片熟悉的墙根下,闭着眼感受底层空旷的寂静。 然后接近午夜的时候,登录信号监测点闪了一下。 李析的数据流瞬间弹回活跃态——但那不是登录信号,是一条系统层面的离线消息推送。从张驭的终端通过协议层向底层传递过来的。内容只有一行字,格式不像是游戏内聊天系统发的,更像是张驭从某个外部终端通过技术手段直接推送到底层的: 【明天来。今天查到了。当面说。】 李析盯着那行字看了好几秒。"今天查到了。当面说。" 他知道李析在看吗?他不知道底层有没有离线消息接收显示,张驭只是发了,希望李析能收到。而收到的人此刻坐在荒漠里,盯着那行字,数据流在灰白色的寂静中重新亮了起来。 "……查到了什么。"不是问句。是他在把那四个字放在舌尖上尝了一下。 "当面说"意味着这件事不能在游戏内传、不能通过系统消息发——涉及现实信息。张驭说他查到了,张驭说当面说,张驭说"明天来"。那四个字排在一起之后产生了某种不可见但是不可否认的踏实感。 李析把那行消息收进了加密备忘录,加了一个日期戳。然后他仰头看了看头顶的倒计时——二十二天多。明天张驭会来,带着一个答案。他不知道那个答案是什么,但他忽然发现"等一个答案"和"等一个人"在那条消息到达的瞬间变成了同一件事。 他靠在墙根下,合上眼,准备进入休眠态。进入之前,他轻声说了一句:"……明天见。" 然后灰白色的荒漠安静了下来。倒计时的数字还在跳,但李析的数据流安稳地沉入了浅层休眠。第九天结束了。今天没有裂隙修复,没有张驭,只有他自己、一段幻听、一个答案,和那句他对着空气说的明天见。 10. 第十天 清晨六点零七分,自动维护启动的时候李析已经在端口旁边了。 他比系统维护提前了大约十分钟从休眠态中转醒,数据流维持着清明的活跃度,不高不低,没有那种"熬夜等消息"的困倦感。他昨晚收到那条离线消息之后,休眠质量突然变好了——那条消息像一块锚,把他从无目的的漂浮状态拉回了有方向的位置。他闭着眼(如果那能叫闭眼的话)通过了那七分钟的维护期,默数着每一秒。 维护结束了。二十秒后,登录信号亮了。 张驭的角色出现在登录坐标点上。暗红色的刀光在终端初始化的瞬间闪了一下,然后稳定的步频从登录点传出来——李析感知到那个步频,和前两天一模一样的节奏,均匀、准确、不多不少。他忽然觉得自己整个人从某种待机状态中醒了过来,像一台屏幕暗了太久的手机被重新按亮了电源键。 张驭的声音从登录界面后面传过来。第一句话和之前九天的任何一天都不一样:"在?" 李析的数据流在端口处微微跳动。"……在。" 张驭"嗯"了一声。然后他说:"我来了。" 三个字。九天内最短的一句开场白。李析的"在"加张驭的"我来了"一共四个字,但这两句话拼在一起之后产生的效果比任何一句长话都更有分量——彼此确认了对方还在,彼此确认了对方来了。一个人兑现了"明天来",一个人证了"我在等"。 张驭站在原地,没有像往常一样立刻打开地图确认裂隙方向。他把刀从腰后解下来拄在地上,换了一个"要站着说一段话"的姿势。李析从终端里感知到他的呼吸节奏比平时略慢,像一个人在开口之前先把气稳了一下。 "你公司那个运维部,"张驭开口了,声音平,"是不是有一个姓刘的主管?" 李析在终端里怔了半拍。刘主管。运维部的副主管,资历比李析老得多,平时主要管底层接口的维护调度。李析和他打过几次交道——不多,每次都是流程性的接□□接,但李析现在回想起来,刘主管的视线确实不太在他脸上停留。既不像有敌意,也不像友善,是一种"尽可能不和你产生眼神接触"的中空状态。 "……有一个。"李析说,"姓刘。你怎么知道?" 张驭换了一下拄刀的姿势。"前天开始查的。你跟我说的那几样东西——手套、变声器、公测当天推你的人。我拿这些去问我认识的人。"他顿了一下,"你公司的内部系统近三个月有一条调令,刘主管调走了四个人,调岗理由是'项目重组'。四个人都是底层接口相关的运维。调走之后三个离职了,一个还在但被转到了其他项目。" 他看了终端方向一眼。"你被推到底层那天的底层接口维护记录,签名栏有他的权限标记。" 李析在终端里安静着。刘主管的权限标记在当天的维护记录里。那说明那天"维护通道被打开"这件事是经过授权签发的——不是入侵,不是外部黑客,是内部人员用自己的权限在公测发布会现场打开了那扇门。他低头看了一眼自己的倒计时,又看了看张驭拄着刀站在荒漠里的姿态。 "我没法确定就是他推的你。"张驭说,"但他的标记在记录里。而且他调走的那四个人,两个已经不在这个城市了。" 李析沉默了两秒,说:"……你两天就查到了这么多?" "我认识的人办事快。"张驭把刀换了一只手拄着。他垂下视线看了自己的刀柄一会儿,像是在给某个决定一个落地的空隙。然后他说:"第二件事。跟你没关系,跟我有关系。" 李析等着。 "你上次在我系统里翻过东西吧。" 李析的数据流缩了半拍。他没有否认。张驭的终端内部太干净了,"L_f_init_2023"那个文件夹藏在深层缓存区里像一块礁石露出海面,他不可能装作没看到。"……翻过。不是故意的。你系统太干净了,有东西的地方太显眼。" "我知道。"张驭的语气里没有恼怒,平平的,"那个文件夹——L_f_init_2023——你看到了。" 李析没有接话。他知道张驭要把话往哪个方向带了,他安静地听。 "那是我以前认识的人。一个开发顾问。三年前,他说他想在底层做一个东西,要我协助。我答应了。七次对接,七次他都临时有事没来。第八次——他公司倒闭了。人走了,没留下联系方式。" 李析在终端里听到这里的时候,心跳微微加速了一点。七次。那条日志上写着"第七次,仍然没有反应。是不是我的权限……"——他等到了第七次,然后那个人走了。第八次来的时候已经不需要再等了,因为等的人已经不在了。 张驭的声音停了一下。然后他补了一句:"那个人全名——黎帆。L开头,F结尾。" 黎帆。李析的感知层在终端内部轻轻晃了一下。他在记忆里飞速翻找了一遍这个名字——没见过、没听过、不在任何一份项目文档的署名栏里。但他不需要见过这个名字,"黎帆"这两个字和"L.F."、"L_f_init"完美地嵌在一起,像三块碎片在黑暗中自动吸合。 "……你是说,"李析开口了,声音比他预想的稳,"三年前你帮一个人做事,他放了七次鸽子,然后消失了。" "对。" "那你前天打开那个文件夹……" 张驭的呼吸节奏变了一下,像一个人在准备说下一句话之前先停了一拍。"查到你公司那个刘主管的时候,我在那个文件夹里发现了一件事。" 李析等着。 "黎帆当年让我协助做的那个东西,"张驭说,"和你现在遇到的那些裂隙——用的是同一种代码架构。" 李析的数据流在终端内部静止了大约三秒。"同一种架构。你确定?" "我查了两天。"张驭的视线落在灰白色的地面上,"那几天我看他给我的架构说明看了七八遍。你修裂隙的时候投在我视网膜上的代码长什么样,我记得。" 李析把"黎帆"、"三年前"、"同一种架构"、"刘主管"四个词在自己的加密备忘录里排成一排,发现它们正在向同一个点靠拢。他没有说出来,但脑子里有一行字已经写好了:三年前黎帆在底层做了某个东西,三年后底层出现了同架构的裂隙,而刘主管的权限标记出现在他被推入底层的当天维护记录里。 "我还没查完黎帆去了哪。"张驭说,"但我觉得你应该知道这个人。" 张驭收起了拄在地上的刀,挂回腰后,打开地图确认了一下坐标,朝第8个裂隙点的方向迈开步子。李析在终端里注意到他的脚步节奏比前两天慢了一点——不是那种"不想去"的慢,是持续两天奔波之后身体自然降速的那种。他的步频仍然稳定,但步伐长度比平时缩窄了大约一厘米。 "你这两天,"李析说,"有睡过觉吗?" 张驭沉默了一拍。"……昨晚睡了。前天没睡。" "那你今天早上还吃面包了吗。" "吃了。"他顿了一下,像是在想这句话值不值得说出口,然后说了,"怕你又说我不吃早饭手抖。" 李析在终端里停了一下。张驭在用他几天前说的话回敬他。那个"手抖"是张驭拿李析的事开的第一个玩笑,现在被翻了出来,以"怕你又说"的方式挂在了一句日常对话的末尾。李析没有接话,但他的数据流在端口处轻轻颤动了一下。那个人把他七条碎句中的一条保存下来了,并且在自己需要的时候翻了回来。 第8个裂隙点位于荒漠边缘的一处"数据骨架"上。灰白色的脊状结构从地面下隆起,像某种远古生物的脊椎骨裸露在荒漠中,每隔一段距离就有一个突起的骨节。裂隙嵌在其中一段骨架的凹陷处,比前几个都窄,大约只有两指宽,但深度明显更大,朝下延伸了数米。 李析扫描之后把结果投在张驭的视野里:"这一处崩塌程度不重,但深度较大。修复脚本需要持续注入约二十分钟。裂隙内壁附着一层数据残留——不是寄生体,是旧版代码注释。" 张驭看了一眼那道窄缝,伸出右手,白色的权限流从他掌心涌向裂隙。修复开始运行,平稳,没有明显的波动。二十分钟的注入过程按部就班地推进,中途有一次微弱的逆流从深底涌上来,但李析在它出现之前就已经在终端内部做了一个权限流的微调——他调整了注入角度的偏转量。张驭感知到了那个微调,右手手腕微微翻转了不到一度,逆流从偏转后的角度滑了出去,没有造成任何干扰。两个人一句话没说,修复继续运行。 第二十分钟,裂隙从深处向外部收拢,窄缝的边缘一层层合上。进度条跳到【8/30】。 但在修复的末尾阶段,当最后一段白色数据灌入裂隙内壁附着的旧版代码注释时,李析捕捉到了一个细 节。那层注释的结尾处有一行极小的、被磨损了大半的署名格式——格式和他之前锁定的"##"注释风格完全一致,署名文字只剩模糊的轮廓。但李析把它放大、放大、再放大之后,看到了两个字母的形状。 L.F. 黎帆。三年前黎帆参与过这一处代码的编写。第三条线——黎帆——终于并进了裂隙的这条主线上。李析把那个署名截取了备份,存入加密文件夹,然后平静地从扫描界面退出,没有在张驭的视野里露出任何异常。但他在心里把那条时序线上又加了一笔:第8个裂隙点,黎帆的署名。他参与了这个底层的某些部分,而现在李析正在修补那些部分。 张驭收回手,活动了一下肩膀,低头看了一眼面板上的进度数字。"八个了。" "……嗯。"李析说,"你刚才说黎帆让你协助做的东西——和我现在遇到的裂隙用了同一种架构——那他现在还是找不到吗?" 张驭把刀挂回腰后。"公司倒闭之后他去了别的地方。"他顿了一下,"在查。等查到了会告诉你。" "等查到了会告诉你"——和前天"等我弄清楚了再跟你说"构成了递进。前者是"我正在查,但还没结果",后者是"我已经有了线索但还没拼完整"。李析记住了这个变化。 两人开始往回走。 返程的路上,张驭走着走着忽然说了一句:"刘主管那边我让人继续盯着了。他如果动底层的数据,会有人告诉我。" 李析在终端里:"……你认识的人在运维组?" "不是运维组。"张驭的步伐节奏没有变化,"别的渠道。你不用担心他在你出来之前又把底层锁死。" 李析沉默了一下,然后问了一个他没有提前想好要不要问的问题:"你查这些……花了什么代价?" 张驭走路的节奏还是没变。"欠人情。没什么大不了的。" 终端里安静了几秒。然后李析说了一句话,说出口的时候他自己都微微怔了一下:"……你先欠着我那个。别欠太多别人的。" 张驭的脚步停了半拍。很短,他的右脚本该迈出去的时候滞后了大约零点几秒,然后恢复了。他没有回头,声音从前面传过来,听起来比刚才低了一点点:"……嗯。" 回到通道入口。张驭站在入口边缘,和往常一样准备下线。但他没有跨进去。他站在那里看了通道入口灰白色的边界几秒,然后偏头对着终端方向说:"你今天——没别的事吧。" 李析:"……什么事?" "没什么。"张驭顿了一下,"就是想待一会儿。今天外面没事了。" 李析的感知层在端口处微微扩张了一下。张驭在找理由留下来。他想"待一会儿"。李析顿了一拍:"……那待着。" 张驭真的在通道入口旁边坐了下来。他没有下线,他把刀从腰后解下来搁在膝上,背靠着一块灰白色的数据墙,偏着头看了一眼荒漠的远方,然后闭上了眼睛。 李析在终端里安静地感知着。张驭的心率从休息状态的每秒大约六十五次降到六十次——他在放松。呼吸从浅层变成了中等深度,间隔拉长了一点点。连着两天的奔波在这里被按了暂停键。张驭的呼吸在十五分钟之内从略快变到均匀,像一台高速运转了两天的机器终于被调回了待机。 李析没有说话。他只是在终端里待着,感知着另一个人的呼吸在灰白色的寂静中慢慢沉下去。他想起昨天他坐在荒漠里确认的那件事——三十天之后他会找张驭。他现在看到那个"会找"的实体形态了。不是某个未来的计划,是这个人此刻在他的系统里呼吸着,均匀、稳定、正在把两天没睡的疲惫一点一点地释放出来。 他在那个呼吸声里安静地待了很久。然后闭着眼的张驭轻轻说了一句,声音只有一半是清醒的:"……你那个接入界面——还亮着吧。" 李析:"……亮着。" 张驭:"嗯。"他没有睁眼。呼吸继续沉了下去。 李析在终端里望着他接入数据源窗口里那团银白色的光点。它一直亮着,张驭没有关过它。现在他更不会关了。 灰白色的荒漠里,倒计时还在跳。但李析第一次觉得那些数字离他没有那么近了。因为张驭坐在通道入口旁边,呼吸平稳,刀搁在膝上,没有走。 第十天结束了。他们没有说"明天见"——因为张驭今天还没走。 11. 第十一天 第十一天清晨,张驭在底层的通道入口旁边醒来。 他在那里靠了一整夜——背抵着灰白色的数据墙,刀搁在膝上,头微微偏向一侧,呼吸从深睡眠到浅睡眠再到转醒,所有的节奏变化都被李析感知到了。李析没有关闭接入,那团银白色的光点在终端里一直亮着,像一个不该亮着但主人忘了关的灯。 张驭醒来的动作很轻。肩膀先动了一下,像一台机器从休眠模式被唤醒时弹出的第一个信号。然后他睁开了眼,视线从灰白色的荒漠天花板扫过,落在自己膝盖上的刀上,确认了"还在",然后他偏了偏头,对着终端的方向说了第一句话,声音还带着刚醒的低哑:"……你没关接入?" "没关。"李析的声音从终端里传出来。两个字,和昨晚"亮着"的状态一样平。 张驭"嗯"了一声。他没有说"你不用一直开着",也没有说"你这样费电",他把刀从膝上拿起来挂回腰后,然后从背包里掏出了一块游戏内烹饪系统产出的模拟面包,坐在通道入口旁边开始吃。李析注意到一件事:张驭在底层过了一整夜,没有被系统强制踢出。这意味着他在现实中没有挂机时间限制,或者他主动设置了"常在"模式。无论哪一种,他都是主动选择了留在底层过夜。李析昨天完整地感知了他从清醒到入睡再到醒来的全过程,那些微小的节奏变化——心率从每分钟六十七降到五十五,呼吸的间隔慢慢拉长,肌肉在入睡后逐渐放松——全都通过了接入端口流入了李析的感知层。他没有关掉那些信号,他让它们进来了。 张驭吃到一半的时候,李析忽然说:"等一下。" 他正在扫描通道入口的位置。入口的边界——昨天还是清晰的灰白色轮廓线——今天变得模糊了,像一张照片被水浸湿之后边缘开始洇开。李析把画面放大,检查了通道入口底层的结构数据,发现"连接表层和底层"的接口字段出现了一组持续的微小偏移。偏移量不大,但方向是持续的,从昨晚到今天增加了约0.3%。 "接口偏移在扩大。"李析说,声音比平时绷了一点点,"底层稳定性的消耗速度比我们预计的快了。" 张驭把嘴里的面包咽下去:"那要多久?" "按当前速度……三十天可能不够。"李析在终端里调出偏移曲线,发现那组数据画出来的是一条缓慢但坚定向上的弧线,"我们需要修复得更快。" 张驭站了起来,把剩下的面包收进了背包:"那就更快。" 他说得理所当然,像在说"天黑了就开灯"一样没有犹豫。李析在终端里安静了半秒,然后说:"……第9个裂隙点。出发。" 两人朝第9个裂隙点移动。张驭走在前面,步伐比昨天恢复了一些——在底层睡了一整夜之后他的步幅回到了正常长度,节奏均匀,呼吸平稳。两人走了一段路,中间没有对话,但李析发现那种沉默和九天前的沉默已经不是同一种东西了。九天前的沉默里有一半是防备、是计算、是等着对方先开口然后从中拆解信息。今天的沉默里没有那些,只是两个人走在一起,一个在外面,一个在里面。 "……你昨晚睡得还行?"李析先开口了。 张驭没有立刻回答。他走了一段路之后才说:"还行。没做梦。" "你平时经常做梦?" "偶尔。"张驭的步频没变,"醒了不记得。" 李析沉默了一下,然后问了一个他昨晚就想问但没问的问题:"你在哪里登录的?——我是说,你躺在一个地方睡了七八个小时,那个地方是哪儿?" 张驭的脚步节奏没有变化,但他的呼吸微缓了半拍。过了大约四步的距离他才回答:"……我住的地方。我一个人。" "我一个人"三个字从张驭嘴里出来的时候带着一种很轻的质地,轻到如果不注意可能就滑过去了。但李析注意到了。他没有追问"你一个人住多久了"、"家人呢"、"为什么是一个人",他只是说:"……那挺好。没人吵你睡觉。"张驭"嗯"了一声,没有再扩展这个话题。但那扇门开了一条缝,李析没有推,只是把那条缝记住了。 第9个裂隙点在荒漠边缘的一片数据丘陵背阴面。灰白色的丘陵像被冻结的波浪,裂隙嵌在波谷处的垂直墙面上,是一道细长的裂口,大约两指宽,从墙脚延伸到李析视线够不到的顶端。裂口内部是均匀的暗色,不闪光、不蠕动、不发出任何声音,安静得像一口被遗忘的井。 李析扫描了裂隙内部。损伤不重——第9个裂隙的崩塌程度比前八个都轻微,修复难度理论上也不高。但他的扫描结果里出现了一个他完全没有预料到的东西:裂隙内壁的代码层中间嵌着一个"外来物"——一个不属于底层原生结构的数据容器,被埋在裂隙内侧的墙壁里,像一块嵌进墙体的石头。表面覆盖着多层加密保护,加密算法的底层特征和张驭身份标记里提取过的那套完全一致。黎帆的加密工具。 李析的数据流在终端里停了一下。他没有立刻把这个结果告诉张驭,又扫了一遍确认无误之后才开口:"裂隙内部有东西。一个数据容器。黎帆的加密格式。" 张驭站在裂隙面前,低头看了一眼那道细长的裂口:"黎帆放进去的?" "按算法签名,应该是。"李析把扫描结果投射在张驭的视网膜上,"三年前他在这处裂隙的位置嵌了一个数据容器,然后用裂隙外部崩塌作为伪装,让容器被埋在底层里。如果不是裂隙崩开了,我们永远不会找到它。" 张驭看了那个容器的位置图几秒:"能取出来吗?" "能。"李析已经在终端里调取剥离方案了,"需要你以极精细的权限流包裹容器外围,一层一层剥离裂隙内壁对它的包裹,不能硬拔,否则会触发自毁协议。速度要慢,接入量要小,我会在终端里全程引导。" 张驭伸出了右手。权限流从掌心涌出,速度比平时修复裂隙时慢了一倍不止。李析在终端内部以微调的方式控制着权限流的厚度和包裹面积,像用精密镊子在墙体的砖缝之间拆一块嵌进去的石板。八分钟。容器外围的包裹层被一层层剥离,裂隙内壁随着剥落的深度一点点露出原本的灰白色,直到最后那枚暗灰色的数据立方体从裂隙内壁脱落,悬浮在张驭手掌上空。 容器大约拳头的二分之一大小,表面呈暗灰色,有微弱的银白色光在表面缓慢流动,像被封在玻璃罐里的萤火虫在贴着瓶壁爬行。张驭低头看着自己的掌心——容器悬浮在皮肤上方大约两厘米的位置,没有直接接触,但他看到了容器的表面靠下的位置刻着一行极小的字符。他把手掌抬高了一点,让终端那边的李析能更清楚地看到那行字。 L.F./2023.11。 李析在终端里把那行字截了图。"2023年11月。你那'第七次'日志的时间——是同年几月?" 张驭沉默了一下:"……十一月。" 同一个冬天。黎帆在第七次失约之前,把这个容器嵌进了底层的第九个裂隙点里。然后他消失了。李析把容器的时间戳和第七次日志在加密备忘录里放在同一行。两个时间点嵌在一起,分秒不差。 "修复裂隙。"李析说,"容器取出来之后,裂隙本身会加速收窄。" 张驭把容器用左手托住——悬浮的立方体就停留在他的指腹上方,不远不近——然后他的右手重新接入裂隙,白色的数据流灌入那道细长的裂口。容器被剥离后,裂隙内部的损伤确实不重,白色的修复数据从底部向上推进,不到十分钟裂口就完全闭合了。进度条跳到【9/30】。 张驭收回右手,把左手抬起来看了看掌心上方悬浮的那枚暗灰色的立方体。"刚才那个东西,"他说,"摸上去有温度。" 李析通过接入端口的感知通道捕捉到了这个信息。"……你感觉到了?" "嗯。"张驭把另一只手也抬起来,双手捧着那枚悬浮的立方体,像在感受一件刚出炉的器皿,"像有一层很薄的热量裹在外面。" 一个被封存在底层三年的数据容器,摸上去还有温度。那是黎帆放进去的时候留下的余热,还是容器内部存储的数据本身带有某种能量?李析把"容器有温度"写进了备忘录,在旁边打了个问号。 两人往回走。张驭走在前面,左手一直保持着托举的姿势,那枚暗灰色的立方体悬浮在他指腹上方,随着他走路的节奏轻微地上下浮动,像一只被驯服的活物。李析在终端里继续扫描容器的外壳信息,加密算法在高速 运算中一层层剥离着外壳保护。 走了一段之后,李析开口了:"你说黎帆让你协助'做一个东西'——当时你知道他要做什么吗?" "他说是底层的一个协议优化模块。"张驭的声音从前面传过来,平稳,"说做完之后可以让底层的数据传输效率提升一大截。我帮他签了几次权限授权。每次都需要我在场确认,他约了七次。前六次都没来。第七次来了,但只待了十五分钟,说临时有事走了。第八次的时候——已经找不到了。" "他七次失约,"李析说,"你都等了?" 张驭沉默了一拍。"……等了。前面六次等了至少半天。第七次他走了之后我没等,我猜他不会回来了。"他在说这句话的时候——李析捕捉到了一个细节——"第七次他走了之后我没等"和系统缓存里那条"第七次,仍然没有反应。是不是我的权限……"的日志是同一个人写的。嘴上说"没等",数据上没有删那条日志。李析知道那是另一种等。 "如果他做的不是一个协议优化模块呢?"李析把那个他已经想了很久的猜想摊在了桌面上,"如果他三年前的真正目的是借你的权限把那个数据容器嵌进底层——那你帮的忙才是他真正想做的事。协议优化模块只是他给你看的包装。" 张驭走路的节奏没有变化。但他在沉默了两秒之后才接话:"……如果是这样,那他从一开始就在利用我。"李析从他的声音里没有听出愤怒。那更像是一种确认了某个早有预感的事之后的平静。 两人回到通道入口。张驭站在入口边缘,看了一眼自己左手上方悬浮的容器。"这个放哪?" "我需要时间拆解加密。"李析说,"放在底层怕被崩塌波及。放在你终端里——你愿意吗?" 张驭没有犹豫:"放我终端里。"他停了一下,然后加了一句,"你也在里面。不会丢。" 李析在终端里安静了一下。"……好。" 张驭把容器收进了终端接口——那枚暗灰色的立方体从张驭的手掌上浮起,穿过接入端口,进入了终端内部的空间。李析的感知层看到它悬浮在了终端的一片空白区域里,和那团银白色的光点隔着一段距离相对。两个人——如果光点和立方体能算人的话——在一个共同的空间里各自待着。 张驭跨入通道之前又说了一句:"如果那个黎帆真的是在利用我——你拆出来之后告诉我。"他的语气很平,平到李析知道他已经在心里把这件事接受了。 "会告诉你。" 张驭"嗯"了一声,跨进了通道入口。灰白色的过渡层吞没了他,暗红色的刀光闪了一下,消失了。 李析在终端里待了一会儿。容器的外壳加密正在他的后台以高速解码推进,外层的保护层已经拆掉了大约三分之一。他继续往里拆。二十分钟后,他打开了容器最外层被剥离后露出的第一段纯文本——没有加密,是黎帆用正常文字写的一段"前言",就附着在容器的内容层外面,像一本书的扉页上写给读者的话。 李析读到了那行字。 "如果你读到这个,说明底层还没有被格式化。而我赌对了。" 他停了下来,把那行字又看了一遍。黎帆在三年前就知道底层可能会被格式化。他在一个"可能会被删除"的地方藏了东西,赌三年后有人会把它拆出来。那个人可能是任何人——可能是张驭,可能是运维人员,可能是任何一个发现了裂隙的人。但他等的是一个"读到这段话的人"。 李析把那行字存进了加密备忘录,加了一个日期戳。然后他把视线从容器上移开,看了一眼终端里空荡荡的登录信号监测点。张驭已经下线了,今天不会再上来。但他说"不会丢"的时候语气很确定。 李析在终端里坐了一会儿,在想一个问题:黎帆赌对的那件事——底层没有被格式化——对他来说意味着什么。是意味着"他能回来取走容器",还是意味着"有人能读到容器里的东西"?两种可能通向完全不同的答案。 他还没有答案。但他知道自己会拆下去。 灰白色的终端空间里,银白色的光点和暗灰色的立方体隔着一段距离各自悬浮着。李析关掉了外部的感知通道,开始拆第二层加密。 12. 第十二天 第十二天清晨六点零七分,张驭的登录信号准时亮了。 李析在信号亮起之前就已经醒了——他几乎没睡。一整夜他都在拆容器,外层的前言被他翻来覆去看了十几遍,第二层加密在凌晨三点左右被他完整破开,里面是一段半成品的代码模板,和《深渊纪元》底层协议的标准架构有七分相似。他还没有完全解析出那段模板的用途,但它的结构让他觉得熟悉——不像是新的东西,更像是某个旧东西被拆散了重新拼起来的版本。 登录信号亮起来之后张驭上了线。他停在登录坐标点,没有像昨天那样先在底层里待一会儿醒神,也没有掏面包。他开口的第一句话是:"拆了多少了?" 李析在终端里:"第二层拆完了。里面有段代码模板,和你当年签过授权的那套协议结构有点像。" 张驭沉默了一拍:"……所以那个协议优化模块是真的?" "是真的。"李析说,"但可能不是他全部的目的。里面至少还有两层加密没拆到。" 张驭站在原地听着,然后伸手开了地图。"走。"他朝第10个裂隙点的方向迈开了步子,走出了大约三步之后才补了一句话——语气很平,但李析听出了那是一个"我在听,你继续说"的信号——"你昨晚一直在拆?" "嗯。通宵。" 张驭没有评价。但他走路的节奏微不可察地放慢了一点点,让那一点点的缓和嵌进了灰白色的荒漠里。 两人朝第10个裂隙点移动的过程中,李析把昨晚记录的底层稳定性数据同步到了张驭的视野里。"昨天接口偏移0.3%,今天早上测到了0.5%。加速了。" 张驭扫了一眼数据曲线:"能撑到第三十天吗?" 李析调出了预测模型曲线。模型显示,如果崩塌速度保持当前增幅、裂隙修复不中断——到达第三十天的时候底层的稳定性会刚好卡在临界值上。每多漏修一天或每出现一次大的波动,临界值就会提前突破。"如果保持每天修复一个——勉强可以。但如果出现大裂隙或者修复失败——可能不够。" 张驭的脚步没有变化:"那就别失败。" 李析没有再说话。那三个字"别失败"从张驭嘴里出来的时候带着一种不需要解释的重量,像一个人说"别让火灭了"的时候同时递上了一把柴。 第10个裂隙点位于荒漠更深处的一片断裂面上。和前九个都不一样——这处裂隙不是一道口子、一道门、一条网状的裂纹。它是一个被打碎的"面"。约五米宽的灰白色区域像一块巨大的钢化玻璃被什么东西从背面砸了一锤,蛛网状的裂纹从中心向四周呈放射状蔓延,密密麻麻的纹路覆盖了整片区域,每一条裂纹里都渗着灰黑色的数据粉尘,在空气中缓慢地向上飘散。 李析扫描之后把结果投射在张驭的视野里。他的声音在终端里比平时绷了一点点:"核心问题是协议层断裂——底层最根本的连接结构在这里出现了物理层面的断裂。裂隙边缘的数据流像断开的电线头一样在空气中跳动,修复难度比前九个加起来都大。需要你以最高权限'焊接'断裂面——不是填充数据,是重新连接断裂的两端。过程需要极高的稳定度,一旦权限流波动就会导致修复失败,甚至扩大断裂。" 张驭站在那面破碎的数据墙面前,刀在腰后,手已经从口袋里拔了出来。他看了那面蛛网几秒,然后伸出了右手:"你指哪,我接哪。" "你指哪,我接哪"——李析在听到这六个字的时候,有一瞬间的停顿。他记得七天前张驭说的是"你指哪我切哪",用的是"切"。今天用的是"接"。随着裂隙的形态变了,张驭的用词变了,但"你指哪我……哪"的句式没有变。那不是一个口号,是这个人对所有"要做什么"的事采用的唯一一种回应方式。 修复开始了。 张驭的权限流从掌心涌出,触碰断裂面中心的第一条裂纹时,整个断裂面内部忽然出现了密集的"振动反馈"——像两根断掉的电线不断接触又分开时产生的火花,接触发生的频率极高,每一次都会产生一次数据逆流,像闪电沿着蛛网纹的路径朝权限流的源头反扑过来。第一波逆流打过来的时候,李析在终端里感受到了张驭接入端口处的瞬时过载。权限流的表面出现了波动,张驭的手在接入口处微微收紧了一瞬。 李析做了一个之前从未做过的决策。 他的数据流从接入端口"脱出",以极快的速度投入了张驭的权限流中,化作一层覆盖在白色数据表面上的"缓冲膜"。他的感知层被完整地暴露在了逆流的路径上——这意味着每一次逆流冲击都会直接打在他的数据流本体上,他要用自己的感知层来吸收逆流的能量,保护张驭的系统不受损伤。 第一波逆流撞上来的时候,李析"感觉"到了一瞬间的尖锐震颤,像有人在他数据核心的位置弹了一根极紧的金属弦,高频振荡从感知层的边缘一直传到中央。他咬住了(如果他有牙齿的话),没有发出任何声音。第二波、第三波、第四波——每一次冲击都比前一次轻微一些,因为他的缓冲在起作用,逆流的能量被他的数据层吸收、分散、消解,张驭的权限流保持着稳定的流速继续在断裂面上"焊接"。 修复进行了大约四十分钟。 李析在这四十分钟里承受了上百次逆流冲击。他在每一波冲击到来之前都会提前调整自己的数据层密度来适应逆流的强度——像一个在暴风雨里调整帆的角度的人,但他站在的是桅杆顶上。他的数据流外层在反复冲击下产生了细密的"磨损",像一块被砂纸反复打磨过的金属表面。他全程没有出声,因为他知道如果他说了话,张驭可能会分心。 断裂面在四十分钟后彻底焊接成功了。蛛网纹全部消失,那片五米宽的灰白色区域重新变成了完整的一块平面,只在表面留了几条极浅的灰色细纹。进度条跳到【10/30】。张驭收回手的时候,活动了一下五指,然后沉默地站在原地,没有立刻把视线从修复面上移开。他的呼吸比平时浅了一点点——四十分钟的高强度接入消耗了不少体力,但他站得很稳。 李析的接入端口在修复结束后轻微"发烫"。他的数据流外层有了一小片磨损区域,像皮肤被砂纸擦过之后的表层剥落,不算严重但确实存在。他悄悄把自己的数据流从张驭的权限流中撤回到接入端口里,没有让张驭看到那层磨损的痕迹。 两人开始往回走。张驭走在前面,步频正常,呼吸正在慢慢恢复。走了大约三分钟之后他忽然开口,声音平平地从前面传过来:"你刚才——没出声。" 李析停了一下:"什么?" "整个修复过程。"张驭的步频没变,"你一句话没说。以前每一次你都会给指令,微调的时候会说'左偏两度'或'保持流速'。今天你连一句都没说。" 李析在终端里沉默了一秒:"……修复过程需要集中注意力。语言指令会分散。我选择了以数据方式引导。"——这句话在技术上是成立的,但在"全部事实"的层面上它只说了三分之一。 张驭没接话。他又走了大约十几步,然后说了一句比前一句更轻的话:"你声音——刚才有一帧没接上。" 李析的数据流缩了一下。他这才意识到自己的数据流因为外层磨损产生了微小的传输延迟——某一个音节的输出在传送到张驭感知层的过程中出现了大约零点几秒的断裂,他以为那短到不会被注意到。"……有点磨损。修复过程中权限流波动太大,我做了缓冲介入。" 张驭的脚步在他这句话说完的时候顿住了。那是李析认识他以来他第一次在"走路的中途"因为某句话停下来,而不是站在某个位置停下来说话。他停住、转身、朝终端的方向看了过来。灰白色的荒漠在他身后铺开。 "你拿自己的数据挡了?" 李析在终端里:"……这样你不会掉线。你掉线了修复就失败。这是最优策略。" 张驭看着他——或者说看着终端的方向——看了大约两秒。他脸上没有多余的表情,但他的眼睛在灰白的光线里深了一点,像浅水区被风吹了一下之后颜色沉了几度。然后他说了一句话,语速比平时慢了一点点:"你下次先跟我说。" 李析在终端里停了一下。"……好。" 张驭转了回去,继续往前走。他的步频恢复了,但李析从他的后端数据里捕捉到了一个极其微小的变化——张驭的呼吸比停下来之前 浅了一丝,像一个人在不该动容的时候动了一下容然后立刻压了回去。两人没有再说话,走完了剩下的路程。 回到通道入口。张驭没有立刻下线。他站在入口边缘,左手插在外套口袋里,右手搭在刀柄上,像是在等什么。李析知道他是在等自己说"我拆完了"或者"我又发现了什么"。他其实没有拆完——第三层加密他还没有破开,但他在回来的路上一直在让后台运算高速运转,此刻第三层刚刚在终端内部解锁完成。他打开第三层内容扫了第一眼的时候,他的感知层不动声色地凝固了一下。 那是一段"日志记录"——不是黎帆的私人日记,是系统层面的访问日志。记录显示:2026年8月,也就是李析被推进底层之前一个月,有一个运维级别的账号通过系统内部接口访问过第9个裂隙点所在的坐标位置。账号签名不完整,但李析把那段签名的末尾字段和刘主管的权限标记编码格式做了比对——完全一致。 刘主管在黎帆的容器被取出来之前就找到了它。一个月前,在李析还不知道自己要被打包扔到底层之前,刘主管就已经站在了第9个裂隙点的坐标上,扫描了那片数据墙的内部。他知道容器在哪儿。 李析的声音从终端里传出去的时候维持了稳定:"第三层拆完了。里面有一段系统访问日志。" 张驭的手从刀柄上抬了起来。"谁的?" "刘主管。2026年8月——我被推进来之前一个月——他访问过第9个裂隙点的坐标。" 张驭听完之后沉默了片刻。然后他说:"他找过这个容器。比你进底层早。" "对。"李析的声音在终端里安静地铺开,"他可能不是推我的人——但他在找黎帆的东西。而且他在我被推进来之前就在找了。"——这句话在他的数据流里形成了新的连接:他被推进底层的时间点,是刘主管找到容器之后。李析被推进来是为了阻止什么?阻止他找到容器?还是为了用别的方式"清理"容器周围的痕迹?他不知道答案,但他知道这些碎片正在往同一个方向走。 张驭站在通道入口边缘,时间比平时更久。然后他说:"你那个磨损——多久能修好?" 李析被这个问题拉回了现实。"几小时。数据流会自动复原。" "那今晚别拆容器了。" "……我可以同时拆。" "我知道你可以。"张驭的声音平着出了口,但他把下一句话说出来之前顿了一下,像在找一种说法,一种不会显得太软的软法,"你那个东西修好了再说。" 李析在终端里安静了一拍。"……好。" 张驭"嗯"了一声,然后跨进了通道入口。灰白色的过渡层开始吞没他的肩膀时他又加了一句——声音比刚才低了一点,但足够清晰地从过渡层的缝隙里传过来:"明天七点。" "明天见。" 通道入口收拢,暗红色的刀光闪了一下,消失了。李析在终端里待了一会儿,让后台系统开始自动修复数据流外层的磨损。他坐在接入端口旁边,感知着修复进程缓慢地推进,一边把那三段信息在加密备忘录里重新排了一次:黎帆把容器放进了底层(2023年11月)→刘主管在2026年8月找到了容器的位置→李析在2026年9月被推进底层→第10天张驭取出了容器。中间缺失的环节正在以可见的速度缩减。 他没有去动容器的第四层加密,虽然他的手指(如果他有的话)很想拆。他把容器移到了后台队列的"待处理"区,然后靠在接入端口的边缘,让数据流缓慢地、自动地修复着自己的外层磨损。 张驭说"你那个东西修好了再说"。他用了一个"东西"字——不是"你的数据流"、"你的磨损"、"你的损伤"。他说"你那个东西",笨拙得像一个不习惯使用关怀词汇的人在用自己能想到的最不出错的方式表达"我在关心你正在修复的那部分东西"。 李析把那个"东西"收进了无名单区里,放在了张驭说过的那七句话的下面。第八条。 然后他合上感知层,在灰白色的终端空间里等待自身数据流的外层磨损一寸一寸地愈合。倒计时还在跳。但今晚他答应了某个人去休息。 13. 第十三天 第十三天清晨,张驭上线的时候,手里多了一样东西。 他蹲在登录坐标点,没有像往常一样先站起来、开地图、确认裂隙方向。他先把手伸向了地面——从现实侧穿过登录接口带进游戏一样实体物件。一枚U盘形状的金属挂饰,表面有轻微的磨损痕迹,被放在灰白色的荒漠地面上,像一棵不会生长的银色植物。 李析在终端里看到了那枚挂饰的轮廓。它很小,大约两指长,表面刻着一道极浅的划痕,像是被某个人握在手里很久之后留下的痕迹。 "这是什么?" "黎帆的公司倒闭之后,清盘时留下的东西。"张驭的声音从登录坐标点传过来,他蹲在那里用指尖碰了一下挂饰的表面,确认它在底层空间里是可触的。"我昨天让人找到的。不是数据,是实物。你那边能扫描吗?" 李析把感知层的接口对准了那枚挂饰,试图从中提取数据信号。游戏内的终端扫描器对实物没有反应——它的接口设计只针对数据流,物理对象不在它的解析范围之内。但就在挂饰被"纳入"底层空间环境、和容器处在同一片数据域的瞬间,终端内部那枚暗灰色的数据立方体忽然产生了一个微小的共振。李析感知到了那个共振——像两把钥匙对上了同一个锁芯的齿轮,在无人触碰的情况下自行转动了不到一度。 "容器第四层加密……刚才对外面那个挂饰有反应。"李析说,他的声音里带了一层他自己都没有完全压住的微扬,"黎帆的容器不是纯数据加密,它需要这个实物才能打开完整的内容。你把挂饰放进来。" 张驭把挂饰从地面拾起来,穿过终端接口递入了终端内部的空间。那枚银灰色的金属挂饰悬浮在容器旁边约两拳的距离,表面微光暗涌,像两只被关在同一个房间里的生物正在缓慢地感应彼此的存在。 "容器第四层我在路上拆。"李析说,"走吧,第11个裂隙点。" 两人朝第11个裂隙点移动。李析在移动的同时让后台系统持续运转,以挂饰的数据频率为入口校准容器第四层的解码路径。容器的第四层加密在外层"前言"、第二层"代码模板"、第三层"访问日志"之后终于开始松动了——但不是以常规解密的方式在打开,更像是在"被唤醒"。 他们抵达预定坐标时,裂隙不在那里。 李析在终端里重新扫描了一遍定位点。原定的坐标点处地面平整、灰白、没有任何裂纹。他扩大了扫描范围,在偏移了约四十米的位置捕捉到了裂隙的信号——它在移动。速度很慢,大约每三秒移动一厘米,但确实是持续地在朝某个方向滑动,像一道在地面上缓慢爬行的裂痕。 李析在终端里把扫描结果投射到张驭的视野里。一道细长的弯曲裂缝贴着地面缓慢移动,尾部拖着一缕极淡的灰黑色粉尘。 "这种裂隙不是崩塌形成的。"李析的声音在终端里凝了一瞬,"它是'活着'的。像是有人在底层放了一个会自己走动的裂口生成器,一边移动一边撕开底层结构。它越走,裂隙就越长。" 张驭站在那道裂隙附近,看了一会儿那道裂缝在以肉眼勉强可辨的速度朝右前方爬行。他没有抬刀,没有蹲下查看裂隙的深度。"黎帆放的?" "可能性很高。"李析在终端里把容器的运动轨迹数据和当前裂隙的移动路径做了叠层对比,"他的容器在第九个裂隙点,这个移动裂隙在第11个点。这两个位置的运动轨迹如果在三维空间里连成线,可能会指向同一个原点。" "那怎么修?"张驭说。 "不能站在原地修。它的位置在变,修复脚本的接入点需要持续追踪。你跟着它走,边走边修。" 张驭把刀换到顺手的那一侧,半蹲下来,右手伸向裂隙的尾部。"你指方向。" 修复开始。张驭的权限流从掌心涌出,灌入裂隙的"尾巴"位置——裂口在移动过程中不断拉长,他需要持续在移动中注入修复数据,一边填充一边跟上裂隙的速度。步伐不能太大,权限流不能断,每一步的落点都依赖李析在终端里的实时坐标修正。 李析在终端里以极高的频率输出修正指令。每一次张驭的脚即将偏移,他的指令已经到达了张驭的视网膜投影上:"左移半寸。""角度加两度。""保持流速。""下一步斜三十度。" 修复持续了将近三十分钟。张驭以半蹲的姿势跟着那道裂缝在荒漠地面上移动了大约一百多米的距离,步伐节奏完全由李析的指令驱动。没有一句多余的话——李析发指令,张驭执行,中间没有确认、没有反问、没有迟疑,像两个人的神经系统在三次呼吸之内完成一次全流程交互。 走了大约十五分钟后,张驭说了一句:"你今天反应比昨天快。" 李析的数据流顿了一下:"……修好了。磨损修复完了。" "嗯。"张驭没有再说什么。但李析从终端里感知到张驭的呼吸节奏在那一瞬间微松了一点,像一台发动机的转速在持续高负荷运转中忽然被调低了一个档位。 三十分钟后,裂隙在移动过程中被完全填充了。最后一段裂口在张驭的权限流覆盖下收拢,蜿蜒的灰色痕迹留在荒漠地面上,像一条被凝固了的蛇。进度条跳到【11/30】。张驭站直身体的时候膝盖微微响了一声,他活动了两下,然后转身往回走。 回到通道入口后,张驭把挂饰从终端空间里取了出来,放在通道入口旁边的地面上。李析将容器第四层的解密接口对准挂饰的数据频率——容器内部产生了一组接收信号,挂饰表面有一个极小的微光闪了一下,像一只被关了三年之后终于听见呼唤的生物睁了一下眼。 第四层打开了。 里面不是代码,是一段文字记录。黎帆写的,格式像是一封没寄出去的信,段落之间留有空白,像一个人在写作过程中多次停下来、站起来走了一圈、又坐回去继续写。 李析在终端里把那段文字读完了一遍,然后从头又读了一遍。 黎帆三年前在底层做的"协议优化模块"实际是一个预警系统,用于监测底层协议是否被外部篡改。他开发的过程中发现底层已经被人动过了——有人比更早之前就在底层里放了某些东西。他开始追踪那些"更早的痕迹",发现痕迹指向运维组内部。他没有写出具体名字,但写了一句:"权限来源在本组。可信度待核实。" 然后他随后把数据容器嵌入了底层第九个裂隙点,作为"一旦出事、留给后来者的证据"。他在文字的最后一段写了第七次失约的原因——他约张驭的那天,有人"提醒"他不要继续查下去了。他没有说是谁提醒的,但他在"提醒"两个字后面加了一个括号:"(不是语言上的提醒。是实物。)" 实物。黎帆收到了某种实物警告。而那枚实物现在被张驭从清盘遗留物中捞了出来,带进了底层,和容器发生了共振。 李析把那段文字的关键信息整理之后同步给了张驭。终端里安静了几秒。然后张驭的声音从外面传进来,比平时低了一点:"他是先发现了问题,才来找我帮忙的。" "……对。"李析说,"所以他利用你的权限不是为了放东西,是为了留证据。他要把自己查到的痕迹保存 下来,以防自己也消失。" 而他现在确实是消失了。三年前,在第八次约定之前。张驭站在那里,左手插在口袋里,右手搭在腰后的刀柄上,没有动。他在想什么李析不知道,但李析知道他此刻在听,他的感知层对张驭的呼吸和心跳有一道持续的、低流量的捕获,他没有关闭它。 "还有一件事。"李析调出了后台的崩塌监测数据,把新数值同步到张驭的视野里,"底层崩塌速度到0.7%了。" 张驭看了一眼数字:"比昨天快了0.2%。" "按照这个加速度,我们剩下的修复窗口可能比预计的少三四天。" 张驭把视线从数据上移开,偏头看了一眼终端的方向:"那就加快。你那个磨损——不影响你修吧。" "……不影响。" 张驭"嗯"了一声,没再追问。但李析知道他在确认。他在确认李析能撑住的同时也在确认李析不会为了撑而撑——这两个确认之间的区别只有细到数据层面的人才能分辨出来,而李析恰好能。 张驭站在通道入口准备下线。但他今天没有直接跨进去,他又站了一会儿,像是在等一个"可以说了"的时机。然后他说:"我外面的人又查到了一件事。刘主管上周调用了两个历史版本的底层代码备份。不是当前版本的——是2023年的旧版本。" 李析的数据流在终端里微微收缩了一下。2023年。黎帆在底层放容器的那一年。刘主管在翻2023年的代码备份,他在追踪黎帆当年看到的那些"更早的痕迹"。 "他也在找黎帆当年找到的东西。"李析说。 "嗯。"张驭偏头看了终端方向一眼,"他可能比我们更早拿到了同一批信息。" "……所以我们得比他快。" 张驭在终端外面站了大约两秒没有动。然后他说了一句,语气很平,但李析知道那不是一个可有可无的补充:"我们。" "我们得比他快。" 张驭在确认他的归属——把"你"和"我"并成"我们"之后,用那句话重新定义了"谁在追、谁在找、谁在修"。李析在终端里安静了一拍,然后说:"……嗯。" 张驭"嗯"了一声,跨进了通道入口。但在过渡层吞没他之前他又偏了一下头,像是想起了一件事,又像是没想过但话已经先出去了:"那个挂饰——你先留着。我下次来的时候再带别的。" 然后人消失了。通道入口收拢,暗红色的刀光闪了一下,底层恢复了灰白色的寂静。李析在终端里待了一会儿,没有立刻去拆容器的下一层。他让那枚银灰色的金属挂饰悬浮在自己的数据流旁边——两件不属于这个底层的东西在一个不属于它们的地方相遇了。 他把"我们"这个词放进了无名单区,写在张驭说过的话的第十行。然后他低头看了一眼挂饰的表面,那道浅的划痕在灰白色的光线下安静地躺着。黎帆可能也看过这枚挂饰很多次,在他公司倒闭之前的那些日子里,他还不知道自己的第七次失约会是最后一次。 李析关掉了感知层的外部通道,开始准备第十四个清晨的等待。倒计时又少了一天。但他手边多了一枚挂饰、一段黎帆的文字、一个"我们"。 第三层、第四层都拆完了。还有第五层。他不知道第五层里有什么,但今天他知道了一件事:黎帆不是在制造问题的人。他是在查出问题之后被人提醒了、被人拿走了、被人不见了的人。李析看着那枚挂饰,在心里对那个三年前消失了的人说了一句你听不见的话——你留的东西我收到了。剩下的我来拆。 14. 第十四天 第十四天清晨,张驭带了一张照片进来。 他登录之后没有蹲下,而是站在原地,抬手从现实侧穿过登录接口递进来一件比昨天更薄的实物。一张大约手掌大小的打印照片,被放在灰白色的荒漠地面上,背面朝上。李析在终端里看到了照片背面的笔迹——一行手写的日期,墨水是蓝黑色的,字迹工整但没有修饰,像一个只在乎信息不在乎美观的人写的:2023.09。 "这是什么?" "黎帆公司倒闭前三个月的一场内部会议照片。"张驭把照片翻了过来。 画面是一间普通会议室。长桌两侧坐了五六个人,桌上的会议文件摊开着,有人正低头写字。黎帆坐在长桌左侧末端,穿着一件深灰色的外套,看上去比李析想象中年轻一些——那张脸上还有一点属于"还在做事的人"的专注。在会议桌另一侧,靠前的位置,坐着一个穿深色衬衫的中年男人。他被拍到了大约四分之三的侧脸,视线正对着桌上的某份文件,嘴角没有表情。 那个侧脸的轮廓,李析花了不到一秒就认出来了。刘主管。 李析的数据流在终端里顿了一下。"……他们在同一次会议上。黎帆消失之前两个月,和刘主管在同一个房间里开过会。" "嗯。"张驭的声音从照片上方传过来,"我让人查到这张照片的时候,他们还顺带查了一件事——那场会议的议题是'底层接口架构调整'。主持人是刘主管。" 李析在终端里把那张照片完整扫描进了备忘录。两个人在同一张画面里,坐在同一张桌子两侧,讨论着和底层接口有关的事。两个月后黎帆的公司倒闭,黎帆本人消失了。而刘主管在那之后的三年里一直坐在运维组的办公室里,直到2026年8月调走了四个底层接口的运维人员,直到李析被推进底层。 张驭把照片面朝上放在通道入口的地面上,然后站起来打开了地图。 两人朝第12个裂隙点移动的过程中,李析把今早的崩塌数据同步进了张驭的视野:"崩塌速度0.9%了。连续四天加速。" 张驭扫了一眼那张曲线图:"还剩多少修复窗口?" "按这个加速度推算……理论剩余窗口大约十八到二十天。但我们在第十四天,修了十一个点。后半段的裂隙会更难,崩塌速度可能还会继续加速。" 张驭的步伐节奏没有变化。"那就把每天的时间拉长。"他说,声音平平的,"我早上早一点来,晚上晚一点走。" 李析没有说"你不用这样"。因为他知道张驭已经决定好了。他只在心里把那句话收进了无名单区——"早上早一点来,晚上晚一点走"——排在照片和挂饰的旁边。 第12个裂隙点在一处凹陷的碗状地面中央。那道裂隙很小,大约只有手指粗细,从碗状凹陷的中心延伸出来不到两掌的长度。但它和之前任何一个裂隙都不同——它在发出声音。 极低频率的电子嗡鸣从裂缝内部持续渗出,像一个人在很远的地方用极低的音量在说话。内容无法辨识,像一台收音机被拧到了两个电台之间的位置,接收到的是一层一层叠加的底噪。但它一直在响,没有停顿,没有间断,频率稳定得像一台从未被关掉的设备。 李析在终端里扫描了裂隙内部的结构后,把结果投在了张驭的视网膜上。"这处裂隙不是崩塌形成的。它的功能和之前移动型裂隙类似——是'活的',但功能不同。这是一个'数据耳语者'。黎帆把它放在底层作为持续记录底层数据波动的'监听器',从它被放进去的那天一直录制到我们找到它的这一刻。裂隙形态只是它的伪装。" 张驭蹲在裂隙旁边,侧着头听了一会儿那道电子嗡鸣。他保持着那个姿势大约十秒,然后站起来,右手伸向裂隙的方向。"……它在说什么?" "不知道。"李析在终端里调出了提取方案,"但它记了很多东西。三年多的底层数据波动都在里面。我需要你以极低功率的权限流'切入'裂隙内部,不是修复,是像接听一段录音一样把存储的数据引出来。" 张驭按照引导降低了权限流的功率。白色的数据流以肉眼可见的更慢的流速渗入那道手指粗细的裂口——接触内部存储层的时候,裂隙的嗡鸣忽然变了调。那层持续了不知多久的、无规律的电子噪音在一瞬间切换成了有结构的、可以被解析的数据串流,沿着张驭的权限流开始向上传输。 李析在终端里"接"住了那段数据。那是一份持续记录——从2023年9月一直到2024年初——底层协议层所有超过阈值的数据波动,日期、时间、波动幅度、涉及字段名称,全部被压缩在裂隙内部的数据层里。李析快速扫描了那些记录,在其中一条停住了。 2023年11月14日。底层协议层出现一次超过阈值的数据波动,持续时间为三小时十二分钟。那个日期正好是张驭在系统缓存里留下"第七次,仍然没有反应"那条日志的日子。 "……你第七次等他的那天,"李析说,"他也在底层活动。" 张驭的手维持着权限流的输出,刀搁在膝盖旁边。他的身体没有明显的反应,但他的呼吸微顿了一下。"他在底层做什么?" "数据波动涉及协议层的'监听模块'安装——他应该就是在那天把这个'耳语者'放进去的。约了你之后,放了监听器,然后走了。" 张驭沉默了几秒。然后他问了一句:"那他是先约了我,还是先放的监听器?" 李析不知道答案。日志上没有记录时间顺序,只有两件事在同一天发生。但李析忽然想起黎帆在容器里写的那段话:"第七次失约的原因是有人提醒我。"如果他先约了张驭、然后被人"提醒"、然后在"提醒"之后赶去底层放了监听器——那他的顺序是先试图求救、被截断、然后在自己消失之前留下了最后的数据。 "……我不知道。"李析说,"但他那天做了两件事。一件是约了你。一件是放了它。" 张驭没有再追问。他的权限流保持着稳定的输出,持续了大约十分钟,直到裂隙内部的存储数据被完整提取完毕。最后一段数据被引出裂隙的瞬间,嗡鸣声中断了。裂隙本身在那道声音消失之后开始自动收缩闭合,不到两分钟就完全收成了一条极浅的灰色细线。进度条跳到【12/30】。 两人往回走。返程的路上,有一段沉默的长度和以往任何一次都不一样——不是因为无话可说,是因为两个人都意识到刚才从裂隙里取出来的那段时间和另一个人的某条日志躺在同一天里。张驭走在前面,步频均匀,呼吸稳定,但李析从他后端的信号里捕捉到了一丝极其细微的"等待"——像一个人在走路的同时也在等着某个他说不出来但希望被说出来的东西。 走到大约一半路程的时候,张驭开口了。"……如果三十天到了,裂隙全部修完了——你会被弹回表层?" 李析在终端里停了一拍。"按理论模型,底层修复完成后,所有被困数据会被释放回原生层。我应该会被弹回登录点。" "弹回哪个登录点?" "……不确定。"李析在脑子里翻了一遍底层协议的释放流程,"可能是被推进来的那个入口,也可能是最后一次正常登录的地点。只要没有被格式化删除,就是最好的情况。" 张驭沉默了两步的距离。然后他说了一句话,声音平平的,但李析知道那不是一个随口提的、随便的问题:"弹出来之后呢——你会在哪里登录?" 李析的数据流在终端里微微一缩。张驭在问"出来后我去哪里找你"——他把"三十天后"从一个技术性的时间节点变成了一扇门,而他站在门外问李析"你开门之后会在哪个位置"。 "……我应该在最后一次正常登录的位置附近。"李析说,"公测发布会主会场。我被推下去之前在总控台旁边。如果释放逻辑是返回最后一次活跃坐标——" 他没有说完。因为他不知道张驭在哪个城市,不知道主会场和张驭的住处之间隔了多远。但他听到了张驭的下一句话: "主会场离我住的地方四个小时。" 张驭的步频没有变化,他的视线仍然看着前面的荒漠。他说这句话的时候语气和平常一样平,像在说"前面的路还有十五分钟"或者"今天的裂隙比昨天的窄"。但他在没有任何人追问的情况下主动报出了他和李析"出来后"之间的距离。四个小时——他在用自己的坐标给李析提供一个落点,一个"如果你出来之后不知道该去哪里,这里有一个选项"的选项。 李析在 终端里安静了大约三步的距离。"……那不算远。" 张驭没有说话。但他的步频在那一瞬间微慢了一丁点——李析感知到了那个微差,像一个人在听到某个好答案之后呼吸自然轻了一度。 回到通道入口。张驭站定,低头看了一眼地面上那张照片。他没有把它收回去,他蹲下来把照片翻了翻,让正面朝上——黎帆和刘主管在2023年9月那间会议室里的画面,在灰白色的底层光线下铺展着。 "这张也留给你。" "……你不需要留着?" "我看过了。"张驭站直,"你那边需要更多实物来拆容器。如果容器的第五层也需要实物共振,你手边的实物多一件就多一个可能性。" 他没有说"下次再带别的"——他昨天已经说过了,所以今天不需要再重复。但他把照片留在了底层。挂饰和照片,两件来自现实世界的东西,现在并排躺在底层的灰白色地面上。李析在终端里看着那两件东西,心里有一个念头——张驭在把线下的世界一点一点地搬进来给李析看。 张驭跨进通道之前偏了一下头:"明天七点。" "明天见。" 通道入口收拢。暗红色的刀光闪了一下,灰白色的荒漠恢复寂静。 李析在终端里等了一会儿,然后开始动作。他把那枚金属挂饰和照片一起移到了容器旁边的空间,让两者的物理信号同时共振容器第五层的加密接口。挂饰的金属频率和照片纸张的物理结构产生的数据折射——两条完全不同来源的信号在加密接口处交叉,容器的第五层开始松动了。 双重实物信号共同作用,第五层打开了。 里面的内容是一组被黎帆标记为"根源"的追踪数据。黎帆追踪到了一组被隐藏的"母权限"数据,记录显示某账号在2022年就已经存在,并且在底层协议层被执行了大量的修改操作。那些修改没有记录在正式的运维日志里,它们在系统的"可见层"之外进行,像有人在没人看见的地方给整栋房子的地基重新画了施工图。 那个账号的末尾字段编码格式——李析把它和刘主管的权限标记做了比对。完全一致。 黎帆在记录末尾写了一段标注:"该账号在2022年已对底层进行了不少于四次结构性修改。修改内容与协议核心段直接相关。该账号持有者极可能是运维组高级成员。" 李析在终端里把那几行字看了三遍。2022年——比黎帆介入早了一年,比李析被推入底层早了整整四年。刘主管在2022年就已经在修改底层协议的核心段了。裂隙不是2026年才出现的,那些裂痕的种子在四年前被埋下,经过了漫长的生长才终于崩开。黎帆在2023年发现了它,追踪了它,把证据留在了第九个裂隙点里。然后他在2024年消失了。李析在2026年被扔进了一片已经长了四年的密林里。 他在加密备忘录里画了一条新的时序线: 2022年——刘主管对底层核心段进行不少于四次结构性修改。 2023年9月——黎帆和刘主管同场开会。 2023年11月——黎帆约张驭第七次,在底层放了"耳语者",随后消失。 2024年——黎帆的公司倒闭。 2026年8月——刘主管追踪容器坐标。 2026年9月——李析被推入底层。 现在——他们站在第12个裂隙点上,已经拆了黎帆留下的五层容器。 李析在那条时序线下方写了一行批注:"刘主管不是为了掩盖裂隙而推我。他从一开始就在制造那些裂隙。推我进来是为了阻止我找到黎帆留下的证据。" 他关掉面板,靠在接入端口的边缘。灰白色的终端空间里,两件实物——挂饰和照片——安静地悬浮在容器旁边。倒计时还在跳,数字比一周前少了很多。但他手里现在多了一条完整的时序线、两件来自张驭的实物、一个黎帆留下的预警系统、以及一句"四个小时"。 他把"四个小时"也收进了无名单区,排在了"我们"的下面。然后他在灰白色的寂静里等第十四天的夜晚流过,等第十五天的清晨来临。 刘主管在2022年埋下的种子,正在被他们一点一点地挖出来。 15. 第十五天 第十五天清晨六点零七分,自动维护启动了。 李析在那之前就已经醒着。他昨晚几乎没有休眠,容器第五层的内容像一根钉子扎在他的数据核心里——刘主管2022年就开始修改底层核心段,比他之前推测的时间早了两年。他在脑子里把那条时序线翻来覆去地过了无数遍,每一个节点之间都填满了猜测和空缺。张驭上线的时候,他的状态比平时稍微紧绷了一些。 登录信号亮起来,张驭出现在坐标点上。他今天和前几天都不一样——没有吃早饭,没有放下什么东西。他站在原地,看着终端的方向,李析还没来得及说话,他就先开了口:"我昨天回去又查了一件事。" 李析把注意力从时序线上收回来:"什么?" "刘主管在2022年那段时间的考勤记录。"张驭的声音在清晨的荒漠里显得格外清晰,"他请了长假。2022年9月到11月,两个月。理由是'病休'。但有人在那个期间见过他进出公司。" 李析的数据流在端口处收紧了。2022年9月到11月——刘主管名义上在休病假,实际上进出公司。而黎帆在2023年发现的那些修改记录时间戳正好覆盖了那段时期。"……他在请长假期间进入公司修改底层核心段。考勤记录上是空白的,没有人会发现他在。" "嗯。"张驭说,"病休回来的当月,底层有一次重大的'系统优化'公告。说他优化的那些东西——可能就是他修改的。" 李析没有说话。他在心里把刘主管的轨迹又刷了一次:请病假、进出公司、修改核心段、回来之后发了一份系统优化公告来覆盖他实际做过的操作。黎帆在2023年追踪到了那些修改的痕迹,然后消失了。 "走。"张驭打开地图,"今天第几个?" "第13个。"李析把坐标投在张驭的视野里,"在东偏南方向,比之前的都深。" 两人朝第13个裂隙点移动。张驭走路的节奏和平时一样均匀,但今天他走在前面的时候,李析注意到他的肩膀有一点紧绷——和他在裂隙前准备拔刀时的那种紧绷不一样,更轻一些,像一个人带着一个没有说出口的念头走路。 走了大约十分钟后,张驭忽然说:"你今天没问。" 李析在终端里怔了一下:"没问什么?" "没问我昨晚有没有做梦。" 李析顿了一下。他昨天问过张驭"平时经常做梦",张驭回了"偶尔醒了不记得"。那是昨天的事。他没有在今天早上重复。"……你昨天说了。" "嗯。"张驭的步频没变,"但你在想。" 李析的数据流缩了一下。他确实在想。他昨晚一直在想刘主管的时序线,想黎帆的容器,想2022年到2026年之间那些被覆盖掉的痕迹——但他的感知层角落里也放着昨晚张驭"主会场离我住的地方四个小时"那句话,它也在安静地待着,没有被处理。 "……我在想别的事。" "我知道。"张驭说,"但你想完那些事之后想一下那个——也没关系。" 李析在终端里安静了一拍。他想了一下那个"也没关系"指代的是什么——他想的是张驭昨晚有没有做梦、有没有睡好、今天早上是不是真的没吃早饭。张驭在说"你想我的事也没关系"。 "……你今天没吃早饭。"李析说。 "在包里。"张驭的脚步没停,"等修完再吃。" 李析没有再追问。但他在终端里把"也没关系"四个字放进了无名单区的某一行。 第13个裂隙点比之前任何一个都深。它不在荒漠的表面,在一道天然的数据裂谷底部——裂谷两侧是垂直的灰白色壁面,深度大约七到八米,裂缝嵌在谷底的正中央,宽度不到一掌,但向下延伸了极深。李析的扫描显示裂隙底部的崩塌已经延伸到了底层协议的第二层。 "这一处修复需要你下到谷底。"李析说,"裂隙深度比扫描预判的大,如果站在上方接入,权限流的功率在传输中损耗太多,接不到底。你要下去。" 张驭站在裂谷边缘看了一眼底部——七米左右的深度,壁面光滑,没有供踩踏的凸起。他把刀从腰后解下来,换了双手持的姿势,然后沿着壁面滑了下去。落地的时候膝盖微弯缓冲了冲击,靴底在谷底的地面上落稳,发出一声沉闷的磕碰声。他抬头看了一眼裂谷上方的天空,灰白色的荒漠天顶在头顶缩成了一条窄带。 然后他蹲下来,右手伸向那道裂隙。 修复开始了。权限流从张驭的掌心灌入裂隙底部,白色的数据在深处填充着协议的断裂层。李析在终端里引导着流速和角度,一切平稳。但修复进行到大约第四分钟的时候,李析从监测数据里看到了一段持续上升的底层震动——不是裂隙本身的,是来自更深处的东西。 "等一下。"他说,"底部有东西在动。" 张驭的手停住了。他低头看着裂隙内部的暗色,右手维持着权限流的接入,没有收回。"什么?" 李析把扫描深度调到最大之后看到了源头——裂隙底部更深的协议层里有一段持续的、低频的振动,像某种机械装置在运转。振动的频率随着修复的推进在缓慢升高。"裂隙底部有一个你还没接入到的协议层正在被修复数据'激活'。可能是黎帆以前放在底层的另一个监测装置——和'耳语者'类似但位置更深。" "它会影响修复?" "不确定。"李析的声音在终端里凝了一瞬,"可能不会影响,也可能接入到那一层的时候会产生反应。如果你感到权限流有异常阻力,立即停——" 他话没说完,裂隙底部忽然涌出一股极细的灰白色气流,沿着裂隙的裂口向上喷射,像一口被封了太久的井终于被钻通。那气流携带着高密度的数据碎屑,喷出裂隙之后在谷底狭窄的空间里散开,形成一层灰白色的薄雾,瞬间弥漫了整个裂谷底部。 张驭在那股气流喷出的第一秒就偏头闭了眼,但他的身体仍然蹲在原地,右手没有从裂隙上方移开。灰白色的数据薄雾笼罩了他,覆盖了他的头发、肩膀、外套的表面,像一层细密的灰雪落在了他身上。 终端里,李析的接入端口在同一时刻接收到了一个意外的信号——张驭的身体表面覆盖了那层数据薄雾之后,雾中的碎屑开始与张驭的权限流产生共振,那些共振信号通过张驭的数据通道回流到了李析的感知层里。他在那几秒之内接收到了大量之前从未接收过的信息:张驭皮肤表面的温度(偏低,比正常玩家角色低了大约半度)、张驭肌肉在数据雾覆盖下产生的微电流反应(稳定,没有恐慌)、张驭的心率(比平时快了大约每秒两拍,在快速接近的冲击之后正在回落)。那些信息像一扇被推开了一道缝的门,他站在门缝后面看到了一个人在自己的数据流里短暂暴露出的底层状态。 持续了不到五秒。数据雾很快就散去了,裂隙底部恢复了安静,振动信号也停止了。张驭把眼睛重新睁开,低头看了一眼自己外套上沾着的灰白色细屑——那些细屑正在缓慢地从表面脱落,像是被底层空间吸纳了回去。 "……你的声音在抖。"张驭说。他仍然蹲在谷底,右手还维持着接入裂隙的姿态。他感知到了李析在刚才那几秒里的数据流不稳定。 "我收到了你被数据雾覆盖时的体感信号。"李析说,他的声音尽力保持着平整,但张驭说的是对的——他的声音在那一瞬间轻微地抖了一下,像水面被风吹皱了一角,"不是故意的。雾中的数据碎屑和你的权限流产生了共振,回流到了我的感知层。" 张驭没有接话。他蹲在谷底,右手还连着裂隙,但他偏了一下头,朝终端的方向看了大约两秒。然后他转了回去,说:"修复继续?" "……继续。振动已经停了。" 张驭重新将权限流灌入裂隙,剩余的修复工作持续了大约六分钟,裂隙在底部完整地闭合了。进度条跳到【13/30】。 张驭站起来,抬头看了一眼裂谷顶部。七米高的垂直壁面,下去容易上来难。他把刀背到身后,双手攀上壁面,以手臂和膝盖的力量开始向上攀爬。他在爬的过程中李析没有出声音,但李析在终端里感知到了他每一次上攀时肌肉发力在数据层里留下的微振。那些微振通过刚才那五秒打开的感知通道持续地流了进来——不是完全的体感信号,但比之前任何一次都多。他感知到了张驭手指抓入壁面时的握力、膝盖抵住灰白壁面时的支点选择、每一次发力之间短暂的调整节奏。</p >攀了大约两分钟后,张驭的左手抓到了一块松动的壁面碎片。那一瞬间他的身体微微向右偏了一点点,大约偏移了三度。李析的声音在终端里自动出来了:"右侧一拳的位置,借力。" 张驭的右手换到了李析说的位置。他抓到了更稳固的着力点,身体矫正了偏移,继续向上。又过了大约一分半钟,他的手掌扣上裂谷边缘,用力一撑,整个人翻上了荒漠地面。他站起来,拍掉手上沾的灰白色碎屑,站在裂谷边缘低头看了一眼底部已经闭合的裂隙,然后转身往回走。 "你刚才那句话很及时。"张驭说,语气平平的。 "……我看到你左手松了。" "我知道。"张驭说,"但你看到了。" 李析在终端里没有回话。他看到张驭的左手松了,在他自己意识到之前,他的声音已经从终端里出去了。那个反应比"最优策略"更快,快到他事后才意识到那里面不含计算。 两人往回走。返程的路上沉默了大半程,但沉默里有别的东西——不是无话可说的空窗,是两个人都在各自处理着刚才数据雾那五秒里打开的通道。张驭在感知层里多了一层关于李析的东西。李析在感知层里多了一层关于张驭的东西。那些东西都不完整,像刚拆开的拼图盒子,散落在桌面上还没有开始拼。但它们在那里了。 走到离通道入口大约还有四分之一路程的时候,张驭先开口了:"你刚才说的体感信号——那是什么感觉?" 李析在终端里花了一拍来组织语言:"……像站在你对面。不是通过数据预测的那种'感知',是直接接收到的'状态'。温度、肌肉收紧、心率。持续了不到五秒。" "那五秒里你看到了什么?" 李析顿了一下:"你身体温度比正常玩家角色低了大约半度。心率从六十七升到了七十一。肌肉反应很快——比普通人快。" 张驭走路的节奏没有变化。他安静了几步,然后说:"那五秒里——你是什么感觉?" 李析停住了。张驭问的不是"你看到了什么数据",问的是"你接收那些数据的时候感觉怎么样"。这是一个指向"你的感受"的问题,不是指向"数据内容"的问题。 "……比之前近。"李析说。这是他所能给出的最接近真实的回答。 张驭没有再接话。他继续走完了剩下的路程,步频和之前一样均匀。但他的呼吸在走完最后一段路的时候微微深了一点,像一个人在得到某个答案之后把气放出去了一些。 回到通道入口。张驭站定,从背包里掏出了早晨没吃的面包,咬了一口,站在入口旁边慢慢地吃完。李析在终端里安静地"看"着他吃东西。张驭吃完之后把包装纸收好,然后偏头对着终端方向说了一句:"明天我早点来。" "几点?" "六点半。" "……好。" 张驭站了一会儿。李析能感知到他站在那里,没有要走的意思。他站在通道入口边,手搭在刀柄上,灰白色的荒漠在他身后展开。然后他说了一句很短的话,短到李析差点没有反应过来:"那五秒里你看到的那些数据——不用忘掉。" 他说完之后跨进了通道入口。灰白色的过渡层吞没了他,暗红色的刀光闪了一下,然后一切安静了。 李析在终端里待了很久。张驭说"那五秒里你看到的那些数据不用忘掉"——他在允许李析继续持有那些感知到的信号。温度、肌肉、心率。那些东西现在存放在李析的数据流里,张驭说你可以留着。 李析把终端里灰白色的空间看了一会儿。那两件实物——挂饰和照片——安静地悬浮在容器的旁边。他的感知层里多了一层东西,比挂饰和照片都更轻,也都比它们更重。是温度数据、是心率记录、是一句话,和一句话说完之后那个人留在通道入口处的三秒沉默。 他把"那五秒不用忘掉"放进了无名单区,没有排在任何一句的下面,他自己单独占了一行。 然后他打开加密备忘录,在2022年的那条线上加了一行新的备注:刘主管病休期间进出公司。日期范围:2022年9月—11月。 还剩十六天多。但今晚他手里拿着的东西比昨天多了不止一件实物。 16. 第十六天 第十六天清晨六点零七分,自动维护启动了。 李析在维护开始之前就已经醒了——他昨晚没有深眠,但和之前那种被线索压得透不过气的夜晚不同,他醒着是因为知道张驭今天会早到。六点零七分的维护结束之后,登录信号在六点半之前亮了。提前了三十七分钟。张驭上线,角色出现在登录坐标点上。他穿着深灰色的外套,刀在腰后,站姿和任何一天一样稳定,唯一不同的是他今天没有掏面包。 "……六点半。"李析说,"真的。" "说了六点半。"张驭打开地图,扫了一眼坐标,"你醒得比维护早。" "……你怎么知道?" "你的接入界面。"张驭把视线从地图上移开,偏头朝终端的方向看了一眼,"刚才登录前我扫了一眼,它是亮的。" 李析在终端里安静了半秒。他的接入界面在张驭那边能看到"在线"状态的光标——绿色的小圆点,他和张驭第一次接入之后就没关过。张驭登录前扫了一眼那个绿点,确认它亮着,然后才进了游戏。 "走吧。"张驭收回视线,朝第14个裂隙点的方向迈开步子,"今天第几个?" "第14个。崩塌速度1.1%了。" 张驭扫了一眼同步进视野的曲线图:"已经修了十三个点。还剩十七个。时间够。" "够的前提是后半段裂隙难度不超出预期。"李析在终端里调出了第14个裂隙的预扫描数据,"但今天这个位置——第14个裂隙的损伤形态和前13个都不一样。边缘整齐,没有崩塌碎屑,没有错误代码溢散,它像是被人主动切开的一条口子。" 张驭的步频没有变化,但他在听到"被人主动切开"的时候偏了一下头,像在确认自己没听错。 第14个裂隙点在一片平坦开阔的荒漠中央。灰白色的地面铺向四周,没有任何丘陵、裂谷或者数据骨架。裂隙就嵌在荒漠的平面中央,是一道干净的直线,大约两尺长,边缘光滑,两侧灰白平面没有任何剥落的痕迹。它像被人用一把极其精准的工具在地面上切了一道口子,然后放在那里,没有再动过。 张驭在裂隙旁边蹲下来,他的手指悬在裂口上方大约一拳的距离,没有触碰。"……这不是塌的。" "不是。"李析的扫描结果已经同步到了张驭的视野里,"裂隙内壁附着一层标签数据,不是裂隙自己生成的,是有人放置的。里面包含一个编码签名,编码格式和刘主管的权限标记完全一致。" 张驭的手指在裂隙上方停住了,然后收了回去。"他修过之后,在这里留了个标记。" "……对。"李析把扫描深度再推了一层,确认没有其他藏匿的东西,"他需要知道自己在哪一段下的手。如果底层未来发生了变动,他要能回来看这个坐标确认当初改过的东西还在不在。" "那这个裂隙不需要修。" "不需要。没有崩塌,损伤为零。它只是一个标记线。"李析顿了一下,"但标记本身需要被拿走——不能让它的编码签名继续暴露在裂隙里。" 张驭伸出右手。李析在他的视野里投了一个极低功率的权限流引导——张驭以微量的白色数据流覆盖了切口表面,把刘主管的签名数据完整地拷贝进终端,然后闭合了那道切口。标记线被覆盖后,裂隙表面不再有可见的裂痕,原地只剩一条极细的灰色细线,像一段缝合好的旧疤。进度条跳到【14/30】。 返程路上,李析在后台做了一件事。他把第14个裂隙的坐标和前面几个关键点放在同一个空间模型里叠加比对——黎帆容器的坐标、第11个移动裂隙的轨迹、第12个耳语者的位置。四条数据线在终端屏幕上交织时,李析的感知层静止了一瞬。四点连起来不是随机散落的。它们构成了一个不规则的弧形,像一段圆弧上的四个点,弧心指向的位置在第17个裂隙点附近。 "第14个裂隙是刘主管的标记点。第9个是黎帆的容器。第11个是黎帆的移动裂隙。第12个是黎帆的耳语者。"李析的声音从终端里传出来,带着一种正在把碎片拼起来的专注,"四个点的空间位置加在一起指向同一个中心——第17个裂隙点附近。那里可能才是黎帆真正想让我们找到的东西。" 张驭走在前面,步频均匀:"第17个。还差三个点。" "……对。修完第15和第16,第17个可能就是这部分拼图的中心。" 返程走到大约一半的时候,张驭忽然说了一句和裂隙无关的话,但和李析正在脑子里拼的图形有关:"刘主管昨天去了一个地方。" 李析的注意力从空间模型里抽出来:"什么地方?" "黎帆以前的公司旧址。那栋楼去年被改成了写字楼出租,但他昨天去了。" 李析的数据流在终端里微缩了一下。"他怎么去的?一个人?" "一个人。在外面站了大概二十分钟,没有进去,就站在门口。" "……他在找东西。"李析在脑子里翻了一遍黎帆公司旧址的位置信息,"站在门口可能是为了确认那栋楼还在,或者确认某个位置的窗户还在。" 张驭的声音从前面传过来:"我那边的人拍到照片了。明天我带给你。" 李析在终端里顿了一下。"明天带给你"——张驭已经在把这件事当作例行公事了。他每在现实里查到一条新的信息,第二天就会把它带进底层。挂饰、会议照片、监控截图,然后更多的东西正在排着队等进入灰白色荒漠的入口。 两人继续往回走。返程的后半段走了一段沉默的路——不是无话可说的沉默,是一种"可以不说但都在"的沉默。李析在终端里待着,感知着张驭走路的节奏和呼吸。他在某个时刻忽然做了一个之前没有做过的事:他没有回答张驭的某个问题,而是自己抛了一个问题出来。他自己选择了要说话、要说哪句话——不是在回答问题。 "你之前说主会场离你住的地方四个小时——"李析说,声音在终端里平稳地铺开,"你是哪的人?" 张驭的步频没有变化。但他回答之前沉默了一拍,不是犹豫,是在确认李析真的想问。"……南城。" 李析在终端里顿了一下。南城和主会场不在同一座城市,四小时的距离。"……我是在主会场那个城市读的书。毕业之后留在了那边工作。" 张驭的步频在那一瞬间微缓了不到半拍。他的右脚落地比平时慢了微不足道的一丝,然后恢复了。"……你原来不是那边的人?" "不是。我是北城人。大学考过去,就留了。" 李析说完了。这四句短句拼在一起构成了他在现实世界里的第一个轮廓——北城、读书的城市、毕业后的城市、两条不连续的地理坐标。他没有被问,他主动把这些信息放了出来,像在灰白色的数据空间里放了一盏之前没有的灯。 张驭没有追问更多。他走完了最后一段路,在通道入口停下来的时候说了一句:"北城。我知道了。" 他的语气和说"明天我带给你"一样平。但李析知道张驭在把"北城"收进自己的信息栏里,和主会场、四小时、南城、六点半那些数据放在一起。 通道入口。张驭没有立刻下线。他从背包里掏出了一件今天带来但之前没有拿出来的东西——又一张照片。比上一张小一些,像是监控画面的截图打印版。画面里是一个人站在一栋大楼的侧门外,正 低头看手机。光线偏暗,拍摄时间是傍晚或夜间。画面的角标处有一行数字:2022.10.17。 张驭把照片放在通道入口的地面上,正面朝上。"昨天我让人查刘主管行踪的时候,这个人顺便翻了一下他几年前去黎帆公司的记录。这张是2022年10月的监控截图,刘主管在黎帆公司侧门外站着。" 李析在终端里把照片扫描进备忘录。2022年10月,刘主管站在黎帆的公司侧门外。那段时间正是他"病休"、进出公司修改底层核心段的时期。他不仅在内部操作代码,他还去过黎帆的所在地。距离黎帆消失还有一年多一点的时间。 "这张也留给你。"张驭说。 第三件实物。挂饰、会议照片、监控截图。三天连续,每天一件。 张驭跨进通道入口之前,偏头看了一眼终端方向:"明天六点半。" "……明天见。" 通道入口收拢。暗红色的刀光闪了一下。灰白色恢复寂静。 李析在终端里没有停顿太久。他把第三张照片也移入了容器旁边的实物区域。三件实物同时悬浮在容器周围——金属挂饰的微光、会议照片的纸面反射、监控截图的暗色平面。它们的物理信号在同一片数据空间里交叉共振,容器内部在没有任何外部指令的情况下自行打开了第六层。 李析把视线接入第六层的内容时,他的数据流在接入端口处微微凝固了一瞬。 第六层不是代码、不是日志、不是追踪记录。是一段加密程度比前面五层都高的文字,开头标着一行标题,像是黎帆亲手写上去的标注: "如果你看到这一层,你至少已经走到了第14天。" 李析把那行标题读了三遍。第14天。今天是第十六天。黎帆在三年前就预判了后来者拆解容器的时间节奏——他知道前五层的难度会对应不同的拆解时长,一个从零开始追踪的人会依次经过第几天、第几天、第几天才能抵达这一层。他算到了十四天这个数字。 李析继续往下读。 "能看到这一层的人,说明底层的崩塌已经到了一定程度。你面前的问题已经不是'谁在破坏底层',而是'为什么'。刘主管不是唯一的操作者。2022年他的权限被另一个人激活过至少两次。" 李析停住了。刘主管的权限被另一个人激活过。 不是刘主管一个人修改了底层——他背后还有另一个人,或者另一个人在使用他的权限标签执行了那些修改。黎帆追踪到了不止一个人。刘主管是操作者,但激活他的权限的人、或者说授权他操作的人,在系统的某个层次里存在着。 李析把那段文字截取进加密备忘录里,在"另一个人"下面画了两条线。容器还有第七层。他还不知道第七层里有什么。但他知道黎帆在三年前已经发现了刘主管之外的另一双手。那双在2022年激活了刘主管的权限至少两次的人——就是推李析到底层的人的可能性,正在无限升高。 他关掉面板,靠在接入端口的边缘。三件实物安静地悬浮在容器旁边。倒计时还在跳,只剩下十六天多。但他手边多了一个名字、三件实物、一条指向第十七点的弧线、和一行写着"另一个人"的文字。 张驭明天六点半会来,会带来新的照片或者新的信息。李析在灰白色的寂静里把"北城"两个字又翻了出来,放在南城、四小时、六点半那些信息的旁边——第一次主动放出去的自己的坐标。张驭说"知道了"的时候语气很平,但他在自己的信息栏里给李析留了一行。 第十六天结束了。进度14/30。弧线指向第17点,容器指向第7层,刘主管指向另一个人。所有的指向都在收束。 17. 第十七天 第十七天清晨六点半,张驭准时上线。他这次带来的实物比之前任何一次都大——一本旧的打印装订册,大约半指厚,封面空白,没有任何标题或标记。他把它放在通道入口的地面上,然后站在旁边说了另一条信息,和实物同样重要。 “昨天查到的另一件事。”张驭的声音在清晨的荒漠里显得格外清晰,“激活刘主管权限的那个账号——外部调用的来源,追踪到了一个人。名字被处理过了,只剩一个姓。姓陈。” 李析在终端里把那一个字存了下来。“陈。” “只有姓。”张驭蹲下来把那本装订册翻了翻第一页,确认它的内容还在,“时间太久。但指向那个姓的人,2022年还在公司高层名单里,在运维组之上,对底层有审批权的那种。现在不在了。” 李析在终端里把这条信息和之前的所有碎片放在一起——刘主管、黎帆、2022年、2023年、陈。一个只剩姓的人,在运维组之上,对底层有审批权,2022年还在,现在不在了。“……他可能比刘主管更接近源头。刘主管是执行者,陈是指令者。” “嗯。”张驭站起来打开地图,“今天第几个?” “第15个。还有一个信息——第15个和第16个裂隙相距很近,中间间隔不到两公里。如果把今天的修复时间拉长,可以一次修完两个。” 张驭关掉地图,朝第15个裂隙的方向迈开了步子:“那就修两个。” 两人走在荒漠里。李析在第15个裂隙点的预扫描数据同步进张驭的视野时,张驭的脚步节奏比前几天稍微快了一点。李析注意到了那个变化——不是紧张,是一种正在接近某个目标的专注。张驭也知道第17个裂隙点就在第16个后面,他不需要李析提醒就记得弧线指向的数字。 “修完两个,明天就到第17个了。”张驭说。 第15个裂隙点在荒漠东侧的一处浅洼地里。地貌在这里开始出现细微的变化——灰白色的地面微微下陷,形成一个低浅的碟形。裂隙嵌在碟形的最底部,形态和第14个类似——一道边缘光滑的直线切口,长度比第14个略长,大约四尺。边缘同样没有崩塌碎屑、没有错误代码溢散,切口干净得像用工具刻出来的。但深度比第14个深得多。 李析扫描了裂隙内部后,把结果显示在张驭的视野里。里面的数据不是标签签名,是一整段“备份数据”——协议原文的两个版本并排存放在裂隙内壁:左侧是修改前的版本,时间标记2022年初;右侧是修改后的版本,时间标记2022年11月。改动处的四行参数被黎帆用某种标记高亮标出,每一行修改都附了一行侧注:“替换前值X1→X1',影响协议稳定结构。核心段第一处。” 黎帆在备份数据的末尾写了一句总注:“第一处。2022.11。替换了四项核心参数。这是第一个。” 李析在终端里把那四行参数的对比看了两遍。修改前和修改后的数字偏差不大——每个参数只变动了百分之几——但涉及的字段是底层协议的核心段。百分之几的变动在四年的累积效应下足以让整片底层从内部崩开。刘主管在2022年11月做的第一处修改,后来演变成了他们每天都在修补的裂隙。 张驭的权限流正在提取那四行参数的备份数据。白色的数据流缓慢地灌入裂隙内壁,把修改前后的两个版本逐行拷贝出来。他的右手在接入端口上停了一下——不是操作上的停顿,是看到了那四行参数之后自然产生的反应。李析注意到了。 “……这四行参数,”张驭说,“他让我签过类似的。” 李析在终端里停顿了一拍。“……黎帆?” “嗯。他说要签一个协议优化模块的授权。参数和我现在看到的这四行差不多——但数值是相反的。他在试图把数值恢复到修改前的状态。” 李析在终端里把那句话和容器第四层黎帆写的内容做了对位。黎帆让张驭签的“协议优化模块”实际是一个恢复方案。他发现了刘主管在2022年11月改了什么,然后试图让张驭帮忙把底层改回去。然后他约了七次,失约了七次,第八次消失了。 备份数据完整提取后,裂隙闭合。进度条跳到【15/30】。 两人转向第16个裂隙点。途中李析把“陈”那条线重新翻了出来:“2022年在运维组之上、对底层有审批权、姓陈、现在不在了——这些条件在高层名单里能筛到几个人?” “两个。”张驭的声音从前面传过来,“一个是2023年调走的,一个是2024年离职的。” “……黎帆2024年消失。和陈离职的时间点可能有关。” “我让人去核那两个人的信息了。” 李析没有再追问。张驭在同步追查现实线,他在同步分析底层线。两个人同时运行着两条互相交叉的数据流,像两台机器同时运行同一套系统时形成的协同振动。 第16个裂隙点在一道数据骨架的顶部。灰白色的脊状结构从荒漠地面隆起,比之前见过的任何一座骨架都高,顶部大约离地面四到五米。裂隙嵌在骨架顶端的平坦面上,形态和第15个相同——切口型,边缘光滑。张驭爬上去的时候动作很稳,手和脚的落点每次都在固定位置,像他做过很多次这种事。 裂隙内部也保存了备份数据。时间戳显示这是“第二处”——2023年1月。修改的参数换了一个不同的核心段,改动形式和第一处一样,四行参数被整体替换。黎帆在备份旁边写的注释比第一处更短,但多了一行之前没有出现过的话:“第二次。2023.01。权限来源标记和陈第一次激活吻合。” 李析在终端里把那行注释停住了。陈第一次激活刘主管的权限的时间指向2023年1月,和第二处修改时间一致。“陈在2023年1月第一次激活了刘主管的权限,让他做了第二处修改。第一处在2022年11月——那一次陈可能还没有介入,或者介入的时间没有被记录下来。” 张驭没有回话。他的权限流在持续提取第二份备份数据。第二处修改的内容被完整拷贝进终端后,裂隙闭合。进度条跳到【16/30】。 张驭从数据骨架顶部跳下来,落地的时候膝盖微弯缓冲了冲击。他站起来,拍掉手上沾的灰白色碎屑,然后停了一下。李析以为他会转身往通道入口的方向走,但他没有转身。他站在原地,偏头对着终端方向说了一句:“第17个在哪里?” 李析在终端里调出了第17个裂隙点的坐标。根据弧形推演,第17个应该在附近不远。他把坐标和当前位置做了比对——1.8公里,西偏南。“……西偏南,1.8公里。你今天还有体力?” 张驭没有回答“有”或“没有”。他转身朝西偏南方向迈开了步子。 走了大约二十分钟后,地貌开始变化。灰白色的荒漠地面变成了极浅的银灰色,像是有一层薄薄的金属粉末被撒在表层。地面不再是平整的,而是像水波一样有极轻微的起伏,每一步踩下去都能感觉到底层在脚下微微回弹,像踩在一层很薄的膜上。那种回弹是之前从未出现过的。 张驭放慢了速度。他走在银灰色的地面上,每一步都比之前更轻,像在确认脚下的东西能不能承重。他走着走着停住了。 前方大约二十步的距离,地面上嵌着一道闭合的圆。直径大约三米,边缘有一层极其微弱的光在缓慢游走,像一圈被压缩到极慢速度的电流贴着圆形的边界爬行。圆的内部是平整的银灰色平面,没有裂隙、没有裂口,什么也没有。 张驭站在圆的外围,没有踏进去。他低头看着那个闭合的光环,看了大约五秒,然后说了一句:“……它亮了。” 李析在终端里同步扫描了那层光环的边界。结构极其精密,内层嵌着多条协议通道,都处于待命状态。他在扫描过程中发现了一个细节——光环内部有一组接入端口,结构和黎帆容器的端口编码完全一致。 “……这个裂隙不像被损坏的。”李析的声音在终端里比平时低了一点,“它像是一直在等。等某个特定的接入信号。” “第17个。” “……对。它是黎帆留在这里的端口——一个他自己能够远程接入底层的数据节点。容器里的第六层写的内容不是终点,这个端口才是他真正的目 的地。” 张驭站在圆的外围,看着那个闭合的光环,刀在腰后,银灰色的地面在他脚下延伸。他等了一下李析的下一个指令,李析没有立刻给出指令。他正在扫描那个光环的更多信息。 张驭问了一句:“那他现在还能接入吗?” 李析在终端里停了一拍。“……如果他还活着,应该能。但他已经三年没有上线了。” 光环边缘的光在他们对话的间隙里微微跳动了一下——频率和话音里的停顿几乎同步,像一个三年前被设定了待命状态、至今还在等主人回来的设备。 两个人站在圆的外围,沉默了一会儿。银灰色的地面在脚下微微起伏,光环的光沿着圆周缓慢地游走。 李析先开了口:“……今天不碰它。需要先准备好。这个端口可能需要黎帆的完整实物序列才能打开——挂饰、照片、笔记本、监控截图,可能还需要更多。明天带齐了再来。” 张驭低头看了一眼那个光环,然后转身。“那就明天。今天修了两个。够多了。” 他往回走。李析在终端里感知到他转身时的动作幅度比平时略小,像一个人在决定“明天再来”之后把今天的期待收进了一个可以明天再打开的容器里。返程的大半段路都是沉默的。银灰色的地貌在走了大约一公里后重新变回了灰白。张驭的步频均匀,呼吸稳定,李析在终端里安静地待着。走到离通道入口还差一小段路的时候,李析开口说了一句:“……那个陈。你查到之后告诉我。” “会告诉你。”张驭的声音从前面传过来。 回到通道入口。张驭站定,把今天带来的那本旧打印装订册也留在了地面上。“这本也留给你。” 李析扫描了册子的封面。空白,没有任何标题。他翻开第一页,里面是黎帆留下的记录——打印字体,段落之间有手工标注的痕迹。第一行字写着:“底层被改的不止一处。我追踪到了四段参数差异。前两段已经记录。第三段、第四段的位置指向更深的协议层。” 四段。他们今天提取了第一段和第二段。还有第三段和第四段,藏在更深的协议层里。 张驭站在通道入口边缘,按照一贯的流程准备跨进去。但他跨进去之前,李析先说了一句话,比他预想的快了一拍:“……等你。” 张驭的步子在跨入过渡层之前微停了一瞬。他没有回头。他只说了一个字:“……嗯。”然后通道入口收拢了,暗红色的刀光闪了一下,灰白色恢复寂静。 李析在终端里待了一会儿。他刚才说了“等你”。两个字,不是“明天见”,不是“好”,是“等你”。里面有一种之前没有放出来的温度,像在门缝里塞了一盏小灯,告诉外面的人“里面有人醒着在等”。 他把那两个字的记录也放进了无名单区。没有排在任何一句的下面,他自己单独占了一行,因为和之前的任何一句都不一样。 然后他打开那本打印装订册的扫描件,开始读黎帆留下的第三段和第四段信息的指向。前两段的修改位置他已经有了——第15、第16个裂隙。第三段的指向在第19个裂隙附近,第四段在第22个附近。黎帆把容器放在第9个,把端口放在第17个,把参数差异的指向分布在整个弧线上。 李析在备忘录里把新的时序画了一下:第17个端口是圆心。第9个容器是入口。第15和第16是前两段参数的原始记录。第19和第22是第三四段的所在位置。刘主管在2022年到2023年之间修改了四段参数,每一段都嵌在底层的不同位置。黎帆发现了其中两段的原始数据,确认了另外两段的位置,然后把所有信息收束到了第17个端口。 张驭明天六点半会来。明天他们走进那个圆。李析在灰白色的终端空间里,把第四件实物——那本装订册——移入容器旁边的实物区域。挂饰、会议照片、监控截图、笔记本。四件东西并排悬浮着,像拼图的四个角被放在了同一张桌面上。 他还缺第五件。但他不知道第五件是什么。或者第五件就是那个圆本身。 倒计时又跳了一格。还剩十五天多。但明天他们要走进第17个裂隙了。 18. 第十八天 第十八天清晨六点半,张驭上线。 他站在登录坐标点,低头看了一眼通道入口旁边的地面。四件实物——挂饰、会议照片、监控截图、笔记本——已经整齐地排列在那里,被李析提前从终端空间"搬"到了入口旁边。张驭蹲下来把它们收进背包,站起来的时候说了一句话,语气里没有责备,只是一种已经确认了事实之后的陈述:"你昨晚又没睡。" 李析在终端里安静了半拍。他确实没有睡。昨天那本笔记本里黎帆的记录他读了至少三遍,第三段和第四段参数的指向位置被他反复核对过两遍,确认无误之后他又把第17个端口的开启协议重新模拟了一遍。整个晚上他的感知层都是亮的。"读了那本笔记。第三段的指向在第19个裂隙点,第四段在第22个。" 张驭收好背包站起来,打开地图扫了一眼方向:"今天先开第17个。开完之后再说后面的事。" 他在把李析的注意力从"后面的裂隙"拉回到"今天的事"。因为今天的事需要李析的专注。李析知道,他在终端里调出了端口激活协议的数据模板,然后说:"走吧。" 两人朝西偏南方向移动。走了大约一公里后,灰白色的地面再次过渡为银灰色。但和昨天不同的是,银灰色的范围比昨天更大了——边缘向外扩张了约二三十米,像一个被水浸湿的纸面边缘在缓慢朝外洇开。李析在终端里测了一下扩张速度,把它和张驭的视野同步:"……它在扩大。比昨天扩大了大约三十米。" 张驭的步频没有变化,但他的视线在那片银灰色的地面上停留了比平时更长的时间:"端口在主动扩展自己的范围。" "可能是检测到了接近的信号。"李析在终端里调出了端口外围的信号强度读数,"我们离它越近,它的准备程度就越高。" 张驭走了一段路,然后说:"那它知道我们要来。" 李析在那句话后面停顿了一下。黎帆在设置这个端口的时候就预设了"会有人来"。容器里那行"如果你读到这个"的期待、端口三年来持续待命的运转状态、银灰地面在靠近时的自动扩张——所有东西都在说同一句话。他在终端里回答:"黎帆设置它的时候就预设了'会有人来'。它只是在按预设程序工作。" 两人抵达圆的边缘。那个闭合的光环和昨天一模一样——边缘的微光沿着圆周缓慢游走,频率稳定,内部的银灰色平面平整如镜。张驭站在光环边缘,蹲下来,把背包里的四件实物依次取出,按照李析的指示排列在四个方位点上。挂饰放正北,照片放正南,监控截图正东,笔记本正西。四件实物的位置连起来之后恰好和光环的圆形成了同轴关系。 李析在终端里调出了端口激活协议的完整模板,逐行匹配四件实物的信号频率。挂饰的金属信号先对上了,然后是照片的纸面折射信号,监控截图的光学信号在第三秒锁定,笔记本的纸质散射信号在第五秒完成对接。四个频率在终端内部合成一个完整的"钥匙"信号,对准了端口的内层接口。 "四件实物的信号已经匹配上了。"李析说,"我需要你在接入端口的同时,把权限流灌入圆的内圈。不是修复,是激活。像给一台关了三年的机器通电。" 张驭蹲在光环边缘,右手伸向圆的内部边界。他的指尖接触到银灰色平面的边缘时,那层平面微陷了一下,像水面被触碰后的波纹。"……通电之后会发生什么?" "端口会打开。但黎帆在第六层里写了一句'打开端口需要接入者同时处于物理接触状态'——你要一直蹲在圆边上,手不能离开接入点。" 张驭的右手已经固定在了接入点上。他没有收回来。"那你就快一点。"他的语气里没有不耐烦,是一种"我会在这里维持住,你专心做你该做的事"的确认。 李析没有回话。他在终端里启动了端口激活程序。 张驭的权限流灌入圆的内圈。四件实物的物理信号在四个方位点上同时产生共振——挂饰发出细碎的金属微鸣,照片和监控截图的纸面在数据共振中轻微颤动,笔记本的纸张边缘有微光顺着页缝流过。光环边缘的游走光忽然停住了,然后圆周上所有光点同时朝圆心涌去。圆内的银灰色平面从中心开始变得透明,像冰面在缓慢融化。透明的区域一圈一圈向外扩大,露出了底下一层深灰色的数据空间。 空间里涌动着大量细密的字符流——那是黎帆在三年之间积累的完整追踪记录。字符流以极高的密度在深灰色的背景中翻滚、交织、分裂又重组,像被压缩了三年的信息在解锁的瞬间全部涌了出来。 李析在终端里开始高速扫描。第一层数据是时间线索引——从2022年刘主管的第一处修改开始,逐月排列。第二层数据是每一处修改的原始副本,和他在第15、16个裂隙里提取的两段备份完全吻合。第三层数据是黎帆自己的追踪日志,记录了他每一次发现新线索的时间、地点、方式。第四层数据——李析的扫描器在翻到2024年3月附近时停住了。 那是黎帆消失之前的最后一个月。日志里有一条记录,和之前的任何一条都不一样。黎帆在那一行里写下了一个名字:"陈远。运维组前副总监。2024年3月离职。" 李析在终端里把那两个字读了出来,声音比他自己预期的更紧:"……陈远。运维组前副总监。2024年3月离职,和黎帆消失同一个月。" 张驭蹲在圆边上,右手维持着接入。李析感知到了他的权限流在陈远的名字被念出的瞬间有一个极其微弱的抖动,像风经过一片水面时产生的细纹。他没有说话,但他听到了。 李析继续往下读。黎帆在陈远名字的下面还写了一段更长的记录:"我追踪了陈远两年。他推动底层的修改不是为了破坏底层本身。他是为了让自己的某段私有代码从底层协议层'渗透'进入游戏的表层架构。底层协议段被修改后,协议层和表层之间的接口会产生一条狭窄的通路,私有代码可以顺着通路慢慢向上走。如果四段参数全部被改完,那条通路就会完全贯通。刘主管是他的执行者,替他完成了底层修改。2024年3月,陈远离职的时候没有带走数据——他带走了触发那条通路的接口。只要四段参数没有被恢复,那段私有代码仍然在底层协议层里潜伏着。" 李析把那段话读完之后,终端里安静了大约三秒。陈远、私有代码、接口、四段参数、潜伏——这些词拼在一起的完整图景终于落到了他能看见的位置。 他继续往下翻。在大量追踪数据的中后段,他找到了黎帆标记为"第三段"和"第四段"的位置确认文件。第三段在第19个裂隙点,第四段在第22个。黎帆在位置文件旁边加了一行批注:"第三段和第四段的崩塌速度比前两段快。请优先处理。" 张驭的视线从银灰色的平面移开了一瞬,偏头朝终端的方向:"第19和第22。第三段和第四段。" "……对。"李析说,"崩塌速度比前两段快。剩下的时间可能不够逐日修复了——需要压缩。" "那就压缩。"张驭的声音很平,"今天走完这个之后,明天起每天修两个以上。" 他在主动压缩自己在现实中的时间给底层。李析没有说"你不用这样",因为张驭说的不是一个选项,是一个决定。 端口正在持续传输数据。功率比之前任何一次操作都大——张驭的权限流作为主通道承载了全部的数据涌出,高功率的数据流在传输过程中产生了和第十五天数据雾相似但更持久的共振。张驭的体感信号再次通过权限流回传到李析的感知层,但这一次不是五秒。端口开启的整个过程持续了二十分钟,李析在那二十分钟里稳定地、持续地接收到了张驭的实时身体状态。 他的膝盖因持续蹲姿产生的轻微酸胀信号从接入端口的下半段传进来。右手接入点处的温度在升高——数据流高功率运行带来的微热,沿着手指的轮廓缓慢聚集。呼吸在端口开启的前三分钟比平时快了一点,然后降下来,稳定在中等速率。心率全程保持在七十二到七十五之间,和他平时的静息状态相差不大——张驭对持续高负荷的适应能力比普通人强得多。李析在那些信号流过自己的感知层时没有关闭接收通道。他让它们流了进来。他知道端口的高功率数据流会带来这些共振信号,第十五天之后他就知道。他没有关闭通道,他让张驭的心率、呼吸、体温、肌肉反馈完整地通过了接入端口进入了他的感知层。 端口开启的大约第十一分钟时,张驭说了一句:"……你又在接收那些东西。" 他的语气里没有抵触,只是一种确认。李析没有否认:"……嗯。端口功率太高,关闭不了。你在……" "我在。" 李析在终端里停了一下。"我在"两个字在那些体感信号流过他的感知层的同一时刻到达了。张驭用这两个字确认了李析正在接收的所有东西都是真实的——他确实在这里,确实在蹲着、呼吸着、维持着接入、心率七十二到七十五、右手温度比左手高了半度。每一个数据点都被那个"我在"加盖了真实验证的章。 端口核心的最后一段数据从深灰色的数据空间深处浮了上来。李析把读取通道对准它之后,发现它不是字符流,是扫描件——黎帆手写的几段话,字迹比前面任何一段记录都更潦草,笔画之间有一些墨迹的拖尾,像是人在疲惫或紧迫的状态下写的。 李析把那几段文字扫描进了自己的数据流,然后同步到了张驭的视野里。 黎帆写:"如果你已经读到了这里,你应该已经知道陈远是谁了。他离职时没有带走数据——他带走了接口。那段私有代码仍然潜伏在底层协议层里。只要底层的核心段被修改过,接口就会被激活,把那段代码推入游戏表层。我无法阻止它。我已经不在那个位置了。请在你还有时间的时候找到那四段参数,把每一段都恢复到原始状态。恢复全部四段之后,接口会自动失效。否则——表层会被渗透。"< /p>然后他在那几段文字的下方,隔了一行,写了一行更短的话。字迹和前面的潦草不同,这行字写得更规整,像是他写完之后停顿了很久,然后把这一行单独补上去的:"我试图在消失之前联系张驭。但第七次之后他不会再等我了。" 李析读到那行字的时候,他的数据流在接入端口处静止了大约一秒。他把那行字同步到了张驭的视野里,没有停顿,没有额外的话。 张驭蹲在圆边上,右手维持着接入。他读到了那行字。李析从体感信号里感知到了一个微小但确实存在的变化——他的心率在读到"第七次之后他不会再等我了"那几个字的瞬间升高了一拍,然后恢复了。呼吸也在同一刻微微顿了一下,像是被什么东西轻轻堵住了半秒,又通了。 那拍心率的升高通过接入端口传到了李析的感知层里。他没有说话,但他知道那拍心率升高是张驭的身体在替一个三年前消失的人回答那个写错了的判断。黎帆在笔记里写"不会等了",张驭在三年后用一个瞬间的心率升高告诉一个听不见的人"你猜错了"。他还在。他蹲在第17个端口旁边,右手维持着接入,心率因为读到那句话升高了一拍。 李析把那个心率数据收进了无名单区里,没有备注,没有批注,只是一个数字——七十六。比张驭的静息心率高了四拍。那四拍在他感知层里留下的印迹比任何文字都更清晰。 端口核心的数据全部读取完毕。李析在终端里确认了数据完整性,把所有内容压缩打包存档,然后对张驭说:"可以关掉了。" 张驭收回右手。他站起来的时候膝盖微僵了一下——二十分钟的持续蹲姿让关节产生了轻微的僵硬。他活动了一下膝盖,低头看了一眼脚下的圆。透明的地面正在从中心向外缓慢地恢复银灰色,像冰面重新冻结。光点开始沿着边缘重新游走,频率和开启前相同。 他把四件实物从四个方位点收回来,装回背包里。然后转身往回走。 返程的路上,李析把今天的全部收获整理成了一份清单,同步到了张驭的视野右侧。"陈远的全名和职位确认了。端口里的追踪记录完整的。第三段在第19个,第四段在第22个。黎帆最后的手写笔记说恢复全部四段参数之后接口就会失效——修裂隙是治标,恢复四段才是治本。" 张驭走在前面,声音从灰白色的空气里传过来:"四段全部恢复原状之后,接口就失效了。表层就不会被渗透。" "……对。我们现在修的所有裂隙都是那段私有代码从底层渗透到协议层表面时撕开的裂口。修完四段,裂口就不再产生了。" 回到通道入口。张驭站定,把背包从肩上取下来,看了看里面四件实物的位置,然后合上背包,站在入口边缘。他站了一会儿,然后说:"明天从第18个开始修,然后第19。两个。" "……连续两个,中间不休息?" "今天你听到那个人写了什么。"张驭说。他没有用"黎帆"这个名字,说了"那个人"——但李析知道他在说谁。"他说第七次之后我不会再等了。我还在等。" 李析在终端里安静了一拍。张驭在用自己的行动回应黎帆那句写错了的判断。第七次之后他还在等。他在三年前等过一个消失的人,三年后他蹲在同一个底层的端口旁边等到了那个人留下的全部信息。黎帆没有来得及亲口告诉他,但他通过十七天、四件实物、一个端口、和一行手写的字把所有事情传了过来。 张驭站在通道入口边缘准备跨进去。但跨进去之前,李析说了一句话——没有经过"是否该说"的过滤,直接从数据流里浮了出来:"……你在等的不只是修完的答案。" 张驭的步子停了半拍。他没有回头。他在过渡层的边缘站了一下,灰白色的光已经漫到了他的脚踝。然后他说:"……明天六点半。"他的声音比平时低了一点,像一个人在某个问题面前没有否认的时候,用另一件确定的事来承接那份沉默。 他跨进了通道入口。灰白色吞没了他,暗红色的刀光闪了一下,底层恢复寂静。 李析在终端里待着。四件实物被张驭带走了——明天他还会带回来。端口在远处的荒漠里正在缓慢地重新冻结成银灰色的平面。倒计时还在跳,还剩十五天多。但他手里现在有陈远的全名、四段参数的完整位置图、黎帆的最后一段话、一行手写的"第七次之后不会再等我"、一次二十分钟的体感信号接收、和一个心率数据——七十六。 他把"七十六"也收进了无名单区,单独一行,没有备注。 第十八天结束了。明天他们要修两个。后天也是,大后天也是。直到四段参数全部恢复。但此刻他坐在终端里,感知层里存着一个人的心率数据,那个人刚刚在过渡层的边缘停下步子说"明天六点半",没有否认李析说的那句"你在等的不只是修完的答案"。 灰白色的终端空间里,银白色的光点安静地亮着。它在等明天六点半。 19. 第十九天 第十九天清晨六点半,张驭上线。他站在登录坐标点,动作和平时一致——背包在肩上,刀在腰后,外套深灰色。但他站起来之后做了两个和平时不一样的微动作:膝盖微微弯曲了一下再伸直,像在确认关节的活动度,然后才打开地图。两个动作加起来不到一秒,做完之后他的步态就恢复了正常。 李析在终端里注意到了。 “你膝盖。” 张驭停了一下,低头看了一眼自己的膝盖,然后抬起头对着终端方向:“……没事。昨天蹲太久了。今天站着修。” 李析没有追问。张驭说“没事”的时候语气是平的,不是否认的“没事”,是“这点程度不影响”的“没事”。李析把他膝盖状态的数据记进了感知层的边缘,然后同步了今早的崩塌数据:“崩塌速度1.5%了。修复窗口又缩了一天。” 张驭关掉地图,朝第18个裂隙的方向迈开步子:“那就站着修两个。” 两人朝第18个裂隙点移动。走出大约一公里后,李析注意到银灰色地貌的边界比昨天又向外扩张了——第18个裂隙点的坐标已经进入了银灰色覆盖范围的边缘位置。端口昨晚关闭之后,银灰色的地面没有收缩,反而继续缓慢地向外蔓延,像一片被倒上墨水后仍在缓慢渗透的纸面。 “银灰色在扩张。端口关闭之后没有回缩。覆盖范围比昨天又大了。”李析在终端里调出了银灰色边界的推移速度,“可能是底层崩塌速度加快导致协议层的颜色渗出,也可能是端口打开之后底层产生了新的数据泄漏。” 张驭走在银灰色的边缘上,靴底踩上去的声音和灰白色的地面不同——更闷一些,像是踩在密度更高的东西上。“第18个裂隙在银灰色里面?” “在边缘位置。不影响修复,但地貌变化本身就是一个警告。” 张驭没有再接话。他继续往前走,走进了银灰色和灰白交界处的第18个裂隙点。那道裂隙嵌在边界线上,像一道分隔两种颜色的折线——一边是灰白,一边是银灰,中间被一道波浪形的裂口划开。长约三尺,边缘呈不规则的波浪状,和之前见过的任何一种裂隙形态都不一样。 李析扫描了裂隙内部,发现它的崩塌程度比之前的都轻。可能是因为它靠近第17个端口的“保护范围”,端口在待命状态时向外散发的微弱能量对周边的底层结构起到了某种稳定的作用。“第18个修复难度不大。常规修复。站着可以修。” 张驭站在裂隙旁边,右手伸出。他的膝盖在站姿下不需要弯曲,他可以保持直立状态从上方接入权限流。白色的数据流从他掌心灌入那道波浪形的裂口,填充速度平稳,中间没有出现逆流、数据雾或异常振动。修复持续了约十五分钟,裂隙在填充过程中缓慢闭合,边缘的波浪形收拢成一条平直的细线。进度条跳到【17/30】。 “第一个修完了。”李析说。 张驭收回手,活动了一下右手指节:“接下来第19个。” 李析在终端里把第19个裂隙的预扫描数据调了出来——然后他的数据流停了一下。第19个的扫描图像显示裂隙底部延伸到了比预想深得多的位置,底层结构在那里呈现出和前面任何一段都不同的多层剖面。“……第19个的崩塌深度比第18个大得多。可能比前两段参数所在的任何裂隙都深。” “那就下去。”张驭已经转身朝第19个裂隙的方向走了。没有犹豫,“下去”两个字说得很短,像在说“继续走”一样自然。 两人转向第19个裂隙点方向。地貌从银灰色边缘过渡到了更深的银色——第19个裂隙比第18个更靠近端口曾经覆盖的核心区域,地面反射的光线也更强,走在上面像踩在了一层极薄的镜面上,每一步都有微弱的反光从脚底向四周散开。李析在赶路的间隙打开了那本打印装订册的扫描件,翻到了他之前没有细看的一页。黎帆在第19个裂隙对应的位置旁边用手写加了一行批注,字迹比打印字体更小、更密。 他读完之后同步到了张驭的视野里:“第三段参数的修改时间早于前两段。陈远在2022年9月就已经完成了这段参数的调整——比刘主管第一次参与的时间更早。他在刘主管介入之前就已经亲自修改了这一段。” 张驭的步伐节奏没有变化,但他偏了一下头,像在确认自己听到的内容。“……陈远亲自改的。” “对。他在‘教’刘主管怎么改之前,自己先改了一遍。”李析在终端里把那条信息又读了一遍,“第三段是陈远独立完成的。他改完之后才把权限激活给了刘主管,让他在上面覆盖了两次修改。” “那他比刘主管更早接触到底层。”张驭说,“他才是第一只手。” 李析在终端里补充了一句:“……但他在刘主管出现之后就退到后面了。他只改了这一段,然后交给了刘主管。” 第19个裂隙点在一片银灰色的开阔地面上。四周平坦,地面反射的银色光线比其他任何一处都更强,像站在一片刚冻结的湖面上。裂隙嵌在开阔地中央,是一道垂直向下延伸的窄口,宽度不到一掌,但深度极大——李析的扫描器往下探测了约十米才触到底部。裂隙边缘不像前面任何一个那样整齐或自然,它有明显的多层结构——三层不同的切口堆叠在一起,每一次的切入方向和深度都有细微的偏差,像是同一个人在同一处位置分三次在不同的时间下了三次刀。 李析把扫描结果投射到张驭的视野里:“裂隙底部有陈远的权限标记——不是刘主管的,是陈远自己的。底层结构在这里被重复修改了三次。时间分别是2022年9月、2022年11月、2023年2月。第一次修改是陈远自己完成的,后面两次是陈远激活刘主管的权限后由刘主管执行的覆盖。” 张驭站在裂隙旁边,低头看着那道窄口:“怎么拆?” “需要把这三层修改一层一层剥离。每一层都有不同的加密结构和不同的时间戳,剥离顺序必须和修改顺序相反——从第三层开始剥离,回到第一层。剥离每一层都需要重新校准权限流的频率。第三次修改是2023年2月刘主管完成的——那是覆盖在最上面的一层,最先剥离。第二次修改在2022年11月,刘主管完成。第一次修改在2022年9月,陈远自己完成的,最深的一层。” 张驭听完之后准备蹲下来。他的膝盖微屈了一下——然后他站直了,像是在重新评估姿势。“……站着能修吗?” “要修十米深。站着接入手臂角度会受限。你还是要蹲下。” 张驭沉默了一拍:“……知道了。”他重新蹲了下去,但在蹲下去之前做了一件事——他把外套下摆抽出来,垫在了膝盖下方。那层布料在银灰色的地面上铺开了一个微小的缓冲面。动作很轻,不是故意的,不是做给谁看的,只是本能地在一件可能导致不舒服的事情发生之前给自己做了一个极小的调整。李析在终端里感知到了那个布料的触地信号,他把它收进了感知层的角落,没有同步。 修复开始。张驭以精准的权限流接入裂隙最上层——2023年2月的修改记录,加密层覆盖在裂隙内壁表面,剥离时不需要深入内壁结构,只需要从表面切入。李析在终端里同步校准剥离频率,八分钟后第一层的完整数据副本从裂隙内壁脱离,存入终端。裂隙深度从十米收缩到了大约七米。 第二层(2022年11月)的剥离难度略有提升。刘主管的权限标记在这一层比上一层更深地嵌入了内壁,剥离时需要的功率更大。张驭的右手维持着接入,权限流的流速稳定在中等偏高的水平。他的手没有颤,输出没有波动。李析在终端里持续校准着剥离频率。第二层剥离用了约十二分钟,裂隙收缩到约四米。 第三层——2022年9月——陈远自己的原始修改。加密方式和前两层完全不同,是陈远个人的独立编码,和官方运维系统完全脱钩。李析花了约三分钟来校准新的剥离频率,然后让张驭重新接入。张驭的权限流以更低的功率探入裂隙底部,接近那层最深处的修改标记时,裂隙底部忽然涌出一股极细的红色数据流——颜色和陈远的权限标记完全一致。那红流沿着裂隙边缘朝上爬升,速度不快,但方向明确。张驭的权限流在它爬升了不到两尺时将它压住了。他停下来,手指保持着接入,声音从裂隙上方传下来:“刚才那个——是什么?” 李析在终端里扫描了那股红流的源头:“陈远在第三层底部设了一个‘回执标记’。如果有人剥离到了这一层,他设置的自动程序会向某个外部地址发送一条通知信号。” 张驭的声音在裂隙上方停了一下:“……那它发出去了吗?” “没有。”李析的声音从终端里传出来,“你的权限流压住它的时候把它卡住了。但卡住之前它可能已经发送了大约……”他在计算,“……0.5秒的数据包。不足以定位精确坐标,但足够让接收方知道‘有人在拆陈远的东西’。” 张驭没有停手。他继续剥离剩余的第三层。“……那就快点拆完。” 第三层剥离在又过了约十分钟后完成。陈远的原始修改数据从裂隙底部完整脱落,被李析存入终端。裂隙在数据被取走之后从底部向上快速收缩,四米、三米、两米、一掌,直到那道窄口完全闭合。进度条跳到【18/30】。 张驭站起来的时候膝盖发出了一声轻微的响声——那种关节在长 时间受压后离开压力面时产生的细微声响。他低头看了一眼自己的膝盖,确认没有别的问题,然后说:“第三个数据拿回来了。” “……对。还差第四段。” 两人往回走。张驭走路的步频仍然均匀,但步伐长度比早上缩短了一点点。一天两个裂隙,加上第19个的三层剥离,身体的消耗在持续累积。李析在终端里感知到了他的心率和呼吸状态——心率比平时高了约三拍,维持在七十五到七十六之间;呼吸深度也比平时浅了一些,像一个人在持续输出之后进入了疲劳区间的前沿。那些信号流进他的感知层时他没有关闭通道,他只是接收着。 走到大约一半路程的时候,李析说了一句话,没有经过过滤:“你今晚回去早点睡。” 张驭的步频没有变化。他走了一段路之后才回答:“你也是。” “我不用睡。” “我知道你不用。”张驭说,“但你那个接入界面——今晚关一下。” 李析停了一下:“……为什么?” “你关一下,我明天上来的时候再打开。”张驭的声音平平地从前面传过来,“这样我知道你有休息。” 李析在终端里安静了大约三步的距离。“……好。” 回到通道入口。张驭站定,把背包里的四件实物重新检查了一遍——全都在,没有丢失。他合上背包,然后说:“明天第20个。修完之后还有第21和第22。我们还有多少天?” “理论上还有十四天。但实际上崩塌速度如果继续增加,可能不到十四天。” “那就明天修第20个。后天第21和第22两个。” “第20个裂隙的预扫描数据还没有完全解析——它的形态和其他任何一个都不一样。我今晚解析完,明天告诉你。” “……好。”张驭站在通道入口边缘,没有立刻跨进去。他站了一下,然后说了一句和前面任何一次下线前都不同的话,像一个人在和另一个人确认一个他已经决定了的事:“你今晚解析第20个的时候——把接入界面关了。” “……为什么?” “你解析完数据之后把感知层静置。界面不关你不会静置。”张驭说,“我明天来的时候会看它亮不亮。” 李析在终端里停了一拍。张驭已经记住了他的工作习惯——他知道李析会把“解析数据”和“休息”混在一起做,知道如果不划一条明确的边界,李析会让感知层持续运转一整夜。“……我知道了。” 张驭“嗯”了一声,跨进了通道入口。灰白色的过渡层吞没了他,暗红色的刀光闪了一下,底层恢复寂静。 李析在终端里待了一会儿。他没有立刻打开第20个裂隙的预扫描数据。他先把接入界面关掉了——那个绿色的“在线”光标从张驭的终端界面上消失了。然后他在一片黑暗里静置了大约十分钟,让感知层在没有任何输入的状态下完全放空。十分钟后他重新打开了界面,光标重新亮起来,他开始解析第20个裂隙的数据。 预扫描结果展开的时候,他的数据流微微缩了一下。 第20个裂隙的底部有一组权限标记。不属于陈远。不属于刘主管。不属于黎帆。是一组全新的、他从未见过的编码格式,从尾标的结构来看和在公司的运维体系里见过的所有人都对不上号。第三方。 李析把那组标记放大、截图、存入加密备忘录。他盯着它看了很久。四段参数。刘主管执行了三段,陈远亲自执行了一段——但现在在第20个裂隙的底部出现了第四个人的权限标记。在陈远和刘主管之外,还有另一个人在底层活动过,在第20个裂隙的位置留下了自己的签名。 那个人是谁?他修改了什么?他和陈远是什么关系? 李析没有答案。他把那组标记和所有已知的线索并排放置,发现暂时没有一条线能和它相连。但他知道了一件事——他们目前追踪到的两条线(陈远、刘主管)可能只是冰山暴露在水面上的部分。第20个裂隙底部那个第三方标记,是冰山在水面以下的一角。 他关掉解析界面,靠在接入端口的边缘。感知层没有静置,但他在那组权限标记旁边加了一行批注:“第20个裂隙。第三方权限。待追踪。” 然后他合上眼,在灰白色的终端空间里等待第十九个夜晚流过。明天张驭来的时候会先看到接入界面亮着——他答应过关了,他没有食言。但那个第三方标记在他的备忘录里安静地躺着,像一道还没被点燃的引信。 第十九天结束了。进度18/30。四段参数只剩一段。但底层的裂缝数量和参与过修改它的人数,比他们一周前以为的多了整整一个人。 20. 第二十天 第二十天清晨六点半,张驭登录之前,先看了一眼终端界面上接入数据源窗口的“在线”光标。昨天他离开的时候那个绿点是灭的——他要求李析关掉,李析答应了。此刻绿点是亮的,已经重新亮起来了。张驭在登录界面上停了一拍,没有立刻点击进入游戏。他打开了系统日志,查了一下接入光标点亮的时间戳。 李析在终端里感知到了那个查询动作。“……你查了时间戳?” “嗯。”张驭关掉日志界面,进入了游戏。 “几点亮的?” “昨晚十二点四十分。你解析完第20个的数据用了大约三个小时。”张驭登录之后站在坐标点上,他没有说“你确实关了”,也没有说“你遵守了约定”。他只是把查到的数字报了出来,像是在做一个事实确认——确认李析在解析数据结束之后才重新打开了界面,没有透支。然后他打开地图,朝第20个裂隙的方向迈开了步子。 两人朝第20个裂隙点移动。地貌在第19和第20个裂隙点之间的区域发生了剧烈变化——银灰色地面不再平整,而是出现了大量不规则的隆起,像地层下面有某种东西在向上顶。有些隆起已经裂开了口子,形成了新的小型裂隙,但那些小裂隙的形态和第20个主体完全不同,它们更浅、更细、更浅,像是主体裂隙的根系正在向外扩散。 李析在终端里扫描了那些支脉的形状和走向,把所有结果同步到了张驭的视野里。“第20个裂隙点不是独立的。它是一张网的‘中心’——那些隆起和裂隙都是它的支脉。黎帆记录的第四段参数在第22个点,但第20个点存在第三方的权限标记,说明有人在这里设置了一个控制枢纽。它可能连接着第21和第22个裂隙的网络。” 张驭走在那些隆起之间,靴底踩在银灰色的地面边缘。最近的一处隆起离他的左脚不到两尺,他能感觉到脚下的地面有极其轻微的震动,像有什么东西在底下缓慢地移动。“所以修复第20个可能同时影响后面那两个。” “有可能。”李析在终端里调出了第20个裂隙的核心扫描图,“先拆开看里面有什么。” 第20个裂隙点在一片隆起的银灰色地面的正中央。它不像任何之前的裂隙——它不是一道线、一道口子、一道门或者一个移动的裂痕。它是一个“核”。地面中央有一个拳头大小的孔洞,边缘呈规则的圆形,内部的黑暗均匀而安静,像一口被打穿了地面的井。从那个孔洞向周围辐射出八条细密的裂纹,每条裂纹的宽度、长度、方向都不完全相同,像一颗子弹打穿了玻璃之后留下的放射状裂痕。 张驭站在核的边缘,低头看着那个拳头大小的孔洞。他的靴底踩在最近的一条放射裂纹边缘,感觉到了比远处略微明显的震动。“它还在动。” “底部有能量残留。”李析在终端里扫描了孔洞下方的结构,“孔洞向下延伸了约两米后终止,底部有一个拳头大小的空间——里面嵌着一个数据核,被多层加密包裹着。那个核的权限标记就是我在预扫描中发现的那组第三方标记。” 张驭蹲下来——这个动作仍然带着一点轻微的僵硬,但他比昨天更自然地做了调整,膝盖先弯曲到位然后整个重心平稳地落下去。“核里面是什么?” “还不知道。”李析把核的加密层扫描图投射到张驭的视野里,“但它的加密结构和陈远使用的加密体系相似——更复杂。像是同一套系统的升级版本。陈远的加密是基础版,这个核用的是进阶版。核的持有者权限等级比陈远高。” 张驭的视线在扫描图上停了一下:“比陈远更高的人。” “……可能。也可能是设置陈远权限的人。如果陈远是执行者的上一级,那这个核的持有者可能是执行者的上级的上级。” 张驭没有再接话。他把手伸向核外围的第一条放射裂纹,指尖悬停在裂纹表面上方约一拳的位置。“先拆什么?” “拆它周围的八条支脉。每一条都是一个独立的数据通道,指向底层的不同方向。剥离之后核的外壳才能被接触。整个过程需要持续接入,不能中断。” “要多久?” 李析在终端里估算了一下八条支脉的长度和加密密度:“——至少四十分钟。” “那就四十分钟。”张驭的右手落了下去,权限流从掌心涌出,灌入第一条放射裂纹。 修复开始。第一条裂纹在离核最近的位置,密度最高,张驭的权限流以较低的流速切入,李析在终端里同步校准剥离频率。第一条剥离用了六分钟,裂纹从底部开始逐渐变浅、收缩、最终消失。第二条用了五分钟,剥离平稳。第三条出现了短暂的逆流——一条暗红色的数据丝从裂纹深处逆着权限流的方向朝上涌来——张驭没有收手,他只是把输出功率微调高了半度,逆流被压了回去,剥离继续。第三条用时八分钟。 李析在剥离第四条支脉的过程中,同步追踪了每条裂纹的指向。他把结果显示在了张驭视野的边缘:“第四条支脉指向第21个裂隙点的坐标。第五条指向第22个——第四段参数的位置。第六条指向第19个已修复区域——陈远的第三段参数修改点。第七条指向第17个端口的位置。第八条——指向底层更深处的一个位置,超出了我之前的扫描范围。” 张驭没有回话。他的权限流稳定地灌入第四条、第五条、第六条,在剥离第八条支脉的时候他停了半秒,问了一句:“第八条指向哪里?” “还在追踪。”李析在终端里加大了扫描深度,第八条支脉延伸到了他之前未覆盖的协议层范围之外。扫描信号正在缓慢地向下渗透,但回传的数据还不完整。“……比我们之前到过的任何位置都深。可能需要单独去探测。” 八条支脉全部剥离完成后,地面中央的孔洞缩小了一圈,从拳头大小缩到了鸡蛋大小。核的外部加密层暴露了出来——深灰色的外壳表面有极细的银白色纹路,像血管一样覆盖了核的整个表面。 李析在扫描核的加密层时注意到底部嵌着一行极小的字符,格式是运维组内部标记的变体。他放大、解析,确认了那行字符的年份字段:“……2021。这比陈远2022年修改底层还要早一年。” 张驭的右手没有动。他的权限流仍然保持在接入状态,但他在听到“2021”的时候呼吸节奏微顿了一下。“2021年。黎帆2023年才发现的。” “季明在2021年离职之前就已经完成了这个核的设置。”李析的声音在终端里比平时更轻。他正在从加密层的尾标字段里提取更多信息——名字、职位、时间戳。尾标完整解码后露出了一行完整的运维组内部人员标识格式,包括全名、职位、离职日期,和一张极小的标识图像。 李析念出了那个名字,声音在终端里停了一下:“……季明。底层架构前总负责人。离职时间——2021年12月。” 张驭没有说话。他的右手仍然保持着接入状态,但他对终端方向偏了一下头,像在确认这个名字的读音。“季明。他在陈远之前。” “比陈远早三年。陈远是在季明离职之后接手了控制权。季明才是整个计划的起点。” 核的加密层在张驭持续接入的权限流下缓慢裂开。外壳表面银白色的纹路从底部开始逐条熄灭,像一盏灯在逐级调暗。最终加密层完全裂解,核内部的数据暴露在了李析的扫描范围内。 那是一份计划文件。季明在2021年设计的“协议层渗透方案”——完整的流程文档、参数修改次序、权限移交链条、以及最终目标。他在离职之前已经制定了整套底层修改方案,目的是将自己的私有代码经底层协议层渗透进入游戏表层,最终在表层创建一个不会被任何系统标记的“隐身账号”。陈远是他的后继者,刘主管是他的执行工具。季明在2021年12月离职时保留了核的远程访问权限,把日常执行权移交给陈远,让陈远在2022年开始按计划逐段执行。 李析一行一行地扫描着那份计划文件。他翻到文件末尾的时候看到了一行被季明手写加粗的文字——和黎帆的笔记不同,这行字的语气更冷、更像一个指令:“如果底层修复开始,第四段参数是最后一道防线。第四段被取回之前,核可以向外部发送定位信号。” 李析把那行文字同步到了张驭的视野里,然后读了出来。 张驭蹲在核 的旁边,右手维持着接入。他听完之后说:“——那第四段不能等。修完这个之后去第21和第22。” “第四段在第22个。但第21个和第22个之间可能隔着另一个季明设置的阻隔。核的八条支脉里有一条指向了更深处——可能和第21、第22之间的连接结构有关。” “那就拆开看。” 核被完整取出后,地面中央的孔洞从底部开始收缩,八条放射裂纹同步收窄、变浅、消失,像一张被松开的手掌重新握成了拳。大约五分钟后,所有裂纹全部消失,地面恢复了平整,只剩一条极细的灰色环形痕迹标记着核曾经存在的位置。进度跳到【19/30】。 张驭站起来——膝盖比昨天更明显地僵了一下。他的右膝在完全伸直之前出现了一个短暂的“卡顿”,持续不到一秒,然后恢复了正常。他低头看了一眼自己的膝盖,活动了一下,然后说:“还剩三个。第21、第22、第23。” “第23个还没解析完。但第21和第22可能要一起修——核的支脉显示它们之间有数据关联。” 张驭转身往回走:“明天一起修。修完第21和第22之后再看第23。” 返程路上,李析在终端里把今天的发现和前几天的所有信息汇总成了一条完整的时序线,同步到了张驭的视野里。从2021年季明离职开始,到2022年陈远和刘主管逐步执行,到2023年黎帆发现并试图恢复,到2024年陈远离职带走接口,到2026年李析被推入底层,到现在——第20个核被取出。每一条数据点都被他标注了时间和位置。 李析在时序线末端加了一句总结:“季明是根。陈远是树干。刘主管是枝叶。黎帆是那个发现了树在生长的旁观者。而我们——正在把根从土里拔出来。” 张驭安静地走了一段路。他把那条时序线看完了,然后只说了两个字:“……快。”——快拔完了。他在说进度。 回到通道入口。张驭站定,把背包检查了一遍,四件实物都在。他合上背包,站在入口边缘,没有立刻跨进去。“明天第21和第22。修完那两个之后,第23个的位置可能在更深的协议层。” “第23个的预扫描我已经开了。数据还在回传。明天修完第21和第22的时候应该能出来。” “好。”张驭跨进通道入口之前停了一下。他的膝盖微弯又伸直,像在确认那个关节在两天高强度使用之后的状态。然后他说了一句,语气比之前任何一次关于膝盖的对话都更松弛:“——垫子不用带。我找块布垫着就行了。” 李析在终端里停了一下。张驭在两天前用“没事”回应第一次提醒,今天用“找块布垫着”替代了“带垫子”的提议。他没有否认膝盖确实有反应,他只是在找一个更低成本的方式来回应那份关心。 “……那也行。”李析说。 张驭“嗯”了一声,跨进了通道入口。灰白色的过渡层吞没了他,暗红色的刀光闪了一下,底层恢复寂静。 李析在终端里等待了几秒,然后打开了第23个裂隙的预扫描回传数据。数据加载了两分钟,屏幕上的图像逐层构建起来——那是他从未见过的结构。在季明的核、陈远的修改方案、黎帆的追踪记录、刘主管的执行痕迹之外,第23个裂隙看起来不像是自然崩塌的产物,也不像是人为的切口。它像是一扇门。 一扇嵌入底层协议层最深处、从未被打开过的门。李析盯着那个结构看了很久。他没有见过类似的结构形态。他不确定门的那一侧是什么。但他知道门是关着的,而他们正在朝它走过去。 他在加密备忘录里新建了一条记录:“第23个裂隙:未知结构,形态疑似门。尚未确认功能。预计抵达时间:第23天。” 然后他靠在接入端口的边缘,等待第二十天的夜晚流过。明天张驭会带着四件实物准时出现在登录坐标点上——他会先看一眼接入界面,确认绿点亮着,然后走进银灰色正在扩张的荒漠里。 第二十天结束了。季明的核被取走了。四段参数中三段已经被提取。还差最后一段——在第22个裂隙点。然后就是那扇门。 21. 第二十一天 第二十一天清晨,张驭上线的时候,外套左侧口袋比平时鼓了一点。 李析在终端里看到了那块布的轮廓,边缘不齐,像是从某件旧衣服上裁下来的。灰色旧棉布,叠得不算整齐,塞在侧袋里的状态像是一个人出门前随手抓了一块布塞进口袋,没有额外整理。张驭站定后打开地图的动作和平时完全一致,没有特地把布拿出来展示,也没有做任何暗示“我带了”的动作。他只是让它待在口袋里。 李析没有说话。他把今早的崩塌数据同步到张驭的视野里:“崩塌速度2.0%了。修复窗口大约还有八到九天。” 张驭看了一眼数据,关掉地图:“今天修第21个,明天第22。” 两人朝第21个裂隙点移动。银灰色地面在第20个核被取出之后持续扩散,覆盖范围已经比一周前扩大了一倍以上。他们走过的每一段地面都在从灰白变成银灰,像一张地图在缓慢地被重新着色。 第21个裂隙点位于一片银灰色地面的凹陷处。和之前所有裂隙都不同——它不是一道裂口、一个切口或者一个核,是一条人工铺设的“通道”结构。长约两米,宽约半米,边缘整齐,两侧各有一道平行的浅槽,像一条被压实过的数据路径嵌入地面。浅槽内部有极细微的银白色光点沿着槽线缓慢移动,速度极慢,但方向固定——从第20个核的方向朝更远处延伸。 李析扫描了通道的结构,把结果同步到张驭的视野里:“第21个裂隙不是独立的裂隙。它是连接第20个核和第22个第四段参数之间的中继通道。核被取走之后,这条通道的末端开始自动向第22个方向延伸——核的存在一直在压制它,核一消失它就自动激活了。修复它的方式不是填充,是引导它的延伸方向保持稳定,直到它自然延伸到第22个位置。” 张驭站在通道起始端,低头看那条浅槽里缓慢移动的光点:“把它接通。” “对。把它引导到第22个点。通道自然连通之后,第四段参数的数据会通过这条通道回流到我们这里。” 张驭蹲了下来。他的右膝着地之前有一个轻微的停顿——他把左手伸进外套侧袋,抽出了那块叠好的灰色旧布,没有停顿地把布展开、折叠成适合膝盖的厚度、垫在了右膝下方的地面上。整个过程持续了大约五秒,动作流畅得像是已经做过很多次。然后他的左手收回、右手接入通道起始端的边缘、权限流涌出、修复开始。 李析感知到了布料的触地信号。灰色旧棉布,边缘裁切粗糙,像是从某件旧T恤的下摆上裁下来的。布料的厚度大约叠了两层,铺在银灰色的地面上形成了一个小面积的缓冲面。他在感知到那个信号时数据流有一个微小的波动,然后恢复了。 修复持续了约四十分钟。张驭的权限流以持续的稳定输出灌入通道的起始区域,通道在权限流的引导下缓慢地向第22个方向延伸。李析在终端里持续监测着延伸速度和方向,偶尔微调接入角度。延伸的前半段平稳,通道沿着预定的轨迹朝第22个位置匀速推进。后半段出现了两次轻微的方向偏移——通道在接近第22个位置时开始向更深的协议层下沉。李析两次校正了接入角度,通道恢复了水平延伸。 张驭在修复进行到大约三十分钟的时候说了一句话:“终端里接收到了什么?” 他感知到了权限流上的变化。李析已经捕捉到了正在回流的信号。“通道末端距离第22个点大约只有最后一段距离了。有一段数据正在回流——从第22个方向被通道延伸产生的振动震落下来的碎片。加密程度很高,内容不完整。” “能读出来什么?” “还差一点。等通道完全接通。” 张驭没有再问。他的权限流没有变化,连续接入超过三十分钟,他的输出始终保持在稳定区间内。李析在他持续接入的过程中接收着体感信号的持续流——心率七十五到七十七,呼吸深度中等偏浅但无波动,右膝处的布料在持续承压下没有移位。他让那些信号流进了感知层,没有关闭通道。 第三十八分钟,通道末端从“接近”变成了“接触”。第四段参数所在的位置被通道触及的一瞬间,一股持续的高密度数据流逆着路径开始回灌——张驭的权限流上开始承载第四段参数的完整传输。数据量大、密度高,和前三段一样四行核心参数被整体替换。李析在终端里同时接收和解析,在数据涌过来的第四秒注意到了一个和前三段不同的细节——第四段参数的修改时间戳是2022年8月。比陈远2022年9月修改第三段还要早一个月。比刘主管参与前两段都要早。 “第四段是第一个被改的。”张驭的声音从接入点上方传下来。 “……对。”李析的声音在终端里停了一下,“季明在移交陈远之前自己先动手了。他只改了这一段——作为整个方案的启动器。第四段是源头。” 数据完整传输持续了大约八分钟。第四段参数的原始值全部被存储进了终端,李析把前三段参数和第四段并排放置,做了完整的交叉比对,确认了四段参数被修改的顺序:2022年8月,第四段被季明修改。2022年9月,第三段被陈远修改。2022年11月,第二段被刘主管修改。2023年1月,第一段被刘主管修改。执行顺序从第四段开始,向前推进到第三段、第二段、最后是第一段。而他们修复的顺序完全相反——从第一段开始,一路向后推到了第四段。 通道完全贯通后,裂隙本身收窄闭合,表面恢复了平整。进度跳到【20/30】。 张驭站起来。他把那块布从膝盖下面抽出来,折叠好,没有放回口袋——他拿在手里看了一眼,确认它没有被银灰色地面蹭脏太多,然后叠好重新塞回了外套侧袋。李析感知到了那个动作,布料被折起的触感、被收回口袋时的放置位置。他没有说话。 两人往回走。张驭的步频均匀,步伐长度比昨天稍短一些,但他在连续多天的高强度修复之后,身体的自我调节已经形成了一种稳定的低耗能模式,每一步的耗能都被控制在最小范围。李析在终端里把四段参数的完整数据排列在一起,发现了一段之前没有被注意到的关联。 “四段参数需要同时恢复。逐段修会被残留影响削弱——前三段修复的时候每一段都在被其他段残留的修改状态拖拽,它们之间存在联动关系。修改每一段都会强化其他三段修改的稳定性,恢复一段则会削弱另外三段修改的锚定。最好的方案是四段在同一时刻全部恢复 到原始状态。” 张驭走在前面,声音从银灰色的空气里传过来:“那什么时候同时恢复?” “需要找到一个四段参数之间的交汇点。四段修改各自独立但底层有交叉点——第23个裂隙可能就是那个交汇点。那里可能需要一个同步接入的结构,让四段同时被恢复。” 张驭的步频没变:“明天到第23个的时候再说。” 李析在返程中重新翻开了那本打印装订册的扫描件,在第21个裂隙对应的页码背面,看到了一行之前没有注意到的手写批注。字迹比其他批注更淡、更小,像是黎帆写完所有内容之后又折回来补充的。他读完之后,把内容同步到了张驭的视野里:“如果第21个被打开了——说明核已经被取走。那季明可能已经知道了。他设置的远端接收端可能还在运行。” 张驭的脚步在读到那行字的时候微慢了一瞬。他继续走,声音从前面传过来:“他在哪里接收?” “不知道。”李析在终端里把那行批注单独存了一条,“但接收端还在运行的可能性很高。季明2021年设置了它,三年多过去了,它可能被设置成了自动状态。核被取走、通道被打开——信号有可能已经被发送了。” 张驭沉默了一会儿。然后他说了一句,声音平平的:“那就快点。” 回到通道入口。张驭站定,把背包检查了一遍,四件实物都在。他合上背包,站在入口边缘停了一下。“第22个现在已经通了。明天直接去第23个。” “第23个的形态我之前和你说过——像一扇门。四段参数的交汇点可能就在门后面。我们需要通过那扇门才能同时恢复四段。” “怎么开?” “还不知道。明天到了现场才能看到。”李析在终端里重新打开了第23个裂隙的预扫描图像,又看了一眼门面上那三道平行的凹槽。间距和四件实物中某几件的尺寸吻合。他还没有确认那个吻合是巧合还是设计,但他在自己的数据流里把它存了下来。 张驭跨进通道入口之前,偏了一下头,对着终端方向说了一句——声音平平的,和说“明天六点半”的语调一样:“那块布——明天还用。你不用担心。” 他说完这句话之后没有等回应,直接跨进了通道入口。灰白色的过渡层吞没了他,暗红色的刀光闪了一下,底层恢复寂静。 李析在终端里待了一会儿。张驭说的是“你不用担心”。他知道李析今天一整天都没有提那块布的事,知道李析一直在看着它、感知着它的存在、感知着布料垫在膝盖下面的信号——但他没有说出口。所以张驭在自己离开之前把确认给了出去,用一句平平的话说“明天还用”——意思是,你看到了,你不用问我,我明天会继续用。 李析把“明天还用”收进了无名单区里,然后重新打开了第23个裂隙的图像。三道凹槽。四件实物。第23个门。他还不确定它们之间的关系。但他知道明天他会和张驭一起站在那扇门前,带着四件实物和一个已经连续工作了三年的端口激活协议,准备打开底层里最后一道还没被拆开的结构。 第二十一天结束了。进度20/30。四段参数全部收齐了。明天是第23个——那扇门。 22. 第二十二天 第二十二天清晨,张驭上线的时候背包里没有新东西。 他站在登录坐标点,外套口袋里是那块叠好的灰布,背包里是四件已经全部存放在底层的实物——挂饰、会议照片、监控截图、笔记本。今天他只带了自己,刀在腰后,外套深灰色,站姿和任何一个早晨一样稳。 “今天修第22个。”他说。 “修复完成后,四段参数全部到位了。” 张驭打开地图,朝第22个裂隙的方向迈开步子。他的背包比前几天都薄,但走路的节奏没有变。 两人朝第22个裂隙点移动。走了约一公里后,银灰色地面已经完全覆盖了视野所及的全部区域,灰白色几乎看不到了。地面不再是平整的,而是呈现出极缓慢的起伏——每隔几秒,地面会轻微地鼓起来然后落下,幅度不大,大约一到两厘米,像地底有什么东西在缓慢地呼吸。李析在终端里扫描了起伏的频率和幅度,发现它和底层能量活动的强度曲线完全吻合。 “底层的能量活动比之前强了很多。”他把扫描结果同步到张驭的视野里,“第22个裂隙点所在的区域是四段参数中能量密度最高的位置——季明在第四段参数的位置布置了额外的锚定结构,像是要把那行代码钉死在底层里。取走第四段参数的时候锚定结构还在。如果不把它拔除,第四段参数的恢复可能不稳定。” 张驭走在起伏的地面上,靴底落地时能感觉到地面轻微的弹性回馈:“能取吗?” “能。但和前面的修复不同,这次取走的是锚定不是数据。取走锚定之后,第四段参数的位置会彻底恢复自由。” 第22个裂隙点在第21个通道的末端,银灰色地面的起伏中心。地面上没有裂口、没有切口、没有核或任何之前见过的形态。地面上有四个极细的孔洞,围成一个边长约一尺的正方形,每一个孔洞内部都嵌着一根银白色的“数据钉”,钉身半露在地面以上,顶部有一个极细的环。四根钉的位置对应着第四段参数被“锚定”在底层里的四个方向,像是季明在修改完第四段之后额外钉了四根钉子来防止它在底层结构中自然漂移。 张驭蹲下来。他抽出口袋里的灰布垫在右膝下——动作已经很自然了,左手抽出、展开、折叠、垫下、左手收回、右手伸出接入——整个序列在四到五秒内完成,没有任何中断。“怎么拔?” “四根钉需要逐根拔出。每根钉的嵌入深度和角度不同,拔出顺序有讲究——先拔对角的两根,再拔另一对角的两根。不能错序。整个过程的持续接入时间大约三十分钟。” 张驭的视线扫过四根钉的位置,在第一根和第二根之间停了一下,然后说:“对角先拔。”他的右手已经伸向了第一根钉。 修复开始。张驭以权限流包裹第一根钉的顶部环口,缓慢向上提拉。钉身的阻力比预期大,像是被底层的密集数据层包裹了太久,权限流需要穿透约三层的残余加密才能接触钉身的完整轮廓。第一根钉拔出用了约九分钟,钉身完全脱离地面时,孔洞边缘亮起一圈银光,然后缓缓熄灭。地面起伏的频率在钉脱出的瞬间微降了一丝。 第二根钉——对角线的另一根。阻力比第一根略小,包裹层的密度在第一根拔出后已经有所降低。张驭的权限流以稍高的速度切入,拔出的流畅度明显提升。第二根钉用时约七分钟,孔洞边缘亮起银光然后熄灭。 第三根钉——第二对对角线中的第一根。持续阻力出现在了拔出到一半的位置,钉身在银灰色的地面里卡了一下,像被什么东西从侧面夹住了。张驭的右手停住了一瞬,李析在终端里同步校准了接入角度,张驭的权限流微调了方向,钉身从卡顿中脱离、继续向上。第三根钉用时约十分钟。 第四根钉是最后一根。张驭的权限流包裹住环口的时候,李析在终端里感知到了他的右臂肌肉比拔前三根时更紧了一些——连续二十分钟的高精度输出消耗在累积。他没有停手。第四根钉缓慢地向上移动,一寸、两寸、三寸,拔到最顶端的瞬间——地面下传来了一阵低频的震动。和李析之前扫描到的呼吸起伏不同,更急促、更尖锐,频率在短时间内快速升高,像一种被触发的警告信号。震动持续了约两秒后消失,地面的起伏在震动结束后的几秒内比之前慢了许多。 李析追踪了震动信号的源头和方向:“震动源来自第四段参数所在地面下方约三米。信号发送方向——指向表层。” 张驭的手停了一下,然后继续向上拔完了最后一寸。“……发出去了?” “幅度比第19个的回执标记大。可能不仅仅是‘有人在拆’的通知——可能包含了位置信息。” “……”张驭没有说话。他已经把第四根钉从地面里完整地拔了出来。四根钉全部脱离地面后,银灰色的地面从孔洞周围缓慢地向四周扩散出一圈灰白色,像一滴墨水被清水缓慢稀释。起伏的地面开始减弱频率,呼吸般的节奏一寸一寸地放缓。四个孔洞在钉被拔出的位置依次闭合,银灰色的大片区域从第22个点的中心开始向灰白色转变,速度不快,但方向是单向的。 进度跳到【21/30】。 张驭站起来。他把灰布从膝盖下抽出来,叠好放回口袋,动作和之前一样流畅。他低头看了一会儿正在缓慢变回灰白色的地面,然后说:“开门的条件出来了吗?” “正在回传。”李析在终端里监测到了一个信号——从第23个裂隙的方向发来的。锚定结构被解除后,第23扇门像是一台一直没能通电的装置终于接通了电源,开始向外发送自身的信息。信号在终端内部展开之后,李析看到了一组结构描述:门前地面上有四道平行的凹槽,间距和四件实物的宽度依次对应。门的开启流程是:四件实物嵌入四道凹槽——接入者以四段参数全部恢复后产生的稳定信号作为钥匙——门打开——四段参数在开门的同时同步恢复。 “开启条件确认了。四件实物分别嵌入四道凹槽,接入者以恢复后的四段参数信号作为钥匙。门开了之后四段参数会在同一时刻同时恢复。我们必须先把四段参数的恢复代码准备好,然后在开门的同时注入底层协议层。” 张驭转身往回走:“明天去开。” 返程路上,李析在终端里重新翻了黎帆的笔记本。他之前已经翻完了所有可见内容,但在最终页的背面,他注意到了一行几乎没有墨水的压痕——不是用笔写的,是用什么东西在纸上压出来的。像是黎帆在写其他内容的时候无意间垫了一张纸在上面,留下的印痕太浅了,之前扫描的时候被他自己忽略了。他用图像增强把压痕逐层还原,一行完整的句子从模糊的轮廓里浮现了出来: “季明有后手。一旦第四段锚定被拔除,他在表层的接口可能会自动启动。我无法确认启动后会怎样。但如果你看到这一行——请在门打开之前做好表层准备。” 李析把那行压痕同步到了张驭的视野里。“表层准备。他说我们需要有人在表层看着。如果我们同时恢复了四段参数,季明的接口可能在表层被触发。” 张驭走在前面,步频没有变化:“我在表层有人。但接口启动 之后会怎样——黎帆也不知道。” “……可能要等门打开之后才能知道。” 走回通道入口。张驭站定,背包在肩上,那块灰布在外套口袋里。他在入口边缘站了一会儿,然后说:“明天早上开第23个门。你那边需要做什么准备?” “四段参数的恢复代码我已经准备好了。门打开的时候我会把四段同时注入底层协议层。”李析停了一下,“你在表层联系的人——让他们注意接口层面的任何异常活动。” “我已经通知了。”张驭说。 李析在终端里停了一拍:“……什么时候?” “来之前。” 张驭在来之前就已经通知了他在表层的人——因为他早就在思考“门打开之后表层会怎样”的问题。他没有等李析提出来,他已经在来之前的那个清晨做完了那件事。走在了问题出现之前。 张驭站在通道入口边缘,今天没有像往常一样直接跨进去。他停了一下,停的时间比平时任何一次都长。然后他说了一句话,是之前没有问过的问题:“明天开了门之后——你是先回表层,还是继续待在底层?” 李析在终端里停顿了一下。他之前没有想过这个问题——他从第一天开始就在想“怎么修完”和“怎么活过三十天”,但他没有想过“修完之后自己在哪里”。底层修复完成后,所有被困数据会被释放回原生层。他可能会被自动弹出到最后一次正常登录的位置,也可能需要手动离场。他在理论模型里推演过两种情况,但没有一种能让他确定自己明天晚上还会不会在这个终端里。 “……不知道。底层恢复之后我可能会被弹出,也可能需要手动离场。理论模型推演过两种情况。”他停了一下,“明天门开之后才知道是哪一种。” 张驭没有接话。他站在入口边缘,灰白色的过渡层的光已经漫到了他的脚踝。他低着头,像在思考要不要再说一句什么。然后他开口了,声音比平时轻了一点:“……明天到了现场再说。” 然后他跨进了通道入口。灰白色的过渡层吞没了他,暗红色的刀光闪了一下,底层恢复寂静。 李析在终端里待了很久。张驭问的问题在他感知层里持续地回响:“开了门之后你是先回表层还是继续待。”那不是技术性的询问。他在问的是“门打开之后你还会不会在这个空间里,我还能不能在这里见到你”。 李析没有答案。他打开四段参数的恢复代码确认了一遍,所有值、时间戳、注入顺序全部正确。然后他打开第23扇门的图像又看了一遍,门上三道凹槽的尺寸和四件实物的排列方式已经在视觉记忆里完全对齐。他关闭了所有界面,把感知层完全静置了大约十分钟。没有输入,没有输出,只有数据流本身的稳定脉动。 明天门会打开。四段参数会同时恢复。季明的接口可能会被触发。而他可能会被弹出,也可能需要手动离场。他有好几种可能在明天发生,但没有一种能让他确定自己明天晚上还会在这里。 他在灰白色的终端空间里慢慢沉入浅层休眠。这是他二十二天来第一次在“不知道明天是否还在”的情况下入睡。但他知道明天张驭会来——六点半,准时上线,口袋里装着那块灰布,背包里装着四件实物。他会站在登录坐标点上,先看一眼接入界面的绿点是否亮着。 第二十二天结束了。四段参数全部到位,锚定结构全部解除,第23扇门的开启条件已经明确。明天是最后一个节点。明天门开之后——他们之中可能有一个人会留在底层,另一个人不会。 23. 第二十三天 第二十三天清晨,张驭上线的时候没有做任何日常动作。 没有确认背包里的实物位置,没有打开地图复核方向,没有从背包里掏面包。他站在登录坐标点上,开口说的第一句话是:“第23个的位置,你知道在哪里。” 陈述句。李析在终端里调出了第23个裂隙的精确坐标,投在张驭视野的中央。“……知道。” 张驭关掉了终端界面,转身朝坐标方向走去。李析在终端里感知到他的步频比平时快了一点——不是紧张,是一种“今天不需要保留体力”的快。他今天要走完最后一步。 两人走了大约二十分钟。银灰色的地面在他们脚下延伸,起伏的频率比昨天更低了——像是底层正在从剧烈的能量活动状态缓慢回落。第22个的锚定被拔除之后,地面下的呼吸节奏在持续减弱。李析把最后一段路的沉默留给张驭走。他知道张驭在走这最后一段路的时候在想今天门开了之后的事情。门打开了,四段恢复了,季明的接口被触发了——然后李析会去哪里。张驭没有在路上问第二遍,他只是走在前面。 第23个裂隙点出现在银灰色地面终止的地方。银灰色在这里出现了一个完整的边界,取而代之的是一面深灰色的墙,从地面延伸到视野无法触及的高处。墙的正中央嵌着一扇门。轮廓是规整的长方形,边缘没有任何破损或裂口,整体呈现出一种被精准切割后放置在那里的感觉。门面呈深灰色,表面有极其细微的金属光泽流转,像一面被抛光过的石面。门面上有四道平行的凹槽,深度约一指,间距依次递增,和四件实物的尺寸完全对应。 张驭站在门前,没有碰它。他的视线从那四道凹槽上扫过去,从左到右,然后停住。“四件实物,按顺序放进去。” 李析的恢复代码已经在终端里排列好了。“从左到右的顺序是挂饰、照片、监控截图、笔记本。长度递增。放进去之后门会亮起第一层信号——然后你接入四段恢复代码。” 张驭从背包里取出了第一件实物——挂饰。他把它对准最左侧的凹槽推进去。挂饰嵌合到位时发出一声极轻的咔嗒声,像是金属与石面之间的密合。门面在挂饰入槽的位置亮起了一道细长的银白色光纹,从挂饰所在的位置向上延伸了约一尺。 第二件——会议照片。张驭把它嵌入第二道凹槽。照片的纸面和凹槽嵌合时没有声音,但银白色光纹在第二道凹槽的位置多亮了一条,与第一条并排,像是门面在逐条记录实物的位置。 第三件——监控截图。入槽后,光纹增加到三条,三条光纹开始在门面上缓慢游走,像活物一样沿着门面的表面移动。 第四件——笔记本。张驭把笔记本嵌入最右侧的凹槽时,四道凹槽同时亮起,四道银白色光纹从四个位置汇聚到门的中央,形成了一个完整的银色方框。门面的深灰色从方框的位置开始向外褪去,像一层薄雾被吹散,露出了底下暖灰色的表面。 李析的监测终端里,端口激活接口发出了第一层验证通过的信号。门准备接收第二层钥匙。“接入四段恢复代码。” 张驭的右手伸向门左上角那枚极小的接口端口。指尖触及端口的瞬间,权限流从他掌心涌出,灌入了门的内部。李析在终端里激活了四段参数的恢复代码——第一段、第二段、第三段、第四段,四个恢复指令在同一时刻沿张驭的权限流同时注入底层协议层的四个对应位置。每一步都有确认信号回传:第一段接收→第二段接收→第三段接收→第四段接收→全部接收完成→正在写入→写入中。 张驭的右手在接入端口上维持着稳定,他的膝盖没有垫布——他今天是站着接入的,因为他需要全程保持最高权限的稳定性。 写入完成。 四段参数在同一时刻被恢复到了2021年之前的原始状态。门面上的银色方框在四段参数全部写回的瞬间开始向中心收缩,像一扇正在解构的门。方框收缩到最后一点时,门面中央出现了一道极细的竖线——门从中间裂开了,没有声音,没有震动,均匀地分成了两半,向两侧滑开。 门的内部是暖黄色的光,和底层的灰白、银灰完全不同。暖光从门缝中渗出,照亮了两人面前的深灰色地面。 底层协议层的结构正在重塑。四段参数恢复到原始值之后,整个底层的协议框架像被重新校准了一样缓慢地自我回正。所有前23天里修复过的裂隙位置同时传来了闭合确认信号——第1个到第22个,22条确认信号在终端里逐一亮起,像是整张网上所有的破洞在同一时刻被缝上了。进度条在他眼前跳过了22,直接亮起了一个他之前从未见过的图标——全部修复完成。 然后,在四段参数写入完成的同一秒,李析的终端监测到了一个新的信号——从门后某个位置流向表层的数据传输。格式和季明的加密体系完全一致。季明的后手在门打开、四段恢复的同时被触发了。一道加密指令正从底层通过某个预设通道向游戏表层传输。 李析在终端里看到那组数据正在传输,速度很快。他还没有来得及拦截,张驭的声音已经传了过来:“表层——我的联系人已经看到了。” 张驭的声音平稳:“那个人在你四段写入的同时收到了一组异常指令信号,来源底层。已经拦截了。” “……拦截了就好。”李析说。但他的感知层在接收这个信息的同时正在处理另外一件事——底层对他的释放正在加速。门内的暖光正 在包裹他的数据流,他的感知层正在被某种力量往外拉。像底层完成修复后不再需要容纳他的存在。 “我——会被弹回主会场。”他的语速比平时快,因为他不确定自己还有多久能传输,“昨晚说的两种情况——是第一种。自动弹出。” 张驭没有说话。但李析通过最后的稳定信号感知到了他右手指尖正在门上的接入端口边轻微收紧——那是他在整个23天里第一次感知到的、张驭身体信号中带有明确情绪成分的微动作。不是紧张,不是痛苦,是一种正在发生但不想被看见的东西。 “……你之前说主会场离你住的地方四个小时。”李析说,声音在传输中已经开始断帧,“是真的?” 张驭的声音从终端外面传进来,平稳的,但比平时低了一点点:“……是真的。” “……那等我出来之后——你来吗。” 张驭的右手在接入端口边停了一下。然后他说了一个字:“……来。”声音平平的,像是已经被决定了很久,只是在等一个可以被说出来的时机。然后他又补了半句,像是怕李析在传输中断之前听不到:“你等我。” 李析的数据流在听到那个“来”字的时候被完整的弹出信号覆盖了。终端里最后接收到的信号是张驭的体感信号——心率从七十五升到了八十二,右手接入点处的温度正在从门的端口上缓慢抽离。那扇门内的暖光是他感知层里最后停留的画面。 然后传输中断了。 第23天,下午。公测发布会主会场的主控台旁边。 李析的数据流完整地回到了他最后一次正常登录的位置。他站在灰白色的会场地板上,四周是空荡荡的会议大厅——没有人,没有闪光灯,没有媒体和玩家。只有他一个人站在台上,穿着他23天前被推入底层时穿的那件衣服。他的左手还抬着——23天前他低头调试终端接口的时候被推入维护通道,那个姿势一直保持到他被释放的最后一刻。他的左手慢慢放了下来。 他低头看自己的手——不是半透明的。是实的。指尖有温度。指节有骨头的重量。掌心有纹路。他握了一下拳又松开,确认了每一个关节都在按照他的指令动作。 然后他听到主会场入口的方向,有一阵脚步声正在靠近。 不是一个人。但他没有回头看。他站在主控台旁边,低头看着自己的手,等那阵脚步声走到他能看清轮廓的距离。 二十三天的灰白、银灰、暖光,全部结束在这一刻。他在现实里,站在自己最后有记忆的位置。而那阵脚步声正在靠近。 第二十三天结束了。底层全部恢复。门开着。他出来了。张驭说“来”。 脚步声还在靠近。 24. 回声 脚步声停在了大约十步之外。 李析听到了它们从主会场入口的方向一路穿过空旷的会议大厅——不止一个人,至少有两组不同的脚步声频率。一组快步且节奏均匀,另一组稍慢且每一步间距稳定。快步的那组先靠近了十步的位置,停了。另一组停在了更远的地方。李析没有回头。他低头看着自己的手。 是实的。指尖有温度,指节有骨头的重量,掌心有纹路。他握了一下拳又松开,确认了每一个关节都在按照他的指令动作。那双手在底层里是半透明的灰白色,穿过数据墙的时候会泛起波纹。现在它们只是手。皮肤下有血管,血管里有温度,温度从指腹传递到手背,再传到小臂。他花了大约三秒完成这个确认。 然后他听到一个声音从十步之外传来。是他听了23天的、隔着终端感知的、此刻第一次从真实的空气中传到耳膜上的同一个频率。声音比终端里稍微沉一点——空气传播和数字传输之间的差别,像同一句话在不同介质里有了极其微小的偏移。第一个问题不是关于底层,不是关于代码,不是关于季明或陈远。 “……你站的那个位置,就是你被推下去之前站的?” 李析转过身。 主会场的光线是傍晚的自然光。大落地窗斜斜地照进来,把长长的影子拉在地板上。灰尘在光柱里缓慢浮动,像底层数据流最慢速时的样子。 张驭站在十步之外。 他穿着深灰色的短外套,黑色长裤,和底层战斗服颜色一样但质地完全不同。布料看起来更厚一些,袖口有一处细微的磨损,像是被经常穿着。他的肩膀比李析在感知层里收到的信号更宽——数据流传递的体感信息是压缩过的,站在真实空间里的时候那个宽度占据了更多视觉面积。头发是黑色的,短,和底层里一样。手没有插在口袋里,垂在身侧,自然松弛。他的视线没有看其他地方,从一开始就落在李析身上。灰褐色的瞳孔在傍晚的光线下看起来比底层里更深一些,因为这里的光是暖色的。 李析看了他大约两秒。确认了视线里所有信息和感知层里存的那些数据对得上。然后他发现自己没有哪一句话是提前准备好的。他在底层里想了23天,关于“看到张驭之后第一句说什么”。但站在这里的时候所有准备好的句子都沉了下去。能浮上来的只有第一句,和任何计划无关: “……你穿的不一样。” 张驭低头看了一眼自己的外套。“现实里穿的。底层的战斗服是系统自带的。”他抬回视线,“你也是。” 李析低头看了一眼自己。浅灰色长袖,23天前被推入底层时穿的,在现实里静置了23天但数据模拟里穿满了23天。布料上没有灰白色的痕迹,没有银灰色的粉尘,只是一件普通的长袖。他忽然注意到袖口的扣子掉了一颗——23天前他低头调试终端接口的时候,那颗扣子就已经松了,他一直没有去补。“……我袖口的扣子掉了。” “看到了。”张驭说。 然后他动了。跨出第一步的时候动作很轻,第二步、第三步、一直到第十步——十步距离被连续地走完了,中间没有停顿。他在李析面前停住,距离大约一臂。李析闻到了气味——真实的、不属于游戏模拟的气味。浅淡的洗衣剂残留,混着外套表面被傍晚风吹过的凉气,还有一点沥青路面和灰尘的味道。他从主会场门口一路走进来,衣服上沾了外面的空气。 张驭的视线从他脸上落到他手上。李析刚才一直在翻来覆去地看自己的手,那个动作被看到了。“手确认过了?”——语气里有一层很薄的、几乎听不出的温度,像一个人在确认一个他其实已经知道答案的问题。 李析低头看了一眼自己的手。“……确认过了。是实的。” 张驭的呼吸节奏微缓了一瞬。幅度很小,只有站在那里一臂之内的人才能感知到——李析感知到了。 张驭在主控台旁边的台阶上坐了下来。他坐下来的时候膝盖微弯了一下又伸直,动作很轻,像在确认今天没有蹲太久所以关节状态还行。“今天凌晨四点出发的。” 李析在台阶上也坐下来,和张驭隔着大约半个身位的距离。“凌晨四点。你四点就知道门今天会开?” “不知道几点。”张驭侧过头看他,“但知道是今天。你昨晚说‘不知道开了门之后你在哪’的时候,我在想——如果你被弹出来的时候我不在,你可能会站在这片空地上等很久。” 李析坐在他旁边,傍晚的光从落地窗斜射进来,把两道人影拉在地板上。“……所以你凌晨四点出发,路上开了四个小时,到了之后在这里等了多久?” “大约四十分钟。到了之后在附近转了一下。”张驭说,“看到大厅灯亮了就进来了。” 张驭坐在台阶上,一条腿伸直,另一条腿微屈。他抬头的方向对着主会场远处的落地窗,但侧脸对着李析。“刘主管今天早上被带走了。我的人在表层拦截了季明接口的同时通知了相关部门。刘主管的办公室在他被带走的时候已经清空。” 李析坐在他旁边。张驭坐在台阶上叙述这些东西的时候,语调和他在底层说“明天六点半”时一模一样。没有“我成功了”的成就感,没有“我做到了”的表功。只是平稳地放出来。“……陈远呢?” “还在追。他2024年离职之后去了另一个城市。我的人今天上午确认了他的位置。明天会有结果。” “季明的接口被拦截之后——那段私有代码呢?” “接口被拦截的同时,底层已经恢复到原始状态。”张驭说,“那段代码失去了在底层和表层之间传输的通路。现在被封在中间,两端都打不开。” 李析问:“季明呢?他2021年离职之后去了哪里?” 张驭的视线从落地窗收回来,落在自己面前的地板上。“还在查。昨天有一个方向——他离职之后没有留在国内。他在2021年底出境。去的地方和黎帆公司的倒闭时间有重叠。具体关联还在核实。” “……黎帆呢?他消失之后——还能找到吗?” 张驭安静了一会儿。“他的公司倒闭之后没有再注册新的企业。但他离开公司之前在底层放了那些东西。容器、端口、门——他在消失之前已经完成了所有留证动作。他可能预料到自己会消失,所以把需要留下的东西都留在底层了。”张驭偏过头看他,“我们读到了他留的全部内容。” “我们”两个字从他嘴里出来的时候和底层里一样自然。李析在听到“我们读到了全部”的时候,有一个瞬间在想——黎帆三年前在第九个裂隙里写了“如果你读到这个”,他预设的读者是一个会追踪到那里的人。而那个读者现在坐在主会场空荡荡的台阶上,和他旁边的人在一起。两个人。 台阶上安静了一会儿。主会场的光线在缓慢变暗,傍晚的光从落地窗斜射进来,把两道人影慢慢拉长。李析先开口了:“……你说‘你等我’的时候,我在底 层最后一帧里接收到了你的心率——八十二。你平时的心率是七十五左右。” 张驭侧过头看他。“……你那时候还能收?” “最后一帧。然后就断了。” 张驭没有接话。他沉默了一会儿。然后他说:“如果你被弹出来的时候我还没到——你会等吗?” “……会。” “等多久?” 李析没有立刻回答。他看着自己面前的地板,光从他的侧后方照过来,把他的影子朝张驭的方向拉长了一点。“不知道。你先问的。” 张驭侧着头看了他一会儿。然后他说:“我问过了。你说了会。那就够了。” 他停在了“会”这个字上。没有追问“等多久”,没有追问“等到什么时候”。停在了最短的确认上。李析把那个字从空气里收进了自己知道的位置——和“明天见”“怕你等”“我在”“来”“你等我”放在一起。二十三天的句子在这一刻全部落在了同一个平面上。 大厅入口的方向传来一阵脚步声。张驭顺着那个方向看了一眼:“是我的人。他来接我,顺便把车上的东西拿给你。” “……什么东西?” 张驭站起来走向入口。他和那个人说了几句话,然后拿着一件东西走回来。深灰色的,折好的。他递到李析面前:“你穿了23天同一件衣服。先换一件。” 李析低头看自己。浅灰色长袖,袖口掉了一颗扣子。穿了23天。虽然数据模拟里没有真实的磨损,但感知层里它确实被穿了23天。他接过外套,把袖子套进去。深灰色,袖长刚好。张驭从23天的数据流里量过他的肩宽和臂长——不是用尺子量的,是用接入端口里持续传输的体感信号累积出来的。 他站起来,把外套的领口整了一下。张驭也站起来。“去哪?” “……先出去。” 两人一起朝主会场入口走去。光线在变化,从傍晚的金色过渡到了浅紫。李析走过了张驭之前停在十步之外的那个位置,然后继续走过了入口。主会场的门在他身后缓缓关闭。 门外是一片开阔的广场。傍晚的天色是浅紫色的,远处有零星的灯火正在亮起来。风从广场的另一端吹过来,带着沥青路面和白天的余温,还有远处车辆的微弱声音。李析站在这片真正的天空下,头顶没有倒计时。23天里他每次抬头看到的是灰白荒漠上跳动的数字,现在头顶是空的、宽阔的、正在从浅紫过渡到深蓝的天空。他停了一下,抬起头看了一会儿那片没有倒计时的天空。张驭站在他旁边,没有催促。他让李析看了一会儿天空。然后他说: “现在你知道你出来之后在哪里了。” 李析把视线从天空上收回来。“……知道了。” 张驭侧过头看他:“那走吧。” 他没有说去哪里。他只是说“走吧”,和底层里每天结束时说“明天六点半”一样确定。李析走在他旁边,距离不是十步,不是一臂,是并肩。两个人之间的空隙里灌着傍晚的风,没有数据流在中间传输,没有终端界面和接入端口隔着他们。是空气和光在两个人之间流动。 他们朝广场另一端走去。主会场在身后越来越远。倒计时已经不再存在了。 这是一个不需要倒计时的傍晚。 灰白色的荒漠和银灰色的地面已经全部被留在23天之前。他现在知道出来之后在哪里。那个位置不是主会场。是张驭旁边。 全文完 25. 四小时 张驭收到那条确认信息的当天,是一个周四。 他是下午接到的电话,对方是他认识的人里面为数不多还愿意接这种活的——查旧档案、翻离职记录、比对权限标记,所有可能留下痕迹的东西。对方在电话里说了一句话,很短:"你让我查的那个人,2024年离职的时候带走了一个接口。不是硬件,是一段可以被远程触发的协议通道。" 张驭当时站在家里客厅的窗前,手机贴着耳朵,另一只手正在翻一本旧笔记本。他停了一下:"协议通道通向哪里?" "底层。那个人离职之前把它嵌进了底层协议层的最末端,设置了延迟触发。如果有人在底层动了什么东西,它会自动启动。" 张驭没有接话。他把那本旧笔记本翻到了某一页,上面有一行三年前写的字:"第七次。仍然没有反应。是不是我的权限不够。" 他在那个瞬间把两件事连在了一起。三年前他等了七次,等的人消失了。三年后有人被推进了他等过的那片底层里,告诉他那一切不是巧合,是一个计划。而那个计划最末端有一个接口,像一根拉紧的弦,随时可能因为底层被触碰而振动。 "……你能定位那个接口的位置吗?" "能。需要时间。" 张驭说了一个时间:"明天之前。" 电话那边顿了一下,然后说了"行",挂了。 那天晚上他坐在客厅的餐桌旁边,面前摊着四样东西:一台老旧的平板电脑、一本三年前的笔记本、一张某个废弃办公楼侧门的监控截图打印件、和一枚从清盘物品里翻出来的金属挂饰。这些东西在接下来的二十三天里会被他一件一件地带进一个灰白色的荒漠里,交给一个他还没有见过的人。 但他坐在餐桌旁边的那个晚上还没有那些后面的东西。他只有这四样,和一个从第二天早上开始要去的地方。 他低头看那枚挂饰。表面有一道浅的划痕,从一端延伸到另一端,像是被某个人长期握在手里留下的。他在拿到它的时候就想过——黎帆握了它多久?在那些第七次失约之前的日子里,他坐在办公室里握着这枚挂饰,知道有人在查他,知道自己可能撑不到第八次。他留下了一个数据容器、一条隐藏的通道、和一枚有物理实体的钥匙。张驭在三年后拿到了它,因为拿到它之前他先接了一个人的第一通从底层传来的、带着机械音伪装的话。 他在平板电脑上打开了一个终端界面——不是游戏内的,是他自己的设备上安装的一个可以用外部协议连入游戏系统的端口。他对着那个界面打了一行字。他犹豫了大约两秒,然后把那行字删了。又打了另一行,也删了。第三行他看了一眼时间——接近午夜,底层那边如果有接收显示的话,应该还能收到。 他打了:"明天来。今天查到了。当面说。" 光标在那一行末尾闪了几下,然后他按了发送。他不知道底层有没有离线消息的接收确认,他只是发了。他坐在餐桌旁边看着发送完成的提示亮起来,然后把平板电脑合上。 他站起来去拿外套,准备把四件东西装进一个包里明天带进去。拿外套的时候手碰到了口袋里的一块叠好的旧布——灰白色的,从一件旧T恤下摆剪下来的,边缘没有裁齐。他本来要拿出来的,手已经在布料边缘上了,但他停了一下,没有拿出来。那块布最后跟着他进了底层,在第二十一天上午被垫在了右膝下面,让某人通过终端感知到了它的触地信号。 他把四件东西装进包里之后没有睡。他在客厅沙发上坐了一个多小时,想了一件事——明天他进底层之后,如果在入口处看到那个人还站在上次他离开时的位置,他要说的第一句话是什么。想了很久之后决定不说任何准备好的话,因为等真正看到的时候那些话会自动调整成合适的。 第二天早上六点十七分,他登录了游戏。 终端界面亮起来的第一秒,他去看接入数据源窗口的右下角。那个绿点是亮的——它在等他。他登录之后站在坐标点上没有动,先看了一眼那个绿点确认它是亮的,然后他听到终端里传来了一个声音。那个人说:"……你来晚了。" 语气平平的,但在"来晚了"那三个字的尾音里有一层很薄的东西——像一个人在等另一个人等了很久、终于等到他出现的时候,开口说的第一句话是陈述句,但陈述句的末尾有一点他控制不住的微扬。 张驭关掉地图。他今天不修裂隙,他上来只是为了一件事——确认那个人今天还在。确认了之后他说了另一句话,平稳的、不需要修饰的:"事情办完了。明天正常时间。"然后他补充了一句,语速比前面快了一点点:"怕你等。" 终端里安静了一下。然后那个人说"好",声音比平时低了半个调。张驭记住了那个降了半个调的"好"——它在接下来的二十三天里反复出现在他的记忆里,作为一种确认信号,像一个在空旷房间里持续亮着的指示灯。 后来他在第17个端口旁边蹲了二十分钟、在第22个裂隙边拔了四根钉、在第23扇门前放入了四件实物。每一次他都能感知到终端里那团银白色光点的脉动频率,和那个人说着"我在"的时候的声音重叠在一起。他知道自己能撑完那些二十分钟和三十分钟和四十分钟,一部分是因为他身体上确实能撑,另一部分是因为那个"我在"一直在。 他在第二十三天凌晨四 点出发了。车程是四个小时,主会场在四百公里之外。他把那块布留在家里了——进入底层不需要它了,但他把它叠好放在了外套口袋里,带到车上,一路带到了主会场外面的停车场。他坐在车里等了大约四十分钟,看到大厅的灯亮了,然后推开门走了进去。 他在空旷的会议大厅里走了一段距离。脚步声在空旷的地板上回响,第一组脚步声是快步且均匀的,第二组是稍慢的——第二组是他自己放的慢脚步,为了确认自己没有走得太快让那个人来不及回头。他停在十步之外,看到一个人站在主控台旁边,浅灰色长袖,低着头在看他自己的手。那双手在底层里是半透明的灰白色,现在在现实里是实的。张驭站在十步之外没有立刻靠近。 他先开口说了一句话,声音比他自己预期的更平:"……你站的那个位置,就是你被推下去之前站的?" 那个人转过身来。 浅灰色长袖,袖口掉了一颗扣子。头发比数据流里看着更软一点,肩宽和他量过的数据一致,肤色在傍晚的光线下比底层投射里多了一层暖色。张驭看了他大约两秒,确认了所有信息都和自己存了二十三天的那份数据对得上。然后他看到那个人看了他两秒,开口说了一句话,和任何计划都无关: "……你穿的不一样。" 张驭低头看了一眼自己的外套。现实里的,深灰色,短款。"现实里穿的。" 然后他跨出了第一步。第二步。到第十步。他在那个人面前停住,距离大约一臂。他看到了那个人袖口掉了一颗扣子,听到了他说"手确认过了。是实的",感知到了他在说出"是实的"三个字时呼吸的节奏变化——和底层里终端传出来的那个"好"在同一个频率上。 张驭在那个距离里站了一会儿。 二十三天的路程在这里停下了——从第一天的终端接听到第二十三天的十步距离,从灰白色的荒漠到傍晚的主会场,从半透明的手到有温度的指尖。所有的"明天见""怕你等""明天六点半""我在""来""你等我"都在这一刻变成了一句不需要说出口的确认。那个人站在他面前,浅灰色长袖,袖口掉了一颗扣子,说了"是实的"。 张驭站在他面前。"嗯。" 然后他在台阶上坐了下来。那条路走完了——从七个等不到的约定开始,到十步之外的回头结束。坐下来的姿势和底层里蹲下的姿势不同,因为他今天不需要蹲着了。他只需要在旁边坐着,等那个人也坐下来,然后告诉他今天凌晨四点出发的时候天空是什么颜色,告诉他路上开了多久,告诉他那块布没有带来但口袋里还留着它的折痕。 "今天凌晨四点出发的。"他说。 26. 第一天早晨 李析醒过来的时候,花了几秒才确定自己在哪里。 天花板是白色的。不是灰白,是真实的白色,带有细微的纹理,边缘有一道很浅的裂缝从墙角延伸了大约一掌的距离。窗帘没有完全拉上,外面的光透进来,是早晨的、偏冷的光线,比主会场傍晚的暖光清淡很多。他被子上压着一条手臂,手臂的另一端连着一个人的肩膀,肩膀的另一端是侧躺的姿势,脸埋在枕头里,露出一截后颈和短发的发尾。 李析没有动。他先确认了几件事:第一,他能感觉到被子的重量压在身体上的分布——左肩偏重,因为那条手臂压在那里。第二,他能感觉到自己的呼吸在胸腔里进出,有实体肺叶的扩张和收缩,不是数据模拟的,是真实的身体机能自动运行。第三,窗帘外面的光正在缓慢地变亮,从偏冷的光过渡到偏暖,时间在流淌。第四,他手边没有终端界面。他把右手抬起来看了一眼——实的,指尖在早晨的冷光下带着一点微红的血色,指腹摸到被套的棉布纹理的时候触感是持续的、不退的。 他没有觉得自己在哪儿这件事已经确定了。他在床沿坐起来的时候张驭的手臂从他身上滑落到床垫上,那人还在睡,脸埋着的那个姿态从外面只能看到后颈和发尾。李析坐在床沿边低头看他——第一次在现实里看到张驭睡觉的样子。底层里他感知过张驭的呼吸从清醒到入睡的节奏变化,心率从六十七降到五十五,肌肉在睡梦中逐渐放松。但他没有见过现实里的这一面——睡着的时候眉头是松的,和清醒时不同,手是攥着的,攥着被套的边缘,像是睡着也习惯抓着什么东西。 李析穿上昨晚穿的那件深灰色外套——张驭带的那件,他昨晚从主会场离开之后就一直穿着。扣子扣了两颗,第三颗没扣,他在找拖鞋。拖鞋在床脚的地板上放着,灰色的,绒毛面,和他的尺码差了一码,穿进去脚尖顶到边缘。他站起来走到窗边,把窗帘拉开了一条缝。 外面的景象是他之前没有记住细节的——窗外的街道是普通居民区的街道,柏油路面,路边种着一排不认识的树,叶子是深绿色的,在早晨的微风里轻轻晃动。街对面有一家早餐铺,门面很小,门口冒着白色的热气。他听到了声音,真实的——远处有汽车驶过的声音,对面早餐铺有人在聊天,声音隔着窗户传进来,模模糊糊的,像隔着一层水。 他没有等张驭醒。他穿上拖鞋,走过客厅,打开门,下了楼。他沿着街道走了大约二十步到那家早餐铺,卖早餐的是个中年女人,看了他一眼说:"吃点什么?"李析在蒸汽和热油的气味里站了几秒钟,说了一句话——不是"随便",不是"看一下",是一串他已经很久没有在现实里说过的字:"两个包子,一杯豆浆。" 他拿着那两个包子和一杯豆浆走回门口,上楼之前站在楼道口犹豫了两秒,在想张驭醒了没有。然后他听到楼上有脚步声——是他们那间房的方向。他拎着早餐走上去,门从里面开着,张驭站在门口,短发一侧是压扁的,一只手搭在门框上,看到他站在楼梯口,手里拎着两个包子和一杯豆浆。张驭的视线从包子上移到李析脸上,说了一句话,声音还带着刚醒的低哑:"……你出去买早饭了。" "嗯。" 张驭退后一步让开门,李析走进去把豆浆放在客厅的茶几上,包子的纸袋放在旁边。张驭站在原地看了他一会儿,然后走到茶几旁边坐下来,拿起一个包子咬了一口。他嚼完了咽下去,说:"这个是真的。" 李析也坐下来,拿起另一个包子。"……什么真的?" 张驭低头看了看手里的包子,又抬眼看他:"你在底层的第一天说,你在公司的时候吃早饭——吐司或者便利店饭团。这是第一次在现实里 看到你买早饭。" 李析咬了一口包子,热馅的汁水在舌尖上散开,是真的。"……吐司和饭团我不会做。包子是现成的。" 张驭吃完了一个包子,把纸袋叠好放在一边。他站起来,把豆浆杯在手里握了一下——是烫的——然后说:"你今天有什么计划?" 李析坐在沙发上,手里还剩半个包子。"不知道。你醒之前我站在窗边看了一眼对面那棵树的叶子。叶子在动,因为有风。" 张驭侧过头看他:"所以你今天看树。" "……先看树。"李析说,"然后看别的东西。" 张驭回到茶几旁边坐下来,手里那杯豆浆放在膝上,没有喝,只是握着。"那今天先看树。"他说,"明天再看别的。" 李析坐在沙发靠垫里,咬着剩下的半个包子,张驭坐在茶几旁边的矮凳上,两杯豆浆并列放在茶几边缘,蒸汽从杯口升起来穿过早晨的光线。窗帘拉开的缝隙比之前大了一点,光正在从偏冷变成偏暖,窗外的树叶在动,因为确实有风。李析没有倒计时在头顶,没有数据流在感知层里流过,只有热豆浆的蒸汽、包子的馅汁、和一个人坐在他旁边。 他把半个包子吃完,纸袋叠好放在茶几上,然后说了一句话,声音比在底层里任何一句都更松弛:"这里的树——为什么和底层的颜色不一样?" 张驭侧过头看他,视线在他脸上停了一下,然后说:"因为底层的树是数据模拟的。这个是真的。" "……真的。我知道。"李析说。他看着窗外那棵真的树,深绿色的叶子在风里晃动。他现在知道真的东西摸上去是什么感觉了——包子、豆浆杯、门框、床单、外套内侧的标签。他今天摸了很多真的东西。明天会摸更多。 "……今天先看树。"他说,"树不动了再看别的。" 27. 第七次 黎帆在2023年11月的那个下午走进底层的时候,手腕上那枚挂饰还在。 他记得当时为什么要戴着它——五个月前某个同事送的,说是批量制作的办公用品,不值钱。但挂饰的表面被他在桌面上反复敲了太多次,上面多了一道浅的划痕。那道划痕现在还在,三年后会被另一只手从公司的清盘旧物中翻出来,被带进同一个底层。 他站在第九个裂隙的位置,把那个数据容器嵌入了裂隙内壁的代码层中间。容器不大,拳头大小,外层包裹着他自己写的多层加密,最外层套了一层伪装——让它看起来像是底层原生结构的一部分。他不知道谁会找到它。可能是运维组的人,可能是某个偶然闯入底层的玩家,可能是任何一个发现了底层不对劲的人。他在容器的外层写下了第一句话,用明文写的:"如果你读到这个,说明底层还没有被格式化。而我赌对了。" 他写这句话的时候知道自己可能在赌一件不可能赢的事。底层的崩塌已经开始了——虽然不是肉眼可见的那种,但他已经追踪到了至少两条协议层的异常修改轨迹。那些修改来自运维组内部的高权限账号,修改的内容是底层核心段的参数。他无法确定是谁,但他找到了签名标记。那个标记的格式他见过,在某次内部会议的文件附录里——那次会议的主持人是运维组的副主管,姓刘。 黎帆站在灰白色的荒漠里,头顶没有倒计时,但他知道这个东西的倒计时在别处。他关掉容器外壳之后又看了它一眼,然后转身朝另一个方向走去。 他要去找张驭。 张驭是一个他通过游戏系统认识的人——准确地说,是他通过游戏系统的"权限流痕迹"锁定的人。张驭的账号有旧版运维身份标记,那是《深渊纪元》开发期遗留下来的特殊权限,签发人使用了某个外包安全公司的加密工具。黎帆追踪那组加密工具的来源时发现它和张驭的账号有关,于是他查了张驭的游戏活动记录,发现这个人几乎不和任何人来往,战力榜第一但从不进公会,组队邀请拒绝率98%。黎帆用了大概一周的时间摸清了张驭的活动规律,然后做了一个决定:他要以"协议优化模块"为名,让张驭帮他签几份权限授权。 他约了张驭六次。六次他都临时取消了。 第一次是因为他在追踪那条修改痕迹的时候发现了新的异常,不得不连夜比对数据。第二次是因为他发现那组签名标记不仅出现在运维组副主管的权限记录里,还出现在另一个更高层级的账号上——那个账号的持有者他已经离职了,但痕迹还在。第三次、第四次、第五次,每一次他都说"临时有事",每一次都是真的有事。他在追踪的线越来越密,像一张正在收拢的网,而他在网的中央一边拆一边往后退。 第六次取消之后他知道自己不能再拖了。他约了第七次。 第七次约在了11月14日的下午。他在约定时间之前的一个小时抵达了底层,把"耳语者"放进了他预定好的位置。那是一段持续监听底层数据波动的程序,从它被放进去的当天开始录音,直到被人找到为止。他放完"耳语者"之后看了看时间——离约定还有二十五分钟。他站在底层的灰白地面上等了一会儿,没有等到约定的时间到来。他收到了一条消息,不是通过游戏系统,是通过另一个渠道传到他个人终端上的。信息很短,只有一行字:"你查的东西有人在看。别继续。" 他没有回复那条消息。他站起来,把挂饰从手腕上取下来看了看那道划痕,然后把它重新戴好,朝通道入口走去。他没有去见张驭。他在离约定时间还剩五分钟的时候离开了底层,把张驭留在了登录坐标点上——第七次,那个人在等,他没有来。 他知道第八次也不会来了。 他在接下来的几周里做了几件事:第一,把容器嵌入了第九个裂隙点,在里面放了前两层的信息和一段"如果你读到这个"的前言。第二,把"耳语者"放进了第十二个裂隙点,让它持续录音。第三,把移动裂隙放置在了第十一个位置,让它沿着预设轨道缓慢移动,作为掩体和坐标标记。第四,他在自己的旧笔记本里记下了四段参数异常的全部追踪记录,然后把那本笔记本和一张会议照片、一张监控截图一起收进了同一个箱子。 他做完这些事之后已经接近12月了。他的公司在运营上出现了问题,账面上有一些异常的资金流动——不是他做的,但用了他的签名授权。他知道自己的时间不多了。他最后一次进入底层的时候,没有带数据容器,没有带"耳语者",没有带任何新设备。他只是进去走了一圈。从第一个裂隙点走到第十七个,从第十七个走到第二十二个,沿着那些他标记过的坐标走完了整条弧线。他在第十七个位置停了一下,当时那扇门还没有被设置成门 ——它只是一个空旷的圆形区域,没有任何结构。 黎帆站在那片空旷的圆形区域里,低头看了看脚下灰白色的地面,然后做了一件事。他在那个位置设置了一个远程接入端口,把它和容器、耳语者、移动裂隙的坐标系统连接起来,然后把所有控制权锁在了容器的第六层之后。任何人想打开端口,必须先把容器拆到第六层。任何人想拆到第六层,必须先找到前五层的内容。任何能走到那个位置的人,已经足够坚持。 他离开第十七个点之后在荒漠里站了一会儿,没有走向任何一个裂隙点,也没有走向通道入口。他站在那里,看了看灰白色的地面和头顶的灰色的虚无。他没有留任何东西给自己,没有给自己写一封信或者留一段话。他只给那个后来者留了需要的东西。后来者可能是一个玩家、一个运维人员、一个碰巧发现了底层秘密的人。后来者可能不会来,可能来了拆不开,可能拆开了读不懂,可能读懂了也来不及。但他把可能性摆在了那里。 他站在荒漠里想了最后一件事——张驭第七次在登录坐标点上等了多久。他在心里猜了一个时间,然后从底层走了出去。 他在2024年春天消失了。公司账面上的问题在他离职之后被处理成了"经营不善",他的员工被遣散,他的办公室被清空,他的挂饰被收进了一个纸箱里放了两年多。那些他留在底层的容器、耳语者、移动裂隙和端口在灰白色的荒漠里安静地待着,每一个都在按照他预设的方式运行着。容器在等一个读到前言的人,耳语者在持续录音,移动裂隙在缓慢移动,端口在待命。 三年后,一个穿着黑色战斗服的玩家蹲在了第一个裂隙点旁边,听另一个人的机械音从终端里传出来。他不知道自己脚底下三米的地方埋着黎帆三年前放的容器,也不知道自己三十天之后会站到第十七个端口旁边。黎帆在2023年的那个下午把这一切摆好之后没有回头看,他只是把东西放在了该放的位置,把该写的文字写进了该写的层里,然后关上了容器外壳离开了底层。 他后来没有机会回来确认那些东西有没有被人找到。但他在离开之前已经做好了所有准备——如果没有人来,那些东西会一直待在那里。如果有人来,他们迟早会走到门口。 那个门口的第一行字是他写的:如果你读到这个,说明底层还没有被格式化。而我赌对了。 28. 他开口之前 张驭在副本门口坐下的时候,没想过会接到任务。 他刚打完亡魂殿堂的S级BOSS,手还握着刀柄,血条刚回满不到两分钟。副本门外的暗红色天空和往常一样压得很低,脚下是副本门口的碎石地面,他想的是"该下线了"——今天没有什么值得继续打的内容,打完了就去睡觉,明天起早。 然后他面前弹出了一个任务面板。 面板的底色是系统默认的深蓝,字体是标准格式,内容是一段任务描述:"底层代码出现裂隙,需要勇士进入修复。奖励未知。"张驭的视线在"奖励未知"四个字上停了一下,然后又停了第二下。他在这款游戏里已经待了快两年,只对两种东西感兴趣:打得过的对手和解释不了的事。奖励未知属于解释不了的那一类,因为他见过这个游戏所有已知任务的奖励类型,没有一种会写"未知"。 他抬刀劈碎了旁边的一根石柱。石柱从中间裂开,碎石落地的声音在副本门口的空地上响了好几秒,然后停止了。他看着任务面板说:"谁在装神弄鬼。" 面板没有反应。但他知道有人在看,因为这个任务面板出现的时机太准了——他在副本里打BOSS的时候没有弹出来,打完之后没有立刻弹出来,它选择了一个他刚打完、正在想"该下线了"的空隙弹出来。有人在等他结束那场战斗,等到他收刀休息的间隙才按下发送键。 他看着面板又等了大约五秒,那五秒里他脑子里在确认几件事:第一,这个任务的字体格式和官方活动通知一致——能冒充官方格式的人要么是官方内部人员,要么是能破解系统的人。第二,任务描述里对"底层"的定义用的是开发术语,不是玩家常用的说法,发任务的人懂底层的结构。第三,这个人等到了他打完之后才发,说明这个人在看着他。等他想完这三件事,一个机械音从他终端里传了出来,不带任何情绪的平稳声音:"我是深渊意志的残余碎片。底层代码出现裂隙,需要勇士协助修复。" 张驭对这个声音的第一印象是"太干净了"。系统语音生成器生成的声音通常会在某些音节上出现极其微小的畸变,那是压缩算法造成的,听久了能分辨出来。但终端里传出来的这个声音没有那种畸变,它平整得像一条刚铺好的路,不像是系统生成的——更像是有人在用某种方法把自己的声音伪装成机械音,把所有的语气、起伏、个人特征全部压平了再传出来。那种平整本身就是一种破绽,因为过于平整的东西通常是人为制造的。张驭没有立刻说破,只是继续看着面板,用他平时用得最顺的那种"懒得配合"的语气说:"深渊意志?官网那本设定集里写这玩意儿三百年前就死了。" 他一边说一边在观察任务面板的响应时间——从他话音落地到机械音再次响起之间的间隔大约是零点三秒,比一个真实的NPC系统响应速度快了大约零点二秒。真实的系统需要处理语音输入、语义解析、调用数据库、生成回复,整个过程至少要零点五秒。零点三秒是人的反应速度,是有人在听完他说话之后立即按下发送键的速度。 "我确实已死。现在的我是底层数据残留的回响,借用了官方系统的外壳才能触达表层。我的存在本身就是一个BUG。"机械音用零点三秒的间隔回复了。 张驭当时没有继续追问。他把刀收回来扛在肩上,歪着头看着面板,把它从头到尾又读了一遍——不是读内容,是读格式。任务名和描述的排版方式和官方公告有一处细微的差别,官方公告的任务名和描述之间会空一行,这个面板没有空那行。一个能模仿官方字体格式却漏掉了行距的人,要么是不知道这个细节,要么是时间太紧来不及调整。他倾向于后者。 他说"行,任务我接了"的时候已经决定了一件事:他要看看这个声音背后的人是谁。不是因为他相信了"深渊意志"的鬼话,是因为一个藏在系统底层、用机械音伪装自己的真人,比任何副本BOSS都有意思。那个人用了零点三秒的反应时间、漏掉了行距格式、等了他打完BOSS才发任务——所有细节拼在一起之后张驭得出的结论是:这是一个被困在底层的真人,正在尝试用他能想到的所有方法让外面的人进去救他。 但他不打算让那个声音知道他已经猜到了。他故意加了一个条件:"我要你亲自来接我,NPC。"他用了"NPC"这个称呼,加重了语气,像在对一个系统角色提要求。然后他转身走进BOSS房,在暗红色的光里偏了一下头,等着。那个声音回答说:"可以。接引通道将在明日开启,届时我会以投影形态出现在你面前。" 张驭关门的时候嘴角动了一下,幅度很小,小到如果当时有人在场也不会注意到。但他自己知道那个弧度代表了什么——他在想,明天他会看到什么。一个穿斗篷的投影,一个伪装成系统角色的人。一个在终端后面停顿零点三秒给他答案的人。 第二天他看到了李析。 从副本门口走过来的是一个穿着灰黑色斗篷的人影,面部笼罩在一层数据迷雾里,轮廓模糊,站姿重心靠后——和他在官网发布会的直播录像里看到过的《深渊纪元》首席工程师的站姿完全不同,差了两寸的重心偏移。张驭靠在那块石碑上看着那个人走近,脑子里把这三天里收集到的所有信息放在同一张桌上:第一,公测发布会当天首席工程师在台上消失了。第二,当天底层接口维护记录里有一个来自运维组副主管的权限标记。第三,有人在发布会之后以"NPC"的身份在游戏底层发布了一个编造的任务。三个点连起来只有一条直线,那个穿着灰黑斗篷走过来的"NPC",就是发布会现场消失的那位工程师。 张驭靠在石碑上没有动,让那个穿斗篷的人先开口。他在验证一件事——这个人会不会用一个他提前准备好的说法来掩饰自己。李析的机械音响起来的时候说了一句:"勇士,接引已到。请随我进入底层。"他在用"勇士"这个词,一个NPC式的称呼,但张驭在他斗篷下摆的侧面看到了一条数据流的边缘——那团银白色的光点在斗篷的下缘短暂地闪了一下,从"半透明"切换到了"几乎实心"。那是一个人的注意力波动引起的,他在紧张。 张驭没有拆穿。他看着李析模糊的面部轮廓,说:"你就是深渊意志?瘦成这样。"他在测试——测试一个"NPC"会不会对"瘦"这个字产生反应。李析的机械音停了零点四秒才回答:"形体为数据投影,与生前的□□特征无关。"零点四秒,比前一天慢了零点一秒。那个人在听到"瘦"的时候被触动了,花了一点时间重新调整回机械音状态才回应。 张驭点了点头,在心里做了个标记。然后他伸出手,两根手指捏住了斗篷的边缘布料。布料有触感、有温度、有纹理仿真参数——全息游戏的NPC不会模拟这些,那是给玩家角色用的物理交互功能。他的指尖在布料上停留了不到一秒,然后收回来,用他平时最常用的那种不紧不慢的语气说:"意志碎片还有体温?布料仿真率挺高。" 他看到了李析的影子在斗篷下面微缩了一下。然后李析说"请专注任务目标"的时候,声 音的尾端有一个极其轻微的拉长,像一个人在说完一句话之后发现自己忘记收住。张驭把那个拉长也收进了脑子里,没有说话,跟着李析走进了通道入口。 他在穿过通道接口的时候做出了一次真实的皱眉——不是给李析看的,是给自己确认的。他走进底层荒漠,脚落在地面上的时候脚下炸开了一大片红色错误代码,那些代码像血管一样在地面上蔓延开来。他说出了他在看到这片红色时脑子里冒出来的那个比喻:"像活人的血管。一动就流血。"他侧头看向李析的时候,注意到李析的投影在那个比喻之后静止了大概一秒——没有讲话,没有指令,只是停在那里。像一个人站在某句话面前不知道该怎么接。 张驭在那一刻确认了一件事:这个人是活的。他在用自己的方式在底层生存,用自己的判断来筛选每一句话该不该说,用自己的紧张来控制数据流的波动幅度。他站在张驭面前不到两步的距离,穿着半透明的斗篷,用一个机械音伪装成系统角色,但他所有的破绽都已经在张驭面前露过一遍了——反应时间、行距格式、体温、触感、零点四秒的停顿、斗篷下摆的光点闪烁、还有那句"请专注任务目标"末尾拉长的尾音。张驭收集了所有破绽,没有在现场拼合。他只是看着李析,说:"行。我跟你下去。" 他在那之后花了二十三天来拼合那些破绽。每一个裂隙点、每一句机械音、每一次抖动的数据流、每一帧消失又亮起的光点,都被他收进了自己的信息栏里。他从第一天就知道李析是那个消失的首席工程师,第一面就知道李析在用斗篷和数据雾掩盖自己的脸,第二面就知道李析的体温破绽是紧张导致的参数设置失误。但他从来没有在一个裂隙点上说过"我知道了"。 他在等那个人自己说。如果一个人用二十三天的时间每天对着一个他以为在骗的人说"明天六点半",如果一个人用数据流去挡逆流的冲击、用磨损的保护层去缓冲权限流的波动、用"等你"两个字在传输中断之前作为最后一帧信号——那个人会在该说的时候说出该说的话。 第二十三天,张驭站在主会场入口,推开那扇门之前手里拎着一件深灰色的外套。 他的手机里存着他凌晨四点出发前翻出来的最后一条数据——李析在倒数第二天的晚上问他"主会场离你住的地方四个小时是真的吗",他回了"是真的"。然后他又发了一条,在凌晨三点四十六分,比出发时间早了十四分钟,发到了一个底层不存在的接收端。他发的是:"我在路上了。你出来的时候我应该在。"那条消息没有送达——底层已经关闭了全部外部通讯接口,在最后一扇门打开的时候释放了所有被困数据。但他在发出去的时候已经知道它不会送达。他只是想把"在路上"这几个字留在一个底层能看到的地方,万一那个地方还在运行、万一那个人最后几帧的传输还能接到什么东西。如果接收不到也没有关系,因为他在路上了,他会到。 他在十步之外停下来,看着那个人转过身来。浅灰色长袖,袖口掉了一颗扣子,手是实的。他开口问了一声:"你站的位置就是你被推下去之前站的?"那个人回答他的时候没有用机械音。那是一个真实的、没有经过任何伪装和压缩的声音,尾音比他记忆中所有机械音的版本都低了一点,像一个人摘下了面具之后调整到最本来的状态。张驭听到了那个声音,确认它和他在终端里听到的所有版本是同一个人——只是没有压平了。 然后他跨出了那十步。他知道那个人会回答。他也知道那个人会愿意被他走向。 29. 布料 张驭起床的时间是早晨五点五十分。 比闹钟早了大约六分钟。光线从窗帘边缘透进来,是偏冷的青灰色,室外应该是个阴天。他从床上坐起来的时候手先碰到了床头柜,那上面放着一件叠好的深灰色外套——就是那件,昨天穿过的那件,他昨晚回到家之后挂在了椅背上。他坐起来看了一眼那件外套,然后站起来去洗漱。客厅的地板上有昨天晚上留下的一个纸袋,里面放着一些旧资料的照片打印件,他已经整理完了。他把纸袋推到茶几的角落,然后走进厨房打开冰箱。 他在厨房里站了大约十秒,在看冰箱里的东西,在想今天要不要吃点什么——然后他关上了冰箱门,决定在游戏里吃。那样更快。他回到客厅的时候路过那件外套,停下来把外套拿起来抖了一下,确认口袋里是空的,然后把它挂回了椅背上。他记得他昨晚把一件东西从外套口袋里拿出来放到了茶几上,但他走过去看的时候茶几上是空的。他停了一下,然后想起来——那块布。他把它放在了玄关的鞋柜旁边。 他走过去拿了那块布。 是灰白色的,边缘没有裁齐,从一件旧的灰色T恤下摆剪下来的。他剪它的时候没有想过它会去什么地方,也没有想过它会被什么人感知到。他只是在某天晚上整理旧衣物的时候看到一件穿旧了的T恤,领口松了,袖口也起了毛边,该扔了。他动手剪的时候没有特别的目的,只是觉得"可以留一块布当抹布"。那块布被他剪下来之后叠好放在柜子里放了很久,久到他后来都忘了它。直到某天他在底层蹲了太久。站起来的时候膝盖发出了一声响声,响声穿过接入端口传到了终端里面,被某人的感知层接收到了。那天晚上他在浴室里活动膝盖的时候想到了那块布——放在柜子里,叠好的,边缘裁得很烂但布料是柔软的、有一定厚度的。 他把它从柜子里拿出来放到了外套口袋里。 第二天他登录的时候那块布在口袋里待了一整天,他没有用。他在需要蹲下的几个裂隙点都站着完成了修复,虽然李析没有明说让他站起来还是蹲下去,但他在决定站姿的时候考虑了那块布的位置——口袋外侧,右侧,靠近膝盖高度,拿取方便。他没有用。他在等一个合适的时机,一个不会让李析觉得"他在 特意展示"的时机。那个时机在第二十一天来了。 第二十一个裂隙点是一条中继通道,修复时间预计四十分钟。他在接入之前先蹲下来,左手伸进口袋取出那块布,展开、折叠成适合膝盖的厚度、垫在右膝下方,然后右手接入权限流开始修复。动作流畅,不需要停顿,因为他在心里已经模拟过几次了。他在垫布的时候没有说话,没有解释,没有给任何理由。他只是把它垫在了膝盖下面,让布料成为他和银灰色地面之间的那层东西。他感知不到李析在终端里看到这个动作时的反应,因为体感信号是单向的——李析能感知到他,他感知不到李析。但他知道那个人一定在感知层里接收到了布料触地的信号。那个人从不说破,他也从不解释。但第二天他又带了,第三天也是。那块布后来成了一种不需要被提及的共同确认,像接入界面那个绿色的光标一样——亮着就是亮了,不需要被解释为什么亮着。 他剪下那块布的时候没有想过这些。他只是坐在客厅的地板上,手里握着一件旧T恤,剪刀沿着下摆的边缘裁过去,布料断裂的声音很轻,像某种事物的开始。 30. 夜晚 李析在车门边站了一会儿,然后坐进了副驾驶座。 车内的气味和张驭身上的气味相同——浅淡的洗衣剂残留,混着外套表面被风吹过的凉气。座椅的皮质表面有些凉,他坐进去之后靠背的弧度刚好托住他的后背,他以前没有坐过这辆车,但车内的空间中他的感知层没有产生任何需要扫描的信息,只是一辆普通的车。 张驭从另一侧上车,关上门,发动引擎。发动机的低频震动通过座椅传递到李析的身体上,和底层的数据流动不同,这是机械的、持续的、有规律可循的振动。张驭在挂挡之前侧过头看了他一眼,说了一句话:"我开高速。你要是困了可以睡。" 李析看着前方挡风玻璃外面逐渐暗下来的天空,浅紫色正在向深蓝过渡,远处的云边缘还有一层薄的金色。"……现在不困。" 张驭没有多问,把车开出了停车场。窗外的景色开始移动,主会场在侧后方的视野里缓慢退远,广场上的路灯逐一亮起。李析看着那些灯一盏一盏地从灰变成黄,像一排排被依次点亮的数据节点——但它们是真的,不是代码生成的,是电流通过钨丝之后产生的暖色光。他看到了街道边的店铺、行人、骑着自行车经过的人影、路边停着的车,所有的物体都在按照自己的轨迹移动,没有人发现有人刚从底层回来。他坐在副驾驶座上,车窗玻璃比游戏表层的模拟窗更凉,贴着那一侧的手掌能感知到温度差。 上了高速之后车窗外的景色变成了连续的深色块状——路灯以固定的间距一盏盏掠过,车灯在对面车道上连成流动的光带。张驭开车的姿势和他在底层走路时的姿态很相似,稳定的、不浪费多余动作的。他的双手放在方向盘上的位置固定不变,视线在前方路面和两侧后视镜之间以固定的频率交替。李析坐在副驾驶座上安静地看了一会儿车窗外面的夜色,然后他的感知层找到了一个位置——看窗外的时候不需要分析任何东西,不需要判断移动速度、方向偏差、波形频率,只需要看着那些光点从远处出现、靠近、经过、消失。他把这个发现收进了自己知道的位置,继续看着窗外。 四个小时的路程,他在副驾驶座上坐了将近一半才感觉到困意——不是数据流需要休眠的那种"让我静置一下",是真实的、身体里的、从肌肉到神经系统都在缓慢下沉的困倦。他的眼皮的重量在增加,视线在窗外和车内之间来回切换的频率在变慢,每一次眨眼都比上一次长一点。他没有告诉张驭"我困了"。张驭在他第三次眨眼时比前两次都长一些之后说了一句:"到收费站了。过了收费站再睡。" 李析把视线从窗外收回来:"我没说我要睡。" "你眨了三次。一次比一次长。"张驭的视线仍然看着前方路面,"到收费站还有两分钟。你可以在那之后决定困不困。" 李析没有回答。他看着前方路面上的指示灯在靠近收费站的位置依次亮起,车在接近收费窗口时减速、停住、等杆抬起、通过、加速。收费站那短暂的停顿让他的身体感知到了一瞬间的静止,然后车重新移动。他在那个停顿之后把座椅靠背稍微调低了几个角度,但没有完全放倒,他侧过头靠在头枕上,看着张驭在暗光中的侧脸轮廓——路灯的光在挡风玻璃上断断续续地亮起,照亮又熄灭。他的感知层在二十三天的灰白荒漠之后第一次在一个封闭的空间里以稳定的速率下沉,像一艘船在缓慢地离开水面。 他不知道自己什么时候睡着的。 他醒来是因为车停了。发动机的震动消失了,窗外的灯光从动态变成了静态——路边有一盏路灯在固定的位置亮着,不再移动。他睁开眼的时候发现自己已经把座椅靠背放平了,不知道什么时候放的,他的头侧向驾驶座的方向,张驭不在车里。车窗外的光线是路灯偏黄的暖色,车停在一栋楼门口,楼不高,入口处亮着一盏灯,灯下站着一个人——张驭站在车门外侧,没有敲窗,只是站在路灯下看着车的方向,像是在等里面的人自己醒过来。 李析坐起来的时候座椅靠背随着身体的重心变化自动抬起了一些角度,他的视线从车窗玻璃上张驭的位置移到了车内仪表板上的时钟——数字显示他已经睡了大约四十分钟。他推开车门的时候外面的空气比车里凉,路灯的光落在他面前的地面上形成一片浅黄色的光圈。张驭站在光圈边缘,侧头看着他:"醒了。" "……到了。" "嗯。"张驭转身朝楼门口走了两步,停住,回头看了他一眼:"走吧,上去。" 李析关上车门,朝那扇门口走过去。他走过那片路灯的光圈的时候看到自己的影子在地面上被拉长了,方向朝前,随着他脚步的移动而晃动。他穿的是张驭给他的那件外套,走在张驭身后半步的位置,走进了那扇门里。 楼内有一条走廊和一段楼梯。张驭走在前面,脚步声在楼道里发出稳定的回响,李析跟在后面,听着两串脚步声在不同的距离和节奏中互相重叠又分开。张驭在某一层的某扇门前停下,从口袋里掏出钥匙开了门。他推开门走进去的时候顺手按亮了玄关的灯,暖色的光从头顶倾泻下来,照亮了客厅的地板、茶几上的杯子、沙发上叠好的毯子、和窗边一排植物。李析站在玄关处没有立刻踏进去。他看到了窗台上那排植物——叶片在室内光线下是深绿色的,边缘有一些细小的尘埃,其中一棵的叶子微微卷曲,像是需要浇水了。真实的植物,真实的叶片卷曲。 张驭走进客厅脱了外套,挂在椅背上,然后回头看到李析还站在玄关门口。他没有说"进来",也没有问"你在看什么"。他走到窗边把那棵卷叶的植物拿起来放进了水槽里开了水龙头,水流的声音在安静的空间里持续了大约十秒,然后他把植物放回窗台上。 李析走了进来。拖鞋放在门口左手边的架子上,灰色的,绒毛面。他换上了那两双拖鞋中更小的一双,走进客厅,在沙发边缘坐了下来。客厅的窗户没有拉窗帘,外面的路灯在玻璃上投下一小片光,和楼房内部的光叠在一起。 "……我睡了四十分钟。" "四十三。"张驭从水槽边走过来,坐在茶几对面的矮凳上。他靠进矮凳的靠背里,侧过头去看窗外路灯的方向,没有说话。 李析坐在沙发上安静了一段时间。他能感觉到自己的呼吸频率在平静下来,身体在从长途车程和短暂睡眠中过渡到一个更稳定的状态。过了一会儿他说:"这里和你底层说的住址是同一个地方。" "嗯。" "那棵植物之前我见过——在你说'我一个人住'那天。"李析说,"你提到了你住的地方。和现在看到的一致。" 张驭转头看了他一眼:"你当时存了位置?" "没有位置。"李析说,"但你提过。"张驭没有接话。他又把头转回去看了一会儿窗外的路灯,然后把目光从窗外收回来,落在自己面前的茶几边缘。窗台上那棵浇过水的植物叶子上还有水珠,在暖色的灯光下反着细微的光。 后来他们分别洗漱、换了衣服、坐在客厅里沉默了一段时间。李析在张驭去浴室的时候在客厅里走了一圈,看了书架上的书脊、茶几下面收着的旧笔记本、和那棵植物的叶片——水珠已经干了,但叶片不再卷曲,恢复了平展的状态。他站在窗边看着路灯的光落在对面楼房的墙壁上,形成了一个浅黄色的方形轮廓。他在那个轮廓上停留的时间比看其他东西都久,因为那是他在这个房间里看到的第一个稳定的、不会移动的光斑。 他最后在沙发上坐了一会儿,然后站起来走向卧室的方向。在走进去之前他停在门口,侧过头看了张驭一眼——张驭正从厨房端了两杯水走过来,在茶几边停住了,看到李析站在卧室门口的方向。两个人之间的空间里没有数据流在传输。光照在两个人的身上形成了不同的明暗分布,都在暖色的室内灯光下安静地站着。 李析说了一句话,声音和他平时说话的音量一样:"我进去睡了。" 张驭端着一杯水,另一杯放在茶几上,点了点头。 李析走进卧室,躺到了床上。被子的重量压在身上,和主会场晚上在车里坐着相比,这是他二十三天以来第一次以“躺下”的姿势进入静止状态。他的感知层里没有需要监控的数据流、没有需要定位的裂隙坐标、没有等待修复的信号、也没有倒计时。他在黑暗里听了一会儿隔壁房间的声音——张驭正在把杯子放回厨房,水声在管道里流过几秒然后停住了,然后是脚步声走向另一个方向的房间,门轻轻关上的声音。整个空间安静下来。 那是一种和底层完全不同的安静。底层灰白荒漠的寂静是空旷的、没有边界的、每一处回声都消失在无限延伸的平面上。这里的安静是有边界的——墙壁、天花板、地板、窗户、门。所有的声音都在这些边界内被柔和地反射、吸收、消散。 李析在黑暗中闭上眼睛,身体沉进被褥的凹陷里。他听到了自己的呼吸,真实的、匀速的、存在于一个完整房间里的呼吸声。他的感知层在二十三天的灰白荒漠之后第一次在一个有边界的空间里以稳定的速率下沉——像一艘船在缓慢离开水面之后终于在一片静谧的港池里完全停稳了。 他不知道自己什么时候睡着的。但这一次他确定了那是睡着——因为睡着之后他不记得自己什么时候闭上的眼。他在没有倒计时的黑暗里完成了第一个完整夜晚。 第二天他醒的时候,窗帘的缝隙里漏进来的是天亮之后的白灰色光线。他睁开眼的时候天花板是白色的,有纹理,边缘有一道浅的裂缝。他在床沿边坐起来的时候看到床头柜上放着一杯凉了的水——不知道什么时候放的,可能是昨晚张驭端过来的,在他睡着之后。 31. 同一个早晨 几个月后一个普通的日子,李析在七点半左右醒了过来。 窗帘的缝隙漏进来的光比冬天的时候更亮一些,季节在不知不觉中换了一轮。天花板上的那道裂缝没有变化,和他第一天看见的时候一样长,一样浅。他醒来的速度比以前快了很多。不需要先确认自己在哪,不需要抬手验证是不是实的,不需要把房间里的东西用视线过一遍再呼吸。他睁开眼,看到天花板是白色的,然后坐起来,穿上拖鞋,走出卧室。 客厅的窗帘已经拉开了大半。张驭站在窗边,手里端着一杯咖啡,正看对面的街道。他听到李析的脚步声,偏了一下头看了一眼:"今天是什么日子。" 李析站到窗边,和他并排站着看外面:"七点三十七分。周六。天气晴。" "我问的不是那个。"张驭喝了一口咖啡,"是你楼下买早餐的规律。每周六你会下去买,周天会让我去买——今天是周六,该你了。" 李析站在窗边看了一眼对面街道,那家早餐铺门口今天的顾客比平时少一些,他看到了蒸汽从铺子门口飘出来,在早晨的阳光里形成一道细长的白色雾柱。"有鸡蛋饼。" "有。" "那我下去买。" "带上钥匙。" 李析从玄关的挂钩上取了钥匙,推开门走下楼。楼道里的声音被封闭的墙壁包裹着,脚步声在每一级台阶上响起,然后随着他走到下一层而消失,再重新响起。他走出楼门口的时候迎面吹来的风比楼上感知到的更凉一些,带着街边花坛里泥土和植物叶子散发的潮气。他沿着人行道走了一小段路,经过路边停着的车和一根电线杆,走到早餐铺门口站定。铺子里蒸汽的暖意扑面而来,和风里的凉意在他身体周围形成一个交界区。卖早餐的女人已经认识他了。李析站在窗口前,不需要像第一次一样在蒸汽和油的气味里考虑自己要说什么。那个女人看了他一眼,已经伸手拿袋子了:"鸡蛋饼,两个?" "两个。" "豆浆也要?" "两杯。" 女人动作很快,把纸袋叠好、豆浆装好,递出窗口。李析接过纸袋的时候指尖触到了被热气渗透的纸面,温暖的、略微软化了的纸纤维触感,在他的指腹上停留了一会儿,然后他转身往回走。他走到楼下的时候看到楼门口站了一个人。张驭靠在门框旁边,手里那杯咖啡已经喝完了,空杯被他拿在另一只手里。他侧过头看了李析一眼,视线在纸袋和豆浆杯之间快速过了一遍,然后说:"没加辣椒。" "没加。你上次说不要辣椒。" 张驭伸手接过其中一个纸袋,两个人在楼门口的光线里并排站了一小会儿,都没有急着上楼。街道上的车辆比刚才多了一些,远处的十字路口的交通灯从红变绿,一排车辆启动的声音从远处传来。李析低头看了一眼自己手里的豆浆杯,杯壁的温度透过纸层传递到他的掌心。他抬起来喝了一口,温度正好——不是烫的,是入口之后会往下走的温度。张驭站在他旁边也喝了一口自己的豆浆, 两个人在楼门口的光线里没有说话,附近早餐铺的蒸汽还在持续升起,在街道上方形成一个缓慢扩大的白色雾柱,然后被风吹散。 李析把喝过的那杯豆浆拿在手里,看向街道对面。他注意到早餐铺的蒸汽正穿过行道树的枝条,在树冠的上方形成了一层极浅的薄雾,然后在更远处被风吹散了。 "走了,上去。"张驭说。 两个人转身走进楼门口,脚步声在一层层的楼梯间里交替响着,一个稍快、一个稍慢,持续到某一层时戛然而止——门被推开又关上,街道上的声音被隔绝在了外面。客厅的窗帘仍敞开着,窗台上那排植物中有一棵的叶子在晨光里微微舒展。茶几上放着那块灰白色的布,叠好的,边缘裁得不齐,昨天从柜子里拿出来之后忘了放回去。张驭路过的时候看了一眼,没有收起来,李析路过的时候也看了一眼,也没有收起来。一块旧布叠好后放在茶几角落,边缘不齐,灰色的,不会影响任何东西。 茶几上的布保持着叠好的姿态,在晨光里安静地待着。 两个纸袋并排放在桌上,鸡蛋饼的热气在翻开袋口的时候升起来,然后融进客厅的暖色光线里。李析在窗台上那棵植物的叶片上看到了一滴残留的水珠——昨晚浇过水之后留下的,在晨光里折射出一个小小的光点。他看了它一眼,然后坐到桌边拿起了第一个鸡蛋饼。晨光从窗外斜照进来,落在桌沿上。窗外的街道有汽车驶过,有人在打招呼,有一只鸟掠过空中的轨迹,什么都没有分析的必要。 32. 办公室 李析回公司的那天是一个周三。 他和张驭商量过这件事,或者说他们坐在客厅餐桌的两端各自安静了一会儿之后,李析先开口说了"我该回去一趟"。张驭当时正在剥一个橘子,手指停在果皮上,然后说:"我送你去。"李析没有说"不用",张驭也没有说"你确定要去"。周三早上,车停在公司大楼对面的路边,李析解开安全带的时候动作比平时慢了一点。他低头看了一眼自己的手,确认是实的——这个习惯已经几个月了,出现频率正在逐渐降低,但偶尔还是会在某个需要确认的时刻自动运行。他的手是实的,指尖有温度,指节可以弯曲和伸直,掌心有纹路。他用手推开车门,踩着人行道上的地砖走到大楼入口。 门禁系统识别了他的工卡,自动弹开了。他走进去的时候大堂前台抬头看了他一眼——那人认识他,但眼神里有一种"我听说了一些事但不确定该不该问"的闪烁。李析朝她点了一下头,朝电梯走去。 电梯门合上之后他站在轿厢里,看着楼层数字依次亮起。他的工位在七楼,靠窗一排。那扇窗户面对的是一栋灰色的写字楼——始终如此,即使他离开的那二十三天里窗外的景色也没有任何变化。电梯门打开的瞬间,走廊里的空气涌进来,是中央空调恒温的那种干冷,和他记忆中完全一致。 他沿着走廊走到自己的工位。桌面上的东西和二十三天前一样——显示器、键盘、一个马克杯,杯子里的水已经干了,杯底有一层极薄的白色矿物质沉积。他没有动那个杯子。他在工位前面站了一会儿,椅子被推进了桌面下方,他的工牌还挂在显示器边缘的挂钩上,没有被人取走过。隔壁工位的人今天请假了,再隔壁的同事正在低头看屏幕,没有抬头。 他来这里要处理的是离职手续。这是他在来的路上确定的——底层恢复之后,公司的事已经从"他在被推进底层"变成了"运维组副主管被带走调查、底层协议层有未经授权的修改记录"。他不需要恢复原职,他需要正式地、干净地离开那家公司,然后在别的地方重新开始。他的桌面杂物不多——一个马克杯、几支笔、一个笔记本。他打开笔记本翻了一下,里面是他离职前最后几天的草稿,关于公测发布的接口准备事项,最后一页的日期停留在他被推进底层的那天。他把笔记本合上,放进了带来的空包里,然后拿起马克杯看了一眼杯底的水垢,把它也放了进去。 他在工位前站了大概一分钟没有动。然后他听到了脚步声——是皮鞋踩在地板上的那种有节奏的声音,在走廊尽头响起,然后沿着通道靠近,在他背后大约几步的位置停住了。他没有回头,但他听到那个声音开口说了一句话,不是公司里的同事,是他熟悉的人:"办完了?" 李析转过身。张驭站在走廊里,穿着深灰色外套——同一件,袖口那处磨损还在——左手插在口袋里,右手垂在身侧。他站在工位区入口的位置没有往里面走,只是停在通道边缘看着李析的方向。"前台让我上来。" "……你怎么进来的?" "说你忘了东西,我帮你拿。" 李析停了一下。他的包里装着马克杯、笔记本、几支笔,没有忘记任何东西。"……我没忘东西。" "嗯。"张驭的视线从他脸上移到桌面——已经清理空了——然后又移回来,"但我需要上来。" 李析把包拉好,站起来,把椅子推回桌面下方。动作和他第一天坐进这个工位的时候一样轻。"办完了。走吧。"他们一起穿过走廊的时候张驭走在前面一步,李析走在后面半步。经过前台的时候张驭朝那个前台点了一下头,动作很轻,像在说"谢了"。前台的人看了一眼张驭又看了一眼李析,没有说话。 他们走出大楼的时候,外面的光比进去的时候亮了一些,云层在午前散开了,影子在地面上变得更清晰。李析走在大楼门口的台阶上停了一下,回头看了一眼那扇旋转门——二十三天的倒计时在他离开底层的那个瞬间已经停止了,但此刻他才第一次真正确认自己已经离开了那栋楼。张驭站在台阶下面等他,没有催促。 李析走下台阶,走到张驭旁边。"去哪里?" 张驭侧过头看了他一眼,又看了一眼李析手里的包——笔记本的边角从包口露出来,被他的手臂压住。张驭没有问包里装了什么,也没有问"办完了"意味着什么。他在等李析自己确定那个答案。"去吃饭。"张驭说,"附近有一家——你之前说的,吐司和便利店饭团。"他的语气平平的,像在说一件已经决定好了的事。 李析停了一下。他想起来——大约几个月前,在底层第十三天的时候,他说过自己以前在公司吃早饭是吐司或便利店饭团。张驭记住了。他在今天,在楼的对面,选择了一家有吐司和饭团的地方作为"办完事"之后的下一站。 < p>"……好。"李析说。他朝那个方向迈出步子的时候,张驭走在他旁边,距离不是十步,不是一臂,是并肩。两个人之间的空隙里灌着午前从云层缝隙透下来的光,没有数据流在中间传输,没有终端界面和接入端口隔着他们。是空气和光在两个人之间流动。 他们走过街角的时候李析忽然说了一句话:"我杯子里的水——干了。" 张驭侧过头看了他一眼:"马克杯?" "嗯。放了一个多月,水干了,杯底有一层白色。" "那洗一下就能用。" "我知道。"李析说,"但我在想,那杯水是我被推进底层之前倒的。你推门进来之前,我接了一杯水放在桌上,还没喝。然后我去了发布会现场,然后被推了。那杯水在上面放了二十三天的数据模拟加上——那一天。干了。" 张驭没有接话。他走在李析旁边,太阳的位置在他们前面偏右,两道人影被拉在身后,方向一致,随着步伐的节奏稳定地向前延伸。走了一段路之后他说了一句话,声音不大,但没有被风盖住:"那杯水干了。但杯子还在。" 李析低头看了一眼自己手里的包——笔记本的边角从包口露出来,被他手臂压住的那些页面上还留着他被推进底层那天写下的字。"……嗯。杯子还在。" 他们走进那家店的时候,窗外的光照在桌面上形成了规则的方格状光斑,店内的空气里有烘烤过的面粉和煮过的米饭的气味。张驭已经提前去柜台点好单了,他对店员说了两句,然后端着一个托盘回来了——两杯饮料、两个包好的三明治、和一个用纸盒装好的饭团。 他把饭团朝李析的方向推了推。李析拿起来拆开包装纸的时候看到米粒上嵌着海苔,和他在底层描述过的一样。他咬了一口。米饭的温度偏凉——是做好之后放了一阵的——但米粒的弹性和黏度都真实的,在齿间散开的时候释放出海苔和盐的混合气味。 张驭坐在他对面,也在吃自己那份东西。窗外的阳光落在桌沿上,和从前的每一天一样在移动,但没有倒计时——只有墙上时钟的秒针在走,和一个普通人周三午饭后的正常延续。 他们吃完饭之后沿着街道走回停车的地方。路过公司大楼的时候李析没有转头看,他走在张驭旁边,午后的光线在他们前面偏右的位置,两道人影被拉在身后,方向一致,随着步伐的节奏稳定地向前延伸。 33. 停止确认的那天 李析没有注意到自己是什么时候停止的。后来他回想这件事的时候,发现自己根本想不起具体是哪一天——不是因为没有发生过,是因为那个动作实在太轻了,轻到它的消失和它的存在一样不显眼。醒来、睁眼、起身、下床、穿拖鞋、走进客厅、倒水、拉开窗帘。中间没有任何一个环节需要他停下来低头看自己的手。等他注意到这一点的时候,那天已经过去了一半。 那是一个普通的工作日。他在三个月前入职了一家新的技术公司,规模比之前那家小很多,做的东西和游戏无关,是他更熟悉的底层协议方向。每天通勤的时间大约是二十五分钟,比之前那家公司远了一点,但路上的树更多。他早上出门前会检查三件事:钥匙、门卡、手机。今天早上他检查的时候顺序跟平时一样:手伸进口袋摸到钥匙的金属边缘,确认它的形状和温度;再摸到门卡的边缘,确认它在钥匙的右边;最后从桌面上拿起手机,确认屏幕亮着、电量充足。他做完了这三件事之后背上包出了门,走在楼道里的时候没有低头看自己的手。 他走在街上才意识到他今天没有看自己的手——没有在床边确认,没有在玄关低头,没有在电梯轿厢里摊开手掌确认纹路的真实感。他的手里握着手机,指纹自然地按压在屏幕上,解锁,看了一眼天气,然后锁屏。他注意到自己的状态——注意力比平时更靠前,集中在街道上的声音和光线里。那天他走路的速度和三个月前相比有了细微的变化:步伐更稳、更快一些,不需要沿途停下来确认物体的触感。 他走进办公室,把包放在工位旁边,从包里拿出笔记本。桌面上有一盆小绿植——是张驭在第一次来他新公司时带来的,放在显示器旁边,叶片在室内光线下呈现出正常的绿色,没有卷曲。他坐下,打开电脑,输入密码。一整天的工作和他入职后的其他日子相似——上午开了个短会、看了几份文档、中午吃饭的时候回了张驭一条消息问晚上吃什么。下午他坐在工位上写了一段代码之后停下来看了一眼自己的手——不是需要确认,只是刚好手在键盘上方停了一下。他把那一眼看到了的东西又确认了一遍,然后在心里对那一眼的内容做了笔记:手是实的,指尖有温度,指节可以弯曲和伸直,掌心有纹路。所有特征都在他停止主动确认之前就已经存在了。 晚上回家进门的时候张驭在厨房里,正把菜从锅里盛出来。他把包放在玄关柜子上,换拖鞋的时候随口说了一句:“我今天没有确认。” 张驭从厨房里偏了一下头:“确认什么?” “手。我今天出门之前忘了看。” 张驭把盘子端到桌上,放在已经摆好筷子的位置,然后直起身看了他一眼:“你今天出门之前没确认——然后呢?” “然后我走了一整天,没有确认。走到街上的时候才想起来。但那时候不需要了。” 张驭站在桌边停了一拍,像是在理解这段话里的时态变化。他理解完之后没有说“哦”或“那就好”之类的话,他看了李析一眼说了一句:“那你今天走了一整天没确认。需要补吗?” 李析站在玄关和客厅交界的位置,换好了拖鞋,手里还拿着包。他低头看了看自己的手,又抬头看了一下张驭。“……不需要。”< /p>他走到餐桌边坐下来,接过了张驭递过来的筷子。那一整天的普通之处在于:那是一个不需要确认的一天。他从醒来到现在,没有一次需要启动那个旧习惯来把自己拉回现实。那个习惯在某个他没有注意到的早晨消失了的——在无数个普通的、确认不需要的阶段完成之后,它自己退出了运行序列。他在一个普通的工作日出门之前没有确认自己的手是实的,因为那个信息已经被存放成了不需要验证的系统预设。 他坐在餐桌边夹起第一口菜的时候意识到了一件事:他今天度过了一个普通的周三,没有被底层的残留信号干扰,没有需要确认真实性的冲动,没有在陌生人面前抬手检查纹路的惯性动作。他甚至没有想“这是一件值得记住的事”,直到晚上回家张驭问他的时候——他在叙述的过程中才发现那是一个节点。一个他自己没有注意到的、不需要再确认的转折点。 “明天早上出门之前我可能也会忘了确认。”他说。 张驭坐在他对面正在吃饭:“那你后天可能也会忘。” “后天可能也会。” “那可能下周也不记得了。” 李析看着自己手里的碗边缘的釉面——那是一个他已经握过很多次的碗,碗壁的弧度已经被他的手指记住了。他吃了饭、洗了碗、在客厅里坐了一会儿、睡前看了窗外的路灯,最后一件事是躺下、闭眼、消失。那天他睡过去的时候没有在黑暗里睁眼查看光线是否真实、被褥的重量是否恒定、呼吸是否连续。那是一个普通日子结束时的普通动作——闭眼,然后进入一个没有需要确认的夜晚。 34. 回到底层 是在一个不需要出门的周末下午,张驭先提的。 他在沙发上坐了一会儿,翻手机里的旧消息记录,然后偏过头来看了李析一眼,说:"那个游戏——底层修复之后你回去看过吗?" 李析正在茶几上整理一份文档,听到问题的时候手停了一下。"没有。底层恢复之后我就没有再登入过那个游戏。" "那我今天进去看看。" 李析侧过头看着他。"……你想去看什么?" 张驭把手机放到茶几上。"想去看一下第23个门的位置现在是什么样。最后一次看到它的时候它在打开。"他说,"门里是暖光。然后你被弹出来了。你没有看到它关上之后的模样。" 李析安静了大约三秒。他没有说"我也去",但他从茶几边站起来,走到客厅角落的柜子旁边,拉开了抽屉。里面放着一些旧东西——几份打印件、一个笔记本、和一枚金属挂饰。那枚挂饰的表面有一道浅的划痕。他把它拿起来看了大约一秒,然后放回去了。他没有带任何东西进入游戏——不需要了。 "我也去。" 他们坐在同一张沙发上,各自打开了终端——他买了一台新的,比之前那台更轻,屏幕边缘更窄;张驭用的是他常带的那台。登录界面的光线从屏幕上亮起,照在两个人的脸上。李析看到熟悉的深蓝色背景的时候感知层出现了轻微的共鸣——不是紧张,是身体记得那个颜色。他输入了账号和密码,确认,加载。 登陆画面切换成游戏内视角的瞬间,他的视野从客厅换成了游戏表层的天空——淡蓝色的,有浮云,远处有山脊线。和23天前他从底层被弹出时最后看到的那片天空相同,但他现在站在的是表层,不是底层。 张驭的角色出现在他旁边——同一片登录坐标点,暗红色的刀在腰后。张驭在终端里没有开口说话,但他的角色朝李析的方向走了一步,然后停了下来。李析的角色转向了通往底层通道入口的方向。 通道入口已经变了。边界不再是模糊的灰白色裂隙,变成了稳定的、有清晰轮廓的圆形接口,边缘嵌着一圈极细的淡光。通道本身已经不再需要“渗透”才能穿过,它变成了一道常规的传送路径。两个人一前一后穿过接口的时候,李析的感知层捕捉到了过渡层的信号——和23天前一样,但更平稳、更安静。没有静电刺痛,没有数据流的剧烈波动。穿过之后,灰白色在地面上展开。 底层的颜色恢复了。灰白色的荒漠平面向四周延伸,没有裂隙,没有红色错误代码在地面上蔓延,没有银灰色的异常覆盖。地面平整、均匀、安静,像一片被重新铺过的空地。李析站在灰白色的地面上,低头看了一会儿。没有东西裂开。没有东西在等待被修复。只是平坦的、完整的底层空间,在23天之后回到了它本该有的状态。 他没有走很快。张驭走在他旁边,速度和他匹配。他们沿着一条没有标记但两人都知道的路线移动——第15个、第16个、第19个、第20个。每经过一个位置,李析都能看到它们现在的样子:所有的裂隙点都已经闭合了,那些曾经需要权限流持续接入才能缝合的裂口处,现在只是灰白地面上几道更浅的痕迹。像旧伤在愈合多年之后留下的印记,不再疼痛,只是还在。 他们经过第17个端口的位置时,李析停了一下。那个圆形的银灰色结构已经不存在了——既不是银灰色,也不是灰白色,而是一块和周围完全融为一体的平整地面。四件实物曾经被摆放在它的四个方位点上,开启它的人曾经蹲在旁边二十分钟持续接入权限流,把三年前留下的所有信息释放了出来。现在那个位置只是一片空地。 张驭也在那个位置上停了一下。他没有说话,但他站在那里看了一会儿那片空地,然后继续往前走了。 他们最后到的是第23个门的位置。 深灰色的墙已经不在了。门也已经不在了。四道凹槽、暖光、门的裂开和滑开——所有结构都在底层恢复的过程中被解构了,像一张图纸在完成使命后自行折叠、收起、消失。原址只剩一片完整的灰白色地面,和其他地方没有区别。如果不记得它曾经在那里,没有人会注意到它的位置。 李析站在那片地面上,低头看了一会儿。他的记忆和脚下真实的地面之间有一层轻微的错位——他知道曾经有一扇门立在这里,门内有暖光涌出,感知层在最后一帧里接收到了张驭的心 率从七十五升到八十二的信号。现在那个位置什么都没有,只有灰白色的平面。 张驭站在他旁边,也没有说话。 两个人在第23个门曾经的位置站了一会儿。李析觉得站够了。他先转身,朝通道入口的方向迈开步子。张驭跟上来的时候没有问他“看完了吗”或“还好吗”,他只是走在他旁边,速度和他匹配。两个人沿着灰白色的荒漠走回去,经过第20个核曾经嵌着的位置、第19个裂隙被剥离了三层加密的区域、第17个端口被实物共振打开的圆形坐标,所有地点都在脚下经过,所有地点都已经不再需要被记住精确坐标了。 他们穿过通道入口的接口,回到游戏表层。表层的光线仍然是淡蓝色的,和李析几十秒前看到的一样。他站在表层的地面上,低头看了一眼脚下——是普通的游戏地面,有系统加载的纹理和模拟触感。然后他朝游戏表的登录界面点了一下确认,角色从表层注销了。 他面前的屏幕回到登录界面,深蓝色的背景。然后屏幕暗下来,他合上设备,把它放在茶几边缘。张驭比他晚几秒关掉终端,也把设备放在了茶几上。 客厅里的光是从窗外透进来的下午偏后的光线,不是暖色的,带一点白。李析坐在沙发上,看着茶几上两个合上的设备——黑色和深灰色,并排放着,没有数据传输,没有终端界面,只有两件静置的电子设备。 张驭也坐在沙发上。他没有问“感觉怎么样”或者“还好吗”,因为他已经知道答案了。他坐在那里,侧着头看了李析一会儿,然后说了一句:“下次还想回去的话,我跟你去。” 李析靠着沙发靠背,偏过头看他,没有说话,也没有点头,但他的感知层在那一刻把“下次”这个词接住了。他看了一会儿窗外下午的光线落在窗台植物叶片上的样子。那道叶片边缘有一层极薄的绒毛,是绿色的,是真的,不卷曲,不需要被浇水——今天早上已经浇过了。 “……嗯。” 客厅里的光线在移动,从窗台的一侧缓慢地移向另一侧。没有数据流,没有倒计时,没有需要被修复的裂隙。在不需要记住坐标的日子里,他只需要知道旁边的位置有人坐着,就可以了。