开发者库伯·梅塔(Kuber Mehta)创造了一个极度轻量级的方案,可以将游戏压缩编码进单个二维码,并能从中提取运行。但他在博客中坦言,要让《毁灭战士》真正通过二维码运行并非易事。仅从存储容量来说,二维码最多只能编码3KB数据,而原版游戏中仅链枪(chaingun)的精灵图就占了惊人的1.2KB。

Cover Image

因此开发者选择折中方案,他写道最终这个“荒诞构想”变成了:“开发一款小于三行纯文本体积、受《毁灭战士》启发的可玩游戏。”严格来说这不是真正的《毁灭战士》,但梅塔的作品确实充满《毁灭战士》神韵。这个名为《后室毁灭》(the backdooms)的项目,不仅致敬了1993年的经典射击游戏,还融入了阈限空间恐怖传说《后室》(The Backrooms)。

采用HTML编写的这个项目必须精打细算每个字符,梅塔通过“极端激进的代码压缩”将变量缩减为单字母。虽然生成的代码看起来像被《毁灭战士》恶魔爆头般令人眩晕,但其精巧程度令人叹服。但将HTML编码进二维码仍是难题,常规的Base64转换方案会挤占本就不多的存储空间。

于是梅塔求助ChatGPT、DeepSeek和Claude这“AI三巨头”寻找解决方案。他吐槽道:“我花两天时间轮流咨询这三个AI……每次它们都建议‘放网站上更容易’?!最后ChatGPT随口提到了浏览器内置的DecompressionStream接口。”虽然最初采用固定微型地图,梅塔最终改为基于种子无限生成的地图系统——只要记住种子数字就能复现相同地图。真正的魔法在于如何让这些地图呈现基本3D效果,他简化了《毁灭战士》原版的射线投射技术(raycasting),所以严格来说这仍是披着3D外衣的2D游戏。

在上述限制下,《后室毁灭》呈现出灰墙间躲避红眼矩形的极简视觉风格,但完美传达了核心体验。虽然二维码方案对多数项目不实用,却完美继承了《毁灭战士》的共享精神。在性能拮据的条件下创造奇迹总是令人惊叹——尤其当某些量子电脑连《毁灭战士》的线框模型都跑不动时。

若你对极限开发感兴趣,不妨了解完全用PowerPoint制作的恐怖游戏《罗氏极限》(Roche Limit)。说到恐怖故事,或许我该重拾那个关于蟑螂继承末日世界、DNA里编码着《毁灭战士》源代码的废弃企划了……


文章标签: #游戏开发 #二维码 #毁灭战士 #极限编程 #后室

负责编辑

  菠萝老师先生 

  让你的每一个瞬间都充满意义地生活,因为在生命的尽头,衡量的不是你活了多少年,而是你如何度过这些年。