Hacker News new | past | comments | ask | show | jobs | submit login
A treasury of Zork maps (zarfhome.com)
240 points by et-al on Feb 11, 2023 | hide | past | favorite | 91 comments



If you liked that, you might also like a deep dive I once did on the internals of the Zork maps:

https://www.reddit.com/r/raldi/comments/10dtch/i_spent_my_we...


I enjoyed your write-up, but what about the thief logic?


If you're at all interested in digging through the Zork code yourself, you no longer need to know Z-machine assembly: the source code for most Infocom games was released/leaked a few years back, and is available here: https://github.com/historicalsource/

It's written in ZIL, which has a somewhat Lispy feel (for a bit of background, see another post by Plotkin here: http://blog.zarfhome.com/2019/04/what-is-zil-anyway.html). Infocom's own internal documentation for ZIL is here: https://archive.org/details/Learning_ZIL_Steven_Eric_Meretzk....


Thanks, looks like this is the relevant code: https://github.com/historicalsource/zork1/blob/master/1actio...

As I understand it, the thief doesn’t travel via room exits, but rather warps through the rooms sequentially in the order they’re listed in the code, skipping any that are sacred or non-land.


Ah for Gods sake!

> "Unreviewed Content"

> View in the Reddit app to continue.

Nah, I'm good.


I've never seen that before, but I'm configured to use the old UI. You can switch to it by changing "www" to "old" in the URL.


On mobile I use i.reddit.com which is the mobile web equivalent to old.reddit.com


Reddit's conventional mobile interface is, much like imgur's, entirely unusable, yet it also stands out as astoundingly annoying. The mobile web is the only glaring mistake that Steve Jobs made in allowing web developers to irrevocably force an interface based on browser detection rather than leaving the viewing choice to the end user. But it's really controlling and OCD web developers on a per site basis that are to blame.


You can tell Safari to load the desktop version instead. Unfortunately of course Javascript and the DOM allow sites to know whether you’re using a mobile device anyway, by looking at the screen size. So that doesn’t always work.

But to blame those antipatterns on Steve Jobs makes no sense.


Steve Jobs showcased the mobile web when he introduced iPhone and mobile Safari. Maybe it was someone else's initiative, but he introduced it, and Apple made it possible. I don't think anyone cares about bandwidth of a website anymore, yet we're still stuck with it.


Actually Jobs showcased ‘rather than this WAP version of the site we’re showing you the whole New York Times website’

https://m.youtube.com/watch?v=e7EfxMOElBE Around the 1 hour mark


Well, you're right. He couldn't introduce the mobile web because there weren't any sites that offered a non-WAP mobile version, because no one could be surfing with mobile Safari when iPhone was first announced. But it was still Apple and web developers that caused this third Internet scourge, the mobile web, after the first two Internet scourges of Flash and Javascript.

It's understandable that a mobile user may want to conserve their data using the mobile versions of websites. What is anathema is Apple giving web developers the ability to force mobile site versions for mobile devices even after the user intentionally chooses to view the desktop site. A lot of sites won't respect that choice without something like &desktop=1 attached to the URL, and often as not even with it. Imgur is one that even if you do get the desktop site to load initially, it will immediately go back to the mobile site once you click to another Imgur page. Slashdot, also, makes it a real pain to not view the mobile version from a device.


It’s Steve Jobs’ fault because he offered a browser. Right.

I suggest you try implementing your handwavy solutions so you can see how well they work.


I'm not sure if you're missing the fact that when Apple released the iPhone in 2007, they also released web developer code to create html "apps," but also released mobile Safari specific html that, in effect, created the mobile web. What I'm griping about is that the mobile web is an annoying and dysfunctional Third Scourge of the Internet. You seem to think it had nothing to do with Apple, but Apple unleashed it on the World Wide Web, and Steve Jobs ran Apple at the time. Did you not know the source of the mobile web? Apple under Steve Jobs is where it crawled out from under.


Apple did not release that, it was third party. The notion that in allowing the web to be used on phones Apple became responsible for all web apps faults is ridiculous.


You are mistaken.

Apple ushered in the mobile web. It was Apple's solution to the delay of the iPhone SDK: Web Apps.[1] That is exactly what created the non-WAP mobile web, which began in 2007 coinciding with the announcement and release of the first iPhone. What third party could have such influence over the entire WWW? None. It was Apple, it was only Apple, and it was entirely Apple that created the non-WAP mobile web that everyone loathes. Every mobile web site uses the tools that Apple created for web apps. And they all look the same.

[1] https://9to5mac.com/2021/06/03/remembering-apples-sweet-solu...


This is just ridiculous. No mobile web site ‘uses the tools that Apple created’ as these mere samples were barely functional and showed controls that were superseded in iOS 7, almost a decade ago.

That article you quickly googled is whining about how Apple promoted web apps as a stopgap solution because they didn’t want or couldn’t allow third party native apps, and the jailbreak community did a lot of the hard work. It doesn’t say Apple created web apps, Steve Jobs is to be held responsible for mobile web apps or whatever your ridiculous claims are.

Oh and there’s approximately 0 people loathing the fact that the WAP mobile web no longer exists and has been replaced by the current web apps. It stunk, nobody used it because it was useless.


Here is your argument: "This is just ridiculous." It's known as argument from ignorance, and it is fallacious argument. You can't say why I'm wrong, you just think I'm wrong and can't prove it. Because I can't be proven wrong, because this is how it happened, and it is accurate history that the mobile web as we know it today sprang from Apple's agenda for mobile Safari browsing from the seeds of their Web App bullshit.

Fundamentally, Web Apps had nothing to do with iOS7. It was html. It was javascript. But most importantly it was design specifications. It was teaching web developers "for a small screen, you have to make everything big big big. Use this menu design, and make elements giant so users can see them on their tiny phone," completely forgetting that the killer feature of mobile Safari was pinch and zoom, which every single other mobile browser copied. So these design specifications for mobile versions of websites, which were completely unnecessary, took on a life of their own. At first they were just lists. They looked nothing like the full site, they were just lists of hierarchical forms using iPhone menus in html. It became more annoying from there, but it all started with Apple showing web developers how to do it, and everyone wanted to tap into the iPhone user base, so they made these shitty Apple design specified mobile websites that are terrible and constrictive and some of the worst design because it was homogeneous. All the mobile sites looked the same.

Then they gave web developers the ability to prevent a mobile Safari user from using its its one killer feature, namely, zoom. Apple gave web developers the ability to disable zooming into a paragraph or a picture. You must view this page only how the OCD web developer decided you will view it. And its still being used to this day. There are countless sites that mobile Safari can't zoom into elements on, and the result of this is copy that can't be read on such a small screen. At the other extreme is text so large lines can't fit across the screen.

WAP certainly sucked, but it didn't get in the way of the actual WWW. You had to intentionally go to a WAP version of a site. After Apple, 2007, no more! We will detect your mobile browser and force you to the mobile web whether you want it or not. And good luck defeating it, because any link you click, we'll detect your mobile browser again and keep stuffing you in the shitty hole of the mobile web versions of websites.

I, for one, would be happy if I never saw another mobile site again. It's unnecessary, absolutely unnecessary in 2023, even when browsing over cellular, it is no longer necessary, yet it persists for no reason, by the ignorance of web developers that think someone prefers to see a broken, dysfunctional, inoperable version of the web site they're trying to view but aren't allowed because decisions are being made for them.

The mobile web all began with Apple and iPhone and the delay of the iPhoneSDK, and Web Apps. And we're still living with this flawed and defective paradigm now from any mobile browser, which again, if it was once needed to save the cost of cellular data, it stopped being needed years ago, and yet the detritus of that agenda is still with us.

And you're welcome to disagree with me, but without actually backing up any claims, or at least forming a rational argument, it's just not going to be very persuasive. "You're wrong, you don't know what you're talking about, that's not how it happened," isn't saying anything substantive.


Thanks for writing that wall of text, it’s bs and I’m not going to read it. Don’t waste your time.


Very clever, but also an infinite ignorance fallacy. When you're wrong and can't accept it, pissing off is really the best thing for you to do.


When your proposition is clearly nonsensical you can make up all the best arguments in the world, and it still will never be anything but nonsensical. You’re wasting your breath.


Again with an appeal to common sense, the fallacy of unsupported assertion. I'll repeat, you don't agree with me, but you don't know why I'm wrong, and you can't prove it because, in fact, I'm right. You can prove me wrong quite effortlessly by showing one single non-WAP mobile website that existed before January 2007. But it's impossible because they didn't exist before Apple's initiative to build the mobile web (or "Web Apps") due to the delay of the iPhoneSDK, which they did by influencing web developers to use Apple's mobile site design specifications and web tools to try to get mobile Safari users' eyes and clicks on their content.


Even if that is true, which I kind of doubt because before the iPhone there was Opera Mini, it doesn’t prove anything, because obviously if Apple hadn’t made the iPhone, a few years later someone else would have made a phone that could browse the web, and then we would have gotten web apps created for that phone. It’s natural progression, not some diabolical plot by Steve Jobs. I’m pretty sure that the first version of Android that was in the works when Apple released the iPhone came with a web browser just as well. It’s kind of obvious people want that.

If you want to blame someone for web apps, you have to blame either Microsoft who started it all with Outlook Web Access, or Google who lead the way to real interactivity with Google Maps. Perhaps Brandon Eich who created Javascript, Sun who created Java or whoever created the DOM. To blame Apple or Steve Jobs is nonsensical.

And to insist that ‘everybody loathes mobile web apps’ is ridiculous. On this very site there’s plenty of people that prefer Reddits mobile web app to the apps and Twitters web app to the apps. You don’t like them and you don’t like how nobody cares about what you want.


That's not clear, that if Apple didn't do something, someone else would have. It might be true of technology when the elements of advancement are in the air, but this is about design. If Eiffel hadn't designed the Tower in Paris, you can't claim someone else would have. Or more clearly, if Jackson Pollack hadn't painted No. 5, we can't accurately claim it was inevitable someone else would have. There may have been a mobile web, but it isn't necessarily true that it would have been so restrictive. Apple created those tools, such as lock the page to prevent zooming, and it doesn't follow at all that someone else would have thought to prevent mobile browsers from zooming, even if someone else had come up with a zooming mobile browser. Beyond this, your argument is employing what's known as the fallacy of inevitability: nothing in history has ever been inevitable, and when you consider the chaotic nature of change over time, it should be obvious.


I'm constantly amazed at how i.reddit.com still works. I've been using it for at least 12 years.


A lot of people will leave reddit forever when they take old and i down. Unsure if someone has understood this, but I suspect so.


I will be one of them. I stopped using Digg and switched to Reddit when they redesigned their website. At least we will still have HN to be bastion of simple design. (I hope)


I doubt it will be a lot of people since most redditors use the app. But the few will cause a mighty ruckus and rage, rage against the dying of the "old". Reddit probably keeps old around because they don't want to deal with the incessant whining. God I would hate to run a social media platform.


sh.reddit.com also works nicely on mobile, but you cannot sign-in. For me, it has less bugs than i., which will not load many images and also screws up pagination pretty often.

example: https://sh.reddit.com/r/raldi/comments/10dtch/i_spent_my_wee...



Everyday I am thankful I am not an engineer working with a product owner that pushes these annoying design patterns.


Absolutely. One of those things that many of us take for granted, but shouldn't.



A reminder to younger readers that these complex maps emerge from programs that ran in 64K, smaller than most web page logos.


Also, the Z-machine that ran Zork and other Infocom games was an early example of a cross-platform bytecode interpreter, well before Java and the like.


It’s really amazing how they pulled off Zork for micros. I think it took up ~1MB of memory on a PDP-10?


That's why they split the micro version into Zork I, Zork II, and Zork III. The original version had all three.


I know it was a cross platform virtual machine, but Did it actually interpret byte code and not just text?


Yes. Z-machine specifies a table of 256 opcodes. Developers write code in ZIL (Z-machine Implementation Language), a text-based source code. The ZIL is then compiled into a byte code program consisting of those 1-byte opcodes as well as arguments and static data.


The are new games made for the zmachine since the 90s.


32K I think for the first game. The TRS-80 and Apple II versions at least.


Some of those maps show the original Zork that ran in 256K of 36-bit words.


You couldn't really play any games from the 80's without graph paper. To get anywhere beyond the house in Zork you needed to map out where all the paths in the game were. Same thing for Bard's Tale II (one of my favs). Generations of kids sat in front of their old Commodores making maps (and I guess some of us with art talents made them better).


> You couldn't really play any games from the 80's without graph paper.

In high school (~1985/86) a friend and his brothers mapped the Ultima IV world by commandeering the family ping pong table covering it with several sheets of graph paper.

It was a glorious map.


I had several games back then that where "copies" from other people. But many of these games where unplayable because without the manual you had a really hard time to figure out what to do. It was common for complex games to have thick manuals and virtually no in game help or tutorials. And there where no internet to search for answers.


I remember the Wizardry series was especially punishing in this regard. It would have constructs like hidden teleporters, and in sone cases your “view” looked the same on the other side so it’d be unclear you weren’t where you thought you were


Was one of these on NES? With maybe six characters you could swap between who had different talents (like different jump heights)?

Game was impossible.


There was an NES port but it was watered down a bit IIRC.

Wizardry I was a pretty standard D&D style dungeon crawl game. 6 chars, your basic classes (fighter, thief, cleric, mage) with a few prestige classes. Wander around the dungeon and occasionally, well, frequently, run into groups of monsters. A few dynamics I remember being particularly pains in the ass:

1) You could not save while in the dungeon, and if you wiped your party was stuck there, dead. You could go rescue them by going to that space and picking them up *BUT* that meant you had to go down there with fewer than 6 people in your party & thus underpowered and you couldn't mix good & evil alignments in a party. So in the early game it was often easier to just reroll new chars, and at the end of the game it could be almost impossible to go fetch them

2) Your characters aged over time, and stats started getting worse. So in a sense you're on a timer.

Wizardry II & III were more of the same IIRC. Wizardry IV was notorious for being the most difficult game ever made at the time. I pointed one of my hardcore gamer coworkers at Wiz IV not too long ago, he's the sort of person that defeats every new game in a microsecond. He gave up after a day and said he couldn't take it.

The ones after that became more like standard CRPGs people might recognize in the 90s + beyond.


I checked it out, not the same. Those games look great, though.

I found my mention as well, "Legacy of the Wizard" on NES.


One of my best gaming memories is mapping out the megadungeon that is Alternate Reality: The Dungeon played on my C64. I never beat it, but mapping out the dungeon stuck with me as an immersive experience.

I love that the Etrian Odyssey games make mapping a centerpiece. I don’t see modern gamers going for graph paper ever again but having a map maker included really helps experience a bygone era.


I recently went through my old box of papers in the garage, and man did those maps bring back memories! So many hours spent painfully mapping things out on graph paper. Alternate Reality: The City was probably one of the biggest mapping projects I did, but I had a thick pile from many different games. The Bard's Tale series was especially noteworthy.

It's sad—if I were to attempt to play one of those today, I would give up immediately rather than deal with the insanely slow loading and glacially-paced gameplay. But at the time, I think the slowness contributed to the immersion. There was more than enough time to reflect and, well, map. It burned those experiences deep into my memory. Alternate Reality in particular was painfully, painfully slow on my computer, which was enormously frustrating at the time, and yet even though it was barely a game (you mostly wandered around exploring and getting annoyed at unimplemented buildings, with the occasional high-stakes combat) it is one of the more memorable experiences of my ill-spent youth.


The longish loading time for an encounter really did something interesting for immersion. It’s a little similar to a DM rolling dice to generate an encounter—that built in anticipation isn’t really possible in modern games without annoying gamers.


Zork's (and text adventure games in general) maps aren't grid-based, so you don't need graph paper.


Yeah in fact if you try to use graph paper to map out the areas in Zork you'll get immensely frustrated at its non-Euclidean geometry. The game designers seemed to be quite fond of having your character change compass directions between locations, so heading south and then immediately north will often leave you in a different location than you started!

The better way to map Zork is to treat it like a non-planar graph and use graph paper to build an adjacency matrix [1]. Since Z-machine is a bytecode VM that often ran on 8-bit computers it's a pretty safe assumption that the game likely has 256 or fewer vertices in the graph. So if you give every area you visit a 2-digit hex ID you can make the matrix small enough to be manageable.

[1] https://en.wikipedia.org/wiki/Adjacency_matrix


Just started playing a few days ago... I've been able to draw out most of it as planar 'areas' with curved arrows for paths. Even for some of the easier 'maze' type areas it works, but I'm about to cave in and build an adjacency matrix for one of the difficult areas. (pun not intended?)


No, but I'd imagine a lot of people were like myself. I already had a ton of graph paper and was used to using that to draw maps for D&D and more grid based games.


These maps are so amazing. I can see some of these on the wall framed. Zork and Hitchhikers Guide were my first games on my father's IBM PC. I got in trouble for being "addicted". Little has changed.


For all looking to play Zork, the Internet Archive has you covered and you can launch it from your browser seemingly inside DosBox within the browser.

Zork 1: https://archive.org/details/msdos_Zork_I_-_The_Great_Undergr...

Zork 2: https://archive.org/details/msdos_Zork_II_-_The_Wizard_of_Fr...


Parchement with the game from IFDB would be far better.


Does anyone remember the shareware game ZZT? If you bought the full version, it came with printed maps. I still have mine somewhere.

Also, has anyone tried to get ChatGPT/etc to play Zork?


ZZT was created by Tim Sweeney, CEO and founder of Epic Games. It was a huge contribution to my deeper understanding of programming at the time.


I remember being so frustrated by the ZZT programming language because it lacked so many fundamental features. IIRC, you couldn't even sum variables.

But it didn't stop me from spending hours and hours creating ZZT games. At times it was fun to try to figure out how to do things. I once wrote a music sequencer.


I have had chatGPT simulate an adventure game, the first day or two it came out. It was very good at generating a story, and pretty bad at working the mechanics of a game. Inventory didn't work reliably, predictable stuff like that.


Not just play it, but even to serve as Dungeon Master. There have been a bunch of HN submissions about it.


Although otherwise quite visual I did my zork map as a 12 column table.

1 row number, Next 8 -the 4 cardinal points with the 4 major intersects, Up, Down, Notes

With each cell except notes another row number.

The different states of the rooms depending on button presses at flood control dam #3 and the like, made it like a periodic table with the radionucleotide subsequence.


The Zork Chronicles is a fantastic novel based on the game. It’s hysterical! I hear the publisher is going to release an audio book soon.


Where can I play this game? It’s probably available online in-browser?

Also would love to see what ChatGPT would output if asked to describe a map or give instructions to draw.



> There is a small mailbox here.

> A rubber mat saying 'Welcome to Zork!' lies by the door.

> check mailbox

> That's not a verb I recognise.

Ok yeah this thing could use some more NLP support.


Edit Dungeon/Zorks' Z-machine source code (zdungeon) to define new verbs.

http://www.penguincentral.com/retrocomputing/zdungeon/

Inform6+Inform6 lib:

http://jxself.org/git/inform http://jxself.org/git/informlib

Inform's Begginer's Guide:

https://rinform.org/docs/IBG.pdf

The advanced one, for advanced Inform programmers:

https://inform-fiction.org/manual/DM4.pdf

EDIT: I found no source for the ZDungeon port of it, but you can get the C version:

https://github.com/devshane/zork


You'll likely always be behind the curve with that kind of basic approach I think, wouldn't it make more sense to retrain a transformer to map all possible inputs to the few possible actions?


Zork was originally written in 1977 on a PDP-10, which had a ceiling of about one megabyte of memory; it was ported to microcomputers in three parts from 1980-1982, and had to fit into about 48k of RAM and 85-170k of disc space.

It is approximately forty-five years old. The curve has long since moved on.


Inform6 it's very powerful. You define the actions objects, and it does it very well by default. Objects have atributes (openable, stackable, decoration...lots of them) and you can even set the library messages on these actions after being done (or before).


For a moment I hoped you were offering these prompts on HN, and would run a game of Zork via a comment thread.


So, what does a grue look like?


Turns the lights off and you’ll see.


That will only let you see the insides of a grue, and I really don't have the patience to solve a maze puzzle to escape the intestines of a grue to tell everyone what they look like.


You can see and also interact with some of them in Sorcerer! (The sequel to Enchanter)


This comment section really needs a spoiler tag!


I once hacked Zork so you can see what the thief is doing (swapped player character for thief) as if you were playing.


While Zork and its relatives are interesting, are there any non-narrative based text games?


Puzzle based?

- Anchorhead it's Stephen King/Lovecraft like.

- All Thing Devours it's a time travelling puzzle.

- Spiritwrak it's s Zorkian free as in freedom adventure, were guessing what does the spell do to the world it's part of the puzzle and story.


I was thinking more like open ended simulations.

Perhaps in the vein of 'Footy Fanatic', a football management simulation, https://classicreload.com/footy-fanatic.html


The Kingdom of Loathing [1] is fun. It's not a pure text adventure, it has a GUI and there is hand drawn art.

[1] https://www.kingdomofloathing.com/



I avoid these. Also, you could always get the source code, as the game it's free as in freedom.


Get Dungeon instead of Zork I-II-III, it's closer to the original concept.

https://ifdb.org/viewgame?id=4gxk83ja4twckm6j


Get Zork instead of Dungeon. It's closer... it is the original concept.


Well, I can't argue with you. He He...

I mean... MIT Zork.



These also belong to reddit.com/r/wimmelbilder




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: