54個目の隠しアイテムを手に入れる

赤緑版では、正規マップに落ちている隠しアイテムがコインを除いて53個あります[1]*1。これに加えて、バグマップに落ちている隠しアイテムが1個あります。

方法(ピーピーマックスを持っていない場合)

条件

  • タマムシシティかヤマブキジムに1度でも入ったことがある
  • 手持ち道具13~19種類 ※以下で用意する道具を含めて13~19種類にする

用意するもの

  • ニックネームの3文字目の文字コードが(手持ち道具の所持数+128)であるポケモン ※これをPとする
    • 具体的な文字は表1を参照
  • ボール系道具111個 ※14番目セレクトバグなどで用意する*2
  • あなぬけのヒモ1個

ボール系道具とあなぬけのヒモは、手持ち道具の3番目以降に置いておく。また、Pは手持ち2番目~6番目に置いておく。

表1 手持ち道具の所持数ごとの、Pの3文字目に入れる文字
手持ち道具の所持数 3文字目に入れる文字
13
14
15
16
17
18
19

手順

  1. ななしのどうくつ 1階のふしぎなアメが落ちている岩のところに行く。
  2. 道具の13番目でセレクトBB。
  3. 戦闘に入り、ポケモンを選ぶ。
  4. PでAを押す。Pがバグるのでそのまま逃げる。
  5. ボール系道具111個と手持ち道具30番目を入れ替える。
  6. ふしぎなアメが落ちている岩を調べる。ふしぎなアメのかわりにピーピーマックスを手に入れる。
  7. あなぬけのヒモで脱出する。
  8. 手順2~4をもう一度行い、手持ち道具欄を元に戻す。

備考

  • ななしのどうくつ 1階のふしぎなアメを入手済みの場合でもピーピーマックスは手に入れられる。
  • 所持金、主人公のIDなどの値によっては成功しない場合がある。
  • 13番目セレクトバグでバグらせるポケモンのニックネームに指定があるのは、ピーピーマックスを手持ち道具欄の末尾に入れるため。
  • 手順5~7の間は画面の色がおかしくなる。また、この間に戦闘に入った場合、戦闘終了後にフリーズする。
  • 手持ち道具の中に入り込んだバグ道具(00h)は、14番目セレクトバグや手持ち道具31番目と入れ替えるなどで処分する。
  • Pはバグっているので、逃がすことを推奨する。
  • この隠しアイテムはフラグを共有している隠しアイテムではないため、入手は1度きり。

方法(ピーピーマックスを持っている場合)

ピーピーマックスを持っていない場合の方法と比べて、異なる点は以下のとおりです。これ以外はピーピーマックスを持っていない場合の方法と同じです。

条件

  • 手持ち道具13~19種類→手持ち道具13種類以上

用意するもの

  • Pのニックネーム3文字目は、カタカナの濁音以外であれば何でもよい
  • あなぬけのヒモ1個→P以外でテレポートを覚えているポケモン、またはあなぬけのヒモ2個以上

手順

手順7の脱出は、テレポートでの脱出も可

解説

バグマップ6Fhの(x = 14, y = 11)には、隠しアイテムとしてピーピーマックスが置いてあります[2]。このアイテムを取得しようとしてバグマップ6Fhに入ろうとしてもフリーズする[3]ので、別の方法でこのマップに入らないで取得する必要があります。

隠しアイテムを取得するとき、調べるマスの現在地のマップ番号と座標を参照し、それが隠しアイテムの設置場所と一致している場合に取得できます。現在地のマップ番号は、手持ち道具30番目の個数に対応しているため、あらかじめ個数を調整した道具と入れ替えることで現在地のマップ番号を書き換えています。座標は、ななしのどうくつ 1階のふしぎなアメが落ちている岩と同じです。

手持ち道具30番目の個数書き換えによるワープ

手持ち道具30番目の個数を戦闘中に変えるとワープが起こり、非戦闘中に変えてもワープは起こらないというバグ技があります[4]。非戦闘中に書き換えるとフリーズする[4]とされていますが、これは読み込むバンクが異なるマップ番号で書き換えた場合に発生します。ななしのどうくつ 1階とバグマップ6Fhの読み込むバンクは同一であるため、非戦闘中に手持ち道具30番目の個数書き換えを行ってもフリーズしません。

初代ポケモンのマップデータは、いくつかのバンクに分かれてROMに格納されています。マップごとにどのバンクから読み込むかが指定されており、異なるバンクから読み込むマップ番号で書き換えをた場合は、書き換えた瞬間に読み込むバンクが切り替わります。

しかし、書き換えて切り替わるのはバンクのみで、マップ中にいる限り常に実行されるルーチン[5](以下、このルーチンを「マップスクリプト」という。)のアドレスは変更されません。バンクが異なればルーチンの配置も異なるため、マップスクリプトでないものを無理やりマップスクリプトとして実行することになります。このときに未定義命令を読み込むとフリーズします。

同じバンクから読み込むマップ番号で書き換えた場合はバンクの切り替えが発生しないため、マップスクリプトによってフリーズすることはありません。ただし、書き換え後に戦闘した場合はマップデータの再読み込みが行われるため、バグマップの番号に書き換えていた場合はマップの再読み込みによってフリーズします。

参考文献

[1] ガナヒビ、ポケモンの隠しアイテムを全部ゲットしてみた(※バグ要素あり) - YouTubehttps://www.youtube.com/watch?v=lgVuKokKo7I、2022年4月12日閲覧。

[2] Glitch Pokémon League maps 0x6D-0x70, 0x72-0x75 (Red/Blue) - Glitch City Wikihttps://glitchcity.wiki/Glitch_Pok%C3%A9mon_League_maps_0x6D-0x70,_0x72-0x75_(Red/Blue)、2022年4月8日閲覧。

[3] アルク、つれづれなマップ図鑑 | つれづれな日、http://arukuukura.xxxxxxxx.jp/mapdex.html、2023年2月23日閲覧。

[4] ワープ - pokemonbug @ ウィキ - atwiki(アットウィキ)、https://w.atwiki.jp/pokemonbug/pages/12.html、2023年2月23日閲覧。

[5] れんだ、Twitterhttps://twitter.com/waki_renda/status/1276527139257368577、2023年2月23日閲覧。

更新履歴

2022年4月15日 公開

2023年2月25日

  • バグらせるポケモンのニックネームに入れる文字を表で具体的に示す
  • ピーピーマックスを持っている場合の取得方法を追加
  • 解説を強化

*1:このうち1つはマップ外に落ちているので、正規プレイで取得できるのは最大52個

*2:14番目セレクトバグでボールを127個持った状態にして、16個捨てると用意できる。