在一次令人矚目的創意程式設計展示中,一位開發者成功使用 PostScript(傳統上被認為是文件描述語言)實現了一個功能完整的俄羅斯方塊遊戲。這個被稱為 PSTris 的創新專案,展示了一個主要用於列印和圖形處理的語言如何被重新定義用於互動式遊戲開發。
意想不到的互動能力
這個實現方式最引人入勝的地方在於它實現 PostScript 互動性的新穎方法。當許多開發者認為 PostScript 僅限於靜態文件生成時,PSTris 採用了一個巧妙的技術實現了即時遊戲。正如一位社群成員所說:
「這使用了一個巧妙的技術,透過將輸入寫入一個文字檔案,而 PS 程式持續讀取該檔案。非常酷。」
這種技術使遊戲能夠即時處理玩家輸入,展示了 PostScript 在互動式應用方面的潛力。
歷史背景與現代實現
該專案引發了關於 PostScript 在計算機歷史中角色的討論。社群成員指出,PostScript 曾在 Display PostScript 和 Sun 的 NeWS(Network extensible Window System)等重要圖形系統中發揮作用,為圖形使用者介面應用程式提供基礎。然而,PSTris 採用了不同的方法,透過創造性地使用檔案系統監控而不是依賴專門的實現來實現互動性。
平臺支援:
- macOS( GhostView )
- Linux( Ghostscript )
技術成就
這個實現非常高效,僅需600行程式碼(10 KB),使用了69個不同的 PostScript 運算子。遊戲包含了所有基本的俄羅斯方塊特性,如遞增的難度等級、Nintendo 風格的計分系統,以及標準的7種方塊隨機包系統。這證明了一個看似受限的文件處理語言也能被推動創造出功能完整的遊戲體驗。
主要特點:
- 600行/10KB的 PostScript 程式碼
- 69個不同的 PostScript 運算子
- 即時輸入處理
- 直接下落功能
- 漸進式難度等級
- 7種方塊的隨機包系統
- 最高分追蹤
- Nintendo 計分方案
跨平臺可訪問性
該遊戲可以在 macOS 的 GhostView 上執行,也可以在 Linux 系統上使用 Ghostscript 執行,儘管一些使用者報告在某些 Linux 配置上存在穩定性問題。開發者還用 PostScript 實現了其他經典遊戲,包括國際象棋和推箱子,建立了探索該語言遊戲潛力的模式。
這個專案不僅是一個技術上的趣味之作,還突顯了在既有技術中持續創新的可能性,證明創造性的程式設計可以突破傳統工具和語言的邊界。
參考連結:PSTris