Systems Events
Built-in authoring reference for Mercury 1.0.1. All events.
Character Ability Canceled
Runs when this event occurs.
Reference key: characterAbilityCanceled.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Ability id (blank = any)): Select the Character ability associated with this lifecycle Event.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| ability | text | Ability name associated with the request or execution. |
| executionId | thing:abilityExecution | Handle identifying this ability execution. Correlates phase and lifecycle Events from the same execution. |
| reason | text | Reason supplied for this ability lifecycle transition, such as denial, cancellation, or interruption. Can be blank. |
Character Ability Completed
Runs when this event occurs.
Reference key: characterAbilityCompleted.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Ability id (blank = any)): Select the Character ability associated with this lifecycle Event.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| ability | text | Ability name associated with the request or execution. |
| executionId | thing:abilityExecution | Handle identifying this ability execution. Correlates phase and lifecycle Events from the same execution. |
| reason | text | Reason supplied for this ability lifecycle transition, such as denial, cancellation, or interruption. Can be blank. |
Character Ability Denied
Runs when this event occurs.
Reference key: characterAbilityDenied.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Ability id (blank = any)): Select the Character ability associated with this lifecycle Event.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| ability | text | Ability name associated with the request or execution. |
| executionId | thing:abilityExecution | Handle identifying this ability execution. Correlates phase and lifecycle Events from the same execution. |
| reason | text | Reason supplied for this ability lifecycle transition, such as denial, cancellation, or interruption. Can be blank. |
Character Ability Interrupted
Runs when this event occurs.
Reference key: characterAbilityInterrupted.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Ability id (blank = any)): Select the Character ability associated with this lifecycle Event.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| ability | text | Ability name associated with the request or execution. |
| executionId | thing:abilityExecution | Handle identifying this ability execution. Correlates phase and lifecycle Events from the same execution. |
| reason | text | Reason supplied for this ability lifecycle transition, such as denial, cancellation, or interruption. Can be blank. |
Character Ability Phase Changed
Runs for authoritative requested, accepted, prepare, commit, impact, recover, and terminal phase evidence.
Reference key: characterAbilityPhaseChanged.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Ability id (blank = any)): Select the Character ability associated with this lifecycle Event.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| ability | text | Ability name associated with the request or execution. |
| executionId | thing:abilityExecution | Handle identifying this ability execution. Correlates phase and lifecycle Events from the same execution. |
| phase | enum | Current ability phase supplied by the execution runtime. Choices: requested, accepted, denied, prepare, commit, impact, recover, completed, canceled, interrupted. |
| phaseSequence | number | Sequence number of the ability phase transition. Distinguishes successive transitions within one execution. |
Character Ability Started
Runs when this event occurs.
Reference key: characterAbilityStarted.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Ability id (blank = any)): Select the Character ability associated with this lifecycle Event.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| ability | text | Ability name associated with the request or execution. |
| executionId | thing:abilityExecution | Handle identifying this ability execution. Correlates phase and lifecycle Events from the same execution. |
| reason | text | Reason supplied for this ability lifecycle transition, such as denial, cancellation, or interruption. Can be blank. |
Character Capability Requested
Runs synchronously when a custom Character adapter requests an exact capability. Dedicated request accessors are valid only while this event is executing.
Reference key: characterCapabilityRequested.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Capability id (blank = any)): Select the Character capability associated with the request or resolution.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| capability | text | Capability name associated with this request or result. |
| destinationCapability | text | Destination capability selected for the character request. Can differ from the requested capability when a mapping is used. |
| callId | thing:capabilityCall | Handle identifying a capability call. Correlates a request with its result or error; it is not a resource name. |
| ability | text | Ability name associated with the request or execution. |
| deadlineTick | number | Simulation tick at which the capability request reaches its deadline. This is an absolute tick count, not a duration in seconds. |
Character Capability Resolved
Runs when a Character capability receipt reaches its next deterministic micro-phase.
Reference key: characterCapabilityResolved.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Capability id (blank = any)): Select the Character capability associated with the request or resolution.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| capability | text | Capability name associated with this request or result. |
| callId | thing:capabilityCall | Handle identifying a capability call. Correlates a request with its result or error; it is not a resource name. |
| status | text | Operation status supplied by the runtime. Interpret it with the Event type and Code or Error fields. |
| code | text | Machine-readable outcome or diagnostic code supplied by the character runtime. Blank when the operation supplies no code. |
Character Combat Dealt
Runs when this event occurs.
Reference key: characterCombatDealt.
Editor category: Systems > Characters.
Object inputs: self, other.
Filter (Element (blank = any)): Select the combat element associated with the exchange.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| otherName | thing:object | Object resource of the other participant. This identifies the reusable definition; use the Event Object input to target the live participant. |
| otherInstance | instance | Live instance supplied by this Event. Use this typed handle to target the participant or store it in an Instance Variable; an Object resource name identifies its reusable definition instead. The handle can be empty when no participant is supplied. |
| otherId | text | Runtime instance identifier of the other participant. Distinguishes placements of the same Object; blank when no participant is supplied. |
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| element | text | Damage element associated with the combat exchange. |
| potency | number | Integer potency in the character contract scale, 0 to 10000. The capability grant converts this normalized strength into a gameplay effect. |
| defeated | boolean | Whether the reported combat exchange defeated its target. |
Character Combat Received
Runs when this event occurs.
Reference key: characterCombatReceived.
Editor category: Systems > Characters.
Object inputs: self, other.
Filter (Element (blank = any)): Select the combat element associated with the exchange.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| otherName | thing:object | Object resource of the other participant. This identifies the reusable definition; use the Event Object input to target the live participant. |
| otherInstance | instance | Live instance supplied by this Event. Use this typed handle to target the participant or store it in an Instance Variable; an Object resource name identifies its reusable definition instead. The handle can be empty when no participant is supplied. |
| otherId | text | Runtime instance identifier of the other participant. Distinguishes placements of the same Object; blank when no participant is supplied. |
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| element | text | Damage element associated with the combat exchange. |
| potency | number | Integer potency in the character contract scale, 0 to 10000. The capability grant converts this normalized strength into a gameplay effect. |
| defeated | boolean | Whether the reported combat exchange defeated its target. |
Character Compatibility Changed
Runs after reviewed compatibility evidence changes for this Character Slot.
Reference key: characterCompatibilityChanged.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Compatibility status (blank = any)): Select the Character compatibility status offered by the Event dialog.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| compatibility | text | Compatibility state reported for the character slot after its contract check. |
| digest | text | Digest identifying the checked compatibility information. Use it to distinguish changed contract evidence. |
Character Interaction Requested
A fixed host handler for the interaction.use capability; Other is the Character host actor.
Reference key: characterInteractionUse.
Editor category: Systems > Characters.
Object inputs: self, other.
Filter (Interaction verb (blank = any)): Select the interaction verb associated with the request.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| otherName | thing:object | Object resource of the other participant. This identifies the reusable definition; use the Event Object input to target the live participant. |
| otherInstance | instance | Live instance supplied by this Event. Use this typed handle to target the participant or store it in an Instance Variable; an Object resource name identifies its reusable definition instead. The handle can be empty when no participant is supplied. |
| otherId | text | Runtime instance identifier of the other participant. Distinguishes placements of the same Object; blank when no participant is supplied. |
| verb | text | Interaction verb associated with the use operation, also used by the Event filter. |
| potency | number | Integer potency in the character contract scale, 0 to 10000. The capability grant converts this normalized strength into a gameplay effect. |
Character Inventory Use Requested
A fixed host handler for an opaque offered-item handle.
Reference key: characterInventoryUse.
Editor category: Systems > Characters.
Object inputs: self, other.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| otherName | thing:object | Object resource of the other participant. This identifies the reusable definition; use the Event Object input to target the live participant. |
| otherInstance | instance | Live instance supplied by this Event. Use this typed handle to target the participant or store it in an Instance Variable; an Object resource name identifies its reusable definition instead. The handle can be empty when no participant is supplied. |
| otherId | text | Runtime instance identifier of the other participant. Distinguishes placements of the same Object; blank when no participant is supplied. |
Character Load Failed
Runs when source discovery, review, compatibility, projection, or adoption fails. The filter is the stable diagnostic code.
Reference key: characterLoadFailed.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Diagnostic code (blank = any)): Select the stable Character diagnostic code associated with the failure. Inspect Code and Message for the rejected operation.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| operation | text | Operation associated with the character load or persona state change. |
| code | text | Machine-readable outcome or diagnostic code supplied by the character runtime. Blank when the operation supplies no code. |
| message | text | Human-readable diagnostic or speech message supplied by the Event. |
Character Mounted
Runs when a verified Character projection attaches to this exact host instance.
Reference key: characterMounted.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Character Slot (blank = any)): Select the Character Slot associated with the mount or unmount.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| characterId | text | Persistent character identifier supplied by the mounted character record. |
| agency | mixed | Agency information supplied with the character projection. This structured value describes the projection rather than an Object component. |
| reason | text | Reason for mounting or unmounting the character projection. Can be blank when no detail is supplied. |
Character Persona Conflict
Runs when a Persona write or merge needs explicit player resolution.
Reference key: characterPersonaConflict.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Persona status (blank = any)): Select the Persona status offered by the Event dialog.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| status | text | Operation status supplied by the runtime. Interpret it with the Event type and Code or Error fields. |
| operation | text | Operation associated with the character load or persona state change. |
| connected | boolean | Whether the persona connection or network session is connected at the time of the Event. |
| revision | number | Revision of the persona information associated with the Event. |
| code | text | Machine-readable outcome or diagnostic code supplied by the character runtime. Blank when the operation supplies no code. |
Character Persona State Changed
Runs after game-scoped Persona permission or durable state changes without exposing private fields or handles.
Reference key: characterPersonaStateChanged.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Persona status (blank = any)): Select the Persona status offered by the Event dialog.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| status | text | Operation status supplied by the runtime. Interpret it with the Event type and Code or Error fields. |
| operation | text | Operation associated with the character load or persona state change. |
| connected | boolean | Whether the persona connection or network session is connected at the time of the Event. |
| revision | number | Revision of the persona information associated with the Event. |
| code | text | Machine-readable outcome or diagnostic code supplied by the character runtime. Blank when the operation supplies no code. |
Character Speech Requested
A fixed host handler for the social.speak capability; the filter is the authored message id, never arbitrary capsule text.
Reference key: characterSocialSpeak.
Editor category: Systems > Characters.
Object inputs: self, other.
Filter (Message id (blank = any)): Select the authored Character message identifier. The filter does not accept arbitrary capsule speech text.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| otherName | thing:object | Object resource of the other participant. This identifies the reusable definition; use the Event Object input to target the live participant. |
| otherInstance | instance | Live instance supplied by this Event. Use this typed handle to target the participant or store it in an Instance Variable; an Object resource name identifies its reusable definition instead. The handle can be empty when no participant is supplied. |
| otherId | text | Runtime instance identifier of the other participant. Distinguishes placements of the same Object; blank when no participant is supplied. |
| message | text | Human-readable diagnostic or speech message supplied by the Event. |
| tone | text | Tone associated with the character speech operation. |
Character Status Applied
Runs when this event occurs.
Reference key: characterStatusApplied.
Editor category: Systems > Characters.
Object inputs: self, other.
Filter (Semantic role (blank = any)): Select the status role associated with the applied effect.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| otherName | thing:object | Object resource of the other participant. This identifies the reusable definition; use the Event Object input to target the live participant. |
| otherInstance | instance | Live instance supplied by this Event. Use this typed handle to target the participant or store it in an Instance Variable; an Object resource name identifies its reusable definition instead. The handle can be empty when no participant is supplied. |
| otherId | text | Runtime instance identifier of the other participant. Distinguishes placements of the same Object; blank when no participant is supplied. |
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| role | text | Status role applied to the character, also used by the Event filter. |
| potency | number | Integer potency in the character contract scale, 0 to 10000. The capability grant converts this normalized strength into a gameplay effect. |
| duration | number | Applied status duration in simulation ticks. The capability grant determines the conversion from requested potency to this duration. |
Character Unmounted
Runs before the Character projection generation is detached and all of its authority is revoked.
Reference key: characterUnmounted.
Editor category: Systems > Characters.
Object inputs: self.
Filter (Character Slot (blank = any)): Select the Character Slot associated with the mount or unmount.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| slot | text | Character Slot key associated with this Event. Identifies the attachment slot, not the character name. |
| projection | thing:characterProjection | Handle of the mounted character projection. Combine with Generation when tracking remounts or asynchronous calls. |
| generation | number | Mount generation supplied by the character runtime. A remounted projection has a different generation; stale results must not be applied to a new mount. |
| characterId | text | Persistent character identifier supplied by the mounted character record. |
| agency | mixed | Agency information supplied with the character projection. This structured value describes the projection rather than an Object component. |
| reason | text | Reason for mounting or unmounting the character projection. Can be blank when no detail is supplied. |
Host Changed
Runs when the room host changes (the old host left). event.host indicates whether this player is the new host.
Reference key: netHostChanged.
Editor category: Systems > Multiplayer.
Example: Use Host Changed with If Host to take over spawning duties if the old host quit.
Object inputs: self.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| host | boolean | Whether the local player is the network host after the reported change. |
| players | number | Number of players reported by the network session after the change. This is a count, not a player identifier. |
Intent Understood
Runs when Understand Text matches a taught phrase. event.intent names it, event.confidence says how surely (0-100), and each understood slot is available as event.slots.<name>.
Reference key: nlIntent.
Editor category: Systems > Mind.
Example: On Intent Understood, use event.slots.door to select the door named by the player.
Object inputs: self.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| text | text | Input text submitted to the Mind. This is the recognized or submitted text, not the resolved capability result. |
| intent | text | Intent name selected by the Mind, also used by the Event filter. |
| confidence | number | Confidence score supplied by the intent recognizer. Interpretation depends on the recognizer; it is not a guaranteed probability of correctness. |
| slots | mixed | Structured recognized slot values, keyed by slot name. Slot availability depends on the matched intent. |
Message Received
Runs when a Send Message arrives. event.channel is the channel, event.message is its typed value, and event.fromPlayer is the sender.
Reference key: netMessage.
Editor category: Systems > Multiplayer.
Example: Use Message Received [chat] to react to Send Message “chat” from other players.
Object inputs: self.
Filter (Channel (blank = any)): Select the message channel matching the sending operation. Channel selection is separate from connection and room setup.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| channel | text | Channel name attached to the received network message. Use the Event filter to select a channel. |
| message | mixed | Payload received on the message channel. This mixed value can be structured; its schema must be agreed by sender and receiver. |
| fromPlayer | number | Network player identifier of the message sender. |
Mind Capability Called
Runs after a recognized intent maps to a registered capability, or Call Mind Capability invokes one directly, and every argument passes its typed contract. event.capability identifies the allowlisted function, event.callId identifies this call, and typed arguments are available as event.arguments.<name>.
Reference key: nlCapabilityCall.
Editor category: Systems > Mind.
Example: On Mind Capability Called [door.open], use event.arguments.target, then Complete Mind Capability.
Object inputs: self.
Filter (Mind capability (blank = any)): Select the Mind capability associated with the request, completion, or error.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| capability | text | Capability name associated with this request or result. |
| callId | thing:capabilityCall | Handle identifying a capability call. Correlates a request with its result or error; it is not a resource name. |
| arguments | mixed | Structured arguments passed to the capability call, keyed by argument name. |
| status | text | Operation status supplied by the runtime. Interpret it with the Event type and Code or Error fields. |
Mind Capability Completed
Runs after Complete Mind Capability validates the structured result. event.results contains the typed outputs, event.value holds the convenient single output, and event.status is completed.
Reference key: nlCapabilityResult.
Editor category: Systems > Mind.
Example: On Mind Capability Completed [door.open], show event.value and ask for the next command.
Object inputs: self.
Filter (Mind capability (blank = any)): Select the Mind capability associated with the request, completion, or error.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| capability | text | Capability name associated with this request or result. |
| callId | thing:capabilityCall | Handle identifying a capability call. Correlates a request with its result or error; it is not a resource name. |
| results | mixed | Structured result values returned by the capability call, keyed by result name. |
| value | text | Text representation of the capability result. Use Results when typed structured values are required. |
| status | text | Operation status supplied by the runtime. Interpret it with the Event type and Code or Error fields. |
Mind Capability Error
Runs when a capability is unknown, an argument cannot be converted, a required slot is missing, a handler explicitly fails, or a completion result violates its output contract. event.error explains the rejected or failed call.
Reference key: nlCapabilityError.
Editor category: Systems > Mind.
Example: On Mind Capability Error, show event.error without changing the game world.
Object inputs: self.
Filter (Mind capability (blank = any)): Select the Mind capability associated with the request, completion, or error.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| capability | text | Capability name associated with this request or result. |
| callId | thing:capabilityCall | Handle identifying a capability call. Correlates a request with its result or error; it is not a resource name. |
| status | text | Operation status supplied by the runtime. Interpret it with the Event type and Code or Error fields. |
| error | text | Failure or cancellation detail supplied by the operation. Blank when no error detail was produced. |
Multiplayer Connected
Runs when this game joins a multiplayer room (after connecting to the server).
Reference key: netConnected.
Editor category: Systems > Multiplayer.
Example: Use Multiplayer Connected to leave the lobby scene once the room is joined.
Object inputs: self.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| connected | boolean | Whether the persona connection or network session is connected at the time of the Event. |
| host | boolean | Whether the local player is the network host after the reported change. |
| players | number | Number of players reported by the network session after the change. This is a count, not a player identifier. |
| latency | number | Estimated one-way network latency in milliseconds, calculated from half the measured ping round trip. It is not expressed in seconds. |
Multiplayer Disconnected
Runs when this game leaves the room or loses the connection.
Reference key: netDisconnected.
Editor category: Systems > Multiplayer.
Example: Use Multiplayer Disconnected to show a “connection lost” message and return to the menu.
Object inputs: self.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| connected | boolean | Whether the persona connection or network session is connected at the time of the Event. |
| host | boolean | Whether the local player is the network host after the reported change. |
| players | number | Number of players reported by the network session after the change. This is a count, not a player identifier. |
| latency | number | Estimated one-way network latency in milliseconds, calculated from half the measured ping round trip. It is not expressed in seconds. |
Not Understood
Runs when Understand Text matched no taught phrase (or none reached its confidence). event.text still holds the sentence — useful for a gentle hint or for handing the sentence to Ask Mind.
Reference key: nlMiss.
Editor category: Systems > Mind.
Example: On Not Understood, pass event.text to Ask Mind, then show the answer.
Object inputs: self.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| text | text | Input text submitted to the Mind. This is the recognized or submitted text, not the resolved capability result. |
Player Joined
Runs when another player joins the room. event.player is their player id.
Reference key: netPlayerJoined.
Editor category: Systems > Multiplayer.
Example: Use Player Joined to announce “Player 2 joined!” or start the match at 2 players.
Object inputs: self.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| player | number | Network player identifier for the player that joined or left. This is distinct from the player count. |
| host | boolean | Whether the local player is the network host after the reported change. |
| players | number | Number of players reported by the network session after the change. This is a count, not a player identifier. |
Player Left
Runs when another player leaves the room. event.player is their player id.
Reference key: netPlayerLeft.
Editor category: Systems > Multiplayer.
Example: Use Player Left to pause the match or declare the remaining player the winner.
Object inputs: self.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| player | number | Network player identifier for the player that joined or left. This is distinct from the player count. |
| host | boolean | Whether the local player is the network host after the reported change. |
| players | number | Number of players reported by the network session after the change. This is a count, not a player identifier. |
Player Text
Runs when one typed or spoken capture commits a sentence. event.text holds the exact captured text. Interpretation is a separate policy: attach Player Text Input and Understanding, or call Understand Text explicitly.
Reference key: nlText.
Editor category: Systems > Mind.
Example: On Player Text, speak event.text back before the oracle answers.
Object inputs: self.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| text | text | Input text submitted to the Mind. This is the recognized or submitted text, not the resolved capability result. |
Sync Recovered
Lockstep only: runs after the game detected drift between players and re-synced everyone from the host.
Reference key: netDesync.
Editor category: Systems > Multiplayer.
Object inputs: self.
Event context is a read-only snapshot for this invocation. It is available in the Event’s Action fields; store a required value in a declared Variable before using it in another Event.
Event context
| Field | Type | Description |
|---|---|---|
| tick | number | Simulation tick associated with the detected network desynchronization. |
| desyncs | number | Desynchronization count reported by the network session. |
Myth Engine Documentation
