繪製數位血統圖:巨洞冒險家族樹

計算機史常以硬體突破與作業系統里程碑為視角敘述。然而,最深遠的遺產往往來自於定義整個類型的軟體。少有軟體的血統如同 Colossal Cave Adventure 那般廣闊且複雜。

最初由 Will Crowther 在 1975 年作為個人專案開始——結合真實洞穴系統模擬與奇幻元素——逐漸發展成全球現象。透過 Don Woods 以及後續數千名程式設計師的貢獻,這款遊戲成為測試新硬體、學習新語言、以及實驗互動小說概念的主要工具。「Adventure Family Tree」不僅是移植清單,更是早期計算機時代協作精神的地圖。

原始根源:Crowther 與 Woods

血統始於 CROW0000,即 Will Crowther 所撰寫的原始 PDP-10 FORTRAN 版。此版本純粹模擬洞穴探險。當 Don Woods 發現此程式碼並於 1977 年將其擴展為 WOOD0350 時,遊戲便進入「奇幻冒險」領域。Woods 加入了計分、更多寶物,並擴充地圖,創造出決定性的 350 點版本,成為幾乎所有後續衍生版的基因藍圖。

此核心版本迅速分支。Woods 之後自行製作了 WOOD043B(Adventure II)與 WOOD0430(Adventure 2.5),將遊戲移植至 C 語言並進一步擴大世界。這些早期衍生版建立了「點數制」的進程系統,定義了該類型十年的發展方向。

擴散時代:移植與平台

隨著個人電腦在 70 年代末與 80 年代初的興起,Adventure 成為遊戲移植的「Hello World」。家族樹揭示了幾乎涵蓋所有可想像架構的眾多改編:

微電腦熱潮

  • Apple II: 從商業版 Microsoft Adventure (LETW0350) 到各種由 Peter Schmuckel 與 Leonard Barshack 製作的 BASIC 移植 (BASC0350)。
  • Commodore 64 & PET: 由 Jim Butterfield (BUTT_XXX) 等人製作的精簡版,將體驗帶給記憶體有限的家庭使用者。
  • ZX Spectrum: 活動中心,涵蓋從 John Jones‑Steele (JONE0210) 的「忠實」移植到 Nigel Brooks (BRHA0017) 的增強版等各種版本。

大型主機與小型電腦

超出家庭電腦的範疇,遊戲亦在 PDP‑11、VAX 系統與 IBM 大型主機上運行。值得注意的版本包括 Kent Blackett 的 Fortran IV 移植 (BLKT0350) 與 VM/CMS 的 PL/1 移植 (VMCM0350) 。此遊戲之普及程度,使其常被用於驗證新系統的穩定性;正如一位社群成員所說,它在 DG 「Eagle」/MV8000 機器的啟動過程中扮演了核心角色。

演化分支:擴充與實驗

並非每個版本都是忠實移植。許多開發者將 Adventure 作為自己擴充的基礎:

  • 高分版本: David Platt 的 PLAT0550(Adventure 550)與 David Long 的 LONG0501(Adventure 5)突破了遊戲範圍的界限,新增了數百個點數與位置。
  • 現代主義方法: 2003 年,Donald Knuth 使用 Literate Programming 製作了版本 (KNUT0350),將遊戲邏輯視為數學與文學的練習。
  • 奇特語言: 此血統甚至延伸至程式設計的邊緣,例如 Kunihiko Sakamoto 將其翻譯成 Unlambda 奇特語言 (SAKA0350)。

人性因素:協作修改

家族樹見證了當時的「駭客倫理」——將既有事物取出、理解並改進的動力。這在源碼註解中無數的「改編自」鏈條中可見一斑。例如,Doni G. Grande 所製作的 Apple //GS 版改編自 Bob Wissner,後者又改編自 Lawrence R. Steeger,進而改編自 Jay R. Jaeger。

這種修改文化常在基層發生。一位開發者回憶起在 PDP‑11 Fortran 原始碼上的青少年實驗:

"我和朋友成功加入了一個房間……如果你輸入指令 'out'(如同有人嘗試的),你會發現自己在『無處』。『四面皆空』。之後你可以輸入 'in' 回到迷宮,或是 'get nothing' 把『nothing』加入你的背包。"

遺產與影響

雖然後來的作品如 Zork 常獲得更廣泛的讚譽,Colossal Cave Adventure 才是真正的始祖。它奠定了基於解析器的介面與持續虛擬世界的概念。

如今,遊戲透過現代 C 語言移植如 Eric S. Raymond 的 Open-Adventure (RAYM0430) 以及各種 JavaScript 實作得以在任何瀏覽器中遊玩。完整的家族樹證明 Adventure 不僅僅是一款遊戲;它是計算機歷史的活化石,記錄了從大型主機時代向個人電腦革命的轉變。

Sources