Site cover image

🐾flag3

ポケットモンスター クリスタル Any% チャート

この記事ははてなブログから移植したものです。アップデートをかけた後削除予定となります。ご了承ください。

はじめに

本記事はポケットモンスター クリスタルの Any% のチャートとなります.
バグありでできるだけ早くレッドを撃破することを目指すカテゴリーとなっています.

レギュレーション

ルールは以下で採用されているものを用います.

要約すると以下のようになります.

  • 開始前に「B」+「Select」+「↑」でデータクリア必須.
  • 計測開始:「さいしょから はじめる」を押したとき.
  • 計測終了:レッド撃破後に画面が白くなったとき.
  • レッド撃破の定義: シロガネやまにいるレッドに話しかけてイベントをこなすこと(このためレッドのイベントを任意コード実行で呼び出すのは禁止となっています.).ただしレッドのイベントを別のイベントに書き換えるのは禁止.

動画

今回は実際に走った動画を用意していますので是非こちらもご覧ください.音が大きくて若干音割れしているのはすみません.後ラップ切る場所を間違えているのもすみません.

チャート

  • メッセージ はやい
  • エフェクト とばす

主人公の性別:おとこ
時間:10 時 0 分
主人公の名前:ア
曜日:にちようび

ポケモンはヒノアラシを選択する.きのみは外す(運が良ければ外さなくても早くなることがあるが基本外した方が早いはずです.).

ライバル戦はたいあたりを連打する.負けた方が早い.ライバルの名前をアにする.

モンスターボールを入手したら 29 ばんどうろでポケモン 1 匹捕獲しヨシノシティのポケモンセンターに入る.

2階に行きパソコンを開いてボックス 2, 4, 5, 6 の名前を以下のようにする.

🎮
2. ョよえてエろ
4. がわぜォひすづ
5. にきづョぜマづぜ
6. じがろづゅゅの

名前を変更したらボックス 2 に切り換えてセーブをする.
ボックス 2 にポケモンを 1 匹預け(動画ではヒノアラシを預けているがポッポやオタチ,コラッタを預けた方が鳴き声の関係で早いかもしれない.)ボックスせいりを選択しセーブする際に「でんげんを きらないで ください」の表示が出た少し後に強制リセットをする.

再開後スタート地点から左に 1 歩,下に 1 歩のところでポケモンずかんを開き右 2 回上 2 回ボタンを押してからずかんを閉じる(道中でポッポ以外の野生のポケモンに遭遇していない場合は右 2 回上 2 回のボタン操作で目的の場所まで移動ができません.そのためこの場合は「ふるいずかんモード」に切り替えて右 3 回上 1 回ボタンを押してからずかんを閉じる必要があります.また道中でオタチに遭遇しているがポッポ,コラッタ,オタチ以外の野生のポケモンに遭遇していない場合はスクロールの関係で右 2 回のボタン操作となり,道中でコラッタに遭遇しているがポッポ,コラッタ以外の野生のポケモンに遭遇していない場合は右 2 回,下 2 回のボタン操作となります.).

ずかんを閉じた後右に 1 歩,上に 1 歩進んでパソコンのボックスを開く(この通りに進んでください.特に順番を逆にした上 1 歩,右に 1 歩ではうまくいきません.).名前のバグったポケモンがいれば成功.

名前のバグったポケモンがいることを確認した後はパソコンを閉じて階段を降りるとシロガネやまに移動するのでそのままレッドに話しかける.

補足

上記の操作では 0x1500 制御コードによる任意コード実行を行っています.詳細については以下でも述べています.図鑑を開いて右 2 回上 2 回のボタン操作でオニスズメにカーソルを合わせて,終端記号のないポケモンを閲覧することがトリガーとなっています.
https://flag3833753.hatenablog.com/entry/2023/11/07/180000

任意コード実行では以下の 3 つのことをしています.

  1. 階段の移動先の変更
  2. レッドの存在フラグの変更
  3. 手持ちのポケモンの数を 0 匹に変更

それぞれの詳細

  1. ポケモンセンターの 2 階は共通のマップが使われています.このためどの場所から登ってきたかを管理するアドレスがあるのですがそこを書き換えることによってシロガネやまのレッドがいる部屋にワープするようにしています.
  2. ゲーム開始時点ではレッドがシロガネやまにいません(通常プレイではワタルを撃破してでんどういりをすることでシロガネやまに出現します.).このためレッドが存在するためにフラグを書き換える必要があります.
  3. 手持ちのポケモンの数を 0 匹にした状態で戦闘をすると勝利したことになります.

参考文献

https://glitchcity.wiki/wiki/Pokémon_Crystal_any%25_speedrun_route
英語版クリスタル Any% Speedrun Route の記事となります.任意コード実行の部分でかなり参考にしています.