一款全新的《毁灭战士》移植版本近日亮相,它可以通过 Cloudflare 的 DNS 服务直接载入内存,无需在本地磁盘写入任何文件,也不需要传统意义上的安装过程。开发者将这款经典第一人称射击游戏的试用版数据编码进 1,964 条 DNS TXT 记录中,再通过一条 PowerShell 命令启动游戏。
![]()
域名系统(DNS)诞生至今将近 45 年,最初只是作为互联网基础设施的一部分,用来完成域名与 IP 地址的解析,从未被设计用来存储文件,更谈不上运行程序。不过,安全领域早已证明,DNS 也可以被“物尽其用”:研究人员此前发现,有黑客通过成百上千个子域名分段传输恶意代码,再借助 AI 生成脚本在目标系统上重组,从而实现通过 DNS 传递恶意软件载荷。
这次让《毁灭战士》跑在 DNS 上的,是开发者 Adam Rice。他采用了类似思路,把游戏数据拆分为 1,964 条 TXT 记录,存放在 Cloudflare 管理的 DNS 区域中,再在本地通过 PowerShell 将这些文本记录重新组装并执行。该移植基于 Nobuaki Tanaka 用 C# 编写的 Managed 毁灭战士 项目,Rice 在 Claude 的协助下对代码进行了补丁修改,并将游戏体积从 8.4MB 压缩至约 1.9MB。为实现这一特殊方案,开发者牺牲了音频支持,因此当前版本的《DOOM over DNS》是“静音”运行。
就技术细节而言,DNS 查询本身不能直接存储文件,但 DNS 区域可以承载大量文本记录,只要编码方式足够巧妙,文本记录就能“拼”出足够的数据量来传输文件乃至运行软件。在 Rice 的项目中,用户只需安装 PowerShell 7,然后在命令行中执行“.\\Start-DOOMOverDNS.ps1 -PrimaryZone 'example.com'”即可启动游戏。项目主页在 GitHub 上提供了上传游戏、配置 DNS 以及执行其他命令的详细说明,整个过程不依赖任何额外依赖项,也不会在系统中安装其他软件。
![]()
DNS 版本的《毁灭战士》只是这款游戏“不择手段”登陆各种载体的最新一例。多年来,爱好者们不断挑战“还能让 毁灭战士 跑在哪儿”的极限:从单个键盘按键、麦当劳的收银机和自助点餐机、Playdate 掌机、Minecraft 世界、验证码界面,到宜家的 15 美元智能灯、主板 BIOS、乐高积木、约翰迪尔联合收割机、记事本、Atari ST、糖果棒、仅消耗 1 毫瓦功耗的神经芯片、Commodore 64、图文电视(Teletext)、机器人割草机、《堡垒之夜》、《毁灭战士》本体包装盒内置硬件、二维码、耳机、在轨卫星,甚至由活体人类神经元构成的“电脑”,以及 TypeScript 的类型系统和 PDF、Microsoft Word 文档等,几乎无所不包。对“让毁灭战士跑起来”的执念,已经成为技术圈的一种文化符号。
与此同时,另有开发者在复古掌机 Analogue Pocket 上完成了《毁灭战士》和《雷神之锤(Quake)》的移植,背后同样有 Claude 参与协助。Analogue Pocket 原本是通过 FPGA 来模拟 Game Boy Advance 等多种老式游戏机,但这两个移植版本并非简单的主机仿真,而是以原生方式运行,与既有主机版本并无直接继承关系。尽管在流畅度上还达不到“丝滑”的水准,但以当年 1990 年代的 PC 配置为参照,这台掌机很可能已经能比当年的许多电脑更好地跑动这些经典游戏。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.