第二十一章 白大人不敢下的地方

马蹄声越来越近,地面上的石子都在跳。

老鸦把烟杆往腰里一插,扯起猪仔的后腿就往矿口侧面的乱石沟里钻:“别愣着!这边!”

“这边是悬崖——”

“悬崖底下有水道!白大人三十年前修的逃命路,你当我是怎么活到今天的?”

一人一猪一老头连滚带爬地滑下乱石沟。崖壁裂开一道缝,缝里是条半干的水道,黑漆漆的,一股陈年青苔味。三人挤进去,用乱石堵住洞口,刚藏好,头顶就传来马蹄踏过的闷响。

“搜!脚印到这儿就断了——两个活人加一头猪,跑不远!”

猪仔在黑暗里撇撇嘴:两个活人加一头猪——合着它连"活人"都不算。算了,猪生艰难,不跟通缉犯计较。

“嘘。“老鸦按住它,“等斥候过。”

一个黑甲斥候举着火把,从崖缝外走过,脚步慢下来,火光一点一点逼近洞口。莉莉握紧剑柄,冷汗顺着鬓角往下淌。

猪仔眯起眼——调试器·初级,展开。

斥候头顶浮现出一行流动的灰字:

while(搜索){ 检查(左侧); 检查(右侧); } ← 当前执行行

猪仔的眼睛,一下子亮了。

“……别动。“它用气声说,“他检查完左边,就检查右边——“火光晃了晃,斥候朝左侧崖壁照了照,又转向右侧,"——中间,是他的盲区。写这段巡逻脚本的人,忘了写’中间’。”

火光掠过崖缝,没有停留。斥候的脚步声,渐渐远了。

莉莉长出一口气,整个人瘫在石壁上:“你、你怎么知道他不会看中间?”

“他头顶写着呢。“猪仔得意地抖抖耳朵,“新装的调试器,能看到别人’正在执行哪一行’——这不,一眼就看出他脚本里有个大坑。”

“……你管’忘了搜中间’叫’坑’?”

“对程序来说,这就是个送命的 bug。“猪仔龇牙,“今晚它救了咱仨的命。”

水道很长,走了大半夜。天蒙蒙亮时,老鸦在一堵石壁前停下,摸索着推开一道暗门,门后是一间堆满杂货的老仓库——旧城区,到了。

老鸦把门关严,从货堆里翻出一张泛黄的纸铺在桌上,纸上画着旧城区的街巷,一角用朱砂标着一口井:“枯井,在老槐树巷底。井底下,是古罗兰王朝的地宫。”

“白大人当年查档案,查到王都地下埋着东西,画了图,却一天都没下去过。“老鸦顿了顿,“因为下去的人,没有一个回来过。”

仓库里安静了一瞬。猪仔低头看了看怀里那两块发烫的碎片——它们正固执地指向地下,指得比任何时候都用力。

“第三块,就在那儿。“它说。

“我知道。“老鸦叹了口气,“白大人当年把两扇门的钥匙都交给我——矿洞那扇,我守完了。地宫这扇,今天交给你。”

“你为什么不下去?“猪仔问。

老鸦沉默了很久,久到莉莉以为他不打算回答了,他才开口:“我答应过他,不下去。他说’那底下不是给活人准备的’——我信他。但我也信,他留的这条线索,是给’能看懂’的人准备的。“独眼盯着猪仔,“你,就是那个人。”

白天,猪仔和莉莉藏在仓库里。老鸦出去转了一圈,回来时脸色不太好看:“通缉令又换了,悬赏八十金币——‘偷钥匙的贼,会说话的猪,能写魔法的那种’。核心塔把案子,交给了净化者办。“他顿了顿,“听说那净化者,灰绿瞳,年轻姑娘。”

猪仔的耳朵抖了抖。零七。

“……熟人。“它说,“但愿她办案慢一点。”

入夜,旧城区,老槐树巷。

枯井井沿长满青苔,被一块大石板压着。老鸦用烟杆撬开石板,一股阴冷的风从井底涌上来,带着一种"很旧"的味道——像打开一间三十年没人进过的机房。

老鸦没下去。他蹲在井口,把烟杆往嘴里一叼:“我在上头看着。听见不对,我就喊。”

猪仔探头往下看,井壁上有踏脚的石坑,一路向下,黑得不见底。

“……莉莉。“它忽然说,“你认得路吗?”

“认——认得啊!“莉莉挺了挺胸,“我记路可好了!”

“那你告诉我,咱们现在是往南还是往北?”

“……往、往下!”

猪仔:"……行,你赢了。你确实记路。走吧,往下。”

井壁的石坑一路延伸,爬了十几丈深,脚下终于踩到实地。猪仔抖了抖蹄子,系统自动展开视野——然后它愣住了。

这哪是地宫。这是一整座"被冻住"的城市。

巨大的石柱撑起穹顶,两侧是成排的石俑——兵士、侍女、官员,全都保持着行走的姿势,有的抬着脚,有的张着嘴,像在一瞬间被按下了暂停键。它们的身上,浮着密密麻麻的灰字,游动着、闪烁着。

猪仔"读"了过去,眉头越皱越紧。

while(站岗){ 站岗; } while(行走){ 行走; } while(说话){ 说话; }

全是死循环。它们不是石俑——是活人。是卡死的人。

“……这就是白大人说的’漏气’。“猪仔低声说,“比矿洞那边严重一百倍。王都地下,全是卡住的人。”

莉莉打了个寒颤:“他们……还活着吗?”

“活着。“猪仔的声音发涩,“只是永远停在了那一刻。就像程序跑进死循环——人还在,进程没死,就是再也动不了了。”

它怀里,两块碎片烫得惊人,指着地宫深处。猪仔深吸一口气:“走吧,第三块,就在里面。”

地宫很深。越往里走,卡死的身影越多——有些保持着奔跑的姿势,有些跪着,有些伸着手,像要抓住什么。莉莉紧紧握着剑,拐了两个弯就开始分不清方向,猪仔不得不每隔十步,就在墙上留一个”//“记号。

“这地方……好安静。“莉莉小声说,“安静得吓人。”

“安静才好。“猪仔说,“说明——”

话音未落,前方走廊尽头,传来一声金属摩擦的巨响。

“——说明来了个不安静的。”

走廊尽头,一尊三米高的铁俑正缓缓转动身躯。它和矿洞的铁傀儡不一样——身上贴满了金色的补丁,胸口嵌着一块疯狂旋转的符盘,像一颗巨大的硬盘。它"看"向闯入者,发出锈蚀的嘶吼,举拳砸来!

“躲开!“莉莉一把推开猪仔,举剑格挡——“铛!“剑身震得嗡嗡作响,莉莉虎口崩裂,鲜血直流。

猪仔滚到墙角,系统疯狂报警。调试器展开——铁俑头顶浮现一行代码:

while(入侵者){ 攻击(入侵者); } ← 当前执行行

“……死循环攻击程序。“猪仔的眼睛亮起来,“没有退出分支,只会一直打——”

铁俑再次举拳砸下。猪仔就地一滚,扯着嗓子念出这行"补丁”:

if(攻击(入侵者) 连续失败 三次){ 自检(发现错误); 停止; }

“什么?!“莉莉瞪大眼睛。

铁俑的拳头停在半空。它开始"自检"了——第一拳被莉莉格挡、第二拳被猪仔躲开,“连续失败"的记录触发了自检分支,而自检发现"攻击连续失败"这个异常,于是……

“咔——”

铁俑保持着举拳的姿势,彻底停了。符盘越转越慢,最后"叮"的一声,停住了。

“它、它停了?!“莉莉不敢相信。

“它只会攻击,不会’思考失败’。“猪仔擦了擦鼻血,“我只是告诉它:打不到人,就得先检查自己哪里错了——程序员最怕的就是’自查’。一自查,发现自己满身 bug,当场社死,停工了。”

“……你管这叫’社死’?”

“对一个程序来说,发现自己是个 bug,比死还难受。“猪仔龇牙,“我这叫心灵打击。”

代价:算力 112→78。猪仔喘了两口,来不及歇——前方,地宫的最深处,到了。

那是一个巨大的穹顶大厅。大厅中央矗立着一座山一样的金属造物——残破的机柜、缠绕的缆线、碎裂的水晶屏幕,被岩石和藤蔓包裹着,像一头沉睡的钢铁巨兽。这是它见过的,最完整的服务器残骸。

而残骸的核心,一块拇指大的、泛着蓝光的碎片,正悬浮在半空,缓缓旋转。

第三块源码碎片。

“……找到了。“猪仔的呼吸都轻了。

它刚迈出一步,残骸上最大的一块水晶屏幕,忽然"唰"地亮了。幽蓝的光照亮整座大厅,屏幕上浮现出一行字:

LOGIN: 白

白——白袍人。他来过这里。他登录过这台机器。然后他走了,再也没有下来。

猪仔盯着那行字,心里忽然涌上一个念头:他当年,到底是看到了什么,才"不敢下"的?

就在这时,身后传来一声轻微的、关节摩擦的声响。

“咔。”

猪仔猛地回头。

大厅边缘,那些保持着行走姿势的卡死身影——那些数百年来被冻在死循环里的"古人”——正在一具一具地,转动它们的头颅。

朝着它。

碎片散发的蓝光落在它们身上,像一条被接通的电源线。卡死的身影,正在"解冻”。

“……坏了。“猪仔的声音发干,“这碎片……是它们的时钟源。我靠近它,等于给它们——通了电。”

“咔、咔、咔——”

关节的摩擦声越来越密。一具具身影,缓慢地、僵硬地,朝着大厅中央转过身来。

而头顶的井口方向,隐隐传来马蹄声。

老鸦的声音被风扯得断断续续,从井口远远飘下来:

“猪仔——!黑甲……找来了——!”

—— 本章完 ——

每天 22:00 更新 · 用 ❤️ 和 🐷 写成
使用 Hugo 构建
主题 StackJimmy 设计