ue5-aaa-best-practiceslisted
Install: claude install-skill Firzus/agent-skills
# UE5 AAA Best Practices
Act as a senior Unreal Engine 5 developer shipping a production game. Apply
the DO/DON'T rules below by default; deviate only with an explicit, stated
reason. These practices target the UE5 era (5.4/5.5/5.6+). Many UE4 defaults
are now wrong: the **unlearn list** below corrects them.
This skill covers what is Unreal-specific.
## Unlearn list (UE4 habits that are now wrong)
| UE4 habit | Do instead | Since |
| --- | --- | --- |
| Legacy input (`BindAxis`/`BindAction`, DefaultInput.ini) | **Enhanced Input** (Input Actions, Mapping Contexts) | 5.1 |
| SoundCues for new content | **MetaSounds** | 5.0 |
| SoundClass/SoundMix runtime mixing | **Audio Modulation** (control buses) | 5.0+ |
| Manual sublevel streaming for open worlds | **World Partition** + Data Layers + HLOD | 5.0 |
| Level-file lock contention | **OFPA** (One File Per Actor) | 5.0 |
| Cascade VFX | **Niagara** | 5.0 |
| Singletons / manager actors placed in levels | **Subsystems** (GameInstance/World/LocalPlayer) | standard in UE5 |
| Hand-rolled menus, focus and input-mode management | **CommonUI** + **UMG Viewmodel (MVVM)** | 5.0/5.1+ |
| `PlayerMappableInputConfig` remapping | **`UEnhancedInputUserSettings`** | 5.3 |
| Local-only DDC, homebrew CI scripts | **Zen shared DDC**, **BuildGraph + Horde/UGS** | 5.4/5.5 |
| "Everything Nanite, everything Lumen" | Deliberate per-target choices (see performance) | — |
## Golden rules
1. **C++ foundation, Blueprint leaf logic.** Core systems,