EverambleGAME API / 1

CONTENT CONTRACT · VERSION 1

area_effect

Strike every living body hostile to the caster in a circle or ring around it, now; each takes the damage and the status. A player's spell power raises the damage.

Signature

{ caster: ActorRef, damage: HitPoints, damage_type: DamageTypeId, inner_mm: Distance, kind: "area_effect", look: (FxId)?, radius_mm: PositiveDistance, shape: AreaShape, status: (StatusId)? }

Fields

NameTypeMeaning
casterActorRefLiving actor at the centre: the event actor or the owner's own body.
Length: 1…256; Pattern: ^[\s\S]+$
damageHitPointsDamage to each struck body before resistances; zero only applies the status.
Range: 0…2147483647; Unit: hp
damage_typeDamageTypeIdDamage type selecting resistances.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: damage_type
inner_mmDistanceInner radius of a ring; zero for a circle.
Range: 0…2147483647; Unit: mm
kind"area_effect"Discriminant
lookFxIdLook of the effect around the caster.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: fx
radius_mmPositiveDistanceOuter radius.
Range: 1…2147483647; Unit: mm
shapeAreaShapeShape on the ground.
statusStatusIdStatus applied to each struck body for the status's duration.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: status

Validated example

{
  "caster": "a1",
  "damage": 24,
  "damage_type": "core:fire_damage",
  "inner_mm": 1200,
  "kind": "area_effect",
  "look": "core:fire_ring_look",
  "radius_mm": 5000,
  "shape": "ring",
  "status": "core:burning"
}