決心落地的瞬間,空氣里仿佛都凝著(zhù)股蓄勢待發(fā)的張力。我坐在吱呀作響的電腦前,指尖在泛黃的鍵盤(pán)上敲出清脆的節奏,窗外的月光順著(zhù)窗簾縫隙淌進(jìn)來(lái),在屏幕上投下一道細長(cháng)的銀線(xiàn)——再過(guò)十幾個(gè)小時(shí),《熱血傳奇》就要開(kāi)服了,而我必須在天亮前做好最關(guān)鍵的準備。
首要任務(wù)是打造一個(gè)封包外掛。這年頭的傳奇,處處是磨人的坎兒,不解決這些痛點(diǎn),別說(shuō)搶占先機,能不能在新手村站穩腳跟都難說(shuō)。就說(shuō)那助跑機制,角色從站定到邁開(kāi)步子,總得有半秒的滯澀,像被無(wú)形的線(xiàn)牽著(zhù)腳踝。搶BOSS時(shí),這半秒足夠讓別人的刀先沾到怪的血;PK時(shí),更是能把你釘在原地挨揍,眼睜睜看著(zhù)血條往下掉。還有蠟燭,簡(jiǎn)直是《熱血傳奇》里的催命符,背包里沒(méi)備足,走著(zhù)走著(zhù)就跌進(jìn)伸手不見(jiàn)五指的黑暗,別說(shuō)找怪,撞在巖壁上都得懵半天,屏幕上只剩個(gè)血條在黑夜里瞎晃。最氣人的是被攻擊后的后仰停頓,明明血條還剩大半,被怪物一爪子拍過(guò)來(lái),角色非得踉蹌一下,這半秒的僵直足夠讓對方再補兩刀,硬生生把反殺的機會(huì )拖成灰屏。
所以這外掛的底子必須扎實(shí):免助跑、免蠟、不動(dòng)如山。
對我這浸淫編程十幾年的人來(lái)說(shuō),這些功能本就不算難題,更何況,我腦子里還裝著(zhù)穿越前偶然見(jiàn)過(guò)的傳奇源代碼片段——那些泄露的核心邏輯,就像給迷宮遞了張地圖。免助跑?不過(guò)是找到移動(dòng)指令里的延遲參數,把那串代表0.5秒的十六進(jìn)制代碼改成00。免蠟更簡(jiǎn)單,直接刪掉“是否持有蠟燭”的判斷語(yǔ)句,把地圖亮度拉滿(mǎn)。最費功夫的是“不動(dòng)如山”,得同時(shí)攔截怪物攻擊和角色受擊的雙向封包,在本地模擬出無(wú)硬直狀態(tài),還不能讓服務(wù)器察覺(jué)異常。
我盯著(zhù)屏幕上滾動(dòng)的代碼,指尖在鍵盤(pán)上翻飛,穿越前的記憶碎片像潮水般涌來(lái):源代碼里角色狀態(tài)同步的校驗邏輯、封包加密的算法、客戶(hù)端與服務(wù)器的交互協(xié)議……這些碎片在腦海里拼湊成完整的框架,手指仿佛有了自己的意識,自動(dòng)補全著(zhù)一行行指令。凌晨四點(diǎn),窗外的天際泛出魚(yú)肚白時(shí),程序終于寫(xiě)完了。我把它壓縮成加密包,命名為《疾風(fēng)1.0》,圖標是自己畫(huà)的一柄銀色短劍,劍刃上斜斜劃了道閃電——要的就是這股子快勁。
但我心里清楚,這程序能不能用還是未知數。沒(méi)有客戶(hù)端可以測試,沒(méi)有服務(wù)器可以聯(lián)調,整個(gè)封包完全是憑著(zhù)記憶里的源代碼片段,靠著(zhù)意念一點(diǎn)點(diǎn)“想象”出來(lái)的。就像閉著(zhù)眼睛搭積木,只能憑著(zhù)手感判斷結構是否穩固。我把U盤(pán)揣進(jìn)褲兜,金屬外殼貼著(zhù)皮膚,冰涼的觸感讓我清醒了幾分:好不好用,只能等明天開(kāi)服見(jiàn)分曉。
外掛的事暫時(shí)擱下,接下來(lái)該組隊伍了。
最初的傳奇跟后來(lái)的私服不一樣,那會(huì )兒沒(méi)那么多氪金套路,講究的是“是兄弟就來(lái)砍我”的抱團。一個(gè)人再厲害,沒(méi)隊友扛傷害、加狀態(tài),照樣在高級地圖寸步難行。我躺在床上,望著(zhù)天花板上泛黃的水漬,腦子里像過(guò)電影似的,篩出四個(gè)名字。
頭一個(gè)必須是葛鵬,外號胖子。這小子跟我是穿一條開(kāi)襠褲長(cháng)大的發(fā)小,家住同一個(gè)家屬院,他家陽(yáng)臺正對著(zhù)我家窗臺,小時(shí)候我總趴在窗臺上喊他“胖子,出來(lái)彈玻璃球”。他打小就胖,三年級體檢站在體重秤上,指針“哐當”一聲甩到最大刻度,校醫舉著(zhù)聽(tīng)診器愣了半天,還以以為秤壞了。他家條件跟我家差不多,都是父母雙職工的小康家庭,前兩年他爸單位裁員,家里日子緊了些,可胖子從沒(méi)跟人訴過(guò)苦。
上個(gè)月在電腦城碰到他,正蹲在臺階上啃泡面,油湯濺得T恤上到處都是。一問(wèn)才知道,他在電腦城當學(xué)徒,沒(méi)干仨月就被老板開(kāi)了——說(shuō)是“偷吃倉庫里的泡面”,其實(shí)是他看不慣老板坑人。有回一個(gè)老太太來(lái)買(mǎi)U盤(pán),老板想把擴容盤(pán)當正品賣(mài),胖子直接跟老太太說(shuō)“這盤(pán)存東西會(huì )丟”,當天下午就被卷鋪蓋滾蛋了。這憨直勁兒有時(shí)候氣人,但關(guān)鍵時(shí)刻靠譜得很。
第二個(gè)是張偉,外號偉哥。大學(xué)同宿舍的兄弟,一米八的個(gè)頭,胳膊上常年帶著(zhù)點(diǎn)練散打的肌肉,性子烈得像團火。大三那年系里有個(gè)女生被輔導員騷擾,躲在宿舍樓底下哭,一群人圍著(zhù)看,誰(shuí)都不敢吭聲,就張偉拎著(zhù)個(gè)啤酒瓶闖進(jìn)辦公室,指著(zhù)輔導員的鼻子罵“褲襠里長(cháng)著(zhù)豬腦子”,最后差點(diǎn)沒(méi)被處分。
畢業(yè)進(jìn)了家國企,上班第三天就跟車(chē)間主任干上了。起因是主任克扣實(shí)習生工資,把本該發(fā)的八百塊改成了五百,張偉在會(huì )議室里拍著(zhù)桌子跟人吵,說(shuō)對方“當領(lǐng)導當得沒(méi)屁眼”,吵完摔門(mén)就走,連試用期工資都沒(méi)要?,F在他還在市區那間老破小里待著(zhù),靠他媽給的零花錢(qián)過(guò)活,天天念叨著(zhù)“找個(gè)正經(jīng)事干”。
第三個(gè)是李亞楠,外號知心姐姐。這外號得著(zhù)重解釋一下:性別男,愛(ài)好幫人操心,細膩得像塊浸了水的棉花。高中時(shí)我跟女朋友分手,躲在操場(chǎng)看臺上抽煙,煙盒都空了還蹲在那兒發(fā)呆,他居然從書(shū)包里摸出包紙巾遞過(guò)來(lái),輕聲細語(yǔ)地說(shuō)“別抽那么猛,對嗓子不好”。更絕的是,他書(shū)包跟哆啦A夢(mèng)的口袋似的,創(chuàng )可貼、薄荷糖、甚至女生用的皮筋,總能在你需要的時(shí)候摸出來(lái)。
他家是開(kāi)罐頭廠(chǎng)的,市里半條街的超市都從他家進(jìn)貨,是我們這群人里家境最好的。平時(shí)出去聚餐、唱歌,十回有八回是他掏錢(qián),理由總是什么“我爸剛給了零花錢(qián)”“我媽讓我請同學(xué)吃飯”,其實(shí)我們都知道,他是怕我們這些家境普通的兄弟為難。他高中畢業(yè)沒(méi)上大學(xué),在家跟著(zhù)他爸學(xué)管理,前陣子打電話(huà)說(shuō)他爸要送他去英國讀留學(xué),正愁出國前沒(méi)事干。拉他入伙,準沒(méi)錯。
最后一個(gè)是宋德文,外號德文。這外號跟他的頭發(fā)和個(gè)頭脫不了關(guān)系——天生的自來(lái)卷,就像一致德文小貓因此得名。加上個(gè)頭長(cháng)得又矮又小,遠遠看去就像個(gè)沒(méi)長(cháng)大的孩子。但千萬(wàn)別被他的外表騙了,這家伙腦子轉得比誰(shuí)都快,高中數學(xué)競賽,我們還在啃最后一道大題,他已經(jīng)交卷了,出來(lái)跟我們說(shuō)“用拉格朗日定理一步就能出結果”?,F在在一家軟件公司當程序員,天天加班加到眼睛發(fā)紅,估計早就憋壞了。算上我,正好五個(gè)人。
我從抽屜里面摸出諾基亞手機,這是去年過(guò)年老爸淘汰被我繼承的,按鍵磨得發(fā)亮,屏幕上的字都快看不清了。先撥胖子的號,聽(tīng)筒里傳來(lái)嘈雜的鍵盤(pán)聲,不用問(wèn)也知道,他準在網(wǎng)吧混著(zhù)呢。
“喂?胖子,來(lái)我家一趟,有好事?!?/p>
“啥好事???是不是弄到新游戲了?”他的聲音帶著(zhù)喘,估計剛從游戲里退出來(lái)。
“來(lái)了就知道,晚了可沒(méi)你的份?!蔽夜室獾跛缚?,掛了電話(huà)。
接著(zhù)打給張偉,電話(huà)響了五聲才接,背景里是他媽的嘮叨聲?!拔?,偉哥,來(lái)我家開(kāi)會(huì ),有個(gè)能掙錢(qián)的活兒?!?/p>
“掙錢(qián)?”他頓了頓,“別又是你那不些靠譜的點(diǎn)子吧?!?/p>
“這次絕對靠譜,不來(lái)后悔?!蔽艺f(shuō)完就掛,知道他那性子,越是神秘越會(huì )來(lái)。
打給李亞楠時(shí),那邊安安靜靜的,隱約有鋼琴聲飄過(guò)來(lái)?!拔?,亞楠,來(lái)我家一趟,說(shuō)個(gè)事兒,關(guān)于出國前賺點(diǎn)零花錢(qián)的?!?/p>
“零花錢(qián)?”他輕笑一聲,聲音軟乎乎的,“行啊,我跟我爸說(shuō)一聲,半小時(shí)到?!?/p>
最后打給德文,電話(huà)響了八聲才接,背景里是敲鍵盤(pán)的噠噠聲,密集得像下雨?!拔??德文,下班了沒(méi)?來(lái)我家一趟?!?/p>
“加班呢,啥事兒?”他的聲音透著(zhù)股疲憊,像被抽干了力氣。
“有個(gè)游戲,能讓你把手速發(fā)揮到極致,來(lái)不來(lái)?”
那邊沉默了幾秒,傳來(lái)椅子挪動(dòng)的聲音?!暗任?,二十分鐘?!?/p>
掛了電話(huà),我起身收拾屋子。我家在老家屬院的三樓,兩室一廳,因為父母開(kāi)了家小飯店,天天忙到半夜才回來(lái),這里早就成了我們這幫兄弟的聚點(diǎn)??蛷d里堆著(zhù)些飯店用剩下的東西:幾個(gè)沒(méi)開(kāi)封的啤酒箱,一摞一次性筷子,半袋大米。我把這些挪到墻角,用抹布把茶幾擦干凈,擺上五個(gè)玻璃杯,倒滿(mǎn)涼白開(kāi),又從抽屜里翻出半包瓜子,抓了一把擱在盤(pán)子里。
剛忙完,門(mén)鈴就響了。開(kāi)門(mén)一看,德文站在門(mén)口,背著(zhù)個(gè)雙肩包,頭發(fā)亂糟糟的,眼鏡片上還沾著(zhù)點(diǎn)油漬?!巴彀??!?/p>
“跟領(lǐng)導說(shuō)家里漏水,請假跑出來(lái)的?!彼屏送蒲坨R,徑直走到電腦前,“啥游戲?”
“等人齊了再說(shuō)?!蔽野阉丛谏嘲l(fā)上,遞過(guò)水杯。
沒(méi)過(guò)五分鐘,胖子來(lái)了,手里攥著(zhù)個(gè)沒(méi)吃完的肉夾饃,油乎乎的手在牛仔褲上蹭了蹭?!吧逗檬掳?,神神秘秘的?!彼黄ü勺诘挛呐赃?,沙發(fā)“吱呀”一聲陷下去一大塊。
緊接著(zhù)是張偉,穿件洗得發(fā)白的T恤,胳膊上帶著(zhù)道新擦傷——不用問(wèn),準是又跟人打架了?!暗降咨妒聝??我剛跟我媽說(shuō)出去跑步?!?/p>
最后到的是李亞楠,白襯衫熨得筆挺,頭發(fā)梳得整整齊齊,手里拎著(zhù)個(gè)果籃,裝著(zhù)蘋(píng)果和香蕉?!鞍⒁滩辉诩已??”他探頭往廚房瞅了瞅,笑起來(lái)眼睛彎彎的。
“我爸媽看飯店去了,今晚一時(shí)半會(huì )不回來(lái)?!蔽谊P(guān)上門(mén),往茶幾中間湊了湊,“都坐好,說(shuō)正事?!?/p>
五個(gè)人圍著(zhù)茶幾坐下,瓜子殼很快堆成了小山頭。胖子幾口把肉夾饃啃完,抹了抹嘴:“快說(shuō)快說(shuō),再不說(shuō)我可要急死了?!?/p>
我清了清嗓子,從抽屜里拿出《熱血傳奇》的宣傳海報?!澳銈冎馈稛嵫獋髌妗愤@個(gè)游戲不?”
“沒(méi)聽(tīng)過(guò)?!睆垈u了搖頭,拿起一張海報瞅了瞅,“看著(zhù)跟《暗黑破壞神》有點(diǎn)像啊?!?/p>
“我表姐在韓國留學(xué),說(shuō)這游戲現在火得不行?!蔽野岢鲈缇途幒玫恼f(shuō)辭,指了指截圖上的屠龍刀,“不光好玩,還能掙錢(qián)。就這把刀,在韓國能賣(mài)好幾百美元?!?/p>
胖子眼睛瞪得溜圓:“真的假的?一把刀能賣(mài)那么多?”
“騙你干啥?!蔽覐目诖锾统瞿莻€(gè)加密U盤(pán),在他們面前晃了晃,“我表姐還給了個(gè)好東西,叫封包,能輔助玩游戲?!?/p>
“外掛?”張偉皺起眉,“這玩意兒靠譜嗎?別被封號了?!?/p>
“放心,我表姐說(shuō)這是內部測試用的,隱蔽性特別好。但是這是韓國那邊用的,這邊的國服好不好用還不知道?!?/p>
“我操,這也太牛逼了?!迸肿尤滩蛔”司浯挚?,手在膝蓋上使勁拍了一下。
“這東西……只能我們五個(gè)人知道?!蔽沂掌餟盤(pán),表情嚴肅起來(lái),“傳出去了,不光我們沒(méi)得玩,我表姐那邊也麻煩?!?/p>
“放心,咱誰(shuí)跟誰(shuí)啊?!睆垈ヅ牧伺男馗?,“我的嘴嚴實(shí)著(zhù)呢?!?/p>
李亞楠點(diǎn)點(diǎn)頭,手指輕輕敲著(zhù)膝蓋:“我明白,這事兒要是傳出去,估計得有一堆人搶著(zhù)要?!?/p>
“不光有封包,我表姐還把攻略給我了。到時(shí)候怎么玩你們聽(tīng)我指揮,”
“攻略里面哪里有好裝備,怎么打最快,上面寫(xiě)得清清楚楚。咱們只要配合好,一個(gè)月掙個(gè)幾千塊,沒(méi)問(wèn)題?!?/p>
“幾千?”張偉眼睛一亮,嗓門(mén)都提高了,“夠我媽半年的藥錢(qián)了?!碑敃r(shí)一個(gè)月的工資也就幾百塊。
李亞楠笑了笑:“錢(qián)不錢(qián)的無(wú)所謂,主要是覺(jué)得挺有意思的,出國前正好找點(diǎn)事干?!?/p>
德文推了推眼鏡,手指在茶幾上無(wú)意識地敲著(zhù),像是在模擬鍵盤(pán)操作:“我沒(méi)問(wèn)題,正好最近加班加得煩,換個(gè)腦子。明天我去把調休都用了?!?/p>
胖子拍了下大腿:“干了!到時(shí)候掙了錢(qián),我先買(mǎi)個(gè)新電腦!”
大家都笑了起來(lái),笑聲撞在客廳的墻壁上,又彈回來(lái),混著(zhù)窗外的蟬鳴和遠處的車(chē)鳴,在這個(gè)悶熱的夏夜,像一掛剛點(diǎn)燃的鞭炮,噼里啪啦地響得熱鬧。我望著(zhù)眼前這幾個(gè)兄弟,心里突然冒出個(gè)念頭:或許這不僅僅是一個(gè)賺錢(qián)的機會(huì ),更像是一場(chǎng)早就該赴的約。
離游戲開(kāi)服還有十幾個(gè)小時(shí),我們的傳奇,才剛剛開(kāi)始。