When I was 14 or so, in the early 1980s, a friend and I who had been playing Zork thought it would be fun to design a game ourselves. We actually wrote to Infocom with a proposal that we write a new game for them and they let us use ZIL and the Z-machine to implement it. Surprisingly, they actually wrote back to us and politely declined our offer. In hindsight, while we knew how to program in BASIC and assembly language on our Apple IIs, we would have been lost making a game with ZIL. That’s to say that Infocom made the right call. Still, it said something about the company that they treated a couple kids with respect and didn’t laugh in our faces. I wish I still had the letter.
My goodness, I could have written this word-for-word. Similar age, same Apple II BASIC and 6502 upbringing (roll sleeves and call -151) and also wrote to Infocom. We were in the UK so even more surprised to get a reply similar to yours several weeks later. Sadly my letter is also lost to various house moves. Or eaten by a grue.
In the 1980s, I was interested in text adventure games, and had a kind of book/magazine on the topic of how to write them. In BASIC, obviously (groan) because that's what was easily accessible back then.
I remember figuring out the mechanisms that the book introduced: what kind of rudimentary data structures to use to represent the state of the world, the locations of objects, etc.
I got some simple stuff to work, you could navigate the world, pick up and drop objects, etc. but then my motivation gradually ran out because I didn't have a clearly defined design for the game I was going to build.
I had a few pirated games (C64, Amiga): "Death in the Caribbean", "The Pawn", etc but never had the motivation to stick with them past the first or second puzzle. The puzzles seemed like if the answer didn't arrive via a flash of divine inspiration, there was no way to figure it out based on logical reasoning. Maybe that part of my brain wasn't developed back then.
That's really nice. I remember when I was 8 or so, I phoned up NASA and told them I'd drawn up plans for a spaceship. The lady on the phone sweetly took me very seriously and asked questions about where such a thing would launch (answer: any big airport). She encouraged me to send them in.
Around the same time (1988) my best friend and I started making our first game in HyperCard. Getting more immediate results from that is probably how I ended up a SWE instead of in aerospace.
'as a kid I....' Man. This brings back memories. I got into the BBS world and started programming in earnest because I wanted to write shells for the MUDs out at the time. A friend and I built some amazing things all in the name of auto-mapping, adding graphics, etc etc. Simple games really help confine a problem to the point that you can grow your curiosity easily with them.
This literally gave me goosebumps. It's hard to convey how much Zork (and the rest of the Infocom portfolio) means to me. This was my first entry into gaming on my Commodore 64.
For anyone out there who had anything to do with bringing these games to market, know that you impacted so many lives in a fun, meaningful, heartfelt way.
I've seen a few things called 'Zork source code' in various places over the years (even on a CD that came with a game programming book of some sort), and copies like this:
Zork was originally written at MIT for PDP-10s in an obscure Lisp dialect (MDL). The authors then later formed a company to sell the game on micro-computers. To do it, they built a virtual machine optimized for this purpose, a new Lisp dialect (ZIL) that could compile to the virtual machine, and the ported the game over to that new dialect. Even so, they had to split the game into three parts to fit.
The source you're linking to is the original MDL source. This is about the ZIL source for the three games that the original Zork was split into.
Zork was originally a public-domain mainframe game called Dungeon developed at MIT. Its authors founded Infocom, split the game into 3 pieces, added more content, and released it for microcomputers as the 3 Zork games. The source code that's been floating around since the 80s is for the original Dungeon game. Between the early 80s and the early 90s, the source was translated from MDL to DEC FORTRAN to Unix f77 to C, so you can find a variety of copies of the source at different steps of that translation process. This is also why the C version doesn't look like idiomatic C code.
When Infocom shut down, one or more of the employees took home backups of the Infocom file server. Various partial releases have been leaked publicly from those backups, including tooling/language documentation and the ZIL source code for every Infocom game. The ZIL source code has been public since 2019. The notable thing that Microsoft is doing here is clearing up the rights to the 3 Zork games (but none of the rest of the Infocom titles).
i'm not a complete expert on this, but the dates entailed here trigger clear memories.
the date on the Zork archive you linked to is 1977. in 1977 there was not really yet a notable software market for personal computers based on microcomputer chips, and software development at MIT in that timeframe would have been on Multics or DEC-10 or 20's and (probably not quite) the dawn of Vax-750s
just a couple years later the names on the archive you linked to went on to found infocom to sell this software ported to personal computers, Apple II 6502's or CPM S-100 bus 8080 and Z80s.
the Colossol Cave Adventure game for the PDP-10 had been released (to other institutions that had PDP-10's) just a couple years before and had caught fire in popularity at universities. These people at MIT took the same idea and reimplemented it with embellishments.
Good question, I'm also curious. A quick search shows that there are some differences. The one in this new historicalsources folder has the PLUGH easter egg, but the other one doesn't seem to have it.
But the older version has a "Tomb of the Unknown Implementor," which this new version seems to lack.
I don't specifically know why that appeals to me. I guess it's because I'd like to tinker with it and understand it better. And if I were going to write Zork I from scratch today, I'd want to use the most modern tools available. [checks notes] Okay, but not Inform 7. I have an aversion to Inform 7. I want my code to look more like code, and less like an LLM prompt.
Ditto here. And, better, translated into Spanish with INFSP6. There is one made from a non-native Spanish speaker and it's really bad.
Now a proper Zork translation can be a reality.
Ah, and yes, IF6 ports for Adventure do exist, both in English and Spanish, and the Spanish one it's really great, with even the backstory on creating the game perfectly translated..
I feel the same about Inform 6 vs 7. I wrote some very simple games in Inform 6 thirty or so years ago, just for personal amusement, but never did a thing with Inform 7.
I guess I'm skeptical of "literate programming" in general, where I have to learn a special way of phrasing English just to interact with some magical process that I don't and can't understand... all so I can avoid typing a few square brackets and semicolons. I think there's an underlying symmetry to the conceptual structure of interactive fiction and the way it looks in Inform 6 that is much easier to reason about... but eh. I'm a couple decades late to the argument.
The repository is part of https://github.com/historicalsource, which has code for a bunch of Infocom games, although at a quick glance most of them aren't open sourced. Still, very cool resource.
it's pretty grim that this announcement, which is in part celebrating the legacy of an incredible artistic endeavor, was written by an LLM. reading this feels like my head is continuously being bashed in by a brick.
The writing should be assumed to be subject to copyright still even though the code is open source.
In this case it sounds like Microsoft's Legal has taken the assumption the writing is applicable under the code license and is mostly seeking to enforce trademarks and brand (don't commercially release something implying it is a Microsoft-approved Zork) more than the writing, per Scott's wording of Microsoft's legal requests here: https://github.com/historicalsource/zork1/pull/3
Obviously, I'm not a lawyer, that's not legal advice, build commercial derivatives at your own risk and with your own lawyer's advice.
In many ways it's the opposite, the code counts as writing. At least where I live (should be similar in other EU countries) from the perspective of copyright law code is largely classified as literary work. There are few special rules related to fact that code is typically written by large team employed by company compared to books being written by single author and printed by publisher. Also few special rules that don't make sense for regular literary works related to reverse engineering, interface compatibility with other software and copying as part of installation/execution process.
All the code specific licenses are arbitrary rules decided by right owners under which they license others to use their work. Book authors typically don't have to worry whether when granting permission to read their work they also need to grant rights to relevant patents, or whether dynamic or static linking should be permitted.
Assuming Microsoft owns all the necessary rights for everything I don't see a major reason they couldn't release it as single work under whatever license they want. Considering the way this specific game is written I don't think you can even cleanly separate code from rest of the writing. It's all one big program with bunch of short string literals sprinkled all over the place. You could take all the string literals, but without code defining how those strings are ordered in a non linear and interactive way it would make as much sense as reading a book where all the sentences have been sorted in alphabetical order.
I doubt any of the Zork authors were part of writer union and negotiated separate licensing rules for the text they wrote.
With regards to common case where source is released with open source license separate from art assets there are a couple of reasons. It's much easier to separate pictures and music from code and tell that those are covered by different license. For some of the art assets especially music it's not uncommon that the publisher themselves don't have full rights to them and only have limited license to use in game but not to relicense as separate works. Releasing source code without art assets makes it easier to maintain commercial value and limit ability for others to exploit the work as ready to use product (or sequals) while still allowing programmers to study the code and learn from the technical tricks in code or making new games based on same engine. If I am not mistaken at
From the historical preservation perspective art assets are less likely to bitrot and become unusable. 20 years in future you will likely still be able to rip them out of commercial builds of game with little losses and worst case observable as standalone media. But the code is a lot more likely break and not be runnable on future OS/hardware. Code also has a lot more hidden aspects that you can much more easily observe by reading source code directly instead of reverse engineering the compiled executables. Better release the source code while it hasn't been completely lost.
This is exactly the kind of thing Microsoft likes to opensource: old, crusty, and obsolete. Let's compare. When ID Software opensourced Doom a few years after it's initial release, there was still some life in it and it spawned a myriad of forks and new developments continuing to this day. An active community formed around it. When Microsoft opensourced MSDOS, an opensource clone had existed for so long it was only of interrest to archeologists and historians. It was as whitered and lifeless as Zork is.
learn what? how to print text to stdout? how to do if else statements or math.random? I'm sure you can rewrite this in a week or in a month from scratch. Next, Microsoft will opensource notepad because there are 0 text editors out there. It is 1960 after all.
Funnily enough you can easily find the Windows XP source code on GitHub. Not endorsed by Microsoft of course, but they've ignored it sitting on their own service for years, along with ignoring all the modern Windows and Office piracy tools which are also on GitHub. Microsoft works in mysterious ways.
If I'm reading this right, the source code has been available for all the Infocom games in https://github.com/historicalsource for at least six years, but what's changed today is the license?
Yeah. I had to walk down memory lane to try to remember who bought whom as well. I completely forgot that Activision/Blizzard is a subsidiary of Microsoft Gaming these days.
How did Microsoft get to own it in the first place? And the original MDL version of Zork has been around forever. I wonder if Microsoft has any of the other Infocom games and might release them too.
And, "A game that changed how we think about play"? Um, that was ADVENTURE. Zork was arguably better, but it was in the same vein, and later.
I was in a small room with two paper terminals in 1979 where I discovered ADVENT and DUNGEO at the same time. Maybe there was a distinct separation for a few college students, but for most people they “came out” at the same time.
There's also Frotz and other Z Machine interpreters, and the actual Zblorb game file. But I guess this would be the source code that compiles to the zblorb.
So this is useful to modify zork, but not much changes if you want to build something around zork, as you will most likely be building something that interfaces at the z machine level.
The copyright on the whole collection is 2025 - which is likely just the README or some such thing. Some of the parts are copyright 1977. For works created after 1978 copyright would last from year of first publication + 90 years, but since most of this is written in/before 1977 different laws apply. (I suspect that Activation was careful to ensure they keep their registration up to date, but there is a slight possibility this is all public domain anyway if you want to hire a lawyer to check)
IANAL but copyright is typically the year of first publication.
I could see this being important here in two ways:
1. If the source code of Zork has not been made available to the public before, then now is the year of publication.
2. If Zork source code has previously been made available to the public, perhaps the version published here has had changes made, in which case now is the year of publication of this version of the source code.
I assume that when Microsoft opens source code they have a team of lawyers that have solid legal arguments for what the copyright year should be in each case.
Therefore, maybe it’s even possible legally that
3. Even if source code was previously made available, and even if no changes were made in any way since then to any of the included source code or other files, perhaps just the act of using a different license is in its own way part of how copyright applies. Publishing something under a specific license in $CURRENT_YEAR does not retroactively make the license apply before the time at which it was made available under that license and so perhaps an argument could be made that copyright year in a license includes taking that into consideration.
So how good are the latest coding agents? Like if I asked Gemini 3/Claude/ChatGPT 5.1 to convert it into something that could run from a Python interpreter, how far would they get? (I assume Zork Implementation Language is not well represented in the training corpus)
The easiest way to get it to run from a Python interpreter would be to compile the ZIL source to a Z-Machine binary, which you can do with ZILF [1], then use a Z Machine library in Python (such as a pure Python implementation of the Z-Machine [2]) to load/run it.
A coding agent may even be able to suggest that path, as knowledge of at least the existence of both ZILF and Python ZVM should be in training sets.
The more interesting questions would be how much a coding agent could help you write new Zork rooms or similar things in ZIL now that these ZIL source files are MIT licensed. I would also assume ZIL is not well represented, it's fork of the Lisp family tree (Lisp -> MDL -> ZIL) in generally probably not well represented in open source code bases up to this point. (Some of that may depend on if the agent was trained on some of these historicalsource repos ahead of this open source license change, too.)
That is the exactly the suggested compiler in this blog post. (These repos have been compiled with it for a while. The biggest change in these [Internet Archive-uploaded] repos is an official Microsoft-backed MIT License as opposed to assuming Fair Use for Archival Use prior to now.)
I'm hoping Microsoft may have a chance to open source more of the original Infocom compilers and VMs, even if they would be hard to run on modern machines, in later expansions of these repos.
It seems likely that the entirety of Zork (world state and the possible actions to transform it) is already learned by the model. Which means that there is a grue in there, too. Not good. I’m starting to re-think the doomer argument...
Perhaps this is a stupid/contentious idea (partly because it somewhat kills the "spirit" of the original games), but there's a little part of me that would be interested in seeing the scene building parts of Zork piped into an image generation service to visualize the landscape that the game describes.
(the grue would obviously just a picture full of black, though some creepy eyes would be a nice touch)
Great, I remember a page which stated that it was sad to have free as in freedom ZMachine languages and interpreters (Inform6, Frotz/Fizmo...) but there were very few text adventures under a libre license. So far, the most known ones:
I have an original line printer printout of 1970s "Adventure" (translated from Fortran into C for UIUC's CAC PDP-11/70 running UNIX v7.) Adventure is the father of Zork. Zork is a clone of Adventure.
I would love to see the Apple ][ source code made available for a lot of these classic games. In this case what I really want to see is the Z-Engine or interpreter itself not essentially the data files only.
The source code for most of Infocom's Z-code interpreters (including the Apple version) is available here: https://github.com/erkyrath/infocom-zcode-terps . Note that this isn't an official licensed release so it's in a legal gray area. It would be nice to see Microsoft bless these with an official license as well.
I have seen some of the interpreter source codes, but I don't know if they have been "officially" published. These also include some other things such as test files, and a picture file that I have never seen a decoder for (other than the decoder (and encoder) that I wrote myself).
Many modern implementations do not support permanent shifts in Z versions 3 and above (although all of my own implementations do, and I think all of the official implementations also do, even though Infocom never used that feature (this isn't too surprising since the algorithm they described for deciding when to use permanent shifts is worse than not using them at all; I worked with someone else to make a better algorithm for making this decision)).
Some of the official implementations check the Z version number and some don't; even some that do, do not check if it is a small-endian story file (and the ones that do will only display an error message if it is, and refuse to run it). My own implementations do check for small-endian story files (as well as the Z version number), although some will display an error message and refuse to run it in that case, some actually are able to run both big-endian and small-endian story files (as far as I know, there are no small-endian story files; Infocom never used this feature and no modern compilers support this).
Something else I might mention is that some people say that Infocom used many tricks in the programming, although I have looked at disassembled code in the debugger and found that they could be optimized a lot more (e.g. by using SET->BCOM optimization, and many other things), and the source code for the interpreters also shows some things that could be optimized much better. (Another thing revealed from the source code of the interpreters is a undocumented command-line switch for the DOS version that allows you to specify the name of the story file.)
This is the source code to the original, non-commercial version of Zork that originated at MIT. Microsoft has now released the source code for the Infocom's commercial release for microcomputers.
The others don't seem to have the MIT license pullreq added, so they are not open source; the source code is merely available. The repos have a note:
"This collection is meant for education, discussion, and historical work, allowing researchers and students to study how code was made for these interactive fiction games and how the system dealt with input and processing. It is not considered to be under an open license."
This github repo has been up for some years now (this old blog post has some back story: https://blog.zarfhome.com/2019/04/all-of-infocoms-game-sourc... ) -- AFAIK it's the source contents from an old hard drive image from back when Infocom was a company.
(I only checked hitchhikers and starcross, because github is giving a lot of error pages for these right now.)
The notable change is that most of those repos have been available not as a open source but "source available" as Fair Use (for Archival Purposes), but the copyright owner (Microsoft today) has now directly applied the MIT License to three of those repos (Zork 1/2/3). Hopefully they will apply it to more of them as Microsoft legal allows, but it's still exciting they've made three repos officially open source under a FLOSS recognized license.
bummer
> The code relies on old internal Infocom toolchains (ZILCH compiler, WATFOR,
> mainframe environment) that are not open and likely not preserved.
> Basic Information on the Contents of This Repository
>
> It is mostly important to note that there is currently no known way to compile the source code in this repository into a final "Z-machine Interpreter Program" (ZIP) file using an official Infocom-built compiler. There is a user-maintained compiler named ZILF that has been shown to successfully compile these .ZIL files with minor issues. There are .ZIP files in some of the Infocom Source Code repositories but they were there as of final spin-down of the Infocom Drive and the means to create them is currently lost.
>
> ...
>
> In general, Infocom games were created by taking previous Infocom source code, copying the directory, and making changes until the game worked the way the current Implementor needed. Structure, therefore, tended to follow from game to game and may or may not accurately reflect the actual function of the code.
How bad is it? I mean you have the source, it could be ported. Or am I completely misunderstanding and you specifically want the old toolchains, in which case A respectful moment of silence for compilers lost.
Speaking of porting I have always vaguely wanted to port the original basic version of ultima, I mean never enough to actually do it, but I like the idea of the source being available to do so. even if it is just an accidental artifact of how it was made.
The cynic in me believes that this only took place after numerous meetings during which the question "is there any way we can still make money from this" was repeatedly answered with "no".
Dang. I had forgotten Zenimax got scooped up by MSFT Gaming a few years back. It's not an unreasonable request, though I suspect it should be made directly to MSFT Gaming.
I wonder how long before someone hooks up AI image generation for the scenes with this. It could either be very tastefully done or complete slop. Probably the second option.
There have been a couple attempts at this kind of thing (same with AI generation of images from pages of Choose-Your-Own-Adventure books).
It's more a gimmick than anything particularly useful. Might even distract if the image embellishes from the original description leading players down the wrong path for solving a puzzle.
In the early days of LLMs I tried it, but it was kinda terrible, and I also realised that the fun of these games, like reading a book, was the imagining of the action. Take that away and they are very simple puzzle games
There was a game I remember from the 80s that had such a (to me) tasteful background of still images to go with the text adventure; Time and Magik trilogy on Atari ST. [1]
> It could either be very tastefully done or complete slop.
It really depends on the creator. A slop is a side effect of the fact that the entry barrier has been much lowered. Previously you at least had to put some effort into learning the craft before showing that to the world.
I kinda hate that Microsoft gets to take credit for being magnanimous with yet another product they never created.
The TL;DR: The Zorks were created by several guys at MIT who later formed Infocom. Infocom eventually sold to Activision, Microsoft bought Activision and voila--"Microsoft is open sourcing Zork".
Whenever I use LLM-generated content, I get another LLM and pre-bias it by asking if it's familiar with common complaints about LLM generated content. And then I ask it to review the content and ask for it to identify those patterns in the content and rewrite it to avoid those. And only after that do I bother to give it a first read. That clearly didn't happen here. Current LLM models can produce much better content than this if you do that.
drob518|3 months ago
reticulated|3 months ago
chihuahua|3 months ago
I remember figuring out the mechanisms that the book introduced: what kind of rudimentary data structures to use to represent the state of the world, the locations of objects, etc.
I got some simple stuff to work, you could navigate the world, pick up and drop objects, etc. but then my motivation gradually ran out because I didn't have a clearly defined design for the game I was going to build.
I had a few pirated games (C64, Amiga): "Death in the Caribbean", "The Pawn", etc but never had the motivation to stick with them past the first or second puzzle. The puzzles seemed like if the answer didn't arrive via a flash of divine inspiration, there was no way to figure it out based on logical reasoning. Maybe that part of my brain wasn't developed back then.
noduerme|3 months ago
Around the same time (1988) my best friend and I started making our first game in HyperCard. Getting more immediate results from that is probably how I ended up a SWE instead of in aerospace.
jmward01|3 months ago
RyanOD|3 months ago
For anyone out there who had anything to do with bringing these games to market, know that you impacted so many lives in a fun, meaningful, heartfelt way.
mike1o1|3 months ago
tapoxi|3 months ago
bluedino|3 months ago
https://github.com/MITDDC/zork
What's the lineage here?
jsnell|3 months ago
The source you're linking to is the original MDL source. This is about the ZIL source for the three games that the original Zork was split into.
ndiddy|3 months ago
When Infocom shut down, one or more of the employees took home backups of the Infocom file server. Various partial releases have been leaked publicly from those backups, including tooling/language documentation and the ZIL source code for every Infocom game. The ZIL source code has been public since 2019. The notable thing that Microsoft is doing here is clearing up the rights to the 3 Zork games (but none of the rest of the Infocom titles).
musicale|3 months ago
DECUS fortran version: https://www.ifarchive.org/if-archive/games/source/dungeon-3....
f77 version for Unix: https://github.com/videogamepreservation/zork-fortran
(GNU fortran port: https://github.com/GOFAI/dungeon)
f2c translation (basis of many versions): https://github.com/devshane/zork
(See README for history of this version)
fsckboy|3 months ago
the date on the Zork archive you linked to is 1977. in 1977 there was not really yet a notable software market for personal computers based on microcomputer chips, and software development at MIT in that timeframe would have been on Multics or DEC-10 or 20's and (probably not quite) the dawn of Vax-750s
just a couple years later the names on the archive you linked to went on to found infocom to sell this software ported to personal computers, Apple II 6502's or CPM S-100 bus 8080 and Z80s.
the Colossol Cave Adventure game for the PDP-10 had been released (to other institutions that had PDP-10's) just a couple years before and had caught fire in popularity at universities. These people at MIT took the same idea and reimplemented it with embellishments.
CobrastanJorji|3 months ago
But the older version has a "Tomb of the Unknown Implementor," which this new version seems to lack.
MPSimmons|3 months ago
> docker run -it clockworksoul/zork1
clockworksoul|3 months ago
You made my day
tracker1|3 months ago
AdmiralAsshat|3 months ago
csixty4|3 months ago
seritools|3 months ago
charonn0|3 months ago
unknown|3 months ago
[deleted]
__mharrison__|3 months ago
unknown|3 months ago
[deleted]
VikingCoder|3 months ago
I'd like Zork I through III ported to Inform 6...
I don't specifically know why that appeals to me. I guess it's because I'd like to tinker with it and understand it better. And if I were going to write Zork I from scratch today, I'd want to use the most modern tools available. [checks notes] Okay, but not Inform 7. I have an aversion to Inform 7. I want my code to look more like code, and less like an LLM prompt.
anthk|3 months ago
Ah, and yes, IF6 ports for Adventure do exist, both in English and Spanish, and the Spanish one it's really great, with even the backstory on creating the game perfectly translated..
nathan_douglas|3 months ago
I feel the same about Inform 6 vs 7. I wrote some very simple games in Inform 6 thirty or so years ago, just for personal amusement, but never did a thing with Inform 7.
I guess I'm skeptical of "literate programming" in general, where I have to learn a special way of phrasing English just to interact with some magical process that I don't and can't understand... all so I can avoid typing a few square brackets and semicolons. I think there's an underlying symmetry to the conceptual structure of interactive fiction and the way it looks in Inform 6 that is much easier to reason about... but eh. I'm a couple decades late to the argument.
skybrian|3 months ago
BryantD|3 months ago
NecroTechno|3 months ago
johngossman|3 months ago
https://www.hanselman.com/blog/ipad-surface-ultrabook-are-we...
monkeywork|3 months ago
calibas|3 months ago
esafak|3 months ago
vunderba|3 months ago
https://mordenstar.com/zork
DonHopkins|3 months ago
MC Frontalot - It Is Pitch Dark
https://www.youtube.com/watch?v=4nigRT2KmCE
Featuring Steve Meretzky!
https://en.wikipedia.org/wiki/Steve_Meretzky
boomboomsubban|3 months ago
Is there something similar for a text based adventure game? Does the writing count as code?
WorldMaker|3 months ago
In this case it sounds like Microsoft's Legal has taken the assumption the writing is applicable under the code license and is mostly seeking to enforce trademarks and brand (don't commercially release something implying it is a Microsoft-approved Zork) more than the writing, per Scott's wording of Microsoft's legal requests here: https://github.com/historicalsource/zork1/pull/3
Obviously, I'm not a lawyer, that's not legal advice, build commercial derivatives at your own risk and with your own lawyer's advice.
Karliss|3 months ago
All the code specific licenses are arbitrary rules decided by right owners under which they license others to use their work. Book authors typically don't have to worry whether when granting permission to read their work they also need to grant rights to relevant patents, or whether dynamic or static linking should be permitted.
Assuming Microsoft owns all the necessary rights for everything I don't see a major reason they couldn't release it as single work under whatever license they want. Considering the way this specific game is written I don't think you can even cleanly separate code from rest of the writing. It's all one big program with bunch of short string literals sprinkled all over the place. You could take all the string literals, but without code defining how those strings are ordered in a non linear and interactive way it would make as much sense as reading a book where all the sentences have been sorted in alphabetical order.
I doubt any of the Zork authors were part of writer union and negotiated separate licensing rules for the text they wrote.
With regards to common case where source is released with open source license separate from art assets there are a couple of reasons. It's much easier to separate pictures and music from code and tell that those are covered by different license. For some of the art assets especially music it's not uncommon that the publisher themselves don't have full rights to them and only have limited license to use in game but not to relicense as separate works. Releasing source code without art assets makes it easier to maintain commercial value and limit ability for others to exploit the work as ready to use product (or sequals) while still allowing programmers to study the code and learn from the technical tricks in code or making new games based on same engine. If I am not mistaken at
From the historical preservation perspective art assets are less likely to bitrot and become unusable. 20 years in future you will likely still be able to rip them out of commercial builds of game with little losses and worst case observable as standalone media. But the code is a lot more likely break and not be runnable on future OS/hardware. Code also has a lot more hidden aspects that you can much more easily observe by reading source code directly instead of reverse engineering the compiled executables. Better release the source code while it hasn't been completely lost.
ChicagoDave|3 months ago
Aman_Kalwar|3 months ago
ghssds|3 months ago
kgwxd|3 months ago
knowitnone3|3 months ago
ayaros|3 months ago
jsheard|3 months ago
doener|3 months ago
ninetypercent|3 months ago
raldi|3 months ago
VikingCoder|3 months ago
jasonjmcghee|3 months ago
thecosas|3 months ago
LunaSea|3 months ago
chickensong|3 months ago
PaulHoule|3 months ago
OhMeadhbh|3 months ago
throwaway81523|3 months ago
And, "A game that changed how we think about play"? Um, that was ADVENTURE. Zork was arguably better, but it was in the same vein, and later.
pwg|3 months ago
See: https://news.ycombinator.com/item?id=45996035
ChicagoDave|3 months ago
TZubiri|3 months ago
So this is useful to modify zork, but not much changes if you want to build something around zork, as you will most likely be building something that interfaces at the z machine level.
katspaugh|3 months ago
---
<ROUTINE V-ADVENT ()
agiacalone|3 months ago
https://en.wikipedia.org/wiki/MDL_(programming_language)
leoc|3 months ago
('ADVENT' is https://en.wikipedia.org/wiki/Colossal_Cave_Adventure , for anyone who isn't familar.)
m463|3 months ago
arnonejoe|3 months ago
https://the-rosebush.com/2025/07/studies-of-zil-part-2-how-d...
abtinf|3 months ago
bluGill|3 months ago
QuantumNomad_|3 months ago
I could see this being important here in two ways:
1. If the source code of Zork has not been made available to the public before, then now is the year of publication.
2. If Zork source code has previously been made available to the public, perhaps the version published here has had changes made, in which case now is the year of publication of this version of the source code.
I assume that when Microsoft opens source code they have a team of lawyers that have solid legal arguments for what the copyright year should be in each case.
Therefore, maybe it’s even possible legally that
3. Even if source code was previously made available, and even if no changes were made in any way since then to any of the included source code or other files, perhaps just the act of using a different license is in its own way part of how copyright applies. Publishing something under a specific license in $CURRENT_YEAR does not retroactively make the license apply before the time at which it was made available under that license and so perhaps an argument could be made that copyright year in a license includes taking that into consideration.
Blamklmo|3 months ago
[deleted]
danso|3 months ago
WorldMaker|3 months ago
A coding agent may even be able to suggest that path, as knowledge of at least the existence of both ZILF and Python ZVM should be in training sets.
The more interesting questions would be how much a coding agent could help you write new Zork rooms or similar things in ZIL now that these ZIL source files are MIT licensed. I would also assume ZIL is not well represented, it's fork of the Lisp family tree (Lisp -> MDL -> ZIL) in generally probably not well represented in open source code bases up to this point. (Some of that may depend on if the agent was trained on some of these historicalsource repos ahead of this open source license change, too.)
[1] https://zilf.io/
[2] https://github.com/sussman/zvm
VikingCoder|3 months ago
https://zilf.io/
WorldMaker|3 months ago
I'm hoping Microsoft may have a chance to open source more of the original Infocom compilers and VMs, even if they would be hard to run on modern machines, in later expansions of these repos.
unknown|3 months ago
[deleted]
theoldgreybeard|3 months ago
throwuxiytayq|3 months ago
gaudystead|3 months ago
(the grue would obviously just a picture full of black, though some creepy eyes would be a nice touch)
simonmales|3 months ago
anthk|3 months ago
- Spiritwrak
- All Things Devour
- Calypso
- Tristam Island
Gormo|3 months ago
williamDafoe|3 months ago
PilotJeff|3 months ago
ndiddy|3 months ago
zzo38computer|3 months ago
Many modern implementations do not support permanent shifts in Z versions 3 and above (although all of my own implementations do, and I think all of the official implementations also do, even though Infocom never used that feature (this isn't too surprising since the algorithm they described for deciding when to use permanent shifts is worse than not using them at all; I worked with someone else to make a better algorithm for making this decision)).
Some of the official implementations check the Z version number and some don't; even some that do, do not check if it is a small-endian story file (and the ones that do will only display an error message if it is, and refuse to run it). My own implementations do check for small-endian story files (as well as the Z version number), although some will display an error message and refuse to run it in that case, some actually are able to run both big-endian and small-endian story files (as far as I know, there are no small-endian story files; Infocom never used this feature and no modern compilers support this).
Something else I might mention is that some people say that Infocom used many tricks in the programming, although I have looked at disassembled code in the debugger and found that they could be optimized a lot more (e.g. by using SET->BCOM optimization, and many other things), and the source code for the interpreters also shows some things that could be optimized much better. (Another thing revealed from the source code of the interpreters is a undocumented command-line switch for the DOS version that allows you to specify the name of the story file.)
ginko|3 months ago
alt227|3 months ago
It was public already, what they are doing here is open sourcing the code.
agiacalone|3 months ago
Gormo|3 months ago
Eric_WVGG|3 months ago
musicale|3 months ago
unknown|3 months ago
[deleted]
thebeardisred|3 months ago
classichasclass|3 months ago
pm215|3 months ago
"This collection is meant for education, discussion, and historical work, allowing researchers and students to study how code was made for these interactive fiction games and how the system dealt with input and processing. It is not considered to be under an open license."
This github repo has been up for some years now (this old blog post has some back story: https://blog.zarfhome.com/2019/04/all-of-infocoms-game-sourc... ) -- AFAIK it's the source contents from an old hard drive image from back when Infocom was a company.
(I only checked hitchhikers and starcross, because github is giving a lot of error pages for these right now.)
Cieric|3 months ago
WorldMaker|3 months ago
flyinghamster|3 months ago
ChicagoDave|3 months ago
sigmonsays|3 months ago
bernds74|3 months ago
Although I haven't played with it and can't tell you whether it can compile the open source Zork.
efreak|3 months ago
> Basic Information on the Contents of This Repository > > It is mostly important to note that there is currently no known way to compile the source code in this repository into a final "Z-machine Interpreter Program" (ZIP) file using an official Infocom-built compiler. There is a user-maintained compiler named ZILF that has been shown to successfully compile these .ZIL files with minor issues. There are .ZIP files in some of the Infocom Source Code repositories but they were there as of final spin-down of the Infocom Drive and the means to create them is currently lost. > > ... > > In general, Infocom games were created by taking previous Infocom source code, copying the directory, and making changes until the game worked the way the current Implementor needed. Structure, therefore, tended to follow from game to game and may or may not accurately reflect the actual function of the code.
somat|3 months ago
Speaking of porting I have always vaguely wanted to port the original basic version of ultima, I mean never enough to actually do it, but I like the idea of the source being available to do so. even if it is just an accidental artifact of how it was made.
cellular|3 months ago
MrZongle2|3 months ago
fainpul|3 months ago
wiz21c|3 months ago
wg0|3 months ago
unknown|3 months ago
[deleted]
w4rh4wk5|3 months ago
OhMeadhbh|3 months ago
orph|3 months ago
unknown|3 months ago
[deleted]
fortran77|3 months ago
bluGill|3 months ago
lloydatkinson|3 months ago
vunderba|3 months ago
It's more a gimmick than anything particularly useful. Might even distract if the image embellishes from the original description leading players down the wrong path for solving a puzzle.
lkramer|3 months ago
foobarian|3 months ago
[1] https://www.mobygames.com/game/28812/time-and-magik-the-tril...
VikingCoder|3 months ago
https://dzlab.github.io/notebooks/flax/vision/diffusion/2023...
SoKamil|3 months ago
It really depends on the creator. A slop is a side effect of the fact that the entry barrier has been much lowered. Previously you at least had to put some effort into learning the craft before showing that to the world.
tellmehowto|3 months ago
[deleted]
dang|3 months ago
westurner|3 months ago
[deleted]
jamesgill|3 months ago
The TL;DR: The Zorks were created by several guys at MIT who later formed Infocom. Infocom eventually sold to Activision, Microsoft bought Activision and voila--"Microsoft is open sourcing Zork".
dsjoerg|3 months ago
dvrp|3 months ago
Sigh… it’s all ChatGPT nowadays ain’t it.
jdkee|3 months ago
davidw|3 months ago
Still, pretty cool; I remember playing work as a kid.
planckscnst|3 months ago