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.

Nick Montfort’s Curveship is a system for procedurally generating descriptions of what is happening in the story, separating the world model (and characters’ knowledge of that world model) from the textual representation of events, and allowing the author to create various “spins” to affect how those events are narrated.

Zarf had the opportunity to go to Nick’s longer presentation on the system (I was busy dealing with illness at that point), so I’ll direct you at his write-up to explain how the system works, rather than trying to generate my own.

Speaking purely for myself, I’ve yet to see a Curveship project that seemed to me to be living up to the theoretical capacity of the system. I think my ideal demo might be something like a murder mystery where the murder is committed each game in a semi-randomized way (change of murderer, weapon, victim, venue); NPCs observe different things; and then when you interview the NPCs, they procedurally generate their descriptions of what they saw and what they were doing at the time. Of course, certain NPCs would be motivated to omit or alter self-incriminating information. We already have some IF mystery games with gameplay that’s not about solving the game once but about learning strategies for solving them in general; on the other hand, they tend to rely as much or more on physical evidence changing (because that’s easier to handle programmatically with existing systems) than on the evidence of the NPCs. On the other hand, mystery games that rely heavily on NPC actions and reports tend to be hand-rolled one-offs with single solutions. It seems like Curveship might be able to handle both of these at once, though a lot would depend on the work put into dynamically generating alibi reports that were not only accurate but engagingly written.

Clara Fernandez-Vara, Michaela Lavan, and Alec Thomson presented a demonstration of a system to dynamically generate puzzles for text based or other types of games. The designer would create a large database full of objects and their possible features (e.g., being a container, or being made from two component objects also in the system, etc.); then the system would run and produce some puzzles by selecting certain items to be “goal” objects and seeding the game world with the component parts needed to create this. As a system, it is focused on helping designers design:

This project focuses on methods to generate narrative puzzles procedurally. The point-and-click game Symon was a proof of concept of what an adventure game would be like if players had the chance to restart the game and get different puzzles, because they were being generated by the system. The project here presented are a set of tools for designers which eventually should be compatible with different development environment, including those dedicated to interactive fiction . The tools include a series of building blocks to build puzzle patterns, and a database editor, which designers can use to create the characters and items involved in the puzzles.

(There are a number of projects out there right now that use AI to help with the design phase rather than governing components of the game at run-time; in fact, Michael Mateas’ GDC presentation of student projects from UCSC mentioned several of these, though intended for platforming level design rather than puzzle design.)

One thing I really like about this is the way it encourages authors to think about systems of interaction. IF puzzle design very often is about creating one-off set pieces, and I consider this unfortunate. I really prefer games that select some particular type or mode of interaction and then ring the changes on that. First, it’s more likely to create a consistent and solvable experience for the player; second, there’s a sense of learning how the world works in the course of play that can have narrative payoff as well as gameplay payoff; third, it’s less likely that the game will be recapitulating the same dull set-pieces about locked doors and computer passwords that we’ve all played too many times. So a design tool that encourages the author to design a finite number of interaction types and then play interesting games with those seems like it would help counteract that tendency.

Still, my sense about this particular project is that it’s an interesting start rather than a tool that would actually be of great use to me at the moment. Generating individual puzzles based on game-world rules is not that difficult to do; the challenging part is about coming up with structures of puzzles that will be fair to the player, encourage playful reuse of objects, develop a particular way of thinking or engaging with the world, and avoid any chance of permanent stuckness.

I could imagine the puzzle-design system being developed in one of several directions. One might be to make it build a whole sequence of puzzles based on guidelines (here’s my database of Stuff; my game is called “Ode to Bucket”, and I want as many puzzles as possible that make use of the bucket object).

Another would be to build it into the game world and use it to check the solvability of various puzzles, enabling more open-ended gameplay with more emergent effects. If it found that the player was going to need a container but had already used up all the game’s existing containers in various ways, it might spawn a new one into the game world near the player. Maybe it would have some additional environmental clues so that it would know, “hey, I’m adding a container in the kitchen area, so perhaps the plausible thing to have here would be an empty jar.” This is basically an attempt to end run around the “emergent failure” problem in emergent puzzle design: that it’s very hard to design a game with highly open-ended physics and vast player freedom, and yet still guarantee that the player will never make himself stuck.

14 thoughts on “IF Demo Fair themes: procedural generation”

  1. I’m not sure why I find myself in these contrarian positions. Seriously. It’s not to be contrarian. However…

    I identify games as having base systems for puzzle development almost immediately. Savoire Faire was an excellent implementation of just such a game with a base magic system.

    I don’t have any problem with these types of games, but I do feel strongly that people without serious programming skills will find this course of game authorship extremely difficult.

    On the other hand, we can much more easily teach and train new authors to develop their setting and story and then naturally devise puzzles within those constructs. They may rely on standard puzzle logic within these parameters, but by educating authors on good and bad puzzle design (see Bob Bates article on the subject) we will still eventually see great games without base puzzle systems.

    Another way to say the same thing is that only a few people are capable of inventing base puzzle systems as you prefer and I highly doubt most people enter into story design by thinking of an all-encompassing base system.

    It’s a choice and a preference, but I tend to like the organically developed games more than system-based games, even though I like and respect the ingenuity of system-based games.

    As it happens, I am busting out of my own preferences and am developing a system-based series of games now. I am slightly intimidated by the task.

    David C

    1. Fundamentally, I think it’s quite difficult to wind up with a structure other than beads-on-a-string or very simple trees if you take the approach of writing the story first and then gating it with a bunch of ad hoc puzzles.

      I’m not at all devoted to the idea that systematic interaction has to be highly physical, though Metamorphoses and Savoir-Faire both go that way. But where there is some consistent style of interaction, it’s easier to give the player significant agency, because they can anticipate and plan outcomes; it’s easier to do tell some of your story through the gameplay itself, because there is some answer to the general question “what does the player do in this game, and what approaches does he learn?”

      Or, to come at this from another slightly more brutal direction: I am pretty bored by most of the puzzles that appear in the sorts of games where the puzzles were an afterthought. Even if the solutions abstractly conform to some general rules of good practice, a la Bates and the player’s bill of rights and so on, it’s very likely that they’ll be recycling some cliches and that they’ll be only weakly interwoven with the action.

      So from my point of view, “choose a type of interaction that suits the story you’re telling, and then explore that one type of interaction rigorously” is more organic than “write a story and then stick in some disguised locks and keys.” If you’re doing the latter exclusively, it’s possible you ought to be writing a non-interactive short story instead.

      1. This is why adventure games have died, and briefly resurge, and die again. The hardcore players want interesting puzzles, and are bored by easy puzzles.

        “Easy/hard mode” helps, but good adventure games are a harmonious blend of puzzles and story, so you can’t just change the puzzles without also changing the story. Doing it “right” becomes a prohibitive aesthetic challenge, for diminishing financial returns.

        (Maybe we could procedurally generate puzzles for a given difficulty setting! … and procedurally generate an intriguing plot to match the puzzles! … someday.)

        But even then, most good stories are simply incompatible with interesting puzzles. So even if you had a murder mystery generator that could dynamically generate a mystery puzzle to match the player’s skill, it would still be boring for hardcore players, because it would only tell complex stories, and those mostly aren’t very good. (Complex murder mysteries are contrived.)

      2. @Dan: I think you’re conflating “difficult” and “interesting” and “complicated” into one category. I don’t need puzzles to be complex or even hard; what I want is for them

        1) not to be carbon copies of existing puzzles stuck in merely for the sake of having a puzzle there;

        2) ideally, to help me to understand and enter into the character, or otherwise receive some of the story — because by solving the challenges, I’m learning what sorts of things my character would do, or because I’m discovering my options aren’t as broad as I’d like, or I’m testing my assumptions about how the story world works and getting feedback;

        3) to be implemented in a way that is maximally responsive to experimentation. Systematic puzzles often meet this criterion better than non-systematic ones, because if the game works in a consistent way, it’s also easier to build systematic feedback that doesn’t just say “that didn’t work” but “that didn’t work because…”. And the player learns the rules, and may even gain a leg up on puzzle A from the process of solving puzzle B.

        All of those features are things that (in my opinion) actually make such content easier and more accessible to novices, and also more sophisticated in their storytelling applications.

  2. I guess the underlying truth to both of our stances is that talent wins regardless of methodology. If you look at Shadow in the Cathedral, the puzzles were all organically devised. They had a basis in story-telling, but they are not based on a system.

    And I’m pretty sure I agree that pasting on puzzles afterwards is a bad idea. When I say integrate puzzles based on the story and setting and characters, I mean more that as you develop your story, the puzzles should present themselves. It might be fruitful to do a little theory work (the community at-large) on how puzzles can manifest themselves within a story.

    David C.

    1. They’re well-above-average set piece puzzles, certainly; they’re also backed up by

      * a consistent aesthetic (puzzles tend to involve manipulating machinery and/or action sequences of some sort); and
      * a consistent structural relation to the story (in many if not all scenes, there is one substantial, multistep puzzle that controls your progress to the next event).

      So that’s helpful. (And Shadow is also an adventure romp that isn’t, as far as I could tell, particularly trying to communicate anything through the game’s procedural rhetoric.)

      I mean more that as you develop your story, the puzzles should present themselves.

      Yeeeah, that’s not the description of a design process. Sure, sometimes you luck into a story situation where there’s an obvious block in front of the player that correlates with an obvious thing your world model can handle. But, at least in my experience, there’s a lot more to work with even in terms of storytelling if you go into the situation knowing, “okay, my protagonist is a guy with abilities X and Y which the player can use” (and those could be superpowers, magic spells, a gift for talking his way around anyone, the power to intimidate, being small enough to hide in unexpected locations, whatever). The constraint of knowing what kind of action your story is about, and tying your characterization tightly to your gameplay affordances, makes for more productive brainstorming. For me, anyway.

      Having some core system(s) also makes it way, way easier to give wrong puzzle solutions some kind of in-story ramification, and to target puzzle difficulty so that it paces the story the way you want it to.

  3. [Tried to post this yesterday, but WordPress had problems and was in read-only mode.]

    I believe that one of Nick’s main inspirations in building Curveship is
    Exercices de style by Raimond Queneau, a work he explicitly
    mentions when talking about the system. In that book Queneau describes the
    same scenario in 99 different styles: the result is of course not a
    gripping novel or short story collection, but it is interesting
    experimental literature. I think that Curveship may be aimed at writers
    who want to take IF in that direction: experiments not so much with
    narrative and character as with prose and style. Rather than solving any
    of the problems of “standard” IF, it opens the way for a new kind of IF.
    (It is not a kind that I am at present very interested in, but thankfully
    that is not the measure of artistic validity.)

    I found the Vara-Lavan-Thomson system interesting and told the makers that
    they should integrate it into a rogue-like game; I’m not sure they knew
    what I was talking about. If you do have a game with randomised content
    and infinite replayability, a system like this could be used to add
    non-combat content — something most roguelikes have been short on. You
    would probably need to add some layers of redudancy (multiple solutions)
    and optionality (not needing to solve all puzzles) in order to keep it
    fun, but yes, I can see it work more or less as is.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s