Doom was split into 1,964 DNS TXT records and kicked off with a 250-line PowerShell script
Adam Rice encoded the shareware Doom files across 1,964 DNS text records in a Cloudflare Pro zone and reassembles them in memory via a standalone PowerShell script.

On March 30, 2026 a developer named Adam Rice demonstrated a novel way to run Doom, as he broke the shareware edition of the game into 1,964 DNS TXT records, hosted them in a single Cloudflare Pro DNS zone, and used a 250-line PowerShell script to pull everything back together and launch the game from memory.
The project, titled Doom Over DNS on GitHub, began as an experiment to store arbitrary data inside DNS text records. Rice first proved the idea by Base64-encoding a small image. After that test succeeded, he targeted something more compact than a multi-gigabyte video and landed on shareware Doom because its code can be compressed and adapted to run from a memory stream.
Rice rewrote portions of the engine so it could execute from RAM rather than reading files from disk, and he removed audio to keep the payload smaller. Each DNS TXT record can hold roughly 2,000 characters and is not strictly validated, so the game was split into suitably sized chunks and placed across the zone. The PowerShell script resolves the DNS queries, reassembles the chunks in memory, loads the assemblies, and launches the game without writing the files to disk.
The script completes its DNS queries and reconstructs the game in roughly 10 to 20 seconds on a typical connection. Rice documented the project and his methods in a technical write-up, which explains the architecture and design choices in detail.
Rice also pointed out the wider implication. “DNS is almost 45 years old and it was designed to map hostnames to IP addresses. It is not a file storage system,” he wrote. The experiment highlights how a protocol intended as an internet phonebook can be repurposed to ferry arbitrary payloads when its text-record fields are treated as free-form storage.
The project includes practical notes about scale as Rice estimated that storing a 1 GB MP4 over DNS would need on the order of 670,000 text records, which is why he chose a smaller, compressible target. The GitHub repo contains the code and instructions for anyone who wants to inspect the mechanics or try a local reproduction.
This is another example of Doom showing up in places it was never meant to live. The technical curiosity demonstrates both creative problem solving and the unexpected ways long-standing protocols can be used.
Please share your thoughts in the comments and let us know what you think about experiments like this. Follow us on X, Bluesky, YouTube, Instagram.





