Commit graph

16 commits

Author SHA1 Message Date
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
logsol
3cb2e39a18 Makes singleton variable name of NotificationCenter lowercase
When we require a singleton, its instance name should be named
by lowercase, since it is not a class.

Relates to #128
2016-10-10 22:11:55 +02:00
logsol
fc7866f11e Hides playercontroller within player
In order to not provide deep exposure to PlayerController,
we refactored it so that it is not visible anymore outside Player.

Also we renamed isInBetweenGames to inBetweenRounds.

Moved creation of PlayerController from GameController(s) to
The channel Player and client Me.
2016-10-01 12:19:02 +02:00
Jeena
a8adbcf140 fixes position state update and removes dev graphs for better fps 2015-08-02 16:06:32 +02:00
Jeena
dfa71bc8e5 added ASSERT, fixed #103 2015-03-15 16:51:38 +01:00
logsol
5f5fec5b10 added optimizer scripts and some code style improvements 2015-03-09 04:56:28 +01:00
logsol
1f8f0ef6e1 merged from master (use strict) 2014-12-22 02:00:40 +01:00
logsol
2b186be8af use strict; fixes #83 2014-12-22 01:43:21 +01:00
logsol
0a0b3e8849 added simple mode 2014-12-09 15:55:28 +01:00
logsol
1e233efbea Added Swiper drawing 2014-12-08 19:36:14 +01:00
Jeena
6d9d02615a added pointer locking and viewport moving 2014-12-06 20:20:49 +01:00
logsol
a58beb58d1 added player arrow to me fixes #76 2014-07-18 17:34:17 +02:00
logsol
a4120f6ff5 improved punkbuster 2014-06-07 17:52:33 +02:00
logsol
72dc454bd5 bugfix for positionStateUpdate 2014-05-29 21:31:26 +02:00
logsol
b500ef436d added areaSensor to doll and not allowing client to update position when another player is nearby 2014-05-29 20:27:41 +02:00
logsol
e7f4b6043d Implemented local positioning as master - included punkbuster instead of webrtc for now. #49 2014-05-29 18:29:17 +02:00