『スマブラX』に収録された『ゼルダの伝説 時のオカリナ』体験版が”無理やりクリア”される。限られた時間でエンディングに到達

 
Image Credit: Savestate (YouTube)

『ゼルダの伝説 時のオカリナ』の新たなスピードラン(RTA)記録が誕生した。とはいっても、同作本編による記録ではない。2008年にWiiで発売された『大乱闘スマッシュブラザーズX』に収録された、5分という制限時間つきの『ゼルダの伝説 時のオカリナ』体験版を無理やりクリアしてしまったのだ。


今回走破されたのは、『大乱闘スマッシュブラザーズX』において「名作トライアル」として収録された『ゼルダの伝説 時のオカリナ』の時間制限版だ。この名作トライアルは、任天堂がWiiなどで展開していたバーチャルコンソールの“体験版”的機能だ。ファミリーコンピュータ版『ドンキーコング』や、『スターフォックス64』などの過去作がそれぞれ時間制限つきの“体験版”として収録されていた。

『ゼルダの伝説 時のオカリナ』についてもこの名作トライアルに収録されており、設定された制限時間は5分だ。この体験版では事前に用意された2種類のセーブデータが利用できる。主人公であるリンクが「子供」状態のものと、ややゲームが進行した「大人」状態のものだ。いずれのデータでも、通常のプレイであれば、5分の制限時間内にゲームをクリアすることはまず不可能である。しかし、この不可能を可能にしたプレイヤーがあらわれた。スピードラン走者のSavestate氏だ。

Image Credit: Savestate (YouTube)


Savestate氏は記事執筆現在、海外RTA記録集計サイトSpeedrun.comにおいて『ゼルダの伝説 時のオカリナ』Any%(進行度問わず)カテゴリーで世界4位の記録を持つ人物だ。同氏はSpeedrun.comの同作におけるモデレーターも務めており、同作スピードランにおけるトップランナーのひとりだといえる。

今回のスピードランに利用されたのは、『大乱闘スマッシュブラザーズX』日本語版だった。英語版ではなく日本語版を採用した理由としては、同作に収録された『ゼルダの伝説 時のオカリナ』英語版と日本語版におけるアイテム関係の差異があるようだ。Savestate氏は動画の説明欄で「日本語版でなら、クリアに必要なグリッチがぎりぎり実行できる」と述べている。今回のスピードランにはいくつかのグリッチ(バグ)が用いられており、なかでも決め手となるのがSRM(Stale Reference Manipulation)と呼ばれるものだ。

SRMについて簡単に説明したい。まず、プレイ中のビデオゲームの状況は、動いているゲーム機のメモリ上に保存される。本作においても、主人公リンクの持ち物やHPなどはもちろん、ステージ上での位置情報や持ち上げた爆弾の向いている角度までもが、メモリ上では数値として存在している。しかし、ゲームが想定外の挙動をすると「リンクが目に見えない爆弾を持ち上げている」という状況が生まれうる。この異常状態においては、本来書き換わらない数値が書き換わってしまう場合がある。つまりSRMは、ゲームの動作の虚を突いて、本来プレイヤーが操作できないメモリ上の数値を操作してしまうという手法なのだ。

Image Credit: Savestate (YouTube)


SRMは、任意のゲームコードを実行してしまうACE(Arbitrary Code Execution)と呼ばれる手法とあわせて『ゼルダの伝説 時のオカリナ』スピードランや同作の研究に大いに活用されている(関連記事)。今回のスピードランにおいては、SRMの連続によってエンディングのカットシーンを呼び出す方法が用いられた。Savestate氏は、今回の挑戦にかける綿密な計画と実際のメモリ値変動の様子を映した動画も公開している。人間によるスティック入力でメモリ上の数値を操作することが、いかに至難の業か感じられる内容だ。


今回の挑戦でSavestate氏が用いたのは、体験版専用に用意された大人リンクのデータだ。5分の制限時間内にクリアするため、城下町からフィールドに出るなりHess(Hyper Extended Superslide)と呼ばれる高速移動術で、後ろに爆走する同氏。迷いの森に到着するや否や自爆を利用して橋を飛び降りる。その後も、基本的に後ろ歩きの高速移動や、爆弾の爆風を浴びながらの回転斬り、突如として地面に魚をぶちまける姿などが見られるものの、これらはおふざけではない。エンディングカットシーン召喚の“儀式”なのである。

あらゆるテクニックを駆使し、一般人には理解の外にある儀式を高速でおこなっていくSavestate氏。最後は迷いの森で「見えないアイテム」を拾い上げると、画面が突如として赤系統の淡い一色に染まる。そして脈絡なく呼び出されたのは、エンドクレジットのカットシーンだ。ここまで動画内の計測では4分52秒52で、Savestate氏の計測タイミングでは4分38秒でのクリアとなる。いずれにせよ、5分制限という体験版の意義を覆しかねない、まるで魔術のような『ゼルダの伝説 時のオカリナ』体験版クリアだった。

Image Credit: Savestate (YouTube)


Savestate氏は今回の体験版クリアを終えたのち、同作においてさらに「最終ボスであるガノンドロフを倒す」という課題に挑んでいる。上述のエンディングカットシーンを呼び出した手法を応用して、最終ボス戦前のカットシーンを呼び出すことで道中をすべてスキップしてしまったのだ。こちらは5分の時間制限までわずか10秒しか余裕のないチャートとなり、同氏によれば試行回数は200回を超えたという。しかし最終的に同氏は、素早い儀式と手慣れた戦闘テクニックでガノンドロフを時間内に打倒。4分56秒でのクリアとなった。


「エンドクレジットを呼び出す」という凄まじい手法での“クリア”で5分制限を突破されるとは、開発側も思いもよらなかっただろう。実際に流すエンドクレジットや最終ボス戦が、体験版のなかに組み込まれていることも興味深い。この点については、同作が「バーチャルコンソールの体験版」という立ち位置であるため、実際にはゲーム本編がすべて収録されていたと考えられる。

いずれにせよ、5分という制限時間はSavestate氏の前にある種敗北することとなった。その背景には、発売から約23年という長きを経てなお愛される『ゼルダの伝説 時のオカリナ』という作品の魅力と、今もなお続くRTA走者たちの研究の蓄積があった。今後も彼らは、一般プレイヤーの考えもしないゲームの遊び方を発見していくのだろう。