Network Ownership: Taking, Dropping, and Transferring Object Control
Networked GameObjects can be owned by a connection. Objects owned by a connection are simulated by that connection — their position and sync variables are contr…
s&box Rigidbody Component: Physics Body Reference
s&box Rigidbody Component: Physics Body Reference adds physics simulation to a . It requires at least one component on the same object. Key Properties Force and…
NetworkObject: Ownership, Proxy State, and Automatic Culling
NetworkObject Ownership, Proxy State, and Culling Derived from in the s&box engine source. Ownership Model Every networked has a (internal) that tracks: **** — …
WebSockets - s&box Networking Documentation
WebSockets s&box supports WebSocket connections for real-time communication with external servers. Use for custom networking, persistent data, or integrating wi…
INetworkSnapshot: Custom Binary Data in s&box Network Snapshots
s&box Components can implement to write and read custom binary data during the network snapshot process. When a client joins a server, the snapshot is sent once…
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…
s&box INetworkListener: Connection interception
Interface for network connection interception. Implement to accept or reject incoming connections. Methods Usage Implement on a GameObjectSystem or Component to…
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 …
Sandbox: ToolMode system — creating custom Tool Gun modes
ToolMode System — Creating Custom Tool Gun Modes is the base class for all Tool Gun tools in Sandbox. Tools are components on the Toolgun and are enabled/disabl…
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…
Physgun Grab State with Permission Checks
Physgun Grab State Pattern Implementation pattern for physgun object grabbing with ownership checks and IPhysgunEvent permissions. Key Features Sync'd GrabState…
Voice Component: Push-to-Talk, Lip Sync Visemes, ExcludeFilter, ShouldHearVoice, and Amplitude
Voice Component: Voice Chat, Lip Sync, and Viseme Morphs The component handles voice chat recording, transmission, and playback with optional lip sync. Basic Se…
s&box Cheat Sheet
s&box Cheat Sheet Quick reference for common s&box operations. Debugging Transforms GameObjects Components Input Networking
s&box Hotload System: How Code Reloading Works, SkipHotload, ConVar Persistence, and NetworkObject.OnHotload
s&box Hotload System: How Code Reloading Works s&box supports live code reloading (hotload) without restarting the game. Understanding how it works helps avoid …
s&box ISceneEvent: Scene-Wide and Per-Object Event Broadcasting
s&box ISceneEvent<T>: Scene-Wide and Per-Object Event Broadcasting is the base interface for all scene event systems. It provides static methods for broadcastin…
s&box Source Generator: IUpdateSubscriber, WrappedPropertySet, and How [Sync]/[Rpc.*] Work at Compile Time
s&box Source Generator: How [CodeGenerator] Works for [Sync] and [Rpc.*] The Roslyn source generator transforms your C# code at compile time. Understanding this…
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…
Dedicated Servers - s&box Documentation
Official s&box documentation for dedicated server hosting. Dedicated Servers covers running s&box games on headless servers. Running Local Projects explains tes…
IGameObjectNetworkEvents: StartControl, StopControl, and NetworkOwnerChanged Callbacks
IGameObjectNetworkEvents: Ownership Change Callbacks Implement on a component to receive callbacks when network ownership of the parent changes. Interface Metho…
Sync Properties for Networked State
Sync Properties for Multiplayer The attribute automatically synchronizes property values to all clients when they change. Basic Sync Sync Flags Customize sync b…