Engine Frame Loop Order: FrameStart, Scene Tick, and FrameEnd Sequence
Engine Frame Loop Order The s&box engine frame loop runs in a specific order each frame. Understanding this is important for knowing when your code runs relativ…
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 …
Custom Snapshot Data - s&box Networking Documentation
Custom Snapshot Data For advanced networking, you can write and read custom data in network snapshots. This allows efficient synchronization of complex game sta…
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, …
Cloud Assets: Using sbox.game Models, Textures, and Sounds in Your Project
s&box provides access to a large selection of cloud assets (textures, models, sounds) from sbox.game without manual downloading or mounting. Cloud Browser Drag …
Component Versioning: JsonUpgrader for Scene and Prefab Migration
s&box component versioning uses attributes and the property to migrate serialized scene/prefab data when you make breaking changes to component properties. This…
Cloud Assets: Referencing and Runtime Mounting from sbox.game
s&box provides access to a large library of cloud assets (models, textures, sounds) hosted on sbox.game. Assets are downloaded and cached automatically — no man…
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…
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…
Platform Chat: Built-in Text Chat with IChatEvent Filtering
s&box includes a built-in platform chat system for multiplayer games. Messages are routed through the host, validated, filtered via Steam's text filter, and dis…
s&box SceneNetworkSystem: Scene Loading and Snapshot Protocol
s&box SceneNetworkSystem: Scene Loading and Snapshot Protocol is the core networking system that manages scene loading, object spawning, and snapshot synchroniz…
Doo: Visual Scripting Tasks — Running, Stopping, and Exposing Methods
Doo: Visual Scripting Tasks on Components is s&box's visual scripting system. A is a serializable list of executable blocks that can be run on a component. It i…
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…
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…
FileSystem: Mounted, Data, OrganizationData, Cache, and Memory Filesystems
FileSystem: Accessing Game Files in s&box s&box provides several filesystem access points through the static class. Available Filesystems Reading and Writing Fi…
Scene.Trace: Raycasting, Shape Sweeps, Tag Filters, SceneTraceResult Fields, and FindInPhysics
Scene.Trace: Raycasting and Shape Sweeps in s&box is the entry point for all physics traces in s&box. It returns a builder that uses a fluent API. Basic Usage F…
Particle Effects System
Particle Effects System CPU-simulated, fully controllable particle system for effects like fire, smoke, sparks, and explosions. Architecture The particle system…
GameObjectSystem: Auto-Instantiation, Host-Controlled [Sync], RPCs, Stage Hooks, and Configuration Priority
GameObjectSystem: Auto-Instantiation, [Sync] Properties, and RPCs is a scene-level singleton that is automatically instantiated once per scene. Every non-abstra…
GameResource: Custom Asset Types, PostLoad, PostReload, ResourceLibrary.Get, and Resource Networking
GameResource: Custom Asset Types, PostLoad, and Resource Networking is the base class for all JSON-based assets in s&box (prefabs, scene files, custom assets). …
DisplayInfo: Querying s&box Type and Member Metadata (Title, Icon, Group, Tags)
DisplayInfo: Querying s&box Type and Member Metadata is an s&box struct that aggregates all display-related metadata from attributes on a type or member. The ed…