From e151b85b2347ed7aa22ef9f9095329acf0d25d92 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 20:45:16 -0600 Subject: [PATCH 01/20] Update main.cpp - Added keybind for rainbow boxes and names --- memory-external/main.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/memory-external/main.cpp b/memory-external/main.cpp index 41fde6f..78fa942 100644 --- a/memory-external/main.cpp +++ b/memory-external/main.cpp @@ -137,7 +137,7 @@ int main() { //SetActiveWindow(hack::process->hwnd_); #ifndef _UC - std::cout << "\n[settings] In Game keybinds:\n\t[F5] enable/disable Team ESP\n\t[F6] enable/disable automatic updates\n\t[fin] Unload esp.\n" << std::endl; + std::cout << "\n[settings] In Game keybinds:\n\t[F5] enable/disable Team ESP\n\t[F6] enable/disable automatic updates\n\t[F7] enable/disable rainbow boxes & names\n\t[fin] Unload esp.\n" << std::endl; #else std::cout << "\n[settings] In Game keybinds:\n\t[F5] enable/disable Team ESP\n\t[fin] Unload esp\n" << std::endl; #endif @@ -152,6 +152,7 @@ int main() { #ifndef _UC if (GetAsyncKeyState(VK_F6) & 0x8000) { config::automatic_update = !config::automatic_update; config::save(); Beep(700, 100); } #endif + if (GetAsyncKeyState(VK_F7) & 0x8000) { config::rainbow = !config::rainbow; config::save(); Beep(700, 100); }; TranslateMessage(&msg); DispatchMessage(&msg); @@ -176,4 +177,4 @@ int main() { #endif return 1; -} \ No newline at end of file +} From 6ed5053dbfb0d5edc08600dbc94cdbab23fcb0f4 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 20:45:45 -0600 Subject: [PATCH 02/20] Update hack.hpp - Added a toggleable rainbow effect for boxes & names --- memory-external/hacks/hack.hpp | 73 ++++++++++++++++++++++++++-------- 1 file changed, 57 insertions(+), 16 deletions(-) diff --git a/memory-external/hacks/hack.hpp b/memory-external/hacks/hack.hpp index e631284..3abbe25 100644 --- a/memory-external/hacks/hack.hpp +++ b/memory-external/hacks/hack.hpp @@ -1,4 +1,5 @@ #include +#include #include "../memory/memory.hpp" #include "../classes/globals.hpp" #include "../classes/render.hpp" @@ -101,14 +102,40 @@ namespace hack { const COLORREF boxColor = RGB(175, 75, 75); const COLORREF healthBarColor = RGB(255 - playerHealth, 55 + playerHealth * 2, 75); - render::DrawBorderBox( - g::hdcBuffer, - screenHead.x - width / 2, - screenHead.y, - width, - height, - (localTeam == playerTeam ? RGB(75, 175, 75) : RGB(175, 75, 75)) - ); + const float pi = 3.14159265358979323846f; + + // Get the current time + DWORD currentTime = GetTickCount(); + + // Calculate the sinusoidal values for RGB colors + float red = (sin(config::rainbow_speed * currentTime + 0) * 127.5f + 127.5f); // 0 phase shift + float green = (sin(config::rainbow_speed * currentTime + 2 * pi / 3) * 127.5f + 127.5f); // 2*pi/3 phase shift + float blue = (sin(config::rainbow_speed * currentTime + 4 * pi / 3) * 127.5f + 127.5f); // 4*pi/3 phase shift + + // Convert the floating point values to integers for RGB color creation + COLORREF rainbowColor = RGB(static_cast(red), static_cast(green), static_cast(blue)); + + if (config::rainbow) { + render::DrawBorderBox( + g::hdcBuffer, + screenHead.x - width / 2, + screenHead.y, + width, + height, + (localTeam == playerTeam ? rainbowColor : rainbowColor) + ); + } + else + { + render::DrawBorderBox( + g::hdcBuffer, + screenHead.x - width / 2, + screenHead.y, + width, + height, + (localTeam == playerTeam ? RGB(75, 175, 75) : RGB(175, 75, 75)) + ); + } render::DrawBorderBox( g::hdcBuffer, @@ -123,14 +150,28 @@ namespace hack { ) ); - render::RenderText( - g::hdcBuffer, - screenHead.x + (width / 2 + 5), - screenHead.y, - playerName.c_str(), - RGB(75, 75, 175), - 10 - ); + if (config::rainbow) + { + render::RenderText( + g::hdcBuffer, + screenHead.x + (width / 2 + 5), + screenHead.y, + playerName.c_str(), + rainbowColor, + 10 + ); + } + else + { + render::RenderText( + g::hdcBuffer, + screenHead.x + (width / 2 + 5), + screenHead.y, + playerName.c_str(), + RGB(75, 75, 175), + 10 + ); + } render::RenderText( g::hdcBuffer, From 63e8aa05b389658efcdeefecaecacc26137c81f3 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 20:46:15 -0600 Subject: [PATCH 03/20] Update config.cpp - Added rainbow effect toggle and speed for rainbow effect --- memory-external/classes/config.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/memory-external/classes/config.cpp b/memory-external/classes/config.cpp index 0ebbc54..e68714a 100644 --- a/memory-external/classes/config.cpp +++ b/memory-external/classes/config.cpp @@ -26,6 +26,10 @@ namespace config { automatic_update = data["automatic_update"]; if (data["render_distance"].is_number()) render_distance = data["render_distance"]; + if (data["rainbow"].is_boolean()) + rainbow = data["rainbow"]; + if (data["rainbow_speed"].is_number()) + rainbow_speed = data["rainbow_speed"]; return true; } @@ -36,10 +40,12 @@ namespace config { data["team_esp"] = team_esp; data["automatic_update"] = automatic_update; data["render_distance"] = render_distance; + data["rainbow"] = rainbow; + data["rainbow_speed"] = rainbow_speed; std::ofstream output(file_path); output << std::setw(4) << data << std::endl; output.close(); } -} \ No newline at end of file +} From 5ae406c2b7a601c9a5b6a8b2a733daf6af185ea2 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 20:46:30 -0600 Subject: [PATCH 04/20] Update config.hpp - Added rainbow effect toggle and speed for rainbow effect --- memory-external/classes/config.hpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/memory-external/classes/config.hpp b/memory-external/classes/config.hpp index b087611..0d92bf8 100644 --- a/memory-external/classes/config.hpp +++ b/memory-external/classes/config.hpp @@ -14,4 +14,6 @@ namespace config { inline bool automatic_update = false; inline bool team_esp = false; inline float render_distance = -1.f; -} \ No newline at end of file + inline bool rainbow = false; + inline float rainbow_speed = 0.001f; +} From ed4562196cf68bf4591618563d29623d2db767f5 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 21:23:32 -0600 Subject: [PATCH 05/20] Update hack.hpp - Added armor display --- memory-external/hacks/hack.hpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/memory-external/hacks/hack.hpp b/memory-external/hacks/hack.hpp index 3abbe25..e9c1005 100644 --- a/memory-external/hacks/hack.hpp +++ b/memory-external/hacks/hack.hpp @@ -39,6 +39,7 @@ namespace hack { } const int playerHealth = process->read(player + updater::offsets::dwPawnHealth); + const int playerArmor = process->read(player + updater::offsets::m_iPawnArmor); if (playerHealth <= 0 || playerHealth > 100) { playerIndex++; continue; @@ -185,6 +186,19 @@ namespace hack { ), 10 ); + + render::RenderText( + g::hdcBuffer, + screenHead.x + (width / 2 + 5), + screenHead.y + 22, + (std::to_string(playerArmor) + "armor").c_str(), + RGB( + (255 - playerArmor), + (55 + playerArmor * 2), + 75 + ), + 10 + ); } playerIndex++; } From e945da82873dd53a7a9a13a51bf857017b0b2807 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 21:23:56 -0600 Subject: [PATCH 06/20] Update auto_updater.cpp - Added armor offset --- memory-external/classes/auto_updater.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/memory-external/classes/auto_updater.cpp b/memory-external/classes/auto_updater.cpp index 44a7a75..18002e4 100644 --- a/memory-external/classes/auto_updater.cpp +++ b/memory-external/classes/auto_updater.cpp @@ -193,6 +193,8 @@ namespace updater { if (data["dwViewMatrix"].is_number()) offsets::dwViewMatrix = data["dwViewMatrix"]; + if (data["m_iPawnArmor"].is_number()) + offsets::m_iPawnArmor = data["m_iPawnArmor"]; if (data["dwPawnHealth"].is_number()) offsets::dwPawnHealth = data["dwPawnHealth"]; if (data["dwPlayerPawn"].is_number()) @@ -214,6 +216,7 @@ namespace updater { data["dwEntityList"] = offsets::dwEntityList; data["dwViewMatrix"] = offsets::dwViewMatrix; + data["m_iPawnArmor"] = offsets::m_iPawnArmor; data["dwPawnHealth"] = offsets::dwPawnHealth; data["dwPlayerPawn"] = offsets::dwPlayerPawn; data["dwSanitizedName"] = offsets::dwSanitizedName; @@ -224,4 +227,4 @@ namespace updater { output << std::setw(4) << data << std::endl; output.close(); } -} \ No newline at end of file +} From 90032dce75fe49906a9f426aa6a8c70598018f22 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 21:24:11 -0600 Subject: [PATCH 07/20] Update auto_updater.hpp - Added armor offset --- memory-external/classes/auto_updater.hpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/memory-external/classes/auto_updater.hpp b/memory-external/classes/auto_updater.hpp index 87c2538..f46d094 100644 --- a/memory-external/classes/auto_updater.hpp +++ b/memory-external/classes/auto_updater.hpp @@ -35,10 +35,11 @@ namespace updater { inline std::ptrdiff_t dwEntityList = 0x178D8E8; inline std::ptrdiff_t dwViewMatrix = 0x187B730; + inline std::ptrdiff_t m_iPawnArmor = 0x80c; inline std::ptrdiff_t dwPawnHealth = 0x808; inline std::ptrdiff_t dwPlayerPawn = 0x7FC; inline std::ptrdiff_t dwSanitizedName = 0x720; inline std::ptrdiff_t m_iTeamNum = 0x3BF; inline std::ptrdiff_t m_vecOrigin = 0x1214; } -} \ No newline at end of file +} From 6b8b53e4df5c6928ea355b5a1bd155533216b094 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 22:24:45 -0600 Subject: [PATCH 08/20] Update main.cpp - Made armor toggleable - Added toggleable player distance --- memory-external/main.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/memory-external/main.cpp b/memory-external/main.cpp index 78fa942..fd63f83 100644 --- a/memory-external/main.cpp +++ b/memory-external/main.cpp @@ -137,7 +137,7 @@ int main() { //SetActiveWindow(hack::process->hwnd_); #ifndef _UC - std::cout << "\n[settings] In Game keybinds:\n\t[F5] enable/disable Team ESP\n\t[F6] enable/disable automatic updates\n\t[F7] enable/disable rainbow boxes & names\n\t[fin] Unload esp.\n" << std::endl; + std::cout << "\n[settings] In Game keybinds:\n\t[F5] enable/disable Team ESP\n\t[F6] enable/disable automatic updates\n\t[F7] enable/disable rainbow boxes & names\n\t[F8] enable/disable player distances\n\t[F8] enable/disable player armor\n\t[fin] Unload esp.\n" << std::endl; #else std::cout << "\n[settings] In Game keybinds:\n\t[F5] enable/disable Team ESP\n\t[fin] Unload esp\n" << std::endl; #endif @@ -154,6 +154,10 @@ int main() { #endif if (GetAsyncKeyState(VK_F7) & 0x8000) { config::rainbow = !config::rainbow; config::save(); Beep(700, 100); }; + if (GetAsyncKeyState(VK_F8) & 0x8000) { config::show_distance = !config::show_distance; config::save(); Beep(700, 100); }; + + if (GetAsyncKeyState(VK_F9) & 0x8000) { config::show_armor = !config::show_armor; config::save(); Beep(700, 100); }; + TranslateMessage(&msg); DispatchMessage(&msg); From db3724775d6f8a2046680dc994221a2441f3def8 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 22:25:02 -0600 Subject: [PATCH 09/20] Update hack.hpp - Made armor toggleable - Added toggleable player distance --- memory-external/hacks/hack.hpp | 66 +++++++++++++++++++++++++++------- 1 file changed, 54 insertions(+), 12 deletions(-) diff --git a/memory-external/hacks/hack.hpp b/memory-external/hacks/hack.hpp index e9c1005..7f83f0d 100644 --- a/memory-external/hacks/hack.hpp +++ b/memory-external/hacks/hack.hpp @@ -9,6 +9,14 @@ namespace hack { std::shared_ptr process; ProcessModule base_module; + float CalculateDistance(const Vector3& point1, const Vector3& point2) { + float dx = point2.x - point1.x; + float dy = point2.y - point1.y; + float dz = point2.z - point1.z; + + return std::sqrt(dx * dx + dy * dy + dz * dz); + } + void loop() { const uintptr_t localPlayer = process->read(base_module.base + updater::offsets::dwLocalPlayer); if (!localPlayer) @@ -87,6 +95,7 @@ namespace hack { const Vector3 origin = process->read(pCSPlayerPawn + updater::offsets::m_vecOrigin); const Vector3 head = { origin.x, origin.y, origin.z + 75.f }; + const Vector3 localOrigin = process->read(localPlayer + updater::offsets::m_vecOrigin); if (config::render_distance != -1 && (localOrigin - origin).length2d() > config::render_distance) { playerIndex++; @@ -187,18 +196,51 @@ namespace hack { 10 ); - render::RenderText( - g::hdcBuffer, - screenHead.x + (width / 2 + 5), - screenHead.y + 22, - (std::to_string(playerArmor) + "armor").c_str(), - RGB( - (255 - playerArmor), - (55 + playerArmor * 2), - 75 - ), - 10 - ); + if (config::show_armor) + { + render::RenderText( + g::hdcBuffer, + screenHead.x + (width / 2 + 5), + screenHead.y + 21, + (std::to_string(playerArmor) + "armor").c_str(), + RGB( + (255 - playerArmor), + (55 + playerArmor * 2), + 75 + ), + 10 + ); + } + + if (config::show_distance) + { + float distance = CalculateDistance(localOrigin, origin); + // Round the distance to the nearest integer + int roundedDistance = std::round(distance / 10); + + if (config::rainbow) + { + render::RenderText( + g::hdcBuffer, + screenHead.x + (width / 2 + 5), + screenHead.y + 32, + (std::to_string(roundedDistance) + "m away").c_str(), + rainbowColor, + 10 + ); + } + else + { + render::RenderText( + g::hdcBuffer, + screenHead.x + (width / 2 + 5), + screenHead.y + 32, + (std::to_string(roundedDistance) + "m away").c_str(), + RGB(75, 75, 175), + 10 + ); + } + } } playerIndex++; } From aaf094149acfd3942fb3a21d85827cf23e81147e Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 22:25:25 -0600 Subject: [PATCH 10/20] Update config.cpp - Made armor toggleable - Added toggleable player distance --- memory-external/classes/config.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/memory-external/classes/config.cpp b/memory-external/classes/config.cpp index e68714a..668b232 100644 --- a/memory-external/classes/config.cpp +++ b/memory-external/classes/config.cpp @@ -26,6 +26,10 @@ namespace config { automatic_update = data["automatic_update"]; if (data["render_distance"].is_number()) render_distance = data["render_distance"]; + if (data["show_distance"].is_boolean()) + show_distance = data["show_distance"]; + if (data["show_armor"].is_boolean()) + show_armor = data["show_armor"]; if (data["rainbow"].is_boolean()) rainbow = data["rainbow"]; if (data["rainbow_speed"].is_number()) @@ -40,6 +44,8 @@ namespace config { data["team_esp"] = team_esp; data["automatic_update"] = automatic_update; data["render_distance"] = render_distance; + data["show_distance"] = show_distance; + data["show_armor"] = show_armor; data["rainbow"] = rainbow; data["rainbow_speed"] = rainbow_speed; From e56c97aee75ee01839bbb6736af21cddfc846448 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Tue, 10 Oct 2023 22:25:41 -0600 Subject: [PATCH 11/20] Update config.hpp - Made armor toggleable - Added toggleable player distance --- memory-external/classes/config.hpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/memory-external/classes/config.hpp b/memory-external/classes/config.hpp index 0d92bf8..9b40bac 100644 --- a/memory-external/classes/config.hpp +++ b/memory-external/classes/config.hpp @@ -14,6 +14,8 @@ namespace config { inline bool automatic_update = false; inline bool team_esp = false; inline float render_distance = -1.f; + inline bool show_distance = false; + inline bool show_armor = false; inline bool rainbow = false; inline float rainbow_speed = 0.001f; } From f1da3923c9d8679b50b28fdd16ef8db1d5f4f8ed Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Wed, 11 Oct 2023 04:48:29 -0600 Subject: [PATCH 12/20] Update main.cpp - Added toggleable head tracker --- memory-external/main.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/memory-external/main.cpp b/memory-external/main.cpp index fd63f83..007d2fa 100644 --- a/memory-external/main.cpp +++ b/memory-external/main.cpp @@ -137,7 +137,7 @@ int main() { //SetActiveWindow(hack::process->hwnd_); #ifndef _UC - std::cout << "\n[settings] In Game keybinds:\n\t[F5] enable/disable Team ESP\n\t[F6] enable/disable automatic updates\n\t[F7] enable/disable rainbow boxes & names\n\t[F8] enable/disable player distances\n\t[F8] enable/disable player armor\n\t[fin] Unload esp.\n" << std::endl; + std::cout << "\n[settings] In Game keybinds:\n\t[F5] enable/disable Team ESP\n\t[F6] enable/disable automatic updates\n\t[F7] enable/disable rainbow boxes & names\n\t[F8] enable/disable player distances\n\t[F9] enable/disable player armor\n\t[F10] enable/disable player head tracker\n\t[fin] Unload esp.\n" << std::endl; #else std::cout << "\n[settings] In Game keybinds:\n\t[F5] enable/disable Team ESP\n\t[fin] Unload esp\n" << std::endl; #endif @@ -158,6 +158,8 @@ int main() { if (GetAsyncKeyState(VK_F9) & 0x8000) { config::show_armor = !config::show_armor; config::save(); Beep(700, 100); }; + if (GetAsyncKeyState(VK_F10) & 0x8000) { config::head_tracker = !config::head_tracker; config::save(); Beep(700, 100); }; + TranslateMessage(&msg); DispatchMessage(&msg); From d5a78812936dac34db5e31e7d35fb8e5ac36a6ad Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Wed, 11 Oct 2023 04:48:55 -0600 Subject: [PATCH 13/20] Update hack.hpp - Added toggleable head tracker --- memory-external/hacks/hack.hpp | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/memory-external/hacks/hack.hpp b/memory-external/hacks/hack.hpp index 7f83f0d..9fe3ba2 100644 --- a/memory-external/hacks/hack.hpp +++ b/memory-external/hacks/hack.hpp @@ -95,6 +95,7 @@ namespace hack { const Vector3 origin = process->read(pCSPlayerPawn + updater::offsets::m_vecOrigin); const Vector3 head = { origin.x, origin.y, origin.z + 75.f }; + const Vector3 head2 = { origin.x + 10, origin.y + 10, origin.z + 75.f }; const Vector3 localOrigin = process->read(localPlayer + updater::offsets::m_vecOrigin); if (config::render_distance != -1 && (localOrigin - origin).length2d() > config::render_distance) { @@ -108,6 +109,9 @@ namespace hack { const float height = screenPos.y - screenHead.y; const float width = height / 2.4f; + const float height2 = (screenPos.y - screenHead.y) / 8; + const float width2 = (height / 2.4f) / 4; + if (screenPos.z >= 0.01f) { const COLORREF boxColor = RGB(175, 75, 75); const COLORREF healthBarColor = RGB(255 - playerHealth, 55 + playerHealth * 2, 75); @@ -125,6 +129,10 @@ namespace hack { // Convert the floating point values to integers for RGB color creation COLORREF rainbowColor = RGB(static_cast(red), static_cast(green), static_cast(blue)); + float distance = CalculateDistance(localOrigin, origin); + // Round the distance to the nearest integer + int roundedDistance = std::round(distance / 10); + if (config::rainbow) { render::DrawBorderBox( g::hdcBuffer, @@ -160,6 +168,21 @@ namespace hack { ) ); + if (config::head_tracker) + { + if (roundedDistance > 25) + { + render::DrawFilledBox( + g::hdcBuffer, + screenHead.x - (width2 / 2), + (screenHead.y + 10 - (roundedDistance / 80)) - (height2 / 2), + width2, + height2, + rainbowColor + ); + } + } + if (config::rainbow) { render::RenderText( @@ -214,10 +237,6 @@ namespace hack { if (config::show_distance) { - float distance = CalculateDistance(localOrigin, origin); - // Round the distance to the nearest integer - int roundedDistance = std::round(distance / 10); - if (config::rainbow) { render::RenderText( @@ -240,7 +259,7 @@ namespace hack { 10 ); } - } + } } playerIndex++; } From 3e03c97f9f09e708a40a48a361cb7629ded6cda3 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Wed, 11 Oct 2023 04:49:11 -0600 Subject: [PATCH 14/20] Update auto_updater.cpp - Added toggleable head tracker --- memory-external/classes/auto_updater.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/memory-external/classes/auto_updater.cpp b/memory-external/classes/auto_updater.cpp index 18002e4..02dcd5b 100644 --- a/memory-external/classes/auto_updater.cpp +++ b/memory-external/classes/auto_updater.cpp @@ -193,6 +193,8 @@ namespace updater { if (data["dwViewMatrix"].is_number()) offsets::dwViewMatrix = data["dwViewMatrix"]; + if (data["pClippingWeapon"].is_number()) + offsets::pClippingWeapon = data["pClippingWeapon"]; if (data["m_iPawnArmor"].is_number()) offsets::m_iPawnArmor = data["m_iPawnArmor"]; if (data["dwPawnHealth"].is_number()) @@ -216,6 +218,7 @@ namespace updater { data["dwEntityList"] = offsets::dwEntityList; data["dwViewMatrix"] = offsets::dwViewMatrix; + data["pClippingWeapon"] = offsets::pClippingWeapon; data["m_iPawnArmor"] = offsets::m_iPawnArmor; data["dwPawnHealth"] = offsets::dwPawnHealth; data["dwPlayerPawn"] = offsets::dwPlayerPawn; From a98ec2facbee139c55a509688fc50419d311f447 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Wed, 11 Oct 2023 04:49:33 -0600 Subject: [PATCH 15/20] Update auto_updater.hpp - Added toggleable head tracker --- memory-external/classes/auto_updater.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/memory-external/classes/auto_updater.hpp b/memory-external/classes/auto_updater.hpp index f46d094..0a06bbb 100644 --- a/memory-external/classes/auto_updater.hpp +++ b/memory-external/classes/auto_updater.hpp @@ -35,6 +35,7 @@ namespace updater { inline std::ptrdiff_t dwEntityList = 0x178D8E8; inline std::ptrdiff_t dwViewMatrix = 0x187B730; + inline std::ptrdiff_t pClippingWeapon = 0x1290; inline std::ptrdiff_t m_iPawnArmor = 0x80c; inline std::ptrdiff_t dwPawnHealth = 0x808; inline std::ptrdiff_t dwPlayerPawn = 0x7FC; From 8a3435d48d6cd5112267f2700e1167115a5419e3 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Wed, 11 Oct 2023 04:49:58 -0600 Subject: [PATCH 16/20] Update config.cpp - Added toggleable head tracker --- memory-external/classes/config.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/memory-external/classes/config.cpp b/memory-external/classes/config.cpp index 668b232..4e2f1fd 100644 --- a/memory-external/classes/config.cpp +++ b/memory-external/classes/config.cpp @@ -34,6 +34,8 @@ namespace config { rainbow = data["rainbow"]; if (data["rainbow_speed"].is_number()) rainbow_speed = data["rainbow_speed"]; + if (data["head_tracker"].is_boolean()) + head_tracker = data["head_tracker"]; return true; } @@ -48,7 +50,7 @@ namespace config { data["show_armor"] = show_armor; data["rainbow"] = rainbow; data["rainbow_speed"] = rainbow_speed; - + data["head_tracker"] = head_tracker; std::ofstream output(file_path); output << std::setw(4) << data << std::endl; From e3d095bd10c0949029c21003da14b262afd4b03b Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Wed, 11 Oct 2023 04:50:18 -0600 Subject: [PATCH 17/20] Update config.hpp - Added toggleable head tracker --- memory-external/classes/config.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/memory-external/classes/config.hpp b/memory-external/classes/config.hpp index 9b40bac..7916717 100644 --- a/memory-external/classes/config.hpp +++ b/memory-external/classes/config.hpp @@ -16,6 +16,7 @@ namespace config { inline float render_distance = -1.f; inline bool show_distance = false; inline bool show_armor = false; + inline bool head_tracker = false; inline bool rainbow = false; inline float rainbow_speed = 0.001f; } From 31633813a38b8bc912e4ad97b80c95fd388db56d Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Wed, 11 Oct 2023 23:32:35 -0600 Subject: [PATCH 18/20] Update auto_updater.cpp - Removed unused pClippingWeapon offset --- memory-external/classes/auto_updater.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/memory-external/classes/auto_updater.cpp b/memory-external/classes/auto_updater.cpp index 02dcd5b..18002e4 100644 --- a/memory-external/classes/auto_updater.cpp +++ b/memory-external/classes/auto_updater.cpp @@ -193,8 +193,6 @@ namespace updater { if (data["dwViewMatrix"].is_number()) offsets::dwViewMatrix = data["dwViewMatrix"]; - if (data["pClippingWeapon"].is_number()) - offsets::pClippingWeapon = data["pClippingWeapon"]; if (data["m_iPawnArmor"].is_number()) offsets::m_iPawnArmor = data["m_iPawnArmor"]; if (data["dwPawnHealth"].is_number()) @@ -218,7 +216,6 @@ namespace updater { data["dwEntityList"] = offsets::dwEntityList; data["dwViewMatrix"] = offsets::dwViewMatrix; - data["pClippingWeapon"] = offsets::pClippingWeapon; data["m_iPawnArmor"] = offsets::m_iPawnArmor; data["dwPawnHealth"] = offsets::dwPawnHealth; data["dwPlayerPawn"] = offsets::dwPlayerPawn; From b3e236bf4691ce823794449a262a299db2aafd1c Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Wed, 11 Oct 2023 23:32:53 -0600 Subject: [PATCH 19/20] Update auto_updater.hpp - Removed unused pClippingWeapon offset --- memory-external/classes/auto_updater.hpp | 1 - 1 file changed, 1 deletion(-) diff --git a/memory-external/classes/auto_updater.hpp b/memory-external/classes/auto_updater.hpp index 0a06bbb..f46d094 100644 --- a/memory-external/classes/auto_updater.hpp +++ b/memory-external/classes/auto_updater.hpp @@ -35,7 +35,6 @@ namespace updater { inline std::ptrdiff_t dwEntityList = 0x178D8E8; inline std::ptrdiff_t dwViewMatrix = 0x187B730; - inline std::ptrdiff_t pClippingWeapon = 0x1290; inline std::ptrdiff_t m_iPawnArmor = 0x80c; inline std::ptrdiff_t dwPawnHealth = 0x808; inline std::ptrdiff_t dwPlayerPawn = 0x7FC; From 06d1b5ffea46e2e8e003084b100c709769adfdd0 Mon Sep 17 00:00:00 2001 From: ifBars <114284668+ifBars@users.noreply.github.com> Date: Thu, 12 Oct 2023 01:53:45 -0600 Subject: [PATCH 20/20] Update hack.hpp - Made the head tracker more accurate when up close --- memory-external/hacks/hack.hpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/memory-external/hacks/hack.hpp b/memory-external/hacks/hack.hpp index 9fe3ba2..a7eb2f6 100644 --- a/memory-external/hacks/hack.hpp +++ b/memory-external/hacks/hack.hpp @@ -170,7 +170,7 @@ namespace hack { if (config::head_tracker) { - if (roundedDistance > 25) + if (roundedDistance > 35) { render::DrawFilledBox( g::hdcBuffer, @@ -181,6 +181,17 @@ namespace hack { rainbowColor ); } + else if (roundedDistance > 5) + { + render::DrawFilledBox( + g::hdcBuffer, + screenHead.x - (width2 / 2), + screenHead.y + 25 - (height2 / 2), + width2, + height2, + rainbowColor + ); + } } if (config::rainbow)