Interactive fiction
Interactive fiction, often abbreviated IF, is software simulating environments in which players use text commands to control characters and influence the environment. Works in this form can be understood as literary narratives, either in the form of interactive narratives or interactive narrations. These works can also be understood as a form of video game, either in the form of an adventure game or role-playing game. In common usage, the term refers to text adventures, a type of adventure game where the entire interface can be "text-only", however, graphical text adventures still fall under the text adventure  category if the main way to interact with the game is by typing text. Some users of the term distinguish between interactive fiction, known as "Puzzle-free", that focuses on narrative, and "text adventures" that focus on puzzles. Due to their text-only nature, they sidestepped the problem of writing for widely divergent graphics architectures. This feature meant that interactive fiction games were easily ported across all the popular platforms at the time, including CP/M (not known for gaming or strong graphics capabilities). The number of interactive fiction works is increasing steadily as new ones are produced by an  online community, using freely available development systems. The term can also be used to refer to digital versions of literary works that are not read in a linear fashion, known as gamebooks, where the reader is instead given choices at different points in the text; these decisions determine the flow and outcome of the story. The most famous example of this form of printed fiction is the "Choose Your Own Adventure" book series, and the collaborative "" format has also been described as a form of interactive fiction. The term "interactive fiction" is sometimes used also to refer to visual novels , a type of interactive narrative software popular in Japan. Medium. Text adventures are one of the oldest types of computer games and form a subset of the adventure genre. The player uses text input to control the game, and the game state is relayed to the player via text output. Interactive fiction usually relies on reading from a screen and on typing input, although text-to-speech synthesizers allow blind and visually impaired users to play interactive fiction titles as audio games. Input is usually provided by the player in the form of simple sentences such as "get key" or  go east, which are interpreted by a text parser. Parsers may vary in sophistication; the first text adventure parsers could only handle two-word sentences in the form of verb-noun pairs. Later parsers, such as those built on ZIL (Zork Implementation Language), could understand complete sentences. Later parsers could handle increasing levels of complexity parsing sentences such as "open the red box with the green key then go north". This level of complexity is the standard for works of interactive fiction today. Despite their lack of graphics, text adventures include a physical dimension where players move between rooms. Many  text adventure games boasted their total number of rooms to indicate how much gameplay they offered. These games are unique in that they may create an "illogical space", where going north from area A takes you to area B, but going south from area B did not take you back to area A. This can create mazes that do not behave as players expect, and thus players must maintain their own map. These illogical spaces are much more rare in today's era of 3D gaming, and the Interactive Fiction community in general decries the use of mazes entirely, claiming  that mazes have become arbitrary 'puzzles for the sake of puzzles' and that they can, in the hands of inexperienced designers, become immensely frustrating for players to navigate. Interactive fiction shares much in common with Multi-User Dungeons ('MUDs'). MUDs, which became popular in the mid-1980s, rely on a textual exchange and accept similar commands from players as do works of IF; however, since interactive fiction is single player, and MUDs, by definition, have multiple players, they differ enormously in gameplay styles. MUDs often focus gameplay on activities that involve communities of players, simulated political systems, in-game trading, and  other gameplay mechanics that are not possible in a single player environment. Writing style. Interactive fiction features two distinct modes of writing: the player input and the game output. As described above, player input is expected to be in simple command form (imperative sentences). A typical command may be:codice_1 The responses from the game are usually written from a second-person point of view, in present tense. This is because, unlike in most works of fiction, the main character is closely associated with the player, and the events are seen to be happening as the player plays. While older  text adventures often identified the protagonist with the player directly, newer games tend to have specific, well-defined protagonists with separate identities from the player. The classic essay "Crimes Against Mimesis" discusses, among other IF issues, the nature of "You" in interactive fiction. A typical response might look something like this, the response to "look in tea chest" at the start of "Curses": <samp>That was the first place you tried, hours and hours ago now, and there's nothing there but that boring old book. You pick it up anyway, bored as you are.</samp> Many text  adventures, particularly those designed for humour (such as "Zork", "The Hitchhiker's Guide to the Galaxy", and "Leather Goddesses of Phobos"), address the player with an informal tone, sometimes including sarcastic remarks (see the transcript from "Curses", above, for an example). The late Douglas Adams, in designing the IF version of his 'Hitchhiker's Guide to the Galaxy', created a unique solution to the final puzzle of the game: the game requires the one solitary item that the player "didn't" choose at the outset of play. Some IF works dispense with second-person narrative entirely, opting for a first -person perspective ('I') or even placing the player in the position of an observer, rather than a direct participant. In some 'experimental' IF, the concept of self-identification is eliminated entirely, and the player instead takes the role of an inanimate object, a force of nature, or an abstract concept; experimental IF usually pushes the limits of the concept and challenges many assumptions about the medium. History. 1960s and 70s. Natural language processing. Though neither program was developed as a narrative work, the software programs ELIZA (1964–1966) and SHRDLU (1968–1970) can formally be considered early examples of interactive fiction, as  both programs used natural language processing to take input from their user and respond in a virtual and conversational manner. ELIZA simulated a psychotherapist that appeared to provide human-like responses to the user's input, while SHRDLU employed an artificial intelligence that could move virtual objects around an environment and respond to questions asked about the environment's shape. The development of effective natural language processing would become an essential part of interactive fiction development. Section::::"Adventure". Around 1975, Will Crowther, a programmer and an amateur caver, wrote the first text adventure game, "Adventure" (originally called "ADVENT" because a filename  could only be six characters long in the operating system he was using, and later named "Colossal Cave Adventure"). Having just gone through a divorce, he was looking for a way to connect with his two young children. Over the course of a few weekends, he wrote a text based cave exploration game that featured a sort of guide/narrator who talked in full sentences and who understood simple two-word commands that came close to natural English. Adventure was programmed in Fortran for the PDP-10. Crowther's original version was an accurate simulation of part of the real Colossal  Cave, but also included fantasy elements (such as axe-wielding dwarves and a magic bridge). Stanford University graduate student Don Woods discovered "Adventure" while working at the Stanford Artificial Intelligence Laboratory, and in 1977 obtained and expanded Crowther's source code (with Crowther's permission). Woods's changes were reminiscent of the writings of J. R. R. Tolkien, and included a troll, elves, and a volcano some claim is based on Mount Doom, but Woods says was not. In early 1977, "Adventure" spread across ARPAnet, and has survived on the Internet to this day. The game has since been ported  to many other operating systems, and was included with the floppy-disk distribution of Microsoft's MS-DOS 1.0 OS. "Adventure" is a cornerstone of the online IF community; there currently exist dozens of different independently programmed versions, with additional elements, such as new rooms or puzzles, and various scoring systems. The popularity of "Adventure" led to the wide success of interactive fiction during the late 1970s, when home computers had little, if any, graphics capability. Many elements of the original game have survived into the present, such as the command 'xyzzy', which is now included as an Easter Egg  in modern games, such as "Microsoft Minesweeper". "Adventure" was also directly responsible for the founding of Sierra Online (later Sierra Entertainment); Ken and Roberta Williams played the game and decided to design one of their own, but with graphics. Commercial era. Adventure International was founded by Scott Adams (not to be confused with the creator of "Dilbert"). In 1978, Adams wrote "Adventureland", which was loosely patterned after (the original) "Colossal Cave Adventure". He took out a small ad in a computer magazine in order to promote and sell "Adventureland", thus creating the first commercial adventure game. In 1979 he founded  Adventure International, the first commercial publisher of interactive fiction. That same year, "Dog Star Adventure" was published in source code form in "SoftSide", spawning legions of similar games in BASIC. The largest company producing works of interactive fiction was Infocom, which created the "Zork" series and many other titles, among them "Trinity", "The Hitchhiker's Guide to the Galaxy" and "A Mind Forever Voyaging". In June 1977, Marc Blank, Bruce K. Daniels, Tim Anderson, and Dave Lebling began writing the mainframe version of "Zork" (also known as "Dungeon"), at the MIT Laboratory for Computer Science, directly inspired by "Colossal Cave  Adventure". The game was programmed in a computer language called MDL, a variant of LISP. The term Implementer was the self-given name of the creators of the text adventure series Zork. It is for this reason that game designers and programmers can be referred to as an implementer, often shortened to Imp, rather than a writer. In early 1979, the game was completed. Ten members of the "MIT Dynamics Modelling Group" went on to join Infocom when it was incorporated later that year. In order to make its games as portable as possible, Infocom developed the Z-machine, a  custom virtual machine that could be implemented on a large number of platforms, and took standardized "story files" as input. In a non-technical sense, Infocom was responsible for developing the interactive style that would be emulated by many later interpreters. The Infocom parser was widely regarded as the best of its era. It accepted complex, complete sentence commands like "put the blue book on the writing desk" at a time when most of its competitors parsers were restricted to simple two-word verb-noun combinations such as "put book". The parser was actively upgraded with new features like undo  and error correction, and later games would 'understand' multiple sentence input: 'pick up the gem and put it in my bag. take the newspaper clipping out of my bag then burn it with the book of matches'. Infocom and other companies offered optional commercial feelies (physical props associated with a game). The tradition of 'feelies' (and the term itself) is believed to have originated with "Deadline" (1982), the third Infocom title after "Zork I" and "II". When writing this game, it was not possible to include all of the information in the limited (80KB) disk space, so Infocom created  the first feelies for this game; extra items that gave more information than could be included within the digital game itself. These included police interviews, the coroner's findings, letters, crime scene evidence and photos of the murder scene. These materials were very difficult for others to copy or otherwise reproduce, and many included information that was essential to completing the game. Seeing the potential benefits of both aiding game-play immersion and providing a measure of creative copy-protection, in addition to acting as a deterrent to software piracy, Infocom and later other companies began creating feelies for numerous  titles. In 1987, Infocom released a special version of the first three "Zork" titles together with plot-specific coins and other trinkets. This concept would be expanded as time went on, such that later game feelies would contain passwords, coded instructions, page numbers, or other information that would be required to successfully complete the game. 1980s. United States. Interactive fiction became a standard product for many software companies. By 1982 "Softline" wrote that "the demands of the market are weighted heavily toward hi-res graphics" in games like Sierra's "The Wizard and the Princess" and its imitators. Such graphic  adventures became the dominant form of the genre on computers with graphics, like the Apple II. By 1982 Adventure International began releasing versions of its games with graphics. The company went bankrupt in 1985. Synapse Software and Acornsoft were also closed in 1985. Leaving Infocom as the leading company producing text-only adventure games on the Apple II with sophisticated parsers and writing, and still advertising its lack of graphics as a virtue. The company was bought by Activision in 1986 after the failure of "Cornerstone", Infocom's database software program, and stopped producing text adventures a few years later . Soon after Telaium/Trillium also closed. Outside the United States. Probably the first commercial work of interactive fiction produced outside the U.S. was the dungeon crawl game of "Acheton", produced in Cambridge, England, and first commercially released by Acornsoft (later expanded and reissued by Topologika). Other leading companies in the UK were Magnetic Scrolls and Level 9 Computing. Also worthy of mention are Delta 4, Melbourne House, and the homebrew company Zenobi. In the early 1980s Edu-Ware also produced interactive fiction for the Apple II as designated by the "if" graphic that was displayed on startup. Their titles included  the "Prisoner" and "Empire" series ("Empire I: World Builders", "Empire II: Interstellar Sharks", "Empire III: Armageddon"). In 1981, CE Software published "SwordThrust" as a commercial successor to the "Eamon" gaming system for the Apple II. SwordThrust and Eamon were simple two-word parser games with many role-playing elements not available in other interactive fiction. While SwordThrust published seven different titles, it was vastly overshadowed by the non-commercial Eamon system which allowed private authors to publish their own titles in the series. By March 1984, there were 48 titles published for the Eamon system (and over 270 titles in  total as of March 2013). In Italy, interactive fiction games were mainly published and distributed through various magazines in included tapes. The largest number of games were published in the two magazines Viking and Explorer, with versions for the main 8-bit home computers (Sinclair ZX Spectrum, Commodore 64 and MSX). The software house producing those games was Brainstorm Enterprise, and the most prolific IF author was Bonaventura Di Bello, who produced 70 games in the Italian language. The wave of interactive fiction in Italy lasted for a couple of years thanks to the various magazines promoting the genre, then  faded and remains still today a topic of interest for a small group of fans and less known developers, celebrated on Web sites and in related newsgroups. In Spain, interactive fiction was considered a minority genre, and was not very successful. The first Spanish interactive fiction commercially released was "Yenght" in 1983, by Dinamic Software, for the ZX Spectrum. Later on, in 1987, the same company produced an interactive fiction about "Don Quijote". After several other attempts, the company Aventuras AD, emerged from Dinamic, became the main interactive fiction publisher in Spain, including titles like a Spanish adaptation of "Colossal  Cave Adventure", an adaptation of the Spanish comic "El Jabato", and mainly the "Ci-U-Than" trilogy, composed by "La diosa de Cozumel" (1990), "Los templos sagrados" (1991) and "Chichen Itzá" (1992). During this period, the Club de Aventuras AD (CAAD), the main Spanish speaking community around interactive fiction in the world, was founded, and after the end of Aventuras AD in 1992, the CAAD continued on its own, first with their own magazine, and then with the advent of Internet, with the launch of an active internet community that still produces interactive non-commercial fiction nowadays. During the 1990s . Legend Entertainment was founded by Bob Bates and Mike Verdu in 1989. It started out from the ashes of Infocom. The text adventures produced by Legend Entertainment used (high-resolution) graphics as well as sound. Some of their titles include "Eric the Unready", the "Spellcasting" series and "Gateway" (based on Frederik Pohl's novels). The last text adventure created by Legend Entertainment was "Gateway II" (1992), while the last game ever created by Legend was "" (2003) – a well-known first-person shooter action game using the Unreal Engine for both impressive graphics and realistic physics. In 2004, Legend Entertainment was  acquired by Atari, who published "Unreal II" and released for both Microsoft Windows and Microsoft's Xbox. Many other companies such as Level 9 Computing, Magnetic Scrolls and Delta 4 had closed by 1992. In 1991 and 1992, Activision released "The Lost Treasures of Infocom" in two volumes, a collection containing most of Infocom's games, followed in 1996 by "Classic Text Adventure Masterpieces of Infocom". Modern era. After the decline of the commercial interactive fiction market in the 1990s, an online community eventually formed around the medium. In 1987, the Usenet newsgroup codice_2 was created, and was soon followed  by codice_3. By custom, the topic of codice_2 is interactive fiction authorship and programming, while codice_3 encompasses topics related to playing interactive fiction games, such as hint requests and game reviews. As of late 2011, discussions between writers have mostly moved from codice_2 to the Interactive Fiction Community Forum. One of the most important early developments was the reverse-engineering of Infocom's Z-Code format and Z-Machine virtual machine in 1987 by a group of enthusiasts called the InfoTaskForce and the subsequent development of an interpreter for Z-Code story files. As a result, it became possible to  play Infocom's work on modern computers. For years, amateurs with the IF community produced interactive fiction works of relatively limited scope using the Adventure Game Toolkit and similar tools. The breakthrough that allowed the interactive fiction community to truly prosper, however, was the creation and distribution of two sophisticated development systems. In 1987, Michael J. Roberts released TADS, a programming language designed to produce works of interactive fiction. In 1993, Graham Nelson released Inform, a programming language and set of libraries which compiled to a Z-Code story file. Each of these systems allowed anyone with sufficient time and  dedication to create a game, and caused a growth boom in the online interactive fiction community. Despite the lack of commercial support, the availability of high quality tools allowed enthusiasts of the genre to develop new high quality games. Competitions such as the annual Interactive Fiction Competition for short works, the Spring Thing for longer works, and the XYZZY Awards, further helped to improve the quality and complexity of the games. Modern games go much further than the original "Adventure" style, improving upon Infocom games, which relied extensively on puzzle solving, and to a lesser extent on communication with non -player characters, to include experimentation with writing and story-telling techniques. While the majority of modern interactive fiction that is developed is distributed for free, there are some commercial endeavors. In 1998, Michael Berlyn, a former Implementor at Infocom, started a new game company, Cascade Mountain Publishing, whose goals were to publish interactive fiction. Despite the Interactive Fiction community providing social and financial backing Cascade Mountain Publishing went out of business in 2000. Other commercial endeavours include Peter Nepstad's "", several games by Howard Sherman published as Malinche Entertainment, The General Coffee Company's "Future Boy!," "Cypher", a graphically enhanced  cyberpunk game and various titles by "Textfyre". Emily Short was commissioned to develop the game "City of Secrets" but the project fell through and she ended up releasing it herself. Artificial Intelligence. The increased effectiveness of natural-language-generation in artificial intelligence (AI) has led to instances of interactive fiction which use AI to dynamically generate new, open-ended content, instead of being constrained to pre-written material. The most notable example of this is "AI Dungeon", released in 2019, which generates content using the GPT-3 (previously GPT-2) natural-language-generating neural network, created by OpenAI. Software. Development systems. The  original interactive fiction "Colossal Cave Adventure" was programmed in Fortran, originally developed by IBM. "Adventure"s parsers could only handle two-word sentences in the form of verb-noun pairs. Infocom's games of 1979–88, such as "Zork", were written using a LISP-like programming language called ZIL (Zork Implementation Language or Zork Interactive Language, it was referred to as both) that compiled into a byte code able to run on a standardized virtual machine called the Z-machine. As the games were text based and used variants of the same Z-machine interpreter, the interpreter only had to be ported  to a computer once, rather than once each game. Each game file included a sophisticated parser which allowed the user to type complex instructions to the game. Unlike earlier works of interactive fiction which only understood commands of the form 'verb noun', Infocom's parser could understand a wider variety of sentences. For instance one might type "open the large door, then go west", or "go to the hall". With the Z-machine, Infocom was able to release most of their games for most popular home computers of the time simultaneously, including Apple II, Atari 8-bit, IBM PC compatibles , Amstrad CPC/PCW (one disc worked on both machines), Commodore 64, Commodore Plus/4, Commodore 128, Kaypro CP/M, Texas Instruments TI-99/4A, Macintosh, Atari ST, the Commodore Amiga and the Radio Shack TRS-80. Infocom was also known for shipping creative props, or "feelies" (and even "smellies"), with its games. During the 1990s Interactive fiction was mainly written with C-like languages, such as TADS 2 and Inform 6. A number of systems for writing interactive fiction now exist. The most popular remain Inform, TADS, or ADRIFT, but they diverged in their approach to IF-writing during the 2000s, giving today's  IF writers an objective choice. By 2006 IFComp, most games were written for Inform, with a strong minority of games for TADS and ADRIFT, followed by a small number of games for other systems. While familiarity with a programming language leads many new authors to attempt to produce their own complete IF application, most established IF authors recommend use of a specialised IF language, arguing that such systems allow authors to avoid the technicalities of producing a full featured parser, while allowing broad community support. The choice of authoring system usually depends on the author's desired balance of ease  of use versus power, and the portability of the final product. Other development systems include: Interpreters and virtual machines. Interpreters are the software used to play the works of interactive fiction created with a development system. Since they need to interact with the player, the "story files" created by development systems are programs in their own right. Rather than running directly on any one computer, they are programs run by Interpreters, or virtual machines, which are designed specially for IF. They may be part of the development system, or can be compiled together with the work of fiction as a  standalone executable file. The Z-machine was designed by the founders of Infocom, in 1979. They were influenced by the then-new idea of a virtual Pascal computer, but replaced P with Z for Zork, the celebrated adventure game of 1977–79. The Z-machine evolved during the 1980s but over 30 years later, it remains in use essentially unchanged. Glulx was designed by Andrew Plotkin in the late 1990s as a new-generation IF virtual machine. It overcomes the technical constraint on the Z-machine by being a 32-bit rather than 16-bit processor. Frotz is a modern Z -machine interpreter originally written in C (programming language) by Stefan Jokisch in 1995 for DOS. Over time it was ported to other platforms, such as Unix, RISC OS, Mac OS and most recently iOS. Modern Glulx interpreters are based on "Glulxe", by Andrew Plotkin, and "Git", by Iain Merrick. Other interpreters include Zoom for Mac OS X, or for Unix or Linux, maintained by Andrew Hunter, and Spatterlight for Mac OS X, maintained by Tor Andersson. Distribution. In addition to commercial distribution venues and individual websites, many works of free interactive fiction are distributed through community websites. These include the  Interactive Fiction Database (IFDb), The Interactive Fiction Reviews Organization (IFRO), a game catalog and recommendation engine, and the Interactive Fiction Archive. Works may be distributed for playing with in a separate interpreter. In which case they are often made available in the Blorb package format that many interpreters support. A filename ending .zblorb is a story file intended for a Z-machine in a Blorb wrapper, while a filename ending .gblorb is a story file intended for a Glulx in a Blorb wrapper. It is not common but IF files are sometimes also seen without a Blorb wrapping, though this  usually means cover art, help files, and so forth are missing, like a book with the covers torn off. Z-machine story files usually have names ending .z5 or .z8, the number being a version number, and Glulx story files usually end .ulx. Alternatively, works may be distributed for playing in a web browser. For example, the 'Parchment' project is for web browser-based IF Interpreter, for both Z-machine and Glulx files. Some software such as Twine publishes directly to HTML, the standard language used to create web pages, reducing the requirement for an Interpreter or virtual machine. Interactive