首頁 分類 排行榜 閱讀記錄 我的書架

第2章 補丁線上

2026-04-29 作者:小怡不吃魚

補丁線上

沈清珩是被手機震動吵醒的。

不是鬧鐘。不是微信。是那個介面。

他迷迷糊糊地從枕頭底下摸出手機,螢幕亮得刺眼。凌晨六點十七分。他平時都是八點半起床的。

主面板上多了一條新訊息。

【系統公告】

“補丁線上”社群已開放。

天命人可透過社群接取工單、組隊協作、兌換獎勵。

活躍度低於10%的天命人將被取消資格。

取消資格。

這四個字讓他瞬間清醒了。

他坐起來,揉了揉眼睛,仔細看了一遍公告。活躍度低於10%會被取消資格——甚麼意思?會被“解僱”?被解僱之後會發生甚麼?是失去系統介面那麼簡單,還是有別的後果?

公告裡沒說。

沈清珩點開了“社群”標籤頁。

介面變了。昨晚還是一個簡陋的論壇,現在已經變成了一個功能完整的社群平臺。有“工單大廳”“組隊招募”“積分商城”“排行榜”“Wiki百科”等多個板塊。

頂部有一個醒目的橫幅:

歡迎,第號天命人。

您的當前排名。

一晚上掉了將近一萬四千名。

沈清珩皺了下眉,點開了“排行榜”。

榜單很長,只顯示前一千名。第一名是一個ID叫“”的人,積分已經達到了驚人的分。第二名分,第三名分。從第四名開始斷層式下跌,到第一千名時積分只剩310分。

而他自己只有50分。

他盯著那個榜單看了一會兒,然後點開了“Wiki百科”。

介面跳轉到一個類似知識庫的頁面,目錄分了好幾大類:“系統概述”“工單系統”“積分機制”“天命人守則”“常見問題”。

他點開了“系統概述”。

頁面載入了半秒鐘,彈出了一段看起來像是機器翻譯的文字:

“蓋亞指令”是管理地球物理規則、因果律、機率分佈的核心系統。系統於公元0年上線,持續執行至今。2025年起,系統檢測到區域性規則異常頻發,超出自動修復閾值,故啟動“神隕雨”協議,隨機選取人類個體作為“天命人”,協助修復規則漏洞。

公元0年上線。

沈清珩盯著這行字,手指微微發涼。

公元0年。兩千年。這套系統已經執行了兩千年。

他繼續往下讀。

天命人透過“程式碼注入”方式修復異常。注入程式碼需符合“蓋亞指令”的語法規範,該系統語法與JavaScript高度相似,但包含更多面向物理世界的原生物件和方法。

原生物件包括但不限於:

- gravity(重力)

- friction(摩擦力)

- probability(機率)

- causality(因果律)

- (熱力學)

每個原生物件都有可讀寫的屬性和可呼叫的方法。具體語法請參考“程式碼注入指南”。

沈清珩感覺自己的太陽xue在跳。

這個系統的語法和JavaScript高度相似。面向物理世界的原生物件。重力、摩擦力、機率、因果律。

他昨晚下意識敲的那段程式碼——ty = 9.8——就是修改了重力物件的一個屬性。

他沒有學過這個。但他就是會。

他點開了“程式碼注入指南”,逐字逐句地看。指南寫得非常詳細,有語法說明、有示例程式碼、有常見錯誤和解決方案。但越看越覺得不對勁。

這份指南不是給新手看的。

它預設讀者已經掌握了某種基礎的“程式碼感知能力”——能夠“看見”現實世界中隱藏的規則漏洞。指南里用了大量篇幅講解如何“感知”到漏洞的位置和性質,而不是如何“學習”這門語言本身。

就像是……這門語言是天命人生來就會的。

不。不是生來就會。是被“神隕雨”淋到之後就會。

沈清珩把手機放下,靠在床頭,盯著天花板發了一會兒呆。

然後他又拿起了手機,點開了“工單大廳”。

---

工單大廳裡列出了當前所有可接取的工單。每個工單都有型別、難度、預估耗時、獎勵積分和接取按鈕。

他快速瀏覽了一遍:

· 【工單#0023】摩擦係數異常(難度:C,獎勵:30積分)

· 【工單#0024】機率偏斜(難度:B,獎勵:80積分)

· 【工單#0025】聲速波動(難度:C,獎勵:35積分)

· 【工單#0026】區域性重力畸變(難度:B,獎勵:100積分)

· 【工單#0027】因果關係環(難度:A,獎勵:300積分)

· ......

C級工單最多,B級大概有十幾個,A級只有三個。還有一個S級工單,獎勵800積分,但顯示“已被接取”。

沈清珩沒有急著接單。他退出工單大廳,點開了社群論壇。

論壇的活躍度比他想象的要高得多。凌晨六點多,新帖子的重新整理速度已經快到幾乎每幾秒鐘就有一條。

熱門帖置頂在最上面,標題用紅色高亮標出:

【置頂】【緊急】關於“活躍度低於10%將被取消資格”的解讀

發帖人的ID叫“老周不是老油條”,積分排名算是比較靠前的天命人。帖子內容寫得很長,沈清珩認真看了起來。

“各位天命人兄弟姐妹,我是老周。昨天第一批被‘神隕雨’淋到的人之一。系統出了新公告,很多人私信問我‘取消資格’是甚麼意思,我統一回復一下:

第一,目前沒有任何可靠資訊表明‘取消資格’的後果是甚麼。有人說會死,有人說只是失去系統介面。我個人傾向於後者,因為如果後果是死亡,系統公告的語氣應該會更嚴肅一些。但我不敢保證,建議大家不要拿命去賭。

第二,‘活躍度’的計算方式已經有人摸清楚了:每天至少接取或完成1個工單,或者每週完成至少7個工單,可以保持活躍度在安全線以上。週末可能會放寬標準,但目前不確定。

第三,我建議大家不要單打獨鬥。這個系統太複雜了,很多工單一個人搞不定。我已經加了一個群,群裡有三百多個人,大家互相幫忙、互通訊息。想加群的私信我,我拉你們。

最後說一句:別慌。天塌不下來。就算天要塌,我們這幫人也能給它修好。”

沈清珩看完帖子,猶豫了一下,還是私信了老周。

他:老周你好,我想加群。

對面回覆得很快。

老周不是老油條:來了兄弟。你多少分?甚麼專業背景?

他:50分。程序員。

老周不是老油條:程序員?太好了!我們群裡正缺能看懂程式碼的。你等我拉你。

一分鐘後,沈清珩收到了一個群連結。群名很直白,叫“補丁線上互助群”,已經有一千九百多個人了。群裡訊息刷得飛快,他還沒來得及看,就被@了。

老周不是老油條:@沈清珩新人,給大家介紹一下自己。

他想了想,打了幾個字:大家好,沈清珩,後端開發,昨晚剛被選上,請多關照。

群裡瞬間炸了。

“臥槽程序員大佬!”

“大佬大佬,快給我們講講這個程式碼注入到底甚麼邏輯?”

“我昨晚試著敲程式碼,完全不work,大佬有沒有教程?”

“求帶!!!我願意用我僅剩的30積分換大佬的指導!”

沈清珩有點懵。他沒想到程序員這個身份在“天命人”群體裡這麼稀缺。

他回覆:我也剛入門,談不上指導。不過大家可以把自己寫的程式碼發給我,我幫你們看看問題在哪。

接下來半個小時,他收到了四十幾條私信,全是各種“程式碼注入”失敗的案例。

他一條一條地看,發現大多數人的問題都很基礎——語法錯誤、變數未定義、邏輯判斷遺漏邊界條件。這些問題在軟體開發領域是最基礎的常識,但對於沒有程式設計經驗的人來說,確實很難自己解決。

他一一回復,幫他們修改程式碼。每修改完一個,對方都會發來一大串感謝的表情包。

處理完這些私信之後,他又看了一眼排行榜。他的排名從掉到了。

又掉了四千多名。

他必須接工單了。

---

沈清珩回到了工單大廳,重新瀏覽了一遍可接取的工單。

他排除了A級和B級——以他目前只有50積分、沒有任何實戰經驗的狀態,接高難度工單太冒險了。他需要從C級開始,先摸清楚工單的具體流程。

C級工單裡,有一個引起了她的注意:

【工單#0025】聲速波動

位置:上海市浦東新區世紀大道

描述:該區域內聲音傳播速度在340m/s至480m/s之間無規律波動。已造成多起交通事故(駕駛員聽不到喇叭聲)。

難度:C

預估耗時:20分鐘

獎勵積分:35

地點在上海,和他住的靜安區不算太遠。地鐵過去大概四十分鐘。20分鐘的預估耗時,說明修復難度不大。

他點選了“接取”。

介面跳轉到一個新的頁面,上面顯示著工單的詳細資訊、當前的“異常值”曲線圖、以及一個倒計時——他需要在兩小時內到達工單地點並開始修復。

頁面底部是一個程式碼編輯器,目前是灰色的,提示“到達目標區域後啟用”。

沈清珩起床洗漱,換了一件乾淨的黑色T恤,套上衛衣,揣著手機出了門。

---

上午八點十二分,沈清珩到達了世紀大道。

按照系統提供的高精度定位,異常區域的核心點在一座人行天橋的正中央。早高峰剛過,天橋上的人不算太多,三三兩兩的上班族匆匆走過,偶爾有人在中間的欄杆處停下來拍照片——遠處陸家嘴的“三件套”在這個角度確實很好看。

沈清珩走到天橋正中央,手機震了一下。

【提示】已進入目標區域。程式碼編輯器已啟用。

他靠在欄杆上,開啟編輯器。編輯器上方多了一個實時監測的面板,顯示著周圍的聲速波動曲線——一條不斷上下抖動的線,像心電圖一樣跳得毫無規律。

他需要修復這個。

沈清珩深吸了一口氣。

如果是普通的程式設計問題,他現在應該開始分析原因了——是甚麼導致了聲速異常?是整個區域內的聲速統一波動,還是隻有特定介質裡的聲速異常?空氣中的聲速?固體中的聲速?還是兩者兼有?

但他沒有足夠的資訊。

系統給他的資訊太少了。只有“聲速在340-480之間無規律波動”這一句描述,以及那條心電圖一樣的曲線。沒有日誌,沒有堆疊資訊,沒有錯誤程式碼。

這不像是修Bug。

這像是……反向工程。

他需要先搞清楚這個異常是甚麼,然後才能想怎麼修復。

沈清珩閉上眼睛,努力去“感知”。

指南里說,天命人天生就有“程式碼感知能力”。他昨晚修復重力異常的時候,沒有刻意去感知甚麼,只是下意識地做出了判斷。那個判斷來得很快,快到他根本沒有意識到自己在做甚麼。

但現在是白天。周圍有人。有車流聲。有風。有太多幹擾資訊。

他需要在這種環境下找到那個“異常”的感覺。

他深呼吸了三次。

第一次,清空腦子裡的雜念。

第二次,把注意力集中在“聲音”上。

第三次,試著去“看”——不是用眼睛看,而是用某種更深層的感官,去看聲音背後的規則。

然後他“看到了”。

不是用眼睛,而是用某種他無法描述的方式。他看到空氣中瀰漫著一層淡淡的光暈——不是昨晚那種發光的雨滴,而是像熱成像儀裡看到的溫度分佈一樣,不同區域的光暈密度不同。

在這個光暈的最深處——天橋正中央偏左兩米的位置——有一個小小的“結”。像是一根繩子上的結,像是程式碼中的一條死迴圈。

那個“結”在不斷地向外傳送某種訊號,干擾著周圍聲波的傳播。

那就是異常的根源。

沈清珩睜開眼睛,走向那個位置。

他站在那個“結”的正上方。開啟編輯器,開始“寫”程式碼。

不。不是“寫”。

是“翻譯”。

他感知到了那個“結”的本質——它是一段殘留的程式碼,像是之前某個工單的“副作用”,被遺留在了這裡。那段程式碼的邏輯是:每隔0.3秒,將聲速乘以一個隨機係數。

沈清珩需要做的是:找到這段殘留程式碼的“控制代碼”,然後把它刪除。

但在“蓋亞指令”的語法裡,不能直接刪除。只能覆蓋。用新的、正確的程式碼去覆蓋舊的、錯誤的程式碼。

他的手指在鍵盤上飛快地敲擊:

```javascript

// 定位異常源

let = locate('ly', {

[, ],

radius: 0.5

});

// 檢查異常源的當前狀態

if ( === '') {

// 如果確認是殘留程式碼,將其覆蓋為預設值

rite({

sound: {

speed: {

air: 340,

solid: 340,

liuid: 340

},

modifier: null

}

});

}

```

他點了“提交”。

編輯器上方的那條曲線,像被一隻無形的手撫平了一樣,瞬間變成了一條直線。

340m/s。

異常消失了。

手機震了一下。

【工單#0025】已修復。

修復耗時。

獎勵:運維積分+35。當前積分:85。

排名:第名。

這次修復用了七分鐘。跟上次的四秒完全不能比。

但排名前進了七千多名。

沈清珩鬆了一口氣,把手機揣回兜裡。就在他轉身準備離開天橋的時候,有人拍了拍他的肩膀。

他回過頭。

一個四十多歲的中年男人站在他身後,穿著深灰色的夾克,戴著黑框眼鏡,頭髮有點亂,看起來像是一個還沒睡醒的大學教授。他的嘴角掛著一絲若有若無的微笑。

“小夥子,”中年男人的聲音不大,但很清晰,“你剛才寫的程式碼,第三行有一個冗餘判斷。”

沈清珩愣住了。

“if ( === ''),”中年男人重複了一遍他的程式碼,語氣平淡得像在點評一個學生的作業,“這個判斷是多餘的,因為locate函式返回的物件,如果找不到目標,會直接丟擲異常,不會返回一個type不等於的物件。”

沈清珩盯著他。

“你……也收到了系統介面?”

中年男人笑了笑,從口袋裡掏出手機,亮出了那個熟悉的黑底白字介面。他的天命人ID是:QH-0009。

排名第九。

積分分。

沈清珩的眼皮跳了一下。

“你是?”

“那是我的小號,”中年男人輕描淡寫地說,“大號ID就叫‘周’。”

他把手機收起來,上下打量了沈清珩一眼。

“你有天賦,”周說,“昨晚那段重力修復,寫得很好。剛才這段雖然有個冗餘判斷,但整體邏輯清晰,定位準確。你是做甚麼工作的?”

“程序員。”

“難怪。”周點了點頭,“有興趣加入我的團隊嗎?”

“你的團隊?”

“‘補丁線上’只是系統給的一個官方名稱,”周說,“真正的天命人社群,遠比你在論壇上看到的要複雜。我們有自己的組織、自己的規則、自己的……”

他停頓了一下。

“……自己的敵人。”

沈清珩看著他。

“敵人?”

“你以為‘蓋亞指令’是神?”周的聲音壓低了一些,“不。它只是一個系統。有系統就有漏洞。有漏洞就有人去利用漏洞。有些天命人用程式碼修復Bug,有些天命人用程式碼製造Bug。”

他從口袋裡掏出一張黑色的卡片,遞給了沈清珩。

卡片上只有一個二維碼。

“如果你感興趣,掃這個碼。”周說完,轉身走進了人群中。

沈清珩低頭看著手裡的黑色卡片。

卡片的材質很特殊,不像紙也不像塑膠,摸起來有一種微弱的溫度感——像是活的。

他猶豫了五秒鐘,然後把卡片揣進了口袋。

A−
A+
護眼
目錄