Skip to content

sdk.combat_shapes ​

Exact affected-tile resolution for player spells, runes and direct attacks.

lua
local M = require("sdk.combat_shapes")

Constants ​

Lua 5.4 has no enums — these are integer (or string) fields on the module.

NameValueSummary
rotaterotateRotate a shape by a facing.

resolve ​

function · resolve(action)

Shape metadata only (no tiles). Use affected_tiles when safety needs the footprint.

affected_tiles ​

function · affected_tiles(action, context)

World tiles this action would hit. Same-floor + max_range checked when both ends exist. complete=false means facing was unknown and every rotation was unioned — treat as worst case.

registry ​

function · registry()

Raw Canary-derived shape/spell/rune tables. Tests assert against this, not a copy.

Arcane SDK catalog generated from scripts/sdk