2013/01/09
■ [変愚蛮怒/開発]ダンジョン情報d_info.txtのデータ形式(変愚蛮怒 Ver2.1.1)
2013/02/01追記
地形タグの指定についてストリーマーに使われる地形の説明について修正。
本文
ダンジョン情報ファイルは lib/d_info.txt に存在する。このファイルはダンジョン一件ごとに以下の例のようなフォーマットで定義を行っている。(#以下の行はコメントとなる)
# Cth and Razorback N:13:ルルイエ E:R'lyeh D:$a way to R'lyeh D:ルルイエ P:3:40 W:80:96:45:3:14:160:75:20:0x01a8:0x023f L:FLOOR:50:SHALLOW_WATER:30:DEEP_WATER:20:100 A:GRANITE:100:GRANITE:0:GRANITE:0:GRANITE:GRANITE:SHALLOW_WATER:DEEP_WATER F:MONSTER_DIV_16 | ARENA | WATER_RIVER | LAKE_WATER | F:FINAL_GUARDIAN_857 | FINAL_ARTIFACT_129 M:DEMON | ELDRITCH_HORROR
「N:」IDと日本語名
N:[ID][日本語名]
ID
実装上で扱われる数値ID。ウィザードモード時の'J'コマンドなどの指定にも使われる。
[日本語名]
日本語版で表示されるダンジョン名。
「E:」英語名
E:[英語名]
[英語名]
英語版で表示されるダンジョン名。
「D:」ダンジョンメッセージ
D:[ダンジョンメッセージ] D:$[ダンジョンメッセージ]
[ダンジョンメッセージ]
入口から潜った際に「[ダンジョンメッセージ]に潜った」と表記される。$が先頭についているのは英語版メッセージ。
広域マップ座標
P:[行(Y座標)]:[列(X座標)]
[行(Y座標)]
広域マップにダンジョンが配置される横軸。
[列(X座標)]
広域マップにダンジョンが配置される縦軸。
「W:」ダンジョンの諸情報
W:[最浅層]:[最深層]:[必要レベル(未実装)]:[モンスター優先型]: [モンスター数基本値]:[モンスター生成頻度]: [GOODアイテム生成限界率]:[GREATアイテム生成限界率]:[pit生成フラグ]:[nest生成フラグ]
[最浅層]
ダンジョンがスタートする最初の階(F)
[最深層]
ダンジョンの最深階(F)
[必要レベル(未実装)]
コメントを見る限り、恐らく@さんがそのダンジョンに潜るのに必要なレベルを指定しているらしいが、規制するための処理が実装されていない。
[モンスター優先型]
後述の「M:」フラグでモンスターの生成を条件付けるための論理設定。各値で以下の意味になる。
0 | DUNGEON_MODE_NONE | 条件を定めない |
1 | DUNGEON_MODE_AND | 全てを満たしたモンスターのみを優先生成に加える |
2 | DUNGEON_MODE_NAND | 全てを満たしたモンスターのみを優先生成から外す |
3 | DUNGEON_MODE_OR | いずれかを満たしたモンスターを優先生成に加える |
4 | DUNGEON_MODE_NOR | いずれかを満たしたモンスターを優先生成から外す |
[モンスター数基本値]
フロアが生成された直後に配置されるモンスター数の基本値、多いほど初期数が増える。
[モンスター生成頻度]
フロアが生成された後にモンスターが自然生成される頻度。多いほど増える。
[GOODアイテム生成限界率]
ダンジョンで生成されたアイテムが明示的なGOOD生成以外でGOODになる確率の限界値
[GREATアイテム生成限界率]
ダンジョンで生成されたアイテムが明示的なGREAT生成以外でGREATになる確率の限界値
[pit生成フラグ]
ダンジョンにpit部屋が生成される際に許可されるタイプのフラグを16進数表記したもの、詳細な解説は後日。
[nest生成フラグ]
ダンジョンにnest部屋が生成される際に許可されるタイプのフラグを16進数表記したもの、詳細な解説は後日。
「L:」標準床定義
L:[第一地形タグ]:[第一生成率]:[第二地形タグ]:[第二生成率]: [第三地形タグ]:[第三生成率]:[通路の直進率]
[地形タグ]/[生成率]
床になる地形のタグをf_info.txtで指定されたタグから参照し、生成される確率の重みを指定する。
[通路の直進率]
部屋同士を接続する通路が蛇行する形を取る頻度。1d(階層)>[通路の直進率]で蛇行する。
「A:」標準壁定義
A:[第一地形タグ]:[第一生成率]:[第二地形タグ]:[第二生成率]: [第三地形タグ]:[外壁地形タグ]:[内壁地形タグ]:[第一ストリーマー地形タグ]:[第二ストリーマー地形タグ]
[地形タグ]/[生成率]
床になる地形のタグをf_info.txtで指定されたタグから参照し、生成される確率の重みを指定する。
[外壁地形タグ]
部屋を生成した際の外壁として使われる地形タグ
[内壁地形タグ]
部屋を生成した際の内壁として使われる地形タグ
[第一ストリーマー地形タグ]
[第二ストリーマー地形タグ]
ストリーマーとして使われる地形タグ
「F:」ダンジョンの特性定義
ダンジョン自身が生成やフロア内ルールとして持っている特性、後日別記事にまとめる予定。
「M:」優先モンスター特性定義
優先して生成されるモンスターの条件フラグ。モンスターの特性定義に従うがこれの他に以下のフラグがある。
R_CHAR_???? | モンスターのシンボルを優先生成条件に加えられる。最大4つまで |
「S:」優先モンスター特殊能力定義
優先して生成されるモンスターの所有特殊能力フラグ。モンスターの特殊能力定義に従う。