Verified project difference: the GDD text names Unreal Engine 5.7, while
Lambeer.uproject currently declares EngineAssociation: 5.8. Treat 5.8 as the verified current project version and reconcile the source GDD.Production context
Canonical source
GDD/05-Technical/01-Tech-Stack-and-Engine.mdDecision markers5 confirmed · 6 recommendations · 2 TBD
Browser document roleRead-only production view; edit the GDD source or this generated system through the project workflow.
Verified implementation evidence
Lambeer.uproject (EngineAssociation 5.8)Source/Lambeer/Lambeer.Build.csSource/LambeerServer.Target.cs
Relationships
Document contract coverage
Use these required Technical Design areas during review. The imported GDD below is canonical; items not stated explicitly remain unresolved.
- ReviewProblem & Scope
- ReviewCurrent vs Proposed
- ReviewArchitecture
- ReviewData Model
- ReviewInterfaces & Events
- ReviewReplication / Persistence
- ReviewPerformance & Failure Handling
- ReviewImplementation Plan
- ReviewVerification Strategy
- ReviewTechnical Decisions / TBDs
Canonical GDD content
Engine & project facts (verified from Lambeer.uproject)
- Engine: Unreal Engine 5.7.
- Primary module:
Lambeer(Runtime), depends onEngine,AIModule,UMG. - Enabled plugins:
ModelingToolsEditorMode(editor),StateTree,GameplayStateTree,MetaHuman,MetaHumanCoreTech,MetaHumanCharacter. - MetaHuman plugins support Win64 + Linux → consistent with a Linux dedicated server.
- Project was created from the Third Person template with example variants (
Variant_Combat,Variant_Platforming,Variant_SideScrolling) — all three are to be removed (see 05-Project-Setup-Steps.md).
Language strategy — [CONFIRMED]
- C++ primary, Blueprint allowed where appropriate. Full guidelines in 02-CPP-and-Blueprint-Guidelines.md.
Core engine systems we rely on
| System | Use | Status |
|---|---|---|
| World Partition | Open-world streaming | [CONFIRMED] |
| One File Per Actor (OFPA) | Already on (__ExternalActors__/__ExternalObjects__ present) |
In use |
| Nanite | Static environment geometry | [CONFIRMED] (photoreal) |
| Lumen | GI + reflections | [CONFIRMED] (photoreal) |
| Enhanced Input | All player input | [RECOMMENDATION] (UE5 standard; template already has an Input content folder) |
| StateTree / GameplayStateTree | Zombie & boss AI | [RECOMMENDATION] (plugins already enabled) |
| EQS | AI target/danger queries | [RECOMMENDATION] (combat template includes EQS contexts) |
| Chaos Vehicles | Drivable vehicles | [RECOMMENDATION] (Phase 2) |
| Niagara | VFX | Standard |
| MetaHuman | Player characters | [CONFIRMED] |
Gameplay Ability System (GAS) — [RECOMMENDATION], decision [TBD]
GAS is recommended as the backbone for attributes, damage, status effects, and especially the permanent boss buffs:
- Why it fits: survival stats map to
GameplayAttributes; damage, healing, decay, timed and permanent buffs map toGameplayEffects; boss-granted buffs become persisted permanent effects; abilities (sprint, melee combos, special items) map toGameplayAbilities. It is built network-authoritative with prediction. - Cost/risk: GAS has a real learning curve and boilerplate. [RISK] for a small team if unfamiliar.
- Decision needed: adopt GAS, or build a custom lightweight attribute/effect system. Do not assume — confirm with the owner. If GAS is adopted, enable
GameplayAbilitiesplugin and plan anAbilitySystemComponenton characters.
This decision affects ../01-Gameplay/03-Combat-System.md, ../01-Gameplay/04-Survival-System.md, and ../01-Gameplay/07-Crafting-and-Progression.md.
Source control & large files — [RECOMMENDATION]
- Use Git + Git LFS (or Perforce for larger teams) — UE projects have large binary assets.
- Track binary asset types via LFS; never commit
Binaries/,Intermediate/,DerivedDataCache/,Saved/. - The project is currently not a git repo — initialize one with a proper UE
.gitignoreand.gitattributes. See 05-Project-Setup-Steps.md.
Persistence backend — [TBD]
See ../04-Multiplayer/01-Network-Architecture.md. A pluggable save abstraction is recommended; the concrete technology is undecided.