Underground 2 Revived
Play Need for Speed: Underground 2 (2004) in Chrome and Firefox with WebGPU graphics, Web Audio, up to 120 fps widescreen, controller support, free roam and Online races with friends. Fan project, not
翻译准备中
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
A genuine, block-by-block TypeScript port of Shattered Pixel Dungeon
(SPD), built on top of the mwg game
framework and running entirely client-side in the browser.
This is an independent, unofficial port. It is not affiliated with or endorsed by Evan
Debenham, SPD's author, who does not accept code contributions or suggestions of any kind
for the original project (see CLAUDE.md's "Upstream contributions" section) - this repo
exists precisely so that work here has somewhere to live on its own.查看完整 README ↗A genuine, block-by-block TypeScript port of Shattered Pixel Dungeon
(SPD), built on top of the mwg game
framework and running entirely client-side in the browser.
This is an independent, unofficial port. It is not affiliated with or endorsed by Evan
Debenham, SPD's author, who does not accept code contributions or suggestions of any kind
for the original project (see CLAUDE.md's "Upstream contributions" section) - this repo
exists precisely so that work here has somewhere to live on its own.
spd-on-mwg-<version>-standalone.html - the whole game in one file. Works from an
email attachment or a USB stick; open it directly, no server needed.spd-on-mwg-<version>-debug.apk - Android, debug-signed, sideloadable as-is.spd-on-mwg-<version>-desktop.zip - Windows (.NET WebView2 host): unzip and run
MwgDesktopHost.exe.v0.2 - the first version this project calls complete: a hero can take any class from
sewer to Yog and win, on real Java numbers. Every deviation from the real Java behavior -
simplification, deliberate divergence, or outright gap - is tracked honestly in
PORT_COVERAGE.md, and outstanding work is tracked in
ROADMAP.md. Broadly:
PORT_COVERAGE.md for
the specifics.ROADMAP.md.npm install
npm run dev # local dev server
npm run build # produces dist/index.html, openable directly via file:// - no server needed
npx tsc --noEmit # type-check
npm run build # full build
npm run test:simulation # combat/turn/buff simulation suite
npm run test:items # item workflow suite
npm run test:lua # MWG Lua AI compatibility suite
npm run test:mwg # MWG SaveSystem/facade compatibility suite
npm run verify # all of the above, including the build
Browser verification (visual, in-game behavior) is a separate manual step - type-checking
and a clean build are not evidence a feature actually works. See CLAUDE.md's "Browser
verification workflow" section for the details.
GPL-3.0-or-later, matching SPD - see LICENSE. This port legitimately reuses
SPD's real Java source values and formulas (translated into TypeScript, never copied
verbatim as Java text) and SPD's real art assets (copied byte-for-byte into src/assets/,
with provenance noted in src/images.ts). The mwg framework it's built on is a separate,
generic, MPL-2.0 project maintained independently - see CLAUDE.md's licensing-boundary
section for how the two are kept apart.
The Java asset registry can be audited and extracted with the repository tool below. It reports referenced assets missing from this port and can copy missing binary files explicitly; it never embeds binary asset data in TypeScript.
node tools/extract-spd-assets.mjs --spd-root <path-to-spd-checkout> --check
node tools/extract-spd-assets.mjs --spd-root <path-to-spd-checkout> --copy
node tools/extract-spd-assets.mjs --spd-root <path-to-spd-checkout> --check --strict
CLAUDE.md - working rules for this repo: the licensing boundary, the
mwg dependency, verification requirements, and the browser-testing workflow.PORT_COVERAGE.md - the authoritative, per-system record of what's
ported, simplified, or not ported, and why.ROADMAP.md - outstanding work, organized by system.RELEASING.md - release targets and how to cut one.SIMULATION_ARCHITECTURE.md - how the sprite-free
combat/turn simulation layer is structured and tested.MWG_EXTRACTION.md - notes on the framework/consumer split and the
local-checkout integration tools, relevant only when developing mwg itself alongside
this port.