Overview
Topiary is a dialogue scripting tool which uses the Topi language to write interactive stories. It is designed to be integrated into video games which require a large amount of state and control flow in their narrative.
Think of Topiary as programming a screenplay for your video game.
It is written in Zig.
Installation
Topiary comes in a few ways depending on your use case.
Type | Use Case |
---|---|
CLI | Running in terminal, Obsidian.md Plugin, Testing Dialogues |
DLL | Engine Integration, Language Bindings |
Module | Zig Dependency |
CLI and DLL
You can download the CLI or DLLs from the release page.
Or build from source by installing Zig, then running the following
git clone https://github.com/peartreegames/topiary.git
cd topiary
zig build
Module
Add topiary as a dependency in your build.zig.zon
file and then run
zig fetch https://github.com/peartreegames/topiary/archive/refs/main.tar.gz
to get the hash
# build.zig.zon
.dependencies = .{
.topiary = .{
.url = "https://github.com/peartreegames/topiary/archive/refs/main.tar.gz",
.hash = "",
},
}