Files
Backyard-CTF/docs/brainstorms/2026-01-31-unity-project-setup-brainstorm.md
John Lamb b1b3e4d0b3 initial
2026-02-01 07:57:53 -06:00

3.2 KiB

Brainstorm: Unity Project Setup for Neighborhood Quarterback

Date: 2026-01-31 Status: Ready for planning Related: soul.md (game design document)

What We're Building

Minimal scaffolding for a Unity project that will become "Neighborhood Quarterback" - a 1v1 real-time capture-the-flag game. This phase establishes:

  • Unity 6 LTS project with correct settings
  • Build targets for Android, iOS, and Desktop
  • Feature-based folder organization
  • URP 2D rendering pipeline
  • New Input System configured

Explicitly out of scope: Gameplay code, networking, UI systems, assets. Just the foundation.

Why This Approach

Unity 6 LTS over older versions

  • Latest LTS with best cross-platform tooling
  • Improved mobile build times and runtime performance
  • Active support through 2028

URP 2D over Built-in or 3D

  • Soul doc describes "backyard baseball meets satellite-map clarity" - 2D aesthetic
  • URP 2D provides good lighting options for "night time" mood
  • Better mobile GPU performance than URP 3D
  • 2D Renderer optimized for sprite-based games

New Input System over Legacy

  • Unified touch/mouse handling critical for mobile + desktop
  • Action maps allow defining "select unit", "drag route" abstractly
  • Better support for complex gestures needed for squad command

Feature-based folders over type-based

  • Game has distinct systems (FogOfWar, Jail, Units, MotionLights) per soul doc
  • Keeps related code/prefabs/art together
  • Scales better as features grow

Key Decisions

Decision Choice Rationale
Unity Version 6 LTS (6000.0.x) Latest stable, best mobile support
Render Pipeline URP 2D 2D game, mobile performance, lighting
Input System New Input System Cross-platform touch/mouse
Folder Structure Feature-based Matches game's system architecture
Build Targets Android, iOS, Win/Mac/Linux Per requirements
Android Config IL2CPP, ARM64, API 24+ Modern devices, performance
iOS Config IL2CPP, ARM64, iOS 13+ Modern devices, performance

Open Questions

  1. Netcode package? - Soul doc mentions 1v1 multiplayer, but that's post-scaffolding. Decision deferred.
  2. Unity Gaming Services? - Authentication, matchmaking, analytics. Deferred to gameplay phase.
  3. CI/CD pipeline? - Out of scope for minimal setup. Add when needed.

Folder Structure

neighborhood-quarterback/
├── Assets/
│   ├── Features/           # Feature modules (empty initially)
│   │   └── _Template/      # Copy this for new features
│   ├── Shared/             # Cross-feature resources
│   │   ├── Fonts/
│   │   └── UI/
│   ├── Settings/           # Project settings
│   │   ├── URP/            # Render pipeline assets
│   │   └── Input/          # Input action assets
│   └── Scenes/
│       └── Main.unity      # Entry point
├── Packages/               # Unity package manifest
├── ProjectSettings/        # Unity project settings
└── docs/                   # Design documents
    ├── soul.md
    └── brainstorms/

Next Steps

Run /workflows:plan to generate implementation steps for creating this Unity project scaffold.