Skip to main content

ConvoCore

ConvoCore is a Unity native dialogue framework for building the dialogue system your game deserves, in any genre, at any scale. Write your conversations in plain, readable YAML or spreadsheets, keep them in source control, and let ConvoCore compile them into runtime-ready Conversation ScriptableObjects.

Other dialogue systems actively take over your game's architecture. ConvoCore stays in its lane as a focused dialogue tool, built to grow alongside your project. Every layer, from dialogue actions and character representations to UI and save providers, are designed to be easily extended or replaced without touching the foundation. Character expressions, branching logic, localization, and save state live in the Unity editor, while your UI, camera, and rendering pipeline stay entirely in your hands.

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 →