- Der Quellcode der Textadventure-Spiele Zork I·II·III aus den 1980er-Jahren wurde unter der MIT-Lizenz veröffentlicht und kann von allen gelernt, erforscht und ausgeführt werden
- Microsoft OSPO, Team Xbox und Activision arbeiteten zusammen, um historischen Code zu bewahren und für Bildungszwecke nutzbar zu machen
- Das veröffentlichte Repository enthält Quellcode, Build-Notizen, Kommentare und zugehörige Dokumentation, Markenrechte und kommerzielle Assets sind ausgenommen
- Nutzer können die Spiele mit dem ZILF-Compiler und einem Z-Machine-Interpreter direkt in ihrer lokalen Umgebung ausführen
- Die Veröffentlichung ist ein symbolischer Schritt für Games Preservation und die Verbreitung der Open-Source-Kultur und zeigt, wie Kreativität und Technologie generationenübergreifend zusammenwirken
Überblick über die Open-Source-Veröffentlichung von Zork
- Microsofts Open Source Programs Office (OSPO), Team Xbox und Activision haben gemeinsam Zork I, II, III unter der MIT-Lizenz veröffentlicht
- Ziel ist es, dass Studierende, Lehrkräfte und Entwickler den Code lernen, erforschen und selbst spielen können
- Der Beitrag erfolgte in Form der Ergänzung einer offiziellen MIT LICENSE zum bestehenden historical source repository auf GitHub
- Im Mittelpunkt der Veröffentlichung stehen die Bewahrung der Spielegeschichte und die Verbreitung ihres Bildungswerts
Technischer Hintergrund von Zork
- Zork war ein Spiel, das seine Welt ohne Grafik oder Sound allein mit Text umsetzte, und veränderte damit die damalige Art des Gamedesigns grundlegend
- Die zentrale Technik war die Spezifikation einer virtuellen Maschine namens Z-Machine, die es ermöglichte, dieselbe Story-Datei auf verschiedenen Plattformen auszuführen
- Dank dieser Struktur gilt Zork als eines der ersten plattformübergreifenden Spiele, das auf Apple II, IBM PC und weiteren Plattformen lief
- Da die ursprüngliche Mainframe-Version für Heimcomputer zu groß war, teilte Infocom sie in drei eigenständige Spiele (Zork I~III) auf
Code-Bewahrung und Aufbau des Repositorys
- Microsoft arbeitete mit Jason Scott vom Internet Archive zusammen, um dem bestehenden Zork-Repository eine offizielle Open-Source-Lizenz hinzuzufügen
- Jedes Repository enthält Folgendes
- den Quellcode von Zork I·II·III
- Build-Notizen, Kommentare und historisch relevante Dokumente
- MIT LICENSE.txt und Repository-Metadaten
- Der Veröffentlichungsumfang beschränkt sich auf den Code; Markenrechte, kommerzielle Verpackungen und Marketingmaterialien sind nicht enthalten
So lässt sich Zork ausführen
- Zork ist weiterhin kommerziell über The Zork Anthology bei Good Old Games (GOG) erhältlich
- Für die direkte Ausführung können ZIL-Dateien mit ZILF (von Tara McGrew) zu einer Z3-Executable kompiliert und anschließend in einem Z-Machine-Interpreter ausgeführt werden
- Beispielbefehle:
"%ZILF_PATH%\zilf.exe" zork1.zil
"%ZILF_PATH%\zapf.exe" zork1.zap zork1-ignite.z3
- Beispiele für Ausführungstools: Windows Frotz, Fic (Python-basierte CLI-Implementierung) usw.
- Da es Z-Machine-Runner für viele Plattformen gibt, ist die Zugänglichkeit hoch
Weitere Pläne und Bedeutung
- Das bestehende historische Repository von Zork soll weiterhin als Referenz für den offiziellen Quellcode dienen; nach der MIT-Lizenzierung sind Beiträge und Verbesserungsvorschläge willkommen
- Ziel ist nicht die Modernisierung, sondern die Bewahrung als Raum für Erkundung und Bildung
- Die Veröffentlichung versteht sich auch als Dank an die Infocom-Entwickler, das Internet Archive sowie die Teams von Microsoft, Xbox und Activision für ihre Zusammenarbeit
- Zork gilt als ein Beispiel dafür, dass sich die Verbindung von Vorstellungskraft und Engineering über Generationen hinweg fortsetzen kann
1 Kommentare
Hacker-News-Kommentare
Als ich Anfang der 1980er ungefähr 14 war, spielte ich mit einem Freund Zork und wir dachten, wir sollten auch selbst ein Spiel machen.
Also schrieben wir an Infocom und schlugen vor, dass man uns mit ZIL und der Z-machine ein neues Spiel entwickeln lassen solle, und erstaunlicherweise bekamen wir eine höfliche Absage.
Im Rückblick wäre es für uns, die nur BASIC und Assembler kannten, wohl ohnehin zu viel gewesen, ein Spiel in ZIL zu schreiben.
Trotzdem blieb mir die respektvolle Haltung des Unternehmens gegenüber uns Kindern in Erinnerung. Ich wünschte, ich hätte den Brief noch
Leider ist der Brief bei Umzügen verloren gegangen oder wurde vielleicht von einem grue gefressen
Aber ohne klares Game-Design verlor ich allmählich das Interesse. Auch die Rätsel verlangten eher einen Geistesblitz als Logik, daher gab ich oft schnell auf
Zusammen mit einem Freund fügten wir automatisches Mapping und einfache Grafikfunktionen hinzu, und solche kleinen Spiele halfen wirklich enorm dabei, Neugier zu wecken
Diese Nachricht hat mich geradezu erschütternd berührt. Zork und die Spiele von Infocom waren für mich der Einstieg in die Welt der Spiele, und ich erinnere mich daran, sie zum ersten Mal auf dem Commodore 64 gespielt zu haben.
Ich möchte allen danken, die diese Spiele geschaffen haben. Sie haben dem Leben so vieler Menschen Freude und Bedeutung gegeben
Ich teile den direkten Link zum GitHub-Repository von Zork1
Ich habe mich gefragt, warum Microsoft die Rechte an Zork besitzt
Ich habe früher schon an mehreren Stellen etwas gesehen, das als „Zork-Quellcode“ bezeichnet wurde, zum Beispiel dieses Repository. Mich interessiert, wie deren Herkunft zusammenhängt
Später gründeten die Entwickler eine Firma und portierten es für Mikrocomputer; dabei entstanden eine neue Sprache namens ZIL und eine virtuelle Maschine, und das Spiel wurde in drei Teile aufgeteilt veröffentlicht.
Das von dir verlinkte ist die ursprüngliche MDL-Version, die jetzige Veröffentlichung ist die ZIL-Version
Der Quellcode wurde zwischen den 80ern und 90ern von MDL → FORTRAN → f77 → C übersetzt, wodurch mehrere Versionen entstanden; deshalb wirkt die C-Version unstrukturiert.
Als Infocom schloss, nahmen Mitarbeiter Backups mit, einige davon gelangten nach außen, und seit 2019 ist ZIL-Quellcode öffentlich verfügbar.
Microsoft hat dieses Mal lediglich die rechtlichen Fragen zu den drei Zork-Spielen geklärt
Am MIT wurde wohl in DEC-10- oder Multics-Umgebungen entwickelt, und später portierte Infocom das Ganze auf Apple II oder CP/M-Systeme.
Damals war Colossal Cave Adventure populär, und MIT-Entwickler entwickelten diese Idee weiter
Ich bin gespannt, wer als Erster eine Portierung auf Arduino + LCD macht
Ich frage mich wieder, wie Microsoft daran gekommen ist.
Die ursprüngliche MDL-Version war ja schon lange öffentlich, daher hoffe ich, dass Microsoft vielleicht auch andere Infocom-Spiele freigibt.
Und wenn man von einem „Spiel, das die Denkweise über Spiele verändert hat“ spricht, dann war eigentlich ADVENTURE der Anfang. Zork war viel ausgefeilter, aber ein Nachfolger aus derselben Linie
Ich mag es, Zork mit Docker auszuführen.
Mit dem Befehl
docker run -it clockworksoul/zork1kann man sofort spielenIm Repository historicalsource ist der Code vieler Infocom-Spiele gesammelt.
Meistens ist das zwar nicht vollständig Open Source, aber trotzdem ein wirklich großartiges Archivmaterial
„It is pitch black. You are likely to be eaten by a grue.“ — ein Zitat der berühmten Zeile aus Zork
mordenstar.com/zork
In MC Frontalots Song „It Is Pitch Dark“ taucht diese Szene ebenfalls auf.
Übrigens hat daran auch Steve Meretzky mitgewirkt