UEScripts/doc/Release.md
2020-10-13 10:13:17 +01:00

2.7 KiB

Release Script

The release script ue4-release.ps1 takes previously packaged builds (see Packaging Script) and uploads them to publishing services; currently Itch.io and Steam.

You will need to install the Steamworks SDK to release on Steam, and the Itch Butler tool to release on Itch.

This script uses configuration stored in packageconfig.json.

  ue4-release.ps1 [-version:ver|-latest] -variants:v1,v2 -services:steam,itch [-src:sourcefolder] [-dryrun]

  -version:ver        : Version to release; must have been packaged already
  -latest             : Instead of an explicit version, release one identified in project settings  
  -variants:var1,var2 : Name of variants to release. Omit to use DefaultVariants
  -services:s1,s2     : Name of services to release to. Can omit and rely on ReleaseTo
                        setting of variant in packageconfig.json
  -src                : Source folder (current folder if omitted), must contain packageconfig.json
  -dryrun             : Don't perform any actual actions, just report what would happen
  -help               : Print this help

Uploading all builds at once

The only mandatory argument is the version number, which you can specify explicitly, or use the -latest option to take the version from project settings. With only that argument, the script will process all the default variants for this project and release any which have release settings. This allows you to push all your builds for a given version at once.

Uploading more selectively

Alternatively you can limit the packages you upload using the -variants and -services arguments; if supplied, only matching variants and publishing services will be processed.

Authentication

This script will call the Itch butler tool and/or the Steam steamcmd tool. These have their own authentication; you will be prompted as needed but if you want to guarantee no prompts during running, you should log in to the services on the command line beforehand.

Logging in to Itch

butler login

Your Itch authentication will be stored for future use after logging in.

Logging in to Steam

steamcmd +login user_name

The SteamLogin setting in packageconfig.json should be the same as the username you log in with here.

When builds go live

There is some variation on when players can see your uploaded packages:

  • Itch: Packages go live as soon as Itch finishes processing them
  • Steam: Packages sit in the release queue until you explicitly release them via the Steamworks web interface