Production context
GDD/05-Technical/05-Project-Setup-Steps.mdVerified implementation evidence
- Not verified for this documentation pass.
Relationships
Document contract coverage
Use these required Production Pipeline areas during review. The imported GDD below is canonical; items not stated explicitly remain unresolved.
- ReviewScope & Roles
- ReviewWorkflow
- ReviewStage Entry / Exit Criteria
- ReviewReview & Revision
- ReviewFile Handoff
- ReviewSource Control
- ReviewNaming & Paths
- ReviewDefinition of Done
- ReviewExternal / Freelancer Handoff
Canonical GDD content
A checklist to take the project from its current template state to the Lambeer foundation. Do these before/at the start of Phase 1. Treat destructive steps (deletions) carefully and commit to source control first.
0. Source control first — [RECOMMENDATION]
The project is currently not a git repo. Before deleting anything:
1. Initialize git + Git LFS (or Perforce).
2. Add a proper UE .gitignore (ignore Binaries/, Intermediate/, DerivedDataCache/, Saved/, .vs/) and .gitattributes (LFS for *.uasset, *.umap, textures, audio, etc.).
3. Commit the clean template state as a baseline so removals are reversible.
1. Remove template variant code & content — [CONFIRMED]
Delete all three example variants (they are Epic demos, not our game):
Source:
- Source/Lambeer/Variant_Combat/
- Source/Lambeer/Variant_Platforming/
- Source/Lambeer/Variant_SideScrolling/
Content:
- Content/Variant_Combat/
- Content/Variant_Platforming/
- Content/Variant_SideScrolling/
Then:
- Remove references to the deleted classes from Lambeer.Build.cs and any includes.
- Regenerate project files and rebuild.
- Verify the editor opens and LambeerGameMode/LambeerCharacter/LambeerPlayerController still compile.
[RISK] deleting content can leave dangling references in maps/blueprints. Use the editor's reference viewer / "delete with references" flow, fix up redirectors, and resave dirty packages.
2. Decide & clean remaining template content
Content/ThirdPerson/,Content/LevelPrototyping/,Content/Characters/,Content/Input/,Content/Collections/are template content. Decide per folder: reuse (relocate underContent/Lambeer/) or remove. [TBD] per folder — keep only what serves Lambeer.- Establish
Content/Lambeer/root and the structure in 03-Content-Folder-Structure.md.
3. Add the dedicated server target — [RECOMMENDATION]
- Add
Source/LambeerServer.Target.csfor the dedicated server (Linux primary, Win64 for local dev). - Confirm a server build compiles (
UnrealEditor/UATserver build), since the whole game is server-authoritative. See ../04-Multiplayer/01-Network-Architecture.md.
4. Enable / confirm plugins
Already enabled: StateTree, GameplayStateTree, MetaHuman, MetaHumanCoreTech, MetaHumanCharacter, ModelingToolsEditorMode.
Enable as features land (don't pre-enable unused): - Enhanced Input (player input) — confirm on. - GameplayAbilities — only if GAS is adopted (01-Tech-Stack-and-Engine.md, [TBD]). - ChaosVehicles — Phase 2 (vehicles). - World Partition is engine-level (no plugin) — author the main map as a WP level.
5. Configure the project
- Set up
Config/DefaultEngine.inietc. for: World Partition defaults, Nanite/Lumen settings, networking (max players, net update rates), and a server config approach (see ../04-Multiplayer/02-Servers-and-Hosting.md). - Set default GameMode/maps for the project (main menu map + dev sandbox map).
6. Establish foundation classes (Phase 1 scaffolding)
In code (C++), per 04-Source-Code-Structure.md:
- Evolve ALambeerCharacter into the component-driven survivor (add survival/inventory/combat/build/interaction components as they're built).
- Set up Core/ framework classes (GameState, PlayerState, GameInstance, persistence subsystem stub).
- Create BP children for content assignment (BP_PlayerCharacter, etc.).
7. MetaHuman pipeline check
- Confirm a MetaHuman imports and drives the player character correctly (skeleton, anim retarget). See ../06-Art-Audio/01-Art-Direction-and-MetaHuman.md.
8. Validate
- Editor opens clean, no missing-reference spam.
- Client + dedicated server build compile.
- A two-client + dedicated-server PIE/test session connects and replicates basic movement.
Keep this list updated as the foundation solidifies; it is the bridge from "template" to "Lambeer".