改造入門 −第0章− ←続くのか( ̄□ ̄;)!?


 第0章 【コードの仕組み】
 第1章 【コードの仕組み LV2】
 番外編 【好みの数値に変更する方法】


 こちらではGB用コードの仕組みや改造の方法を紹介していこうと思います。
 ただし、解釈の仕方は人それぞれなので、これが正しいわけではありません。
 不明な点やご要望(取り上げて欲しいこと)などありましたらお気軽にどうぞ。
 管理人がわかる範囲でしたらお答えします。

 1.16進数

 日常で使う数字は0〜9の組み合わせで構成されています。
 9の次は位が上がって10。そして11、12・・・・・と続いていきます。
 このように10を基準に位を上げていく計算法を10進法(進数)といい、
 これに対し0〜Fまでの16の数字で構成、計算していく方法を16進法(進数)といいます。

10進 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ・・・・・
16進 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 ・・・・・

 2.コードの仕組み

 GB用コードの場合、01xx0100などの数値で構成されていると思います。
 この数値には下記のような意味があります。・・・・・多分(^^;

 01 改造コードの先頭でコードの種類を表しています。GBの場合、基本的には01です。
 xx 改造したい数字で一般に16進数で表します。
例えばRPGなどでキャラのLVを99にしたいときは、63(10進:99)を入力します。
 01 アドレスの最後尾です。
 00 アドレスの先頭です。

 3.アドレスとは?

 直訳で『住所や宛名』という意味ですが、その名の通り改造したい項目が存在する場所です。
 例えばRPGで主人公の攻撃力が0001だった場合、守備力は0002、素早さは0003と
 それぞれのゲームにおいてそのアドレスは決まっています。

 4.GB用コードのアドレス

 GB用コードにおけるアドレスは下4桁の数値です。
 ただしGBはアドレスの順序が逆になっていますのでご注意下さい。
 例えば0100と書かれていた場合、0001が本当のアドレスです。

 例:東京都品川区(実際の住所) → 品川区東京都(GB用PARの住所)

 5.+1h、+2hとは?

 コードを掲載しているページ中で、+1hとか+2hといった数値を見掛けると思いますが、
 これはアドレスに16進数の1や2を足して下さいという意味です。(+は足し算、hは16進数)
 【GB用コードは全8桁で表されていますが、具体的に言うと5、6桁目に足していきます】

 例えば01xx0100〜01xxFF00+1hと書かれていたら
 01xx0100
 01xx0200
 01xx0300
 ・・・・・(中略)・・・・・
 01xx0900
 01xx0A00 ← 16進数なので、09の次は0Aとなります。(0Fの次は10)
 ・・・・・(中略)・・・・・
 01xxFE00
 01xxFF00まで入力して下さい。

 6.+37hや+A5hなどの計算

 +1hは1ずつ増加するだけなので暗算でも計算できますが、
 +37hや+A5hともなると、さすがに複雑になりますので
 その時はWindowsの電卓など『関数を計算できる電卓』を使用するようにして下さい。

 例:Windows Meの場合
 『スタート』 → 『プログラム』 → 『アクセサリ』 → 『電卓』
 電卓が表示されたら『表示』メニューを開いて、『関数電卓』及び『16進』を選択します。

 

 それでは実際に01xx0100を+37h、+A5hしてみたいと思います。
 アドレスを計算するので01xxは省き、0100のみ着目します。

 ※計算する際は0001でお願いします(GB用コードはアドレスが逆)
電卓の結果
+37h +A5h
0001
0038
006F
00A6
00DD
114
00A6
14B
1F0
295
33A
GB用コードに代入
+37h +A5h
01xx0100
01xx3800
01xx6F00
01xxA600
01xxDD00
01xx14
01xxA600
01xx4B
01xxF0
01xx95
01xx3A