Appearance
Tone & Narrative Design
Source: Extracted and expanded from
master_gdd.md§8.
Status: DRAFT — character roster and last-will templates need writing.
Table of Contents
- The Vibe
- Meta-Narrative
- Character Roster
- The Last Will System
- Banter System
- Mystery Event Writing
- Tone Boundaries
- MVP Scope
- Open Questions
1. The Vibe
Comedic tragedy. The world is ending. Your units are the last weirdos standing. Permadeath is real. But the tone is someone cracking jokes during the apocalypse because what else are you going to do?
Tone Reference Points
| Work | What We Take |
|---|---|
| Disgaea | Self-aware humor. Characters comment on tropes. The UI is in on the joke. |
| Discworld (Terry Pratchett) | Absurdity grounded in character. The world is ridiculous, but the characters take it seriously. |
| Hades | Death is narrative. Every failure advances the story. Characters remember. |
| Adventure Time | Earnest weirdos in a broken world. Sincere despite absurdity. |
| Monty Python | The universe is hostile and that's funny. |
Tone Spectrum
← TRAGIC ──────────────────────────────────────── COMEDIC →
│ │
Unit dies, A goblin dies,
player feels the game asks
genuine loss "Did you really
expect him to
use cover?"
│ │
└──────── OUR ZONE ───────────────────────────┘
(mostly here, with
genuine moments)2. Meta-Narrative
The Frame
The world of Aethelgard is collapsing. Reality is fraying at the edges — time loops, spatial rifts, impossible geographies. You are the Commander, a being outside time who can send squads into the breach.
Each run is a timeline. Some succeed. Most fail. All are canon. The Commander learns from every timeline.
Between-Run Narrative
The Hub is the Commander's sanctum — a floating observatory outside time. Between runs, you can:
- View the Timeline Tapestry (run history visualization)
- Read the Book of Fallen (all permadead units, their last wills)
- Visit the Echo Market (meta-progression shop)
- Recruit new characters for the next run
Story Progression
The meta-narrative advances across runs through:
- Milestone events: First win, first permadeath, first synergy discovery, etc.
- Character arcs: Characters remember previous timelines. They comment on recurring events.
- Mysteries: The cause of the collapse is revealed slowly across many runs.
- The Commander's identity: Who are you? Why can you loop time? Revealed late in meta-progression.
Tone of Meta-Narrative
The Commander is not grim. They're exhausted but hopeful. They've watched a thousand timelines fail. They keep trying because one of them has to work. The humor comes from the Commander's dry observations and the characters' refusal to be dignified about their own deaths.
Commander's Journal, Entry #247: "Brick died again. Fell into a pit. He was warned about the pit. There was a sign. He said, and I quote, 'Signs are for people who can read.' Brick cannot read."
3. Character Roster
Starting Characters (MVP)
| Character | Key Aspect | Personality | Voice Sample |
|---|---|---|---|
| Brick | Knight | Earnest, stupid, believes in his bucket-armor | "This bucket has protected me for twelve years. It was a good bucket before I wore it." |
| Mira | Mage | Exhausted time-traveler, knows every outcome | "I've watched this battle play out 847 times. Please don't step on that trap." (Player steps on trap.) "...847." |
| Whiskers | Alchemist (Function) | Mad scientist cat, no idea what anything does | "I mixed the red one and the blue one. It's bubbling. Should I—" (Throws potion.) "Huh. That's new." |
Unlockable Characters (Post-MVP or Meta-Progression Shop)
| Character | Key Aspect | Personality | Unlock |
|---|---|---|---|
| Greta | Berserker | Retired blacksmith. Swings hammer. Mom energy. | 80 Echoes |
| Null | Shaman | A void that learned to want things. Creepy but polite. | 120 Echoes |
| Tiberius | Priest | Washed-up former high priest. Drinks. Still heals. | 100 Echoes |
| Click | Engineer | Clockwork automaton. Extremely literal. Doesn't understand jokes. | 100 Echoes |
| Lyric | Bard | Actually a terrible musician. Somehow it works. | 80 Echoes |
Character Design Principles
- Every character has a want and a flaw. Brick wants to be a hero; his flaw is terminal stupidity. Mira wants the loop to end; her flaw is apathy from seeing too many timelines.
- Every character has a relationship with at least 2 other characters (for banter).
- Characters never break the 4th wall. The game winks at the player (UI jokes, item descriptions), but the characters are sincere in their absurdity.
- No "chosen one" characters. These are misfits, not legends.
4. The Last Will System
Generation Pipeline
UNIT DIED → Gather context → Fill template → Display note → Save to Book of FallenContext Variables
| Variable | Source | Example |
|---|---|---|
{name} | Character name | Brick |
{aspect} | Key Aspect | Knight |
{death_cause} | Damage type / hazard | fall damage |
{death_location} | Tile description | a +3 ledge in the Caldera |
{killer} | If killed by enemy | a very angry Fire Elemental |
{kills} | Enemies defeated this run | 12 |
{damage_dealt} | Total damage this run | 247 |
{runs} | Times this character has been used | 7 |
{tone} | Character personality | earnest_stupid |
Templates
Brick (Knight, earnest_stupid)
"Here lies {name}. He died by {death_cause} at {death_location}. He would want you to know that this was a tactical decision and definitely not a mistake. He was a {aspect} of great... enthusiasm. His bucket will be passed to the next generation. It has been sanitized. Mostly."
"In {runs} timelines, {name} died in {runs} of them. This is not a great ratio. But he believed in every one. He killed {kills} enemies and dealt {damage_dealt} damage. That's roughly {damage_dealt/100} damage per brain cell."
Mira (Mage, exhausted)
"Mira has died in 4,912 timelines. This makes 4,913. She saw it coming at least 3 ticks before it happened. She sighed. She closed her eyes. She muttered something about 'the predictability of it all.' Then {death_cause}. She was tired. Now she gets to rest. For about 20 minutes, until you start another run."
Whiskers (Alchemist, chaos_cat)
"Whiskers has left this timeline. Cause of death: {death_cause}. Secondary cause: possibly one of the potions. Tertiary cause: definitely one of the potions. In their defense, the red one and the blue one had NEVER turned that specific shade of purple before. It was worth it. For science."
Tone Rules for Last Wills
- Always funny, never cruel
- Celebrate what the unit accomplished
- Acknowledge the absurdity of their death
- Never mock the player for losing the unit (mock the UNIT for how they died)
- Variation: 3–5 templates per character to avoid repetition across runs
5. Banter System
Triggers
| Trigger | Who Speaks | Context |
|---|---|---|
| Camp start | 2 random units in squad | Resting, reflecting |
| After ally permadeath | Surviving unit with highest relationship to deceased | Grief (comedic or sincere depending on character) |
| Synergy discovered | Both units in synergy | Celebration |
| Boss kill | Random unit | Victory quip |
| Near-death (HP < 25%) | The damaged unit | Fear, defiance, or obliviousness |
| Co-op: cross-player | 1 unit from each player | Reactions to the other player's playstyle |
Banter Content Types
| Type | Description | Example |
|---|---|---|
| Relationship | Pre-written between two specific characters | Brick and Mira: Brick asks for battle advice. Mira gives it. Brick ignores it. |
| Reactive | Responds to game state | After falling off a ledge: "I meant to do that." / "Gravity is the real enemy." |
| Observational | Comments on the environment or enemy | "Is that volcano getting closer, or...?" |
| Meta | Comments on run context | "This timeline feels better than the last one. The lighting is nicer." |
Scope
- MVP: 3–5 banters per character (30–50 lines total for 6 starting characters)
- Co-op: 5–8 cross-player banters (shared character reactions)
6. Mystery Event Writing
Structure
[PARAGRAPH OF NARRATIVE FLAVOR]
[DILEMMA PRESENTED]
[2–4 CHOICES WITH CLEAR (OR CLEARLY VAGUE) CONSEQUENCES]Event Pool Size
Mystery events are fully designed (8 events across 2 islands) but deferred to v0.3 when Mystery nodes are added to the node pool. See Roguelike Structure for node type scope.
| Island | Events Designed |
|---|---|
| 1 (Plains) | 4 |
| 2 (Caldera) | 4 |
| 3 (Spire) | 6 (v0.2+) |
| Total drafted | 14 |
Draft Events (Examples)
Event: "The Singing Stone"
A floating obelisk hums with an entrancing melody. Carved runes pulse in rhythm. Approaching it, you feel... hungry. Or inspired. Hard to tell.
- Touch the obelisk. Gain 1 random Rare Aspect. 30% chance: unit who touched it is Cursed for the next battle.
- Study the runes. Gain 50 bonus EXP for all units. Safe.
- Smash it. Gain 100 gold. 50% chance: obelisk explodes (3 damage to adjacent unit).
- Leave it. Nothing happens.
Event: "The Merchant's Offer"
A hooded figure sits at a crossroads, a collection of wares spread on a tattered cloth. "I don't take gold," they rasp. "I take memories. Specifically, embarrassing ones."
- Trade an Aspect for a random Rare Aspect. The traded aspect is lost.
- Trade 20 max HP from one unit (permanent for this run). Gain 1 Legendary Relic.
- Tell them your most embarrassing secret. Nothing happens mechanically. The merchant laughs. +1 funny line in the run summary.
7. Tone Boundaries
What We Do
- [x] Dark comedy about death and failure
- [x] Absurdist humor grounded in character
- [x] Self-aware UI (tooltip jokes, loading screen tips)
- [x] Earnest moments between jokes (the ratio is ~70% funny, 30% sincere)
- [x] Death treated seriously — but mourned comedically
What We DON'T Do
- [x] No mean-spirited humor (punching down)
- [x] No 4th wall breaks by characters (the Commander and UI are outside the 4th wall; characters are inside)
- [x] No references to real-world politics or current events
- [x] No sexual humor
- [x] No grimdark despair (the world is dying, but the tone is "let's make the best of it")
- [x] No mocking the player for their choices (mock the characters for theirs)
8. MVP Scope
Included
- [x] Meta-narrative frame (Commander + time loop)
- [x] 3 starting characters (Brick, Mira, Whiskers) with full voice
- [x] Last Will system (3 templates per character = 9 templates)
- [x] Camp banter (5 lines per character pair = ~15 banters)
- [x] Hub screen: Timeline Tapestry (run history), Book of Fallen, Echo Market
- [x] Mystery events: deferred to v0.3. Content drafted but not in MVP node pool.
Deferred to Post-MVP
- [ ] Unlockable characters (Greta, Null, Tiberius, Click, Lyric)
- [ ] Full character arcs (across-run narrative progress)
- [ ] The Commander's identity reveal
- [ ] Mystery events (8 drafted, ship with v0.3 when Mystery nodes are added)
- [ ] Co-op cross-player banter
- [ ] Voice acting (any amount)
9. Open Questions
- Writing tone calibration: "Comedic tragedy" is a narrow target. Should we audience-test last will templates to see if they land? (Recommend: test with 5 people. If 4 laugh, it works.)
- Character death frequency: If Brick dies in every run, the Brick last-will templates will repeat quickly. Do we need more templates (5–7 per character) or is repetition acceptable at 3 templates?
- Mystery event replayability: 8 events for 2 islands. A player doing 10 runs will see each event 1–2 times. Is this enough variety, or do events need randomization within templates?
- The Commander's voice: Is the Commander a defined character with dialogue, or a silent protagonist? (Recommend: the Commander has a dry, written voice in the Journal and UI, but no dialogue. They're the narrator, not a unit.)
- Cultural humor: Disgaea references and Discworld humor work for a Western audience that overlaps with anime fans. Is our target audience that specific intersection, or broader? Affects how many references we use.
- Narrative integration with permadeath: Hades makes death narrative. We make death funny. Does this undermine the stakes? If permadeath is a joke, is it still permadeath? (Recommend: the Last Will is funny, but the loss of the unit and their aspects IS serious gameplay. The humor softens the blow; it doesn't remove it.)
Next: Meta-Progression