NES版の「ELITE(エリート)」のソースコードとROMイメージが無料で公開されていたので、遊んでみました。
それより、まずNES版があったのか?!ってことに驚きですが。
上記のサイトによると、オリジナルの「ELITE」は1984年に発売されたBBCマイクロ用のPCゲームです。ジャンルはスターレイダース系というか、スターラスター系とかスタークルーザー系。個人的に大好物な宇宙3Dものです。
当時、「ELITE」はイギリスで大ヒットして、数多くの機種に移植されました(MSX版もあります)。海外だと有名みたいですが、日本だとあまり知られていないかもしれません。
写真左がNTSC版、右がPAL版。
自分の使っているエミュレータだとファイル名に「(E)」を追加すると、自動的にリージョンがPALになります。
おそらくですが、NES版が発売されたのはPAL版だけです(1991年発売)。画面に「Imagineer~Japan」 の文字があるので、イマジニアが権利を所有していたようです。
ここで言うNTSC版というのは、開発者の一人、イアン・ベルさんが個人サイトで公開している改造版のことです。タイトル画面から「Imagineer」と「Nintendo」の文字が消えています。付属のドキュメントには1994年と書かれていますが、発売から3年で配布したとなると、さすがに早すぎる気が。
ややこしい話ですが、NTSC版はNTSCの実機では動きません。エミュレータ専用です。処理が間に合っていないので、オーバークロック機能でどうにか動かすことができました。果たしてこの設定で合っているのか?
普通にPAL版を遊んだほうがよさそうです。
本当にNES/ファミコンか?というくらいワイヤーフレームで動きます。
これを普通に作るとパターンテーブルが全く足りません。パレットが高速に切り替わってます。パターンを節約するため、2枚分を1枚に割り当てているようです。
デバッガで見ると、線の存在する部分だけパターンを割り振って、BGを描画しているようです。これに3Dの計算が加わると、1フレーム以内に処理が間に合うとは思えないのですが、どうなっているのでしょうか。PAL(50フレーム/秒)なので、NTSC(60フレーム/秒)より時間的な余裕があるのかもしれませんが。とにかく、イアン・ベルさんは天才ですね。
あと、チラツキ防止として、BGを交互に切り替えていて、描画は裏側で行っていると思います。
基本的な操作方法は次の通り。操作が独特です。
・Aボタン : レーザー発射(宇宙空間のみ)。
・上下左右 : 向きの変更(宇宙空間のみ)。
・Bボタン + 上下 : スピードアップ/スピードダウン(宇宙空間のみ)。
・Bボタン + 左右 : アイコンの選択。
・SELECT : アイコンの決定。
・STARTボタン : 一時停止。
同時押しを多用するので、慣れるのに時間がかかるかもしれません。
一時停止中は選択できるアイコンが変化します。
ステータス画面です。
ゲームは惑星Laveの宇宙ステーションからスタートします。プレイヤーには「Rating(評価)」というパラメータがあります。スタート時点では「Harmless(無害)」。
評価を上げていくと、Mostly Harmless(だいたい無害)、Poor (貧しいorチョイ悪)、Average(平均)、Above Average(平均以上)、Competent(有能)、Dangerous(危険)などに変わっていきます(髪型も変わります)。最終的にElite(エリート)になるのがゲームの目的。
他にも、「Legal Status(法的な地位)」というパラメータもあります。スタート時点では、「Clean(潔白)」。「Fugitive(逃亡者)」だとサングラスをかけてしまいます。宇宙船と衝突しただけでこうなってしまいました。
市場では品物の売り買いができます。違法な物はステータスに影響します。
・Food(食料)
・Textiles(繊維)
・Radioactives(放射性物質)
・Robot slaves(ロボット奴隷 *違法*)
・Berverages(飲料)
・Luxuries(贅沢品)
・Rare species(希少種 *違法*)
・Computers(コンピュータ)
・Machinery(機械)
・Alloys(合金)
・Firearms(銃器 *違法*)
・Furs(毛皮)
・Minerals(ミネラル)
・Gold(金)
・Platinum(プラチナ)
・Gem stones(宝石)
・Alien Items(エイリアンのアイテム)
宇宙船のアップグレードができます。滞在する星によって、品ぞろえが変わります。
ミサイルは使い捨てです。
E.C.Mを買うと、戦闘時に敵ミサイルを無効化できます。
Extra Beam Lasers(拡張ビーム)を装備すると、連続的なレーザー発射が可能。撃ちすぎるとオーバーヒートしてしまう。ゲームデザインがよく出来てる。
マップが広大です。
8つの銀河系があって、銀河ごとに250以上の星があって、自由に移動できます。オープンワールドですね。
それぞれの星に名前が付いていて、「Economy(経済)」や「Government(政府)」など細かいパラメータがあります。数列を使って座標や名前を自動生成していて、容量を節約しています。
「Stored Positions(保存したポジション)」というデータのロード/セーブ画面。
カーソルを最初の位置から右を2回ぶん押すとセーブです。リネームも可能。
最初の位置から左を3回ぶん押すとロードになります。
宇宙に出ました。
敵と戦ったり、ジャンクを回収したりできます。
ステーションとドッキングするにはドッキングコンピュータを使います。
ステーションへの攻撃はNGです。銀河警察に殺されます。
パネルの表示内容です。高低差が一発でわかります。
スキャナーでは船が敵か、敵じゃないかを判断できません。
ハイパースペースで近くの星まで飛んだら、燃料が半分になってしまいました。ステーションを見つけないと帰れなくなって詰みます。
そこで敵に遭遇。判別できないくらいの距離でバンバン撃たれます。
なにがなにやら、よくわからないうちに死んでしまいました。コツをつかまないと難しすぎて遊べません。
最初はお金を稼いだほうが良さそうです。