Events Index
This page provides a complete index of every event emitted by the world-contracts. Events are the primary mechanism for off-chain indexers, game clients, and third-party tools to observe state changes on-chain. All event structs carry the has copy, drop abilities, and are emitted via Sui’s event::emit.
Access Control
Source: access/access_control.move
Full documentation: access_control.move
OwnerCapCreatedEvent
Emitted when a new OwnerCap is created for an object.
| Field | Type | Description |
|---|---|---|
owner_cap_id |
ID |
The ID of the newly created OwnerCap. |
authorized_object_id |
ID |
The ID of the object this capability authorizes. |
OwnerCapTransferred
Emitted when an OwnerCap is transferred to a new owner.
| Field | Type | Description |
|---|---|---|
owner_cap_id |
ID |
The ID of the transferred OwnerCap. |
authorized_object_id |
ID |
The ID of the object this capability authorizes. |
previous_owner |
address |
The address of the prior owner. |
owner |
address |
The address of the new owner. |
Assemblies
Assembly
Source: assemblies/assembly.move
Full documentation: assembly.move
AssemblyCreatedEvent
Emitted when a new generic assembly is created.
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the assembly. |
assembly_key |
TenantItemId |
The deterministic game-derived key for the assembly. |
owner_cap_id |
ID |
The ID of the OwnerCap created for the assembly owner. |
type_id |
u64 |
The assembly type identifier (e.g. Gate, Storage Unit). |
Gate
Source: assemblies/gate.move
Full documentation: gate.move
GateCreatedEvent
Emitted when a new gate (stargate) is anchored in the world.
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the gate. |
assembly_key |
TenantItemId |
The deterministic game-derived key for the gate. |
owner_cap_id |
ID |
The ID of the OwnerCap created for the gate owner. |
type_id |
u64 |
The assembly type identifier. |
location_hash |
vector<u8> |
A hash representing the gate’s spatial location. |
status |
Status |
The initial status of the gate (ONLINE, OFFLINE, etc.). |
GateLinkedEvent
Emitted when two gates are linked together, forming a bidirectional jump route.
| Field | Type | Description |
|---|---|---|
source_gate_id |
ID |
The on-chain object ID of the source gate. |
source_gate_key |
TenantItemId |
The game-derived key of the source gate. |
destination_gate_id |
ID |
The on-chain object ID of the destination gate. |
destination_gate_key |
TenantItemId |
The game-derived key of the destination gate. |
GateUnlinkedEvent
Emitted when a link between two gates is severed.
| Field | Type | Description |
|---|---|---|
source_gate_id |
ID |
The on-chain object ID of the source gate. |
source_gate_key |
TenantItemId |
The game-derived key of the source gate. |
destination_gate_id |
ID |
The on-chain object ID of the destination gate. |
destination_gate_key |
TenantItemId |
The game-derived key of the destination gate. |
JumpEvent
Emitted when a character successfully jumps through a linked gate.
| Field | Type | Description |
|---|---|---|
source_gate_id |
ID |
The on-chain object ID of the source gate. |
source_gate_key |
TenantItemId |
The game-derived key of the source gate. |
destination_gate_id |
ID |
The on-chain object ID of the destination gate. |
destination_gate_key |
TenantItemId |
The game-derived key of the destination gate. |
character_id |
ID |
The on-chain object ID of the jumping character. |
character_key |
TenantItemId |
The game-derived key of the jumping character. |
Storage Unit
Source: assemblies/storage_unit.move
Full documentation: storage_unit.move
StorageUnitCreatedEvent
Emitted when a new Storage Unit is anchored.
| Field | Type | Description |
|---|---|---|
storage_unit_id |
ID |
The on-chain object ID of the storage unit. |
assembly_key |
TenantItemId |
The deterministic game-derived key. |
owner_cap_id |
ID |
The ID of the OwnerCap created for the owner. |
type_id |
u64 |
The assembly type identifier. |
max_capacity |
u64 |
The maximum inventory volume capacity. |
location_hash |
vector<u8> |
A hash representing the spatial location. |
status |
Status |
The initial status of the storage unit. |
Entities
Character
Source: character/character.move
Full documentation: character.move
CharacterCreatedEvent
Emitted when a new player character is created.
| Field | Type | Description |
|---|---|---|
character_id |
ID |
The on-chain object ID of the character. |
key |
TenantItemId |
The deterministic game-derived key. |
tribe_id |
u32 |
The tribe the character belongs to. |
character_address |
address |
The Sui address associated with the character. |
Killmail
Source: killmail/killmail.move
Full documentation: killmail.move
KillmailCreatedEvent
Emitted when a new combat loss record is created.
| Field | Type | Description |
|---|---|---|
killmail_id |
TenantItemId |
The unique identifier for this killmail. |
killer_character_id |
TenantItemId |
The game-derived key of the character who scored the kill. |
victim_character_id |
TenantItemId |
The game-derived key of the character who was destroyed. |
solar_system_id |
TenantItemId |
The game-derived key of the solar system where the kill occurred. |
loss_type |
LossType |
The type of loss — SHIP or STRUCTURE. |
kill_timestamp |
u64 |
Unix timestamp (in seconds) of the kill. |
Network Node
Source: network_node/network_node.move
Full documentation: network_node.move
NetworkNodeCreatedEvent
Emitted when a new Network Node is created.
| Field | Type | Description |
|---|---|---|
network_node_id |
ID |
The on-chain object ID of the network node. |
assembly_key |
TenantItemId |
The deterministic game-derived key. |
owner_cap_id |
ID |
The ID of the OwnerCap created for the owner. |
type_id |
u64 |
The assembly type identifier. |
fuel_max_capacity |
u64 |
The maximum fuel the node can hold. |
fuel_burn_rate_in_ms |
u64 |
The rate at which fuel is consumed, in milliseconds per unit. |
max_energy_production |
u64 |
The maximum energy this node can produce. |
Primitives
Energy
Source: primitives/energy.move
Full documentation: energy.move
StartEnergyProductionEvent
Emitted when an energy source begins producing energy.
| Field | Type | Description |
|---|---|---|
energy_source_id |
ID |
The on-chain object ID of the energy source. |
current_energy_production |
u64 |
The energy production rate at the time of starting. |
StopEnergyProductionEvent
Emitted when an energy source stops producing energy.
| Field | Type | Description |
|---|---|---|
energy_source_id |
ID |
The on-chain object ID of the energy source. |
EnergyReservedEvent
Emitted when an assembly reserves energy from a source.
| Field | Type | Description |
|---|---|---|
energy_source_id |
ID |
The on-chain object ID of the energy source. |
assembly_type_id |
u64 |
The type of assembly reserving energy. |
energy_reserved |
u64 |
The amount of energy reserved in this operation. |
total_reserved_energy |
u64 |
The total reserved energy on this source after the reservation. |
EnergyReleasedEvent
Emitted when reserved energy is released back to a source.
| Field | Type | Description |
|---|---|---|
energy_source_id |
ID |
The on-chain object ID of the energy source. |
assembly_type_id |
u64 |
The type of assembly releasing energy. |
energy_released |
u64 |
The amount of energy released. |
total_reserved_energy |
u64 |
The total reserved energy on this source after the release. |
Fuel
Source: primitives/fuel.move
Full documentation: fuel.move
FuelEvent
A generic event emitted for all fuel state changes. The action field indicates the specific operation.
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the assembly. |
assembly_key |
TenantItemId |
The game-derived key of the assembly. |
type_id |
u64 |
The fuel type identifier. |
old_quantity |
u64 |
The fuel quantity before the operation. |
new_quantity |
u64 |
The fuel quantity after the operation. |
is_burning |
bool |
Whether the fuel is currently being burned. |
action |
Action |
The action that triggered this event. |
Action enum values:
| Variant | Description |
|---|---|
DEPOSITED |
Fuel was deposited into the assembly. |
WITHDRAWN |
Fuel was withdrawn from the assembly. |
BURNING_STARTED |
Fuel burning was started. |
BURNING_STOPPED |
Fuel burning was stopped. |
BURNING_UPDATED |
Fuel quantities were recalculated during a burn cycle. |
DELETED |
The fuel storage was deleted. |
FuelEfficiencySetEvent
Emitted when a fuel type’s efficiency multiplier is configured.
| Field | Type | Description |
|---|---|---|
fuel_type_id |
u64 |
The fuel type identifier. |
efficiency |
u64 |
The efficiency multiplier value. |
FuelEfficiencyRemovedEvent
Emitted when a fuel type’s efficiency configuration is removed.
| Field | Type | Description |
|---|---|---|
fuel_type_id |
u64 |
The fuel type identifier. |
Inventory
Source: primitives/inventory.move
Full documentation: inventory.move
ItemMintedEvent
Emitted when items are minted (bridged from game to chain) into an assembly’s inventory.
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the assembly. |
assembly_key |
TenantItemId |
The game-derived key of the assembly. |
character_id |
ID |
The on-chain object ID of the character performing the action. |
character_key |
TenantItemId |
The game-derived key of the character. |
item_id |
u64 |
The unique identifier of the item. |
type_id |
u64 |
The item type identifier. |
quantity |
u32 |
The number of items minted. |
ItemBurnedEvent
Emitted when items are burned (bridged from chain back to game).
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the assembly. |
assembly_key |
TenantItemId |
The game-derived key of the assembly. |
character_id |
ID |
The on-chain object ID of the character. |
character_key |
TenantItemId |
The game-derived key of the character. |
item_id |
u64 |
The unique identifier of the item. |
type_id |
u64 |
The item type identifier. |
quantity |
u32 |
The number of items burned. |
ItemDepositedEvent
Emitted when items are deposited into an assembly’s inventory.
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the assembly. |
assembly_key |
TenantItemId |
The game-derived key of the assembly. |
character_id |
ID |
The on-chain object ID of the character. |
character_key |
TenantItemId |
The game-derived key of the character. |
item_id |
u64 |
The unique identifier of the item. |
type_id |
u64 |
The item type identifier. |
quantity |
u32 |
The number of items deposited. |
ItemWithdrawnEvent
Emitted when items are withdrawn from an assembly’s inventory.
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the assembly. |
assembly_key |
TenantItemId |
The game-derived key of the assembly. |
character_id |
ID |
The on-chain object ID of the character. |
character_key |
TenantItemId |
The game-derived key of the character. |
item_id |
u64 |
The unique identifier of the item. |
type_id |
u64 |
The item type identifier. |
quantity |
u32 |
The number of items withdrawn. |
ItemDestroyedEvent
Emitted when items are destroyed during inventory cleanup (e.g. when an inventory is deleted).
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the assembly. |
assembly_key |
TenantItemId |
The game-derived key of the assembly. |
item_id |
u64 |
The unique identifier of the item. |
type_id |
u64 |
The item type identifier. |
quantity |
u32 |
The number of items destroyed. |
Metadata
Source: primitives/metadata.move
Full documentation: metadata.move
MetadataChangedEvent
Emitted when an assembly’s metadata (name, description, URL) is updated.
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the assembly. |
assembly_key |
TenantItemId |
The game-derived key of the assembly. |
name |
String |
The new name. |
description |
String |
The new description. |
url |
String |
The new URL. |
Status
Source: primitives/status.move
Full documentation: status.move
StatusChangedEvent
Emitted when an assembly’s operational status changes.
| Field | Type | Description |
|---|---|---|
assembly_id |
ID |
The on-chain object ID of the assembly. |
assembly_key |
TenantItemId |
The game-derived key of the assembly. |
status |
Status |
The new operational status. |
action |
Action |
The action that caused the change. |
Status enum values:
| Variant | Description |
|---|---|
NULL |
No status set (initial state). |
OFFLINE |
The assembly is offline. |
ONLINE |
The assembly is online. |
Action enum values:
| Variant | Description |
|---|---|
ANCHORED |
The assembly was anchored in space. |
ONLINE |
The assembly was brought online. |
OFFLINE |
The assembly was taken offline. |
UNANCHORED |
The assembly was unanchored. |
Quick Reference
A summary table of all 27 events across the world-contracts:
| Module | Event | Key Trigger |
|---|---|---|
access_control |
OwnerCapCreatedEvent |
An OwnerCap is created |
access_control |
OwnerCapTransferred |
An OwnerCap changes owner |
assembly |
AssemblyCreatedEvent |
A generic assembly is created |
gate |
GateCreatedEvent |
A gate is anchored |
gate |
GateLinkedEvent |
Two gates are linked |
gate |
GateUnlinkedEvent |
Two gates are unlinked |
gate |
JumpEvent |
A character jumps through a gate |
storage_unit |
StorageUnitCreatedEvent |
A storage unit is anchored |
character |
CharacterCreatedEvent |
A player character is created |
killmail |
KillmailCreatedEvent |
A combat loss is recorded |
network_node |
NetworkNodeCreatedEvent |
A network node is created |
energy |
StartEnergyProductionEvent |
Energy production starts |
energy |
StopEnergyProductionEvent |
Energy production stops |
energy |
EnergyReservedEvent |
Energy is reserved by an assembly |
energy |
EnergyReleasedEvent |
Reserved energy is released |
fuel |
FuelEvent |
Any fuel state change (deposit, withdraw, burn, etc.) |
fuel |
FuelEfficiencySetEvent |
A fuel efficiency multiplier is configured |
fuel |
FuelEfficiencyRemovedEvent |
A fuel efficiency config is removed |
inventory |
ItemMintedEvent |
Items are minted (game → chain) |
inventory |
ItemBurnedEvent |
Items are burned (chain → game) |
inventory |
ItemDepositedEvent |
Items are deposited into inventory |
inventory |
ItemWithdrawnEvent |
Items are withdrawn from inventory |
inventory |
ItemDestroyedEvent |
Items are destroyed during cleanup |
metadata |
MetadataChangedEvent |
Assembly metadata is updated |
status |
StatusChangedEvent |
Assembly status changes |
Note: Extension example contracts (e.g.
tribe_permit,corpse_gate_bounty, and extensionturret/gate) do not emit their own events in the current codebase. The turret assembly documented in turret.move is not yet present in the open-source world-contracts repository.