{
  "schemaVersion": "1.0",
  "generatedFrom": "src/catalog.js",
  "generatedAt": "2026-10-13",
  "games": [
    {
      "id": "freedoom-phase-1",
      "name": "Freedoom: Phase 1",
      "description": "A complete, libre Doom-compatible campaign designed as an independent base game. Four episodes make it the natural starting point for classic mapsets.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": null,
      "runtimeType": "Bundled IWAD",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "external-project-or-local-import",
      "license": "BSD-style free content · attribution retained",
      "status": "Free / bundled",
      "studio": "Freedoom project",
      "year": "v0.13.0",
      "artwork": "assets/screenshots/freedoom-phase1.png",
      "projectUrl": null,
      "catalogState": "READY / LOCAL",
      "source": "assets/freedoom1.wad"
    },
    {
      "id": "freedoom-phase-2",
      "name": "Freedoom: Phase 2",
      "description": "A single 32-level campaign built for the Doom II ruleset, including the expanded monster roster and super shotgun used by many community mapsets.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": null,
      "runtimeType": "Bundled IWAD",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "external-project-or-local-import",
      "license": "BSD-style free content · attribution retained",
      "status": "Free / bundled",
      "studio": "Freedoom project",
      "year": "v0.13.0",
      "artwork": "assets/screenshots/freedoom-phase2.png",
      "projectUrl": null,
      "catalogState": "READY / LOCAL",
      "source": "assets/freedoom2.wad"
    },
    {
      "id": "freedm",
      "name": "FreeDM: Arena Archive",
      "description": "A libre 32-map deathmatch archive. PLAYCHIVE can launch the levels for local exploration, but it does not add bots, online play or matchmaking.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": null,
      "runtimeType": "Bundled IWAD",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "external-project-or-local-import",
      "license": "BSD-style free content · attribution retained",
      "status": "Free / bundled · solo exploration",
      "studio": "Freedoom project",
      "year": "v0.13.0",
      "artwork": "assets/screenshots/freedm.png",
      "projectUrl": null,
      "catalogState": "READY / LOCAL",
      "source": "assets/freedm.wad"
    },
    {
      "id": "hacx-1-2",
      "name": "Hacx: Twitch ’n Kill",
      "description": "A cyberpunk 21-level Doom-engine campaign. This runtime layers the bundled Hacx archive over its bundled Doom II-compatible base, under Hacx’s royalty-free, non-commercial distribution terms.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": null,
      "runtimeType": "Bundled IWAD + PWAD",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "external-project-or-local-import",
      "license": "Custom royalty-free license · no commercial use · credit retained",
      "status": "Royalty-free / non-commercial bundle",
      "studio": "Banjo Software / Hacx project",
      "year": "v1.2 · 2010",
      "artwork": "assets/screenshots/hacx-gameplay.jpg",
      "projectUrl": null,
      "catalogState": "READY / LOCAL",
      "source": [
        "assets/freedoom2.wad",
        "assets/hacx.wad"
      ]
    },
    {
      "id": "blasphemer",
      "name": "Blasphemer",
      "description": "A complete free dark-fantasy shooter running through Chocolate Heretic in its own WebAssembly module. It bundles the Blasphemer IWAD, starts with no player upload or external game download, keeps configuration and saves in the browser, and provides fullscreen plus PSP-style touch controls.",
      "genre": "Fantasy shooter",
      "playable": true,
      "runtimeUrl": "blasphemer.html",
      "probeUrl": null,
      "publicUrl": "blasphemer.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL-2.0-or-later engine and game data · notices retained",
      "status": "Free / bundled",
      "studio": "Blasphemer project / Chocolate Heretic",
      "year": "v0.1.8 WebAssembly runtime",
      "artwork": "assets/screenshots/blasphemer-runtime.png",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "cdogs-sdl",
      "name": "C-Dogs SDL",
      "description": "A top-down retro action game running in its own C-Dogs SDL WebAssembly module. It includes the libre upstream campaign and dogfight data, has PSP-style mobile controls and never shares Doom’s WAD loader or game loop.",
      "genre": "Action",
      "playable": true,
      "runtimeUrl": "cdogs.html",
      "probeUrl": null,
      "publicUrl": "cdogs.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL-2.0 engine · free upstream game data · attribution retained",
      "status": "Free / bundled",
      "studio": "C-Dogs SDL project",
      "year": "v2.4.0",
      "artwork": "assets/screenshots/cdogs-sdl-browser.png",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "gnu-freedink",
      "name": "GNU FreeDink",
      "description": "A complete libre 2D action-adventure running in its own GNU FreeDink WebAssembly module. It includes official FreeDink game data, keeps saves inside the browser and has PSP-style touch controls without sharing Doom’s WAD loader or game loop.",
      "genre": "Exploration",
      "playable": true,
      "runtimeUrl": "freedink.html",
      "probeUrl": null,
      "publicUrl": "freedink.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPLv3-or-later engine · official redistributable game data · notices retained",
      "status": "Free / bundled",
      "studio": "GNU FreeDink project",
      "year": "v109.6",
      "artwork": "assets/screenshots/freedink-runtime.png",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "opentyrian2000",
      "name": "OpenTyrian2000",
      "description": "An arcade vertical shooter running in its own OpenTyrian2000 WebAssembly module. It bundles the project-documented freeware Tyrian 2000 data, persists saves inside the browser and provides PSP-style touch controls without sharing Doom’s WAD loader or game loop.",
      "genre": "Action",
      "playable": true,
      "runtimeUrl": "opentyrian.html",
      "probeUrl": null,
      "publicUrl": "opentyrian.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPLv2-or-later engine · project-documented freeware data · notices retained",
      "status": "Free / bundled",
      "studio": "OpenTyrian2000 project",
      "year": "Tyrian 2000 freeware release",
      "artwork": "assets/screenshots/opentyrian-runtime.png",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "librequake",
      "name": "LibreQuake",
      "description": "A first-person action campaign using the classic Quake engine in its own Qwasm WebAssembly module. It bundles independent LibreQuake Lite data, keeps saves in the browser and has PSP-style touch controls without using original Quake assets or sharing Doom’s WAD loader and game loop.",
      "genre": "Action",
      "playable": true,
      "runtimeUrl": "librequake.html",
      "probeUrl": null,
      "publicUrl": "librequake.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL engine lineage · LibreQuake free game data · notices retained",
      "status": "Free / bundled",
      "studio": "LibreQuake project / Qwasm",
      "year": "v0.09-beta Lite",
      "artwork": "assets/screenshots/librequake-runtime.png",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "openttd",
      "name": "OpenTTD",
      "description": "A complete transport-strategy game in its own OpenTTD WebAssembly runtime. It bundles the free OpenGFX graphics, OpenSFX effects and OpenMSX music sets, keeps saves in the browser, includes PSP-style touch controls and never asks the player to upload Transport Tycoon Deluxe files.",
      "genre": "Strategy",
      "playable": true,
      "runtimeUrl": "openttd.html",
      "probeUrl": null,
      "publicUrl": "openttd.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL-2.0 engine + OpenGFX/OpenMSX · OpenSFX attribution notice retained",
      "status": "Free / bundled",
      "studio": "OpenTTD project / OpenGFX / OpenSFX / OpenMSX",
      "year": "v15.3 browser runtime",
      "artwork": "assets/screenshots/openttd-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "freerct",
      "name": "FreeRCT",
      "description": "A complete clean-room theme-park strategy game in its own FreeRCT WebAssembly runtime. It bundles its own libre graphics, rides, scenery and scenarios, keeps saves in the browser and offers PSP-style touch controls without asking players to upload RollerCoaster Tycoon or OpenRCT2 files.",
      "genre": "Strategy",
      "playable": true,
      "runtimeUrl": "freerct.html",
      "probeUrl": null,
      "publicUrl": "freerct.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL-2.0-only engine and clean-room game data · notices retained",
      "status": "Free / bundled",
      "studio": "FreeRCT project",
      "year": "WebAssembly runtime",
      "artwork": "assets/screenshots/freerct-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "neverball",
      "name": "Neverball",
      "description": "A complete 3D physics-puzzle game in its own Neverball WebAssembly runtime. It bundles the libre base game and Easy level set, keeps saves in the browser, includes PSP-style touch controls and never asks the player to upload data or download a campaign.",
      "genre": "Experimental",
      "playable": true,
      "runtimeUrl": "neverball.html",
      "probeUrl": null,
      "publicUrl": "neverball.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPLv2-or-later engine and base data · notices retained",
      "status": "Free / bundled",
      "studio": "Neverball project",
      "year": "WebAssembly runtime",
      "artwork": "assets/screenshots/neverball-runtime.png",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "armawebtron",
      "name": "Armawebtron",
      "description": "A complete existing open-source 3D lightcycle arena game, bundled from the GPL Armawebtron browser project. It launches immediately into the official Classic local preset with three AI rivals, ten rounds, neon trails, browser-local configuration, PSP touch controls, gamepad support and fullscreen—no account, upload or network server required.",
      "genre": "Arcade",
      "playable": true,
      "runtimeUrl": "armawebtron.html",
      "probeUrl": null,
      "publicUrl": "armawebtron.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL-2.0-or-later code and retained upstream source / assets",
      "status": "Free / bundled",
      "studio": "Glen Harpring / Armawebtron contributors",
      "year": "Bundled browser build",
      "artwork": "assets/screenshots/armawebtron-runtime.webp",
      "projectUrl": null,
      "catalogState": "UPSTREAM OPEN-SOURCE RUNTIME",
      "source": null
    },
    {
      "id": "tuxracer-js",
      "name": "TuxRacer.js",
      "description": "A complete existing open-source 3D downhill racer, bundled from the TuxRacer.js project with its penguin, snow courses, music and sound. Race for the finish, collect herring and switch among twenty local courses with keyboard, the game’s touch joystick, PLAYCHIVE PSP controls, gamepad support and fullscreen—no upload, account or external game data required.",
      "genre": "Racing",
      "playable": true,
      "runtimeUrl": "tuxracer.html",
      "probeUrl": null,
      "publicUrl": "tuxracer.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL-2.0-only code and retained upstream credits / source",
      "status": "Free / bundled",
      "studio": "Jan Ebbe / Extreme Tux Racer & Tux Racer contributors",
      "year": "Bundled browser build",
      "artwork": "assets/screenshots/tuxracer-runtime.webp",
      "projectUrl": null,
      "catalogState": "UPSTREAM OPEN-SOURCE RUNTIME",
      "source": null
    },
    {
      "id": "starter-kit-racing",
      "name": "Starter Kit Racing",
      "description": "A complete existing Three.js driving game from mrdoob’s Starter Kit Racing. Accelerate a physical truck around a fully local track with real glTF road, forest, tent and vehicle meshes, lighting, smoke trails and lap timing—fully local with keyboard, PSP touch controls, gamepad support and fullscreen, without an account, upload, server or remote playable content.",
      "genre": "3D Racing",
      "playable": true,
      "runtimeUrl": "starter-kit-racing.html",
      "probeUrl": null,
      "publicUrl": "starter-kit-racing.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "MIT upstream source · Kenney CC0 glTF models · notices retained",
      "status": "Free / bundled",
      "studio": "mrdoob / Kenney",
      "year": "Pinned Three.js runtime",
      "artwork": "assets/screenshots/starter-kit-racing-runtime.webp",
      "projectUrl": null,
      "catalogState": "UPSTREAM OPEN-SOURCE RUNTIME",
      "source": null
    },
    {
      "id": "astray",
      "name": "Astray",
      "description": "A complete existing WebGL physics-maze game, bundled from the Astray project. Roll a steel ball through dark three-dimensional brick labyrinths, build momentum around corners and reach an exit that generates the next, larger maze—fully local with keyboard, PSP touch controls, gamepad support and fullscreen, without an account, upload, server or external game data.",
      "genre": "Physics Maze",
      "playable": true,
      "runtimeUrl": "astray.html",
      "probeUrl": null,
      "publicUrl": "astray.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "Unlicense / public-domain upstream source · notices retained",
      "status": "Free / bundled",
      "studio": "wwwtyro / Astray contributors",
      "year": "Pinned WebGL runtime",
      "artwork": "assets/screenshots/astray-runtime.webp",
      "projectUrl": null,
      "catalogState": "UPSTREAM OPEN-SOURCE RUNTIME",
      "source": null
    },
    {
      "id": "neon-rift",
      "name": "Neon Rift",
      "description": "An original low-poly 3D night racer built for PLAYCHIVE. Thread three escalating rifts, collect signal cores, protect your boost and clear the route with keyboard, PSP-style touch controls, gamepad support and fullscreen—no upload, account or external game data required.",
      "genre": "Racing",
      "playable": true,
      "runtimeUrl": "neon-rift.html",
      "probeUrl": null,
      "publicUrl": "neon-rift.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "PLAYCHIVE original runtime · non-commercial platform deployment",
      "status": "Free / bundled",
      "studio": "PLAYCHIVE",
      "year": "Original browser runtime",
      "artwork": "assets/screenshots/neon-rift-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "obsidian-relay",
      "name": "Obsidian Relay",
      "description": "An original 3D survival-exploration game built through PLAYCHIVE’s OpenResident WebGL2/WebAssembly renderer path. Recover two signal cells, restore a stranded deep-sea relay and reach the emergency bulkhead while hostile echoes pursue you—fully bundled with keyboard, PSP-style touch controls, gamepad support and fullscreen.",
      "genre": "Survival",
      "playable": true,
      "runtimeUrl": "shadow-station.html",
      "probeUrl": null,
      "publicUrl": "shadow-station.html",
      "runtimeType": "Bundled OpenResident WebGL2/WASM runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "PLAYCHIVE original gameplay and assets · OpenResident adapter source retained under BSD-2-Clause · non-commercial platform deployment",
      "status": "Free / bundled",
      "studio": "PLAYCHIVE",
      "year": "Original browser runtime",
      "artwork": "assets/screenshots/obsidian-relay-runtime.webp",
      "projectUrl": null,
      "catalogState": "ORIGINAL 3D RUNTIME",
      "source": null
    },
    {
      "id": "hexgl",
      "name": "HexGL",
      "description": "A fast, futuristic 3D WebGL racer in its own fully local runtime. It bundles the Cityscape course, ship, texture, geometry and audio assets, launches straight into a race without uploads or external game data, and includes fullscreen, gamepad and PSP-style touch controls.",
      "genre": "Racing",
      "playable": true,
      "runtimeUrl": "hexgl.html",
      "probeUrl": null,
      "publicUrl": "hexgl.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "MIT root code · retained CC BY-NC / CC BY asset notices",
      "status": "Free / bundled · non-commercial package",
      "studio": "BKcore / Thibaut Despoulain",
      "year": "Pinned WebGL runtime",
      "artwork": "assets/screenshots/hexgl-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "hextris",
      "name": "Hextris",
      "description": "A fast arcade-puzzle game running as a complete local HTML5 runtime. Rotate the hexagonal ring, group matching colors and survive accelerating block waves from first load with keyboard, gamepad or PSP-style touch controls — no upload, account, advertising service or external game data required.",
      "genre": "Arcade Puzzle",
      "playable": true,
      "runtimeUrl": "hextris.html",
      "probeUrl": null,
      "publicUrl": "hextris.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL-3.0-or-later · source and notices retained",
      "status": "Free / bundled",
      "studio": "Logan Engstrom, Garrett Finucane, Noah Moroze & Michael Yang",
      "year": "Pinned HTML5 runtime",
      "artwork": "assets/screenshots/hextris-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "rocksndiamonds",
      "name": "Rocks'n'Diamonds",
      "description": "A complete rock-and-gem action puzzle compiled from the official Rocks’n’Diamonds source. Dig, collect gems and evade hazards through the bundled classic level sets from first load with keyboard, gamepad or PSP-style touch controls — no upload, original game data or network service required.",
      "genre": "Rock & Gem Action Puzzle",
      "playable": true,
      "runtimeUrl": "rocksndiamonds.html",
      "probeUrl": null,
      "publicUrl": "rocksndiamonds.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL-2.0-or-later engine and included game data · notices retained",
      "status": "Free / bundled",
      "studio": "Artsoft Entertainment / Holger Schemel",
      "year": "v4.4.2.4 WebAssembly runtime",
      "artwork": "assets/screenshots/rocksndiamonds-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "beats-into-shapes",
      "name": "Beats into Shapes",
      "description": "A full rhythm-forge game running from the official Godot Web release in its own local WebGL 2 runtime. Hit left, centre and right lanes to forge shapes in time with four bundled original tracks; browser-local progress, fullscreen, gamepad and PSP-style touch controls are ready without an upload, account or remote playable data.",
      "genre": "Rhythm",
      "playable": true,
      "runtimeUrl": "beats-into-shapes.html",
      "probeUrl": null,
      "publicUrl": "beats-into-shapes.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL-3.0-or-later game · MIT isolation worker · notices retained",
      "status": "Free / bundled",
      "studio": "CoCoSol & Edmond · Youth Hacking 4 Freedom 2024",
      "year": "Godot Web runtime",
      "artwork": "assets/screenshots/beats-into-shapes-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "2048",
      "name": "2048",
      "description": "The original 2048 number puzzle bundled as a local HTML5 game. Slide tiles with keyboard, swipe, gamepad or PSP-style controls; its best score stays in the browser and no account, upload or online score service is required.",
      "genre": "Arcade Puzzle",
      "playable": true,
      "runtimeUrl": "2048.html",
      "probeUrl": null,
      "publicUrl": "2048.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "MIT · source and notices retained",
      "status": "Free / bundled",
      "studio": "Gabriele Cirulli & contributors",
      "year": "Original HTML5 runtime",
      "artwork": "assets/screenshots/2048-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "javascript-tetris",
      "name": "JavaScript Tetris",
      "description": "A compact canvas version of the block-stacking classic that begins on launch. Rotate, shift and drop pieces using keyboard, gamepad or PSP-style touch controls, with no ROM, account, upload or external playable data.",
      "genre": "Arcade Puzzle",
      "playable": true,
      "runtimeUrl": "javascript-tetris.html",
      "probeUrl": null,
      "publicUrl": "javascript-tetris.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "MIT · source and notices retained",
      "status": "Free / bundled",
      "studio": "Jake Gordon & Richard Birkby",
      "year": "Pinned HTML5 Canvas runtime",
      "artwork": "assets/screenshots/javascript-tetris-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "adarkroom",
      "name": "A Dark Room",
      "description": "A minimalist survival adventure that unfolds from its first fire into a wider world. Story, sound, translations and saves are local to the browser, with direct touch interaction, fullscreen and no account, upload or remote game data.",
      "genre": "Exploration",
      "playable": true,
      "runtimeUrl": "adarkroom.html",
      "probeUrl": null,
      "publicUrl": "adarkroom.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "MPL-2.0 · source and notices retained",
      "status": "Free / bundled",
      "studio": "Michael Townsend & contributors",
      "year": "v1.4 browser runtime",
      "artwork": "assets/screenshots/adarkroom-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "digger-remastered",
      "name": "Digger Remastered",
      "description": "A fully local SDL2/WebAssembly build of the remastered 1983 digging-action classic. Collect emeralds, manage falling gold bags and escape Hobbins with keyboard, gamepad or PSP-style touch controls—without an upload or external game service.",
      "genre": "Action",
      "playable": true,
      "runtimeUrl": "digger.html",
      "probeUrl": null,
      "publicUrl": "digger.html",
      "runtimeType": "Bundled independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "Historical mixed upstream notices retained",
      "status": "Free / bundled",
      "studio": "Digger Remastered contributors",
      "year": "SDL2 / WebAssembly runtime",
      "artwork": "assets/screenshots/digger-runtime.webp",
      "projectUrl": null,
      "catalogState": "INDEPENDENT RUNTIME",
      "source": null
    },
    {
      "id": "ancient-aliens",
      "name": "Ancient Aliens",
      "description": "A colorful 32-map synthwave megawad with custom music and a Boom-compatible ruleset. Use a compatible source port such as Woof! or DSDA-Doom; its files are not bundled here.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://www.moddb.com/games/doom-ii/addons/ancient-aliens",
      "runtimeType": "Doom II PWAD · Boom",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Project download only · not bundled by PLAYCHIVE",
      "status": "External engine required",
      "studio": "skillsaw & collaborators",
      "year": "v1.2 · 2016",
      "artwork": "assets/screenshots/ancient-aliens-gameplay.jpg",
      "projectUrl": "https://www.moddb.com/games/doom-ii/addons/ancient-aliens",
      "catalogState": "ARCHIVE / REFERENCE",
      "source": null
    },
    {
      "id": "eviternity",
      "name": "Eviternity",
      "description": "A six-chapter Doom II megawad built around distinct visual worlds and Boom features. Open its release with a Boom-capable port; the current browser runtime does not claim that compatibility.",
      "genre": "Exploration",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://www.moddb.com/mods/eviternity",
      "runtimeType": "Doom II PWAD · Boom",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Project download only · not bundled by PLAYCHIVE",
      "status": "External engine required",
      "studio": "Dragonfly & team",
      "year": "2019",
      "artwork": "assets/screenshots/eviternity-gameplay.jpg",
      "projectUrl": "https://www.moddb.com/mods/eviternity",
      "catalogState": "ARCHIVE / REFERENCE",
      "source": null
    },
    {
      "id": "back-to-saturn-x-e1",
      "name": "Back to Saturn X: E1",
      "description": "A polished two-WAD science-fiction episode with custom art and music. The project release supplies both PWAD files; add them locally to a compatible Doom II base archive.",
      "genre": "Exploration",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://www.moddb.com/mods/back-to-saturn-x",
      "runtimeType": "Doom II PWAD pair",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Project download only · not bundled by PLAYCHIVE",
      "status": "Download project WADs locally",
      "studio": "BTSX team",
      "year": "2012–2017",
      "artwork": "assets/screenshots/back-to-saturn-x-gameplay.jpg",
      "projectUrl": "https://www.moddb.com/mods/back-to-saturn-x",
      "catalogState": "OFFICIAL DOWNLOAD",
      "source": null
    },
    {
      "id": "adventures-of-square",
      "name": "The Adventures of Square",
      "description": "A colorful standalone total conversion with its own modified GZDoom package, music, voice work and controller support. PLAYCHIVE links to the official project rather than repackaging its files.",
      "genre": "Experimental",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "http://adventuresofsquare.com/",
      "runtimeType": "Standalone GZDoom total conversion",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Official package only · not bundled by PLAYCHIVE",
      "status": "External engine required",
      "studio": "BigBrik Games",
      "year": "Secant Edition",
      "artwork": "assets/screenshots/adventures-of-square-gameplay.png",
      "projectUrl": "http://adventuresofsquare.com/",
      "catalogState": "ARCHIVE / REFERENCE",
      "source": null
    },
    {
      "id": "plutonia",
      "name": "The Plutonia Experiment",
      "description": "A demanding Final Doom campaign known for compressed combat spaces and high-pressure encounters. PLAYCHIVE can launch a lawfully owned copy selected from your device, but does not distribute this IWAD.",
      "genre": "Horror",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": null,
      "runtimeType": "Commercial IWAD",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Not bundled or hosted by PLAYCHIVE",
      "status": "Requires your legal IWAD",
      "studio": "Casali brothers / Final Doom",
      "year": "1996",
      "artwork": "assets/screenshots/plutonia-gateway-of-hell.webp",
      "projectUrl": null,
      "catalogState": "ARCHIVE / REFERENCE",
      "source": null
    },
    {
      "id": "tnt-evilution",
      "name": "TNT: Evilution",
      "description": "A Final Doom campaign with industrial spaces, larger progression routes and authored set pieces. Attach a legally acquired TNT IWAD from your device to play it here.",
      "genre": "Exploration",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": null,
      "runtimeType": "Commercial IWAD",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Not bundled or hosted by PLAYCHIVE",
      "status": "Requires your legal IWAD",
      "studio": "TeamTNT / Final Doom",
      "year": "1996",
      "artwork": "assets/screenshots/tnt-steel-works.webp",
      "projectUrl": null,
      "catalogState": "ARCHIVE / REFERENCE",
      "source": null
    },
    {
      "id": "community-slot",
      "name": "Community WAD shelf",
      "description": "A local route for compatible mapsets and experiments. Attach one base IWAD and up to three PWADs; files stay in this browser session and are never uploaded by PLAYCHIVE.",
      "genre": "Experimental",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": null,
      "runtimeType": "IWAD + PWAD",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Only archives you have the right to use",
      "status": "Attach a compatible WAD",
      "studio": "License-reviewed import",
      "year": "Your archive",
      "artwork": "assets/screenshots/freedoom-phase2.png",
      "projectUrl": null,
      "catalogState": "ARCHIVE / REFERENCE",
      "source": null
    },
    {
      "id": "ecwolf",
      "name": "ECWolf",
      "description": "A Wolfenstein-compatible ECWolf WebAssembly engine with PSP-style controls, browser-local storage and stable fullscreen. PLAYCHIVE ships only the engine resources: select a complete lawful compatible game-data set locally to launch it, with no original game files uploaded or bundled.",
      "genre": "Action",
      "playable": true,
      "runtimeUrl": "ecwolf.html",
      "probeUrl": null,
      "publicUrl": "ecwolf.html",
      "runtimeType": "Local-data independent runtime",
      "controls": [
        "keyboard",
        "touch",
        "gamepad",
        "fullscreen"
      ],
      "launchMethod": "direct-link",
      "license": "GPL engine resources · original game data not distributed",
      "status": "Engine bundled / data local",
      "studio": "ECWolf project / ECWolf JS",
      "year": "Emscripten runtime",
      "artwork": "assets/screenshots/ecwolf-runtime.png",
      "projectUrl": null,
      "catalogState": "LOCAL DATA RUNTIME",
      "source": null
    },
    {
      "id": "openresident-research",
      "name": "OpenResident",
      "description": "An open C engine studied for a future browser port. The upstream source has no Resident Evil game data and currently targets X11/GLX or Win32/WGL, so PLAYCHIVE does not package, emulate or launch it as a game.",
      "genre": "Horror",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": "openresident.html",
      "publicUrl": "openresident.html",
      "runtimeType": "Resident Evil engine",
      "controls": [],
      "launchMethod": "technical-probe",
      "license": "BSD 2-Clause engine code · no game data bundled",
      "status": "WebAssembly study · not playable",
      "studio": "XProger",
      "year": "Engine research",
      "artwork": "assets/screenshots/openresident-gameplay.webp",
      "projectUrl": "https://github.com/XProger/OpenResident",
      "catalogState": "ARCHIVE / REFERENCE",
      "source": null
    },
    {
      "id": "supertuxkart",
      "name": "SuperTuxKart",
      "description": "A polished 3D open-source kart racer with the bright arcade energy of late-1990s console racers. Download the complete game from its official release page for cups, time trials, battle modes and local multiplayer; PLAYCHIVE links to the official build rather than repackaging a desktop game.",
      "genre": "Racing",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://supertuxkart.net/Download",
      "runtimeType": "Full-game desktop download",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "GPLv3-or-later game and bundled open assets",
      "status": "Free full game / download required",
      "studio": "SuperTuxKart team",
      "year": "v1.5 stable release",
      "artwork": "assets/screenshots/supertuxkart-runtime.jpg",
      "projectUrl": "https://supertuxkart.net/Download",
      "catalogState": "OFFICIAL DOWNLOAD",
      "source": null
    },
    {
      "id": "vibeslops",
      "name": "Vibeslops / Claude of Duty",
      "description": "A browser-playable Three.js FPS hosted by its original project. PLAYCHIVE links out only: the repository identifies MIT code but does not relicense the Call of Duty-derived map, models, audio or branding.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://vibeslops.luckeysystems.com/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "MIT code; third-party Call of Duty-derived content not relicensed",
      "status": "External link · rights review",
      "studio": "Luckey Faraday / Claude of Duty contributors",
      "year": "Browser Three.js build",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://vibeslops.luckeysystems.com/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "ovz-global-flashpoint",
      "name": "Contemporary Conflict: Global Flashpoint",
      "description": "A browser FPS alpha that downloads its content from the project service. It is linked for discovery only; PLAYCHIVE does not mirror the client, maps or Modern Warfare-derived assets.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://ovz-game-production.up.railway.app/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "No redistribution license verified; third-party MW2-derived content",
      "status": "External link · no local mirror",
      "studio": "OVZ project",
      "year": "Alpha browser build",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://ovz-game-production.up.railway.app/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "surfd-external",
      "name": "Surfd",
      "description": "A Counter-Strike-style browser surf platform with time trials, checkpoints and community servers. PLAYCHIVE links to the live project without copying its converted maps or stock resources.",
      "genre": "Racing",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://surfd.net/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Project/map redistribution rights not verified",
      "status": "External link · maps not mirrored",
      "studio": "Surfd contributors",
      "year": "Browser WebGL project",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://surfd.net/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "webxash-half-life",
      "name": "webXash / Half-Life browser ports",
      "description": "Browser GoldSrc builds exposing Half-Life-compatible demos and user-provided archives. PLAYCHIVE links out and does not redistribute Valve game data or the hosted ZIP archives.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://x8bitrain.github.io/webXash/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Engine GPL family; Half-Life content remains proprietary",
      "status": "External link · lawful files required",
      "studio": "x8BitRain / Xash3D FWGS ecosystem",
      "year": "Emscripten browser builds",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://x8bitrain.github.io/webXash/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "pixelsuft-half-life",
      "name": "PixelSutf Half-Life web build",
      "description": "A second Xash-based Half-Life browser project. Its hosted archives and game data are not copied into PLAYCHIVE; open the original page and supply only files you are legally entitled to use.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://pixelsuft.github.io/hl/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Repository license and game-data provenance not verified",
      "status": "External link · no asset mirror",
      "studio": "PixelSutf contributors",
      "year": "Xash browser build",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://pixelsuft.github.io/hl/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "halo-web-port",
      "name": "Halo: Combat Evolved web port",
      "description": "A browser port that reads legally obtained Halo game data locally. PLAYCHIVE links to the maintained build but does not host an ISO, maps, binaries or Halo assets.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://mitchellhynes.com/halo",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "CC0 source lineage; Halo game data remains Microsoft/Bungie property",
      "status": "External link · user data required",
      "studio": "Mitchell Hynes / halo-ce-universal contributors",
      "year": "WebAssembly + WebGL 2",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://mitchellhynes.com/halo",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "halo-ce-mobile",
      "name": "Halo CE Mobile",
      "description": "An unofficial touch-friendly Halo CE browser/mobile project that imports a user-owned disc image. PLAYCHIVE does not package its game data or claim affiliation with Microsoft or Bungie.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://hcemobile.com/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "No complete redistribution grant verified; Halo content remains proprietary",
      "status": "External link · user data required",
      "studio": "Halo CE Mobile contributors",
      "year": "Browser / PWA build",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://hcemobile.com/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "quake-browser-port",
      "name": "Quake browser port",
      "description": "A no-install Quake browser experience hosted by Pieter.com. PLAYCHIVE links to the original service and does not copy its game data, integration code or multiplayer infrastructure.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://q1.pieter.com/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Engine/data rights vary; original assets not mirrored",
      "status": "External link · hosted runtime",
      "studio": "Pieter.com / FTEQW ecosystem",
      "year": "Hosted browser multiplayer",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://q1.pieter.com/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "quake2-browser-port",
      "name": "Quake II browser port",
      "description": "A hosted Quake II browser port. It is discoverable from PLAYCHIVE as an external experiment only; no proprietary data or hosted integration is repackaged here.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://q2.pieter.com/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Engine/data rights vary; original assets not mirrored",
      "status": "External link · hosted runtime",
      "studio": "Pieter.com / FTEQW ecosystem",
      "year": "Hosted browser multiplayer",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://q2.pieter.com/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "quake3-browser-port",
      "name": "Quake III browser port",
      "description": "A hosted Quake III Arena browser experience using a mixed open-source/proprietary web stack. PLAYCHIVE links out without copying PK3 files or multiplayer services.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://q3.pieter.com/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Engine and integration/data rights vary; assets not mirrored",
      "status": "External link · hosted runtime",
      "studio": "Pieter.com / Q3JS ecosystem",
      "year": "Hosted browser multiplayer",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://q3.pieter.com/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "rtcw-browser-port",
      "name": "Return to Castle Wolfenstein web port",
      "description": "A hosted RTCW browser build that downloads a large game-data set. PLAYCHIVE links only to the original host and does not bundle the game data or claim an offline equivalent.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://rtcw.pieter.com/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Open-source engine; original RTCW data remains proprietary",
      "status": "External link · game data not mirrored",
      "studio": "Pieter.com / iortcw ecosystem",
      "year": "Hosted WebAssembly build",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://rtcw.pieter.com/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "urban-terror-browser-port",
      "name": "Urban Terror browser port",
      "description": "The supplied `ut.pieter.com` URL is Urban Terror, not Unreal Tournament. PLAYCHIVE labels it accurately and links out without copying its game data or servers.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://ut.pieter.com/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Mixed engine/game terms; content not mirrored",
      "status": "External link · not Unreal Tournament",
      "studio": "Pieter.com / ioUrbanTerror ecosystem",
      "year": "Hosted WebAssembly build",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://ut.pieter.com/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "gta-vice-city-wasm",
      "name": "GTA: Vice City WASM port",
      "description": "A local-first browser client for Vice City that requires the player’s own legitimate game archive. PLAYCHIVE links to the original project and does not host or mirror Rockstar data.",
      "genre": "Exploration",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://joncodeofficial.github.io/gta-vice-city-wasm/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "MIT client code; Rockstar game data not licensed",
      "status": "External link · user data required",
      "studio": "JonCodeOfficial / re3-reVC contributors",
      "year": "Emscripten browser client",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://joncodeofficial.github.io/gta-vice-city-wasm/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "pes6-web",
      "name": "PES 6 Web Online Port",
      "description": "A browser port of the PSP version of Pro Evolution Soccer 6 with optional saves and online rooms. PLAYCHIVE links out only and does not mirror its game package or assets.",
      "genre": "Sports",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://pes6.optijuegos.net/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Game-data redistribution rights not verified",
      "status": "External link · Konami data not mirrored",
      "studio": "OptiJuegos contributors",
      "year": "WebGL2 / WebAssembly build",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://pes6.optijuegos.net/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "skate3-web-engine",
      "name": "Skate 3 Rust Engine web project",
      "description": "An open engine experiment for Skate 3 whose original code is GPL-3.0-only, while the game data remains EA property. PLAYCHIVE links to the project without copying converted assets.",
      "genre": "Sports",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://skate.aaddpp.lol/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "GPL-3.0-only engine code; EA content not licensed",
      "status": "External link · EA data not mirrored",
      "studio": "SK8-ENGINE contributors",
      "year": "Rust / Bevy work in progress",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://skate.aaddpp.lol/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "diablo-web",
      "name": "Diablo Web",
      "description": "A browser Diablo port with a limited shareware start and optional user-provided `DIABDAT.MPQ` for the full game. PLAYCHIVE links to the original page and does not copy MPQ data.",
      "genre": "Exploration",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://johnimril.github.io/diablo_web/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "Repository license unknown; Blizzard content not bundled by PLAYCHIVE",
      "status": "External link · full data local",
      "studio": "JohnImril / DiabloWeb contributors",
      "year": "React + WebAssembly",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://johnimril.github.io/diablo_web/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "webwars",
      "name": "WebWars",
      "description": "A browser Hedgewars port with hotseat play and an experimental online gateway. PLAYCHIVE links to the original project but does not claim a local or offline multiplayer build.",
      "genre": "Strategy",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://webwars.link/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "README states GPL v2; asset and deployment audit pending",
      "status": "External link · live host status varies",
      "studio": "APM Labs / Hedgewars contributors",
      "year": "WebAssembly port",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://webwars.link/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "openlara",
      "name": "OpenLara",
      "description": "A BSD-licensed Tomb Raider engine recreation with an official WebGL demo. PLAYCHIVE links to the original project, but does not bundle Tomb Raider levels, textures, audio or other commercial game data.",
      "genre": "Action",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://xproger.info/projects/OpenLara/",
      "runtimeType": "External web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "BSD-2-Clause engine · Tomb Raider data not distributed",
      "status": "External link · original data required",
      "studio": "XProger / OpenLara contributors",
      "year": "BSD-2-Clause WebGL engine",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://xproger.info/projects/OpenLara/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "corsixth",
      "name": "CorsixTH",
      "description": "An engine recreation of Theme Hospital with MIT-style source licensing. The official project requires original or demo game data and has no verified official browser build, so PLAYCHIVE links to the project without copying Bullfrog assets.",
      "genre": "Strategy",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://github.com/CorsixTH/CorsixTH",
      "runtimeType": "External engine project",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "MIT-style engine code · Theme Hospital assets not distributed",
      "status": "External link · original data required",
      "studio": "CorsixTH contributors",
      "year": "MIT-style engine recreation",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://github.com/CorsixTH/CorsixTH",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "freeciv-web",
      "name": "Freeciv-web",
      "description": "A Civilization-style browser strategy project with HTML5 and WebGL clients. Its documented deployment needs a server stack and supporting services, so PLAYCHIVE links externally instead of pretending it is a self-contained offline runtime.",
      "genre": "Strategy",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://freeciv.github.io/freeciv-web/",
      "runtimeType": "External browser strategy",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "AGPLv3 web client + GPL server lineage · notices required",
      "status": "External link · multi-service deployment",
      "studio": "Freeciv contributors",
      "year": "AGPLv3 / GPL browser stack",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://freeciv.github.io/freeciv-web/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "endless-sky",
      "name": "Endless Sky",
      "description": "A large Elite-like open-source space-trading game with a documented asset inventory. A browser deployment exists outside the upstream native build; PLAYCHIVE links to the original project until a pinned, reproducible WebAssembly build and full notices are verified.",
      "genre": "Exploration",
      "playable": false,
      "runtimeUrl": null,
      "probeUrl": null,
      "publicUrl": "https://endless-sky.github.io/",
      "runtimeType": "External desktop/web experiment",
      "controls": [],
      "launchMethod": "external-project-or-local-import",
      "license": "GPLv3 code + documented mixed CC/public-domain assets",
      "status": "External link · WASM build not pinned",
      "studio": "Endless Sky contributors",
      "year": "GPLv3 + mixed open assets",
      "artwork": "assets/screenshots/external-experiments.webp",
      "projectUrl": "https://endless-sky.github.io/",
      "catalogState": "EXTERNAL LINK / RIGHTS REVIEW",
      "source": null
    },
    {
      "id": "pacman-mit",
      "name": "Pacman",
      "description": "A locally bundled HTML5 Pacman-style arcade game with twelve levels, pathfinding ghosts and no dependency on the original demo host. The upstream code and MIT notice are retained inside the runtime.",
      "genre": "Arcade",
      "playable": true,
      "runtimeUrl": "pacman.html",
      "probeUrl": null,
      "publicUrl": "https://github.com/mumuy/pacman",
      "runtimeType": "Bundled HTML5 runtime",
      "controls": [
        "keyboard",
        "touch",
        "fullscreen"
      ],
      "launchMethod": "local-runtime",
      "license": "MIT · attribution retained",
      "status": "READY / LOCAL · MIT bundle",
      "studio": "Haole Zheng / mumuy",
      "year": "MIT HTML5 runtime",
      "artwork": "assets/screenshots/pacman-gameplay.webp",
      "projectUrl": "https://github.com/mumuy/pacman",
      "catalogState": "READY / LOCAL",
      "source": "runtimes/pacman"
    }
  ]
}
