早期大型电脑游戏

早期大型电脑游戏（early mainframe games）是指在1950年代至1970年代开发、以大型计算机作游戏平台的电脑游戏。大型电脑功能强大，多被企业和学术机构用于处理大量数据。在个人电脑（起初被称为微型计算机）兴起前，计算行业主要使用大型电脑和体积较细、价格更便宜的小型计算机。1960年代中后期，许多早期电子游戏都是在这些电脑上开发的。1970年代初期，商业电子游戏产业尚未成型，大型电脑游戏通常由学生或大公司员工以机器语言或汇编语言编写，而它们只有在特定机器或电脑类型上开发。虽然这些游戏有许多随着旧式电脑停产而佚失，但亦有部分被移植至诸如BASIC等高级语言上，或者在更现代的系统上出现修改版本，从而影响未来的游戏和开发者。

最早的大型电脑游戏在1950年代开始出现。随着时间流逝，电脑技术得到改进，数量亦稳步增长，使不少学校或企业放宽限制，容许学生和员工使用大型电脑编程。这反过来又促使大型电脑上的小型文字游戏适度扩散，并在50年代末期变得越来越复杂。尽管1970年代程序员继续在大型电脑和迷你电脑上开发游戏，但随着商业电子游戏产业的兴起，开始侧重于街机和家用游戏机上，再加上70年代后期个人电脑崛起，意咪著自此电子游戏的受众和开发者开始从大型电脑或迷你电脑上转移往其他平台。另一方面，即使游戏是在大型电脑上开发，但在通用编程语言的普及下，程序员只需作出少量改动便可以在个人电脑上运行。这些早期大型电脑游戏包括：《汉摩拉比》，早期战略游戏，同时是城市建造游戏的先驱；《登陆月球游戏》，在1970年代至1980年代启发了不少程序员或公司开发同类游戏；《内战》，早期战争模拟游戏；《星空奇遇记 (1971年电子游戏)》，它被广泛移植扩展，并在之后的几十年里传播；《星际旅行》，虽然未有对后来的游戏产生影响，但其遗产却推动了UNIX操作系统的发展；《棒球》，早期体育游戏，也是首款允许玩家在比赛期间发施号令的棒球游戏。

## 背景

<image>

大型计算机是种功能强大的电脑，多由大型组织用于计算大量数据，尤其是大规模多用户处理程序。此术语最初指的是容纳了早期电脑中央处理器和主内存的大型机柜，这种机柜又被称为“主机”。到1970年代，个人电脑（起初被称为微型计算机）还不时兴，各机构仍以大型电脑为主力，大型电脑因而成为当时流行的主要电脑类型。而在60年代，大型电脑亦是唯一可供公众购买的电脑类型。同样在60至70年代盛行的还有小型计算机，它是大型电脑更小更便宜的版本，但非供个人使用。根据1970年《纽约时报》的报导，人们在界定何谓迷你电脑时，其中一个共识可能是成本低于2.5万美元。相比之下，常规大型电脑的成本可能超过一百万美元。

到了1960年代末，大型电脑和迷你电脑相继在学术研究机构和大型公司出现，例如是贝尔实验室。虽然在早期电子游戏史中，商业电子游戏产业尚不存在，而且要到70年代初才出现，但这些公司的程序员已经创造出数款可以在大型电脑上玩的小游戏。大多数游戏仅分发给其他使用同一类型电脑的用户，而随着旧电脑型号的停产，它们成了佚失作品。然而，有些作品启发了未来游戏的创作，或者后来在更现代的系统或语言上发布修改版。这些早期大型电脑游戏主要在1968年到1971年之间诞生，但它们只在小范围内传播，受众亦以学术研究为主，并非作商业用途。大型电脑游戏的开发一直持续至70年代，但随着商业电子游戏产业的兴起，开始侧重于街机和家用游戏机上，再加上70年代后期个人电脑崛起，意咪著自此电子游戏的受众和开发者开始从大型电脑或迷你电脑上转移往其他平台。另一方面，即使游戏是在大型电脑上开发，但在通用编程语言（例如BASIC）的普及下，程序员只需作出少量改动便可以在个人电脑上运行。

## 早期游戏

最早的电脑游戏在1950年代开始出现，由《大脑伯蒂》打头阵，它是加拿大工程师约瑟夫·凯特为1950年举行的加拿大博览会而制、以电脑为基础的井字棋游戏。虽然这些游戏作为电子游戏的地位取决于所使用的定义，但这一时期开发的游戏在大型电脑前身上运行，主要是为了学术研究或展示电脑技术发展而开发。这些电脑几乎完全位于大学和研究机构中，只有学者和研究人员才能使用，从而阻碍了娱乐程序的发展。在这十年中，电脑技术得到改进，出现了更细小、采用晶体管的电脑。这些电脑更可以实时创建和运行程序，毋须批量运行，体积细小也有利增强普及率。

1960年代，电脑技术改进加上价格相宜的大型电脑（后来被称为迷你电脑）踏入早期发展，使不少机构放宽了对计算机程序设计存取的限制。以麻省理工学院为例，它允许该校学生和员工使用实验电脑TX-0。这反过来又促进程序开发，它们除了突出电脑效能外，还包含娱乐方面。学院的小型程式设计社团以TX-0为游戏平台，创作了井字棋和老鼠迷宫，前者使用光笔与电脑进行简单的井字游戏，后者则以光笔为虚拟老鼠设置墙壁迷宫。1961年，数位设备公司（DEC）在校内安装了它们出产的PDP-1迷你电脑，及后程式设计社团制作了电子游戏《太空战争！》来展示其能力。随后《太空战争！》更被散布至其他PDP-1电脑及大型电脑上，使它成为首款在单一机构以外可以接触得到的游戏。

十年间，电脑变得普及，功能也越发强大，不少公司和机构均有它们的踪影。据估计，1971年已有超过1000台带显示器的电脑流通被各家机构采用，而60年代初期仅有数十台。碍于物理硬件或机器语言的差异，在不对程序代码作出重大修改的情况下，不同的电脑是无法运行相同程序。但是，电脑行业的扩展促使程序目录和用户组诞生，以便在同一系列各款电脑之间共享程序，例如是DEC的PDP系列。这些目录和小组时常分享小游戏和程序，包括收录在1962年4月IBM程序目录的《BBC维克棒球示范器》（BBC Vik The Baseball Demonstrator）和《三维井字棋》（Three Dimensional Tic-Tack-Toe），以及数位设备电脑用户协会通讯内的骰子游戏和问答游戏。1964年发行的《苏美尔游戏》以IBM 7090作游戏平台，是款以资源管理为中心的文字式战略游戏，同时是首款寓教于乐的作品。除了IBM和DEC社团之外，其他地方也有制作大型电脑游戏，例如是1962年波兰工程师维托尔德·波德戈尔斯基（Witold Podgórski）为奥得1003开发的《马伦巴》。

1960年代后半期，能够在多类电脑上运行的高级语言（例如BASIC）进一步扩大了游戏的传播范围，使它们不再受到设备和地域限制。虽然大多数游戏仅为文字式设计，而不是像《太空战争！》般具备图形效果，但这些游戏随着玩家增多而变得更为复杂，甚至出现了棒球和篮球模拟游戏。在达特茅斯分时系统（DTSS）等系统的帮助下，数以千计用户透过远端逢线方式连接到中央大型电脑，使更多人能获取电脑的访问权限。据达特茅斯学院教授约翰·凯梅尼和托马斯·卡茨称，在1967至1968学年校内的DTSS系统500个程式库包含了“大量游戏”。系统超过四分之一的内容属于休闲或娱乐用途，凯梅尼和卡茨对此表示欢迎，认为有助用户熟悉并不惧怕电脑。他们也宣称：“我们已经让许多尊贵访客损失了几个小时，而他们只是在一个高度逼真的模拟游戏中担任达特茅斯足球队四分卫。”

## 101款BASIC电脑游戏

<image>

1971年，DEC员工兼时事通讯编辑大卫·阿尔以BASIC翻译了两款原本以FOCAL (程式语言)编写的游戏《汉摩拉比》和《登陆月球游戏》，部分原因是为了在PDP-8迷你电脑上演示该语言。这两款作品大受欢迎，使得阿尔开始在公司通讯中刊登自己和读者提交的BASIC游戏。1973年，阿尔出版了《101 BASIC Computer Games》，书中收录阿尔和其他程序员编写的BASIC电脑游戏源代码，部分是以BASIC编写的原创游戏，也有部分是从FOCAL等语言移植而来的游戏，而大多移植作品原本属于大型电脑游戏。《101款BASIC电脑游戏》后来更登上畅销榜，销量超过十万册。1978年，阿尔重新出版了他的著作，并更名为《BASIC电脑游戏》，后来此书成为有史以来最畅销的电脑书籍，售出超过一百万册。拜此书和BASIC流行所赐，大型电脑游戏的BASIC版本更广为人知，知名度甚至超越原版游戏和其他语言编写的大型电脑游戏。

《汉摩拉比》改编自DEC员工道格·戴门特（Doug Dyment）于1968年以FOCAL重建的《苏美尔游戏》。游戏共有十回合，玩家须扮演古巴比伦国王汉谟拉比管理工人、土地、谷物资源，并预算下个回合须花费多少粮食来种植作物、养活人民、购买额外土地，同时应对作物产量随机变化和瘟疫等问题。游戏后来出现了多个以FOCAL或FOCAL-69编写的版本，阿尔亦在《101款BASIC电脑游戏》中发布了自行创作的版本。受惠于书籍大卖和BASIC流行，《汉摩拉比》的知名度远高于原版游戏。《汉摩拉比》影响了许多后来的策略和模拟游戏，启发了更复杂的经济模拟游戏，同是城市建造游戏的先驱。

另一款移植游戏《登陆月球游戏》则以三种版本出现于书中。游戏原始版本名为《月球》（Lunar），是高中生吉姆·施托雷（Jim Storer）以FOCAL为PDP-8编写的。第二个版本名为《火箭》（Rocket），由DEC员工埃里克·彼得斯（Eric Peters）以BASIC编写；第三个版本名为《LEM》，由威廉·拉巴里二世（William Labaree II）等人以BASIC编写。后来，阿尔把施托雷的FOCAL版本转换为BASIC，修改了部分文本，并刊登于DEC通讯上。一年多后，阿尔把上述三个《登陆月球游戏》版本收录在《101款BASIC电脑游戏》，分别是《火箭》（施托雷版）、《ROCKT1》（彼得斯版）、《ROCKT2》（拉巴瑞版）。三款游戏均以文字呈现，界面会显示包含火箭飞行高度和降落速度等资料的文字摘要，玩家则须在界面中输入指令试图控制火箭安全着陆月球。阿尔和史蒂夫·诺斯（Steve North）随后将这三个版本转换为Microsoft BASIC，统称为《登陆月球》（Lunar Lander），并于1976年的杂志《创意计算》上发表。此名称亦在1978年版《BASIC电脑游戏》中出现。

<image>

书中还收录了文字式游戏《内战》（Civil War），让玩家在模拟美国内战的过程中与电脑对抗。这款游戏源于1968年的多用户大型电脑，模拟了冲突中14场主要战役，人类玩家扮演南方邦联，电脑扮演北方联邦。玩家可以控制四个直接变量，而它们则会在相互作用下决定战斗结果，这些变量包括：花费多少资金在食物、薪水、弹药上，以及使用四种进攻或四种防御策略中的哪一种。伤亡最少的一方胜出战斗，当玩家赢得八场或以上的战斗便会通关。阿尔把书中收录的这款游戏归功于三位列星顿高级中学的学生——L·克拉姆（L. Cram）、L·古迪（L. Goodie）、D·希巴德（D. Hibbard），而“TIES”的G·保罗（G. Paul）和R·赫斯（R. Hess）则把它改成双人游戏。《内战》后来成为1980年代早期付费游戏系统内其中一款文字式游戏。

《星空奇遇记 (1971年电子游戏)》可能在书中最受欢迎的大型电脑游戏。它是款文字式游戏，玩家须指挥进取号星舰追捕并摧毁入侵的克林贡战舰。与其他文字式游戏不同的是，它没有书面回应玩家的输入，而是采用基于字符产生的图像，以不同字符作为图形符号来表示物体。1971年，迈克·梅菲尔德（Mike Mayfield）在SDS Sigma 7大型电脑上以BASIC开发这款游戏。这点亦有别于书中其他大型电脑游戏，因为它们大多以FOCAL编写。到此书出版时，这款游戏旱已广泛散布至迷你电脑和大型电脑上，甚至出现了多个修改版本。阿尔把其中一个修改版本更名为《太空战争》（Space War），并收录在《101款BASIC电脑游戏》内。1978年的《BASIC电脑游戏》则包含了《超级星空奇遇记》（Super Star Trek）的Microsoft BASIC移植版，它是1974年首次编写的游戏扩展版，而此版本亦被移植到70年代众多个人电脑系统上。阿尔甚至在书中表示，当时很难找到一个不包含《星空奇遇记》的电脑装置。此后，游戏又出现了多种语言的更新版本。到了1980年，《龙》杂志宣称《星空奇遇记》是“其中一款流行的电脑游戏（如果不是最流行的话）”，又指“这个游戏简直有几十个不同的版本在世间流传”。

## 其他游戏

<image>

一些未获《101款BASIC电脑游戏》收录的大型电脑游戏仍然具有持久的影响力。其中一款是贝尔实验室程序员肯·汤普逊于1969年开发的《星际旅行》，玩家模拟操作太空船在代表太阳系的二维画面内航行，或者在不同行星或卫星表面着陆，除此之外没有其他目标。玩家可以控制太空船前进、后退或转向，并透过调整画面缩放比例来增减整体速度，船只亦会受到万有引力影响。游戏在贝尔实验室开发，汤普逊把它从Multics操作系统移植到GE 635大型电脑的通用综合操作系统上，后来又移植到了PDP-7迷你电脑上。移植过程中，汤普逊逐步开发出属于自己的操作系统，后来形成了UNIX操作系统的核心。游戏未有传播至实验室外，也从未对未来游戏产生影响，但其遗产却推动了UNIX的发展。

《棒球》（Baseball）是另一款同样具影响力的早期大型电脑游戏。1971年，于波莫纳学院主修英语的唐·达格洛在PDP-10迷你电脑上开发了这款文字式体育游戏，它亦是首款允许玩家在游玩过程中管理整场比赛的游戏，而非仅仅在比赛开始前挑选球员。游戏更获美国国家棒球名人堂暨博物馆收录。游戏在1974年不断更新，并散布至其他PDP-10上。游戏让每位玩家控制投手或击球手，玩家可输入他们的打算，例如向击球手投球或保送，或者更换击球手。负责击球的玩家可以指挥垒上球员抢球，也可指挥击球手击球。比赛结果将会详细地打印在纸上，就像广播电台经无线电评述比赛一样。后来，达格洛开发了更多更复杂的棒球游戏，其中包括《Intellivision世界棒球大赛》（1983年）和《天生好手》（1987年）。