Skip to content

feat: register mod-qualified scripted AI orders - #616

Merged
vdmkenny merged 2 commits into
mainfrom
feat/scripted-orders
Oct 3, 2026
Merged

vdmkenny merged 2 commits into
mainfrom
feat/scripted-orders

Conversation

@vdmkenny

@vdmkenny vdmkenny commented Oct 3, 2026

Copy link
Copy Markdown
Collaborator

Global scripts register custom AI orders by qualified names, so mods can share local names without choosing numeric IDs. The engine uses effective metadata for priorities, player eligibility, retaliation, avoidance and disruption. Callbacks run with script limits and clean up before context or mission shutdown.

Add generated API docs and a tested throttle-pulse example. Tests cover cross-mod names, lifecycle, completion, failures, one-shot behavior and context restart. Other registries remain in #558.

Validation: 1,906 tests passed, one skipped; ReleaseSafe build, formatting and check-files pass. All 44 original mission files check and 45 installed missions bind.

Closes #615

Resolve custom orders by owning-mod-qualified names and share effective
metadata with the engine stack. Run callbacks through the protected
script runtime and clean orders before contexts or missions stop.

Test names across mods, priorities, completion, one-shot behavior,
failures and context restart. Include a throttle-pulse example.

Closes #615
Use one conversion for displayed order names, one identifier lookup
and one stack-removal walk. Derive callback fields from lifecycle roles
and mark registered behavior as an improvement.
@vdmkenny
vdmkenny merged commit 9d47fbc into main Oct 3, 2026
4 checks passed
@vdmkenny
vdmkenny deleted the feat/scripted-orders branch October 3, 2026 15:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Scripted orders: register custom AI order callbacks

1 participant