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
翻译准备中
在真实铁路地图上掷骰子,购买真实城镇的企业,并回答你所站地点的问题。48个版图,2,261个城镇,四种语言。免费,无需账户,离线玩。
AI 翻译
Roll dice along real railway maps, buy businesses in real towns, and answer a question about the place you are standing in. 48 boards, 2,261 towns, four languages. Free, no account, plays offline.
游戏JavaScript · TypeScriptGitHub @t29mato在线运营者未确认
试用过了吗? 点一下就好,无需登录。
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证一款免费的浏览器桌面游戏:沿真实铁路地图掷骰子,在真实城镇购买企业,并回答所在地点的问题。拥有 48 张棋盘、2,261 个城镇、四种语言,可离线游戏。
AI 翻译
A free browser board game: roll dice along real railway maps, buy businesses in real towns, and answer a question about the place you are standing in. 48 boards, 2,261 towns, four languages, plays offline.
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
World Express — a rail fortune game
World Express is a free, browser-based multiplayer board game in which 2–4 players roll dice to travel a real railway map, buy businesses in real towns, answer geography quizzes, and race to a destination — playable in English, Spanish, French and Japanese across 48 boards covering six continents, the whole globe and the solar system.
▶ Play it in your browser — no install, no account, no ads.
A mirror also runs at grand-express.vercel.app; the link above is the canonical one.查看完整 README ↗World Express is a free, browser-based multiplayer board game in which 2–4 players roll dice to travel a real railway map, buy businesses in real towns, answer geography quizzes, and race to a destination — playable in English, Spanish, French and Japanese across 48 boards covering six continents, the whole globe and the solar system.
▶ Play it in your browser — no install, no account, no ads.
A mirror also runs at grand-express.vercel.app; the link above is the canonical one.
This game was built almost entirely by AI agents (Claude Code) under human direction — including the clean architecture design, TDD test suite, and CI setup. It is part of an experiment in AI-orchestrated software development.
Stack: Next.js (App Router) · React · TypeScript · Zustand · Vitest · Playwright · dependency-cruiser · deployed on Vercel.
Analytics: page views are counted with Google Analytics, which runs on both the GitHub Pages original and the Vercel mirror. Vercel Web Analytics also runs on the mirror, where it is available. Note that Google Analytics sets cookies and tracks across sites, and nothing here currently asks visitors for consent.
You and up to three others — human or CPU, all on one screen — ride the rails. Each turn you roll, move along real railway lines, and land on a square:
First to reach the destination gets paid. The traveler in last place picks up a spirit of misfortune, drawn from that region's own folklore, who rides along and makes everything worse until someone else falls behind.
Six continents (Europe, Asia, Africa, North America, South America, Oceania), a whole-globe board, the solar system, and country and regional boards including Japan, Bolivia, India, France, China, Brazil, Canada, Australia, Ukraine, Morocco, Ghana, Turkey, Korea, Malaysia, Indonesia, Bali, the Philippines, Ibaraki Prefecture and Japan's Hundred Famous Mountains.
2,261 towns and 3,949 quiz questions, each written in all four languages. Every town card carries something true and specific about that place — not a tourist blurb. Where the history is ugly, it says so plainly rather than skipping it.
Open https://t29mato.github.io/world-express/ on the phone, then:
It gets its own icon and opens without an address bar. It runs offline — boards you have opened before stay playable with no connection. When a new version is out, the game says so at the bottom of the screen and waits for you to press Update; it never swaps itself while you are mid-game.
npm install
npm run dev # http://localhost:3000
| Command | What it does |
|---|---|
npm run dev | Development server |
npm run build | Production build |
npm run test | Unit and component tests (Vitest) |
npm run test:e2e | End-to-end tests (Playwright; run npx playwright install chromium once first) |
npm run lint / npm run typecheck | ESLint / TypeScript |
npm run depcruise | Enforces the Clean Architecture dependency direction |
npm run check | Everything above, plus build and E2E — the same gate CI runs |
npm run shot -- japan overview | Screenshot a board from the running dev server |
node scripts/extract-legacy-content.mjs | Rebuild content JSON from the authoring sources |
src/
domain/ Game rules. Zero dependencies, zero framework.
application/ Use cases and port definitions.
infrastructure/ Content JSON, localStorage, audio, randomness.
presentation/ Zustand stores and React components.
app/ Next.js App Router — routing only.
scripts/countries/ Authoring sources for each board (cities, routes, quizzes, art).
docs/ Architecture notes, ADRs, testing strategy, authoring guides.
legacy/ The original single-file HTML version, frozen as the behavioural spec.
e2e/ Playwright tests.
The dependency direction is not a convention here — dependency-cruiser fails the build if an
inner layer reaches outward. 127 test files cover the domain rules, the content pipeline and
the rendered board.
Board content is generated: scripts/countries/<board>/ and scripts/content-overrides/ are the
sources, src/infrastructure/content/*.content.json is the output. Never edit the output.
Design notes and the migration history are in docs/ (written in Japanese).
The game began as one 2,964-line HTML file. Everything since — the Clean Architecture split, the DDD domain model, the TDD suite, the CI gate, the content pipeline, the 48 boards, the SVG artwork and the procedural music — was produced by AI agents working under human direction, often several agents in parallel on separate boards with a human and a coordinating agent reviewing what came back.
That review mattered. Agents shipped questions whose answers were already printed on the town card
the player had just read, called Sedna a dwarf planet, and dated Japan's record wind gust to the
wrong typhoon. Those were caught by measuring rather than by reading — the repository carries the
checking scripts (scripts/check-quiz.mjs, scripts/check-sea-routes.mjs,
scripts/check-city-backgrounds.mjs, scripts/check-quiz-risky.mjs) that exist because each of
those failures happened at least once.
No licence has been chosen. Default copyright applies: the source is published to be read, and no permission to reuse it is granted. If you want to use any of it, open an issue and ask.
Town descriptions, quiz questions and artwork were written for this project. Place names, railway facts and historical events are, of course, nobody's property.