s&box is a modern game engine built on Valve’s Source 2 rendering pipeline and the latest .NET technology. It gives you a component-based scene system, real-time C# hot-reloading, integrated multiplayer networking, and a polished visual editor — all in one package. This page covers what s&box is, why you might choose it, and where to go next.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/facepunch/sbox-public/llms.txt
Use this file to discover all available pages before exploring further.
What s&box is
s&box combines Source 2 — the engine behind games like Half-Life: Alyx and Dota 2 — with modern .NET 10 and C#. The result is a game engine where rendering quality, scripting ergonomics, and multiplayer support are all first-class concerns. Games run as packages: you write C# components that attach to GameObjects in a scene, and the editor compiles and reloads your code in real time without restarting the engine. When you’re ready, you publish your game to the s&box platform so anyone can play it.Key features
Component-based scenes
Every game object in a scene carries a set of components. Components are C# classes that extend
Component and override lifecycle methods such as OnStart, OnUpdate, and OnFixedUpdate.Real-time hot-reloading
Save a C# file and your changes appear in the running editor immediately. State is preserved across reloads so you can iterate without losing progress.
Built-in multiplayer
Synchronize state across clients with
[Sync] properties and call remote methods with Rpc.Broadcast(). The networking layer is built into the engine, not a third-party add-on.Visual Action Graphs
Connect logic nodes in a graph without writing code. Action Graphs are stored in the scene and can call into C# components, making them useful for designers and prototyping.
Source 2 rendering
Access PBR materials, dynamic lighting, post-processing, and the full Source 2 shader system. Custom HLSL shaders slot into the same pipeline.
HTML/Razor UI
Build HUDs and menus using Razor components and CSS — the same pattern as ASP.NET Blazor. The UI system renders in-engine alongside your 3D scene.
Who s&box is for
s&box targets developers who want:- Fast iteration — hot-reload and an in-engine editor mean fewer round-trips between your IDE and the game.
- Multiplayer out of the box — the networking system is part of the engine, not bolted on after the fact.
- A familiar language — all game logic is C# running on .NET 10. You can use NuGet packages, async/await, and the full .NET standard library.
- Source 2 visuals — physically-based rendering without building a custom renderer.
s&box is not a general-purpose engine shipped as a standalone product. Games are published to and run through the s&box platform. The editor is Windows-only and available via Steam.
How the engine is structured
At runtime, everything lives in aScene. A scene is a hierarchy of GameObject nodes, each carrying zero or more Component instances. The static Game class exposes global state — Game.ActiveScene, Game.IsPlaying, Game.IsEditor — that components can read to branch on context.
Components.Get<T>() query API, tags, and the networking system.
Licensing
The s&box engine source code is licensed under the MIT License. Certain native binaries ingame/bin are distributed under the s&box EULA. Third-party components retain their original licenses; see game/thirdpartylegalnotices in the repository.
Next steps
Installation
Install s&box via Steam or build the engine from source.
Your first project
Create a project, add a scene, and run your first game.
Scene & GameObjects
Understand the hierarchy that every s&box game is built on.
Components
Write C# components and wire up lifecycle callbacks.