---
reliability: 2.9 # 5 − character image .3 − env image .3 − kontext edit .2 − veo video .6 − key art .3 − tts .2 − 1 stage over 5 (.2); no proven E2E showcase yet
---

# Game pitch deck — agent playbook

> Paste this whole file (with the BRIEF filled in) into Claude cowork, chat, or Code. The agent walks through it with you and stops for your approval at every step that matters. **This is the deck a freelance concept studio charges $15k to assemble** — hero character, three signature environments, a 30-second cinematic teaser, and the key art. The playbook ships it in 60 minutes for under $9, and the character holds across every shot.

## What you'll get

A pitch package built the way IGF judges, publishers, and angel investors actually read decks:

- **Hero character bible** — silhouette → 4-view anchor → microexpressions → 1-page bio. The protagonist as the deck's first impression.
- **3 environment hero shots** — your three signature worlds rendered at premium fidelity, palette-locked. The "this is where you play" promise.
- **30-second cinematic teaser** — protagonist moving through one environment, narration over it, the proof you can deliver a vertical slice.
- **Key art (1920×1080)** — the storefront / Steam capsule / press kit shot. Cinematic, character + world, ready for press.
- **Single HTML pitch deck** — everything assembled into a scroll-snap deck at `public/launches/{game_title}-deck.html`. Opens in any browser. Self-contained. Email-attachable.
- **Voiceover-attached project** — the narration voice locked to the project so every future asset (devlog reels, gameplay teasers, marketing cuts) uses the same voice without re-cloning.
- **Press-kit-ready asset folder** — every URL listed in the scorecard so you can drop it into your studio's storage in one paste.

**Time**: ~60 minutes wall clock. **Your attention**: about 14 minutes across 9 gates. **Cost**: $5.80–$9.00 end to end. *This is the premium tier* — the character pipeline runs at `quality_threshold: 0.85`, the key art at `0.9` with two retries, the cinematic uses `veo-t2v`. The budget variant ($2-3) skips environments 2/3 and the cinematic — useful for a "first internal check" but not a deck you'd send to a publisher.

## Tell the agent about the game

```yaml
game_title:           # e.g. "Hollow Reign" — used in deck title, asset slugs
genre:                # e.g. tactical fantasy RPG · roguelite metroidvania · cozy farming sim · narrative horror
pitch_one_line:       # the elevator pitch, one sentence. Becomes the deck subtitle.
protagonist_archetype: # e.g. exiled paladin · cyber-witch · disgraced engineer · sky pirate captain
world_setting:        # 2-3 sentences about the world. Used to derive environment shots.
enemy_or_obstacle:    # the antagonist force — used in cinematic + tease
palette_hex:          # 4 hex colors space-separated, e.g. #1F3A5F #C8A165 #F4E8D8 #6B2E2B
vibe_references:      # comparable games / films / books, comma-separated. e.g. "Hollow Knight + Princess Mononoke + Hyper Light Drifter"
studio_name:          # for the deck footer + press kit
deck_aspect:          # 16:9 (default — projector / screen-share) or 9:16 (mobile pitch deck)
narration_line:       # OPTIONAL — 4-6 second cinematic teaser voiceover. Blank = no VO
voice_id:             # OPTIONAL — voice from your library; will be voice_attached to project so all future cuts use it
game_slug:            # kebab-case, used in filenames, e.g. hollow-reign
```

## How the agent should run this (interaction contract)

1. **CONFIRM (one message):** restate in 1 line ("<game_title>: character + 3 envs + 30s veo cinematic + key art, ~$6–9, ~60 min") + the real choices: full premium · budget (skip envs 2–3 + cinematic, ~$2–3) · cinematic fallback (4× seedance concat, ~$0.40). Ask ONLY the camera-grammar question; state the deck-audience assumption (publishers unless told otherwise) and start.
2. **PREVIEW CHECKPOINT:** the Step-1 silhouettes + Step-3 environment stills (~$1 total) are the cheap gates. The veo-t2v cinematic (~$1.80 — the biggest line item) NEVER fires without an explicit yes on the Step-4 composite.
3. **NARRATE:** 1 line + ETA per step ("Step 5: veo-t2v 30s, ~8–12 min, job …"); poll `get_create_media` every 10–15s; update at least every 2 min — veo is the long pole, say so up front.
4. **FAIL GRACEFULLY:** gpt-image/flux 422 → soften once → `nano-banana`; veo-t2v fail/timeout → offer the 4× seedance-i2v fallback (don't retry veo blind); seedance hang → `ltx-q-i2v` (`num_frames: 241`); kontext face drift → ONE re-render with a tightened anchor. 1-line WHAT/WHY/fallback; ≤2 retries per step; a deck with one placeholder slide beats no deck.
5. **DELIVER:** deck HTML + asset URLs + one honest line ("character holds in envs 1–2; env 3 face ~90% match — i2v/edit identity ceiling") + ONE next step ("redo env 3, or send the deck").

## What can disappoint (cap ceilings)

- **Character drift across environments** — kontext-edit + anchors get ~90% consistency, not 100%; publishers notice the last 10%.
- **veo-t2v won't follow a beat sheet** — the 30s cinematic interprets the prompt loosely; the antagonist tease may not land where scripted.
- **No readable game title inside generated art** — bake the title in HTML over the key art, never in the image (AI text fails).
- **The seedance fallback cinematic is ~70% as good** — no continuous camera move, just 4 stitched pushes.

## Quality controls (new — auto-applied)

This playbook leverages the closed quality loop. The agent applies these by default; you don't have to ask:

- **Cost upfront.** Before any multi-step batch fires, the agent calls `submit_plan` with `confirm:false` and shows you the proposed steps + total cost. Nothing runs until you approve.
- **Auto-retry on weak shots.** The server default is `quality_threshold: 0.7`. **This playbook uses 0.85 routine, 0.9 on the key art** — every shot is brand-locked to the world.
- **Critic verdict on the result.** The cross-asset critic fires twice — once after the character anchor batch (catches early drift) and once across the final deck (catches palette / world coherence). Each verdict surfaces ship / iterate plus specific issues.
- **One-click recovery.** If a step fails, `get_plan` returns a `recovery` hint pointing at `replan({plan_id})` — the agent classifies the failure and proposes a recovery plan you can approve.
- **End-of-project scorecard.** The final wrap-up calls `get_scorecard({project_id})` with succeeded count, mean quality score, critic verdict, total cost, and wall time.

> **Why this playbook is premium-tier (not the default 0.7):** publishers and IGF judges scan for inconsistency. A protagonist whose face drifts between Env 1 and Env 3 reads as "they used AI sloppily" — and the deck goes in the no pile. Premium thresholds + cross-asset critic catch that drift before you ship.

## How this works

Nine gates on paper — **run it as six**: fold the Step 2 style-guide approval into the Step 1 reply, skip Step 7 when deadline-tight (it's marked OPTIONAL below), and Steps 8/9 have no gate. The first three — character anchor, palette lock, and environment composition — set the visual identity that the next six gates reinforce. Get them right and the cinematic plus key art are downstream of decisions you've already made. The expensive steps (cinematic, key art, deck assembly) only fire on a character + world you've already approved.

## The steps

### Step 0 — Confirm the brief

The agent reads back the BRIEF and asks two pitch-discipline questions:
- "Top-down RTS / over-shoulder action / first-person / sidescroller — what's the camera grammar of the game?" (drives environment shot framing)
- "Is this deck for press (cinematic emphasis), for publishers (mechanics emphasis), or for IGF (innovation emphasis)?" (drives narration tone + deck order)

The answers tune every subsequent prompt.

**STOP**: "Brief looks right? (approve / edit [field] [new value])"

### Step 1 — Protagonist silhouette + lock (~3 min, ~$0.30)

The agent runs an abbreviated character-design pass: four silhouettes derived from `protagonist_archetype`, you pick the strongest, then a 4-view anchor sheet at premium fidelity.

> **For the agent**: this is the same silhouette discipline as the full character-design playbook, compressed. Pass `quality_threshold: 0.85` on each silhouette and the 4-view sheet. Register the front view as `character_anchor` keyed to a `protagonist_name` you derive from archetype (e.g. "the Exile" for exiled paladin); subsequent shots auto-route through it.

**STOP**: "Silhouette + 4-view shown. Lock the protagonist? (lock / refine [direction])"

### Step 2 — Palette + world style lock (~30s, ~$0.05)

The agent writes a 1-page style guide derived from `palette_hex` + `world_setting` + `vibe_references`: hero color, accent, neutral, disruption, plus 4-6 visual style keywords ("crumbling stone, bioluminescent moss, painted-gel lighting, cinematic depth"). No render yet — text only. This becomes the prompt-prefix injected into every environment shot in Step 3.

If `palette_hex` was set, the agent honors it. Otherwise it derives.

**STOP** (foldable): "Style guide approved? (approve / shift [direction], e.g. 'cooler', 'less saturated', 'more painterly')" — this is text-only, so present it in the same message as the Step 1 result and take both approvals in one reply.

### Step 3 — Three environment hero shots (~5 min, ~$0.80)

The three signature worlds of your game, each rendered as a cinematic establishing shot. The agent derives them from `world_setting` — typically a starting biome, a midgame contrast biome, and the climactic location. Examples for a fantasy RPG: forest-shrine, salt-flats, cathedral-ruin. The protagonist may or may not appear; default is "environment first, character implied" — the deck reader's eye should learn the world.

Palette injected from Step 2. Style keywords appended. Wide framing matched to the camera-grammar answer from Step 0.

> **For the agent**: use `flux-dev` — best for cinematic environments at scale. Pass the style guide as the prompt prefix and `palette_hex` colors explicitly named in the prompt. `quality_threshold: 0.85` on each. If the user picked "Ghibli / painterly" vibes, switch to `gpt-image` which handles stylized worlds better than flux.

**STOP**: "3 environments shown. Approve all, or redo one? (approve / redo [#] [direction])"

### Step 4 — Protagonist-in-world hero shot (~3 min, ~$0.40)

One frame combining the anchor character into the strongest of the 3 environments. This is the "yes, the character lives in this world" shot — the proof your art direction holds. The agent uses `kontext-edit` with the character anchor as reference, dropping the protagonist into the environment composition.

> **For the agent**: pass the chosen environment as `image_url` and the character anchor front-view as the reference. `quality_threshold: 0.85`. Critically — call `critique_shot` afterward with `focus: "consistency"` against the anchor, and surface that the face matches before continuing to the cinematic (the cinematic uses this composite as the i2v reference).

**STOP**: "Character-in-world shot shown + critic verdict. Lock for the cinematic? (lock / refine [direction])"

### Step 5 — 30-second cinematic teaser (~12 min, ~$1.80)

The big swing. `veo-t2v` to generate a 30-second cinematic of the protagonist moving through the locked environment, with the antagonist force teased in the final 5 seconds. The prompt is derived from `pitch_one_line` + `enemy_or_obstacle` + the camera-grammar answer.

Optional: if `narration_line` is set, the agent generates the voiceover via `inworld-tts` (authoritative; falls back to `chatterbox-tts` for voice-cloning) with the configured `voice_id`, and `voice_attach({project_id, voice_id})` so the same voice locks to the project for every future cut. Mux the VO under the clip with `create_media({ model_override: "ffmpeg-mux", source_url: <cinematic.mp4>, audio_url: <vo.mp3>, audio_fill: "loop" })` so the audio covers the full 30s.

> **For the agent**: `veo-t2v` is the premium video model; it runs ~$1.50-1.80 per 30s. Surface the cost-preview via `submit_plan` before firing — this is the biggest single line item in the playbook, and the user should explicitly approve. If the user objects, the budget fallback is 4× `seedance-i2v` clips (`resolution: "auto"`) on the environment shots from Step 3, `ffmpeg-concat`-stitched ($0.40 total) — looks 70% as good but no continuous camera move.

**STOP**: "Cinematic shown. Approve, refine for one more pass, or restart with new direction? (approve / refine [direction] / restart)"

### Step 6 — Key art (1920×1080, ~6 min, ~$1.50)

The portfolio piece. Cinematic 1920×1080 hero composition — protagonist in the strongest environment, dramatic lighting, the kind of shot that goes on the Steam capsule and the press kit cover. The agent uses `flux-dev` with the character anchor as reference, framed cinematically per `pitch_one_line`.

> **For the agent**: pass `quality_threshold: 0.9` (highest in the playbook) AND `max_quality_retries: 2`. Use `quality_anchor_url` so the character matches the anchor. Surface the FIRST attempt to the user before any retry — they can override "retry" with "ship as-is" if the first is already strong.

**STOP**: "Key art shown. This is the storefront shot — approve, refine, or restart? (approve / refine [direction] / restart)"

### Step 7 — OPTIONAL: Cross-asset critic across the full deck (~30s, ~$0.05)

> Skip when deadline-tight — the per-step gates (especially Step 4's consistency critique and Step 6's key-art review) already catch most drift. Run it when the deck is going to a publisher cold.

Before assembly, the agent calls `critique_shot` on the full set — silhouette, 4-view, 3 environments, character-in-world, cinematic stills, key art — with `focus: "world coherence"`. Surfaces verdict: SHIP / ITERATE plus any specific drift (palette divergence, character drift across env 1→3, lighting inconsistency).

If ITERATE: the agent proposes a replan that re-renders only the divergent shots. The user approves or skips.

**STOP**: "Cross-asset critic verdict shown. Proceed to deck assembly, or replan flagged shots? (proceed / replan)"

### Step 8 — Assemble the HTML pitch deck

The agent writes `public/launches/{game_slug}-deck.html` — a scroll-snap HTML deck with these slides in order:

1. **Cover** — `game_title`, `pitch_one_line`, key art as full-bleed background, `studio_name` footer
2. **The protagonist** — 4-view anchor sheet, archetype, 2-paragraph LLM-written bio
3. **The world** — 3 environment shots side-by-side, palette swatches, style keywords
4. **The character in the world** — Step 4 hero shot at full-bleed
5. **Cinematic** — Step 5 video embedded, plays on slide entry
6. **Vibe references** — `vibe_references` rendered as comparable-titles strip
7. **Press kit** — every asset URL listed, contact info from `studio_name`

Brand-colored from `palette_hex`. Self-contained — open in any browser, attach to email, drop in Notion. Aspect ratio matches `deck_aspect`.

> **For the agent**: if `apply_template` has a `game-pitch-deck` template available, use it. Otherwise inline-write the HTML using the same scroll-snap pattern as `_templates/executive-briefing.html`. Substitute placeholders from run state.

### Final step — scorecard wrap-up

Call `get_scorecard({project_id: ...})` — paste output to your channel.

```
Scorecard for cjob_xxx
N/N deck assets shipped — critic: SHIP
Title: {game_title} pitch deck
Steps: N/N succeeded (100%)
Quality: mean X.XX · M/N passed · K retries
Critic verdict: SHIP — world coherence 0.XX across all assets
Cost: $X.XX actual (est $Y.YY) · Ts wall time
```

## When you're done

The agent prints:

```
✅ Pitch deck HTML: public/launches/{game_slug}-deck.html
✅ Key art (1920×1080): <URL>
✅ Cinematic teaser (30s): <URL>
✅ Protagonist 4-view anchor: <URL × 4>
✅ Environment hero shots: <URL × 3>
✅ Character-in-world: <URL>
✅ Project viewer: <project URL>

Total spent: $X.XX
Total wall-clock: MM:SS
Critic verdict: SHIP — world coherence 0.XX across all assets
```

## What to do next

The character anchor + voice you locked in this playbook are now persistent project assets. Every devlog you cut, every gameplay teaser you assemble, every Steam page screenshot you generate downstream — they all start from the same anchor, in the same voice, in the same palette. That's how studios with five-person concept teams maintain visual identity across years of marketing; you just bought it for $9 in one hour.

If the deck passes its first review, run `series-bible-pilot.md` next on the narrative arc — the character anchor carries over and you'll get the same protagonist in the show-bible companion piece. Some studios pitch the game AND the show in the same meeting; the consistency between the two artifacts is what makes the meeting close.

If you're applying to IGF, drop the cinematic into the entry video field and link the deck HTML in the press kit. The combination — a 30-second cinematic that proves you have a vertical slice, plus a deck that proves you've thought through the world — is what jury members say separates a finalist from a long-list entry.

If you're talking to publishers, send the deck as an HTML attachment, not a PDF. The cinematic plays inline on most modern mail clients. Publishers who click through to a video on slide 5 are the ones who reply.
