Document required Unreal plugins
This commit is contained in:
@@ -176,7 +176,7 @@ Remaining version 0.01 cleanup before moving deeper into new gameplay:
|
|||||||
- [x] Implement Linastorage incremental project backup job.
|
- [x] Implement Linastorage incremental project backup job.
|
||||||
- [x] Implement quiesced VM backup job for Windows-Builder and Ubuntu-Codex.
|
- [x] Implement quiesced VM backup job for Windows-Builder and Ubuntu-Codex.
|
||||||
- [x] Create repeatable dedicated server build instructions.
|
- [x] Create repeatable dedicated server build instructions.
|
||||||
- [~] Finish required plugin documentation.
|
- [x] Finish required plugin documentation.
|
||||||
- [ ] Confirm the project opens cleanly from a fresh checkout, not just the current working share.
|
- [ ] Confirm the project opens cleanly from a fresh checkout, not just the current working share.
|
||||||
- [ ] Organize `Content/Agrarian/` folders and move starter/prototype assets into clearly named locations.
|
- [ ] Organize `Content/Agrarian/` folders and move starter/prototype assets into clearly named locations.
|
||||||
- [ ] Launch near-term MVP map-tile serving cloud VM.
|
- [ ] Launch near-term MVP map-tile serving cloud VM.
|
||||||
@@ -214,7 +214,7 @@ Goal: Prepare the project so all future development is controlled, recoverable,
|
|||||||
- [x] Create repeatable local build instructions.
|
- [x] Create repeatable local build instructions.
|
||||||
- [x] Create repeatable packaged build instructions.
|
- [x] Create repeatable packaged build instructions.
|
||||||
- [x] Create repeatable dedicated server build instructions.
|
- [x] Create repeatable dedicated server build instructions.
|
||||||
- [~] Document required plugins.
|
- [x] Document required plugins.
|
||||||
- [x] Disable unneeded plugins.
|
- [x] Disable unneeded plugins.
|
||||||
- [x] Confirm project compiles from a clean checkout.
|
- [x] Confirm project compiles from a clean checkout.
|
||||||
- [ ] Confirm project opens from a clean checkout.
|
- [ ] Confirm project opens from a clean checkout.
|
||||||
@@ -1418,7 +1418,7 @@ Earliest incomplete foundation items:
|
|||||||
- [x] Implement Linastorage incremental project backup job.
|
- [x] Implement Linastorage incremental project backup job.
|
||||||
- [x] Implement quiesced VM backup job for Windows-Builder and Ubuntu-Codex.
|
- [x] Implement quiesced VM backup job for Windows-Builder and Ubuntu-Codex.
|
||||||
- [x] Create repeatable dedicated server build instructions.
|
- [x] Create repeatable dedicated server build instructions.
|
||||||
- [~] Finish required plugin documentation.
|
- [x] Finish required plugin documentation.
|
||||||
- [ ] Confirm project opens cleanly from a fresh checkout.
|
- [ ] Confirm project opens cleanly from a fresh checkout.
|
||||||
- [ ] Create the core design document.
|
- [ ] Create the core design document.
|
||||||
- [ ] Create the technical design document.
|
- [ ] Create the technical design document.
|
||||||
@@ -1434,4 +1434,4 @@ Earliest incomplete foundation items:
|
|||||||
|
|
||||||
Immediate next item:
|
Immediate next item:
|
||||||
|
|
||||||
- [~] Finish required plugin documentation.
|
- [ ] Confirm project opens cleanly from a fresh checkout.
|
||||||
|
|||||||
@@ -0,0 +1,82 @@
|
|||||||
|
# Required Unreal Plugins
|
||||||
|
|
||||||
|
Agrarian should keep plugins boring and intentional. Every enabled plugin must
|
||||||
|
either be required by compiled code, required by checked-in content, or clearly
|
||||||
|
limited to editor workflow.
|
||||||
|
|
||||||
|
## Current Enabled Plugins
|
||||||
|
|
||||||
|
These are the only plugins intentionally enabled in `AgrarianGame.uproject`.
|
||||||
|
|
||||||
|
| Plugin | Required For | Runtime Needed | Notes |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| `StateTree` | Template AI code that still compiles under `Variant_Combat` and `Variant_SideScrolling` | Yes, until those template variants are removed or rewritten | Required by `StateTreeModule` includes and dependencies. |
|
||||||
|
| `GameplayStateTree` | StateTree AI component support used by the template AI controllers | Yes, until those template variants are removed or rewritten | Required by `GameplayStateTreeModule` and `UStateTreeAIComponent`. |
|
||||||
|
| `ModelingToolsEditorMode` | Editor-side terrain, mesh, and prototype world-building workflow | No | Keep enabled for developer/editor use. Revisit before shipping if it adds unnecessary packaging overhead. |
|
||||||
|
|
||||||
|
## Module Dependencies Tied To Plugins
|
||||||
|
|
||||||
|
`Source/AgrarianGame/AgrarianGame.Build.cs` currently depends on:
|
||||||
|
|
||||||
|
- `StateTreeModule`
|
||||||
|
- `GameplayStateTreeModule`
|
||||||
|
|
||||||
|
Do not disable `StateTree` or `GameplayStateTree` until the template AI source
|
||||||
|
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.
|
||||||
|
|
||||||
|
## Explicitly Not Enabled Yet
|
||||||
|
|
||||||
|
These plugins are intentionally not part of the baseline yet:
|
||||||
|
|
||||||
|
- `OnlineSubsystemSteam`: enable only when Steam account/session integration is
|
||||||
|
ready to implement and test.
|
||||||
|
- `GameplayAbilities`: decide after the core survival/crafting/combat model is
|
||||||
|
better defined. Do not add it just because it may be useful later.
|
||||||
|
- Marketplace content plugins: add only when the asset is actively used by the
|
||||||
|
current build and the repository storage policy has been checked.
|
||||||
|
- Visual Studio tooling plugins: avoid committing machine-specific editor helper
|
||||||
|
plugin references.
|
||||||
|
|
||||||
|
## Add Or Remove Plugin Checklist
|
||||||
|
|
||||||
|
Before enabling a plugin:
|
||||||
|
|
||||||
|
1. Confirm whether it is needed at runtime, editor-only, or only for one-time
|
||||||
|
asset authoring.
|
||||||
|
2. Check the license, redistribution terms, and whether it can be used in
|
||||||
|
packaged builds.
|
||||||
|
3. Run `Scripts/audit_repo_storage.sh` if the plugin brings assets into the
|
||||||
|
repository.
|
||||||
|
4. Update `AgrarianGame.uproject`.
|
||||||
|
5. Update `Source/AgrarianGame/AgrarianGame.Build.cs` only when code needs the
|
||||||
|
plugin's modules.
|
||||||
|
6. Build `AgrarianGameEditor` after the change.
|
||||||
|
7. If runtime code or packaged content depends on it, build a packaged client
|
||||||
|
and eventually the dedicated server target.
|
||||||
|
8. Update this document and the roadmap note for the plugin decision.
|
||||||
|
|
||||||
|
Before disabling a plugin:
|
||||||
|
|
||||||
|
1. Search source, config, Blueprints, maps, and data assets for references.
|
||||||
|
2. Remove unused module dependencies from `AgrarianGame.Build.cs`.
|
||||||
|
3. Open the project and fix missing asset/class references.
|
||||||
|
4. Run the editor build and relevant automation checks.
|
||||||
|
5. Package a client if runtime content was affected.
|
||||||
|
|
||||||
|
## Current Decision
|
||||||
|
|
||||||
|
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.
|
||||||
Reference in New Issue
Block a user