イベント
[GDC 2015]すべてのゲーム要素を4KbytesのROMに収めろ。最初のアクションアドベンチャー「Adventure」はこうして開発された
「懐かしい」と書いたものの,日本の読者のうち,どれだけの人が「Adventure」というゲームをプレイしているのかよく分かない。実を言うと筆者も未プレイだ。対応機種はAtariが発売したコンシューマ機Atari 2600で,ゲームのリリースは1979年のことなので,今から36年前の話である。
とはいえ,アメリカではやはり「懐かしのタイトル」であるらしく,広い会場はかなりの混雑ぶりを見せていた。「5歳のときにプレイしたが,ドラゴンがまるでホラー映画のように恐ろしくてトラウマになった」という人もいたが,ゲーム画面を見ると,それは無理だろ,という気がしないでもない。あ,ちょっと先走ってしまった。
講演者は,Adventureを開発したWarren Robinett(ワーレン・ロビネット)氏で,カリフォルニア大学バークレー校でコンピュータサイエンスを修めたのち,1977年,26歳のときにAtariに入社したという経歴を持つ人物だ。欧米ゲーム業界では,割と著名人でもある。
「Colossal Cave Adventure」から「Adventure」へ
さて,Robinett氏によると,当時のAtariでは,1人のゲーム開発者がアイデアを見つけ,プログラムを書き,グラフィックスを描き,効果音をつけ,自分の子供にテストプレイさせて満足すればリリースするのが普通だったそうだ。最近のインディーズゲームでもなかなか見られないような状況だが,それがごく当たり前だったという。
1978年,Robinett氏は入社早々1本のゲームを任され,それを仕上げたあと,次のゲームのアイデアを探している状況だった。その最初に作ったゲーム「Slot Racers」の画面写真を以下に掲載するが,青い部分がコースで,黄色いのとピンク色のブロックがレースカーである。
要するにAtari 2600は,現在の視点で見れば非常に非力なコンピュータであった。カートリッジに入ったROMの容量はわずか4096bytes,RAMは128bytes(Kbytesの書き間違いではない),そして1.2MHzで駆動する8bit CPUが搭載されていたのである。したがって,レースカーが工事用コーンを横にしたようなブロックであるのは仕方ないわけだ。
Robinett氏がある日思いついたのは,同氏がスタンフォード大学の研究所でプレイした「Colossal Cave Adventure」のコンセプトをゲームにできないかというものだった。Colossal Cave Adventureはごく初期のテキストアドベンチャーで,例えば「あなたは道のつきあたりに立っています。目の前にはレンガ造りの建物があります。あなたのまわりは森です。小さな流れがビルから出て,小川に続いています」などと表示されるのに対し,「ビルに入る」などとタイプすることで進行していく。すると「あなたは井戸小屋のある建物の中にいます。いくつかの鍵が落ちています」と出てくるので,さらに「鍵を拾う」とプレイヤーが打ち込むと,「OK」の文字が現れるというアンバイなのだが,分かっていただけましたか?
このテキストアドベンチャーに,部屋とかアイテムとかモンスターとかのグラフィックスをつけて,Atari 2600用のゲームにできないだろうか,という発想が,世界初のアクションアドベンチャーゲームを生み出すきっかけになった。「世界初」などと書くと,いや,こっちが先だ。いや。こっちだと元祖本家論争になりそうで不安なのだが,ここではそういうことにしておいてください。
しかし,上記のようにAtari 2600のROMはわずか4Kbytes。それに対して,ミニコンで動いていたColossal Cave Adventureのサイズは100K――ミニコンは命令/データ長さをメーカーが自由に設定できるので,バイトとは限らないが――も要求する。相談した当時の上司には,不可能だからやめておけと命じられたが,それにもかかわらず,やれると思ったRobinett氏はこっそりと開発を開始した。1か月後,プロトタイプを完成させたRobinett氏は上司にそれを見せ,承諾を得たという。
アクションアドベンチャーの誕生
というわけで,話はどうやってテキストアドベンチャーをAtari 2600に移し替えていくかに進んだ。
まず画面だが,これは分割をせずフルスクリーンにして,移動できる範囲を地図のように表示することにした。プレイヤーが画面の端まで行くと,画面が切り替わるというシステムだ。移動できるアイテムは,スプライト機能を使って表示し,プレイヤーの代わりになるのはちっぽけな黄色いドット。現在のン千ポリゴンのキャラクターとか,どこの世界の話,という感じだ。これもスプライト機能を使って動かす。入力はAtari 2600のジョイスティックを使って行い,部屋から部屋への移動は,「プレイヤーが部屋の端に来ると,部屋が切り替わって隣室に行ける」という実装にした。
インベントリは存在せず,プレイヤーが運べるのは1つのアイテムだけ。つまり,鍵を運んでいる途中のモンスターに遭遇すると,鍵をその場に置いて武器のあるところへ戻り,それを運んでモンスターのいる場所に戻り,戦うというわけだ。ただし,モンスターが追いかけてくることはある。
アイテムを拾い上げるには,そのアイテムに近づくだけでよく,捨てるにはジョイスティックのボタンを押す。迷路や,鍵のかかったドア,襲ってくるドラゴンなども用意した……という感じで,次々とシステムを作り上げていった。目的は,奪われた聖杯を見つけ出し,無事に持ち帰ることだ。
そうそう,もう1つあった。上記のように当時のプログラマー(つまりゲーム制作者)は,名前が表に出ることはなかったので,なんとか自分の名前をゲームに残したいと思ったRobinett氏は,なかなか入ることのできないシークレットルームを1つ作り,そこに名前を書き込んだのだ。これは,カートリッジが生産されてゲームが発売され,数万本の売り上げを挙げるまで秘密にしておく予定だったそうだ。これはおそらく,世界初のイースターエッグだろうという話だった。
かくして30の部屋,14種類のアイテム類,そして4種類のモンスターを持つゲームの概要はできたものの,問題はこれをいかにして4KbytesのROMに収めるかだが,ここでRobinett氏の高学歴が威力を発揮する。上にも書いたように,Robinett氏は名門バークレーの出身であり,大学にはUNIXを作ったKen Thompson(ケン・トンプソン)氏など,キラ星のような人材が集まっていた。そこでコンピュータ教育を受けており,Atariにもチャンキング(※プログラムをクシャっという感じで圧縮すること)の得意なプログラマーが多くいたただけに,さまざまなテクニック,とくにデータ構造を工夫してプログラムサイズを縮小していった。
今なら「移植性が悪い」という理由で使われにくい,ハードウェアの独自機能を利用した手法なども用い,あちらで1bytes,こちらで3bytesという感じでデータを削っていった。結果,例えば「現在のゲームの状況」はわずか49bytesで表現されるに至ったそうだ。
ただ,もっぱらモンスターの行動を決めるデータが少ないことが理由で,モンスターが思ってもいなかった行動をとることがあり,その意味ではシミュレーションゲームに近いかもしれないとRobinett氏は語っていた。
1979年(1980年とする資料もあるが,Robinett氏によれば1979年とのこと)に発売されたAdventureは,1本25ドルで100万本以上売れ,Atari史上最も売れた7本のタイトルの1本になった。もちろん,Robinett氏の給与も上がったが,ロイヤリティはもらっていないという。現在の視点から見たAdventureのグラフィックスはかなりわびしいが,その影響は大きく,たくさんのフォロワーを生んでアクションアドベンチャーは大きなジャンルに成長した。ただ,続編の制作は行われなかったという。
現在,Robinett氏のサイトにはAdventureだけでなくAtari 2600の詳しい情報が掲載されているので興味のある人はチェックしてほしい。ただ,このページではAdventureの発売が1978年とあり,筆者は微妙に悩んでいるところだ。ともあれ,パイオニアによる熱のこもった講演に,最後は来場の大きな拍手が沸き起こった。
GDC公式Webサイト
4GamerのGDC 2015関連記事一覧
- この記事のURL: