ConvoCore
ConvoCore is a modular Unity dialogue framework for authoring branching conversations in YAML and playing them back in any genre of game, without locking you into a specific UI, camera setup, or rendering pipeline.
Write your dialogue in plain, readable YAML files with no proprietary formats and no node graphs to maintain. Character logic, visual expressions, branching rules, localization, and save state all live in the Unity editor where your team already works. ConvoCore compiles your words into runtime-ready assets automatically.
How it works
┌────────────────┐ ┌────────────────────────┐ ┌──────────────────┐
│ YAML file │ ──────────▶ │ Conversation Data │ ─────────▶ │ ConvoCore │
│ (your dialogue)│ compiles │ (ScriptableObject) │ runs in │ (MonoBehaviour) │
└────────────────┘ └────────────────────────┘ Play Mode └──────────────────┘
▲ │
│ edit in any │ fires C# events
│ text editor ▼
Your UI · Actions · Save System
What's included
| Feature | Description |
|---|---|
| YAML authoring | Write conversations in plain text, hot-reload in the editor, version-control with git |
| Character system | Profiles, sprite/prefab representations, and per-line expressions |
| Branching & choices | Route through containers, present player choices, return to the main thread |
| Localization | Multi-language YAML keys, runtime language switching with one call |
| Save system | Conversation progress, visited lines, and scoped variables across sessions |
| Dialogue actions | ScriptableObject coroutines that fire before or after any line |
Extend and customize
Every layer of ConvoCore is designed to be replaced or extended without touching the core:
| Extension point | What you can do |
|---|---|
| Custom dialogue actions | Trigger any game logic - camera moves, quest flags, spawns, cinematics - before or after any line |
| Custom character representations | Plug in Spine, VRM, prefab avatars, or any visual system alongside the built-in sprite and prefab types |
| Custom UI | Build any display layer - text boxes, speech bubbles, 3D panels, visual novels - using the ConvoCoreUIFoundation base class |
| Custom save providers | Store saves in the cloud, in PlayerPrefs, or encrypted on disk via the IConvoSaveProvider interface |
Where to start
If you're new to Unity or C#, begin with Installation and follow the Quick Start guide. Each page explains Unity-specific concepts (ScriptableObjects, MonoBehaviours, coroutines) as they come up.
| I want to… | Go here |
|---|---|
| Install ConvoCore | Installation → |
| Create my first conversation | Quick Start → |
| Understand the YAML format | YAML Format → |
| Browse the C# API | API Reference ↗ |
| Extend ConvoCore with custom code | Extending ConvoCore → |