You take a deep breath of salty air as the first raindrops begin to spatter the pavement, and the swollen, slate-colored clouds that blanket the sky mutter ominous portents amongst themselves over the little coastal town of Anchorhead.
So begins Anchorhead, a Lovecraftian interactive fiction game from 1997. As an IF fan and a Lovecraft devotee, I was thrilled to discover Anchorhead. Not only did Mike Gentry, the author, create a perfect Lovecraft setting and scenario, but he modernized the mythos, adding a female protagonist and setting the game in the then present.
Anchorhead was well received, winning the 1998 XYZZY Award for Best Setting and receiving nominations in most of the other major categories. The same year another Gentry game, Little Blue Men, won for Best Individual PC (player character).
Players had to wait until 2005′s [You wake up itching.], for another Mike Gentry game (hopefully Mike stayed frosty during his hiatus). Then, earlier this year, Gentry announced that he was revisiting Anchorhead with the intention of tearing it down and building it back up, better (and more disturbing) than before.
I had to talk to him.
Game Couch: Now, am I really talking to Mike Gentry or is this a chatbot?
Mike Gentry: Would it make you feel better to believe this is a chatbot?
GC: So who is Mike Gentry and what does he do when he isn’t remastering Anchorhead?
MG: Although the liberal-biased media would have you believe that the life of an interactive fiction writer is all jet-setting, lavish parties, Hollywood contracts, and high-priced escorts, the truth is my life is pretty ordinary. I live in northern Virginia with a wife, two kids, and two cats, and spend my days doing menial internet maintenance for a publisher of scientific journals.
GC: Anchorhead is my favorite Gentry game, but I think Little Blue Men is conceptually richer. Does LBM have good and bad endings, or just different endings?
MG: I think getting crushed to death by a falling vending machine is pretty unequivocally a bad ending. But beyond that, I really think it’s up to the individual player to interpret. Would you rather stay frosty, get steamed, or just learn to love yourself?
GC: Where did the inspiration for LBM come from?
MG: I can’t really remember. It was originally going to be just this dreamy, surreal office environment. I started coding it for the yearly IF competition, and just bogged down. Ground to a halt. I couldn’t finish it.
Then I read Fear and Loathing in Las Vegas, and something just clicked.
Don’t get me started; I’ll be wanting to re-release LBM next.
GC: [You wake up itching.] was your contribution to the Mystery House Taken Over project. Can you tell me about the MHTO project and what you wanted to accomplish with your entry?
They took the very first graphical adventure game of all time, Mystery House, and they ported it into Inform 6. Then they sent the source code and image files to various authors to “reinterpret.” The idea, ostensibly, was to create a “kit” that would allow anyone to create a modified Mystery House, regardless of their level of experience with interactive fiction. I’m not sure how well that part worked out … I know I wouldn’t have been able to make heads or tails of it if I weren’t already familiar with the Inform 6 language.
With my own entry, I wanted to keep it very simple. The idea was to mutate the core story into something very different, while changing the style and surface details as little as possible. It’s sort of a “stealth” Mystery House. There’s almost a sense that someone familiar with the original game could start playing and not realize they were playing something else until things had progressed too far.
GC: How would you explain Anchorhead to those who haven’t played it?
MG: It’s the archetypal Call of Cthulhu scenario, really: investigate a decaying New England town, thwart the plans of a nefarious cult, save the world from the depredations of the Great Old Ones, and keep your marriage from falling apart.
GC: Anchorhead may be the archetypal CoC scenario (and in it you can find elements from The Dunwich Horrow, The Festival, The Music of Erich Zahn, etc), but it’s definitely original, I mean, nothing is described as “squamous.”
MG: Lovecraft’s style is very artificial; it’s difficult to imitate unless you’re really trying. On the other hand, there are those who might argue that Anchorhead‘s prose isn’t “Lovecraftian.” I might even be one of them. I had a habit of pouring on the adjectives back then; now, my style tends to be much leaner.
You’ll see this difference in the Special Edition. Every room and object description is going under the editorial knife. My goal is to be just as evocative as the original, while allowing more room for the reader’s imagination.
GC: Montfort’s Law states: “Every general-interest article on [IF] is required to start off with Adventure, Zork, and the commercial boom in IF.” We don’t need to start that early, but was The Lurking Horror anything of an inspiration?
MG: I liked The Lurking Horror, but I thought it was too campy and too, um … zorky. I originally wrote Anchorhead because I wanted to see a Lovecraft-inspired text adventure game “done right.”
GC: Do you think Anchorhead has broader appeal beyond the IF fanbase because of its source material?
MG: Well, I have seen it mentioned several times on RPG.net. On the other hand, it’s an interactive fiction game, and interactive fiction requires a very specific sort of patience. I suspect that it probably appeals to IF enthusiasts first, Lovecraft fans second.
GC: Is interactive fiction more “interactive” than graphical gaming?
MG: “Interactive” is such a big word, it really depends on what you mean. If you just mean “immersive”, then no, I think a well-designed graphical game can do that just as easily as IF.
If you’re talking about breadth of options, at first glance it might seem that IF has the graphical games beat. If you compare the number of commands possible in a typical IF game with the range of action in, say, a first-person shooter, then sure. But then take a look at some of the sandbox games, like Grand Theft Auto or Oblivion, and look at the enormous amount of detail and depth that goes into that sort of free-form gameplay. Interactive fiction is never really “free-form,” the vast majority of commands have no meaningful impact on the game outside of the specific scenario designed by the author. So it’s not really about how many options there are; it’s about meaningful impact on play, and the depth of the environment in which you can exercise those options. So in that department, too, graphical games can easily match or exceed IF.
Now, if you’re talking about interactive story, where the player can significantly alter the form and direction of the narrative, then I do think IF has the potential to beat graphical games for one simple reason, which is money. You rarely see commercial games with fully branching story lines and multiple endings, because in a commercial game each of those scenes costs a great deal of time and money to produce, and no developer wants to spend a ton of money on a storyline that the customer might not ever see. Whereas all an IF author has to do to create a branching story line is sit down and write it.
Well, it’s a little bit more complicated than that. Branching storylines are still quite a bit of effort to code, which is why we still haven’t seen much of it even in IF. But with some of the tools now available in IF authoring languages, I’m hoping we’ll see more of it.
GC: When I reviewed Anchorhead for MobyGames, I wrote, “it’s more than bad weather, or getting lost in twisting alleys, or the knowing glances of the town’s denizens that’s getting to you. There’s something wrong here, and you’re going to figure out what it is.” By day two, the player is willing to break open a coffin. How do you get the player to that point without stretching believability?
MG: Horror is often at its most powerful, I think, when it is participatory. When the protagonist finds herself forced to witness things she would otherwise never, ever want to see, and to do things that she would otherwise never, ever want to do.
In a sense, I don’t have to convince the player of anything. I just lay out the facts. You are far from home. You have no allies. And someone that you love is being consumed by something unspeakable. What would you be willing to do to save that person? At what point would you be willing to trespass? Steal? Desecrate a coffin? Take a swing at someone with a meat hook? What I want is for the player to identify with the characters so deeply, and become immersed in the situation so thoroughly, that they can simply decide for themselves: are they prepared to do this, or not?
There’s some trickery involved as well, because of course if you don’t jump through the hoops, the game does not move forward. Hopefully the in-character identification and the out-of-character desire to unlock the whole story can go together hand-in-hand. But even if they don’t, there’s a strong tradition in IF of the greedy, sociopathic adventurer who will steal, break, and/or kill anything in his way in order to unlock the next chunk of text. And if that’s what gets you through the game, then that’s fine too.
GC: I think if I were writing something like this, I’d be tempted to lead the player by the hand to make sure the story played out correctly. Was that ever a concern?
MG: It’s not so much “leading” as “herding.” The game is full of constraints that prevent the story from playing out incorrectly. A lot of effort went into making those constraints as invisible, or at least as plausible, as possible. And within those constraints, I try to allow the player a lot of environment to explore.
For example, in the first day, the player can explore virtually the entire town. But everything is locked up tight. You can’t start opening things up until you’ve been in the house, and you can’t get to the house without Michael, and you can’t get Michael to come with you without the keys. So everything is designed to gently usher the player through that part of the story. But up to that point, the field is wide open. And everything that happens during that first exploration is part of the narrative, too: wandering empty streets in the rain, trying to get Michael to leave the library, whether or not you encountered the mist on your own before bringing Michael–that all becomes part of how the story plays out “correctly.”
GC: Isn’t Anchorhead named after a place on Tatooine?
MG: You have no idea how peeved I was when I found out about that.
GC: Aren’t you something of a reluctant expert on the Expanded Universe?
MG: I took a crash course in the EU mythology while writing a fluff piece for SciFi Magazine once. I stayed up until 5:00 AM on deadline, with a raging stomach virus, feverishly poring over every website I could find. They ended up cutting the piece. Fortunately I managed to forget nearly all of it. Except for the part about Lando Calrissian being “on the down-low” with Luke. I think that was in one of the Timothy Zahn novels.
GC: So you aren’t pulling a Lucas?
MG: I had already been thinking about revisiting Anchorhead for some time, but kept putting it off. Inform 6 was fun to learn, but unless you’re just particularly fond of programming, which I am not, it’s not all that fun to write in.
When Inform 7 was released, it was so different, such a paradigm shift, and it fixed so many things that I found tiresome or frustrating about Inform 6, that it spurred me to action. I learned I6 by writing Anchorhead, and I’ll learn I7 by rewriting it.
GC: I named the original as one of the scariest games people haven’t played. Is there a chance that the Special Edition will be scarier?
MG: I hope so. One thing I’m doing is identifying those parts that really didn’t fit the mood of the overall game, and rewriting them so that they don’t clash so much. The asylum, for example, is getting a huge overhaul. Remember Chuck the orderly? You probably wish you didn’t. Yeah, me too.
GC: How will character interaction differ between the two Anchorheads?
MG: I sketched out several possible systems for talking to NPCs, including one that lets you type in natural English (e.g., “Michael, please help me find the keys,” or, “Old man, I’ll give you the whiskey if you tell me everything you know.”). But most of these proved too impractical or over-featured. In Anchorhead, almost all of your interaction is with one character, Michael, and that only occurs in a few well-defined situations. So I needed to come up with a solution that addressed the specific needs of those situations.
The special edition will still use the old “ask/tell” system for talking to people, but it will be more robust. The game now differentiates between asking and telling, and it keeps track of what you’ve asked (or told) before, and to whom. It keeps track of what characters know. Sometimes a character won’t know about something until you tell them about it, and the new knowledge can change their behavior. This adds some depth to conversation beyond just throwing keywords at an NPC to see what its responses are.
I’m also implementing most NPCs more fully as objects in the game-world. In the original, many of Michael’s movements and actions were handled with cut-scenes. You’d get a paragraph describing what Michael was doing and saying, and there wasn’t any way you could interrupt or interact with it. Now, Michael moves and acts just like you doâ€”that is, one turn at a time. He’ll get up and follow you to the real-estate agent’s office (if you explain the situation to him and ask him for help). He’ll wander around outside, trying to get in. He’ll search the office, look under things, check drawers. He’ll find the keys, eventually, if he stumbles on them. He’ll get annoyed if you reveal that you’ve had them in your pocket the whole time. All this happens in “real time,” while you’re typing in commands and moving around the map.
GC: Speaking of maps, will the Special Edition see a “physical” release? I ask because the ultimate feelie would be a map of Anchorhead.
MG: There are tentative plans for releasing a package of “feelies,” physical artifacts from the game world. This depends on whether I can get the right materials and make them look good. A map probably won’t be among them, however. Actually, I’m not 100% confident that Anchorhead would map properly onto physical space.
GC: Can you tell me a bit more about the differences between Inform 6 and Inform 7? I’m interested to know how natural language programming has changed IF game design. I’m also interested in why your choose Inform over other languages.
MG: The “natural language” syntax by itself will not, I think, influence IF game design. I do think that it will have a huge influence on the kinds of people who are encouraged to try their hand at IF game design. Natural language is very inviting to people with no prior programming experience. You don’t have to learn a strange, artificial syntax; you don’t have to learn how to include libraries or declare constants or write an [Initialise;] routine; you just start with “The Foyer is a room. A coat stand is here.” And already you get to see it working; that’s a playable game, right there.
Of course it soon becomes more complicated. Underneath the veneer of “natural language,” Inform 7 actually has a pretty rigorous syntax, and it can be very picky about how you word certain kinds of phrases. But then there are other areas where the syntax is very loose, and it’s easy to be fooled into thinking that you can write your game in any sort of casual English, only to have it break down when you try to compile. This can be a source of frustration to both newcomers and experienced programmers who are accustomed to writing in languages with a more consistent syntax. However, I think that people will grow accustomed to this learning curve. Figuring out Inform 7 is not unlike figuring out how to play text adventure games for the first time: at first it seems like it will understand anything, but eventually you get an intuitive feel for how things must be phrased.
The second major difference between I7 and I6 is the concept of relations. Nearly every feature in I7 has an analog in I6, but relations are something new. To explain what they are and why they’re so powerful would be beyond the scope of this interview; it’s easier to just point to something they can do. For example, relations are what allow me to track what every NPC in the game has been asked and/or told. It would be possible to do this in I6, but only with lots of huge, messy arrays that would be a nightmare to maintain or change. With Inform 7, I did it with two lines of code. Short lines. Relations, I think, are the feature that will really change the sorts of IF games we’ll see in the future, because they make it easy to do very complicated things that used to be far too much effort to bother with.
The biggest change, however, and I think the most important one, is the change in presentation and accessibility.
Before Inform 7, the entry barriers to someone with no programming experience were immense. You had to learn the language, of course, but there were also so many tools that you had to assemble before you could even begin trying the language out. You had to find the right compiler for your system. You had to learn to run the compiler from a DOS shell, which meant learning about autoexec files, path commands, and command-line switches. You had to learn how to decipher the arcane errors and warnings that the compiler spat out. You had to find and download a text editor, or else struggle along with Notepad. To test your game, you had to find an interpreter that worked on your system. You had to learn how to juggle all of these applications on your screen at once. The routine to get from source code to working game was tedious: write, save, compile (and write, save, compile again if the compiler found errors), open, play, every time you made any change to the source code. And god help you if you wanted to incorporate graphics, or write a large game. You’d have to find and figure out how to use something called “Glulx,” which was only partially supported and haphazardly documented.
Experienced programmers, and people who have already managed to learn Inform 6, take these things for granted, but for someone who’s only just learned about IF, there are a lot of complicated, non-obvious steps to get through. People have written lengthy tutorials devoted to getting the beginner just to the point where she can create a single room.
With Inform 7, you download a single executable, which installs the application on your computer. The user interface is simple and intuitive. You write your code in a built-in text editor. To compile, you click one button. Your working game automatically starts up in a separate window with a built-in interpreter. This takes a matter of seconds. Compiler error messages are written in plain English, with hotlinks that let you jump straight to where the problem is in your code. The application automatically generates an index of your code, listing and organizing all of your rooms, objects, rules, relations, and variables, and again providing hotlinks that let you jump to the appropriate spot. It contains the complete online documentation for the Inform 7 language, including hundreds of working examples. It automatically maps the game as you create it. It has built-in support for Glulx. It has a search feature. Inform 7 is, in other words, a complete, integrated development environment. It is no longer necessary to assemble your own from scratch.
I think the implications of this are enormous. For the first time, a non-programmer can take an idea and simply *start writing*. Of course, writing IF will always require learning to program. But now the entry barriers to that learning are practically nil. I think… I hope… that we will start to see games from people who otherwise would never have been interested.
I’m afraid I’ve rambled on a bit, but I think it’s important to realize that Inform 7 is much more than a programming language “dressed up” in natural English syntax. It’s a huge paradigm shift in how IF is designed, and who is able to design it.
As for why I originally chose Inform; honestly, it was the first language I happened to stumble upon. At the time I preferred it over TADS because of its close association with the original Infocom games. Nowadays, I much prefer its expressiveness over languages with more traditional syntax. Inform just thinks like I do.
GC: Back to Anchorhead, how much of the need to update it is based on technology and how much is based on how you’ve changed since you originally wrote it? Also, Anchorhead was the winner of the 1998 XYZZY Award for Best Setting, nominated for Best Game, Best Writing, Best Story, Best Puzzles, and Best Individual NPC (for Michael). Is there really that much to fix?
MG: There were some technological limitations. Back then, there was a limit on just how much “stuff” you could cram into a game written in Inform, and Anchorhead stretched that limit to the breaking point. Now there are new formats that effectively remove that limitation.
I’m pleased at how much acclaim Anchorhead received, and I think it deserves every bit of it. But I was never completely satisfied with the original game, even when I first released it. There were parts that I just didn’t have the creativity, or the know-how, or the will to flesh out the way they deserved. Memory limits notwithstanding, I had reached the point where it just wasn’t going to get any better, no matter how much more I worked on it. You can polish and tweak a work-in-progress forever, but there comes a point where you just have to be satisfied with what you’ve done and release it. Fortunately, what I’d done turned out to be very, very good.
But now, I have ten years of refreshing perspective behind me. I have new development tools that make coding not just easy, but an active pleasure. I’ve improved as a writer. There is no more ideal time to try to improve on things.