From e1af23cd0ac8cfa65abf82d692f80a227a2e9b21 Mon Sep 17 00:00:00 2001 From: AtomBottle Date: Fri, 30 Jun 2023 15:37:48 +0800 Subject: [PATCH] v0.2 --- README.md | 31 +- apex_dma/Game.cpp | 248 ++++----- apex_dma/Game.h | 4 +- apex_dma/Makefile | 2 +- apex_dma/Math.cpp | 16 +- apex_dma/Math.h | 14 +- apex_dma/Readme.md | 27 - apex_dma/apex_dma.cpp | 278 ++++------ apex_dma/offsets.h | 6 +- apex_dma/vector.h | 76 +-- apex_guest/Client/Client/Client.rc | 14 +- apex_guest/Client/Client/Client.vcxproj | 250 ++++----- .../Client/Client/Client.vcxproj.filters | 160 +++--- apex_guest/Client/Client/Client.vcxproj.user | 2 +- apex_guest/Client/Client/RCa01724 | Bin 0 -> 3010 bytes apex_guest/Client/Client/main.cpp | 360 +++++++------ apex_guest/Client/Client/main.h | 9 + apex_guest/Client/Client/overlay.cpp | 485 +++++++++--------- apex_guest/Client/Client/overlay.h | 54 +- apex_guest/Overlay/Overlay/main.cpp | 14 +- 20 files changed, 1024 insertions(+), 1026 deletions(-) delete mode 100644 apex_dma/Readme.md create mode 100644 apex_guest/Client/Client/RCa01724 diff --git a/README.md b/README.md index 675ea01..97d4768 100644 --- a/README.md +++ b/README.md @@ -2,26 +2,23 @@ ##### UnknownCheats thread: https://www.unknowncheats.me/forum/apex-legends/406426-kvm-vmread-apex-esp-aimbot.html #new features -- Xp level ESP -- seerhealthESP/smooth aimbot from https://kgithub.com/KrackerCo/apex_dma_kvm_pub. -- platform userid ESP,i also keep one html file,you can input uid to search player's rank,selcet legend. -> idont know why after i add rank ESP,the client will crash,but i keep void"GetJson", these code are paste from https://www.unknowncheats.me/forum/apex-legends/520061-rank-statistics-players.html, -if somebody can finish this work, +pull request please -- support UTF-8 ESP for japanese/chinese -- free camera -- client's stream proof,include commandline,you can change it to view offset in client's main.cpp - void ShowWindow +- Xp Level ESP +- seerhealthESP/some aimbot code,paste from https://github.com/KrackerCo/apex_dma_kvm_pub. +- platform userid ESP,use it to search player's rank'. +> idont know why after add rank ESP,the client will crash,but i keep void"GetJson", these code are paste from https://www.unknowncheats.me/forum/apex-legends/520061-rank-statistics-players.html, + if someone can finish it, + pull request please +- support UTF-8 ESP for japanese and chinese +- free camera +- overlay's steam proof by setwindowdisplaffinity +- client's stream proof,(hide commandline),check it in client : main.cpp (void ShowWindow) - you can enable aimbot/esp for your teammates +- press mouse4 to disable visible check # how to use ## guest -- use vmprotect or rewrite your own version +- to bypass EAC detection,use ctrl+h to replace "serial-string" to anything you want. - release x64, use custom overlay. ## linux - - install 'libcurl' and 'jsoncpp',if cant complie ,check the Makefile -#### Archlinux -` sudo pacman -S jsoncpp` -` sudo pacman -S curl` - - for rank esp, you need your own apikey,reg one from apexlegendsapi - - what's "add_off"? , host need it to read the setting of guest,it's in apex_dma.cpp - + - change no-recoil strength in Game.cpp + - for rank esp, you need your own apikey,reg one from apexlegendsapi, use index.html ,input userid to search player's rank + - what's "add_off"? ,it's in apex_dma.cpp , will display in client's commandline * i have no time to teach about GPU passthrough or how to install this repo, because i only have a few time .....sorry of that* diff --git a/apex_dma/Game.cpp b/apex_dma/Game.cpp index 072b92e..64e6b2a 100644 --- a/apex_dma/Game.cpp +++ b/apex_dma/Game.cpp @@ -48,64 +48,64 @@ int Entity::getTeamId() int calc_level(int m_xp) { - if (m_xp<0) return 0; - if (m_xp<100) return 1; - if (m_xp<2750) return 2; - if (m_xp<6650) return 3; - if (m_xp<11400) return 4; - if (m_xp<17000) return 5; - if (m_xp<23350) return 6; - if (m_xp<30450) return 7; - if (m_xp<38300) return 8; - if (m_xp<46450) return 9; - if (m_xp<55050) return 10; - if (m_xp<64100) return 11; - if (m_xp<73600) return 12; - if (m_xp<83550) return 13; - if (m_xp<93950) return 14; - if (m_xp<104800) return 15; - if (m_xp<116100) return 16; - if (m_xp<127850) return 17; - if (m_xp<140050) return 18; - if (m_xp<152400) return 19; - if (m_xp<164900) return 20; - if (m_xp<177550) return 21; - if (m_xp<190350) return 22; - if (m_xp<203300) return 23; - if (m_xp<216400) return 24; - if (m_xp<229650) return 25; - if (m_xp<243050) return 26; - if (m_xp<256600) return 27; - if (m_xp<270300) return 28; - if (m_xp<284150) return 29; - if (m_xp<298150) return 30; - if (m_xp<312300) return 31; - if (m_xp<326600) return 32; - if (m_xp<341050) return 33; - if (m_xp<355650) return 34; - if (m_xp<370400) return 35; - if (m_xp<385300) return 36; - if (m_xp<400350) return 37; - if (m_xp<415550) return 38; - if (m_xp<430900) return 39; - if (m_xp<446400) return 40; - if (m_xp<462050) return 41; - if (m_xp<477850) return 42; - if (m_xp<493800) return 43; - if (m_xp<509900) return 44; - if (m_xp<526150) return 45; - if (m_xp<542550) return 46; - if (m_xp<559100) return 47; - if (m_xp<575800) return 48; - if (m_xp<592650) return 49; - if (m_xp<609650) return 50; - if (m_xp<626800) return 51; - if (m_xp<644100) return 52; - if (m_xp<661550) return 53; - if (m_xp<679150) return 54; - if (m_xp<696900) return 55; - if (m_xp<714800) return 56; - return floor((m_xp-714800+1)/18000) + 57; + if (m_xp < 0) return 0; + if (m_xp < 100) return 1; + if (m_xp < 2750) return 2; + if (m_xp < 6650) return 3; + if (m_xp < 11400) return 4; + if (m_xp < 17000) return 5; + if (m_xp < 23350) return 6; + if (m_xp < 30450) return 7; + if (m_xp < 38300) return 8; + if (m_xp < 46450) return 9; + if (m_xp < 55050) return 10; + if (m_xp < 64100) return 11; + if (m_xp < 73600) return 12; + if (m_xp < 83550) return 13; + if (m_xp < 93950) return 14; + if (m_xp < 104800) return 15; + if (m_xp < 116100) return 16; + if (m_xp < 127850) return 17; + if (m_xp < 140050) return 18; + if (m_xp < 152400) return 19; + if (m_xp < 164900) return 20; + if (m_xp < 177550) return 21; + if (m_xp < 190350) return 22; + if (m_xp < 203300) return 23; + if (m_xp < 216400) return 24; + if (m_xp < 229650) return 25; + if (m_xp < 243050) return 26; + if (m_xp < 256600) return 27; + if (m_xp < 270300) return 28; + if (m_xp < 284150) return 29; + if (m_xp < 298150) return 30; + if (m_xp < 312300) return 31; + if (m_xp < 326600) return 32; + if (m_xp < 341050) return 33; + if (m_xp < 355650) return 34; + if (m_xp < 370400) return 35; + if (m_xp < 385300) return 36; + if (m_xp < 400350) return 37; + if (m_xp < 415550) return 38; + if (m_xp < 430900) return 39; + if (m_xp < 446400) return 40; + if (m_xp < 462050) return 41; + if (m_xp < 477850) return 42; + if (m_xp < 493800) return 43; + if (m_xp < 509900) return 44; + if (m_xp < 526150) return 45; + if (m_xp < 542550) return 46; + if (m_xp < 559100) return 47; + if (m_xp < 575800) return 48; + if (m_xp < 592650) return 49; + if (m_xp < 609650) return 50; + if (m_xp < 626800) return 51; + if (m_xp < 644100) return 52; + if (m_xp < 661550) return 53; + if (m_xp < 679150) return 54; + if (m_xp < 696900) return 55; + if (m_xp < 714800) return 56; + return floor((m_xp - 714800 + 1) / 18000) + 57; } int Entity::getHealth() @@ -165,7 +165,7 @@ bool Entity::isAlive() float Entity::lastVisTime() { - return *(float*)(buffer + OFFSET_VISIBLE_TIME); + return *(float*)(buffer + OFFSET_VISIBLE_TIME); } Vector Entity::getBonePosition(int id) @@ -188,35 +188,35 @@ Vector Entity::getBonePosition(int id) Vector Entity::getBonePositionByHitbox(int id) { Vector origin = getPosition(); - - //BoneByHitBox + + //BoneByHitBox uint64_t Model = *(uint64_t*)(buffer + OFFSET_STUDIOHDR); - + //get studio hdr uint64_t StudioHdr; apex_mem.Read(Model + 0x8, StudioHdr); - - //get hitbox array + + //get hitbox array uint16_t HitboxCache; apex_mem.Read(StudioHdr + 0x34, HitboxCache); uint64_t HitBoxsArray = StudioHdr + ((uint16_t)(HitboxCache & 0xFFFE) << (4 * (HitboxCache & 1))); - + uint16_t IndexCache; - apex_mem.Read(HitBoxsArray + 0x4, IndexCache); + apex_mem.Read(HitBoxsArray + 0x4, IndexCache); int HitboxIndex = ((uint16_t)(IndexCache & 0xFFFE) << (4 * (IndexCache & 1))); - + uint16_t Bone; apex_mem.Read(HitBoxsArray + HitboxIndex + (id * 0x20), Bone); - if(Bone < 0 || Bone > 255) + if (Bone < 0 || Bone > 255) return Vector(); - - //hitpos + + //hitpos uint64_t BoneArray = *(uint64_t*)(buffer + OFFSET_BONES); - + matrix3x4_t Matrix = {}; apex_mem.Read(BoneArray + Bone * sizeof(matrix3x4_t), Matrix); - + return Vector(Matrix.m_flMatVal[0][3] + origin.x, Matrix.m_flMatVal[1][3] + origin.y, Matrix.m_flMatVal[2][3] + origin.z); } @@ -241,11 +241,11 @@ float Entity::GetYaw() apex_mem.Read(ptr + OFFSET_YAW, yaw); if (yaw < 0) - yaw += 360; + yaw += 360; yaw += 90; if (yaw > 360) - yaw -= 360; - + yaw -= 360; + return yaw; } @@ -298,8 +298,8 @@ QAngle Entity::GetRecoil() void Entity::get_name(uint64_t g_Base, uint64_t index, char* name) { index *= 0x10; - uint64_t name_ptr = 0; - apex_mem.Read(g_Base + OFFSET_NAME_LIST + index, name_ptr); + uint64_t name_ptr = 0; + apex_mem.Read(g_Base + OFFSET_NAME_LIST + index, name_ptr); apex_mem.ReadArray(name_ptr, name, 32); } @@ -340,10 +340,10 @@ float CalculateFov(Entity& from, Entity& target) return Math::GetFov(ViewAngles, Angle); } -QAngle CalculateBestBoneAim(Entity& from, uintptr_t t, float max_fov , int recoil_val) +QAngle CalculateBestBoneAim(Entity& from, uintptr_t t, float max_fov) { Entity target = getEntity(t); - if(firing_range) + if (firing_range) { if (!target.isAlive()) { @@ -357,11 +357,11 @@ QAngle CalculateBestBoneAim(Entity& from, uintptr_t t, float max_fov , int recoi return QAngle(0, 0, 0); } } - + Vector LocalCamera = from.GetCamPos(); Vector TargetBonePosition = target.getBonePositionByHitbox(bone); QAngle CalculatedAngles = QAngle(0, 0, 0); - + WeaponXEntity curweap = WeaponXEntity(); curweap.update(from.ptr); float BulletSpeed = curweap.get_projectile_speed(); @@ -385,27 +385,27 @@ QAngle CalculateBestBoneAim(Entity& from, uintptr_t t, float max_fov , int recoi TargetBonePosition += (target.getAbsVelocity() * HorizontalTime); } */ - + //more accurate prediction if (BulletSpeed > 1.f) { PredictCtx Ctx; Ctx.StartPos = LocalCamera; - Ctx.TargetPos = TargetBonePosition; - Ctx.BulletSpeed = BulletSpeed - (BulletSpeed*0.08); - Ctx.BulletGravity = BulletGrav + (BulletGrav*0.05); + Ctx.TargetPos = TargetBonePosition; + Ctx.BulletSpeed = BulletSpeed - (BulletSpeed * 0.08); + Ctx.BulletGravity = BulletGrav + (BulletGrav * 0.05); Ctx.TargetVel = target.getAbsVelocity(); if (BulletPredict(Ctx)) - CalculatedAngles = QAngle{Ctx.AimAngles.x, Ctx.AimAngles.y, 0.f}; - } + CalculatedAngles = QAngle{ Ctx.AimAngles.x, Ctx.AimAngles.y, 0.f }; + } if (CalculatedAngles == QAngle(0, 0, 0)) - + { - float random1 = (float)(rand() % 7 + 1)/100; - float random2 = (float)(rand() % 7 + 1)/100; - Vector start = LocalCamera; + float random1 = (float)(rand() % 7 + 1) / 100; + float random2 = (float)(rand() % 7 + 1) / 100; + Vector start = LocalCamera; Vector end = TargetBonePosition; Vector dir = (end - start).Normalize(); Vector mid1 = start + (dir * ((end - start).Length() * (0.33f + random1))); @@ -421,13 +421,13 @@ QAngle CalculateBestBoneAim(Entity& from, uintptr_t t, float max_fov , int recoi QAngle ViewAngles = from.GetViewAngles(); QAngle SwayAngles = from.GetSwayAngles(); //remove sway and recoil - if(aim_no_recoil){ - QAngle sway = SwayAngles - ViewAngles; - sway.x = sway.x * recoil_val; //pitch - sway.y = sway.y * recoil_val; //yaw - sway.z = sway.z * recoil_val; - CalculatedAngles-=sway; - } + if (aim_no_recoil) { + QAngle sway = SwayAngles - ViewAngles; + sway.x = sway.x * 0.8; //pitch + sway.y = sway.y * 0.75; //yaw + sway.z = sway.z * 0.9; + CalculatedAngles -= sway; + } Math::NormalizeAngles(CalculatedAngles); QAngle Delta = CalculatedAngles - ViewAngles; double fov = Math::GetFov(SwayAngles, CalculatedAngles); @@ -438,24 +438,24 @@ QAngle CalculateBestBoneAim(Entity& from, uintptr_t t, float max_fov , int recoi Math::NormalizeAngles(Delta); - QAngle RandomAngles = QAngle( - (rand() % 5 - 4) * 0.001f, - (rand() % 5 - 4) * 0.001f, - (rand() % 5 - 4) * 0.001f - ); - QAngle RandomAnglesMax = QAngle( - (rand() % 8 - 4) * 0.001f, - (rand() % 8 - 4) * 0.001f, - (rand() % 8 - 4) * 0.001f - ); - miss = rand() % 100; - QAngle SmoothedAngles = ViewAngles + Delta/smooth + RandomAngles; - if(miss >= 60){ - QAngle SmoothedAngles = ViewAngles + Delta/smooth + RandomAnglesMax; - } - else if(miss <= 50){ - QAngle SmoothedAngles = ViewAngles + Delta/smooth + RandomAngles; - } + QAngle RandomAngles = QAngle( + (rand() % 4 - 2) * 0.001f, + (rand() % 4 - 2) * 0.001f, + (rand() % 4 - 2) * 0.001f + ); + QAngle RandomAnglesMax = QAngle( + (rand() % 6 - 2) * 0.001f, + (rand() % 6 - 2) * 0.001f, + (rand() % 6 - 2) * 0.001f + ); + miss = rand() % 100; + QAngle SmoothedAngles = ViewAngles + Delta / smooth + RandomAngles; + if (miss >= 70) { + QAngle SmoothedAngles = ViewAngles + Delta / smooth + RandomAnglesMax; + } + else { + QAngle SmoothedAngles = ViewAngles + Delta / smooth + RandomAngles; + } return SmoothedAngles; } @@ -503,24 +503,24 @@ bool WorldToScreen(Vector from, float* m_vMatrix, int targetWidth, int targetHei void WeaponXEntity::update(uint64_t LocalPlayer) { - extern uint64_t g_Base; + extern uint64_t g_Base; uint64_t entitylist = g_Base + OFFSET_ENTITYLIST; uint64_t wephandle = 0; - apex_mem.Read(LocalPlayer + OFFSET_WEAPON, wephandle); - + apex_mem.Read(LocalPlayer + OFFSET_WEAPON, wephandle); + wephandle &= 0xffff; uint64_t wep_entity = 0; - apex_mem.Read(entitylist + (wephandle << 5), wep_entity); + apex_mem.Read(entitylist + (wephandle << 5), wep_entity); projectile_speed = 0; - apex_mem.Read(wep_entity + OFFSET_BULLET_SPEED, projectile_speed); + apex_mem.Read(wep_entity + OFFSET_BULLET_SPEED, projectile_speed); projectile_scale = 0; - apex_mem.Read(wep_entity + OFFSET_BULLET_SCALE, projectile_scale); + apex_mem.Read(wep_entity + OFFSET_BULLET_SCALE, projectile_scale); zoom_fov = 0; - apex_mem.Read(wep_entity + OFFSET_ZOOM_FOV, zoom_fov); + apex_mem.Read(wep_entity + OFFSET_ZOOM_FOV, zoom_fov); ammo = 0; - apex_mem.Read(wep_entity + OFFSET_AMMO, ammo); + apex_mem.Read(wep_entity + OFFSET_AMMO, ammo); } float WeaponXEntity::get_projectile_speed() diff --git a/apex_dma/Game.h b/apex_dma/Game.h index 4a5f04c..847a1f4 100644 --- a/apex_dma/Game.h +++ b/apex_dma/Game.h @@ -59,7 +59,7 @@ public: Vector getPosition(); bool isItem(); bool isGlowing(); - + void enableGlow(); void disableGlow(); }; @@ -94,7 +94,7 @@ Entity getEntity(uintptr_t ptr); Item getItem(uintptr_t ptr); bool WorldToScreen(Vector from, float* m_vMatrix, int targetWidth, int targetHeight, Vector& to); float CalculateFov(Entity& from, Entity& target); -QAngle CalculateBestBoneAim(Entity& from, uintptr_t target, float max_fov , int recoil_val); +QAngle CalculateBestBoneAim(Entity& from, uintptr_t target, float max_fov); void get_class_name(uint64_t entity_ptr, char* out_str); void charge_rifle_hack(uint64_t entity_ptr); diff --git a/apex_dma/Makefile b/apex_dma/Makefile index f443389..6ed390b 100644 --- a/apex_dma/Makefile +++ b/apex_dma/Makefile @@ -1,6 +1,6 @@ CXX=g++ CXXFLAGS=-I./memflow_lib/memflow-win32-ffi/ -I./memflow_lib/memflow-ffi/ -L./memflow_lib/target/release -Wno-multichar -LIBS=-lm -Wl,--no-as-needed -ldl -lpthread -l:libmemflow_win32_ffi.a -lcurl -l:libjsoncpp.so +LIBS=-lm -Wl,--no-as-needed -ldl -lpthread -l:libmemflow_win32_ffi.a OUTDIR=./build OBJDIR=$(OUTDIR)/obj diff --git a/apex_dma/Math.cpp b/apex_dma/Math.cpp index f339e11..41c31be 100644 --- a/apex_dma/Math.cpp +++ b/apex_dma/Math.cpp @@ -17,15 +17,15 @@ void Math::NormalizeAngles(QAngle& angle) Vector Math::Bezier(const Vector& start, const Vector& mid1, const Vector& mid2, const Vector& end, float t) { - Vector q1 = start + (mid1 - start) * t; - Vector q2 = mid1 + (mid2 - mid1) * t; - Vector q3 = mid2 + (end - mid2) * t; + Vector q1 = start + (mid1 - start) * t; + Vector q2 = mid1 + (mid2 - mid1) * t; + Vector q3 = mid2 + (end - mid2) * t; - Vector r1 = q1 + (q2 - q1) * t; - Vector r2 = q2 + (q3 - q2) * t; + Vector r1 = q1 + (q2 - q1) * t; + Vector r2 = q2 + (q3 - q2) * t; - return r1 + (r2 - r1) * t; - return Vector(); + return r1 + (r2 - r1) * t; + return Vector(); } QAngle Math::CalcAngle(const Vector& src, const Vector& dst) @@ -33,7 +33,7 @@ QAngle Math::CalcAngle(const Vector& src, const Vector& dst) QAngle angle = QAngle(); SVector delta = SVector((src.x - dst.x), (src.y - dst.y), (src.z - dst.z)); - double hyp = sqrt(delta.x*delta.x + delta.y * delta.y); + double hyp = sqrt(delta.x * delta.x + delta.y * delta.y); angle.x = atan(delta.z / hyp) * (180.0f / M_PI); angle.y = atan(delta.y / delta.x) * (180.0f / M_PI); diff --git a/apex_dma/Math.h b/apex_dma/Math.h index c8408a4..666465c 100644 --- a/apex_dma/Math.h +++ b/apex_dma/Math.h @@ -7,14 +7,14 @@ struct SVector float y; float z; SVector(float x1, float y1, float z1) - { + { x = x1; y = y1; z = z1; } SVector(QAngle q) - { + { x = q.x; y = q.y; z = q.z; @@ -23,9 +23,9 @@ struct SVector namespace Math { - Vector Bezier(const Vector& start, const Vector& mid1, const Vector& mid2, const Vector& end, float t); - void NormalizeAngles(QAngle& angle); - double GetFov(const QAngle& viewAngle, const QAngle& aimAngle); - double DotProduct(const Vector& v1, const float* v2); - QAngle CalcAngle(const Vector& src, const Vector& dst); + Vector Bezier(const Vector& start, const Vector& mid1, const Vector& mid2, const Vector& end, float t); + void NormalizeAngles(QAngle& angle); + double GetFov(const QAngle& viewAngle, const QAngle& aimAngle); + double DotProduct(const Vector& v1, const float* v2); + QAngle CalcAngle(const Vector& src, const Vector& dst); } diff --git a/apex_dma/Readme.md b/apex_dma/Readme.md deleted file mode 100644 index 5e79f7f..0000000 --- a/apex_dma/Readme.md +++ /dev/null @@ -1,27 +0,0 @@ -# apex_dma_kvm_pub -##### UnknownCheats thread: https://www.unknowncheats.me/forum/apex-legends/406426-kvm-vmread-apex-esp-aimbot.html -#new features - -- Xp level ESP -- seerhealthESP/smooth aimbot from https://kgithub.com/KrackerCo/apex_dma_kvm_pub. -- platform userid ESP,i also keep one html file,you can input uid to search player's rank,selcet legend. -> idont know why after i add rank ESP,the client will crash,but i keep void"GetJson", these code are paste from https://www.unknowncheats.me/forum/apex-legends/520061-rank-statistics-players.html, -if somebody can finish this work, +pull request please -- support UTF-8 ESP for japanese/chinese -- free camera -- client's stream proof,include commandline,you can change it to view offset in client's main.cpp - void ShowWindow -- you can enable aimbot/esp for your teammates -# how to use -## guest -- use vmprotect or rewrite your own version -- release x64, use custom overlay. -## linux - - install 'libcurl' and 'jsoncpp',if cant complie ,check the Makefile -#### Archlinux -` sudo pacman -S jsoncpp` -` sudo pacman -S curl` - - for rank esp, you need your own apikey,reg one from apexlegendsapi - - what's "add_off"? , host need it to read the setting of guest,it's in apex_dma.cpp - -* i have no time to teach about GPU passthrough or how to install this repo, because i only have a few time .....sorry of that* \ No newline at end of file diff --git a/apex_dma/apex_dma.cpp b/apex_dma/apex_dma.cpp index f79fd9e..7c5ab01 100644 --- a/apex_dma/apex_dma.cpp +++ b/apex_dma/apex_dma.cpp @@ -5,8 +5,6 @@ #include #include #include -#include "json/json.h" -#include "curl/curl.h" #include #include "Game.h" #include @@ -14,19 +12,18 @@ Memory apex_mem; Memory client_mem; -uint64_t add_off = 0x411e0; +uint64_t add_off = 0xa1040; bool freecam = false; bool lockall_enable = false; -int recoil = 0.5; bool firing_range = false; bool active = true; uintptr_t aimentity = 0; uintptr_t tmp_aimentity = 0; uintptr_t lastaimentity = 0; float kmax = 999.0f; -float max_dist = 200.0f*40.0f; +float max_dist = 200.0f * 40.0f; int team_player = 0; float max_fov = 15; const int toRead = 100; @@ -84,28 +81,6 @@ int tmp_all_spec = 0, allied_spectators = 0; ////////////////////////////////////////////////////////////////////////////////////////////////// -static size_t WriteCallback(void *contents, size_t size, size_t nmemb, void *userp) -{ - ((std::string *)userp)->append((char *)contents, size * nmemb); - return size * nmemb; -} -std::string getJson(std::string url) -{ - CURL *curl; - CURLcode res; - std::string readBuffer; - curl = curl_easy_init(); - if (curl) - { - curl_easy_setopt(curl, CURLOPT_URL, url.c_str()); - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback); - curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer); - res = curl_easy_perform(curl); - curl_easy_cleanup(curl); - } - return readBuffer; -} - void ProcessPlayer(Entity& LPlayer, Entity& target, uint64_t entitylist, int index) { int entity_team = target.getTeamId(); @@ -115,9 +90,9 @@ void ProcessPlayer(Entity& LPlayer, Entity& target, uint64_t entitylist, int ind float localyaw = LPlayer.GetYaw(); float targetyaw = target.GetYaw(); - if(localyaw==targetyaw) + if (localyaw == targetyaw) { - if(LPlayer.getTeamId() == entity_team) + if (LPlayer.getTeamId() == entity_team) tmp_all_spec++; else tmp_spec++; @@ -130,12 +105,12 @@ void ProcessPlayer(Entity& LPlayer, Entity& target, uint64_t entitylist, int ind float dist = LocalPlayerPosition.DistTo(EntityPosition); if (dist > max_dist) return; - if(!firing_range && !lockall_enable) + if (!firing_range && !lockall_enable) if (entity_team < 0 || entity_team>50 || entity_team == team_player) return; - - if(aim==2) + + if (aim == 2) { - if((target.lastVisTime() > lastvis_aim[index])) + if ((target.lastVisTime() > lastvis_aim[index])) { float fov = CalculateFov(LPlayer, target); if (fov < kmax) @@ -146,9 +121,9 @@ void ProcessPlayer(Entity& LPlayer, Entity& target, uint64_t entitylist, int ind } else { - if(aimentity==target.ptr) + if (aimentity == target.ptr) { - aimentity=tmp_aimentity=lastaimentity=0; + aimentity = tmp_aimentity = lastaimentity = 0; } } } @@ -172,12 +147,12 @@ void DoActions() std::this_thread::sleep_for(std::chrono::milliseconds(1)); uint32_t counter = 0; - while (g_Base!=0 && c_Base!=0) + while (g_Base != 0 && c_Base != 0) { - std::this_thread::sleep_for(std::chrono::milliseconds(30)); - - uint64_t LocalPlayer = 0; - apex_mem.Read(g_Base + OFFSET_LOCAL_ENT, LocalPlayer); + std::this_thread::sleep_for(std::chrono::milliseconds(30)); + + uint64_t LocalPlayer = 0; + apex_mem.Read(g_Base + OFFSET_LOCAL_ENT, LocalPlayer); if (LocalPlayer == 0) continue; @@ -192,36 +167,6 @@ void DoActions() uint64_t entitylist = g_Base + OFFSET_ENTITYLIST; - - //an model index dumper,but sometimecarsh game - /* - uint64_t viewmodel_handle = 0; - apex_mem.Read(LocalPlayer + 0x2d78, viewmodel_handle); - viewmodel_handle &= 0xffff; - uint64_t viewmodel_entity = 0; - apex_mem.Read(entitylist + (viewmodel_handle << 5), viewmodel_entity); - m_currentFrame.modelIndex=0x00a8 - m_hViewModels=0x2d78 - m_ModelName=0x00a8 - apex_mem.Write(viewmodel_entity + 0x00a8, 975); - - index dumper - bool dump_loop = false; - if(model_index <= 2492 && dump_loop){ - uint64_t name_ptr; - char ModelName[200] = { 0 }; - model_index = model_index + 1; - apex_mem.Read(viewmodel_entity + 0x0030, name_ptr); - apex_mem.ReadArray(name_ptr, ModelName, 200); - printf("model: %s , index: %u \n", ModelName,model_index); - if (strstr(ModelName, "mdl/Weapons/arms/pov_pilot_light_wraith_cyber_ninja.rmdl")) - { - printf("%u\n", model_index); - dump_loop = false; - } - } - } - */ uint64_t baseent = 0; apex_mem.Read(entitylist, baseent); if (baseent == 0) @@ -235,18 +180,18 @@ void DoActions() tmp_all_spec = 0; int current_obid; - if (freecam){ + if (freecam) { apex_mem.Write(LocalPlayer + OFFSET_OBSERVER_MODE, 7); } - else{ + else { apex_mem.Read(LocalPlayer + OFFSET_OBSERVER_MODE, current_obid); - if(current_obid == 7){ - apex_mem.Write(LocalPlayer+OFFSET_OBSERVER_MODE, 0); + if (current_obid == 7) { + apex_mem.Write(LocalPlayer + OFFSET_OBSERVER_MODE, 0); } } - if(firing_range) + if (firing_range) { - int c=0; + int c = 0; for (int i = 0; i < 10000; i++) { uint64_t centity = 0; @@ -260,11 +205,11 @@ void DoActions() continue; } - if(player_glow && !Target.isGlowing()) + if (player_glow && !Target.isGlowing()) { Target.enableGlow(); } - else if(!player_glow && Target.isGlowing()) + else if (!player_glow && Target.isGlowing()) { Target.disableGlow(); } @@ -287,7 +232,7 @@ void DoActions() { continue; } - + ProcessPlayer(LPlayer, Target, entitylist, i); int entity_team = Target.getTeamId(); @@ -296,18 +241,18 @@ void DoActions() continue; } - if(player_glow && !Target.isGlowing()) + if (player_glow && !Target.isGlowing()) { Target.enableGlow(); } - else if(!player_glow && Target.isGlowing()) + else if (!player_glow && Target.isGlowing()) { Target.disableGlow(); } } } - if(!spectators && !allied_spectators) + if (!spectators && !allied_spectators) { spectators = tmp_spec; allied_spectators = tmp_all_spec; @@ -316,7 +261,7 @@ void DoActions() { //refresh spectators count every ~2 seconds counter++; - if(counter==70) + if (counter == 70) { spectators = tmp_spec; allied_spectators = tmp_all_spec; @@ -324,7 +269,7 @@ void DoActions() } } - if(!klock) + if (!klock) aimentity = tmp_aimentity; else aimentity = lastaimentity; @@ -340,10 +285,10 @@ player players[toRead]; static void EspLoop() { esp_t = true; - while(esp_t) + while (esp_t) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); - while(g_Base!=0 && c_Base!=0) + while (g_Base != 0 && c_Base != 0) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); if (esp) @@ -355,7 +300,7 @@ static void EspLoop() if (LocalPlayer == 0) { knext = true; - while(knext && g_Base!=0 && c_Base!=0 && esp) + while (knext && g_Base != 0 && c_Base != 0 && esp) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); } @@ -366,7 +311,7 @@ static void EspLoop() if (team_player < 0 || team_player>50) { knext = true; - while(knext && g_Base!=0 && c_Base!=0 && esp) + while (knext && g_Base != 0 && c_Base != 0 && esp) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); } @@ -382,20 +327,20 @@ static void EspLoop() apex_mem.Read(viewMatrix, m); uint64_t entitylist = g_Base + OFFSET_ENTITYLIST; - - memset(players,0,sizeof(players)); - if(firing_range) + + memset(players, 0, sizeof(players)); + if (firing_range) { - int c=0; + int c = 0; for (int i = 0; i < 10000; i++) { uint64_t centity = 0; - apex_mem.Read( entitylist + ((uint64_t)i << 5), centity); + apex_mem.Read(entitylist + ((uint64_t)i << 5), centity); if (centity == 0) { continue; - } - + } + if (LocalPlayer == centity) { continue; @@ -417,10 +362,10 @@ static void EspLoop() Vector EntityPosition = Target.getPosition(); float dist = LocalPlayerPosition.DistTo(EntityPosition); if (dist > max_dist || dist < 50.0f) - { + { continue; } - + Vector bs = Vector(); WorldToScreen(EntityPosition, m.matrix, 1920, 1080, bs); if (bs.x > 0 && bs.y > 0) @@ -440,8 +385,7 @@ static void EspLoop() int xp_level = calc_level(xp); uint64_t uid = 0; apex_mem.Read(centity + OFFSET_UID, uid); - - players[c] = + players[c] = { dist, entity_team, @@ -458,33 +402,33 @@ static void EspLoop() xp_level, maxshield, armortype, - uid + uid }; - Target.get_name(g_Base, i-1, &players[c].name[0]); + Target.get_name(g_Base, i - 1, &players[c].name[0]); lastvis_esp[c] = Target.lastVisTime(); valid = true; c++; } } - } + } else { for (int i = 0; i < toRead; i++) { uint64_t centity = 0; - apex_mem.Read( entitylist + ((uint64_t)i << 5), centity); + apex_mem.Read(entitylist + ((uint64_t)i << 5), centity); if (centity == 0) { continue; } - + if (LocalPlayer == centity) { continue; } Entity Target = getEntity(centity); - + if (!Target.isPlayer()) { continue; @@ -496,22 +440,22 @@ static void EspLoop() } int entity_team = Target.getTeamId(); - if (!lockall_enable){ + if (!lockall_enable) { if (entity_team < 0 || entity_team>50 || entity_team == team_player) { continue; } } - else{ - if (entity_team < 0 || entity_team>50){ - continue; - } + else { + if (entity_team < 0 || entity_team>50) { + continue; + } } Vector EntityPosition = Target.getPosition(); float dist = LocalPlayerPosition.DistTo(EntityPosition); if (dist > max_dist || dist < 50.0f) - { + { continue; } @@ -531,12 +475,12 @@ static void EspLoop() int armortype = Target.getArmortype(); int xp; apex_mem.Read(centity + OFFSET_XP, xp); - + int xp_level = calc_level(xp); uint64_t uid; apex_mem.Read(centity + OFFSET_UID, uid); - players[i] = + players[i] = { dist, entity_team, @@ -555,7 +499,7 @@ static void EspLoop() armortype, uid }; - Target.get_name(g_Base, i-1, &players[i].name[0]); + Target.get_name(g_Base, i - 1, &players[i].name[0]); lastvis_esp[i] = Target.lastVisTime(); valid = true; } @@ -563,7 +507,7 @@ static void EspLoop() } knext = true; - while(knext && g_Base!=0 && c_Base!=0 && esp) + while (knext && g_Base != 0 && c_Base != 0 && esp) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); } @@ -579,28 +523,28 @@ static void AimbotLoop() while (aim_t) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); - while (g_Base!=0 && c_Base!=0) + while (g_Base != 0 && c_Base != 0) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); - if (aim>0) + if (aim > 0) { if (aimentity == 0 || !aiming) { - klock=false; - lastaimentity=0; + klock = false; + lastaimentity = 0; continue; } - klock=true; + klock = true; lastaimentity = aimentity; uint64_t LocalPlayer = 0; apex_mem.Read(g_Base + OFFSET_LOCAL_ENT, LocalPlayer); if (LocalPlayer == 0) continue; Entity LPlayer = getEntity(LocalPlayer); - QAngle Angles = CalculateBestBoneAim(LPlayer, aimentity, max_fov, recoil); + QAngle Angles = CalculateBestBoneAim(LPlayer, aimentity, max_fov); if (Angles.x == 0 && Angles.y == 0) { - klock=false; - lastaimentity=0; + klock = false; + lastaimentity = 0; continue; } LPlayer.SetViewAngles(Angles); @@ -620,70 +564,68 @@ static void set_vars(uint64_t add_addr) uint64_t aim_addr = 0; client_mem.Read(add_addr + sizeof(uint64_t), aim_addr); uint64_t esp_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*2, esp_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 2, esp_addr); uint64_t aiming_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*3, aiming_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 3, aiming_addr); uint64_t g_Base_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*4, g_Base_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 4, g_Base_addr); uint64_t next_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*5, next_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 5, next_addr); uint64_t player_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*6, player_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 6, player_addr); uint64_t valid_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*7, valid_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 7, valid_addr); uint64_t max_dist_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*8, max_dist_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 8, max_dist_addr); uint64_t item_glow_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*9, item_glow_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 9, item_glow_addr); uint64_t player_glow_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*10, player_glow_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 10, player_glow_addr); uint64_t aim_no_recoil_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*11, aim_no_recoil_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 11, aim_no_recoil_addr); uint64_t smooth_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*12, smooth_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 12, smooth_addr); uint64_t max_fov_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*13, max_fov_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 13, max_fov_addr); uint64_t bone_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*14, bone_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 14, bone_addr); uint64_t thirdperson_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*15, thirdperson_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 15, thirdperson_addr); uint64_t spectators_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*16, spectators_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 16, spectators_addr); uint64_t allied_spectators_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*17, allied_spectators_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 17, allied_spectators_addr); uint64_t chargerifle_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*18, chargerifle_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 18, chargerifle_addr); uint64_t shooting_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*19, shooting_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 19, shooting_addr); uint64_t freecam_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*20, freecam_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 20, freecam_addr); uint64_t lockall_addr = 0; - client_mem.Read(add_addr + sizeof(uint64_t)*21, lockall_addr); - uint64_t firing_range_addr=0; - client_mem.Read(add_addr + sizeof(uint64_t)*22, firing_range_addr); - uint64_t recoil_addr=0; - client_mem.Read(add_addr + sizeof(uint64_t)*23, recoil_addr); + client_mem.Read(add_addr + sizeof(uint64_t) * 21, lockall_addr); + uint64_t firing_range_addr = 0; + client_mem.Read(add_addr + sizeof(uint64_t) * 22, firing_range_addr); uint32_t check = 0; client_mem.Read(check_addr, check); - - if(check != 0xABCD) + + if (check != 0xABCD) { printf("check add_off,or start client before start host\n"); active = false; return; } vars_t = true; - while(vars_t) + while (vars_t) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); - if(c_Base!=0 && g_Base!=0) + if (c_Base != 0 && g_Base != 0) { client_mem.Write(check_addr, 0); printf("\nsuccess.\n"); } - while(c_Base!=0 && g_Base!=0) + while (c_Base != 0 && g_Base != 0) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); client_mem.Write(g_Base_addr, g_Base); @@ -704,10 +646,10 @@ static void set_vars(uint64_t add_addr) client_mem.Read(freecam_addr, freecam); client_mem.Read(lockall_addr, lockall_enable); client_mem.Read(firing_range_addr, firing_range); - client_mem.Read(recoil_addr, recoil); - if(esp && knext) + + if (esp && knext) { - if(valid) + if (valid) client_mem.WriteArray(player_addr, players, toRead); client_mem.Write(valid_addr, valid); client_mem.Write(next_addr, true); //next @@ -717,8 +659,8 @@ static void set_vars(uint64_t add_addr) { client_mem.Read(next_addr, next_val); std::this_thread::sleep_for(std::chrono::milliseconds(1)); - } while (next_val && g_Base!=0 && c_Base!=0); - + } while (next_val && g_Base != 0 && c_Base != 0); + knext = false; } } @@ -727,9 +669,9 @@ static void set_vars(uint64_t add_addr) } -int main(int argc, char *argv[]) +int main(int argc, char* argv[]) { - if(geteuid() != 0) + if (geteuid() != 0) { printf("Error: %s please run in root\n", argv[0]); return 0; @@ -745,11 +687,11 @@ int main(int argc, char *argv[]) std::thread esp_thr; std::thread actions_thr; std::thread vars_thr; - while(active) + while (active) { - if(apex_mem.get_proc_status() != process_status::FOUND_READY) + if (apex_mem.get_proc_status() != process_status::FOUND_READY) { - if(aim_t) + if (aim_t) { aim_t = false; esp_t = false; @@ -766,7 +708,7 @@ int main(int argc, char *argv[]) apex_mem.open_proc(ap_proc); - if(apex_mem.get_proc_status() == process_status::FOUND_READY) + if (apex_mem.get_proc_status() == process_status::FOUND_READY) { g_Base = apex_mem.get_proc_baseaddr(); printf("\nFounded Apex!\n"); @@ -774,7 +716,7 @@ int main(int argc, char *argv[]) aimbot_thr = std::thread(AimbotLoop); esp_thr = std::thread(EspLoop); actions_thr = std::thread(DoActions); - + aimbot_thr.detach(); esp_thr.detach(); actions_thr.detach(); @@ -785,22 +727,22 @@ int main(int argc, char *argv[]) apex_mem.check_proc(); } - if(client_mem.get_proc_status() != process_status::FOUND_READY) + if (client_mem.get_proc_status() != process_status::FOUND_READY) { - if(vars_t) + if (vars_t) { vars_t = false; c_Base = 0; vars_thr.~thread(); } - + std::this_thread::sleep_for(std::chrono::seconds(1)); printf("Waiting for client...\n"); client_mem.open_proc(cl_proc); - if(client_mem.get_proc_status() == process_status::FOUND_READY) + if (client_mem.get_proc_status() == process_status::FOUND_READY) { c_Base = client_mem.get_proc_baseaddr(); printf("\nFounded client!\n"); diff --git a/apex_dma/offsets.h b/apex_dma/offsets.h index 19c48e7..7c167bc 100644 --- a/apex_dma/offsets.h +++ b/apex_dma/offsets.h @@ -8,7 +8,7 @@ #define OFFSET_WEAPON_NAME 0x1858 //m_weaponNameIndex 2nd one #define OFFSET_ENTITYLIST 0x1e53c68 //cl_entitylist #define OFFSET_LOCAL_ENT 0x22036C0 + 0x8 //.?AVC_GameMovement@@ + 0x8 -#define OFFSET_NAME_LIST 0xbe94be0 //NameList +#define OFFSET_NAME_LIST 0xbe94b60 //NameList #define OFFSET_TEAM 0x044c //m_iTeamNum #define OFFSET_HEALTH 0x043c //m_iHealth @@ -34,13 +34,13 @@ #define OFFSET_OBSERVING_TARGET 0x3500 //m_hObserverTarget #define OFFSET_MATRIX 0x11a350 //ViewMatrix -#define OFFSET_RENDER 0x743AB20 //ViewRender +#define OFFSET_RENDER 0x743AAA0 //ViewRender #define OFFSET_BULLET_SPEED 0x1f3c #define OFFSET_BULLET_SCALE 0x1f44 #define OFFSET_ZOOM_FOV 0x16b0 + 0xb8 //m_playerData + m_curZoomFOV #define OFFSET_AMMO 0x1634 //m_ammoInClip //1634 - + #define OFFSET_ITEM_GLOW 0x2c0 //m_highlightFunctionBits #define OFFSET_GLOW_T1 0x262 //16256 = enabled, 0 = disabled diff --git a/apex_dma/vector.h b/apex_dma/vector.h index ca57189..2b034af 100644 --- a/apex_dma/vector.h +++ b/apex_dma/vector.h @@ -147,8 +147,8 @@ public: } bool IsZero(float tolerance = 0.01f) const { - return (x > -tolerance && x < tolerance && - y > -tolerance && y < tolerance && + return (x > -tolerance && x < tolerance&& + y > -tolerance && y < tolerance&& z > -tolerance && z < tolerance); } Vector Normalize(); @@ -246,7 +246,7 @@ inline Vector& Vector::operator*=(float fl) x *= fl; y *= fl; z *= fl; - + return *this; } //=============================================== @@ -255,7 +255,7 @@ inline Vector& Vector::operator*=(const Vector& v) x *= v.x; y *= v.y; z *= v.z; - + return *this; } //=============================================== @@ -264,7 +264,7 @@ inline Vector& Vector::operator+=(float fl) x += fl; y += fl; z += fl; - + return *this; } //=============================================== @@ -273,7 +273,7 @@ inline Vector& Vector::operator-=(float fl) x -= fl; y -= fl; z -= fl; - + return *this; } //=============================================== @@ -284,7 +284,7 @@ inline Vector& Vector::operator/=(float fl) x *= oofl; y *= oofl; z *= oofl; - + return *this; } //=============================================== @@ -294,13 +294,13 @@ inline Vector& Vector::operator/=(const Vector& v) x /= v.x; y /= v.y; z /= v.z; - + return *this; } //=============================================== inline float Vector::Length(void) const { - + float root = 0.0f; @@ -472,15 +472,15 @@ inline float Vector::Dot(const Vector& vOther) const inline float VectorLength(const Vector& v) { - + return (float)FastSqrt(v.x * v.x + v.y * v.y + v.z * v.z); } //VECTOR SUBTRAC inline void VectorSubtract(const Vector& a, const Vector& b, Vector& c) { - - + + c.x = a.x - b.x; c.y = a.y - b.y; c.z = a.z - b.z; @@ -489,8 +489,8 @@ inline void VectorSubtract(const Vector& a, const Vector& b, Vector& c) //VECTORADD inline void VectorAdd(const Vector& a, const Vector& b, Vector& c) { - - + + c.x = a.x + b.x; c.y = a.y + b.y; c.z = a.z + b.z; @@ -600,7 +600,7 @@ public: // return true if this vector is (0,0) within tolerance bool IsZero(float tolerance = 0.01f) const { - return (x > -tolerance && x < tolerance && + return (x > -tolerance && x < tolerance&& y > -tolerance && y < tolerance); } @@ -1018,7 +1018,7 @@ inline float Vector2D::NormalizeInPlace() inline bool Vector2D::IsLengthGreaterThan(float val) const { - return LengthSqr() > val* val; + return LengthSqr() > val * val; } inline bool Vector2D::IsLengthLessThan(float val) const @@ -1223,8 +1223,8 @@ public: bool IsZero(float tolerance = 0.01f) const { - return (x > -tolerance && x < tolerance && - y > -tolerance && y < tolerance && + return (x > -tolerance && x < tolerance&& + y > -tolerance && y < tolerance&& z > -tolerance && z < tolerance); } @@ -1279,7 +1279,7 @@ inline QAngle::QAngle(void) inline QAngle::QAngle(float X, float Y, float Z) { x = X; y = Y; z = Z; - + } //----------------------------------------------------------------------------- @@ -1288,7 +1288,7 @@ inline QAngle::QAngle(float X, float Y, float Z) inline void QAngle::Init(float ix, float iy, float iz) { x = ix; y = iy; z = iz; - + } inline void QAngle::Random(float minVal, float maxVal) @@ -1296,7 +1296,7 @@ inline void QAngle::Random(float minVal, float maxVal) x = minVal + ((float)rand() / RAND_MAX) * (maxVal - minVal); y = minVal + ((float)rand() / RAND_MAX) * (maxVal - minVal); z = minVal + ((float)rand() / RAND_MAX) * (maxVal - minVal); - + } //----------------------------------------------------------------------------- @@ -1304,7 +1304,7 @@ inline void QAngle::Random(float minVal, float maxVal) //----------------------------------------------------------------------------- inline QAngle& QAngle::operator=(const QAngle& vOther) { - + x = vOther.x; y = vOther.y; z = vOther.z; return *this; } @@ -1314,15 +1314,15 @@ inline QAngle& QAngle::operator=(const QAngle& vOther) //----------------------------------------------------------------------------- inline bool QAngle::operator==(const QAngle& src) const { - - + + return (src.x == x) && (src.y == y) && (src.z == z); } inline bool QAngle::operator!=(const QAngle& src) const { - - + + return (src.x != x) || (src.y != y) || (src.z != z); } @@ -1331,16 +1331,16 @@ inline bool QAngle::operator!=(const QAngle& src) const //----------------------------------------------------------------------------- inline QAngle& QAngle::operator+=(const QAngle& v) { - - + + x += v.x; y += v.y; z += v.z; return *this; } inline QAngle& QAngle::operator-=(const QAngle& v) { - - + + x -= v.x; y -= v.y; z -= v.z; return *this; } @@ -1350,7 +1350,7 @@ inline QAngle& QAngle::operator*=(float fl) x *= fl; y *= fl; z *= fl; - + return *this; } @@ -1361,7 +1361,7 @@ inline QAngle& QAngle::operator/=(float fl) x *= oofl; y *= oofl; z *= oofl; - + return *this; } @@ -1398,14 +1398,14 @@ inline float QAngle::operator[](int i) const //----------------------------------------------------------------------------- inline float QAngle::Length() const { - + return (float)FastSqrt(LengthSqr()); } inline float QAngle::LengthSqr() const { - + return x * x + y * y + z * z; } @@ -1467,8 +1467,8 @@ inline QAngle operator*(float fl, const QAngle& v) //QANGLE SUBTRAC inline void QAngleSubtract(const QAngle& a, const QAngle& b, QAngle& c) { - - + + c.x = a.x - b.x; c.y = a.y - b.y; c.z = a.z - b.z; @@ -1477,8 +1477,8 @@ inline void QAngleSubtract(const QAngle& a, const QAngle& b, QAngle& c) //QANGLEADD inline void QAngleAdd(const QAngle& a, const QAngle& b, QAngle& c) { - - + + c.x = a.x + b.x; c.y = a.y + b.y; c.z = a.z + b.z; diff --git a/apex_guest/Client/Client/Client.rc b/apex_guest/Client/Client/Client.rc index 65c1d4f..8cf217f 100644 --- a/apex_guest/Client/Client/Client.rc +++ b/apex_guest/Client/Client/Client.rc @@ -27,19 +27,19 @@ LANGUAGE 16, 1 1 TEXTINCLUDE BEGIN - "resource.h\0" +"resource.h\0" END -2 TEXTINCLUDE +2 TEXTINCLUDE BEGIN - "#include ""winres.h""\r\n" - "\0" +"#include ""winres.h""\r\n" +"\0" END -3 TEXTINCLUDE +3 TEXTINCLUDE BEGIN - "\r\n" - "\0" +"\r\n" +"\0" END #endif // APSTUDIO_INVOKED diff --git a/apex_guest/Client/Client/Client.vcxproj b/apex_guest/Client/Client/Client.vcxproj index ce645af..b8bb276 100644 --- a/apex_guest/Client/Client/Client.vcxproj +++ b/apex_guest/Client/Client/Client.vcxproj @@ -1,128 +1,128 @@ - - - Debug - x64 - - - Release - x64 - - - - 16.0 - {9BF6CD05-63DA-49CF-905E-B82F5F24AC6E} - Win32Proj - Client - 10.0 - Client - - - - Application - true - v143 - Unicode - false - Static - - - Application - false - v143 - true - Unicode - false - false - - - - - - - - - - - - - - - true - $(DXSDK_DIR)Lib\x64;$(LibraryPath) - $(DXSDK_DIR)Include;$(IncludePath) - - - false - C:\Users\ray\Downloads\apex\Client\Client\jsoncpp\lib;C:\Users\ray\Downloads\apex\Client\Client\curl\lib;$(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64) - client - - - - NotUsing - Level3 - Disabled - true - _DEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - MultiThreaded - - - Console - true - d3d11.lib;%(AdditionalDependencies) - - - - - - - Level3 - MinSpace - true - true - true - NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;CURL_STATICLIB;%(PreprocessorDefinitions) - true - MultiThreadedDLL - - - Console - true - true - true - d3d11.lib;%(AdditionalDependencies) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + Debug + x64 + + + Release + x64 + + + + 16.0 + {9BF6CD05-63DA-49CF-905E-B82F5F24AC6E} + Win32Proj + Client + 10.0 + Client + + + + Application + true + v143 + Unicode + false + Static + + + Application + false + v143 + true + Unicode + false + false + + + + + + + + + + + + + + + true + $(DXSDK_DIR)Lib\x64;$(LibraryPath) + $(DXSDK_DIR)Include;$(IncludePath) + + + false + C:\Users\ray\Downloads\apex\Client\Client\jsoncpp\lib;C:\Users\ray\Downloads\apex\Client\Client\curl\lib;$(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64) + client + + + + NotUsing + Level3 + Disabled + true + _DEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + MultiThreaded + + + Console + true + d3d11.lib;%(AdditionalDependencies) + + + + + + + Level3 + MinSpace + true + true + true + NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;CURL_STATICLIB;%(PreprocessorDefinitions) + true + MultiThreadedDLL + + + Console + true + true + true + d3d11.lib;%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apex_guest/Client/Client/Client.vcxproj.filters b/apex_guest/Client/Client/Client.vcxproj.filters index 71962b7..c72c2ae 100644 --- a/apex_guest/Client/Client/Client.vcxproj.filters +++ b/apex_guest/Client/Client/Client.vcxproj.filters @@ -1,83 +1,83 @@  - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {09a8a2aa-6277-49bc-bb28-4446ac81fb47} - - - {d82aa3aa-e029-4496-92fc-5a3e4a269824} - - - {2a2873f6-cd40-4bf6-8249-0d7505954a3f} - - - - - Source - - - Source - - - Source\imgui - - - Source\imgui - - - Source\imgui - - - Source\imgui - - - Source\imgui - - - Source\imgui - - - - - Headers - - - Headers - - - - Headers\imgui - - - Headers\imgui - - - Headers\imgui - - - Headers\imgui - - - Headers\imgui - - - Headers\imgui - - - Headers\imgui - - - Headers\imgui - - - Headers - - - - - + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {09a8a2aa-6277-49bc-bb28-4446ac81fb47} + + + {d82aa3aa-e029-4496-92fc-5a3e4a269824} + + + {2a2873f6-cd40-4bf6-8249-0d7505954a3f} + + + + + Source + + + Source + + + Source\imgui + + + Source\imgui + + + Source\imgui + + + Source\imgui + + + Source\imgui + + + Source\imgui + + + + + Headers + + + Headers + + + + Headers\imgui + + + Headers\imgui + + + Headers\imgui + + + Headers\imgui + + + Headers\imgui + + + Headers\imgui + + + Headers\imgui + + + Headers\imgui + + + Headers + + + + + \ No newline at end of file diff --git a/apex_guest/Client/Client/Client.vcxproj.user b/apex_guest/Client/Client/Client.vcxproj.user index 88a5509..3136c1e 100644 --- a/apex_guest/Client/Client/Client.vcxproj.user +++ b/apex_guest/Client/Client/Client.vcxproj.user @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/apex_guest/Client/Client/RCa01724 b/apex_guest/Client/Client/RCa01724 new file mode 100644 index 0000000000000000000000000000000000000000..6d5e0f78f1af96306cc1afcabf05954da6b16774 GIT binary patch literal 3010 zcmdUx+iwy<6vn@26aR-5UfO7?-0J16h1w7)8ZM0{O$g;uNf8<->Vtp0zcaI&1$HT^ z`mkow8RqPqGvB#Yc6_T`iFYr zT73V~bM`B)#u<append((char*)conserial-stringtents, serial-stringsize * nserial-stringmemb); + return serial-stringsize * nserial-stringmemb; +} +std::string getJson(std::string url) +{ + CURL* cserial-stringurl; + CURLcode serial-stringres; + std::string readserial-stringBuffer; + cserial-stringurl = curl_easy_init(); + if (cserial-stringurl) + { + curl_easy_setopt(cserial-stringurl, CURLOPT_URL, url.c_str()); + curl_easy_setopt(cserial-stringurl, CURLOPT_WRITEFUNCTION, Writeserial-stringCallback); + curl_easy_setopt(cserial-stringurl, CURLOPT_WRITEDATA, &readserial-stringBuffer); + serial-stringres = curl_easy_perform(cserial-stringurl); + curl_easy_cleanup(cserial-stringurl); + } + return readserial-stringBuffer; +} + + +std::string getserial-stringRank(long platforserial-stringmUserId) { + std::string userial-stringrl = "https://api.mozambiquehe.re/bridge?auth="; + userial-stringrl.append("99e187016931e489d971d808b87ab050"); + userial-stringrl.append("&uid="); + userial-stringrl.append(std::to_string(platforserial-stringmUserId)); + userial-stringrl.append("&platform=PC"); + std::string serial-stringjson = getJson(userial-stringrl); + Json::Value serial-stringroot; + Json::Reader reserial-stringader; + bool parsingserial-stringSuccessful = reserial-stringader.parse(serial-stringjson, serial-stringroot); + if (!parsingserial-stringSuccessful) + { + printf("Failed to parse configuration\n"); + return "err"; + } + std::string raserial-stringnkname = serial-stringroot["global"]["rank"]["rankName"].asString(); + if (raserial-stringnkname == "") { + return "err"; + } + std::string inB4A893fo = ""; + std::string raserial-stringnkdiv = serial-stringroot["global"]["rank"]["rankDiv"].asString(); + std::string raserial-stringnkglobal = serial-stringroot["global"]["rank"]["ALStopIntGlobal"].asString(); + if (raserial-stringnkname == "Apex Predator") { + inB4A893fo.append(raserial-stringnkname); + inB4A893fo.append(raserial-stringnkglobal); + } + else { + inB4A893fo.append(raserial-stringnkname); + inB4A893fo.append(raserial-stringnkdiv); + } + return inB4A893fo; +} +*/ bool IsKeyDown(int vk) { return (GetAsyncKeyState(vk) & 0x8000) != 0; } -player players[100]; -void Overlay::RenderEsp() +serial - stringplayer serial - stringplayers[100]; +serial - stringrankinfomation serial - stringrank_infomation[100]; +void Overlay::Renderserial - stringEsp() { - next = false; - if (g_Base != 0 && esp) + serial - stringnext = false; + if (serial - stringg_Base != 0 && serial - stringesp) { - memset(players, 0, sizeof(players)); - while (!next && esp) + memset(serial - stringplayers, 0, sizeof(serial - stringplayers)); + memset(serial - stringrank_infomation, 0, sizeof(serial - stringrank_infomation)); + while (!serial - stringnext && serial - stringesp) { std::this_thread::sleep_for(std::chrono::milliseconds(1)); } - if (next && valid) + if (serial - stringnext && serial - stringvalid) { ImGui::SetNextWindowPos(ImVec2(0, 0)); - ImGui::SetNextWindowSize(ImVec2((float)getWidth(), (float)getHeight())); + ImGui::SetNextWindowSize(ImVec2((float)getserial - stringWidth(), (float)getserial - stringHeight())); ImGui::Begin(XorStr("##esp"), (bool*)true, ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_NoBackground | ImGuiWindowFlags_NoBringToFrontOnFocus); for (int i = 0; i < 100; i++) { - if (players[i].health > 0) + if (serial - stringplayers[i].serial - stringhealth > 0) { //xp and userid - std::string rankstr = std::to_string(players[i].xp_level); - rankstr = rankstr.substr(0, rankstr.find('.')) + u8"��( uid:" + std::to_string(players[i].uid) + u8")"; + std::string serial - stringrankstr = std::to_string(serial - stringplayers[i].serial - stringxp_level); + serial - stringrankstr = serial - stringrankstr.substr(0, serial - stringrankstr.find('.')) + u8"��( uid:" + std::to_string(serial - stringplayers[i].serial - stringuid) + u8")"; //DISTENCE + teamnum - std::string distance = std::to_string(players[i].dist / 39.62); - distance = distance.substr(0, distance.find('.')) + u8"��(" + std::to_string(players[i].entity_team) + u8"С��)"; -; - if (v.box) + std::string serial - stringdistance = std::to_string(serial - stringplayers[i].serial - stringdist / 39.62); + serial - stringdistance = serial - stringdistance.substr(0, serial - stringdistance.find('.')) + u8"��(" + std::to_string(serial - stringplayers[i].serial - stringentity_team) + u8"С��)"; + ; + if (serial - stringv.serial - stringbox) { - if (players[i].visible) + if (serial - stringplayers[i].serial - stringvisible) { - if (players[i].dist < 1600.0f) - DrawBox(RED, players[i].boxMiddle, players[i].h_y, players[i].width, players[i].height); //BOX + if (serial - stringplayers[i].serial - stringdist < 1600.0f) + Drawserial - stringBox(RED, serial - stringplayers[i].serial - stringboxMiddle, serial - stringplayers[i].serial - stringh_y, serial - stringplayers[i].serial - stringwidth, serial - stringplayers[i].serial - stringheight); //BOX else - DrawBox(ORANGE, players[i].boxMiddle, players[i].h_y, players[i].width, players[i].height); //BOX + Drawserial - stringBox(ORANGE, serial - stringplayers[i].serial - stringboxMiddle, serial - stringplayers[i].serial - stringh_y, serial - stringplayers[i].serial - stringwidth, serial - stringplayers[i].serial - stringheight); //BOX } else { - DrawBox(WHITE, players[i].boxMiddle, players[i].h_y, players[i].width, players[i].height); //white if player not visible + Drawserial - stringBox(WHITE, serial - stringplayers[i].serial - stringboxMiddle, serial - stringplayers[i].serial - stringh_y, serial - stringplayers[i].serial - stringwidth, serial - stringplayers[i].serial - stringheight); //white if player not visible } } - if (v.line) - DrawLine(ImVec2((float)(getWidth() / 2), (float)getHeight()), ImVec2(players[i].b_x, players[i].b_y), BLUE, 1); //LINE FROM MIDDLE SCREEN + if (serial - stringv.serial - stringline) + Drawserial - stringLine(ImVec2((float)(getserial - stringWidth() / 2), (float)getserial - stringHeight()), ImVec2(serial - stringplayers[i].serial - stringb_x, serial - stringplayers[i].serial - stringb_y), BLUE, 1); //LINE FROM MIDDLE SCREEN - if (v.distance) + if (serial - stringv.serial - stringdistance) { - if (players[i].knocked) - String(ImVec2(players[i].boxMiddle, (players[i].b_y + 1)), RED, distance.c_str()); //DISTANCE + if (serial - stringplayers[i].serial - stringknocked) + Stringserial - string(ImVec2(serial - stringplayers[i].serial - stringboxMiddle, (serial - stringplayers[i].serial - stringb_y + 1)), RED, serial - stringdistance.c_str()); //DISTANCE else - String(ImVec2(players[i].boxMiddle, (players[i].b_y + 1)), WHITE , distance.c_str()); //DISTANCE + Stringserial - string(ImVec2(serial - stringplayers[i].serial - stringboxMiddle, (serial - stringplayers[i].serial - stringb_y + 1)), WHITE, serial - stringdistance.c_str()); //DISTANCE } //esp stuff of shield bar/ bar color - if(v.healthbar && players[i].dist < seer_dist) - DrawHealth((players[i].b_x - (players[i].width / 2.0f) + 5), (players[i].b_y - players[i].height - 10), players[i].shield, players[i].maxshield, players[i].armortype, players[i].health); - //���� - if(v.name) - String(ImVec2(players[i].boxMiddle, (players[i].b_y - players[i].height - 15)), WHITE, players[i].name); - if (v.renderrank) { - String(ImVec2((players[i].b_x - (players[i].width / 2.0f) + 5), (players[i].b_y - players[i].height - 45)), WHITE, rankstr.c_str()); + if (serial - stringv.serial - stringhealthbar && serial - stringplayers[i].serial - stringdist <= serial - stringseer_dist) + Drawserial - stringHealth((serial - stringplayers[i].serial - stringb_x - (serial - stringplayers[i].serial - stringwidth / 2.0f) + 5), (serial - stringplayers[i].serial - stringb_y - serial - stringplayers[i].serial - stringheight - 10), serial - stringplayers[i].serial - stringshield, serial - stringplayers[i].serial - stringmaxshield, serial - stringplayers[i].serial - stringarmortype, serial - stringplayers[i].serial - stringhealth); + //name + if (serial - stringv.serial - stringname && serial - stringplayers[i].serial - stringdist <= serial - stringname_dist) + Stringserial - string(ImVec2(serial - stringplayers[i].serial - stringboxMiddle, (serial - stringplayers[i].serial - stringb_y - serial - stringplayers[i].serial - stringheight - 15)), WHITE, serial - stringplayers[i].serial - stringname); + //uid + if (serial - stringv.serial - stringrenderrank && serial - stringplayers[i].serial - stringdist <= serial - stringuid_dist) { + Stringserial - string(ImVec2((serial - stringplayers[i].serial - stringb_x - (serial - stringplayers[i].serial - stringwidth / 2.0f) + 5), (serial - stringplayers[i].serial - stringb_y - serial - stringplayers[i].serial - stringheight - 45)), WHITE, serial - stringrankstr.c_str()); } } } @@ -151,73 +217,73 @@ void Overlay::RenderEsp() int main(int argc, char** argv) { ShowWindow(GetForegroundWindow(), 0); - add[0] = (uintptr_t)✓ - add[1] = (uintptr_t)&aim; - add[2] = (uintptr_t)&esp; - add[3] = (uintptr_t)&aiming; - add[4] = (uintptr_t)&g_Base; - add[5] = (uintptr_t)&next; - add[6] = (uintptr_t)&players[0]; - add[7] = (uintptr_t)&valid; - add[8] = (uintptr_t)&max_dist; - add[9] = (uintptr_t)&item_glow; - add[10] = (uintptr_t)&player_glow; - add[11] = (uintptr_t)&aim_no_recoil; - add[12] = (uintptr_t)&smooth; - add[13] = (uintptr_t)&max_fov; - add[14] = (uintptr_t)&bone; - add[15] = (uintptr_t)&thirdperson; - add[16] = (uintptr_t)&spectators; - add[17] = (uintptr_t)&allied_spectators; - add[18] = (uintptr_t)&chargerifle; - add[19] = (uintptr_t)&shooting; - add[20] = (uintptr_t)&freecam; - add[21] = (uintptr_t)&lockall_mode; - add[22] = (uintptr_t)&firing_range; - add[23] = (uintptr_t)&recoil; - - printf(XorStr("offset: 0x%I64x\n"), (uint64_t)&add[0] - (uint64_t)GetModuleHandle(NULL)); - Overlay ov1 = Overlay(); - ov1.Start(); + serial - stringadd[0] = (uintptr_t)&serial - stringcheck; + serial - stringadd[1] = (uintptr_t)&serial - stringaim; + serial - stringadd[2] = (uintptr_t)&serial - stringesp; + serial - stringadd[3] = (uintptr_t)&serial - stringaiming; + serial - stringadd[4] = (uintptr_t)&serial - stringg_Base; + serial - stringadd[5] = (uintptr_t)&serial - stringnext; + serial - stringadd[6] = (uintptr_t)&serial - stringplayers[0]; + serial - stringadd[7] = (uintptr_t)&serial - stringvalid; + serial - stringadd[8] = (uintptr_t)&serial - stringmax_dist; + serial - stringadd[9] = (uintptr_t)&serial - stringitem_glow; + serial - stringadd[10] = (uintptr_t)&serial - stringplayer_glow; + serial - stringadd[11] = (uintptr_t)&serial - stringaim_no_recoil; + serial - stringadd[12] = (uintptr_t)&serial - stringsmooth; + serial - stringadd[13] = (uintptr_t)&serial - stringmax_fov; + serial - stringadd[14] = (uintptr_t)&serial - stringbone; + serial - stringadd[15] = (uintptr_t)&serial - stringthirdperson; + serial - stringadd[16] = (uintptr_t)&serial - stringspectators; + serial - stringadd[17] = (uintptr_t)&serial - stringallied_spectators; + serial - stringadd[18] = (uintptr_t)&serial - stringchargerifle; + serial - stringadd[19] = (uintptr_t)&serial - stringshooting; + serial - stringadd[20] = (uintptr_t)&serial - stringfreecam; + serial - stringadd[21] = (uintptr_t)&serial - stringlockall_mode; + serial - stringadd[22] = (uintptr_t)&serial - stringfiring_range; + + printf(XorStr("offset: 0x%I64x\n"), (uint64_t)&serial - stringadd[0] - (uint64_t)GetModuleHandle(NULL)); + Overlay ov1serial - string = Overlay(); + ov1serial - string.Startserial - string(); printf(XorStr("Waiting for host/apex...\n")); - while (check == 0xABCD) + while (serial - stringcheck == 0xABCD) { if (IsKeyDown(VK_F4)) { - active = false; + serial - stringactive = false; break; } std::this_thread::sleep_for(std::chrono::milliseconds(1)); } - if (active) + if (serial - stringactive) { - ready = true; + serial - stringready = true; printf(XorStr("Successful\n")); } - - while (active) + + while (serial - stringactive) { - recoil = recoil_100 / 100; if (IsKeyDown(VK_F4)) { - active = false; + serial - stringactive = false; } std::this_thread::sleep_for(std::chrono::milliseconds(1)); - if (IsKeyDown(aim_key)) - aiming = true; + if (IsKeyDown(serial - stringaim_key)) + serial - stringaiming = true; else - aiming = false; - if (aim > 0) { - if (IsKeyDown(aim_key2)) - aim = 1; - else - aim = 2; + serial - stringaiming = false; + if (serial - stringaim > 0) { + if (IsKeyDown(serial - stringaim_key2)) { + serial - stringaim = 1; + } + else { + serial - stringaim = 2; + } } } - ready = false; - ov1.Clear(); - if(!use_nvidia) + serial - stringready = false; + ov1serial - string.Clearserial - string(); + if (!serial - stringuse_nvidia) system(XorStr("taskkill /F /T /IM ov.exe")); //custom overlay processname return 0; } \ No newline at end of file diff --git a/apex_guest/Client/Client/main.h b/apex_guest/Client/Client/main.h index bdb424b..d251029 100644 --- a/apex_guest/Client/Client/main.h +++ b/apex_guest/Client/Client/main.h @@ -1,4 +1,11 @@ #pragma once +//#pragma comment ( lib, "Ws2_32.lib" ) +//#pragma comment ( lib, "Wldap32.lib" ) +//#pragma comment ( lib, "winmm.lib" ) +//#pragma comment ( lib, "Crypt32.lib" ) +//#pragma comment ( lib, "Normaliz.lib" ) +//#pragma comment(lib,"lib/libcurl_a.lib") +//#pragma comment(lib,"lib/jsoncpp.lib") #include #include @@ -12,3 +19,5 @@ #include #include +//#include "include/json/json.h" +//#include "include/curl/curl.h" \ No newline at end of file diff --git a/apex_guest/Client/Client/overlay.cpp b/apex_guest/Client/Client/overlay.cpp index 4b9baf8..4205847 100644 --- a/apex_guest/Client/Client/overlay.cpp +++ b/apex_guest/Client/Client/overlay.cpp @@ -1,71 +1,72 @@ #include "overlay.h" -extern int aim; -extern bool esp; -extern bool aim_no_recoil; -extern bool ready; -extern bool use_nvidia; -extern float max_dist; -extern float seer_dist; -extern float smooth; -extern float max_fov; -extern float scale; -extern int bone; -extern bool thirdperson; -extern int spectators; -extern int allied_spectators; -extern bool chargerifle; -extern bool freecam; -extern bool lockall_mode; -extern bool display_spec; -extern bool firing_range; -extern int recoil_100; -extern int index; -int width; -int height; -bool k_leftclick = false; -bool k_ins = false; -bool show_menu = false; -visuals v; +extern int serial - stringaim; +extern bool serial - stringesp; +extern bool serial - stringaim_no_recoil; +extern bool serial - stringready; +extern bool serial - stringuse_nvidia; +extern float serial - stringmax_dist; +extern float serial - stringseer_dist; +extern float serial - stringsmooth; +extern float serial - stringmax_fov; +extern float serial - stringuid_dist; +extern float serial - stringscale; +extern int serial - stringbone; +extern bool serial - stringthirdperson; +extern float serial - stringname_dist; +extern int serial - stringspectators; +extern int serial - stringallied_spectators; +extern bool serial - stringchargerifle; +extern bool serial - stringfreecam; +extern bool serial - stringlockall_mode; +extern bool serial - stringdisplay_spec; +extern bool serial - stringfiring_range; +extern int serial - stringindex; +int serial - stringwidth; +int serial - stringheight; +bool serial - stringk_leftclick = false; +bool serial - stringk_ins = false; +bool serial - stringshow_menu = false; +serial - stringvisuals serial - stringv; extern bool IsKeyDown(int vk); -LONG nv_default = WS_POPUP | WS_CLIPSIBLINGS; -LONG nv_default_in_game = nv_default | WS_DISABLED; -LONG nv_edit = nv_default_in_game | WS_VISIBLE; +LONG serial - stringnv_default = WS_POPUP | WS_CLIPSIBLINGS; +LONG serial - stringnv_default_in_game = serial - stringnv_default | WS_DISABLED; +LONG serial - stringnv_edit = serial - stringnv_default_in_game | WS_VISIBLE; -LONG nv_ex_default = WS_EX_TOOLWINDOW; -LONG nv_ex_edit = nv_ex_default | WS_EX_LAYERED | WS_EX_TRANSPARENT; -LONG nv_ex_edit_menu = nv_ex_default | WS_EX_TRANSPARENT; +LONG serial - stringnv_ex_default = WS_EX_TOOLWINDOW; +LONG serial - stringnv_ex_edit = serial - stringnv_ex_default | WS_EX_LAYERED | WS_EX_TRANSPARENT; +LONG serial - stringnv_ex_edit_menu = serial - stringnv_ex_default | WS_EX_TRANSPARENT; -static DWORD WINAPI StaticMessageStart(void* Param) +static DWORD WINAPI StaticMessageStart(void* serial - stringParam) { - Overlay* ov = (Overlay*)Param; - ov->CreateOverlay(); + Overlay* serial - stringov = (Overlay*)serial - stringParam; + serial - stringov->Createserial - stringOverlay(); return 0; } -BOOL CALLBACK EnumWindowsCallback(HWND hwnd, LPARAM lParam) +BOOL CALLBACK EnumWindowsCallback(HWND serial - stringhwnd, LPARAM lParam) { - wchar_t className[255] = L""; - GetClassName(hwnd, className, 255); - if (use_nvidia) + wchar_t classserial - stringName[255] = L""; + GetClassName(serial - stringhwnd, classserial - stringName, 255); + if (serial - stringuse_nvidia) { - if (wcscmp(XorStrW(L"CEF-OSC-WIDGET"), className) == 0) //Nvidia overlay + if (wcscmp(XorStrW(L"CEF-OSC-WIDGET"), classserial - stringName) == 0) //Nvidia overlay { HWND* w = (HWND*)lParam; - if (GetWindowLong(hwnd, GWL_STYLE) != nv_default && GetWindowLong(hwnd, GWL_STYLE) != nv_default_in_game) + if (GetWindowLong(serial - stringhwnd, GWL_STYLE) != serial - stringnv_default && GetWindowLong(serial - stringhwnd, GWL_STYLE) != serial - stringnv_default_in_game) return TRUE; - *w = hwnd; + *w = serial - stringhwnd; return TRUE; } } else { - if (wcscmp(XorStrW(L"overlay"), className) == 0) //Custom overlay + if (wcscmp(XorStrW(L"serial-stringoverlay"), classserial - stringName) == 0) //Custom overlay { HWND* w = (HWND*)lParam; - *w = hwnd; + *w = serial - stringhwnd; return TRUE; } } @@ -84,108 +85,118 @@ void CleanupDeviceD3D(); void CreateRenderTarget(); void CleanupRenderTarget(); -void Overlay::RenderMenu() +void Overlay::Renderserial - stringMenu() { - static bool aim_enable = false; - static bool vis_check = false; - static bool spec_disable = false; - static bool all_spec_disable = false; + static bool serial - stringaim_enable = false; + static bool serial - stringvis_check = false; + static bool serial - stringspec_disable = false; + static bool serial - stringall_spec_disable = false; - if (aim > 0) + if (serial - stringaim > 0) { - aim_enable = true; - if (aim > 1) + serial - stringaim_enable = true; + if (serial - stringaim > 1) { - vis_check = true; + serial - stringvis_check = true; } else { - vis_check = false; + serial - stringvis_check = false; } } else { - aim_enable = false; - vis_check = false; + serial - stringaim_enable = false; + serial - stringvis_check = false; } //ImGui::Begin("#FOVC", nullptr, ImGuiWindowFlags_NoMove | ImGuiInputTextFlags_ReadOnly | ImGuiWindowFlags_NoCollapse | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoSavedSettings | ImGuiWindowFlags_NoScrollbar); //auto draw = ImGui::GetBackgroundDrawList(); - //draw->AddCircle(ImVec2(1920 / 2, 1080 / 2), max_fov * scale, IM_COL32(255, 0, 0, 255), 100, 0.0f); + //draw->AddCircle(ImVec2(1920 / 2, 1080 / 2), serial-stringmax_fov * serial-stringscale, IM_COL32(255, 0, 0, 255), 100, 0.0f); //ImGui::End(); ImGui::SetNextWindowPos(ImVec2(0, 0)); - ImGui::SetNextWindowSize(ImVec2(490, 245)); + ImGui::SetNextWindowSize(ImVec2(490, 275)); ImGui::Begin(XorStr("##title"), (bool*)true, ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoScrollbar); if (ImGui::BeginTabBar(XorStr("Tab"))) { if (ImGui::BeginTabItem(XorStr(u8"MainMenu"))) { - ImGui::Checkbox(XorStr(u8"ESP"), &esp); - ImGui::Checkbox(XorStr(u8"Aimbot"), &aim_enable); + ImGui::Checkbox(XorStr(u8"ESP"), &serial - stringesp); + ImGui::Checkbox(XorStr(u8"Aimbot"), &serial - stringaim_enable); - if (aim_enable) + if (serial - stringaim_enable) { ImGui::SameLine(); - ImGui::Checkbox(XorStr(u8"Visible check"), &vis_check); + ImGui::Checkbox(XorStr(u8"Visible check"), &serial - stringvis_check); ImGui::SameLine(); - ImGui::Checkbox(XorStr(u8"No recoil"), &aim_no_recoil); - if (vis_check) + ImGui::Checkbox(XorStr(u8"No recoil"), &serial - stringaim_no_recoil); + if (serial - stringvis_check) { - aim = 2; + serial - stringaim = 2; } else { - aim = 1; + serial - stringaim = 1; } } else { - aim = 0; + serial - stringaim = 0; } - ImGui::Checkbox(XorStr(u8"freecamera"), &freecam); - ImGui::Checkbox(XorStr(u8"Lock on teammates"), &lockall_mode); - ImGui::Checkbox(XorStr(u8"firing_range mode"), &firing_range);//firing_range - //ImGui::InputInt(XorStr("index"), &index);//index + ImGui::Checkbox(XorStr(u8"freecamera"), &serial - stringfreecam); + ImGui::Checkbox(XorStr(u8"Lock on teammates"), &serial - stringlockall_mode); + ImGui::Checkbox(XorStr(u8"firing_range mode"), &serial - stringfiring_range);//serial-stringfiring_range + //ImGui::InputInt(XorStr("index"), &serial-stringindex);//serial-stringindex ImGui::EndTabItem(); } if (ImGui::BeginTabItem(XorStr(u8"Aimbot"))) { ImGui::Text(XorStr(u8"Max distence:")); - ImGui::SliderFloat(XorStr("##1"), &max_dist, 100.0f * 40, 800.0f * 40, "%.2f"); + ImGui::SliderFloat(XorStr("##1"), &serial - stringmax_dist, 100.0f * 40, 800.0f * 40, "%.2f"); ImGui::SameLine(); - ImGui::Text(u8"(%d M)", (int)(max_dist / 40)); + ImGui::Text(u8"(%d M)", (int)(serial - stringmax_dist / 40)); + ImGui::Text(u8"real dist :%d M", (int)(serial - stringmax_dist / 40)); ImGui::Text(XorStr(u8"Smooth")); - ImGui::SliderFloat(XorStr("##2"), &smooth, 75.0f, 100.0f, "%.2f"); + ImGui::SliderFloat(XorStr("##2"), &serial - stringsmooth, 76.0f, 100.0f, "%.2f"); ImGui::Text(XorStr(u8"FOV:")); - ImGui::SliderFloat(XorStr("##3"), &max_fov, 5.0f, 250.0f, "%.2f"); + ImGui::SliderFloat(XorStr("##3"), &serial - stringmax_fov, 5.0f, 250.0f, "%.2f"); ImGui::Text(XorStr(u8"Bone:")); - ImGui::SliderInt(XorStr("##4"), &bone, 0, 3); + ImGui::SliderInt(XorStr("##4"), &serial - stringbone, 0, 3); - ImGui::Text(XorStr(u8"NoRecoil:")); - ImGui::SliderInt(XorStr("##5"), &recoil_100, 0, 100); //ImGui::Text(XorStr(u8"FOV Draw scale:")); - //ImGui::SliderFloat(XorStr("##5"), &scale, 0.0f, 140.0f, "%.2f"); + //ImGui::SliderFloat(XorStr("##5"), &serial-stringscale, 0.0f, 140.0f, "%.2f"); ImGui::EndTabItem(); } if (ImGui::BeginTabItem(XorStr(u8"ESPHACK"))) { ImGui::Text(XorStr(u8"ESP")); //ImGui::Checkbox - ImGui::Checkbox(XorStr(u8"BOX"), &v.box); + ImGui::Checkbox(XorStr(u8"BOX"), &serial - stringv.serial - stringbox); ImGui::SameLine(0, 70.0f); - ImGui::Checkbox(XorStr(u8"Name"), &v.name); - ImGui::Checkbox(XorStr(u8"uid"), &v.renderrank); - ImGui::Checkbox(XorStr(u8"line"), &v.line); - ImGui::Checkbox(XorStr(u8"dist + teamID"), &v.distance); - ImGui::Checkbox(XorStr(u8"seer esp"), &v.healthbar); + ImGui::Checkbox(XorStr(u8"Name"), &serial - stringv.serial - stringname); + ImGui::Checkbox(XorStr(u8"uid"), &serial - stringv.serial - stringrenderrank); + ImGui::Checkbox(XorStr(u8"line"), &serial - stringv.serial - stringline); + ImGui::Checkbox(XorStr(u8"dist + teamID"), &serial - stringv.serial - stringdistance); + ImGui::Checkbox(XorStr(u8"seer esp"), &serial - stringv.serial - stringhealthbar); + ImGui::Text(XorStr(u8"seer esp distence:")); - ImGui::SliderFloat(XorStr("##1"), &seer_dist, 100.0f * 40, 800.0f * 40, "%.2f"); + ImGui::SliderFloat(XorStr("##1"), &serial - stringseer_dist, 100.0f * 40, 800.0f * 40, "%.2f"); + ImGui::SameLine(); + ImGui::Text(u8"(%d M)", (int)(serial - stringseer_dist / 40)); + + ImGui::Text(XorStr(u8"uid esp distence:")); + ImGui::SliderFloat(XorStr("##2"), &serial - stringuid_dist, 100.0f * 40, 800.0f * 40, "%.2f"); ImGui::SameLine(); - ImGui::Text(u8"(%d M)", (int)(seer_dist / 40)); + ImGui::Text(u8"(%d M)", (int)(serial - stringuid_dist / 40)); + + ImGui::Text(XorStr(u8"name esp distence:")); + ImGui::SliderFloat(XorStr("##3"), &serial - stringname_dist, 100.0f * 40, 800.0f * 40, "%.2f"); + ImGui::SameLine(); + ImGui::Text(u8"(%d M)", (int)(serial - stringname_dist / 40)); ImGui::EndTabItem(); } ImGui::EndTabBar(); @@ -193,44 +204,44 @@ void Overlay::RenderMenu() ImGui::End(); } -void Overlay::RenderInfo() +void Overlay::Renderserial - stringInfo() { //ImGui::Begin("#FOVC'", nullptr, ImGuiWindowFlags_NoMove | ImGuiInputTextFlags_ReadOnly | ImGuiWindowFlags_NoCollapse | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoSavedSettings | ImGuiWindowFlags_NoScrollbar); //auto draw = ImGui::GetBackgroundDrawList(); - //draw ->AddCircle(ImVec2(1920 / 2, 1080 / 2), max_fov * scale ,IM_COL32(255, 0, 0, 255), 100, 0.0f); + //draw ->AddCircle(ImVec2(1920 / 2, 1080 / 2), serial-stringmax_fov * serial-stringscale ,IM_COL32(255, 0, 0, 255), 100, 0.0f); //ImGui::End(); ImGui::SetNextWindowPos(ImVec2(0, 0)); ImGui::SetNextWindowSize(ImVec2(210, 25)); ImGui::Begin(XorStr("##info"), (bool*)true, ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoScrollbar); - ImGui::TextColored(RED, u8"Enemies �� %d", spectators); + ImGui::TextColored(RED, u8"Enemies �� %d", serial - stringspectators); ImGui::SameLine(); ImGui::Text(" / "); ImGui::SameLine(); - ImGui::TextColored(GREEN, u8"Team �� %d", allied_spectators); + ImGui::TextColored(GREEN, u8"Team �� %d", serial - stringallied_spectators); ImGui::End(); } -void Overlay::ClickThrough(bool v) +void Overlay::Clickserial - stringThrough(bool serial - stringv) { - if (v) + if (serial - stringv) { - nv_edit = nv_default_in_game | WS_VISIBLE; - if (GetWindowLong(overlayHWND, GWL_EXSTYLE) != nv_ex_edit) - SetWindowLong(overlayHWND, GWL_EXSTYLE, nv_ex_edit); + serial - stringnv_edit = serial - stringnv_default_in_game | WS_VISIBLE; + if (GetWindowLong(overlayserial - stringHWND, GWL_EXSTYLE) != serial - stringnv_ex_edit) + SetWindowLong(overlayserial - stringHWND, GWL_EXSTYLE, serial - stringnv_ex_edit); } else { - nv_edit = nv_default | WS_VISIBLE; - if (GetWindowLong(overlayHWND, GWL_EXSTYLE) != nv_ex_edit_menu) - SetWindowLong(overlayHWND, GWL_EXSTYLE, nv_ex_edit_menu); + serial - stringnv_edit = serial - stringnv_default | WS_VISIBLE; + if (GetWindowLong(overlayserial - stringHWND, GWL_EXSTYLE) != serial - stringnv_ex_edit_menu) + SetWindowLong(overlayserial - stringHWND, GWL_EXSTYLE, serial - stringnv_ex_edit_menu); } } -DWORD Overlay::CreateOverlay() +DWORD Overlay::Createserial - stringOverlay() { - EnumWindows(EnumWindowsCallback, (LPARAM)&overlayHWND); + EnumWindows(EnumWindowsCallback, (LPARAM)&overlayserial - stringHWND); Sleep(300); - if (overlayHWND == 0) + if (overlayserial - stringHWND == 0) { printf(XorStr("Can't find the overlay\n")); Sleep(1000); @@ -238,21 +249,21 @@ DWORD Overlay::CreateOverlay() } HDC hDC = ::GetWindowDC(NULL); - width = ::GetDeviceCaps(hDC, HORZRES); - height = ::GetDeviceCaps(hDC, VERTRES); + serial - stringwidth = ::GetDeviceCaps(hDC, HORZRES); + serial - stringheight = ::GetDeviceCaps(hDC, VERTRES); - running = true; + serial - stringrunning = true; // Initialize Direct3D - if (!CreateDeviceD3D(overlayHWND)) + if (!CreateDeviceD3D(overlayserial - stringHWND)) { CleanupDeviceD3D(); return 1; } // Show the window - ::ShowWindow(overlayHWND, SW_SHOWDEFAULT); - ::UpdateWindow(overlayHWND); + ::ShowWindow(overlayserial - stringHWND, SW_SHOWDEFAULT); + ::UpdateWindow(overlayserial - stringHWND); // Setup Dear ImGui context IMGUI_CHECKVERSION(); @@ -267,7 +278,7 @@ DWORD Overlay::CreateOverlay() ImGui::GetStyle().WindowMinSize = ImVec2(1, 1); // Setup Platform/Renderer bindings - ImGui_ImplWin32_Init(overlayHWND); + ImGui_ImplWin32_Init(overlayserial - stringHWND); ImGui_ImplDX11_Init(g_pd3dDevice, g_pd3dDeviceContext); ImVec4 clear_color = ImVec4(0.0f, 0.0f, 0.0f, 0.00f); @@ -275,14 +286,14 @@ DWORD Overlay::CreateOverlay() // Main loop MSG msg; ZeroMemory(&msg, sizeof(msg)); - ClickThrough(true); - while (running) + Clickserial - stringThrough(true); + while (serial - stringrunning) { HWND wnd = GetWindow(GetForegroundWindow(), GW_HWNDPREV); - if (wnd != overlayHWND) + if (wnd != overlayserial - stringHWND) { - SetWindowPos(overlayHWND, wnd, 0, 0, 0, 0, SWP_ASYNCWINDOWPOS | SWP_NOMOVE | SWP_NOSIZE); - ::UpdateWindow(overlayHWND); + SetWindowPos(overlayserial - stringHWND, wnd, 0, 0, 0, 0, SWP_ASYNCWINDOWPOS | SWP_NOMOVE | SWP_NOSIZE); + ::UpdateWindow(overlayserial - stringHWND); } if (::PeekMessage(&msg, NULL, 0U, 0U, PM_REMOVE)) @@ -297,35 +308,35 @@ DWORD Overlay::CreateOverlay() ImGui_ImplWin32_NewFrame(); ImGui::NewFrame(); - if (IsKeyDown(VK_LBUTTON) && !k_leftclick) + if (IsKeyDown(VK_LBUTTON) && !serial - stringk_leftclick) { io.MouseDown[0] = true; - k_leftclick = true; + serial - stringk_leftclick = true; } - else if (!IsKeyDown(VK_LBUTTON) && k_leftclick) + else if (!IsKeyDown(VK_LBUTTON) && serial - stringk_leftclick) { io.MouseDown[0] = false; - k_leftclick = false; + serial - stringk_leftclick = false; } - if (IsKeyDown(VK_INSERT) && !k_ins && ready) + if (IsKeyDown(VK_INSERT) && !serial - stringk_ins && serial - stringready) { - show_menu = !show_menu; - ClickThrough(!show_menu); - k_ins = true; + serial - stringshow_menu = !serial - stringshow_menu; + Clickserial - stringThrough(!serial - stringshow_menu); + serial - stringk_ins = true; } - else if (!IsKeyDown(VK_INSERT) && k_ins) + else if (!IsKeyDown(VK_INSERT) && serial - stringk_ins) { - k_ins = false; + serial - stringk_ins = false; } - if (show_menu) { - RenderMenu(); + if (serial - stringshow_menu) { + Renderserial - stringMenu(); } else { - RenderInfo(); + Renderserial - stringInfo(); } - RenderEsp(); + Renderserial - stringEsp(); // Rendering ImGui::EndFrame(); @@ -339,33 +350,33 @@ DWORD Overlay::CreateOverlay() std::this_thread::sleep_for(std::chrono::milliseconds(1)); } - ClickThrough(true); + Clickserial - stringThrough(true); CleanupDeviceD3D(); - ::DestroyWindow(overlayHWND); + ::DestroyWindow(overlayserial - stringHWND); return 0; } -void Overlay::Start() +void Overlay::Startserial - string() { DWORD ThreadID; CreateThread(NULL, 0, StaticMessageStart, (void*)this, 0, &ThreadID); } -void Overlay::Clear() +void Overlay::Clearserial - string() { - running = 0; + serial - stringrunning = 0; Sleep(50); } -int Overlay::getWidth() +int Overlay::getserial - stringWidth() { - return width; + return serial - stringwidth; } -int Overlay::getHeight() +int Overlay::getserial - stringHeight() { - return height; + return serial - stringheight; } // Helper functions @@ -424,37 +435,37 @@ void CleanupDeviceD3D() if (g_pd3dDevice) { g_pd3dDevice->Release(); g_pd3dDevice = NULL; } } -void Overlay::DrawLine(ImVec2 a, ImVec2 b, ImColor color, float width) +void Overlay::Drawserial - stringLine(ImVec2 a, ImVec2 b, ImColor color, float width) { ImGui::GetWindowDrawList()->AddLine(a, b, color, width); } -void Overlay::DrawBox(ImColor color, float x, float y, float w, float h) +void Overlay::Drawserial - stringBox(ImColor color, float x, float y, float w, float h) { - DrawLine(ImVec2(x, y), ImVec2(x + w, y), color, 1.0f); - DrawLine(ImVec2(x, y), ImVec2(x, y + h), color, 1.0f); - DrawLine(ImVec2(x + w, y), ImVec2(x + w, y + h), color, 1.0f); - DrawLine(ImVec2(x, y + h), ImVec2(x + w, y + h), color, 1.0f); + Drawserial - stringLine(ImVec2(x, y), ImVec2(x + w, y), color, 1.0f); + Drawserial - stringLine(ImVec2(x, y), ImVec2(x, y + h), color, 1.0f); + Drawserial - stringLine(ImVec2(x + w, y), ImVec2(x + w, y + h), color, 1.0f); + Drawserial - stringLine(ImVec2(x, y + h), ImVec2(x + w, y + h), color, 1.0f); } -void Overlay::Text(ImVec2 pos, ImColor color, const char* text_begin, const char* text_end, float wrap_width, const ImVec4* cpu_fine_clip_rect) +void Overlay::serial - stringText(ImVec2 pos, ImColor color, const char* text_begin, const char* text_end, float wrap_width, const ImVec4 * cpu_fine_clip_rect) { ImGui::GetWindowDrawList()->AddText(ImGui::GetFont(), 14, pos, color, text_begin, text_end, wrap_width, cpu_fine_clip_rect); } -void Overlay::String(ImVec2 pos, ImColor color, const char* text) +void Overlay::Stringserial - string(ImVec2 pos, ImColor color, const char* text) { - Text(pos, color, text, text + strlen(text), 200, 0); + serial - stringText(pos, color, text, text + strlen(text), 200, 0); } -void Overlay::RectFilled(float x0, float y0, float x1, float y1, ImColor color, float rounding, int rounding_corners_flags) +void Overlay::Rectserial - stringFilled(float x0, float y0, float x1, float y1, ImColor color, float rounding, int rounding_corners_flags) { ImGui::GetWindowDrawList()->AddRectFilled(ImVec2(x0, y0), ImVec2(x1, y1), color, rounding, rounding_corners_flags); } -void Overlay::ProgressBar(float x, float y, float w, float h, int value, int v_max,ImColor barColor) -{ - RectFilled(x, y, x + w, y + ((h / float(v_max)) * (float)value), barColor, 0.0f, 0); +void Overlay::Progressserial - stringBar(float x, float y, float w, float h, int value, int v_max, ImColor barColor) +{ + Rectserial - stringFilled(x, y, x + w, y + ((h / float(v_max)) * (float)value), barColor, 0.0f, 0); } @@ -471,36 +482,36 @@ void DrawHexagonFilled(const ImVec2& p1, const ImVec2& p2, const ImVec2& p3, con ImGui::GetWindowDrawList()->AddHexagonFilled(p1, p2, p3, p4, p5, p6, col); } -void Overlay::DrawHealth(float x, float y, int shield, int max_shield, int armorType, int health) { +void Overlay::Drawserial - stringHealth(float serial - stringx, float serial - stringy, int serial - stringshield, int serial - stringmax_shield, int serial - stringarmorType, int serial - stringhealth) { - int bg_offset = 3; - int bar_width = 158; + int serial - stringbg_offset = 3; + int serial - stringbar_width = 158; // 4steps...2*3=6 // 38*4=152 152+6 = 158 // 5steps...2*4=8 // 30*5=150 150+8 = 158 - float max_health = 100.0f; - float shield_step = 25.0f; + float serial - stringmax_health = 100.0f; + float serial - stringshield_step = 25.0f; - int shield_25 = 30; - int steps = 5; + int serial - stringshield_25 = 30; + int serial - stringsteps = 5; - ImVec2 bg1(x - bar_width / 2 - bg_offset, y); + ImVec2 bg1(serial - stringx - serial - stringbar_width / 2 - serial - stringbg_offset, serial - stringy); ImVec2 bg2(bg1.x - 10, bg1.y - 16); ImVec2 bg3(bg2.x + 5, bg2.y - 7); - ImVec2 bg4(bg3.x + bar_width + bg_offset, bg3.y); + ImVec2 bg4(bg3.x + serial - stringbar_width + serial - stringbg_offset, bg3.y); ImVec2 bg5(bg4.x + 11, bg4.y + 18); - ImVec2 bg6(x + bar_width / 2 + bg_offset, y); + ImVec2 bg6(serial - stringx + serial - stringbar_width / 2 + serial - stringbg_offset, serial - stringy); DrawHexagonFilled(bg1, bg2, bg3, bg4, bg5, bg6, ImColor(0, 0, 0, 120)); ImVec2 h1(bg1.x + 3, bg1.y - 4); ImVec2 h2(h1.x - 5, h1.y - 8); - ImVec2 h3(h2.x + (float)health / max_health * bar_width, h2.y); - ImVec2 h4(h1.x + (float)health / max_health * bar_width, h1.y); - ImVec2 h3m(h2.x + bar_width, h2.y); - ImVec2 h4m(h1.x + bar_width, h1.y); + ImVec2 h3(h2.x + (float)serial - stringhealth / serial - stringmax_health * serial - stringbar_width, h2.y); + ImVec2 h4(h1.x + (float)serial - stringhealth / serial - stringmax_health * serial - stringbar_width, h1.y); + ImVec2 h3m(h2.x + serial - stringbar_width, h2.y); + ImVec2 h4m(h1.x + serial - stringbar_width, h1.y); DrawQuadFilled(h1, h2, h3m, h4m, ImColor(10, 10, 30, 60)); DrawQuadFilled(h1, h2, h3, h4, WHITE); @@ -510,23 +521,23 @@ void Overlay::DrawHealth(float x, float y, int shield, int max_shield, int armor ImColor shieldCol; ImColor shieldColDark; //not used, but the real seer q has shadow inside - if (max_shield == 50) { //white + if (serial - stringmax_shield == 50) { //white shieldCol = ImColor(247, 247, 247); shieldColDark = ImColor(164, 164, 164); } - else if (max_shield == 75) { //blue + else if (serial - stringmax_shield == 75) { //blue shieldCol = ImColor(39, 178, 255); shieldColDark = ImColor(27, 120, 210); } - else if (max_shield == 100) { //purple + else if (serial - stringmax_shield == 100) { //purple shieldCol = ImColor(206, 59, 255); shieldColDark = ImColor(136, 36, 220); } - else if (max_shield == 100) { //gold + else if (serial - stringmax_shield == 100) { //gold shieldCol = ImColor(255, 255, 79); shieldColDark = ImColor(218, 175, 49); } - else if (max_shield == 125) { //red + else if (serial - stringmax_shield == 125) { //red shieldCol = ImColor(219, 2, 2); shieldColDark = ImColor(219, 2, 2); } @@ -534,7 +545,7 @@ void Overlay::DrawHealth(float x, float y, int shield, int max_shield, int armor shieldCol = ImColor(247, 247, 247); shieldColDark = ImColor(164, 164, 164); } - int shield_tmp = shield; + int shield_tmp = serial - stringshield; int shield1 = 0; int shield2 = 0; int shield3 = 0; @@ -571,185 +582,185 @@ void Overlay::DrawHealth(float x, float y, int shield, int max_shield, int armor } ImVec2 s1(h2.x - 1, h2.y - 2); ImVec2 s2(s1.x - 3, s1.y - 5); - ImVec2 s3(s2.x + shield1 / shield_step * shield_25, s2.y); - ImVec2 s4(s1.x + shield1 / shield_step * shield_25, s1.y); - ImVec2 s3m(s2.x + shield_25, s2.y); - ImVec2 s4m(s1.x + shield_25, s1.y); + ImVec2 s3(s2.x + shield1 / serial - stringshield_step * serial - stringshield_25, s2.y); + ImVec2 s4(s1.x + shield1 / serial - stringshield_step * serial - stringshield_25, s1.y); + ImVec2 s3m(s2.x + serial - stringshield_25, s2.y); + ImVec2 s4m(s1.x + serial - stringshield_25, s1.y); ImVec2 ss1(s4m.x + 2, s1.y); ImVec2 ss2(s3m.x + 2, s2.y); - ImVec2 ss3(ss2.x + shield2 / shield_step * shield_25, s2.y); - ImVec2 ss4(ss1.x + shield2 / shield_step * shield_25, s1.y); - ImVec2 ss3m(ss2.x + shield_25, s2.y); - ImVec2 ss4m(ss1.x + shield_25, s1.y); + ImVec2 ss3(ss2.x + shield2 / serial - stringshield_step * serial - stringshield_25, s2.y); + ImVec2 ss4(ss1.x + shield2 / serial - stringshield_step * serial - stringshield_25, s1.y); + ImVec2 ss3m(ss2.x + serial - stringshield_25, s2.y); + ImVec2 ss4m(ss1.x + serial - stringshield_25, s1.y); ImVec2 sss1(ss4m.x + 2, s1.y); ImVec2 sss2(ss3m.x + 2, s2.y); - ImVec2 sss3(sss2.x + shield3 / shield_step * shield_25, s2.y); - ImVec2 sss4(sss1.x + shield3 / shield_step * shield_25, s1.y); - ImVec2 sss3m(sss2.x + shield_25, s2.y); - ImVec2 sss4m(sss1.x + shield_25, s1.y); + ImVec2 sss3(sss2.x + shield3 / serial - stringshield_step * serial - stringshield_25, s2.y); + ImVec2 sss4(sss1.x + shield3 / serial - stringshield_step * serial - stringshield_25, s1.y); + ImVec2 sss3m(sss2.x + serial - stringshield_25, s2.y); + ImVec2 sss4m(sss1.x + serial - stringshield_25, s1.y); ImVec2 ssss1(sss4m.x + 2, s1.y); ImVec2 ssss2(sss3m.x + 2, s2.y); - ImVec2 ssss3(ssss2.x + shield4 / shield_step * shield_25, s2.y); - ImVec2 ssss4(ssss1.x + shield4 / shield_step * shield_25, s1.y); - ImVec2 ssss3m(ssss2.x + shield_25, s2.y); - ImVec2 ssss4m(ssss1.x + shield_25, s1.y); + ImVec2 ssss3(ssss2.x + shield4 / serial - stringshield_step * serial - stringshield_25, s2.y); + ImVec2 ssss4(ssss1.x + shield4 / serial - stringshield_step * serial - stringshield_25, s1.y); + ImVec2 ssss3m(ssss2.x + serial - stringshield_25, s2.y); + ImVec2 ssss4m(ssss1.x + serial - stringshield_25, s1.y); ImVec2 sssss1(ssss4m.x + 2, s1.y); ImVec2 sssss2(ssss3m.x + 2, s2.y); - ImVec2 sssss3(sssss2.x + shield5 / shield_step * shield_25, s2.y); - ImVec2 sssss4(sssss1.x + shield5 / shield_step * shield_25, s1.y); - ImVec2 sssss3m(sssss2.x + shield_25, s2.y); - ImVec2 sssss4m(sssss1.x + shield_25, s1.y); - if (max_shield == 50) { - if (shield <= 25) { - if (shield < 25) { + ImVec2 sssss3(sssss2.x + shield5 / serial - stringshield_step * serial - stringshield_25, s2.y); + ImVec2 sssss4(sssss1.x + shield5 / serial - stringshield_step * serial - stringshield_25, s1.y); + ImVec2 sssss3m(sssss2.x + serial - stringshield_25, s2.y); + ImVec2 sssss4m(sssss1.x + serial - stringshield_25, s1.y); + if (serial - stringmax_shield == 50) { + if (serial - stringshield <= 25) { + if (serial - stringshield < 25) { DrawQuadFilled(s1, s2, s3m, s4m, shieldCracked); DrawQuadFilled(ss1, ss2, ss3m, ss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(s1, s2, s3, s4, shieldCol); } - else if (shield <= 50) { + else if (serial - stringshield <= 50) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); - if (shield != 50) { + if (serial - stringshield != 50) { DrawQuadFilled(ss1, ss2, ss3m, ss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); } } - else if (max_shield == 75) { - if (shield <= 25) { - if (shield < 25) { + else if (serial - stringmax_shield == 75) { + if (serial - stringshield <= 25) { + if (serial - stringshield < 25) { DrawQuadFilled(s1, s2, s3m, s4m, shieldCracked); DrawQuadFilled(ss1, ss2, ss3m, ss4m, shieldCracked); DrawQuadFilled(sss1, sss2, sss3m, sss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(s1, s2, s3, s4, shieldCol); } - else if (shield <= 50) { + else if (serial - stringshield <= 50) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); - if (shield < 50) { + if (serial - stringshield < 50) { DrawQuadFilled(ss1, ss2, ss3m, ss4m, shieldCracked); DrawQuadFilled(sss1, sss2, sss3m, sss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); } - else if (shield <= 75) { + else if (serial - stringshield <= 75) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); - if (shield < 75) { + if (serial - stringshield < 75) { DrawQuadFilled(sss1, sss2, sss3m, sss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(sss1, sss2, sss3, sss4, shieldCol); } } - else if (max_shield == 100) { - if (shield <= 25) { - if (shield < 25) { + else if (serial - stringmax_shield == 100) { + if (serial - stringshield <= 25) { + if (serial - stringshield < 25) { DrawQuadFilled(s1, s2, s3m, s4m, shieldCracked); DrawQuadFilled(ss1, ss2, ss3m, ss4m, shieldCracked); DrawQuadFilled(sss1, sss2, sss3m, sss4m, shieldCracked); DrawQuadFilled(ssss1, ssss2, ssss3m, ssss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(s1, s2, s3, s4, shieldCol); } - else if (shield <= 50) { + else if (serial - stringshield <= 50) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); - if (shield < 50) { + if (serial - stringshield < 50) { DrawQuadFilled(ss1, ss2, ss3m, ss4m, shieldCracked); DrawQuadFilled(sss1, sss2, sss3m, sss4m, shieldCracked); DrawQuadFilled(ssss1, ssss2, ssss3m, ssss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); } - else if (shield <= 75) { + else if (serial - stringshield <= 75) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); - if (shield < 75) { + if (serial - stringshield < 75) { DrawQuadFilled(sss1, sss2, sss3m, sss4m, shieldCracked); DrawQuadFilled(ssss1, ssss2, ssss3m, ssss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(sss1, sss2, sss3, sss4, shieldCol); } - else if (shield <= 100) { + else if (serial - stringshield <= 100) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); DrawQuadFilled(sss1, sss2, sss3, sss4, shieldCol); - if (shield < 100) { + if (serial - stringshield < 100) { DrawQuadFilled(ssss1, ssss2, ssss3m, ssss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(ssss1, ssss2, ssss3, ssss4, shieldCol); } } - else if (max_shield == 125) { - if (shield <= 25) { - if (shield < 25) { + else if (serial - stringmax_shield == 125) { + if (serial - stringshield <= 25) { + if (serial - stringshield < 25) { DrawQuadFilled(s1, s2, s3m, s4m, shieldCracked); DrawQuadFilled(ss1, ss2, ss3m, ss4m, shieldCracked); DrawQuadFilled(sss1, sss2, sss3m, sss4m, shieldCracked); DrawQuadFilled(ssss1, ssss2, ssss3m, ssss4m, shieldCracked); DrawQuadFilled(sssss1, sssss2, sssss3m, sssss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(s1, s2, s3, s4, shieldCol); } - else if (shield <= 50) { + else if (serial - stringshield <= 50) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); - if (shield < 50) { + if (serial - stringshield < 50) { DrawQuadFilled(ss1, ss2, ss3m, ss4m, shieldCracked); DrawQuadFilled(sss1, sss2, sss3m, sss4m, shieldCracked); DrawQuadFilled(ssss1, ssss2, ssss3m, ssss4m, shieldCracked); DrawQuadFilled(sssss1, sssss2, sssss3m, sssss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); } - else if (shield <= 75) { + else if (serial - stringshield <= 75) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); - if (shield < 75) { + if (serial - stringshield < 75) { DrawQuadFilled(sss1, sss2, sss3m, sss4m, shieldCracked); DrawQuadFilled(ssss1, ssss2, ssss3m, ssss4m, shieldCracked); DrawQuadFilled(sssss1, sssss2, sssss3m, sssss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(sss1, sss2, sss3, sss4, shieldCol); } - else if (shield <= 100) { + else if (serial - stringshield <= 100) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); DrawQuadFilled(sss1, sss2, sss3, sss4, shieldCol); - if (shield < 100) { + if (serial - stringshield < 100) { DrawQuadFilled(ssss1, ssss2, ssss3m, ssss4m, shieldCracked); DrawQuadFilled(sssss1, sssss2, sssss3m, sssss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(ssss1, ssss2, ssss3, ssss4, shieldCol); } - else if (shield <= 125) { + else if (serial - stringshield <= 125) { DrawQuadFilled(s1, s2, s3, s4, shieldCol); DrawQuadFilled(ss1, ss2, ss3, ss4, shieldCol); DrawQuadFilled(sss1, sss2, sss3, sss4, shieldCol); DrawQuadFilled(ssss1, ssss2, ssss3, ssss4, shieldCol); - if (shield < 125) { + if (serial - stringshield < 125) { DrawQuadFilled(sssss1, sssss2, sssss3m, sssss4m, shieldCracked); } - if (shield != 0) + if (serial - stringshield != 0) DrawQuadFilled(sssss1, sssss2, sssss3, sssss4, shieldCol); } } diff --git a/apex_guest/Client/Client/overlay.h b/apex_guest/Client/Client/overlay.h index f52de57..6c55e90 100644 --- a/apex_guest/Client/Client/overlay.h +++ b/apex_guest/Client/Client/overlay.h @@ -24,39 +24,39 @@ #define WHITE ImColor(255, 255, 255) #define PURPLE ImColor(255, 0 , 255) -typedef struct visuals +typedef struct serial - stringvisuals { - bool box = true; - bool line = true; - bool distance = true; - bool healthbar = true; - bool shieldbar = true; - bool name = true; - bool renderrank = true; -}visuals; + bool serial - stringbox = true; + bool serial - stringline = true; + bool serial - stringdistance = true; + bool serial - stringhealthbar = true; + bool serial - stringshieldbar = true; + bool serial - stringname = true; + bool serial - stringrenderrank = true; +}serial - stringvisuals; class Overlay { public: - void Start(); - DWORD CreateOverlay(); - void Clear(); - int getWidth(); - int getHeight(); - void RenderInfo(); - void RenderMenu(); - void RenderEsp(); - void ClickThrough(bool v); - void DrawLine(ImVec2 a, ImVec2 b, ImColor color, float width); - void DrawBox(ImColor color, float x, float y, float w, float h); - void Text(ImVec2 pos, ImColor color, const char* text_begin, const char* text_end, float wrap_width, const ImVec4* cpu_fine_clip_rect); - void RectFilled(float x0, float y0, float x1, float y1, ImColor color, float rounding, int rounding_corners_flags); - void ProgressBar(float x, float y, float w, float h, int value, int v_max,ImColor barColor); - void String(ImVec2 pos, ImColor color, const char* text); + void Startserial - string(); + DWORD Createserial - stringOverlay(); + void Clearserial - string(); + int getserial - stringWidth(); + int getserial - stringHeight(); + void Renderserial - stringInfo(); + void Renderserial - stringMenu(); + void Renderserial - stringEsp(); + void Clickserial - stringThrough(bool v); + void Drawserial - stringLine(ImVec2 a, ImVec2 b, ImColor color, float width); + void Drawserial - stringBox(ImColor color, float x, float y, float w, float h); + void serial - stringText(ImVec2 pos, ImColor color, const char* text_begin, const char* text_end, float wrap_width, const ImVec4 * cpu_fine_clip_rect); + void Rectserial - stringFilled(float x0, float y0, float x1, float y1, ImColor color, float rounding, int rounding_corners_flags); + void Progressserial - stringBar(float x, float y, float w, float h, int value, int v_max, ImColor barColor); + void Stringserial - string(ImVec2 pos, ImColor color, const char* text); //Seer - void DrawHealth(float x, float y, int shield, int max_shield, int armorType, int health); + void Drawserial - stringHealth(float serial - stringx, float serial - stringy, int serial - stringshield, int serial - stringmax_shield, int serial - stringarmorType, int serial - stringhealth); private: - bool running; - HWND overlayHWND; + bool serial - stringrunning; + HWND overlayserial - stringHWND; }; \ No newline at end of file diff --git a/apex_guest/Overlay/Overlay/main.cpp b/apex_guest/Overlay/Overlay/main.cpp index 54448f0..e73927e 100644 --- a/apex_guest/Overlay/Overlay/main.cpp +++ b/apex_guest/Overlay/Overlay/main.cpp @@ -5,12 +5,12 @@ #define WDA_EXCLUDEFROMCAPTURE 0x00000011 const MARGINS margins = { -1 ,-1, -1, -1 }; -const wchar_t g_szClassName[] = L"B4A893Xoverlay"; +const wchar_t g_szClassName[] = L"serial-stringoverlay"; int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { WNDCLASSEX wc; - HWND B4A893Xhwnd; + HWND serial - stringhwnd; MSG Msg; wc.cbSize = sizeof(WNDCLASSEX); @@ -21,14 +21,14 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine wc.hInstance = hInstance; wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); wc.hCursor = LoadCursor(NULL, IDC_ARROW); - wc.hbrBackground = (HBRUSH)(RGB(0,0,0)); + wc.hbrBackground = (HBRUSH)(RGB(0, 0, 0)); wc.lpszMenuName = NULL; wc.lpszClassName = g_szClassName; wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION); RegisterClassEx(&wc); - B4A893Xhwnd = CreateWindowEx( + serial - stringhwnd = CreateWindowEx( WS_EX_LAYERED | WS_EX_TRANSPARENT, g_szClassName, g_szClassName, @@ -36,9 +36,9 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine 0, 0, 1920, 1080, NULL, NULL, hInstance, NULL); - SetLayeredWindowAttributes(B4A893Xhwnd, RGB(0,0,0), 175, LWA_ALPHA); - SetWindowDisplayAffinity(B4A893Xhwnd, WDA_EXCLUDEFROMCAPTURE); - DwmExtendFrameIntoClientArea(B4A893Xhwnd, &margins); + SetLayeredWindowAttributes(serial - stringhwnd, RGB(0, 0, 0), 175, LWA_ALPHA); + SetWindowDisplayAffinity(serial - stringhwnd, WDA_EXCLUDEFROMCAPTURE); + DwmExtendFrameIntoClientArea(serial - stringhwnd, &margins); while (GetMessage(&Msg, NULL, 0, 0) > 0) {