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 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证A browser-first sci-fi RPG centered on skill grinds, crafting, and server-authoritative loops. Built with agentic coding harnesses (Claude Code, Codex, Hermes) under human architectural review. Pre-alpha.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Status: Playable pre-alpha — active development. RuneSpace is a browser-first, low-fi sci-fi RPG with a real early-game vertical slice: server-authoritative Play orchestration, Travel/Scavenging, Ferrite Shale Mining, Refining, Welding/Cargo Hold repair, Inventory/Equipment, locations, Power Cell/Power Annex, NPC interactions, the Holo Hollow settlement with Local Places, character Credits, and NPC merchant Trade, missions, and skill progression. Still early and under active development.查看完整 README ↗Status: Playable pre-alpha — active development. RuneSpace is a browser-first, low-fi sci-fi RPG with a real early-game vertical slice: server-authoritative Play orchestration, Travel/Scavenging, Ferrite Shale Mining, Refining, Welding/Cargo Hold repair, Inventory/Equipment, locations, Power Cell/Power Annex, NPC interactions, the Holo Hollow settlement with Local Places, character Credits, and NPC merchant Trade, missions, and skill progression. Still early and under active development.
RuneSpace is a planned browser-first, mobile-friendly, low-fi sci-fi RPG inspired by the progression, quests, social texture, and long-term grind of old-school MMORPGs and action-point games. It is not a RuneScape clone.
The architecture is a modular monolith with a server-authoritative game model: the browser is never the trusted source of progression. Gameplay outcomes are resolved by server-side domain logic and persisted server-side. The generic transaction/locking/action-cursor/lazy-resolution lifecycle lives in server/action-resolution.ts; server/play.ts owns composed activity resolution and shared Play state assembly (server/play-state.ts) and the client shell (features/play/). Activity resolvers (Mining, Refining, Travel, Welding) own only their activity; feature-specific UI stays feature-owned.
| Concern | Choice |
|---|---|
| Language | TypeScript (strict) |
| Framework | Next.js (App Router) + React |
| Styling | Tailwind CSS |
| Database | PostgreSQL |
| ORM | Drizzle ORM |
| Validation | Zod |
| Unit tests | Vitest |
| Browser tests | Playwright |
| Package mgr | pnpm (committed lockfile) |
| Deploy | Docker / Coolify |
| Minigames | Phaser (later, isolated boundaries) |
Pinned versions: Node 22, pnpm 9.15.4 (see package.json engines/packageManager).
Prerequisites: Node 22, pnpm 9.15.4, Docker (for Postgres), and optionally Playwright browsers.
# 1. Install dependencies (frozen lockfile)
pnpm install --frozen-lockfile
# 2. Start PostgreSQL (writes to a docker volume)
docker compose up -d
# 3. Configure environment
cp .env.example .env
# (default DATABASE_URL matches docker-compose.yml)
# 4. Apply committed migrations
pnpm drizzle-kit migrate
# 5. Run the dev server
pnpm dev
# open http://localhost:3000
To install Playwright browsers for local e2e tests:
pnpm exec playwright install --with-deps
See .env.example. Validated at startup by server/env.ts (Zod).
| Var | Required | Notes |
|---|---|---|
NODE_ENV | no | development | test | production |
DATABASE_URL | yes | PostgreSQL connection string for the pg Pool |
| Command | Purpose |
|---|---|
pnpm dev | Start the dev server |
pnpm build | Production build |
pnpm start | Start the production server |
pnpm lint | ESLint (next lint) |
pnpm format | Prettier write |
pnpm format:check | Prettier check |
pnpm typecheck | tsc --noEmit (strict) |
pnpm test | Vitest unit tests |
pnpm test:integration | Disposable PostgreSQL integration tests |
pnpm test:e2e | Playwright browser tests (local) |
pnpm test (Vitest, pure domain/schema logic — fast, no DOM).pnpm test:integration (Vitest against a fresh disposable PostgreSQL database; migrations and cleanup are automatic).pnpm test:e2e (Playwright, focused journeys, using a disposable database). CI runs the 70-test canonical browser-journey selection across 13 behavioral specs via pnpm test:e2e:canonical; smoke, ownership, design-system, and QC Studio specs remain outside that merge-gate selection. See docs/testing-strategy.md for the sharded runner and opt-in screenshot lane.docs/testing-strategy.md.nixpacks.toml retains the package build and start behavior while asserting the committed Drizzle migration assets are available to the runtime.docs/deployment-database.md.docker-compose.yml provides a local PostgreSQL for development. The app itself is run with pnpm dev on the host (the container only covers the DB).Read these before contributing:
AGENTS.md — rules for coding agents (scope, SSOT, extraction, testing, PR workflow).docs/architecture.md — modular monolith, server-authoritative model, boundaries, dependency direction, and Play orchestration.docs/game-rules.md — current design direction (implemented vs. approved vs. future).docs/gameplay-foundations.md — server-authoritative timing, progression, inventory, and action contracts.docs/missions.md — declarative mission framework and authoring contract (single-phase, server-authoritative).docs/component-boundaries.md — extraction rules.docs/art-cookbook.md — art direction, generation workflow, asset preparation, and visual QA.docs/testing-strategy.md — risk-based testing.docs/development-workflow.md — one issue/branch/PR workflow and CI.docs/analytics.md — PostHog product analytics: event contract, privacy gates, Coolify configuration, and dashboard setup (issue #413).RuneSpace is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). See LICENSE.
docs/admin-console.md