Skip to main content

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

FeatureDescription
YAML authoringWrite conversations in plain text, hot-reload in the editor, version-control with git
Character systemProfiles, sprite/prefab representations, and per-line expressions
Branching & choicesRoute through containers, present player choices, return to the main thread
LocalizationMulti-language YAML keys, runtime language switching with one call
Save systemConversation progress, visited lines, and scoped variables across sessions
Dialogue actionsScriptableObject 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 pointWhat you can do
Custom dialogue actionsTrigger any game logic - camera moves, quest flags, spawns, cinematics - before or after any line
Custom character representationsPlug in Spine, VRM, prefab avatars, or any visual system alongside the built-in sprite and prefab types
Custom UIBuild any display layer - text boxes, speech bubbles, 3D panels, visual novels - using the ConvoCoreUIFoundation base class
Custom save providersStore saves in the cloud, in PlayerPrefs, or encrypted on disk via the IConvoSaveProvider interface

Extending ConvoCore →

Where to start

New to Unity?

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 ConvoCoreInstallation →
Create my first conversationQuick Start →
Understand the YAML formatYAML Format →
Browse the C# APIAPI Reference ↗
Extend ConvoCore with custom codeExtending ConvoCore →