PlayerData Component for Stats and Respawn
PlayerData Component Persistent player data component tracking stats (kills, deaths), respawn state, and providing connection lookup. Key Properties Connection …
Collision and Triggers
Working with physics collisions and trigger volumes. Collision Components Basic Collision Trigger Volumes Triggers detect overlap without blocking movement: Col…
RPC Messages - s&box Documentation
RPC Messages Components can contain RPCs. An RPC is a function that when called, is called remotely too. Supported RPC arguments are the exact same as Sync prop…
Slot-based inventory UI with BuildHash optimization
Slot-Based Inventory UI with BuildHash Optimization This example shows a slot-based inventory UI with BuildHash() optimization to prevent unnecessary rebuilds a…
RPC Messages: Remote Procedure Calls with Broadcast, Owner, and Host Targets
Components can contain RPCs (Remote Procedure Calls). An RPC is a function that when called, is also called remotely on other clients. Broadcast RPC makes a fun…
Connection Permissions: CanSpawnObjects and CanRefreshObjects
The host can change permissions for a specific in s&box multiplayer. The ideal place to set these permissions is in the network event callback when a player con…
PlayerInventory Weapon Switching
PlayerInventory Weapon Switching Weapon switching with host authority and IPlayerEvents delegation. Key Features Sync'd ActiveWeapon with Change callback for ne…
s&box PlayerFallDamage: Fall damage component
PlayerFallDamage Component API Reference PlayerFallDamage is a Component that applies fall damage to the player when they land. It implements Local.IPlayerEvent…
s&box LimitsSystem: Spawn and tool limits
LimitsSystem GameObjectSystem API Reference LimitsSystem enforces configurable limits on spawning and tool usage. Maintains a per-player tracked object list pop…
Ownable Component Pattern for Prop Ownership
Ownable Component - Prop Ownership and Permission System A component that tracks which player spawned an object and enforces ownership-based permissions. Useful…
Inventory Hotbar UI Component
Inventory HUD with Hotbar A Razor PanelComponent that displays player inventory slots as a hotbar with mouse wheel and number key support. Implementation Key Fe…
s&box BaseToggle: Toggle state base class
Abstract base class for toggle state with [Sync] support and event callbacks. Properties Methods Usage Inherit from this class for any component that needs a sy…
GameObjectSystem: Batch Processing and Execution Order Control
A GameObjectSystem lets you run logic at specific points during the frame for all components of a type, rather than relying on individual component Update metho…
Network Events: INetworkListener for Player Join, Leave, and Active Callbacks
Implement or on a component to react to players joining and leaving the game. INetworkListener Example Spawn a player object when someone joins: INetworkListene…
RPC Messages: Broadcast, Owner, Host with Filtering and Caller Info
Components can contain RPCs — functions that when called locally, are also called remotely. Supported RPC argument types are the same as Sync properties. Basic …
ToolMode Base Class for Toolgun Modes
ToolMode Base Class Abstract base class for creating toolgun modes in s&box. Handles input registration, action dispatch, and HUD rendering. Class Overview Acti…
Multiplayer and Networking
Complete guide to multiplayer setup in s&box. Creating a Lobby Joining a Lobby Spawning Networked Players Host/Client Checks Connection Events Networked Object …
Editor - s&box Documentation
Editor The s&box Editor provides a modern interface for building games. Features Asset Previews - Thumbnails for models, materials, textures Custom Editors - Sp…
Building a Networked Radio System with 3D Audio and Sync
Building a functional, interactive, and multiplayer-compatible radio system in s&box requires coordinating networked replication, local 3D audio handles, extern…
Network Events: INetworkListener and INetworkSpawn Interfaces
React to players joining and leaving by implementing or on a component in the scene. INetworkListener Example Spawn a player object when someone joins: INetwork…