第1章
社恐程序員,靠修改規則封神
午夜公交車------------------------------------------,發現自己坐在一輛公交車的最末一排。。那種能把人骨頭搖散的晃。他抓了一下旁邊的扶手,手指蹭到一層灰。。?刷著刷著睡著了。一個剛被優化的程序員,投簡歷投到趴下,僅此而已。再一睜眼,怎么到了這兒。。連路燈都沒有的、濃稠的黑。車廂里的燈管倒是亮得刺眼,引擎聲嗡嗡地響,方向盤在自己轉。沒有司機。。社恐的本能——進了陌生環境,先找角落,再降低存在感。。,領帶歪到一邊,正用那條領帶擦汗,擦得滿頭滿臉都是。中間靠窗縮著個穿校服的女生,抱著書包,眼眶紅得像兔子。最后一排有個老頭閉著眼,表情平靜得跟坐公園長椅似的。還有一個人坐在靠門的位置,戴了頂棒球帽,帽檐壓得很低,看不清臉。,五個人。。。發件人欄是空的。內容只有幾行字:“歡迎乘坐午夜公交。以下是您的乘車須知,請嚴格遵守。. 本車無人駕駛,請勿進入駕駛室。. 到站后請您務必下車,每站必須有人下車。. 如果車內超過五人,請無視前兩條。”
陸則成把這三條讀了兩遍。
然后他又讀了一遍。
不是因為害怕。是因為這邏輯說不通。前兩條是強制指令——必須下車,每站都有人要下。第三條卻是個豁免條款,觸發條件偏偏定在“超過五人”。可這車上初始狀態就是五個人。剛好卡在線上。多一個,前兩條作廢;少一個,豁免消失。而眼下,就是臨界值。
他手指蹭了一下食指指腹。寫代碼留下的習慣,碰到*ug就蹭。
他腦子里緊接著閃過的那個念頭就是:“這規則是實習生寫的吧。”
這個副本的設計者是故意的。它從一開始就瞄準了五個人這個數,把人扔進一個需要死人才能驗證規則的局里。這不是邏輯錯誤。這是他以前最怕碰到的優先級沖突。平時測不出來,一上線整個系統全塌。而現在,他自己就是被扔進這個*ug里的變量。
手機又震了。
“第一站即將到達。請遵守乘車規則。”
車開始減速。
中年男人站了起來。“我不管了!什么惡作劇!我要下車!我還有個會——”
話沒說完。
燈閃了一下。人沒了。就像編譯器刪掉一行冗余代碼,憑空蒸發。領帶掉在地上。
女生死死捂住嘴,眼淚從指縫往下淌。老頭連眼皮都沒抬。棒球帽把帽檐往下壓了壓。陸則成盯著那條領帶,心跳擂鼓一樣。
然后他腦子里蹦出另一個念頭。第二條觸發。每站必須有人下車。剛才沒人下,所以違規的被**。可如果每站都要下人,到終點只剩一個人的時候怎么辦?規則二沒寫“當人不夠時該怎么處理”。這不是死鎖。這是死循環。一直跑到只剩最后一個,然后那個人被規則困在車里,沒有下一站,永遠下不去。
車停了。車門打開。站牌上一個字:“一。”
女生沖了下去。老頭慢悠悠踱著步子走了。
棒球帽站起來。他先朝女生座位的方向偏了偏帽檐——女生已經跑沒影了,那個角度剛好越過走道。然后把一張紙條放在旁邊座位上,下了車。
車廂里只剩陸則成。
這時他的視野變了。猩紅色從屏幕邊緣往外漫,三道規則開始扭曲。第二條旁邊彈出一個紅框:
邏輯沖突警告:規則2(強制下車)與規則3(超員豁免)構成死鎖依賴。漏洞等級:S。狀態:可編輯。
底下是倒計時。三十秒。
他盯著紅框,手指又蹭了一下指腹。眼前沒鍵盤,但他習慣性抬手虛敲——一個虛擬鍵盤彈了出來。后退鍵,字母鍵,輸入框。跟公司那臺電腦的布局一模一樣。
二十五秒。
這時候犯強迫癥會死的。可第二條規定是錯的。“務必”這個詞,把本可以活的路堵成了死胡同。
他手指在“務必”上停了停。刪掉。敲了兩個字。
“不必。”
倒計時歸零。屏幕閃了一下。第二條變成了:“到站后,請您不必下車。”
他吐出一口氣,才反應過來自己一直憋著。然后鼻子一濕,摸了把指尖,紅的。兩行鼻血滴在褲子上。
行。代價是流鼻血。能接受。
他起身準備下車。路過棒球帽的座位,上面還有大半杯豆漿,已經不冒熱氣了。他自己上車前好像也買過一杯,記不清喝完沒有。算了,不是自己的。他拿起旁邊的紙條。紙條邊角發皺,像被汗洇過。字跡潦草,但用力:
“你剛才是不是改了規則?別怕,我也能看到漏洞,只是沒法像你那樣改。如果收容所的人來找你,告訴他們你有邏輯解析能力,別說你能改。這玩意兒被太多人知道不安全。——江小魚。”
江小魚。那個抱書包的女生。她不僅知道規則被改了,還知道是他改的。在男人消失之后、沖下車之前那點時間,她寫了這張紙條,托棒球帽遞過來。他不確定他們認不認識。但紙條本身就說了一件事,她不是頭一回在這處境里保持冷靜。
車窗外有個無臉的影子正在轉頭,看向車內。
手機屏幕上的新規則還沒生成完,就被一行更深的紅色給蓋住了。不是新規則,是直接改寫:靜默覆寫。第六位乘客即為車內無人時仍在注視您的那位。請確認您能看到它。如確認,請閉上眼。
陸則成沒閉眼。他盯著那行深紅的字疊在原規則上面。有人在用比副本更高的權限往他眼前傳話。不是系統,不是副本自動反應。權限在人手里,不在規則里。這人比他更早摸進這套系統,但沒動規則,只會在暗處標一句不強制執行的提示。閃一下就沒了,快得來不及截圖。夠讓他記住。
他擦掉鼻血,把紙條揣進口袋,朝那扇還沒關的車門走。身后那杯不冒熱氣的豆漿被座椅棉套吸透了殘余的豆腥氣。他把杯子往里推了推,跨下站臺。
陸則成把這三條讀了兩遍。
然后他又讀了一遍。
不是因為害怕。是因為這邏輯說不通。前兩條是強制指令——必須下車,每站都有人要下。第三條卻是個豁免條款,觸發條件偏偏定在“超過五人”。可這車上初始狀態就是五個人。剛好卡在線上。多一個,前兩條作廢;少一個,豁免消失。而眼下,就是臨界值。
他手指蹭了一下食指指腹。寫代碼留下的習慣,碰到*ug就蹭。
他腦子里緊接著閃過的那個念頭就是:“這規則是實習生寫的吧。”
這個副本的設計者是故意的。它從一開始就瞄準了五個人這個數,把人扔進一個需要死人才能驗證規則的局里。這不是邏輯錯誤。這是他以前最怕碰到的優先級沖突。平時測不出來,一上線整個系統全塌。而現在,他自己就是被扔進這個*ug里的變量。
手機又震了。
“第一站即將到達。請遵守乘車規則。”
車開始減速。
中年男人站了起來。“我不管了!什么惡作劇!我要下車!我還有個會——”
話沒說完。
燈閃了一下。人沒了。就像編譯器刪掉一行冗余代碼,憑空蒸發。領帶掉在地上。
女生死死捂住嘴,眼淚從指縫往下淌。老頭連眼皮都沒抬。棒球帽把帽檐往下壓了壓。陸則成盯著那條領帶,心跳擂鼓一樣。
然后他腦子里蹦出另一個念頭。第二條觸發。每站必須有人下車。剛才沒人下,所以違規的被**。可如果每站都要下人,到終點只剩一個人的時候怎么辦?規則二沒寫“當人不夠時該怎么處理”。這不是死鎖。這是死循環。一直跑到只剩最后一個,然后那個人被規則困在車里,沒有下一站,永遠下不去。
車停了。車門打開。站牌上一個字:“一。”
女生沖了下去。老頭慢悠悠踱著步子走了。
棒球帽站起來。他先朝女生座位的方向偏了偏帽檐——女生已經跑沒影了,那個角度剛好越過走道。然后把一張紙條放在旁邊座位上,下了車。
車廂里只剩陸則成。
這時他的視野變了。猩紅色從屏幕邊緣往外漫,三道規則開始扭曲。第二條旁邊彈出一個紅框:
邏輯沖突警告:規則2(強制下車)與規則3(超員豁免)構成死鎖依賴。漏洞等級:S。狀態:可編輯。
底下是倒計時。三十秒。
他盯著紅框,手指又蹭了一下指腹。眼前沒鍵盤,但他習慣性抬手虛敲——一個虛擬鍵盤彈了出來。后退鍵,字母鍵,輸入框。跟公司那臺電腦的布局一模一樣。
二十五秒。
這時候犯強迫癥會死的。可第二條規定是錯的。“務必”這個詞,把本可以活的路堵成了死胡同。
他手指在“務必”上停了停。刪掉。敲了兩個字。
“不必。”
倒計時歸零。屏幕閃了一下。第二條變成了:“到站后,請您不必下車。”
他吐出一口氣,才反應過來自己一直憋著。然后鼻子一濕,摸了把指尖,紅的。兩行鼻血滴在褲子上。
行。代價是流鼻血。能接受。
他起身準備下車。路過棒球帽的座位,上面還有大半杯豆漿,已經不冒熱氣了。他自己上車前好像也買過一杯,記不清喝完沒有。算了,不是自己的。他拿起旁邊的紙條。紙條邊角發皺,像被汗洇過。字跡潦草,但用力:
“你剛才是不是改了規則?別怕,我也能看到漏洞,只是沒法像你那樣改。如果收容所的人來找你,告訴他們你有邏輯解析能力,別說你能改。這玩意兒被太多人知道不安全。——江小魚。”
江小魚。那個抱書包的女生。她不僅知道規則被改了,還知道是他改的。在男人消失之后、沖下車之前那點時間,她寫了這張紙條,托棒球帽遞過來。他不確定他們認不認識。但紙條本身就說了一件事,她不是頭一回在這處境里保持冷靜。
車窗外有個無臉的影子正在轉頭,看向車內。
手機屏幕上的新規則還沒生成完,就被一行更深的紅色給蓋住了。不是新規則,是直接改寫:靜默覆寫。第六位乘客即為車內無人時仍在注視您的那位。請確認您能看到它。如確認,請閉上眼。
陸則成沒閉眼。他盯著那行深紅的字疊在原規則上面。有人在用比副本更高的權限往他眼前傳話。不是系統,不是副本自動反應。權限在人手里,不在規則里。這人比他更早摸進這套系統,但沒動規則,只會在暗處標一句不強制執行的提示。閃一下就沒了,快得來不及截圖。夠讓他記住。
他擦掉鼻血,把紙條揣進口袋,朝那扇還沒關的車門走。身后那杯不冒熱氣的豆漿被座椅棉套吸透了殘余的豆腥氣。他把杯子往里推了推,跨下站臺。