From 432fdce0e6f63debeb5310db1606dfe659946b11 Mon Sep 17 00:00:00 2001 From: divverent Date: Wed, 10 Oct 2007 16:31:37 +0000 Subject: [PATCH] final speedhack fixes git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@7625 d7cf8633-e32d-0410-b094-e92efae38249 --- sv_phys.c | 1 + sv_user.c | 7 +------ 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/sv_phys.c b/sv_phys.c index 978768fe..362689f8 100644 --- a/sv_phys.c +++ b/sv_phys.c @@ -2115,6 +2115,7 @@ void SV_Physics_ClientEntity(prvm_edict_t *ent) SV_AddGravity (ent); SV_CheckStuck (ent); SV_WalkMove (ent); + host_client->cmd.time = max(host_client->cmd.time, sv.time); // ignore client movement data for anything before NOW } break; case MOVETYPE_TOSS: diff --git a/sv_user.c b/sv_user.c index 70d3bafc..a2fb80d8 100644 --- a/sv_user.c +++ b/sv_user.c @@ -629,13 +629,8 @@ void SV_ExecuteClientMoves(void) } } // now copy the new move + sv_readmoves[sv_numreadmoves-1].time = max(sv_readmoves[sv_numreadmoves-1].time, host_client->cmd.time); // prevent backstepping of time host_client->cmd = sv_readmoves[sv_numreadmoves-1]; - host_client->cmd.time = max(host_client->cmd.time, sv.time); - // physics will run up to sv.time, so allow no predicted moves - // before that otherwise, there is a speedhack by turning - // prediction on and off repeatedly on client side because the - // engine would run BOTH client and server physics for the same - // time host_client->movesequence = 0; // make sure that normal physics takes over immediately host_client->clmovement_skipphysicsframes = 0; -- 2.39.2