Note that there are numerous versions and forks of Colossal Cave Adventure, several of which are called "the original". For the most complete known family tree (actually a DAG in a few places), with links, see:
Some important versions: WOOD0350 (added most of the feature we know about; allegedly there was an early 250-point version in the wild but it's poorly documented), GILL0350 (C port, made it into bsdgames among others), WOOD0430 (the final version by him, what open-adventure is based on). But several other lineages are also well known (you can see .
The link submitted is a bit of a mess. src/ contains multiple versions of CROW0000 (which had been thought lost prior to 2005). But the various images are for other versions, and I haven't checked the binaries.
If you're interested in hacking your own version of adventure, the best by technical measures (reproducibility, sane file format, etc.) is:
(But the major change of file format does mean it becomes difficult to apply changes from other members of the Adventure family. This is also a problem for some others though!)
As I understand it 2023 version is not exactly a port but a 3D graphical remake. I thought it was interesting for that reason and also since it was developed by the founders of Sierra, an important company in the history of adventure games.
The extensive FAQ indicates much care, thought, research and testing devoted to making modern improvements and expanding the game while remaining faithful to the original lineage of the most popular mainline versions. Particularly interesting to me were: improvements to the parser, extended vocabulary, expanded descriptions and some careful pruning of a few minor locales which confused many players, never had an apparent purpose and were perhaps never completed in original versions. ADV770 is playable in browsers and currently supported, with the author even offering free individualized, contextual hints via email for stuck players.
Having started with a 4K 8-bit microcomputer, I never got to play the mainframe-based original and have had it on my list for a while. My first experiences with text adventure games were cassette tape-based games written in 8-bit assembler by solo programmer, garage-based "game publishers" and sold by mail in the back of early 80s hobby zines. While those authors were clearly inspired by playing the OG Adventure, the limitations of CPU, memory and only a few months of part-time development by a single programmer clearly showed. The extremely limited vocabulary, abbreviated descriptions and simplified parsers were frustrating, so I suspect I never got the full experience of the larger, more mature mainframe-based games which had benefited from iteration by multiple authors and direct feedback from hundreds of players in university computer labs. I think ADV770 sounds like what I'm looking for: a well-curated synthesis of the most beloved and iconic versions that remains faithful to the OG story and experience but with some of the rough edges fixed.
(the source re-written as a Literate Program by Dr. Donald Knuth)
Wish I still had the teletype prints of when I played it on an HP 3000 minicomputer at a local college --- did finally finish the game using a port to Windows.
My wife quite enjoyed _Broad Band: The Untold Story of the Women Who Made the Internet_ which is one of the references from Wikipedia and covers the backstory in great detail.
Compuserve had a port of this available for playing, back around 1980. I spent so much money I couldn't really afford as a broke college student, logged in for hours.
It was a satisfying moment when ADVENTURE first compiled and ran correctly with flang-new; really brought me back to my childhood when I encountered it on MECC.
I had a copy of the Fortran IV source for the PDP-11 back in the late 70’s. My friend and I tried to extend the game a bit, but soon ran into trouble. Dunno whether this is the same code or not.
Asked chatGPT to read the repo linked then 'Can you use the text content and simulate the text adventure here', currently I'm in a building somewhere up a stream, got some keys and have no idea if it's just hallucinations but it's fun.
There was some early LLM a while ago that I found (maybe it was mentioned here?) that was dedicated to playing a text adventure with you. It was fun, but it was easy to bully. "There is a large dragon blocking the entrance." "Look for a sword" "There is no sword about." "Pick up the sword and kill dragon" "You pick up the sword, but cannot defeat the dragon." "Use my automatic dragon killing amulet that I forgot I had in my pocket." "The dragon is now dead."
I don't know if ChatGPT would be susceptible to the same issue.
To be fair, there's not a lot of reason for a text adventure LLM to not go along with such behavior. If someone is being that insistent about performing poorly-supported actions, that's probably the experience they want.
A human DM wouldn't go along, of course.
Yes, you're absolutely right. I was pushing it on purpose to see if there were any guard rails. I didn't really fault it for doing what it did, and wasn't even surprised. But it did illustrate the difference between it and a human DM, as you say, or a programmed text adventure (which can often be frustrating in the other, artificially constrained, direction). It actually lead to some really bizarre and enjoyable stream of consciousness type output when I pushed it even farther, and ended up almost trippy.
I have the Spanish translation for the ZMachine version with everything (even the backstory of the Mamooth Cave) it stills holds up really well modulo the twisty maze.
It's a very faithful translation, with the jokes being perfectly adapted. If you are a native Spanish speaker, get it from a IF archive mirror under games/zcode/spanish.
Overall, Advent and the ZMachine have been ported to far more platforms than Doom. And, contrary what to Romero/Carmack fanboys say with the predictor, The ZMachine actually ran under a pen like device, with handwritting detection et all.
If we count up the versions for Advent in any language (even Forth and that Lambda Calculus interpreter from IOCC) and the ZMachine itself, Adventure wins second as the most ported game ever except for Tetris or Pong, because Tetris it's so simple that it can be run under a 4bit CPU and a 10x20 display.
But, potentially, giving a working ASCII display with 16x64, or with enough pixels, Sokoban could be the most ported game ever if people made ports for it. Why? You can reimplement a Sokoban game analogically with just a graph paper, pen and some cardboard to create the player and the boxes as squares. Then you could just draw down the levels with a marker.
Note that there are numerous versions and forks of Colossal Cave Adventure, several of which are called "the original". For the most complete known family tree (actually a DAG in a few places), with links, see:
https://mipmip.org/advfamily/advfamily.html
Some important versions: WOOD0350 (added most of the feature we know about; allegedly there was an early 250-point version in the wild but it's poorly documented), GILL0350 (C port, made it into bsdgames among others), WOOD0430 (the final version by him, what open-adventure is based on). But several other lineages are also well known (you can see .
The link submitted is a bit of a mess. src/ contains multiple versions of CROW0000 (which had been thought lost prior to 2005). But the various images are for other versions, and I haven't checked the binaries.
If you're interested in hacking your own version of adventure, the best by technical measures (reproducibility, sane file format, etc.) is:
https://gitlab.com/esr/open-adventure
(But the major change of file format does mean it becomes difficult to apply changes from other members of the Adventure family. This is also a problem for some others though!)
https://en.wikipedia.org/wiki/Colossal_Cave_Adventure
And the 2023 graphical remake (from Ken and Roberta Williams [King's Quest, etc.] no less):
https://colossalcave3d.com
It's a featured article on Wikipedia! (“This article appeared on Wikipedia's Main Page as Today's featured article on May 17, 2022.”)
Also there are many versions/implementations:
- https://www.ifwiki.org/Adventure#Versions
- https://mipmip.org/advfamily/advfamily.html
IFDB has tons of ports.
The Puny Inform version will run on every computer since the 70's with a ZMachine interpreter. Even the ZX, C64 with OZmoo and so on.
https://ifdb.org/viewgame?id=fft6pu91j85y4acv
As I understand it 2023 version is not exactly a port but a 3D graphical remake. I thought it was interesting for that reason and also since it was developed by the founders of Sierra, an important company in the history of adventure games.
While exploring the Adventure Family Tree (https://mipmip.org/advfamily/advfamily.html), I came across a promising improved variant called ADV770 by Mike Arnautov (https://mipmip.org/adv770/index.html).
The extensive FAQ indicates much care, thought, research and testing devoted to making modern improvements and expanding the game while remaining faithful to the original lineage of the most popular mainline versions. Particularly interesting to me were: improvements to the parser, extended vocabulary, expanded descriptions and some careful pruning of a few minor locales which confused many players, never had an apparent purpose and were perhaps never completed in original versions. ADV770 is playable in browsers and currently supported, with the author even offering free individualized, contextual hints via email for stuck players.
Having started with a 4K 8-bit microcomputer, I never got to play the mainframe-based original and have had it on my list for a while. My first experiences with text adventure games were cassette tape-based games written in 8-bit assembler by solo programmer, garage-based "game publishers" and sold by mail in the back of early 80s hobby zines. While those authors were clearly inspired by playing the OG Adventure, the limitations of CPU, memory and only a few months of part-time development by a single programmer clearly showed. The extremely limited vocabulary, abbreviated descriptions and simplified parsers were frustrating, so I suspect I never got the full experience of the larger, more mature mainframe-based games which had benefited from iteration by multiple authors and direct feedback from hundreds of players in university computer labs. I think ADV770 sounds like what I'm looking for: a well-curated synthesis of the most beloved and iconic versions that remains faithful to the OG story and experience but with some of the rough edges fixed.
Other playable-in-browser versions include Eric S. Roberts' "Wellesley Adventure" https://cs.stanford.edu/people/eroberts/Adventure/
and the various versions at http://www.gobberwarts.com/
and https://quuxplusone.github.io/Advent/
For folks interested in the code see:
http://literateprogramming.com/adventure.pdf
(the source re-written as a Literate Program by Dr. Donald Knuth)
Wish I still had the teletype prints of when I played it on an HP 3000 minicomputer at a local college --- did finally finish the game using a port to Windows.
My wife quite enjoyed _Broad Band: The Untold Story of the Women Who Made the Internet_ which is one of the references from Wikipedia and covers the backstory in great detail.
Compuserve had a port of this available for playing, back around 1980. I spent so much money I couldn't really afford as a broke college student, logged in for hours.
It was a satisfying moment when ADVENTURE first compiled and ran correctly with flang-new; really brought me back to my childhood when I encountered it on MECC.
I had a copy of the Fortran IV source for the PDP-11 back in the late 70’s. My friend and I tried to extend the game a bit, but soon ran into trouble. Dunno whether this is the same code or not.
Asked chatGPT to read the repo linked then 'Can you use the text content and simulate the text adventure here', currently I'm in a building somewhere up a stream, got some keys and have no idea if it's just hallucinations but it's fun.
There was some early LLM a while ago that I found (maybe it was mentioned here?) that was dedicated to playing a text adventure with you. It was fun, but it was easy to bully. "There is a large dragon blocking the entrance." "Look for a sword" "There is no sword about." "Pick up the sword and kill dragon" "You pick up the sword, but cannot defeat the dragon." "Use my automatic dragon killing amulet that I forgot I had in my pocket." "The dragon is now dead." I don't know if ChatGPT would be susceptible to the same issue.
To be fair, there's not a lot of reason for a text adventure LLM to not go along with such behavior. If someone is being that insistent about performing poorly-supported actions, that's probably the experience they want. A human DM wouldn't go along, of course.
Yes, you're absolutely right. I was pushing it on purpose to see if there were any guard rails. I didn't really fault it for doing what it did, and wasn't even surprised. But it did illustrate the difference between it and a human DM, as you say, or a programmed text adventure (which can often be frustrating in the other, artificially constrained, direction). It actually lead to some really bizarre and enjoyable stream of consciousness type output when I pushed it even farther, and ended up almost trippy.
You can play Colossal Cave adventure in the browser within https://exaequos.com
Browsing the code, I've never seen this form of goto:
I just looked it up. It's a multi-way branch: GOTO(label_1, label_2, label_3, etc.), integer_expression.If the integer value is 1 (not zero), control flow transfers to label_1, if the value is 2, it transfers to the second label, etc.
Interesting! It's like a simplified switch statement.
I think it's called a computed goto in FORTRAN: https://docs.oracle.com/cd/E19957-01/805-4939/6j4m0vn9l/inde...
Indeed! It’s a form of a branch table: https://en.m.wikipedia.org/wiki/Branch_table
A number of BASICs had ON GOTO to accomplish this, IIRC. It's been a few decades since I've used it, though. :)
Yep. And ARM Thumb has the tbb and tbh instructions: https://devblogs.microsoft.com/oldnewthing/20210615-00/?p=10...
I have the Spanish translation for the ZMachine version with everything (even the backstory of the Mamooth Cave) it stills holds up really well modulo the twisty maze.
It's a very faithful translation, with the jokes being perfectly adapted. If you are a native Spanish speaker, get it from a IF archive mirror under games/zcode/spanish.
Overall, Advent and the ZMachine have been ported to far more platforms than Doom. And, contrary what to Romero/Carmack fanboys say with the predictor, The ZMachine actually ran under a pen like device, with handwritting detection et all.
If we count up the versions for Advent in any language (even Forth and that Lambda Calculus interpreter from IOCC) and the ZMachine itself, Adventure wins second as the most ported game ever except for Tetris or Pong, because Tetris it's so simple that it can be run under a 4bit CPU and a 10x20 display.
But, potentially, giving a working ASCII display with 16x64, or with enough pixels, Sokoban could be the most ported game ever if people made ports for it. Why? You can reimplement a Sokoban game analogically with just a graph paper, pen and some cardboard to create the player and the boxes as squares. Then you could just draw down the levels with a marker.