EverambleGAME API / 1

CONTENT CONTRACT · VERSION 1

encounter

Who an encounter spawns and how far it reaches: raids, camp garrisons and wildlife.

Signature

{ id: ContentId, kind: "encounter", loot: (LootId)?, members: {EncounterMember}, name: TextKey, site_health: PositiveHitPoints, site_reach_mm: PositiveDistance, trigger_radius_mm: PositiveDistance, waves: (WaveRules)? }

Fields

NameTypeMeaning
idContentIdPackage-qualified identity; unique within its declaring namespace.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$
kind"encounter"Discriminant
lootLootIdItems the cleared site yields when torn down.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: loot
members{EncounterMember}Ordered member rules; each spawn takes the first rule it matches and the last rule matches every spawn.
Items: 1…32
nameTextKeyLocalization key for the displayed name.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: text
site_healthPositiveHitPointsHealth of the encounter's site, torn down by blows once cleared.
Range: 1…2147483647; Unit: hp
site_reach_mmPositiveDistanceDistance from the site centre at which blows reach it.
Range: 1…2147483647; Unit: mm
trigger_radius_mmPositiveDistanceA player this close wakes the encounter.
Range: 1…2147483647; Unit: mm
wavesWaveRulesNight waves: size, grouping, strength and spawn ring; required for the ruleset's raid.

Validated example

{
  "id": "core:camp",
  "kind": "encounter",
  "loot": "core:camp_spoils",
  "members": [
    {
      "actor": "core:brute",
      "every": 1,
      "from_wave": 0,
      "max_distance_mm": 0,
      "min_distance_mm": 0,
      "offset": 0,
      "position": "first"
    },
    {
      "actor": "core:archer",
      "every": 1,
      "from_wave": 0,
      "max_distance_mm": 0,
      "min_distance_mm": 0,
      "offset": 0,
      "position": "last"
    },
    {
      "actor": "core:raider",
      "every": 1,
      "from_wave": 0,
      "max_distance_mm": 0,
      "min_distance_mm": 0,
      "offset": 0,
      "position": "any"
    }
  ],
  "name": "core:camp_name",
  "site_health": 240,
  "site_reach_mm": 7000,
  "trigger_radius_mm": 46000
}