Rpc.FilterInclude for targeted RPC broadcasting
Rpc.FilterInclude for Targeted RPC Broadcasting Rpc.FilterInclude is a using statement in s&box that restricts RPC broadcasts to specific connections only. This…
RealTime vs Time: Wall-Clock vs Scene Time — RealTimeSince, RealTimeUntil, GlobalNow, and SmoothDelta
RealTime vs Time: Wall-Clock vs Scene Time — When to Use Each s&box has two time systems. Choosing the wrong one is a common source of bugs. Time (Scene Time) ,…
Sandbox: Map entities — Door, Button, FuncMover, TriggerPush, TriggerTeleport
Sandbox Map Entities — Door, Button, FuncMover, TriggerPush, TriggerTeleport These components implement interactive map elements. They live in the namespace and…
Code Basics - s&box Documentation
Code Basics C# is the primary programming language for s&box. The engine uses modern .NET with hotloading support, allowing you to see code changes instantly wi…
RPC Attributes: Rpc.Broadcast, Rpc.Host, Rpc.Owner — Targeting, NetFlags, and Rpc.FilterInclude/Exclude
RPC Attributes: Rpc.Broadcast, Rpc.Host, Rpc.Owner — Targeting and Flags s&box RPCs are declared with nested attributes on the static class. The old top-level a…
s&box Sandbox Security Model: Assembly Whitelist, Blocked APIs, Reflection Restrictions, and Safe Assembly Caching
s&box Sandbox Security Model: Assembly Access Control and Whitelisted APIs s&box uses a whitelist-based security model to prevent game code from accessing dange…
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 …
FixedUpdate Internals: Step Counting, Spiral of Death Prevention, Time.Scope, and ApplyForce vs ApplyImpulse
FixedUpdate Internals: How the Fixed Timestep Works in s&box The s&box fixed update system uses a step-counting approach rather than accumulating time. This is …
Shaders in s&box - HLSL and Shading Models
Shaders in s&box - HLSL and Shading Models Write custom shaders in HLSL with Source 2's shading models, render states, and GPU instancing support. Shader Develo…
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…
LocalData persistence for server-side data
LocalData Persistence in s&box LocalData provides server-side data persistence that survives server restarts. It's useful for storing configuration, ban lists, …
Undo System
Undo System Implement undo/redo functionality in editor tools. Basic Scope Capturing GameObject Changes GameObjectUndoFlags Capturing Creations Capturing Destru…
s&box DamageTags: Damage type constants
DamageTags Static Class DamageTags is a static class that defines constant string tags used for damage type identification in the s&box damage system. These tag…
s&box WheelOverlay: Direction arrow overlay
WheelOverlay Static Class WheelOverlay is an internal static class that draws a spinning direction arrow overlay on wheel faces. Used by the Wheel tool to visua…
NavMeshAgent: MoveTo, WishVelocity Pattern, Off-Mesh Links, Area Constraints, and Path Queries
NavMeshAgent: Navigation, WishVelocity, Links, and Path Control is the s&box component for AI navigation using the scene's navmesh. It uses DotRecast (Detour/Cr…
s&box DupeCategory: Workshop duper categories
s&box DupeCategory Enum DupeCategory is an enum used to categorize workshop dupes for filtering and browsing. Each category has an associated icon for UI displa…
Code Upgrader Diagnostics: SBOX001-SBOX007 and SB3000 Roslyn Analyzer Warnings
Code Upgrader Diagnostics: s&box Roslyn Analyzer Warnings s&box ships a Roslyn analyzer () that warns about deprecated patterns and auto-fixes them. These appea…
s&box SnapGrid: World-space snap grid overlay
SnapGrid: World-Space Snap Grid Overlay SnapGrid is a sealed class that manages a world-space snap grid overlay projected onto a surface plane. It is used by th…
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…
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…