# Consolidation Example — Pirate Campaign Vault Reorganization

This reference captures the exact reorganization performed on the Pirate Campaign vault when the user asked to "rebuild it, combine similar files, keep it simple, understand it in a breeze, maybe also have an extensive explanation lower on the page."

## The Problem

The vault had grown to ~85 files across 13 folders. Many folders had only 4-10 files. The root `_Index.md` was a bare link list that didn't tell you which file to open for what job. There were also conflicting canonical sources (`Ideas.md` vs `World-Ideas.md`) and running-the-game rules scattered across `Systems/` and standalone files.

## The Solution

### New umbrella documents at the root

| New File | What It Holds | Old Files Merged In |
|----------|---------------|---------------------|
| `Campaign Core.md` | Pitch, themes, arcs, naval combat, firearms, notoriety, rivals, session checklist | `Ideas.md` + `Black-Flag-Inspirations.md` + `Systems/Naval Combat Quick Rules.md` + `Systems/Ship Upgrade Ideas.md` + `Systems/Firearms-&-Powder-Rules.md` |
| `Worldbuilding.md` | Player primer, Black Reach myth, locations, factions, monsters, adventure hooks | `World-Ideas.md` + `Worldbuilding/Player's Primer.md` + `Worldbuilding/The Black Reach.md` + `Locations/*.md` (4 files) + `Factions/*.md` (4 files) + `Monsters/*.md` (9 files) + `Adventures/_Index.md` |
| `Items & Spells.md` | Magic items with Convergence twists, spell variants with risk tables | `Items/*.md` (6 files) + `Spells/*.md` (5 files) |
| `Crew & Voyage.md` | Morale, daily events, ship log template, port/island generators, situation tables | `Systems/Crew-and-Morale.md` + `Systems/Crew-Roster.md` + `Systems/Daily-Ship-Log.md` + `Systems/Daily-Event-Roller.md` + `Systems/Port-Island-Generator.md` |
| `Ships.md` | Ship tier summaries + links to living current-ship file, tier stat blocks, and HTML tools | New linking hub; did not merge stat blocks because ASCII grids are too bulky |

### What stayed in subfolders

| Folder | What Lives There | Why It Stayed |
|--------|------------------|---------------|
| `Adventures/` | Full session plans (`Session 1`, `The Sargasso Job`, etc.) | Too long to merge; summaries are in `Worldbuilding.md` |
| `Ships/` | `Current-Ship.md`, tier stat blocks with ASCII grids, 5 HTML tools | ASCII grids and HTML are bulky; linked from `Ships.md` |
| `Templates/` | Blank templates for all note types | Reusable boilerplate, not content |
| `NPCs/` | Empty (fills as campaign progresses) | Living folder for named characters |
| `_Retired/` | Created for archiving old merged files later | Optional; user can clean up old files when ready |

### The new `_Index.md` structure

**Top half (breeze-read):**
1. Tagline + "At a Glance" table (rows = reader role, columns = which file to open)
2. "Quick Links -- By Job" tables: Running Combat, Generating Content, Factions & Politics, Session Planning
3. Campaign arcs (1-4 sentences each)

**Bottom half (deep-dive):**
1. Philosophy / design note
2. File-by-file breakdown: what each umbrella doc contains, when to use it, what it replaced
3. Merge-mapping table (old files -> new locations)
4. "What Stays in Subfolders" table
5. "How to Add Something New" checklist

## Key lessons

1. **Merge content, not just links.** The umbrella docs should contain the actual text so readers don't have to click through 10 files.
2. **Summarize long files in the umbrella, keep originals in subfolders.** Adventure session plans and ASCII ship grids are too long to inline; put summaries in the umbrella and link to the full version.
3. **Label canonical vs legacy files explicitly.** When two files conflict (e.g., `Ideas.md` and `World-Ideas.md`), declare which one is canonical and which is "legacy reference -- check here only if something seems missing."
4. **The `_Index.md` is the product.** Spend the most time on it. The umbrella docs are the raw material; the index is the navigation layer that makes it usable.
5. **Sync after all writes.** If the vault is cloud-backed, run the sync script once at the end after all files are written, not after each file.
