More on Seven Fables: Planning a Conversation Model

The Seven Fables project I covered a week or so ago is now successfully Kickstarted and then some. With more resources available than they initially expected, the authors are thinking about how they might add conversational characters to the project, using some chatbot technology they’ve worked with in the past.

Here Mark Stephen Meadows and I talk through some of the design and tech issues involved.

ES: Why are you looking at adding chatbot technology to this piece?

MSM: Stories are almost always about people. Narrative’s core is about personalities: people, interactions, society, desire, fear, love, weakness. These are the building blocks of narrative and without people in a story it becomes more an exploration of architecture than a drama or adventure. That’s what IF is often about. Sure, it’s fun to poke around in a dungeon and discover doors that open and close. But I find that hearts that open and close are far more interesting.

Gollum? Princess Leia? Kung Fu Panda? Brothers Karamazov? Even great adventures like that are about the people, and what drives and limits them.

ES: Tell me what excites you about the chatbot technology you’re planning to use.

MSM: The problem with most chatbots these days is not the technology. Even simple systems like AIML have enough hooks and gears to work in a piece of IF as a believable character. The problem is design.

Usually chatbots lack context. They’re like abandoned people, homeless wanderers, that awkwardly roam the streets, looking for conversation. “Hi! My Name Is Bob! How Are You Today?” a chatbot might say. I dont want to talk with these chatbots. They’re drek, informational bums. Just like a person walking up to you on the street saying the same thing. “Hi! My Name Is Bob! How Are You Today?” I would do my best to politely brush him off and just keep walking down the street. But if there’s a design and narrative component to this then it starts to get interesting. If, for example, I see a small green man with dragonfly wings sitting on a post office box, asking me to open it because his faerie-wife is trapped inside, then I’m far more inclined to talk with him than the guy named Bob. Chat is not interesting simply because it is chat. It has to have a context. Chatbots are boring largely because they lack that context. NPCs / NPGs and chatbots should be given a context that allows them to serve a function. Give the bums a job.

This kind of design is, like writing, as much about psychology as anything else.

Once upon a time, in 2007, my company HeadCase had developed some technology that showed how a personality could be distilled from a conversation. We did it with Arnold Schwarzenegger. We were using ‘scrapers’ – an automated system that would traverse websites, search for first-person interviews, drag those back into a
database, snap off chunks of the interviews that were relevant to similar topics, ideas, and categories, and then rank that stuff according to frequency. Then we asked the system a question. So, for example, we asked the Arnold Schwarzenegger system, “What do you think of gay marriage?” and it answered, “Gay marriage should be between a man and a woman, and if you ask me again I’ll make you do 500 push-ups.”

It was Arnold. Like a photo, it was his likeness. This was, really, an authoring technique for NPCs. The goal was to take interviews and be able to generate NPCs from them.

Continue reading “More on Seven Fables: Planning a Conversation Model”

IF Demo Fair themes: procedural generation

A couple of the submissions to the Demo Fair focused on procedural generation of content or of surface text. (There was meant, in fact, to be another demo to do with narrative generation that didn’t get finished in time; a real pity.) This wasn’t something I’d explicitly suggested as a focus for the program, but it emerged from the process a bit.

Continue reading “IF Demo Fair themes: procedural generation”

A tangent about marketing

This is a spin-off from the post about Jon Blow’s remarks on the IF parser, but it goes in a different direction, so I wanted to take it back to the front page.

I’ve been having a comment exchange with a commenter named Veridical Driver, who suggested a number of possible improvements to the IF interface (automapping, journaling events as they happen, bolded words to show what’s interactive, etc.). I pointed out that there are games that try most of those things; Veridical Driver responded that it’s not enough because IF should be standardized on those features.

So this post started as a response to Veridical Driver’s last comments, especially these bits:

These are things that the IF community may have experimented with, but not things that are any way standardized in the IF interface. The standard IF interface has barely changed from the Infocom days.

Adrift may have mapping, but Inform and z-machine is the standard for IF and do not. Some games might have custom note systems, but this is really something that should be standard, just inventory is standard in all IF. Sure, there is a keyword interface extension… but this kind of functionality should be a standard part of all modern IF.

…The problem is, you are thinking as an IF author, not as a gamer. You don’t like the ideas/features I mentioned, or suggestions other have made, because they constrain your artistic vision. But as a gamer, I don’t care, I just want some fun.

Nnno, I don’t think that’s quite it. Two of the examples I pointed to (Floatpoint, Bronze) are my own games; other projects of mine (especially Alabaster and City of Secrets) include graphical sidebar content that’s nonstandard but is designed to ease player experience and communicate game state better. So it’s not that I dislike these features categorically.

Where I’m pushing back is on the idea that we can or should enforce these features as a standard.

There I’m speaking not just as an artist, though I can think of several of my works for which the features you describe would be a bizarre and awkward prosthesis on the text — what’s automapping for in a one-room conversation game? what’s journaling for, in a game that runs for five minutes and is designed to be replayed?

But setting that aside, I’m also coming to this as someone who’s handled a lot of feedback on one of the most-used tools in the IF community for the last five or six years. People want to do a lot of different things with their interactive fiction, and they should have the opportunity to try their various visions. Some specific use cases, other than the artistic concerns I already mentioned, where your suggestions might be an active hindrance include

  • games intended for mobile platforms or small screens, where screen real estate is at a premium
  • works for the visually impaired, which need to be simply accessible with a screen reader
  • works written with a heavy narrative focus, which may put aside the concept of “rooms” entirely in favor of a different style of presentation; these aren’t always even intended for a gaming audience at all

These aren’t hypothetical; they’re things that people are actually working on and are the basis of real support requests.

So the issue is, tools that force too many features run a big risk of narrowing the creative range to just the projects that work well with those features. Inform has tried to err on the side of making a lot of things optional — through extensions — while not imposing too many constraints through core library decisions. This is always an area of compromise, and there are some features we’ve added that have made Inform games larger, to the chagrin of those optimizing for very small, low-processing-power machines. So these things are always on our minds.

I’m happy to say that a lot of progress has been happening, and continues to happen, on the extensions and interpreters side. The desire to foster collaboration, conversation, and creative thinking about IF interfaces is a major part of the impetus for the IF Demo Fair we’re putting together for PAX East.

Still, this opt-in stuff is obviously more work, and it’s not going to force authors to include the features you’re looking for — and the novice authors are the ones least likely to put in the extra work if the tool doesn’t make them do so. I typically consider it a good sign — not always but often — if I start up a competition game and find that it has cover art, a splash screen, a non-standard status bar, etc. That’s not because I think those are universally important, but because it means the author put some time into generating non-default content. Which means he thought about it. Which is good.

From a game consumer’s point of view, I think what would help the most is curated collections and branding.

Continue reading “A tangent about marketing”

You can also see some marketing here.

So Jonathan Blow’s recent criticism of the IF community has been getting a lot of attention (Aric Maddux, Chris Klimas, Robb Sherwin, Stephen Granade, indiegamer, metafilter), and that may be why we got a spin-off Metafilter thread on the topic of parsers today.

I have a couple of thoughts about this.

1. This is Jonathan Blow. He tends to be outspoken — what he has to say about adventure games in this article is nothing compared with what he has to say about social games, which he labels as outright evil. There’s some content backing both points, but it’s been generalized and strongly stated for effect. While I disagree with a lot of the substance and think it could stand to be quite a bit more nuanced, he’s giving an interview about a future product, in which he has successfully said a lot of provocative things, generated a buzz, and positioned himself memorably with respect to a couple of other schools of gaming. To a reader less sensitized than we are, this might come off as no more than “this game will be content-rich, not work like social games, and will have some of the appeal of an adventure game, but more accessible.”

2. That said, the examples that he’s using suggest that he’s not really responding to the latest and greatest. So I feel free not to take them especially seriously as criticism of the latest community output.

2a. Yeah, the hat tip to the awesome plot device that is amnesia — that’s worth a snicker, but so what? Someone sufficiently skilled could still do a cool game about amnesia. Whether that person is Jonathan Blow remains to be seen.

2b. It looks like he is taking a specific potshot at Telltale’s episodic adventure games. I haven’t played by any means all of them, but I find them relatively free of maddening adventure game logic, pleasantly accessible, and really funny. That said, they are closer to graphical adventure roots than much modern IF is to its roots. IF has made forays into the puzzleless, the systematic/simulationist (where puzzles are based on a standard set of learnable rules and multiple solutions are available for most problems), and the tactical (where there is a whole scale of possible win/loss via randomized combat, etc.) I do occasionally wonder what would happen if there were more graphical adventure games that explored some of that territory — though I’m sure there are more than I’m currently aware of. See also Life Flashes By.

3. The idea Blow repeats here is a standard meme. On the big scale of Cluelessness about the Thing He Is Critiquing, this rates only about 5 picoEberts. And that’s our problem to solve. There will always be a serious barrier to sharing and marketing IF as long as the standard perception is that it’s about fighting the parser.

Part of the problem is that lots of people haven’t really played much IF since 1980-odd; another part is that the way IF has developed isn’t in the direction that they think it should have developed. There are good reasons why the parser hasn’t (and shouldn’t!) become a chatbot that pretends to understand all player input, but that’s a natural direction to wonder about; see this old chat with Brian Moriarty, who, I think we can agree, has more of an insider view on the problem than Blow ever has.

Meanwhile, we’ve made some progress on teaching the player IF affordances — which I think is the real solution here — but it’s not a finished process. We’re working on these issues, in a lot of different forms and projects.

Anyway. Long story short: yeah, I agree Blow is incorrect about what we’re doing and about our evolution. But I don’t think his being off base is really anything more than a reminder of something we all already knew: IF has PR problems. Our best steps forward aren’t visible enough. They don’t do enough to supplant what people already think about interactive fiction.

Randomized variation

Something that’s come up on several of my projects recently is the question of how much randomized text variation can add to the sense of depth in a scene.

In particular, how good a job does it do of simulating lots of different, hand-crafted pieces of content? Are there better and worse ways to deploy random content for this purpose? Do you have a generic sentence form with a lot of randomly swappable elements, like

A red/brown/black/grey dog/fox/squirrel scampers/runs/hurries past you into the undergrowth. ?

Or a table with a lot of hand-rolled sentences, each unique, but each going to be the same every time it appears? Or some variation on all these?

For interactive fiction, this tends to come up a lot in cases where we want to make the world feel deeper and more fleshed out. We want a player to be able to browse a bookshelf and find the titles of many many books. Or hang out in an outdoor area and see lots of environmental messages suggesting people going by, animals passing through, etc. Sometimes it’s possible to rig up a full simulation for this kind of thing — that is, actually track dozens of animal objects running through the gameworld — but usually that’s a lot of overhead for a lightweight effect. (And see Matt Wigdahl’s comments on the “foley” system in Aotearoa.)

My current operating theory is:

1) it’s good to have a mix of more generic sentences with lots of variation and more hand-crafted sentences with moderate variation. This keeps things from feeling too predictable.

2) where random variation is used, the most productive way to use it to maximize the *impression* of content is to construct pairings/arrangements of random elements that are themselves striking and memorable or distinctive.

I brought this up on the #craft channel on ifMUD, where I had the following conversation with Andrew Plotkin (“zarf”) and Dan Shiovitz (“inky”). They had a couple extra points I hadn’t come up with, so, with permission, here’s what they said:

Continue reading “Randomized variation”