今年で発売10周年を迎える『ポケットモンスター ハートゴールド・ソウルシルバー』(以下、ポケモンHGSS)のRTA(リアルタイムアタック)は、記録を狙う上でもっとも人間離れしたテクニックが要求される『ポケモン』RTAのひとつと言われている。
『ポケモンHGSS』のRTAでは日本語版と英語版でルールが異なる。世界標準のグローバルルールでは、物語の舞台となるジョウト地方のバッジをすべて集め、チャンピオンを倒して通常のエンディングを見ただけでは終わらない。さらにカントー地方のバッジもすべて集めて、最終マップ「シロガネ山」で本作の裏ボスと言える前作の主人公レッドを倒すことが、完走の条件となっている。
最後に戦うことになるレッドが繰り出してくるポケモンは、すべてレベル80以上と相当強く設定されている。それに対応するため、走者であるプレイヤーは「通常プレイでは天文学的な確率になるであろう運命」を引き寄せなければならない。『ポケモンHGSS』をすばやくクリアするには、ゲーム内で出会うポケモンやその強さといったランダム性すらも、プレイヤーの支配下に置くのだ。
今回の記事では、この『ポケモンHGSS』RTAの第一人者のひとりであるばすたぁ氏に聞いたことを踏まえて、ゲーム内の運命すらも操作する方法を紹介していこう。
ライター/もか
協力/ばすたぁ
詳細はのちほど説明するとして、まず大まかな手順を解説していこう。本作ではゲームスタート時に0から65535までの数字がランダムに割り当てられ、「トレーナーID」が決定する。特定の数値を引く確率は1/65536となるが、ある手順で強引に望みのIDを引き当てるところから本作のRTAはスタートする。
さらに、最初にもらえるポケモンでヒノアラシを選択し、ふたつ目のバッジが手に入るヒワダタウンに着くまでは、一歩も狂うことなく完全に同一の移動操作をしなければならない。そして、ランダムでマップ上を徘徊している伝説のポケモンである「ライコウ」を最速のタイミングで、かつこの先ゲームをクリアする上で必要最低限のパラメータを確定させた上で入手する。それ以降は強大なステータスを誇るライコウだけを使ってゲームを進めていくというのが、大まかな流れだ。
このうち、最初にトレーナーIDを任意の数字にする、最速でライコウを捕まえるといったことは、すべて“乱数調整”によって任意の乱数を引き当てているからこそ為せるテクニックとなっている。
https://www.slideshare.net/Blastoise_X/ss-71991306
『ポケモンHGSS』ではゲーム内で起こる出来事がまるでランダムに決定されているかのように見せかけるため、さまざまな数値や項目をふたつの疑似乱数アルゴリズムを用いて決定している。出会うポケモンの一部のパラメータや性格は、これらのアルゴリズムによって算出された数値をもとに決定されているというわけだ。
有志によって研究された難解な計算式のスライドを見ると、ふたつもある乱数を人力で制御することは不可能に思えるかもしれない。しかし、特定の乱数の種となるseed値は1/30秒(約0.03秒)ごとに「2」ずつしか進まないことも分かっている。つまりそれは言い換えれば、特定の状況から1/30秒ごとに変化するある乱数は、つねに同じになるということでもある。
本作ではこの仕様が、トレーナーIDを固定するために使われている。ニンテンドーDS本体の日付設定を未来のものに調整したあと、この1/30秒のタイミングをぴたりと合わせてゲームを始めることで、任意の乱数を強引に引っ張り出す。そして主人公に割り当てられるトレーナーIDを固定することが、RTAにおける最初の一歩となる。
トレーナーIDを固定するのは、『ポケモンHGSS』におけるくじ引きでお目当ての賞品を引き当てるためだ。同作ではとある場所で1日に1回、トレーナーIDに対応したくじを引くことができ、このくじの一等賞でポケモンを必ず捕まえることのできる「マスターボール」が手に入る。RTA中の主力として使っていくライコウは、出会った瞬間に逃走を図るポケモンであり、最初に出会ったタイミングで捕まえることは非常に困難だ。そのため、必ずポケモンを捕まえることのできるマスターボールを使用することがほぼ必須となっている。
トレーナーIDの固定はまだわかりやすい部分があるかもしれない。だが『ポケモンHGSS』のRTAにおいては、このトレーナーIDを固定するというのは、乱数調整のテクニックとしてほんの序の口である。次に固定するのは、出会うポケモンの「性格」と「パラメータ」だ。
『ポケモンHGSS』に限らず最近のポケットモンスターシリーズすべてに言えることだが、ポケモンのパラメータはポケモンの性格というものが影響しており、25種類からなる性格によって伸びやすいパラメータが決まってくる。
さらにすべてのポケモンには隠しパラメータとして、HPから素早さまでの6パラメータに0~31までの数字が割り当てられており、0が一番パラメータが低くなり、31は一番パラメータが高くなる。RTAにおいては当然強いポケモンで進めたほうがいいため、トレーナーIDの固定と同時に戦闘で使っていくポケモンの性格と隠しパラメータも吟味していく必要がある。
ポケモンの性格と隠しパラメータを固定する際には、リセットを用いてゲームを起動する時間をフレーム単位で調整して行うことが多い。だが、日本人最速プレイヤーであるばすたぁ氏は、リセットによるタイムロスと日付調整によるペナルティを嫌い別の方法を選んだ。ゲーム起動後からの歩き方を調整しNPCの振り向きを把握することて、乱数を決まった数だけ消費させ、任意の値を引くことに成功している。
『ポケモンHGSS』のRTAの乱数調整において特に難しいとされているのが、伝説のポケモンであるライコウを捕まえるための調整だ。非常に強力なステータスと技構成で進めることができるため、最速を狙うならライコウを捕まえて進めていくのが最適解だが、ライコウは通常ならジョウト地方全域の草むらを自由気ままに徘徊しているポケモンであり、そもそも狙って出現させること自体に乱数調整が必須となっている。
狙って出現させることだけでも難しいのだが、最速を目指すならさらに性格とパラメータはもちろん、「めざめるパワー」というタイプも威力もランダムで決定する技でも特定のものを引く必要がある。このRTAでは高威力の地面タイプ技(カテゴリによっては氷タイプ技)が引けるよう吟味する必要がある。
ライコウと出会うのは最速でもゲーム開始から数十分経ってからとなるため、数十分のプレイでどれだけ乱数を消費したのかを直前のランダムエンカウントによって把握する。そこで乱数を把握したあとは主人公の動き方で乱数を消費し、強いライコウとエンカウントするための乱数をぴったり合わせるという、人間技とは思えないテクニックが必要となっている。
ただ決まったとおりの手順で動けばいいのではと思うかもしれないが、『ポケモンHGSS』の乱数はささいなことでも消費されてしまう。例を挙げるとNPCが振り向いただけでも乱数が消費される。このため、プレイ中は移動の仕方や移動のタイミングなどを一定のものとし、ライコウを捕まえるまではポケモンとのエンカウントやNPCの動き方すら固定して、できるだけ最適なものとなるように調整している。
乱数調整に多くの文章量を割いてきたが、戦うことになる全てのポケモントレーナーのポケモンの技構成を把握して最適な技を繰り出していく必要などもあり、乱数調整はあくまでクリア時間を早くするためのエッセンスに過ぎない。これらの人間離れしたテクニックに加え、無駄なくクリアに向かって進むためのゲームへの理解や判断力が、このRTAにおいて一番重要な要素となっている。
また、タイムアタックの記録集積サイトである「speedrun.com」ではライコウを捕まえた状態で進める記録が複数投稿されているが、ライコウを捕まえただけで誰でも同じくらい早くクリアできるというものでは決してなく、タイムの差として現れている。
道中のメニュー操作、そして移動速度がアップする自転車に乗った状態でもミスなくスムーズに主人公を動かさなければならない。さらに戦闘を高速で行うためのタッチ操作など、RTAにおいてのいわゆる「基礎動作」がいちばん重要だというのは、ばすたぁ氏本人の弁だ。
『ポケモンHGSS』ではジョウト地方だけでなく、『ポケットモンスター赤』、『緑』、『青』、『ピカチュウ』などの舞台でもあるカントー地方も旅して合計16個のバッジを集めることがクリアするために必須となっており、考えるだけでもかなりのボリュームのように思える。しかし、上位プレイヤーたちはバグなしなら3時間30分程度、バグ有りならなんと2時間程度のタイムで駆け抜けている。
多くの乱数調整を挟むために一発勝負の場には向かないが、ばすたぁ氏はイベントの場においてもバグなしのカテゴリにおいて3:34:27という好タイムを叩き出している。
ちなみにばすたぁ氏はRTAの解説動画もアップロードしており、『ポケットモンスター HGSS レッド撃破RTA ライコウチャート解説動画【Part1】』や『ポケットモンスター HGSS バグありレッド撃破RTA ライコウチャート解説動画【Part1】』を視聴するだけでも『ポケモンHGSS』のRTAの概要が掴めるであろう。よろしければそちらもご覧いただきたい。