How to use Automation Tool?

Hey,

we are about to see how we can mod our game and provide an project for modders so they can easily create a mod and package that up without knowledge of the whole build system. Ideally sending the package to steam workshop right away looking over to ARK: Survival evolved
It seems the best way to manually package, is calling uppon RunUAT.bat, which starts the Automation Tool. Checking the output log when packaging and forum you can see some commandlines used for the process and get some commands with


 runUAT -help


 runUAT -list

Checking ‘runUAT -help’ it comes up with:


AutomationTool.exe -verbose] -compileonly] -p4] Command0 -Arg0 -Arg1 -Arg2 .] Command1 -Arg0 -Arg1 .] Command2 -Arg0 .] Commandn . [EnvVar0=MyValue0 . EnvVarn=MyValuen]

So what are the commands and what are the args? The list below that is called parameters. parameters = command or parameter = arg? What are the args for the commands?

However, I would like some information about the commands and what they are doing. In the docs I only come across the following, but that is only for unit testing. Is Automation Tool and Automation System the same? It does not tell anything about building the project via commandline. https://docs.unrealengine.com/latest…ion/index.html

Just looking at the packaging output there are many commands that are not listed running the above commandlines.
Where to find information about building manually via commandline?

Most of them are in the Engine/Source/Programs/AutomationTool/Scripts folder. You can search the .cs files for “: BuildCommand” (since these classes will extend the BuildCommand base class).

For example: BuildCommonTools, BuildCookRun, BuildDerivedDataCache, BuildPhysX, BuildPlugin, FixupRedirects, RebuildLightMaps, ResavePackages, RunSimplygonTests, SyncDDC, SyncDepotPath, CleanDDC

…and many more.

Hi also look for UATHelperModule class, is just a solid show case about how to use RunUAT.bat directly from the editor, you can monitored everything with the FMonitoredProcess class

Thanks guys, got it working somehow.