| name | unreal |
| description | Work on an Unreal Engine 5 project from the shell: read the .uproject, decide C++ vs Blueprint, build with UnrealBuildTool, cook/package with RunUAT BuildCookRun, run Automation tests via UnrealEditor-Cmd, generate project files. Use when a *.uproject exists or the owner mentions Unreal, UE5, Blueprints, UBT or RunUAT. Knowledge-only — bash_exec and file tools.
|
| version | 1.0.0 |
| author | Remedy |
| tags | ["game","unreal","ue5","cpp","blueprint","uat","ubt"] |
| requires | [] |
| tools | ["game_project_info","local_discover","bash_exec","file_read","file_write","file_edit","repo_search","list_dir","game_playtest","computer_screenshot"] |
| triggers | ["\\b(unreal|ue5|ue4|uproject|blueprints?|unrealbuildtool|runuat|ubt|uat)\\b"] |
| local | {"binaries":[{"id":"unreal-editor","names":"[Truncated]","env":"[Truncated]"}]} |
Unreal Engine 5 (UBT, UAT, automation)
Unreal projects are big and slow. Plan for long commands, read logs instead
of guessing, and keep the owner informed about what the editor GUI still
has to do (Blueprint graphs, level layout, materials).
Fingerprint (start here)
game_project_info(path), then file_read <Name>.uproject (JSON):
EngineAssociation ("5.4" for launcher builds, a GUID for source
builds), Modules[] (present ⇒ C++ project; absent ⇒ Blueprint-only),
Plugins[].
Source/<Name>/<Name>.Build.cs and Source/<Name>.Target.cs,
<Name>Editor.Target.cs → module deps and targets.
Config/DefaultEngine.ini → default maps, game mode; Content/ holds
.uasset/.umap (binary; never hand-edit).
- Layout details:
references/project-layout.md.
Find the engine (never a wizard)
Order: UE_ROOT / UE5_ROOT env → local_discover → well-known dirs:
%PROGRAMFILES%\Epic Games\UE_<ver>\ (Windows launcher),
/Users/Shared/Epic Games/UE_<ver>/ (macOS), or the owner's source
checkout. Inside: Engine\Binaries\Win64\UnrealEditor.exe,
UnrealEditor-Cmd.exe, Engine\Build\BatchFiles\RunUAT.bat, Build.bat,
GenerateProjectFiles.bat (source builds only). Match <ver> to
EngineAssociation. Not found → ask once: "where is the engine installed?"
and carry on with the C++ you can write anyway.
C++ vs Blueprint
Blueprint for designer-facing behaviour, quick wiring, anything the owner
will tweak in the editor. C++ for systems, performance, anything you must
test or version-control readably. You can write and build C++; you cannot
author Blueprint graphs from a shell — describe nodes for the owner.
Expose C++ to BP with UCLASS(Blueprintable), UPROPERTY(EditAnywhere, BlueprintReadWrite), UFUNCTION(BlueprintCallable). More:
references/cpp-vs-blueprint.md.
Build (UnrealBuildTool)
"<Engine>\Build\BatchFiles\Build.bat" <Name>Editor Win64 Development -Project="<abs>\<Name>.uproject" -WaitMutex