世代を形作ったコードの保存: Zork I、II、III のオープンソース化

世代を形作ったコードの保存: Zork I、II、III のオープンソース化


現在、私たちは、私たちの心に近い、大切なゲームの歴史の基礎を保存しています。 Microsoft の Open Source Programs Office (OSPO)、​​Team Xbox、Activision が協力して、 ゾークIゾーク II、 そして ゾークIII MIT ライセンスに基づいて利用可能です。私たちの目標はシンプルです。歴史的に重要なコードを生徒、教師、開発者の手に渡し、彼らがコードを研究し、そこから学び、そしておそらく最も重要なことに、コードを再生できるようにすることです。

遊びに対する考え方を変えたゲーム

いつ ゾーク 登場したのは、プレイヤーに勝つことを求めるだけではありませんでした。それは彼らに想像してもらいました。グラフィックス、ジョイスティック、サウンドトラックはなく、画面上の文字とプレイヤーの好奇心だけがありました。しかし、これらの言葉は、当時のほとんどのゲームよりも鮮やかな世界を構築しました。それを可能にしたのは、単に巧みな文章を書いただけではなく、巧みなエンジニアリングでした。

その言葉の世界の下には、静かに革命的なものが存在していました。それは、カスタムビルドのエンジンである Z-Machine です。 Z-Machine は仮想マシンの仕様であり、現在私たちが使用している多くの Z-Machine インタプリタは、その VM のソフトウェア実装です。オリジナルのメインフレーム バージョン ゾーク 初期の家庭用コンピュータでは処理できないほど大きすぎたため、Infocom のチームは現実的な選択を行いました。彼らはそれを 3 つのゲームに分割し、 ゾークIゾーク II、 そして ゾークIII、すべて同じ基盤システムによって動作します。これは、プラットフォームごとにゲームを再構築する代わりに、Z-Machine を使用して同じストーリー ファイルをどのコンピュータでも解釈できることも意味しました。あのデザインが作ったのは ゾーク 真のクロスプラットフォームとなった最初のゲームの 1 つであり、Apple II、IBM PC などで登場します。

オリジナルのゾークトリロジーボックスアート。

歴史の一部を保存する

ゲームの保存にはさまざまな形があり、遊びだけでなく研究も考慮することが重要です。 Zork のソース コードは保存して研究する価値があります。私たちは新しいリポジトリを作成するのではなく、歴史に直接貢献しています。 Internet Archive で有名なデジタル アーキビストである Jason Scott と協力して、私たちは上流のプル リクエストを歴史的ソース リポジトリに正式に送信しました。 ゾークIゾーク II、 そして ゾークIII。これらのプル リクエストには明確な MIT LICENSE が追加され、オープンソースの許可が正式に文書化されます。

各リポジトリには次のものが含まれます。

  • のソースコード ゾークIゾーク II、 そして ゾークⅢ。
  • ビルド ノート、コメント、歴史的に関連するファイルなどの付属ドキュメント (利用可能な場合)。
  • MIT LICENSE.txt およびリポジトリ レベルのメタデータを通じて、ライセンスと帰属を明確にします。

このリリースは純粋にコード自体に焦点を当てています。これには商用パッケージやマーケティング資料は含まれません。また、商標やブランドに対する権利も付与されず、これらの権利はそれぞれの所有者に帰属します。これらのタイトルのソース コードの範囲外にあるすべてのアセットは、歴史的な正確性を維持するために意図的に除外されています。

今日は Zork I ~ III を実行します

それから40年以上が経ち、 ゾーク はまだ健在で、これまでよりも簡単にプレイできます。ゲームは、Good Old Games の The Zork Anthology を通じて引き続き商業的に入手可能です。より実践的なアプローチを好む人は、Tara McGrew が作成した最新の Z-Machine インタプリタである ZILF を使用して、ゲームをローカルでコンパイルして実行できます。 ZILF は、ZIL ファイルを Z3 にコンパイルし、Tara 独自の ZLR で実行できるようにします。これは、私が書くとは思ってもいなかった文であり、ましてや大声で言うつもりはありませんでした。すべてのプラットフォームにわたって、探索できる素晴らしい Z マシン ランナーが多数あります。

ZILF を使用して Zork をローカルで実行し始める方法は次のとおりです。コマンド ラインから、zork1.zil を実行可能な z3 ファイルにコンパイルおよびアセンブリします。

"%ZILF_PATH%\zilf.exe" zork1.zil 

"%ZILF_PATH%\zapf.exe" zork1.zap zork1-ignite.z3

次に、Zmachine ランナーで Z3 ファイルを実行します。私は、Stefan Jokisch の Frotz コアに基づいた David Kinder の Windows Frotz を使用しています。

Windows Frotz での Zork プロンプト。

あるいは、あなたが私と同じような一定の年齢であれば、ターミナルに CRT フィルターを適用し、Python で書かれた Matthew Darby の「Fic」のような Zmachine の CLI 実装を使用することもできます。

CRT フィルターを備えたターミナルで Zork が実行されています。

旅を続ける

既存の履歴リポジトリを正規のホームとして使用します。 ゾークのソース。最初のプル リクエストが MIT ライセンスに基づいて取得されると、貢献が歓迎されます。私たちが MIT を選んだのは、コードの研究、指導、構築が容易なため、そのシンプルさとオープンさからです。問題をファイルし、洞察を共有し、他の人が元の設計から学ぶのに役立つ、十分に文書化された小さな改善を提出します。目的は近代化ではない ゾーク しかし、それは探検と教育のための空間として保存するためです。

ゾーク 常にゲーム以上のものでした。これは、想像力とエンジニアリングがハードウェアやプレーヤーの世代を超えて存続できることを思い出させてくれます。このコードを公開することは、私たちがまだ探索中の世界を発明してくれた元の Infocom の作成者、数十年にわたる管理とパートナーシップを提供してくれたジェイソン スコットとインターネット アーカイブ、そしてオープン ソースの実現に貢献した Microsoft OSPO、Xbox、Activision の同僚たちに対するお祝いであり、感謝の気持ちでもあります。





Source link

Postagens Similares

  • جدید کاروں کے بارے میں ایک طنز

    10 جولائی 2026 | 3 منٹ پڑھیں میں نے حال ہی میں ایک نیا Peugeot خریدا ہے اور ان کے آن لائن پلیٹ فارم پر سیٹ اپ کرنے کا تجربہ کم از کم کہنا تکلیف دہ رہا ہے۔ کل میں نے اپنا چمکدار نیا (میرے لیے) Peugeot E-3008 GT اٹھایا۔ یہ ایک خوبصورت کار ہے…

  • 用 Go 編寫的 Parrot AR 無人機 2.0​​ 固件 Felix Geisendörfer

    GoDrone – 用 Go 編寫的 Parrot AR 無人機 2.0​​ 固件 · Felix Geisendörfer 發表: 2013 年 12 月 25 日 大家聖誕快樂(或者牛頓聖誕,如果你願意的話)。 今天,我很高興發布我最喜歡的副項目 GoDrone 的第一個版本。 GoDrone 是 Parrot AR Drone 2.0 的免費軟件替代固件。是的,這有望使其成為 Go 垃圾收集器的第一個機器人可視化工具:)。 此時,固件已經足夠好,可以飛行並提供基本的姿態穩定(使用簡單的互補濾波器+PID控制器),所以我真的很想從任何喜歡冒險的AR無人機所有者那裡得到反饋。我為 OSX/Linux/Windows 提供二進制安裝程序: http://www.godrone.io/en/latest/index.html 但您也可以選擇從源安裝。 根據最初的反饋,我很樂意將 GoDrone 變成官方固件的可行替代品,並為機器人軟件的開髮帶來一些新鮮空氣。我特別想展示的是,網絡技術在為機器人提供用戶界面的成本和用戶體驗方面可以與本地移動/桌面應用程序相媲美,而且我還想推廣使用高級語言在 Linux 驅動的機器人中進行固件開發的想法。 如果您有興趣,請確保加入郵件列表/在 IRC 中打個招呼: http://www.godrone.io/en/latest/user/community_support.html ——菲利克斯·蓋森多夫 通過 RSS 或電子郵件訂閱此博客,或者通過以下方式獲取我的小更新 嘰嘰喳喳。 請啟用 JavaScript 以查看…

  • Netflix ha rovinato la sua app Apple TV passando a un lettore video personalizzato

    Netflix ha apportato ancora una volta una modifica controversa alla sua app Apple TV. Nelle ultime settimane, l’azienda ha smesso di utilizzare il lettore video nativo tvOS 26 a favore di un lettore personalizzato simile a quello utilizzato su altre piattaforme TV. In pratica, ciò rende le interazioni più comuni più macchinose e impedisce agli…

  • Åk 3 på Småbruket

    📅 1 december 2025 | ⏱️ ~3 minuters läsning Vi har bott på vårt småbruk i Wales i tre år nu. Så här har det gått i år. Jag är lite sen med min uppdatering i år eftersom jag har haft lite saker på gång hemma. Det här har av misstag blivit en årlig tradition…

  • Skrytki: LRU lub losowe

    Dawno, dawno temu mój profesor architektury komputerowej wspomniał, że stosowanie zasad losowego wykluczania pamięci podręcznych naprawdę nie jest takie złe. To losowe wykluczenie nie jest złe, ale może być zaskakujące — jeśli pamięć podręczna się zapełnia i musisz się czegoś pozbyć, wybranie ostatnio używanego (LRU) jest oczywistym wyborem, ponieważ istnieje większe prawdopodobieństwo, że użyjesz czegoś,…

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *