Preset ID
game-narrative-writing
Preset Name
Game Narrative Writing
Version
1.1.0
Description
Preset for game narrative design and interactive storytelling.
It adapts the Spec-Driven Development workflow for game narratives: features become story mechanics, specs become narrative briefs, plans become story maps, and tasks become dialogue and scene-writing tasks. Supports branching narratives, player agency systems, state machines, and interactive dialogue trees.
V1.1.0: improve workflow, illustration, postprocessing
Author
Andreas Daumann
Repository URL
https://github.com/adaumann/speckit-preset-game-narrative-writing
Download URL
https://github.com/adaumann/speckit-preset-game-narrative-writing/releases/download/v1.1.0/v1.1.0-import.zip
License
MIT
Required Spec Kit Version
= 0.5.0
Required Extensions (optional)
No response
Templates Provided
Core Workflow (6)
| Template |
Lines |
Purpose |
constitution-template.md |
433 |
Game narrative bible |
spec-template.md |
341 |
Story brief |
plan-template.md |
254 |
Node graph + act structure |
implement-template.md |
101 |
Node draft file |
node-outline-template.md |
205 |
Node outline with status gate |
tasks-template.md |
142 |
Authoring task list |
Narrative & Structure (7)
| Template |
Lines |
Purpose |
narrative-design-doc-template.md |
230 |
Free-form story pitch |
flowmap-template.md |
254 |
Mermaid node graph |
endings-template.md |
135 |
Ending registry |
series-bible-template.md |
211 |
Series continuity |
themes-template.md |
138 |
Thematic contract |
timeline-template.md |
102 |
Fabula/syuzhet chronology |
research-template.md |
58 |
Knowledge gap log |
Mechanics & State (3)
| Template |
Lines |
Purpose |
variables-template.md |
170 |
Variable registry |
mechanics-template.md |
166 |
Hook schemas with translations |
puzzles-template.md |
66 |
Puzzle dependency tracking |
Characters & World (7)
| Template |
Lines |
Purpose |
character-profile-template.md |
137 |
Player character widget |
characters-template.md |
316 |
NPC profiles |
world-building-template.md |
131 |
Locations, rules, factions |
relationships-template.md |
116 |
NPC relationship arcs |
glossary-template.md |
151 |
Terminology registry |
agent-file-template.md |
106 |
Living context file |
craft-rules-template.md |
211 |
Writing style guide |
Quality & Feedback (2)
| Template |
Lines |
Purpose |
checklist-template.md |
111 |
Per-node quality gates |
feedback-template.md |
134 |
Playtest feedback log |
Engine & Presentation (12)
| Template |
Lines |
Purpose |
quest-widgets-guide.md |
489 |
Quest UI guide |
node-start-twee-template.twee |
51 |
SugarCube starter passage |
sugarcube-boilerplate.twee |
40 |
Compilation boilerplate |
sugarcube-theme-dark.css |
513 |
Dark CSS theme |
sugarcube-theme-light.css |
505 |
Light CSS theme |
sugarcube-theme-minimal.css |
455 |
Minimal CSS theme |
ink-theme-dark.html |
160 |
Ink dark wrapper |
ink-theme-light.html |
162 |
Ink light wrapper |
ink-theme-minimal.html |
114 |
Ink minimal wrapper |
fix_theme.py |
60 |
Example postprocess: CSS injection |
add_headers.py |
37 |
Example postprocess: header/footer widgets |
add_animations.py |
47 |
Example postprocess: CSS animations |
Commands Provided
Phase 0–1 — Setup & Planning
| Command |
Lines |
Purpose |
speckit.specify |
131 |
Create narrative design doc from a game idea: premise, player arc, dramatic question, branch overview, endings |
speckit.clarify |
176 |
Detect/resolve narrative ambiguity: branching gaps, undeclared vars, unreachable endings, NPC contradictions |
speckit.constitution |
261 |
Generate game bible from approved design doc: engine target, mechanics, POV, craft rules, content policy |
speckit.brainstorm |
818 |
Interactive brainstorming for story, characters, mechanics, endings, world, variables, series, glossary |
speckit.research |
604 |
Research tracking: log gaps, record findings, scan drafted nodes for unsupported claims, risk-ranked open items |
speckit.series |
580 |
Series bible management: carry-over var validation, ending canon consistency, import questionnaire |
Phase 2 — Pre-Draft Setup
| Command |
Lines |
Purpose |
speckit.plan |
184 |
Generate plan + supporting docs (variables, mechanics, endings, characters, world, glossary, themes, etc.) |
speckit.tasks |
363 |
Generate authoring tasks ordered by act/branch with quality gates |
speckit.flowmap |
68 |
Visualize branch graph as Mermaid flowchart with mechanic annotations and ending markers |
speckit.mechanics |
296 |
Manage hook schemas: declare Tier 2 stubs, promote to Tier 1, audit usage across node files |
speckit.quest-system |
306 |
Optional quest system: location-based worlds, multi-stage objectives, SugarCube widgets (opt-in via constitution) |
speckit.analyze |
268 |
Pre-draft structural check: branch coverage, dead ends, unreachable nodes, undeclared vars, ending reachability |
Phase 3 — Active Drafting
| Command |
Lines |
Purpose |
speckit.outline |
334 |
Generate node outlines: beat summary, choices, hooks, variables. Status gate controls drafting |
speckit.implement |
952 |
Draft node prose from APPROVED outlines, insert mechanic hooks, generate engine-native Twee/Ink files |
speckit.verify |
166 |
Structural tests, per-node quality checklist, engine compiler validation, self-correction loop |
speckit.continuity |
159 |
Variable state consistency across branches, state transition mapping, dead-end combo detection |
speckit.status |
330 |
Project dashboard: node counts, branch coverage %, variable completeness, quality gate status |
Phase 4 — Quality Review
| Command |
Lines |
Purpose |
speckit.revise |
384 |
Targeted node revision: rewrites failing passages or broken hook blocks, produces versioned files |
speckit.polish |
202 |
Final line-edit: prose rhythm, sentence variety, word repetition, filter words, adverb density, voice register |
speckit.readability |
171 |
Narrative flow: pacing (word count, beat spacing) + tone (emotional trajectory, whiplash detection) |
speckit.branching |
181 |
Branch analysis: complexity metrics, choice consequence mapping, player agency validation |
speckit.information |
169 |
Info flow: dialogue trees, player/NPC knowledge gaps, secret/hidden content tracking |
speckit.narrative-arc |
180 |
Arc auditor: character development, subplot resolution, ending quality |
speckit.foreshadow |
431 |
Foreshadowing & payoff tracker: clue placement, mystery fairness, orphaned/premature payoff detection |
speckit.replayability |
492 |
Replayability metrics: unique content per playthrough, branch coverage, hidden content, dialogue variation |
speckit.accessibility |
478 |
Accessibility: reading level, content warnings, UI contrast, ableist language detection |
Phase 5 — Export & Compilation
| Command |
Lines |
Purpose |
speckit.export |
289 |
Export nodes to complete engine boilerplate (init, widgets, UI, styling) |
speckit.compile |
468 |
Compile to playable output (HTML/JSON), includes structural validation, retry logic, runtime testing, optional full walkthrough |
speckit.theme |
339 |
Generate/adjust story.css: copy base theme (dark/light/minimal) with colour/font/layout overrides |
speckit.illustrate |
369 |
Generate AI illustration prompts for scenes from outlines, characters, and world-building |
speckit.background |
362 |
Generate AI background prompts for environments from locations and world-building |
speckit.postprocessing |
496 |
Generate Python postprocessing scripts from natural language descriptions |
speckit.feedback |
160 |
Ingest playtest notes, categorize by issue type, map to nodes, generate revision tasks |
speckit.help |
521 |
Workflow advisor: scans project state, detects phase, gives prioritized recommendations |
Number of Scripts (optional)
5
Tags
interactive fiction, game narrative, branching, twine, ink
Key Features
Spec-Driven Development for interactive game-narrative pre-production in video games or standalone interactive fiction games. Authors generate in a portable generic format, Twine/Sugarcube (.twee) or Ink (.ink). Covers choice-IF, visual novels, and branching dialogue. Supports Tier 1 mechanic hooks (flag, counter, inventory, timer, trust, currency, npc_state, ending_condition), multi-ending design, series carry-over variable registry, and NPC-focused character architecture. Includes illustration and postprocessing commands.
Testing Checklist
Submission Requirements
Preset ID
game-narrative-writing
Preset Name
Game Narrative Writing
Version
1.1.0
Description
Preset for game narrative design and interactive storytelling.
It adapts the Spec-Driven Development workflow for game narratives: features become story mechanics, specs become narrative briefs, plans become story maps, and tasks become dialogue and scene-writing tasks. Supports branching narratives, player agency systems, state machines, and interactive dialogue trees.
V1.1.0: improve workflow, illustration, postprocessing
Author
Andreas Daumann
Repository URL
https://github.com/adaumann/speckit-preset-game-narrative-writing
Download URL
https://github.com/adaumann/speckit-preset-game-narrative-writing/releases/download/v1.1.0/v1.1.0-import.zip
License
MIT
Required Spec Kit Version
Required Extensions (optional)
No response
Templates Provided
Core Workflow (6)
constitution-template.mdspec-template.mdplan-template.mdimplement-template.mdnode-outline-template.mdtasks-template.mdNarrative & Structure (7)
narrative-design-doc-template.mdflowmap-template.mdendings-template.mdseries-bible-template.mdthemes-template.mdtimeline-template.mdresearch-template.mdMechanics & State (3)
variables-template.mdmechanics-template.mdpuzzles-template.mdCharacters & World (7)
character-profile-template.mdcharacters-template.mdworld-building-template.mdrelationships-template.mdglossary-template.mdagent-file-template.mdcraft-rules-template.mdQuality & Feedback (2)
checklist-template.mdfeedback-template.mdEngine & Presentation (12)
quest-widgets-guide.mdnode-start-twee-template.tweesugarcube-boilerplate.tweesugarcube-theme-dark.csssugarcube-theme-light.csssugarcube-theme-minimal.cssink-theme-dark.htmlink-theme-light.htmlink-theme-minimal.htmlfix_theme.pyadd_headers.pyadd_animations.pyCommands Provided
Phase 0–1 — Setup & Planning
speckit.specifyspeckit.clarifyspeckit.constitutionspeckit.brainstormspeckit.researchspeckit.seriesPhase 2 — Pre-Draft Setup
speckit.planspeckit.tasksspeckit.flowmapspeckit.mechanicsspeckit.quest-systemspeckit.analyzePhase 3 — Active Drafting
speckit.outlinespeckit.implementspeckit.verifyspeckit.continuityspeckit.statusPhase 4 — Quality Review
speckit.revisespeckit.polishspeckit.readabilityspeckit.branchingspeckit.informationspeckit.narrative-arcspeckit.foreshadowspeckit.replayabilityspeckit.accessibilityPhase 5 — Export & Compilation
speckit.exportspeckit.compilespeckit.themespeckit.illustratespeckit.backgroundspeckit.postprocessingspeckit.feedbackspeckit.helpNumber of Scripts (optional)
5
Tags
interactive fiction, game narrative, branching, twine, ink
Key Features
Spec-Driven Development for interactive game-narrative pre-production in video games or standalone interactive fiction games. Authors generate in a portable generic format, Twine/Sugarcube (.twee) or Ink (.ink). Covers choice-IF, visual novels, and branching dialogue. Supports Tier 1 mechanic hooks (flag, counter, inventory, timer, trust, currency, npc_state, ending_condition), multi-ending design, series carry-over variable registry, and NPC-focused character architecture. Includes illustration and postprocessing commands.
Testing Checklist
specify preset addSubmission Requirements
preset.ymlmanifest included