Charter Guide — game plan + Genre Blueprints
Plain English first. Sharp edges after.
1. What this is / is not
Charter is a notebook for your game idea that lives inside Unity. You fill pillars, core loop, vertical slice, MoSCoW features, risks, and milestones. Mechanical templates and exports always work. Brain = None is first-class. Optional assist (Unity AI, Grok / Claude / Codex CLIs, or extras) only drafts empty bits or critiques — never required, never needs a pasted key.
It is not Scribe (comment banners). It is not Atlas (code map). It is not Bedder (in-player IDE). Genre Blueprints live inside Charter — browse IR + stubs, not a third store kit. A guided Interview that fills the same Plan fields is parked / coming later (see Adam’s Interview lock); do not look for Interview UI that is not shipped yet. Fill the plan yourself in Open Plan today.
2. Open it
Everything hangs under:
ArTchie / Charter / …
| Job | Click |
|---|---|
| Edit / score / export a plan | ArTchie / Charter / Open Plan |
Create a new CharterPlan asset |
ArTchie / Charter / New Plan |
| Browse Genre Blueprint archetypes | ArTchie / Charter / Genre Blueprints |
| Blank plan from the Project menu | Create > Charter > Game Plan |
Window tabs match the last menu segment: Open Plan · New Plan · Genre Blueprints. (Create > Charter > Game Plan is the Project create menu, not ArTchie/.)
If a README still says Charter / … without the ArTchie/ prefix, the README is stale — trust the menu in Unity.
3. First five minutes
- Click
ArTchie / Charter / New Plan. - Type a title (or leave Untitled plan). Pick template One-Page GDD (or Blank if you want empty fields). Click Create.
- Charter writes
Assets/CharterPlans/<SafeTitle>.asset, selects it, and opens Open Plan with that Game Plan assigned. - In Open Plan, replace the bracketed
[prompts](or fill Blank fields):- Vision — one sentence + who plays / why they stay
- Pillars — name at least one pillar (3–5 slots)
- Core Loop — fill Verbs at minimum
- Vertical Slice — fill Brief
- Milestones — default names already count (≥1 named)
- Watch Completeness:
N / 5 · NN%. When all five required items are filled, it says Ready. Click Export Markdown to write{title}-plan.mdnext to the asset.
That is enough. Optional brain polish and Genre Blueprints come later — never required for a good first plan.
- Empty / first-run (Open Plan, no Game Plan assigned): title No Game Plan yet + Info HelpBox (New Plan / assign) + miniLabel (
ArTchie / Charter / New Plan · Open Plan, orCreate > Charter > Game Plan). New Plan wizard: tab New Plan + miniLabelArTchie / Charter / New Plan.
4. The meat
Plan sections (Open Plan foldouts)
Same fields on the CharterPlan inspector and in Open Plan:
| Section | What you fill |
|---|---|
| Vision | Title + one-liner / vision |
| Pillars | 3–5 slots (Add disabled at 5, Remove at 3). Name + “use when deciding.” Empty names still count as slots; completeness needs ≥1 named pillar. Named features mark Unknown / Supports / Violates per named pillar. |
| Core Loop | Verbs → State change → Feedback → Hook. Mermaid text under the form (Copy / Save {title}-loop.mmd). No graph library. Completeness only needs verbs. |
| Features | MoSCoW matrix (Must / Should / Could / Won't). Grouped Must → Should → Could → Won't. Copy CSV / Save CSV → {title}-moscow.csv. Unnamed rows skipped in CSV. |
| Vertical Slice | Brief, target duration, must-represent systems, polish bar, exit-criteria checklist (+ optional exit notes). Completeness only needs brief. |
| Scope | In / out notes |
| Risks | Name, Likelihood, Impact → read-only Severity, Mitigation, Owner. High+High sorts first. |
| Milestones | Ordered map. Default: Prototype → Vertical Slice → Alpha → Beta → Gold. Done checkbox, Move up/down, Reset defaults. |
Completeness (required five): Vision · Named pillar (≥1) · Loop verbs · Slice brief · Milestone (≥1). Score is empty vs filled only — not an A–F grade. Prompt text counts as filled. Optional extras (not in the percent): named feature ≥1, named risk ≥1.
Templates
In Open Plan, with a plan assigned: Templates → Blank or One-Page GDD. Confirm overwrite. Title and file path stay; sections replace. Undo works in this Editor session.
One-Page GDD is mechanical fillable [prompts] — not AI game text. Pillar names start empty on purpose so completeness still asks you to name one.
Genre Blueprints (not a third kit)
ArTchie / Charter / Genre Blueprints lists rows from package Blueprints/INDEX.md (Ready vs Thin). Select a row to open / reveal:
- IR —
Blueprints/ir/<slug>.yaml(loop contract: verbs, systems, script list) - Archetype README / research notes
- C# stubs —
Blueprints/stubs~/csharp/<slug>/ .bedderstubs —Blueprints/stubs~/bedder/<slug>/
The folder is named stubs~ (with a tilde) on purpose so Unity does not compile the templates into a buyer project. Browse / open only. No network. Do not invent gameplay in this window.
- Empty / first-run: list titles Blueprints folder missing / No archetypes yet + Warning HelpBox (Refresh / reimport) + miniLabel (
ArTchie / Charter / Genre Blueprints,stubs~tilde). Detail with no row: title Nothing selected + Info HelpBox (click an INDEX row → IR / RESEARCH / stubs~). Selected row with missing stub dirs: Warning HelpBox pointing atBlueprints/stubs~/csharp|bedder/<slug>/(tilde intentional — templates never compile).
Product copy that touches Blueprints uses loop language only (verbs, camera, resource pressure, win/fail) — never third-party game or Asset Store package names.
Soft Scribe: if com.artchie.scribe is installed, Apply Scribe banners to C# stubs re-applies locked banners via reflection. If Scribe is missing, stubs still ship with documented banner shape (Blueprints/SCRIBE-BANNER.md). Charter compiles either way.
Pipeline detail: package Blueprints/INTEGRATION.md. Naming lock: Blueprints/NAMING.md.
Optional AI
Brain picker (same idea as Scribe): None first, then Unity AI (optional), Grok / Claude / Codex CLIs, then extras (Ollama / keys). Nothing requires a pasted key.
| Button | What it does |
|---|---|
| Draft empty section | Fills only empty vision / pillar use-when-deciding / loop fields / slice brief. Never overwrites filled text. |
| Critique pillars / loop | Notes in a dialog (+ status). Never auto-applies. |
Both stay disabled when Brain = None or the brain is not ready. Score and Export Markdown still work.
CLI detect
In Open Plan: Detect paths fills Grok / Claude / Codex from common home bin folders and PATH (plus Extra PATH). Status stays grok: Found|Missing · …. If any say Missing, that is optional assist only — install that CLI, Detect again, sign in. Score and Export Markdown still work with Brain = None.
Missing optional brain (HelpBox)
- Brain = None: plain never-blocks line — Score and Export Markdown still work.
- Unity AI absent: Warning HelpBox — not in this project (
com.unity.ai.assistant); optional assist unavailable; mechanical plan authoring stays; no key needed. - CLI not found: Warning HelpBox — click Detect paths (or type the binary path), then sign in; Score and Export Markdown still work with Brain = None — no pasted key.
- Extras (Ollama / Anthropic / OpenAI-compat): optional — never required; same Brain = None reassurance. Prefer Detect CLIs over pasting a key.
Export
With a plan assigned:
- Export Markdown / Copy Markdown →
{title-or-filename}-plan.mdnext to the asset (title, vision, completeness, pillars, loop + mermaid fence, MoSCoW, slice, scope, risks, milestones). Soft-opens Folio when that kit is present; otherwise status says Open with Folio / Open. - Save MoSCoW CSV (toolbar) / Features Save CSV →
{title}-moscow.csv - Core Loop Save →
{title}-loop.mmd
Save needs the plan on disk (New Plan already wrote it). Copy still works if the asset is not saved yet.
Interview (parked)
Adam locked a future mechanical Interview (Q&A that fills the same Plan fields) plus optional AI interview and agent tool APIs. That work is parked / coming — not in the menus today. Use New Plan + Open Plan foldouts until Interview ships. Do not invent Interview UI.
5. Common stuck
- Menus say
Charter / …withoutArTchie/— stale README. Trust Unity:ArTchie / Charter / …. - Completeness stuck Not ready — name at least one pillar (empty slots do not count). Fill vision, loop verbs, slice brief. Default milestone names already count.
- It wants a key / brain Warning — Score and Export Markdown are never blocked. Set Brain = None, or Detect paths + sign in for optional Draft / Critique. Prefer logged-in CLIs over pasting a key.
- Export Markdown grey / fails — assign a Game Plan. Asset must be on disk for Save (New Plan does that). Copy Markdown still works without a path.
- Genre Blueprints stubs “missing” — look under
Blueprints/stubs~(tilde). That is intentional so templates do not compile. Click Refresh if INDEX just changed. - Apply Scribe banners disabled / missing — install
com.artchie.scribe, or leave banners as shipped. Not required to browse Blueprints. - Templates wiped my title — title and file path stay; only section fields overwrite after confirm. Use Undo in this session if you confirmed by mistake.
- Looking for Interview — not shipped yet (parked). Fill the plan manually in Open Plan.
6. For pros
Assets + paths
- Package:
com.artchie.charter· Unity 2021.3+ · asmdefCharter.Editor - Plans:
Assets/CharterPlans/<SafeTitle>.asset(collision →(2),(3), …;titlefield stays clean) - Also:
CreateAssetMenu→ Create > Charter > Game Plan - Completeness:
CharterPlanCompleteness.Evaluate/ScoreLine— five required + optional extras - Markdown:
CharterPlanMarkdown.Build· MoSCoW:CharterMoscowCsv· Mermaid:CharterCoreLoopMermaid - Settings: EditorPrefs
Charter.*(brain, CLI paths,Charter.ActivePlanGuid,Charter.LastNewPlanTemplate) — never in the package
Soft friends (no asmdef refs)
- Scribe —
GenreBlueprintScribeBridgereflectsScribe.ScribeMechanicalfor stub banners - Folio — reflection open after Markdown export when present
- Atlas is not required for Charter
versionDefines
Charter.Editor.asmdef gates Unity AI with:
com.unity.ai.assistant >= 0.1.0 → UNITY_AI_ASSISTANT
Mechanical plan authoring compiles and runs without that package. Optional assist code stays behind the define / readiness checks.
Blueprints are not a third kit
Templates, IR, emitters, and stubs~ live under this package’s Blueprints/. Genre Blueprints window = browse + soft Scribe apply. Do not invent a separate UPM SKU. Loop language only in Blueprints product copy (NAMING.md).
Canonical base
artchie-RECONCILED-20260822-2107. Topic docs: Documentation/OpenPlan.md, NewPlan.md, OnePageGdd.md, Export.md, PlanAsset.md, plus section docs (Pillars, CoreLoop, VerticalSlice, Moscow, RiskMilestones). Blueprints: INTEGRATION.md, IR-SCHEMA.md, SCRIBE-BANNER.md.
7. Related kits
| Kit | When you want it |
|---|---|
| Suite Map | Which ArTchie pile does what · Guides/Guide-Suite-Map.md |
| Scribe | Soft banners on Blueprint C# stubs · comment / document your own scripts |
| Folio | Read the exported -plan.md in the Editor |
| Bedder | In-player IDE; .bedder Blueprint stubs are shells for that world |
| Atlas | Index / search / graph (Charter does not need it) |
| Anvil / Rivet | Project health · daily Editor chores |
| ArTchie AI | Companion chat — uses Atlas when both present; never require a pasted key |
Mechanical first. Brain = None is enough. Genre Blueprints stay inside Charter.
Source in the box: Assets/ArTchie Studios/ArTchie-Suite/com.artchie.charter/Documentation/Guide-Charter.md