Narrative game development has a coordination problem that most teams learn to live with rather than solve. The writer works in one tool; the developer works in another; when the story changes (a quest condition shifts, a variable gets renamed, a branch gets restructured), someone in the middle has to carry that change across the gap manually. In small teams, that someone is usually the developer; in larger teams, it becomes a process. Either way, it is friction that compounds over the life of a project.
The Arcweave Unity plugin was built around a different premise: the story and the game should read from the same source. Narrative logic lives in Arcweave, where writers and designers can edit it freely. Unity reads from the Arcweave project directly. When the story changes, you reimport. That is the model, and it is simple enough that it stays out of the way.
Any variable defined in Arcweave is observed in Unity in real time, with no extra setup: quest state, character health, inventory flags, relationship scores. A value change triggers events: a health bar fills, a door unlocks, the weather shifts, an NPC's behavior updates. The narrative is not just text on screen: it is a live data layer the game world reads from.
Branching logic, conditions, and scripted expressions all stay in Arcweave too. A narrative designer can gate a dialogue option behind a condition, restructure a quest arc, or change when a story branch appears, without ever opening Unity. No developer required. The game simply reflects what the story says.
Where this gets genuinely interesting is at the intersection of story and mechanics. Arcweave components can be attached to specific story beats, and Unity scripts can detect them. This means a gameplay ability can unlock exactly when the player reaches the right narrative moment; not through a separate flag, not through a timer, but because the story says it is time. The writer controls when, the developer controls what, and neither needs to be in the other's tool to make it work.
One of the less obvious things the plugin enables is post-launch narrative updates without a rebuild.
When you export a Unity build, you can export the story JSON and assets from Arcweave, drop them in the build folder, and the game loads the updated story on next launch. For teams with a Team Workspace, the Web API removes even that step: Unity pulls the latest published version from Arcweave in one click, from inside a running build.
Dialogue fixes, rebalanced quest conditions, new story branches — all of this can happen after the Unity scene is locked. The two layers stay independent, which means they can move at different speeds.
To show what this integration looks like when everything is connected, we built a 3D RPG demo from scratch: a small scene with NPCs, live quest variables, environment state controlled from Arcweave, and a sword ability that unlocks through a story beat rather than a game event. The project is on GitHub, fully readable, and designed as a starting point rather than a showcase.
Alongside the demo, we have published a five-part tutorial series on YouTube, which covers the full integration:
Both the Arcweave and Unity sides are covered in each video, so narrative designers and developers can follow the parts most relevant to them independently.
The plugin is free to get started with. If you are building a narrative game and want your story and your engine to stop working against each other, this is a good place to start.