モンスターの種類

モンスターの種類は、"type"メンバーを"MONSTER"に設定したJSONオブジェクトとして定義されます:

{
    "type": "MONSTER",
    "id": "mon_foo",
    ...
}

id メンバーは、その種類の固有なID である必要があります。IDには任意の文字列を使用できますが、慣習として接頭辞に "mon_" を付けます。このID は、モンスターグループ(出現セット)やマップ生成(mapgen)での特定のモンスターの生成など、さまざまな場所で参照されます。

体積(volume)や重量(weight)などの数量を表す文字列については、完全な精度を維持できる範囲で最大の単位を使用してください。

モンスターの種類は、以下のプロパティをサポートしています (特に断りがない限り、これらは必須項目です):

"name"

(文字列、またはオブジェクト)

"name": "cow"
"name": { "ctxt": "fish", "str": "pike", "str_pl": "pikes" }

あるいは、単数形と複数形が同じ場合:

"name": { "ctxt": "fish", "str_sp": "bass" }

ゲーム内で表示される名前です。オプションで複数形の名前や、翻訳コンテキスト(ctxt)を指定できます。

複数形が指定されていない場合、デフォルトでは「単数形 + s」になります。

ctxtは、同形異義語(名前は同じだが、異なる2つのもの)がある場合に、翻訳者を助けるために使用されます。例えば、魚の「pike(カワカマス)」と武器の「pike(パイク/槍)」のようなケースです。

"description"

(文字列)

ゲーム内で表示される、そのモンスターの説明文です。

"categories"

(文字列の配列、オプション)

モンスターのカテゴリーです。指定できる値は NULL、CLASSIC(クラシックなゾンビ映画に登場するモンスターのみ)、または WILDLIFE(自然界の動物)です。カテゴリーが CLASSIC または WILDLIFE でないモンスターは、クラシックモード(Classic Mode)では出現しません。Modを使用する場合は、"add:flags" や "remove:flags" を介して、これらのエントリを追加または削除できます。

"species"

(文字列の配列、オプション)

種別IDのリストです。Modからは "add:species" や "remove:species" を通じてエントリを追加または削除できます(後述の「Mod制作」セクションを参照)。種別に設定されているプロパティ(現在はトリガーのみ)は、その種別に属する各モンスターのプロパティとして追加されます。

BNのゲームでは、以下の種別が使用可能です: HUMAN(人間)、ROBOT(ロボット)、ZOMBIE(ゾンビ)、MAMMAL(哺乳類)、BIRD(鳥類)、FISH(魚類)、REPTILE(爬虫類)、WORM(虫/蠕虫)、MOLLUSK(軟体動物)、AMPHIBIAN(両生類)、INSECT(昆虫)、SPIDER(クモ)、FUNGUS(真菌)、PLANT(植物)、NETHER(ネザー生物)、MUTANT(変異体)、BLOB(ブロブ)、HORROR(ホラー)、ABERRATION(異形)、HALLUCINATION(幻覚)、および UNKNOWN(不明)。

"volume"

(文字列)

"volume": "40 L"

文字列内の数値部分は整数である必要があります。単位として L と ml を使用できます。なお、現在のところ l と mL は受け付けないので注意してください。

"weight"

(文字列)

"weight": "3 kg"

文字列の数値部分は整数でなければなりません。また、完全な精度を維持できる範囲で最大の単位を使用してください(例:3000 g ではなく 3 kg と記述します)。単位としては g と kg が使用可能です。

"scent_tracked"

(文字列の配列、オプション)

このモンスターが追跡する scenttype_id(臭いの種類)のリストです。scent_types は scent_types.json で定義されています。

"scent_ignored"

(文字列の配列、オプション)

このモンスターが無視する scenttype_id(臭いの種類)のリストです。scent_types は scent_types.json で定義されています。

"symbol", "color"

(文字列)

ゲーム内でモンスターを表すシンボル(記号)と色です。シンボルは、コンソールの1セル分の幅(Unicode文字では複数文字分に及ぶ場合がありますが、表示幅は1マス分)である正確な UTF-8 文字列である必要があります。詳細はCOLOR.md を参照してください。

"size"

(文字列、オプション)

サイズフラグです。詳細は json_flags.md を参照してください。

"material"

(文字列の配列、オプション)

モンスターを主に構成している物質のリストです。有効な素材ID(material id)を含める必要があります。空の配列(デフォルト値)も許容されており、その場合、モンスターは特定の物質で構成されていないものとして扱われます。Modでは "add:material" や "remove:material" を使用してエントリを追加・削除できます。

"phase"

(文字列、オプション)

モンスターの肉体の相(物質の状態)を記述します。ただし、現時点ではゲームプレイ上の目的(実質的な効果)はないようです。SOLID(固体)、LIQUID(液体)、GAS(気体)、PLASMA(プラズマ)、または NULL を指定できます。

"default_faction"

(文字列)

モンスターが所属する派閥のIDです。これは、そのモンスターが他のどのモンスターと戦うかに影響します。「モンスターの派閥(Monster factions)」の項目を参照してください。

"bodytype"

(文字列)

モンスターの身体構造のIDです。これは、そのモンスターの体の構造を大まかに記述したものです。

値は以下のいずれかである必要があります:

説明
angel 有翼の人型。
bear 後脚で立ち上がることができる四足歩行の動物。
bird 2本の脚と2枚の翼を持つ動物。
blob 不定形の物質の塊。
crab 多脚で、2本の大きなハサミ(腕)を持つ動物。
quadruped 一般的な四足歩行の動物。
elephant 非常に巨大な四足歩行の動物。大きな頭部と胴体を持ち、四肢のサイズが等しい。
fish 流線型の体とヒレを持つ水生動物。
flying insect 6本の脚、頭部、2つの体節、および翼を持つ動物。
frog 四足歩行で首があり、非常に大きな後脚と小さな前脚を持つ動物。
gator 四足歩行で非常に長い胴体と短い脚を持つ動物(ワニ型)。
human 2本の腕を持つ二足歩行の動物。
insect 6本の脚、頭部、および2つの体節を持つ動物。
kangaroo 五足歩行(4本の足+安定用の大きな尾)の動物。非常に大きな後脚と小さめの前腕を持つ。
lizard 「gator(ワニ型)」を小さくした形態。
migo ミ=ゴが有するあらゆる形態(独特の異星生物の形状)。
pig 四足歩行で、頭部が胴体と同じ直線上の位置にある動物。
spider 8本の脚を持ち、大きな腹部の上に小さな頭部がある動物。
snake 長い胴体を持ち、手足のない動物。

"attack_cost"

(整数、オプション)

通常攻撃1回あたりに消費する移動値の量です。

"diff"

(整数、オプション)

モンスターの基準難易度です。この値はモンスターを識別する際の色(ラベル)に影響するほか、値が30を超えると死亡時に「記念ログ」に記録されるようになります。モンスターの難易度は通常、想定される近接ダメージ、回避率、防御力、ヒットポイント、速度、士気、攻撃性、および視界範囲に基づいて自動算出されます。ただし、この自動計算は遠距離特殊攻撃やユニークな特殊能力をうまく評価できないため、この基準難易度を設定することで、それらの要素を補正することができます。推奨される値は以下の通りです:

説明
2 スキッターボットのテーザーのような限定的な防御能力、絶叫ゾンビの「周囲の敵に警告する」ような弱い特殊能力、あるいは毒による僅かな攻撃ボーナスがある場合。
5 強酸ゾンビの吐酸よりも弱い限定的な遠距離攻撃、あるいは電撃ゾンビの反撃放電(Zapback)やアシッドゾンビの酸噴射のような強力な防御能力がある場合。
10 強酸ゾンビの吐酸やタレットの9mm短機関銃のような、強力な遠距離攻撃がある場合。SMG.
15 腐食ゾンビの吐酸のように、追加の危険(地形残留など)を伴う強力な遠距離攻撃がある場合。spit
20 レーザータレットや軍用タレットの5.56mmライフルといった極めて強力な遠距離攻撃、またはゾンビ・ネクロマンサーの「他のゾンビを復活させる能力」のような強力な特殊能力がある場合。
30 対物タレットの.50 BMGライフルのように、重装甲のキャラクターにとっても致命的な遠距離攻撃がある場合。

ほとんどのモンスターは、巨体ゾンビやレイザークロー・アルファのような危険な種であっても、難易度は 0 に設定すべきです。難易度の設定は、例外的、あるいは遠距離や特殊な攻撃を持つ場合にのみ使用してください。

"aggression"

(整数、オプション)

そのモンスターがどの程度攻撃的かを定義します。範囲は -99(完全に受動的)から 100(探知次第、確実に敵対する)までです。

"morale"

(整数、オプション)

モンスターの士気です。撤退を開始するまでに、モンスターのHPがどこまで低下しても耐えられるかを定義します。この数値は最大HPに対する割合(%)として扱われます。

"aggro_character"

(bool値、オプション、既定値は true)

ターゲットを決定する際、モンスターとキャラクター(プレイヤー、NPC)を区別するかどうかを指定します。false の場合、そのモンスターは現在の怒り(anger)や士気に関わらず、キャラクターが「怒りトリガー(anger trigger)」を引かない限りキャラクターを無視します。モンスターの怒りがベースレベルに戻ると、この設定はランダムにリセットされます。

"speed"

(整数)

モンスターの速度です。人間の標準的な速度は 100 です。この値が高いほど速く、低いほど遅くなります。

"mountable_weight_ratio"

(浮動小数点数、オプション)

乗り手と騎乗対象の許容重量比として使用されます。デフォルトは "0.3" で、これは乗り手の体重がマウントの体重の30%以下であれば騎乗可能であることを意味します。

"melee_skill"

(整数、オプション)

モンスターの近接攻撃スキルです。ベースゲームでは通常 0 から 10 の範囲で、一般的なモブは 4 程度です。10を超える数値は、魔法的または異常な存在である可能性が高いです。詳細は GAME_BALANCE.txt の例を参照してください。

"dodge"

(整数、オプション)

モンスターの回避スキルです。ベースゲームでは 0 から 10 です。回避の仕組みについての解説は GAME_BALANCE.txt を参照してください。

"melee_damage"

(オブジェクトの配列、オプション)

プロパティ 説明
damage_type ダメージの属性。有効なエントリ: "true"(固定), "bash"(打撃), "cut"(斬撃), "stab"(刺突), "bullet"(銃弾) "biological"(生物学的), "acid"(酸), "heat"(熱), "cold"(冷気), "dark"(闇) "light"(光), "psi"(サイキック), "electric"(電撃).
amount 与えるダメージの基本量。
armor_penetration このダメージが発生した際に、相手の防御力を無視する値。
armor_multiplier armor_penetration.(装甲貫通値)に適用される倍率。
damage_multiplier amount(ダメージ量)に適用される倍率。
"melee_damage": [ { "damage_type": "electric", "amount": 4.0, "armor_penetration": 1, "armor_multiplier": 1.2, "damage_multiplier": 1.4 } ],

"melee_dice", "melee_dice_sides"

(整数、オプション)

モンスターの近接攻撃時に振られるダイスの数とその面数です。これにより打撃(bash)ダメージの量が決まります。

"grab_strength"

(整数、オプション)

このモンスターが与える「掴み」効果の強さです。デフォルトは 1 です。これは「GRAB」特殊攻撃と「GRABS」フラグを持つモンスターにのみ意味があります。grab_strength = n のモンスターは、ゾンビ n 体分に相当する強さで掴みかかります。max(筋力, 器用) <= n であるプレイヤーは、その掴みを振りほどくことができません。

"melee_cut"

(整数、オプション)

モンスターの近接攻撃のダイスロールに加えられる、斬撃ダメージの量です。

"armor_bash", "armor_cut", "armor_stab", "armor_acid", "armor_fire", "armor_cold", "armor_electric"

(整数、オプション)

打撃、斬撃、刺突、酸、火炎、冷気、電撃の各ダメージに対するモンスターの防御力です。

"vision_day", "vision_night"

(整数、オプション)

完全な日光下、および完全な暗闇における視界範囲です。

"luminance"

(整数、オプション)

モンスターが受動的に放つ光の量です。範囲は 0 から 10 です。

"hp"

(整数)

モンスターのHPです。

"death_drops"

(文字列、またはアイテムグループ、オプション)

モンスター死亡時にアイテムを生成するために使用されるアイテムグループです。インライン形式のアイテムグループも使用可能です(詳細は ITEM_SPAWN.md を参照)。デフォルトのサブタイプは "distribution"(分布)です。

"death_function"

(文字列の配列、オプション)

死亡時のモンスターの振る舞いです。利用可能な関数リストについては json_flags.md を参照してください。Modでは "add:death_function" や "remove:death_function" を通じて追加・削除が可能です。

"on_death"

(辞書型、オプション)

死亡時に適用される挙動のコレクションです。内部に "death_function" を含めることもできます。このフィールドが存在する場合、単独の "death_function" フィールドは無視されます。

"on_death": {
  "death_function": [ "THING" ]
}

こちらもサポートされています

"spawn_mon"

(文字列、オプション) モンスターが死亡した場所に、指定したモンスターを1体生成します。

"on_death": {
  "spawn_mon": "mon_thing"
}

"spawn_mon_near"

(辞書型、オプション)

以下の2つの値で構成されます:

  • "distance": (整数、必須) モンスターを生成できる、死亡地点からの最大距離です。
  • "ids": (文字列、または文字列の配列、オプション) 設定された距離内に生成を試みるモンスターのIDです。

これにより、1体のモンスターを生成することができます。

"on_death": {
  "spawn_mon_near": {
    "distance": 5,
    "ids": "mon_thing"
  }
}

または、複数のモンスターを生成することも可能です。

"on_death": {
  "spawn_mon_near": {
    "distance": 3,
    "ids": [ "mon_thing", "mon_zombie", "mon_zombie_anklebiter" ]
  }
}

"harvest"

(文字列、オプション)

このモンスターの死亡時関数が死体を残す場合に、その死体を「解体」または「解剖」した際に得られるアイテムを定義します。何も指定されていない場合は、デフォルトで human(人間)が設定されます。収穫エントリ、その産出量、および質量比は harvest.json で定義されています。

"emit_field"

(emit_id と時間のオブジェクトの配列、オプション) "emit_fields": [ { "emit_id": "emit_gum_web", "delay": "30 m" } ],

そのモンスターがどのような「フィールド」を放出し、どのくらいの頻度でそれを行うかを指定します。時間の長さには、"1 h"(1時間)、"60 m"(60分)、"3600 s"(3600秒)といった文字列が使用できます。

"regenerates"

(整数、オプション)

1ターンあたりに再生するHPの量です。

"regeneration_modifiers"

( effect、base_mod (浮動小数点数)、scaling_mod (浮動小数点数) で構成されるオブジェクトの配列、オプション ) 例: "regeneration_modifiers": [ { "effect": "on_fire", "base_mod": -0.3, "scaling_mod": -0.15 } ],

どの状態変化がモンスターの再生能力に(正または負の)影響を与えるかを定義します。各修正値は加算でスタックしますが、最終的な再生量に対しては乗算で適用されます。 各修正値(modifier)は加算(スタック)されますが、最終的な再生値に対しては乗算で適用されます。(例:「火だるま(on_fire)」の強度が2の場合、倍率は 0.45 となります)

"regenerates_in_dark"

(bool値、オプション)

光量の暗いタイルにいる間、非常に素早くHPを再生します。

"regen_morale"

(bool値、オプション)

HPが最大まで回復した際に逃走を停止し、怒りと士気を回復させます。

"special_attacks"

(特殊攻撃定義の配列、オプション)

モンスターの特殊攻撃です。これは配列である必要があり、各要素はオブジェクト形式(新形式)、または配列形式(旧形式)いずれかになります。

旧形式の配列には、「攻撃のID(リストは json_flags.md を参照)」と「その攻撃のクールダウン(再使用時間)」の2つの要素を含める必要があります。 例(10ターンごとに「掴み(grab)」攻撃を行う場合):

"special_attacks": [ [ "GRAB", 10 ] ]

新形式のオブジェクトには、少なくとも "type" メンバ(文字列)と "cooldown" メンバ(整数)を含める必要があります。また、選択した特定のタイプに応じて、追加のメンバを含めることができます。利用可能なタイプは以下にリストアップされています。例:

"special_attacks": [
    { "type": "leap", "cooldown": 10, "max_range": 4 }
]

"special_attacks" には、旧形式と新形式のエントリを任意に組み合わせて含めることができます:

"special_attacks": [
    [ "GRAB", 10 ],
    { "type": "leap", "cooldown": 10, "max_range": 4 }
]

(継承を行う際) "extend" フィールドを使用することで、エントリを追加することができます。

"extend": { "special_attacks": [ [ "PARROT", 50 ] ] }

"delete" フィールドを使用することで、エントリを削除できます。ただし、特殊攻撃を (手動または extendsで)追加する場合とは異なり、構文がわずかに異なります。2重の大括弧 [[ ]] を使用する必要はなく、クールダウンの値を含めてはいけません。

"delete": { "special_attacks": [ "FUNGUS" ] },

"flags"

(文字列の配列、オプション)

モンスターのフラグ(特性)です。完全なリストについては json_flags.md を参照してください。Modでは "add:flags" や "remove:flags" を通じて、フラグの追加や削除が可能です。

"fear_triggers", "anger_triggers", "placate_triggers"

(文字列の配列、オプション)

何がモンスターを恐れさせる(afraid)、怒らせる(angry)か、あるいは何をすればなだめる(calm)ことができるかを定義します。完全なリストについては json_flags.md を参照してください。

"revert_to_itype"

(文字列、オプション)

この値が空ではなく、かつ有効なアイテムIDである場合、そのモンスターが味方の状態であれば、プレイヤーの手によってこのアイテムへと変換することができます。これは通常、タレットなどで使用され、タレットという「モンスター」を、再び設置可能な「アイテム」へと戻し、持ち運んで別の場所に再設置できるようにするために使われます。

"starting_ammo"

(オブジェクト、オプション)

新しく生成されたモンスターが初期状態で所持している弾薬を含むオブジェクトです。これは、弾薬を消費するタイプの特殊攻撃を持つモンスターを定義する際に役立ちます。 例:

"starting_ammo": { "9mm": 100, "40mm_frag": 100 }

"upgrades"

(bool値、またはオブジェクト、オプション)

このモンスターが時間の経過とともにどのように進化するかを制御します。既定値である false(進化無効)を指定するか、あるいは進化の詳細を記述したオブジェクトを指定することができます。

例:

"upgrades": {
    "into_group": "GROUP_ZOMBIE_UPGRADE",
    "half_life": 28
}

upgrades オブジェクトには、以下のメンバを含めることができます。:

"half_life"

(整数) 近似的な指数関数的進行に基づき、モンスターの半数が進化するまでの時間です。この値は、初期値で4日となっている「進化スケーリング係数(evolution scaling factor)」によってスケーリングされます。

"into_group"

(文字列、オプション) 進化後のモンスターの種類を、指定された「モンスターグループ」の中から決定します。これらのグループにおける「コスト」は、生成プロセス中の進化(生成グループの属性である replace_monster_group や new_monster_group_id に関連するもの)に使用されます。

"into"

(文字列、オプション) 進化後のモンスターのIDです。

"age_grow"

(整数、オプション) モンスターが別のモンスターに変化するまでに必要な日数です。

"reproduction"

(辞書型、オプション) モンスターの繁殖サイクルを定義します(設定する場合)。以下の項目をサポートしています:

"baby_monster"

(文字列、オプション) 胎生モンスターが繁殖時に生成するモンスターのIDです。繁殖を機能させるには、これか baby_egg のいずれかを宣言する必要があります。

"baby_egg"

(文字列、オプション) 卵生モンスターが産み落とす卵のアイテムIDです。繁殖を機能させるには、これか baby_monster のいずれかを宣言する必要があります。

"baby_count"

(整数) 一度の繁殖で生成されるクリーチャーまたは卵の数です。

"baby_timer"

(整数) 繁殖の間隔(日数)です。

"baby_flags"

(配列、オプション) このモンスターが繁殖可能な季節を指定します。例: [ "SPRING", "SUMMER" ](春と夏)

"special_when_hit"

(配列、オプション)

モンスターが攻撃されたときに発動する「特殊防御(カウンター)」です。防御のID(json_flags.md の「Monster defense attacks」を参照)と、その防御が実際に発動する確率を含む配列を指定します。例:

"special_when_hit": [ "ZAPBACK", 100 ]

"attack_effs"

(オブジェクトの配列、オプション)

モンスターの攻撃が成功した際に、攻撃されたクリーチャーに適用される可能性のある一連の状態異常を定義します:

"attack_effs": [
    {
        "id": "paralyzepoison",
        "duration": 33,
        "chance": 50
    }
]

配列の各要素は、以下のメンバを含むオブジェクトである必要があります:

"id"

(文字列)

適用されるエフェクトのIDです。

"duration"

(整数、オプション)

そのエフェクトが持続するターン数です。

"affect_hit_bp"

(bool値, オプション)

エフェクトを、(下の bp で設定された部位ではなく)実際に攻撃が当たった部位に適用するかどうかを指定します。

"bp"

(文字列、オプション)

エフェクトが適用される身体部位を指定します。既定では全身に適用されます。エフェクトの中には、特定の部位を必要とするもの(例:「熱い(hot)」)もあれば、全身を対象とする必要があるもの(例:「メタンフェタミン(meth)」)があることに注意してください。

"chance"

(整数、オプション)

エフェクトが適用される確率です。

Modding

モンスターの型は、Modによって上書きしたり修正したりすることができます。これを行うには、"edit-mode" メンバを追加する必要があります。これには以下のいずれかを指定できます:

  • "create": (メンバが存在しない場合の既定値)新しく作成します。指定されたIDのタイプが既に存在する場合はエラーが表示されます。
  • "override": 上書きします。指定されたIDの既存のタイプ(あれば)が削除され、新しいデータが完全に新しいタイプとしてロードされます。
  • "modify": 既存のタイプを修正します。指定されたIDのタイプが存在しない場合はエラーが表示されます。

必須プロパティ(「オプション」とマークされていないすべての項目)は、edit-modeが "create" または "override" の場合にのみ必要となります。

例(ゾンビの名前だけを変更し、他のすべてのプロパティはそのままにする場合):

{
  "type": "MONSTER",
  "edit-mode": "modify",
  "id": "mon_zombie",
  "name": "clown"
}

標準の編集モード("create")は新しいタイプを作成するのに適しています。もしそのIDが他のModやコアデータのIDと衝突した場合は、エラーが表示されます。編集モード "override" は、タイプをゼロから再定義するのに適しています。これにより、すべての必須メンバが確実にリストアップされ、以前の定義の痕跡を残さないようにします。編集モード "modify" は、フラグの追加や特殊攻撃の削除といった、小さな変更を行うためのものです。

タイプを修正(modify)すると、指定したプロパティが新しい値で上書きされます。次の例では、特殊攻撃が「"SHRIEK"(叫び)」攻撃のみを含むように設定されます:

{
  "type": "MONSTER",
  "edit-mode": "modify",
  "id": "mon_zombie",
  "special_attacks": [["SHRIEK", 20]]
}

上述の通り、一部のプロパティでは "add:" または "remove:" 接頭辞を持つメンバを使用することで、エントリの追加や削除が可能です。

モンスター特殊攻撃タイプ

以下の攻撃タイプは、モンスターの特殊攻撃として使用できます("special_attacks" を参照)。

"leap"

モンスターを数マス跳躍させます。以下の追加プロパティをサポートしています:

"max_range"

(必須) 攻撃の最大射程です。

"min_range"

(必須) 攻撃に必要な最小射程です。

"allow_no_target"

これを設定すると、モンスターが標的のいない空きスペースに対してこの能力を使用するのを防ぎます。

"move_cost"

特殊攻撃を完了するのに必要な移動コストです。移動コスト100は、スピード100のモンスターにおいて1秒(1ターン)に相当します。

"min_consider_range", "max_consider_range"

特定攻撃の使用を検討する最小射程と最大射程です。

"bite"

モンスターが歯を使って相手に噛みつきます。一部のモンスターは、これによって感染症を引き起こすことがあります。

"damage_max_instance"

一度の噛みつきで与えることができる最大ダメージです。

"min_mul", "max_mul"

攻撃者を殺さずに噛みつきを振りほどくのがどれくらい難しいかを決定します。

"move_cost"

特殊攻撃を完了するのに必要な移動コスト(ターン数換算)です。スピード100 のモンスターにおいて、移動コスト100 は1秒(1 ターン)に相当します。

"accuracy"

(整数) 命中精度です。ただし、これを使用しているモンスターはそれほど多くありません。

"no_infection_chance"

感染症を引き起こさない確率です。

"gun"

標的に対して銃を放ちます。味方の状態であれば、プレイヤーを傷つけないように射撃を避けます。

"gun_type"

(必須) 攻撃を実行するために使用される、有効な銃器のアイテムIDです。

"ammo_type"

(必須) その銃に装填される、有効な弾薬のアイテムIDです。モンスターは、この弾薬を指定した "starting_ammo" フィールドも持っている必要があります。

"ammo_type" : "50bmg",
"starting_ammo" : {"50bmg":100}

"max_ammo"

弾薬の上限値です。何らかの理由で弾薬がこの値を超えた場合、デバッグメッセージが表示されます。

"fake_str"

攻撃を実行する「擬似NPC」の筋力ステータスです。指定しない場合は 8 になります。

"fake_dex"

攻撃を実行する「擬似NPC」の器用ステータスです。指定しない場合は 8 になります。

"fake_int"

攻撃を実行する「擬似NPC」の知力ステータスです。指定しない場合は 8 になります。

"fake_per"

攻撃を実行する「擬似NPC」の感覚ステータスです。指定しない場合は 8 になります。

"fake_skills"

スキルIDとスキルレベルのペア(2つの要素を持つ配列)の配列です。

"move_cost"

攻撃を実行するのに必要な移動コストです。

// これが true の場合、プレイヤーに『猶予期間(猶予時間)』を与えます。

"require_targeting_player"

bool値、もし true の場合、モンスターはプレイヤーを照準する必要が生じます。これにより、targeting_cost 分の移動ポイントを消費し、攻撃をクールダウン状態にし、さらに警告音を発します(ただし、最近ターゲットが対象を攻撃したばかりである場合を除きます)。これはプレイヤーに回避や遮蔽に隠れるための「猶予期間」を与えるために使用されます。

"require_targeting_npc"

上記と同様ですが、対象がNPCの場合に適用されます。

"require_targeting_monster"

上記と同様ですが、対象が他のモンスターの場合に適用されます。

"targeting_timeout"

照準状態が維持されるターン数です。この「照準状態」は、標的はなく、タレット(攻撃側)自体に付与される状態であることに注意してください。

"targeting_timeout_extend"

攻撃に成功するたびに、照準状態をこのターン数だけ延長します。負の値を指定することも可能です。

"targeting_cost"

プレイヤーを照準する際にかかる移動コストです。これは、プレイヤーを攻撃しようとしており、かつ過去5ターン以内にプレイヤーを照準していなかった場合にのみ適用されます。

"no_crits"

これが true の場合、攻撃側は遠距離攻撃によるクリティカルヒットを発生させることができなくなります。また、精度の高い命中が頭部に当たる確率が下がり、代わりに胴体や四肢に当たる確率が高くなります。false の場合は既定の挙動となり、会心が発生し、精度の高い命中は頭部に当たりやすくなります。

"laser_lock"

これが true の場合『照準が必要な対象』かつ『まだレーザーロックされていない対象』を攻撃しようとすると、モンスターは(以前の)照準状態を保持していないかのように振る舞い、照準合わせに時間を費やします。その後、対象は『レーザーロック状態』になり、もしその対象がプレイヤーであれば警告が発生します。」

レーザーロックはターゲットに付与される状態であり、特定の攻撃者に紐付けられるものではありません。

"range"

ターゲットを捕捉し、攻撃を開始する最大射程です。

"range_no_burst"

(連射射撃が可能な場合) 連射射撃を行わなくなる射程の閾値です。この距離より遠い標的に対しては、単発で射撃します。

"burst_limit"

一度の攻撃で放たれる連射数の上限です。

"description"

プレイヤーから見える場所で攻撃が実行された際に表示されるメッセージです。

"targeting_sound"

照準を合わせている際に発生する音の説明です。

"targeting_volume"

照準を合わせている際に発生する音の大きさです。

"no_ammo_sound"

弾切れの際に発生する音の説明です。