The Source Code For All Infocom Text Adventure Classics Has Been Released (arstechnica.com) 106
You can now download the source code of every Infocom text adventure game, thanks to archivist Jason Scott who uploaded the code to GitHub. "There are numerous repositories under the name historicalsource, each for a different game," reports Ars Technica. "Titles include, but are not limited to, The Hitchhiker's Guide to the Galaxy, Planetfall, Shogun, and several Zork games -- plus some more unusual inclusions like an incomplete version of Hitchhiker's sequel The Restaurant at the End of the Universe, Infocom samplers, and an unreleased adaptation of James Cameron's The Abyss." From the report: The code was uploaded by Jason Scott, an archivist who is the proprietor of textfiles.com. His website describes itself as "a glimpse into the history of writers and artists bound by the 128 characters that the American Standard Code for Information Interchange (ASCII) allowed them" -- in particular those of the 1980s. He announced the GitHub uploads on Twitter earlier this week. The games were written in the LISP-esque "Zork Implementation Language," or ZIL, which you could be forgiven for not being intimately familiar with already. Fortunately, Scott also tweeted a link to a helpful manual for the language on archive.org. Gamasutra, which first reported the news, notes that Activision still owns the rights to Infocom games and could request a takedown if it wanted.
Re: (Score:1)
No but it is of a historical nature as an early example of gaming on the computer.
Go back to Fortnite or whatever you kids play today. You missed out on so much, and you don't belong here.
Re: Sooo... (Score:5, Informative)
This isn't just of historical interest.
Infocom was clever in how they designed their interactive fiction. They created an interpreter called a z-machine to run their games. Once the z-machine had been ported to a new platform, it could run any of Infocom's interactive fiction games. Instead of needing to port every game individually, it was just necessary to port the z-machine.
There are several versions of the z-machine and some open source versions have been created. Developing for the z-machine requires a compiler to generate z-code. I don't believe Infocom's compilers have ever been released publicly, but there are newer compilers [inform7.com] that use the Inform language and compile it into z-code. It's pretty simple to download and install that compiler on a modern Linux system.
Re: (Score:2, Informative)
Similar concept, but the Z-machine was developed in 1979, and work first began on Java in 1991.
Re: (Score:2, Informative)
Kind of weird to describe it that way when the first Infocom game predated Java by almost 15 years.
Re: (Score:3)
Not sure if stupid or trolling...
Zork's Virtual Machine predates Java by 16 years.
* Zork I was released in 1980
* Java was released in 1996
Re: (Score:2)
This is correct.
Re: (Score:2)
Also, they had to split the game up into a trilogy because it was too big to fit in the 64 KB 8-bit machines at the time!
Re: Sooo... (Score:4, Interesting)
I know size was a constraint for Zork, but I think the constraint was floppy size, not RAM. The c64 had the most directly-usable RAM of its era, and even IT had to do up to a minute or so of floppy access after each move (at least, "Suspended" did). AFAIK, no Infocom game EVER came on cassette or cartridge, only floppy disk.
That said, the distinction is kind of academic... I think the first TRS-80 (model I), CP/M, and (maybe?) Apple II 5-1/4" floppies (among Infocom's first platforms) were only ~80k.
In any case, if Zork *was* RAM-constrained, and not floppy-constrained, the constraint would have been more like 16k. In 1979, 16k was actually a fair amount of RAM... (4k was considered "entry-level", though nobody thought 1k was actually adequate.)
Re: (Score:2)
> The C64 had the most directly-usable RAM of its era,
Compared to what? The VIC-20? LOL
* The Apple ][ and ][+ both had 64 KB of addressable RAM (48KB w/o a LC, 64KB with a 16 KB Language Card.) //e, //c, & //c+ had 128 KB of addressable RAM but those came out after 1983; a few years after Zork.
* The enhanced
> but I think the constraint was floppy size, not RAM.
It was both.
The original Zork ran on a PDP-10 with ~1,152 KB of RAM !!!
Zork I for the Apple ][ and TRS-80 had a minimum memory requirement
Re: (Score:2)
OK, the c64 had the most directly-addressable RAM of any 8-bit computer available to American consumers in 1982.
The Apple //e was advertised as having "64k", but if I recally, only ~48k of it was directly addressable by the CPU (ie, capable of being read and updated using LDA/LDX/LDY and STA/STX/STY). It had (I believe) another 16k of RAM in the "80 column video card", but I'm pretty sure THAT RAM couldn't be addressed directly & had to be read & written as i/o.
I believe the Atari 65XE was similar..
Only Activision can currently free these games (Score:2)
One can run Infocom's games on a free software z-machine program, but the Infocom games themselves (despite this release) are not free software (software the user is free to run, inspect, modify, and share).
Take a look at any of the source for those games in this archive and you'll likely see a string like "(c) Copyright 1983 Infocom, Inc. All Rights Reserved." early in the source code. That is not a license granting the user the freedom to run, inspect, share, and modify the game, hence it is not free sof
Re: (Score:2)
There's an open source ZIL compiler (Score:2)
Infocom's compiler hasn't resurfaced, but ZILF works well enough to hack on these games: http://zilf.io/ [zilf.io]
It is pitch black (Score:5, Funny)
Re: (Score:2)
Re: (Score:2)
Thanks for this bit of history (Score:5, Insightful)
I'm old enough to remember when computers used to amaze you. These games were one way that would happen.
Now... how am I to play The Hitchhiker's Guide to the Galaxy without the scratch 'n' sniff card?
Re:Thanks for this bit of history (Score:4, Funny)
I think I got that wrong. The scratch 'n' sniff card was, I think, in "The Leather Goddesses of Phobos". But anyway...
Re: (Score:2)
I believe Hitchhiker's Guide game had the Peril-Sensitive Sunglasses as the feelie.
I tried wearing those while driving once. It didn't end well.
Re: (Score:2)
From memory ... it came with the peril-sensitive sunglasses (made of construction paper), no tea, a baggie containing a "microscopic space fleet", pocket fluff, and a red button that said "don't panic!" in yellow letters.
Re: (Score:3)
I had the "Don't Panic" button. This brings back some memories.
I browsed the source for H2G2 and it's remarkably simple [github.com]. I don't think it'd take all that much effort to just interpret and run this on a modern computer, without bothering to compile it for a Z-machine, even a microcontroller with an SD card.
I loved this game as a kid. Thanks for this Slashdot.
Re: (Score:2)
ASCII (Score:5, Insightful)
I spent an hour today trying to find a Lynx browser for my Mac. Those days of simple text based communication seem to be gone. Even MS Word stubbornly refuses to gracefully accept ASCII files. I'm so sick of the sterile Hell-vetica, of pseudo humble Hobo, of all the cute fonts and emoticons. A web site that isn't covered with crap and banners and slideshows and pop-ups just isn't 'hip' these days, and it infuriates me.
Shakespere & Hemingway did OK with ASCII. It is still possible for educated people to express themselves fully, even extravagantly with ASCII. It is a sign of moral decay that people seek nonsensical additions to the language to make simple statements. And don't get me started on the mental cripples who have to resort to WTF and other vulgar excuses for illiteracy. If there is a heaven, the path to it will be marked in ASCII, I hope you can still read it.
Not sure about precompiled on Mac... (Score:1)
But lynx is alive and well, complete with gopher support and compatibility for a lot of terminals. I use it pretty regularly for file server listings that grind firefox to a halt.
The software ecosystem is both larger and smaller than it was in the past. A lot of it is at the mercy of new programmers interested in old code or subjects, while the corporate types break popular and existing long term software promising better maintainability, but really just keeping everything a full funded support nightmare fo
Re: (Score:2)
Ahh but the cool kids are all now using browsh[1]. With browsh now even your terminal-based browser can consume 16 GB of memory at idle!
[1] https://www.brow.sh/ [www.brow.sh]
Re: ASCII (Score:1)
It's simple to install lynx on a Mac. Just install MacPorts [macports.org] and then do sudo port install lynx. For that matter, MacPorts also has elinks, links (which is version 2 of links), and links1. It's not hard at all to get lynx or a similar browser on a Mac.
Re: (Score:2)
lynx is still alive - but there are other alternatives like "links", "elinks" and a few others.
I actually still use text-based browsers quite a bit... they're handy when ssh'd into supercomputers and you need to read some documentation real quick...
Re: (Score:2)
Me too. I still use text clients a lot like in SSH. I'm old school.
Re: (Score:1)
Don't be such an EBCDIC.
Re: (Score:2)
Shakespere & Hemingway did OK with ASCII. It is still possible for educated people to express themselves fully, even extravagantly with ASCII. It is a sign of moral decay that people seek nonsensical additions to the language to make simple statements.
Shakespeare was both actor and dramatist. Implying that he understood that dialog ---- the scriot ---- was one element of a successful performance, but not the whole. The geek and the nerd, of course, began playing with ASCII art and typographic expression as soon as affordable dot-matrix printers became available. Their predecessors did the same with wood blocks and cast metal.
Re: (Score:2)
Here you go - enjoy!
http://mirror.ifarchive.org/if... [ifarchive.org]
The first things I used computers for (Score:2)
on the RSTS/E PDP-11, and then I discovered
> TELNET MIT-DM
to get to ITS to play Dungeon^E
At some point circa 1981 they moved the Bank, probably in preparation for the microcomputer version. Somewhere I still have my maps on greenbar paper... and one Zorkmid... somewhere...
Re:The first things I used computers for (Score:5, Interesting)
I've got the original source code for Zork, which was briefly named Dungeon before being named back again. And I don't mean the Fortran version, but the original MDL code (aka, Muddle) which is a much weirder variant of Lisp than ZIL. It has a Y2K problem in it, and also implemented a primitive type of object-oriented style. There was even a sort of RPG with statistics behind the scenes that wasn't obvious when playing (ie, your fight with the Thief in the Maze got easier if your game score was higher). The game was also constantly evolving and multiple people got involved adding new tweaks and puzzles over time.
The Fortran version was called Dungeon because it was ported during the brief period that the game was called Dungeon. Seeing the original Muddle code and comparing to Fortran makes me very impressed with how the porting was done as it tried to be faithful in a language vastly different from Lisp. Some of the most twised maze of computed gotos going nowhere that you will ever see.
Re: (Score:2)
When you say the 'original' source code you mean not a copy? That's impressive. How did you get that?
Re: (Score:2)
Yes, it's a copy, not a 9-track tape reel :-) By original I mean not a port or reimplementation like ZIL.
Re: (Score:2)
It would be great if the guy who published these got a copy of the MDL version.
Really great.
I noticed in this release:
Presumably the 1983 renovation was a good code cleanup but for historical reasons it's better for technoarcheologists to see the original.
"THIS BELONGS IN A MUSEUM!"
Re: (Score:2)
When I got a copy I was told that I should not share it, but a few years later I stumbled across them on the internet.
The machine it was for was DEC-10 with a 36-bit word. It used 18-bit string pointers, and for strings it packed multiple characters into each word (5 or 6 bit?).
MDL was interesting in its own way - it was a LISP variant but also had support for low level operations, even allowing embedded assembly.
Re: (Score:2)
The MDL version is included in the same source dump: https://github.com/historicals... [github.com]
Re: (Score:2)
Some of the most twised maze of computed gotos going nowhere that you will ever see.
You're in a maze of twisty little gotos all alike.
Re: (Score:2)
ZIL is basically a subset of MDL, so most of the weirdness you've seen in MDL is also there in ZIL. Check out the "maze" files in Bureaucracy, for example - the game reads a text file at compile time and generates pages of gibberish that have to be combined in the right order to solve a puzzle.
Wonder (Score:5, Funny)
I wonder how many folks on here are old enough to have played any of the games mentioned in the article.
I think a text only game in 2019 would cause a rift to open in the space-time continuum, though it would be interesting to see something like Skyrim or Fallout done in the style of Zork or Adventure.
. . . .
> Look
You are standing in what appears to be an ancient monastery. Numerous torches and braziers are providing what little light there is.
An old man dressed in grey robes stands nearby quietly watching you. Low chanting can be heard in the background.
> Look at old man
Based on the wrinkles and the long white beard, he is definitely an old man. Other than watching you, he is doing little else at the moment.
> Draw Ebony Blade
The old mans eyes glitter a bit as he notices your knife but does not move. He does, however, speak a word: " FUS " and an invisible force
pushes you back slightly and you nearly drop the knife. As the sound of his voice echoes within the chamber, the chanting in the background
has now grown silent.
> Throw Ebony Blade at old man
The old man is fast despite his advanced age and he quickly sidesteps your throw. The knife strikes the stone wall behind him and clatters to the floor.
He simply sighs and shakes his head. As he speaks a second time, you manage to make out the words " FUS RO " before slamming into the wall
behind you. As the room spins about, you begin to question the wisdom of attacking old men in creepy, dimly lit monasteries.
> Kill old man
You can't be serious. He just spoke a couple of words and slammed you into the wall. WITH HIS VOICE. Remember those bandits who watched you
take down that dragon earlier, then decided it would be a good idea to attack you ? Yeah, you're the bandits right now.
> Kill Old Man
Dude. After what this man just did, Alduin himself might even take a moment and think about the course of action you're about to commit to.
> KILL OLD MAN
Ok. It's your funeral.
You manage some sort of war cry as you lunge towards the old man with murder in mind. The last words you hear, before becoming one with the stone
wall, are: " FUS RO DA ! "
You are dead . . . . . . .
Restart ?
Re:Wonder (Score:5, Informative)
Someone already did a text based Skyrim. https://medium.com/@filiph/sky... [medium.com]
Re: (Score:2)
AWESOME :D
Re:Wonder (Score:4, Interesting)
Re: (Score:2)
I wonder how many folks on here are old enough to have played any of the games mentioned in the article.
I think a text only game in 2019 would cause a rift to open in the space-time continuum, though it would be interesting to see something like Skyrim or Fallout done in the style of Zork or Adventure.
I just published one for the Google Hone Hub not even two weeks ago. It even uses the Z-Machine. OK, I started writing it like over 25 years ago, it was half finished on a C64, finished it while porting it to Z-Machine (but using the Inform language, I'm none of the greybeards that learned LISP or anything similar) not available in english unfortunately as programming was pretty language specific.
Re: (Score:2)
Yup, I'm old enough to have played several Infocom games when they first came out, and most of the others when I got my hands on Lost Treasures of Infocom.
Your thoughts on using standard text adventure syntax in modern applications reminds me of the year Infocom decided to get into the DBMS biz with their own natural language database parser, Cornerstone. I thought at the time what great fun it would be to have a Zork-like database interface.
You are standing in the foyer of a large office. There are doors a
Re: (Score:2)
Reminds me of the old BeOS Adventures in Graphics Drivers.
http://testou.free.fr/www.beat... [testou.free.fr]
Re: (Score:1)
No comments (Score:1)
One thing I learned was no one liked to comment code back then either!
not seeing LGOP (Score:2)
Re: (Score:2)
Back in 1981 or so... (Score:2)
I had hardcopy of the FORTRAN source for ADVENT. 14x11 fanfold.
Awesome (Score:1)
Re: (Score:1)
Or, you know, play online: http://www.bbc.co.uk/h2g2game
What idiot make 141 repositories? (Score:1)
Is it to make sure fewer people will be bothered to clone?
I loved Infocom's magazine ads (Score:4)
Infocom had a hilarious ad that read, "We stick our graphics where the sun don't shine" (with picture of a brain):
https://mobile.twitter.com/vin... [twitter.com]
Larry! (Score:3)
Not only that, but he did a follow up with the release of the scripts files for Leisure Suit Larry!
https://github.com/historicals... [github.com]
Re: (Score:2)
I reverse engineered Zork when it first came out (Score:3)
Re: (Score:3)
Reminds me of the time I spent a week decoding a simple substitution cipher in a random encounter... can't remember if it was the original ADVENT (this was in college in the early 80s) or in Zork... where you kill a dwarf. Nearly every time he simply "vanishes in a puff of greasy black smoke", but just once he babbled out a long sentence before dying.
Now, I'm not real good at cryptograms. Like I said, it took me about a week doing it by hand, starting with the one-letter words that I knew had to b
Re: (Score:2)
That's awesome. Good sleuthing work, and a funny third-hand joke.
Re: (Score:2)
I also did a lot of disassembling of the Infocom stuff. I actually had to do disassembly to figure out a puzzle in Zork II. I ended up writing an interpreter (a few months before they officially released for that type of computer), and a few years ago even put a "ZSCII" directive into an assembler so I could use the compressed text format in retro 8-bit games. (I only got to use it in something that was unreleased but was already running out of address space as demo code).
I had a disk of the original self-
Just in case Activision goes all medieval on us... (Score:2)
.
I kinda think that ship has now officially sailed.
A git clone of the entire Infocom portion of the HistoricalSource repository (about 45 projects, including all the Infocom "Solid Gold" versions and unreleased games like Abyss), tar'ed and bzipped up, turns out to be...a single 55MB file. As such, it could be uploaded to Pastebin by, I dunno, someone....in about 10 seconds. And then shared, and r
Don't forget the Interactive Fiction Archive (Score:2)
Don't forget the Interactive Fiction Archive [ifarchive.org] and their annual IF Competition [ifcomp.org].