AI Game Port Takedown Tracker: Why HTTP 200 Status Codes Lie

PortedGames tracked 12 AI game port takedowns, revealing why status-code checks fail.
The author runs PortedGames, a game port directory, and built a takedown tracker after users began asking which ports had been removed. Since September 11, 12 projects have been taken down over copyright claims—5 by Activision (4 Call of Duty browser remakes removed the same day), 2 by Mojang/Microsoft, and 1 each by Rockstar, SEGA, SNK, and others. Critically, 8 of the 12 never produced a public GitHub DMCA notice because they were hosted on their own domains or on Railway and Cloudflare Pages. Naive HTTP status checks proved unreliable: notice pages return 200 and keep their original title, dead addresses get recycled and redirect elsewhere, and Cloudflare challenge pages look like uptime. The checker was reworked to read page text, restrict matching to short pages, verify a required string, and leave final confirmation to a human. Survival times ranged from a few hours to 321 days, with a median of 29 days.
In October, a wave of browser game ports rapidly generated with AI coding tools went viral on social media—Halo, The Simpsons: Hit & Run, Grand Theft Auto: Vice City, Call of Duty: Zombies—all runnable directly in a browser tab. The list of these projects spread on X faster than anyone could verify them one by one.
I run PortedGames, a directory that catalogs these kinds of porting projects (browser versions, PC ports, and static recompilations). The site rechecks every entry daily, because the question users ask most often is "can I still play this?" But within two weeks, the more interesting question became "which ones got taken down, and by whom." So I built a takedown tracker.

The numbers: 12 takedowns, 8 with no public notice
Since September 11, a total of 12 porting projects have been taken down after copyright claims. By rights holder, Activision alone accounts for 5: on the same day, October 10, Activision took down 4 Call of Duty browser remakes made by the same developer; there was also an unreleased, AI-assisted decompilation Modern Warfare 2 project that was reportedly hit a week earlier.
Mojang/Microsoft accounts for 2, and Rockstar Games, SEGA, SNK, and Maddy Makes Games each account for 1, with 1 more whose rights holder the site does not name.
A few notable details:
Survival time online varies enormously. Among the 9 projects with a known release date, the median survival time was 29 days. The GTA V browser port lasted only a few hours; a WebAssembly port of Celeste stayed up on GitHub for 321 days before the game data was removed.
Takedowns are not limited to browser remakes. The list also includes a static recompilation project (Metal Slug XX, Xbox 360), a "clean-room" Minecraft reimplementation that Mojang alleges contained more than 2,000 original files, and a long-running campaign against the Eaglercraft repository (18 GitHub notices since August).
8 of the 12 never produced a public GitHub DMCA notice. These ports run on their own domains or are hosted on services like Railway and Cloudflare Pages, so they simply do not show up where people usually look: github.com/github/dmca.
Every row in the tracker links to evidence: the original notice, the author's post, or what the site currently displays.
Why HTTP status codes lie
My first link checker was straightforward: request the page, treat 2xx as online and 4xx/5xx as offline. It reported the very first case as "fine," even though the game was long gone.
Notice pages return 200 and keep their original title. The Modern Warfare 2 browser port "Open Victor Zulu" still serves a page titled "Open Victor Zulu." But the body has become a short notice saying the game was taken down "due to a DMCA request." A status check sees 200; a title check sees the game's name; only the body text tells you it's gone.
Dead addresses get recycled. Three pages.dev addresses that once hosted Call of Duty remakes now all redirect to the same unrelated site. Follow the redirect and you get a 200 from a page with no connection to the game whatsoever.
Bot protection looks like "online." Some hosts respond to automated requests with Cloudflare's "Just a moment..." challenge page (200) or with 403/429. The former shows possibly-dead projects as online; the latter shows probably-fine projects as offline.
Takedown notices don't always reach GitHub. As noted above: if a port isn't on GitHub, there's no public notice to look up.
The DMCA notice mechanism: Section 512 of the U.S. Digital Millennium Copyright Act (DMCA) establishes a "notice-and-takedown" safe harbor. Once a copyright holder (or its agent) sends a platform a written notice meeting the statutory requirements, the platform must promptly remove or block the allegedly infringing content to avoid secondary liability. GitHub set up a public DMCA repository (github.com/github/dmca) for this purpose; the full text of every notice it processes is archived as text and searchable by anyone. This is also the institutional basis for being able to count "public notices" in this article: whether a notice is discoverable depends on whether the hosting platform follows this public process.
Static recompilation: This refers to translating a platform's executable binary (such as Xbox 360 PowerPC machine code) wholesale into equivalent code for another architecture (such as x86-64 or WebAssembly), so the original game can run natively without an emulator. Projects from the N64 era such as N64Recomp drove the revival of this approach. Because the output derives directly from the original binary, it more easily touches the legal gray areas of copyright and decompilation than emulators do; the takedown of the Metal Slug XX recompilation project in this article falls into exactly this category.
How the checker works now
The daily check is a small Node script. For each port:
- 2xx within 6 seconds: fine. 2xx but slow: flagged as slow. 4xx/5xx, or a network error after one retry: offline.
- 403/429: inconclusive. Keep the previous status and don't update the "last checked" date, rather than marking a working port offline.
- Read the body, not just the status code. If the visible text is short (game pages are mostly JavaScript; notices are only a few lines) and reads like a takedown notice, flag it.
// 200 isn't enough: taken-down ports often keep serving a short notice page.
const TAKEDOWN =
/\b(taken (the game |it |this )?(down|offline)|(game|site|project) (is|has been) (taken down|removed|shut down|discontinued)|offline for now|no longer (available|online|playable)|due to an? (DMCA|copyright|legal)|DMCA (request|notice|takedown|complaint)|cease and desist|received a takedown)\b/i;
const SHORT_PAGE = 4000; // visible characters
const m = text.length < SHORT_PAGE && text.match(TAKEDOWN);
- Expect a specific string. Each entry can declare a string that must appear on the page (usually the game's own name). If a recycled domain redirects elsewhere, the string is missing and the entry gets flagged.
- A human confirms. The script only flags. The "taken down" status is set manually after reading the page and finding a source; the script never overrides it. Regex is good at noticing, but it isn't evidence.
The short-page threshold matters more than it looks. Some real game pages mention "DMCA" in a footer or FAQ. Restricting matches to short pages avoids these false positives—because a working WebAssembly game page has very little visible text before the game loads.
WebAssembly (Wasm) and the visible-text problem of browser games: Wasm is a portable binary instruction format; game engines (such as Unity, Godot, or C/C++ projects compiled with Emscripten) can export to a browser-executable module and render with WebGL. The HTML skeleton of such pages is often just a few <canvas> and script-loading tags; the actual game graphics and text are drawn inside the canvas and are invisible to the DOM. This is exactly why the "short-page threshold" logic in this article holds: a working Wasm game has very little visible text before it loads, so if DMCA-style wording appears on a short page, the odds of a hit are high; conversely, a content-rich ordinary page that mentions DMCA is exempt from false positives because it exceeds 4000 characters.
Open data and scope notes
The tracker lives at portedgames.com/takedowns, and the same row data is available as JSON at portedgames.com/takedowns.json (including rights holder, takedown method, release and takedown dates, days online, and source). Free to use with attribution. If you know of a takedown I missed, or spot an error, there's a contact address on the page.
One note on scope: the directory never hosts or links to game files, ROMs, or ISOs—only to each project's own page; ports voluntarily shut down by their authors are not counted in the takedown statistics.
I run PortedGames myself, so please view my framing with that in mind; every row links to its evidence so you can verify it yourself.
One-line Summary
PortedGames tracked 12 AI game port takedowns, exposing the failure of status-code detection and how to address it.
Paragraph Summary
The author runs PortedGames, a game port directory, and built a takedown tracker after users' focus shifted from "can I still play this?" to "which ones got taken down." Since September 11, it has logged 12 projects taken down after copyright claims: Activision accounts for 5, including 4 Call of Duty browser remakes removed the same day; Mojang/Microsoft 2; Rockstar, SEGA, SNK, and others 1 each. The key finding: 8 of the 12 never produced a public GitHub DMCA notice, because projects were hosted on their own domains or platforms like Railway and Cloudflare Pages. Simple HTTP status checks are unreliable—takedown notice pages often return 200 and keep their original title, recycled domains redirect to unrelated sites, and Cloudflare challenge pages masquerade as online. The author therefore reworked the checker: read the body, restrict to short pages, verify a specific string, and finally require human confirmation. Project survival ranged from a few hours to 321 days, with a median of 29 days.
Related articles

Why Does the Tesla Roadster Need to Fly? A Deep Dive into Musk's Wild Demo
Tesla's Roadster launch showed wall-climbing, upside-down driving, and flying stunts—but The Vergecast notes the demo car may lack a battery, the Rocket version is invite-only and not street-legal, and the website terms don't guarantee delivery. After nine years of delays, why does this car still need to exist?

AI Is Not a Replacement: Human-AI Collaboration Through the Lens of Factory Root Cause Analysis
Starting from factory root cause analysis, this article explains how AI accelerates evidence chain construction rather than replacing human experts, exploring the pragmatic implementation logic and business value of 'AI supporting people rather than replacing them.'

AI Agent Decision Auditing: Building an Evidence Chain in Regulated Workflows
Starting from a Reddit discussion, this article analyzes three core issues in AI agent decision auditing within regulated workflows: what fields audit records should contain, how to handle feedback latency for erroneous decisions, and how to continuously calibrate LLM judge consistency with human judgment.