For games & interactive narrative

Design the dialogue.
Prove the branches.
Ship to your engine.

The collaborative narrative canvas that simulates real logic, keeps writers and developers on the same graph, and exports clean into Unity, Yarn, or a standalone player. No lock-in.

Import Twine · articy · ArcweaveUnity XML & Yarn exportReal Lua conditions
onboarding_scenario.cmproj ● Quest logic · trust=3
START Greet player Choice A AI branch End 1 End 2 ✦ AI proposed · approve ✓ Validation: Ready

104,000+ creators build branching conversations with ChatMapper

Trusted by teams at

KaplanUSCTHQ ToolwireMatsukoLoreful
Imports fromChatMapper · Arcweave · Twine · articy:draft · CSV / Excel
Exports toUnity · Yarn Spinner · SCORM · xAPI · HTML player · LearnBrite
AI · your keysOpenAI · Anthropic · ElevenLabs · HeyGen · Synthesia
The narrative gap

Your engine renders the world. It doesn’t help you author the story.

Unity and Unreal own simulation and rendering. The chronic gap on game teams is collaborative narrative and logic authoring, the space where writers, designers, and developers keep drifting out of sync across docs, spreadsheets, and test builds.

ChatMapper is a companion to your engine, not a competitor: a visual branching graph where the whole team designs quests, dialogue, and character state together, then exports data your pipeline already understands.

ChatMapper was born in games. Its branching dialogue system is already used by studios, and Unity’s Dialogue System imports it natively, so this is a return to its roots, not a stretch.

Companion to Unity & UnrealNative Dialogue System importUsed by game studios
Intro Ask goal Path A Path B Resolve Inspector · Dialogue Text · Conditions · Variables · Actor
Your complete toolbox

Everything a narrative team needs, plus logic you can actually run

Visual branching canvas

Actors, choices, group nodes, cross-conversation links, items, locations, and variables. Zoom from the whole quest to a single line.

Playtest in the browser

Walk any path with real Lua conditions and scripts, watch variables and flags change, and feel the branch before it’s in a build.

Validation that catches breakage

Broken links, unreachable nodes, and invalid references surface in the editor, not in a playtest three weeks later.

Import your existing story

Bring narrative in from Twine, articy:draft, Arcweave, or a spreadsheet. Unsupported constructs are preserved, never silently dropped.

Export to your engine

A Unity Dialogue System XML preset with preflight lints, Yarn Spinner output, a standalone HTML player, and canonical JSON for your own tooling.

AI that respects the writer

Draft a branch, continue a beat, or add scoring as reviewable proposals the writer approves. The voice stays yours.

Interop importers/exporters and AI are rolling out across Cloud; some paths are experimental. Verify a round trip against your engine before changing an established pipeline.

ChatMappercanonical scenario JSON Arcweave → Twine → articy:draft → CSV / Excel → .cmp / XML → → Unity XML → SCORM / xAPI → Yarn Spinner → HTML player → LearnBrite
No lock-in

The neutral hub between every narrative tool and every engine

Bring the story in from whatever your team started in. Prove it works. Then hand your pipeline exactly the format it expects.

  • Import: ChatMapper .cmp/XML, Twine, articy:draft, Arcweave, CSV/Excel, JSON
  • Export: Unity Dialogue System XML (with lints), Yarn Spinner, standalone HTML player, canonical JSON
  • Additive, non-destructive schema · your data never gets forked
  • A published JSON format so your own tools can read scenarios directly
Questions

Good things to know

Does ChatMapper replace Unity or Unreal?

No, it’s a companion. Your engine handles simulation and rendering; ChatMapper is where the team authors and validates the branching narrative, then exports data your engine imports (Unity’s Dialogue System reads ChatMapper natively).

Can I import my Twine or articy project?

Yes. Importers map passages, links, entities, and variables into ChatMapper’s graph, preserving anything they can’t translate as raw metadata plus a report. Nothing is silently dropped.

How do I get the story into my game?

Export a Unity Dialogue System XML preset, Yarn Spinner files, a standalone HTML player, or canonical JSON. Some export paths are experimental. Round-trip test before committing a pipeline.

Do writers need to understand the logic?

No. Writers work in dialogue on the canvas; designers handle variables, conditions, and Lua. The simulator lets anyone play the result without a build.

Give your small team the narrative reach of a big studio.

Start with the example quest, invite your writer and your developer, and export a working branch into your engine today.