『スペースウォー!』は、1962年にスティーブ・ラッセルがマーティン・グレーツ、ウェイン・ウィータネン、ボブ・サンダース、スティーブ・ピナーらと共同で開発した宇宙戦闘ビデオゲームです。マサチューセッツ工科大学に新設されたDEC PDP-1ミニコンピュータ向けに開発されました。その後、ダン・エドワーズやピーター・サムソンをはじめとする近隣の大学の学生や職員によって拡張されました。また、当時数十台しかなかったPDP-1の設置場所の多くに普及し、複数のコンピュータでプレイされた最初のビデオゲームとなりました。
このゲームでは、「ニードル」と「ウェッジ」という2機の宇宙船が、恒星の重力圏でドッグファイトを繰り広げます。両機は人間のプレイヤーが操縦します。各機には限られた弾薬と燃料しかなく、プレイヤーが加速していなくても機体は動き続けます。恒星の近くを飛行して重力アシストを得るのが一般的な戦術です。魚雷、恒星、または他の機体と衝突すると、機体は破壊されます。プレイヤーはいつでもハイパースペース機能を使用して、画面上の新しいランダムな場所にジャンプできますが、バージョンによっては使用するたびに機体が破壊される確率が高くなります。このゲームは当初、PDP-1のコンソールスイッチで操作されていましたが、ボブ・サンダースがすぐに初期のゲームパッドを開発し、プレイしやすくしました。
Spacewar!は、ビデオゲームの初期の歴史において最も重要かつ影響力のあるゲームの一つです。1960 年代の小規模なプログラミング コミュニティで非常に人気があり、パブリック ドメインのコードは当時広く移植され、他のコンピュータ システム上で再現されました。特に、1960 年代後半にモニター付きコンピュータ システムがより普及してからは、その傾向が顕著になりました。また、PDP-1エミュレータ向けに、より現代的なプログラミング言語で再現されたものもあります。Spacewar! は、最初の商用アーケード ビデオゲームであるGalaxy GameやComputer Space (いずれも 1971 年)、そして後のAsteroids (1979 年)など、他の多くのビデオゲームに直接的な影響を与えました。2007 年にSpacewar!は、米国議会図書館のゲーム カノンの始まりとなった、歴史上最も重要なビデオゲーム 10 選に選ばれ、 2018 年にThe Strongと国際電子ゲーム史センターによって世界ビデオゲーム殿堂入りを果たしました。

1950年代には、コンピュータやプログラミングの学術研究の文脈で、またコンピューティング能力の実証のために、さまざまなコンピュータ ゲームが作成されました。特に、1950年代後半に、プログラムをスケジュールに基づいて実行するのではなく、リアルタイムで作成して実行できる小型で高速なコンピュータが導入されてからは、その傾向が顕著になりました。しかし、一部のプログラムは、実行中のコンピュータの能力を示すとともに、娯楽製品としても意図されていました。これらは一般的に、学部生や大学院生、大学職員によって作成されました。例えば、マサチューセッツ工科大学(MIT)では、職員や学生が実験用コンピュータTX-0用のプログラムを開発することが時折許可されていました。[ 1 ]これらのインタラクティブなグラフィック ゲームは、アラン コトック、ピーター サムソン、ボブ サンダースが率いるテック モデル レイルロード クラブ(TMRC)に所属する学生や大学職員など、プログラマーのコミュニティによって作成されました。ゲームには、ライトペンを使ってコンピューターと単純な三目並べをプレイする「三目並べ」や、ライトペンを使って仮想のネズミが通り抜ける壁の迷路を作る「迷路の中のネズミ」などがあった。 [ 1 ] [ 2 ] [ 3 ]
1961 年 9 月、MIT 電気工学科のある 26 号館 2 階の「仮設室」にDigital Equipment Corporation (DEC) PDP-1ミニコンピュータが設置された。PDP-1 は旧型の TX-0 を補完するもので、TX-0 と同様にパンチ テープの読み書き機能を備え、さらにスイッチ パネルからの入力を受け付け、陰極線管(CRT) ディスプレイに出力することもできた。PDP-1 が到着する前の夏、学生と大学職員のグループが、新しいコンピュータの機能を説得力のある方法で示すプログラムのアイデアを検討していた。そのうちの 3 人、当時ハーバード大学の職員で MIT の元研究助手だったSteve Russell 、MIT の元学生で研究助手だった Martin Graetz、ハーバード大学の研究助手で MIT の元職員で学生だった Wayne Wiitanen がSpacewar!のアイデアを思いついた。グレーツとウィータネンはマサチューセッツ州ケンブリッジのヒンガム通りの集合住宅に住んでいたため、彼らは自分たちの共同作業を「ヒンガム研究所」と呼んでいた。[ 2 ] [ 4 ]ラッセルは1972年のローリングストーン誌のインタビューで、「私たちは真新しいPDP-1を持っていた。誰か(マービン・ミンスキー)が万華鏡のような面白いパターンを作る小さなパターン生成プログラムをいくつか作った。あまり良いデモンストレーションではなかったが、これはあらゆる良いことができるディスプレイだった!そこで私たちはそれについて話し始め、どんなディスプレイが面白いかを考え始めた。おそらく2次元の操縦のようなものを作れるだろうと判断し、当然ながら宇宙船を作るのが一番良いだろうと判断した。」[ 2 ] [ 5 ]

Spacewar!のゲームプレイでは、プレイヤーが操作する「ニードル」と「ウェッジ」と呼ばれる2 機のモノクロ宇宙船が、星空を背景にした星の重力井戸内の 2 次元平面上で操縦しながら互いに撃ち合う。 [ 2 ] [ 4 ]宇宙船は魚雷を発射するが、魚雷は星の重力の影響を受けない。宇宙船には魚雷と燃料の供給量が限られており、燃料はプレイヤーが宇宙船のスラスターを発射するときに消費される。[ 6 ]魚雷は、コンピューターのトグルスイッチを切り替えるか、コントロールパッドのボタンを押すことで 1 機ずつ発射され、発射の間にはクールダウン期間がある。宇宙船はプレイヤーが加速していなくても動き続け、宇宙船を回転させても移動方向は変わらないが、慣性なしで一定の速度で回転することができる。[ 2 ]
各プレイヤーは1隻の宇宙船を操作し、星や敵の宇宙船との衝突を避けながら、もう一方の宇宙船を撃墜しようと試みる。星の近くを飛行すると、軌道を誤って星に落ちてしまうリスクがあるものの、重力アシストを受けることができる。宇宙船が画面の端を越えると、ラップアラウンド効果で反対側に再び現れる。ハイパースペース機能、または「パニックボタン」は、数秒間消えた後、プレイヤーの宇宙船を画面上の別の場所に移動させることで、敵の魚雷を回避する最後の手段として使用できるが、ハイパースペースからの再突入はランダムな場所で発生し、バージョンによっては使用するたびに宇宙船が爆発する確率が高くなる。[ 6 ]

プレイヤーの操作には、時計回りと反時計回りの回転、前進推力、魚雷の発射、ハイパースペースが含まれます。[ 6 ]当初、これらはPDP-1 ミニコンピュータの前面パネルのテストスイッチを使用して制御され、各プレイヤーに 4 つのスイッチがありましたが、これらは使いにくく、通常のゲームプレイですぐに摩耗することが判明し、プレイヤーが誤ってコンピュータの制御スイッチと電源スイッチを切り替えてしまう原因にもなりました。スイッチの位置により、コンピュータの前のスペースが限られているため、1 人のプレイヤーが CRT ディスプレイの片側に寄ってしまい、不利な状況になりました。[ 2 ]これらの問題を軽減するために、サンダースは、基本的に初期のゲームパッドである分離型制御デバイスを作成しました。[ 7 ] [ 8 ]ゲームパッドには、左右に旋回するためのスイッチ、前進推力またはハイパースペースのためのスイッチ、魚雷発射ボタンがありました。相手プレイヤーがクールダウン期間中に魚雷を発射しようとしていることに気づかないように、ボタンは無音だった。[ 2 ]
ラッセル、グレーツ、ウィータネンは、PDP-1 の設置を見越して、1961 年の夏にSpacewar! の基本コンセプトを開発しました。 [ 4 ]ラッセルは、最近EE "ドク" スミスのLensmanシリーズを読み終え、その物語がプログラムの良い基礎になると考えた。「彼のヒーローは、銀河を横断して悪者に追われ、追われながら問題を解決する方法を発明しなければならない傾向が強かった。そのようなアクションがSpacewar! を思いつかせた。彼は宇宙船の遭遇や宇宙艦隊の機動について非常に素晴らしい描写をしていた。」[ 5 ]同僚プログラマーのマーティン グレーツが挙げたその他の影響には、EE スミスのSkylark小説や日本のパルプ フィクションの特撮映画がある。[ 9 ]

MITのPDP-1プログラミングコミュニティは、設置後最初の数か月間、コンピュータ用のソフトウェアを作成する方法を理解するために、より単純なプログラムに集中しました。[ 2 ]この期間中、ラッセルはコミュニティの旧友を頻繁に訪ね、Spacewar!のコンセプトについて説明しました。ラッセルは誰かがゲームを実装してくれることを期待していましたが、自分で実装するつもりはありませんでした。しかし、コミュニティの他のメンバーは、彼がゲームを作成する論理的な選択肢であると考え、彼にプログラミングするように圧力をかけ始めました。[ 4 ]これに対し、ラッセルはできない理由についてさまざまな言い訳をし始めました。[ 2 ]その1つは、宇宙船の軌道を計算するために必要な三角関数ルーチンがないことでした。これを受けて、TMRCのアラン・コトックはDECに電話をかけ、DECはそのようなルーチンがすでに作成されていることを彼に伝えました。コトックはDECまで車で行き、コードを含むテープを受け取り、ラッセルの前にそれを叩きつけ、他にどんな言い訳があるのかと尋ねました。[ 2 ] [ 4 ]ラッセルは後に「周りを見渡しても言い訳が見つからなかったので、落ち着いて考えなければならなかった」と説明し、[ 2 ] 1961 年 12 月末に PDP-1 のディスプレイが設置された頃にコードを書き始めた。[ 2 ] [ 4 ] [ 10 ]このゲームは、プレイヤーにとっての娯楽体験としても、観客にとってのデモンストレーションとしても同様に機能するプログラムを作成するために、ラッセル、グレーツ、ウィータネンが開発した 3 つの原則を満たすように開発された。それは、コンピュータのリソースをできるだけ多く使用すること、常に面白く、そのため実行ごとに異なること、そして面白く、そのためゲームであることである。[ 2 ] [ 11 ]ラッセルは、ボブ・サンダースやスティーブ・ピナー(ただし、アメリカ陸軍予備役に召集されていたウィータネンは除く)を含む他のプログラマーの協力を得て、Spacewar!の最初のバージョンを書き上げるのに合計約 200 時間、つまり基本的なゲームを開発するのに約 6 週間を要した。[ 2 ] [ 12 ] [ 13 ]これは PDP-1 のアセンブリ言語で書かれた。[ 14 ]
ラッセルは1962年1月末までに動くドットのあるプログラムを作成し、2月までに回転可能な宇宙船を備えた初期の動作可能なゲームを完成させた。[ 2 ] 2隻の宇宙船は、バック・ロジャースの物語に登場する曲線的な宇宙船とPGM-11レッドストーンロケットを想起させるように設計された。[ 4 ]この初期バージョンには、ランダムに生成された背景の星空も含まれており、これは、背景が空白だと低速での2隻の宇宙船の相対的な動きが分かりにくくなるため、ラッセルが最初に追加したものである。[ 2 ]ヒンガム研究所やTMRCを含むこの地域のプログラミングコミュニティは、後に「ハッカー倫理」と呼ばれるものを開発しており、所有権や著作権を気にすることなく、共同作業環境で他のプログラマーが自由にプログラムを共有および変更していたため、ラッセルの最初のSpacewar!ゲームを改良するグループ作業につながった。[ 4 ] [ 13 ]その結果、星空の不正確さとリアリティの欠如にTMRCメンバーのピーター・サムソンが苛立ち、彼は実際の星図に基づいて夜空をゆっくりとスクロールするプログラムを作成した。このプログラムには、北緯22.5度から南緯22.5度までの帯にある5等級までのすべての星が相対的な明るさで表示された。このプログラムは「高価なプラネタリウム」と呼ばれ、アナログプラネタリウムと比較してPDP-1コンピュータの価格が高いことを指しており、パイナーの「高価なタイプライター」のような「高価な」プログラムシリーズの一部であった。このプログラムは、ゲームの主要バージョンの編集を担当したラッセルによって3月にすぐにゲームに組み込まれた。[ 2 ] [ 4 ] [ 7 ]
ゲームの初期バージョンには、中央の星の重力井戸やハイパースペース機能も含まれていませんでした。これらは、MITの大学院生でTMRCメンバーのダン・エドワーズとグレーツによってそれぞれ作成され、当初は純粋な反射神経のシューティングゲームだったものに戦略要素を追加しました。[ 2 ] [ 4 ]ラッセルは以前から重力を追加したいと考えていましたが、プログラムが十分な速さで計算を実行できませんでした。エドワーズは描画機能を最適化して、重力の影響を計算するための処理時間を解放しました。[ 15 ]ハイパースペース機能の初期バージョンは3回のジャンプに制限されていましたが、危険な位置でゲームに再突入する可能性がある以外にリスクはありませんでした。後のバージョンでは制限が削除されましたが、船を移動させる代わりに破壊するリスクが高まりました。さらに、1962年3月、サンダースはメインフレームのトグルに猫背で座ることによる「宇宙戦争肘」に対抗するために、ゲーム用のゲームパッドを作成しました。[ 2 ] [ 4 ]このゲームはマルチプレイヤー専用ゲームでした。コンピュータには他の船を制御するためのリソースが残っていなかったためです。[ 7 ] [ 16 ]同様に、宇宙船の破壊時に爆発の表示をより洗練させたり、魚雷にも重力の影響を受けるようにするなど、ゲームに追加しようと提案された他の機能も、ゲームをスムーズに実行しながらそれらを処理するのに十分なコンピュータのリソースがなかったため、断念せざるを得ませんでした。[ 2 ]魚雷の速度と方向が発射ごとにわずかに異なるという機能は、プレイヤーからの苦情を受けてラッセルによって追加されましたが、その後削除されました。[ 15 ]機能の追加と変更が完了すると、ラッセルと他のプログラマーは、ゲームの開発から、1962 年 4 月末の MIT サイエンス オープン ハウスなどで他の人に披露する準備へと焦点を移しました。[ 2 ] [ 10 ] [ 17 ] [ 18 ]グループは、時間制限、ハイパースペース機能、デモンストレーションの視聴者用のより大きな第 2 画面を追加し、5 月にグレーツは、デジタル機器コンピュータユーザー協会の最初の会合で、ゲームに関する論文「SPACEWAR! PDP-1 のリアルタイム機能」を発表しました。[ 2 ] [ 19 ]デモンストレーションは成功し、ゲームは MIT で非常に人気を博しました。PDP-1 をホストしていた研究所は、すぐに昼食時と勤務時間後を除いてプレイを禁止しました。[ 2 ][ 20 ]ギャラクシー・サイエンス・フィクション誌の編集者でフレデリック・ポールなどの訪問者は、「素敵なゲーム」を楽しんでプレイし、MITは「SF雑誌からヒントを得ている」と書き、プレイヤーはスカイラークのキャラクターになりきることができると述べている。 [ 21 ]
1962 年半ばから数年にわたり、MIT の PDP-1 プログラミング コミュニティのメンバー (ラッセルや他のヒンガム研究所のメンバーを含む) は、スタンフォード大学や DEC などの他の学校や企業に広がり始め、その過程で PDP-1 コンピュータを備えた他の大学や機関にもゲームを広めました。[ 2 ] [ 7 ] [ 19 ]その結果、Spacewar!はおそらく単一の研究機関以外で利用できる最初のビデオゲームとなりました。[ 22 ]次の 10 年間、これらの他の機関のプログラマーは、一度に多くの船やプレイヤーを許可したり、ハイパースペース機能をクローキング デバイスや宇宙機雷に置き換えたり、コックピットからの各パイロットの視界をシミュレートする 2 つのスクリーンでプレイする一人称視点バージョンなどの機能を含む独自のバリエーションをコーディングし始めました。[ 5 ] [ 6 ]これらのSpacewar!のインストールの中には、サンダースのゲームパッドを再現したものもありました。[ 23 ] DECはゲームが作られて間もなくその存在を知り、PDP-1上で動作するデモを行い、1963年にはゲームとコンピュータに関するパンフレットも発行した。[ 19 ] DECで働いていたラッセルが聞いた伝聞によると、Spacewar!はハードウェアのあらゆる側面をテストできる唯一のプログラムだったため、出荷前にDECの技術者が新しいPDP-1システムの煙テストとして使用していたという。 [ 13 ] [ 23 ]このゲームは当時広く普及していたものの、直接的な普及範囲は依然として非常に限られていた。ほとんどのメインフレームコンピュータよりは安価だったものの、PDP-1の価格は12万ドル(2025年換算で約127万7000ドル)で、販売台数はわずか53台だった。そのほとんどはモニターなしで、残りの多くは軍事施設やコンピュータの利用時間が確保できない研究室に納入されたため、オリジナルのSpacewar!は普及しなかった。狭い学術的な聴衆を超えて広がることはなかった。[ 7 ] [ 19 ] [ 23 ]一部の後期のDECモデル、例えばPDP-6にはSpacewar!がプリロードされていたが、このゲームのユーザー層は非常に限られていた。例えばPDP-6はわずか23台しか売れなかった。[ 8 ] [24 ]

Spacewar!は 1960 年代の小規模なプログラミング コミュニティで非常に人気があり、 1970 年代に初期のマイクロ コンピュータシステムに移行する前に、当時の他のミニ コンピュータやメインフレーム コンピュータで広く再現されました。開発中と同様に、このゲームはパブリック ドメインであり、コードはアクセスできる人、または Russell に連絡した人が利用できました。プログラミング コミュニティは商業産業を支えるには小さすぎたため、商業的に販売する試みは行われませんでした。[ 19 ] [ 25 ]最初は、コードのコピーを他のインストールに持ち込む人や、プログラマーが独自のコードでゲームを再現することによって広まりました。[ 23 ]初期のインストールには、ゲーム パッドも再現したBolt、Beranek、& Newmanの PDP-1、1963年にスタンフォード大学の人工知能研究所の PDP-1 に Russell がインストールしたものなどがありました。ミネソタ大学では、MIT卒業生のアルバート・クフィールドが1967年から1968年にかけてCDC 3100用にゲームを再現し、1971年に発行されたAnalog Science Fiction and Factに説明を投稿した。スタンフォードの設置は非常に人気があったため、1966年に研究者たちは、研究プログラムを実行しながらゲームをプレイできるように、PDP-6のタイムシェアリングコンピュータリソース用の特別な「スペースウォーモード」を作成した。 [ 19 ]初期のコンピュータ科学者アラン・ケイは1972年に「スペースウォー!ゲームは、コンピュータに接続されたグラフィックディスプレイがあるところならどこでも自然に開花する」と指摘し、グレーツは1981年に、ゲームが最初に広まったとき、「プログラム可能なCRTを備えたほぼすべての研究用コンピュータ」で見つけることができたと回想している。[ 2 ] [ 5 ]
この普及の大部分は、ゲームの初期開発から数年後に起こりました。MITやスタンフォード大学周辺のいくつかの場所でプレイヤーやゲームのバリエーションに関する初期の逸話はありますが、Spacewar!をプレイできるモニターや端末に接続されたコンピューターが普及し始めたのは1967年以降になってからで、これによりゲームはより幅広い層に届き、後のビデオゲームデザイナーに影響を与えるようになりました。1971年までに、モニターを備えたコンピューターは数十台ではなく、1000台以上あったと推定されています。[ 23 ]この頃、後のPDPシステムなど、さまざまなコンピューターシステム向けにゲームのバリエーションの大部分が作成され、1972年にはプログラミングコミュニティでゲームが十分に知られるようになり、ローリングストーン誌が「銀河間Spacewar!オリンピック」を後援しました。[ 5 ] [ 23 ]このイベントは1972年10月19日にスタンフォード人工知能研究所でSpacewar!のバリエーションを使用して開催されました。 5人のプレイヤーをサポートするPDP-6/PDP-10の組み合わせで行われたこの大会は、史上初のビデオゲームトーナメントであり、1972年12月7日号のローリングストーン誌に記事が掲載された。[ 19 ] [ 26 ]

1970年代初頭、Spacewar!は大型コンピュータシステムから商用環境へと移行し、最初の2つのコイン式ビデオゲームの基礎となった。1966年から1969年の間にスタンフォード大学でSpacewar!をプレイしていた大学生のヒュー・タックは、このゲームのコイン式バージョンは非常に成功するだろうと述べた。当時ミニコンピュータの価格が高かったため、そのようなゲームは実現不可能だったが、1971年にタックとビル・ピッツは、2万ドル(2025年換算で約15万9000ドル)のPDP-11を使用してコイン式コンピュータゲームのプロトタイプ「Galaxy Game」を作成したが、スタンフォード大学で展示された2つのプロトタイプしか製作しなかった。[ 27 ]ほぼ同時期に、 Spacewar!をベースにした2番目のコイン式ゲームのプロトタイプがノーラン・ブッシュネルとテッド・ダブニーによって開発された『コンピュータ・スペース』は、商業的に販売された最初のアーケードビデオゲームであり、あらゆる種類のビデオゲームの中で最初に広く入手可能になったゲームとなった。[ 28 ]タックは『コンピュータ・スペース』は『スペースウォー!』の粗悪な模倣であり、自身の『ギャラクシー・ゲーム』はより優れた翻案だと考えていたが、多くのプレイヤーは両方のアーケードゲームが『スペースウォー!』のアップグレード版であると信じていた。[ 11 ]
Byte誌は1977年にSpacewar!のアセンブリ言語版を公開した。これはAltair 8800やその他のIntel 8080ベースのマイクロコンピュータ、グラフィック表示にはオシロスコープ、軌道計算にはルックアップテーブルを使用していた[ 29 ] 。また、1979年にはTiny BASICで書かれた3次元版も公開された[ 30 ]。コンピュータ向けにこのゲームをより現代的に再現したものも作られている[ 31 ] 。オリジナルのゲームのエミュレーション版はMartin Graetzによって公開され、 JavaScript PDP-1エミュレータ上で動作し、2012年にインターネット上でプレイできるようになった[ 32 ] 。Analogue Pocket携帯ゲーム機はSpacewar!の実行をサポートした2022年にエミュレートされたPDP-1上で。 [ 33 ]現存することが知られている唯一の動作するPDP-1は、カリフォルニア州マウンテンビューのコンピュータ歴史博物館に保管されており、そこでSpacewar!をプレイするなど、マシンのデモンストレーションが行われています。 [ 34 ]
Galaxy GameやComputer Spaceに加えて、Spacewar!は長く影響を与え、数多くの他のゲームに影響を与えた。[ 35 ] [ 36 ] [ 37 ]これらには、 Orbitwar(1974年、PLATOネットワークコンピュータ)、Space Wars(1977年、アーケード)、Space War(1978年、Atari 2600)などがある。[ 36 ] [ 37 ]さらに、アーケードゲームAsteroids(1979年)では、デザイナーのEd LoggがSpacewar!の要素、具体的にはハイパースペースボタンとプレイヤーの宇宙船の形状を使用した。[ 38 ] 1990年のコンピュータゲームStar Controlのような後期の製品もSpacewar!から直接的な影響を受けている。[ 23 ] Russellは、このゲームで最も満足している点は、他のプログラマーがRussell自身のコードやデザインの使用に制限されることなく独自のゲームを作成するように刺激されたことだと述べている。[ 20 ]
2007年3月12日、ニューヨーク・タイムズは、 Spacewar!が、議会図書館に収蔵されることが提案された、歴史上最も重要なビデオゲーム10作品のリスト、いわゆるゲーム・カノンに選ばれたと報じた。[ 39 ]議会図書館はこのビデオゲーム保存の提案を受け入れ、このリストにあるゲームから始めた。[ 40 ] [ 41 ] 2018年には、ストロング博物館と国際電子ゲーム史センターによって、世界ビデオゲーム殿堂入りを果たした。[ 42 ]また2018年には、インタラクティブ・アーツ&サイエンス・アカデミーが、 「インタラクティブ・エンターテインメント業界の形成と定義に貢献したキャリア全体にわたる個人」に贈られるパイオニア賞を、 Spacewar!の存命の貢献者であるダン・エドワーズ、マーティン・グレーツ、スティーブン・ピナー、スティーブ・ラッセル、ピーター・サムソン、ロバート・サンダース、ウェイン・ウィータネンに授与した。 [ 43 ]