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 minimalist typing test — shooter mode, quotes, stats & achievements. One HTML file, no dependencies.
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
A minimalist typing test — inspired by the Bemonkey iOS app and built as a single self-contained index.html with no build step and no dependencies.檢視完整 README ↗A minimalist typing test — inspired by the Bemonkey iOS app and built as a single self-contained index.html with no build step and no dependencies.
Live demo: https://bralash.github.io/clack/
Time — 15 / 30 / 60 / 120 / 180 second runs.
Words — 10 / 25 / 50 / 100 word runs.
Quote — type real quotes (short / medium / long); the result screen credits the author.
Shoot — a ZType-style typing game: words drift toward your ship, type one to lock on and fire, destroy it before it reaches the base. Difficulties: calm / normal / frenzy. Pause with the ❚❚ button or Esc (Esc again quits).
freeze slows everything to a quarter speed for 10s (easing back at the end) · double doubles points for 10s ·
chain makes every kill zap the nearest word too, for 10s · tiny spawns only 3–4 letter words for 10s ·
rewind glides every word back up the field over 3s, with nothing new appearing · shield restores a life or blocks the next hit ·
boom stores a bomb you set off with Space to clear the screen.
Timed power-ups run side by side, and grabbing a running one adds time. Missing a power-up never costs a life.Daily challenge — the same 30 words for everyone each day, one attempt. Share your result as a Wordle-style grid (🟩 clean word, 🟨 mistake), post it to 𝕏, or save a result-card image. Consecutive days build a daily streak.
Time and words runs support punctuation, numbers and weak keys modifiers. Weak keys fills a run with words built from the keys you miss most — also one click away on the stats page. Words auto-advance the instant you finish them (right or wrong), so nothing interrupts your flow.
New to typing? Clack School teaches touch typing from zero across four units — get set (hand position), home row, top row and bottom row — 19 short lessons in all. Each lesson introduces one or two keys: meet them (glowing fingertip pads on an on-screen keyboard show which finger reaches where), drill the motion, type words made only from keys you know, then a scored check. Wrong keys don't advance and name the finger you used by mistake. Lessons unlock at 90% accuracy and earn up to three stars; the on-screen keyboard fades while you type accurately so you learn not to look. The get set lesson opens with a picture of both hands in the home position, and a hand position button brings it back during any lesson (the clock pauses while it's open). First-time visitors are asked whether they can already touch type.
Clack School is made for a full keyboard. Computers and tablets with a keyboard get it as is. Tablets on their on-screen keyboard can take the lessons too (the keyboard comes up, and lesson 0 explains home position on glass), with a note that a real keyboard is better. Phones are told the lessons don't apply to thumb typing and can share the link to a computer; they unlock as soon as a physical keyboard is detected. Phones, tablets (including iPads that present themselves as Macs) and desktops are told apart by the browser's own report, the OS in the user agent, then screen size.
clack-XXXXX-XXXXX-XXXXX-XXXXX) — the key to that
name. Enter it on another device to sign in there; stats, clacks, badges and store items sync between devices.
Names can change once every 60 days; names unused for six months are released.?c=<code>, with share / WhatsApp / copy). Friends type the exact same words against your ghost — your verified
run replayed keystroke by keystroke — with live race lanes showing who's ahead.brand/ships.png into brand/ships/ by server/scripts/cut-ships.mjs) and bullet trails
(Dotted, Laser, Plasma, Ember, Rainbow).It's a static page — just open the file:
open index.html # or double-click it
Or serve it locally:
python -m http.server 8000
then visit http://localhost:8000.
Because it's a single static file, you can host it for free:
main, Folder: / (root), and Save.https://<user>.github.io/clack/.All progress is stored locally in your browser via localStorage. Nothing is sent anywhere unless you join the leaderboard:
clack_activity — daily activity that drives the heatmapclack_stats — per-key accuracy, WPM history (tagged keyboard or phone), personal bests, achievements, modes tried, daily results, clacks and store itemsclack_theme — light / dark preferenceclack_mods — punctuation / numbers togglesclack_sound — sound & haptics on/offclack_online — your name, recovery code, sync state and any runs waiting to be posted (only after you join)Without a name, progress is per browser, per device. With one, it syncs through the API to every device you sign in on. Clearing your browser's site data resets this device; keep your recovery code to get your name back.
The leaderboard, names and sync run on a small Cloudflare Worker with a D1 (SQLite) database —
free at Clack's scale. See server/README.md for running it locally and deploying.
API_PROD in index.html points at the deployed Worker; set it to "" to switch the leaderboard off.
admin.html is a private admin page (stats, players, runs, moderation and an activity log) that
needs the Worker's admin key.
Vanilla HTML/CSS/JS in one file. Monospace type (JetBrains Mono via Google Fonts), Web Audio for sound, <canvas> for the shooter and the WPM chart, localStorage for persistence, CSS custom properties for theming.
MIT — see LICENSE.