Async Tasks and Coroutines in s&box Components
Async tasks in s&box run on the main thread by default, operating like coroutines. They are the recommended replacement for coroutines. Basic Async Method Frame…
HTTP Requests: Async GET and POST with JSON in s&box
s&box provides a static class for asynchronous HTTP requests (GET, POST, DELETE, etc.) with JSON support. Allowed URLs Only or URLs to domains (no IP addresses)…
Leaderboards: Stats Aggregation with Country, Date, and Centering Filters
Leaderboards in s&box are stats aggregated and ordered. They use the API. Basic Usage By default, leaderboards aggregate using sum and order descending. Filteri…
Scene Events: Interface-Based Broadcasting and Listening
s&box uses interface-based events to broadcast and listen to events within a scene. Events are sent to active Components and GameObjectSystems — they are NOT se…
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 …
Network Ownership: Transfer, IsProxy, and Orphaned Modes
Networked GameObjects can be owned by a connection. The owner simulates the object — controlling its position and sync properties. Unowned objects are simulated…
GameObjectSystem: Batch Processing and Execution Order Control
A GameObjectSystem lets you run logic at specific points during the frame for all components of a type, rather than relying on individual component Update metho…
Scene Tracing: Raycasts, Sphere Traces, and Box Traces
Scenes can be traced against using with a builder pattern. At minimum, traces need a shape, start, and end. You can filter by tags or use your project's collisi…
Networked Objects: Spawning, Network Modes, and Interpolation
Any GameObject can become networked by calling . It will then be sent to all clients and can have Sync Properties and RPC Messages. Spawning a Networked Object …
RPC Messages: Broadcast, Owner, Host with Filtering and Caller Info
Components can contain RPCs — functions that when called locally, are also called remotely. Supported RPC argument types are the same as Sync properties. Basic …
Sync Properties: Networked State with Change Detection and Collections
The attribute on a Component property sends its latest value to other players each time it changes. Only the owner of the object can change synced properties. B…
Randomized Clothing for NPC Citizens using Dresser.Randomize() on Prefabs
Overview This demonstrates how to create NPC citizen prefabs with randomized clothing using the built-in component. Each time the prefab spawns or is enabled, i…
s&box LinkedGameObjectBuilder: Connected object collection
Utility class for collecting connected GameObjects. Used by the Duplicator to find all objects that should be included in a duplication. Properties Methods Beha…
s&box ClientInput: Input scope for controlled objects
Client input scope struct for routing input to controlled objects. Used by ControlSystem to redirect player input during chair/vehicle control. Static Propertie…
s&box SpeechLayer: NPC speech and subtitles
NPC behavior layer that manages speech state, plays sound files, and renders subtitle text above the NPC's head. Properties Methods Behavior Resolves a random s…
s&box SensesLayer: NPC environmental scanning
NPC behavior layer that handles awareness and environmental scanning. Caches visible/audible objects by tag for efficient querying. Properties Methods Behavior …
s&box NavigationLayer: NPC navigation
NPC behavior layer that handles navigation using NavMeshAgent. Provides movement commands and status tracking. Properties Methods Behavior Uses NavMeshAgent for…
s&box BaseNpcLayer: NPC behavior layer base
Abstract base class for NPC behavior layers. Layers provide specific services (navigation, senses, speech) for tasks to use. Properties Methods Usage Inherit fr…
s&box ScheduleBase: NPC schedule base class
Abstract base class for NPC schedules. A schedule executes a sequence of tasks with cancellation support. Properties Methods Behavior Executes tasks sequentiall…
s&box TaskBase: NPC task base class
Abstract base class for NPC tasks. Tasks are executed as part of a Schedule and return a TaskStatus to indicate their state. Properties Methods TaskStatus Enum …