[HN Gopher] Zork: The Great Inner Workings (2020)
___________________________________________________________________
Zork: The Great Inner Workings (2020)
Author : gus_leonel
Score : 131 points
Date : 2025-01-20 10:23 UTC (12 hours ago)
(HTM) web link (medium.com)
(TXT) w3m dump (medium.com)
| raldi wrote:
| Years ago I made some maps of things like which rooms of the game
| have the "sacred" bit, and what it means.
|
| If you're interested:
| https://www.reddit.com/r/raldi/comments/10dtch/i_spent_my_we...
| FatalLogic wrote:
| > _We can also make an educated guess that MARC refers to Marc
| Blank, who was one of the initial creators of Zork, but I
| couldn't figure out who JW could be._
|
| JW: That was probably Jerry Wolper. He was a coder and designer
| at Infocom in the later 1980s
|
| https://www.mobygames.com/person/336/jerry-wolper/credits/
| ghaff wrote:
| I had forgotten Jerry actually worked at Infocom for a bit. And
| no one else with those initials comes to mind. He was part of
| the film committee that Marc and others were involved with as
| well.
| 7thaccount wrote:
| Modern interactive fiction is pretty amazing.
|
| 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.
| MetaWhirledPeas wrote:
| > Modern interactive fiction is pretty amazing.
|
| 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.
| Eric_WVGG wrote:
| Adam Cadre's games are excellent. https://adamcadre.ac/if/
| fenomas wrote:
| My canonical answer is "Violet" by Jeremy Freese:
|
| https://ifdb.org/viewgame?id=4glrrfh7wrp9zz7b
| failrate wrote:
| CEJ Pacian makes excellent modern IF. I recommend checking
| out Gunmute and Red Prince.
| 7thaccount wrote:
| Anything by Emily Short has really good writing and prose.
| They vary greatly by length too. I think she mainly writes
| for commercial projects these days, so I haven't seen a
| release in awhile of just something for fun.
|
| 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.
| spencerflem wrote:
| If your looking for a puzzley experience, Emily Short's
| "Counterfeit Monkey" is consistently top rated and I found it
| wonderful
| bluGill wrote:
| there is always the save restore so it is never permanent.
| However you can wonder around for a long time seeming to make
| progress only to discover it isn't possible to solve the game
| because of something not obvious you did a while back.
| astrange wrote:
| My favorite short IF is Glowgrass:
|
| 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.
| raldi wrote:
| If you're a fan of the genre, Zork I is worth playing through
| (with hints if necessary) precisely _because_ it's an example (
| _the_ example?) of the early explorations of the art -- back
| when it was about, "Hmm, what we should make the game do if
| someone tries to break the mirror?" and then implementing a
| response.
|
| It wasn't so much about finishing the game, it was about
| exploring the playground.
| ghaff wrote:
| I never made it through--but then I've mostly always been
| more of a fan of the idea of gaming than the work of actually
| playing a game until the end. I did finish a few of the
| Infocom games generally with the help of a few (literal pre-
| Web) phone calls to the developer of some of those games who
| was a friend of mine from school. (There's even a very inside
| joke related to me in Planetfall. Don't ask because I won't
| tell.:-))
| 7thaccount wrote:
| Now that is a heck of a story :)
|
| Don't stand in the way of history. Tell us!
| ghaff wrote:
| Basically, a minor character has a name that is, to
| someone in the know, obviously a derivative of a playful
| expression that the author would regularly use on me in
| school. I don't actually remember the character--though,
| for some reason I'm thinking it was an ambassador.
| danaris wrote:
| ...the parser variables very much were not named after the
| authors. The parser variables were PRSA, PRSO, and PRSI (Parser
| Action, Parser direct Object, and Parser Indirect object). The
| mention of JW and MARC was in comments they left in lieu of
| nonexistent commit messages.
| ChicagoDave wrote:
| I was 15yo in 1977 when our two school paper terminals
| connected to a Milwaukee Public Schools PDP-11 provided access
| to the FORTRAN version of DUNGEO, aka mainframe Zork.
|
| 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.
| atum47 wrote:
| I was working on a text adventure myself. It was before llms
| became a thing. My solution to the commands was to use simple
| words, not phrases. Pick key, walk north, look fireplace...
|
| 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
| riiii wrote:
| One thing I'd like to see AI used for: draw the Zork scenery
| based on the in-game text description.
| MetaWhirledPeas wrote:
| That's a fun idea. The lack of continuity will be amusing,
| especially given the sparse descriptions of everything.
| adamrezich wrote:
| That sounds like the perfect use for LLM image generation!
| KerrAvon wrote:
| The later Infocom games -- I'm thinking especially Moriarty's
| evocative Wishbringer, Trinity, Beyond Zork -- have much
| improved writing in general; it might be interesting to see
| what an LLM actually does with those.
| ghaff wrote:
| A Mind Forever Voyaging has very good writing as well (and
| less in the way of puzzles). Of course, Hitchhiker's has
| great writing too.Not sure I ever played Wishbringer or
| Beyond Zork but Trinity is good.
| DonHopkins wrote:
| Playing Zork with AI-generated imagery [video] (youtube.com)
|
| 133 points by mr_walsh on Jan 8, 2023 | hide | past | favorite
| | 54 comments
|
| https://news.ycombinator.com/item?id=34300765
|
| https://www.youtube.com/watch?v=ZpCrBBj6AWE
| vunderba wrote:
| I think people have been experimenting with integrating stable
| diffusion into text adventure games (like AI Dungeon) for a
| while now.
|
| 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. :)
|
| https://imgur.com/a/giBqQ1L
| ndiddy wrote:
| If anyone's interested, here's a pretty good overview of
| Infocom's internal development tooling (how they got from the ZIL
| source code to a compiled story file).
| https://github.com/ZoBoRf/ZILCH-How-to
|
| 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/
| Eric_WVGG wrote:
| Weird to learn that the three Zork games were one game split,
| given that they're so tonally different. (the first having
| basically no narrative at all, the second being profoundly silly,
| and the third being fairly serious and dark)
| stevekemp wrote:
| I guess it depends on how you view it.
|
| 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".
| ghaff wrote:
| The folks who wrote the original Zork were AI Lab folks who
| were generally more interested in the technology than the
| game design. They weren't really that interested in games as
| the end state. Which led to Cornerstone but that's another
| story.
|
| 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.
| sparky_z wrote:
| Zork 2 and 3 actually contain a lot of new material, which is
| the origin of the tonal shifts. The original mainframe Zork was
| basically a larger version of Zork 1. Zork 2 took most of the
| rooms that had to be cut for space, weaved them together into a
| new map, and added a lot of new things as well, including all
| the sillier plot elements, like the wizard. Zork 3 was almost
| entirely new, except for the brief endgame which was the
| original endgame of mainframe Zork.
| mintplant wrote:
| Huh! I've only played the original mainframe game. I thought
| the Infocom releases were just that game split into three--I
| had no idea about all the new material! I'll check them out.
| jhbadger wrote:
| If you play a version of the original MIT Zork (often called
| "Dungeon"), you'll find it isn't exactly the three games put
| together. There really isn't much plot in the original -- like
| Zork I it is just basically a treasure hunt (as was the
| Colossal Cave Adventure which inspired it). There are
| additional puzzles and plots in Zork II and III that have no
| basis in the original.
| seanwilson wrote:
| I tried making a random text adventure generator a while ago,
| where the idea was I would fill it with items and item
| combinations, and ask it to look for the most crazy/interesting
| chain of item manipulation puzzles e.g. key opens chest, to get
| the matchbook, to light the dynamite, to blow open the safe, to
| get the money, to buy the ticket.
|
| 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.
| dullcrisp wrote:
| > 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!
| seanwilson wrote:
| It does sound fun, but there would have to be some layer to
| control the amount of wackiness, or it would feel random to
| the point of meaninglessness, like "procedural oatmeal"?
| eismcc wrote:
| You may want to look into the nintendo zelda chemistry
| engine
| seanwilson wrote:
| Any good links? I briefly looked up that it models fire,
| electricity, cutting etc. interactions, but if you put
| this in the frame of a text adventure rather than a 3D
| action adventure, would it be fun? e.g. typing "shoot
| arrow at explosive barrel" isn't as engaging as aiming
| the arrow yourself.
| pests wrote:
| Sibling comment mentioned Zelda but really this reminds me
| of the Zelda Randomizers.
|
| 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.
| seanwilson wrote:
| > 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.
|
| 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.
| vunderba wrote:
| I also experimented with randomized text adventure game
| development back in the day but went a different route. I
| created an n-gram markov model scraped off hundreds of old I.F.
| games. The maze would be generated, and the markov model would
| be used to generate the description of each of the rooms. I
| then used a keyword/POS extractors/etc. to extract a structured
| well-modeled data representation of the room in terms of items,
| monsters, etc.
|
| 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.
| seanwilson wrote:
| So I've tried playing with LLMs for this and the problem is
| you can talk your way around puzzles because you can't
| guarantee it'll stick to constraints. If you want something
| more like a traditional adventure game, it would probably
| work better to algorithmically generate a cohesive linear
| game, then use an LLM to fill in the gaps in the
| descriptions, story, NPC conversations and images.
|
| 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.
| vunderba wrote:
| This is my experience as well. It's why LLM dungeon masters
| can tend to fall flat since they have a hard time
| distinguishing between a genuinely good _alternative
| solution_ vs somebody clearly cheesing it.
|
| 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.
| seanwilson wrote:
| I just don't see how you can stop it from going off the
| rails though. For linear adventures, you have to
| carefully pick which items and actions are available to
| avoid breaking puzzles e.g. if the LLM lets you break a
| window which creates a shard of glass, you could use the
| glass to cut a rope, when you were suppose to use a
| knife. It would probably be able to come up with decent
| reasons to explain why you can't do stuff though haha,
| which is often a part of good puzzle design e.g. "I don't
| want to draw attention by breaking the window".
| pavlov wrote:
| Puzzles are to adventure games like frosting to a cake.
|
| 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.
| b800h wrote:
| For those interested in retro text adventures, there's a podcast
| which has been going for about a year - they cover a couple of
| games each fortnight now. Worth a listen:
|
| https://retroadventurers.podbean.com/
| DonHopkins wrote:
| MC Frontalot - It Is Pitch Dark:
|
| 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:
|
| http://www.getlamp.com/
|
| Trailers:
|
| http://getlamp.welcometointernet.org/trailers/
|
| Full archive:
|
| https://archive.org/details/GET_LAMP_The_Text_Adventure_Docu...
|
| Interviews:
|
| http://www.getlamp.com/cast/
| DonHopkins wrote:
| https://news.ycombinator.com/item?id=15080221
|
| 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...)
___________________________________________________________________
(page generated 2025-01-20 23:00 UTC)