BUG·EARLY ALPHAv0.8.0made with by Craig & Claude·ABOUT
CHANGELOG
v0.8.0 — Mar 26, 2026
All-new persistent Lobby system supporting 2-4 players with host migration, real-time color sync, and AI bot fill for empty slots
Draggable Party HUD overlay added with ready toggles, host controls, and a dedicated top-bar visibility toggle
Overhauled social system featuring a unified notification center, right-click context menus, and smart push invites
Added "Early Adopter" gold star icons and animated username gradients to chat, leaderboards, and lobbies for legacy players
Unified match end screen featuring series replay browsing to save and favorite specific rounds from an online set
Chat now strictly auto-hides during active gameplay, and browser autofill/spellcheck has been fully disabled on inputs
Complete keyboard and gamepad navigation parity across all UI screens, including horizontal selectors and B-button mapping
Massive CSS architecture rewrite, splitting a monolithic stylesheet into 30 modular files using native nesting and BEM naming
Built a comprehensive E2E DOM testing infrastructure from scratch, achieving 413 passing tests across all UI flows
v0.7.1 — Mar 25, 2026
Fix replay camera zooming to map center on old replays
Add forgiving defaults for old replay format compatibility
v0.7.0 — Mar 25, 2026
Full TypeScript migration — all 45 source files converted to strict TypeScript with shared type definitions and full annotations
119 automated tests across 8 test suites (utils, contentFilter, spatialGrid, replay, graphics, ai, onlineMatch, replayStore)
ESLint with typescript-eslint for static analysis, internal any usage reduced from 197 to 19
Online forfeit system — Escape no longer quits online matches; new pause overlay with Resume, Settings, and Forfeit buttons
Online round protection — Escape between rounds no longer returns to homescreen
Pregame info screen repositioned below match scoreboard
Fixed replay camera zoom bug — death zoom FOV no longer persists between background replays, added null guards for old replay data compatibility
Bike model preloading — home menu waits for GLTF model before starting demo
Fixed errant border on Line Ride Assist toggle in settings
Back button styling — increased icon padding and stroke thickness
Firebase cache headers — no-cache for index.html, immutable for hashed assets, 30-day cache for models and music
Changelog now stays open until explicitly closed
v0.6.0 — Mar 25, 2026
Full codebase refactor — CSS design system (tokens, components, screens, animations), 12 UI modules extracted from main.js, game subsystem decomposition
Online opponent disconnect now handled during waitingOnline state
signalLoaded retry on failure, listener setup before write to prevent race conditions
v0.5.0 — Mar 25, 2026
ANNIHILATED the 0 FPS death lag — hunted down a brutal Three.js shader recompilation bug where hiding the player group nuked every light from the scene graph, forcing the GPU to recompile every single MeshStandardMaterial shader in the entire arena on the death frame. Deaths are now buttery smooth, zero stutter, zero mercy
SpotLight headlight beam now properly managed — was created but never returned from bike builder, making it impossible to zero on death. Dragged it out of the shadows and gave it a proper killswitch
Trail vibration segments no longer haunt you from beyond the grave — glowing wall segments that were vibrating near the player now properly reset when the bike dies, instead of frozen mid-jiggle for eternity
destroy() now zeros all light intensities before ripping objects from the scene — prevents shader recompilation cascade during cleanup transitions
Playlist selector overhaul — replaced the DEFAULT TRACKS / YOUR PLAYLIST tab bar with a clean arrow-style selector matching the settings UI pattern
New PLAYLIST section header in the music overlay — sits below the volume slider, styled to match NOW PLAYING
Speed rebalance — W-boost reduced from 60 to 55, dash increased from 93.5 to 98.5
Dash VFX cranked up — bigger particles, wider electric arcs, higher opacity, longer burst timers
W-boost sparks removed — ground FX now only activates during dash
Camera zoom rebalanced — boost pulls 6.5% FOV (was 4.2%), dash pulls 12% (was 9.2%), transition speed boosted to 5.0
Killcam smoothed out — frame-rate independent lerp replaces raw constants, direct blend orbit replaces jittery chase-lerp
FPS counter in top bar — updates every 500ms, Orbitron font, lives left of the settings button
Trail spawn point moved forward — now aligned with back of bike wheel frame instead of bike center