Colossal Cave Adventure

Colossal Cave Adventure (also known as Adventure or ADVENT) is a text-based adventure game, released in 1976 by developer Will Crowther for the PDP-10 mainframe computer. It was expanded upon in 1977 by Don Woods. In the game, the player explores a cave system rumored to be filled with treasure and gold. The game is composed of dozens of locations, and the player moves between these locations and interacts with objects in them by typing one- or two-word commands which are interpreted by the game's natural language input system. The program acts as a narrator, describing the player's location and the results of the player's attempted actions. It is the first well-known example of interactive fiction, as well as the first well-known adventure game, for which it was also the namesake.

The original game, written in 1975 and 1976, was based on Crowther's maps and experiences caving in Mammoth Cave in Kentucky, the longest cave system in the world; further, it was intended, in part, to be accessible to non-technical players, such as his two daughters. Woods's version expanded the game in size and increased the number of fantasy elements present in it, such as a dragon and magic spells. Both versions, typically played over teleprinters connected to mainframe computers, were spread around the nascent ARPANET, the precursor to the Internet, which Crowther was involved in developing.

Colossal Cave Adventure was one of the first teletype games and was massively popular in the computer community of the late 1970s, with numerous ports and modified versions being created based on Woods's source code. It directly inspired the creation of numerous games, including Zork (1977), Adventureland (1978), Mystery House (1980), Rogue (1980), and Adventure (1980), which went on to be the foundations of the interactive fiction, adventure, roguelike, and action-adventure genres. It also influenced the creation of the MUD and computer role-playing game genres. It has been noted as one of the most influential video games, and in 2019 was inducted into the World Video Game Hall of Fame by The Strong and the International Center for the History of Electronic Games.

Gameplay
Colossal Cave Adventure is a text-based adventure game wherein the player explores a mysterious cave that is rumored to be filled with treasure and gold. The player must explore the cave system and solve puzzles by using items that they find to obtain the treasures and leave the cave. The player types in one- or two-word commands to move their character through the cave system, interact with objects in the cave, pick up items to put into their inventory, and perform other actions. The allowable commands are contextual to the location, or room, the player is in; for example, "get lamp" only has an effect if there is a lamp present. There are dozens of rooms, each of which has a name such as "Debris Room" and a description, and may contain objects or obstacles. The program acts as a narrator, describing to the player their location in the cave and the results of certain actions. If it does not understand the player's commands, it asks for the player to retype their actions. The program's replies are typically in a humorous, conversational tone, much as a Dungeon Master would use in leading players in a tabletop role-playing game.

The original 1976 version of the game contains five treasures which can be collected. Although it is based on a real cave system, it contains a few fantasy elements such as a crystal bridge, magic words, and axe-wielding dwarves. The player can die by falling into a pit or being killed by the dwarves, but otherwise the game has no ending or goal beyond finding the treasures. The 1977 version of the game, upon which later versions were based, adds ten more treasures and more fantasy elements. It also adds a points system, whereby completing certain goals earns a predetermined number of points. The ultimate goal is to earn the maximum number of points—350, in the 1977 version—which involves finding all the treasures in the game and safely leaving the cave.

Crowther's original version
Colossal Cave Adventure was originally created by William Crowther in 1975 and 1976. Crowther and his ex-wife Patricia were both programmers and cavers and had extensively explored Mammoth Cave in Kentucky, the longest cave system in the world, in the early 1970s as part of the Cave Research Foundation. In 1972, Patricia led the expedition that found a connection between Mammoth Cave and the larger Flint Ridge Cave System. In addition to caving, the pair produced vector map surveys of the cave: they transcribed the survey data of the cave from "muddy little books" into a teleprinter terminal in their house, which could send and print messages from programs running on the central computer and was connected to a PDP-1 mainframe computer at Bolt, Beranek and Newman (BBN) where William Crowther worked. This data was then fed into a program developed by the pair that generated plotting commands onto punched tape, which were then fed into a Honeywell 316 minicomputer attached to a Calcomp drum plotter at BBN to print paper maps. These maps were some of the earliest computer-drawn maps of caves.

In 1975, after he and Patricia divorced, William Crowther stopped caving with the Cave Research Foundation. Driven by what he later described as an increase in spare time combined with missing his two daughters, he began working on a text-based game in Fortran on BBN's PDP-10 mainframe, interfacing through a teletype printer, that they could play. He combined his memories and maps of the Mammoth Cave system, particularly a 1975 map of the Bedquilt area of the caves, including Colossal Cavern, with elements of the Dungeons & Dragons campaigns that he played with friends to design a game around exploring a cave for treasure. Crowther wanted the game to be accessible and not intimidating to non-technical players such as his children, and so developed a natural language input system to control the game so that it would be "a thing that gave you the illusion anyway that you'd typed in English commands and it did what you said". Crowther later commented that this approach allowed the game to appeal to both non-programmers and programmers alike, as in the latter case, it gave programmers a challenge of how to make "an obstinate system" perform in a manner they wanted it to. This approach was also developed to allow the game to be played on a teletype printer, rather than rely on user interface elements used in programs designed for monitors.

The initial version of the game was about 700 lines of code, plus another 700 lines of data such as descriptions for 66 rooms, navigational messages, 193 vocabulary words, and miscellaneous messages. Once the game was complete, in early 1976, Crowther showed it off to his co-workers at BBN for feedback, and then considered his work on the game finished, leaving the compiled game on the mainframe before taking a month off for vacation. According to one of Crowther's then-coworkers in 2007, "once it was working, Will wasn't very interested in perfecting or expanding it." Crowther's work at BBN was in developing ARPANET, one of the first networks of computers and a precursor to the Internet, and the PDP-10 mainframe was part of that network. During his vacation, others found the game and it was distributed widely across the network to computers at other companies and universities, which surprised Crowther on his return. The game did not have an explicit title in it, simply stating "WELCOME TO ADVENTURE!!" as a part of the opening message and having a file name of ADVENT; it was referred to as both Adventure and Colossal Cave Adventure, with the latter becoming the more common name over time. Most computer terminals at the time did not have monitors, and players would instead play the game over teleprinters connected to the mainframe.

Woods's modifications
One person who discovered the game was Don Woods, a graduate student at Stanford University. Woods found the game on a PDP-10 at the Stanford Medical School and wanted to expand upon the game. He contacted Crowther to gain access to the source code by emailing "crowther" at every domain that existed on the ARPANET. Woods built upon Crowther's code, introducing more high fantasy-related elements such as a dragon. He changed the puzzles, adding new elements and complexities, and added new puzzles and features such as a pirate that roams the map and steals treasure from the player or objects that could exist in multiple states. He also introduced a scoring system within the game and added ten more treasures to collect in addition to the five in Crowther's original version.

According to cavers who have played the game, much of Crowther's original version matches the Bedquilt section of Mammoth Cave with some passages removed for gameplay purposes, though Woods's additions do not as he had never been there. According to William Mann, a caving compatriot of Crowther who played both versions when they were developed, Crowther was focused on creating the cave system as a setting for a game, while Woods was interested in making a game and not in replicating the feeling of caving.

Woods's version, released in 1977, expanded Crowther's game to approximately 3,000 lines of code and 1,800 lines of data, growing to 140 map locations, 293 vocabulary words, and 53 objects. Woods also added access controls to the game, allowing mainframe administrators to restrict the game from running during business hours. Woods began working on the game in March 1977; by May his version was complete enough to release, and was soon attracting attention around the United States. Woods continued releasing updated editions in Fortran until 1995. Crowther later said that Woods's bringing fantasy elements earlier into the gameplay was an improvement to his version, though Crowther's daughters also recall him telling them when they were frustrated at puzzles in the game that it was one of Woods's additions, not his.

Crowther did not distribute the source code to his version to anyone else, and it was later believed to be lost until it was rediscovered on an archive of Woods's student account at the Stanford Artificial Intelligence Laboratory in 2005. Woods, however, distributed the code to his version alongside the compiled executable. Woods's 1977 version became the more recognizable and widespread version of Colossal Cave Adventure, in part due to its wider code availability, as it led to several other variants of the game being produced.

Later versions
Both Crowther's and Woods's version were designed to run on the PDP-10 and used features unique to DECSYSTEMS-10 Fortran IV on that architecture, meaning that the program could not be easily moved to other systems, even those that could run Fortran programs. One of the first efforts to port the code to other languages or systems was by RAND Corporation researcher James Gillogly in 1977. Gillogly, with agreement from Crowther and Woods, spent several weeks porting the code to the C programming language to run on the more generic Unix architecture. It can still be found as part of the BSD Operating Systems distributions, or as part of the "bsdgames" package under most Linux distributions, under the command name "adventure". Bob Supnik of Digital Equipment Corporation also ported the game in Fortran to the PDP-11 minicomputer in mid-1977, spreading it to other minicomputer systems. Afterwards, numerous other ports were made of the game to different languages and systems, sometimes identified by the number of points available in the game. There were enough ports and variants and alternate takes of the game by 1982 that an article in Your Computer described the entire set of games wherein the player enters short commands to move between set locations as "Adventure games", and provided code for the ZX81 computer for an "Adventure-writing kit" program that could be used to generate a game with that gameplay. In 2017, Eric S. Raymond created a port for modern computers of Woods's 1995 version of the game as Open Adventure and released the source code under an open-source license with permission from Crowther and Woods.

Commercial versions of the game were also released. Microsoft published a version titled Microsoft Adventure in 1979 for the Apple II Plus and TRS-80 computers, and again in 1981 for MS-DOS as a launch title for IBM PCs, one of the few software programs and the only game at launch. The Software Toolworks released The Original Adventure for IBM PCs in 1981; endorsed by Crowther and Woods in exchange for a nominal payment, it was the only version for which they received any money. Level 9 Computing released multiple versions of the game for different computer platforms under the name Colossal Adventure, beginning with a version in 1982 for the Nascom that includes an entire extra section where the player saves elves from flooding caves, as well as later versions that include pictures of the areas.

A 3D remake of the game, under the title Colossal Cave, was released by Cygnus Entertainment as its first title in on January 19, 2023, for Windows, macOS, Linux, Nintendo Switch, PlayStation 5, Xbox Series X, and Meta Quest 2. Designed by Ken and Roberta Williams, co-founders of Sierra Entertainment, the game was started as a hobby project by the pair during the COVID-19 pandemic, before being expanded into a full commercial product by a team of thirty. It was intended by lead designer Roberta to be a recreation of how playing the game felt like to her in 1979.

Video games
Colossal Cave Adventure is considered one of the most influential video games. In 2019, it was inducted into the World Video Game Hall of Fame by The Strong and the International Center for the History of Electronic Games. The game is the first well-known example of interactive fiction and established conventions that have since become standard in interactive fiction titles, such as the use of shortened cardinal directions for commands like "e" for "east", as well as inspiring the contents of the fiction titles themselves. The game is the namesake and the first well-known example of an adventure game, as it combined the interactivity of computer programs with the storytelling of literature or role-playing games such as Dungeons & Dragons, despite its lack of linear plot. The only text adventure game known to precede it is Wander from 1974, which did not have the spread or influence of Adventure.

Colossal Cave Adventure was immensely popular among the small computer-using population of the time. Historian Alexander Smith described it as "ubiquitous" on computer networks by the end of 1977, alongside Star Trek and Lunar Lander. Computer game programmers of the time were greatly inspired by the game; according to game designer and creator of the Inform interactive fiction language Graham Nelson, "for the five years to 1982 almost every game created was another 'Advent'". Several of these games were the initial releases of companies that would go on to become key innovators for the early adventure game genre. These included Zork (1977)—which began development within a month of the release of Woods's version—first by the team of Dave Lebling, Marc Blank, Tim Anderson, and Bruce Daniels at MIT and later by Infocom; Adventureland (1978) by Scott Adams of Adventure International; and Mystery House (1980) by Roberta and Ken Williams of On-Line Systems. The 1980 Atari 2600 video game Adventure was an attempt to create a graphical version of Colossal Cave Adventure, and itself became the first known example of an action-adventure game and introduced the fantasy genre to video game consoles. Carmen Sandiego, an early educational game series begun in 1985, was inspired by transforming the idea of moving around the caverns of Colossal Cave Adventure looking for treasure into moving around the globe searching for clues.

In addition to inspiring adventure games, as described by Matt Barton in Dungeons and Desktops: The History of Computer Role-Playing Games, Colossal Cave Adventure demonstrated the "creation of a virtual world and the means to explore it", and the inclusion of monsters and simplified combat. For this, it is considered a precursor of computer role-playing games, though it was lacking several elements of the genre. Glenn Wichman and Michael Toy name the game as an influence for their game Rogue in 1980, which went on to become the namesake of the roguelike genre. Colossal Cave Adventure also inspired the development of online multiplayer games like MUDs, the precursors of the modern-day massively multiplayer online role-playing game.

Other media
Two phrases from the game have gone on to have a lasting impact in programming and video games. "Xyzzy" is a magic word that teleports the player between two locations ("inside building" and the "debris room"). It was added by Crowther at a request by his sister when play-testing the game to skip the early section of the game. As an in-joke tribute to Adventure, many later games and computer programs include a hidden "xyzzy" command, the results of which range from the straightforward to the humorous. Crowther stated that for its purpose in the game, "magic words should look queer, and yet somehow be pronounceable", leading him to select "xyzzy". Additionally, in the game there is a maze created by Crowther where each of ten room descriptions was exactly the same: "YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE." The layout of this "all alike" maze was fixed, so the player would have to figure out how to map the maze. The phrase "you are in a maze of twisty little passages, all alike" has become memorialized and popularized in the hacker culture, where "passages" may be replaced with a different word, as the situation warrants. This phrase came to signify a situation when whatever action is taken does not change the result.

Colossal Cave Adventure has continued to be referenced by media for decades since. The 2003 book on the history of interactive fiction Twisty Little Passages was named after the "all alike" maze, and the 2010 documentary on the history of text adventure games Get Lamp is named for the command to get one of the first objects the player encounters and must carry to solve the game. The 2013 game Kentucky Route Zero's third act draws direct inspiration from the game, showing a computer simulation set up inside of a cave, which is itself depicting a massive cave system. The game is also a key plot point in an episode of the 2014 TV series Halt and Catch Fire, a period drama taking place in the early days of the personal computing revolution. In it, the chief software designer uses the game as a competency test to determine which programmers will remain on the team. As a tie-in, a fully playable version of the game augmented with player hints and artwork revealed when certain locations are visited was made available on the show's official website.