From ef181d2b21aa574f30a0db7852dfcda652755ce5 Mon Sep 17 00:00:00 2001 From: Diavolo Date: Thu, 3 Feb 2022 22:09:17 +0100 Subject: [PATCH] Fix really bad patch --- src/Components/Modules/Dedicated.cpp | 15 +++++++-------- src/Components/Modules/Dedicated.hpp | 2 ++ 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/Components/Modules/Dedicated.cpp b/src/Components/Modules/Dedicated.cpp index dc856792..45e6f1a1 100644 --- a/src/Components/Modules/Dedicated.cpp +++ b/src/Components/Modules/Dedicated.cpp @@ -273,6 +273,11 @@ namespace Components } } + Game::dvar_t* Dedicated::Dvar_RegisterSVNetworkFps(const char* dvarName, int, int min, int, int, const char* description) + { + return Game::Dvar_RegisterInt(dvarName, 1000, min, 1000, Game::dvar_flag::DVAR_FLAG_NONE, description); + } + Dedicated::Dedicated() { // Map rotation @@ -311,7 +316,7 @@ namespace Components Utils::Hook::Nop(0x4DCEC9, 2); // some check preventing proper game functioning Utils::Hook::Nop(0x507C79, 6); // another similar bsp check - Utils::Hook::Nop(0x414E4D, 6); // unknown check in SV_ExecuteClientMessage (0x20F0890 == 0, related to client->f_40) + Utils::Hook::Nop(0x414E4D, 6); // cl->messageAcknowledge > cl->gamestateMessageNum check in SV_ExecuteClientMessage Utils::Hook::Nop(0x4DCEE9, 5); // some deinit renderer function Utils::Hook::Nop(0x59A896, 5); // warning message on a removed subsystem Utils::Hook::Nop(0x4B4EEF, 5); // same as above @@ -326,14 +331,8 @@ namespace Components // isHost script call return 0 Utils::Hook::Set(0x5DEC04, 0); - // sv_network_fps max 1000, and uncheat - Utils::Hook::Set(0x4D3C67, 0); // ? - Utils::Hook::Set(0x4D3C69, 1000); - // Manually register sv_network_fps - Utils::Hook::Nop(0x4D3C7B, 5); - Utils::Hook::Nop(0x4D3C8E, 5); - *reinterpret_cast(0x62C7C00) = Dvar::Register("sv_network_fps", 1000, 20, 1000, Game::dvar_flag::DVAR_FLAG_NONE, "Number of times per second the server checks for net messages").get(); + Utils::Hook(0x4D3C7B, Dedicated::Dvar_RegisterSVNetworkFps, HOOK_CALL).install()->quick(); // r_loadForRenderer default to 0 Utils::Hook::Set(0x519DDF, 0); diff --git a/src/Components/Modules/Dedicated.hpp b/src/Components/Modules/Dedicated.hpp index 9515870b..78126922 100644 --- a/src/Components/Modules/Dedicated.hpp +++ b/src/Components/Modules/Dedicated.hpp @@ -29,5 +29,7 @@ namespace Components static void TransmitGuids(); static void TimeWrapStub(Game::errorParm_t code, const char* message); + + static Game::dvar_t* Dvar_RegisterSVNetworkFps(const char* dvarName, int value, int min, int max, int flags, const char* description); }; }