白銀のライねる

解析とかのメモとかをなんとか

【空の探検隊】monster.mdの解説

「/BALANCE」フォルダ内にある「monster.md」について解説。

monster.md

ポケモンの各パラメータが設定されているファイル。1155匹分のデータが用意されている。
4世代までのポケモン493種類に対してやたら多く見えるが、フォルムチェンジ全種類分、オス個体、メス個体、没データ、イベント用NPC等を含めて1155になる。



mdファイルのヘッダーの長さはわずか8バイトと非常に短い。マジックナンバーとデータの個数が書かれている。

アドレス データ型 備考
0x0~0x3 マジックナンバー"MD" {0x4D, 0x44, 0x00, 0x00}
0x4~0x7 Int32 データ個数

特に改変とかしていない場合、個数は0x483 = "1155"となっているはず。

0x8以降は68バイトのデータ配列がデータ個数分羅列されている。

アドレス データ型 備考
0x00~0x01 Int16 エンティティID
殆どは全国図鑑NOと同じ値
0x02~0x03 Int16 不明? 同じ進化系のポケモンは同じ値を持っている
0x04~0x05 Int16 全国図鑑NO
チリーン編成所のポケモンリストや上画面に表示される値
0x06~0x07 Int16 不明? 1で固定
0x08~0x09 Int16 進化前ポケモンのIndex
エンティティIDや全国図鑑NOとは異なり、「monster.md」内のデータのIndexを直接指定している。0の場合は無効
0x0A~0x0B Int16 進化前ポケモンからこのポケモンへの進化方法のID
0x0C~0x0D Int16 進化方法のパラメータその1
0x0E~0x0F Int16 進化方法のパラメータその2
0x10~0x11 Int16 スプライトID
「/DUNGEON」フォルダ内のスプライトデータの参照に使用する
0x12 byte 性別ID(0=無効, 1=オス, 2=メス, 3=不明)
0x13 byte からだのおおきさ
基本的には1~4だが、0や5も有効(未使用)。
0x14 byte 1つ目のタイプID
0x15 byte 2つ目のタイプID
0x16 byte 移動タイプ(0=通常, 1=(不明), 2=空中, 3=(不明), 4=溶岩, 5=水上)
0x17 byte かしこさグループ
0x18 byte 1つ目の特性ID
0x19 byte 2つ目の特性ID
0x1A~0x1B Int16 ビットフラグ
15~8ビット目…未使用(常に0)
7ビット目…伝説ポケモンフラグ(なぞのパーツ系に使われる)
6ビット目…進化可能フラグ(ステータス画面の「しんか できる」に使われる)
5ビット目…不明? せきぞう(0x22A, 0x482)のみ1に設定されている
4ビット目…移動可能フラグ(コクーン等移動できないポケモンは0)
3~0ビット目…未使用(常に0)
0x1C~0x1D Int16 基礎経験値
0x1E~0x1F Int16 仲間になる確率
こちらの値は未使用?
0x20~0x21 Int16 Lv1時のHP
0x22~0x23 Int16 仲間になる確率
0x24 byte Lv1時のこうげき
0x25 byte Lv1時のとくこう
0x26 byte Lv1時のぼうぎょ
0x27 byte Lv1時のとくぼう
0x28~0x29 Int16 重さ値
くさむすび等重さに関連する技使用時に参照される隠しステータス。
0x2A~0x2B int16 高さ値
ひれいだま使用時に参照される隠しステータス。
0x2C byte 不明? 常に0xA
0x2D byte 不明? 常に0xA
0x2E byte 不明? 0~2が設定されている
0x2F byte 不明? ビットフラグっぽく見える
0x30~0x31 Int16 不明? 常に100なので最大レベル?
0x32~0x33 Int16 ポケモンの進化元やフォルムチェンジ元となるベースのID
値は常に0~600の範囲に収まる
0x34~0x35 Int16 1つ目の★専用道具ID
0x36~0x37 Int16 2つ目の★専用道具ID
0x38~0x39 Int16 ★★専用道具ID
0x3A~0x3B Int16 ★★★専用道具ID
0x3C~0x3D Int16 不明? 750(0x2EE), 800(0x320)の値
0x3E~0x3F Int16 不明? 15(0x0F), 21(0x15)の値
0x40~0x41 Int16 不明? 27(0x1B), 28(0x1C), 30(0x1E)の値
0x42~0x43 Int16 不明? 10(0x0A), 27(0x1B), 28(0x1C)の値

タイプ

タイプID タイプ 備考
0x00 なし しんくうぎり、すいへいぎり、その他没技に使用
0x01 ノーマル
0x02 ほのお
0x03 みず
0x04 くさ
0x05 でんき
0x06 こおり
0x07 かくとう
0x08 どく
0x09 じめん
0x0A ひこう
0x0B エスパー
0x0C むし
0x0D いわ
0x0E ゴースト
0x0F ドラゴン
0x10 あく
0x11 はがね
0x12 むぞくせい 未使用

かしこさグループ

グループID グループ
0x0 A
0x1 B
0x2 C
0x3 D
0x4 E
0x5 F
0x6 G
0x7 H
0x8 未使用
0x9 未使用
0xA I
0xB J
0xC 未使用
0xD 未使用
0xE 未使用
0xF 無効

特性

以下記事参照
lainel.hatenablog.com

進化方法

ID 進化方法 パラメータ1 パラメータ2
0x0 なし
0x1 レベル 必要レベル (後述)
0x2 かしこさ 必要かしこさ値 (後述)
0x3 道具 道具ID (後述)
0x4 仲間にテッポウオがいる
(マンタイン用)
常に4 常に4
0x5 つうしんケーブル 常に1


パラメータ2が1以上の場合、更に以下の条件が追加される。

パラメータ2 条件 備考
0x1 「つうしんケーブル」を所持
0x2 攻撃>防御 サワムラー
0x3 防御>攻撃 エビワラー
0x4 攻撃=防御 カポエラー
0x5 「たいようのリボン」を所持
0x6 「げっこうのリボン」を所持
0x7 「うつくしスカーフ」を所持
0x8 ランダム1 カラサリス
0x9 ランダム2 マユルド
0xA ♂である ガーメイルエルレイド用
0xB ♀である ビークインミノマダムユキメノコ
0xC 「げんしのちから」を習得 モジャンボメガヤンマ
0xD 「ころがる」を習得 べロベルト用
0xE 「ダブルアタック」を習得 エテボース
0xF 「ものまね」を習得 マネネウソハチ