From d091b484f64035c28f1934ef9a44aa36fd65f784 Mon Sep 17 00:00:00 2001 From: Krzyhau Date: Sat, 29 Jul 2023 23:04:19 +0200 Subject: [PATCH] potential mpt detector toast thingy murder me --- src/Modules/Server.cpp | 10 ++++++++++ src/SourceAutoRecord.vcxproj | 2 +- src/SourceAutoRecord.vcxproj.filters | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/Modules/Server.cpp b/src/Modules/Server.cpp index 5af602351..9ead73738 100644 --- a/src/Modules/Server.cpp +++ b/src/Modules/Server.cpp @@ -14,6 +14,7 @@ #include "Features/Hud/StrafeHud.hpp" #include "Features/Hud/StrafeQuality.hpp" #include "Features/Hud/InputHud.hpp" +#include "Features/Hud/Toasts.hpp" #include "Features/NetMessage.hpp" #include "Features/PlayerTrace.hpp" #include "Features/ReloadedFix.hpp" @@ -291,6 +292,8 @@ DETOUR(Server::ProcessMovement, void *player, CMoveData *move) { if (move->m_nButtons & IN_JUMP) scrollSpeedHud.OnJump(slot); Event::Trigger({ slot, true }); + auto startPosition = move->m_vecAbsOrigin; + auto res = Server::ProcessMovement(thisptr, player, move); playerTrace->TweakLatestEyeOffsetForPortalShot(move, slot, false); @@ -302,6 +305,13 @@ DETOUR(Server::ProcessMovement, void *player, CMoveData *move) { g_playerTraceNeedsTeleport = false; } + auto deltaPosition = (move->m_vecAbsOrigin - startPosition).Length(); + bool groundedNew = SE(player)->ground_entity(); + + if (!grounded && groundedNew && deltaPosition > move->m_vecVelocity.Length() * 2.0f && deltaPosition > 64.0f) { + toastHud.AddToast("MPT", "MPT-viable teleportation detected.", true); + } + return res; } diff --git a/src/SourceAutoRecord.vcxproj b/src/SourceAutoRecord.vcxproj index cb305e26d..16fb5df19 100644 --- a/src/SourceAutoRecord.vcxproj +++ b/src/SourceAutoRecord.vcxproj @@ -495,4 +495,4 @@ - + \ No newline at end of file diff --git a/src/SourceAutoRecord.vcxproj.filters b/src/SourceAutoRecord.vcxproj.filters index 7f674622e..412e70a59 100644 --- a/src/SourceAutoRecord.vcxproj.filters +++ b/src/SourceAutoRecord.vcxproj.filters @@ -1360,4 +1360,4 @@ lib\SFML\System - + \ No newline at end of file