他們與《QQ堂》

駐足于13×15格的天地里。
作者丨Fu Tiger
2022年4月20日,那天是星期三。距離我玩的一個“古董”網(wǎng)頁游戲的更新還有兩天,我打開討論群,本想看看有沒有人轉(zhuǎn)發(fā)游戲的更新預(yù)告,卻意外看到了另一個消息:《QQ堂》停服了。

2004年,《QQ堂》上線。它是一款多人在線休閑游戲,玩家在13×15格的2D地圖上對戰(zhàn),以泡泡作為武器,可以利用泡泡困住對手或炸開障礙物,被泡泡困住一段時間的玩家會被判定失敗出局。在不同模式下,游戲玩法有所差別,但總的來說,假如你玩過“炸彈人”,或是韓國Nexon公司開發(fā)的網(wǎng)游《泡泡堂》,就能對《QQ堂》有個大概印象。
時過境遷,《QQ堂》和那些曾經(jīng)紅極一時的多人休閑網(wǎng)游已不再是游戲市場上處于風(fēng)口浪尖的角色,玩家大多也聚成小圈子,在運營不足、同好流失的空隙之間享受著游戲的樂趣。
我找到了一些《QQ堂》老玩家,在游戲停服之前,他們還想在這塊13×15格的空間里記錄下更多東西。
丨 他們在搞研究
我問給我發(fā)來《QQ堂》停服消息的朋友,你之前也玩過這個?她說:“我很喜歡玩,但是上墻的技術(shù)一直不好?!薄吧蠅Α笔鞘裁??我對這類游戲的印象還停留在“放炸彈”“炸人”等傳統(tǒng)的玩法上,陌生的名詞多少讓我有些驚訝。朋友隨手給我找來一條視頻鏈接——“《QQ堂》2020年穿泡穿墻教程”——光是這個標題就足夠讓我新奇了。《QQ堂》是2004年開服的,16年后,竟然還有玩家在制作視頻教程?
我就是這么遇見小麥的。小麥是教程作者,在教程視頻里,他從不露臉,只有一個年輕的男聲,畫面上是一張思維導(dǎo)圖。他的聲音并沒有那么流暢,語序也有些零亂:“那么今天下午我給大家?guī)硪粓鲋辈パ葜v?!彼麑χ季S導(dǎo)圖,嘗試組織語言,“我先講一下這個‘穿’是怎么回事啊。”
所謂的“穿”,實際是一類利用Bug達成的操作。不知是因為網(wǎng)絡(luò)卡頓還是處理延遲,玩家在經(jīng)過一系列特定操作后,有可能無視泡泡或者墻壁的碰撞體積,強行穿過泡泡,或是站上墻壁。這種操作最初是由哪個玩家發(fā)現(xiàn)的已不可考,但在這之后,無數(shù)玩家們從代碼和實踐中尋找規(guī)則,整理出了一套如何觸發(fā)這種Bug的技術(shù)理論。他們稱呼這套理論為“穿技”。
穿技的觸發(fā)條件相當復(fù)雜。不同的角色位置、不同的放泡數(shù)量、不同的速度以及不同的道具,演變出了各種各樣的情況和穿的手法。本該按部就班運行的代碼和程序此刻夾雜了一絲玄學(xué)——教程的演示圖片里展示了最簡單的一種穿法:角色在身后放了3個泡,突然就躥上了一旁的障礙物。

我問過小麥,這些操作在比賽中能用到嗎?小麥說,其實用到的不多。但我也明白為什么有這么多人追求穿技——太酷了。當你在一局游戲里成功穿到墻上,就會有人激動地在聊天框里打字:“大神,怎么做到的,加我好友,教教我?!?/p>
寫攻略的玩家們不止于此。2012年,玩家們的討論從論壇開始慢慢轉(zhuǎn)向貼吧,開啟了貼吧的黃金歲月。穿技的研究者之一豬哥,也是在2012年前后從論壇來到了更加大眾化的貼吧。豬哥前后寫了數(shù)十個關(guān)于《QQ堂》穿技理論與研究的帖子,從新手入門到各種不同的道具穿、隔空穿、彈穿,豬哥對研究不同的穿技與穿技觸發(fā)條件十分著迷。

豬哥最后一個穿技理論帖發(fā)布于2015年。他在這個帖子里說,從2011年開始,他就在只身一人研究穿技,而這次分享的技術(shù)是冷門中的冷門。他不指望大家都學(xué)會,但他想為自己一直以來的研究留下一點痕跡。他在帖子里詳細描述了自己發(fā)現(xiàn)的“變速超隔空穿”,這種手法可以在短時間內(nèi)連續(xù)觸發(fā)兩個變速道具而達成遠距離穿泡。盡管參與討論的大多數(shù)人都表示“看不懂”,但這個帖子仍然火爆,回帖擠滿了5頁,數(shù)下來一共有360多條回復(fù)。大部分留言可以總結(jié)為一句話:“手殘學(xué)不懂,但是給你點贊!”
豬哥大概在2016年離開了《QQ堂》。那一年,他發(fā)了自己在QQ堂吧的最后幾個帖子,公開了一些聊天記錄,“掛”了一個人。當時豬哥已經(jīng)對《QQ堂》失去興趣,早已刪除游戲,一個來求學(xué)穿技的網(wǎng)友卻百般糾纏,要求他上線“親自教學(xué)”。豬哥解釋了半天,說聊天交流技術(shù)可以,但自己早就不玩游戲了。對方便對著豬哥亂發(fā)脾氣,甚至懷疑他拒絕的動機。從耐心交流到怒不可遏,好脾氣的豬哥在最后忍無可忍地罵道:“我花了這么多精力,在貼吧寫免費教程是圖什么?不就是為了把知識教給大家?”
根據(jù)豬哥的發(fā)帖記錄,離開《QQ堂》之后,他曾一度在“惡魔城”系列里駐足,也曾在《最終幻想14》的世界里遨游。豬哥的游歷軌跡像是大多數(shù)玩家的縮影——從早期不成熟的網(wǎng)游,轉(zhuǎn)向內(nèi)容更多、更有趣的單機游戲,或是制作更加精美、運營更加先進的新時代網(wǎng)游。盡管《QQ堂》也嘗試了許多新系統(tǒng)與新功能,但終究還是跟不上時代的腳步。
在這之后,豬哥也寫了很多攻略。他寫過“惡魔城”的“卡墻”攻略,寫過《最終幻想14》的截圖與穿搭教程,也寫過《王者榮耀》里蒙犽和嬴政的操作心得。他的講解依舊圖文并茂,也會在帖子里詳細回答他人的疑問。在示范GIF圖片中,豬哥操縱主角來須蒼真熟練地“卡”上了一道墻壁——就像之前一樣。
丨 他們在辦比賽
“知道這個消息的時候,我們的杯賽剛辦到一半。”年年發(fā)給我一條她去年12月的B站動態(tài),“對,你看,就這條。”

年年是一位玩家社區(qū)的賽事組織者,曾經(jīng)操辦過3屆民間比賽。去年12月,她剛剛和朋友們一起辦了一屆“情懷杯”比賽。也正是在這個時候,《QQ堂》運營方發(fā)布了將在5個月后關(guān)服的消息。小麥告訴我,其實他和年年一起在辦比賽,也是在這個過程中得知了游戲?qū)⒁P(guān)服的消息?!拔覀冮_玩笑說,這屆比賽辦到一半,就從‘情懷杯’變成‘關(guān)服杯’了?!?/p>
通過小麥的視頻我才了解到,《QQ堂》原來還有公開的民間比賽,而且賽況遠比我想象得更加激烈。在只有195格的地圖上,兩個玩家出生在地圖兩端,從密不透風(fēng)的地圖中漸漸炸開一個個豁口,獲取隨機出現(xiàn)的強化道具,用以強化泡泡的爆炸距離和數(shù)量。炸出的強化道具不同,打法也會產(chǎn)生變化。在對局的后期,他們會同時在地圖上選中好幾個點,快速地布下五六個排布各異的炸彈和不同的道具,而后根據(jù)場上炸彈的位置,精準地找到這一輪爆炸中的安全地點。這一切博弈的操作都發(fā)生在幾秒鐘之內(nèi)。

《QQ堂》曾經(jīng)舉辦過官方線下比賽。從2005到2012年,連續(xù)8屆“《QQ堂》中華英雄爭霸賽”,其中誕生了很多玩家口中的“遠古大神”,比如“凡酷”“技貓”。他們的事跡經(jīng)過玩家口耳相傳,幾近傳說。但現(xiàn)在,關(guān)于這些選手的去處,也只剩下了傳說。技貓在贏得數(shù)屆比賽冠軍之后,2009年轉(zhuǎn)業(yè)去了《穿越火線》電競戰(zhàn)隊——就像是當年懷揣著電競夢投身“CF”的千千萬萬少年一樣。

民間比賽最早的形式是喇叭賽。喇叭是一種付費道具,玩家如果想要發(fā)送面向全服的公告,就得掏錢買這些全服、全區(qū)喇叭。喇叭賽依靠喇叭約戰(zhàn),獎懲也靠喇叭來實現(xiàn):無論比賽結(jié)果如何,輸?shù)囊环蕉家袚鹊馁M用,購買喇叭向全服通告比賽的參加者與最后的比分——一般10個喇叭起步。就像是江湖中人的比武,輸了的人也不必承擔什么額外的懲罰,只不過要扯著嗓子喊上10遍:“今日,我負于某某大俠!”
稍微正式一點的,就是各種“杯賽”了。杯賽的獎金靠主辦方自掏腰包,選手也全靠主辦方和裁判的人脈拉來。年年和小麥辦的就是杯賽。對于辦比賽的初衷,他們倆的回答大同小異:為了宣傳游戲,讓更多人能回來玩,最好能讓游戲重新熱鬧起來。
但作為主辦方,他們要面對的困難層出不窮。除了確定形式、賽制之外,如何防外掛、裁判對違規(guī)行為如何判定等等,也都是必須解決的麻煩。當然,最大的問題還是選手?!拔覀儼l(fā)布了比賽專用的補丁,能解決一些電腦軟件打不開的問題,但報名參賽的人還是不多?!睘榱朔乐惯x手爽約,年年設(shè)置了押金制度,但到了復(fù)賽時仍有選手不來參賽,放了所有評委和觀眾的鴿子。

“畢竟選手們普遍都已經(jīng)成家立業(yè),也有自己的工作和家庭了?!焙湍昴晁麄円粯愚k比賽的“洞庭湖以南”這樣告訴我。
以南辦過幾屆“新年模式”的比賽,規(guī)模比年年辦的“英雄模式”比賽更大,但賽程也拖得更長——新年賽往往不固定參賽時間,全看對局選手有沒有空。
以南告訴我,除了這些,遭到觀眾的誤解和攻擊是常有的事。不只是評委組和主辦方,選手們也會遭到攻擊。去年12月的“英雄03情懷杯”的決賽錄像中,選手風(fēng)清和江華一組在比賽中略現(xiàn)頹勢,就有彈幕開始攻擊江華:“4個人里就他的水平最菜,換個人風(fēng)清還能贏?!苯A和風(fēng)清最后沒能贏下比賽,但背后的緣由卻很難用“江華最菜”來簡單概括:風(fēng)清的老搭檔沒有參賽,他倆是臨時搭組;江華也本不擅長“英雄03”這張地圖,平時主打的是其他模式。盡管如此,他們還是在這場比賽中拿下了亞軍。
縱然過程坎坷,年年辦的“英雄03情懷杯”最終還是完美收官了。為了紀念這次比賽,年年在最后錄了一期長達一個小時的頒獎儀式與賽后雜談視頻。頒獎儀式在游戲里的等待大廳中進行,背景音樂播放著皇后樂隊的《We Are The Champions》。經(jīng)過了一系列拉人踹人后,6個評委和兩位冠軍站在了等待大廳里。彈幕里的觀眾起哄有沒有獎杯,裁判組的“詼諧”在游戲聊天框的表情里找了半天,最后發(fā)了一個雞尾酒杯。

冠軍也被他們拉進了語音頻道,讓他發(fā)表獲獎感言。冠軍先是再三推脫:“沒有獲獎感言!”奈何耐不住幾個裁判和觀眾的催促,只得開始臨時編排語言:“首先是感謝各位裁判,一路陪我們走來辛苦了。然后,接下來就是感謝我,我的這群兄弟們,一直以來,都是我喊他們打比賽,其實他們很多人都已經(jīng)不玩了,但是,他們還是選擇回來玩,就是……我真的很感動。再一個,很感謝對手,他們這次也都打得很好。最后感謝一下華寶吧?!彼D了頓說,“我這次比賽結(jié)束之后,應(yīng)該就不會再玩《QQ堂》了,就是怎么說……華,是我這么多年的兄弟,好搭檔。”
他停了一會兒,才接著開口:“再說我要哭了,不說了,要臉,要臉?!?/p>
活動快到尾聲時,年年被推上臺發(fā)表主辦感言。說了幾段感謝觀眾、感謝選手的話之后,她的情緒忽然激動了起來:“我真的,特別對不起我的裁判們,他們?yōu)檫@場比賽付出了這么多。第一天直播的時候我沒有來,他們也沒有直播過,很多事情都沒有處理好,就有噴子來噴他們,我自己被噴無所謂,但是我的裁判被噴我不能接受……”裁判組的亮仔在一旁安慰她:“怪我,怪我好吧,怪我咸魚太久了,要是我和當年一樣和那些噴子對線,現(xiàn)在哭的就是他們了?!?/p>
“我們辦這個比賽,其實是想著,新年模式的比賽有那么多,我們英雄模式也想辦很多很多比賽,但是沒想到辦的第一屆就變成了最后一屆。”年年又有些哽咽,“還是要感謝各位觀眾一直支持到現(xiàn)在?!?/p>
到關(guān)服前,年年在視頻網(wǎng)站上已經(jīng)發(fā)布了總時長近百小時的游戲與比賽錄播。她說,她還想留下更多東西。
丨 他們在寫B(tài)ug
我最早關(guān)注到紅薯,是因為貼吧里的一個帖子。發(fā)帖日期顯示為2020年,帖子的標題很簡單——“正在做一款《QQ堂》”。
“類QQ堂”,或者說“類炸彈人”的游戲數(shù)不勝數(shù)。在網(wǎng)上搜索“QQ堂”,從Flash制作的網(wǎng)頁小游戲,到偷偷摸摸背著騰訊運營的套殼手機游戲,組成了我對“自制‘類QQ堂’游戲”的初步印象。但這個帖子卻不太一樣,樓主紅薯想制作一款單機版的“類QQ堂”游戲,“希望可以還原穿泡、穿墻、半身等技巧”。
這是很新奇的——以前可能沒有什么人會沖著“還原Bug”去制作一個游戲的仿品。帖子里記錄了他大約兩個月的開發(fā)經(jīng)歷,里面詳細記錄了他如何一點點還原《QQ堂》的這些“Bug”和操作手感。在帖子最后,他放出了開發(fā)出的第一個試玩版本,之后便沒有了下文。

我在年年的視頻里再次見到了這個“單機版《QQ堂》”,當初的試玩版此刻已經(jīng)擁有了自己的名字——《果糖》,也擁有了全新的角色形象和獨立Icon。最重要的是,在原先試玩版的基礎(chǔ)上,《果糖》最終成功復(fù)刻了《QQ堂》里的穿技。盡管有些不可思議,但它確實做到了。

在年年的幫助下,我聯(lián)系到了作者紅薯。當我問起制作《果糖》的緣由時,紅薯的回答有些出乎我的意料:“我最早想做單機版的時候,和關(guān)服其實沒什么關(guān)系?!?/p>
“我從小學(xué)開始玩《QQ堂》,最開始就對穿泡很感興趣。畢業(yè)之后從事了游戲相關(guān)行業(yè),一直對這個‘Bug’非常著迷。想要從設(shè)計師的角度出發(fā),看看如何能夠還原。”
制作過程遠比想象中艱辛。我原以為紅薯會從游戲源代碼解包開始,卻沒想到他是“從零開始寫B(tài)ug”。最早他甚至連圖片素材都沒有,全靠截圖,還是在一個群友的幫助下才得到了解包的圖片素材。
如果不分析原本游戲的代碼,該怎么寫底層邏輯?紅薯的答案是“實踐”。得到了小麥的理論支持,紅薯開始一遍遍嘗試各種類型的穿法,嘗試找到邏輯上的共性?!懊慨斘矣X得整理的邏輯已經(jīng)完美符合了所有穿法時,總會發(fā)現(xiàn)一種新的穿法,打破之前的規(guī)則?!被叵肫甬斈甑慕?jīng)歷,紅薯感慨良多,“過程中遇到了不少挫折,屢屢以失敗告終?!?/p>
后來,在一條官方公告中的發(fā)現(xiàn),為解決問題帶來了一絲曙光。“穿泡不是Bug?!奔t薯找到了《QQ堂》2006年的公告,公告中提到了“加入穿泡功能”,并簡單介紹了如何穿泡。這激發(fā)了紅薯的思路:如果官方是專門做出了這樣的功能,那在代碼里應(yīng)該也有相應(yīng)的變量,儲存玩家是否能穿泡的狀態(tài)。通過在游戲里一遍遍復(fù)現(xiàn)穿泡的操作,同時掃描內(nèi)存數(shù)據(jù)的變化,他最終找到了決定是否可以穿泡的兩個關(guān)鍵數(shù)值,以及如何記錄狀態(tài)持續(xù)的時間?!豆恰酚纱碎_始一點點構(gòu)筑成型。
“但我還是沒有找到邏輯上的通用解,所以我只能把所有穿泡的情況列出來,一項一項地寫進去?!?/p>
這也成了紅薯一直以來的疑惑,他不明白開發(fā)者為什么會寫出這樣的功能?;蛟S穿泡原本只是一個修不好的Bug?但專門設(shè)置一個狀態(tài)變量,用來判定玩家是否可以無視泡泡的碰撞箱,這件事本就有些不可思議?!拔抑荒苡米畋康霓k法,把官方列舉的所有穿泡方法加進游戲里。”
在枯燥乏味的一遍遍重構(gòu)和優(yōu)化后,《果糖》誕生了。我在貼吧的回帖里看到了許多熱心的玩家,有提供原創(chuàng)美術(shù)素材的,有提供技術(shù)支持的?!澳茏叩竭@一步,確實是靠著所有熱愛的玩家?!奔t薯總結(jié)道。

根據(jù)QQ群內(nèi)的人數(shù)判斷,關(guān)注《果糖》的玩家規(guī)模已經(jīng)有2000人以上,但年年似乎對此略有顧忌。她制作的《果糖》介紹視頻簡介里寫著一句話:“請不要用‘私服’傷害為《果糖》努力的開發(fā)人員?!?/p>
《QQ堂》關(guān)服后,有不少玩家涌入了《果糖》,其中也不乏有對《果糖》頗有微詞的人?!豆恰肪拖裰谱骶嫉摹兑匀龅撵芗馈吠擞螒颉禝.RULE》、或是“寶可夢”系列同人游戲《漆黑的魅影》一樣,因為美術(shù)資源與IP形象的問題,沒法算是完全原創(chuàng),只能在同人游戲與獨立游戲的領(lǐng)域之間徘徊踟躕。
丨 他們,或是我們
年年做了很多視頻向《QQ堂》告別。
她的視頻——說實話,并不算是“成熟”的短視頻剪輯作品。許多“懷念舊游戲”視頻短小精悍,熟練地使用表情包、設(shè)置懸念、拋出話題,每一秒都在想盡辦法留下點進視頻的觀眾。年年的視頻不一樣。有的太長,內(nèi)容是朋友們幾個小時的比賽錄屏;有的門檻很高,如果不是玩家,很難理解剪輯內(nèi)容的笑點。在了解游戲之前,我也看得一頭霧水。
但這就是一個玩家的真實寫照。游戲的種種問題,曾經(jīng)遇見過的是是非非,此刻都成為過去。就像她的視頻簡介里寫的那樣,作為玩家,她只想記錄下這些沒法復(fù)現(xiàn)的故事。

我也是一個“古董網(wǎng)游”的玩家。從我第一次注冊賬號到現(xiàn)在,已有十多年了。盡管那款游戲的內(nèi)容已經(jīng)所剩無幾,但每周五我都會習(xí)慣性地登錄游戲,看看劇情,買買服裝。我也曾經(jīng)去見過游戲的制作組,在公司偌大的辦公室里,5位美術(shù)和一位策劃加在一起只占有房間角落里的兩張桌子,但我未曾想過它關(guān)服了會怎樣——我不太敢去想。
停服之后會怎樣呢?年年說,她也不知道。或許生活還是不會改變,只是玩游戲的時間變成了刷手機。近些年來,老游戲們一個接一個地關(guān)服,2019年,她見證了《QQ音速》的停運。她說,那時玩家間就有《QQ堂》要停運的傳聞,她也是從那個時候開始學(xué)習(xí)做視頻,想要把這些故事多留下一點。
年年的視頻結(jié)尾是一段游戲錄像。這局比賽和之前的無數(shù)場比賽并沒有什么區(qū)別,只是在比賽結(jié)束之后游戲畫面并沒有回到大廳,而是跳出了一個彈窗:“與服務(wù)器的鏈接斷開,您必須重新登錄小區(qū)。”
這是最后的一場比賽。