心流logo

开发者将《毁灭战士》压缩进单个二维码

创新突破

《毁灭战士》(Doom)这款经典共享软件具有独特魅力,开发者们一直致力于将其移植到各种设备上运行。只要提供游戏的开源代码和具备基本图形界面的设备,开发者就能实现这一目标。

开发者库伯·梅塔(Kuber Mehta)最近完成了一项令人瞩目的创新:将游戏压缩并编码到单个二维码中,且保证其可以正常提取运行。

技术挑战

在梅塔最近发布的博客中详细介绍了项目面临的挑战。二维码的3KB数据容量限制是最大的障碍,因为原版《毁灭战士》(Doom)中仅链炮的精灵图就占用了1.2KB。

为克服这一限制,梅塔选择开发一个极简版本,目标是"创造一个比三段纯文本还小的可玩的《毁灭战士》风格游戏"。这个名为"后室毁灭"(the backdooms)的项目不仅借鉴了1993年原版射击游戏的元素,还融入了网络恐怖故事《后室》(The Backrooms)的创意元素。

技术实现

梅塔采用HTML编写游戏,通过"极其激进的精简化"将变量压缩至单字符。在编码过程中,传统的Base64转换方式因占用过多存储空间而被放弃。经过与ChatGPT、DeepSeek和Claude等AI助手的多次交互,最终找到了使用DecompressionStream(浏览器内置WebAPI组件)的解决方案。

为了实现3D效果,项目借鉴了原版《毁灭战士》(Doom)的技术,采用简化版光线投射技术。游戏采用基于种子的无限地图生成机制,既保证了随机性,又能通过种子号重现特定地图。

创新意义

尽管将游戏压缩到二维码的方式可能不适用于大多数项目,但这种极限压缩的尝试体现了共享软件的创新精神。在资源受限的情况下实现功能优化,展现了技术创新的无限可能。