nexSys4 Event Dictionary
This file is generated from src/nexsys/core/events/topicRegistry.js and is
the authoritative map of canonical nexsys4.* topics.
It covers registry-backed topic metadata only. Adapter-local names such as
PromptEvent, NoticeEvent, and TargetSetEvent, plus model/controller event
names such as AffGot, QueueUpdated, and ServersideDirty, live outside the
registry and are intentionally not enumerated here.
External package authors should start with the Events page, which lists the EventStream contract.
Audience model
eventstreamtopics are raised through Nexus EventStream for external consumers.jstopics stay on nexSys4's local event bus and are not part of the external EventStream contract.internaltopics stay inside the runtime and are not public API topics.- Scoped variants inherit from
scopedAudience;nonemeans the base topic has no scoped topic family. - Stability markers are copied directly from the registry.
Registry summary
- Total topics: 74
- EventStream-public topics: 51
- JS-public-only topics: 23
- Internal-only topics: 0
EventStream-public topics
| Topic | Scoped audience | Scoped payload key | Stability | Description |
|---|---|---|---|---|
nexsys4.runtime.started | none | none | stable | Runtime startup completed. |
nexsys4.runtime.stopped | none | none | stable | Runtime shutdown completed. |
nexsys4.raw.gmcp | none | none | stable | Raw GMCP payload observed at the adapter boundary. |
nexsys4.system.vitals.changed | none | none | stable | Character vitals changed. |
nexsys4.system.health.changed | none | none | stable | Health changed. |
nexsys4.system.mana.changed | none | none | stable | Mana changed. |
nexsys4.system.rage.changed | none | none | stable | Rage changed. |
nexsys4.system.bleed.changed | none | none | stable | Bleed changed. |
nexsys4.system.status.changed | none | none | stable | Character status snapshot changed. |
nexsys4.system.class.changed | none | none | stable | Character class changed. |
nexsys4.system.target.changed | none | none | stable | Current target changed. |
nexsys4.system.room.changed | none | none | stable | Current room changed. |
nexsys4.system.room_items.changed | none | none | stable | Visible room items changed. |
nexsys4.system.pause.changed | none | none | stable | Runtime pause state changed. |
nexsys4.system.paused | none | none | stable | Runtime paused. |
nexsys4.system.unpaused | none | none | stable | Runtime unpaused. |
nexsys4.system.loaded | none | none | stable | Startup game-state initialization completed. |
nexsys4.system.death.detected | none | none | stable | Death was detected from character state. |
nexsys4.system.mount.changed | none | none | stable | Mounted state changed. |
nexsys4.system.wielded.changed | none | none | stable | Wielded equipment changed. |
nexsys4.aff.got | eventstream | name | stable | Affliction became active. |
nexsys4.aff.lost | eventstream | name | stable | Affliction was cured or removed. |
nexsys4.aff.stack.changed | eventstream | name | stable | Affliction stack count changed. |
nexsys4.def.got | eventstream | id | stable | Defence became active. |
nexsys4.def.lost | eventstream | id | stable | Defence expired or was removed. |
nexsys4.balance.got | eventstream | id | stable | Balance became available. |
nexsys4.balance.lost | eventstream | id | stable | Balance was consumed or lost. |
nexsys4.balance.reset | eventstream | id | stable | Balance timing was reset. |
nexsys4.balance.duration.observed | eventstream | id | stable | Observed balance recovery duration changed. |
nexsys4.eqbal.got | none | none | stable | Balance and equilibrium are both available. |
nexsys4.limb.hit | eventstream | limb | stable | Limb damage was recorded. |
nexsys4.limb.reset | eventstream | limb | stable | Limb tracking was reset. |
nexsys4.limb.stage.changed | eventstream | limb | stable | Limb damage stage changed. |
nexsys4.cache.amount.changed | none | none | stable | Cached item counts changed. |
nexsys4.cache.inventory.list | none | none | stable | Inventory cache snapshot applied. |
nexsys4.cache.rift.list | none | none | stable | Rift cache snapshot applied. |
nexsys4.item.room.added | none | none | stable | An item appeared in the current room. |
nexsys4.item.room.removed | none | none | stable | An item left the current room. |
nexsys4.item.room.updated | none | none | stable | A current-room item changed. |
nexsys4.item.room.list | none | none | stable | Current-room item list snapshot received. |
nexsys4.item.inv.added | none | none | stable | An item was added to inventory. |
nexsys4.item.inv.removed | none | none | stable | An item was removed from inventory. |
nexsys4.item.inv.updated | none | none | stable | An inventory item changed. |
nexsys4.item.inv.list | none | none | stable | Inventory item list snapshot received. |
nexsys4.queue.sent | eventstream | queueName | stable | A queue submission was accepted by the server. |
nexsys4.queue.fired | eventstream | queueName | stable | A queue fire was acknowledged for a named queue. |
nexsys4.queue.fired.ack | none | none | stable | Queue fire acknowledgement was recorded. |
nexsys4.serverside.aff.priority.set | eventstream | id | stable | Live serverside affliction priority confirmation was observed. |
nexsys4.serverside.def.priority.set | eventstream | id | stable | Live serverside defence priority confirmation was observed. |
nexsys4.rule.activated | eventstream | id | stable | Serverside rule became active. |
nexsys4.rule.deactivated | eventstream | id | stable | Serverside rule stopped being active. |
JS-public-only topics
| Topic | Scoped audience | Scoped payload key | Stability | Description |
|---|---|---|---|---|
nexsys4.system.runtime.changed | none | none | stable | Runtime implementation state changed. |
nexsys4.system.settings.changed | none | none | stable | Runtime settings changed. |
nexsys4.system.baseline.changed | none | none | stable | Baseline intent changed. |
nexsys4.ui.config.changed | none | none | stable | Configuration dialog open state changed. |
nexsys4.aff.priority.changed | none | none | stable | Affliction priority changed. |
nexsys4.def.priority.changed | none | none | stable | Defence priority changed. |
nexsys4.balance.timer.restarted | none | none | stable | Balance loss timer was restarted without a state flip. |
nexsys4.limb.decay | none | none | stable | Limb damage counter reset after 3 minutes of no hits. |
nexsys4.cache.precache.changed | none | none | stable | Desired precache state changed. |
nexsys4.queue.updated | none | none | stable | Queue contents changed. |
nexsys4.queue.flushed | none | none | stable | Queue flush decision completed. |
nexsys4.queue.deferred | none | none | stable | Queue execution was deferred. |
nexsys4.queue.cleared | none | none | stable | Queue contents were cleared. |
nexsys4.serverside.dirty | none | none | stable | Serverside reconciliation dirty flag changed. |
nexsys4.serverside.evaluated | none | none | stable | Serverside evaluation completed. |
nexsys4.serverside.rule.changed | none | none | stable | Legacy generic serverside rule-change signal reserved for compatibility. |
nexsys4.rule.added | none | none | stable | Serverside rule was added to the registry. |
nexsys4.rule.removed | none | none | stable | Serverside rule was removed from the registry. |
nexsys4.rule.enabled | none | none | stable | Serverside rule was enabled. |
nexsys4.rule.disabled | none | none | stable | Serverside rule was disabled. |
nexsys4.rule.pack.loaded | none | none | stable | Serverside rule pack was loaded. |
nexsys4.rule.pack.unloaded | none | none | stable | Serverside rule pack was unloaded. |
nexsys4.rule.order.changed | none | none | stable | Serverside rule evaluation order changed. |
Internal-only topics
No topics are currently classified as internal in the registry.
Non-registry names
The runtime still uses adapter-local and controller-local event names for
ingress, orchestration, and tooling, but those names are intentionally excluded
from this generated dictionary because they are not canonical nexsys4.*
contract topics.