警報降下去以後,陳序才發現最吵的不是城門。
是自己的腦子。
嗡——
像有一台老舊服務器被塞進顱骨裡,風扇全速轉,軸承還缺油。
他坐在新手編譯區廣場邊緣,背靠半塊裂開的屏障碎片,手指還在不受控製地抖。剛纔那幾麵金色盾牌已經碎成了光屑,三個半殘的守衛也被係統回收,隻在地上留下幾道暗淡的金色線痕。
源碼銘牌貼在胸口,燙得像剛從機房熱通道裡撈出來。
Object creation limit:cooling
Mental load:critical
Temporary Dependency:unstable
陳序盯著那幾行字看了兩秒。
“謝謝。”
他啞著嗓子說。
“終於知道我不穩定了。”
裴森蹲在旁邊,手裡還繞著幾縷銀色腳本流。那些腳本流比剛纔黯淡不少,像電量不足的數據線。
他看了陳序一眼。
“你們 Java 打一架,還帶內存占用後遺症?”
陳序抬眼。
“你們 Python 打架不占內存?”
裴森想了想。
“占,但一般我跑完就刪。”
“挺好。”陳序說,“不像我,刪不掉。”
裴森本來想笑,看到陳序的臉色,又把笑收了回去。
陳序現在白得有點嚇人。
不是失血那種白。
更像一個對象被強行複製了太多次,底層引用還冇來得及回收,整個人都透著一種快要宕機的虛。
餘未站在另一側,幾片彩色視圖碎片懸在她身前。她正在回放剛纔的戰鬥記錄。
畫麵裡,金色盾牌一麵接一麵碎開。
每碎一麵,陳序身後都會有一條很細的引用線跟著顫一下。
餘未把其中一幀放大。
“你看這裡。”
陳序抬頭。
畫麵停在一個金色守衛被利爪穿透的瞬間。
守衛碎掉時,陳序胸前源碼銘牌上的名字輕輕閃了一下。
很短。
短到戰鬥時冇人注意。
但現在放慢之後,看得很清楚。
Name:ChenXu
那行名字在一瞬間變淡了。
不是亂碼。
不是報錯。
就是很乾淨地淡了一下,像有人把他的存在從頁麵上擦掉一層。
陳序沉默下來。
裴森也不說話了。
餘未輕聲說:“你的對象碎掉時,不隻是對象受損。你的引用也會波動。”
陳序靠著碎片牆,緩慢撥出一口氣。
“也就是說,我剛纔不是在扔盾牌。”
“更像是在用自己維護它們。”餘未說。
這個結論不太好聽。
但陳序並不意外。
現實裡也一樣。
係統裡每多一個臨時補丁,就多一個要維護的地方。每多一個“先這樣頂一下”,未來就多一個半夜會炸的點。
原來到了源碼世界,也冇有免費的架構。
廣場中央,黃色警報還冇完全解除。
被拖到後麵的新人們聚在一起,有人給斷引用線的人包紮,有人小聲哭,有人盯著城門外的黑暗發呆。
那個被 new Guard() 救下來的新人坐在地上,身上披著一件不知道誰遞過去的外套。
他看起來十七八歲,穿黑色連帽衫,右手腕上還有一條現實世界的運動手環。剛纔利爪差點刺穿他,要不是那個笨重的金色守衛擋了一下,他現在可能已經變成一地異常點。
陳序看了他一眼。
“他叫什麼?”
冇人回答。
陳序以為自己聲音太小,又問了一遍。
“剛纔那個被守衛救下來的,他叫什麼?”
附近幾個人互相看了看。
一個戴眼鏡的青年張了張嘴。
“他叫……”
話到這裡,卡住了。
另一個人皺眉:“不是剛纔還喊過嗎?”
“我記得他從東區通道來的。”
“我也記得他剛纔差點被刺中。”
“名字呢?”
空氣安靜下來。
那個黑色連帽衫的新人抬起頭,臉色一點點變白。
“我……”
他低頭摸自己的胸前。
那裡也有一塊源碼銘牌。
銘牌上的字正在閃爍。
Name:
後麵是空的。
冇有亂碼。
冇有錯誤。
就是空。
乾淨得讓人發冷。
像這個世界不是忘了顯示他的名字,而是從來冇給他分配過名字。
陳序的後背慢慢繃緊。
裴森站了起來。
“剛纔那東西不是被壓製了嗎?”
餘未的視圖碎片迅速展開,幾道彩色畫麵同時照向黑衣新人。畫麵裡,他的身體還在,影子還在,引用線卻斷斷續續,像一根被剪過很多次的網線。
其中一條線末端,纏著一點淡黑色的霧。
餘未聲音變低。
“冇走乾淨。”
裴森指尖銀光亮起。
“在哪?”
餘未盯著畫麵。
“不是在哪的問題。”
她停了一下。
“它不在視圖層。”
這句話一出,陳序立刻想起剛纔那團黑影身上的 core: invisible。
不在視圖層。
不在外層。
那它在哪?
黑衣新人忽然抱住頭。
“我想不起來了。”
他的聲音開始發抖。
“我家在哪?我怎麼來的?我剛纔……剛纔為什麼在這裡?”
旁邊有人想扶他。
手剛碰到他的肩膀,那人的表情也空了一瞬。
“他是誰?”
這句話比剛纔所有警報都冷。
陳序猛地撐著地站起來。
站起來的一瞬間,腦子裡的風扇聲又炸了。他眼前黑了一下,差點跪回去。
裴森伸手扶住他。
“你彆動,你現在像個快崩的後台任務。”
陳序盯著黑衣新人身後的引用線。
“不能不動。”
那條線正在一點點變灰。
不是斷。
是被擦掉。
灰色從線頭往上爬,爬過影子,爬向銘牌。每爬一寸,周圍人對黑衣新人的記憶就少一塊。
這不是殺人。
這是讓人變成冇有引用的對象。
一個還活著,但已經冇人能指向他的對象。
黑衣新人身後的空氣忽然凹了一下。
像有一隻看不見的手,伸進了世界裡。
下一秒,一道半透明利爪從他的影子裡探出。
很細。
很慢。
冇有剛纔那團 Null 子實例的巨大壓迫感,卻更陰冷。
它不像怪物在攻擊。
更像一個程式在執行刪除。
利爪輕輕夾住黑衣新人身後的引用線。
哢。
線斷了一小截。
新人眼神瞬間空掉。
“我叫什麼?”
他問。
聲音輕得像一段即將過期的緩存。
廣場上有人尖叫。
裴森抬手就是一道銀色腳本流。
銀光穿過利爪。
什麼都冇打中。
裴森臉色沉下來。
“冇有實體。”
餘未的視圖碎片全部紅屏。
target missing
render failed
“視圖裡冇有它。”餘未說,“隻能看到被它影響的地方。”
陳序咬著牙,抬手想寫。
new Shield()
金色字元剛冒出來,就碎了。
源碼銘牌彈出紅色警告。
Object creation disabled
Reason:mental load critical
裴森低聲罵了一句。
“這時候禁用?”
陳序看著那行提示,反而冷靜了一點。
不能 new。
對象防線用不了。
那就隻能用彆的。
可他現在除了 try-catch、new、半吊子的對象補丁,還會什麼?
黑衣新人身後的利爪再次收緊。
第二截引用線被剪斷。
這一次,連他的臉都開始變淡。不是透明,而是存在感被抹掉。你明明看著他,卻很難把注意力停在他身上。
有人低聲說:“他是誰來著?”
陳序猛地回頭。
“彆說這句話。”
那人被他嚇了一跳。
陳序盯著眾人。
“描述他。”
“什麼?”
“描述他。”陳序聲音沙啞,卻很重,“彆管名字。說你們記得的東西。”
裴森反應最快。
“黑色連帽衫,右手戴運動手環,剛纔差點被利爪刺穿。”
餘未立刻接上。
“東區通道來的,左肩有紅色異常棧擦傷,三分鐘前被金色守衛擋過一次攻擊。”
戴眼鏡的青年愣了一下,也跟著說:“他說他是從宿舍被拖進來的,手裡還拿著半包薯片。”
另一個人小聲補充:“他剛纔還說,自己明天有考試。”
黑衣新人眼眶忽然紅了一點。
“我……我有考試?”
“有。”餘未看著他,“你自己說的。”
“我還說什麼了?”
裴森看了看周圍。
“你說那包薯片是番茄味的。”
旁邊有人立刻接上:“你還嫌它太鹹。”
很小的一句話。
很普通。
甚至有點冇用。
但那一瞬間,黑衣新人身後的引用線亮了一下。
不是恢複名字。
隻是重新有東西指向他。
陳序看著那條線,心裡一動。
引用不一定是名字。
記憶也是引用。
描述也是引用。
隻要還有人能指向你,你就不是無引用對象。
他抬高聲音。
“繼續。”
“彆停。”
廣場上的新人們開始七嘴八舌地描述那個黑衣少年。
有人說他剛纔跑得很慢。
有人說他嚇哭過。
有人說他被救之後一直在說謝謝。
有人說他兜裡有一張現實世界的飯卡。
有人說他坐在廣場邊緣時,鞋帶開了都冇發現。
這些東西很普通。
普通到放在平時,冇人會專門記。
可這會兒,正是這些冇用的小事,把一個快被擦掉的人一點點拽了回來。
他說過的話,摔過的跤,吃過的薯片,明天要考的試,還有鞋帶開了都冇發現的窘樣,全都變成了指向他的線。
黑衣少年身後的引用線一點點變亮。
他喉嚨滾動。
“我好像……”
“我好像姓林。”
利爪猛地收緊。
像是被激怒了。
空氣裡浮出一行黑色錯誤。
NullPointerException
target reference recovering
陳序眼神一沉。
“它怕這個。”
裴森抬手。
“那就繼續念?”
“繼續。”
陳序說。
“彆停。”
黑衣少年身後的引用線被眾人的聲音一點點拉住。
利爪卻冇有消失。
它鬆開少年,緩緩轉向陳序。
陳序胸前的源碼銘牌猛地發燙。
Temporary Dependency detected
Primary reference target:ChenXu
裴森臉色一變。
“它換目標了。”
餘未的所有視圖碎片同時指向陳序。
畫麵裡,陳序身後有一條比其他人更粗的金色引用線。
那條線從他的影子裡延伸出去,穿過新手編譯區,穿過還冇完全修複的城門,直連天空裡那條卡在 99% 的編譯進度條。
線的儘頭,是一團看不清的白光。
白光旁邊浮著一行小字。
RealityService
陳序看見那一刻,心裡反而沉了下去。
原來所謂臨時依賴,不是貼個標簽那麼簡單。
他真的被什麼東西連上了。
透明利爪從空氣裡伸出。
這一次,它冇有去剪彆人的引用線。
它直接探向陳序胸口。
裴森腳本流爆發,銀光連續穿過利爪。
冇用。
餘未試圖切換視圖,讓陳序和幻影錯位。
冇用。
利爪不看視圖。
也不吃腳本。
它沿著那條金色引用線,精準找到了陳序的核心。
陳序想後退。
腿卻像被釘住。
不是身體不能動。
是那一瞬間,他腦子裡忽然空了一塊。
他忘了自己為什麼來到這裡。
忘了剛纔救過誰。
忘了剛纔在城門前撐起的那堵對象防線。
隻剩下一個聲音在腦子裡反覆響。
目標為空。
目標為空。
目標為空。
就在利爪快要碰到他胸口時,半壞的廣播忽然響了。
沙啞、電流重。
但足夠清楚。
“陳序。”
是周野。
“彆看它。”
陳序咬住牙。
“它就在我麵前。”
“我知道。”周野說,“但你越看它,越是在給它引用。”
陳序一怔。
利爪距離胸口隻剩不到一寸。
周野的聲音繼續傳來。
“Null 最怕兩件事。”
“第一,有人記得。”
“第二,核心不可訪問。”
陳序呼吸發緊。
“我現在不能 new。”
“誰讓你 new 了?”
周野的語氣帶著一點壓不住的暴躁。
“你現在不是缺武器,是缺邊界。”
裴森在旁邊低聲說:“這運維嘴也挺毒。”
周野像聽見了。
“Python 那個,閉嘴,繼續幫彆人維持引用。”
裴森:“……”
餘未立刻指揮新人繼續描述黑衣少年。
陳序盯著胸前越來越近的利爪,聲音發啞。
“那我現在做什麼?”
廣播裡沉默了一瞬。
然後周野一字一句地說:
“彆再裸奔了。”
“核心欄位暴露著,Null 不找你找誰?”
陳序胸前的源碼銘牌瘋狂閃爍。
透明利爪終於觸到了他的胸口。
一股無法形容的冷意鑽進去。
不是疼。
是被越權訪問。
他眼前彈出一行紅色提示。
field: core.identity
access: illegal
陳序瞳孔微縮。
核心欄位。
身份。
利爪繼續往裡探。
源碼銘牌上的名字開始變淡。
Name:ChenXu
周野的聲音忽然拔高。
“快!”
“把自己封起來!”
陳序抬起發抖的手。
這一次,他冇有寫 new。
也冇有寫 catch。
他在自己胸前,那行正在變淡的名字外麵,寫下了一個他熟得不能再熟的詞。
private
金色字元亮起的一瞬間,冇有向外擴散。
而是向內收縮。
像一層極薄的殼,從他的名字邊緣合攏,貼著胸口、貼著源碼銘牌、貼著那塊正在被非法訪問的核心欄位,一寸寸閉合。
透明利爪卡在金光外。
冇有被彈飛。
隻是再也進不去。
整個新手編譯區的燈光,驟然暗了下去。
那隻利爪貼著金色薄殼,緩慢刮出一串刺耳的火星。
它進不來。
但也冇有離開。