Files
chameleon/README.md
T
adminandClaude Fable 5 2ec4e147b9 Update docs: acoustic taunt/whistle is implemented
Taunt sound plays on every radar ping (sweep + self-ping) on all
clients as positional 3D audio; move it from open questions to done
in GAME_DESIGN.md and note it in the README match-loop bullet.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 19:14:24 +02:00

4.6 KiB

Chameleon

A Unity online hide-and-seek game inspired by Meccha Chameleon — not a 1:1 clone. Hiders paint their character directly on its 3D mesh to blend into the environment, while hunters try to find them. Pure online PvP with an extended traversal kit (run, jump, slope-slide, wall-climb, mantle).

Status: playable multiplayer prototype. The core match loop works end-to-end (host/join, roles, phases, shooting/conversion, radar, result screen); what's left is mostly map design, audio and polish.

Features so far

  • Seamless mesh painting straight onto the character's 3D mesh (GPU + CPU path, edge-dilation against seams, spherical brush with backface rejection, spray, networked undo). Paintable PBR channels: albedo, metallic/smoothness and height (relief normal + parallax shading).
  • Paint HUD — HSV color picker, eyedropper (picks albedo/metallic/smoothness/ emission from the environment, incl. custom shaders), brush/channel toggles, camo sliders (brightness/saturation) and a painting library (save/load/delete named paintings, replicated to other players).
  • Pose system — poses (curl up, lie down, T-pose, …) to match object silhouettes, chosen via a radial menu with hotkeys, with per-pose fall animations and rendered pose icons.
  • Multiplayer (Netcode for GameObjects + UGS Sessions) — session browser with host/join, lobby + match scenes, owner-authoritative movement sync, networked painting with late-join replay, role prefab variants (hunter/hider).
  • Match loop (server-authoritative): hide → seek → resolve → back to lobby. Two modes: Classic (found hiders spectate) and Conversion (found hiders become hunters). Hunter FP shooting, radar sweeps + self-ping taunt (E) with positional taunt sound, X-ray reveal (anti-cheese via concealment measurement), conversion statues, match HUD and result screen with win evaluation.
  • Third-person character controller — camera-relative WASD, jump, sprint, slope-sliding, acceleration/deceleration, wall-climb (walls & ceilings, volumetric probes) and mantle/top-out.
  • Cinemachine orbit camera — mouse look, interpolated zoom, smoothed orbit, collision deocclusion, plus HeroCutout occlusion fade (soft cone cutout).
  • Game modes (extensible state machine, switched via the overview menu): Player Control, Paint, First Person (hunter) and Free Cam (spectator).
  • Rendering — URP Deferred+ with HTrace WSGI global illumination (auto-disabled in the lobby), custom URP ports of the ArchViz shaders, shell-based fur that tints with the painting, skybox environment updater.
  • Editor tooling — Poly Haven importer (textures and models: catalog browser, PBR download, auto URP/Lit material build incl. roughness→smoothness repack + ARM fallback), ambientCG importer (shared web-asset framework), concealment collider baker (VHACD), normal-map generator and more.

Controls

Input Action
WASD Move (camera-relative)
Shift (hold) Sprint
Space Jump
Mouse Look / orbit camera
Mouse wheel Zoom
Left click Paint (Paint mode) / shoot (hunter)
Right click (hold) Orbit camera in Paint mode
E Self-ping / taunt (hider, seek phase)
Esc / Tab Overview menu (mode switching, pause, session browser, match results)

Getting started

  1. Open the project with Unity 6000.3.11f1 (Unity 6).
  2. Open Assets/Scenes/Main.unity (boot scene — Lobby/match scenes load additively).
  3. Press Play, host a session in the lobby (or join one), step into the start-match trigger to begin a round.

Cinemachine, the Input System, Netcode for GameObjects and UGS packages are resolved automatically via the package manifest.

Project layout

  • Assets/Scripts/Components/ — gameplay components (MeshPainter, controllers, concealment, HeroCutout, fur, radar, UI/Paint HUD).
  • Assets/Scripts/Network/ — multiplayer (MatchManager, session browser, paint/animation sync, match HUD/result screen).
  • Assets/Scripts/GameMode/ — the mode state machine (Player Control, Paint, First Person, Free Cam).
  • Assets/Scripts/Editor/ — editor tools (Poly Haven / ambientCG importers, shared WebAssets framework, bakers, generators).
  • Assets/Scenes/ — Main (boot), Lobby, The Room, Test Map, Pose Icon.
  • Docs/GAME_DESIGN.md — design notes and the full feature checklist (German).

Roadmap

See Docs/GAME_DESIGN.md for the detailed checklist. In short: map/level design depth, audio (SFX/music), art direction & lighting polish, and multiplayer robustness (reconnect, host migration).