「逆コンパイル向け/解析情報/map_data」の編集履歴(バックアップ)一覧はこちら
追加された行は緑色になります。
削除された行は赤色になります。
map_data
*マップ関連
MAP情報を格納する配列の中に格納されている。
ワールドマップ上に存在するマップオブジェクトの一覧
adata.s1
dim adata, 40, 200 ~Version 1.16 reloaded fix 3(2009 Christmas Edition)
40要素 × 200オブジェクト分
dim adata, 40, 500 Version 1.17(開発版)~Version 1.22(開発版)
40要素 × 500オブジェクト分
|adata(00, マップNo)|マップタイプ|
|~ | 01:ワールドマップ|
|~ | ・ノースティリス|
|~ | 02:アクリ・テオラ、ラーナ、工房ミラル・ガロク、パルミア大使館|
|~ | 03:街|
|~ | ・ヴェルニース|
|~ | ・ヨウィン|
|~ | ・パルミア|
|~ | ・ダルフィ|
|~ | ・ポート・カプール|
|~ | ・ノイエル|
|~ | ・ルミエスト|
|~ | 04:野外|
|~ | 05:プレイヤー物件|
|~ | ・わが家|
|~ | ・シェルター(プレイヤー物件)|
|~ | ・牧場|
|~ | ・博物館|
|~ | ・店|
|~ | ・畑|
|~ | ・倉庫|
|~ | 06:ルミエスト墓所、神々の休戦地、妹の館、|
|~ | 混沌の城《獣》、混沌の城《機甲》、混沌の城《奇形》、実験場、シェルター(各街)|
|~ | 07:ハウスドーム、闘技場、コロシアム、即時依頼時マップ|
|~ | 20:ダンジョン(洞窟)|
|~ | ・レシマス|
|~ | ・死者の洞窟|
|~ | ・竜窟|
|~ | ・山道|
|~ | ・子犬の洞窟|
|~ | ・ミノタウロスの巣|
|~ | ・イークの洞窟|
|~ | ・ピラミッド|
|~ | 21:ダンジョン(塔)|
|~ | ・灼熱の塔|
|~ | 22:ダンジョン(森)|
|~ | 23:ダンジョン(砦)|
|~ | ・古城|
|adata(01, マップNo)|マップオブジェクトが存在するワールドマップ上のX座標|
|adata(02, マップNo)|マップオブジェクトが存在するワールドマップ上のY座標|
|||
|adata(06, マップNo)|マップの到達最深階|
|||
|adata(10, マップNo)|マップの最深階|
|||
|adata(12, マップNo)||
|||
|adata(16, マップNo)|マップオブジェクト識別番号|
|~ | マップNoとは必ずしも対応しない(特に複数建てられる物件)が、多くの場合は一致している。|
|~ | 002:野外|
|~ | 003:レシマス|
|~ | 004:ノースティリス|
|~ | 005:ヴェルニース|
|~ | 006:闘技場|
|~ | 007:わが家|
|~ | 008:ランダムダンジョン|
|~ | 009:実験場|
|~ | 010:ルミエスト墓所|
|~ | 011:ポート・カプール|
|~ | 012:ヨウィン|
|~ | 013:即時依頼時マップ|
|~ | ・街近辺|
|~ | ・市街地|
|~ | ・パーティー会場|
|~ | ・※依頼内容によって変化|
|~ | 014:ダルフィ|
|~ | 015:パルミア|
|~ | 016:灼熱の塔|
|~ | 017:死者の洞窟|
|~ | 018:古城|
|~ | 019:竜窟|
|~ | 020:神々の休戦地|
|~ | 021:アクリ・テオラ|
|~ | 022:混沌の城《獣》|
|~ | 023:混沌の城《機甲》|
|~ | 024:混沌の城《奇形》|
|~ | 025:ラーナ|
|~ | 026:山道|
|~ | 027:子犬の洞窟|
|~ | 028:イークの洞窟|
|~ | 029:妹の館|
|~ | 030:シェルター|
|~ | 031:牧場|
|~ | 032:パルミア大使館|
|~ | 033:ノイエル|
|~ | 034:工房ミラル・ガロク|
|~ | 035:ハウスドーム|
|~ | 036:ルミエスト|
|~ | 037:ピラミッド|
|~ | 038:ミノタウロスの巣|
|~ | 040:コロシアム|
|~ | 041:牢獄|
|~ | 042:すくつ|
|~ | 043:ノースティリス南関所|
|~ | 044:サウスティリス|
|~ | 045:サウスティリス北関所|
|~ | 046:煙とパイプ亭|
|~ | 047:テストワールド|
|~ | 048:テストワールド北関所|
|~ | 101:博物館|
|~ | 102:店|
|~ | 103:畑|
|~ | 104:倉庫|
|adata(17, マップNo)|マップの開始階層(=危険度)|
|||
|adata(20, マップNo)|ダンジョンの主討伐フラグ|
|~ | -1:討伐済み|
|||
|adata(22, マップNo)|アリーナ連勝数|
|adata(23, マップNo)|ペットアリーナ連勝数|
|adata(24, マップNo)|アリーナの対戦相手(決闘)用乱数種?|
|||
|adata(26, マップNo)|アリーナの対戦相手(ランブル)用乱数種?|
|~ | 次の決闘の開始日時。|
|adata(27, マップNo)|次のランブルの開始日時。|
|adata(2X, マップNo)|%s < 現在時刻なら挑戦できない。|
Version 1.02(開発版)~Version 1.16 reloaded fix 3(2009 Christmas Edition)
Version 1.02(開発版)以前は未確認
マップNo100~149はプレイヤーが建設する我が家以外の建物用、マップNo150~199はランダムダンジョン用。
Version 1.17(開発版)~Version 1.22(開発版)
マップNo300~449はプレイヤーが建設する我が家以外の建物用、マップNo450~499はランダムダンジョン用。
どちらも使用されていない領域(adata(16, マップNo) == 0)に新しく作られる。
使用されていない領域が無ければ生成に失敗する。
----
**ワールドマップ上に存在する各マップオブジェクトの詳細?(目次みたいなもの?)
mdata_????.s2
dim mdata, 100
|mdata(00)|現在いるマップのX方向の大きさ|
|mdata(01)|現在いるマップのY方向の大きさ|
|mdata(02)|現在いるマップの描画に使用するマップチップセットの指定|
|~ |※Version 1.22(開発版)時点では単純にgraphicフォルダ内のmap?.bmpの ?部分をあらわす整数値|
|mdata(03)|次回マップ再生成年月日時(?)|
|~ | (年 * 24 * 30 * 12) + (月 * 24 * 30) + (日 * 24) + (時) + 744(1月 * 24 * 30) + (1日 * 24)|
|||
|mdata(06)|現在いるマップのタイプ|
|~ | 1:ワールドマップ|
|~ | 3:街(依頼掲示板有り)(?)|
|~ | 5:|
|mdata(07)|マップ再生成フラグ(?)|
|~ | 0:強制新規再作成|
|~ | マップデータ(mdata_xxx.s2)が存在していても必ず新規作成|
|~ | ※子犬の洞窟|
|~ | 1:再生成可能マップ(?)|
|mdata(10)|再生成年月日時(?)|
|~ | (年 * 24 * 30 * 12) + (月 * 24 * 30) + (日 * 24) + (時) + 744(1月 * 24 * 30) + (1日 * 24)|
mdatan_????.s2
sdim mdatan, 20, 2
改行付きテキストファイル
2行
1:マップ名?
2:?
※mdata_????.s2とセット
----
map_data
*マップ関連
MAP情報を格納する配列の中に格納されている。
ワールドマップ上に存在するマップオブジェクトの一覧
adata.s1
dim adata, 40, 200 ~Version 1.16 reloaded fix 3(2009 Christmas Edition)
40要素 × 200オブジェクト分
dim adata, 40, 500 Version 1.17(開発版)~Version 1.22(開発版)
40要素 × 500オブジェクト分
|adata(00, マップNo)|マップタイプ|
|~ | 01:ワールドマップ|
|~ | ・ノースティリス|
|~ | 02:アクリ・テオラ、ラーナ、工房ミラル・ガロク、パルミア大使館|
|~ | 03:街|
|~ | ・ヴェルニース|
|~ | ・ヨウィン|
|~ | ・パルミア|
|~ | ・ダルフィ|
|~ | ・ポート・カプール|
|~ | ・ノイエル|
|~ | ・ルミエスト|
|~ | 04:野外|
|~ | 05:プレイヤー物件|
|~ | ・わが家|
|~ | ・シェルター(プレイヤー物件)|
|~ | ・牧場|
|~ | ・博物館|
|~ | ・店|
|~ | ・畑|
|~ | ・倉庫|
|~ | 06:ルミエスト墓所、神々の休戦地、妹の館、|
|~ | 混沌の城《獣》、混沌の城《機甲》、混沌の城《奇形》、実験場、シェルター(各街)|
|~ | 07:ハウスドーム、闘技場、コロシアム、即時依頼時マップ|
|~ | 20:ダンジョン(洞窟)|
|~ | ・レシマス|
|~ | ・死者の洞窟|
|~ | ・竜窟|
|~ | ・山道|
|~ | ・子犬の洞窟|
|~ | ・ミノタウロスの巣|
|~ | ・イークの洞窟|
|~ | ・ピラミッド|
|~ | 21:ダンジョン(塔)|
|~ | ・灼熱の塔|
|~ | 22:ダンジョン(森)|
|~ | 23:ダンジョン(砦)|
|~ | ・古城|
|adata(1, マップNo)|マップオブジェクトが存在するワールドマップ上のX座標|
|adata(2, マップNo)|マップオブジェクトが存在するワールドマップ上のY座標|
|adata(3, マップNo)|マップ進入時の配置(map_placecharaonentrance)|
|adata(4, マップNo)|マップの描画に使用するマップチップセットの指定 ⇒mdata(02)|
|adata(5, マップNo)|ランダムダンジョン接続語タイプ|
|~ | 0:typeA|
|~ | 1:typeB|
| 危険度| typeA : typeB|
| 危険度1~4| はじまりの : 安全な|
| 危険度5~9| 時めきの : 冒険者の|
| 危険度10~14| 迷いの : 勇者の|
| 危険度15~15| 死の : 闇の|
| 危険度20以上| 混沌の : 不帰の|
|adata(6, マップNo)|マップの到達最深階|
|||
|adata(9, マップNo)|ターンコスト|
|~ | マップ上に存在する全ユニットに速度を加算|
|~ | mdata(9)のターンコスト値以上になると行動|
|~ | マップ上に存在する全ユニットに対し、cdata(10)がmdata(9)以上かを判定。|
|~ | 判定が真ならcdata(10)からmdata(9)を減算|
|~ | 判定が偽となるまでそのユニットのターンを繰り返す。|
|~ | 判定が偽なら次のユニットの判定へ|
|adata(10, マップNo)|マップの最深階|
|adata(11, マップNo)|マップ再生成フラグ ⇒mdata(07)|
|adata(12, マップNo)|マップのユニット標準位置が参照されるフラグ(再配置・aiDull) ⇒mdata(8)|
|||
|adata(15, マップNo)|マップオブジェクトのチップ番号|
|adata(16, マップNo)|マップオブジェクト識別番号|
|~ | マップNoとは必ずしも対応しない(特に複数建てられる物件)が、多くの場合は一致している。|
|~ | 002:野外|
|~ | 003:レシマス|
|~ | 004:ノースティリス|
|~ | 005:ヴェルニース|
|~ | 006:闘技場|
|~ | 007:わが家|
|~ | 008:ランダムダンジョン|
|~ | 009:実験場|
|~ | 010:ルミエスト墓所|
|~ | 011:ポート・カプール|
|~ | 012:ヨウィン|
|~ | 013:即時依頼時マップ|
|~ | ・街近辺|
|~ | ・市街地|
|~ | ・パーティー会場|
|~ | ・※依頼内容によって変化|
|~ | 014:ダルフィ|
|~ | 015:パルミア|
|~ | 016:灼熱の塔|
|~ | 017:死者の洞窟|
|~ | 018:古城|
|~ | 019:竜窟|
|~ | 020:神々の休戦地|
|~ | 021:アクリ・テオラ|
|~ | 022:混沌の城《獣》|
|~ | 023:混沌の城《機甲》|
|~ | 024:混沌の城《奇形》|
|~ | 025:ラーナ|
|~ | 026:山道|
|~ | 027:子犬の洞窟|
|~ | 028:イークの洞窟|
|~ | 029:妹の館|
|~ | 030:シェルター|
|~ | 031:牧場|
|~ | 032:パルミア大使館|
|~ | 033:ノイエル|
|~ | 034:工房ミラル・ガロク|
|~ | 035:ハウスドーム|
|~ | 036:ルミエスト|
|~ | 037:ピラミッド|
|~ | 038:ミノタウロスの巣|
|~ | 040:コロシアム|
|~ | 041:牢獄|
|~ | 042:すくつ|
|~ | 043:ノースティリス南関所|
|~ | 044:サウスティリス|
|~ | 045:サウスティリス北関所|
|~ | 046:煙とパイプ亭|
|~ | 047:テストワールド|
|~ | 048:テストワールド北関所|
|~ | 101:博物館|
|~ | 102:店|
|~ | 103:畑|
|~ | 104:倉庫|
|adata(17, マップNo)|マップの開始階層(=危険度)|
|adata(18, マップNo)|マップで使用するタイル種類(map_tileset) ⇒mdata(12)|
|||
|adata(20, マップNo)|ダンジョンの主討伐フラグ|
|~ | -1:討伐済み|
|adata(21, マップNo)|屋内フラグ(天候の影響に使用 1:屋内 2:屋外) |
|adata(22, マップNo)|アリーナ連勝数|
|adata(23, マップNo)|ペットアリーナ連勝数|
|adata(24, マップNo)|アリーナの対戦相手(決闘)用乱数種?|
|adata(25, マップNo)|次のアリーナの乱数種初期化日時|
|~ |%s < 現在時刻なら挑戦できない。|
|adata(26, マップNo)|アリーナの対戦相手(ランブル)用乱数種?|
|~ | 次の決闘の開始日時。|
|adata(27, マップNo)|次のランブルの開始日時。|
|adata(28, マップNo)|街フラグ(タウンデータ用)|
|adata(29, マップNo)|聖夜祭フラグ|
|adata(30, マップNo)|脱出先マップNo? ⇒gdata(850)|
Version 1.02(開発版)~Version 1.16 reloaded fix 3(2009 Christmas Edition)
Version 1.02(開発版)以前は未確認
マップNo100~149はプレイヤーが建設する我が家以外の建物用、マップNo150~199はランダムダンジョン用。
Version 1.17(開発版)~Version 1.22(開発版)
マップNo300~449はプレイヤーが建設する我が家以外の建物用、マップNo450~499はランダムダンジョン用。
どちらも使用されていない領域(adata(16, マップNo) == 0)に新しく作られる。
使用されていない領域が無ければ生成に失敗する。
----
**ワールドマップ上に存在する各マップオブジェクトの詳細?(目次みたいなもの?)
mdata_????.s2
dim mdata, 100
|mdata(0)|現在いるマップのX方向の大きさ|
|mdata(1)|現在いるマップのY方向の大きさ|
|mdata(2)|現在いるマップの描画に使用するマップチップセットの指定|
|~ |※Version 1.22(開発版)時点では単純にgraphicフォルダ内のmap?.bmpの ?部分をあらわす整数値|
|mdata(3)|次回マップ再生成年月日時?(未生成なら0 再生成したら現在日時+120)|
|~ | (年 * 24 * 30 * 12) + (月 * 24 * 30) + (日 * 24) + (時) |
|~ | (例)0=0年0月0日 744=0年1月1日 |
|mdata(4)|現在いるマップの降り階段のX座標 + Y座標 * 1000|
|mdata(5)|現在いるマップの昇り階段のX座標 + Y座標 * 1000|
|mdata(6)|現在いるマップのタイプ|
|~ | 1:ワールドマップ|
|~ | 3:街(依頼掲示板有り)(?)|
|~ | 5:|
|mdata(7)|マップ再生成フラグ(?)|
|~ | 0:強制新規再作成|
|~ | マップデータ(mdata_xxx.s2)が存在していても必ず新規作成|
|~ | ビッグダディが出現しない|
|~ | 1:任意再生成|
|mdata(8)|現在いるマップでユニット標準位置が参照されるフラグ|
|mdata(9)|現在いるマップのターンコスト|
|mdata(10)|ランダム生成係数(固定でないキャラ・アイテムの初期生成とキャラの再沸きに使用)|
|mdata(12)|マップで使用するタイル種類(map_tileset)|
|mdata(13)|BGM番号|
|mdata(14)|現在のマップの屋内フラグ(天候の影響に使用 1:屋内 2:屋外)|
|mdata(15)|ユーザーマップフラグ?|
|mdata(16)|次回NPCアイテム補充年月日時(補充したら現在日時+24)|
|~ | (年 * 24 * 30 * 12) + (月 * 24 * 30) + (日 * 24) + (時) + 24|
|~ | (例)24=0年0月0日 768=0年1月1日 |
|mdata(17)|クエストマップフラグ?|
|mdata(18)|マップに置けるアイテムの最大数?|
|mdata(19)|バージョン番号(1.12なら1120)+マップ再生成回数|
|mdata(20)|焚き火音フラグ|
mdatan_????.s2
sdim mdatan, 20, 2
改行付きテキストファイル
2行
1:マップ名?
2:?
※mdata_????.s2とセット
3次元配列
map(X座標, Y座標, 0) = マップチップ番号(表示・未探索のときはそのマップの汎用チップ)
map(X座標, Y座標, 1) = ユニット番号+1
map(X座標, Y座標, 2) = マップチップ番号(設定)
map(X座標, Y座標, 3) = 未使用
map(X座標, Y座標, 4) = アイテム情報(設定)
1個なら上位2バイトにアイテムチップ番号 下位2バイトにアイテム色番号
4個以上なら上位2バイトに363:袋のチップ番号 下位2バイトに0:無色
2個なら上のアイテムから順に(-1) * ((アイテムNo - 5080) + (アイテムNo - 5080) * 1000 + 999 * 1000000)
3個なら上のアイテムから順に(-1) * ((アイテムNo - 5080) + (アイテムNo - 5080) * 1000 + (アイテムNo - 5080) * 1000000)
map(X座標, Y座標, 5) = アイテム情報(表示)
map(X座標, Y座標, 6) = マップフィート情報(罠・階段など)
feat + feat(1) * 1000 + feat(2) * 100000 + feat(3) * 10000000
map(X座標, Y座標, 7) = 血飛沫レベル + 破片レベル *10
map(X座標, Y座標, 8) = マップ効果番号+1
map(X座標, Y座標, 9) = 光源情報 ⇒lightdata,ilight
※mdata_???_???.s2とセット
マップフィート情報
dim feat, 5
feat = チップ番号(表示)
feat(1) = マップフィート種類
10:昇り階段
11:降り階段
14:罠
15:マップオブジェクト(マップNo = feat(2) + feat(3) * 100)
20:開いた扉
21:閉じた扉
22:隠し通路
23:依頼掲示板
24:探索スポット
25:採掘スポット
26:釣りスポット
27:残骸スポット
28:採取スポット
29:種を植えた場所
30:壷
31:投票箱
32:小さなメダル
33:街掲示板
34:建物(炭鉱・灯台等)
feat(2) = 付加情報1(階段先の階層・罠番号・開錠難度・種の種類)
feat(3) = 付加情報2(地雷設置ユニット・栽培日数)
feat(4) = 未使用
マップ効果情報
mef_???_???.s1
dim mef, 9, 200
マップ効果数が200超えたらランダムな番号の効果を消す
mef(0, 効果番号) = マップ効果種類
1:蜘蛛の巣 2:闇の霧 3:酸の海 4:エーテルの海 5:火柱 6:ポーション類 7:原子爆弾
mef(1, 効果番号) = アイテムチップ番号 + 色番号 *10000
mef(2, 効果番号) = X座標
mef(3, 効果番号) = Y座標
mef(4, 効果番号) = 持続ターン(-1でターンによる消滅なし)
mef(5, 効果番号) = スペルパワー
mef(6, 効果番号) = 効果元ユニット(hostileactionやcheck_killで使用)
mef(7, 効果番号) = ポーション類ならアイテムID ⇒inv(03,アイテムNo)
mef(8, 効果番号) = ポーション類なら祝呪状態 ⇒inv(17,アイテムNo)
※mdata_???_???.s2とセット
マップチップ情報
dim chipm, 8, 33 * 25
mdata(2):map?.bmpの種類 によって同じマップチップ番号でも効果は変わるので注意
chipm(0, チップ番号) = マップ種類
1:日干し岩 2:畑 3:水 4:雪原 6:収容所の壁 7:砂漠 8:荒野 10:浅瀬
chipm(1, チップ番号) = マップ種類2
5:温泉 9:境界
chipm(2, チップ番号) = 壁種類
1:壁下端 2:壁内部
chipm(3, チップ番号) = アニメコマ数(連番のチップをアニメに使う)
chipm(4, チップ番号) = 未使用
chipm(5, チップ番号) = 上にずらすピクセル数
6:砦 8:森 16:塔・灼熱の塔・混沌の城 56:ムーンゲート?
chipm(6, チップ番号) = 下も描画するピクセル数
48:ムーンゲート?
chipm(7, チップ番号) = 効果
1:射線を遮る 4:通行不可(視界○) 5:通行不可
縦 = チップ番号 / 33
横 = チップ番号 \ 33
----