Mailbag: High-Agency Narrative Systems

Today’s mailbag entry (at the request of the submitter, anonymized and edited a little) gets into the question of how to create salience and quality-based narratives and other similar games, given that typically one has to build one’s own.

What I keep getting drawn toward on a personal level is your work–and other people’s work too–on procedural narrative generation. I have enough knowledge of coding to understand states and modeling systems and when to move from one to another on a conceptual level, but at this point I could not make one in any language or engine. I think this is something I would like to learn to do more of...

Obviously I’ll need to learn a language from the ground up. That’s fine. I suppose I’m asking what would be most helpful to focus on–not just in terms of C# or Ruby or Python–but other skills as well… most of my questions/interests are about event generation, procedural chains of causality, etc.

Further discussion with the asker indicated they are talking about the kind of quality-based and salience-based narrative systems I wrote about in the article Beyond Branching; this RockPaperShotgun column about Alcyone also gets into some detail about the state of play in this space.

Systems like this can achieve a combination of player freedom and agency that is hard to reach in CYOA or any other node-based system (I would include ChoiceScript here): there are often dozens of viable choices available.

Meanwhile, because you’re not tied to a specific simulation concept (like the standard parser IF world model), you can adjust the qualities of your QBN to the particular needs of this work. Track your protagonist’s health, her interest in opera, her sense of humor, her tolerance for pain; track her relationships with each of a dozen friends, or a dozen aspects of her relationship with one friend.

On the other hand, the tooling and the design abstractions in this space are not nearly as advanced as they are for parser IF or CYOA/hypertext/stats-based IF, so if you want to work with it, you probably have to build your own.

That’s a topic that could take a number of articles, and there isn’t as much writing in this space to point to as in the parser space.

Continue reading

Mailbag: Writing for Versu

g_ending_2@craigtimpany writesYou’ve covered Versu’s architecture, but I’m curious what that was like to write for… In particular I’ve been wondering how very non linear tools affect a writer’s flow.

For those just joining, Craig is asking about Versu, a system focused on agent-driven narrative. Versu and the games made with it are no longer available, but there’s information available about the system, including several papers at the Versu website, and past posts of mine here about the conversation system and about what it was like to convert Galatea to the Versu format.

During the first portion of its development, Versu content was driven through Praxis, the language that specified social practices and truths about the world state. Praxis is very powerful and allows the user extremely detailed control over what is true about the world, and what all the agents want; and the baseline implementation of conversational practices, among others, were written in Praxis. However, writing extensive dialogue in Praxis was essentially wrapping conversational elements in code — a high-friction way to compose, and one that discouraged revision. To address that, we developed a DSL called Prompter. I am not going to re-describe here everything about how that worked, since the attached papers go into detail.

But the core point to know is that, within Prompter, one wrote scenes. Each scene could have some opening text; some parameters about what was allowed to happen in that scene (e.g., “no one dies in this scene, but Veronius is allowed to have sex”); a body of dialogue that can be spoken only in that scene and nowhere else; and then one or more ways that the scene can end.

Using that information, the system would follow its own rules about how conversation and social actions could chain into one another, improvising a particular performance around the scene parameters the writer had set on the page.

Continue reading

Voyageur: Impressions

This slideshow requires JavaScript.

First, a massive disclaimer: Voyageur’s author Bruno Dias is a friend. Also, I often do work for Failbetter, which provided support for Voyageur via Fundbetter. In addition, Voyageur uses procedural text generation features that draw on things I did for Annals of the Parrigues, and I had a number of conversations with Bruno about the game while it was in development. That said, I will try to be as useful as I can, since I’ve been asked for more of an assessment than the simple announcements I’ve been posting.

What is Voyageur? This is a systematic quality-based narrative with procedurally generated textual descriptions, trading, and perma-death — though in the right circumstances you can leave a substantial legacy to a future captain.

To unpack that a bit: you start out on a planet with a little money and a few supplies and something called a Descent Drive. A Descent Drive is alien technology that moves faster than anything made by humans — but only in one direction, towards the center of the galaxy. If you want to take a trip on one, you are never coming home.

So you set out, and each time you do, you have the ability to steer a little. You can typically pick which of 2-5 available planets you want to see next. You know one or two facts about them. Sometimes those facts are enough to tell you which planet is going to be the best place to sell off your current cargo or drop a passenger; sometimes you’re pretty much taking your chances. The descriptions of the planets, as well as the crew you pick up and the trade goods you acquire, are all procedurally generated. Planets have governments, cultures, climates. Trade goods have different levels of quality and other features that make them appealing on different worlds. I particularly enjoyed some of the trade good descriptions that hinted at the surrounding culture: Sea urchin substitute. Generic locust steaks. An artwork consisting of AR decorations overlaid on electronic components.

Continue reading

Zubmariner DLC for Sunless Sea

dahut.png

The Zubmariner expansion for Sunless Sea is out… now. I was the writer for three of the ports — Aigul, Anthe, and Dahut. (As always with Failbetter projects, the writer is not alone: a number of other people contributed significantly, from concept to mechanical QA to prose editing, and of course I’m not behind the art, either. That’s why I say “was the writer” rather than “wrote,” which might make it sound like I did all the work.)

I’ve talked before about writing for Fallen London and its extended universe (which includes Sunless Sea), about how receptive I find that environment for endangering the player character as well as writing about fear, pain, and grief. The fantasy and humor of the setting make it possible to tell stories that might otherwise demand too much from the reader. And through all that, the Failbetter team are superlatively on top of giving quality feedback and direction.

Sunless Sea is a darker, scarier place than Fallen London, and Zubmariner is more monstrous still. Zub didn’t just permit me to go dark; it demanded that I do so — and then also write funnier or more beautiful in order to keep the experience in balance. Dahut contains some of my favorite imagery of anything I’ve written. Anthe provoked a lot of appalled laughter from my editors. Aigul… well, I’ll let you see when you get there.

I’m proud of what’s in this one. I hope you enjoy it.

Lethophobia (Olivia Wood and Jess Mersky)

Screen Shot 2016-09-05 at 5.32.35 PM.png

StoryNexus was meant to be revenue stream for Failbetter Games: the tool available for anyone to use, with an option to publish, monetize and split the profits between author and studio. The existence of Fallen London was one of the selling points — players had been asking for years to be allowed to make their own Fallen-London-alike. The system was also one of the few IF tools to offer a quality-based narrative out of the box, where new pieces of story become available as the player’s stats change.

But quality-based narrative is not the easiest kind of interactive narrative to bootstrap. You tend to need a lot of content before the results start feeling like a game. Moreover, a StoryNexus game specifically needs a stock of images as well as a stock of words. SN came with a range of generic icons, but that could just mean that many SN worlds felt rather samey unless the author had put in the extra customization to draw (or have someone else draw) customized card images.

StoryNexus never really took off in the way Failbetter hoped, and the monetization option wasn’t available for long. Officially, StoryNexus is no longer supported. But a small library of sizable or complete SN worlds were written, including Winterstrike, Samsara, Below, Zero Summer, Final Girl, and now Lethophobia. A lot of SN games are loosely structured and have a lot of small anecdotal interactions — sticking with the idea that they’re story worlds, or settings. Lethophobia (like Final Girl) is in a minority: it’s telling one story, and there’s a clear trajectory through that tale. There is also, mercifully, no action limit worth worrying about, so you can play as continuously as you wish without any enforced delays.

Lethophobia is the story of a haunting. The house in question is a very particular one, lovingly described and appealing to every sense. The discoveries you’re assembling about the past are rather looser and less determined: you meet a character, but is he an old friend or your ex-lover? Is this female character your sister, or is she a former piano teacher?

From early on the game communicates that it’s not so much about exactly what happened, but rather about how you orient yourself to those memories, about the process of discovery and reconciliation to trauma.

Lethophobia is also the closest thing to a classic IF puzzle game I’ve seen in StoryNexus form.

Continue reading

Reigns

Screen Shot 2016-08-19 at 3.47.56 AM.png

Here is Reigns, a game about managing a series of kingdoms currently available on Steam for a few dollars. (Or £1.99, for those of us buying in the UK.) The mechanics are simple. Each turn you’re presented with a choice, typically presented as a request by someone in your kingdom. Swipe left to refuse; swipe right to agree.

Your decisions affect some or all of the four stats at the top of the screen, which correspond to the well-being of the church, the populace in general, the army, and your treasury. If any of those stats reaches either maximum or minimum states, you will die and be replaced by your heir, who will start from where you left off (but with stats set back to average). Some of those death reasons are pretty contrived: make too much money and your citizens will throw a feast in your honor, where inevitably you will choke to death. But the need for balance makes this much more difficult and interesting than if it were safe to just max out your treasury, for instance.

There are a few minor complications that turn up after you’ve played for a bit: for instance, you can make decisions that add semi-permanent resources to your kingdom, such as a placement on the Silk Road that provides income every turn regardless of what else you do, or a siloing system that helps protect you in the event your kingdom runs out of food. And there’s also a combat mini-game that you can unlock after a bit of experiment.

Still, there’s a heavy component of chance here. You don’t know in advance what cards are going to turn up, and you can never just autonomously choose an action. So you may be able to see that your Treasury stat is edging up and up, dangerously close to triggering the Deathfeast, but not be able to do anything to offload your obscene wealth.

Each card also comes with a small amount of story, and because those stories are dependent on your existing stats, this feels like quality-based narrative — though without the wild proliferation of different stat types that one sees in Fallen London. Like other QBN pieces, this means it offers cause-and-effect chains the authors might not have specifically anticipated. During one of my reigns, I accepted a marriage proposal from an adjoining kingdom in order to avert a war; then I let my new wife throw a feast, but the feast bankrupted the kingdom and brought my reign to a precipitous close. Oops. Did the authors intend that sequence? Not necessarily, but it results naturally from the way stats move.

There is a longer arc that plays out over the course of multiple reigns, but it’s easy to go through a number of deaths without getting any new content for that piece of the game.

Ultimately, the story experience is a little dilute for my tastes. The tinder-style mechanic, the randomness of card availability, and the fact that you die so often, all made me sit back rather than sit forward. After all, the stakes are low (what do I care if yet another king dies of gangrene after an ill-advised boar hunt?) and my control is likewise limited. Still, Reigns is entertaining in short spurts, and I’m always interested to see new QBN-ish pieces, especially ones not written in the StoryNexus toolset.

Disclosure: I played a copy of this game that I bought with my own money.