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를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Zoo Garden: a cozy 3D browser adventure with local multiplayer and a GitHub Pages solo edition
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
A browser adventure built against the gameplay of Zoo Pet, with independently authored Three.js code, original Blender assets, and local multiplayer services. The expanded build includes the reference crop, equipment, creature, progression and crafting catalogs, along with full-size worlds and their activities.
Use Node.js 24, selected by .node-version, for the server, tests, and Render deployment.README 전문 보기 ↗A browser adventure built against the gameplay of Zoo Pet, with independently authored Three.js code, original Blender assets, and local multiplayer services. The expanded build includes the reference crop, equipment, creature, progression and crafting catalogs, along with full-size worlds and their activities.
Use Node.js 24, selected by .node-version, for the server, tests, and Render deployment.
npm install
npm run dev
This starts the browser development server at http://127.0.0.1:5173 and the account/world service at port 8787. If either port is already occupied by a running copy, stop that copy before starting another.
npm run build # type-check, production assets, generated offline cache
npm start # production game plus account/world service on port 8787
npm test # gameplay, worlds, assets, save migration and real server tests
npm run dev:client and npm run preview run only the browser front end. Keep the account service running separately if using those commands for multiplayer.
Besides the farm and the worlds, six extras are one tap or one short walk away. Daily limits are generous on purpose (this is a solo-friendly edition) and the day turns at midnight Vietnam time.
Open Play together to create an account on the current game server or sign in. Accounts use usernames and passwords; no email is required. Offline and online adventures have separate saves. Signing out restores the offline adventure you left behind.
Online players share the wild areas, enemies, boss attacks and world events. Gardens are private; friends can visit and see planting or decorating updates. Use a party code for a private shared world. One browser tab per account is active at a time.
For two-player testing on one computer, use separate browser profiles or a normal window and a private window, and create different accounts. This build was also exercised with separate localhost hostnames.
For local development without DATABASE_URL, the server stores accounts in data/accounts.json, excluded from source control. Back up that file to retain local account progress. With DATABASE_URL, account credentials, profiles, save revisions, friends, and friend requests persist in PostgreSQL. The Render configuration requires Neon and fails startup if the database is missing or unavailable. Browser offline saves remain in that browser's local storage. Online actions use revisions and immutable request IDs; durable receipts make retries safe without uploading a client save. Identical retries return the original action result with the current canonical profile.
Sign-ins persist across restarts: PostgreSQL deployments save hashed session tokens in the database; local file storage uses DATA_DIR/sessions.json. A restart clears parties, chat history, and active rooms. Run one server instance because connected players and rooms are held in memory.
The default server listens only on this computer. render.yaml and the Render + Neon deployment guide prepare one free HTTPS service for the complete game, account API, and WebSockets. Automatic code deploys are off, and the database connection is supplied privately in Render. The configuration does not create or deploy any remote resources by itself. When deployed, players open the new Render address; GitHub Pages remains the separate solo edition.
Copy .env.example to .env for local database settings. npm run db:check checks the PostgreSQL connection; npm run db:import -- --path "C:\path\accounts.json" explicitly imports a legacy account file into an empty PostgreSQL destination. See the deployment guide before importing. Never put database credentials in a VITE_* variable.
The Delvers' Vault online: the server watches who stands in the circle, runs the 10-second countdown, forms the party from everyone there (up to five), moves it into a private room and relays the run (server/dungeon-lobby.mjs). The run counter and every room's rewards are shared rules (dungeonStart, dungeonClaim in src/actions.ts) applied by the server with its own clock and dice; a member may start only the run the lobby put them in and claim only rooms the run's host reported cleared, in order and at most one every 15 seconds. The arena itself is simulated by the first member's browser (creatures and guardian skills) and relayed to the others, whose hits go back to it; damage taken in the vault stays local to the run and does not change the server's health. If the host leaves, the next member's browser takes over.
The server calculates online spending, rewards, combat damage, health and cooldowns. An elected browser host still supplies bounded enemy movement and visual snapshots; movement and fishing telemetry are not proof of honest human input. This remains cooperative multiplayer, not a complete anti-cheat guarantee.
The interface supports English and Vietnamese with original artwork. Choose a language on the welcome screen or in Settings; the preference stays on this device and does not change saved progress or player names. Vietnamese catalog terms follow the reference game where available, with translations for this game’s additional features. Each panel has its own colour band and icon, messages appear as short pills near the bottom of the screen, and on phones panels open as bottom sheets. The backpack and chest are larger than the reference's (100 and 120 slots against 20 and 40), and rewards that cannot fit in a full backpack go to the chest, so migration and reward collection do not discard possessions. These are intentional improvements. Physical-phone performance, browser installation behavior and long-session balancing still benefit from user play-testing.
Settings → Graphics offers Auto, Sharp, Balanced and Battery saver. Auto starts phones and desktops on Sharp, with pixel ratio capped at 2. On mobile, farm animals move more calmly and update at 20 Hz; fish and other simple creatures keep their existing animation and detail. If play stays under 36 fps, mobile Auto first removes shadows and reduces decorative grass/flowers while preserving resolution, outlines and the sharp crop atlas. Resolution is reduced only if that is insufficient, and quality recovers when there is headroom. Explicit manual choices remain fixed; old mobile Auto learned levels reset once so the optimized renderer can measure performance again. Choices are remembered per device. Settings → Render resolution (Auto, Sharp, Balanced, Battery saver) caps the pixels drawn per screen pixel: Auto keeps phones at 1.25 like the reference and leaves desktops to the Graphics level. Other Settings: language, full screen, install as app, music and effects volume sliders with vibration, AI neighbours, joystick and its side, PC keyboard layout, difficulty, new-bed placement, camera distance and keep backpack on defeat. Models use flat colours, scenery is merged or instanced, and effects are pooled. See mobile rendering measurements for the tested savings and tradeoffs.
The dense worlds stay light: repeated scenery is drawn as instances in 64 m tiles, models whose parts differ only in colour are merged with baked vertex colours, small ground cover and distant creatures cast no shadows, collision and paths use a grid index, and each planet's scenery file downloads only when that planet is first reached. In the village on a phone-sized view this brought a frame from 344 WebGL draw calls to 219.
Play the solo browser edition. The full source is available in the public GitHub repository.
npm run build:pages
This creates only the playable static files in dist/, with the /cute_game/ path prefix. It includes farming, fishing, combat, all worlds and progression, original runtime models, browser saves and offline installation. The Pages interface clearly identifies solo play. Accounts, friends, chat and shared worlds require the Node/WebSocket service and remain available with npm run dev, npm start, or the prepared Render + Neon deployment; GitHub Pages cannot run that service.
The Pages workflow runs all tests before publishing dist/ from main. Source files, editable Blender artwork and account data are not included in the website artifact. VITE_BASE_PATH can override the deployment directory; the normal build remains rooted at /.
Browser saves are local to each website address. The published site starts a separate adventure from the localhost game.
src/content.ts, model.ts, progression.ts: catalog, game rules, persistence and rewards.src/combat.ts, fishing.ts, gameplay-controls.ts, gestures.ts: timed gameplay and input.src/world.ts, enemy-types.ts, boss-patterns.ts, environments.ts, lava-weather.ts: world simulation and encounters.src/environment-art.ts, decorations-art.ts, combat-view.ts, assets.ts: original rendering and model integration.src/main.ts, online.ts, platform.ts: interface, shared play and browser installation.src/fx.ts, sfx.ts, fishing-view.ts, graphics.ts: pooled hit effects and floating numbers, synthesized sounds, in-world fishing, and adaptive graphics quality.server/: HTTP/WebSocket account service, file/PostgreSQL persistence, database utilities, development launcher and offline build generator.tests/: deterministic simulations and live HTTP/WebSocket integration tests.art/: headless Blender generators for the props, scenery, crops, fish, the explorer and every wearable item, weapon, pet, disguise and material icon, plus their contract, previews, Unity FBX exports and the asset guide (art/ASSET_GUIDE.md).src/style.css: interface design tokens and all HUD, panel, message and label styles.docs/reference-update-plan-2026-10-02.md: current update implementation, bilingual reference Help, deliberate differences and remaining hosted/device acceptance.PARITY_REVIEW.md: earlier coverage and evaluation history.The earlier ANALYSIS.md, REVIEW.md, EVALUATION.md and MULTIPLAYER_ASSESSMENT.md record the initial evaluation and engine decision. Their old feature-gap lists are superseded by this README and the current parity review. Unity was assessed for browser multiplayer; this implementation keeps the existing web engine.