Thursday, December 20, 2007

Story Arcs

This post and this post are actually related topics, as much as they don't seem to be.

In the second of those links, I say that a player playing a single-player game can be said to be having a conversation with the game. The player decides how to approach something, and the game responds, and the player says another thing... the player is in a conversation, trying to figure out what the game has to say. The game engine is their language of discourse, and what kinds of things they can talk about depends on the game engine.

In the first link, I say that the player can't remember details if he quits for a while. This makes a lot of sense, because most people don't simply pick up a complex conversation where they left off. If you talk to someone about something deeply complicated then break for lunch, you don't come back and instantly pick up again. There are a few missing beats, you have to reorient yourselves. And if you don't talk to them for days, the nuances of your conversation are all but gone.

So here's an interesting idea. Instead of treating a game like a linear path, how about treating a game like someone you have conversations with?

If you have someone you talk to a lot, you don't simply have one conversation that has breaks in it. You have a new conversation every time you talk to them, but usually the conversation builds off the previous ones.

In a complex game like Civilization or Starcraft, your conversation with the game gets very nuanced: there are a lot of little details you keep track of and occasionally return to. This city needs to produce culture, that soldier needs to board this ship... lots of little details.

Earlier, I said that loading a game like this is always a pain in the butt, because I can't remember those details. I lose a lot of the sense of connection that I had. Other games fade as well, although not as quickly because they generally have fewer nuances.

I suggested that it should be possible for a game to have a kind of re-introduction for all the nuances you're likely to forget.

This is sort of like if you have a complicated talk on, say, Russian politics with a friend. Then you go back to your friend and he pulls out a notepad with a dozen details written down on it - threads of conversation you have forgotten and he wants to pursue.

But people don't do this, because both sides forget. So when you go back to your friend and want to talk Russian politics again, you pursue a somewhat different focus and drop all the loose threads that don't matter. You've had time to think about the subject and you want to talk about some specific thing.

If your friend didn't forget those loose ends, you'd get irritated really quick. Most of them don't really have anything to do with this new conversation.

Now, if a game can be treated the same way, that would mean that every time you come back to a game, it's a new conversation with a memory of the old. The game doesn't forget what happened in the old game any more than your friend forgets Russian politics, but it doesn't bring up the details that don't apply any more.

For example, if you loaded up a Civ game after a week away, the game would decide which nuances you've forgotten, and will decide on a primary thrust or two for the game to "talk" about. Maybe you're having a budget crisis, or there's a war on the eastern front, or you're colonizing a new continent.

The game would see that these are the things you're likely to remember, likely to want to "talk" about. You probably don't really care that you had a dude building a farm somewhere, or that one of your cities is unhappy. These are forgotten nuances that simply don't matter and if the game floods you with them, you'll get irritated.

So the Civ game temporarily simplifies to allow you to focus on what really matters. This could be done by time dilation (turns here are only one year, whereas back on the mainland they are ten years) or by giving the AI control over the details until you choose to reclaim them.

In an RPG like Oblivion, you can take this up a notch and actually let the player choose the new "topic of conversation". Last time he played Franzibald the Wizard. This time, he might choose to continue to play Franzibald, but many of the nuances (old, forgotten missions) will be cleared. If it's been a long enough time, it can clear even things like major missions and exactly how much gold you have and simply say "We find Franzibald in this new location, having completed his quest..."

Alternately, the player might choose a completely new topic rather than trying to continue the old topic. Maybe he wants to play a barbarian, or a princess, or a villain... and the game can allow him to either make a character or take over an NPC to explore this new topic.

The idea here is that each "conversation" builds a bit more world. Instead of reintroducing all the useless bits, you can just leave them in the background until your conversation turns in their direction again. You build a very rich world that the player knows very well, but you don't swamp him with details.

This would also please people like me, who like to replay the first five hours of Oblivion eighty times but can't stand the other forty hours.

What do you think?

8 comments:

Anonymous said...

This is really interesting. The thing about a game like Civ tho is that different people like different aspects of the game. Unless you can come up with some way of detecting what portions of the game the player likes best, chances are good that 'dropping' some threads will occasionally drop something the player likes by default. For example, what If I'm the kind of guy who really likes keeping my kingdom in order, happy and organized. That's where I find my fun. When a war happens, boy that's a drag. I just can't wait to get it over so I can go back to building nice symmetrical roads and keeping all my vessels happy. (I don't like to play this, but I think you get my point). If I save the game just after a war and come back 2 weeks later to find that the game is basically only exposing the war aspects to me, that would make me want to just start over, not figure out how to regain control of the parts I like.

I know this would be surmountable by tracking play patterns and the like. Just something to think about.

Very interesting approach though!

Craig Perko said...

Well, an easy way to do it would be to make it easy to recover from wrong guesses. You could state up front "I've taken the liberty of automating your builders: click here at any time to un-automate them and resume command."

Also, remember that this is built primarily for those times when you're away from the game for a significant amount of time... it's not like you go away to dinner and when you come back the game hardly remembers you!

brackish meadows said...

This is useful stuff.

My thoughts on this mirror jojo's (How do you determine which threads to keep and which ones to drop?) so I'm only commenting to go off on a tangent.

The problem I'm struggling with currently is how to make a game adjust a story to suit different player interests, without actually asking the player what their interests are (because it'd break immersion and because the player might not actually know what it is they want).

For instance, the game might detect that the player would be interested in redemption stories, dark pacts, tragic romances. Or they might be into morality tales, coming-of-age arcs, underdogs, whatever. But how do you even detect that? More importantly, how do you tell if you're getting it wrong?

Craig Perko said...

Matthew: I've talked about that in the past, and here are the two easiest ways I've found to do it:

1) Explicit. Give the players some kind of resource that they give to other characters, weapons, monster types - anything you feel like altering based on popularity. A lot of players are happy to say, "that's cool, she gets a point", and there's really no possibility of error.

2) Implicit. So long as your players always have a choice of companions or goals, they will tend to spend more time on the ones they like best. It's fundamentally the same system as above, except we give out the points for the player.

This is heavily swayed by rewards, though. For example, if a given quest gives out a good reward, players are going to be likely to do it regardless of how much they like it. This basically ends up assigning points to the wrong stuff in those situations.

Also, the technique I call "wolfpack memetics" is helpful: when you're building your characters/subplots/abilities, create a very diverse range. While many of them may serve no purpose other than chasing the player around a little bit, at least a few of them will hit home. You can then expand on those and leave the others in the background.

Chill said...

I think one way to work this is simply design the game so that many of the threads are in the background even while playing, and only take greater importance when you look at them. Say, making economic decisions in civ game every 5-10 turns or have the economy become more important and nuanced as the player messes around with it more.

Also, I think how the game is simplified has to be dependent on what player feels when he boots up the game again. Taking the civ game example again, when the player comes back you can have a quick menu that has something either as simple as "War!" and "Peace!", or perhaps a list of issues: "Trouble in Russia," "Economic Recession in the Northeast," and "Gentrification of the Urban centers" and based on that pares the game down.

Or go the other way. Maybe the purpose of each play session is to add some link to the storyline, so that the game suggests the next event to focus on. And the player can either focus on it, or get distracted by something else. An RPG that explores this might interesting...

Patrick said...

I like the idea of making time relative to different localities (either in a literal sense or a dynamical node sense) A LOT. I think it could apply to games, and work simply off functional density, without having to do to much PAC-type stuff.

Craig Perko said...

Chill: Yes! Those are the same basic thoughts I had. :)

Patrick: I liked that idea, too.

Anonymous said...

http://www.djmal.net/thaspot/members/viagrakaufend
[b]PFIZER VIAGRA REZEPTFREI BESTELLEN VIAGRA[/b]
http://www.serataanime.it/forum2/member.php?u=336
[b]PFIZER VIAGRA VIAGRA REZEPTFREI BESTELLEN[/b]
VIAGRA BESTELLEN eur 0.85 Pro Pille >> Klicken Sie Hier << BESTELLEN BILLIG VIAGRA CIALIS VIAGRA Rezeptfrei ONLINE VIAGRA KAUF
http://www.barroco.comyr.com/member.php?u=3
[b]VIAGRA Suisse BILLIG VIAGRA REZEPTFREI BESTELLEN[/b]
[url=http://www.einvestorhelp.com/member.php?u=37776]VIAGRA information[/url] - VIAGRA on line
[b]VIAGRA prices VIAGRA PREISVERGLECH REZEPTFREI[/b]
[b]VIAGRA fuer frau PREISVERGLECH VIAGRA[/b]
[url=http://www.zonatuning.com/members/viagrakaufend]VIAGRA BESTELLEN PREISVERGLECH[/url] - VIAGRA Germany
[b]VIAGRA preis VIAGRA BILLIG PREISVERGLECH[/b]
[b]VIAGRA Rezeptfrei BILLIG VIAGRA REZEPTFREI BESTELLEN[/b]
[b]VIAGRA® kaufen
VIAGRA Deutschland
VIAGRA online kaufen
VIAGRA on line
VIAGRA alternativ
VIAGRA rezeptfrei
VIAGRA Kaufen
VIAGRA Apotheke[/b]