s&box ClientInput: Input scope for controlled objects
Client input scope struct for routing input to controlled objects. Used by ControlSystem to redirect player input during chair/vehicle control. Static Propertie…
Sync Properties: Networked State with Change Detection and Collections
The attribute on a Component property sends its latest value to other players each time it changes. Only the owner of the object can change synced properties. B…
Razor Panels: HTML/CSS UI with C# in s&box
s&box UI can be created using Razor syntax — web-like HTML/CSS combined with C#. Panels are not rendered via a HTML renderer; the syntax is a convenience layer …
Physics Triggers: Enter, Exit Events and Polling in s&box
A trigger is a collider that detects when physics objects enter or exit it without blocking movement. Useful for pickup zones, death planes, checkpoints, and ar…
Time Utilities: TimeSince, TimeUntil, and Frame-Rate Independence
s&box provides time utilities for cooldowns, countdowns, and frame-rate independent movement without manual bookkeeping. Time.Delta Seconds since last frame. Mu…
Styling Panels: SCSS, Inline Styles, and Code-Based Styling
s&box panels can be styled using SCSS stylesheets, inline styles, style blocks, or direct code manipulation. The styling system uses CSS-like syntax but is rend…
Particle Effects: CPU-Simulated Programmable Particle System
The s&box particle system is CPU-simulated (multithreaded) and fully programmable via components. You can emit particles manually, iterate and modify them at ru…
Component Execution Order: Lifecycle Flow and GameObjectSystem Ordering
s&box component execution order determines when lifecycle methods are called. You should not rely on the order in which the same callback gets invoked for diffe…
Triggers: Non-Blocking Collision Detection with ITriggerListener
A trigger is a collider that detects when other physics objects enter or exit it without blocking their movement. Useful for pickup zones, death planes, checkpo…
Sync Properties: Automatic Property Replication with [Sync] Attribute
Adding the attribute to a property on a Component will have its latest value sent to other players each time it changes. Only the owner of the object can change…
Razor Panels: HTML/CSS UI with C# in s&box PanelComponent System
s&box Razor Panels use web-like HTML/CSS syntax with C# for UI creation. Panels are rendered natively (not via HTML renderer) — the syntax is a convenience laye…
ControlSystem Pattern for Seat/Vehicle Control
ControlSystem - Seat/Vehicle Control Management A that manages control transfer between players and seated entities (vehicles, chairs). Handles input routing an…
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…
s&box context menu with submenus and auto-positioning
s&box Context Menu with Submenus and Auto-Positioning This example shows a context menu system using s&box's Panel, Screen, and layout system with submenu build…
Sync Properties - Complete Networking Guide
Sync Properties Sync Attribute Adding the attribute to a property on a Component will have its latest value sent to other players each time it changes. These pr…
BuildHash pattern for Razor panel optimization
BuildHash Pattern for Razor Panel Optimization BuildHash is a method you can override in Razor panels to prevent unnecessary rebuilds when the underlying state …
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…
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…
s&box CharacterController: Physics-Free Movement Component
s&box CharacterController: Physics-Free Movement Component provides collision-constrained movement without a . It only moves when you explicitly call or . Key P…
Sandbox: NPC system — Schedule, Task, and Layer architecture
NPC System — Schedule, Task, and Layer Architecture The Sandbox NPC system uses a layered architecture: Layers handle continuous behaviours (navigation, senses,…