Difference between RunUAT and UnrealBuildTool

From my understanding, you can use the Engine/Build/BatchFiles/RunUAT.bat script to build your game via the command line instead of manually opening the editor and packaging from in there.

How is this different from UnrealBuildTool? I believe UnrealBuildTool is used to compile the engine source code?

Do these two need to be used together? I often see tutorials that demonstrate automating Unreal builds using both, but I was able to run RunUAT locally and it built my game just fine, but perhaps that’s because I’ve already built the engine on my machine (by virtue of downloading it from the Epic Games Launcher)?

Hey @brno32!

You are correct that the UnrealBuildTool manages building Unreal Engine source code, while RunUAT is used specifically at the cook/package/run/deploy stage of the process. You can find more information here:

https://docs.unrealengine.com/5.0/en-US/unreal-build-tool-reference/

I hope the above information provides what you need!

2 Likes

In a lot of automation guides, I’ve seen people run the UnrealBuildTool after RunUAT and I guess I’m just not sure what this accomplishes