Planet Interactive Fiction

October 18, 2019

These Heterogenous Tasks

IF Comp 2019: Slugocalypse

by Sam Kabo Ashwell at October 18, 2019 10:42 PM

Slugocalypse (Charlotte Blatchford, Twine) is a disaster story told with Twine. The cover pretty much gives you the setup: giant slugs are attacking small-town Britain. (Although that’s a duck, not an untitled goose. It’s a giant duck and you ride it.) The … Continue reading

The Digital Antiquarian

New Tricks for an Old Z-Machine, Part 1: Digging the Trenches

by Jimmy Maher at October 18, 2019 04:42 PM

One of the most oddly inspiring stories I know of in all computing history is that of the resurrection and re-purposing of the Z-Machine, Infocom’s virtual machine of the 1980s, to serve a whole new community of interactive-fiction enthusiasts in the 1990s and well beyond. Even as the simple 8-bit computers for which it had originally been designed became obsolete, and then became veritable antiques, the Z-Machine just kept soldiering on, continuing to act as the delivery system for hundreds of brand new games that post-dated the company that had created it by years and eventually decades. The community of hobbyist practitioners who spawned the Interactive Fiction Renaissance of the mid-1990s made the Z-Machine one of their technological bedrocks for reasons more sentimental than practical: most of them worshiped Infocom, and loved the way that distributing their games via Infocom’s venerable virtual machine made them feel like the anointed heirs to that legacy. The Z-Machine was reborn, in other words, largely out of nostalgia. Very soon, though, the hobbyists’ restless creativity pushed and twisted the Z-Machine, and the genre of games it hosted, in all sorts of ways of which even Infocom at their most experimental could never have dreamed. Thus a regressive became a progressive impulse.

In the end, then, a design which Joel Berez and Marc Blank first sketched out hurriedly at their kitchen tables in 1979, in response to the urgently immediate problem of how to move their DEC PDP-10 game of Zork out of the MIT computer lab and onto microcomputers, didn’t fall out of general use as a delivery medium for new games until after 2010. And even today it still remains in active use as a legacy technology, the delivery medium for half or more of the best text adventures in the historical canon. In terms of the sheer number of platforms on which it runs, it must have a strong claim to being the most successful virtual machine in history; it runs on everything from e-readers to game consoles, from mobile phones to mainframes, from personal computers to electronic personal assistants. (To paraphrase an old joke, it really wouldn’t surprise me to learn that someone is running it on her toaster…) Its longevity is both a tribute to the fundamental soundness of its original design and to the enduring hold which Infocom’s pioneering interactive fiction of the 1980s has had upon more recent practitioners of the form. Like so many technology stories, in other words, the story of the Z-Machine is really about people.

One of the more ironic aspects of the Z-Machine story is the fact that it was never designed to be promulgated in this way. It was never intended to be a community software project; it was no Linux, no Mozilla, no Java. The ideological framework that would lead to such projects didn’t even exist apart from a handful of closeted university campuses at the time Berez and Blank were drawing it up. The Z-Machine was a closed, proprietary technology, closely guarded by Infocom during their heyday as one of their greatest competitive advantages over their rivals.

The first order of business for anyone outside of Infocom who wished to do anything with it, then, was to figure it out — because Infocom certainly wasn’t telling. This first article in a series of three is the story of those first intrepid Z-Machine archaeologists, who came to it knowing nothing and began, bit by bit, to puzzle it out. Little did they know that they were laying the foundation of an artistic movement. Graham Nelson, the most important single technical and creative architect of the Interactive Fiction Renaissance of the 1990s (and thus the eventual subject of my second and third articles), said it most cogently: “If I have hacked deeper than them, it is because I stand in their trenches.”

Although the Z-Machine was decidedly not intended as a community project, Infocom in their heyday made no particular attempt to hide the abstract fact that they were the proud possessors of some unusual technology. The early- and mid-1980s, Infocom’s commercial peak, was still the Wild West era of personal computing in the United States, with dozens of incompatible models jockeying for space on store shelves. Almost every published profile of Infocom — and there were many of them — made mention of the unique technology which somehow allowed them to write a game on a big DEC PDP-10 of the sort usually found only in universities and research laboratories, then move it onto as many as 25 normally incompatible microcomputers all at once. This was, perhaps even more so than their superb parser and general commitment to good writing and design, their secret weapon, allowing them to makes games for the whole of the market, including parts of it that were served by virtually no other publishers.

So, even if highfalutin phrases like “virtual machine” weren’t yet tripping off the tongue of the average bedroom hacker, it wasn’t hard to divine what Infocom must be doing in the broad strokes. The specifics, however, were another matter. For, while Infocom didn’t hide the existence of a Z-Machine in the abstract, they had no vested interest in advertising how it worked.

The very first outsiders to begin to explore the vagaries of the Z-Machine actually had no real awareness of doing so. They were simply trying to devise ways of copying Infocom’s games — most charitably, so that they could make personal backups of them; most likely, so that they could trade them with their friends. They published their findings in organs like The Computist, an underground magazine for Apple II owners which focused mainly on defeating copy protection, hacking games, and otherwise doing things that the software publishers would prefer you didn’t. By 1984, you could learn how Infocom’s (unimpressive) copy-protection scheme worked from the magazine; by 1986, you could type in a program listing from it that would dump most of the text in a game for cheating purposes.

But plumbing the depths of a virtual machine whose very existence was only implicit was hard work, especially when one was forced to carry it out on such a basic computer as the Apple II. People tended to really dive in only when they had some compelling, practical reason. Thus users of the Apple II and other popular, well-supported platforms mostly contented themselves with fairly shallow explorations such as those just described. Users of some other platforms, however, weren’t fortunate enough to enjoy the ongoing support of the company that had made their computer and a large quantity of software on the shelves at their local computer store; they had a stronger motivation for going deeper.

Over the course of the 1980s, the American computing scene became steadily more monolithic, as an industry that had once boasted dozens of incompatible systems collapsed toward the uniformity that would mark most of the 1990s, when MS-DOS, Microsoft Windows, and (to rather a lesser extent) the Apple Macintosh would be the only viable options for anyone wishing to run the latest shrink-wrapped commercial software. This gradual change was reflected in Infocom’s product catalog. After peaking at 25 or so machines in 1984, they released their final few games in 1988 and 1989 on just four of them. The realities of the market by then were such that it just didn’t make sense to support more platforms than that.

But technical transitions like these always come with their fair share of friction. In this case, plenty of people who had been unlucky or unwise enough to purchase one of the orphaned machines were left to consider their options. Some of them gave up on computing altogether, while others sucked it up and bought another model. But some of these folks either couldn’t afford to buy something else, or had fallen hopelessly in love with their first computer, or were just too stubborn to give it up. This state of affairs led directly to the world’s first full-fledged Z-Machine interpreter to be born outside of Infocom.

The orphaned machine at the heart of this story is the Texas Instruments 99/4A, a sturdy, thoughtfully designed little computer in many respects which enjoyed a spectacular Christmas of 1982, only to be buried by Jack Tramiel under an avalanche of Commodore VIC/20s and 64s the following year. On October 28, 1983, Texas Instruments announced they were pulling out of the home-computer market entirely, thus marking the end of one of the more frantic boom-and-bust cycles in computing history. It left in its wake hundreds of thousands of people with 99/4As on their desks or in their closets — both those who had bought the machine when it was still a going proposition and many more who snatched up some of the unsold inventory which Texas Instruments dumped onto the market afterward, at street prices of $50 or less. The number of active 99/4A users would inevitably decrease sharply as time went on, but some clung to their machines like the first loves they often were, for all of the reasons cited above.

This little 99/4A fraternity would prove sufficiently loyal to the platform to support an under-the-radar commercial- software ecosystem of their own into the 1990s. For many users, the platform was appealing not least in that it never lost the homegrown charm of the very earliest days of personal computing, when every user was a programmer to one degree or another, when the magazines were full of do-it-yourself hardware projects and type-in program listings, and when one kid working from his bedroom could change the accepted best practices of everyone else almost overnight. The Z-Machine interpreter that interests us today was a reflection of this can-do spirit.

Infocom’s first taste of major success had corresponded with the 99/4A’s one great Christmas. Naturally, they had made sure their games were available on one of the hottest computers in the country. Even after Texas Instruments officially abandoned the 99/4A, there was no immediate reason to ignore its many owners. Thus Infocom continued to make versions of their games for the machine through The Hitchhiker’s Guide to the Galaxy in September of 1984. In all, they released fourteen 99/4A games.

But continuing to support any given machine eventually tended to become a more complicated proposition than simply continuing to use an already-extant interpreter. The Z-Machine in reality was more of a moving target than the abstract idea behind it might suggest. Infocom’s games got steadily bigger and richer as time went on, with more text, better parsers, and more ambitious world models. The original Z-Machine, as designed in 1979, had a theoretical maximum story-file size of 128 K, but the practical limitations of the machines running the interpreters kept the early games from reaching anything close to this size. (The original Zork, for example, Infocom’s very first game, was just 77 K.) As story files pushed ever closer to their theoretical maximum size in the years that followed, they began to exceed the practical limitations of some existing interpreters. When that happened, Infocom had to decide whether reworking the interpreter to support a larger story file was possible at all, and, if so, whether it was worth the effort in light of a platform’s sales figures. Following Hitchhiker’s (story-file size: 110 K), their fourteenth game, but before Suspect (story-file size: 120 K), their fifteenth, Infocom judged the answer to one or both of those questions to be no in the case of the 99/4A.

Barry Boone, the first person outside of Infocom to create a full-fledged Z-Machine interpreter.

As one might expect, this decision left a number of 99/4A users sorely disappointed. Among them was Barry Boone, a clever young man just out of high school who was already one of the leading lights of 99/4A hackery. Having read enough about Infocom to understand that their game format must be in some sense portable, he started doggedly digging into the details of its implementation. Soon he was able to make a clear delineation between the interpreter running natively on his machine and the story file it executed — a delineation the Apple II crowd writing for The Computist had yet to manage. And then he uncovered the big secret: that the interpreter packaged with one game could actually run the story file from another — even if said story file originated on a platform other than the 99/4A! Boone:

Having worked out the file format, I wrote a program to crunch the non-TI files and build the TI files. The resulting files appeared to work, but I quickly discovered [a] problem. If I converted an older game that already existed in TI format, everything worked perfectly. But with the newer games, there was a big problem.

The problem was that the interpreter software written for the TI had a number of bugs, many of which did not show up with the original set of games, but became all too apparent with the newer ones and made them unplayable. So I began a process of reverse-engineering the Z-Code interpreter for the TI. Once I reached a point of having recreated the source code, I began working on making the code more efficient, and fixing numerous bugs in the implementation. The largest bug I encountered was a vocabulary-table bug. Basically, the original TI interpreter would hit an overflow bug if the vocabulary table was too large, and the binary-search algorithm would start searching the wrong area of memory to look up words. This had the effect of making the last portion of the vocabulary inaccessible, and made the game impossible to play.

I also added a number of enhancements that allowed the games to load about twenty times faster, and modifications to play the games on TI systems equipped with 80-column displays. Finally, I had to make a second variation of the interpreter so that persons who had an extra 8 K of RAM (known as a Super Cart, or Super Space module) could play some of the games that required a larger memory footprint than 24 K of memory buffer. These games included Leather Goddesses.

Boone estimates that he finished his interpreter around 1986, whereupon he promptly began sharing it with his network of friends and fellow 99/4A enthusiasts, who used it to play many of the newer Infocom story files, transferring them from disks for other platforms. Boone was stymied only by the games from Infocom’s Interactive Fiction Plus line, such as A Mind Forever Voyaging and Trinity. Those games used an expanded version of the Z-Machine, known internally as version 4 — the mature version of the original virtual machine was version 3 — which expanded the available memory space to 256 K, far beyond what the 99/4A could possibly manage. Even without them, however, Boone gave himself and his mates ten new Infocom games to play — i.e., all of those released for the 128 K Z-Machine between October of 1984 and July of 1987, when this original incarnation of the virtual machine made its last bow in Infocom packaging.

But even that wasn’t quite the end of the story. An obscure footnote to Infocom’s history took shape in late 1988 or early 1989, when Chris Bobbitt, founder of a company called Asgard, the 99/4A software publisher that most resembled a real business as opposed to a hobbyist project, had the idea of contacting Infocom themselves to ask permission to market the newer games, running under Boone’s interpreter, as legitimate commercial products. Although Bobbitt doubtless didn’t realize it at the time, Infocom was by then on the verge of being shut down, and Mediagenic, their less-than-doting parent company, were also beginning to feel the financial stresses that would force them into bankruptcy in 1990. They saw Bobbitt’s proposal as a handy way to clear their warehouse of old stock and make some desperately needed cash. Jim Reiss, who worked at Asgard at the time as the last remaining full-time 99/4A software developer in the world, remembers how the deal went down:

[Bobbitt] contacted Infocom to ask for permission to release the later Infocom releases, and was given permission to do so on one condition: that the packaging and disks had to be originals for other systems, relabeled (the packaging) and reformatted (the disks) for use with the TI. Infocom scoured their warehouse and sent Chris two very large boxes of the titles he was asking to reproduce—and noted on the invoice that these boxes included every single copy of the relevant titles that Infocom still had in their possession. Some of the titles were relatively plentiful, but others were included in much lower numbers. The boxes only contained four copies of Leather Goddesses of Phobos, for example. All other titles had at least ten copies each, and some had a lot more. He was permitted to buy more copies from remainders in the retail channels, though, so it is possible there are more properly badged Asgard copies of the titles that were harder to find. All of the stock he received from Infocom was gone in a matter of months.

These games, which Bobbitt bought for $5 apiece and sold on for several times that, thereby became the last new Infocom games ever sold in their original packaging — out-of-print games from a dead company sold to owners of an orphaned computer.

Asgard prepared their own platform-specific reference card after the Infocom example and inserted it into the box.

Well before Asgard entered the scene, however, another, more structured and sustainable project had led to a Z-Machine interpreter much more amenable to being ported and built upon than Boone’s incarnation of same for an idiosyncratic, bare-bones, orphaned platform. Not long after Boone first started sharing his 99/4A interpreter with friends, a few students at the University of Sydney in far-off Australia started disassembling another of Infocom’s own interpreters — in this case one for Zilog Z80-based computers running the operating system CP/M. The group included in their ranks David Beazley, George Janczuk, Peter Lisle, Russell Hoare, and Chris Tham. They gave themselves the rather grandiose name of the InfoTaskforce, but they initially regarded the project, said Janczuk to me recently, strictly as “a form of mental calisthenics”: “This was never meant to be a public exercise.”

Still, the group had several advantages which Boone had lacked — in addition, that is, to the advantage of sheer numbers. Boone had been a bedroom hacker working on fairly primitive hardware, where cryptic assembly language, highly specific to the computer on which it was running, was the only viable option. The InfoTaskforce, on the other hand, had more advanced hardware at their disposal, and were steeped in the culture of institutional hacking, where portable C was the most popular programming language and software was typically distributed as source code, ready to be analyzed, ported, and expanded upon by people other than its creators, quite possibly working on platforms of which said creators had never dreamed. And then, thanks to their university, the InfoTaskforce was connected to the Internet, long before most people had even heard of such a thing; this gave them a way to share their work quickly with others across a wide, international swath of computing. The contrast with the segregated ghetto that was the world of the 99/4A is telling.

David Beazley, who did almost all of the actual coding for the InfoTaskforce interpreter — the others had their hands full enough with reverse-engineering the Z-Machine architecture — did so in C on a first-generation Apple Macintosh. On May 25, 1987, he used this machine to compile the first truly portable Z-Machine interpreter in history. Within a week, he and his mates had also gotten it compiled and running on an MS-DOS machine and a big DEC VAX. (Ironically, the latter was the successor to the PDP-10 line so famously employed by Infocom themselves; thus one might say that the Z-Machine had already come full-circle.)

As Janczuk remembers it, the first version of the interpreter to reach the Internet actually did so accidentally. He gave it to a friend of his at university, who, as so many friends have done over the years, uploaded it without permission on June 2, 1987. There followed an immediate outpouring of interest from all over the world, which greatly surprised the interpreter’s own creators. It prompted them to release an official version 1.0, capable of playing any story file for the standard — i.e., 128 K — Z-Machine on August 1, 1987. Already by this time, the Commodore Amiga personal computer and several more big machines had been added to the list of confirmed-compatible host platforms. It was a milestone day in the history of interactive fiction; Infocom’s games had been freed from the tyranny of the hardware for which they’d originally shipped. And they could remain free of the vicissitudes and fashions of hardware forevermore, as long as there was an enterprising hacker ready to tweak an existing interpreter’s source code to suit the latest gadget to come down the pipe. (So far, there has been no shortage of such hackers…)

With their university days coming to an end, the InfoTaskforce boys worked on their interpreter only in fits and starts over the years that followed. Not until 1990 did they finish adding support for the Interactive Fiction Plus line; not until 1992, in a final burst of activity, did they add support for Infocom’s last few text-only games, which ran under what was known internally as the version 5 Z-Machine. This last release of the InfoTaskforce interpreter actually attracted a bit of scoffing for its inefficiency, and for generally lagging behind what other hackers had done by that point in other interpreters.

In reality, information and inspiration rather than the software itself were the most important legacies of the InfoTaskForce interpreter. Beazley’s C source told you almost all of what you really needed to know about the Z-Machine, so long as you were sufficiently motivated to dig out the information you needed; doing so was certainly a fair sight more pleasant than poring over eye-watering printouts of cryptic disassembled Z80 machine language, as Beazley and his pals had been forced to do before coming up with it. The InfoTaskforce interpreter thus became the gateway through which the Z-Machine burst into the public domain, even as Infocom was soon to collapse and abandon their virtual machine. This was a role which Boone’s interpreter, for all its naïve brilliance, just wasn’t equipped to play, for all of the reasons we’ve already explored.

An enterprising American hacker named Mark Howell did perhaps the most to build upon the foundation of the InfoTaskforce interpreter during the half-decade after its initial appearance. His own interpreter bore the name of ZIP (for “Z-Machine Implementation Program”), a name it shared with the popular compression format, to enormous confusion all the way around — although, to be fair, this was also the name by which Infocom knew their own interpreters. ZIP was faster and less buggy than the InfoTaskforce interpreter, and for this reason it soon surpassed its older sibling in popularity. But Howell also delved further into the architecture of the Z-Machine than anyone before him, analyzing its design like a computer scientist might rather than as a hacker simply trying to write a quick-and-dirty clone of Infocom’s existing interpreters. When he came up for air, he uploaded his set of “ZTools” — programs for probing story files in all sorts of ways, including a disassembler for the actual code they contained. These tools did much to set the stage for the next phase of the Z-Machine’s resurrection and liberation.

In 1992, another building block fell into place when Activision shipped their Lost Treasures of Infocom collection to unexpected success. It and its sequel collected all of the Infocom games together in one place at a reasonable price, stored as neatly discrete story files ready to be fed into either the original Infocom interpreters included on the disks or an alternative of one’s choice. Lost Treasures shipped only in versions for MS-DOS, the Apple Macintosh, and the Commodore Amiga — the last three commercially viable personal-computing platforms left in North America by that time (and the Amiga wouldn’t enjoy that status much longer). But users of orphaned and non-North American platforms were soon passing around the tip that, if you could just get the story files off of the original Lost Treasures disks, they could be run on their own platforms as well with one of the interpreters that had by now spread far and wide. For example, our old friends at The Computist, still carrying the 8-bit torch in these twilight days of the Apple II, published instructions on how to do just that — a fitting end point to their earliest explorations of the Infocom format.

Across the Atlantic, meanwhile, the magazine Acorn User published a similar article for users of the Acorn Archimedes, a machine that was virtually unknown outside of Britain, a few parts of mainland Europe, and Australasia. (“It’s hard to conceive of videogame nostalgia,” they wrote of the Lost Treasures collections, “but this is as close as it gets.” Little did they know…) It so happened that an Oxford doctoral candidate in mathematics named Graham Nelson was a stalwart Acorn loyalist and a regular reader of that magazine. By the time the article in question appeared, the window opened by the InfoTaskforce interpreter and all the software that had followed it, combined with the Lost Treasures collections, had already led him to begin sliding the next couple of building blocks of the Interactive Fiction Renaissance into place.

Infocom’s The Hitchhiker’s Guide to the Galaxy running on an Acorn Archimedes — a platform for which it was never officially released — under a third-party Z-Machine interpreter by Edouard Poor.

(Sources: The Computist 5, 7, 34, 41, 47, 57, 58, 63, and 86; Acorn User of July 1993; Asgard Software’s newsletters from 1989 and 1990. Online sources include Barry Boone’s memories of writing his Z-Machine interpreter at The Museum of Computer Adventure Game History and his bio for the TI99ers Hall of Fame. The original source for the InfoTaskforce interpreter can be found in various file archives. My huge thanks go to Barry Boone, Jim Reiss, and George Janczuk for talking to me about their pioneering early work in Z-Machine archaeology.)

These Heterogenous Tasks

IF Comp 2019: Let’s Play: Ancient Greek Punishment: The Text Adventure

by Sam Kabo Ashwell at October 18, 2019 04:42 AM

Let’s Play: Ancient Greek Punishment: The Text Adventure (Pippin Barr, Inform) is a short concept/joke piece. Pippin Barr has made a whole bunch of small games on this theme. All of them seem to be riffs on the same basic idea … Continue reading

October 17, 2019

These Heterogenous Tasks

IF Comp 2019: The Sweetest Honey

by Sam Kabo Ashwell at October 17, 2019 06:42 PM

The Sweetest Honey (Mauro Couto, Twine) is a choice-based story about depression and fear, originally written for a Spanish-language game jam and translated into English. Anima, the protagonist, is middle-aged and divorced; his ex-wife dislikes him and his son openly loathes … Continue reading

"Aaron Reed"

Win a unique advance copy of Subcutanean!

by Aaron A. Reed at October 17, 2019 05:42 PM

As of Friday there are 13 days until Halloween, so to celebrate, I’ve launched a Goodreads Giveaway for one of 13 unique copies of Subcutanean, my creepy new horror novel whose text changes with every copy. While no one is looking. Spooky!

Autumn book mock-up template courtesy

Each of these copies, like the final versions, will contain a unique version of the story. For the very first round of Advance Reader Copies I sent out a few weeks ago, the code and prose still weren’t quite ready for this, so those copies all contained the same text. While I’m still working on editing variants, I’ve marked a subset of the possibility space as “ready for print,” so the Goodreads Giveaway copies will be generated from those alternatives: just like the final novels, but within a slightly smaller possibility space.

(If you’re curious, I’m calling this round “Generation 0,” and all the seeds will begin with a zero. The round for people who pre-order during the crowdfunding campaign will be “Generation 1” with seeds whose first digit is 1, and Generation 2 will appear when the book goes on sale to the public early next year.)

If you’d like to enter for a chance to win an advance copy of Subcutanean, visit the book’s giveaway page and click “Enter Giveaway.” You’ll need to have a Goodreads account and be signed in. The giveaway will remain open for three weeks; at that point 13 winners will be selected and will get their copies in the mail shortly thereafter. The giveaway is only open to folks with a US shipping address.

Good luck, and happy Halloween!

Keep tabs on Subcutanean by following the project on Twitter or Facebook, or sign up to be notified when pre-orders go live.

Choice of Games

New Hosted Game! Moonrise by Natalie Cannon

by Mary Duffy at October 17, 2019 02:42 PM

Hosted Games has a new game for you to play!

You’ve been bitten into a brand new supernatural underground. Congratulations! It’s terrifying and heartwarming all at once. In a game made by a queer woman and for queer women and femme nonbinary folk, this supernatural celebration of queer femininity takes you into the darkness and lets you own it. Use your compassion and sense of responsibility to make connections and fall in love. Or use your newfound fangs and claws to rip, shred, and tear through your problems. Is this the start of a satisfying, shape-shifting life full of romance, or the blood-soaked birth of a new deity of the forest? You decide!

It’s 50% off until October 24th!

Moonrise is a 49,000-word urban fantasy interactive novel by Natalie Cannon, where your choices control the story. It’s entirely text-based—without graphics or sound effects—and fueled by the vast, unstoppable power of your imagination.

  • Play as a trans woman, cis woman, or nonbinary person; lesbian, bisexual, pansexual, or asexual.
  • Date your nonbinary best friend, the ruthless Rogue leader, or the lycanthropic goddess amongst werewolves.
  • Build up your Empathy, Bloodthirst, Snark, Responsibility, Uncanny Valley, and Defense to survive lethal encounters and protect those you hold dear.
  • Pledge allegiance to the tradition of the Masquerade or the desperate, volatile Rogues.
  • Expose the supernatural underground to the blistering light or keep their secrets in the deep dark.
  • Embrace the feral monster within or hold fast to your humanity.

Natalie Cannon developed this game using ChoiceScript, a simple programming language for writing multiple-choice interactive novels like these. Writing games with ChoiceScript is easy and fun, even for authors with no programming experience. Write your own game and Hosted Games will publish it for you, giving you a share of the revenue your game produces.

New Hosted Game! War of the Gods by Barbara Elzey

by Mary Duffy at October 17, 2019 02:42 PM

Hosted Games has a new game for you to play!

Fight the god of death on your way to godhood! Choose your path with six different characters: warrior, assassin, mage, thief, storm rider, and beastmaster. Destroy the death god’s minions by sword, magic, storms, or beasts. Rise in power to eventually destroy the death god himself. Seize your own path toward godhood.

It’s free to play.

War of the Gods is a 85,000-word interactive novel by Barbara Elzey, where your choices control the story. It’s entirely text-based, without graphics or sound effects, and fueled by the vast, unstoppable power of your imagination.

  • Play a Solarian, a creature who is invulnerable by day and weak at night.
  • Play the human assassin who must fight his way free from bondage.
  • Play a Storm Rider, an ancient race that harnesses the power of the storm.
  • Play a thief known as the Silver Fox, who must save her people from the death cultists who killed her family.
  • Play a Deodrin mage, a creature from an ancient race, who hurls spells to save a family from the despotic king.
  • Play a human beastmaster, who is the true heir to the throne, and who gathers allies for war, both human and beasts.
  • Choose your gender; romance as gay, straight or asexual, and select your physical traits.
  • Find romance with different fantastical species and characters.
  • Defeat the minions of death.
  • Gain power toward your own rise to godhood.

Barbara Elzey developed this game using ChoiceScript, a simple programming language for writing multiple-choice interactive novels like these. Writing games with ChoiceScript is easy and fun, even for authors with no programming experience. Write your own game and Hosted Games will publish it for you, giving you a share of the revenue your game produces.

New Hosted Game! The Oldest Dream by Onurhan T

by Mary Duffy at October 17, 2019 02:42 PM

Hosted Games has a new game for you to play!

Time for a break from your uneventful life. Ancient knowledge that is too risky to keep in your memory calls for you once again. Will you be able to learn the things you knew in the past and chose to forget all the while not losing yourself to madness? No matter what, your will must be strong.

It’s free to play.

The Oldest Dream is a 34,000 word interactive horror novel by Onurhan T, where your choices control the story. It’s entirely text-based-without graphics or sound effects-and fueled by the vast, unstoppable power of your imagination.

  • Play as male, female, or other; straight, gay, or other.
  • Delve into the past that you chose to forget before.
  • Try to stay sane on a path no one came back from.
  • Watch reality distort in front of your eyes.
  • Don’t give your trust freely, it is not easy to know who deserves it.
  • Learn as much as you can, your primary intent is seeking knowledge.
  • Meet a creature stronger than god and live to tell it.

Onurhan T developed this game using ChoiceScript, a simple programming language for writing multiple-choice interactive novels like these. Writing games with ChoiceScript is easy and fun, even for authors with no programming experience. Write your own game and Hosted Games will publish it for you, giving you a share of the revenue your game produces.

October 16, 2019

These Heterogenous Tasks

IF Comp 2019: Faerethia

by Sam Kabo Ashwell at October 16, 2019 05:42 PM

Faerethia (Peter Eastman, Twine) is a piece about utopia. Let’s begin with that title. That title is a lot, my dudes. That title is something that a late-Victorian weirdo called E. Stratford Pillwater would have dreamed up for his utopian … Continue reading

"Aaron Reed"

Thanks! I’m hoping to release it around the same time the book comes out in early 2020. Stay tuned…

by Aaron A. Reed at October 16, 2019 03:42 PM

Thanks! I’m hoping to release it around the same time the book comes out in early 2020. Stay tuned…

These Heterogenous Tasks

IF Comp 2019: Citizen of Nowhere

by Sam Kabo Ashwell at October 16, 2019 04:42 AM

Citizen of Nowhere (Luke A. Jones, Inform) is a light puzzle game set in a fictional kingdom. It reads very much like children’s fantasy: there is an assortment of odd but friendly characters, an animal companion, and a pleasant if not … Continue reading

Emily Short

Mid-October Link Assortment

by Mort Short at October 16, 2019 04:41 AM


IF Comp is live now! You can visit the site to play and judge the games. The competition is also still accepting prize donations, in the form of cash or interesting objects, until the end of the judging period.

Ectocomp will be running again this year, with submissions opening October 27, if you’d like to contribute a piece of spooky interactive fiction.

AdventureX runs November 2 and 3 at the British Library — I think it’s already sold out, however, so if you’re attending, you probably already know that.

November 7-8 is Code Mesh 2019 in London.  The conference focuses on promoting useful non-mainstream technologies to the software industry.

Wordplay in Toronto runs November 9-10 this year, showcasing games focused on words, text, and language.

OldGamesItalia is running a game jam for Italian-language games; that’s already in progress, with created games due December 15.


From “Write Your Own Adventure Programs for Your Microcomputer.” Really not sorry that by the time I started writing text adventures in earnest, it was no longer necessary to remember the numeric ID of every inventory item in the game.

If, like me, you were a kid who enjoyed text adventures in the 80s, you may have nostalgic memories of the Usborne books on how to design and program such things. Usborne have made PDFs of many of those books available on their website (scroll to the bottom).

Aaron Reed has announced Subcutanean, a book where no two copies are ever the same. This is a big procedural text project, and you can sign up to get your own.


Here are a few things written about IF Comp so far:

Here’s a making-of piece about how someone created an illustrated interactive fiction piece (in the style of recent, visual-novel-like mobile IF) to propose to his girlfriend, complete with custom art assets of how they both look and the places they’d visited during their relationship.

This article talks about using Python and Raspberry Pi to do lessons in coding and writing interactive fiction. (For more of this kind of thing, see my recent post about pedagogical uses of IF.)

Not related to IF, but I liked this article from a few years ago about how to build organizations that are less likely to foster abusive behavior within their ranks.

sub-Q Magazine

Cryptozookeeper: Inside the Red House

by Anya Johanna DeNiro at October 16, 2019 01:42 AM

“Someone make sure Eeyore there has herself a nice long gulp!” You’re not sure who said it. It could be any one of your friends. It could even be you! -Cryptozookeeper

Sometimes, the moments that stick with you from a game—for years, even decades—are not significant moments in the game itself. Instead, they’re the off-hand moments when a space is created inside a game that feels extremely ephemeral.

* * *
College towns are strange places. Living in a college town after you’ve graduated is even stranger. In 1997 I was twenty-four with an MFA in poetry writing and I had stopped writing poetry. I couldn’t write another line. I was broke, but not poor, because I still had plenty of privilege and safety nets. I always felt displaced, having come from the Rust Belt and living in a rarefied, genteel place, but I was white in a deeply segregated city, and at the time—and for many years afterwards—I thought I was a man. I was deeply anxious and way too precocious for my own good. “Precocious” is another way of saying “arrogant.”

I worked in the college bookstore and taught composition at a university an hour away. Since I couldn’t write another poem to save my life, I started writing science fiction but instead of talking about that much, I would go to parties with the writing program still—scratch that, “receptions,” because visiting writers would be received. There was usually beautiful carpeting and a colonnaded balcony and free booze. Or it would be the ramshackle grad school housing on boulevards crammed to the brim with people coming, or going, or moving far away, or remaining rooted in the small city forever. Then I’d go back home to Erie it would be trailer parks and bar-fight bars and broken-down houses built during the time of the McKinley administration.

I didn’t feel at home in any of those places.

Two men in coats and hats stand over a table with an alien-looking corpse lying on it.

* * *
In Cryptozookeeper, the scene in Christmas City, New Mexico at a house party was instantly recognizable, and maybe that’s why it’s stuck with me since the first time I played the game in 2012. The Red House isn’t especially important to the plot, even. But it’s an immensely satisfying, even poignant, place to visit.

A man sits at a table with his arms crossed. The picture is tinted red.

Robb Sherwin’s games are glorious messes—sprawling, jagged, often a bit on the broken side, yet packed with the kinds of writing that set off fireworks in my brain. The metaphors and descriptions collide into each other, and help create portraits of intermittently unpleasant people with deep scars.

Scars which you could see on the outside, sometimes.

* * *
You are crashing the party. Actually, you’re probably trying to save the world, at some point, but for the time being you’re at the Red House. Here, the quips and jokes aren’t part of larger set-ups but work fantastically well as bits of overheard conversation and shouts of ridiculous drunken joy while the tequila bottle is passed around, and the endlessly flowing soundtrack and the vaporwave images.

A woman leans against a kitchen counter

What makes Cryptozookeeper probably his best game isn’t the Pokemon-style cryptid battling (although that can be fun), or even the long superstructures of story that drive the plot forward (although those are rich and rewarding). What makes it great is its sense of camaraderie in the midst of deep displacement, of people who (for one reason or another) are where they’re not supposed to be. If Fallacy of Dawn is about the allure of old-school video games, and Necrotic Drift is about the potency of Dungeons and Dragons, Cryptozookeeper is about how hard it can be to learn and grow and make friends when everything around you is literally crumbling. (That, and crafting werewolves and harpies.)

It’s also important to note that the scene would have been a lot poorer had it not been for the women who inhabit these spaces. Jane, Deanna, and Bleem shine in the Red House scenes and Cryptozookeeper as a whole, and considering Robb Sherwin’s first game is called Chicks Dig Jerks, this is a whole evolutionary era of character development in his writing.

And at the Red House (after traversing a shattered abandoned landscape), yes, there’s a feline humanoid acting as bouncer, and yes, there’s an alien autopsy going on in the study. (Or “study.”) And yes there’s a pamphlet on alcohol abuse somewhere in the place. And yes—quite so—there may, or may not, be an exorcism. But mostly you have your friends, and you’re drinking together in an ought-to-be-condemned house. You even have your frenemies. But very few of you are students anymore.

You’re someplace else in your lives.

* * *
Eventually, you might have to start over. You might You might unwittingly find yourself back at one of these houses at 2:30 in the morning, crying on the patio. Transitioning doesn’t have to mean that you have to break apart your life and stitch it back together into forms that you hope will become to familiar to you again.

But sometimes it does.

* * *
Ultimately the game is about having a posse, about having your own people who have your back, however imperfectly. It took me a long, long time to find my posse—and find myself—but Cryptozookeeper is poignant for me because everyone knows they’re not quite where they want to be yet. But they’re trying. They’re hoping. And in those fleeting moments inside the Red House, you’re all able to share a little bit of hope together.

The post Cryptozookeeper: Inside the Red House appeared first on sub-Q Magazine.

Neon Landscapes & Spell Pyramids: Visuals and Form in Interactive Fiction

by Sharang Biswas at October 16, 2019 01:42 AM

“Like the hands of the correctional officer on my abdomen,” Sable Elyse Smyth’s Landscape III begins, “searching for metal—rather—groping for the sake of taking over—for possession.” [1] The poem continues for a total of eight lines, and evokes violence and sexuality, how the two can be intertwined, and how one’s experience with the carceral system leaves violent marks on one’s sexuality.

Except that this text isn’t meant to be seen as poem. Or at least, not just a poem.

I encountered the words as an installation dominating the walls of a gallery at the New Museum in New York. The letterforms are large and made of tubes of neon light. The edges of the text are fully justified, the words perfectly aligned at either end, creating what are sometimes called “rivers” or “wormholes” between words—ugly gaps that protrude from the text. The verse is underlined with a glowing azure light, again in neon. “[Neon] is a material that people feel sort of obligated to interact with,” the poet-artist Sable Elyse Smith says [2], and the scale of the glyphs, the garish, white light they give off, the gentle, only occasionally perceptible hum their physical material makes, these all ensure that the installation is at once seductive—and a little off-putting.

The piece’s rigid horizontal alignment, its glowing form, and its blue underscoring—like the sky, like the sea—are more prominent when you learn its title: Landscape III. We’re invited to look at the poem but also through it, as prisoners gazing longingly through the gaps in the prison-bars towards the clear blue sky.

Much of this would be invisible if the words were merely ink on paper.

* * *

In stories, important words aren’t just written down. They’re inscribed, emblazoned, or illuminated. They’re carved into mountainsides such that only moonlight can reveal their presence or smeared in blood onto a corridor wall and framed by a petrified cat.

That a text gains power from more than just the words that comprise it has been an important concept for humans from the birth of written language. Sometimes, this idea is taken quite literally. In his 2nd-century medical treatise Liber Medicinalis, physician Quintus Serenus Sammonicus prescribes the magic words “Abracadabra” as a cure for malaria—but only if attached to the neck on an amulet and repeatedly written out in a very specific cone-shaped form [3]:



Another spell in the British Library’s Collection, this time from 18th-century Ethiopia, has the power to transform you into a lion… or a python… or an eagle, all depending on where on your body you wear the same incantations [3].

Meaning is clearly more than written morphemes. As Ellen Lupton rhapsodizes in her book Thinking With Type, “Text can be viewed as a thing—a sound and sturdy object—or a fluid poured into the containers of a page or screen. Text can be solid or liquid, body or blood.” [4] In my first essay for this column, I wrote about how different texts are read differently; their context, form, visual substance, and material quality all influence how we read them. [5]

Beyond visual art or magical medicine, thinking about this sort of thing can offer writers of interactive fiction powerful tools with which to engage readers, to increase emotional affect, and to better reflect their worlds and themes.

A simple use of this can be seen in Abigail Corfman’s excellent game Open Sorcery [6]. The game casts you as an elemental of Fire and…C++. Yes, you’re a programmable magical spirit of protection, complete with a control panel, backups, and system analytics. Sometimes you try to dream.

Corfman enhances the feel of your character and world using a number of visual cues. A monospace typeface set with white on black makes you feel like you’re programming in a text editor of some sort. Locations are referred to not by their full names but by codes: “Cherry Orchard Rest Home” is “ChORet”, while “Decker’s Apartment” is “DkApt”. When you scan an area for intruding spirits, a “Searching” message flashes on-screen like a progress meter. Finally, when you actively seek out a spirit, the most “magical” part of your work, your neat, horizontal script suddenly tilts diagonally, a restructuring of the ordered world that only the supernatural can account for. Beyond her exposition and plot, Corfman uses simple visual cues such as these to situate you in her world of magical technology, revealing character and setting through the form of the text.

Kicking it up a notch with typefaces, Astrid Dalmady in Cactus Blue Motel [7] employs two colors of neon light, the symmetrical, rounded glyphs of the Comfortaa font for headings, and a mouseover effect that diminishes the glow of neon text as you hover over it, to give her teen-road-trip-game added oomph. Similar to that in Sable Elyse Smyth Landscape III, Dalmady’s use of neon is at once inviting and uncanny, reflecting the game’s primary setting: the eponymous motel in the middle of the desert. But coupled with a dusky blue background, the neon elements also evoke nostalgia, a longing for a rapidly receding past, the aching yearning for a precious childhood moment to stay preserved in its own bubble of time, perhaps in the middle of the desert, untouched and unspoiled by time and “growing up”.

Finally, Nyamyam goes even further with theatrical tricks in their quirky visual novelesque Astrologaster [8]. You play as “Doctor” Simon Forman in Shakespearean London, who uses astrology to cure his patients’ various medical (and sometimes domestic) complaints. What instantly attracted me to the game when I encountered it at PAX West, however, was the enthusiastic singing of a fully voiced madrigal at the beginning of each scene. Far from necessary to the plot or gameplay, the musical rendition brings a smile to my face at the start of every scene and reminds me of the theatrical, somewhat farcical nature of the Astologaster’s world. Additionally, while the game could easily have gone with traditional A, B, C choices on a menu, it instead places the choices on a star map, and illustrates for you which star constellations (and their subsequent astrological meanings) your choices draw from, deepening the characterization of Simon Forman as a… err… legitimate astrologer.

* * *

“The play experience,” writes Mary Flanagan, “has, for thousands of years, been intertwined with aesthetics.” [9] This statement is as applicable to the ancient board games that Flanagan proceeds to describe as it is to a stylistically illustrated, fully voiced contemporary visual novel. If games, like other art forms, are to be considered conveyors of emotion, we must consider all of their components, not merely the mechanical. Think about old video games that were considered gems in their time but that modern audiences have difficulty fully appreciating due to the dated look of their graphics. Or consider the endless clones of “connect-three” games, whose representational tweaks, from jewels to candy to laid-off workers [10], can change the feel of the entire game. Similarly, if the “mechanics” of interactive fiction include the reading and writing of text, one must look beyond just the words and engage fully with artistry that encompasses any piece of IF. Our words may not form a landscape as literally as Sable Elyse Smith’s verses, but a blue underline may just accentuate our description of one.

Works Cited

  1. S. E. Smith, Artist, Landscape III. [Art]. New Museum, 2017.
  2. New Museum, “218 “Trigger Gender As a Tool and a Weapon” Audio Guide: Sable Elyse Smith,” New Museum, New York, 2017.
  3. British Library Board, Harry Potter: A History of Magic, The Official Companion to the British Library Exhibition at the New-York Historical Society Museum & Library, New York: Arthur A. Levine Books, 2018.
  4. E. Lupton, Thinking With Type: A Critical Guide for Designers, Writers, Editors, & Students, 2nd Revised and Expanded Edition, New York: Princeton Architectural Press, 2010.
  5. S. Biswas, “Rituals, Cheating, and The Dream of Possibility,” Sub-Q, February 2019.
  6. A. Corfman, Open Sorcery, Open Sorcery Games, 2016.
  7. A. Dalmady, Cactus Blue Motel, 2016.
  8. Nyamyam, Astrologaster, Nyamyam, 2019.
  9. M. Flanagan, Critical Play, Cambridge: The MIT Press, 2013.
  10. Tiltfactor, Layoff, Tiltfactor, 2009.


Sharang Biswas

Sharang Biswas is an award-winning game designer, an internationally exhibited artist, and a published writer based in New York. He has exhibited work at numerous museums, galleries, and art fairs including the Institute of Contemporary Art in Philadelphia, Pioneer Works in Brooklyn, and the Toronto Reference Library. He has designed curricula for the Museum of the Moving Image, created learning games for the Metropolitan Museum of Art, and written about games, interactivity, and culture for publications including Kill Screen, Sub Q, ZAM and First-Person Scholar. His two food-based games, “Feast” and “Verdure”, have garnered numerous accolades, including an IndieCade Award and and IGDN Indie Groundbreaker Award. Sharang has lectured or taught courses on game design at various universities and cultural institutions including Dartmouth, Columbia Teacher’s College, New York University, The International Center of Photography, and the Museum of the Moving Image, as well as spoken at conferences such as Game Devs of Color, GaymerX, Living Games, IndieCade and Boston FIG Talks.

Sharang holds a bachelor’s in Biotechnology and Biochemical Engineering from Dartmouth College and a master’s in Interactive Design from Tisch School of the Arts at New York University. He is the Experience Designer for The Medici Group, a consulting firm focusing on diversity and innovation.

You can find him on Twitter @SharangBiswas, his website , or on his Itch IO page

The post Neon Landscapes & Spell Pyramids: Visuals and Form in Interactive Fiction appeared first on sub-Q Magazine.

October 15, 2019

"Aaron Reed"

The Trouble with Transitions

by Aaron A. Reed at October 15, 2019 07:42 PM

The Trouble With Transitions

In my last post I described the .quant format, a minimalist syntax I created for writing Subcutanean (a novel that changes each time it’s printed). For example:

The DEFINE command sets the variable verbose to either true or false at random, producing one of two possible outputs when the text is rendered:

I’m having a really quite wonderful day, actually, thank you for asking.
I’m having a great day.

I actually use variables like this a lot in Subcutanean to ensure that even though decisions are made at random, the output has a degree of consistency: one narrator might tend to use bigger words, another might consistently be less honest about their emotions, and so on. In fact I’m doing this even without explicit variables — but more about that in a later post.

The .quant syntax was able to remain straightforward in part because of my design decision not to allow any nesting or conditional logic. But almost as soon as I started authoring, and despite my purity of intentions, I stumbled across a situation that was almost impossible to handle without boolean logic: transitions.

Subcutanean contains a lot of sequences — ranging in length from sentences to whole scenes — that might randomly be present or absent, or might at random appear in one of several versions. Sometimes these sequences would abut one other, and when this happened, it became very difficult to write natural-sounding text that could transition between any possible preceding and following text.

For instance, say in one possible lead-in two characters get drunk, while in another they don’t. The next sequence could be either a midnight walk or sleeping the evening off. The natural transitions in all four cases — the way a human would write them — are probably unique:

[drunk story] Heads spinning, we spilled outside, raucous. [midnight walk]
[drunk story] We knew our limits; it was time to call it a night. [sleep it off]
[not drunk] Wanting some fresh air, we stepped outside. [midnight walk]
[not drunk] It was getting late. [sleep it off]

You don’t always need unique text for each possible combination, but clearly a natural transition references both what came before and what’s coming next. It’s often very hard to write these in such a way that you don’t need to know something about both states to do so. Even single-word transitions have implications about what’s coming before and after that might not always hold true: this is of course the entire reason languages have different transition words in the first place, like and, but, still, anyway, therefore, nevertheless, and so on. Each implies something different about why these two thoughts are connected.

I tried to write my way around this for a while, but eventually decided I did need some form of combinatorial conditions, after all. But I was wary about most ways I could think to add them. Adding boolean logic, for instance, such as with a syntax like [drunk AND MidnightWalk>…], could be a slippery slope: if I supported AND, shouldn’t I also support OR? What about either of those in combination with NOT? If I supported two terms, shouldn’t I also allow three or four or however many I wanted? And once I had more than two, wouldn’t I also want to control order of operations with parentheses? And then nested parentheses? As the complexity ramped up, it would become increasingly difficult to protect against both logic and parsing errors. Recall that for Subcutanean, the stakes are high: any error in text rendering gets shipped off to a print-on-demand service and enshrined in a printed book. I could be as careful as I wanted, but inevitably, increasing complexity like this compounds the risk of mistakes slipping through.

Another option would be to allow nesting, maybe with a syntax like [verbose>[angry>…]]. But nesting without indentation, I’ve decided after trying this in multiple past projects, is just inevitably a bad idea. It’s hard for both authors and code to parse and error-correct, and it allows all kinds of subtle errors to creep in where the syntax looks correct at a glance but certain possibility states are unaccounted for, or text is getting printed in situations it shouldn’t. For my use case, with these random bits sprinkled in and among paragraphs of prose, using indentation instead would feel awkward, breaking up the flow of those paragraphs adding concerns over when line breaks and spacing were code constructs versus literal output. I didn’t want to go down this route, either.

Ultimately I went for a third option. Remember in my last post when I said I didn’t want to add GOTOs or routines? Well… I added routines. I called them macros, but basically they jump to a label, print the text found there, and then return.

This was definitely ugly in certain ways, but solved some problems. It let me reuse chunks of text in multiple variants, if for instance I had a moment in the middle of two different scenes that would be the same regardless of which one was chosen. It also allowed for elegant nesting: the contents of a macro can contain another macro with additional conditions, without an individual list of variants ever getting overly complicated. Without any further changes or additions, this syntax could also support most conditional logic I could think of: you can use it to emulate AND, OR, or NOT without much trouble, and nest things arbitrarily deeply. The flow of the prose is broken, of course — during editing, you might have to jump around the document to follow it, especially in longer variants where the macro definition might be pages away — but I still felt this was a better approach than the alternatives.

The biggest danger this change introduces is removing the context from the seams of the inserted text. If, for instance, I’d forgotten to include periods at the ends of each subject change expansion, I’d get malformed output like Heads spinning, we spilled outside, raucous The walk down the hill… . I’ll talk in a future post about a separate tool I wrote to help with this problem.

One final twist in the .quant syntax, also brought about from my unique use case: I wanted a way to preserve one particular rendering of the entire text, which was the first one I wrote.

Subcutanean actually began life as a traditional novel, and in fact had been through a whole gamut of drafts and revisions before I ever started thinking about quantum-izing it. As I began this new and more significant round of revisions, adding variant possibilities throughout, I wanted to reserve the right to change my mind and get back the “original” linear version at any point, even while continuing to edit and improve it alongside the alternatives: an escape hatch, if you will, in case the project turned out to be ill-conceived.

To achieve this, I adopted the convention that the first option in any list of variants would always be the original, “safe” version. I could then add a toggle for my renderer to consistently choose the first variant, and thus pull the original text back out of the quantum soup any time I wanted. This convention was unambiguous except in the situation of single-option text which would either appear or not: here I needed a new symbol to indicate whether the original version said something, or nothing:

The caret could also be used to mark a variant other than the first one as the new preferred version, in case I changed my mind about which one I liked better. In fact as the writing continued I found myself doing this more and more often. This soon evolved into a personal quality metric for the quantum version of Subcutanean: when revising and rewriting a list of alternatives, I knew I was done when I could no longer decide which one to mark as “best”: when I’d be equally proud to have any of them carry the story. As I reached this state with more and more of the writing, I began to believe my new vision of a multilinear Subcutanean — where I’d be completely happy sending off a random rendering, sight unseen, to a reader — could really work. The notion of needing to mark the “original” version became, in the end, fully vestigial.

I still had the problem of ensuring that every one of those millions of possible combinations of text would have perfect transitions, no misplaced punctuation, and no awkward joins between static and variant text. In a future post I’ll talk about the tool I wrote specifically to help solve that problem.

Subcutanean is an upcoming horror novel that changes with each new copy. Follow the project on Twitter, Facebook, or Goodreads, or get an email announcement when pre-orders go live.

October 14, 2019

Zarf Updates

Kickstarter and organizing

by Andrew Plotkin ([email protected]) at October 14, 2019 01:21 AM

As I'm sure you know, the past few weeks have seen a wave of acrimony around Kickstarter and its nascent union, Kickstarter United. The company fired two employees who were involved in union organizing efforts. Kickstarter claimed it was for unrelated performance reasons; the workers filed an NLRB complaint. KS's CEO said that "The union framework is inherently adversarial"; the union asked the company for voluntary recognition; the company refused and is insisting on an NLRB-run election first.
I've been pretty unsure how to react to these events. I support the idea of tech-worker unionization, inside and outside the game industry. I don't like Kickstarter's apparently obstructionist and wishy-washy position. (Geez, calling your opponents "adversarial" and then refusing voluntary cooperation? I guess it's adversarial now.) But I am not at all familiar with the particulars of union organizing or how NLRB procedure works out for the various sides.
The union has pointedly not called for a boycott of KS or KS projects, but -- like many people -- I have been much less inclined to interact with the company since this situation flared up. Some prominent projects have jumped ship to other platforms such as Indiegogo.
Last week the union posted a call to action. This is straightforward: no boycott yet; express your support.
So that makes me feel better about starting to browse and back KS projects, as I used to do regularly. I do support Kickstarter United and the right of KS employees to unionize. Kickstarter is ready to organize. There. I have said so.
To be clear, I'm not a heavy KS backer. I keep an eye on the narrative game projects and occasionally back one if it looks cool and I think it needs the boost. (Plus whatever Cyan puts on the stove, but those are much higher-profile affairs.) The last time I put money down was August. Now I've caught up and kicked some money at a game or two.
This is not to say that I consider Kickstarter to be union-washed and clean. I am, to half-coin a phrase, keeping an eye out for the union label on new projects. I hope more projects declare their explicit support. And I'm definitely watching Kickstarter's policies and (more importantly) their actions. They've built up a lot of good will helping to launch niche and indie projects -- including mine. That goodwill is now theirs to lose.

October 11, 2019

"Aaron Reed"

Subcutanean Cover Art Reveal!

by Aaron A. Reed at October 11, 2019 06:42 PM

I’m excited to reveal the final cover art for Subcutanean, my upcoming novel where no two copies are the same. Without further ado:

Do you like it? I’m pretty pleased with how it turned out. Here’s the full cover spread for the Advance Reader Copy edition (details of the back cover text might be tweaked for the final printing):

And here it is again in a nice free book mockup from

In case you’re wondering, after the Advance Reader Copies the cover will most likely remain the same for each version: it’s technically possible but a much bigger headache to automate the process of regenerating and resubmitting cover art, so I decided to skip it. But the inside… now that’s a different story.

Finally, here’s a square logo:

I’ve updated Subcutanean’s presence around the web with this new imagery: feel free to use it yourself when posting links! If you need higher-res versions for promotional purposes, I’m happy to send you some.

October’s a third over and things are ramping up! Stay tuned throughout the month for more cool news and reveals.

Subcutanean is an upcoming horror novel that changes with each new copy. Follow the project on Twitter, Facebook, or Goodreads, or get an email announcement when pre-orders go live.

A Minimal Syntax For Quantum Text

by Aaron A. Reed at October 11, 2019 12:42 AM

Subcutanean, my upcoming novel that changes each time it’s printed, works like this: there’s a master text with the whole story, occasionally splitting into alternate versions and variants at the level of words, sentences, or even whole scenes. Each time the book is “rendered” for a new reader, a single option from each set of variants is randomly chosen, resulting in one particular version of the story. I wrote earlier about the aesthetics of why you’d do this, but the how is interesting too.

I call this kind of writing “quantum authoring,” because the author must hold all the possible versions in their head at once and keep each one interesting and consistent. Unfortunately, this kind of writing is often intertwined with programming or other mentally exhausting tasks, like operating a complex tool or remembering a finicky syntax. For this project, I wanted to write in a format that was as lightweight and unobtrusive as possible, so I could keep my brain entirely in “writing” mode while working on content. What I came up with was a minimal format called .quant, and I want to talk a bit about why I made it and what it’s good for.

The .quant format had a couple fairly simple requirements. First, I didn’t want it to distract from my creative process. Having written a lot of procedural text over the years (usually for games) there’s nothing worse than trying to be creative when you’re trying to remember syntax, mistyping special characters, or fighting with compiler errors.

A particularly egregious example of dynamic text authoring for The Ice-Bound Concordance, involving escaped quote marks, spacing codes and hacks, variable character genders, nested conditionals, and two different systems for variable text. This was the kind of thing I was hoping to avoid this time around.

By contrast, I wanted .quant writing to be as simple to type as possible. I also wanted it to be as close to idiot-proof as possible, for a very important reason: since the Subcutanean generator automatically exports a new print-ready PDF from the master file each time a copy of the book is ordered, which is then uploaded to a print-on-demand service, turned into a a physical book, and shipped off — all without manual human intervention — any errors would be much more galling. Normally the worst-case scenario for some broken procedural text is that a player sees a mistake in a momentary message. Here, that error would be preserved forever in the pages of the book: or in the worst case, cause its entire text to be corrupted, resulting in an unhappy buyer and an expensive replacement.

These two requirements — a minimalist syntax and trying to reduce as much as possible the chance of error — led to some early initial constraints. First, I decided there would be no routines or GOTOs in the format. This was an easier decision than it would have been for a game, because Subcutanean has no branching or interaction: the plot proceeds chapter to chapter in the same way for each reader, varying not in the overall structure but in the way individual scenes play out, in which particular details are revealed or omitted. I also didn’t need any reusable pieces of text that might have to show up in different contexts or situations, as one would generally need for an interactive work, so that also made this simplification more possible.

Second, I realized I needed two major kinds of variation: simple alternatives that didn’t need to be reasoned over or remembered, and choices that would impact text in multiple places. The latter implies variables, which can be set and later checked, so I needed to account for that.

I considered a number of existing solutions for procedural text authoring, but in part because my use case is so particular, none of them quite met my needs. Languages like Ink designed for games with explicit choice points weren’t really appropriate, as these are essentially centered entirely around GOTOs as a paradigm.

Ink (running in IDE Inky) is a nice minimalist interactive text language, but designed for branching stories with explicit choices. (Screenshot courtesy Inkle.)

Tracery is a popular language for procedural text, but is optimized for writing long chains of nested expansions. This means most of what you’re doing is defining keys meant to be expanded elsewhere, which was more heavyweight than I needed: a major desiderata was being able to read through the dynamic text along with the static text, composing and editing both together within the same flow.

Using Tracery by Kate Compton in Javascript; example courtesy Dan Cox.

I’m also very familiar with Inform 7’s way of handling variant texts, and thought about basing my compiler around its syntax. But it’s also a bit heavyweight for my use case, in part because of its natural language paradigm, and in part because of the more powerful control it offers over different things to do with textual variants.

Text substitutions in Inform 7.

Other tools were also unsuitable for various reasons, such as requiring IDEs rather than support for text files. I did in fact find things quite similar to what I was looking for, such as the Javascript library Bracery (which starts off with a very similar syntax to the one I ended up using, before getting more complex). But ultimately I decided to roll my own Python tool that would work with the rest of the tech stack I needed to make this project happen.

In the .quant format as it ended up, the most common use case is the simple inline variant. These are indicated like this:

There are [two|three|four] lights!

Square brackets were chosen (as were all control symbols) for the unlikelihood that they’ll appear in regular prose. They save a shift keystroke compared to curly braces. Pipes are better than slashes (which do sometimes appear in prose) and in most fonts stand out a bit above and below the line, making them more visually obvious. Note that I also made a syntax highlighter for Sublime Text, seen in these screenshots, as the first line of defense against obvious syntax errors like forgetting a bracket.

A single bracketed text will either be printed or not, at random: this is the same as [text|] but slightly more elegant. For instance, the below might result in “…I almost forgave him” or “…I forgave him.”

In the end, I [almost] forgave him.

(Technically, written this way the null option above would have two spaces between I and forgave. Because I knew my output was LaTeX code which ignores extra whitespace, I knew I could likewise ignore this issue: the same would also have been true if my output was HTML. In other contexts (like Inform 7, for instance) one generally needs to spend more time getting the exact position of the brackets right because spacing is preserved in the output. I did still have to worry about punctuation joins and so on — in a later post I’ll talk about a separate tool I built to help catch those errors.)

Sometimes you want certain alternatives to appear more or less often. I thought about whether I needed this for Subcutanean — it felt conceptually purer in some ways to keep the selection entirely random — but I decided I did want to allow for the possibility of some texts that were rare or even very rare, appearing only in one or two books out of a hundred. It would be easy to get bogged down with possibilities here: Inform, for instance, supports various kinds of randomness like “with decreasingly likely outcomes” that makes each option less likely be selected than the one before it. But I decided I wanted to deploy this in specific places with tight control over distributions, so ultimately I just went with a simple method of directly specifying numeric probabilities for each option, in the situations where I needed to do so.

“Hey, [50>Charles|45>Chuck|5>C-Dog], how’s it going?” I said.Not actually a line from Subcutanean.

The numbers must always sum to 100, except that the final number can be omitted to assume the remaining distribution space: in this example leaving off the 5> would still have the effect of a 5% chance of choosing “C-Dog”. The parser can then complain if the numbers don’t add up. This exactness gets annoying for very long lists of variants but I didn’t anticipate needing very many of those. In fact the current draft has only one instance of a very long list that specifies probabilities.

The last major part of the syntax was to control random selections that would affect multiple pieces of text: setting variables.

These are explicitly defined so the compiler can catch typos or mismatches when they’re used, and they’re not case sensitive because case sensitivity is dumb. For my particular use case I didn’t need anything more complex than booleans or enums, which the two examples above demonstrate: for each rendering, BreakupSubplot will be randomly true or false, and either verbose or taciturn will be true; if there were more options here, only one of them would be true on any given run. (You can also assign probabilities to variable assignments: [DEFINE 25>verbose].)

Text can then be gated based on whether a variable is true by starting with the variable reference:

To reduce the possibility of a word to be printed getting confused for a variable reference (by either the parser or the writer), a variable is allowed to appear in exactly two places: immediately after a DEFINE, or immediately before a > . The distinct separator character provides precise control over leading spacing (compared to a potentially ambiguous syntax, something like [@verbose rather ebullient…] and makes it easier to catch any spurious uses: > it turn must be preceded by a number or a recognized variable.

I thought long and hard about whether I should add conditional logic to this syntax, for instance to have text only printed when both BreakupSubplot and verbose are true. I finally decided not to allow this, in part because of the much greater likelihood of introducing authoring errors this way, but mostly out of a sense of aesthetic purity. After many of my past projects with exceedingly complicated procedural text, I thought it would be a nice exercise to keep all the randomness at a single hierarchical level. No spending time writing complex nested prose that might only be seen by a tiny percentage of readers; no compounded branches multiplying the amount of possibility states I needed to cover for a single sentence. If I wrote five variants (hand-selected usages of probability aside), there’d be a one in five chance that any of those pieces of text would be seen. Simple and clean.

I felt very smug about this until I immediately hit on a situation that required compound decisions after all, and had to go back to the drawing board. More about that in my next post.

Subcutanean is an upcoming horror novel that changes with each new copy. Follow the project on Twitter, Facebook, or Goodreads, or get an email announcement when pre-orders go live.

October 10, 2019


Twine is now a trademark of the Interactive Fiction Technology Foundation

by Chris Klimas at October 10, 2019 04:00 AM

I’m pleased to announce that the name Twine® is now a registered trademark of the Interactive Fiction Technology Foundation.

Why do this?

​ The trademark protects the name Twine. For example, it prevents anyone (or any company) from creating, say, a competing application called TwinePlus without our permission. Anyone can still make an application like Twine—they just have to call it something different.

​ This also potentially prevents someone from trying to make a profit off of the name Twine without permission—for example, if a company tried to sell Twine T-shirts without our permission.

​ Neither scenario (application or T-shirt) has happened so far, but the trademark protects Twine should it ever occur.

​ This is not out of the ordinary for open source projects. Many other high-profile projects have their name trademarked, including Debian, Firefox, Git, jQuery, and VNC. These trademarks are often held by organizations, usually nonprofits like IFTF.

Does this mean Twine is going commercial?

​ No, not at all. Many nonprofits and non-commercial projects have trademark registrations, and “commercial” usage isn’t required to get a registration. Twine continues to be licensed under the GNU Public License 3.0, which means that you may use it without paying anyone. You can even create derivatives of it so long as you abide by the terms of the GPLv3, and that you choose a name for your derivative that is sufficiently different that there would be no confusion between your version and the original one. You may also continue to distribute Twine’s source code as much as you like. It in itself is not trademarked (nor can it be—trademarks only apply to names).

What does it mean for authors working with Twine?

​ Very little. The IFTF would kindly ask authors to avoid calling Twine stories “twines,” as this potentially makes it more difficult to enforce the trademark, but that is about the extent to which authors need to think about the trademark. You can of course continue to write about Twine, make videos about it, and post things you made with Twine wherever you like without asking for permission. Anyone can use “Twine” to refer to the TWINE® project—that’s called descriptive fair use—so there are no restrictions on saying “This story was created with Twine,” although we’d ask you to use the ® if you can. now has a notice explaining that Twine is a trademark of IFTF, but you do not need to add this notice on material you create related to Twine.

​ The trademark also has no implications for anyone selling a game, story, or other unclassifiable project created with Twine—assuming, of course, the name of whatever you’re creating is sufficiently distinct from “Twine.” Selling “Beowulf: Twine Edition” is OK. Selling a hypertext game called just “Twine”… is something we are asking you not to do.

There are several other software projects named Twine. Does this mean you’re going to sue them?

​ No. The trademark filing is specifically for the name Twine as it pertains to the creation of hypertext. The other projects that we’re aware of, although they are also software, are in other domains.

What about Twine’s built-in story formats like Chapbook, Harlowe, Snowman, and SugarCube?

​ There are no plans to register them with the US Trademark Office at this time.

I have another question about this trademark stuff.

Contact us please.

October 09, 2019

Interactive Friction

IFComp 2019 Review: Enceladus by Robb Sherwin

by Unknown ([email protected]) at October 09, 2019 07:37 PM

These are quick thoughts about an entry in the 2019 Interactive Fiction Competition.

In 1999, a new force arrived on the interactive fiction scene: a voice so fresh, so startlingly brilliant, it changed the face of the medium overnight. But enough about me. What about this "Robb Sherwin" guy? He first entered the Annual Interactive Fiction Competition in the same year that I first reviewed the competition, with Chicks Dig Jerks. 20 years ago. Gulp. Let's look back on my thoughts from the lazy, hazy autumn of Eiffel 65's "Blue (Da Ba Dee)".

Chicks Dig Jerks

What the hell? Starting off like one of those ‘adult interactive fiction’ episodes (pulling in a night club), but then completely switching tone and turning into some kind of cyberpunk horror thriller thing, Chicks Dig Jerks is riddled with bugs, has a bizarre multiple choice conversation system, and makes no sense whatsoever. But despite all this, its one of the most memorable games in the competition. The writing has a real edge to it, and for some reason I was reminded of the book SnowCrash (don’t know why). A must-play, you’ll either love it or hate it.


This was the endorsement that made Sherwin famous and fabulously wealthy, clearly. The one consistent thing across his 20 years of text adventures has been a truly excellent level of writing, I made the somewhat naive comparison with Hugo award-winning writer Neal Stephenson in that original review, having not played many text adventures up to that point and therefore having very few points of comparison, but Sherwin's body of work since does seem to have borne out that original overblown opinion, at least to some extent. Text adventures have, historically, had two styles: lightly humorous, inoffensive whimsicality (Infocom's Zork (1979) is the grand-daddy here), or ponderous, highfalutin literary stuff (Trinity (1986) probably started this, self-consciously reaching for "art" over "entertainment", before amateur efforts like So Far (1996) and Tapestry (1996) took it to the next level). Robb Sherwin has been one of the few IF authors to avoid either style, walking his own road. His writing has always felt weirdly contemporary, like he's one of the "cool kids", kindly inviting us dorks to live in his cool world for a while.

Cryptozookeeper remains his greatest achievement - go and read my 2011 review for more - and while Enceladus can't hope to match that works grand, sprawling expansiveness (Enceladus is a one-hour game, Cryptozookeeper is much, much bigger), this is a perfect entry-point for those new to Sherwin-world. This is the best implemented, most bug-free Sherwin game I have come across. A couple of nouns from the descriptions that it was not possible to EXAMINE or otherwise interact with: but that's it. It also heavily tones down any puzzle-solving. It will be almost impossible to get stuck or to wander aimlessly. This allows the emphasis to remain firmly focused on the good stuff: it's funny. Properly funny. Enceladus has sharpened, precise jokes, which almost all land successfully. Sure there are some people who are going to say "but comedy is subjective!" Yes, and those same people will also say that there are "very fine people on both sides”. Here is a list of funny things: Monty Python. Steve Martin. Limmy. On Cinema At The Cinema. This game. Objectively funny. 

Within three lines of its opening, Sherwin has expertly established time, place, characters, objective and tone:

"Look, Captain, there's a werewolf loose on the ship. We have to go - now!!"

"Who are you?' she says. "And where are my pants??"

Ah, cripes!

There are killer bits straight out of a stand-up comedy set:

(On the Southern Cross) You're telling me that God ... GOD, the all knowing and all powerful ... created this piece of religious iconography and then set it in a hemisphere that Christ never visited? 

What other star patterns are only visible from that side, diagrams on how to escape a crucifix?

There is a scarily accurate take-down of Wikipedia:

(On Wikipedia) ...filled with duplicitous losers that turned the exchange of free information into a political battle where scumbags scuttle into tribes to spread their lies.

Don't use Wikipedia, people. And there is good old-fashioned slapstick:

Mr Mailx moves slowly to the edge of the hole. "There, Is, One, Aaaaah," he says, having gotten a little too close to the edge, and fallen. The Captain just shakes her head.

Enceladus, like most Robb Sherwin games, uses the semi-obscure Hugo engine. For some reason, the IFComp page for the game omits to mention that Hugo games can also be played on-line in your browser, using "HugoJS". I shall hereby graciously provide my humble readers with a direct link to play Enceladus via this amazing, magical technology: - enjoy!

October 08, 2019

Emily Short

Mailbag: IF for Reinforcement Learning

by Emily Short at October 08, 2019 07:41 AM

Hi Emily

I’m a PhD student working with Prof. Mark Riedl at Georgia Tech and Microsoft Research Redmond. I am currently working on making AI agents (specifically using reinforcement learning) that play interactive fiction games (text-adventure games in the vein of Zork) in a non-game specific, generalizable way.

I was advised by Prof. Janet Murray that you would be the right person to help answer a question I had regarding these games, given your expertise in interactive fiction. If you have a list of such games (e.g. those given here, is it possible to identify a subset of maybe ~10-15 of them that reasonably cover a majority of all interactive fiction games in terms of game structure, i.e. linearity of progression/score accumulation from the perspective of a learning agent? If it is possible, what would this set look like? Any insight at all would be great.

Nice to hear from you — I’ve been keeping an eye on this space as people have been publishing about it recently.

I’m not sure there’s a perfect answer to this, since IF is hugely varied in how it handles world model, score, pacing, etc. Also, your list here skews very much towards early interactive fiction, which means it doesn’t cover some of the formal experiments that came along later.

I also don’t remember how score works in all the games in this list — some of them I’ve not played, or played a long time ago.

However, with that in mind, here are a couple of categories that represent some fairly standard game structures:

Short or medium game in which score is given out rarely — Lost Pig (max 7)

Short or medium game in which score is given more frequently — Meteor etc. (max 30), Balances (max 51)

Long game in which score is distributed fairly frequently throughout — Adventure, Zork; possibly Enchanter and Sorcerer also; Anchorhead, as I recall

And from your list, I recall these being ones that might pose an interesting challenge:

Curses — it’s long, it’s complicated, it does have a scoring system which it doles out gradually, and it also does a trick (if I’m remembering right) where it actually at one point deducts score from the player again. 

Wishbringer — this one’s interesting because there’s a scoring system that reacts to how many times you’ve used the magic stone in the game — so the more you use wishes, the easier the game becomes, but the lower your final score.

Hunter, in Darkness — doesn’t keep score. There’s also a procedurally generated maze in this, which I would expect to make it very challenging indeed.

Thinking about games not on your list, here are some other formal extremes that might be interesting to try to reason about; all of these can be found on and in most cases they’re available for download.

ASCII and the Argonauts — an intentionally short and simple game that gives a bunch of +1 rewards for doing basic tasks; the relatively small verb set might make it easier than some of the other games.

Aisle — a game that takes one move to play, and for which many different verbs are available; there’s also no score. It’s hard to imagine how one would use reinforcement learning on this, but it represents one extreme that might be valuable for purposes of thought experiment.

Adventurer’s Consumer Guide — as I recall this one gives out a pretty steady stream of +1 point rewards, rather than only a few or only rarer rewards, so it might be a nice counterpoint to some of the others.

Savoir-Faire — a game of mine, and I suggest it just because I happen to know it well enough to know how the rewards work; there are frequent opportunities for scoring and some rewards are bigger than others.

Bronze — a game that I wrote that keeps track of how many rooms you’ve explored and triggers certain narrative events when you’ve found more of the space, so you could use the explored-rooms count as a secondary signal to score and probably get some useful reinforcement out of that aspect as well.

Captain Verdeterre’s Plunder — gives you a score based on how much loot you managed to rescue off a sinking ship before it goes under. Genuinely an interesting optimization problem; human players have competed to try to come up with the highest-score possible traversal.

Journey to Alpha Centauri in Real Time — as the name would suggest, this takes place over a certain amount of elapsing real time and therefore it’s not possible to finish, because it’s representing a very long journey in space.

Rematch — a game in which the challenge is to figure out a single very long command that will solve the game in a single move, and in which there is a cyclical pattern to the initial world set-up. (I think this one is not a z-machine game, so it might not work with Jericho.)

Zero Sum Game — starts with a score and counts down to zero (but this may be less interesting than the others since you could just reverse the sign of the signal and wind up with something equally valid).

Hadean Lands — fiendishly hard puzzle game, in which instead of score you’re gaining access to lots of objects which could arguably be used as a proxy for progress. Also features areas where the player has to do similar things in slightly different ways.

October 07, 2019

The People's Republic of IF

October meeting

by zarf at October 07, 2019 01:41 AM

The Boston IF meetup for October will be Monday, October 14, 6:30 pm, MIT room 14N-233.

October 06, 2019

Renga in Blue

Warp: Swimming and Sailing

by Jason Dyer at October 06, 2019 02:41 PM

With IFComp, I’ve managed to plow through about 10 Twine games and 0 text adventures. Warp occupies enough headspace that I have trouble fitting anything similar in, but other interactive fiction seems to occupy a different brain category. (I will probably do reviews, but as a “compilation” where I will compare a bunch of games at once.)

A “majestic Spanish Galleon” which patrols the seas. If you’re swimming, it doesn’t bother you; if you’re sailing, it fires cannons. Warp has the largest amount of ASCII art I’ve seen in an adventure game. Both mainframe Zork and Stuga included a handful, but I’ve seen something like 30 pictures in Warp so far.


I’ve opened up quite a bit of map and found many more treasures, although I haven’t done a run yet where I’ve gathered them all at once. Part of this has to do with a nasty discovery Roger Durrant made.

I had (without too much difficulty or fanfare) discovered that in the Bank of Warp, the vault opens at a particular time (hinted at by a note in the Director’s office). I was then able to sneak in and grab some gold bullion, delivering it to the display case in the Warp Museum and netting a total of 35 points. Roger subsequently tested out the same solution and found he couldn’t do it; essentially, if you miss the time window near the start for entering the vault, you have broken the game.

I am hence somewhat paranoid about other potential softlocks, and since Warp is fairly open, I’ve got various save games running in parallel as I thwack at the various mysteries and puzzles. Most notably, there’s a lamp with a battery having limited time, just like Adventure/Zork/Acheton, and I’m worried once all the uses are taken into account the time limit is tight. I still remember in the last part of Acheton having to walk through darkness to the endgame (saving repeatedly and restoring when I fell into a pit by chance); with Warp I have no such way out, because if your lamp gives out in darkness you die right away.

My major lamp use went into mapping a maze.

I first thought this was going to be a “well-behaved” maze where directions go back and forth in the direction you expect, and indeed the first portion of my expedition went that way. The map was laid out in “micro-floors” with up-and-down stairs connecting a little randomly, but each floor being normal. There was a treasure which took a little effort to find, I mopped up most of the available directions, and that was that.

However, in one of the last exits I checked (in a pair of rooms marked “Kilroy Was Here” and “Kilroy Was Here Too”) the micro-floor idea continued, but there were now many more “punishment” one-way exits. By that I mean if you went the “wrong way” you were sent far off course, essentially guaranteeing there was no way to find a good route at random. Structurally, this seems intended as a fake-out — trying to coax players into giving up at finding the first treasure and assuming the maze has nothing else to yield.

Secretarial Pool.
This is a large room with a high ceiling, glass walls, and a large, deep, swimming pool in the center. There is a sign next to the diving board that reads

(Executives Forbidden)
Please Wash Toes Before Entering
the Pool.

There are two ways out, to the east and back to the north.

I can see the following:
Swimming Pool
Postage Stamp

Incidentally, JUMP IN POOL is death.

You gracefully execute a perfect swan dive into mid air. In your great haste, however, you failed to notice that the Warp Building Maintanence crew has drained the pool to keep it from leaking into the Operating room below. But they are efficient, and will undoubtedly scrape up your remains before refilling the pool …

In an adjacent room there’s a hole that you can pick up, and move to other places (!). I haven’t worked out the full mechanics of how this works. I was too busy otherwise trying to map out the ocean.

Haunt’s 7 by 7 by 7 cube of water was technically larger, but this still trumps anything I’ve previously played in terms of elaborateness. You can swim out alone (although if you are out more than 3 turns, you get attacked by sharks). There is the occasional stable position which resets the “shark counter” — like a fog bank — so I was able to use those to do produce quite a bit of the map.

Some locations are just too far from shore and you need a boat. There is a boat sitting out in the open and I’m fairly sure using it wasn’t really intended as a puzzle, yet it’s very easy to miss how to launch it. You can go DOWN and find another room.

You find yourself in the main cabin of the boat. The walls here are dark paneled, and there is a well-used bunk along the port side. A small wooden cabinet is built into the wall at the bow end of the bunk. At the aft end of the starboard wall is a large closet, and the remainder of the room sports nothing of interest other than a few shelves. A few short steps at the aft end of the cabin lead back up to the main deck, while next to them another short stairway leads down, apparently to a lower deck.

I can see the following:
Wooden Cabinet

There’s a sail in the closet; take it upstairs and RAISE SAIL and the boat will become mobile.

While reefs are no threat while swimming, they smash up the boat if you hit them while sailing. I find the dual-meaning to the locations intriguing. (There actually seems to be triple-meaning because diving underwater seems to be possible, although I haven’t tested it yet — hopefully next time.)

I will be traveling so the next post might be delayed a little. If you need some reading material in the meantime, there is a spreadsheet that is collecting the current reviews for IFComp.

October 05, 2019

Jolt Country


by Ice Cream Jonsey at October 05, 2019 02:39 AM

The 2019 Interactive Fiction Competition is live!! Check out all the games in this year’s comp here at

The game I made is called Enceladus, you can download it through the IF Comp site here. The Windows version is included in the zip file, but you can get what you need to play it on Linux and a Mac by going here.

Enceladus is a science fiction game with jokes. On a small saucer-shaped spaceship, a werewolf has somehow boarded your ship. You play as an ensign, just an x-ray technician and attempt to navigate the crisis. If you have never played any of my games before, it’s a great jumping-on point.

Play the games in this year’s comp, write some reviews, let people know what you think about all the games. This year’s pool of authors are one of the nicest groups of people I’ve ever found myself a part of and any feedback created is going to inspire some great people. Enjoy!

October 04, 2019

The Digital Antiquarian

Betrayal at Krondor

by Jimmy Maher at October 04, 2019 04:41 PM

During the 1960s and 1970s, a new type of game began to appear in increasing numbers on American tabletops: the experiential game. These differed from the purely abstract board and card games of yore in that they purported to simulate a virtual world of sorts which lived behind their surface systems. The paradigm shift this entailed was such that for many players these games ceased to be games at all in the zero-sum sense. When a group came together to play Squad Leader or Dungeons & Dragons, there hung over the plebeian kitchen or basement in which they played a shared vision of the beaches of Normandy or the dungeons of Greyhawk. The games became vehicles for exploring the vagaries of history or the limits of the imagination — vehicles, in other words, for living out shared stories.

In retrospect, it was perhaps inevitable that some of the stories generated in this way would make their way out of the gaming sessions which had spawned them and find a home in more traditional, linear forms of media. And, indeed, just such things were happening by the 1980s, as the first novels born from games arrived.

Needless to say, basing your book on a game you’ve played isn’t much of a path to literary respectability. But for a certain kind of plot-focused genre novel — the kind focusing strictly on what people do rather than why they do it — prototyping the whole thing as a game makes a degree of sense. It can keep you honest by forcing your story to conform to a simulated reality that transcends the mere expediency of what might be cool and exciting to write into the next scene. By pushing against authorial fiat and the deus ex machina, it can give the whole work an internal coherency — an honesty, one might even say — that’s too often missing from novels of this stripe.

The most widely publicized early example of the phenomenon was undoubtedly the one which involved a humble insurance salesman named Tom Clancy, who came out of nowhere with a techno-thriller novel called The Hunt for Red October in 1984. The perfect book for a time of resurgent patriotism and military pride in the United States, it found a fan in no less elevated a personage than President Ronald Reagan, who declared it “my kind of yarn.” As the book topped the bestseller charts and the press rushed to draft their human-interest stories on the man who had written it, they learned that Clancy had gamed out its entire scenario, involving a rogue Soviet submarine captain who wishes to defect along with his vessel to the United States, with a friend of his named Larry Bond, using Harpoon, a tabletop wargame of modern naval combat designed by the latter. Clancy’s follow-up novel, a story of open warfare between East and West called Red Storm Rising, was a product of the same gestation process. To the literary establishment, it all seemed extremely strange and vaguely unsettling; to many a wargamer, it seemed perfectly natural.

Another line of ludic adaptations from the same period didn’t attract as much attention from the New York Times Book Review, much less the president, but nevertheless became almost as successful on its own terms. In 1983, TSR, the publisher of Dungeons & Dragons, decided to make a new series of adventure modules for the game, each of which would feature a different kind of dragon — because, as some of their customers were writing in their letters, the existing Dungeons & Dragons modules “had plenty of dungeons, but not many dragons.” The marketing exercise soon grew into Dragonlance, an elaborately plotted Tolkienesque epic set in a brand new fantasy world — one which, yes, featured plenty of dragons. TSR asked employees Margaret Weis and Tracy Hickman to write a trilogy of novels based on the fourteen Dragonlance adventure modules and source books they planned to publish. Thus Dragons of Autumn Twilight, the first volume of The Dragonlance Chronicles, was published in the same year as The Hunt for Red October. It promptly became a nerdy sensation, the biggest fantasy novel of the year, spawning a whole new business for TSR as a publisher of paperback novels. In time, said novels would become as big a part of their business as the games on which they were based.

A third, only slightly less heralded example of the games-into-books trend actually predates the two I’ve just mentioned by a couple of years. In the late 1970s, a group of students at the University of California San Diego took up the recently published Dungeons & Dragons. Growing dissatisfied with TSR’s rules, they scrapped them one by one, replacing them with their own home-grown versions. Meanwhile they evolved a world in which to play called Midkemia, complete with its own detailed history, bestiary, sociology, and geography. Forming a little company of their own, as so many Dungeons & Dragons fanatics were doing at the time, they published some of their innovations to modest sales.

Raymond E. Feist

But one of their number named Raymond E. Feist had bigger ambitions. He wrote a novel based on some of the group’s exploits in Midkemia. Calling it simply Magician, he got it published through Doubleday in 1982 as the first volume of The Riftwar Saga. It sold very well, and he’s been writing Midkemia novels ever since.

Unlike the later cases of Tom Clancy and Dragonlance, Magician wasn’t widely publicized or advertised as being the product of a game. It was seen instead as merely the latest entry in an exploding branch of genre fiction: lengthy high-fantasy series inspired by J.R.R. Tolkien, often to the point of one-to-one correspondences between characters and plot events, but written in a manner more immediately accessible to the average Middle American reader, with more action, more narrative thrust, less elevated diction, and markedly less digressive songs and poetry. Dragonlance, of course, is an example of the same breed.

I must admit that I’ve personally read only the first book of Feist’s series, and not even to completion at that. This sort of derivative high fantasy doesn’t do much for me as a rule, so I’m not the best person to judge Feist’s output under any circumstances. Anything positive I do say about it runs the risk of damning with faint praise.

To wit: my wife and I used the book as our light bedtime reading, and we made it about two-thirds of the way through before terminal ennui set in and we decided we’d had enough. If that seems like less than a ringing endorsement, know that it’s farther than I generally get with most fantasy novels, including ones with considerably more literary credibility. I thus feel comfortable in saying that at least the early Raymond E. Feist novels are well-crafted examples of their breed, if you happen to like that sort of thing. (I do understand from others that the quality of his work, and particularly of his plotting, began to decline after his first handful of Midkemia novels. Perhaps because he was no longer basing them on his gaming experiences?)

The world of Midkemia is most interesting for our purposes, however, for the computer game it spawned. Yes, a series of novels based on a game got turned back into a very different sort of game. And then, just for good measure, that game got turned into another novel. It’s a crazy old transmedia world.

The more direct origin of Betrayal at Krondor, the game in question, can be traced back to June of 1991 and a chance meeting between John Cutter and Jeff Tunnell at the Summer Consumer Electronics Show. Both names may be familiar to regular readers of these histories.

John Cutter

Cutter had spent several years with Cinemaware, helping to craft many of their most innovative creations, which blended strong narrative elements with play styles that were unorthodox in story-heavy computer games at the time. In late 1990, with Cinemaware in the process of collapsing, he and several colleagues had jumped ship to New World Computing, best known for their Might & Magic series of CRPGs. But he was trapped in a purely administrative role there, without the freedom to create which he had enjoyed at Cinemaware, and was already feeling dissatisfied by the time he met Tunnell at that Summer CES.

Jeff Tunnell

Tunnell, for his part, was the founder of the studio known as Dynamix, now a subsidiary of Sierra Online. They were best known for their 3D graphics technology and the line of vehicular simulators it enabled, but they had fingers in several other pies as well, from adventure games to a burgeoning interest in casual puzzle games.

Recognizing talent when he saw it, Tunnell asked Cutter to leave Southern California, the home of the erstwhile Cinemaware and the current New World, and come to Eugene, Oregon, the home of Dynamix. Not only would he be able to have a creative role there once again, Tunnell promised, but he would be allowed to make whatever game he wanted to. Cutter jumped at the chance.

Once in Eugene, however, he struggled to identify just the right project. His first instinct was to make a point-and-click adventure game in the Sierra mold, but Tunnell, having made three of them in the last couple of years to less than satisfying effect, was feeling burned out on the genre and its limitations, and gently steered him away from it. (Absolute creative freedom, Cutter was learning, is seldom really absolute.)

At last, Tunnell came to Cutter with an idea of his own. He’d been reading a very popular series of fantasy novels by this fellow named Raymond E. Feist, and he thought they’d make a fine CRPG. Dynamix had never dabbled in the genre before, but when had that ever stopped them from trying something new? He suggested that Cutter give the first few of the books a read. If it turned out that he liked them as well and agreed that they’d make a good game, well, perhaps he should ring Feist up and have a chat about just that possibility.

Glad to finally have a clear sense of direction, Cutter did the one thing and then did the other. Feist was very busy, but was himself a long-time computer gamer, having sat down in front of his first Apple II some twelve or thirteen years before. He liked the idea of seeing Midkemia come to life on a computer screen. Although he didn’t have much time for working personally on such a project, he told his agent to make the deal happen if at all possible. So, a contract was signed that gave Dynamix the right to make Midkemia games until January 1, 1995, with Feist given the right of final approval or rejection of each title prior to its release. By one account at least, it was the most expensive literary license yet granted to a game developer, a sign of Feist’s ongoing popularity among readers of fantasy literature.

Another, slightly less welcome sign of same followed immediately after: upon being asked whether he was interested in authoring the game himself, Feist said that his time was money, so he’d need to be paid something beyond the terms of the licensing agreement itself — and, he noted flatly, “you couldn’t afford me.” This posed a dilemma. Cutter believed himself to be a better designer of game systems than a writer, and thus certainly wasn’t going to take on the job personally. Casting about for a likely candidate, his thoughts turned to one Neal Hallford, an enthusiastic young fellow with a way with words whom he’d befriended back at New World Computing.

Neal Hallford

A fresh-out-of-university Hallford had joined New World in the role of writer some months before Cutter himself had arrived. His first assignment there had been to make sense of the poorly translated English text of Tunnels & Trolls: Crusaders of Khazan, a project New World had chosen to outsource to a Japanese developer, with underwhelming results all the way around. After that truly thankless task, he’d worked for a while on Might and Magic III before playing a pivotal role on Planet’s Edge, an ambitious science-fiction CRPG that had tried to do just a little bit too much for its own good. He was just finishing that project when his old friend John Cutter called.

Like Cutter before him, Hallford found Dynamix’s offer difficult to refuse. Eugene struck him as idyllic by contrast with the crowded, smoggy streets of Los Angeles; meanwhile Dynamix’s offices enjoyed the well-deserved reputation of being just about the most stylish and comfortable in the entire industry, vastly outdistancing even the parent company of Sierra in that respect. Certainly they compared favorably with the chaotic jumble of tightly packed cubicles that was the domain of New World. Thus on Halloween Day, 1991, Hallford shook hands with his old colleagues there for the last time and hopped into his Geo Metro for the drive north.

Upon Hallford’s arrival in Eugene, Cutter pulled him into his office and kept him there for a week, while the two hashed out exactly what game they wanted to make and wrote the outline of a script. Hallford still remembers that week of frenzied creativity as “one of the best weeks of my life.” These two friends, different in talents and personality but unified in their vision for the game, would do the vast majority of the creative heavy lifting that would go into it. Broadly stated, Cutter would be the systems guy while Hallford would be the story guy, yet their visions would prove so simpatico that they’d seldom disagree on much of anything at all.

Jeff Tunnell had initially fallen in love with a Midkemia novel called Silverthorn, and the original plan he’d pitched to Cutter had been to make the game a fairly straightforward adaptation of that book’s plot. But such a thing is inherently problematic, for reasons I’ve had ample cause to discuss in earlier articles. Players who buy the game because they read and liked the novel — who are, after all, the whole reason for making a licensed game at all from a business perspective — won’t be excited about stepping through a plot they already know. At the same time, it’s all too easy from the design side to make a game where victory hinges on taking all of the same idiosyncratic, possibly irrational actions as the protagonists of the novel. And so you end up with a game that bores one group of players to tears, even as it frustrates another group who don’t happen to know what Character A needs to do in Situation B in order to replicate the novel’s story.

The biggest appeal of the Midkemia novels, Hallford believed, was indeed the world itself, with its detailed culture and geography and its cast of dozens of well-established characters. It would be better, he thought, to set a brand new story there, one that would let Feist’s many fans meet up with old friends in familiar locales, but that wouldn’t force them to step by rote through a plot they already knew. During the crash course on Midkemia which he’d given himself in the few weeks before starting at Dynamix — like Cutter, he’d come to Feist fandom cold — Hallford had identified a twenty-year “hole” in the chronology where he and Cutter could set a new story: just after A Darkness at Sethanon, the concluding volume in the original Riftwar Cycle that had started the ball rolling. Somewhat to everyone’s surprise, Feist was willing to entrust this young, unproven writer with creating something really new in his world. Betrayal at Krondor was off and running.

Hallford may have come to Midkemia late, but his dogged determination to capture the world exactly as it existed in the novels would come to a large degree to define the project. He calls himself a “born fanboy” by nature. Thus, even though he wasn’t quite of Feist’s hardcore fandom, he had enormous empathy for them. He points back to an experience from his youth: when, as a dedicated Star Trek fan, he started to read the paperback novels based on the television series which Pocket Books published in the 1980s. I read them as well, and can remember that some of them were surprisingly good as novels, at least according to my adolescent sensibilities, while also managing to capture the spirit of the series I saw on television. Others, however… not so much. Hallford points to one disillusioning book in particular, which constantly referred to phasers as “ray guns.” It inculcated in him a sense that any writer who works in a beloved universe owes it to the fans of said universe — even if he’s not really one of them — to be as true to it as is humanly possible.

So, Hallford wrote Betrayal at Krondor with Feist’s fans constantly in mind. He immersed himself in Feist’s works to the point of that he was almost able to become the novelist. The prose he crafted, vivid and effective within its domain, really is virtually indistinguishable from that of its inspiration, whose own involvement was limited to an early in-person meeting and regular phone conversations thereafter. Yet the latter became more rather than less frequent as the project wore on; Feist found his enthusiasm for the game increasing in tandem with his surprise at how earnestly Hallford tried to capture his novels and the extent to which he was managing to succeed with only the most limited coaching. The fan verdict would prove even more telling. To this day, many of them believe that it was Feist himself who scripted Betrayal at Krondor.

But Betrayal of Krondor is notable for more than Neal Hallford’s dedicated fan service. It’s filled to bursting with genuinely original ideas, many of which flew in the face of contemporary fashions in games. Not all of the ideas work — some of them rather pull against one another — but the game’s boldness makes it a bracing study in design.

Following the lead of GUI advocates working with other sorts of software, game designers in the early 1990s were increasingly embracing the gospel of the “mode-less” interface: a single master screen on which everything takes place, as opposed to different displays and interfaces for different play states. (For an excellent example of how a mode-less interface could be implemented in the context of a CRPG, see Origin Systems’s Ultima VII.) Cutter and Hallford, however, pitched this gospel straight into the trash can without a second thought. Betrayal at Krondor has a separate mode for everything.

The closest thing it has to a “home” screen must be the first-person exploration view, which uses 3D graphics technology poached from Dynamix’s flight simulators. But then, you can and probably often will move around from an overhead map view as well. When interesting encounters happen, the screen is given over to text with clickable menus, or to storybook-style illustrated dialog scenes. When you get in a fight, that’s also displayed on a screen of its own; combat is a turn-based affair played on a grid that ends up vaguely resembling the Battle Chess games by Interplay. (Thankfully, it’s also tactically interesting and satisfying.) And then when you come upon a locked chest, you’re dumped into yet another new mode, where you have to work out a word puzzle in order to open it, because why not? All of these modes are accompanied by different styles of graphics: 3D graphics on the main exploration screen, a no-frills Rogue-like display for the overhead movement view, pixel art with the story scenes, digitized real-world actors with the dialog scenes, the sprite-based isometric view that accompanies combat, etc.

The first-person exploration view.

The overhead view.

A bit of exposition. Could this be a side quest before us?

The combat view.

A puzzle chest. The answer to this one, for the record, is “die.” Later riddles get much more complicated, but the mechanics of the puzzles ingeniously prevent them from ever becoming completely insoluble. Many a player has had a significant other who couldn’t care less about the rest of the game, but loves these puzzle chests…

This mishmash of approaches can make the game feel like a throwback to the 1980s, when genres and their established sets of best practices were not yet set in stone, and when many games that may strike us as rather odd mashups today were being produced. We can certainly see John Cutter’s roots in Cinemaware here; that company made a career out of ignoring the rules of ludic genre in favor of whatever systems best conveyed the fictional genre they were attempting to capture. By all rights, Betrayal at Krondor ought not to work, as so many of Cinemaware’s games tended not quite to work. All of these different modes and play styles — the puzzle chests in particular seem beamed in from a different game entirely — ought to add up to a hopelessly confusing muddle. Somehow, though, it does work; Betrayal at Krondor actually isn’t terribly hard to come to grips with initially, and navigating its many modes soon becomes second nature.

One reason for this is doubtless also the reason for much else that’s good about the game: its unusually extended testing period. When development was reaching what everyone thought to be its final stages, Dynamix sent the game to outside testers for what was expected to be a three-month evaluation period. Even this much usability testing would have been more than most studios were doing at this time. But the project, as so many game-development projects tend to do, ran way longer than expected, and three months turned into nine months of constant player feedback. While our universe isn’t entirely bereft of games that seem to have sprung into being fully-formed, by far the most good games attain that status only gradually, through repeated iterations of testing and feedback. Betrayal at Krondor came by its goodness in exactly this hard, honest way. Unlike a dismaying number of games from its time, this game feels like one that’s actually been played — played extensively — before it got released. The niggling problems that dog even many good games from the early 1990s (such as the infuriating inventory management and rudderless combat of Ultima VII) are almost completely absent here. Instead the game is full of thoughtful little touches to head off annoyance, the sort of touches that can only come from real player feedback.

The final verdict on its mishmash of graphical approaches, on the other hand, must be less positive. Betrayal at Krondor wasn’t a notably attractive game even by the standards of its day, and time has done it no favors; the project desperately needed a strong art director able to impose a unified aesthetic vision. The parts of it that have aged the worst by far are those employing digitized actors, who look almost unbelievably ludicrous, cutting violently against any sense of Tolkienesque grandeur Hallford’s prose might be straining to evoke. Most store-bought Halloween costumes look higher rent than this bunch of survivors of an explosion at the Loony Tunes prop department. John Cutter acknowledges the problems:

We digitized a lot of the actors, and we assumed they were going to be so pixelated that the makeup and costumes didn’t have to look that great. They just kind of had to be… close. But by the time we launched the game the technology had improved… yeah. You could see the elastic bands on the fake beards. It was pretty bad. I wasn’t crazy about a lot of the graphics in the game.

Tellingly, the use of digitized actors was the one place where Betrayal at Krondor didn’t blaze its own trail, bowing instead to contemporary trends.

For all of Betrayal at Krondor‘s welcome willingness just to try lots of stuff, its approach to story remains its most memorable and interesting quality of all. This aspect of the game was so front and center in the mind of John Cutter that, when he wrote a brief few paragraphs of “Designer Notes” for the manual, it came to occupy more than half the space:

We decided the game should be an interactive story. Characters would be multidimensional and capable of stirring the player’s emotions. The story would be carefully plotted with lots of surprises, a good mix of humor and pathos, and abundant amounts of mystery and foreshadowing to keep the player intrigued.

Balancing play against plot is the most confounding job any game designer can face on a fantasy role-playing game. In Betrayal at Krondor, we have integrated our plot so that it provides ample gaming opportunities, while also giving the player a sense of time, place, and purpose. This is achieved by making an onscreen map available to the player at all times, and by creating short-term goals — the nine chapters in the game — which give us a unique opportunity to tell a progressive story that still gives the player plenty of freedom to explore and adventure without being confined to a scripted plot.

In thus “balancing play against plot,” Cutter and Hallford were attempting to square a circle that had been bedeviling game designers for a long time. All of the things that mark a rich story — characters with agendas of their own; big reveals and shocking turns; the classic narrative structure of rising action, climax, and denouement; dramatic confrontations with expressive dialog — cut against the player’s freedom to go wherever and do whatever she wants. As a designer, says the conventional wisdom, you can’t have it all: you must rather stake out your spot on a continuum where at one end the player does little more than click her way through a railroaded plot line, and at the other she does absolutely anything she wants, but does it in a world bereft of any larger meaning or purpose. Adventure games tend to lean toward the set-piece-storytelling end of the continuum, CRPGs toward open-ended interactivity.

Even CRPGs from around the time of Betrayal at Krondor which are written expansively and well, such as Ultima VII, generally send you wandering through other people’s stories rather than your own. Each city you explore in that game is full of little story stubs revolving around the inhabitants thereof rather than yourself; your role is merely to nudge these dramas of others along to some sort of resolution before you disappear again. Your larger agenda, meanwhile, boils down to the usual real or metaphorical collecting of pieces to assemble the big whatsit at the end — a series of actions which can be done in any order precisely because they’re so simplistic in terms of plot. You’re in the world, but never really feel yourself to be of it.

Cutter and Hallford, however, refused to accept the conventional wisdom embodied by even so markedly innovative a CRPG as Ultima VII. They were determined to deliver the best of both worlds — an adventure-game-like plot and CRPG-like freedom — in the same game. Unsurprisingly, it doesn’t quite work as a whole. Nevertheless, the attempt is well worth discussing.

Betrayal at Krondor positively trumpets its intentions via the metaphors which its user interface employs. Once again ignoring all of the fashions of its time, which emphasized the definitively non-textual aesthetic of the interactive movie, this game presents itself as an interactive book with an enthusiasm worthy of the 1980s heyday of bookware. The overriding look of the game, to the extent it has one amidst all its clashing graphical styles, is of an illuminated manuscript, ink on yellowing parchment. The story is told in a literary past tense, save points become “bookmarks,” and, as Cutter himself noted in the extract above, the whole experience is divided into nine neat “chapters.”

The game is relentless about describing every single event using full sentences worthy of one of Feist’s novels. Sometimes the end result can verge on the ridiculous. For example, every single time you search the body of an opponent you’ve just killed — something you’ll be doing an awful lot of, what with this being a CRPG and all — you’re greeted with a verbose missive:

Owyn looked for supplies. Feeling like a vulture, he turned the body this way and that as he searched for anything that might be of value to them on their journey. All in all, he supposed that if he were the dead man, it wouldn’t matter to him any longer what happened to his belongings.

Every character has the exact same feeling when searching a dead body, despite very different personalities. This is one of many places where Betrayal at Krondor‘s verbosity winds up undercutting rather than strengthening its sense of mimesis.

Of course, you can and quickly will learn to click right through this message and its one or two random variations each time you search a corpse. But it remains an amusing sign of just how committed Cutter and Halford were to their “interactive storybook” concept in even the most repetitive, mechanical areas of their creation. (Imagine what Pac-Man would be like if the title character stopped to muse about his actions every time he swallowed a power pill and killed another ghost…)

All of this past-tense verbosity has an oddly distancing effect. You don’t feel like you’re having an adventure so much as reading one — or possibly writing one. You’re held at a remove even from the characters in your party, normally the primary locus of player identification in a game like this one. You don’t get to make your own characters; instead you’re assigned three of them who fulfill the needs of the plot. And, while you can guide their development by earning experience points, improving their skills, and buying them new spells and equipment, you don’t even get to hang onto the same bunch through the whole game. Characters are moved in and out of your party from chapter to chapter — again, as the needs of each chapter’s plot requires. The final effect almost smacks of a literary hypertext, as you explore the possibility space of a story rather than actually feeling yourself to be embodying a role or roles in that story. This is certainly unique, and not necessarily a bad thing. It’s just… a little strange in relation to what we tend to think of CRPGs as being. These are, after all, role-playing games.

As I’ve described it so far, Betrayal at Krondor sounds more akin to the typical Japanese than the Western CRPG. The former tend to lie much closer to the set-piece-story end of our continuum of design; they provide a set, fairly linear plot to walk through, generally complete with predefined characters, rather than the degree of world simulation and open-ended exploration that marks the Western tradition. (A Japanese CRPG is, many a critic has scoffed, just a linear story in which you have to fight a battle to see each successive scene.) Yet Betrayal at Krondor actually doesn’t fit comfortably with that bunch either. For, as Cutter also notes above, he and his design partner were determined to “give the player plenty of freedom to explore and adventure without being bound to a scripted plot.”

Their means of accomplishing that relies once again on the chapter system. Each chapter begins and ends with a big helping of set-piece plot and exposition. In between, though, you’re free to go your own way and take your time in satisfying the conditions that will lead to the end of the chapter. In the first chapter, for example, your assignment is to escort a prisoner across much of the map to the capital city of Krondor. How and when you do so is up to you. The map is filled with encounters and quests, most of which have nothing to do with your central mission. And when you eventually do finish the chapter and continue on with the next, the same map gets repopulated with new things to do. This is the origin of a claim from Dynamix’s marketing department that Betrayal at Krondor is really nine CRPGs in one. In truth, it doesn’t quite live up to that billing. Only a subsection of the map is actually available to you in most chapters, much of it being walled off by impenetrable obstacles or monsters you can’t possibly kill. Even the repopulation that happens between chapters is far from comprehensive. Still, it’s an impressively earnest attempt to combine the pleasures of set-piece plotting with those of an emergent, persistent virtual world.

And yet the combination between set-piece storytelling and emergent exploration always feels like just that: a combination rather than a seamless whole. Cutter and Hallford didn’t, in other words, truly square this particular circle. There’s one massive block of cognitive dissonance standing at the center of it all.

Consider: you’re told at the beginning of the first chapter that your mission of escorting your prisoner to the capital is urgent. Political crisis is in the air, war clouds on the horizon. The situation demands that you hurry to Krondor by the shortest, most direct path. And yet what do you do, if you want to get the most out of the game? You head off in the opposite direction at a relaxed doddle, poking your nose into every cranny you come across. There’s a tacit agreement between game and player that the “urgent” sense of crisis in the air won’t actually evolve into anything until you decide to make it do so by hitting the next plot trigger. Thus the fundamental artificiality of the story is recognized at some level by both game and player, in a way that cuts against everything Betrayal at Krondor claims to want to be. This isn’t really an interactive storybook; it’s still at bottom a collection of gameplay elements wired together with chunks of story that don’t really need to be taken all that seriously at the end of the day.

The same sense of separation shows itself in those lengthy chapter-beginning and -ending expository scenes. A lot of stuff happens in these, including fights involving the characters ostensibly under your control, that you have no control over whatsoever — that are external to the world simulation. And then the demands of plot are satisfied for a while, and the simulation engine kicks back in. This is no better or worse than the vast majority of games with stories, but it certainly isn’t the revolution some of the designers’ claims might seem to imply.

Of course, one might say that all of these observations are rather more philosophical than practical, of more interest to game designers and scholars than the average player; you can suspend your disbelief easily enough and enjoy the game just as it is. There are places in Betrayal at Krondor, however, where some of the knock-on effects of the designers’ priorities really do impact your enjoyment in more tangible ways. For this is a game which can leave you marooned halfway through, unable to move forward and unable to go back.

Dead ends where the only option is to restore are normally less associated with CRPGs than adventure games; they played a big role in all but killing that genre as a commercial proposition by the end of the 1990s. CRPGs are usually more forgiving thanks to their more simulation-oriented nature — but, sadly, Betrayal at Krondor is an exception, due to a confluence of design decisions that all seem perfectly reasonable and were all made with the best of intentions. It thus provides a lesson in unexpected, unintended consequences — a lesson which any game designer would be wise to study.

The blogger Chet Bolingbroke, better known as The CRPG Addict, made these comments recently in the context of another game:

One of the notable features of CRPGs in contrast to some other genres is that they almost always support a Plan B. When one way of playing doesn’t work out, you can almost always resort to a more boring, more banal, grindier method of getting something done. I tend to mentally preface these fallback plans with “I can always…” Having a tough time with the final battle? “I can always reload again and again until the initiative rolls go my way.” Can’t overcome the evil wizard at your current level? “I can always grind.” Running out of resources? “I can always retreat from the dungeon, head back to town and buy a ton of healing potions.”

The most frustrating moments in CRPGs are when you suddenly find yourself with no way to finish “I can always” — when there is no Plan B, when luck alone will never save you, when there isn’t even a long way around.

This is precisely the problem which the player of Betrayal at Krondor can all too easily run into. Not only does the game allow you to ignore the urgent call of its plot, but it actually forces you to do so in order to be successful. If you take the impetus of the story seriously and rush to fulfill your tasks in the early chapters, you won’t build up your characters sufficiently to survive the later ones. Even if you do take your time and explore, trying to accrue experience, focusing on the wrong skills and spells can leave you in the same boat. By the time you realize your predicament, your “Plan B” is nonexistent. You can’t get back to those encounters you skipped in the earlier, easier chapters, and thus can’t grind your characters out of their difficulties. There actually are no random encounters whatsoever in the game, only the fixed ones placed on the map at the beginning of each chapter. I’m no fan of grinding, so I’d normally be all in favor of such a choice, which Cutter and Hallford doubtless made in order to make the game less tedious and increase its sense of narrative verisimilitude. In practice, though, it means that the pool of available money and experience is finite, meaning you need not only to forget the plot and explore everywhere in the earlier chapters but make the right choices in terms of character development there if you hope to succeed in the later ones.

On the whole, then, Betrayal at Krondor acquits itself better in its earlier chapters than in its later ones. It can be a very immersive experience indeed when you first start out with a huge map to roam, full of monsters to battle and quests to discover. By the time said map has been repopulated three or four times, however, roaming across its familiar landmarks yet again, looking for whatever might be new, has begun to lose some of its appeal.

And then, as Neal Hallford would be the first to admit, Betrayal at Krondor is written above all for Raymond E. Feist fans, which can be a bit problematic if you don’t happen to be among them. This was my experience, at any rate. As an outsider to Feist’s universe, watching characters I didn’t know talk about things I’d never heard of eventually got old. When an “iconic” character like Jimmy the Hand shows up, I’m supposed to be all aflutter with excitement, but instead I’m just wondering who this latest jerk in a terrible costume is and why I should care. In my view, the game peaks in Chapter 3, which takes the form of a surprisingly complex self-contained murder mystery; this is a place where the game does succeed in integrating its set-piece and emergent sides to a greater extent than elsewhere. If you elect to stop playing after that chapter, you really won’t miss that much.

As I noted already, Betrayal at Krondor ran dramatically over time and over budget. To their credit, Dynamix’s management didn’t push it out the door in an unfinished state, as was happening with so many other games during this period of transition to larger and more complex productions. Yet everyone, especially poor Neal Hallford, felt the pressure of getting it done. Not only did he write almost every word of the considerable amount of text in the game, but he also wrote much of the manual, and somehow even wound up on the hook for the puff pieces about it in Sierra’s customer newsletter. After weeks of virtually living at the office, he collapsed there one day, clutching at his chest. His colleagues rushed him to the hospital, believing he must be having a heart attack even though he was still in his twenties. It turned out that he wasn’t, but the doctor’s orders were clear: “You’re not going back to work for a week. Get some rest and eat something proper. No pizza. No soft drinks. It’s either this or next time you leave work it’ll be in a hearse.” Such are the perils of commercial game development.

Betrayal at Krondor finally shipped on June 15, 1993, an inauspicious time in the history of CRPGs. Origin Systems was about to take the Ultima series in a radically different direction after a less than overwhelming response to Ultima VII; Sir-Tech was about to put their equally long-running Wizardry series on ice for similar reasons; SSI was facing dwindling sales of their Dungeons & Dragons games and was on the verge of losing the once-coveted license; other publishers were quietly dropping less prominent franchises and would-be franchises. The several years to come would be remembered by CRPG fans as the Dark Age of their favored genre; relatively few of games of this stripe would be released at all, and those that were would be greeted by the marketplace with little enthusiasm.

Initially, Dynamix’s first CRPG performed about as well as you might expect in this environment. Despite some strong reviews, and despite whatever commercial advantages the Feist license brought with it, sales were slow. Cutter and Hallford had gone into Betrayal at Krondor imagining it to be only the first entry in a new series, but it soon appeared unlikely that a sequel would come to pass. Sierra, Dynamix’s parent company, was having an ugly year financially and wasn’t in the mood to make another expensive game in a passé genre, while Jeff Tunnell, the man who had had the original idea for Betrayal at Krondor, had stepped down from day-to-day management at Dynamix in favor of running a smaller subsidiary studio. Cutter and Hallford begged their new bosses to give the game time before making any final decisions, noting that good reviews and positive word of mouth among fans of the novels could yet pay dividends. The leadership team responded by laying Cutter off.

But over time, Betrayal at Krondor continued to sell steadily if not spectacularly. Then a genuine surge in sales came in early 1994, when a CD-ROM-based version featuring a lovely soundtrack and enhanced if still less than lovely graphics was released, just as the influential magazine Computer Gaming World was crowning the game the best CRPG of the previous year. Dynamix now made a belated attempt to start work on a sequel, asking Neal Hallford to helm it. But he considered the budget they were proposing to be inadequate, the time frame for development far too compressed. He turned it down, and left the company shortly thereafter. Dynamix would never make a second CRPG, whether set in Midkemia or anywhere else.

Nevertheless, that wasn’t quite the end of the story. Feist had been profoundly impressed by Betrayal at Krondor, and now took the ludic possibilities of his series of novels much more seriously than he had before seeing it. As soon as the Dynamix license expired at the beginning of 1995, he began to shop the property around once again. Initially, however, he found no one willing to pay his price, what with the current state of the CRPG market. While interactive Midkemia was thus in limbo, Sierra came up with another, cheaper idea for capitalizing on the first game’s slow-burning success. Lacking the Midkemia license, they decided to leverage the first half of the Betrayal at Krondor name instead, releasing the in-house-developed Betrayal in Antara in 1997. It copied some of the interface elements and gameplay approaches of its predecessor, but moved the action to a generic fantasy world, to less satisfying effect.

And yet the story still wasn’t over. Feist had finally found a buyer for the Midkemia rights in 1996 in the form of a publisher known as 7th Level, who signed a studio known as PyroTechnix to make a direct sequel to Betrayal at Krondor at last. But when 7th Level ran into financial difficulties, Sierra of all publishers bought back the rights, along with PyroTechnix’s development contract. The latter completed the game and saw it released under the Sierra imprint in 1998. Feist played a much more active role on Return to Krondor, the game in question, than he had on Betrayal at Krondor, yet the result once again pales in comparison to the first Midkemia game, perhaps because Cutter and Hallford once again played no role. Its mixed reception marks the last official implementation of Midkemia on a computer to date, excepting only a brief-lived MMORPG.

Two of Feist’s later books, 1998’s Krondor: The Betrayal and 2000’s Krondor: Tear of the Gods, were based upon the first and second Midkemia computer game respectively. Thus Midkemia completed its long, strange transmedia journey from game to book to game to book again. Feist continues to churn out books apace today, but they don’t sell in the same quantities anymore, bearing as they do the stale odor of a series long past its sell-by date.

For many of us, Betrayal at Krondor will always remain the most memorable entry in the exercise in competent derivation that is Midkemia as a whole; the game is ironically much more innovative in its medium than the novels which spawned it are in theirs. Indeed, it’s thoroughly unique, a welcome breath of bold originality in a genre usually content to rely on the tried and true, a game which doesn’t work perfectly but perhaps works better than it has any right to. As a writer, I can only applaud a game which takes its writing this seriously. If it’s not quite the revolutionary amalgamation of narrative and interactivity that its creators wanted it to be, it’s still a heck of a lot more interesting than your average dungeon crawl.

(Sources: the book Designers and Dragons by Shannon Appelcline; Sierra’s newsletter InterAction of Winter 1992 and June 1993; Compute! of December 1993; Computer Gaming World of February 1993, April 1994, June 1994, August 1996, and October 1998; Electronic Games of October 1992 and June 1993; Questbusters of November 1991, August 1992, April 1993, and August 1993; Retro Gamer 84; Dragon of January 2004; the CD-ROM Today bundled CD-ROM of August/September 1994. Online sources include Matt Barton’s interviews with Neal Hallford, Jeff Tunnell, and John Cutter in Matt Chat episodes 191, 192, 201, 291, 292, and 293; Neal Hallford’s blog series Krondor Confidential; the “History of Midkemia Press” on the same publisher’s website.

Betrayal at Krondor and Betrayal in Antara are available as a package purchase at

October 03, 2019

Emily Short

Former Canon

by Emily Short at October 03, 2019 09:41 AM

There are quite a few games from the 1990s and early 2000s that are still routinely mentioned in roundups of key interactive fiction. And then there are others that felt equally or almost equally important at the time, that were commonly discussed in theoretical conversations about the state of the art, but that tend not to be remembered now nearly so often.

This list is an attempt to surface some of those games, either for interest value or because some of them really are still a lot of fun to play and worth looking back at.

John’s Fire Witch (John Baker, 1995) — from a modern perspective, this is arguably another one of any number of IF Comp-length text adventures with a pretty standard fantasy puzzle concept. At the time, there weren’t very many short games in this genre, so the concept of something accessibly-sized was notable.

Rematch (Andrew Pontious, 2000) — occasionally still mentioned by people who have been around a while, Rematch was an experiment in player expressivity and puzzle design that presented an extreme edge case of what is possible with parser IF. I tend to think of it as a bookend to Aisle: both are one-move games with a story to tell, both push the range of what we expect from parser interaction. But where Aisle simply recognizes lots and lots and lots of commands, Rematch recognizes very long and complex commands, where you’re requesting other people to do multi-part tasks for you.

Mystery Science Theatre 3000 Presents “Detective” (C. E. Forman, Graeme Cree, and Stuart Moore) — Interesting for the way it framed another work, though also in some ways a bit mean-spirited, this piece reimplements another, older work and then provides a running commentary upon that work’s failings. (It is neither as kind nor as inventive as the much more recent Re: Dragon that reframes a different entire game. At the same time, there was something interesting and daring about this: perhaps because, up to around this point, people tended to regard IF as so much effort to create that vaguely troll-y joke games weren’t that common, and neither were games that existed primarily as commentary.)

Pick Up the Phone Booth and Die (Rob Noyes, 1996) — A very short game about doing the title action and receiving the title result. But this was sufficiently entertaining to people that there were loads of spin-off joke games as well.

Sunset Over Savannah (Ivan Cockrum, 1997) — This game implemented a gorgeous beach full of meticulously interactive objects (sand to play with, underwater sequences…) and was one of the things I aspired to when I was working on simulation elements in my own games.

Worlds Apart (Suzanne Britton, 1999) — Huge and imaginative science fiction/fantasy game with many, many convenience features for the player. If you played Blue Lacuna and now want more, maybe check this out.

In the End (Joe Mason, 1996) — an early example of puzzle-less IF that took on serious subject matter instead, looking at the case of a character who is facing some serious problems and trauma.

She’s Got a Thing for a Spring (Brent VanFossen, 1997) — Prior to about 2000, this game was considered a gold standard for NPC interaction. There’s a non-player character named Bob who has loads of dialogue as well as an entire routine to how he goes about his day. The game has some other notable qualities, like an interest in landscape that sort of prefigured The Fire Tower.

Delusions (CE Forman, 1996) — one of the first hobbyist IF games I played, after Curses. It’s big, and I remember it being difficult and a bit confusing, but also ambitious and interesting. It involves a protagonist who isn’t exactly what you think, and the way your perceptions break down around you hadn’t been done much before. It was also, for the time, very technically sophisticated.

Other resources:

October 01, 2019

IFComp News

The 25th Annual IFComp is here

October 01, 2019 09:42 PM

Welcome to the 25th Annual Interactive Fiction Competition! Eighty-two brand-new IF works await your play and judgment. Yes, this does indeed set a new record for the most titles that IFComp has seen in one year.

Special 25th IFComp Logo

As a special treat this year, we commissioned artist Maia Kobabe to create this commemorative cartoon for the IFComp number 25, depicting a blessed space-computer surrounded by signifiers of past competition winners. (You may recognize Maia’s hand from the IF Archive 25th anniversary celebration in 2017. This has been a rich demi-decade for quarter-century anniversaries in the interactive fiction world!)

Whether you enjoy IFComp games on the pockmarked lunar surface, in the cozy comforts of home, or anywhere in between, we hope that you’ll join us as a judge this year.

Anyone can be a judge, and we want as many judges as possible! Just play and rate at least five games before November 15, 2019. (Yep, that’s all. Five. Just five. Don’t let the number of entries overwhelm you.) Read the rules, guidelines, and FAQ about judging IFComp, and then dig into the games.

More news for this year’s comp-opening:

  • We’ve added another long-requested feature to the ballot this year: it now randomizes the order of its displayed games, by default. You may hit the “Alphabetize” button at the top of the game-list to put the titles into a more predictable order, if you wish. And as always, logged-in judges get an additional “Personal shuffle” button that displays the games in an order unique to each judge. Give it a try!

  • The IF Community Forum at received a complete overhaul earlier this year. Not only does it run on a completely new platform, but it now operates as a publicly funded program of IFTF, IFComp’s parent organization.

    Check out the new IFComp sub-forum here, and feel free to discuss your experiences with the competition amongst a friendly crowd.

  • This year’s Colossal Fund passed its halfway mark last week! If you’ve already contributed – thank you so much! We’d love to get that blue line all the way to the right by the time judging ends on November 15, and we sincerely appreciate every contribution. (Which, as we never tire of reminding you, is tax-deductible where allowed by law.)

That’s all for now. Have a great IFComp!

Renga in Blue

Emily Short


by Emily Short at October 01, 2019 07:41 PM

Usually I use the first Tuesday of the month for a book review on some book about writing or game design or narrative. This month, I’ve had enough going on that I don’t have such a review ready.

Instead, some news: for a bit over three years, I’ve been at Spirit AI, first leading the Character Engine product and then for the past seven months as Chief Product Officer.

That has been an amazing experience in many ways — educational, inspiring, and requiring a huge amount of growth. I am immensely grateful for the opportunity to do that job, and very fond of the people I worked with. I still believe in the mission of both products.

That process also, however, meant more and more distance from creative, technical, and design work, and I found that I didn’t want to sustain that path indefinitely. So I have left Spirit: yesterday was my last day. (I think I’ve fixed all the places in social media profiles that say otherwise, but if you find something else I should fix, ping me and I’ll fix it.)

In the short term, I’m doing a little contracting — including to Spirit itself, and to Spirit’s clients, so that I continue to be involved with Character Engine. Also getting a bit of a rest, because this has been almost as intense as it has been enjoyable. And maybe playing some IF Comp games.

September 30, 2019

sub-Q Magazine

October 2019 Table of Contents

by Stewart C Baker at September 30, 2019 09:42 PM

This month we’re very excited to bring you all “The Soft Rumor of Spreading Weeds,” a new game from Porpentine Charity Heartscape.

This story is set in the same universe as “With Those We Love Alive,” and while you don’t need to have played that one to enjoy this, doing so might increase your enjoyment. If you want to give it a whirl, fetch a pen or other writing implement and head on over to Porpentine’s website (Go ahead! We’ll wait!).

October also brings an excellent complement of essays by Sharang Biswas and Anya Johanna DeNiro, and our lovely cover art from Laura De Stefani.

In other news, our 2019 game jam is coming up fast! We’ll post an announcement in November with information about our two guest authors (spoiler: they are both fantastic and I wish I had a chance to share a table of contents with them!) and the year’s theme will be announced when the jam opens to entries on November 15th.

You can sign up now and learn more about the jam on our jam page.

The post October 2019 Table of Contents appeared first on sub-Q Magazine.