凌晨一點,整棟實驗樓都暗了,只有三樓最東側那扇窗還亮着。
陸星河已經在這裏待了超過二十個小時。
屏幕的光映在他臉上,勾勒出深邃的輪廓和眼下的淡青。他盯着那幾行反復報錯的代碼,手指在鍵盤上快速敲擊,刪除,重寫,運行,再次報錯。
像走進了一個沒有出口的迷宮。
距離“星海·時隙”的最終測試版提交截止,還有四十七個小時。核心循環邏輯的一個致命bug,從昨晚十一點開始就困擾着他。每一次他以爲找到了問題所在,修復後,總會在另一個意想不到的地方崩壞。
這不是他第一次遇到技術瓶頸。創業以來,比這更棘手的難題他都解決過。但這次不一樣——這是他要給林初夏看的,第一個完整的、屬於“他們”的世界。
他不能失敗。
手機在桌上震了一下,屏幕亮起,跳出林初夏的消息:「還在實驗室嗎?」
陸星河停下手,揉了揉發澀的眼睛,回:「嗯」
那邊很快顯示“對方正在輸入”:「吃晚飯了嗎?」
他看了眼桌角早已冷透的三明治包裝紙,打字:「吃了」
「撒謊。沈學長說你本沒出過實驗室」
陸星河頓了頓。沈確這個大嘴巴。
他還沒想好怎麼回,那邊又發來:「我現在過來」
陸星河皺眉:「不用,太晚了」
「我已經在路上了。十分鍾」
陸星河盯着那行字,手指在鍵盤上懸停了幾秒,最終只回了一個字:「好」
放下手機,他靠在椅背上,閉上眼睛。疲憊像水一樣涌上來,從太陽蔓延到後頸。實驗室裏很安靜,只有服務器風扇持續的低鳴,和窗外偶爾駛過的夜車聲。
他想起了小時候,母親還在的時候。每次他熬夜看書,母親總會輕手輕腳地推門進來,放一杯溫牛在他桌上,摸摸他的頭,說“別太晚”。
母親去世後,就再也沒人這樣做了。
父親只會說“注意身體”,然後繼續要求他做到最好。保姆和家教換了一個又一個,沒人敢在凌晨一點進他的書房,沒人敢打擾“陸少爺的學習時間”。
後來有了沈確,那家夥會直接拎着夜宵踹門進來,嚷嚷着“人是鐵飯是鋼”。但沈確不會摸他的頭,不會用那種溫柔又無奈的語氣說“別太晚”。
林初夏會嗎?
他不知道。
但他發現自己有點期待。
林初夏提着保溫袋,推開實驗室的門時,看見的就是這樣一幅畫面:
陸星河靠在椅背上睡着了。電腦屏幕還亮着,密密麻麻的代碼在黑色背景上滾動。他的頭微微偏向一側,睫毛在眼下投出淺淺的陰影。白襯衫的袖子挽到手肘,露出一截線條分明的小臂。桌上散落着幾本攤開的專業書,和一個空了的水杯。
她輕手輕腳地走進去,把保溫袋放在桌上。實驗室比她想象中大,靠牆擺着三台顯示器,桌上堆着一些她叫不出名字的電子設備。窗台上那盆綠蘿還在,葉子在屏幕光的映照下泛着幽幽的綠。
空氣裏有很淡的咖啡味,混着電子設備運行時特有的、微熱的金屬氣息。
林初夏走到陸星河身邊,低頭看着他。
睡着的陸星河,看起來和平時不太一樣。眉宇間那道習慣性蹙起的淺痕鬆開了,嘴唇微微抿着,呼吸均勻綿長。燈光在他臉上投下柔和的陰影,讓他看起來……年輕了一些,也脆弱了一些。
她想起那些照片裏,他站在雪地中孤獨的背影。想起他抱着她說“如果你在就好了”時的聲音。
心裏某個地方,軟得一塌糊塗。
她脫下自己的外套,輕輕披在他身上。動作很輕,但陸星河還是醒了。
他睫毛顫了顫,睜開眼睛。起初是茫然的,焦距渙散,然後慢慢凝聚,落在她臉上。
“……初夏?”他的聲音帶着剛醒的沙啞。
“吵醒你了?”林初夏小聲說。
陸星河搖搖頭,坐直身體,肩上披着的外套滑落一半。他看了眼,是件淺粉色的針織開衫,有很淡的洗衣液香味。
“你怎麼來了?”他問,揉了揉眉心。
“給你送吃的。”林初夏打開保溫袋,從裏面拿出兩個保鮮盒,“餛飩,我媽包的,冷凍了帶過來的。還有紅糖姜茶,驅寒。”
陸星河看着那兩個保鮮盒,又看看她。實驗室的白熾燈在她頭頂落下光暈,讓她看起來毛茸茸的,像某種溫順的小動物。
“你不該這麼晚出來。”他說,但語氣沒有責怪的意思。
“那你也不該這麼晚不吃飯。”林初夏把保鮮盒推到他面前,“趁熱吃。”
陸星河沒動。他只是看着她,眼神很深,像在確認什麼。
“怎麼了?”林初夏被他看得有些不自在。
“沒什麼。”陸星河移開視線,拿起勺子,“只是……很久沒人給我送夜宵了。”
他說得很平淡,像在陳述一個事實。但林初夏聽出了底下那層很淡的、幾乎察覺不到的落寞。
她在他旁邊的椅子上坐下,看着他吃。
餛飩是鮮肉餡的,皮薄餡大,湯裏加了紫菜和蝦皮,熱氣騰騰。陸星河吃得很慢,但吃得很淨。紅糖姜茶裝在保溫杯裏,他喝了一口,停頓了一下,然後又喝了一口。
“好喝嗎?”林初夏問。
“嗯。”陸星河點頭,“不是很甜。”
“我知道你不喜歡太甜。”林初夏說,語氣裏有一點點小得意。
陸星河抬眼看了她一下,嘴角很輕地彎了彎:“你記得。”
“當然記得。”林初夏托着下巴,“你茶喝三分糖,豆漿不加糖,連吃水果都要挑不太甜的。”
陸星河沒說話,只是繼續低頭吃餛飩。但林初夏看見,他耳微微泛紅了。
這個人啊。她想。在外面那麼冷靜自持,其實這麼好懂。
吃完餛飩,陸星河把保溫盒收拾好,站起身活動了一下僵硬的脖子。林初夏也站起來,走到他電腦前。
屏幕上還是那些她看不懂的代碼。黑色背景,綠色和白色的字符,密密麻麻,像某種神秘的文字。
“這就是那個遊戲?”她問。
“嗯。”陸星河走過來,站在她身後,“測試版。”
“遇到問題了?”
“一個bug。”陸星河俯身,握住鼠標,滾動屏幕,“循環邏輯出了錯,主角會在某個節點卡住,出不去。”
他的聲音很近,就在她耳邊。溫熱的氣息拂過她的發梢,帶着紅糖姜茶淡淡的甜味。林初夏的耳朵有點熱。
“我能看看嗎?”她問。
陸星河頓了一下,然後側身讓開一點:“看吧。不過你可能看不懂。”
林初夏在椅子上坐下。陸星河站在她身後,一只手撐在桌沿,另一只手握着鼠標。這個姿勢幾乎把她圈在懷裏,她能聞到他身上很淡的、混合着咖啡和薄荷的味道。
“這裏是循環的入口。”陸星河點開一個文件,“主角每天醒來,都在同一天。他需要找到十二個線索,才能跳出循環。”
屏幕上跳出一個簡潔的界面:像素風的房間,一張床,一張書桌,一扇窗。窗外是靜止的星空。
“好漂亮。”林初夏輕聲說。
陸星河沒說話,只是作着小人在地圖上走動。小人走到書桌前,點擊記,出現一行文字:「今天是她離開的第1001天。我還是沒能忘記她。」
“她?”林初夏問。
“遊戲裏的另一個角色。”陸星河說,“主角想救的人。”
小人繼續探索。在床下找到一張泛黃的照片,照片上是女孩模糊的背影。在窗台上找到一枚戒指,內圈刻着「Forever」。在書架深處找到一本記,最後一頁寫着:「如果時間可以重來,我會對她說,我愛你。」
每一個線索,都指向那個“她”。
每一個線索,都藏着主角的遺憾和執念。
林初夏看着屏幕,看着那個小人在房間裏一遍遍走動,尋找,觸碰。像素風的畫面很簡單,但她仿佛能感受到主角的孤獨——那種在無限循環裏,尋找一個答案的孤獨。
“爲什麼是十二個?”她問。
“對應十二個時辰。”陸星河的聲音在她頭頂響起,“每個時辰,主角會想起關於她的一件事。想起一件,就得到一個線索。”
“那集齊十二個呢?”
“他就能跳出循環,去見她。”
“然後呢?”
陸星河沉默了一會兒。
“然後遊戲就結束了。”他說。
林初夏轉過頭看他。屏幕的光映在他臉上,明明滅滅。他的眼睛很專注地盯着代碼,眉頭微微皺着,像在思考什麼難題。
“陸星河。”她叫他。
“嗯?”
“你困在這個bug裏多久了?”
“……十八個小時。”
林初夏看了眼時間。凌晨一點四十七分。
“你去睡一會兒。”她說,“我幫你看着。”
陸星河笑了,很輕的一聲:“你看不懂代碼。”
“但我可以看着你睡。”林初夏站起來,轉過身面對他,“你需要休息。眼睛都紅了。”
陸星河看着她,看着她眼睛裏認真的光,拒絕的話卡在喉嚨裏。
“就一個小時。”林初夏伸出食指,“一個小時後我叫你。說不定睡一覺,思路就通了。”
陸星河最終還是妥協了。實驗室角落裏有一張簡易的折疊床,是平時通宵時用的。他從櫃子裏拿出毯子,鋪好,躺下。
林初夏拉過椅子,坐在床邊。
“閉上眼睛。”她說。
陸星河看着她,眼神在昏暗的光線裏顯得很柔軟。然後,他閉上了眼睛。
實驗室裏很安靜。只有服務器風扇的低鳴,和窗外偶爾傳來的風聲。林初夏坐在椅子上,看着陸星河睡着的臉。
他睡得很沉,呼吸均勻綿長。眉頭還是微微皺着,像在夢裏也在解決那個bug。睫毛很長,在眼下投出淺淺的陰影。
她想起蘇蔓的話:“陸星河那種人,是深淵。你看他的眼睛,就知道了。”
她不知道深淵是什麼樣。但她知道,陸星河的眼睛,在睡着的時候,很溫柔。
她看了他一會兒,然後輕手輕腳地起身,走到電腦前。屏幕已經暗了,她碰了下鼠標,屏幕重新亮起。
代碼還在那裏,密密麻麻,像一座等待被征服的山。
她看不懂。但她想爲他做點什麼。
她點開桌面上的文件夾,想找找有沒有什麼能幫上忙的。大部分文件夾都是英文名,她看不懂。但有一個文件夾,名字是中文的。
「For初夏」
林初夏的手指頓在觸摸板上。
For初夏。
給初夏。
她的心跳漏了一拍。
她回頭看了眼陸星河,他還在睡,呼吸平穩。她深吸一口氣,點開了那個文件夾。
裏面是十幾個文本文件,命名很有規律:「靈感_20231015」「靈感_20231022」「靈感_20231029」……
她點開最近的一個,期是三天前。
裏面記錄着一些零散的句子:
「她今天穿了淺藍色的毛衣。圖書館的燈光落在她頭發上,像鍍了層金邊。」
「她說桂花香讓她想起家鄉。南方小城,老房子,院子裏有棵桂花樹。」
「劇本第三章卡住了。她說主角的動機不夠強。我說,也許不是爲了救贖,是爲了證明存在。她眼睛亮了。」
「下雪了。她伸手接雪的樣子,像小孩。想把她藏進口袋裏。」
林初夏看着那些句子,呼吸一點點收緊。
她繼續點開其他的文件。
「靈感_20231022」:
「她怕黑。晚上回宿舍,總要走有路燈的那條路。」
「喜歡吃糖,但怕胖。每次吃完都要懊惱地捏捏臉。」
「寫劇本時習慣咬筆杆。筆帽上都是牙印。」
「靈感_20231029」:
「她說想去看極光。等遊戲做完,帶她去。」
「她的手很小,握在手裏像握着什麼易碎品。」
「今天說了“我們”。喜歡這個詞。」
林初夏一篇篇看下去。從九月到現在,幾十個文件,記錄着她的喜好,她的習慣,她說過的話,她做過的事。
有些她甚至自己都不記得了。
比如她怕黑這件事。她從來沒跟他說過,只是有一次晚上從圖書館出來,她下意識地選擇了有路燈的那條路。他注意到了。
比如她喜歡吃糖又怕胖。她只在他面前吃過一次糖,是那次他生病,她喂他的薄荷糖。之後她就再沒在他面前吃過。
他都記得。
不僅記得,還寫下來。
用他擅長的方式,用代碼之外的語言,一筆一劃地記錄下來。
林初夏的眼睛有點溼。她關掉文件夾,坐回椅子上,看着床上熟睡的陸星河。
月光從窗戶漏進來,落在他臉上,鍍了層柔和的銀邊。
她看了很久,然後俯身,很輕很輕地,在他額頭上落下一個吻。
像羽毛拂過。
陸星河在睡夢中動了動,但沒醒。
林初夏坐直身體,心髒跳得很快。臉很燙,像要燒起來。
她拿出手機,點開和陸星河的聊天窗口。往上翻,翻到很久以前的記錄。
那時他們還只是“協議關系”,聊天內容生硬又官方。
「明天晚上七點,圖書館三樓」
「好」
「下雨了,帶傘」
「謝謝」
「論壇的事,我會處理」
「嗯」
她一條條看下去,看着那些對話從生疏到熟悉,從官方到親密。
看着“陸學長”變成“陸星河”,看着“林同學”變成“初夏”。
看着他們從兩個陌生人,變成現在的樣子。
她關掉手機,趴在床邊,看着陸星河睡着的臉。
月光在他睫毛上跳躍,像細碎的星光。
她想,如果時間可以循環,她希望永遠停在這一刻。
停在這個凌晨的實驗室裏,停在他熟睡的側臉旁,停在她剛剛偷親了他的這個瞬間。
一個小時後,林初夏準時叫醒了陸星河。
他醒來時還有點迷茫,眼神渙散了幾秒才聚焦。看見她,愣了愣,然後才想起自己在哪。
“幾點了?”他聲音沙啞。
“兩點五十。”林初夏把保溫杯遞給他,“喝點水。”
陸星河接過,喝了幾口。溫熱的姜茶滑過喉嚨,驅散了睡意。
“有思路了嗎?”林初夏問。
陸星河坐在床邊,揉了揉臉,然後起身走到電腦前。他沒有立刻開始敲代碼,而是看着屏幕,看了很久。
林初夏站在他身後,不敢打擾。
忽然,陸星河眼睛亮了一下。
“我明白了。”他說,聲音裏帶着壓抑的興奮。
“明白什麼?”
“循環的邏輯錯了。”陸星河飛快地敲擊鍵盤,調出一個復雜的流程圖,“我一直以爲,主角需要集齊十二個線索才能跳出循環。但不對。”
他指着屏幕:“不是集齊,是理解。”
“理解?”
“對。”陸星河轉過椅子,看着她,眼睛裏閃着光,“主角被困在循環裏,不是因爲找不到線索,而是因爲他無法接受‘她已經不在了’這個事實。所以系統——或者說,他的潛意識——不斷地重置時間,讓他一遍遍尋找,以爲找到足夠的線索,就能救她。”
林初夏怔住了。
“但真相是,”陸星河繼續說,語速很快,“她早就死了。在循環開始的第一天,就死了。主角要做的不是救她,而是接受她的死亡,然後……帶着那些關於她的記憶,繼續活下去。”
實驗室裏安靜了幾秒。
只有服務器風扇的低鳴,和陸星河略顯急促的呼吸聲。
“所以……”林初夏慢慢地說,“遊戲真正的結局,不是主角跳出循環去見她,而是……在循環裏,和她好好告別?”
陸星河看着她,看了很久,然後笑了。
“對。”他說,“你懂。”
林初夏也笑了。她不懂代碼,不懂編程,但她懂故事,懂人物,懂那些藏在邏輯背後的情感。
“那你要改結局嗎?”她問。
“不。”陸星河轉回電腦前,手指在鍵盤上飛舞,“我要加一個隱藏結局。”
“隱藏結局?”
“嗯。”陸星河一邊敲代碼一邊說,“正常通關,主角會接受現實,跳出循環,繼續生活。但如果在某個特定時間點,做出某個特定選擇……”
他頓了頓,嘴角彎起一個很淡的弧度。
“主角會發現,那個女孩其實也在一個循環裏。一個和他同步的、反向的循環。她被困在生命的最後一天,而他被困在她死後的第一天。他們永遠在同一天裏相遇,卻永遠無法真正觸及彼此。”
林初夏屏住了呼吸。
“那……”她聲音很輕,“如果他們發現了呢?”
陸星河敲下最後一行代碼,按下回車。
屏幕暗下去,然後又亮起。像素風的房間消失了,取而代之的是一片浩瀚的星空。星空下,兩個像素小人面對面站着,中間隔着一條流動的銀河。
「隱藏結局已解鎖」
「成就:於星河深處相遇」
“如果他們發現了,”陸星河看着屏幕,聲音很輕,“他們就會明白,有些相遇,不是爲了相守,而是爲了……記住。”
林初夏看着屏幕,看着那兩個隔着銀河的小人,眼睛有點溼。
她想說什麼,但喉嚨發緊,發不出聲音。
陸星河轉過椅子,看着她。
“這個隱藏結局,”他說,“是給你的。”
林初夏愣住:“給我?”
“嗯。”陸星河點頭,“只有你能觸發。”
“爲什麼?”
“因爲觸發條件,”陸星河頓了頓,“是你劇本第三章裏的一句話。”
林初夏睜大眼睛:“哪句?”
陸星河沒回答,只是看着她,眼神溫柔得像要溢出水來。
“等你自己玩到的時候,”他說,“就知道了。”
林初夏看着他,看了很久,然後慢慢走過去,在他面前蹲下,握住他的手。
他的手很涼,指尖因爲長時間敲鍵盤而微微發紅。
“陸星河。”她叫他。
“嗯?”
“謝謝你。”她說,聲音有點哽咽,“謝謝你讓我看到……這麼好的世界。”
陸星河反握住她的手,很緊。
“該說謝謝的是我。”他說,“如果不是你,這個bug我可能永遠解不開。”
“爲什麼?”
“因爲……”陸星河看着她,眼神很深,“你讓我看到了另一種可能性。”
林初夏不懂代碼,不懂那些復雜的邏輯。但她懂他眼裏的光,懂他聲音裏的溫度。
這就夠了。
窗外,天邊泛起了魚肚白。凌晨的黑暗正在退去,新的一天即將開始。
陸星河看了眼時間:“快三點了。我送你回宿舍。”
“你還要繼續嗎?”林初夏問。
“bug解決了,剩下的就是調試和優化。”陸星河關掉電腦,站起身,“不着急。先送你回去。”
他們收拾好東西,關掉實驗室的燈,輕輕帶上門。
走廊很安靜,只有安全出口標志散發着幽幽的綠光。陸星河牽着林初夏的手,慢慢往樓下走。
“陸星河。”林初夏忽然說。
“嗯?”
“你文件夾裏那些……‘靈感’。”她小聲問,“爲什麼叫‘For初夏’?”
陸星河腳步頓了一下。
“因爲,”他說,聲音在空蕩的樓梯間裏回響,“那些都是關於你的。而關於你的一切,對我來說,都是靈感。”
林初夏的心髒,在那個瞬間,停跳了一拍。
然後,開始瘋狂地跳動。
他們走到一樓,推開玻璃門。凌晨的風吹過來,帶着涼意。陸星河很自然地把她的手放進自己大衣口袋裏。
“冷嗎?”他問。
“不冷。”林初夏搖頭。
他們走在寂靜的校園裏。路燈還亮着,但天邊已經露出淡淡的藍。梧桐樹的葉子在晨風中沙沙作響,像在竊竊私語。
快到宿舍樓時,陸星河的手機忽然響了。
他拿出來看,屏幕上顯示着一個名字:「父親」。
林初夏感覺到他握着她的手,微微收緊。
“接嗎?”她輕聲問。
陸星河盯着那個名字看了幾秒,然後按掉了電話。
“不接。”他說,聲音很平。
但林初夏看見,他的下頜線繃緊了。
手機又響了。還是「父親」。
陸星河再次按掉。
第三次響起時,林初夏輕輕拉了他一下:“接吧。萬一有急事呢?”
陸星河看了她一眼,眼神復雜。然後,他深吸一口氣,接起了電話。
“喂。”
電話那頭傳來陸正庭的聲音,因爲距離近,林初夏也能隱約聽見一些片段:
“……立刻回家……有重要的事……周家那邊……”
陸星河的臉色一點點沉下去。
“我知道了。”他打斷父親的話,“明天回去。”
那邊又說了什麼,語氣很重。
陸星河沉默了幾秒,然後說:“我會處理。”
掛了電話。
空氣忽然變得很沉。晨風吹過,帶不起一絲輕鬆。
“怎麼了?”林初夏問,心裏有不祥的預感。
陸星河把手機放回口袋,握緊她的手。
“沒什麼。”他說,但聲音裏的緊繃騙不了人,“家裏有點事,明天得回去一趟。”
“嚴重嗎?”
陸星河看着她,看了很久,然後很輕地搖了搖頭。
“不嚴重。”他說,“我會處理。”
可是林初夏看見,他眼睛裏剛剛因爲解開bug而燃起的光,正在一點點黯淡下去。
像黎明前的星星,在天亮時,隱去了光芒。
送林初夏到宿舍樓下時,天已經蒙蒙亮了。
“上去吧。”陸星河鬆開她的手,“再睡一會兒。”
“你呢?”林初夏問。
“我回實驗室,把最後一點工作做完。”陸星河說,“然後……”
他沒說完。
但林初夏知道,“然後”後面是什麼。
然後,他要回家。面對父親,面對周家,面對那些他一直在逃避的東西。
“陸星河。”她叫他。
“嗯?”
“不管發生什麼,”林初夏看着他,很認真地說,“我都在這裏。”
陸星河看着她,看着她眼睛裏堅定的光,看了很久。
然後,他低下頭,在她額頭上印下一個吻。
很輕,但很珍重。
“我知道。”他說。
林初夏轉身上樓。走到二樓窗邊時,她往下看。
陸星河還站在原地,仰頭看着她宿舍的方向。晨光熹微,在他身上鍍了層淡淡的金邊。他的身影在空曠的廣場上,顯得格外孤單。
他站了很久,然後才轉身,朝實驗樓的方向走去。
背影挺直,但不知爲什麼,林初夏覺得,那挺直的背影裏,藏着很重很重的東西。
重到快要把他壓垮。
她拿出手機,給他發了一條消息:
「到了告訴我」
很快,他回:
「好」
「睡吧,別擔心」
林初夏盯着那兩行字,看了很久。
然後,她關掉手機,走到窗邊,看着陸星河消失在晨霧中的背影。
天亮了。
但她的心裏,卻蒙上了一層陰影。
實驗樓,三樓。
陸星河推開實驗室的門,沒有開燈,徑直走到電腦前坐下。
屏幕亮起,隱藏結局的畫面還停留在那裏:兩個像素小人,隔着一條流動的銀河,遙遙相望。
他盯着那個畫面,看了很久。
然後,他點開那個名爲「For初夏」的文件夾,新建了一個文本文件。
命名:「靈感_20231105_凌晨」
在裏面打字:
「凌晨三點。她在我實驗室睡着了。呼吸很輕,像小貓。」
「偷親了我。以爲我不知道。其實我知道。」
「她說,不管發生什麼,她都在這裏。」
「我想相信。」
「但我怕。」
他打到這裏,停住。
手指在鍵盤上懸空,很久,沒有落下。
窗外,天光漸亮。
新的一天,開始了。
帶着所有已知和未知的風暴。
而他,必須獨自面對。