Skip to content

Commit

Permalink
Joystick and build bug fixes.
Browse files Browse the repository at this point in the history
  • Loading branch information
blaze committed Sep 2, 2024
1 parent 8f44fe3 commit c3152aa
Showing 1 changed file with 37 additions and 36 deletions.
73 changes: 37 additions & 36 deletions src/client.c
Original file line number Diff line number Diff line change
Expand Up @@ -3533,54 +3533,55 @@ void PlayerPreThink()
#endif

// SOCD detection

float fSideMoveSpeed = self->movement[1];

if ((fSideMoveSpeed != 0) && (fSideMoveSpeed != self->fLastSideMoveSpeed) && (self->nullStrafeCount < 3)) //strafechange
{
self->fStrafeChangeCount += 1;
self->totalStrafeChangeCount += 1;
if (match_in_progress)
self->matchStrafeChangeCount += 1;
float fSideMoveSpeed = self->movement[1];

if ((fSideMoveSpeed != 0) && (self->fLastSideMoveSpeed != 0))
if ((fSideMoveSpeed != 0) && (((fSideMoveSpeed > 0) - (fSideMoveSpeed < 0)) != ((self->fLastSideMoveSpeed > 0) - (self->fLastSideMoveSpeed < 0))) && (self->nullStrafeCount < 4)) //strafechange
{
self->fFramePerfectStrafeChangeCount += 1;
self->totalPerfectStrafeCount += 1;
self->fStrafeChangeCount += 1;
self->totalStrafeChangeCount += 1;
if (match_in_progress)
self->matchPerfectStrafeCount += 1;
}
self->matchStrafeChangeCount += 1;

if ((fSideMoveSpeed != 0) && (self->fLastSideMoveSpeed != 0))
{
self->fFramePerfectStrafeChangeCount += 1;
self->totalPerfectStrafeCount += 1;
if (match_in_progress)
self->matchPerfectStrafeCount += 1;
}

self->nullStrafeCount = 0;
}
else
{
if (0 == fSideMoveSpeed)
self->nullStrafeCount += 1;
else
self->nullStrafeCount = 0;
}
}
else
{
if (0 == fSideMoveSpeed)
self->nullStrafeCount += 1;
else
self->nullStrafeCount = 0;
}

self->fLastSideMoveSpeed = fSideMoveSpeed;
self->fLastSideMoveSpeed = fSideMoveSpeed;

if (self->fStrafeChangeCount >= 25)
{
if (self->fFramePerfectStrafeChangeCount / self->fStrafeChangeCount >= 0.75)
if (self->fStrafeChangeCount >= 25)
{
int k_allow_socd_warning = cvar("k_allow_socd_warning");

self->socdDetected += 1;
if ((!match_in_progress) && (!self->isBot) && k_allow_socd_warning && (self->ct == ctPlayer))
if (self->fFramePerfectStrafeChangeCount / self->fStrafeChangeCount >= 0.75)
{
G_bprint(PRINT_HIGH,
"Warning! %s: Movement assistance detected. Please disable iDrive or keyboard strafe assistance features.\n",
self->netname);
int k_allow_socd_warning = cvar("k_allow_socd_warning");

self->socdDetected += 1;
if ((!match_in_progress) && (!self->isBot) && k_allow_socd_warning && (self->ct == ctPlayer))
{
G_bprint(PRINT_HIGH,
"Warning! %s: Movement assistance detected. Please disable iDrive or keyboard strafe assistance features.\n",
self->netname);
}
}
}

self->socdChecksCount += 1;
self->fStrafeChangeCount = 0;
self->fFramePerfectStrafeChangeCount = 0;
self->socdChecksCount += 1;
self->fStrafeChangeCount = 0;
self->fFramePerfectStrafeChangeCount = 0;
}
}

// ILLEGALFPS[
Expand Down

0 comments on commit c3152aa

Please sign in to comment.