小ネタ集

Last-modified: 2024-02-11 (日) 19:16:52

※基本コピペです。情報提供してくださった皆様ありがとうございます。
特に記述がなければFRのアドレスです。

目次

小ネタ集

ポケモン枠特殊設定

差し替えに注意が必要なポケモン枠一覧

ポケモン特殊設定内容
003:フシギバナエンディングの一枚絵+鳴き声
006:リザードンエンディングの一枚絵+鳴き声/タイトル画面の鳴き声
009:カメックスエンディングの一枚絵+鳴き声
013:ビードル捕獲お手本で出現 ♀のみor性別不明にするとイベント戦開始時にフリーズ
025:ピカチュウエンディングの一枚絵+鳴き声/専用アイテムでんきだま
029:ニドラン♀性別表示が特殊/タマゴが混ざる/オープニングでオーキドが出す
032:ニドラン♂性別表示が特殊/タマゴが混ざる
033:ニドリーノオープニングデモの鳴き声
051:ドードリオドードリオのきのみどり対象
083:カモネギ専用アイテムながねぎ
104:カラカラ専用アイテムふといホネ
105:ガラガラ専用アイテムふといホネ/ゆうれい戦で出現 ♂のみor性別不明にするとイベント戦開始時にフリーズ
113:ラッキー専用アイテムラッキーパンチ
129:コイキング大きさ計測対象
132:メタモン専用アイテムメタルパウダー
151:ミュウイベントフラグが立っていないと言うことを聞かない
183:マリル
350:ルリリ
うしおのおこうでタマゴが変化
201:アンノーン姿違い/せきしつ以外で出現させるとフリーズ
202:ソーナンス
360:ソーナノ
のんきのおこうでタマゴが変化
214:ヘラクロス大きさ計測対象
243:ライコウ
244:エンテイ
245:スイクン
徘徊対象/図鑑分布が特殊
303:ヌケニンHP1固定/マックスアップ使用不可
308:パッチール正面画像に斑模様が付く
373:パールル専用アイテムしんかいのキバ+しんかいのウロコ
385:ポワルン専用特性てんきや/フォルムチェンジ
386:バルビート
387:イルミーゼ
タマゴが混ざる
407:ラティアス
408:ラティオス
専用アイテムこころのしずく
410:デオキシスイベントフラグが立っていないと言うことを聞かない/フォルムチェンジ/種族値設定が特殊

専用アイテム対象ポケモンを変更

0x03E76Aでんきだま対象(1byte指定)
0x01DCCAながねぎ対象(1byte指定)
0x01DCB0ラッキーパンチ対象(1byte指定)
0x03E780メタルパウダー対象(1byte指定)
0x03E9B8しんかいのキバ/しんかいのウロコ対象(2byte指定)
0x03E794ふといホネ対象(1byte指定)
0x03E9B4こころのしずく対象(4byte符号反転)

こころのしずくなら対象のポケモンコードに上記の値を加算、
ふといホネなら対象のポケモンコードから上記の値を減算し、
計算結果を1と比較することで対象のポケモンかどうかを判断

・ふといホネの対象範囲を一匹(カラカラのみ)に変更

アドレス変更前変更後
03E79A0100

・こころのしずく対象範囲を一匹(ラティアスのみ)に変更

アドレス変更前変更後
03E6E40100
03E71E0100

エンディングで表示される一枚絵のポケモンを変更

画像/パレット鳴き声ポケモン
0x0F523C0x0F5374リザードン(1byte指定)
0x0F527A0x0F5378フシギバナ(1byte指定)
0x0F52BA0x0F537Cカメックス(1byte指定)
0x0F53020x0F5380ピカチュウ(1byte指定)

ここで指定したパレットが大きい一枚絵でも使用される

タイトル画面のリザードンの鳴き声を変更

0x078982タイトル画面開始時の鳴き声指定(ポケモンコード1byte指定)

タイトルデモのニドリーノの鳴き声を変更

0x0EF5A6タイトルデモの鳴き声指定(ポケモンコード1byte指定)

おじいさんの捕獲お手本のビードルを変更

0x07EFB4捕獲お手本出現ポケモン指定(ポケモンコード1byte指定)
0x07EFB6捕獲お手本出現レベル指定

性別比率が♀のみor性別不明のポケモンを指定するとイベント戦開始時にフリーズする

ニドランの性別表示対象を変更

ニドラン♀ニドラン♂場所
0x048D220x048D26戦闘中
0x09381C0x093820ボックス
0x1220B80x1220BCポケモン選択
0x136A540x136A58手持ち詳細
0x0F42B80x0F42BC殿堂入り

全て1byte指定

・ポケモンコード比較とニドラン系統の性別表示修正処理をまとめてスキップ

アドレス変更前変更後
048D221D 280D E0
09381C1D 2A04 E0
0F42B820 2902 E0
1220B820 2C0C E0
136A5420 2C15 E0

オーキド博士が出すニドラン♀を変更

・画像/パレットを変更
変えたいポケモンの、画像のアドレスを逆順にして0x1F4688から検索。見つかったら、その先頭のアドレスを逆順にして0x1317B4に格納されているアドレスを書き換える。
変えたいポケモンの、パレットのアドレスを逆順にして0x1F68F0から検索。見つかったら、その先頭のアドレスを逆順にして0x1317B8に格納されているアドレスを書き換える。
その後0x131760を変更後のポケモンコードに変更する。(ポケモンコード1byte指定)

・鳴き声を変更
0x13034C(ポケモンコード1byte指定)

タマゴが混ざるポケモンを変更

生まれるタマゴが0x4562C:1D(ニドラン♀)なら50%の確率で0x45642:20(ニドラン♂)に変更する
生まれるタマゴが0x45694:0183(イルミーゼ)なら50%の確率で0x4565A:C1×2(バルビート)に変更する

お香でタマゴが変化するポケモンを変更

  • 生まれるタマゴ候補が(0804556c:[b4]×2)(←ソーナノ枠)のとき,
    親1がアイテムID(0804559c:[dd])(←のんきのお香)を所持しておらず,
    かつ,親2がアイテムID(080455a0:[dd])(←のんきのお香)を所持していないならば,
    生まれるタマゴを(080455a4:[ca])(←ソーナンス枠)に変更する
  • 生まれるタマゴ候補が(08045574 & 080455aa:[af]×2)(←ルリリ枠)のとき,(※チェックが二回入る)
    親1がアイテムID(080455b2:[dc])(←うしおのお香)を所持しておらず,
    かつ,親2がアイテムID(080455b6:[dc])(←うしおのお香)を所持していないならば,
    生まれるタマゴを(080455ba:[b7])(←マリル枠)に変更する

ポケモンタワー幽霊戦のガラガラを変更

0x07F068ゆうれい戦出現ポケモン指定(1byte指定)
0x07F06Aゆうれい戦出現レベル指定

性別比率が♂のみor性別不明のポケモンを指定するとイベント戦開始時にフリーズする

ミュウ/デオキシスの言うことを聞かないポケモン対象を変更

0x01CC12ミュウ(1byte指定)
0x01CBFCデオキシス(ポケモンコード/2・1byte指定)

アンノーンの姿違い対象を変更

0x00E6BA正面
0x00EAFE野生
0x073D4E背面
0x09698Eアイコン
0x0969A0アイコン(ポケモンプリント)

全て1byte指定
※正面/背面画像表示位置はそのままなのでアンノーンの姿によって微妙に画像が上下する模様

A固定にする場合はこれらのC9を00に変更し、以下のように書き換える

アドレス変更前変更後
096A2C80 18C9 20

徘徊三犬を変更

ニシキにサファイアを渡した時(Special0x0129実行時)に選択した御三家に応じてIDとレベルがメモリに記録される
後から変更する事は出来ないが再度スクリプトを実行する事で上書きは可能
・ポケモン指定

0x1423CEゼニガメ選択時 ライコウ(1byte指定)
0x1423D8フシギダネ選択時 エンテイ(1byte指定)
0x1423DCヒトカゲ選択時 スイクン(1byte指定)

・レベル指定

0x142400出現レベル
0x1423EC出現時の現在HPステータスのレベル

・分布指定
分布の表示は0x42D680から、
走り回る対象と最初に選んだポケモンのIDが2byteずつ書かれている
例えば自分がフシギダネを選んだ場合、
0x42D680の数値を1にすると、フシギダネの生息地が動くタイプに変化する

(FR/EM)パッチールの斑模様対象を変更

FR0x042B5E斑模様の表示されるポケモン指定(ポケモンコード/2・1byte指定)
EM0x06D13E

パッチールの斑模様画像を変更

X座標Y座標画像データ模様
0x20F0640x20F0650x20F066左上
0x20F0880x20F0890x20F08A右上
0x20F0AC0x20F0AD0x20F0AE左下
0x20F0D00x20F0D10x20F0D2右下

画像はYY-CHRの画像形式1BPP 16x16で編集する。ゲーム内では左右反転して表示されるので注意。
パレットインデックス0x1~0x3にのみ対し0x4を加算する。

(FR/EM)ヌケニンのHP1固定対象を変更

バージョンアドレス場所
FR0x03DCD0最大HP1固定対象
0x03DEA8敵の初期HP1固定対象
0x125BA4マックスアップ使用制限対象
EM0x068934最大HP1固定対象
0x068B0C敵の初期HP1固定対象
0x1B6198マックスアップ使用制限対象

全てポケモンコード2byte指定

デオキシスアタックフォルムの種族値を変更

0x21AA2EHP2byte/攻撃2byte/防御2byte/素早さ2byte/特攻2byte/特防2byte

※HPのみノーマルフォルムの設定が反映される
習得技や獲得努力値等それ以外の設定は通常通り編集可能

デオキシスのフォルムチェンジ対象を変更

0x00E764姿(正面背面共通)
0x043CA8種族値
0x096A64アイコン

全てポケモンコード/2・1byte指定

大きさ計測対象ポケモンを変更

0x0A1BF6ヘラクロス記録表示対象(Special0x77)
0x0A1C10ヘラクロス計測対象(Special0x78)
0x0A1C4Aコイキング記録表示対象(Special0x79)
0x0A1C64コイキング計測対象(Special0x7A)

全てポケモンコード1byte指定

戦闘関連

レベルが上がっても交換したポケモンがいうことをきく

アドレス変更前変更後
01CC95D0E0

技効果で使用されるリスト

0x20CB0C特性「ぼうおん」防げる技リスト
0x20D1E8「まもる・みきり・こらえる」成功率リスト
0x20D1F0「ゆびをふる・ねこのて」選ばれない技リスト
0x20D218「じたばた・きしかいせい」HP割合・威力リスト
0x20D224「しぜんのちから」技リスト
0x20D238「けたぐり」おもさ・威力リスト
0x20D290「ほごしょく」変化するタイプリスト

「ゆびをふる・ねこのて」選ばれない技リストは
FE FFまでが「ものまね」も失敗する技になっている模様
「ねこのて」はリストの技の他に「119:オウムがえし」、「214:ねごと」、「274:ねこのて」も選ばれない

0x028D48「ものまね」リスト参照先
0x028FB0「ゆびをふる」リスト参照先
0x02C274「ねこのて」リスト参照先

別のアドレスに変更すれば個別に設定可能

(FR/EM)戦闘中のHPゲージ増減速度変更

バージョンアドレス変更前変更後
FR049BE003 0CX3 0Y
EM07495C03 0CX3 0Y

最大HPが一定数値以上だった場合のみ適用される
C3 0Bで2倍に、83 0Bで4倍となる
次回作であるDPのように遅くすることも可能

めざめるパワー威力60固定化

アドレス変更前変更後
2aef81E 303C 20

別の威力に変更する場合は3Cの部分を任意の値に変更する

かなしばり持続ターン数を4ターン固定化

アドレス変更前変更後
029330CB 7A05 23

アンコール持続ターン数を3ターン固定化

アドレス変更前変更後
0294688B 7B04 23

ちょうはつ持続ターン数を3ターンに

アドレス変更前変更後
02B7BA0203

バインドダメージを1/8に

アドレス変更前変更後
017ED400 09C0 08

特性さめはだダメージを1/8に

アドレス変更前変更後
01A2EA00 09C0 08

(FR/EM)1/3反動ダメージの倍率を変更

バージョンアドレス変更前変更後
FR02078E03 21XX 21
EM04946603 21XX 21

XXには01以上の任意の値を入れる。02でもろはのずつきと同じ反動ダメージになる。

その他

(FR/EM)RAM固定化

一部メモリ書き換えスクリプトで必須

バージョンアドレス変更前変更後
FR04B81A7C 2100 21
EM0765F47C 2000 20

(FR/EM)暗号化停止

バージョンアドレス変更前変更後
FR04B8F624 1800 24
EM0766DE24 1800 24

最初から全国図鑑に

アドレス変更前変更後
0x103A23D1E0
0x127569D1E0
0x1368FBD1E0

これで全国図鑑入手イベを介さずに初めから全国図鑑状態になる

アドレス変更前変更後
0x0435F297 2C 04 D900 00 04 E0
0x06DA6688 42 0E D100 00 00 00
0x06DA7400 28 07 D000 00 00 00
0x0CFA29D1E0

上のものだけだとIDが???のままなので上記を加える
EM版は以下の通り

アドレス変更前変更後
0x06DE76CA 2C 04 D900 00 04 E0
0x0462EE88 42 0E D100 00 00 00
0x04631C00 28 07 D000 00 00 00

0x06DE76ではなく0x06DE79のみE0と変えてもIDは正常に表示される
また、0x0CFA29に相当する部分は書き換えなくとも動作する模様

全国図鑑まで進化出来ないポケモンを指定

アドレス変更前変更後
0CFA369700
1275869700

と書き換えれば、全国図鑑入手まで誰も進化できない気がします。
間違ってたり、方向性自体が違っていたらすいません。

図鑑上限

0x103374:全国図鑑表示上限
0x1046DC:全国図鑑上限
0x1059E4:全国図鑑見つけた・捕まえた数上限
0x1059AE:カントー図鑑見つけた・捕まえた数上限

ダミー部分を全国図鑑に表示するには、以下のように変更する。

バージョンアドレス変更箇所書き換え
FR0x103374C1CE
0x1046DC819A
0x1059E4819A
EM0x0BFD64819A

これに加えて0x40E2D0~410D23の図鑑データを空き領域に移し、後ろにダミー分のデータを追加することで表示できるようになる。
これによりダミー枠に重さが設定できるため、けたぐりなど重さを参照する技を正しく使えるようになる。
捕獲して図鑑に登録される時にダミー枠を正しく表示するためには、「いろんな場所にいるポケモン」を拡張、データ追加を行う必要がある。
EMでは見つけた・捕まえた数は1ヵ所のみ。

(EM)ホウエン図鑑・見つけた&捕まえた数の上限及び表示数上限

アドレスデフォルトの値上限
0x0BC03ACAFF
0x0BFDE8C9FE

FRのカントー図鑑と同じ255が上限
ただし、これだけではステータス画面の図鑑Noが表示されない
ダミー枠を表示させたい場合、全国図鑑のSpecialコード「25 F0 01」を00で埋める必要がある。

屋内でランニングシューズ使用可能

アドレス変更前変更後
0BE7540800

(FR/EM)初期所持金

0x054420(FR)
0x083F44(EM)

エンディングの背景でスクロールするマップ

0x3DBC34
32(0x20)byteずつ
FE 00 mm mm mm mm 00 00 ++ ++ -- -- 01 00 00 00 XX XX YY YY 00 05 00 00 FD 00 FD 00 FD 00 00 00
mm mm mm mm:バンク番号とマップ番号
++ ++:スクロール開始地点X座標
-- --:スクロール開始地点Y座標
XX XX:スクロールの速度X座標
YY YY:スクロールの速度Y座標
スクロールの速さは上げすぎると表示がおかしくなるので使えるのは実質0100、0200、FFFF、FEFFのみ
どちらも0000にすればスクロールを止められる

タマゴから産まれるポケモンのレベル

0x046250孵化する際のレベル
0x0457E6孵化時に覚えているレベル技
0x137D6C情報に書かれる孵化時のレベル
0x137F18孵化したポケモンを交換で入手した場合の表示

トレーナーのポケモンの特性を戦闘前の音で設定

なんとかトレーナーのポケモンの特性を
シンセの「戦闘前の音」でいじれねーかなーと。いくらggってもなかったし。
ただ、トレーナーのポケモンの性格値が、戦闘前の音が127以下なら下位1byteが88、
128以上なら78になる(これにより特性1にしかなりえない)というのは見つけたので、
0x08010C0Eの88を87に変えてみたところ、
戦闘前の音0のトレーナーのポケモンの特性が2になった。

性別とあわせて決めようとすると難しいけど、特性変えたいだけなら。
メスがいいなら01とかにすればいいと思う

ちゃんと動作確認してるわけじゃないし、既出ならスマソ

0x08010C16 [78] ⇒ [87] にすると
戦闘前のBGM+0で手持ち全てが特性1の♂に
戦闘前のBGM+128で手持ち全てが特性2の♂に

0x08010C0E [88] ⇒ [78]
0x08010C16 [78] ⇒ [01] にすると
戦闘前のBGM+0で手持ち全てが特性1の♀に
戦闘前のBGM+128で手持ち全てが特性2の♀に、なるようです

0x10C0Aから変更

80 20 08 40 88 21 06 91 00 28

80 31 09 06 09 0E 06 91 02 E0

これで戦闘前のBGMの番号が0x7F以下の偶数なら特性1の♂、奇数なら特性2の♂、
0x80以上の偶数なら特性1の♀、奇数なら特性2の♀にできると思う

以下、参考までに
♪トレーナーあらわる(男の子編)
0    [♂1] 短パン、虫取り、船乗り、キャンプ男、暴走族、電気親父
         電気グループ、スキン、ギャンブラー、ジムリ男、ライバル
4   [♂1] カラテ、格闘兄弟、格闘娘
4+128 [♀1] サイキッカー
5   [♂2] 鳥使い、エリトレ男、エリートカプ、レンジャー男
5+128 [♀2] エリトレ女、レンジャー女
8   [♂1] 海パン、海兄弟
10   [♂1] シバ、ワタル、カンナ(強)、キクコ(強)
10+128[♀1] カンナ(初)、キクコ(初)
11   [♂2] 山男、釣人、ジャグラー、遺跡マニア
13   [♂2] ジェントル

♪トレーナーあらわる(女の子編)
1    [♂2] ブリーダー、絵描き、お嬢様
1+128 [♀2] ミニスカート、大人姉、ビキニ、ジムリ女、アロマ
2   [♂1] ラブカプ、浮き輪女
2+128[♀1] キャンプ女
9   [♂2] 双子ちゃん

♪トレーナーあらわる(悪いヤツ編)
3   [♂2] 怪獣、理科系、泥棒、研究員
3+128 [♀2] きとうし
6   [♂1] サカキ、下っ端(男女) 、かんぶ(男女)

(RS/FR/EM)DirectSoundの同時発音数変更

バージョンアドレス変更前変更後
RS1AE965C5CX
FRLG1C1085C5CX
EM28E68DC5CX

DirectSoundの同時発音数が変更出来る。ただし、発音数を増やすと処理落ちする(EMはほぼ問題無し)。また、音割れの可能性がある。
CXのXには1~Cまでを入れる。逆に発音数を減らす事も可能。ただしD以上を入れるとフリーズするので注意。
ちなみに左側のCはDirectSound全体の音量。Fが最大だが、やはり音割れには注意。

(FR/EM)学習装置の入手経験値100%

変更前の仕様:経験値100入手の場合  戦闘ポケモン50入手、学習装置装備ポケモン50入手
変更後の仕様:経験値100入手の場合  戦闘ポケモン100入手、学習装置装備ポケモンも100入手

バージョンアドレス変更前変更後
FR0214064404
02142231 1C01 21
EM04A0FA4404
04A11631 1C01 21

タイトル画面でリセットされるまでのフレーム数

タイトル画面のフレーム数 0x783B4から4バイト(1秒60フレームね)
タイトル画面が表示される時間は45秒
タイトル画面のBGMを変更した場合、それより長いと再生されないのでフレーム数を増やしてあげれば解決
この前後の処理が分かれば、他のフレーム数で制御されてるあれこれも色々変えられるかも

タウンマップの未確認ダンジョンの文字の色

0x3B5DD8から2バイト(赤のままだと気になる人に)

個体値遺伝数増加

・遺伝数を5箇所に変更

アドレス変更前変更後
0450980A 1C 50 19 05 70 68 1C 00 06 05 0E 05 2D F802 3F 0A 1C 50 19 05 70 68 1C 05 1C 05 2D F9
0450CE68 1C03 E0
0450F00204
0450F848A8
0451D80204

・遺伝数を6箇所に変更

アドレス変更前変更後
04504661 18 FF 2008 1C 61 18
0450980A 1C 50 19 05 70 68 1C 00 06 05 0E 05 2D F802 3F 0A 1C 50 19 05 70 68 1C 05 1C 05 2D F9
0450F00205
0450F848A8
0451D80205

つよさをみるで表示されるポケモンの向き

0x21118Cから始まるポケモン能力設定の26byte目で設定
001:フシギダネ 0x2111C1
002:フシギソウ 0x2111DD
003:フシギバナ 0x2111F9
060:ニョロモ 0x211835
+80で左向き(反転しない)

第三世代で反転しないように設定されているポケモンは以下
ニョロモ/ニョロゾ/ニョロボン/キングラー/エレブー
アリゲイツ/ププリン/ニョロトノ/アンノーン/ニューラ/ヒメグマ/エレキッド
パッチール/ロゼリア/アブソル/ハブネーク/ザングース/デオキシス

ちなみにこの部分はRSE図鑑検索の色の設定にも使われている。
00:赤
01:青
02:黄色
03:緑
04:黒
05:茶色
06:紫
07:灰色
08:白
09:ピンク

余談だが、ダミー枠は全て04(黒)で設定されている
図鑑表示枠を拡張している人で気になる場合は変更すると良いだろう

(FR/EM)秘伝技上書き可能

・マップ上での解除

バージョンアドレス変更前変更後
FR1263F40100
EM1B69E40100

・戦闘中のレベルアップ時での解除

バージョンアドレス変更前変更後
FR024D59D0E0
EM04DE7DD0E0

EMでは進化直後の習得画面の位置は不明。
水中マップで「ダイビング」を忘れさせると浮上出来なくなるので注意。

(FR/EM)きのみデータ

きのみデータ
0x3A48DC(FR)
0x563150(EM)
名前7byte/硬さ1byte/大きさ2byte/個数上限1byte/個数下限1byte/説明文1行目オフセット4byte/2行目オフセット4byte/
成長時間1byte/辛さ1byte/渋さ1byte/甘さ1byte/苦さ1byte/酸っぱさ1byte/滑らかさ1byte/00固定1byte
合計28byte

バトルサーチャー再戦トレーナー強化条件

初戦再戦1の条件を満たさない場合
再戦1人ID0x0292(クチバシティのバトルサーチャー入手イベントでON)
再戦2人ID0x0896(タマムシシティ突入でON そらをとぶ解禁フラグ)
再戦3人ID0x0897(セキチクシティ突入でON そらをとぶ解禁フラグ)
再戦4人ID0x082C(殿堂入りでON パソコンでんどういり表示フラグ)
再戦5人ID0x0844(1のしまのネットワークマシン完成イベントでON RSE通信解禁+ハナダのどうくつ表示フラグ)

強化されるにはそれまでの条件を全て満たす必要がある。
例えば再戦3に強化されるには再戦3の条件の他に再戦1~2の条件も満たしている必要がある。
飛び級は不可能で戦うたびに一段階ずつ強化される。

・強化条件の人ID指定場所

再戦10x10D7B0
再戦20x10D7B8
再戦30x10D7C0
再戦40x10D7C8
再戦50x10D7E8

へんげのどうくつの出現ポケモン

フラグNo0x4024の値によってへんげのどうくつ(1.122)の出現パターンが変化する。
オフセットは通常の草むらの設定方法と同じ。
00:通常と同じ
01:メリープ 0x3909A4(0x390974)
02:クヌギダマ 0x3909DC(0x3909AC)
03:デルビル 0x390A14(0x3909E4)
04:ヒメグマ 0x390A4C(0x390A1C)
05:エイパム 0x390A84(0x390A54)
06:ツボツボ 0x390ABC(0x390A8C)
07:オドシシ 0x390AF4(0x390AC4)
08:ドーブル 0x390B2C(0x390AFC)
09~:通常と同じ

バッジ入手前に秘伝技使用可能

アドレス変更前変更後
124F9000 0E01 20

※手持ち画面からのみ
※かいりき岩などを直接調べても使えない

穴抜けのヒモで脱出した時の場所変更

C4 mm mm ww ++ 00 -- 00 02

全滅時の処理を無理やり切りタイトルに移動

アドレス変更前変更後
0C0F140A 4A00 DF

(FR/EM)通常バトルを強制勝ち抜きに

バージョンアドレス変更前変更後
FR011D7AC0 0F01 20
EM039CFCC0 0F01 20

設定を入れ替えにしていても勝ち抜き扱いになる

主人公性別固定

・女固定

アドレス変更前変更後
1307C9D0 00E0 01

・男固定

アドレス変更前変更後
1307D7E0 01D0 00

オープニングの性別選択がスキップされる

ダミー枠のアイコン個別設定

・ダミー枠(??)のアイコンの参照アドレスは39C098から25個。(入力は逆順で)

ここを別のアドレスに変更してやればアイコンエディタで編集しても全て同時に編集されずに済む。

・新しい参照先は絶対に偶数アドレスで設定すること。(重要)

(RS/FR)徘徊ポケモンの個体値を正常に設定

バージョンアドレス変更前変更後
FRLG04018621 78 1F 24 0A 1C21 68 69 60 20 E0
RS03AC1621 78 1F 24 0A 1C21 68 69 60 20 E0

日本語版サファイア・リーフグリーンで動作確認済み
サファイア素ROMの場合、RAMアドレス0x020285D8に個体値が、0x020285DCに性格値が格納されるが、
30ビット格納されたはずの個体値が戦闘時には下位8ビットしか読まれないため、低い値に固定されてしまう
(リーフグリーンのRAMアドレスはメモし忘れた、すまん)
しかし、上記の改変を施すことで、戦闘時にも30ビットきちんと読ませるようにすることができる
既に徘徊して(個体値・性格値が決定して)いても、捕獲前ならば上記改変で本来のランダムな個体値を設定できる

(RS/FR/EM)性格補正廃止

性格によるステータス補正が一切無くなります。

バージョンアドレス変更前変更後
RS03D0186E 2064 20
03D0205A 2064 20
FRLG042D946E 2064 20
042D9C5A 2064 20
EM06D3A86E 2064 20
06D3B05A 2064 20

08042d94 206e mov r0, #6e
08042d9c 205a mov r0, #5a
上の二つの命令の定数部分を#64に置き換えている訳です。

(RS/FR/EM)性格補正のオーバーフロー防止

バージョンアドレス変更前変更後
RS03D0186E 200B 20
03D0205A 2009 20
03D02864 210A 21
FRLG042D946E 200B 20
042D9C5A 2009 20
042DA464 210A 21
EM06D3A86E 200B 20
06D3B05A 2009 20
06D3B864 210A 21

性格補正で110を乗算した際、数値の上限である65535を超えてしまうが、「110→11」「90→9」「100→10」と変更することで回避できる。

(FR/EM)技マニア思い出し技上限拡張

バージョンアドレス備考
FR0x0433EC思い出しに表示される技数上限指定(0x17まで)
EM0x06DC64思い出しに表示される技数上限指定(0x1Aまで)
0x06DE20

EMの方が技数が多いが、1Bにすると28番目以降の技がおかしくなるので思い出せる技は23個(EMは27個)まで。

(FR/EM)フィールド上での毒ダメージ無効化

バージョンアドレス変更前変更後
FR0x0A191BD1E0
EM0x0F9FFFD1E0

毒状態でもフィールド上ではダメージを受けなくなる

・サファリ初期設定

0x0A21A6ボールの個数
0x0A21AC残り歩数(デフォ4倍)
0x0A21AE残り歩数の倍率(デフォ4倍) 1倍:12 00 2倍:52 00
0x06E69C最大歩数(デフォ4倍)
0x06E69E最大歩数の倍率(デフォ4倍) 1倍:09 00 2倍:49 00

タイトルデモとタイトル画面をスキップ

ロード画面から開始されるようになる

アドレス変更前変更後
0ED4F86D D7 0EE9 89 07
0ED4EE13 F7 29 F831 B4 00 47

オーキド研究所で貰える最初のポケモンのレベル設定

17D2A9:レベル
17D2AA:アイテム

教えテレビでお兄さんが出してくるポケモン

446E39からレベル(1バイト)、種族(2バイト)、技(2バイト×4)
種族を性別不明or性別♀固定のポケモンに変えるとフリーズ
性別♂で出現させないとフリーズする模様

オフセット指定場所は0x446F08~[16byte]から4つ読み込み。

【たたかいかたを おしえて】
おにいさんのコラッタ
0x446E39~
レベル1byte、ポケモン2byte、技8byte、不明5byte[16byte]

敵ポッポ
0x446E49~
レベル1byte、ポケモン2byte、技8byte、不明5byte[16byte]

【じょうたい いじょうを おしえて】
おにいさんのコラッタ(2)
0x446E69~
レベル1byte、ポケモン2byte、技8byte、不明5byte[16byte]

敵ナゾノクサ
0x446E79~
レベル1byte、ポケモン2byte、技8byte、不明5byte[16byte]

【タイプの あいしょうを おしえて】
おにいさんのニョロモ
0x446E99~
レベル1byte、ポケモン2byte、技8byte、不明5byte[16byte]

敵ナゾノクサ(2)
0x446EB9~
レベル1byte、ポケモン2byte、技8byte、不明5byte[16byte]

【ポケモンを つかまえたい】
おにいさんのバタフリー
0x446ED9~
レベル1byte、ポケモン2byte、技8byte、不明5byte[16byte]

敵プリン
0x446EE9~
レベル1byte、ポケモン2byte、技8byte、不明5byte[16byte]

タイトル上下の赤いバー(PUSH START BUTTON / (C)2004 GAMEFREAK.inc)を別の色のバーに変える

【タイトル画面の上のバーの色の書き換え方(PUSH START BUTTONと表示される部分)】
タイトル画面の上のバーをどんな色にしたいか決め、その色の 色コード を調べる。
StirlingでROMを開き、0x385CF2~0x385CF3にその色の色コードを入力。
同様に、0x385CF6~0x385CF7にもその色の色コードを入力。

【タイトル画面の下のバーの色の書き換え方(GAMEFREAK.incと表示される部分)】
タイトル画面の下のバーをどんな色にしたいか決め、その色の 色コード を調べる。
StirlingでROMを開き、0x385CF0~0x385CF1にその色の色コードを入力。
同様に、0x385CF4~0x385CF5にもその色の色コードを入力。

リザードンの緑色の背景を別の色の背景に変える

0x385CEEに「C8 52」とあるが、これが緑色の色コード。
ここを別の色コードに書き換えると、緑色の背景を赤やオレンジなど自分の好きな色に書き換えられる。

カラーコードについて

カラーコードは2バイト(16ビット)で指定されている。
16ビットの内訳は
1ビット目:必ず0
2〜6ビット目:B(5ビット)
7〜11ビット目:G(5ビット)
12〜16ビット目:R(5ビット)

各色5ビット(32段階)で指定されているので、標準的な各色8ビット指定のカラーコード(所謂24ビットカラー)ではRGBそれぞれの数値を8で割る必要がある(逆に言うと8の倍数でしか指定できない)

例えば上のリザードンの背景の色の説明で使われているカラーコード52C8(逆順ではC8 52)は24ビットカラーに直すと(R,G,B)=(64,176,160)となる

Advance Palette Editor内蔵のカラーピッカーを使うと楽に相互変換できるので便利
こちらのサイトも参考に→http://pokemonmon.blog41.fc2.com/blog-entry-50.html
#accordion(カラーコード変換手順,***,close){{C8 52
↓逆順を戻す
52C8
↓二進数にする
0101001011001000
↓1,5,5,5bitに区切る
0 10100 10110 01000
↓5bit部分を十進数に変換
20 22 8
↓それぞれ8倍
160 176 64(順にB,G,R)
↓RGBの順に並び替え
(R,G,B)=(64,176,160)

逆に辿ればRGB値からカラーコードが作れる。
}}

リザードンの後ろの火を別のものに変える

pokemon_imageでROMを開き、[LOAD]の横に0x386520と入力して[LOAD]をクリックし、[PALLOAD]の横に0x386500と入力して[PALLOAD]をクリック。
openbitmapで変えたい画像を開き、[LOAD]の横に空き領域のアドレスを入力して、SaveImageで保存。
StirlingでROMを開き、0x386920に格納されているオフセットを、さっき入力した空き領域のアドレスを逆順にして書き換える。

最初のポケモン入手イベントでライバルにポケモンを取らせない

17D31Aから4F~となっているので4F~を05 67 D3 7D 08 02と
書き換える。(自分がフシギダネを選ぶ場合)

アイテムデータ拡張

3A06F8にあるアイテムデータリストを任意の空き領域に移動。
必要な分だけ末尾にアイテムデータを追加する。
(追加の際は必ず一番最後に追加したアイテムのアイテムコードが偶数になるようにすること)
その後以下のリスト参照箇所を移動後のリストの位置を参照するように変更

1C8
9A2E4
9A308
9A32C
9A350
9A374
9A39C
9A3C0
9A3E4
9A408
9A42C
9A454
9A478
9A4A0
9A4C8

9A2B2:[BB]をアイテム総数/2の値に変更。
アイテム総数は偶数にしないと/2した際に最後1個分の情報が抜けてしまうので注意。

ものひろいの設定

物拾い効果が生起する確率
(0x0802c698 の値)分の1

物拾いアイテムデータベース(以降データベースをDBと略記する)
0x0820d250 から各 4byte づつ
[2byte:アイテムID][2byte:生起変数]

物拾いアイテム数を増やしたい
DBを空きメモリに移行後 0x0802c6bc にDB移行先の先頭アドレスを記入
0x0802c6c4 に(DBのレコード数 - 1)を書き込む

物拾い効果生起時の各アイテムの拾得確率
分母:0x0802c6ce の値
分子:
 ・DBの先頭の場合:生起変数 - 1
 ・DBの末尾の場合:0x0802c6ce - 前項目の生起変数
 ・上記以外の場合 :生起変数 - 前項目の生起変数
と理解すればよい

タウンマップのページ配置を変更

マップ名ID~0x8Eはページ1固定で、マップ名ID0x8F~はページ2~4に割り振る事しかできないので注意
この範囲は0x0C1248で指定されている

0x3B862Cページ2
0x3B864Aページ3
0x3B8668ページ4

1ページにつき30箇所まで設定可能
マップ名IDを並べて書き、最後は必ず0xC5にする

石室で出現するアンノーンの形状設定

0x391598イレスのせきしつ
0x3915A4ナザンのせきしつ
0x3915B0ユゴのせきしつ
0x3915BCアレボカのせきしつ
0x3915C8コトーのせきしつ
0x3915D4アヌザのせきしつ
0x3915E0オリフのせきしつ

1マップにつき12byteでAMの出現ポケモンのPokemon1~12と連動している
値は00がAで以降アルファベット順

00アンノーン(A)
1Aアンノーン(!)
1Bアンノーン(?)
1C~エンカウント時にフリーズ

アンノーンを石室以外で出現させてもフリーズしないようにする

アドレス変更前変更後
0x825FCC9 2C 13 D000 00 00 00

形状はランダム、石室でもランダムになってしまう点は注意

敗北してもイベント続行するトレーナー戦スクリプト

●プログラムの導入方法

  1. 以下のアセンブリを任意の空き領域に挿入する
    03 28 07 D0 09 28 03 D1 00 F0 16 F8 0B 4B 18 47
    0B 4B 18 47 04 48 00 88 03 28 F9 D1 03 49 04 48
    88 60 04 4B 18 47 00 00 E4 85 03 02 30 31 00 03
    79 13 16 08 B3 FB 07 08 02 4B 18 47 9D FB 07 08
    AD FB 07 08 F9 FA 07 08
  2. 0x07FB94から以下のように書き換える
    00 4B 18 47 XX XX XX XX
    XX XX XX XXには先程挿入したアセンブリのアドレス+1を指定する

●使用方法

  • 以下のトレーナー戦スクリプトで発動
    5C 03 TT TT 03 00 @@ @@ @@ @@
  • 敗北/引き分けになってもポケモンセンターに強制送還されずにその場でイベントが続行される
  • 敗北時に賞金を支払ったというメッセージが表示されるが実際には減っていない(SpecialC8実行時に減る)
  • 戦闘終了後0x800Dに戦闘結果を返す(0x01=勝利/0x02=敗北/0x03=引き分け)

情報元:改造ポケモン研究者たちの掲示板(閉鎖)
スクリプト解析チームスレッド>>19-21のはるきち氏の書き込み

名前入力画面に文字を追加する

円/./×/選択カーソル/:/Ä/Ö/Ü/ä/ö/üの文字は戦闘時用フォントに入っていてポケモン名に使用できるにも関わらず
文字入力画面に入っていないためニックネームに使用する事が出来ないが
0x3DF8DA~0x3DF929が「カナ」、0x3DF92A~0x3DF979が「かな」、0x3DF97A~0x3DF9C9が「ABC」のページの文字列で
ここの文字を編集すれば文字入力画面で入力できるようになる
使用されてないラテン文字を書き換えればポケモン名に使用できる文字を追加する事が可能

天候一覧

コード天候戦闘時補足
00無し-天候無し屋内用
01-水面に雲が反射する
02通常-天候無し屋外用
03
04雪(未使用)-
05雷雨雨+雷
06-左に流れる霧
07火山灰-技・特性関連パッチを適用した場合、天候は霰になる
08砂嵐砂嵐
09霧2(未使用)-左下に流れる霧
画像が他の霧と異なる
0A薄い霧(未使用)-左に流れる薄い霧
水中の泡無しバージョン
0B曇り-薄暗い
0C日照り晴れグラードンの日照り
FRで使用するとフリーズする
0D大雨カイオーガの大雨
大雨+雷
0E水中-左に流れる薄い霧+泡
0F大雨&日照り雨/晴れ大雨→日照りのループ
Em専用

日照りでフリーズする問題は、とあるパッチを適用することで回避可能

主人公のデフォルトネーム

アドレス使用場所
0x1A9E60男女共通1(レッド)
0x1A9E70男女共通2(ファイア)
0x1A9E90男専用17種類
0x1A9F18女専用17種類

0x1A9E68の「リーフ」はLG専用なのでFRでは使用されていない

ライバルのデフォルトネーム

アドレス使用場所
0x1A9E58選択肢1(グリーン)
0x1A9E78選択肢2(シゲル)
0x1A9E80選択肢3(ツネカズ)
0x1A9E88選択肢4(サトル)

図鑑索引からカントー図鑑の項目を削除

全国図鑑画面を表示する処理をカット

アドレス変更前変更後
0x103A2200 D194 E0

見つけた数を全国図鑑のものに変更

アドレス変更前変更後
0x103B94666A

捕まえた数を全国図鑑のものに変更

アドレス変更前変更後
0x103BC0686C

「ばんごうじゅん」の項目選択時に表示するリストを全国図鑑のものに変更

アドレス変更前変更後
0x410DE0090E

カーソル挙動をカントー図鑑と同じに変更

アドレス変更前変更後
0x410F540B0A

手持ちリスト画面表示位置指定箇所

0x419658ポケモン1匹目名前
0x41965Cポケモン1匹目レベル
0x419660ポケモン1匹目性別
0x419664ポケモン1匹目現在HP
0x419668ポケモン1匹目/と最大HP
0x41966Cポケモン1匹目HPバーの緑の部分
0x41969Aポケモン1匹目モンスターボールマーク
0x419678ポケモン2~6匹目名前
0x41967Cポケモン2~6匹目レベル
0x419680ポケモン2~6匹目性別
0x419684ポケモン2~6匹目現在HP
0x419688ポケモン2~6匹目/と最大HP
0x41968Cポケモン2~6匹目HPバーの緑の部分
0x419694ポケモン1匹目アイコン
0x419696ポケモン1匹目持ち物マーク
0x41969Aポケモン1匹目モンスターボールマーク
0x41969Cポケモン2匹目アイコン
0x41969Eポケモン2匹目持ち物マーク
0x4196A2ポケモン2匹目モンスターボールマーク
0x4196A4ポケモン3匹目アイコン
0x4196A6ポケモン3匹目持ち物マーク
0x4196AAポケモン3匹目モンスターボールマーク
0x4196ACポケモン4匹目アイコン
0x4196AEポケモン4匹目持ち物マーク
0x4196B2ポケモン4匹目モンスターボールマーク
0x4196B4ポケモン5匹目アイコン
0x4196B6ポケモン5匹目持ち物マーク
0x4196BAポケモン5匹目モンスターボールマーク
0x4196BCポケモン6匹目アイコン
0x4196BEポケモン6匹目持ち物マーク
0x4196C2ポケモン6匹目モンスターボールマーク

図鑑画面文字表示指定箇所

「いろんなばしょにいるポケモン」画面

0x105BA0図鑑番号フォント指定
0x105BA4図鑑番号X座標
0x105BBEポケモン名Y座標
0x105BC4ポケモン名フォント指定
0x105BC6ポケモン名X座標
0x105BEC捕獲ポケモンボールマークX座標
0x105BF0捕獲ポケモンボールマークY座標

分布画面

0x106F86図鑑番号フォント指定
0x106F8A図鑑番号X座標
0x106FA0ポケモン名Y座標
0x106FA6ポケモン名フォント指定
0x106FA8ポケモン名X座標

ポケモンボックス表示指定箇所

ポケモンを連れて行く/預ける/整理する画面

0x08EDF2ポケモン画像X座標
0x08EDF4ポケモン画像Y座標
0x08EEF4文字Y座標(全項目共通)
0x08EF08ニックネーム、ポケモン名X座標
0x08EF0E性別、レベルX座標
0x08EF20ニックネーム~レベルフォント
0x08EF4E所持道具名フォント
0x08EF50所持道具名X座標

道具を整理する画面

0x08EF68所持道具名フォント
0x08EF7Cニックネーム~レベルY座標
0x08EF8Cニックネーム、ポケモン名X座標
0x08EF92性別、レベルX座標
0x08EFA2ニックネーム~レベルフォント

戦闘後のファンファーレについて

0x014F4Cから32byteで戦闘後に流れる音楽が指定されている

0x014F28ファンファーレを設定するトレーナーの数
0x014f26ファンファーレを設定する最初のトレーナーID

※14F6Cがジム戦闘後の音楽

冒頭の操作方法説明・冒険の説明省略(FR)

アドレス変更前変更後
0x12F3A8A5 F5 12 08EE F5 12 08
0x12F5301E 30B4 E0
0x12F53321 02 22 40 F7 2B FB AF E000 00 00 00 00 00 00 00 00
0x12F55A05 499F E0
0x12F55D93 01 2000 00 00
0x12F56122 C8 F7 B5 F9 99 E000 00 00 00 00 00 00
0x12F570FC 28 42 0800 00 00 00
0x12F5A2~0x12F5ED省略すべて0x00
0x12F5F8~0x12F615省略すべて0x00
0x12F6240F D0 00 00 02 D0 00 00 0E D0 00 0000 00 00 00 00 00 00 00 00 00 00 00
0x12F638~0x12F649省略すべて0x00
0x12F66609 48 42 F7 EC F900 00 00 00 00 00
0x12F68C43 0100 00
0x12F694BD F8 12 08D5 FF 12 08

わざマシンケース内のディスクのパレット追加(FR)

0x13409aに0x88+追加したいパレット数*8の値を書き込む
ドラゴンタイプのパレットを格納している0xD85074の圧縮データにパレットを追加
空き領域に圧縮書き込みして0x1340E8のポインタで参照させる
0x4255C4にタイプIDとパレットIDの対応テーブルがあるので既存タイプの設定内容を参考に新規パレットの参照設定をする
新規タイプに既存の???タイプを使用していない場合は空き領域にテーブルを移動、0x133F74のポインタで参照させる

タイトル画面の赤ロゴ画像サイズ64*64化(FR)

アドレス変更前変更後
0x3868B98000
0x3869350408

タイトル画面の赤ロゴ表示指定箇所(FR)

0x079184赤ロゴX座標
0x079186赤ロゴY座標

サウンドテストのBGM表示数上限

バージョンアドレス備考
EM0x0E880A1byte設定
0x0E883C上記から-1した値を入れる

255が上限に見えるが、実際は2byte目の[20]を[21]とすることで上限が消滅する。BGMテーブルを拡張している方向け。
ちなみに、技拡張した際のID511以降の技名が正しく表示されない問題もこの方法で解決可能

ポイントアップバグ修正(FR)

アドレス変更前変更後
0x13995252 180A 43
0x139A90(素ROM用)52 180A 43
0x139A84(ボックス拡張ROM用)52 180A 43

スプレーのレベル判定に瀕死のポケモンを含める

バージョンアドレス変更前変更後
FR0x82D1620 1C 39 21 BC F7 1B FB 00 28 14 D000 00 00 00 00 00 00 00 00 00 00 00
EM0xB504220 1C 39 21 B5 F7 07 F8 00 28 14 D000 00 00 00 00 00 00 00 00 00 00 00

努力値上限を252にする(FR/EM)

バージョンアドレス変更前変更後
FR0x430B8FFFC
0x430BEFFFC
EM0x6D6DCFFFC
0x6D6E2FFFC

えいようドリンクの使用上限撤廃(FR/EM)

バージョンアドレス変更前変更後
FR0x411FE63FB
0x4120E64FC
0x4121264FC
0x417C863FB
0x417D864FC
0x417DC64FC
0x418FE63FB
0x4201463FB
0x421D063FB
EM0x6BF2C63FB
0x6BF3464FC
0x6BF3A64FC
0x6C51863FB
0x6C52064FC
0x6C52664FC
0x6C66063FB
0x6C6CE63FB
0x6D46863FB

スペースの幅を変更(FR)

アドレス変更後
0x6374通常フォント用
0x64D8男性フォント用
0x659C女性フォント用

タイトル画面のきのみ問題コマンド判定削除(FR)

アドレス変更後
0x787DA11 E0

へんしんの白化削除(FR)

アドレス変更後
0x33BC800 00 00 00
0x3456C00 00 00 00
0x3477800 00 00 00

※ただし バッグやポケモンなど画面を変えると白に戻る

特定メモリの値が0以外の場合足跡を表示しないようにする(FR)

アドレス変更後
0x675e830 B5 04 1C 0D 1C 07 48 00 78 00 28 08 D1 E0 7F F1 F7 0E FF 00 28 03 D0 28 68 80 21 08 43 28 60 30 BD 00 00 XX XX XX XX

末尾の[XX XX XX XX]でメモリアドレスを指定

字間を狭くする(FR)

アドレス変更後
0xF7D5C00
0x3E310600

64KBセーブ対応(FR)

アドレス変更後
0xBF9200 F0 69 FD
0xC02000 00 00 00
0xC07600 00 00 00
0xC08600 00 00 00
0xC09200 00 00 00
0x1C2D1A00 00

あらすじ抹消/あらすじ用メモリ解放(FR)

アドレス変更後
0x111AA000 0C 0F E0
0x112F9870 47
0x11407470 47

セーブエリアのバックアップ領域削除(FR)

アドレス変更後
0xDA88200
0xDAB6200
0xDACFA00
0xDAD9200
0xDAE4800

mallocで確保可能なメモリサイズ変更(FR)

アドレス変更後
0x2B8000 B5 04 4A 10 60 04 49 51 60 FF F7 DD FE 01 BC 00 47 00 00 38 0A 00 03 XX XX XX XX

末尾の[XX XX XX XX]で確保可能なメモリサイズを指定(デフォルト0x1C000)

フライトポジション表示停止(FR)

アドレス変更後
0xC56F070 47

トレーナーメモ表示文字数拡張(FR)

アドレス変更後
0x137D36A4 B0
0x137EC824 B0
0x137EE2A4 B0
0x1380E824 B0

ダンジョン説明文表示高速化(FR)

アドレス変更後
0xC2E4C00
0xC2E9601
0xC2F0800

一枚絵のパレットをセピアから通常のものにする

0xC2E9600

ウィンドウのタイプ拡張(FR)

アドレス変更後
0x6904E00 00
0x39318Aタイプ数

0x393A90からのテーブルを移動して画像/パレット定義追加

ふしぎなもらいもの/ふしぎなおくりものからサウンドテスト呼び出し(FR)

アドレス変更後
0xC59801 FF 09 08
0xC5B801 FF 09 08

ヘルプ削除(FR)

アドレス変更後
0x51A00 00 00 00

通信対戦時のBGM変更(FR)

仕様上、通信対戦時に再生されるBGMは2種類の内からマスター側のIDによって決定される
マスター側のIDが偶数であった場合はBGM1、奇数であった場合はBGM2が選択される

指定方法の仕様上BGM2は偶数ミュージックナンバーしか指定できないので注意

アドレス変更後
0x80AB0流したいBGM1のID
0x80C70流したいBGM1のID
0x80AB4流したいBGM2のID/2
0x80C74流したいBGM2のID/2

BGM1に固定する

アドレス変更後
0x80AA200 00
0x80C6000 00

デフォルト文字色変更(FR)

アドレス変更後
0xF7DF2男OWの文字色
0xF7DF8男OWの影色
0xF7E22女OWの文字色
0xF7E28女OWの影色
0xF7E4A看板の文字色
0xF7E50看板の影色

バッジで言うことを聞くレベル変更(FR)

アドレス変更後
0x1CCA2バッジ無しで言うことを聞くレベル
0x1CCB02つ目のバッジで言うことを聞くレベル
0x1CCBE4つ目のバッジで言うことを聞くレベル
0x1CCCC6つ目のバッジで言うことを聞くレベル
0x1CD1C2つ目のバッジのフラグ指定
0x1CD204つ目のバッジのフラグ指定
0x1CD246つ目のバッジのフラグ指定

BGMトラック数拡張(FR)

アドレス変更後
0x467EE0トラック数*0x50byteの空きを持つメモリアドレスのポインタ
0x467EE4トラック数

EM版情報

コンテスト技効果テーブル

アドレスデフォルトの参照先バイナリ上
0xD7E200x565FCCCC 5F 56 08

拡張した技でコンテスト効果を見るとフリーズしてしまうが、空き領域に移動し拡張分を追加することで回避可能。
設定しないなら拡張分を「08 00 00 00 00 00 00 00」で埋めても構わない。
なお、そのままでは技名が「(コンテストタイプ) わざで アピール!」となり、技エフェクトも「はたく」のもにになってしまうので下記記載の部分も書き換える必要がある。

アドレス変更前変更後説明
0x0D8708B0FFコンテスト技名表示数上限
0x0DDF9EB0FFコンテスト技エフェクト表示数上限

技拡張時の技名を修正

アドレス変更前変更後
0x14EF62B0 20FF 21
0x14EF7AB0 20FF 21

(EM)ヌケニンにザロクの実を与えたときの挙動を正常にするor他のポケモンに移す

素ROMでは、ヌケニンにザロクの実を与えるとHPの努力値を下げられない旨のメッセージが出るが、実際にはHPの努力値は下がっている
さらに、なつき度が最大の場合、ザロクの実を減らすことなくHPの努力値を下げることができる
0x1B6608:[2F 01]
上記アドレスには以上の挙動を示すポケモンの種類コードが書かれているので、変更すると他のポケモンで以上の挙動を確認できる
実益はないので完璧主義者向け

(EM)ラティアス、ラティオスの指定

0x161ACC(0x197) ラティアス
0x161AD8と0x161ADA(0xCC ×2 =0x198) ラティオス
レベルは0x161AF6、0x161B02の二箇所

アドレス変更前変更後
0x0161D21D1D0

徘徊は通常通り行うが、それとは別に各地の草むらや海上にも出現するようになる。こちらは倒すか捕まえない限り何度でも遭遇出来るが、洞窟や建物内部、そして追加マップでは遭遇しない。

(EM)タウンマップで主人公が表示される座標

  • カントー地方のマップ名を指定した場合、タウンマップでは全て左上に表示されてしまうが、マップ名テーブル0x57CD6C~0x57D413(8byte)の先頭2byteで座標を指定している。
    [04 0B 01 01]でミシロタウン、[16 0C 01 01]でバトルフロンティアの場所になる
  • 後半4byteはマップ名のオフセット
    • また、「たんじょうのしま」「さいはてのことう」は例外処理が行われている。
アドレス1byte目2byte目3byte目4byte目5~8byte目
0x57CD6C~WWXXYYZZ(マップ名のアドレス)
  • WWは横、XXは縦
    YYとZZはそのマップでアイコンが移動する大きさ。大半は0101(移動無し)と設定されている。
    それぞれ1B、0Eまでなら正しく表示される

ただし、これだけではカーソル移動時にマップ名が消えてしまうので、AdvanceMap等で追加する必要がある。

(EM)エンディングでのポケモン表示数

アドレスデフォルト上限
0x1772B081 018D 01

増やすことでダミー枠も表示出来るようになるが、8E 01以上はフラグが立たなくなりフリーズしてしまう。逆に減らすことも可能。
0x0203B9B4から飛んだ先がポケモンリストとなっており、そちらを直接書き換えることで任意のポケモンを出せる。
411種類全て表示させることも可能だが、手動でメモリを1ヵ所書き換える必要があるので非推奨。

(EM)戦闘時アニメーション

戦闘時等のポケモン動作指定を大雑把に解析しました

1、画像切り替え

2種類の画像切り替えに関するオフセットアドレスは
0x2dd33c
で、1ポケモンあたりのデータは4byte。中身はアドレスなので
@@ @@ @@ 08
という形式で並んでます。

@@ @@ @@のアドレスに飛ぶと
C8 2D 2D 08 ** ** ** 08
のような形式になってます(ポワルンやその他例外あり)

さらに** ** **のアドレスへ飛ぶと
00 00 %% 00 01 00 ++ ・・・ FF FF 00 00
という部分があります。ここで2種類の画像切り替えをしています。

00 00 %% 00 :上画像を%%の長さだけ表示
01 00 ++ 00 :下画像を++の長さだけ表示
FF FF 00 00 :終了
(長さの単位は分かりません。フレームかな?)
のような感じ。正直 @@ @@ @@ のアドレスから先の仕様はもっと調査が必要

単純にポケモンの図鑑位置を入れ替えるだけなら
@@ @@ @@ のアドレスを入れ替えるとOK

2、動作開始タイミング指定
動作開始に遅延をかけるようなものです。

オフセットアドレスは
0x2fa50f
で、1ポケモンあたりのデータは1byteですが
ここは411匹分のデータしかありません。

内部的には
0x2fa50f + (ポケモンの番号 - 1)
として各ポケモンのアドレスを指定しています。

なのでこのデータの始まりは001のフシギダネから
411のチリーンまでとなります。

データとしては基本が 00 のようです
数字が大きくなるほど遅れて動作に入るようです。
(もしかすると単位は画像切り替え指定と同じかも)

3、動作指定
左右にゆれたり、ジャンプしたりする動作を指定します。

オフセットアドレスは
0x2fa374
で、1ポケモンあたりのデータは1byteですが
ここも開始タイミング指定と同様に
411匹分のデータしかありません。

データは色々試してみてください

00は小さくジャンプ (ダミー枠は全てこれ)
01:ぷるぷる動く(レジロック系)
02は左右にびにょーん (恐らくテッカニン)
03:左右に移動
04:上下に移動
05:左右飛び跳ねる(ルンパッパ系)
06:2回ジャンプ後、左右に1回ずつ跳ねる
07:左右45度ほど傾く
08:07の速度上昇版、傾く回数は増加している
09:威圧するようなモーション(ミュウツー等)
0A:上下左右に高速移動(レジアイス)
0B:20度ほど傾く
0C:0Bの高速版、傾く回数も増加している
0D:0Bと同じだが、画像上部を基準に回転する
0E:0Dの高速版、傾く回数も増加している
0F:左右に高速移動
10:上下に高速移動
11:影分身しながら回転移動(画像の角度はそのまま)
12:基本的に0Cと0Eと同じ、画像を回転させる位置が中央になっている
13:こちらに飛び出す勢いで拡大縮小する
14:11と同じだが、影が無く速度も速い
15:画像暗転→フェードイン(ヤミラミ)
16:横に少し伸びる
17:上に少し伸びる
18:ふわふわ浮遊する
19:上下に揺れる、時間差でもう一度揺れる
1A:少し傾けて移動する
1B:07と動作は同じ。基準位置が左になっている
1C:左右に傾きながら下降→上昇する
1D:左右に傾きながら左右移動
1E:小刻みにジャンプ
1F:画像が大回転
20:橙色になる
21:赤くなる
22:青くなる
23:黄色になる
24:毒の色(紫)になる
25:傾きながら突進?
26:斜め移動→回転して元の位置へ
27:点滅する
28:斜めに移動→回転しながら元の位置へ
29:回転しながら斜め移動
2A:回転&上下左右に移動
2B:左右に大きめに移動、画像の向きも変わる
2C:黄色に点滅(サンダー?)
2D:0Cと同じ?(相違点見つからず)
2E:0Dの高速版
2F:何かを踏む動作
30:00の動作が大きくなったもの
31:左右に小刻みにジャンプ
32:00に左右移動が追加されている
33:07の角度が大きくなったもの
34:高速で左右に傾く、角度の基準は左右で変わる(ハリテヤマ)
35:消滅するように点滅する
36:大きく傾き、つまづくような動作
37:高速で2回傾く
38:傾いた後、震える
39:4体に分身、分身の角度は45度
3A:巨大化→元に戻る(ルギア)
3B:上に跳ねるが、画像も変形する
3C:下に跳ねるが、画像も変形する
3D:画像を縮ませながら上昇
3E:画像の幅を縮ませながら左右移動
3F:3Eの動作が大きくなったもの
40:縮小しながら左右移動
41:ドードリオ
42:立体的な動作をする(左右移動)
43:小刻みに跳ねながら左右移動
44:レジアイスの動作
45:00を鈍化させたもの
46:左右にゆっくり移動
47:上下にゆっくり移動
48:左右に跳ねる
49:左右に大きく跳ねる
4A:49と同じ?
4B:Zを描くように移動
4C:左右に大きめに震える
4D:小刻みにジャンプ
4E:画像中央を基準に左右回転
4F:下に円弧を描くように移動

4Fまで確認しましたが、50以降も存在する様です。

ちなみに、背面アニメーションもほぼ同じ方法で指定しますが、1A以降を指定すると正面アニメと同じ挙動になります。

説明が分かり難かったかもしれませんが
1,画像切り替え
2,動作開始タイミング
3,動作指定
以上、3点を変更することで位置の変わった
バタフリー等の戦闘時動作を元通りにすることが出来ます。

  • 背面アニメーションは以下の通り
    基準アドレスは0x5D3328
    性格によって移動速度・回数、移動遅延時間が異なる
    ID動作
    0x00左右に影分身
    0x01
    0x02左右に移動
    0x03左右に移動(横のサイズが変わる)
    0x0403の高速版
    0x05拡大縮小
    0x06拡大のみ(正面3Aとほぼ同じ)
    0x07時計周りに移動
    0x08左右に振動
    0x09上下に振動
    0x0A左右かつ上下に振動
    0x0B縦に伸びる
    0x0C横に伸びる
    0x0D06の短縮版
    0x0E2回下に振動
    0x0F三角に移動
    0x1002に曲線移動が追加
    0x11左右に波打つように移動
    0x1210の動作縮小版
    0x13右に傾く
    0x1405の鈍足版
    0x15左→右へ移動
    0x16黄色に点滅+振動
    0x17赤色を纏い、左右移動
    0x18緑色を纏い、左右移動
    0x19青色を纏い、左右移動
    0x1A以降正面スプライトと同じ動作
    フリーズする

(EM)戦闘時アニメーション削除

※Chaos Rush氏によるハックを移植
0x1806B8以降を以下のように書き換える

10 B5 02 48 E0 61 10 BC 01 BC 00 47 C1 05 18 08

0x2FA374~0x2FA50F(412byte分)が正面スプライトのアニメーションテーブル
これを全て"00"に置換する
※ポケモンを拡張した場合はこのテーブルを空き領域に移し、必要分だけ"00"を追加すれば良い
0x2DC550以降を以下のように書き換える

C8 2D 2D 08

0x2DD33C~0x2DD9AB(1648byte分)がフレームコントロールテーブル
テーブル参照先を全て"4C C5 2D 08"に置き換える
※ポケモンを拡張した場合はこのテーブルを空き領域に移し、必要分だけ"4C C5 2D 08"を追加すれば良い
0x6E8C4以降を以下のように書き換える

00 00

0x6E760を"01"に書き換える
0x5D3328~0x5D34C3(412byte分)が背面スプライトのアニメーションテーブル
これを全て"00"に置換する
※ポケモンを拡張した場合はこのテーブルを空き領域に移し、必要分だけ"00"を追加すれば良い
0x5D3744~0x5D378E(75byte分)を全て"00"に置換する
(全部置き換える必要はなさそう?)
※ここはポケモンを拡張してもテーブルを移す必要はない

以上で完了

(EM)タイトル画面の音楽

0xAA3BC(タイトル画面の音楽)
音楽が最後まで再生されるとリセットされ、GAME FREAKの画面に戻る

(EM)オープニングイベントの音楽

0x0305B2(ミュージックナンバー×2)

(EM)オープニングで博士が出してくるポケモン

0x031664(画像)
0x03084C(鳴き声)
いずれもポケモンコードで指定

(EM)博士の画像

IO:0x52E73C
PO:0x5355FC
Pokemon_imageじゃ読み込めないから注意

(EM)大量発生

0x568B40からポケモンコード(2byte)、技1(2byte)、技2(2byte)、技3(2byte)、技4(2byte)、レベル(1byte)、マップ名ID(1byte)が設定されている
マップ名IDが設定されているけど、テレビニュースでの表示用で実際に大量発生になるマップは別に設定されているかも?未確認

0x568B40タネボー(がまん/かたくなる/やどりぎのタネ/-/Lv3/102ばんどうろ)
0x568B4Cコノハナ(かたくなる/せいちょう/しぜんのちから/やどりぎのタネ/Lv15/114ばんどうろ)
0x568B58タネボー(かたくなる/せいちょう/しぜんのちから/やどりぎのタネ/Lv13/117ばんどうろ)
0x568B64タネボー(ギガドレイン/やつあたり/ソーラービーム/やどりぎのタネ/Lv25/120ばんどうろ)
0x568B70エネコ(なきごえ/たいあたり/しっぽをふる/メロメロ/Lv8/116ばんどうろ)

(EM)チケット系入手

246842 →無限のチケット
5FD21C→神秘のチケット
5FD0D4→オーロラチケット
5FD3FF→古びた海図

各アイテム入手とフラグ立て

(EM)各種つりざお使用時の「・」のアドレス

アドレスデフォルトの値
0x08C3C0C8 F9 46 08

必ず1byteにすること

(EM)レポートの選択を1回に

アドレス変更前変更後
0x09FA6CD3 6F 27 0897 6F 27 08
0x09FA708D FA 09 0825 FB 09 08
0x09FA8477 6F 27 0897 6F 27 08
0x09FA88A9 FA 09 0825 FB 09 08

レポートを書く際、2回「はい」を選択しなければならないが、これを1回に短縮する。

(EM)レポート選択で即セーブ開始

アドレス変更前変更後
0x09F9BC58 6F 27 0897 6F 27 08
0x09F9C0C5 F9 09 0825 FB 09 08

メニューからレポートを選択した瞬間にセーブが開始される。
バトルフロンティアや通信では問答無用でセーブされてしまう点に注意。

トレーナー戦勝利時のBGM

0x03D5E8からテーブルが設定されており、割り当てを変えることで勝利BGMの変更が可能。

アドレス説明備考
0x03D6B4チャンピオン/四天王BGM IDをそのまま入力
0x03D6C0アクア団・マグマ団BGM ID/2
0x03D6CAジムリーダー
0x03D6D4一般トレーナー

テーブルを空き領域に移行させることで勝利BGMが拡張出来るが、追加分はASMの内部割り当てを調整する必要がある。