s&box IToolActionEvents: Tool action event interface
IToolActionEvents API Reference IToolActionEvents is a scene-wide interface for listening to toolgun actions before and after they execute. Type Signature Actio…
s&box WaterVolume: Buoyancy physics for water volumes
WaterVolume API Reference WaterVolume is a Component that applies buoyancy physics to Rigidbody objects entering a trigger volume. Type Signature Physics Implem…
s&box BasePickup: Trigger and collision-based pickup system
BasePickup API Reference BasePickup is an abstract Component for creating trigger or collision-based pickups (weapons, ammo, items). Type Signature Required Com…
s&box PostProcessManager: Post-processing resource management
PostProcessManager API Reference PostProcessManager is a GameObjectSystem that manages post-processing resources with preview, toggle, and camera attachment. Ty…
s&box BanSystem: Ban list management with persistence
BanSystem API Reference BanSystem is a GameObjectSystem that manages a ban list with LocalData persistence and connection blocking. Type Signature Key Methods -…
s&box ServerSettings: Replicated server-controlled settings
ServerSettings API Reference ServerSettings is a static class for server-controlled settings that are replicated to all clients. Type Signature Example Property…
s&box GamePreferences: ConVar-based user settings with attributes
GamePreferences API Reference GamePreferences is a static class for defining user preferences using ConVar attributes with automatic persistence. Type Signature…
s&box SaveSystem: Scene save/load with metadata and event hooks
SaveSystem API Reference SaveSystem is a GameObjectSystem that captures differences between the current scene state and the original scene, enabling save/load f…
UIDecal Component - Render Razor UI as a Decal
A Render Component for s&box that allows you to project Razor UI onto surfaces as a Decal. Great for sticking UI onto rounded walls, curved surfaces, or any geo…
s&box JSONObject Save Data Helper for Components
This s&box-focused sample shows how to programmatically construct and deconstruct JSON for component save data. It is useful for player saves, world unlock stat…
Extensible Player Data Save Hooks for World Components
This pattern lets gameplay components plug into a player's save/load flow without putting every feature directly inside one large class. The framework has three…
Trigger-Based Background Music Crossfade Framework
This pattern replaces area music with a small local-client music framework. Each zone requests a target , while one controller crossfades the currently playing …
Reusable World-Space Interaction Prompt Framework
A small, compartmentalized interaction framework can be built from three pieces: : the base component placed on objects the player can use. : the player-side ra…
ActionGraph — visual scripting with action nodes, delegates, and C# integration
ActionGraph — Visual Scripting ActionGraph is s&box's visual scripting system. Nodes represent actions or expressions, and links carry values or signals between…
Unit tests in s&box — MSTest setup, engine initialization, and component testing
Unit Tests in s&box s&box supports MSTest-based unit tests. Create a directory in your project folder and restart the editor — a test project is generated autom…
Hotloading — live code reloading, IL fast path, and common pitfalls
Hotloading — Live Code Reloading s&box recompiles and live-reloads your assembly whenever you save a or file. You don't need to restart the editor for most chan…
Custom editor tools — EditorTool, Gizmo drawing, scene tracing, and overlay UI
Custom Editor Tools Editor tools appear in the s&box toolbar and let you build scene editing workflows — painting, placement, custom gizmos. They must live in a…
Custom GameResource assets — defining asset types with ResourceLibrary and PostLoad registry
Custom GameResource Assets lets you define your own asset types with a custom file extension, inspector UI, and hot-reload support. Assets are JSON files under …
Component execution order — OnAwake, OnStart, OnUpdate, OnFixedUpdate, and OnLateUpdate
Component Execution Order s&box calls component lifecycle methods in a defined order each frame. Understanding this order is essential for avoiding race conditi…
s&box networking gotchas — IsProxy, Sync, Authority, NetworkSpawn, and culling
s&box Networking Gotchas Common mistakes when building multiplayer games in s&box. IsProxy vs IsAuthority is true on all clients that don't own the object. Alwa…