Decide template variant cleanup path
This commit is contained in:
@@ -167,7 +167,7 @@ Major version 0.01 work already completed:
|
|||||||
|
|
||||||
Remaining version 0.01 cleanup before moving deeper into new gameplay:
|
Remaining version 0.01 cleanup before moving deeper into new gameplay:
|
||||||
|
|
||||||
- [ ] Decide whether to keep current Unreal template variants or remove unused starter variants.
|
- [x] Decide whether to keep current Unreal template variants or remove unused starter variants.
|
||||||
- [x] Decide whether to create/use a long-lived `dev` branch. Decision: do not use one yet; use `main` plus short-lived task branches until team size or release channels require a staging branch.
|
- [x] Decide whether to create/use a long-lived `dev` branch. Decision: do not use one yet; use `main` plus short-lived task branches until team size or release channels require a staging branch.
|
||||||
- [x] Finish branch naming conventions.
|
- [x] Finish branch naming conventions.
|
||||||
- [x] Finish commit message conventions.
|
- [x] Finish commit message conventions.
|
||||||
@@ -1438,4 +1438,4 @@ Earliest incomplete foundation items:
|
|||||||
|
|
||||||
Immediate next item:
|
Immediate next item:
|
||||||
|
|
||||||
- [ ] Decide whether to keep current Unreal template variants or remove unused starter variants.
|
- [ ] Organize `Content/Agrarian/` folders and move starter/prototype assets into clearly named locations.
|
||||||
|
|||||||
@@ -27,10 +27,9 @@ under these folders is removed or refactored:
|
|||||||
- `Source/AgrarianGame/Variant_Combat/`
|
- `Source/AgrarianGame/Variant_Combat/`
|
||||||
- `Source/AgrarianGame/Variant_SideScrolling/`
|
- `Source/AgrarianGame/Variant_SideScrolling/`
|
||||||
|
|
||||||
The roadmap already tracks a decision on whether to keep or remove current
|
The template variant decision is captured in `Docs/TemplateVariantDecision.md`.
|
||||||
Unreal template variants. If those variants are removed, revisit this document
|
When those variants are removed, revisit this document and remove the StateTree
|
||||||
and remove the StateTree plugin/module dependencies if no Agrarian-specific AI
|
plugin/module dependencies if no Agrarian-specific AI code needs them.
|
||||||
code needs them.
|
|
||||||
|
|
||||||
## Explicitly Not Enabled Yet
|
## Explicitly Not Enabled Yet
|
||||||
|
|
||||||
@@ -77,6 +76,5 @@ Keep `StateTree`, `GameplayStateTree`, and `ModelingToolsEditorMode` enabled for
|
|||||||
version `0.01`.
|
version `0.01`.
|
||||||
|
|
||||||
Do not add additional plugins until a roadmap item requires them. The next
|
Do not add additional plugins until a roadmap item requires them. The next
|
||||||
likely plugin review is the template-variant cleanup item, because that may
|
plugin review is the template-variant cleanup item, because that may allow the
|
||||||
allow the project to remove StateTree dependencies if the template AI code is
|
project to remove StateTree dependencies if the template AI code is deleted.
|
||||||
deleted.
|
|
||||||
|
|||||||
@@ -0,0 +1,63 @@
|
|||||||
|
# Unreal Template Variant Decision
|
||||||
|
|
||||||
|
Version `0.01` decision: remove unused Unreal starter variants from the
|
||||||
|
long-term Agrarian project, but do the actual source/content cleanup as the
|
||||||
|
next focused cleanup item instead of mixing it with this decision record.
|
||||||
|
|
||||||
|
## Decision
|
||||||
|
|
||||||
|
Agrarian should not keep the unused starter gameplay variants as normal project
|
||||||
|
surface area.
|
||||||
|
|
||||||
|
Remove or quarantine:
|
||||||
|
|
||||||
|
- `Variant_Combat`
|
||||||
|
- `Variant_Platforming`
|
||||||
|
- `Variant_SideScrolling`
|
||||||
|
- Their maps, external actors, input assets, UI assets, VFX, and prototype
|
||||||
|
content when no Agrarian-specific map depends on them.
|
||||||
|
|
||||||
|
Keep temporarily:
|
||||||
|
|
||||||
|
- `ThirdPerson` base character/input assets needed by the current player
|
||||||
|
Blueprint and early automation until Agrarian-specific player assets and the
|
||||||
|
MVP character selection flow replace them.
|
||||||
|
- Shared mannequin/animation content only where current Agrarian assets still
|
||||||
|
reference it.
|
||||||
|
|
||||||
|
## Why
|
||||||
|
|
||||||
|
The extra starter variants increase compile time, plugin dependencies, content
|
||||||
|
noise, and risk during packaging. They also make the project look like a
|
||||||
|
generic Unreal template instead of an Agrarian-specific survival game.
|
||||||
|
|
||||||
|
The current compiled variant source still pulls in `StateTree` and
|
||||||
|
`GameplayStateTree` through Combat and SideScrolling template AI code. Once the
|
||||||
|
unused variants are removed, those plugin dependencies should be rechecked and
|
||||||
|
removed if no Agrarian-specific AI code needs them.
|
||||||
|
|
||||||
|
## Cleanup Rules
|
||||||
|
|
||||||
|
Perform the cleanup in the editor-aware content organization pass:
|
||||||
|
|
||||||
|
1. Create a backup or ensure the current project backup timer has a fresh
|
||||||
|
snapshot before deleting content.
|
||||||
|
2. Remove unused variant C++ folders and include paths.
|
||||||
|
3. Remove matching content folders and external actor/object data.
|
||||||
|
4. Remove `StateTreeModule` and `GameplayStateTreeModule` if no remaining code
|
||||||
|
needs them.
|
||||||
|
5. Disable `StateTree` and `GameplayStateTree` in `AgrarianGame.uproject` if no
|
||||||
|
remaining content needs them.
|
||||||
|
6. Keep the current `ThirdPerson` character path until the MVP landing page and
|
||||||
|
male/female character selection flow are implemented.
|
||||||
|
7. Build `AgrarianGameEditor`.
|
||||||
|
8. Open the Ground Zero map and run map check.
|
||||||
|
9. Run the existing automation smoke checks that cover interaction, resources,
|
||||||
|
wildlife, and Ground Zero placement.
|
||||||
|
|
||||||
|
## Current State
|
||||||
|
|
||||||
|
Decision is complete. Cleanup is intentionally deferred to the next roadmap
|
||||||
|
item, `Organize Content/Agrarian/ folders and move starter/prototype assets into
|
||||||
|
clearly named locations`, so deletions and redirects can be validated in one
|
||||||
|
focused pass.
|
||||||
Reference in New Issue
Block a user