This script automates creation of the Steam files: download of the archives, extraction of the archives, preparation of the build scripts (VDF files), actual building of the Steam game files.
steamcmdis used to generate the Steam game files. The path to the
steamcmdis what is actually needed.
steamcmdfrom the command-line at least once - Needded to ensure the user is properly logged in. On a new machine the user will have to go through two-factor authentication.
$ export STEAMUSER=SteamUserName $ export STEAMPW=SteamUserPW $ export BASEURL=https://download.blender.org/release/Blender2.83/ $ export VERSION=2.83.3 $ export APPID=appidnr $ export WINID=winidnr $ export LINID=linuxidnr $ export MACOSID=macosidnr # log in to SteamWorks from command-line at least once $ ../sdk/tools/ContentBuilder/builder_osx/steamcmd +login $STEAMUSER $STEAMPW # once that has been done we can now actually start our tool $ python3.7 create_steam_builds.py --baseurl $BASEURL --version $VERSION --appid $APPID --winid $WINID --linuxid $LINID --macosid $MACOSID --steamuser $STEAMUSER --steampw $STEAMPW --steamcmd ../sdk/tools/ContentBuilder/builder_osx/steamcmd
All arguments in the above example are required.
At the start the tool will login using
steamcmd. This is necessary to let the Steam SDK update itself if necessary.
There are a few optional arguments:
--dryrun: If set building the game files will not actually happen. A set of log files and a preview manifest per depot will be created in the output folder. This can be used to double-check everything works as expected.
--skipdl: If set will skip downloading of the archives. The tool expects the archives to already exist in the correct content location.
--skipextract: If set will skip extraction of all archives. The tool expects the archives to already have been correctly extracted in the content location.
Run the tool with
-h for detailed information on each argument.
The content and output folders are generated through appending the version without dots to the words
output respectively, e.g.
output2833. These folders are created next to the tool.
.template files the Steam build scripts will be generated also in the same directory as the tool. The files will have the extension
In case of errors the tool will have a non-zero return code.