GameObjectFlags: DontDestroyOnLoad, NotNetworked, Absolute, and Destroy vs DestroyImmediate
GameObjectFlags: Controlling GameObject Behavior is a flags enum that controls special behaviors for GameObjects. Values Usage ```csharp // Survive scene loads …
Making a Hat - s&box Clothing Documentation
Making a Hat Step-by-step guide to creating hat clothing for the Citizen character. Making Hats / Headwear Hats are worn on the head and don't need to deform wi…
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…
s&box Input System: Down, Pressed, Released, AnalogLook, AnalogMove, Input Contexts, and Suppression
s&box Input System: Actions, Contexts, and How Input State Works The s&box static class provides all player input querying. Actions are defined in the project's…
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…
GameObjectSystem with [Sync] and RPCs: Networked Scene-Level State
GameObjectSystem with [Sync]: Networked Scene-Level State supports properties just like components. However, there is a key difference: all properties on a are …
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…
ISceneCollisionEvents, IScenePhysicsEvents, ISceneLoadingEvents — Physics and Loading Callbacks
ISceneCollisionEvents and IScenePhysicsEvents: Physics Callbacks ISceneCollisionEvents Implement this interface on a component to receive collision callbacks. U…
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 …
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 …
SkinnedModelRenderer: Bone Merge, Animation Parameters, Sequences, Attachments, and Animation Events
SkinnedModelRenderer: Bone Merge, Animation Parameters, and Attachments extends for models with bones and animations. It integrates with the for threaded animat…
s&box MathX: Remap, LerpInverse, ExponentialDecay, SmoothDamp, SpringDamp, DeltaDegrees, and Unit Conversion
s&box MathX: Math Utility Extensions for Game Development is a static class providing math utilities not in or . Most methods are also extension methods, so you…
Console Variables - s&box Documentation
Official s&box documentation for Console Variables (ConVar) and Console Commands (ConCmd). ConVar creates variables that can be modified through the console and…
s&box SpriteRenderer: Billboard Modes, Animation Control, Broadcast Events, and Rendering Options
s&box SpriteRenderer: Animated Sprites, Billboard Modes, and Broadcast Events renders a asset in the s&box world with support for animation, billboarding, and f…
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…
Components - s&box Documentation
Components A Component is added to a GameObject to provide functionality. This functionality can vary wildly. You could add a component that renders a model at …
RPC Messages - s&box Documentation
RPC Messages Components can contain RPCs. An RPC is a function that when called, is called remotely too. Supported RPC arguments are the exact same as Sync prop…
GameManager INetworkListener Pattern
GameManager INetworkListener Pattern Game manager implementing connection lifecycle with player spawning and cleanup. Implemented Interfaces INetworkListener - …
IPlayerControllable example: ThrusterEntity
IPlayerControllable Example: ThrusterEntity ThrusterEntity demonstrates how to implement IPlayerControllable for a thruster that responds to player input while …
s&box Throwable: Grenade type enum
Throwable Enum Documentation Throwable is an enum that defines the type of throwable weapon for viewmodels. It is used by the ViewModel component to specify whi…