Skip to content

Unreal Project Structure

Content Root

Long-term project content should live under:

Content/Andromeda/

Recommended structure:

Content/
  Andromeda/
    Blueprints/
      Core/
      Interactables/
      Items/
      Station/
      Tools/
      UI/
    Maps/
    Materials/
    Meshes/
    Data/
    Audio/
    VFX/
    Developer/

Template content may remain outside this folder during early development. New Andromeda-specific assets should not be placed at the root of Content/.

Source Layout

Project C++ code lives under:

Source/Andromeda/

As systems grow, prefer feature folders such as:

Source/Andromeda/
  Interaction/
  Salvage/
  Station/
  UI/

Keep the first implementation modest. Add folders when they clarify ownership.

Initial Gameplay Classes

Expected early classes:

  • IAndromedaInteractableInterface
  • UAndromedaInteractableComponent
  • AAndromedaSalvageItem
  • AAndromedaScanner
  • AAndromedaBlastDoor
  • AAndromedaStoragePackage
  • AAndromedaUtilityCart
  • UAndromedaSalvageItemData
  • UAndromedaScanResultWidget
  • UAndromedaShiftResultWidget

Not every class needs to exist immediately. Add them as the vertical slice requires them.

Maps

The first project-specific prototype map should live under:

Content/Andromeda/Maps/

Candidate map name:

L_SalvageBay_Prototype

The first map should be a salvage bay blockout, not a full station.

Blueprint Asset Names

Blueprint asset names should describe their gameplay role within Content/Andromeda.

Current core assets:

Content/Andromeda/Blueprints/Core/BP_PlayerCharacter
Content/Andromeda/Blueprints/Core/BP_PlayerController
Content/Andromeda/Blueprints/Core/BP_SalvageBayGameMode

Station fixtures live under:

Content/Andromeda/Blueprints/Station/

Use Blueprints/Tools/ for player-carried or handheld tools later. Fixed station machinery such as scanners, blast doors, terminals, tagging benches, package storage fixtures, and utility carts should live under Blueprints/Station/.

External Actors and Objects

Unreal may create Content/__ExternalActors__ and Content/__ExternalObjects__ for maps that use external actor storage. These are real map-related assets and should be committed when the corresponding map is committed.

Do not manually rename or reorganize external actor/object files outside Unreal.

Cleanup Policy

Do not delete template content aggressively before the Andromeda scaffold has replacements.

When removing template assets, use a deliberate cleanup pass:

  1. Confirm project-specific map and player flow work.
  2. Check references in Unreal.
  3. Delete through the editor when possible.
  4. Fix redirectors.
  5. Commit cleanup separately.