Colossal Cave Adventure

Colossal Cave Adventure

Opening screen of Will Crowther's original version, before Don Woods expanded it.
Developer(s) William Crowther and Don Woods
Publisher(s) CRL
Designer(s) William Crowther and Don Woods
Platform(s) Many (initially PDP-10)
Release date(s) 1976 (Crowther); 1977 (Woods)
Genre(s) Adventure game
Mode(s) Single player
Input methods Keyboard

Colossal Cave Adventure (also known as ADVENT, Colossal Cave, or Adventure) (Crowther, 1976; Crowther & Woods, 1977) was the first computer adventure game. It was originally designed by Will Crowther, a programmer and keen caver, who based the layout on part of the Mammoth Cave system in Kentucky.[1] The Colossal Cave subnetwork has many entrances, one of which is known as Bedquilt. Crowther reproduced portions of the real cave so faithfully that cavers who have played the game can easily navigate through familiar sections in the Bedquilt region on their first visit.[2]

Contents

History

Will Crowther was a programmer at Bolt, Beranek & Newman, which developed the ARPANET (a forerunner of the Internet). Crowther was a caver, who applied his experience in Mammoth Cave (in Kentucky) to create a game that he could enjoy with his young daughters.[3]

Crowther had explored the Mammoth Cave in the early 1970s, and created a vector map based on surveys of parts of the real cave, but the text game is a completely separate entity, created during the 1975-76 academic year [4] and featuring fantasy elements such as an axe-throwing dwarf and a magic bridge.

The version that is best known today was the result of a collaboration with Don Woods, a graduate student who discovered the game on a computer at Stanford University[5] and made significant expansions and improvements, with Crowther's blessing. A big fan of Tolkien, he introduced additional fantasy elements, such as elves and a troll.

Until the 2007-2008 academic year, students at Stanford University were required to re-implement the game as an assignment in the first computer programming course.

Technology

Crowther's original game consisted of about 700 lines of Fortran code, with about another 700 lines of data, written for BBN's PDP-10. (See the original source code) The program required about 60K words (nearly 300KB) of core memory in order to run, which was a significant amount for PDP-10/KA systems running with only 128K words.

In 1977, Jim Gillogly of the RAND Corporation spent several weeks porting the code from Fortran to C under Unix, with the agreement of both Woods and Crowther.

The game was also ported to Prime Computer's super-mini running PRIMOS in the late 1970s, utilising Fortran 4, and to IBM mainframes running VM/CMS in late 1978, utilizing PL/1.

Later versions of the game moved away from general purpose programming languages such as C or Fortran, and were instead written for special interactive fiction engines, such as Infocom's Z-machine.

Later versions

ADVENT running on an Osborne 1 Computer circa 1982.

Many versions of Colossal Cave have been released, mostly entitled simply Adventure, or adding a tag of some sort to the original name (e.g. Adventure II, Adventure 550, Adventure4+, ...). Microsoft released a version of Adventure with its initial version of MS-DOS 1.0 for the IBM PC (on a single sided disk, requiring 32KB of RAM). Russel Dalenberg's Adventure Family Tree page[6] provides the best (though still incomplete) summary of different versions and their relationships.

Until Crowther's original version was found,[7] the "definitive original" was generally considered to be the version that Don Woods expanded in 1977. As part of that expansion, Woods added a scoring system that went up to 350 points. Extended versions with extra puzzles go up to 1000 points or more. The AMP MUD had a multi-player Colossal Cave.

Dave Platt's influential 550 points version was innovative in a number of ways. It broke away from coding the game directly in a programming language such as Fortran or C. Instead, Platt developed A-code — a language for adventure programming — and wrote his extended version in that language. The A-code source was pre-processed by an F77 "munger" program, which translated A-code into a text database, and a tokenised pseudo-binary. These were then distributed together with a generic A-code F77 "executive", also written in F77, which effectively "ran" the tokenised pseudo-binary.

Platt's version was also notable for providing a randomised variety of responses when informing the player that, e.g., there was no exit in the nominated direction, for introducing a number of rare "cameo" events, and for committing some outrageous puns.

Memorable words and phrases

Xyzzy

Main article: Xyzzy

"Xyzzy" is a magic word that teleports the player between two locations ("inside building" and the "debris room"). Entering the command from other locations produces the disappointing response "Nothing happens." As an in-joke, many later computer programs (not only games but also applications) include a hidden 'xyzzy' command -- the results of which range from the humorous to the straightforward.[8]

Maze of twisty little passages

"You are in a maze of twisty little passages, all alike" is a memorable line from the game, popular in hacker culture (where "passages" may be replaced with a different word, as the situation warrants).

The "all alike" maze was created by Crowther; Woods created a second maze, described as "all different" [4]. In the "all different" maze, the player's current location is described in eleven different ways:

Don Woods was doing doctoral research in graph algorithms, and he designed this maze as (almost) a complete graph, with two exceptions important to game play. One potential name variation, "little twisting maze of passages", is not used.

Plugh

When the player first arrives at an area known as "Y2", the player receives the message A hollow voice says "plugh". The magic word takes the player between the rooms "inside building" and "Y2".

Other lines

Other memorable lines from the game are:

Continued development

According to author Dale Peterson, Don Woods continued releasing updated editions through at least the mid-1990s.[9] Just as Woods picked up the development of Adventure where Crowther left off, other programmers continued the story in their own way.

Dave Platt

Dave Platt's 550-point version of Colossal Cave — perhaps the most famous variant of this game other than the original, itself a jumping-off point for many other versions including Michael Goetz's 581 point CP/M version — included a long extension on the other side of the Volcano View. Eventually, the player descends into a maze of catacombs and a "fake Y2". If the player says "plugh" here the player finds himself or herself transported to a "Precarious Chair" suspended in midair above the molten lava. (The 581-point version was on SIGM011 from the CP/M Users Group, 1984.)

Some games recognize "plugh" and will respond to it, usually by making a joke.[10] The adventure game Prisoner 2 contained a cavern with the word "PLUGH" written on the wall; if the player typed this word into the command parser, he was sent back to his starting point.

Down the hall from Platt, three programmers were developing a debugger for a commercial operating system (CP6). They added a command to show a stack trace, and called the command “plugh”. The command passed all internal reviews for release until a technical writer refused to allow a funny word that didn’t mean anything to be included in the product. A lengthy development meeting determined that plugh stood for “Procedure List Used to Get Here”.

Dave Platt's's 550-point F77 version had some memorable moments as well:

Platt also had a number of "cameos" — very rare random events of no consequence. For example:

Other versions

Other versions added their own flavour to the proceedings.

See also

References

  1. Montfort, Nick (2003). Twisty Little Passages: An Approach To Interactive Fiction. Cambridge: The MIT Press. ISBN 0-262-13436-5
  2. Mel Park. Bev Schwartz meets the real Bedquilt
  3. Rick Adams. "Here's where it all began…". The Colossal Cave Adventure page.
  4. 4.0 4.1 Jerz, Dennis (2007) Somewhere Nearby Is Colossal Cave: Examining Will Crowther's Original “Adventure” in Code and in Kentucky, Digital Humanities Quarterly
  5. L’avventura è l’avventura » Interactive Fiction? I prefer Adventure
  6. Russel Dalenberg (March 20 2004). "Adventure Family Tree" (ASCII Art).
  7. "Adventure: Crowther's original source code found; photos from inside the real Colossal Cave".
  8. Rick Adams. "Everything you ever wanted to know about…the magic word XYZZY". The Colossal Cave Adventure page.
  9. Peterson, Dale: "Genesis II: Creation and Recreation with Computers", (1983)
  10. David Welbourn. ">plugh responses". A web page giving responses to "plugh" in many games of interactive fiction

External links