Whatchamacallit? Multidimensional Branching Narrative

Occasionally, the IF community discusses/debates what to name things. One thing that has been particularly hard to name (or even describe) is the distinction between so-called “stateless” CYOA gamebooks and other products (usually software) with “stateful” branching narrative, where earlier decisions can affect the results of later decisions.

I used “scare quotes” there because even “stateless” CYOA gamebooks do have one kind of state: the current page you’re on is the current “state” of the game. In traditional paper gamebooks, that’s the only variable in the entire story.

But a great deal more can be done with “stateful” branching narrative, including, for example, Fighting Fantasy gamebooks, (which are basically computer RPGs, even if the player runs the computer program with paper and pencil), but also including a lot of interesting Twine stuff, everything Choice of Games has ever published, and a lot more than that.

I propose that we should not call the distinction between these two types of works “stateful vs. stateless.” Instead, we should be asking how many variables the work has. If it has just one variable, your page number, then there’s just a single dimension of freedom available in the story. But better branching narratives have more than one variable, ideally a lot more than one.

(Of course, the more variables you have, the more complex your story is to write/test/debug, and the harder it is to write a longer story. More is not necessarily better. But one variable is usually not enough to tell a good interactive story.)

We could therefore call the distinction “single-variable vs. multi-variable.” But “multi-variable” sounds so mathematical, and there’s another slightly more mainstream word to use: “multidimensional.” “Multidimensional” sounds only slightly less technical than “multi-variable,” but non-technical people also use the word “multidimensional” to describe something full, rich, with varied characteristics, and that’s exactly the point I think I want to get across with the term.

As to what to call branching narratives, that’s another tough topic. (Choice-based IF? Interactive stories/novels? Gamebooks? Not CYOA, that’s for sure.)

What do you think? Is “multidimensional” a better/clearer term to use than “stateful?”

Not sure I like either terms. In discussion usually I’d take a lower level of analytical granularity: Choice of Games produce nodal, attribute-based choice narratives, whilst Twine tends towards static branching stories.

“Static” is maybe a better term than “stateless” but it seems a strange term to use for anything interactive, even for paper CYOA gamebooks. Sure, the pages don’t change when you read them, but the plot/ending does change.

“Attribute-based” has some synonyms that I’ve seen others use: “stat-based” “variable-based” “quality-based.” That’s what I was trying to capture with the term “multidimensional.” These stories have multiple variables/dimensions/stats/qualities/attributes.

My sense is that the shape and scope of the variable-affecting interactions are more important than the number of degrees of freedom per se. That is, does the player–

  • nudge the variables slowly and continuously over the course of the story?
  • flip a few key flags at critical points in the story, and then see the effect at critical junctions later on?
  • have the opportunity to flip key flags at in certain situations, but spend a relatively long time in those situations so there are several chances to experiment and see a result?
  • careen through the story with no real chance to connect player choices to state changes?

But of course this is a fuzzy and open-ended categorization, and there would be many more possible shapes than those.

I think the distinction’s important, but I think ‘multidimensional’ is a potentially troublesome word to use - if I heard that term without an explanation, I’d assume that it was there to distinguish games where there’s a fixed universe (and your choices only affect what the character does) from ones where your choices sometimes effectively take you into different fictional worlds (the gender-role flipping in Broadsides, the thing where the mystic artifact you’re hunting is always in the place where you decide to look for it).

If I remember my automata theory correctly, “stateless” CYOAs are basically deterministic finite automata (DFAs); the next state you arrive at is determined entirely by the state that you are in and your input. Whereas stately CYOAs are more like Turing machines, which in transitioning from state to state can write something to a memory that then can be recovered to influence a future state-transition.

This analogy isn’t exact, because IIRC the Turing machine writes its memory to the same tape it gets its input from and can move back and forth to the overwritten stuff, whereas in CYOAs the choices and memory are two fundamentally different things. And I don’t expect anyone to adopt “DFA” for stateless CYOA.

Anyway, I think the idea of stateless* vs. stateful CYOA is clear in a conversational way; if you know anything about what CYOA is you know that it has different choice nodes, so “stateless” conveys that a CYOA doesn’t have any states beyond that. Just as if I call you on the phone and say “Nobody’s here!” you won’t respond “Well, you’re there.” Which leaves open the question of what kind of states you do have beyond the obvious one, which I think is the more interesting question and what Joey and zarf are getting at.

And yeah, “CYOA,” I know.

*I typed “statless,” which is a whole other kettle of fish.

Memory-enhanced? Memetic?

Another term I’ve used when attempting to explain the style of game we’re looking for is “delayed branching.” Implicitly, if the branching is delayed (not immediate after the choice), then it must have been recorded/remembered somehow.

I think stateful/stateless works just fine - it’s what we’re already using, and it aligns nicely with how that’s used in computer science. E.g. wikipedia says this about stateless protocol:

Isn’t that pretty much what we’re talking about?

Although I also like matt’s innovative use of “stately”. If we go with that I vote to use “plump” for stories with a lot of of variables. :wink:

My beef is the rather with describing these things as “branching narratives”. I feel the branching (and merging!) that is going on in choice-type fiction is something else than a branching narrative (although they may coincide). It’s not necessarily branching, really, it’s often more about making little sidetracks with loops or dead ends off to the sides. Meaning the graph is not a tree structure but a main line with some squiggly bits around it. And it’s not always about the narrative either, I think. Didn’t we have this discussion about choice games being simulations of parser games somewhere?

This is an awful abuse of language in many ways, but with Sorcery!, we found ourselves using the phrase “real-time” to describe what we were doing: the idea being that the story is being “written on the fly” based on what you’ve done.

It’s a nicely active way to describe it, which I think helped people move away from the concept of a CYOA/gamebook - which has static text, static links with some conditionals, and overall feels very “stable” - to thinking of the game as highly dynamic and unpredictable - more like a tabletop session than a book. (And we do a very large amount of rewriting the actual words of the text based on state-variables, so it’s not an entirely hollow claim: it certainly couldn’t exist sensibly outside of a computer.)

We tend to use “adaptive” rather than “branching” because, yeah, branching gives this impression that it’ll be a “50 million different endings!” type experience, and we don’t really make those (and personally, I’ve never been very interested in them; the author will probably only care what happens in 10% of the endings so the rest are probably chaff). But I don’t like that word, and no-one ever knows what it means, so we fall back on branching lots.

Um. Different thread, of course, but surely that’s just silly? Choice games have unlimited verb sets coupled with the ability to turn off any given command at any time. That’s massively far from parser design. As such, I find they’re more powerful to write both PC and NPC characters for – you can consistently provide expressive actions that suit a given scene.

Sure. I didn’t mean to say “choice games are the same as parser games.” What I meant was that sometimes there are aspects of the interaction in choice games that also tend to deal with tinkering with - what was it maga said? - medium-sized dry goods. And that these types of choices (do you want to open the cupboard under the sink or look behind the fridge?) are not really dealing with narrative. Or I guess they are, what I mean is more that they are not (necessarily) changing the “fabula” of the story.

The distinction between stateless and stateful games is loose. A stateful game which tracks 1 binary decision can be converted to a stateless game with <= 2* as many states. For a game with more information tracked, this quickly become unwieldy, but it’s a difference of degree, not kind. (I think Jon Ingold converted Flaws in this way so it would be playable on Kindle.)

Indeed. Although, I guess the important question is really “how should the player think about it”, not what the file format is of how it works. Playing flaws, it’s really irrelevant if its statey or not; playing Thr intercept, which we built for Kindle the same way, there’s clear state tracking going on. And play a parser game, and it’s all about the model.

Hmm, dan, I wonder if “model-based” is a good enough term for what you’re describing?


I think he’s looking for more of a marketing term with this thread – something concise that conveys exactly the kind of experience that CoG-type stories offer to the reader. I think “model-based” is still too behind-the-scenes, internal bookkeeping details.

Maybe I’m just splitting hairs, but although I think I’d agree that the player of CYOA #1 is communicating with the book via a stateless protocol, I don’t think it’s correct to call the game “stateless,” any more than I’d call it “static.” There are victory/defeat states in that game; the puzzle is to find the victory states.

I think the use of the term “branch” here is extremely defensible. In CS we can and do use “branch” to refer to directed acyclic graph segments that merge together, e.g. in source control systems like subversion and git.

Remembering that the CS “tree” data structure is itself a metaphor for biological trees, note that real tree branches can and do merge; it’s called inosculation. en.wikipedia.org/wiki/Inosculation

Yeah, at that point maybe you’d just call it “branching fiction” or “branching IF.”

While I certainly wouldn’t throw away a good marketing term if I had one, that wasn’t what I was going for here.

I especially don’t expect the term to convey the idea of “CoG-type stories.” I agree with Emily Short’s remark that ChoiceScript, Inklewriter, StoryNexus, Undum, and Twine generate astonishingly different games in practice, despite having a lot in common. I’m interested in terms that capture the model/variable/stat-based technique that these (and Fighting Fantasy paper gamebooks) have in common.

“Stateful vs. Stateless” can do the job, if you’re familiar with the distinction. But “state” is a term with so many meanings, and anyway I stand by my claim that “stateless” is inaccurate. The result is conversations like this:

Alice: What do you mean by “stateful?” It’s not in my dictionary.
Bob: It means that it’s not stateless.
Alice: What does that mean? “State” can mean so many things.
Bob: It’s when the gamebook doesn’t change in response to the player.
Alice: How could a CYOA be stateless? Isn’t that exactly what makes it different from a traditional book?
Bob: No, I mean, the book doesn’t change; only the story changes.
Alice: Huh? How could it be otherwise?
Bob: Well, let me give you some examples…

Increasingly I feel that “delayed branching” might actually capture the structure best, even better than “model-based” which is pretty good.

As ralphmerridew points out, you can always rewrite delayed-branching IF into immediately-branching IF with an exponentially larger number of (hopefully automatically generated) nodes, but from the player’s perspective, the point is that the words they read don’t change until later on in the story.


“Variable CYOA”

I agree with peterorme about the meaning of “stateless”. The Intercept is cheating. :stuck_out_tongue:

You’ve been using that term for some years, and… hm. I think that it’s a bit unintuitive because it skips over a step (the storage and use of payer-determined data), and to understand the term you have to go back and reconstruct what that step is. Delayed branching is one important outcome of state-tracking.

When I hear ‘delayed branching’ I start thinking of something that’s got a decision tree just like a stateless pen-and-paper CYOA - each player decision determines one and only one branch - but where this is obfuscated by prolonged cutscenes in between decision and branching-point. Even though that would technically be a state-tracking game, it’s absolutely not the sort of thing that we’re interested in here.

‘Stat-based’ is good if your audience is already familiar with RPG lingo; it’s a pretty tiny intuitive jump from character stats to more general state-tracking. But that’s probably not something to rely on.

I believe Crawford calls exploring this sort of broad possibility space “subjunctive”. But that’s not a particularly transparent term, either.