マイトアンドマジック (FC) 攻略/解析 - データ構造

マップメタデータ構造体

マップメタデータ構造体は 0x4E バイトで、PRG 28 内に格納されている。

ゲーム中は現在のマップのメタデータからマップ名を除いた部分が $6180-$61BF にロードされる。これはイベントにより動的に書き換わる場合もある。

マップメタデータ構造体の内容は以下の通り:

offset内容
0x00u8[14]マップ名 (0xFF 終端)
0x0Eu8僧ML4「浮上」が成功した際のテレポート先マップID
0x0Fu8エンカウント時の敵軍先制率 (%) + 1
0x10u8エンカウント時の自軍先制率 (%) + 1
0x11u8戦闘前フェイズの「にげる」失敗時に追加の成功判定を行う確率
実質未使用: 詳細
0x12u8初期座標x
0x13u8初期座標y
0x14u8戦闘前フェイズの「こうさん」第 1 判定失敗率 (%) + 1
0x15u8降参ワープ先座標x
0x16u8降参ワープ先座標y
0x17u8戦闘前フェイズの「おくりもの」->「FOOD」成功率 (%) + 1
0x18u8休息を試みた際の夜襲発生率の分母 (分子は 1)
0 の場合は夜襲が発生しない(が、そのようなマップはない)
0x19u8TODO
0x1Au8TODO
0x1Bu8TODO
0x1Cu8[3]境界の値 1..=3 それぞれの種類 (0:壁, 1:扉, 2:森/沼, 3:山, 4:海, 5:砂漠)
(見た目には影響しない)
0x1Fu8徘徊エンカウント発生率の分母 (分子は 1)
0 の場合は徘徊エンカウントが発生しない (アストラル世界のみ該当)
0x20u8ランダム敵のモンスターランク上限
0x21u8ランダム敵のモンスターランク下限
0x22u8エンカウント時の敵の個体数の最大値
0x23u8バーン内エリア列 (文字 'A'..='E' がそのまま入っている)
0x24u8バーン内エリア行 (文字 '1'..='4' がそのまま入っている)
0x25u8マップ種別 (0:地上, 0xFD:城, 0xFE:町, 0xFF:未知の世界, 1..:ダンジョン地下n階)
0x26u8バーンエリア内座標x
0x27u8バーンエリア内座標y
0x28u8TODO
0x29u8[4]TODO
0x2DTODO
0x2Eu8[4*4]BGパレット
0x3Eu8[4*2]スプライトパレット 0, 1
0x46TODO
TODO
0x4Au8マップデータ (0x200 バイト) を格納している PRG バンクID
0x4Bu8マップデータ (0x200 バイト) のバンク内インデックス
0x4CTODO
0x4DTODO