Summary

Provides global access to core game state, utilities, and operations for S&box.

The Game class exposes static properties and methods to query and control the running game, such as checking if the game is running, getting your steamid, taking screenshots, and managing game sessions.

Examples

            // Check if the game is running in the editor
            if (Game.IsEditor)
            {
                // Perform editor-specific logic
            }
            
            // Take a screenshot
            Game.TakeScreenshot();
            

Static Properties

ActiveScene The current scene that is being played.
AppId Steam AppId of S&box.
CheatsEnabled This has to be in Game.dll so the codegen will get generated for it
Cookies Allows access to the cookies for the current game. The cookies are used to store persistent data across game sessions, such as user preferences or session data. Internally the cookies are encoded to JSON and stored in a file on disk.
Ident Returns the current game's ident - ie facepunch.sandbox
InGame Return true if we're in a game (ie, not in the main menu)
IsClosing Set to true when the game is closing
IsEditor Returns true if the game is running with the editor enabled
IsMainMenuVisible Returns true if the main menu is visible. Note that this will work serverside too but will only return the state of the host.
IsPaused Indicates whether the game is currently paused.
IsPlaying Indicates whether the game is currently running and actively playing a scene.
IsRecordingVideo True if we're currently recording a video (using the video command, or F6)
IsRunningInVR Return true if we're running in VR
IsRunningOnHandheld Return true if we're running on a handheld device (the deck). Will always be false serverside.
Language Lets you get translated phrases from the localization system
PhysicsTrace Trace against the physics in the current scene
Random A shared random that is automatically seeded on tick
SceneTrace Trace against the physics and hitboxes in the current scene
SteamId Your SteamId
TypeLibrary Provides access to the global Sandbox.Internal.TypeLibrary for the current game context. <para> The <c>TypeLibrary</c> is a runtime reflection system that describes types, their members, and relationships in the game and engine assemblies. It allows you to find and create types by name and id. It's basically a sandboxed version of the .net reflection system. </para>

Static Methods

Close Close the current game.
CreateWebSurface Create a limited web surface
Disconnect Disconnect from the current game session
Load Load a game. You can configure the new game with LaunchArguments before calling this.
SetRandomSeed Set the seed for Game.Random
TakeScreenshot Capture a screenshot. Saves it in Steam.
people
Log in to reply
You can't reply if you're not logged in. That would be crazy.