Zork: The Great Inner Workings (2020)
medium.com
medium.com
Additionally, this site is a really cool visualization that lets you play Zork while being able to see its internal game state and the corresponding source code to where you currently are. https://eblong.com/infocom/visi-zork1/
[ commentless HN discs: https://news.ycombinator.com/item?id=42769679 ]
I like Zork a lot, but I've never made it even halfway through the game. Knowing that you can permanently lose by doing certain things (does breaking the mirror count? I can't remember) puts a damper on my enthusiasm. The infocom parser is pretty good, but I sometimes run into issues where I know what I need to do, but can't get the parser to accept my commands. This happened in planetfall where I needed to get a key under a grate, but eventually gave up and looked up what the parser wanted.
Some modern additions are automatic maps and fast travel so you don't get lost in an infinite labyrinth and have to write your own maps (it was fun once, but I wouldn't want to do it each game). Fast travel is nice, so I can get back somewhere without having to type N N E NE N and so on.
As for this thread and more relevant comments, I had no idea the parser variables were named after the authors. HN knowledge never ceases to amaze me. I wish there was a convention or something once a year.
Memorizing the map was considered a high calling among the half dozen students who became obsessed with the games (ADVENT aka Adventure or Colossal Cave was also on the PDP).
At that time, death was just a part of the puzzles of the game. Repetition was not a hindrance.
Of course we did learn how to save, but you could only have one save file at a time.
Then we learned how to “detach” our session (RSTS/E operating system) and rename save files as well as holding a current game’s state until we later reattached that session.
Mind you this was all on green bar paper.
I’m still involved in the IF community, board member of the IFTF, and will occasionally try to play Dungeon from memory.
Even made a map a few years ago.
https://plover.net/~dave/DungeonMap.pdf
I think any gamer worth their salt should take on the challenge.
I also think Dungeon would be a great challenge for teenagers in a computer science class.
and green bar paper reminds me of part of dungeon where they had the stack of listings:
There is an enormous stack of line-printer paper here. It is barely
readable and totally unintelligible.
and <DEFINE FEEL-FREE (LOSER)
<TELL "FEEL FREE, CHOMPER!">
<MEMQ ......
The rest is, alas, unintelligible (as were the implementers).
the original source can be found here:Some of this design philosophy continued into arcade games (where inserting a new token was profitable) and onwards to early home consoles. ("Nintendo Hard.")
Got any recommendations?
Like you, I was never able to get into Zork. I really enjoyed it, until I inevitably became stuck. Hearing you say this could be permanent really seals it. It's one of those games that's more fun to recollect than to actually play.
https://ifdb.org/search?searchfor=author%3AEmily+Short
Alabaster, Bronze, and City of Secrets were all excellent. Check out the really short Galatea to see how much parser improvement has occurred since the old Infocom days.
https://ifdb.org/viewgame?id=b1xy3s75cjlty973
The best regarded long one I know is Anchorhead, basically a Lovecraft story:
https://ifdb.org/viewgame?id=op0uw1gn1tjqmjt7
…these are both from 1998 so clearly I haven't been paying attention to what anyone is up to lately.
Personally I found Violet excellent as first-time adventure. The puzzles are hard but fair, and no mapping is involved.
It wasn’t so much about finishing the game, it was about exploring the playground.
Don't stand in the way of history. Tell us!
I ran into that with the Hitchhiker's Guide game. I dropped one item early on and got to the end and couldn't finish without it.
If you’re interested: https://www.reddit.com/r/raldi/comments/10dtch/i_spent_my_we...
JW: That was probably Jerry Wolper. He was a coder and designer at Infocom in the later 1980s
I thought the idea was really promising at first but my finding was there's just not that many interesting puzzles based around real-life item interactions, so it wasn't fun to play (without going further by adding a plot, NPCs and graphics).
If the item interaction is too everyday, it's too obvious and boring (like a key to open a door), and if it's too obscure it feels unfair (like a blowtorch to the neck of a wine bottle to open it), so it has to be somewhere in between and there's only maybe a few hundred types of interactions like this. When you look into it, you'll notice the same item interactions reused in lots of adventure games too e.g. bolt cutters + chain, torch + batteries, spade + ground.
Maybe sounds obvious when you think about it, but it wasn't obvious when I was prototyping.
I think this is one of the reasons escape room games devolve into obscure logic puzzles. And also why adventure games got criticised for having super obscure (moon logic) puzzles. And also why a lot of adventure games feature things like time travel and magic and NPCs, as it lets you introduce new rules for item interactions.
Another aspect is filling the game world with lots of items, locations and general red herrings so that the connection between items that is usually obvious isn't immediately obvious because you can't keep them all in your head.
The bugs were funny though. Like you had to tell it you can't put a car in a tree, that you shouldn't bury bread in the dirt, and a vending machine can't dispense vending machines.
My god, leave those in!
Fixed set of items in a fixed set of locations. Certain locations need certain items to access. So therefore randomize which items are in which rooms while still being able to complete the game.
Then they have a door randomizer which changes where doors warp you to - effectively changing the map and potentially the order of items needed.
So this part of the puzzle generation isn't that bad, you also need to make sure you can't make it unsolvable by destroying/wasting items or making them inaccessible (or allow this and call it "Sierra mode"). Making the item usage interesting is the hard part, but that's not as much as an issue for a Zelda game.
It worked kind of well, but it was more of an experience in exploration (almost like a MUD) rather than a cohesive linear game.
Of course, much later down the line, games like AI Dungeon really dialed up this concept.
I don't see how you could avoid the LLM saying stuff that implies workarounds to puzzles though e.g. you add a knife to the game that's meant to be the only object that can cut a rope, but the LLM describes a rock as sharp.
If you want to force a solution, you have to add an additional prompt check - e.g. "Is the solution provided by the player properly making use of items only within their inventory (A, B, C -> from their actual inventory) and does the solution adhere to one of the following acceptable solutions (X, Y, Z)?"
This helps mitigate abuse but it can also unnecessarily constrain the player, so YMMV.
It’s expected to be there as a convention, but you want to keep it to a minimum because too much spoils the whole experience.
The story is the point and the puzzles are just an accepted contrivance to make you stay longer within the world. They’re not objectively fun, like frosting isn’t objectively good.
Of course there are good puzzles that integrate well with the world (like reading from the world's most boring book to help the oyster fall asleep in King's Quest VI), and bad puzzles (cough arbitrary sliding tile puzzle cough).
People still talk about the death of adventure games being caused by moon logic puzzles, but I don't hear people mention that part of the problem is the design space of item based puzzles is more limited than you'd think (I mean non-magic, non-NPC stuff) and has been mostly explored.
Originally there was a Zork game, then a company was formed and they decided to repurpose their existing game as their first project/product because they had no other inspiration.
The existing content was too large to fit into the small computers available at the time, so only parts of the prior-art were used in the "new" game.
Zork [1] was popular so the idea of a sequel was raised, and of course the content which was left out was then used the second time around. And repeat.
I think it's fair to say there was no cohesive intentions to make three games initially, and you can kinda see that from the "plot".
And, yes, computer resources were a big issue. I think you can find at least one presentation from Dave Lebling (maybe?) at GDC where he talks about some of this.
https://www.youtube.com/watch?v=4nigRT2KmCE
>Front geeked around for an evening in a basement in Massachusetts. It got filmed in HD. Then Jason Scott made a whole video out of it. The song and the video are in service of Jason's upcoming documentary about text adventures, Get Lamp, but you get to enjoy it now. Peek the cameo by Steve Meretzky.
"Get Lamp" documentary:
Trailers:
http://getlamp.welcometointernet.org/trailers/
Full archive:
https://archive.org/details/GET_LAMP_The_Text_Adventure_Docu...
Interviews:
Instead of just a game I realize as I writing a game creator as well and the score kept getting bigger, so I decided to take a break. That was 4 years ago.
I do want to fishing it one day
https://archive.org/details/infocom-paper-2000-12-15/page/n1...
They were using virtual machine technology to be writing the only portable software at the beginning of the 1980s and they were gone by 1989
133 points by mr_walsh on Jan 8, 2023 | hide | past | favorite | 54 comments
Prompt adherence is always an issue particularly in a text adventure game where position matters - e.g. (The crystalline amulet is sitting on top of the old wooden table. A fireplace at the end of the room gently crackles. To the east lies a door, cracked with age. On the west wall you can see a painting of the lords of the manor. etc)
Flux could probably get close - though it clearly doesn't have any examples of an amulet in its training data. :)
DonHopkins on Aug 23, 2017 | parent | context | favorite | on: The Enduring Legacy of Zork
“The MIT machines were a nerd magnet for kids who had access to the ARPANET,” Zork is how and why I got on the ARPANET as a nerdy kid. And I wasn't even a Russian Spy! [1]
Connecting to the ARPANET and getting an account on DM was an adventure in itself, almost like the beginning of the game itself.
At the time there were no passwords or anything but security through obscurity on the ARPANET TIPs. And the MIT-AI Lab was kind enough to hand out free after-work-hours "TURIST Accounts" [2] to anyone who asked nicely with the right magic words.
Some dude named Bruce who had a BBS (Bruce's NorthStar Horizon in Northern Virginia) told me how to do it step by step:
1) After 8PM EST, dial up the NBS TIP at (301) 948 3850 [3] at 300 baud, typed "E" to get the banner, then "@L 134" to connect to AI. (NCP host ids were only 8 bits, before TCP/IP's vast 32 bit address space!)
2) Make up an account name (I chose A2DEH).
3) Try to log in with that name, like ":LOGIN A2DEH".
4) If it asks for a password, somebody already has that account. In that case, think of another name and try again. (RMS's password was famously "RMS", after they forced everyone to use a password over his objections).
5) If it doesn't recognize your user name, it asks "Do you want to apply for an account?" Answer YES. When it asks "Why do you want to use the MIT-AI Lab's PDP-10?" answer "Learning LISP." (Which, as it turns out, is a long incremental process pursued over a lifetime, since there are so many implementations of LISP on the inside with names like MDL and JavaScript on the outside.)
6) When the account is approved, now all ITS systems know about you (ITS had network file and account sharing long before NFS and YP), and although you still can't log into DM directly, you could log into AI to learn LISP (and EMACS).
7) The MIT-AI Lab staff would kindly and patiently go out of their way to help you learn LISP and EMACS. (Many thanks to KMP for writing TEACH-LISP and answering my clueless tasteless questions like "how to you set the value of a variable?").
8) To play Zork, dial up the TIP after 8PM and connect to DM with "@L 70".
9) Log in as "URANUS" with password "RINGS".
10) So as not to look suspicious (3 kids from all over the country [4] logged in as URANUS, URANU0, URANU1 at the same time all playing Zork or watching each other play), change your user name to your own with ":CHUNAME A2DEH".
11) Only two people could play ZORK at once, so hang out chatting with other people waiting to play ZORK, or spying (in a socially acceptable manner) on whoever's playing ZORK via ":OS PDL" (for "Output Spy Paul David Lebling"), or snooping around trying to find the Zork source code [5], which was well hidden.
12) There was no file security, so you could snoop around Marvin Minsky's home directory and hurt your brain trying to understand what appears to be line noise, but is actually the Universal Turing Machine he implemented in TECO. [6]
13) When somebody from USER-ACCOUNTS sends you a "nice private message" telling your they know what you're up to with ZORK, and that you should really learn LISP like you said you would because it's such a great language, instead of demanding you commit "seppuku" and "dumping you off the net and be done with it", you simply start learning LISP instead of acting like an entitled dick [7] by whining about how the people who gave you a free account that you bragged about in BYTE magazine are a bunch of communists and threatening to get some Proxmire type to start inquiring into its operations by seeing if your "Pentagon friends can upset them. Or perhaps some reporter friends. Or both., Or even the House Armed Services Committee."
[1] https://www.youtube.com/watch?v=hVth6T3gMa0
[2] http://www.art.net/~hopkins/Don/text/tourist-policy.html
[3] https://www.saildart.org/TIPS[P,DOC]3
[4] https://archive.org/details/getlamp-rgriffiths
[5] https://github.com/itafroma/zork-mdl
[6] https://news.ycombinator.com/item?id=13514918
[7] http://www.stormtiger.org/bob/humor/pournell/story.html
kabdib on Aug 23, 2017 | next [–]
Oh, you are A2DEH. "Hi" from 1979 or 1980, from ZEMON. I saw you online a lot, playing Zork on MIT-AI, and I probably :os'd a few of your sessions. I too was using the NBS TIP. Later, I actually worked at NBS and became "legal". I first learned Emacs at 300 baud; I'll spare you the whole story, but it involves a lot of assembly language and some soldering...
DonHopkins on Aug 24, 2017 | parent | next [–]
Of course I remember your cool UNAME standing out in all those :WHOJ's! ;) Do you remember Rob Griffiths, aka ROBG? I really enjoyed his full interview from Get Lamp -- he really nailed what it was like at that time, making a pilgrimage to 545 Tech Square as a 15-year-old kid!
https://archive.org/details/getlamp-rgriffiths
He and you are a couple of the people who I was thinking of when I described kids from all over the country hanging out chatting and spying and waiting to play Zork!
kabdib on Aug 24, 2017 | root | parent | next [–]
My best friend in high school went to MIT and I ... didn't (it's okay, the state college I wound up going to was about my academic speed, and I would have been toast in a couple of semesters at MIT). I also did a pilgrimage to MIT and saw the DEC-10s. Printed out a school project on the LGP, played around with a Lisp Machine for a few hours.
MIT's friendly, unparanoid attitude towards people using their systems and basically just digging their technology was very formative in my career. Zork was the hook. I came to play adventure games, I stayed to learn Emacs and a bit about networking and PDP-10s, and LISP. I don't use PDP-10s anymore, but I work in the games industry, use Emacs every hour of my working day, and wish I could write more production LISP (though if you squint at Javascript just right...)
The machine is running right now, but is presently isolated from the internet while a hardware issue is worked on.
SE ITS 1652 Peek 632 1/21/2025 07:38:37 Up time = 1:10:37:08