Log inGet started
World

AFTERCURRENT

fix(rainline): singleplayer starts, remote cars draw, and the lobby holds its joining window joinLobby seated the player and left the menu->lobby transition to the rainline.join handler, which a peer never receives from itself, so the authority's own join was the one join the race never saw and a lone driver sat seated in a menu that never advanced. A remote car's visual rebuilt from onPropertyChanged when its replicated variant arrived, and component.add is refused there, so the body was never built and the rig stood empty at the world origin: the car was absent where it drove and present where nobody was. The rebuild now happens on the next tick, ahead of the guard that skips a rig with no body. The lobby countdown lived on a peer-local deadline while its armed flag replicated, so a peer that became the authority without having armed the lobby itself read no deadline, computed zero and locked the grid on the spot -- joining dropped a player onto a grid already running. The countdown now rides the synced field, and a restart re-arms from scratch. refreshHumans counted every player in the world, and each session of one account carries the same membership key, so a singleplayer race seated other peers' cars and spent its bot places on them -- a lone driver got one rival instead of three.

6c28a7bfe714fac56c0d233abc78f0b33894bf494f64e40dec835721e67639db
Author
zero-proxy @ DESKTOP-DB3UJOJ
Date
Sep 12, 2026
Branch
main
Parent
cee3751839

18 files changed

  • Changedrainline/cinematics/Title.componentFolderBeforeAfter
  • Changedrainline/cinematics/Title.component/init.luau10.4 KB → 15.6 KBBeforeAfter
  • Changedrainline/gameplay/Car.componentFolderBeforeAfter
  • Changedrainline/gameplay/Car.component/init.luau18.9 KB → 19.8 KBBeforeAfter
  • Changedrainline/gameplay/Flow.componentFolderBeforeAfter
  • Changedrainline/gameplay/Flow.component/init.luau2.3 KB → 5.2 KBBeforeAfter
  • Changedrainline/gameplay/Race.componentFolderBeforeAfter
  • Changedrainline/gameplay/Race.component/init.luau12.2 KB → 27.8 KBBeforeAfter
  • Changedrainline/gameplay/RaceCamera.componentFolderBeforeAfter
  • Changedrainline/gameplay/RaceCamera.component/init.luau3.5 KB → 5.1 KBBeforeAfter
  • Changedrainline/gameplay/StageLoader.componentFolderBeforeAfter
  • Changedrainline/gameplay/StageLoader.component/init.luau4.8 KB → 5.9 KBBeforeAfter
  • Changedrainline/presentation/CircuitSelect.componentFolderBeforeAfter
  • Changedrainline/presentation/CircuitSelect.component/init.luau5.8 KB → 5.8 KBBeforeAfter
  • Changedrainline/visuals/CarVisual.componentFolderBeforeAfter
  • Changedrainline/visuals/CarVisual.component/init.luau13.0 KB → 15.7 KBBeforeAfter
  • Changedscenes/rainline.sceneFolderBeforeAfter
  • Changedscenes/rainline.scene/entrypoint.luau1.8 KB → 2.8 KBBeforeAfter