Free and Open Source Plugin for Unreal Engine that enhances your deployment workflow
- Build multiple build configurations with just one click, build Windows & Linux versions of your game with one click
- Automatically publish & deploy your builds to Steam, no need to manually start SteamCMD or any helper tool, everything's in the engine
I created this plugin for my new (upcoming) Steam release because I hated the previous workflow of having to package Windows & Linux separatly, than having to wait for both processes to finish to then still having to upload the game via the SteamPipeGUI. To improve this workflow I created this plugin that handles all of that automatically.
Writing this plugin actually was pretty fun. The most challanging part was to find out, how I could trigger packaging via C++ code, after searching to the source code of Unreal to learn how they do it if you press the package button in the editor I was than able to package via C++.
Using this Documentation from Valve I was then able to upload the freshly (via C++!!) packaged builds to Steam.
To add this plugin to your project, just clone the repository and put it in your project's plugin folder. I recommend using submodules to do so.
Note
Note that this plugin was just tested in Unreal Engine 5.8, earlier versions should work, but I do not garantuee
The first thing you should do is to set your individual quick deploy settings
In the project settings you should firstly set your build configurations, these are the configurations that are run as soon as you start quick deploy. The settings should be self-explanatory, to understand them better there are also tooltips for each one of them.
- ProjectPackagingBuildConfigurations: Project packaging configuration. Shipping by default
- BuildTargetName: The name of the build target that should be used, the build target are the x.Build.cs files. Do not include the Build.cs in here, just the target name.
- OperatingSystemIdentifier: The operating system identifier, can be taken from the UE5-Settings SupportedPlatforms
- DepotId: The Steam depot id of this build, used to upload the build to Steam
There are also other settings you should set, like the SteamAppId, SteamCMD installation path or the archiving directory.
The final step is this menu, most important are both Steam Username and Password, without them, you cannot upload your packaged builds to Steam. Additionally you can append a build description or change the projects version. The version is taken from the DefaultGame.ini which Unreal provides by default.
If you want to, you can automatically upload the Steam build to a specific branch.
If you want to contribute to this project, please do not use AI to vibe code your code.
Important
This project was written without the help of AI