Agent skill · Data & Analytics

dialogue-systems

Build branching dialogue and narrative — a node/choice graph with conditions, variables, and localization hooks — and choose between authoring tools Ink and Yarn Spinner or a custom data-driven runner. Engine-neutral. Use when the user mentions dialogue system, branching dialogue, conversation tree, choices, Ink (.ink), Yarn Spinner (.yarn), or NPC dialogue.

gamedev-skillsgithub.com/gamedev-skillsGitHub ↗
claude-codeclinecodexcursorcopilotwindsurfApache-2.0
Install
npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill dialogue-systems --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 3
SKILL.md size: 7 KB
Bundled scripts: none
Requires: Engine-agnostic. Ink (inkle) and Yarn Spinner 2.x syntax; runner snippets in GDScript-like / Python pseudocode.
Path: skills/disciplines/dialogue-systems/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 406
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# Dialogue systems Model conversations as a **graph**: nodes hold lines, choices branch the flow, conditions gate options, and variables remember what the player did. The first real decision is *build vs. buy* — adopt a proven authoring tool (**Ink** or **Yarn Spinner**) or write a small data-driven runner. This skill owns both Ink and Yarn; the `visual-novel` and `rpg` genres consume it. ## When to use - Use to design branching conversations, choice menus, or narrative state (flags, relationship values) that affect later dialogue. - Use to decide between Ink, Yarn Spinner, and a custom JSON/resource format. - Use to wire a dialogue script into your game loop (advance line, present choices, run commands, resolve variables). **When *not* to use:** for engine UI (text boxes, portraits, choice buttons), use `godot-ui-control` or the engine's UI skill. For persisting narrative variables across sessions, use `save-systems`. For data-as-resources in Godot/Unity, see `godot-resources` / `unity-scriptableobjects`. ## Core workflow 1. **Choose the authoring approach.** - **Ink** — prose-first, writer-friendly, weave/gather flow; great for dialogue-heavy or CYOA narrative. Integrate via ink

What's inside
Steps it walks through
  1. When to use
  2. Core workflow
  3. Patterns
  4. 1. Engine-neutral dialogue graph (data, not code)
  5. 2. Runner step (a state machine over the graph)
  6. 3. Ink — branching with knots, choices, and variables (inkle)
  7. 4. Yarn Spinner — nodes, options, and commands (Yarn 2.x)
  8. Pitfalls
  9. References
  10. Related skills
Ships with 2 files
  • references/ink-and-yarn.md
  • references/runner.md
More from awesome-gamedev-agent-skills
All skills →
About this skill
What does the dialogue-systems skill do?

Build branching dialogue and narrative — a node/choice graph with conditions, variables, and localization hooks — and choose between authoring tools Ink and Yarn Spinner or a custom data-driven runner. Engine-neutral. Use when the user mentions dialogue system, branching dialogue, conversation tree, choices, Ink (.ink), Yarn Spinner (.yarn), or NPC dialogue.

How do I install it?

Run `npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill dialogue-systems --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From gamedev-skills/awesome-gamedev-agent-skills, a repository with 406 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going