假雨在凌晨兩點四十七分停止。
音頻事件的計時器到了,Status: STOPPED,覆蓋半徑三百公尺的環境音驟然收場,最後幾秒鐘裡,雨聲稀了,然後停了,就像一場真正的雨慢慢變小最後消失,連收尾都做得很仔細。
SMD 沒有進入這個圈子裡。他們在兩百到三百公尺的外圍繞,系統化地掃,但還沒有具體縮到這棟樓的方向。
他把收集到的數據整理了一遍,準備去睡,然後注意到了一件之前沒仔細看的事。
在假雨的覆蓋範圍裡,環境代碼密度的分佈本來應該是平滑的——鐵南區是低精度環境,密度普遍偏低,沒有高密度的城市節點,只有偶爾的殘存設施代碼。
但在地圖的西北角,距離這裡大約兩百二十公尺,有一個點的密度讀數不對。
不是高,而是不均勻。就像一個表面看起來平滑的牆壁,但掃描儀在某個位置讀到一個異常的厚度——下面有什麼東西,但表面沒有顯示出來。
密度異常持續了整個音頻事件的運行週期,他之前一直把注意力放在追蹤 SMD 動向上,沒有細看那個點。現在他把那一段數據調出來,往裡仔細讀。
異常很小,只有大約 0.7 個精度單位的偏差,在一般的掃描裡會被當成背景噪音忽略。但它持續存在,不是隨機波動,而是保持穩定——像一個什麼東西在那裡,安靜地放著,已經放了很久了。
「謝哥,」陸離開口,「鐵南區西北方向兩百二十公尺的那棟樓,你熟嗎?」
謝鳴山在黑暗裡抬了一下頭,「舊倉庫片區,廢棄的,沒有人在那裡活動。有什麼問題?」
「有一個幽靈代碼的密度異常,穩定了整晚,不像自然衰減的結構。」
謝鳴山沉默了一下,「等天亮,別現在去。」
陸離把數據先存起來,閉上眼睛,試著讓腦子停下來。但他睡得很淺,一直在心裡把那個密度偏差翻來覆去地想。
第二天上午,他和林曉晴一起去了西北片區。
謝鳴山說的舊倉庫片區是一排老舊的磚造建築,比鐵南區主體更破,有些已經半坍塌,窗洞空著,地面長滿了野草。這裡沒有任何活動的標記,空氣裡有一種廢棄了很多年的氣味,代碼視角下,每一棟建築的標籤都是 [Deprecated] / Last_access: [NULL],意思是系統連最後的訪問時間都懶得記錄了。
密度異常的點,在其中一棟建築的外牆上。
外牆是普通的舊磚,大部分灰泥已經脫落,磚縫裡長著乾枯的地衣,沿著牆面有一些隨機的污跡和磨損痕跡。
但在代碼視角裡,那面牆上有東西。
不是一個整體的結構,而是散佈在整面牆上的細碎幽靈代碼——密度比正常的環境殘影高很多,而且它們的分佈不是隨機的。陸離把感知往牆面推,把那些幽靈代碼的位置在腦子裡標記出來,標記完之後往後退一步,從整體看——
那些幽靈代碼的分佈,有一個圖案。
不是很明顯,需要知道在看什麼才能看出來,但確實是圖案,而不是自然散落。
「林姐,」他說,「你能讀到這面牆上的幽靈代碼嗎?」
「有,讀到幾個,位置有點散。」她在旁邊說,「分佈不太自然,但我讀不出什麼意義,像是數據碎片,不成句。」
「因為它需要同時讀,不能一個個讀,」陸離說,「這是分佈式的。」
他把二境的多變數感知往最大限度推,試著同時把牆面所有幽靈代碼的位置和字符一起拉進來——
這比單個讀取難得多,需要把注意力分成非常多個細小的焦點,同時保持它們各自的清晰度,就像用十根手指同時彈十個不同的音,而不是一個個彈。他之前練習過多變數動態分析,但從沒試過把二十幾個分散的幽靈代碼點同時納入感知。
他花了大約三分鐘,把它們一起拉進來,然後在意識裡嘗試——
字符浮現了。
零散的,不完整,但有字符。不是代碼語法,是文字,繁體,帶著一種很舊的格式感,字與字之間的間距不均。
他把能讀到的部分存起來,退出那個感知狀態,整個人在牆邊靠了一下,腦子裡的算力消耗比預料的大。
「讀到了,但不完整,有幾段的幽靈代碼衰減太多,我只能讀到字符的輪廓,不確定具體是什麼字。」他說,「需要余浩然。」
余浩然接了電話,聽完情況,安靜了大概十秒鐘。
「你說讀到了部分字符,但有衰減損壞的段落?」
「對,大概三成左右的字符不確定,兩成是完全讀不到的。」
「把你能讀到的先說,我看看。」
陸離把那些字符逐一念出來,中間有停頓——停頓的地方是他讀不清楚的字。余浩然在電話那頭安靜地聽,偶爾問一個字符的形狀輪廓,問它的幽靈代碼殘影是偏哪個頻段,問附近的其他字符是什麼。
「你只讀到你的感知頻段能覆蓋的層,」他說,「這個訊息有多個頻段的分層,低頻段是你讀到的這些,高頻段在更深的幽靈代碼層,普通的讀取觸碰不到。」
「你能讀到高頻段?」
「我只讀,不寫,系統不會對我的感知觸發訪問警報,」余浩然說,帶著那種平靜的、只說陳述句的口氣,「所以某些設有訪問條件的幽靈代碼,我可以讀到你讀不到的部分。但我現在不在那裡。」
「你過得來嗎?」
停頓,然後他說:「二十分鐘。」
余浩然到的時候帶了一個筆記本,坐在廢棄建築旁邊的一根水泥柱上,把眼鏡推上去,對著那面牆開始讀。他讀的方式和陸離不一樣,不是把感知推出去,而是讓感知靜靜地攤開,像一面被動接收的薄膜,等待代碼自己浮現。
他讀了將近半個小時。
最後他在筆記本上寫了一列字,把本子遞給陸離:
「這是全部的文字,你對一下你讀到的。」
陸離把他之前記下來的內容和余浩然的對照,大部分是吻合的,有幾個他之前讀不清楚的字,余浩然的版本補全了。
完整的訊息,是這樣的:
你用了多少時間找到這裡?
如果你讀得到這行字,你的感知在第二層以上,你已經走過了最危險的那段路。
我在這面牆上藏了一個地址,用的是你不會想到的格式:把它的字符拆開,嵌進這面磚牆三十二個不同位置的幽靈代碼殘影裡,分成高、低兩個頻段,必須同時讀才能合並。
地址是:鐵南區舊閘口路十一號,地下一層。
它在 SMD 的地圖裡不存在。系統的代碼標籤顯示那塊地是空地,因為有人把記錄刪掉了。
去那裡之前先確認你沒有被跟著。裡面有你需要知道的事。
——那個被重置的人留給下一個被重置的人
陸離把那段話讀了兩遍。
林曉晴在旁邊靠近了一點,「什麼意思——『被重置的人留給下一個被重置的人』?」
「他知道他自己的記憶會被清掉,」陸離說,「所以他在這裡留了這個,讓下一個有同樣遭遇的人找到。」
余浩然把筆記本收起來,「這個訊息的幽靈代碼格式,按照衰減速率估算,大概是五到七年前寫的。那個時候我還沒接觸地下社群。」
謝鳴山沒有說話,陸離往他方向看了一眼,謝鳴山的表情是那種在想什麼但沒有說出來的樣子,眼神往那面牆上停了一下,然後移開了。
「你認識那個人?」陸離問。
「不確定,」謝鳴山說,字選得很慢,「五到七年前,鐵南區有一個我沒親眼見過的覺醒者,圈子裡有人提過他,說他在追一件很危險的事,然後某個時候消失了。有說是被清除的,有說是自己跑了,沒有人確認。」
他停了一下,「但我不知道他的名字。」
陸離把目光轉回那面牆,那些幽靈代碼已經進入他的感知記憶,細碎的字符圖案在腦子裡還留著殘影。
「閘口路十一號,」林曉晴輕聲重複了一下,「我知道那一帶,確實沒有任何標注,代碼視角裡那塊地是空地,但實體上有一棟舊建築在,我一直以為只是系統的渲染問題。」
「不是渲染問題,是有人刪掉了,」陸離說,「今晚去看。」
他們在傍晚散場,各自原路返回。林曉晴沒有一起走,她說要先確認那個區域的入口和 SMD 今天的動向,讓他先回去等。
陸離一個人走在鐵南區的邊緣路段,把那段訊息在腦子裡再讀了一遍。
被重置的人留給下一個被重置的人。
寫這段話的人,他知道自己的記憶會被清掉,知道後來的覺醒者裡會有一個和他一樣遭遇的人,而且他判斷這個人有能力找到並讀取他藏在這裡的訊息。
他不是隨便留的,他是針對一個特定的人留的。
陸離把這個邏輯轉了好幾圈。五到七年前,鐵南區,一個追著「很危險的事」然後消失的覺醒者。留給「下一個被重置的人」的訊息。
他記得謝鳴山在說那個覺醒者的時候,眼神往牆上停了那麼一下。
謝鳴山知道的比他說出來的更多。但謝鳴山現在沒有說,就代表那個多出來的部分,謝鳴山認為還不到說的時候。
陸離沒有回去問。
他往基地的方向走,街道兩旁的老建築在代碼視角裡靜靜地刷新著基礎參數,重力迴圈在腳下緩慢地運算,城市在它的固定節奏裡繼續轉,對它自己的底層密碼毫不知情。
今晚去閘口路十一號。