diff --git a/AGRARIAN_DEVELOPMENT_ROADMAP.md b/AGRARIAN_DEVELOPMENT_ROADMAP.md index 74f3c6f..7d7aae4 100644 --- a/AGRARIAN_DEVELOPMENT_ROADMAP.md +++ b/AGRARIAN_DEVELOPMENT_ROADMAP.md @@ -167,7 +167,7 @@ Major version 0.01 work already completed: 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] Finish branch naming conventions. - [x] Finish commit message conventions. @@ -1438,4 +1438,4 @@ Earliest incomplete foundation items: 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. diff --git a/Docs/RequiredPlugins.md b/Docs/RequiredPlugins.md index 4c9dc20..107adda 100644 --- a/Docs/RequiredPlugins.md +++ b/Docs/RequiredPlugins.md @@ -27,10 +27,9 @@ under these folders is removed or refactored: - `Source/AgrarianGame/Variant_Combat/` - `Source/AgrarianGame/Variant_SideScrolling/` -The roadmap already tracks a decision on whether to keep or remove current -Unreal template variants. If those variants are removed, revisit this document -and remove the StateTree plugin/module dependencies if no Agrarian-specific AI -code needs them. +The template variant decision is captured in `Docs/TemplateVariantDecision.md`. +When those variants are removed, revisit this document and remove the StateTree +plugin/module dependencies if no Agrarian-specific AI code needs them. ## Explicitly Not Enabled Yet @@ -77,6 +76,5 @@ Keep `StateTree`, `GameplayStateTree`, and `ModelingToolsEditorMode` enabled for version `0.01`. 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 -allow the project to remove StateTree dependencies if the template AI code is -deleted. +plugin review is the template-variant cleanup item, because that may allow the +project to remove StateTree dependencies if the template AI code is deleted. diff --git a/Docs/TemplateVariantDecision.md b/Docs/TemplateVariantDecision.md new file mode 100644 index 0000000..3b145bf --- /dev/null +++ b/Docs/TemplateVariantDecision.md @@ -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.