先說一個數字:4KB。
今天手機裡隨手一張照片都不止 4MB。1980 年,一臺叫 Atari 2600 的機器,整盤遊戲卡帶只有 4KB 的存放空間,記憶體是 128 位元組——不是 128K,是 128 個位元組。就在這麼巴掌大的一塊地方,一個叫 Warren Robinett 的年輕人塞進去了一整個王國:三座城堡、三條龍、一把劍、一座橋、一塊磁鐵、一隻愛偷東西的蝙蝠,還有一間本不該被任何人發現的房間。
他後來說過一句挺氣人的話:寫完的時候,手裡還剩 15 個位元組的 RAM,"夠再養三條龍,但我覺得這樣就挺好"。

遊戲是什麼:一個把文字變成畫面的賭注
1977 年 11 月,Robinett 進了雅達利。他是萊斯大學 1974 屆的畢業生,讀的是一個很少有學校會開的專業——"計算機在語言與藝術中的應用";1976 年又在伯克利拿了計算機碩士。進公司後他做的第一個東西是《Slot Racers》,兩臺坦克對射,中規中矩。
轉折發生在斯坦福的 SAIL 實驗室。他在那裡的機器上玩到了 Crowther 和 Woods 寫的《Colossal Cave Adventure》——純文字,沒有影象,全靠打字跟程式對話:"take lamp""go north"。他當時冒出一個念頭:這東西要是能看見畫面,該有多好。
問題是 Atari 2600 只有一根搖桿,沒有鍵盤。你沒法打字,只能推方向加按一個鍵。而記憶體 128 位元組,卡帶 4KB——今天一段朋友圈文案都比這大。Robinett 的辦法很樸素:把"打字"翻譯成"走路"。人走到東西上,就撿起來;按一下鍵,就用出去。一個文字冒險的全部指令,被壓縮成了一套空間關係。
這套東西后來被叫做"動作冒險"(action-adventure)。在它之前,主機上的遊戲要麼是打磚塊式的反應遊戲,要麼是純文字。它第一次把"探索、拿東西、用東西、過關"這幾件事塞進同一塊螢幕。而且人和敵人能走出螢幕,走向下一個房間——那些角色在你看不見的屋子裡照樣在動,1980 年沒人見過這種事。
它的名字就叫 Adventure,中文資料裡一般譯作《魔幻歷險》。
年份上要說清楚一句:這遊戲 1979 年 6 月就交完了原始碼,Robinett 自己網站上一直寫的是 1979;但雅達利正式鋪貨是 1980 年 3 月。資料打架的地方,本文按發售年算,記作 1980。

玩法:30 個房間,三條龍,一隻愛偷東西的蝙蝠
遊戲的目標一句話說得完:闖進城堡,把金盃(Enchanted Chalice)找回來,送回金城堡。
地圖一共 30 個房間,串起金、白、黑三座城堡。路上全是麻煩:你得先找到鑰匙開門,鑰匙分顏色,鎖也對得上顏色;有的地方要先把橋架過去才能進;黑城堡裡一片漆黑,進去要點亮。
三條龍各有各的脾氣,Robinett 還給它們起了名字:黃龍 Yorgle 怕金鑰匙,見了就跑,也會跑去幫著守聖盃;綠龍 Grundle 守著磁鐵、橋和黑鑰匙,不太挪窩;紅龍 Rhindle 最快也最兇,專守白鑰匙。被龍吞掉並不算徹底完蛋——按一下 reset,人會在金城堡復活,道具還留在原地,代價是被你打死的那幾條龍也跟著活過來。這套"死了不用從頭再來"的設計,後來被算作遊戲史上最早的"續關"雛形之一。
最缺德的是那隻蝙蝠,Robinett 本來想叫它 Knubberrub(名字是朋友提的,最後沒進官方手冊)。它像喜鵲一樣喜歡亮東西,會突然俯衝下來,把你手上的道具搶走,扔到地圖另一頭的某個房間。你辛辛苦苦攢的鑰匙、劍、橋,一轉眼就不知道飛到哪兒去了。
所以這 30 個房間,其實是一個不斷被打亂的收納箱。你得記住每樣東西可能出現的位置,還得跟一隻鳥賭運氣。更麻煩的是,萬一你把關鍵道具丟進了牆裡,這一局就廢了——Robinett 為此專門加了塊磁鐵,能把附近的鐵器吸過來,算是個防止死局的補丁。
難度分三檔。1 級是簡化版:地圖縮水,白城堡、蝙蝠、紅龍和隱形迷宮都不出現。2 級是完整版,道具位置固定。3 級還是那張圖,但道具位置每次隨機。你手上一次只能拿一件東西;在街機思維主導的 1980 年,一款沒有分數、也不催你投幣的遊戲,本身就夠反常了。後來的答案是,它讓人坐在自家客廳地板上,一玩一整晚。
銷量:一百萬份,和一個年薪兩萬二的人
《魔幻歷險》賣了一百萬份,單價 25 美元,算下來是 2500 萬美元的生意——在 1980 年,這是一款能撐起一家公司財報的遊戲。
寫它的人拿多少?Robinett 在 2015 年的一次訪談裡說得很直白:年薪兩萬二,沒有版稅;遊戲賣了一百萬套,公司連粉絲寄給他的信都沒轉給他一封。他還補了一句,說自己藏那個名字,"就是一次自我推銷"。
這不是他一個人的委屈。當時的雅達利有一條不成文的規矩:遊戲上不署開發者的名字。1976 年公司被華納通訊收購之後,紐約來的管理層和加州這群穿 T 恤的程式設計師一直合不來。不署名,是怕競爭對手按圖索驥來挖人。也是不想讓程式設計師手裡多一個談條件的籌碼。
代價很快就來了。David Crane、Larry Kaplan、Alan Miller、Bob Whitehead——四個雅達利的核心程式設計師,因為得不到署名和版稅,集體出走,在 1979 年創辦了 Activision,成了全美第一家第三方遊戲公司,反過來跟老東家搶生意。這件事在當時的遊戲圈是地震級的:原來寫遊戲的人是可以有名字的。
而 Robinett 的反擊,比辭職安靜得多。
傳說:一個看不見的點,和一年後的一封信
他在遊戲裡藏了一個房間。
進去的方法極其刁鑽:把難度調到 2 或 3,去黑城堡的地下墓穴,在某個只有用橋才能進的密室裡,沿著南牆底部一點點蹭——那裡嵌著一個單畫素的灰點,肉眼幾乎看不見,磁鐵也吸不動它。拿到灰點之後,再把它和另外兩件東西一起湊到金城堡下方走廊的最東端。這時右邊那面牆會開始瘋狂閃爍,你推著人往裡擠,就穿過去了。
牆那邊是一個不存在的房間。螢幕正中,豎排著不斷變色的字:
Created by Warren Robinett
這個念頭的來源,他自己說是披頭士。當年美國有傳言說披頭士把資訊倒著錄進了唱片裡,他想著,那我也可以在我的作品裡留一句話。1979 年 6 月他交完程式碼就離開了雅達利,這件事沒跟任何人說過,連寫說明書的人都不知道——所以那本手冊裡,一個字都沒提。
一年多以後,鹽湖城一個 15 歲的男孩 Adam Clayton 找到了這間屋子。他把自己在 1980 年 8 月 4 日寫的信連同手繪地圖一起寄到雅達利,問:這是什麼?
信到的時候,Robinett 已經離職快一年了。雅達利一片茫然,派人去程式碼裡翻,查了幾天,程式設計師 Brad Stewart 在程式碼堆裡找出了那段邏輯。有人問他打算怎麼修,他的回答後來成了圈內名句:要修的話,我就把它改成"Fixed by Brad Stewart"。
真正的難題是錢。那個年代的遊戲卡帶是掩膜 ROM,改一個位元組等於重做一套母版,據事後各方的轉述,成本大約一萬美元。為了一行沒人看得見的字,花一萬美金,重做幾十萬盤卡帶——管理層算完這筆賬,決定算了。
軟體開發總監 Steve Wright 給了這件事一個體面的說法:這東西就像復活節時孩子們在院子裡找的彩蛋,是給玩家的驚喜。於是"彩蛋"(Easter egg)這個詞落到了遊戲行業裡,還成了雅達利的官方政策——以後每款遊戲都要藏一個,多數時候藏的是開發者的姓名縮寫。
這裡得老實說一句:《魔幻歷險》不是最早在程式裡藏東西的遊戲。目前已知最早的一個在 1973 年的《Moonlander》裡——那是 DEC 用來演示 GT40 顯示器的一段程式,你把登陸器飛得夠遠,螢幕上會冒出一家麥當勞。1977 年雅達利的街機《Starship 1》裡藏著一句"Hi Ron!",是程式設計師 Ron Milner 留的,直到 2017 年才被人翻出來。1976 年的《Colossal Cave》裡有咒語 xyzzy。但《魔幻歷險》是第一個被叫做"彩蛋"的,也是讓這個詞真正傳開的那個。歷史有時候不是獎勵第一個做的人,而是獎勵第一個把它說出名字的人。

後來的事,像另一種補償。1980 年,Robinett 和幾位同伴一起創辦了 The Learning Company,做出《Rocky's Boots》《Robot Odyssey》這樣的教育軟體;再往後,他為 NASA 和北卡羅來納大學做虛擬現實專案。2011 年的小說《頭號玩家》把《魔幻歷險》的彩蛋寫成了劇情的關鍵道具,2018 年電影上映,全世界都看見了那行字。2016 年,他宣佈要寫一本叫《The Annotated Adventure》的書,把這盤 4KB 卡帶裡每一個位元組的來歷都講一遍;後來他把書拆成了兩本,截至目前公開出來的還只有目錄。
四十年過去,遊戲越來越大,動輒上百 GB,幾百人做五年的專案比比皆是。可我們記住的,常常還是這種小東西:一個二十多歲的程式設計師,因為公司不肯在盒子上印他的名字,就在 128 位元組的記憶體裡給自己鑿了一間屋子。他沒有鬧,沒有發宣告,只是安安靜靜地把名字放進了作品——然後等了一年多,等一個陌生的少年推開那扇牆。
這大概就是遊戲最迷人的地方:螢幕上那些方塊,本來是死的,是人往裡面放了心思,它才活過來。
文中內容如果有錯漏,歡迎各位指正。老遊戲的資料散、說法多:這遊戲算 1979 年還是 1980 年、重做一套掩膜 ROM 到底花多少錢、當年發現彩蛋的那個男孩多大,各家口徑都不完全一致,我按能查到的多數說法寫,並把分歧標了出來。你要是有更準確的說法,或者當年親歷過的細節,留言告訴我,我核實後就改、把出處補上。看到這裡的朋友,順手點個贊、收個藏,想看下一篇也方便些,謝謝。