nexSys4 EventStream Reference
This file is generated from src/nexsys/core/events/topicRegistry.js.
If a topic is not listed here, it is not part of the outbound Nexus
EventStream contract.
The registry is authoritative for topic identity, audience, stability, and scoped inheritance. Payload field encyclopedias are intentionally not duplicated here, because the generated contract is meant to eliminate doc drift rather than restate hand-maintained runtime notes.
Contract rules
- EventStream is the canonical interface for external packages attaching listeners to nexSys4.
- Only registry entries with
audience: eventstreamappear here. - Scoped variants are emitted only when
scopedAudience: eventstream. nexsys4.raw.gmcpalso requirespublishRawGmcp === true.- Every public payload includes
topicandat.
Outbound EventStream topics
Runtime and system
| Topic | Scoped EventStream variants | Stability | Description |
|---|---|---|---|
nexsys4.runtime.started | none | stable | Runtime startup completed. |
nexsys4.runtime.stopped | none | stable | Runtime shutdown completed. |
nexsys4.raw.gmcp | none | stable | Raw GMCP payload observed at the adapter boundary. |
nexsys4.system.vitals.changed | none | stable | Character vitals changed. |
nexsys4.system.health.changed | none | stable | Health changed. |
nexsys4.system.mana.changed | none | stable | Mana changed. |
nexsys4.system.rage.changed | none | stable | Rage changed. |
nexsys4.system.bleed.changed | none | stable | Bleed changed. |
nexsys4.system.status.changed | none | stable | Character status snapshot changed. |
nexsys4.system.class.changed | none | stable | Character class changed. |
nexsys4.system.target.changed | none | stable | Current target changed. |
nexsys4.system.room.changed | none | stable | Current room changed. |
nexsys4.system.room_items.changed | none | stable | Visible room items changed. |
nexsys4.system.pause.changed | none | stable | Runtime pause state changed. |
nexsys4.system.paused | none | stable | Runtime paused. |
nexsys4.system.unpaused | none | stable | Runtime unpaused. |
nexsys4.system.loaded | none | stable | Startup game-state initialization completed. |
nexsys4.system.death.detected | none | stable | Death was detected from character state. |
nexsys4.system.mount.changed | none | stable | Mounted state changed. |
nexsys4.system.wielded.changed | none | stable | Wielded equipment changed. |
Afflictions, defences, balances, and limbs
| Topic | Scoped EventStream variants | Stability | Description |
|---|---|---|---|
nexsys4.aff.got | nexsys4.aff.got.<name> (eventstream) | stable | Affliction became active. |
nexsys4.aff.lost | nexsys4.aff.lost.<name> (eventstream) | stable | Affliction was cured or removed. |
nexsys4.aff.stack.changed | nexsys4.aff.stack.changed.<name> (eventstream) | stable | Affliction stack count changed. |
nexsys4.def.got | nexsys4.def.got.<id> (eventstream) | stable | Defence became active. |
nexsys4.def.lost | nexsys4.def.lost.<id> (eventstream) | stable | Defence expired or was removed. |
nexsys4.balance.got | nexsys4.balance.got.<id> (eventstream) | stable | Balance became available. |
nexsys4.balance.lost | nexsys4.balance.lost.<id> (eventstream) | stable | Balance was consumed or lost. |
nexsys4.balance.reset | nexsys4.balance.reset.<id> (eventstream) | stable | Balance timing was reset. |
nexsys4.balance.duration.observed | nexsys4.balance.duration.observed.<id> (eventstream) | stable | Observed balance recovery duration changed. |
nexsys4.eqbal.got | none | stable | Balance and equilibrium are both available. |
nexsys4.limb.hit | nexsys4.limb.hit.<limb> (eventstream) | stable | Limb damage was recorded. |
nexsys4.limb.reset | nexsys4.limb.reset.<limb> (eventstream) | stable | Limb tracking was reset. |
nexsys4.limb.stage.changed | nexsys4.limb.stage.changed.<limb> (eventstream) | stable | Limb damage stage changed. |
Items, cache, queue, rules, and serverside
| Topic | Scoped EventStream variants | Stability | Description |
|---|---|---|---|
nexsys4.cache.amount.changed | none | stable | Cached item counts changed. |
nexsys4.cache.inventory.list | none | stable | Inventory cache snapshot applied. |
nexsys4.cache.rift.list | none | stable | Rift cache snapshot applied. |
nexsys4.item.room.added | none | stable | An item appeared in the current room. |
nexsys4.item.room.removed | none | stable | An item left the current room. |
nexsys4.item.room.updated | none | stable | A current-room item changed. |
nexsys4.item.room.list | none | stable | Current-room item list snapshot received. |
nexsys4.item.inv.added | none | stable | An item was added to inventory. |
nexsys4.item.inv.removed | none | stable | An item was removed from inventory. |
nexsys4.item.inv.updated | none | stable | An inventory item changed. |
nexsys4.item.inv.list | none | stable | Inventory item list snapshot received. |
nexsys4.queue.sent | nexsys4.queue.sent.<queueName> (eventstream) | stable | A queue submission was accepted by the server. |
nexsys4.queue.fired | nexsys4.queue.fired.<queueName> (eventstream) | stable | A queue fire was acknowledged for a named queue. |
nexsys4.queue.fired.ack | none | stable | Queue fire acknowledgement was recorded. |
nexsys4.serverside.aff.priority.set | nexsys4.serverside.aff.priority.set.<id> (eventstream) | stable | Live serverside affliction priority confirmation was observed. |
nexsys4.serverside.def.priority.set | nexsys4.serverside.def.priority.set.<id> (eventstream) | stable | Live serverside defence priority confirmation was observed. |
nexsys4.rule.activated | nexsys4.rule.activated.<id> (eventstream) | stable | Serverside rule became active. |
nexsys4.rule.deactivated | nexsys4.rule.deactivated.<id> (eventstream) | stable | Serverside rule stopped being active. |
Not included here
- JS-public-only and internal registry topics are listed in the event dictionary.
- Adapter-local names such as
PromptEvent,NoticeEvent,TargetSetEvent, andTargetChangedare not registry topics and are never part of this outbound EventStream contract.