Silence, Exile, and Cunning
Dark SailArticy: Please introduce yourselves and tell us about the team at Dark Sail working on Silence, Exile and Cunning
Dark Sail: Dark Sail is an independent game studio, and Silence, Exile, and Cunning is our first commercial game. Our core team is small, so naturally we wear several hats and work closely together across the project.
Articy: The game follows James Joyce and Nora Barnacle through a fictional conspiracy set against the very real backdrop of 1904 Pola. What drew you to this setting, and how did you balance historical authenticity with player-driven storytelling?
Dark Sail: We are based in Pula, as the city is called today in Croatian, and share a great interest in history and literature. Several things converged around this idea. James Joyce and Nora Barnacle really did live in Pola for several months, although the surviving record gives us no grand adventure.
We wanted to explore this particular moment in pre-war Europe: our own city, then very multinational and multicultural, seen through the eyes of a couple of strangers. It was a fish-out-of-water story. Then came the question: what if James and Nora accidentally became embroiled in military espionage and had to scramble their way out? The result was a mixture of thriller and comedy seen through a Joycean lens.
The game takes a small part of Joyce’s early life, expands on it, and fictionalizes it. The historical authenticity comes from real people, events, and places; over that sits a thick layer of invention that touches real history but significantly alters it. We state clearly that the story is fictionalized, with an unreliable-narrator hook.
Articy: Players can approach situations differently and even seemingly minor choices can ripple throughout the story. From a design perspective, how did you structure this branching narrative while keeping both characters believable and the overall story coherent?
Dark Sail: The question itself hides part of the answer. The idea is to give the player a few genuinely important decisions. The story ultimately converges at several main points, but each decision reflects the different perspectives James and Nora bring as protagonists.
When a choice belongs exclusively to James or Nora, its consequences can take their relationships in different directions, including their relationship with each other. At the same time, they remain relatively minor players in a major local political conspiracy. Their role in that larger story stays small: theirs is a personal story inside a much wider setting.
In the full narrative scope, the branches are real, but most of their consequences concern where those relationships end up. Without spoiling too much, a couple of major choices are designed to change the outcome of this fictional history. Most choices, however, create small ripples whose payoff comes later.
So we separate James’s and Nora’s viewpoints, let their decisions accumulate, and then see how they come together in a particular outcome. We keep the overall story coherent at a high level, while individual relationships and the consequences of particular decisions can still change by the end.
Articy: At what point did you realize that your project needed a dedicated narrative production pipeline rather than documents or spreadsheets? What production challenges were you trying to solve, and why did articy:draft become the foundation?
Dark Sail: For us, the decision to use articy:draft came at the beginning. Even before this project, we had worked on narratively rich commercial games, so this was a problem we already knew we needed to solve.
We already knew articy:draft and its capabilities. We also knew Silence, Exile, and Cunning would involve dense dialogue, branching choices, dialogue trees, item combinations, hotspot interactions, and conditional story situations. It was a natural fit.
There was really no comparison with manually maintaining text or table files. articy:draft saved us development time by providing a Unity integration alongside a delightful visual way to design narrative and logical branches.
Keeping the central data layer in one place, including characters, dialogue, objects, conditions, and logic, has been tremendously helpful. Above all, it gives us a way to understand and manage the complexity inherent in a project like this, with full portability of data layer, independent of the rendering engine.
Articy: You mentioned that articy:draft powers your entire data layer and that you’ve built a custom Unity scripting engine on top of it. Could you walk us through your narrative pipeline—from writing and design in articy:draft to gameplay and cinematics inside Unity?
Dark Sail: As we developed and prototyped the game, we began to see that articy:draft could serve as the authoring layer for the whole scripting stack. The narrative designer could write most of the game’s logic there.
We created specific object templates that expand articy:draft’s core functionality. Those templates point to hotspots and items, with the existing variable and dialogue nodes, each linked to a specific reference in Unity.
We then built a scripting engine around articy:draft’s instruction nodes. We write commands there in a functional form; Unity interprets them and triggers the corresponding action in the game.
For example, after writing a piece of dialogue in articy:draft, we can add an instruction telling a character to move to a particular point. When Unity reaches that instruction, it sends the character to the predetermined destination. We have built a whole suite of these reusable actions.
Architecturally, we came to treat Unity primarily as the rendering and presentation layer, while articy:draft holds the central narrative data, most of the sequencing logic, and the individual scripted behaviors for the world and its characters. From articy:draft, we can switch cameras; move or turn characters; have them look towards specific points; pause the sequence for a set duration; trigger audio cues through a custom function; and fade scenes or lighting in and out.
This keeps the writing, branching logic, and much of the cinematic direction together in one visual flow. Unity then interprets those instructions and carries out the corresponding actions in the game.
Articy: Narrative systems often become the backbone for many other game systems. How has using articy:draft as your central data source influenced collaboration between writing, design, and programming throughout development?
Dark Sail: It has mostly helped us separate concerns. We are a small team, and everyone wears many hats, but it made architectural sense for us to keep the narrative data layer, along with most of the logic layer, separate from the rest of the project.
articy:draft became our shared database: a self-contained, versioned source for templates and content that helps protect us from drift. articy:draft and Unity then exchange data in a compartmentalized way.
This was partly an optimization decision and partly a question of scale. We needed something that could handle tens of thousands of words and many objects. Changes within articy:draft, even small grammar edits, do not need to affect every other layer of development.
Articy: Looking back on development so far, are there any articy:draft features, workflows, or pipeline decisions that proved especially valuable? Perhaps a moment where your setup prevented costly rework or made a complex piece of narrative content manageable?
Dark Sail: Very early on, we recognized the need for architectural clarity, and articy:draft’s custom templates paid off immediately. We set up James and Nora separately, then assigned each hotspot, dialogue node, or other object according to whether James, Nora, or both could access it. Getting that structure in place was very important for us.
The most interesting result came from combining dialogue nodes with instructions, conditions, dialogue fragments, and our custom scripting implementation. For one particular puzzle, we used articy:draft to direct camera switches and enable or disable elements in Unity, creating a separate interface for that puzzle. This gave us a type of puzzle quite different from the rest of the game. The implementation is complex, but articy:draft’s interface helped us understand, group, and manage the puzzle’s logic. Funnily enough, it became one of the highlights for our players.
The voice-acting workflow was also extremely valuable. Matching voice files directly to dialogue objects made it quick and easy to implement thousands of voice lines and update them later without trouble.
Articy: What’s something interesting about the game that you’d like our audience to know about?
Dark Sail: Silence, Exile, and Cunning has an extra layer: it is set in a semi-fictional historical context and tells a story about a famous modernist writer creating stories of his own.
An important aspect is how the two-protagonist structure works in gameplay. The player can switch freely between James and Nora. Each character reveals different hotspots and has access to different interactions.
When they are together, we treat them as a single party-character. Both participate, but the player chooses which of them takes the lead. Some actions are available only to one character, and those choices can have lasting consequences, including changes in James and Nora’s relationship. We manage this through articy:expresso conditions in the narrative flow and in our custom entities. For practical reasons, James and Nora share knowledge and inventory while they are together, although we keep their underlying data separate.
The same system allows us to create parallel situations. James may be unable to proceed until the player switches to Nora and discovers information elsewhere. We want the choice of protagonist to matter without having to build two separate versions of the entire game. The overall structure remains shared, with character-specific differences introduced where they are most important.
articy:draft lets us handle this elegantly through articy:expresso conditions in both the narrative flow and our custom entities.
Articy: Many indie studios are becoming increasingly ambitious with narrative design but often underestimate the production side of branching content. Based on your experience, what advice would you give to developers building narrative-heavy games who want to create a scalable workflow from the start?
Dark Sail: Start in pre-production. Build one small prototype or scene and use it to find the difficult parts and choke points.
Design the architecture and game state first, as you would in any programming project, before branching into a crazy one-off tree. Use test scenes and narrative outcomes to establish a repeatable workflow. Play with the tools, identify what recurs, and factor it into reusable building blocks.
Keep narrative authoring separate from the rest of the project: graphics, rendering, physics, and so on. It is simply good programming architecture applied to narrative design and implementation.
Most importantly, test early and often. Iterate, iterate, iterate. Throw away what does not work. Begin production only when you understand what the narrative needs and how its architecture should function. For complex narrative design, spend more time on prototyping and pre-production than you think you need. You will probably need it.
Silence, Exile, and Cunning is available on: Steam
Want to try out our narrative design tool for yourself? Get the free version now!
Get articy:draft X FREE
*No Payment information required
Follow us on X, Bluesky, Facebook and LinkedIn to keep yourself up to date and informed. To exchange ideas and interact with other articy:draft users, join our communities on reddit and discord.





