Visualizing replay structure

A lot of my recent work on Alabaster has been to tie together plot threads from different contributors and try construct something that produces a coherent narrative. I’m a little nervous about this process, since I’m doubtless taking some of the contributions in a direction that the contributors didn’t expect; if anyone objects wildly, we can talk it out in the beta-stage. But I think I do now have a viable, consistent story and plot structure.

This level of organization is impossible to capture on the conversation tree, because some of the outcomes depend on other actions than conversation. So I need something else — another kind of chart — and this one can’t really be automatically generated from the game source. Here it is drawn by hand (though note that if you click through to the full thing it will necessarily be a bit spoilery):

Diagram of significant outcomes in Alabaster
Diagram of significant outcomes in Alabaster

Currently there are 18 ways the plot can end. Dashed lines indicated endings that aren’t fully implemented yet (so you can’t actually reach that outcome); a number in a box indicates that I’ve written a test command to test it. The ending test commands are named things like “end-1”, “end-2”, and so on, so one can go through and try all of them. The colors of the outcome boxes indicate how likely the player character is to survive that ending. Red endings kill you instantly; orange endings indicate that long-term prospects aren’t great; yellow endings are more optimistic. The one green ending doesn’t kill you at all, but it’s not optimal for other reasons. So the best endings from the story perspective are the yellowish ones down at the bottom center-left; they take the greatest amount of plot-traversal to reach, which (I think) is as it should be.

It’s possible that I would be able to autogenerate a puzzle and completion map if I were using Aaron Reed’s Intelligent Hinting extension. Since that explicitly tracks puzzles and the relationship between them, one might be able to create a .dot file for that as well. In fact I did a little preliminary experimentation with the idea, using Aaron’s hinted implementation of Adventure. It partly worked, but it wasn’t as clear as I would have liked; I think I was misunderstanding how he was using some of the relations. Nonetheless, that is something that could probably be done given some effort.

Something that’s always necessary to think about in a replayable plot where the player is unlikely to get the “good” outcome the first time around: how do we indicate after a failed playing what he should go back and do in order to get a better outcome?

Partly one needs to leave enough clues in-game that there are other options one hasn’t pursued, but I think a certain amount also depends on the hook-iness of the writing of the unhappy endings. They shouldn’t just be generic failures; they should be interesting failures that give enough information to reward the player for reaching even that far, while improving his understanding of the world and giving him some new directions to try once he gets back into the game. So the chart helps me think about this: in particular, a negative ending should point at the next thing the player could have done to get a more interesting outcome. Endings 1, 2, 3, and 6 could leave some hint about waking the hart. Endings 4 and 5 should suggest that there is more to know, that you didn’t find out everything from Happy after all. And so on. It’s pretty unlikely that the player will wind up hitting all the less-optimal endings before getting to the better ones, but I’m hoping that consciously structuring things this way will provide more impetus to keep going.

IntroComp and Hooks

In a post explaining the purpose of IntroComp, Stephen Granade wrote

I think IntroComp has benefit beyond people turning specific intros into games. Neil deMause started the competition because so many games’ openings were terrible, and he wanted people to think more about how they hook players.

In practice, it feels as though IntroComp is used this way less than I’d like. Many of the entries turn out to be alpha-tests of one kind or another: the author is showing us an unfinished system that doesn’t have its narrative in any kind of shape, because he wants to know whether the mechanics work or whether the setting strikes people as interesting.

It would be useful if IntroComp were more of a referendum on Writing a Good Hook, because we need some more of that. IF hooks have to accomplish two separate things:

Continue reading “IntroComp and Hooks”

Scaffolding and Scene-based Design

One of the things I find useful in developing a very plot-oriented piece of IF is to leverage the scenes mechanism as much as possible, designing as follows. I’m not sure this really qualifies as advice so much as some personal experience that may or may not suit others’ writing styles — people tend to approach IF design in different ways. Still, FWIW:

Continue reading “Scaffolding and Scene-based Design”

Further reading on narrative construction

After recent RAIF discussion and the Gamasutra article on Far Cry 2, the rest of the world is also talking more on the question of how narrative can be constructed in games — out of what pieces, and in what sense it can be narrative.

A lot of the discussion comes back to traditional issues we’ve seen before: people re-discovering, for instance, the conflict between freedom, agency, and story. A lot of the techniques suggested (sandboxes where the player has to make his own story; branching narratives; narratives constructed in partial reaction to the player’s behavior, by some sort of drama manager) have already been floated a bunch of times.

For myself, I actually feel like I’ve talked out this topic for the time being, but it’s interesting seeing what everyone else is saying.

Further Challenges in Pacing

I talked a lot here about scenes and plotting, and a little in the comments here about pacing problems in games with a lot of conversation (or highly-scripted scenes in general). I noted that a conversation-heavy piece of work can get to feeling really stolid, and I’ve been thinking a lot about why that is in order to try to come up with better leavening.

I’m not looking here for the large-scale strategic pacing issues (when are new twists introduced, how fast does the plot move) but at small-scale pacing. Does the game seem to be flowing quickly or slowly at any given moment? Is it sufficiently engaging?

Text generated per move is one possible metric. Research puzzles, conversations, anything that involves the player reading a book or computer screen in game: these tend to produce lots of text for any given player action. The more text the player has to read before typing something new, the more space there is between actions.

Moves required to reach interesting outcomes is another. A fifteen-puzzle you have to manipulate for twenty-five turns before getting to an interesting or unique output may feel slow, while a puzzle that can be solved more quickly feels fast. The more moves are required to reach a new outcome, the slower the narrative moves.

Difficulty of planning the next move (or planning a sequence of moves) is a third. In conversation, especially conversation that uses menus or TADS 3-style prompts, the player never knows in advance what he is going to want to type next. Menu-based moves at least require the same type of input (a number); prompts are worse, from a play perspective, because for each move the player has to process something like

(You could ask where to find the diamond necklace of Queen Warthammer.)

into a new action

>ASK WHERE TO FIND THE DIAMOND NECKLACE

…which may not be a huge strain on the cognitive facilities of most players, but does introduce some processing time on the player’s end. It’s not creative-thinking processing, either — not “what do I do now to solve this?” — but dull read-and-repeat processing. In general, I nonetheless prefer this kind of conversation for a host of reasons — it’s more flexible than menu-based conversation and more accessible than pure ASK/TELL, and it can be heavily customized. So I need to find a way to work around the pacing issues. (Of course, prompted conversation does not mean that there has to be a prompt every turn, which can have a particularly numbing effect which makes the game feel little different from a CYOA. I think my compromise position is to prompt the player about important conversation that would be at the forefront of the protagonist’s mind, but leave optional conversation strands unprompted; also, to have a reasonable leavening of cases where, e.g., the NPC asks a yes/no question where no additional prompt is really necessary.)

In any case, in conversation scenes, we have lots of narrative development, but two slowing effects: each action produces lots of material to read, and it’s impossible to plan sequences of actions. There’s no flow. The player may not be able to get stuck (since there are no puzzles), but he may run out of energy.

People critique compass movement in games — especially when the player must repeatedly traverse a large map — as unrealistic, boring, and confusing to novices. But one thing I will say for it: it allows interludes of automatic play, where the player can essentially go on autopilot. That may not sound like much of a commendation, especially if the IF in question is trying for literary value, but I think from the perspective of pacing it is valuable for the player to be offered interludes of relatively quick, low-intensity play to cleanse the palate before another bout of conversation.

So challenge is to come up with styles of interaction that are complementary to conversation interaction — smaller amounts of text output, more opportunity for the player to anticipate future moves — but which are still interesting enough to belong in a heavily narrative game.

A good combat system might actually fit that description, which is one of several recent developments making me a little more friendly to the idea of simulated combat in IF. (Not purely randomized, though! Possibly not randomized at all.)

That doesn’t solve the problem if all your characters are peaceable or your plot doesn’t have scope for violent conflicts, though.

Hm.

Sonny

Sonny is a flash RPG, mostly tactical fighting with level-up abilities. It’s a pretty nice piece of work, in that the design is smooth and there’s some nice voice acting and it starts out with a narrative hook in which it’s not clear that the protagonist knows who/what he is, though the player does.

The game totally irked me, though, because about 1/3 of the way through the putative plot, the gameplay stops pursuing it. There stop being narrative interludes. The rest of the play is hack-and-slash stuff with no framing. There isn’t really an explanation for why this happens.

From looking at the comments on Krinlabs’ forums, it looks as though the designers just ran out of time writing the original, and intend maybe to come back and address some of the loose ends in Sonny 2. But grr. I feel as though the first game cheated me of what it promised — and didn’t even offer a good explanation about why the story cuts off where it does — so why should I trust that Sonny 2 will make up for these sins?

Instead, I made up an interpretation of the game which makes it make sense on its own. I find it aesthetically pleasing. It’s not the canonical reading, and I’m sure Sonny 2 will blow my interpretation out of the water. But if you’re interested, spoilers after the tag.

Continue reading “Sonny”