{
  "schemaVersion": 1,
  "datasetVersion": "55720de7ac1b41b5",
  "generatedAt": "2026-10-17T10:50:00.802Z",
  "projects": [
    {
      "id": "nzp-web",
      "gameSlug": "cod-zombies",
      "name": "Nazi Zombies: Portable",
      "summary": "Team-hosted WebGL build of the Quake-based World at War Zombies fan demake.",
      "kind": "fan-demake",
      "sourceUrl": "https://github.com/nzp-team/nzportable",
      "launchUrl": "https://nzp.gay/",
      "allowedHosts": [
        "nzp.gay"
      ],
      "expectedMarker": "NZ: Portable",
      "assetRequirement": "bundled",
      "assetNote": "NZ:P game packages included; no retail CoD upload",
      "launchLabel": "Open NZ:P WebGL",
      "sourceNote": "Upstream hub links the WebGL host; launcher source lists game.pk3 and progs.pk3. Not an official Call of Duty release.",
      "sourceCheckedAt": "2026-10-17T10:44:40Z",
      "reviewState": "candidate",
      "browserVerifiedAt": null
    },
    {
      "id": "webxash",
      "gameSlug": "half-life",
      "name": "WebXash",
      "summary": "Half-Life / CS 1.6 frontend for Xash3D FWGS WebAssembly; owned retail files required for the full campaign.",
      "kind": "engine-port",
      "sourceUrl": "https://github.com/x8BitRain/webXash",
      "launchUrl": "https://x8bitrain.github.io/webXash/",
      "allowedHosts": [
        "x8bitrain.github.io"
      ],
      "expectedMarker": "WebXash",
      "assetRequirement": "own-files",
      "assetNote": "Retail: complete valve folder; separate demo choices",
      "launchLabel": "Open WebXash",
      "sourceNote": "Upstream documents game-root folder or ZIP loading, not a lone pak0.pak. Launcher provides demo choices; those were not played.",
      "sourceCheckedAt": "2026-10-17T10:44:40Z",
      "reviewState": "candidate",
      "browserVerifiedAt": null
    },
    {
      "id": "quakejs-web",
      "gameSlug": "quake-3",
      "name": "QuakeJS",
      "summary": "ioquake3 adapted through Emscripten with WebSocket networking; public demo access and gameplay unverified.",
      "kind": "engine-port",
      "sourceUrl": "https://github.com/inolen/quakejs",
      "launchUrl": "https://www.quakejs.com/",
      "allowedHosts": [
        "www.quakejs.com",
        "quakejs.com"
      ],
      "expectedMarker": "QuakeJS",
      "assetRequirement": "unknown",
      "assetNote": "Deployment content and public access unverified",
      "launchLabel": "Open QuakeJS",
      "sourceNote": "README documents quakejs.com, separate content serving and WebSocket-only web networking. HTTPS retrieval failed during research; no working public match or bundled-demo guarantee.",
      "sourceCheckedAt": "2026-10-17T10:44:40Z",
      "reviewState": "candidate",
      "browserVerifiedAt": null
    },
    {
      "id": "revcdos",
      "gameSlug": "gta-vice-city",
      "name": "revcDOS",
      "summary": "DOS.Zone reVC browser port requiring prepared data from an owned original Vice City PC copy.",
      "kind": "engine-port",
      "sourceUrl": "https://github.com/Carter54git/revcdos",
      "launchUrl": "https://dos.zone/revcdos/",
      "allowedHosts": [
        "dos.zone"
      ],
      "expectedMarker": "revcDOS",
      "assetRequirement": "own-files",
      "assetNote": "Own original PC data; convert with upstream tools",
      "launchLabel": "Open revcDOS",
      "sourceNote": "Current DOS.Zone page describes the own-files successor after the original hosted demo was removed. The linked repository documents WebAssembly runtime, original-data conversion and vc-assets selection. No verified browser playthrough.",
      "sourceCheckedAt": "2026-10-17T10:44:51Z",
      "reviewState": "candidate",
      "browserVerifiedAt": null
    },
    {
      "id": "wolf3d-web",
      "gameSlug": "wolfenstein",
      "name": "Wolf4SDL browser port",
      "summary": "Upstream-linked Emscripten adaptation of Wolf4SDL; deployed data edition and gameplay not yet verified.",
      "kind": "engine-port",
      "sourceUrl": "https://github.com/midzer/wolf4sdl",
      "launchUrl": "https://midzer.de/wasm/wolfenstein/",
      "allowedHosts": [
        "midzer.de"
      ],
      "expectedMarker": "Wolfenstein 3D",
      "assetRequirement": "unknown",
      "assetNote": "Hosted edition / file requirement not established",
      "launchLabel": "Open Browser Loader",
      "sourceNote": "midzer repository links the hosted loader. Wolf4SDL supports edition-specific retail and shareware data; exact deployed data set was not established. Independent project, not the official anniversary edition.",
      "sourceCheckedAt": "2026-10-17T10:44:40Z",
      "reviewState": "candidate",
      "browserVerifiedAt": null
    },
    {
      "id": "surf-web",
      "gameSlug": "cs-surf",
      "name": "surf",
      "summary": "Independent Three.js browser surf game with Source-style movement and original / community courses.",
      "kind": "standalone-mechanics",
      "sourceUrl": "https://github.com/neomorrison/surf",
      "launchUrl": "https://neomorrison.github.io/surf/",
      "allowedHosts": [
        "neomorrison.github.io"
      ],
      "expectedMarker": "CS surf courses",
      "assetRequirement": "bundled",
      "assetNote": "Supplied courses; no Counter-Strike installation",
      "launchLabel": "Open Surf",
      "sourceNote": "Author documents original courses and repacked community maps, with fixed-step Source-style movement. Not the complete Counter-Strike game.",
      "sourceCheckedAt": "2026-10-17T10:44:40Z",
      "reviewState": "candidate",
      "browserVerifiedAt": null
    },
    {
      "id": "netquake-web",
      "gameSlug": "quake",
      "name": "NetQuake.io",
      "summary": "Independent JavaScript port of Quake with WebGPU / WebGL2 rendering. Shareware Episode 1 is included; registered episodes and multiplayer require your own pak1.pak.",
      "kind": "engine-port",
      "sourceUrl": "https://gitlab.com/joe.lukacovic/netquake.io",
      "launchUrl": "https://www.netquake.io/singleplayer",
      "allowedHosts": [
        "www.netquake.io",
        "netquake.io"
      ],
      "expectedMarker": "NetQuake.io",
      "assetRequirement": "bundled",
      "assetNote": "Episode 1 included; own pak1.pak for full game",
      "launchLabel": "Play Shareware",
      "sourceNote": "Upstream FAQ and package UI document bundled shareware pak0.pak for Episode 1, and user-provided registered pak1.pak for Episodes 2–4, multiplayer and custom maps. Current source uses WebGPU with a WebGL2 fallback. Engine licensing does not grant rights to game assets.",
      "sourceCheckedAt": "2026-10-17T10:32:17Z",
      "reviewState": "candidate",
      "browserVerifiedAt": null
    },
    {
      "id": "halo-combat-devolved",
      "gameSlug": "halo",
      "name": "Halo: Combat Devolved",
      "summary": "SofaSwordsman’s Game Boy Color fan demake has a browser version with two missions. A top-down handheld reinterpretation, distinct from the original Halo CE campaign.",
      "kind": "fan-demake",
      "sourceUrl": "https://sofaswordsman.itch.io/halo-combat-devolved",
      "launchUrl": "https://sofaswordsman.itch.io/halo-combat-devolved",
      "allowedHosts": [
        "sofaswordsman.itch.io"
      ],
      "expectedMarker": "Halo: Combat Devolved",
      "assetRequirement": "bundled",
      "assetNote": "Creator-hosted Game Boy Color fan demake with two missions; not the original Halo CE engine or campaign. Browser emulator has documented sound limitations.",
      "launchLabel": "Open Fan Demake",
      "sourceNote": "SofaSwordsman’s project page publishes an HTML version, downloadable ROMs, two-mission scope and browser controls.",
      "sourceCheckedAt": "2026-10-17T10:45:07Z",
      "reviewState": "candidate",
      "browserVerifiedAt": null
    },
    {
      "id": "diablo-web",
      "gameSlug": "diablo",
      "name": "DiabloWeb",
      "summary": "DiabloWeb brings the original action RPG to WebAssembly. Try bundled shareware, or select DIABDAT.MPQ from your owned Diablo installation for the full game.",
      "kind": "engine-port",
      "sourceUrl": "https://github.com/d07RiV/diabloweb",
      "launchUrl": "https://d07riv.github.io/diabloweb/",
      "allowedHosts": [
        "d07riv.github.io"
      ],
      "expectedMarker": "DIABLO",
      "assetRequirement": "bundled",
      "assetNote": "Bundled spawn.mpq shareware; full original Diablo requires your owned DIABDAT.MPQ. Hellfire support is not established.",
      "launchLabel": "Open DiabloWeb",
      "sourceNote": "Author’s README documents WebAssembly engine, hosted shareware and own DIABDAT.MPQ full-game mode; App.js documents importer and save management.",
      "sourceCheckedAt": "2026-10-17T10:45:07Z",
      "reviewState": "candidate",
      "browserVerifiedAt": null
    }
  ],
  "checks": [
    {
      "projectId": "netquake-web",
      "checkedAt": "2026-10-17T08:20:14.580Z",
      "outcome": "reachable",
      "httpStatus": 200,
      "finalUrl": "https://www.netquake.io/",
      "durationMs": 812,
      "notes": "HTTP 200 OK, expected marker verified"
    },
    {
      "projectId": "nzp-web",
      "checkedAt": "2026-10-17T08:20:13.771Z",
      "outcome": "reachable",
      "httpStatus": 200,
      "finalUrl": "https://nzp.gay/",
      "durationMs": 595,
      "notes": "HTTP 200 OK, expected marker verified"
    },
    {
      "projectId": "surf-web",
      "checkedAt": "2026-10-17T08:20:13.805Z",
      "outcome": "reachable",
      "httpStatus": 200,
      "finalUrl": "https://neomorrison.github.io/surf/",
      "durationMs": 626,
      "notes": "HTTP 200 OK, expected marker verified"
    },
    {
      "projectId": "webxash",
      "checkedAt": "2026-10-17T08:20:13.766Z",
      "outcome": "reachable",
      "httpStatus": 200,
      "finalUrl": "https://x8bitrain.github.io/webXash/",
      "durationMs": 591,
      "notes": "HTTP 200 OK, expected marker verified"
    }
  ],
  "history": [
    {
      "projectId": "webxash",
      "checkedAt": "2026-10-17T08:20:13.766Z",
      "outcome": "reachable",
      "httpStatus": 200,
      "finalUrl": "https://x8bitrain.github.io/webXash/",
      "durationMs": 591,
      "notes": "HTTP 200 OK, expected marker verified"
    },
    {
      "projectId": "nzp-web",
      "checkedAt": "2026-10-17T08:20:13.771Z",
      "outcome": "reachable",
      "httpStatus": 200,
      "finalUrl": "https://nzp.gay/",
      "durationMs": 595,
      "notes": "HTTP 200 OK, expected marker verified"
    },
    {
      "projectId": "surf-web",
      "checkedAt": "2026-10-17T08:20:13.805Z",
      "outcome": "reachable",
      "httpStatus": 200,
      "finalUrl": "https://neomorrison.github.io/surf/",
      "durationMs": 626,
      "notes": "HTTP 200 OK, expected marker verified"
    },
    {
      "projectId": "netquake-web",
      "checkedAt": "2026-10-17T08:20:14.580Z",
      "outcome": "reachable",
      "httpStatus": 200,
      "finalUrl": "https://www.netquake.io/",
      "durationMs": 812,
      "notes": "HTTP 200 OK, expected marker verified"
    }
  ]
}
