public sealed class Sandbox.Project
Represents an on-disk project.
Related Guides
Broader workflow and conceptual references connected to this API.
Libraries can be used to create self-contained code and assets that you can reuse in multiple projects. These can be shared with your organisation or with the whole community.
ActionGraph is a visual scripting system that lets you create game logic using nodes instead of code. Connect nodes together to build behaviors, respond to events, and control your scene — all from a graphical editor.
An addon project adds to a Game Project. The addon project isn't published directly, you create assets and publish those individually.
The mount system is extensible - anyone can write a mount to add support for a new game or engine and contribute it to s&box via pull request. A mount detects a game's install directory via Steam, scans its files, and converts assets into s&box compatible assets, all at runtime.
You can find information about how to install and use SteamCMD here <https://developer.valvesoftware.com/wiki/SteamCMD> to install the s&box Dedicated Server.
The s&box editor is your workspace for building games — scene editing, asset management, visual scripting, and more.
Constructors
Showing 1 constructors
public Project()
No results match this filter.
Methods
Showing 11 methods
public string GetAssetsPath()
Absolute path to the Assets folder of the project, or if not set.
public string GetCodePath()
Absolute path to the Code folder of the project.
public string GetEditorPath()
Absolute path to the Editor folder of the project.
public string GetLocalizationPath()
Absolute path to the Localization folder of the project, or if not set.
public string GetProjectPath()
Gets the .sbproj file for this project
public string GetRootPath()
Absolute path to the location of the `.sbproj` file of the project.
public bool HasAssetsPath()
Returns true if the Assets path exists
public bool HasCodePath()
Returns true if the Code path exists
public bool HasEditorPath()
Returns true if the Editor path exists
public bool IsSourcePublish()
Return true if this project type uploads all the source files when it's published
public static Sandbox.Project Load(string dir)
No results match this filter.
Properties
Showing 15 properties
public bool Sandbox.Project.Active { get; set; }
True if this project is active
public bool Sandbox.Project.Broken { get; set; }
True if this project failed to load properly for some reason
public Sandbox.DataModel.ProjectConfig Sandbox.Project.Config { get; set; }
Configuration of the project.
public string Sandbox.Project.ConfigFilePath { get; set; }
Absolute path to the .addon file
public string Sandbox.Project.EditUrl { get; set; }
The URL to the package's page for editing
public bool Sandbox.Project.HasCompiler { get; set; }
Whether the project's code has a compiler assigned.
public bool Sandbox.Project.IsBuiltIn { get; set; }
If true this project isn't a 'real' project. It's likely a temporary project created with the intention to configure and publish a single asset.
public bool Sandbox.Project.IsPublished { get; set; }
Returns true if this project has previously been published. This is kind of a guess though because all it does is look to see if we have a published package cached with the same ident.
public bool Sandbox.Project.IsTransient { get; set; }
If true this project isn't a 'real' project. It's likely a temporary project created with the intention to configure and publish a single asset.
public System.DateTimeOffset Sandbox.Project.LastOpened { get; set; }
When did the user last open this project?
public Sandbox.Package Sandbox.Project.Package { get; set; }
The package for this project. This is a mock up of the actual package.
public bool Sandbox.Project.Pinned { get; set; }
True if this project is pinned, we'll prioritise it when sorting
public System.IO.DirectoryInfo Sandbox.Project.RootDirectory { get; set; }
Root directory of this project
public string Sandbox.Project.ViewUrl { get; set; }
The URL to the package's page for viewing/linking
No results match this filter.
Metadata
| Field | Value |
|---|---|
| Namespace | Sandbox |
| Type | class |
| Assembly | Sandbox.Engine |
| Doc ID | T:Sandbox.Project |