Hidden Door is creating social, text-based adventure games using generative AI, and they might actually be fun.
I recently tried a game that generates NPC dialogue with an AI chatbot, and within minutes I was arguing with a hard-boiled cop about whether or not dragons are real. “Large language models” like ChatGPT are unpredictable, habitual bullshitters, which makes them funny, but not very good videogame characters. Hidden Door (opens in new tab), a company founded by long-time AI developers, says it can do much better.
I didn’t get to play Hidden Door’s game, which is really a platform, but I spoke about it for an hour with founders Hilary Mason and Matt Brandwein at the Game Developer’s Conference last month. What they say they have is a way to generate multiplayer text adventures set in existing fictional worlds—like Middle-earth, for example—that can respond to any player input and tell structured stories with surprises and payoffs that, unlike so many AI chatbot conversations, actually make sense.How it works
To emulate a fictional world, Hidden Door trains its machine learning system on the setting’s source material, which could be all of the Lord of the Rings books and appendices, for example. (This would be something they’ve licensed from a copyright holder, or that’s in the public domain.) With help from a general language model, Hidden Door could then generate Tolkien-esque text that would probably include lots of references to rings and orcs and hobbits. Without constraints, though, the bot might just say “behold!” a lot while telling you that the government invented birds. This is where the work of turning a predictive text generator into a storyteller begins, and surprise surprise, it requires human design and writing, just like any other game.
Using a combination of AI trained on public domain fiction and manual work, Hidden Door says it has created a “story engine” that can mix and match storytelling forms with situations and characters to produce dynamic adventures for multiple players, each of whom controls a character with text commands.
“We pre-generate, and handwrite in some cases, bits of narrative in the engine that are tropes,” Mason told me. “So, we have one for a bar brawl. That trope, a bar brawl, often involves a found weapon, somebody who’s inebriated. And so we’re able to take that narrative, and then ‘found weapon’ becomes something that can bring in other bits of narrative, like what do you make a found weapon out of? You grab a bottle.”
There are “tens of thousands” of these manually written or edited tropes, Mason says, “and they get pulled together dynamically” to build stories that, if all goes well, should feel like they fit into the fictional world being emulated, both in writing style and in the kinds of stories being told.
“We explicitly model narrative arcs in a variety of ways,” said Brandwein. “So, setups, payoffs, nested arcs, like subplots: they’re explicit data structures that are tunable. Is this a three act kind of author? Is this some other kind of author?”
In some cases, the system must be strictly constrained by the licensed material: Spongebob is a vegetarian, Mason and Brandwein have learned, and so any Spongebob story generator would have to respect that. Mason described “rules” or “laws of physics” that they define for the worlds. Until we can try it ourselves, we’re taking her word that this actually works (it’s not an easy thing to QA test, she admits), but as examples: “Is there space travel? Are there laser guns? If it’s Star Wars, somebody has to say ‘the Force’ every scene, or it isn’t Star Wars.