{
  "markdown": "# ProjectTwelve - Unity 2D Sandbox Prototype\n\nA Unity C# project for prototyping a Terraria-like 2D sandbox with chunked world data, procedural terrain generation, chunk-local rendering, and basic tile editing.\n\n## Requirements\n\n- Unity Editor 6.0.5.1f1 with **Universal Render Pipeline (URP) 2D**\n- JetBrains Rider 2023.3 or later, or another Unity-compatible C# editor\n\n## Setup\n\n1. Clone the repository. For full visuals (autotiles, avatars, monsters), include the private assets submodule:\n\n   ```bash\n   git clone --recurse-submodules https://github.com/synthet/project-twelve.git\n   ```\n\n   Code-only clone (no licensed art): use a normal `git clone`, then run `git submodule update --init --recursive` after you have access to [project-twelve-assets](https://github.com/synthet/project-twelve-assets).\n\n2. Open this project in Unity Editor 6.0.5.1f1.\n3. Unity will regenerate solution and project files on first open.\n4. Open the regenerated solution in Rider or your preferred editor.\n5. Open `Assets/Scene.unity` and press Play for the runnable sandbox prototype.\n\nLicensed content mounts at `Assets/_Licensed/` (git submodule). See [Paid assets policy](docs/PAID_ASSETS.md) and [Visual setup](docs/VISUAL_SETUP.md).\n\n## Running the Prototype\n\n`Assets/Scene.unity` is a self-contained vertical slice. Pressing Play spawns the\nplayer above procedurally generated terrain; chunks stream in around it and the camera\nfollows. Controls:\n\n| Input | Action |\n|-------|--------|\n| `A` / `D` or `←` / `→` | Move left / right |\n| `Space` | Jump (when grounded) |\n| Left mouse button | Break the tile under the cursor (within edit range) |\n| Right mouse button | Place a tile under the cursor (within edit range) |\n| `F5` / `F6` | Save / load the world (and sidecar overrides) to `Application.persistentDataPath` (F6 avoids Unity Profiler’s default F9 RecordToggle) |\n| `F8` | Toggle Visual Override Mode (requires `debugOverrideModeEnabled` on `SandboxWorld`) |\n| Visual Override Mode + `F5` | Same save path; sidecar `sandbox-world.visual-overrides.json` is written whenever overrides exist |\n| `F3` | Cycle autotile debug overlays (`VisualOverrideLabel` shows saved overrides) |\n\nVisual Override Mode editing (after `F8`): `Tab` layer, `[` / `]` sprite, `X`/`Y` flip, `R` rotate, `C` clear, `N` note.\n\n## Project Structure\n\n```text\nproject-twelve/                     # Git repo root and Unity -projectPath\n├── Assets/\n│   ├── _Licensed/                  # Git submodule → project-twelve-assets (private)\n│   ├── Scene.unity                 # Runnable sandbox scene (player + camera + world)\n│   ├── Materials/                  # Shared tile and player materials\n│   └── Scripts/\n│       ├── Sandbox/                # World, chunks, player, rendering\n│       ├── Visual/                 # Autotile, character, monster presentation\n│       └── Integration/            # Avatar factory, import config\n├── docs/\n│   ├── terraria-like-unity-design.md\n│   └── wiki/                       # open implementation knowledge base\n├── Packages/\n└── ProjectSettings/\n```\n\n## Design Documents\n\n- [Unity 2D Sandbox Architecture Plan](docs/terraria-like-unity-design.md) is the product-level technical design.\n- [Detailed Design Reference](docs/terraria-like-unity-design-detailed.md) is a long-form companion with extended code sketches and comparison tables.\n- [Open Knowledge Base](docs/wiki/README.md) expands the design into implementation-facing pages for contributors and automation. It holds two complementary page sets: a prototype-aligned wiki and a deeper numbered subsystem reference (see the wiki index).\n- [Architecture Blueprint](docs/wiki/architecture-blueprint.md) is a text translation of the visual blueprint canvas (10 figures), cross-linked to the wiki.\n\n## Current Barebone Scope\n\nThe project intentionally keeps only sandbox-relevant prototype assets:\n\n- Sparse, chunked world data.\n- Simple procedural terrain.\n- Chunk mesh rendering with vertex colors.\n- Chunk-local collision rebuilds.\n- A playable scene wiring the player, camera follow, and world together.\n\nThe previous hex-grid click demo and generated scene artifacts have been removed so the repository stays focused on the sandbox prototype.\n\n## Continuous Integration\n\nGitHub Actions runs docs/agent hygiene checks on pull requests. The Unity EditMode workflow\n(`.github/workflows/unit-tests.yml`) is present but **skipped** unless `UNITY_LICENSE` or\n`UNITY_SERIAL` is configured — this repo does not provision a Unity license on Actions.\nRun EditMode locally before merge (see `docs/wiki/quality-gates.md`).\n\nOptional: if you later add GameCI secrets (`UNITY_LICENSE` or `UNITY_SERIAL`, plus\n`UNITY_EMAIL` / `UNITY_PASSWORD` for serial activation), the same workflow runs the full\nEditMode suite via [game-ci/unity-test-runner](https://game.ci/docs/github/test-runner).\n\nLocal test coverage starts in `Assets/Tests/EditMode` and validates core tile, chunk, and\ncoordinate-conversion behavior.\n\n## Agent / AI workflow\n\nContributors and coding agents should start with [AGENTS.md](AGENTS.md) for build/test commands, MCP setup, and safety rules. The spec-first SDLC loop and asset map live in [docs/ai-workflow/README.md](docs/ai-workflow/README.md). Backlog work is tracked in [docs/wiki/tickets/](docs/wiki/tickets/) with linked GitHub issues.\n",
  "bytes": 5315,
  "sha": "9f5329cbdf3ada85b06a2f1dabd3b4839f1773bc76a8e336b686701fd7040105",
  "repo_slug": "synthet/project-twelve",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/okf_synthet_project_twelve_docs_project_inde_c5bb8db5/readme"
}