Skip to content

sdk.farm_planner ​

@type library Versioned farming-plan runtime. The browser/backend owns immutable plan documents; this module validates and maps the latest downloaded document onto the proven farming modules, derives the active hierarchical task, enforces hunt polygons, applies stop conditions, and publishes compact status.

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

Constants ​

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

NameValueSummary
PlannerPlannerFarm planner class.
IntentArbiterArbiter.Arbiter—
inside_zoneinside_zoneTrue when a position is inside a plan zone of the given kind.
encodeencodeSerialize planner-facing config into the farm runtime shape.
targets_fromtargets_fromMonster target list from a plan.
target_selection_fromtarget_selection_fromTarget-selection rules from a plan.
loot_config_fromloot_config_fromLoot rules from a plan.
inventory_config_frominventory_config_fromInventory/stash rules from a plan.
supply_config_fromsupply_config_fromSupply/restock rules from a plan.
detect_spell_behaviordetect_spell_behaviorInfer wave vs single-target from spell words.
runtime_spellsruntime_spellsRuntime spell rows from a plan.

validate ​

function · validate(plan)

Schema-1 plan check before apply(). Errors reject the document; warnings stay advisory. Stash/withdraw rules require a depot action so the plan fails here, not mid-hunt.

new ​

function · new()

Fresh planner instance. Graphs and travel tickets stay nil until poll() applies a plan.

Arcane SDK catalog generated from scripts/sdk