毀滅戰士們:草創之初

目錄

id Software 團隊

如果 Facebook 創立的故事可以拍成《社群網戰》,好萊塢遲早會將 David Kushner 寫的《Masters of Doom》拍成電影。

實際上,在 2019 年真的有人想把《Masters of Doom》拍成電視劇。James Franco 和 Dave Franco 兄弟共同製作了首集,但最後 USA Network 決定不投資,使得這部劇無疾而終。然而有眼尖的網友找到幾張劇照,重現當年 Softdisk 辦公室的模樣。

Softdisk 正是兩個約翰:John Romero 與 John Carmack 初次相遇的地方。他們倆與另外二人,Tom Hall 和 Adrian Carmack,共同創辦了 id Software,開發了《毀滅戰士》(Doom)和《雷神之鎚》(Quake)等傳奇遊戲,開創了第一人稱射擊(first-person shooter)這種遊戲類型,從此顛覆了遊戲產業的樣貌。

Softdisk - Gamer’s Edge

John Carmack 本來沒有打算加入 Softdisk 的。一直以來,他以接案為生,無拘無束,但是接案只能勉強養活自己,他需要一份正職工作。於是在 Jay Wilbur 和 Tom Hall 再三邀請下,19 歲的 Carmack 從他家堪薩斯城開車到路易斯安那州的雪薇波特(八小時車程),來到 Softdisk 辦公室的所在地。

當 Carmack 在 Softdisk 辦公室見到了 John Romero 等一群資深程式設計師時,他才決定要接下這份工作。在學校時,Carmack 是最聰明的小孩,老師根本沒什麼可以教他的了,他一直以來都是讀圖書館的書自學。然而在 Softdisk,他第一次見識到比他厲害的程式設計師,他覺得在這裡可以向前輩們學到書本上學不到的東西,所以他毅然決定搬到雪薇波特,加入 Softdisk、Romero 的團隊。

Softdisk 的商業模式可以說是「軟體福袋每月送你家」:每個月大概付 10 美元,你就會收到一張 3.5 吋磁片,裡頭存著一些你不能選的應用程式或遊戲。這些軟體可以跑在當時的主流平台上:Apple II、Apple IIgs、IBM PC(簡稱 PC),而當年 PC 聯手微軟的 MS-DOS 作業系統,蠶食蘋果,是個人電腦市場的霸主。

1990 年,Softdisk 也順應這股潮流,讓 Romero 帶領一個名為 Gamer’s Edge 的新部門,製作 PC 遊戲。老闆給 Gamer’s Edge 的第一個任務是一個月內產出兩款 PC 遊戲,讓 Softdisk 寄到訂戶的手上。

「一個月生出兩款遊戲!怎麼可能?」幸好,早在加入 Softdisk 之前,Romero 與 Carmack 就寫過許多遊戲,他們想到可以把他們之前在 Apple II 上的遊戲移植到 PC 上:分別是 Romero 的《Dangerous Dave》和 Carmack 的《Catacomb》。

平滑捲動

《Dangerous Dave》和《Catacomb》都是 2D 的捲軸遊戲。Dangerous Dave 背景基本上是固定不動的,玩家過關之後畫面才會切換到下一關。而 Catacomb 背景會跟著玩家移動,但每次移動是以多個像素(例如 8x8 或 16x16)組成的磚塊(tile)為單位,並不是一個一個像素的(pixel by pixel)移動。

這個限制不是偶然、也不是他們偷懶,是因為當時的個人電腦還很慢,如果每移動一個像素就要重繪整個場景,遊戲就會變得很卡,根本沒辦法遊玩。當時的捲軸遊戲聖杯是大名鼎鼎《超級瑪利歐兄弟》,早在 1985 年,任天堂就做到了「平滑捲動」(smooth scrolling)——背景可以隨著瑪利歐一個一個像素的滑順地移動。瑪利歐不但是無數人的童年回憶,也是許多遊戲製作人的標竿。Romero 製作 Dangerous Dave 也是想效仿瑪利歐,而「平滑捲動」也一直是 Carmack 想做到的效果。

Gamer’s Edge 產出第一張磁片後,Softdisk 的老闆答應 Romero 和 Carmack 之後「只需」每兩個月產出一款他們自己想做的原創遊戲,這讓 Carmack 有時間開始研究平滑捲動的技術。

當時的顯示卡標準 EGA 有一些功能可以加速平滑捲動的運算。

  1. EGA 有足夠的記憶體空間讓可以做雙緩衝(double buffering)——你在顯示卡記憶體放兩個緩衝區:一個用來繪製;一個用來顯示。畫完一個緩衝區才把它顯示到螢幕上,如此以解決畫面閃爍的問題。

  2. EGA 另一個功能是它允許你配置一個比實際螢幕還大的緩衝區。假設螢幕尺寸是 320x200 像素,你可以配置一個稍大的緩衝區,如 384x224,然後鏡頭在緩衝區內平移,只要鏡頭還在這個緩衝區以內,除了遊戲角色鄰近的磚塊外,就不需重繪任何像素。

Carmack 思考:「那如果鏡頭移出緩衝區之外,應該要發生什麼事?」一開始,他想到整個緩衝區必須重繪,再配上一個他稱之為 Adaptive Tile Refresh 的方法。他觀察到大部分的場景,色彩都很單調,像是瑪利歐的藍天白雲。試想:把兩張相同的背景疊在一起,其中一張不動,一張位移一個磚塊,你會發現大部分磚塊的顏色是可以保持不變的。Carmack 將這個觀察寫成程式,他的程式碼省下了許多 CPU 時間,讓畫面更新率可以維持在每秒 20-30 格,確保遊戲體驗流暢。

Adaptive Tile Refresh 是一個聰明但也複雜的方法,事後 Carmack 發現有一個更簡單、更快速的方法。他發現當鏡頭移出緩衝區之外,EGA 會繞回去顯示緩衝區的起始位址,如此一來,他根本就不用在意場景的顏色。每當鏡頭移出緩衝區之外,他只要確保把一條新的橫列或直行的磚塊畫進緩衝區,更新暫存器裡的位移值,EGA 就會幫他把緩衝區的一部分正確地畫到螢幕上。

Carmack 常被譽為是第一個在 PC 上做到平滑捲動的人,但其實更早另有他人,只能說當年剛好有幾個人在差不多時期做到了同一件事。IBM 在 1981 年推出了 PC 以及 CGA 顯示卡架構,在 1984 年推出 EGA。五年後,SEGA 的遊戲《戰斧》PC 版在 1989 年上市,其捲動的方法也是利用 EGA 會「繞回去」的特性。隔年,1990 年,Carmack 才加入 Softdisk、發明了 Adaptive Tile Refresh、啟發了 id Software 的創立。

創業契機

那天是 1990 年 9 月 20 日,John Romero 早上 10 點進公司,辦公室空無一人,他走到辦公桌,發現他的鍵盤上有一張 3.5 吋磁片,上面有一張便條紙寫著「輸入 DAVE2」。

「嘿嘿!一定是 John (Carmack) 又做出什麼酷東西了!」Romero 心想。「 看來 Tom 也有幫忙。」他認出便條紙上是 Tom Hall 的筆跡。他把磁片插入他的 386 電腦(當時全公司最好的 PC),執行 DAVE2.EXE,然後螢幕上出現 “Dangerous Dave in Copyright Infringement”(有侵權疑慮的 Dangerous Dave)。

背景隨著遊戲角色 Dave 平滑地移動的那一刻,Romero 驚呆了。資深玩家 Romero 玩過無數的遊戲,但他從沒見過任何一款 PC 遊戲可以像瑪利歐一樣橫向、平滑的捲動。

雖然當時 Gamer Edge’s 已經在利用 Carmack 的捲動技術在開發遊戲,但一開始 Carmack 的引擎還只能做出縱向的捲動。所以當 Romero 看到 Carmack 和 Tom 做出一個角色可以左跑右跑、跳上跳下,背景還會跟著移動的遊戲時,才會這麼興奮。

「有侵權疑慮的 Dangerous Dave」是 Tom 和 Carmack 前一晚工作到凌晨 5 點半的成果。那天晚上,大家都下班了,只剩下 Tom 和 Carmack 在辦公室繼續工作。Carmack 向 Tom 展示他的橫向捲軸技術,Tom 靈機一動:「我們來複製《超級瑪利歐兄弟 3》的第一個關卡吧!」Tom 重製了瑪利歐場景裡的白雲、水管、金幣,但瑪利歐本人被替換成 Dangerous Dave。

興奮的 Romero 在 Softdisk 到處跑,把 demo 展示給其他 Softdisk 的工程師看,但他得到的反應是:「喔,然後呢?」「嗯,還不錯。」

「一群白痴,他們竟然不懂。」Romero 心想。遊戲資歷不多的人根本不會想到這可能是史上第一個在 PC 上滑順的橫向捲軸遊戲。

Carmack 可能也沒辦法理解 Romero 為什麼這麼激動。做到了縱向捲軸,橫向捲軸幾乎是一蹴可幾,就技術上而言,一開始做到縱向捲軸還比較值得讓人興奮。然而,Romero,遊戲界的伯樂,看的是產品面,他玩過太多了遊戲了,這讓他有獨到的眼光,他看一眼就篤定 PC 上的橫向捲軸遊戲會紅,像瑪利歐一樣紅。

等到 Gamer’s Edge 的成員,Carmack、Tom、Adrian 等人都進了辦公室,Romero 迫不急待地告訴他們:「這個超屌的!」想到剛才被其他同事潑冷水,他繼續說:「我們要離開這裡!Softdisk 根本就不懂這技術有多厲害!這個技術留在 Softdisk 太浪費了!我們要自己創業!」大伙都抱著看好戲的心態看著 Romero 發瘋,因為他們認識的 Romero 本來就是一個誇張的人。

Jay Wilbur 剛好路過辦公室,正要開口安撫過於興奮的 Romero,Romero 稍稍冷靜下來並打斷他:「我是認真的,我們要走人了!」Jay 把身後的門關上,讓 Romero 徐徐道來。

一支夢幻團隊就這樣形成了:John Carmack,技術天才,負責開發遊戲引擎;John Romero,全能的程式設計師,擅長遊戲設計、美術、甚至商業談判;Adrian Carmack 負責美術;Tom Hall 是遊戲設計師;Jay Wilbur 負責公司運營、稅務,還有準備食物給大伙吃。

他們在湖邊租了一間房子,作為他們新據點。他們還沒準備好要辭職,也沒有電腦可以用,於是他們公器私用,下班後把他們在 Softdisk 用的電腦,全數遷移到湖邊的房子,開始做他們的新專案。平日白天他們是 Gamer’s Edge、Softdisk 的職員,下班後這個團隊就變成 “Ideas from the Deep”,簡稱 IFD,是 id Software 的前身。

某個週末 IFD 一伙人在湖邊房子工作的情景
某個週末 IFD 一伙人在湖邊房子工作的情景

Jay 首先建議與任天堂合作,開發 PC 版的瑪利歐遊戲,因為若能成為任天堂的合作夥伴,馬上就能開始賺錢了。

這群人一下班,就聚在湖邊的房子,沒日沒夜地的趕工。一個禮拜後,他們完成了《超級瑪利歐兄弟 3》PC 版 demo:

他們把這個 demo 寄給了任天堂,並在信中提議合作。據說任天堂高層看了 demo 印象深刻,但他們寧可把遊戲留在自己生產的遊戲機裡,任天堂沒有興趣,也沒有必要開發 PC 遊戲的市場,便回絕了 IFD 一行人的提議。

失望之餘,IFD 決定自創遊戲,這個遊戲叫做《指揮官基恩》(Commander Keen)。他們當時剛好遇到一個叫 Scott Miller 的人可以幫他們發行遊戲。

Apogee 模式

在兩個約翰都還在 Softdisk 當職員時,身處於德州達拉斯的 Scott Miller 經營共享軟體(shareware)事業已頗為成功。

共享軟體發跡於工具程式,運作方式是這樣的:開發者散佈工具程式給大家免費使用,如果使用者喜歡,他們可以決定要不要付一點錢來感謝程式的開發者。

一開始 Scott 想把這種模式用在自製的遊戲上,但不成功。遊戲玩家似乎比較厚臉皮,有免費的可以玩,沒人會選擇付錢。

後來 Scott 稍作調整,他把遊戲分成多個關卡,只有一開始的關卡可以免費玩,但若要玩後面的關卡,玩家就得付錢。Scott 在各個 BBS 站宣傳他自製的遊戲,免費讓玩家下載一小部分,當玩家玩完了,螢幕上就會跳出 Scott 他家的地址,告訴玩家如果要玩剩下的部分,寄一張支票給 Scott,就會收到完整的遊戲。

Scott 自創的「Apogee 商業模式」大獲成功,很快的,玩家寄來的支票超越了 Scott 白天當寫手所帶來的收入。於是,Scott 辭去正職工作,開了一間叫 Apogee 的公司,專心發展他的遊戲事業。

某一天,Scott 聯絡上 Romero,想談合作。Scott 問起 Romero 過去的遊戲《Pyramids of Egypt》,能不能做個續集,然後再用「Apogee 模式」發行?Romero 回答:「《Pyramids of Egypt》是 Softdisk 的版權,我們不能用它。但別灰心,我們現在手上有一個更酷的東西。」幾天後,Scott 收到一個來自 IFD 的包裹,信上寫著《指揮官基恩》的介紹,隨信附上 IFD 先前寄給任天堂的瑪利歐 demo。

Scott 曾在推特上公開分享過這封信,信中提到的「引擎」(engine)應該是「遊戲引擎」一詞最早的文字紀錄。

Scott 看到瑪利歐 demo 後驚豔不已,馬上拿起電話打給 John Carmack 聊了好幾個小時。「這個傢伙是個天才,他比其他同業的人都還要領先一步,在做沒有人做過的事。」在掛斷電話前,Scott 已打定主意要和 IFD 團隊簽約。

指揮官基恩

Scott 和 IFD 團隊達成協議:IFD 必須在聖誔節前交付《指揮官基恩》給 Apogee 發行,當時是 1990 年 10 月,這表示 IFD 只剩兩個月可以完成這個遊戲。

《指揮官基恩》是 Tom Hall 的精心傑作。Tom 為遊戲寫了背景故事,遊戲的卡通元素也大多出於 Tom 之手。這個遊戲充分利用 Carmack 開發的捲動技術:如同瑪利歐,遊戲場景會隨著基恩左右上下、以像素為單位滑順地移動。

Tom 負責設計,Carmack 和 Romero 負責程式。Carmack 繼續改良遊戲引擎,讓基恩移動得更順暢;Romero 開發一個名為 “TED”(tilemap editor)的地圖編輯器,讓 Tom 可以設計關卡;Adrian 在後期也加入美術設計的行列。

TED 地圖編輯器擷圖
TED 地圖編輯器

兩個月不眠不休地努力,IFD 團隊不知攝取了多少可樂和披薩。Scott 最終在 1990 年 12 月 14 日將《指揮官基恩》第一關放到各大 BBS 站讓大家免費下載。如果付 30 塊美金,Apogee 就會把之後的兩個關卡存在磁碟片寄給玩家。

《指揮官基恩》大受歡迎。Apogee 本來的月收入大約是 7,000 美元,而在《指揮官基恩》釋出的那個月,收入直接衝上 30,000 美元。這個遊戲在亞洲或許沒這麼紅,但它是無數美國人的童年回憶,那個戴著黃色安全帽、穿著洋紅色上衣的小男孩至今仍是大家 cosplay 的對象。

指揮官基恩的封面,一個戴著黃色安全帽和穿著洋紅色上衣的男孩

id Software 正式成軍

到目前為止這一切全發生在 1990 年:Carmack 加入 Softdisk、Carmack 發明平滑捲動技術、Romero 說服大家自立門戶、複刻瑪利歐給任天堂看、與 Scott 合作發行《指揮官基恩》。

1990 年 12 月,完成《指揮官基恩》後,他們將公司名稱從 “Ideas from the Deep” 或 IFD 簡化成 id

1991 年 1 月,id 一伙人拿到他們的第一筆分潤,大約是 10,000 美元,按照這個速率估算,年收入上看 100,000 美元,足夠讓他們辭去 Softdisk 的工作了。

id 這群人在暗中搞鬼時,Softdisk 的老闆 Al Vekovius 其實已有發覺蹊蹺。只是 Al 太需要 Gamer’s Edge 團隊了,所以也就對他們奇怪行為睜一隻眼閉一隻眼。直到有一天,有個 Softdisk 的員工向 Al 告密,說 Gamer’s Edge 一直在外面偷偷賺外快,Al 只好去當面質問 Carmack。

Carmack 向 Al 坦誠:「我承認,我們一直在用你的電腦和工作時間做自己的遊戲。」隨後兩個約翰更向 Al 提出辭職,而且還要帶著整個團隊一起走。Al 雖然感覺到被背叛,但他是個生意人,即使現況不理想,他仍想在當中最大化自己的利益,與其告他們,Al 反而提出合作。最後 id 同意幫 Softdisk 每兩個月製作一款遊戲。

磁片上面寫著 “Gamer’s Edge” 和 “Dangerous Dave in the Haunted Mansion”
分道揚鑣後 id Software 幫 Softdisk 出的第一張磁片

1991 年 2 月 1 日,id Software 正式成立。在接下來的幾年裡,id Software 將一再引領著遊戲業的發展,推出如《毀滅戰士》和《雷神之鎚》等一系列具有影響力的遊戲,向世界展示創新的遊戲設計和先進的技術。他們將證明,遊戲不只是娛樂,也能是藝術與科技的展現。

下回待續:〈毀滅戰士們:三維世界〉

參考資料

本文主要脈絡參考了《Masters of Doom》,作者 David Kushner 花了六年的時間研究、訪問相關人士,如果沒有愛,還真寫不出這本巨作。這本書在 2003 年出版,在那之後網路上又出現許多補充資料,包括遊戲影片、podcast 訪談、歷史文本,讓我可以充實本文。

完整參考資料如下:

  1. Masters of Doom: How Two Guys Created an Empire and Transformed Pop Culture by David Kushner
  2. John Carmack: Doom, Quake, VR, AGI, Programming, Video Games, and Rockets - Lex Fridman Podcast
  3. “The Early Days of id Software: Programming Principles” by John Romero (Strange Loop 2022) - YouTube
  4. Dangerous Dave in “Copyright Infringement” - Planet Romero
  5. A Look Back at Commander Keen - 3D Realms
  6. A couple of technical questions about the Keen games - Public Commander Keen Forum
  7. How such smooth scrolling was achieved in games like Super Mario and Commander Keen? - Quora
  8. Super Mario Bros. 3 Demo (1990) - Vimeo