Last night, I finished skimming through Procedural Storytelling in Game Design, and I decided to use this post to capture some of my reactions to it. The book is a collection of essays edited by Tanya X. Short and Tarn Adams, published in 2019 by CRC Press. It consists of 28 chapters, which are divided into the themes of Structure and Systems, Worlds and Contexts, Characters, and Resources.
Kate Compton's first chapter provides a good overview of generators. In fact, the first chapter is an edited version of her public tumblr post, so go ahead and check that out. She presents an AI-lens on generation, framing the capabilities of generators in terms of the human skills they mimic. Then, she summarizes six approaches: distribution, parametric methods, tile-based, grammars, constraint solvers, and agents and simulators, which includes traditional CS techniques such as steering behaviors, genetic algorithms, and cellular automata. This essay also defines the 10,000 Bowls of Oatmeal problem as one of the complications of producing meaningful generators.
I can easily generate 10,000 bowls of plain oatmeal, with each oat being in a different position and different orientation, and mathematically speaking they will all be completely unique. But the user will likely just see a lot of oatmeal. Perceptual uniqueness is the real metric, and it’s darn tough.
From this introduction, I had assumed the rest of the book would dive deeper into each of these ideas. I was disappointed, then, when that wasn't the case. Most of the essays are descriptions of how procedural storytelling was used in different projects—some familiar to me, some not. They tell of design challenges and constraints, and the stories are interesting but generally atheoretical. Perhaps, once again, my hopes for formalism in game design were too high. I was reminded of a recent conversation with a technical friend and game designer, a conversation in which we both experienced finding lots of advice and stories but relatively little theory and practically no empirical evidence.
It leaves the book in a funny place: I was able to pick up on some lessons from the storytelling within because I've done similar work, but it's not the case that I could hand this to an undergraduate and ask them to explore some of the techniques presented in the book. There's just not enough detail. However, I did get links to several projects that were hitherto unknown to me. These include the tools Kate Compton's Tracery, Bruno Dias' Improv, and James Ryan's Expressionist, as well as Stéphane Bura's essay, "Emotion Engineering in Videogames." I look forward to taking a closer look at these over the break.
There were a couple of other generally useful ideas that I picked out of the reading.Adam Saltsman's chapter, "Plot Generation," introduced me to the useful concept of froth, which he claims emerged from the LARP scene. He defines it as "the way we tell each other stories after a match and the way we construct narratives about all the cool stuff that happened during the game—that whole phase of play that is sort of after the game but sort of not."
Tanya X. Short's chapter, "Maximizing the Impact of Generated Personalities," includes a useful counterpoint to traditional narrative design. The usual advice for a writer is, "show, don't tell;" indeed, that's something I regularly tell my own students. However, for generated characters, her advice is "tell, then show." That is, use the affordances of videogames to give the player a hint about the character and then reify that personality through an interaction. Her example from The Shrouded Isle shows how a character has the "accusatory" personality tag, which allows the player to quickly recognize this as a part of the character's personality, rather than having to establish it through a Karamazovian mountain of text.
The title of Darius Kazemi's early chapter emphasizes his main point: "Keeping Procedural Generation Simple." This is echoed in a few other chapters as well, that procedural generation should be simple and deployed both thoughtfully and tactically.
I have been a fan of Dan Cook since playing Triple Town and reading at The Lost Garden, although I cannot remember now which of these came first. (Egads! The Lost Garden URL has changed and the old RSS feeds stopped working three years ago, but Dan has been posting things. Well, now I have even more stuff to read over the break. Fellow Feedly users, update your feeds.) It was interesting to read his chapter about Triple Town and contrasting the point he was trying to make with how the game was received and played. He is quite frank about the unexpected disconnection, its implications for design, and how some of the same mistakes emerged in different ways in future projects.
The most interesting technical chapter was "Procedural Descriptions in Voyageur" by the aforementioned Bruno Dias. In this chapter, he digs into his tool, Improv, and describes how a set of increasingly complex filters and generators can be used to solve a creative design problem.
I've had some procedural storytelling ideas kicking around my "Game Design Ideas" folder for some time. More recently, as part of a grant proposal, I spent some time with Reigns: Her Majesty to think about its narrative system and compare it to an old project of mine, Social Startup Game. Through my interest in Flutter, I also came across Filip Hráček's Knights of San Francisco, which got me thinking more about generative narrative as a presentation layer for a simulation. I am inspired to try making something of a similar genre, but knowing that the first three steps in Glassick's model are clear goals, adequate preparation, and appropriate methods, I hoped to find something in Procedural Storytelling in Game Design that would push me in a fruitful direction. Unfortunately, this was not the case. I am eager to look into those items I've shared above, and maybe therein I will find some techniques to sink my teeth into. That said, it's also possible that everything I need to know is already in my head: after all, judging from the stories in the book, it all boils down to the prudent use of grammars, tiles, parametric methods, and automata. I suppose, then, that I'm just at that point where I need to choose between research and making the first prototype. I'll let you know how that goes.
No comments:
Post a Comment