How facepunch/sbox-public works
s&box is a Source 2/.NET game engine with an editor and game runtime. A creator’s broad workflow is to open the editor, work with project content and tools, and run a game; the README establishes those product capabilities, while the tree identifies their principal subsystems. The sampled engine loop explicitly ticks and renders game, menu, and tools DLLs. Most subsystem wiring was not sampled, so the graph shows only documented product relationships and direct calls visible in source; it does not claim a complete execution pipeline.
Main entry points: EngineLoop.cs Engine loop · SboxDev/Launcher.cs Editor launcher · Sbox/Launcher.cs Game launcher · EditorSystem.cs Editor system
Components 21
Launch and loop
- Editor launcher
engine/Launcher/SboxDev/Launcher.cs - Game launcher
engine/Launcher/Sbox/Launcher.cs - Engine loop
engine/Sandbox.Engine/Core/EngineLoop.cs
Editor and tools
- Editor system
engine/Sandbox.Engine/EditorSystem.cs - Native tools
engine/Sandbox.Tools/EngineTools.cs - Panel gallery
engine/Launcher/PanelGallery/PanelGalleryAppSystem.cs - Scene gizmos
engine/Sandbox.Engine/Editor/Gizmos/Gizmo.cs
Game runtime
- Game API
engine/Sandbox.Engine/Game/Game/Game.cs - Scene runtime
engine/Sandbox.Engine/Systems/Doo/DooEngine.cs - Terrain resources
engine/Sandbox.Engine/Resources/Terrain/TerrainStorage.cs - Clutter storage
engine/Sandbox.Engine/Scene/GameObjectSystems/ClutterGridSystem.Storage.cs
Content and compilation
- Project compiler
engine/Sandbox.Compiling/Compiler/Compiler.cs - Code upgrader
engine/Sandbox.CodeUpgrader/Assembly.cs - Mount host
engine/Mounting/Sandbox.Mounting/MountHost/MountHost.cs - Game format mounts
engine/Mounting/Sandbox.Mounting.Quake/QuakeMount.cs
Platform services
- Code access rules
engine/Sandbox.Access/AccessControl.cs - Engine filesystems
engine/Sandbox.Engine/Systems/Filesystem/EngineFileSystem.cs - Key bindings
engine/Sandbox.Engine/Systems/Input/KeyBindings.Storage.cs - Workshop queries
engine/Sandbox.Engine/Systems/Filesystem/Storage/Storage.Query.cs
Other components
- Creator
- Steam Workshop
Connections 11
- Creator → Editor launcher: launches editor
- Creator → Game launcher: runs game
- Engine loop → Editor system: ticks tools
- Engine loop → Game API: ticks game
- Engine loop → Scene runtime: runs scene scripts
- Editor launcher → Engine loop: starts engine
- Game launcher → Engine loop: starts engine
- Editor system → Native tools: opens native tools
- Steam Workshop → Workshop queries: provides query results
- Workshop queries → Steam Workshop: queries items
- Engine filesystems → Key bindings: provides file access