The English version is here:
📄RAM Writer in Pokémon Gold/Silver (JP)
バイナリエディタは、元々初代ポケモンにおける任意コード実行の究極の到達点とも言えるツールで、今回紹介するバイナリエディタは第二世代用に移植されたものです。このエディタを使用すると、ゲーム内のあらゆるメモリの読み書きが可能になります。さらに、プログラムを記述し、実行させることもできます。
本記事は以下の動画の解説となります。
バイナリエディタ導入手順
環境
ポケットモンスター 金・銀の日本語版のみに対応しています。ポケットモンスター クリスタルや日本語版以外のバージョンには対応していません。またポケモンスタジアム金銀のGBビルや一部のエミュレータでは動作しません。またさいしょからはじめることを前提にしています。ポケットモンスター クリスタルにおけるバイナリエディタ導入については以下の記事をご覧ください。
手順1: しぜんこうえんまで進める
- 主人公の名前は「えてびま」にします。
- トレーナーIDを256で割った商と余りのどちらかが255であった場合はさいしょからはじめなおしてください。
- 曜日を火曜日、木曜日、土曜日のいずれかにします。
- むしとりたいかいに参加するためにしぜんこうえんで火曜日、木曜日、土曜日となるようにしてください。
- やせいのポケモンを3匹捕まえて、タマゴを含めてボックスにあずけます。
- 以降、3匹のやせいポケモンをやせい1、やせい2、やせい3と表すことにします。
- ガンテツからルアーボールをもらいます。
- コガネシティのポケモンセンターに入ります。
- テレポートの移動先をコガネシティにする必要があります。
- じてんしゃを入手して、べんりボタン(セレクトボタン)にとうろくします。
- ケーシィを入手します。
- やせいで入手するかコガネゲームコーナーで入手してください。コガネゲームコーナーで入手する場合はちかつうろでコインケースを入手する必要があります。
- ひきゃく(オニスズメ)を入手します。
手順2: レベル0のバグったポケモンを入手する
- 手持ちのポケモンを2匹以上にしケーシィを先頭にしてむしとりたいかいに参加します。
- むしとりたいかいが開始したら一旦引き返し、おわりにしますか?と聞かれるのでいいえを選択して、むしとりたいかいに戻ります。
- コガネシティにテレポートをします。
- 手持ちが戻っているのでケーシィ以外の全てのポケモンをあずけます。しぜんこうえんに戻ってむしとりたいかいを終了させます。
- 手持ちのポケモンの2番目にレベル0のバグったポケモンを入手することができます。
- レベル0のバグったポケモンをそだてやにあずけてすぐに引き取ります。
手順3: 2つ目のじてんしゃを入手する
- コガネひゃっかてんでわざマシン48を入手してほのおのパンチをケーシィに覚えさせます。
- ボックスからやせい1、やせい2、ひきゃく(オニスズメ)、タマゴを引き出して手持ちのポケモンを以下の順番にします。🐭バグったポケモン
ケーシィ
やせい1
やせい2
ひきゃく(オニスズメ)
タマゴ
- パソコンから「ボックスせいり/メールはずしてね」を選択してやせい3を手持ちの先頭に加えます。
- 手持ちの2番目(レベル0のバグったポケモン)と手持ちの5番目(やせい2)を入れ替えます。
- パソコンから「ポケモンをあずける」を選択して手持ちのポケモンを上から2匹あずけます。その後ボックスにいる最初のポケモンをつれていきます。
- ケーシィがじてんしゃを持っているのであずかります。
手順4: 任意コード実行環境を整える
- ひきゃく(オニスズメ)と最初のポケモンを入れ替えて手持ちのポケモンを以下の順番にします。🐭ケーシィ
やせい1
バグったポケモン
最初のポケモン
ひきゃく(タマゴ)
ひきゃく(オニスズメ)
- ボールポケットを開いて1番目をルアーボール×1、2番目をモンスターボールにします。モンスターボールの個数は1、2、4、5のいずれかにしておきます。
- たいせつなものポケットを開いて1つ目のじてんしゃでセレクトボタンを押してから2つ目のじてんしゃでセレクトボタンを押して入れ替え操作を行います。
- ボールポケットの2番目のボールが255個になるので、残りが17個になるようにすてます。
- ボールポケットの2番目と65番目を入れ替えます。
- ボールポケットの64~67番目については以下のようになっているのでこれを目印にしてボールポケットの2番目と65番目を入れ替えると良いです。🔍ボールポケットの64番目:?×??
ボールポケットの65番目:?×0
ボールポケットの66番目:?×129
ボールポケットの67番目:じてんしゃ
- ボールポケットの64~67番目については以下のようになっているのでこれを目印にしてボールポケットの2番目と65番目を入れ替えると良いです。
- メニューからポケギアが消えていれば任意コード実行の環境構築が終了となります。
手順5: 簡易版バイナリエディタ導入
ボックスの名前を以下のようにしてください。
ボックス2:ダだゲムよダだガ
ボックス3:だじダムキづごぱ
ボックス4:ヅまてへぎまぴよ
ボックス5:へぎまボぷへぎま
ボックス6:へォひひ はァリ
ボックス7:どダれはリダだや
ボックス8:ざダれ?よダリ
ボックス9:だかがよぜ?だを
ボックスの名前を変更したら下記の内容のメールをポケモンにもたせます。
に0ぞ?ムぞボデのよなゥゅリだっ
メールの作成後はメールの中身を読みます。その後ずかんを開くことで簡易版バイナリエディタを起動することができます。
簡易版バイナリエディタ
これ以降、上記のメールを読んでからずかんを開くたびに簡易版バイナリエディタを起動することができます。
左側のD6E6が書き換えようとしているメモリのアドレスで、右の00がその中身です。この簡易版バイナリエディタではA、B、Cの表示が正常でないことに注意してください。Aがg、Bが横線、Cが電話マークとなっています。
B: アドレス-01
A: アドレス+01
↑: 中身-01
↓: 中身+01
←: 中身-10
→: 中身+10
START: 終了
SELECT: D6E6からのコードを実行(プログラム入力するまで押さないように注意)
手順6: バイナリエディタ導入
簡易版バイナリエディタを使用してバイナリエディタのプログラムを入力していきます。入力を終えたらセレクトボタンを押すことでバイナリエディタを起動することができます。バイナリエディタを起動する前に一旦スタートボタンを押して簡易版バイナリエディタを終了させてセーブすることをおすすめします。
アドレス | 中身 |
---|---|
D6E6 | CD |
D6E7 | A8 |
D6E8 | 34 |
D6E9 | CD |
D6EA | AE |
D6EB | 33 |
D6EC | CD |
D6ED | 87 |
D6EE | 0D |
D6EF | CD |
D6F0 | 95 |
D6F1 | 0D |
D6F2 | 11 |
D6F3 | F2 |
D6F4 | 40 |
D6F5 | 21 |
D6F6 | 00 |
D6F7 | 96 |
D6F8 | 01 |
D6F9 | 19 |
D6FA | 3E |
D6FB | CD |
D6FC | 5B |
D6FD | 0E |
D6FE | F0 |
D6FF | 9F |
D700 | F5 |
D701 | 21 |
D702 | 00 |
D703 | D0 |
D704 | CD |
D705 | 42 |
D706 | D7 |
D707 | E5 |
D708 | 11 |
D709 | F8 |
D70A | FF |
D70B | 19 |
D70C | E5 |
D70D | D1 |
D70E | 21 |
D70F | A9 |
D710 | C3 |
D711 | F0 |
D712 | 9F |
D713 | CD |
D714 | 9D |
D715 | 30 |
D716 | CD |
D717 | 8B |
D718 | D7 |
D719 | 01 |
D71A | 0C |
D71B | 00 |
D71C | 36 |
D71D | 7C |
D71E | 23 |
D71F | 7A |
D720 | CD |
D721 | 8B |
D722 | D7 |
D723 | 7B |
D724 | CD |
D725 | 8B |
D726 | D7 |
D727 | 36 |
D728 | 7F |
D729 | 23 |
D72A | 1A |
D72B | CD |
D72C | 8B |
D72D | D7 |
D72E | 13 |
D72F | 36 |
D730 | 7C |
D731 | 09 |
D732 | 7C |
D733 | FE |
D734 | C6 |
D735 | 20 |
D736 | E5 |
D737 | CD |
D738 | AD |
D739 | 30 |
D73A | 3E |
D73B | ED |
D73C | EA |
D73D | 4B |
D73E | C4 |
D73F | E1 |
D740 | 18 |
D741 | C2 |
D742 | CD |
D743 | F4 |
D744 | 36 |
D745 | F0 |
D746 | AB |
D747 | 5F |
D748 | 01 |
D749 | 01 |
D74A | 00 |
D74B | 07 |
D74C | 38 |
D74D | 18 |
D74E | 0B |
D74F | 0B |
D750 | 07 |
D751 | 38 |
D752 | 13 |
D753 | 0E |
D754 | F0 |
D755 | 07 |
D756 | 38 |
D757 | 0E |
D758 | 01 |
D759 | 10 |
D75A | 00 |
D75B | 07 |
D75C | 38 |
D75D | 08 |
D75E | 48 |
D75F | 07 |
D760 | 30 |
D761 | 04 |
D762 | E1 |
D763 | F1 |
D764 | D7 |
D765 | C9 |
D766 | 7B |
D767 | 0F |
D768 | 30 |
D769 | 10 |
D76A | 0F |
D76B | 0F |
D76C | 30 |
D76D | 01 |
D76E | E9 |
D76F | F0 |
D770 | 9F |
D771 | CD |
D772 | 9D |
D773 | 30 |
D774 | 79 |
D775 | 86 |
D776 | 77 |
D777 | C3 |
D778 | AD |
D779 | 30 |
D77A | 0F |
D77B | 38 |
D77C | 05 |
D77D | 0F |
D77E | 38 |
D77F | 06 |
D780 | 09 |
D781 | C9 |
D782 | 79 |
D783 | 84 |
D784 | 67 |
D785 | C9 |
D786 | F0 |
D787 | 9F |
D788 | 81 |
D789 | D7 |
D78A | C9 |
D78B | F5 |
D78C | CB |
D78D | 37 |
D78E | CD |
D78F | 92 |
D790 | D7 |
D791 | F1 |
D792 | E6 |
D793 | 0F |
D794 | C6 |
D795 | F6 |
D796 | F6 |
D797 | 60 |
D798 | 22 |
D799 | C9 |
バイナリエディタ
これ以降、簡易版バイナリエディタを起動してからセレクトボタンを押すたびに、バイナリエディタを起動することができます。
画面上部の10が現在のROMバンクとSRAMバンクとなります。
↑: アドレス-01
↓: アドレス+01
←: アドレス-10
→: アドレス+10
B+↑: アドレス-100
B+↓: アドレス+100
B+←: アドレス-1000
B+→: アドレス+1000
A+↑: 中身-01
A+↓: 中身+01
A+←: 中身-10
A+→: 中身+10
START: 終了
SELECT+↑: バンク-01
SELECT+↓: バンク+01
SELECT+←: バンク-10
SELECT+→: バンク+10
SELECT+A: 現在のアドレスからのコードを実行(注意して使用してください)
バイナリエディタを使ってアドレスD418~D41A、DD90~DD9Bの中身を以下のように書き換えてください。
アドレス | 中身 |
---|---|
D418 | C3 |
D419 | E6 |
D41A | D6 |
DD90 | 3E |
DD91 | E1 |
DD92 | EA |
DD93 | FC |
DD94 | CF |
DD95 | 3E |
DD96 | 03 |
DD97 | 21 |
DD98 | 31 |
DD99 | 56 |
DD9A | CF |
DD9B | C9 |
書き変えたらカーソルをアドレスDD90に合わせてSELECT+Aボタンを押すことでたいせつなものポケットにわざマシン33を入手することができます。このわざマシン33を使うたびにバイナリエディタを直接起動することができます。
手順7: 通常の状態に戻す
バイナリエディタの導入で様々な副作用が発生しています。
- 主人公の名前
- ボールポケット
- パソコンのどうぐ欄
- ポケギア
- ポケモンずかん
- ボックス名
- 手持ちのポケモン
主人公の名前
ROMバンクを01にしてカーソルをアドレス6237に合わせてSELECT+Aボタンを押すことで主人公の名前を決めることができます。名付け終えたらSTARTボタンを押してバイナリエディタを一回終了させてください。
ボールポケット
アドレスD5EFからD5F4までの中身を 02 A0 01 05 02 FF
にすることでボールポケットを正常にすることができます。
パソコンのどうぐ欄
アドレスD60Aの中身をFFにすることでパソコンのどうぐ欄を元に戻すことができます。
ポケギア
アドレスD66Dの中身をアドレスD66Fに移動させてアドレスD670の中身を00にすることで元に戻すことができます。
ポケモンずかん
アドレスD671の中身を00にすることでポケモンずかんを正常にすることができます。
ボックス名
わざマシン33によるバイナリエディタ導入後はボックス名を好きなように変えることができます。
ROMバンクを01にしてカーソルをアドレス5D16に合わせてSELECT+Aボタンを押すことでボックスの名前をデフォルトの名前に戻すことができます。
手持ちのポケモン
手持ちの先頭を最初のポケモンにして、アドレスD9E8の中身を01に、アドレスD9EAの中身をFFにすることで手持ちのポケモンを最初のポケモンのみにすることができます。
おやの名前
バイナリエディタを使ってアドレスDDA0~DDABの中身を以下のように書き換えてください。
アドレス | 中身 |
---|---|
DDA0 | 01 |
DDA1 | 06 |
DDA2 | 00 |
DDA3 | 11 |
DDA4 | 10 |
DDA5 | DB |
DDA6 | 21 |
DDA7 | B5 |
DDA8 | D1 |
DDA9 | C3 |
DDAA | D6 |
DDAB | 30 |
書き変えたらカーソルをアドレスDDA0に合わせてSELECT+Aボタンを押すことで手持ちの1匹目のおやの名前を主人公の名前に変えることができます。
タマゴとケーシィとひきゃく(オニスズメ)の再入手
バイナリエディタを使ってアドレスDDB0~DDCEの中身を以下のように書き換えてください。
アドレス | 中身 |
---|---|
DDB0 | 3E |
DDB1 | 22 |
DDB2 | 21 |
DDB3 | B8 |
DDB4 | DD |
DDB5 | C3 |
DDB6 | F5 |
DDB7 | 26 |
DDB8 | 47 |
DDB9 | 2E |
DDBA | AF |
DDBB | 05 |
DDBC | 2D |
DDBD | 3F |
DDBE | 0A |
DDBF | 00 |
DDC0 | 00 |
DDC1 | 2D |
DDC2 | 15 |
DDC3 | 0A |
DDC4 | 00 |
DDC5 | 01 |
DDC6 | 49 |
DDC7 | 6E |
DDC8 | 4E |
DDC9 | 6E |
DDCA | 2F |
DDCB | 2C |
DDCC | 6E |
DDCD | 49 |
DDCE | 90 |
書き変えたらカーソルをアドレスDDB0に合わせてSELECT+Aボタンを押してからメニューを閉じることでトゲピーのタマゴとケーシィとひきゃく(オニスズメ)を入手することができます。
使い方
バイナリエディタを導入した後は以下の記事で使い方を確認することができます。
📄ポケットモンスター 金・銀・クリスタル バイナリエディタ 使い方
注意
アドレスD418~D41A、D6E6~D799はバイナリエディタで編集しないようにしてください。
RTAチャート
バイナリエディタを早く起動するための自分用のメモです。左側の三角形をクリックすると開閉します。
せっていをかえる
はなしのはやさ:はやい
せんとうアニメ:とばしてみる
しあいのルール:いれかえタイプ
さいしょからはじめる
主人公の名前:えてびま
曜日:どようび
電話の使い方:はい
ワカバタウン
ポケモンけんきゅうじょへ行く。ワニノコを入手する。
厳選は不要なためステータスは確認しなくて良い。きのみをワニノコから預かる。
ウツギ博士の助手からキズぐすりを入手する。
29ばんどうろ
ポケモンじいさんの家に着く前に経験値を44~53獲得する。
- ポッポ Lv2 経験値 15
- ポッポ Lv3 経験値 23
- ポッポ Lv4 経験値 31
- オタチ Lv2 経験値 16
- オタチ Lv3 経験値 24
- コラッタ Lv4 経験値 32
- キャタピー Lv3 経験値 22
- キャタピー Lv4 経験値 30
- トランセルは倒さない
30ばんどうろ
ポケモンじいさんの家の近くにある隠しキズぐすりを入手。
民家の近くにあるみのなるきからきのみを入手する。
ヨシノシティ
- ライバル
- チコリータ:にらみつける、ひっかく×4~6
- 素早さ10(素早さ個体値0~6同速)
- チコリータ:にらみつける、ひっかく×4~6
ワカバタウン
ウツギ博士の助手からモンスターボール×5を入手する。
29ばんどうろ
どうろの下から29ばんどうろに入る。
捕獲チュートリアル:いいえ
コガネシティまでに野生のポケモンを3匹捕獲する必要がある。
キキョウシティまでの道中ならポッポ、オタチ、コラッタ、キャタピーが候補となる。
30ばんどうろ
- たんぱんこぞう
- ポッポ:ひっかく×2(Lv7ならいかり×2、たいあたり外しでひっかくに切り替え)
- コラッタ:ひっかく×3(いかり継続)
- 素早さ11(素早さ個体値0~5同速)
むしとりしょうねんを避ける。避ける際にワニノコにきのみをもたせる。ワニノコのHPが14以下ならきのみで回復する。
ポケギアでおかあさんへ電話をし貯金はいいえを選択する。
31ばんどうろ
みのなるきからにがいきのみを入手する。
マダツボミ(つるのムチ)とトランセル(捕捉率120)の捕獲は避ける。
キキョウシティ
キキョウジムに入る。
キキョウジム
- とりつかい
- オニスズメ:いかり×4(相手の残り体力次第で4回目はひっかくにしても良い)
- 被ダメージ:24=6+6+6+6
- レベルアップをするときにぼうぎょの実数値の確認
- 被ダメージ:24=6+6+6+6
- オニスズメ:いかり×4(相手の残り体力次第で4回目はひっかくにしても良い)
HPが12以下(ぼうぎょ実数値が16ならHPが15以下)ならキズぐすりで回復をし、にがいきのみをワニノコにもたせる。
- とりつかい
- ポッポ×2:いかり×5
- 被ダメージ:防御17以上(防御個体値2~15)9=3+3+3
- 被ダメージ:防御16(防御個体値0~1)15=5+5+5
- 素早さ13(素早さ個体値0~4同速、被ダメージがずれる可能性あり)
- ポッポ×2:いかり×5
HPが18以下ならキズぐすりで回復をし、にがいきのみをまだワニノコにもたせていない場合はワニノコにもたせる。
- ハヤト
- ポッポ:いかり×3
- ピジョン:いかり×2(+ひっかく)
- 被ダメージ:18=3+3+6+6
- 攻撃19以下(攻撃個体値0~7)だといかり×2で残る可能性がある(?)
ポケモンセンター
ウツギ博士の助手からトゲピーのタマゴを入手する。
ボックスに行きワニノコ、やせい1、やせい2、タマゴの順番にあずけてワニノコをつれていきやせい3をあずけ、手持ちのポケモンをワニノコのみにする。
やせいのポケモンを1、2匹しか捕獲していない場合でもワニノコ以外をあずけるようにする。
やせいのポケモンを1匹も捕獲していない場合はボックスに寄らずに受付の人に話しかけてワニノコを回復する。
32ばんどうろ
みのなるきからまひなおしのみを入手する。
- たんぱんこぞう
- コラッタ:ひっかく×2
- ズバット:ひっかく×3
- 素早さ15(素早さ個体値0~3同速)
- つりびと
- トサキント:にらみつける + ひっかく×3
- 素早さ19(素早さ個体値13~15同速)
- トサキント:にらみつける + ひっかく×3
つながりのどうくつ
序盤で取得した経験値に応じてやせいポケモンを1匹倒す。
- 15:イワーク
- 16~21:サンド、イワーク
- 22~34:イシツブテ、サンド、イワーク
- 35~47:イシツブテ、サンド
- 48~53:イシツブテ
- 54~:何も倒さない
経験値
- イシツブテ Lv6 経験値73
- サンド Lv6 経験値79
- イワーク Lv6 経験値92
- やまおとこ
- イシツブテ×3:みずでっぽう×3
- ひふきやろう
- ロコン:みずでっぽう+ひっかく(赤ゲージならばいかり)
- 素早さ18(素早さ個体値0~3同速)
- ひのこでやけどになる可能性がある
- ロコン:みずでっぽう+ひっかく(赤ゲージならばいかり)
経験値に関する補足
やせいのポケモンの経験値で95~126の経験値を獲得するようにする。
- 95以上の理由:
- ヤドンのいどのドガース戦でLv16となり特殊個体値が高いとみずでっぽう×3で倒せる可能性が上がる
- ヒワダジムのパラス戦でLv17となり攻撃個体値が高いとにらみつける+ひっかく×2で倒せる可能性が上がる
- 126以下の理由:
- 最終レベルを20に留めるため(21になるとかみつくを覚えようとする)
なお経験値を121以上獲得すると、ヤドンのいどのロケット団の2人目と戦闘をする際に、ワニノコがLv15となり特殊の個体値が低い場合でもズバットをみずでっぽう×2で倒せる可能性が上がる。
ヒワダタウン
ガンテツと話す。
フレンドリィショップ
余計なトレーナーと戦闘していないならば4532円まで使うことができる。
- モンスターボール×1(持っていない場合)
- いいキズぐすり×4
- むしよけスプレー×2(モンスターボールを買わないかつ次の戦闘前にワニノコを回復する必要があれば×3にしヤドンのいどに入る前に使う)
- どくけし×3
- まひなおし×1
- はながらメール×1
ワニノコがやけどしているならばヤドンのいどの入り口の上にある隠しなんでもなおしを入手する。
ヤドンのいど
むしよけスプレーは使わない。
- ロケット団
- コラッタ×2:みずでっぽう×4
- 素早さ19(素早さ個体値4~7同速)
- コラッタ×2:みずでっぽう×4
- ロケット団
- ズバット:みずでっぽう×2~3
- アーボ:みずでっぽう×3
- どくばりでどくになる可能性がある
- ロケット団
- コラッタ:いかり連打
- ズバット(1匹目):
- いかりのボルテージが1以上ならいかり
- そうでなければみずでっぽう連打
- ズバット(2匹目):
- いかりのボルテージが2以上または1以上かつこんらんならいかり(+みずでっぽう)
- そうでなければみずでっぽう連打
- ロケット団
- ドガース: みずでっぽう×3~4
- どくになっても自動回復が直後に入るので回復しない
- ドガース: みずでっぽう×3~4
ヒワダタウン
ガンテツに話しかけてルアーボールを入手する。
ヒワダジム
- ふたごちゃん(右から話しかける)
- レディバ:ひっかく×2
- イトマル:みずでっぽう×2
- どくばりでどくになる可能性がある
どくになっても回復はしない。
- むしとりしょうねん
- パラス:にらみつける+ひっかく×2~3
- にらみつけるをする際に、ひっかくとにらみつけるの順番を入れ替える
- しびれごな、どくのこなで状態異常になる可能性がある
- パラス:にらみつける+ひっかく×2~3
むしとりしょうねんを避ける。避ける際にワニノコの状態異常を回復をし、まひなおしのみをもたせる。ワニノコのHPが30以下ならいいキズぐすりで回復する。
- ツクシ
- トランセル+コクーン+ストライク:いかり×7~9
- コクーン:どくばりでどくになる可能性がある。
- トランセル+コクーン+ストライク:いかり×7~9
ツクシ戦が終わるとアリゲイツに進化する。
ライバル戦
メニューを開く。
- まひなおしのみをまだアリゲイツにもたせていない場合はアリゲイツにもたせる。
- いいキズぐすりでアリゲイツのHPを最大まで回復する。
- アリゲイツがどくになっていればどくけしで回復する。
- れんぞくぎりをアリゲイツに覚えさせる。にらみつけるを忘れさせる。
- ライバル
- ゴース:みずでっぽう×2
- 素早さ27(素早さ個体値0同速)
- ベイリーフ:れんぞくぎり×3(+ひっかく)
- はっぱカッターのダメージ:特防32以上(特殊個体値5~15)22~25
- はっぱカッターのダメージ:特防31以下(特殊個体値0~4)25~29
- 素早さ28(素早さ個体値0同速)
- ズバット:みずでっぽう×2~3
- かみつく:5ダメージ
- HPが半分以下かつどくになっていればどくけしを使用して回復する
- HPの回復はキズぐすりを優先する
- ゴース:みずでっぽう×2
ウバメのもり
ウバメのもりに入ってから4歩歩いてむしよけスプレーを使う。
いあいぎりをアリゲイツに覚えさせる。れんぞくぎりを忘れさせる。
コガネシティ
ポケモンセンターに入ってすぐに出る。
キキョウシティでボックスに行ってない場合は捕まえたやせいのポケモンを預ける。
ミラクルサイクルでじてんしゃを入手しべんりボタン(セレクトボタン)にとうろくをする。
ちかつうろ
- かいじゅうマニア
- ヤドン×2:いあいぎり連打
コインケースを入手する。
ゲームコーナー
コインを200枚購入しケーシィを入手する。
35 ばんどうろ
ひきゃくを入手する。
- ピクニックガール
- ロコン:みずでっぽう+ひっかく(赤ゲージならばいかり)
- ほえるでひきゃくに交代させられたらつつく
- ロコン:みずでっぽう+ひっかく(赤ゲージならばいかり)
やけどになっても回復はしない。
- キャンプボーイ
- ディグダ:ひっかく(やけどならばみずでっぽう)
- ズバット:いあいぎり(やけどならばみずでっぽう×2)
- ディグダ:みずでっぽう
しぜんこうえん
メニューから手持ちのポケモンを開く。
- アリゲイツとケーシィを入れ替える。
- ひきゃくからメールをあずかる。
ケーシィでむしとりたいかいに参加する。
むしとりたいかいが開始したら一旦引き返し、おわりにしますか?と聞かれるのでいいえを選択して、むしとりたいかいに戻る。
コガネシティにテレポートをする。
コガネシティ
ケーシィ以外の全てのポケモンをあずける。
コガネひゃっかてんの5かいに行きわざマシン48を購入する。
しぜんこうえん
しぜんこうえんに戻ってむしとりたいかいを終了させる。
むしとりたいかいの終了後は左のゲートから出る。
ケーシィにわざマシン48(ほのおのパンチ)を使いコガネシティにテレポートをする。
そだてや
ボックスの操作
そだてやに向かい手持ちのポケモンの2番目にレベル0のバグったポケモンをそだてやにあずけてすぐに引き取ります。
手持ちの1番目と2番目を入れ替えて、バグったポケモンを先頭にし、2番目をケーシィにする。
パソコンに行きやせい1、やせい2、ひきゃく(オニスズメ)、タマゴの順番につれていく。
ボックスをかえるでボックス1~9の名前を以下のようにする。
ボックス2:ダだゲムよダだガ
ボックス3:だじダムキづごぱ
ボックス4:ヅまてへぎまぴよ
ボックス5:へぎまボぷへぎま
ボックス6:へォひひ はァリ
ボックス7:どダれはリダだや
ボックス8:ざダれ?よダリ
ボックス9:だかがよぜ?だを
ボックスせいり/メールはずしてねでやせい3を手持ちの先頭に加える。
手持ちの2番目(レベル0のバグったポケモン)と手持ちの5番目(やせい2)を入れ替える。
ポケモンをあずけるで上から2匹(やせい3、やせい2)をあずける。
アリゲイツをつれていく。
メニューの操作
ケーシィがじてんしゃを持っているのであずかる。
手持ちの4番目(ひきゃく)と手持ちの6番目(アリゲイツ)を入れ替える。
ボールポケットを開いて1番目をルアーボール×1、2番目をモンスターボールにする。モンスターボールの個数は1または2であることを確認する。
たいせつなものポケットを開いて1つ目のじてんしゃでセレクトボタンを押してから2つ目のじてんしゃでセレクトボタンを押して入れ替え操作を行います。
ボールポケットの2番目のボールが255個になるので、残りが17個になるようにすてる。
ボールポケットの2番目と65番目を入れ替える。
どうぐポケットからはながらメールをもたせることで以下のメールを作成する。
に0ぞ?ムぞボデのよなゥゅリだっ
メールの作成後はメールの中身を読んでからずかんを開くことで簡易版バイナリエディタを起動することができる。
簡易版バイナリエディタを起動後はアドレスD6E6~D799を編集してバイナリエディタを起動する。
参考
技術的補足
ボールポケットの入れ替え操作
65番目のボールポケットに対応するアドレスは以下のようになっています。
番号 | 種類 | 個数 |
---|---|---|
65 | D670 | D671 |
アドレスD671はポケモンずかんのモードを格納しているアドレスであり、2番目のボールを17個にしてから、ボールポケットの2番目と65番目を入れ替えることで、アドレスD671を(16進数で)11にすることができます。ポケモンずかんのモードを11にしてポケモンずかんを開くことでアドレスFB20を実行することができます。
簡易版バイナリエディタ
説明
ポケモンずかんのモードを11にしてポケモンずかんを開くことでアドレスFB20を実行します。アドレスCF21からCF41までは最後に閲覧したメールの内容を格納しているため、メールを読んでからポケモンずかんを開くことで簡易版バイナリエディタを起動することができます。
アドレスFB20を実行する際、aレジスタには20、hlレジスタにはFB20が格納されているので、アドレスCF3Dを実行する際、aレジスタには36が格納され、アドレスD8E1の中身が36となります。
簡易版バイナリエディタはhlレジスタが指しているアドレスとその中身を出力するプログラムです。キーの入力でhlレジスタの指すアドレスとその中身を変化させるようにしています。
WRA0:CF21 CD A8 34 call 34A8
WRA0:CF24 C3 FC D8 jp D8FC
WRA0:CF27 C5 push bc
WRA0:CF28 CB 30 swap b
WRA0:CF2A CD 2E CF call CF2E
WRA0:CF2D C1 pop bc
WRA0:CF2E 3E 0F ld a,0F
WRA0:CF30 A0 and b
WRA0:CF31 4E ld c,(hl)
WRA0:CF32 C6 F6 add a,F6
WRA0:CF34 2F cpl
WRA0:CF35 E6 9F and a,9F
WRA0:CF37 2F cpl
WRA0:CF38 1C inc e
WRA0:CF39 12 ld (de),a
WRA0:CF3A C9 ret
WRA0:CF3B D6 C5 sub a,C5
WRA0:CF3D EA E1 D8 ld (D8E1),a
WRA0:CF40 30 DF jr nc,CF21
WRA1:D8B2 0F rrca
WRA1:D8B3 30 06 jr nc,D8BB
WRA1:D8B5 AF xor a
WRA1:D8B6 C6 10 add a,10
WRA1:D8B8 30 0E jr nc,D8C8
WRA1:D8BA 50 ld d,b
WRA1:D8BB 0F rrca
WRA1:D8BC 30 08 jr nc,D8C6
WRA1:D8BE 9F sbc a
WRA1:D8BF D6 0F sub a,0F
WRA1:D8C1 30 05 jr nc,D8C8
WRA1:D8C3 50 ld d,b
WRA1:D8C4 30 2C jr nc,D8F2
WRA1:D8C6 0F rrca
WRA1:D8C7 9F sbc a
WRA1:D8C8 86 add (hl)
WRA1:D8C9 32 ldd (hl),a
WRA1:D8CA 2A ldi a,(hl)
WRA1:D8CB 44 ld b,h
WRA1:D8CC 50 ld d,b
WRA1:D8CD 11 CF C3 ld de,C3CF
WRA1:D8D0 CD 27 CF call CF27
WRA1:D8D3 45 ld b,l
WRA1:D8D4 D6 50 sub a,50
WRA1:D8D6 CD 27 CF call CF27
WRA1:D8D9 1C inc e
WRA1:D8DA 46 ld b,(hl)
WRA1:D8DB CD 27 CF call CF27
WRA1:D8DE 50 ld d,b
WRA1:D8DF CD F4 CB call CBF4
WRA1:D8E2 CB 7F bit 7,a
WRA1:D8E4 CA E9 D8 jp z,D8E9
WRA1:D8E7 50 ld d,b
WRA1:D8E8 34 inc (hl)
WRA1:D8E9 0F rrca
WRA1:D8EA DA CA D8 jp c,D8CA
WRA1:D8ED 0F rrca
WRA1:D8EE 30 D4 jr nc,D8C4
WRA1:D8F0 50 ld d,b
WRA1:D8F1 2B dec hl
WRA1:D8F2 0F rrca
WRA1:D8F3 DA E6 D6 jp c,D6E6
WRA1:D8F6 0F rrca
WRA1:D8F7 D8 ret c
WRA1:D8F8 50 ld d,b
WRA1:D8F9 50 ld d,b
WRA1:D8FA 30 B6 jr nc,D8B2
WRA1:D8FC 26 D6 ld h,D6
WRA1:D8FE 2E E6 ld l,E6
WRA1:D900 30 DD jr nc,D8DF
WRA1:D902 50 ld d,b
ECH1:FB20 64 ld h,h
ECH1:FB21 00 nop
ECH1:FB22 B4 or h
ECH1:FB23 C3 3B CF jp CF3B
バイナリ
CF21:
CD A8 34 C3 FC D8 C5 CB 30 CD 2E CF C1 3E 0F A0 4E
C6 F6 2F E6 9F 2F 1C 12 C9 D6 C5 EA E1 D8 30 DF
D8B2:
0F 30 06 AF C6 10 30 0E 50
0F 30 08 9F D6 0F 30 05 50
30 2C 0F 9F 86 32 2A 44 50
11 CF C3 CD 27 CF 45 D6 50
CD 27 CF 1C 46 CD 27 CF 50
CD F4 CB CB 7F CA E9 D8 50
34 0F DA CA D8 0F 30 D4 50
2B 0F DA E6 D6 0F D8 50 50
30 B6 26 D6 2E E6 30 DD 50
FB20:
64 00 B4 C3 3B CF
バイナリエディタ
説明
バイナリエディタはhlレジスタが指しているアドレスを含む18個のアドレスとその中身を出力するプログラムとなっています。更に画面上部にROMバンクとSRAMバンクを表示させて変更しやすいようにしています。アドレスD6E6を実行することでバイナリエディタを起動することができるようになっています。
WRA1:D6E6 CD A8 34 call 34A8
WRA1:D6E9 CD AE 33 call 33AE
WRA1:D6EC CD 87 0D call 0D87
WRA1:D6EF CD 95 0D call 0D95
WRA1:D6F2 11 F2 40 ld de,40F2
WRA1:D6F5 21 00 96 ld hl,9600
WRA1:D6F8 01 19 3E ld bc,3E19
WRA1:D6FB CD 5B 0E call 0E5B
WRA1:D6FE F0 9F ld a,(ff00+9F)
WRA1:D700 F5 push af
WRA1:D701 21 00 D0 ld hl,D000
WRA1:D704 CD 42 D7 call D742
WRA1:D707 E5 push hl
WRA1:D708 11 F8 FF ld de,FFF8
WRA1:D70B 19 add hl,de
WRA1:D70C E5 push hl
WRA1:D70D D1 pop de
WRA1:D70E 21 A9 C3 ld hl,C3A9
WRA1:D711 F0 9F ld a,(ff00+9F)
WRA1:D713 CD 9D 30 call 309D
WRA1:D716 CD 8B D7 call D78B
WRA1:D719 01 0C 00 ld bc,000C
WRA1:D71C 36 7C ld (hl),7C
WRA1:D71E 23 inc hl
WRA1:D71F 7A ld a,d
WRA1:D720 CD 8B D7 call D78B
WRA1:D723 7B ld a,e
WRA1:D724 CD 8B D7 call D78B
WRA1:D727 36 7F ld (hl),7F
WRA1:D729 23 inc hl
WRA1:D72A 1A ld a,(de)
WRA1:D72B CD 8B D7 call D78B
WRA1:D72E 13 inc de
WRA1:D72F 36 7C ld (hl),7C
WRA1:D731 09 add hl,bc
WRA1:D732 7C ld a,h
WRA1:D733 FE C6 cp a,C6
WRA1:D735 20 E5 jr nz,D71C
WRA1:D737 CD AD 30 call 30AD
WRA1:D73A 3E ED ld a,ED
WRA1:D73C EA 4B C4 ld (C44B),a
WRA1:D73F E1 pop hl
WRA1:D740 18 C2 jr D704
WRA1:D742 CD F4 36 call 36F4
WRA1:D745 F0 AB ld a,(ff00+AB)
WRA1:D747 5F ld e,a
WRA1:D748 01 01 00 ld bc,0001
WRA1:D74B 07 rlca
WRA1:D74C 38 18 jr c,D766
WRA1:D74E 0B dec bc
WRA1:D74F 0B dec bc
WRA1:D750 07 rlca
WRA1:D751 38 13 jr c,D766
WRA1:D753 0E F0 ld c,F0
WRA1:D755 07 rlca
WRA1:D756 38 0E jr c,D766
WRA1:D758 01 10 00 ld bc,0010
WRA1:D75B 07 rlca
WRA1:D75C 38 08 jr c,D766
WRA1:D75E 48 ld c,b
WRA1:D75F 07 rlca
WRA1:D760 30 04 jr nc,D766
WRA1:D762 E1 pop hl
WRA1:D763 F1 pop af
WRA1:D764 D7 rst 10
WRA1:D765 C9 ret
WRA1:D766 7B ld a,e
WRA1:D767 0F rrca
WRA1:D768 30 10 jr nc,D77A
WRA1:D76A 0F rrca
WRA1:D76B 0F rrca
WRA1:D76C 30 01 jr nc,D76F
WRA1:D76E E9 jp hl
WRA1:D76F F0 9F ld a,(ff00+9F)
WRA1:D771 CD 9D 30 call 309D
WRA1:D774 79 ld a,c
WRA1:D775 86 add (hl)
WRA1:D776 77 ld (hl),a
WRA1:D777 C3 AD 30 jp 30AD
WRA1:D77A 0F rrca
WRA1:D77B 38 05 jr c,D782
WRA1:D77D 0F rrca
WRA1:D77E 38 06 jr c,D786
WRA1:D780 09 add hl,bc
WRA1:D781 C9 ret
WRA1:D782 79 ld a,c
WRA1:D783 84 add h
WRA1:D784 67 ld h,a
WRA1:D785 C9 ret
WRA1:D786 F0 9F ld a,(ff00+9F)
WRA1:D788 81 add c
WRA1:D789 D7 rst 10
WRA1:D78A C9 ret
WRA1:D78B F5 push af
WRA1:D78C CB 37 swap a
WRA1:D78E CD 92 D7 call D792
WRA1:D791 F1 pop af
WRA1:D792 E6 0F and a,0F
WRA1:D794 C6 F6 add a,F6
WRA1:D796 F6 60 or a,60
WRA1:D798 22 ldi (hl),a
WRA1:D799 C9 ret
バイナリ
CD A8 34 CD AE 33 CD 87 0D CD
95 0D 11 F2 40 21 00 96 01 19 3E CD 5B 0E F0 9F
F5 21 00 D0 CD 42 D7 E5 11 F8 FF 19 E5 D1 21 A9
C3 F0 9F CD 9D 30 CD 8B D7 01 0C 00 36 7C 23 7A
CD 8B D7 7B CD 8B D7 36 7F 23 1A CD 8B D7 13 36
7C 09 7C FE C6 20 E5 CD AD 30 3E ED EA 4B C4 E1
18 C2 CD F4 36 F0 AB 5F 01 01 00 07 38 18 0B 0B
07 38 13 0E F0 07 38 0E 01 10 00 07 38 08 48 07
30 04 E1 F1 D7 C9 7B 0F 30 10 0F 0F 30 01 E9 F0
9F CD 9D 30 79 86 77 C3 AD 30 0F 38 05 0F 38 06
09 C9 79 84 67 C9 F0 9F 81 D7 C9 F5 CB 37 CD 92
D7 F1 E6 0F C6 F6 F6 60 22 C9
たいせつなものポケットのわざマシン33
説明
ROMバンク03のアドレス5631を実行することによりアドレスCFFCの中身に対応するどうぐをたいせつなポケットに入手することができます。
わざマシンポケット以外でわざマシン33を使用することによりアドレスF418を実行します。アドレスF418でD6E6へジャンプする命令を記述することでバイナリエディタを起動するようにしています。
WRA1:DD90 3E E1 ld a,E1
WRA1:DD92 EA FC CF ld (CFFC),a
WRA1:DD95 3E 03 ld a,03
WRA1:DD97 21 31 56 ld hl,5631
WRA1:DD9A CF rst 08
WRA1:DD9B C9 ret
ECH1:F418 C3 E6 D6 jp D6E6
バイナリ
DD90:
3E E1 EA FC CF 3E 03 21 31 56 CF C9
F418:
C3 E6 D6
おやの名前の変更のプログラム
説明
アドレス30D6を実行することでbcレジスタで指定した長さ分をhlレジスタで指定した場所からdeレジスタで指定した領域に対してコピーを行います。アドレスD1B5から6バイトは主人公の名前を格納している領域であり、アドレスDB10は手持ちの1匹目のおやの名前を格納している領域であるので、以下のプログラムを実行することで1匹目のおやの名前を主人公の名前にすることができます。
WRA1:DDA0 01 06 00 ld bc,0006
WRA1:DDA3 11 10 DB ld de,DB10
WRA1:DDA6 21 B5 D1 ld hl,D1B5
WRA1:DDA9 C3 D6 30 jp 30D6
バイナリ
01 06 00 11 10 DB 21 B5 D1 C3 D6 30
タマゴとケーシィとひきゃく(オニスズメ)の再入手のプログラム
説明
アドレス26F5を実行することaレジスタの中身をROMバンクとしてhlアドレス以降に書かれているスクリプトを実行することができます。ROMバンクを22にすることでひきゃくに関するデータを参照することができます。
WRA1:DDB0 3E 22 ld a,22
WRA1:DDB2 21 B8 DD ld hl,DDB8
WRA1:DDB5 C3 F5 26 jp 26F5
スクリプト
47 ; Script_opentext
2E AF 05 ; Script_giveegg
2D 3F 0A 00 00 ; Script_givepoke
2D 15 0A 00 01 49 6E 4E 6E ; Script_givepoke
2F 2C 6E ; Script_givepokemail
49 ; Script_closetext
90 ; Script_end
バイナリ
3E 22 21 B8 DD C3 F5 26 47 2E AF 05 2D 3F 0A 00
00 2D 15 0A 00 01 49 6E 4E 6E 2F 2C 6E 49 90