MarkTriggerFired
Referee: record that an authored trigger has fired.
Full documentation: MarkTriggerFired. Wire type: mark_trigger_fired.
Legal session modes: battle, encounter, exploring, game_over, town, victory
JSON Schema
{
"description": "Referee: record that an authored trigger has fired.\n\nOne of the lifecycle commands a trigger-and-quest interpreter, a game's own\nlistener, or an LLM referee drives: the mark goes in before the trigger's\nconsequences issue, so fired-state is what answers once-only semantics, and it\nsurvives save, load, and replay like any other session state. Referee commands\nare legal in every mode, terminal modes included. Marking an already-marked\ntrigger is accepted and changes nothing: session state records that a trigger\n*has* fired, while each mark in the command log records *one* firing.\n\n`trigger_id` is an **open domain**: a mark records that something fired, needs no\nauthored trigger behind it, and a game drives it with ids from its own systems.\nThe quest lifecycle commands invert that deliberately \u2014\n[`ActivateQuest`][osrlib.crawl.commands.ActivateQuest] and its three siblings\nresolve their ids against the adventure's quest specs, because the state they\nadvance is projected into the player view and an id with no spec behind it has\nnothing to show.\n\nModes:\n `town`, `exploring`, `encounter`, `battle`, `game_over`, `victory`\n\nRejections:\n None.\n\nEvents:\n [`TriggerFiredEvent`][osrlib.crawl.events.TriggerFiredEvent] with the\n trigger id and the beat, for every mark.",
"properties": {
"command_type": {
"const": "mark_trigger_fired",
"default": "mark_trigger_fired",
"title": "Command Type",
"type": "string"
},
"source": {
"anyOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Source"
},
"trigger_id": {
"minLength": 1,
"title": "Trigger Id",
"type": "string"
},
"narrative": {
"anyOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Narrative"
}
},
"required": [
"trigger_id"
],
"title": "MarkTriggerFired",
"type": "object"
}