<!-- GENERATED FILE: do not edit by hand. --> <!-- Regenerate with npm run gen-docs. -->
Sources: packages/script-nodes/src/index.ts:scriptNodeDeclarations.
Script Node Declarations
Canonical Script IR node declarations live in @game-platform/script-nodes and are consumed by runtime, codegen, generated SDK declarations, AI tooling, and frontend visual authoring.
This package is the single declaration source for script visual nodes. It has no server or runtime dependencies and is safe for frontend imports.
Declaration catalog hash: sha256:c5fdfee6c6ace6622a8f1d053340049909da671ee4fc36f40f308417edbb64c4.
Counts
| Kind | Count |
|---|---|
| event | 13 |
| core | 52 |
| host | 83 |
| total | 148 |
Categories
| Category | Count | Nodes |
|---|---|---|
| Audio | 5 | host.audio.play, host.audio.play_spatial, host.audio.set_background_music, host.audio.set_volume, host.audio.stop |
| Components | 7 | core.component.patch, core.component.read, host.entity.add_component, host.entity.patch_component, host.entity.read_component, host.entity.remove_component, host.entity.replace_component |
| Control | 16 | core.array.for_each, core.bounded.for, core.bounded.while, core.flow.break, core.flow.continue, core.flow.do_n, core.flow.do_once, core.flow.flip_flop, core.flow.gate, core.flow.multi_gate, core.flow.return, core.flow.timer.after, core.flow.timer.cancel, core.if, core.sequence, core.switch |
| Debug | 1 | host.debug.log |
| Effects | 1 | core.host.call |
| Events | 17 | core.event.key, core.event.payload.get, event.action, event.custom, event.match_ended, event.network_message, event.phase, event.phase_exit, event.player_joined, event.player_left, event.start, event.tick, event.timer, event.trigger, event.trigger_exit, host.events.emit, host.network.send_message |
| Match & Players | 7 | host.match.add_score, host.match.get_score, host.match.get_state, host.match.patch_objective, host.match.set_phase, host.room.get_state, host.team.get_assignment |
| Persistence | 8 | host.warehouse.append, host.warehouse.create, host.warehouse.delete, host.warehouse.get, host.warehouse.increment, host.warehouse.query, host.warehouse.set, host.warehouse.update |
| Physics | 16 | host.navigation.find_path, host.navigation.is_reachable, host.navigation.nearest_point, host.navigation.raycast, host.navigation.steer_toward, host.physics.command, host.physics.occupancy_query, host.physics.overlap_test, host.physics.shapecast, host.terrain.height_at, host.terrain.normal_at, host.terrain.raycast_down, host.terrain.sample_layer_weights, host.terrain.slope_at, host.water.is_submerged, host.water.surface_level_at |
| Platform | 8 | host.camera.add_look_input, host.camera.set_look_sensitivity, host.camera.set_pitch_clamp, host.camera.set_view_target, host.platform.exit_fullscreen, host.platform.exit_pointer_lock, host.platform.request_fullscreen, host.platform.request_pointer_lock |
| UI | 3 | host.ui.close_panel, host.ui.open_panel, host.ui.set_widget_value |
| Values | 44 | core.arithmetic, core.array.first, core.array.get, core.array.length, core.array.mutate, core.array.query, core.array.reduce, core.array.transform, core.boolean, core.comparison, core.entity.id, core.expression.codebox, core.get, core.let, core.map, core.math, core.math.remap, core.not, core.object, core.quat, core.record.get, core.select, core.set, core.string, core.value.array, core.value.assert, core.value.cast, core.value.coerce, core.value.literal, core.value.object, core.vec3, host.random.bool, host.random.gaussian, host.random.int, host.random.next, host.random.pick, host.random.point_in_circle, host.random.point_in_sphere, host.random.range, host.random.seeded, host.random.shuffle, host.random.sign, host.random.unit_vector, host.random.weighted_pick |
| World | 15 | host.entity.ancestors, host.entity.children, host.entity.descendants, host.entity.detach, host.entity.has_tag, host.entity.parent, host.entity.remove_tag, host.entity.set_name, host.entity.set_parent, host.entity.set_tag, host.world.despawn, host.world.find, host.world.spawn, host.world.spawn_prefab, host.world.teleport_player |
SDK Hosts
| Host | Node | Category | SDK path | Deterministic | Metered | Risk | Effect tags | Permissions |
|---|---|---|---|---|---|---|---|---|
Audio.play | host.audio.play | Audio | ctx.audio.play | no | yes | effect | audioEffect, nonRollbackable | audio:effect |
Audio.playSpatial | host.audio.play_spatial | Audio | ctx.audio.playSpatial | no | yes | effect | audioEffect, nonRollbackable | audio:effect |
Audio.setBackgroundMusic | host.audio.set_background_music | Audio | ctx.audio.setBackgroundMusic | no | yes | effect | audioEffect, nonRollbackable | audio:effect |
Audio.setVolume | host.audio.set_volume | Audio | ctx.audio.setVolume | yes | yes | effect | audioEffect | audio:effect |
Audio.stop | host.audio.stop | Audio | ctx.audio.stop | yes | yes | effect | audioEffect | audio:effect |
Camera.addLookInput | host.camera.add_look_input | Platform | ctx.camera.addLookInput | yes | yes | effect | platformRequest, nonRollbackable, requiresAuthority | camera:write |
Camera.setLookSensitivity | host.camera.set_look_sensitivity | Platform | ctx.camera.setLookSensitivity | yes | yes | effect | platformRequest, nonRollbackable, requiresAuthority | camera:write |
Camera.setPitchClamp | host.camera.set_pitch_clamp | Platform | ctx.camera.setPitchClamp | yes | yes | effect | platformRequest, nonRollbackable, requiresAuthority | camera:write |
Camera.setViewTarget | host.camera.set_view_target | Platform | ctx.camera.setViewTarget | yes | yes | effect | platformRequest, nonRollbackable, requiresAuthority | camera:write |
Debug.log | host.debug.log | Debug | ctx.log | no | no | read | emitEvent | debug:write |
Entity.addComponent | host.entity.add_component | Components | ctx.entity.addComponent | yes | yes | write | writeState, writeWorld, requiresAuthority | component:write |
Entity.ancestors | host.entity.ancestors | World | ctx.entity.ancestors | yes | yes | read | readWorld, readState | world:read |
Entity.children | host.entity.children | World | ctx.entity.children | yes | yes | read | readWorld, readState | world:read |
Entity.descendants | host.entity.descendants | World | ctx.entity.descendants | yes | yes | read | readWorld, readState | world:read |
Entity.detach | host.entity.detach | World | ctx.entity.detach | yes | yes | write | writeState, writeWorld, requiresAuthority | entity:write |
Entity.hasTag | host.entity.has_tag | World | ctx.entity.hasTag | yes | yes | read | readWorld, readState | world:read |
Entity.parent | host.entity.parent | World | ctx.entity.parent | yes | yes | read | readWorld, readState | world:read |
Entity.patchComponent | host.entity.patch_component | Components | ctx.entity.patchComponent | yes | yes | write | writeState, writeWorld, requiresAuthority | component:write |
Entity.readComponent | host.entity.read_component | Components | ctx.entity.readComponent | yes | yes | read | readState, readWorld | component:read |
Entity.removeComponent | host.entity.remove_component | Components | ctx.entity.removeComponent | yes | yes | write | writeState, writeWorld, requiresAuthority | component:write |
Entity.removeTag | host.entity.remove_tag | World | ctx.entity.removeTag | yes | yes | write | writeState, writeWorld, requiresAuthority | entity:write |
Entity.replaceComponent | host.entity.replace_component | Components | ctx.entity.replaceComponent | yes | yes | write | writeState, writeWorld, requiresAuthority | component:write |
Entity.setName | host.entity.set_name | World | ctx.entity.setName | yes | yes | write | writeState, writeWorld, requiresAuthority | entity:write |
Entity.setParent | host.entity.set_parent | World | ctx.entity.setParent | yes | yes | write | writeState, writeWorld, requiresAuthority | entity:write |
Entity.setTag | host.entity.set_tag | World | ctx.entity.setTag | yes | yes | write | writeState, writeWorld, requiresAuthority | entity:write |
Events.emit | host.events.emit | Events | ctx.events.emit | yes | yes | effect | emitEvent | event:emit |
Match.addScore | host.match.add_score | Match & Players | ctx.match.addScore | yes | yes | effect | writeState, emitEvent, requiresAuthority | match:write |
Match.getScore | host.match.get_score | Match & Players | ctx.match.getScore | yes | yes | read | readState | match:read |
Match.getState | host.match.get_state | Match & Players | ctx.match.getState | yes | yes | read | readState | match:read |
Match.patchObjective | host.match.patch_objective | Match & Players | ctx.match.patchObjective | yes | yes | effect | writeState, emitEvent, requiresAuthority | match:write |
Match.setPhase | host.match.set_phase | Match & Players | ctx.match.setPhase | yes | yes | effect | writeState, emitEvent, requiresAuthority | match:write |
Navigation.findPath | host.navigation.find_path | Physics | ctx.navigation.findPath | yes | yes | read | readWorld | navigation:query |
Navigation.isReachable | host.navigation.is_reachable | Physics | ctx.navigation.isReachable | yes | yes | read | readWorld | navigation:query |
Navigation.nearestPoint | host.navigation.nearest_point | Physics | ctx.navigation.nearestPoint | yes | yes | read | readWorld | navigation:query |
Navigation.raycast | host.navigation.raycast | Physics | ctx.navigation.raycast | yes | yes | read | readWorld | navigation:query |
Navigation.steerToward | host.navigation.steer_toward | Physics | ctx.navigation.steerToward | yes | yes | read | readWorld | navigation:query |
Network.sendMessage | host.network.send_message | Events | ctx.network.sendMessage | yes | yes | effect | emitEvent, networked, nonRollbackable | network:send |
Physics.command | host.physics.command | Physics | ctx.physics.command | yes | yes | effect | physicsCommand, writeWorld, requiresAuthority | physics:write |
Physics.occupancyQuery | host.physics.occupancy_query | Physics | ctx.physics.occupancyQuery | yes | yes | read | readWorld | physics:query |
Physics.overlapTest | host.physics.overlap_test | Physics | ctx.physics.overlapTest | yes | yes | read | readWorld | physics:query |
Physics.shapecast | host.physics.shapecast | Physics | ctx.physics.shapecast | yes | yes | read | readWorld | physics:query |
Platform.exitFullscreen | host.platform.exit_fullscreen | Platform | ctx.platform.exitFullscreen | yes | yes | effect | platformRequest, nonRollbackable, requiresAuthority | platform:request |
Platform.exitPointerLock | host.platform.exit_pointer_lock | Platform | ctx.platform.exitPointerLock | yes | yes | effect | platformRequest, nonRollbackable, requiresAuthority | platform:request |
Platform.requestFullscreen | host.platform.request_fullscreen | Platform | ctx.platform.requestFullscreen | yes | yes | effect | platformRequest, nonRollbackable, requiresAuthority | platform:request |
Platform.requestPointerLock | host.platform.request_pointer_lock | Platform | ctx.platform.requestPointerLock | yes | yes | effect | platformRequest, nonRollbackable, requiresAuthority | platform:request |
Random.bool | host.random.bool | Values | ctx.random.bool | yes | no | read | pure | random:read |
Random.gaussian | host.random.gaussian | Values | ctx.random.gaussian | yes | no | read | pure | random:read |
Random.int | host.random.int | Values | ctx.random.int | yes | no | read | pure | random:read |
Random.next | host.random.next | Values | ctx.random | yes | no | read | pure | random:read |
Random.pick | host.random.pick | Values | ctx.random.pick | yes | no | read | pure | random:read |
Random.pointInCircle | host.random.point_in_circle | Values | ctx.random.pointInCircle | yes | no | read | pure | random:read |
Random.pointInSphere | host.random.point_in_sphere | Values | ctx.random.pointInSphere | yes | no | read | pure | random:read |
Random.range | host.random.range | Values | ctx.random.range | yes | no | read | pure | random:read |
Random.seeded | host.random.seeded | Values | ctx.random.seeded | yes | no | read | pure | random:read |
Random.shuffle | host.random.shuffle | Values | ctx.random.shuffle | yes | no | read | pure | random:read |
Random.sign | host.random.sign | Values | ctx.random.sign | yes | no | read | pure | random:read |
Random.unitVector | host.random.unit_vector | Values | ctx.random.unitVector | yes | no | read | pure | random:read |
Random.weightedPick | host.random.weighted_pick | Values | ctx.random.weightedPick | yes | no | read | pure | random:read |
Room.getState | host.room.get_state | Match & Players | ctx.room.getState | yes | yes | read | readState, readWorld | room:read |
Team.getAssignment | host.team.get_assignment | Match & Players | ctx.team.getAssignment | yes | yes | read | readState, readWorld | team:read |
Terrain.heightAt | host.terrain.height_at | Physics | ctx.terrain.heightAt | yes | yes | read | readWorld | terrain:query |
Terrain.normalAt | host.terrain.normal_at | Physics | ctx.terrain.normalAt | yes | yes | read | readWorld | terrain:query |
Terrain.raycastDown | host.terrain.raycast_down | Physics | ctx.terrain.raycastDown | yes | yes | read | readWorld | terrain:query |
Terrain.sampleLayerWeights | host.terrain.sample_layer_weights | Physics | ctx.terrain.sampleLayerWeights | yes | yes | read | readWorld | terrain:query |
Terrain.slopeAt | host.terrain.slope_at | Physics | ctx.terrain.slopeAt | yes | yes | read | readWorld | terrain:query |
UI.closePanel | host.ui.close_panel | UI | ctx.ui.closePanel | no | yes | effect | uiEffect, nonRollbackable | ui:effect |
UI.openPanel | host.ui.open_panel | UI | ctx.ui.openPanel | no | yes | effect | uiEffect, nonRollbackable | ui:effect |
UI.setWidgetValue | host.ui.set_widget_value | UI | ctx.ui.setWidgetValue | no | yes | effect | uiEffect, nonRollbackable | ui:effect |
Warehouse.append | host.warehouse.append | Persistence | ctx.warehouse.append | yes | yes | write | writeState, durable, requiresAuthority | warehouse:write |
Warehouse.create | host.warehouse.create | Persistence | ctx.warehouse.create | yes | yes | write | writeState, durable, requiresAuthority | warehouse:write |
Warehouse.delete | host.warehouse.delete | Persistence | ctx.warehouse.delete | yes | yes | write | writeState, durable, requiresAuthority | warehouse:write |
Warehouse.get | host.warehouse.get | Persistence | ctx.warehouse.get | yes | yes | read | readState, durable | warehouse:read |
Warehouse.increment | host.warehouse.increment | Persistence | ctx.warehouse.increment | yes | yes | write | writeState, durable, requiresAuthority | warehouse:write |
Warehouse.query | host.warehouse.query | Persistence | ctx.warehouse.query | yes | yes | read | readState, durable | warehouse:read |
Warehouse.set | host.warehouse.set | Persistence | ctx.warehouse.set | yes | yes | write | writeState, durable, requiresAuthority | warehouse:write |
Warehouse.update | host.warehouse.update | Persistence | ctx.warehouse.update | yes | yes | write | writeState, durable, requiresAuthority | warehouse:write |
Water.isSubmerged | host.water.is_submerged | Physics | ctx.water.isSubmerged | yes | yes | read | readWorld | water:query |
Water.surfaceLevelAt | host.water.surface_level_at | Physics | ctx.water.surfaceLevelAt | yes | yes | read | readWorld | water:query |
World.despawn | host.world.despawn | World | ctx.world.despawn | yes | yes | effect | despawnEntity, writeWorld, requiresAuthority | entity:write |
World.find | host.world.find | World | ctx.world.find | yes | yes | read | readWorld | world:read |
World.spawn | host.world.spawn | World | ctx.world.spawn | yes | yes | effect | spawnEntity, writeWorld, requiresAuthority | entity:write |
World.spawnPrefab | host.world.spawn_prefab | World | ctx.world.spawnPrefab | yes | yes | effect | spawnEntity, writeWorld, requiresAuthority | entity:write |
World.teleportPlayer | host.world.teleport_player | World | ctx.world.teleportPlayer | yes | yes | effect | writeWorld, networked, nonRollbackable, requiresAuthority | world:write |
Atom Contract Cards
Every launch host atom has a contract card derived from SCRIPT_ATOM_REGISTRY. Compatibility-only aliases are intentionally excluded from this table and from new authoring.
| Atom | Classification | Owner | Inputs | Validation | Permissions | Determinism | Pending op / command | Runtime drain | State patches | Events | Projection | Rejection | Tests | Docs | Compatibility |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Audio.play | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | audio:effect | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Audio.playSpatial | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | audio:effect | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Audio.setBackgroundMusic | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | audio:effect | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Audio.setVolume | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | audio:effect | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Audio.stop | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | audio:effect | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Camera.addLookInput | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | camera:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Camera.setLookSensitivity | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | camera:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Camera.setPitchClamp | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | camera:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Camera.setViewTarget | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | camera:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Debug.log | keep_public_atom | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | debug:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.addComponent | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | component:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.ancestors | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | world:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.children | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | world:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.descendants | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | world:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.detach | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | entity:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.hasTag | keep_public_atom | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | world:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.parent | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | world:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.patchComponent | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | component:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.readComponent | keep_public_atom | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | component:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.removeComponent | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | component:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.removeTag | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | entity:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.replaceComponent | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | component:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.setName | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | entity:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.setParent | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | entity:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Entity.setTag | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | entity:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Events.emit | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | event:emit | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Match.addScore | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | match:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | score_add pending op with { subjectKey, amount, scoreboardKey?, reason? }. | Runtime script system mints a scoreboard.score_add_request state patch; the orchestration effect sink applies it through repository.addScore (the same payload the admin RPC mints). | scoreboard.score_add_request -> scoreboard.score_add_applied. | RuntimeScriptScoreAddRequested, then RuntimeScoreAddApplied from the sink. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts, server/tests/scriptMultiplayerScoreObjective.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Match.getScore | keep_privileged_bridge | script-runtime | subjectKey string plus an optional scoreboardKey (defaults to the snapshot's only scoreboard). | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | match:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; reads ScriptRuntimeState.scoreboards assembled by the room tick. | Executor-only snapshot read; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Returns the subject's applied score total (0 when the subject has no score yet). | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts, server/tests/scriptMultiplayerScoreObjective.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Match.getState | defer_v1_palette | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | match:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Match.patchObjective | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | match:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | objective_state_patch pending op with { objectiveKey, patch, reason? }. | Runtime script system mints an objective.state_patch_request state patch; the orchestration effect sink applies it through repository.patchObjectiveState (the same payload the admin RPC mints). | objective.state_patch_request -> objective.state_patch_applied. | RuntimeScriptObjectivePatchRequested, then RuntimeObjectiveStatePatchApplied from the sink. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts, server/tests/scriptMultiplayerScoreObjective.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Match.setPhase | defer_v1_palette | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | match:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Navigation.findPath | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | navigation:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Navigation.isReachable | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | navigation:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Navigation.nearestPoint | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | navigation:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Navigation.raycast | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | navigation:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Navigation.steerToward | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | navigation:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Network.sendMessage | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | network:send | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | network_message_send pending op. | Runtime script system mints a network.message state patch; the reliable event lane (runtimeScriptEventFramesFromEvent) publishes it at fanout as a broadcast notice or player-private frame. | network.message (channel + payload, optional private playerId target). | RuntimeNetworkMessageSent effect. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | server/tests/runtimeScriptEventLane.test.ts, server/tests/runtimeNetcodeMultiClient.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Physics.command | keep_public_atom | runtime | entityId string plus bodyCommand discriminated object: force, impulse, torque, torqueImpulse, teleport, or reset. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | physics:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | physics_command pending op with { entityId, command }. | Runtime script system normalizes bodyCommand into the internal ForceComponent queue. | component.patch for internal ForceComponent pending queue plus dependency add patches when required. | RuntimePhysicsCommandQueued. | ForceComponent is internal; public projection is the physics solve result in transform/body snapshots. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts, server/tests/runtimeRuntimeSystems.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Physics.occupancyQuery | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | physics:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Physics.overlapTest | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | physics:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Physics.shapecast | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | physics:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Platform.exitFullscreen | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | platform:request | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Platform.exitPointerLock | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | platform:request | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Platform.requestFullscreen | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | platform:request | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Platform.requestPointerLock | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | platform:request | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.bool | keep_public_atom | script-runtime | Optional probability p (default 0.5) plus an optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.gaussian | keep_public_atom | script-runtime | Optional mean (default 0), std (default 1) plus an optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.int | keep_public_atom | script-runtime | min, max numbers (inclusive, unbiased) plus an optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.next | keep_public_atom | script-runtime | No inputs. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns the next deterministic RNG sample. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.pick | keep_public_atom | script-runtime | array plus an optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.pointInCircle | keep_public_atom | script-runtime | radius number plus an optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.pointInSphere | keep_public_atom | script-runtime | radius number plus an optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.range | keep_public_atom | script-runtime | min, max numbers plus an optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.seeded | keep_public_atom | script-runtime | seed string or number. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; constructs an invocation-local reproducible stream handle. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Returns an opaque random_stream handle. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.shuffle | keep_public_atom | script-runtime | array plus an optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Returns a new shuffled array; the input is never mutated. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.sign | keep_public_atom | script-runtime | Optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.unitVector | keep_public_atom | script-runtime | Optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Random.weightedPick | keep_public_atom | script-runtime | items and weights arrays plus an optional trailing random_stream. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | random:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; returns a deterministic sample from the seeded RNG. | Executor-only seeded RNG; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Return value only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/atomRandom.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Room.getState | defer_v1_palette | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | room:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Team.getAssignment | defer_v1_palette | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | team:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Terrain.heightAt | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | terrain:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Terrain.normalAt | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | terrain:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Terrain.raycastDown | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | terrain:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Terrain.sampleLayerWeights | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | terrain:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Terrain.slopeAt | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | terrain:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
UI.closePanel | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | ui:effect | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
UI.openPanel | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | ui:effect | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
UI.setWidgetValue | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | ui:effect | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Warehouse.append | keep_public_atom | data-warehouse | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | warehouse:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Warehouse.create | keep_public_atom | data-warehouse | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | warehouse:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Warehouse.delete | keep_public_atom | data-warehouse | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | warehouse:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Warehouse.get | keep_public_atom | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | warehouse:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Warehouse.increment | keep_public_atom | data-warehouse | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | warehouse:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Warehouse.query | keep_public_atom | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | warehouse:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Warehouse.set | keep_public_atom | data-warehouse | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | warehouse:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Warehouse.update | keep_public_atom | data-warehouse | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | warehouse:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Water.isSubmerged | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | water:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
Water.surfaceLevelAt | keep_readonly_projection | script-runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | water:query | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
World.despawn | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | entity:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
World.find | keep_public_atom | script-runtime | Filter object supporting id, key, name, tag, componentType, worldId, radius, origin, and limit. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | world:read | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | None; reads the script world snapshot. | Executor-only snapshot query; no Runtime drain. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Returns matching RuntimeEntitySnapshot values. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts, server/tests/blueprint-ir-host-parity.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
World.spawn | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | entity:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
World.spawnPrefab | keep_public_atom | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | entity:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | No pending op for pure reads; write/effect atoms enqueue a typed ScriptPendingOp. | Drained by server/src/modules/runtime/runtimeSystems.ts when the atom produces a pending op. | None for reads; writes emit typed Runtime state patches owned by the drain module. | None unless documented by the drain. | Projection follows Runtime snapshot/delta behavior for the affected state patch. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
World.teleportPlayer | keep_privileged_bridge | runtime | Declared by the Script IR host node ports and generated SDK signature. | Executor validates primitive argument shape before enqueue/read; Runtime validates authoritative mutations before state patches. | world:write | Deterministic inside one script tick unless the host is an explicit browser/client bridge. | teleport_player pending op. | Runtime script system issues a Warehouse-backed teleport handoff. | Private teleport handoff projection. | Runtime teleport handoff effect. | Private client/player projection only. | Invalid inputs or unauthorized mutations produce structured script diagnostics or Runtime corrections. | packages/script-runtime/tests/runtime.test.ts | docs/spec/generated/script-node-catalog.md, docs/spec/generated/script-sdk.md | Launch public atom with no helper aliases. |
All Nodes
| Node | Kind | Category | IR | Host | Effect tags | SDK path |
|---|---|---|---|---|---|---|
core.arithmetic | core | Values | arithmetic | pure | None | |
core.array.first | core | Values | array.first | pure | None | |
core.array.for_each | core | Control | array.forEach | pure | None | |
core.array.get | core | Values | array.get | pure | None | |
core.array.length | core | Values | array.length | pure | None | |
core.array.mutate | core | Values | array.mutate | pure | None | |
core.array.query | core | Values | array.query | pure | None | |
core.array.reduce | core | Values | array.reduce | pure | None | |
core.array.transform | core | Values | array.transform | pure | None | |
core.boolean | core | Values | boolean | pure | None | |
core.bounded.for | core | Control | bounded.for | pure | None | |
core.bounded.while | core | Control | bounded.while | pure | None | |
core.comparison | core | Values | comparison | pure | None | |
core.component.patch | core | Components | component.patch | writeState | None | |
core.component.read | core | Components | component.read | pure | None | |
core.entity.id | core | Values | entity.id | pure | None | |
core.event.key | core | Events | event.key | pure | None | |
core.event.payload.get | core | Events | event.payload.get | pure | None | |
core.expression.codebox | core | Values | expression.codebox | pure | None | |
core.flow.break | core | Control | flow.break | pure | None | |
core.flow.continue | core | Control | flow.continue | pure | None | |
core.flow.do_n | core | Control | flow.doN | writeState | None | |
core.flow.do_once | core | Control | flow.doOnce | writeState | None | |
core.flow.flip_flop | core | Control | flow.flipFlop | writeState | None | |
core.flow.gate | core | Control | flow.gate | writeState | None | |
core.flow.multi_gate | core | Control | flow.multiGate | writeState | None | |
core.flow.return | core | Control | flow.return | pure | None | |
core.flow.timer.after | core | Control | flow.timer.after | emitEvent | None | |
core.flow.timer.cancel | core | Control | flow.timer.cancel | emitEvent | None | |
core.get | core | Values | get | pure | None | |
core.host.call | core | Effects | host.call | emitEvent | None | |
core.if | core | Control | if | pure | None | |
core.let | core | Values | let | pure | None | |
core.map | core | Values | map | pure | None | |
core.math.remap | core | Values | math.remap | pure | None | |
core.math | core | Values | math | pure | None | |
core.not | core | Values | not | pure | None | |
core.object | core | Values | object | pure | None | |
core.quat | core | Values | quat | pure | None | |
core.record.get | core | Values | record.get | pure | None | |
core.select | core | Values | select | pure | None | |
core.sequence | core | Control | sequence | pure | None | |
core.set | core | Values | set | pure | None | |
core.string | core | Values | string | pure | None | |
core.switch | core | Control | switch | pure | None | |
core.value.array | core | Values | value.array | pure | None | |
core.value.assert | core | Values | value.assert | pure | None | |
core.value.cast | core | Values | value.cast | pure | None | |
core.value.coerce | core | Values | value.coerce | pure | None | |
core.value.literal | core | Values | value.literal | pure | None | |
core.value.object | core | Values | value.object | pure | None | |
core.vec3 | core | Values | vec3 | pure | None | |
event.action | event | Events | onActionResolved | readWorld | None | |
event.custom | event | Events | onCustomEvent | readWorld | None | |
event.match_ended | event | Events | onMatchEnded | readWorld | None | |
event.network_message | event | Events | onNetworkMessage | readWorld | None | |
event.phase_exit | event | Events | onPhaseExit | readWorld | None | |
event.phase | event | Events | onPhaseEnter | readWorld | None | |
event.player_joined | event | Events | onPlayerJoined | readWorld | None | |
event.player_left | event | Events | onPlayerLeft | readWorld | None | |
event.start | event | Events | onStart | readWorld | None | |
event.tick | event | Events | onTick | readWorld | None | |
event.timer | event | Events | onTimerFired | readWorld | None | |
event.trigger_exit | event | Events | onTriggerExit | readWorld | None | |
event.trigger | event | Events | onTriggerEnter | readWorld | None | |
host.audio.play_spatial | host | Audio | host.call | Audio.playSpatial | audioEffect, nonRollbackable | ctx.audio.playSpatial |
host.audio.play | host | Audio | host.call | Audio.play | audioEffect, nonRollbackable | ctx.audio.play |
host.audio.set_background_music | host | Audio | host.call | Audio.setBackgroundMusic | audioEffect, nonRollbackable | ctx.audio.setBackgroundMusic |
host.audio.set_volume | host | Audio | host.call | Audio.setVolume | audioEffect | ctx.audio.setVolume |
host.audio.stop | host | Audio | host.call | Audio.stop | audioEffect | ctx.audio.stop |
host.camera.add_look_input | host | Platform | host.call | Camera.addLookInput | platformRequest, nonRollbackable, requiresAuthority | ctx.camera.addLookInput |
host.camera.set_look_sensitivity | host | Platform | host.call | Camera.setLookSensitivity | platformRequest, nonRollbackable, requiresAuthority | ctx.camera.setLookSensitivity |
host.camera.set_pitch_clamp | host | Platform | host.call | Camera.setPitchClamp | platformRequest, nonRollbackable, requiresAuthority | ctx.camera.setPitchClamp |
host.camera.set_view_target | host | Platform | host.call | Camera.setViewTarget | platformRequest, nonRollbackable, requiresAuthority | ctx.camera.setViewTarget |
host.debug.log | host | Debug | host.call | Debug.log | emitEvent | ctx.log |
host.entity.add_component | host | Components | host.call | Entity.addComponent | writeState, writeWorld, requiresAuthority | ctx.entity.addComponent |
host.entity.ancestors | host | World | host.call | Entity.ancestors | readWorld, readState | ctx.entity.ancestors |
host.entity.children | host | World | host.call | Entity.children | readWorld, readState | ctx.entity.children |
host.entity.descendants | host | World | host.call | Entity.descendants | readWorld, readState | ctx.entity.descendants |
host.entity.detach | host | World | host.call | Entity.detach | writeState, writeWorld, requiresAuthority | ctx.entity.detach |
host.entity.has_tag | host | World | host.call | Entity.hasTag | readWorld, readState | ctx.entity.hasTag |
host.entity.parent | host | World | host.call | Entity.parent | readWorld, readState | ctx.entity.parent |
host.entity.patch_component | host | Components | host.call | Entity.patchComponent | writeState, writeWorld, requiresAuthority | ctx.entity.patchComponent |
host.entity.read_component | host | Components | host.call | Entity.readComponent | readState, readWorld | ctx.entity.readComponent |
host.entity.remove_component | host | Components | host.call | Entity.removeComponent | writeState, writeWorld, requiresAuthority | ctx.entity.removeComponent |
host.entity.remove_tag | host | World | host.call | Entity.removeTag | writeState, writeWorld, requiresAuthority | ctx.entity.removeTag |
host.entity.replace_component | host | Components | host.call | Entity.replaceComponent | writeState, writeWorld, requiresAuthority | ctx.entity.replaceComponent |
host.entity.set_name | host | World | host.call | Entity.setName | writeState, writeWorld, requiresAuthority | ctx.entity.setName |
host.entity.set_parent | host | World | host.call | Entity.setParent | writeState, writeWorld, requiresAuthority | ctx.entity.setParent |
host.entity.set_tag | host | World | host.call | Entity.setTag | writeState, writeWorld, requiresAuthority | ctx.entity.setTag |
host.events.emit | host | Events | host.call | Events.emit | emitEvent | ctx.events.emit |
host.match.add_score | host | Match & Players | host.call | Match.addScore | writeState, emitEvent, requiresAuthority | ctx.match.addScore |
host.match.get_score | host | Match & Players | host.call | Match.getScore | readState | ctx.match.getScore |
host.match.get_state | host | Match & Players | host.call | Match.getState | readState | ctx.match.getState |
host.match.patch_objective | host | Match & Players | host.call | Match.patchObjective | writeState, emitEvent, requiresAuthority | ctx.match.patchObjective |
host.match.set_phase | host | Match & Players | host.call | Match.setPhase | writeState, emitEvent, requiresAuthority | ctx.match.setPhase |
host.navigation.find_path | host | Physics | host.call | Navigation.findPath | readWorld | ctx.navigation.findPath |
host.navigation.is_reachable | host | Physics | host.call | Navigation.isReachable | readWorld | ctx.navigation.isReachable |
host.navigation.nearest_point | host | Physics | host.call | Navigation.nearestPoint | readWorld | ctx.navigation.nearestPoint |
host.navigation.raycast | host | Physics | host.call | Navigation.raycast | readWorld | ctx.navigation.raycast |
host.navigation.steer_toward | host | Physics | host.call | Navigation.steerToward | readWorld | ctx.navigation.steerToward |
host.network.send_message | host | Events | host.call | Network.sendMessage | emitEvent, networked, nonRollbackable | ctx.network.sendMessage |
host.physics.command | host | Physics | host.call | Physics.command | physicsCommand, writeWorld, requiresAuthority | ctx.physics.command |
host.physics.occupancy_query | host | Physics | host.call | Physics.occupancyQuery | readWorld | ctx.physics.occupancyQuery |
host.physics.overlap_test | host | Physics | host.call | Physics.overlapTest | readWorld | ctx.physics.overlapTest |
host.physics.shapecast | host | Physics | host.call | Physics.shapecast | readWorld | ctx.physics.shapecast |
host.platform.exit_fullscreen | host | Platform | host.call | Platform.exitFullscreen | platformRequest, nonRollbackable, requiresAuthority | ctx.platform.exitFullscreen |
host.platform.exit_pointer_lock | host | Platform | host.call | Platform.exitPointerLock | platformRequest, nonRollbackable, requiresAuthority | ctx.platform.exitPointerLock |
host.platform.request_fullscreen | host | Platform | host.call | Platform.requestFullscreen | platformRequest, nonRollbackable, requiresAuthority | ctx.platform.requestFullscreen |
host.platform.request_pointer_lock | host | Platform | host.call | Platform.requestPointerLock | platformRequest, nonRollbackable, requiresAuthority | ctx.platform.requestPointerLock |
host.random.bool | host | Values | host.call | Random.bool | pure | ctx.random.bool |
host.random.gaussian | host | Values | host.call | Random.gaussian | pure | ctx.random.gaussian |
host.random.int | host | Values | host.call | Random.int | pure | ctx.random.int |
host.random.next | host | Values | host.call | Random.next | pure | ctx.random |
host.random.pick | host | Values | host.call | Random.pick | pure | ctx.random.pick |
host.random.point_in_circle | host | Values | host.call | Random.pointInCircle | pure | ctx.random.pointInCircle |
host.random.point_in_sphere | host | Values | host.call | Random.pointInSphere | pure | ctx.random.pointInSphere |
host.random.range | host | Values | host.call | Random.range | pure | ctx.random.range |
host.random.seeded | host | Values | host.call | Random.seeded | pure | ctx.random.seeded |
host.random.shuffle | host | Values | host.call | Random.shuffle | pure | ctx.random.shuffle |
host.random.sign | host | Values | host.call | Random.sign | pure | ctx.random.sign |
host.random.unit_vector | host | Values | host.call | Random.unitVector | pure | ctx.random.unitVector |
host.random.weighted_pick | host | Values | host.call | Random.weightedPick | pure | ctx.random.weightedPick |
host.room.get_state | host | Match & Players | host.call | Room.getState | readState, readWorld | ctx.room.getState |
host.team.get_assignment | host | Match & Players | host.call | Team.getAssignment | readState, readWorld | ctx.team.getAssignment |
host.terrain.height_at | host | Physics | host.call | Terrain.heightAt | readWorld | ctx.terrain.heightAt |
host.terrain.normal_at | host | Physics | host.call | Terrain.normalAt | readWorld | ctx.terrain.normalAt |
host.terrain.raycast_down | host | Physics | host.call | Terrain.raycastDown | readWorld | ctx.terrain.raycastDown |
host.terrain.sample_layer_weights | host | Physics | host.call | Terrain.sampleLayerWeights | readWorld | ctx.terrain.sampleLayerWeights |
host.terrain.slope_at | host | Physics | host.call | Terrain.slopeAt | readWorld | ctx.terrain.slopeAt |
host.ui.close_panel | host | UI | host.call | UI.closePanel | uiEffect, nonRollbackable | ctx.ui.closePanel |
host.ui.open_panel | host | UI | host.call | UI.openPanel | uiEffect, nonRollbackable | ctx.ui.openPanel |
host.ui.set_widget_value | host | UI | host.call | UI.setWidgetValue | uiEffect, nonRollbackable | ctx.ui.setWidgetValue |
host.warehouse.append | host | Persistence | host.call | Warehouse.append | writeState, durable, requiresAuthority | ctx.warehouse.append |
host.warehouse.create | host | Persistence | host.call | Warehouse.create | writeState, durable, requiresAuthority | ctx.warehouse.create |
host.warehouse.delete | host | Persistence | host.call | Warehouse.delete | writeState, durable, requiresAuthority | ctx.warehouse.delete |
host.warehouse.get | host | Persistence | host.call | Warehouse.get | readState, durable | ctx.warehouse.get |
host.warehouse.increment | host | Persistence | host.call | Warehouse.increment | writeState, durable, requiresAuthority | ctx.warehouse.increment |
host.warehouse.query | host | Persistence | host.call | Warehouse.query | readState, durable | ctx.warehouse.query |
host.warehouse.set | host | Persistence | host.call | Warehouse.set | writeState, durable, requiresAuthority | ctx.warehouse.set |
host.warehouse.update | host | Persistence | host.call | Warehouse.update | writeState, durable, requiresAuthority | ctx.warehouse.update |
host.water.is_submerged | host | Physics | host.call | Water.isSubmerged | readWorld | ctx.water.isSubmerged |
host.water.surface_level_at | host | Physics | host.call | Water.surfaceLevelAt | readWorld | ctx.water.surfaceLevelAt |
host.world.despawn | host | World | host.call | World.despawn | despawnEntity, writeWorld, requiresAuthority | ctx.world.despawn |
host.world.find | host | World | host.call | World.find | readWorld | ctx.world.find |
host.world.spawn_prefab | host | World | host.call | World.spawnPrefab | spawnEntity, writeWorld, requiresAuthority | ctx.world.spawnPrefab |
host.world.spawn | host | World | host.call | World.spawn | spawnEntity, writeWorld, requiresAuthority | ctx.world.spawn |
host.world.teleport_player | host | World | host.call | World.teleportPlayer | writeWorld, networked, nonRollbackable, requiresAuthority | ctx.world.teleportPlayer |
Validation
Run npm run gen-docs:check to validate this generated snapshot against the live catalog. Runtime/codegen parity remains guarded by the script-system reconciliation and Blueprint IR tests.
Declaration Stability Policy
Script IR node declarations are locked by declaration identity, not by hand-maintained counts. Node ids, handler events, IR op names, host namespace/name pairs, port names, port types, SDK expression paths, risk metadata, and declared semantics are stable once shipped.
Breaking changes require an additive replacement declaration and an explicit validation decision. Capability contexts may expose only a subset of current nodes; emitted IR outside that context is rejected before projection or runtime execution.
Consumers
- Runtime host registry derives
scriptHostFunctionsfrom the declarations. - Validator, TypeScript generator, TypeScript parser, generated SDK declarations, AI resolvers, frontend catalog exports, visual scripting, pattern library, and Engine Contract Packet all consume this catalog.
- Manual TypeScript SDK method signatures remain richer than raw node ports, but host identity, SDK path, permissions, risk, and host-function union are declaration-derived.