PlayerController: Physics-Based Character with Events Interface
The component is a physics-based first/third person player controller. Add it to a scene and be running around with no programming required. Core Features Physi…
Playing Sounds: SoundHandle, GameObject.PlaySound, and Audio Components
s&box provides several ways to play sounds: fire-and-forget at a position, controlled via , attached to a , or via scene components. SoundEvent Assets Sounds ar…
Property Attributes: Inspector Customization for Components and Assets
Property attributes control how Component properties appear in the s&box editor/inspector. They work on both Components and GameResource properties. Layout and …
Dedicated Servers: Installation, Configuration, and Command Line
s&box dedicated servers run headless and can be installed via SteamCMD. They host multiplayer games without requiring the full editor. Installation Install via …
File System: Sandboxed Virtual Filesystems for Data Persistence
Standard .NET access is restricted in s&box. Instead, use the provided virtual filesystems that sandbox access to specific game directories. Available File Syst…
Input System: Button Queries, AnalogMove, AnalogLook, and Escape Override
Input is accessed using the class in s&box. It provides button state queries, analog stick/mouse values, and escape key handling for game components. Button Que…
VR Development: Tracked Objects, Controllers, and Hand Input
s&box supports VR development with built-in components for headset tracking, controller input, and hand animation. Enabling VR Editor: Launch with headset conne…
Input Glyphs: Device-Adaptive Button Icons for UI Hints
Input glyphs in s&box provide an easy way to show users which buttons to press for actions. They automatically adjust for whatever device is being used and retu…
Creating Terrain: Heightmap Setup, World Scale, and Asset Reuse
To add Terrain to your s&box scene, right-click in the Hierarchy and select 3D Object → Terrain. The inspector prompts you to create, import, or link an existin…
Serverside Code: #if SERVER Blocks and .Server.cs Files for Hidden Logic
s&box supports serverside-only code that is stripped from client builds. This only works when running local projects on dedicated servers. #if SERVER Blocks Cod…
NavMesh Area Costs and Filters: Weighted Pathfinding and Agent Restrictions
NavMesh Areas in s&box can be used to mark sections as more costly to traverse (e.g. shallow water) or to prevent certain agents from entering specific areas. C…
Dedicated Server User Permissions: Claims-Based Access Control via Steam ID
On s&box Dedicated Servers, you can specify admin permissions per user via the file using Steam IDs and claims. Configuration Claims Claims are strings describi…
MusicPlayer: Streaming Audio with Visualization and World-Space Positioning
in s&box handles music tracks and streaming audio with programmatic control over playback, positioning, and visualization. For sound effects, use the Sound syst…
DecalDefinition: PBR Decal Assets with Color, Normal, and Parallax
A DecalDefinition in s&box holds what a single decal should look like. It describes color, normals, roughness, metalness, ambient occlusion, and optional parall…
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…
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…
PlayerController: Built-in First/Third Person Controller with Physics, Input, and Camera
The PlayerController component is a first and third person player controller built into s&box. It is physics-based (a special RigidBody) with built-in input, ca…
Leaderboards: Stat-Based Rankings with Filtering, Centering, and Aggregation
Leaderboards in s&box are stats aggregated and ordered. They use the same stat system and provide filtering, sorting, and centering options. Basic Example By de…
Async Components: Coroutine-Style Async Tasks on the Main Thread
Async tasks in s&box run on the main thread by default, operating like coroutines. They are the recommended replacement for coroutines in s&box. Basic Async Fra…
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…