# Unreal Template Variant Decision

Version `0.01` decision: remove unused Unreal starter variants from the
long-term Agrarian project.

## Decision

Agrarian should not keep the unused starter gameplay variants as normal project
surface area.

Removed:

- `Variant_Combat`
- `Variant_Platforming`
- `Variant_SideScrolling`
- Their maps, external actors, external objects, input assets, UI assets, VFX,
  and prototype content.

Keep temporarily:

- `ThirdPerson` compatibility assets only while references are audited. The
  active player, controller, and game mode Blueprint paths now live under
  `/Game/Agrarian/Blueprints/Characters`.
- Source `LevelPrototyping` meshes may remain only as copy sources for
  repeatable setup scripts. Active setup outputs now use Agrarian-native
  placeholder mesh assets under `/Game/Agrarian/Environment/PlaceholderMeshes`.
- 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 removed compiled variant source pulled in `StateTree` and
`GameplayStateTree` through Combat and SideScrolling template AI code. After the
variant source/content cleanup, those plugin dependencies were removed from the
baseline.

## Cleanup Rules

Cleanup performed:

1. Removed unused variant C++ folders and include paths.
2. Removed matching content folders and external actor/object data.
3. Removed `StateTreeModule` and `GameplayStateTreeModule`.
4. Disabled `StateTree` and `GameplayStateTree` in `AgrarianGame.uproject`.
5. Replaced the current `ThirdPerson` player/game mode paths with Agrarian-owned
   player, controller, and game mode Blueprint assets.
6. Replaced the active `LevelPrototyping` cube/cylinder placeholder dependencies
   with Agrarian-native placeholder mesh assets.

## Current State

Decision and cleanup are complete for the unused starter variants. Remaining
starter/prototype dependencies are intentionally narrow and no longer block
version `0.01` project-structure completion:

- `ThirdPerson` active player/game mode paths have been replaced. Remaining
  ThirdPerson compatibility assets should be deleted only after redirector and
  editor reference checks confirm they are unused.
- Active setup scripts, prototype Blueprints, and the Ground Zero map now use
  Agrarian-native placeholder mesh assets. `LevelPrototyping` can be removed
  after later reference audits confirm no editor-only copy-source path is still
  needed.
