Class SteamDistro
Distro that uploads builds to Steam.
Inherited Members
Namespace: sttz.Trimmer.Editor
Assembly: Trimmer-Editor.dll
Syntax
[CreateAssetMenu(fileName = "Steam Distro.asset", menuName = "Trimmer/Steam", order = 100)]
public class SteamDistro : DistroBase
Remarks
Uses Steam's ContentBuilder to upload the builds to Steam.
You need the Steam SDK (or only the ContentBuilder folder inside its tools directory as well as a Steam developer account.
The upload is configured using VDF scripts, refer to Valve's documentation on how they are set up.
Trimmer distros are path independent, i.e. the build path can be anything. The Build Profile decides on the path and then passes it on to the distribution for processing. However, Steam's scripts only allow for configuring fixed paths and don't support variable substitution.
Therefore, SteamDistro performs its own variable substitution to fill in the dynamic build paths into the VDF scripts. It takes a directory of scripts as input, processes those scripts and then writes them to a temporary directory. Your scripts will therefore not run from the scripts folder but from an essentially random path. Use variables to refer to the build, assets inside the script folder or files in the Unity project.
Supported variables:
{{BuiltTarget}}
: Path to the last build of the given target{{project}}
: Path to the Unity project root{{scripts}}
: Path to the original scripts folder
The {{BuildTarget}}
variables come from the given Build Profiles. Adding a
variable from a build target that doesn't exist in any Build Profile will
result in an error. Extra build targets that are never inserted into a script
will result in a warning. If multiple Build Profiles share a target, the last
one will be used.
Fields
| Improve this Doc View SourceappScript
Main app VDF script file.
Declaration
public string appScript
Field Value
Type | Description |
---|---|
System.String |
scriptsFolder
The folder where the VDF content builder scripts are stored.
Declaration
public string scriptsFolder
Field Value
Type | Description |
---|---|
System.String |
steamdSDKPath
Path to the Steam SDK.
Declaration
public string steamdSDKPath
Field Value
Type | Description |
---|---|
System.String |
steamLogin
The user used to log into steam.
Declaration
[Keychain("SteamDistro", null)]
public Login steamLogin
Field Value
Type | Description |
---|---|
Login |
Methods
| Improve this Doc View SourceDistributeCoroutine(IEnumerable<DistroBase.BuildPath>, Boolean)
Declaration
protected override IEnumerator DistributeCoroutine(IEnumerable<DistroBase.BuildPath> buildPaths, bool forceBuild)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<DistroBase.BuildPath> | buildPaths | |
System.Boolean | forceBuild |
Returns
Type | Description |
---|---|
System.Collections.IEnumerator |
Overrides
| Improve this Doc View SourceFindSteamCmd()
Find the SteamCmd tool in the Steam SDK.
Declaration
public string FindSteamCmd()
Returns
Type | Description |
---|---|
System.String |