ESR Announces The Open Sourcing Of The World's First Text Adventure (ibiblio.org)
An anonymous reader writes:
Open source guru Eric S. Raymond added something special to his GitHub page: an open source version of the world's first text adventure. "Colossal Cave Adventure" was first written in 1977, and Raymond remembers it as "the origin of many things; the text adventure game, the dungeon-crawling D&D (computer) game, the MOO, the roguelike genre. Computer gaming as we know it would not exist without ADVENT (as it was known in its original PDP-10 incarnation...because PDP-10 filenames were limited to six characters of uppercase)...
"Though there's a C port of the original 1977 game in the BSD game package, and the original FORTRAN sources could be found if you knew where to dig, Crowther & Woods's final version -- Adventure 2.5 from 1995 -- has never been packaged for modern systems and distributed under an open-source license. Until now, that is. With the approval of its authors, I bring you Open Adventure."
Calling it one of the great artifacts of hacker history, ESR writes about "what it means to be respectful of an important historical artifact when it happens to be software," ultimately concluding version control lets you preserve the original and continue improving it "as a living and functional artifact. We respect our history and the hackers of the past best by carrying on their work and their playfulness."
"Despite all the energy Crowther and Woods had to spend fighting ancient constraints, ADVENT was a tremendous imaginative leap; there had been nothing like it before, and no text adventure that followed it would be innovative to quite the same degree."
"Though there's a C port of the original 1977 game in the BSD game package, and the original FORTRAN sources could be found if you knew where to dig, Crowther & Woods's final version -- Adventure 2.5 from 1995 -- has never been packaged for modern systems and distributed under an open-source license. Until now, that is. With the approval of its authors, I bring you Open Adventure."
Calling it one of the great artifacts of hacker history, ESR writes about "what it means to be respectful of an important historical artifact when it happens to be software," ultimately concluding version control lets you preserve the original and continue improving it "as a living and functional artifact. We respect our history and the hackers of the past best by carrying on their work and their playfulness."
"Despite all the energy Crowther and Woods had to spend fighting ancient constraints, ADVENT was a tremendous imaginative leap; there had been nothing like it before, and no text adventure that followed it would be innovative to quite the same degree."
I remember playing this with a group of friends on a teletypewriter overnight in the University of Wales Institute of Science and Technology Cardiff in 1981. We played the whole thing through from start to end in one session. I did the typing because I could touch type. I think we finished at about 5am. No computer game has really interested me since. Once you have played ADVENT you have played them all. I still have the printout somewhere, it weighs about five pounds.
Facts are history now plebs have politics for religion on social media.
The real game is being able to navigate in the source code. The dungeon stuff is just a bonus side effect.
Not going to say that ADVENT didn't inspire a lot of things, and I played it in several variants (including a version that was written on PLATO, called "adventl"), but there were certainly dungeon games written before ADVENT, specifically "dnd" on PLATO was written in 1974. Oubliette was released in late 1977 (so was unlikely to have been predicated on ADVENT) and Avatar was already being written by then as well, the first version of Moria was written in 1975 ...
I downloaded this to my Linux box and tried to run "make", but it complained about needing to be in C99 mode. Is this release only compatible with the original hardware and OS it was written on or something? I thought from the README it was supposed to be a port that works on modern computers/OSes?
The FORTRAN source can be found here:
http://rickadams.org/adventure...
In 1980....on a teletype like the other poster..... at high school in Launceston, Tasmania, Australia. I was in Year 8.
My math teacher (who's office was right next to the computer room) was giving me grief about using all the paper.
The next year we got a green CRT terminal thing..... no more paper, and it "beeped" instead of ringing a bell !
I feel old.
L6022: RSPEAK(128); /* 6023 */ for (J=50; J=MAXTRS; J++) { /*etc*/ ; /* end loop */
if(J == PYRAM && (LOC == PLAC[PYRAM] || LOC == PLAC[EMRALD])) goto L6023;
if(AT(J) && FIXED[J] == 0)CARRY(J,LOC);
if(TOTING(J))DROP(J,CHLOC);
L6023:
}
L6024: DLOC[6]=CHLOC;
ODLOC[6]=CHLOC;
DSEEN[6]=false;
goto L6030;
Who wrote the C version while converting the game from 32 bit to 24 bit Hollerith code on a Harris H-800 at Weber State University n the 1980's.
P.S.: It was Open Source when I did that; it had been declared public domain.
P.P.S.: Public domain is better than a freaking license.
The summary says that ESR put the repo on GitGub. It's actually on GitLab.
It's nice to see not everyone slavishly uses GitHub all of the time.
retro is cool and all, and thanks for making the code available.. but fuck, man...
where's the linkable, clickable web version?
What world is this where 1995 is before 1977? Or is there some new, fangled definition of "first" that I've never heard of?
File under 'M' for 'Manic ranting'
That is the difference between ADVENT and modern games.
Ancient technology. But the Hall of Mists that sways back and forward as if alive is far more evocative than anything a bazillion flop GPU can produce.
Plugh!
This code is a forward-port of the Crowther/Woods Adventure 2.5 from 1995, last version in the main line of Colossal Cave Adventure development written by the original authors. The authors have given permission and encouragement for this release.
For the sake of precision!
Sent as ripples into the electromagnetic field. No single photon has been harmed in the process.
I was playing "Hunt the Wumpus" on IBM machines in 1974. That was a text adventure set in a maze of caves. Colossal Cave Adventure even seems like a rip-off of the Wumpus game.
Actually, I was playing on printing terminals at Bell Labs in holmdel NJ, running the game on a big IBM box 45 miles away in Murray Hill NJ via telnet. Ah, the innocence of unencrypted sessions and clear-text passwords. They wouldn't let me play blackjack because we had to pay for our cpu cycles, but the 300 baud acoustically coupled modems were easily fast enuf for simple ascii.
On the one hand you take life too seriously, and on the other, you do not take playful existence seriously enough. Seth
You are likely to be eaten by a grue.
I remember playing this game in high school on our time-shared PDP-10... and I graduated in 1975. How is that possible?
Buzzing the information Superhighway at Warp speed
plugh
XYZZY, plough and Y2 are still stuck in my brain..
They might be trying to entrap you as a leader of the free and open source world, according to ESR.
* http://esr.ibiblio.org/?p=6907
The anti-feminist libel by Eric is titled "From Kafkatrap to Honeytrap". It was covered on Slashdot some time ago, and no, I could not make this stuff up.
Code is extremely readable. Haven't seen a goto statement in 2 decades.
It was run in a TI portable terminal with a 300-baud acoustic coupler, dialed into the PDP-11. Caused considerable loss of productivity...
I remember playing this after hours at my first job in 1978/79. We had these 3278 monitors from IBM that displayed green characters on a black background. It must of been around 9 or 10 at night when I wandered into the volcano room and the screen painted itself with this wall of glowing, green text describing what I was seeing in the room. The lights were off in my office and it glowed green from the light of the monitor. I was totally mesmerized. I eventually solved the whole game and moved on to other things but I've never forgotten that night.
I have a working copy on the INVENT3K machine at INVENT3K.OPENMPE.COM (use simple telnet):
INVENT3K2:
INVENT3K2:HELLO PLAYER.ADVENT
HP3000 Release: C.75.00 User Version: C.75.05 MON, MAY 29, 2017, 12:22 PM
MPE/iX HP31900 C.45.05 Copyright Hewlett-Packard 1987. All rights reserved.
(banner snipped because it does not pass the slashdot junk filter)
OPEN FAILED
INITIALIZING...
TABLE SPACE USED
9712 OF 9800 WORDS OF MESSAGES
742 OF 750 TRAVEL OPTIONS
297 OF 300 VOCABULARY WORDS
140 OF 150 LOCATIONS
53 OF 100 OBJECTS
31 OF 35 ACTION VERBS
201 OF 205 RTEXT MESSAGES
10 OF 12 CLASS MESSAGES
9 OF 20 HINTS
32 OF 35 MAGIC MESSAGES
ARE YOU A WIZARD?
NO
VERY WELL.
INITIALIZATION COMPLETED.
WELCOME TO ADVENTURE.. WOULD YOU LIKE INSTRUCTIONS?
YES
SOMEWHERE NEARBY IS COLOSSAL CAVE, WHERE OTHERS HAVE FOUND FORTUNES IN
TREASURE AND GOLD, THOUGH IT IS RUMORED THAT SOME WHO ENTER ARE NEVER
SEEN AGAIN. MAGIC IS SAID TO WORK IN THE CAVE. I WILL BE YOUR EYES
AND HANDS. DIRECT ME WITH COMMANDS OF 1 OR 2 WORDS. I SHOULD WARN
YOU THAT I LOOK AT ONLY THE FIRST FIVE LETTERS OF EACH WORD, SO YOU'LL
HAVE TO ENTER "NORTHEAST" AS "NE" TO DISTINGUISH IT FROM "NORTH".
(SHOULD YOU GET STUCK, TYPE "HELP" FOR SOME GENERAL HINTS. FOR INFOR-
MATION ON HOW TO END YOUR ADVENTURE, ETC., TYPE "INFO".)
- - -
IF YOU HAVE ANY PROBLEMS, PLEASE CONTACT THE PERSON IN CHARGE OF THIS
PROGRAM AT YOUR MACHINE. YOU MAY ALSO CONTACT THE DEVELOPERS
WILLE CROWTHER (CROWTHER@PARC-MAXC), DON WOODS (DON@SU-AI), AND
GARY PALTER (PALTER@MIT-MULTICS).
IF YOU HAVE ANY PROBLEMS, CONTACT ANY OF US...
YOU ARE STANDING AT THE END OF A ROAD BEFORE A SMALL BRICK BUILDING.
AROUND YOU IS A FOREST. A SMALL STREAM FLOWS OUT OF THE BUILDING AND
DOWN A GULLY.
QUIT
DO YOU REALLY WANT TO QUIT NOW?
YES
OK
YOU SCORED 27 OUT OF A POSSIBLE 350, USING 1 TURNS.
YOU ARE OBVIOUSLY A RANK AMATEUR. BETTER LUCK NEXT TIME.
TO ACHIEVE THE NEXT HIGHER RATING, YOU NEED 9 MORE POINTS.
END OF PROGRAM
CPU=20. Connect=1. MON, MAY 29, 2017, 12:23 PM.
Tracy Johnson
Old fashioned text games hosted below:
http://empire.openmpe.com/
BT
What did ESR do to justify adding his Copyright to the the license?
Our lawyers tell us we need to make substantial changes or additions to warrant adding a Copyright for our company or ourselves.
I was looking through the text of the game and came across this gem:
270 A dark fog creeps in to surround you. From somewhere in the fog you
270 hear a stern voice. "This Adventure has been tampered with! You have
270 been dabbling in magic, knowing not the havoc you might cause thereby.
270 Leave at once, before you do irrevocable harm!" The fog thickens,
270 until at last you can see nothing at all. Your vision then clears,
270 and you find yourself back in The Real World.
Inform7 ( http://inform7.com/) , Twine (http://twinery.org/) Quest (http://textadventures.co.uk/quest/) , Adrift (http://www.adrift.co) and other text adventure programming engines may get a nice boost from this.
"Imagination is more important than knowledge" - Einstein
“lots of lubricants, some plastic tubing, and a yak.”
http://www.filfre.net/tag/leat...
"I say we take off, nuke the site from orbit. It's the only way to be sure."
no. no, they won't. there is absolutely no way whatsoever that inform7 could benefit from a 50 year-old relic remarkable only for the amount of effort it took to get it running on the hardware of the time. the only fortran code anyone uses anymore is for numerical analysis, and i'm not sure whether the real reason for this is that programmers are superstitious, lazy and, mathematically illiterate, or something more serious.
from what little i know of twine, it's designed to be easy to use at the cost of expressive ability, so again, exactly the opposite of 50 year-old spaghetti fortran. i haven't heard of the others, but if they are designed to run on systems from the past 30 years or so, they also have nothing to benefit from advent.
tl;dr: advent sucks, who gives a shit?
"They were pure niggers." – Noam Chomsky
"Look at it, the wizard looks back at you"
For anybody who's interested, here's a page with photos of the cave the Colossal Cave cave was largely based on, located in Kentucky.
http://digitalhumanities.org/dhq/vol/1/2/000009/000009.html
Do you eat with that mouth ?
errr....umm...*whooosh* *whoosh* Is this thing on ?
Raymond expects everyone else to opensource their code, but it took him 40 years to opensource his. What a douche.
Anyone have any insight on the use of GOTO in this code? To me, at least, it seems highly appropriate, in context. I bring it up because I was reading random '...considered harmful' stuff earlier, and have generally come to the conclusion that 'considered harmful' just means one should ponder a bit more if they're thinking about using it.
There is no XUL, only WebExtensions...
for a university assignment years ago.
I didn't have it in me to do more than 5 rooms.
Will Crowther, the original author of this game, is one of the most down-to-earth, humble tech pioneers you could ever meet. Not only was he one of the two main programmers on the original ARPANet team, not only was he one of he best rock climbers on the East Coast in the 1960's, pioneering many climbing routes at the Gunks in NY State, a regional climbing mecca, but he was also the sole original author of this game that started it all.
I met him about twenty years ago, when he taught rock climbing in his spare time to Boston area climbers. He was smart. He loved to teach and give back, and he never talked about himself or his own accomplishments unless you knew the right questions to ask, and were aware of his impressive history.
Will seldom gives interviews. I've met some impressive people in my life, but to me, his focus on getting amazing things done over self-promotion left a lasting impression. I'm psyched that ESR brought this little piece of history back into the public eye, and shed a little light on such a role model in the process.
[repost from April]
FORTRAN was -- for some still is-- the 'Perl' of scientific computing. Get it in and get it done... and it doesn't always compile down very tight, but always fast because for mainframe developers getting this language optimized for a new architecture was first priority.
At 15, the first real structured program I ever de-constructed completely while teaching myself the language, was the FORTRAN IV source for Crowther and Woods Colossal Cave Adventure, widely regarded as 'the' original interactive text adventure, a genre which would later go multi-user to become the MUD. Read about it here, or play it in Javascript.
FORTRAN IV and Dartmouth BASIC (I'll toss in RPG II also) were the 'flat' GOTO-based languages, an era of explicit rather than implicit nesting -- a time in which high level functions were available to use or define but humans needed to plan and implement the actual structure in programs mentally by using conditional statements and labels to JUMP over blocks of code. Sort of "assembly language with benefits".
Crowther's PDP-11 Adventure version was running on the 36-bit GE-600 mainframes of GEISCO (General Electric Information Services) Mark III Foreground timesharing system... this is in the golden age of timesharing and no one did it better than GE. It took HOURS at 300bps and two rolls of thermal paper to print out the source and data files, and I the Adventure code and data out on the floor and traced the program mentally, keeping a notebook of what was stored in what variable... I had far more fun doing this than playing the game itself.
Then the "real life" adventure began. I started poking around on the Mark III timesharing system, and found a way to jump out of my partitioned access and explore. What really helped was a collection of FORTRAN/77 system utilities written by an engineer working at GEISCO (this is General Electric, no relation to GEICO and the year is ~1980). Their development environment as well as the commercial systems were controlled by password protected accounts, each with file/user areas... BUT there was also this command line debugger that was able to write to memory regions beyond your own job, and if you were able to parse out memory structures (reading source for the utilities helped) you could "punch yourself in" to any user number (location), effectively changing identity to that of another user and seeing their files. Or examine the buffers containing character streams of other users' terminals in real time. It was fascinating and I soon had developed a suite of tools in F77 to assist in exploration of the system, leap-frogging onto the commercial file systems too. I kept the source encrypted by the F77 'SCRAM' function, decrypting it only to edit and compile. My cache of tools was stored "in" a user number that did not exist, you can think of it as a unpointed-to lost cluster of sorts. I was totally white hat about it, never prying into customer files (McDonald's etc.) and even wrote a summary of vulnerabilities and dropped it into one of their secure areas. I just wanted to be hired. Cat 'n mouse games ensued, even a trace and FBI phone tap. GEISCO originally thought I was a rogue employee but when they learned I was just a kid the heat was off, they were afraid of public embarrassment.
GE actually bought me a plane ticket to Rockville MD so they could pick my (now 18 year old) brain, and the matter was closed soon after. In the end I was not hired or even encouraged to apply and learned a valuable lesson about corporate culture, that it was not for me.
Some eight months after my little escapade, the 414 kids made national headlines and one of them even got his face on Newsweek magazine... and I am thinking to myself, I was there first.
Lots of peopl
<blink>down the rabbit hole</blink>
> no text adventure that followed it would be innovative to quite the same degree.
I think you could make a case for MUD at Essex University, just a few years later – if you can imagine giving up w@nking and instead having sex with lots of people at the same time, well, that's how innovative MUD was.
I remember reading about this a few months ago, and I'm pretty sure it was linked from Slashdot. I'm too lazy to go look for it, but I was excited then, so I clearly remember it.