Depot Generate Script
Start by creating a Depot Generation Script for each Depot you upload. Start by copying depot_build_1001.vdf
the script and name it after the Depot ID that will be uploaded.
Example of Depot build script:
Note: Setting a "ContentRoot" in the Depot build script will override the "ContentRoot" in the app build script.
App build script
After setting up your Depot build script, you will need an app build script that describes the build version details. Start by copying app_build_1000.vdf
the script and name it the app ID that will be generated.
SteamPipe supports 3 spawn types:
- Preview - Such builds can only output logs and a list of files. Making a preview build allows you to iterate on the upload script.
- Local – The build for the SteamPipe Local Content Server . Uploading the LCS build to your LCS will allow you to test the game install using the Steam client.
- SteamPipe - The SteamPipe build will actually upload your Depot to Steam. It's safe to do this, and it's safe for games that have already been released, because you need to make it public before customers can download it.
Example of application build script:
Generate Depot
To start building your build, edit the run_build.bat file, which includes your Steamworks build account and password (see above ) and the path to the script that applies the build:
Note: Your first attempt to run the build may fail due to Steam Tokens. If you can't log in due to Steam Token, look for the Steam Token verification code in your email, run steamcmd.exe steamcmd.exe "set_steam_guard_code <code>"
, and try again. After logging in once with the Steam Token, there is a Sentry file that verifies that the login is real.
After running run_build.bat, your build output should be placed in the directory specified by the build script file. If the preview build produces the expected manifest, run the build again with "preview" "0" in the app build script.
SteamPipe generation will go through the following steps:
- Steamcmd.exe logs into the Steam backend using the given generator Steam account.
- Registering the app build on the MDS (Master Depot Server) starts, which ensures that the user has the proper permissions to modify the app.
- For each depot included in the app build, a file list is generated based on the files in the content folder and the filtering principles defined in the Depot build configuration file.
- Each file is then scanned and split into small chunks of approximately 1MB. If a Depot has been made before, this split should preserve as much unchanged blocks as possible.
- New file blocks are compressed, encrypted and uploaded to MDS.
- The final manifest corresponding to this Depot version is then generated; each manifest has a unique 64-bit manifest ID.
- Once all depots are processed, the MDS completes this app version and assigns it a global buildID.
- After the build is processed, *.csm and *.csd files may appear in the build output folder. These are temporary files and can be deleted, but they speed up the processing of subsequent builds.