LogoAwesome Skills
  • Search
  • Category
  • Tag
  • Blog
LogoAwesome Skills
LogoAwesome Skills

Discover Open-Source Agent Skills for AI Coding Assistants

Product

  • Search
  • Category
  • Tag
  • Blog

Resources

  • Claude Skill Docs
  • Antigravity Skills Docs

Tools

  • Claude Code
  • OpenCode
  • Cursor
  • Codex
  • Antigravity

Company

  • Privacy Policy
  • Terms of Service
  • Sitemap

©2026 Awesome Skills. All rights reserved.

Privacy PolicyTerms
Back to Skills

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.

567stars44forksUpdated 8/20/2026
Developer Tools#gamedev#dialogue#ink#yarn-spinner#narrative

Security Assessment

Safe(96/100)
Security Score96/100

About dialogue-systems

dialogue-systems is an engine-neutral game-development skill for building branching dialogue and narrative — modeling conversations as a graph where nodes hold lines, choices branch the flow, conditions gate options, and variables remember what the player did. It frames the first real decision as build-vs-buy: adopt a proven authoring tool (Ink or Yarn Spinner) or write a small data-driven runner. The skill owns both Ink and Yarn and is consumed by genre skills like visual-novel and rpg.

Its core workflow guides choosing the authoring approach, defining a node contract (a node yields a line, a set of choices, a command/side-effect, or an end/jump), separating variables from flow via a variable store gated by conditions, localizing from the start with line IDs rather than raw strings, driving the graph from the game loop as a state machine, and verifying by walking every branch. It provides concrete patterns: an engine-neutral JSON dialogue graph, a runner step machine (shown in GDScript), and Ink/Yarn examples. Two references round it out — a side-by-side Ink vs. Yarn Spinner syntax cheat sheet and a complete custom-runner design that notably includes a tiny, sandboxed AST-based expression evaluator with an explicit warning to never eval untrusted strings in a way that exposes the host language.

The target users are game developers and narrative designers building conversation trees, choice menus, or narrative state (flags, relationship values) that affect later dialogue, across engines like Godot and Unity. The skill deliberately defers engine UI, cross-session persistence (save-systems), and resource formats (godot-resources, unity-scriptableobjects) to sibling skills, keeping its focus on the dialogue graph and its interpreter.

FAQ

Should I use Ink, Yarn Spinner, or a custom runner?

Ink is prose-first and writer-friendly for dialogue-heavy or CYOA narrative; Yarn Spinner is node-based with explicit commands and strong engine hooks; a custom JSON/resource runner suits full control or minimal dependencies. The skill's advice for custom work is to build a graph interpreter, not a language.

Is this skill tied to a specific engine?

No, it is engine-neutral and teaches the portable graph model. It notes integration bindings for Unity, Godot, and web (inkjs) and defers engine-specific UI to skills like godot-ui-control.

How does localization work?

Author with line IDs rather than raw strings, so displayed text comes from a per-locale string table. Both Ink and Yarn support extracting line IDs/tags to string tables; the skill recommends tagging lines and shipping per-locale tables from the start.

How are conditions and variables evaluated safely?

The custom-runner reference keeps variables in a flat dict and evaluates conditions/assignments with a tiny sandboxed AST-based expression evaluator, explicitly warning never to eval untrusted strings in a way that exposes the host language.

What does this skill not cover?

Engine UI (text boxes, portraits, choice buttons), persisting narrative variables across sessions (use save-systems), and data-as-resources in Godot/Unity (godot-resources / unity-scriptableobjects).

All Files

3 files
references/ink-and-yarn.md4.6 KB
View
references/runner.md5.0 KB
View
SKILL.md7.0 KB
View

Install dialogue-systems

Download and extract the skill files to your .claude/skills/ directory.

Quick Setup:

  1. Copy the skill folder to .claude/skills/
  2. Claude will automatically detect and use the skill

Repository

gamedev-skills/awesome-gamedev-agent-skills

Related Skills

short-form-video

14

multi-asset-morning-briefing

7,907

content-strategy

2,901

doherty-threshold

2,901