chuck.js/app/Game/Channel
Jeena 71e4b4e847 Replace cheat-detection teleport with server reconciliation
The old PUNKBUSTER check compared client-reported position to server
position and snapped the player back when latency made them diverge,
which felt like getting teleported under any real network conditions.

Replaces that with proper client-side prediction + reconciliation:
client tags each input with a sequence number and keeps an input
buffer; server tracks the last processed sequence and reports its
authoritative position via a per-user inputAck alongside each
worldUpdate. The client only corrects when the actual disagreement
exceeds what the unacked input time can explain — so steady-state
movement runs purely on local physics, and only genuine unexpected
events (collisions, being hit) trigger a smooth blend toward the
server state.

Includes adaptive threshold scaling so high-latency sessions don't
false-positive corrections during normal running.
2026-05-11 00:37:42 +00:00
..
Collision use strict; fixes #83 2014-12-22 01:43:21 +01:00
Control Replace cheat-detection teleport with server reconciliation 2026-05-11 00:37:42 +00:00
GameObjects Replace cheat-detection teleport with server reconciliation 2026-05-11 00:37:42 +00:00
Loader new system for synchronizing game objects. fixes #74 2015-06-22 00:14:17 +02:00
Physics refactored Server and Lobby 2014-03-01 14:07:03 +01:00
Channel.js Makes singleton variable name of OptionsHelper lowercase 2016-10-10 23:11:18 +02:00
GameController.js Replace cheat-detection teleport with server reconciliation 2026-05-11 00:37:42 +00:00
PipeToServer.js Makes singleton variable name of NotificationCenter lowercase 2016-10-10 22:11:55 +02:00
Player.js Makes singleton variable name of NotificationCenter lowercase 2016-10-10 22:11:55 +02:00
User.js Makes singleton variable name of NotificationCenter lowercase 2016-10-10 22:11:55 +02:00