could someone just post the updated offsets please? would be much easier to edit manually than waiting for approve over and over again.
Detected[PolyHack] Bluehack Remastered v1.1
Here now just replace in the zip file following file: "main.cpp" with following code:
Code:
#include "Game.h"
PModule modEngine, modClient;
PMemory mem;
HANDLE TargetProcess;
DWORD DwClient;
DWORD DwEngine;
DWORD DwEntityList = 0x049EC244; // Updated
DWORD DwEnginePointer = 0x00559434; // Updated
DWORD DwLocalPlayer = 0x00A4A9BC; // Updated
DWORD DwViewAngle = 0x4CE0; // Updated
DWORD dwSpotted = 0x935; // Updated
DWORD offLocalPlayer;
DWORD offEntityList;
DWORD offGlow;
const DWORD DwCrosshairId = 0x2400;
const DWORD DwVecViewOrigin = 0x104;
const DWORD DwVecOrigin = 0x134;
const DWORD DwVecPunch = 0x13E8;
const DWORD DwTeamNumber = 0xF0;
const DWORD DwShotsFired = 0x1D60;
const DWORD DwFlags = 0x100;
const DWORD DwBoneMatrix = 0xA78;
const DWORD DwEntitySize = 0x10;
const DWORD DwHealth = 0xFC;
const DWORD DwLifeState = 0x25B;
const DWORD DwVecVelocity = 0x110;
const DWORD offEntityTeam = 0xF0;
float PitchMinPunch = 2.f;
float PitchMaxPunch = 2.f;
float YawMinPunch = 2.f;
float YawMaxPunch = 2.f;
float smoothamount = 20.f;
int TargetBone = 10;
bool glowEnabled = true;
bool aimEnabled = true;
bool radarEnabled = true;
DWORD TrigVkeyCode;
DWORD ForceAimVkeyCode;
DWORD AutoAimVkeyCode;
DWORD ESPVkeyCode;
DWORD PanicVkeyCode;
DWORD RadarVkeyCode;
DWORD AimVkeyCode;
DWORD NewAimVkeyCode = 1;
[junk_enable /]
[enc_string_enable /]
struct
{
DWORD GetBaseEntity(int PlayerNumber)
{
return mem.Read<DWORD>(DwClient + DwEntityList + (DwEntitySize * PlayerNumber));
}
bool IsDead(int PlayerNumber)
{
DWORD BaseEntity = GetBaseEntity(PlayerNumber);
if (BaseEntity)
{
return mem.Read<bool>(BaseEntity + DwLifeState);
}
}
int GetTeam(int PlayerNumber)
{
DWORD BaseEntity = GetBaseEntity(PlayerNumber);
if (BaseEntity)
{
return mem.Read<int>(BaseEntity + DwTeamNumber);
}
}
void GetVelocity(int PlayerNumber, float* Buffer)
{
DWORD BaseEntity = GetBaseEntity(PlayerNumber);
if (BaseEntity)
{
mem.Read<float*>(BaseEntity + DwVecVelocity, true, 3, Buffer);
}
}
void GetBonePosition(int PlayerNumber, float* BonePosition)
{
DWORD BaseEntity = GetBaseEntity(PlayerNumber);
if (BaseEntity)
{
DWORD BoneMatrix = mem.Read<DWORD>(BaseEntity + DwBoneMatrix);
if (BoneMatrix)
{
mem.Read<float*>(BoneMatrix + 0x30 * TargetBone + 0x0C, true, 1, &BonePosition[0]);
mem.Read<float*>(BoneMatrix + 0x30 * TargetBone + 0x1C, true, 1, &BonePosition[1]);
mem.Read<float*>(BoneMatrix + 0x30 * TargetBone + 0x2C, true, 1, &BonePosition[2]);
}
}
}
}EntityList;
struct
{
DWORD GetPlayerBase()
{
return mem.Read<DWORD>(DwClient + DwLocalPlayer);
}
void SetAngles(float* Angles)
{
DWORD AnglePointer = mem.Read<DWORD>(DwEngine + DwEnginePointer);
if (AnglePointer)
{
mem.Write<float*>(AnglePointer + DwViewAngle, Angles, true, 3);
}
}
void GetVelocity(float* Buffer)
{
DWORD PlayerBase = GetPlayerBase();
if (PlayerBase)
{
mem.Read<float*>(PlayerBase + DwVecVelocity, true, 3, Buffer);
}
}
void GetAngles(float* Angles)
{
DWORD AnglePointer = mem.Read<DWORD>(DwEngine + DwEnginePointer);
if (AnglePointer)
{
mem.Read<float*>(AnglePointer + DwViewAngle, true, 3, Angles);
}
}
int GetTeam()
{
DWORD PlayerBase = GetPlayerBase();
if (PlayerBase)
{
return mem.Read<int>(PlayerBase + DwTeamNumber);
}
}
int GetCrosshairId()
{
DWORD PlayerBase = GetPlayerBase();
if (PlayerBase)
{
return mem.Read<int>(PlayerBase + DwCrosshairId) - 1;
}
}
void GetPunch(float* Punch)
{
DWORD PlayerBase = GetPlayerBase();
if (PlayerBase)
{
mem.Read<float*>(PlayerBase + DwVecPunch, true, 2, Punch);
}
}
float GetViewOrigin()
{
DWORD PlayerBase = GetPlayerBase();
if (PlayerBase)
{
float Vecview[3];
mem.Read<float*>(PlayerBase + DwVecViewOrigin, true, 3, Vecview);
return Vecview[2];
}
}
void GetPosition(float* Position)
{
DWORD PlayerBase = GetPlayerBase();
if (PlayerBase)
{
mem.Read<float*>(PlayerBase + DwVecOrigin, true, 3, Position);
}
}
int GetShotsFired()
{
DWORD PlayerBase = GetPlayerBase();
if (PlayerBase)
{
return mem.Read<int>(PlayerBase + DwShotsFired);
}
}
}NewPlayer;
void AngleNormalize(float* angle)
{
if (angle[0] > 89.0f && angle[0] <= 180.0f)
{
angle[0] = 89.0f;
}
if (angle[0] > 180.f)
{
angle[0] -= 360.f;
}
if (angle[0] < -89.0f)
{
angle[0] = -89.0f;
}
if (angle[1] > 180.f)
{
angle[1] -= 360.f;
}
if (angle[1] < -180.f)
{
angle[1] += 360.f;
}
if (angle[2] != 0.0f)
{
angle[2] = 0.0f;
}
}
void calcang(float *src, float *dst, float *angles)
{
random_device Random;
mt19937 RandomGen(Random());
uniform_real<float> RandomXdistrib(PitchMinPunch, PitchMaxPunch);
uniform_real<float> RandomYdistrib(YawMinPunch, YawMaxPunch);
float MyPunch[2];
NewPlayer.GetPunch(MyPunch);
float pitchreduction = RandomXdistrib(RandomGen);
float yawreduction = RandomYdistrib(RandomGen);
float delta[3] = { (src[0] - dst[0]), (src[1] - dst[1]), ((src[2] + NewPlayer.GetViewOrigin()) - dst[2]) };
float hyp = sqrt(delta[0] * delta[0] + delta[1] * delta[1]);
angles[0] = atanf(delta[2] / hyp) * 57.295779513082f - MyPunch[0] * pitchreduction;
angles[1] = atanf(delta[1] / delta[0]) * 57.295779513082f - MyPunch[1] * yawreduction;
angles[2] = 0.0f;
if (delta[0] >= 0.0)
{
angles[1] += 180.0f;
}
}
void SmoothAngleSet(float* dest, float* orig)
{
float SmoothAngles[3];
SmoothAngles[0] = dest[0] - orig[0];
SmoothAngles[1] = dest[1] - orig[1];
SmoothAngles[2] = 0.0f;
AngleNormalize(SmoothAngles);
SmoothAngles[0] = orig[0] + SmoothAngles[0] / 100.0f * smoothamount;
SmoothAngles[1] = orig[1] + SmoothAngles[1] / 100.0f * smoothamount;
SmoothAngles[2] = 0.0f;
AngleNormalize(SmoothAngles);
NewPlayer.SetAngles(SmoothAngles);
Sleep(1);
}
void Click()
{
mouse_event(MOUSEEVENTF_LEFTDOWN, NULL, NULL, NULL, NULL);
Sleep(1);
mouse_event(MOUSEEVENTF_LEFTUP, NULL, NULL, NULL, NULL);
Sleep(30);
}
void VelocityComp(int PlayerNumber, float* EnemyPos)
{
float EnemyVelocity[3];
float MyVelocity[3];
EntityList.GetVelocity(PlayerNumber, EnemyVelocity);
NewPlayer.GetVelocity(MyVelocity);
EnemyPos[0] = EnemyPos[0] + (EnemyVelocity[0] / 100.f) * (40.f / smoothamount);
EnemyPos[1] = EnemyPos[1] + (EnemyVelocity[1] / 100.f) * (40.f / smoothamount);
EnemyPos[2] = EnemyPos[2] + (EnemyVelocity[2] / 100.f) * (40.f / smoothamount);
EnemyPos[0] = EnemyPos[0] - (MyVelocity[0] / 100.f) * (40.f / smoothamount);
EnemyPos[1] = EnemyPos[1] - (MyVelocity[1] / 100.f) * (40.f / smoothamount);
EnemyPos[2] = EnemyPos[2] - (MyVelocity[2] / 100.f) * (40.f / smoothamount);
}
DWORD WINAPI AB(LPVOID params)
{
cout << "Aimbot thread is running..." << endl;
while (!GetAsyncKeyState(PanicVkeyCode))
{
Sleep(1);
if (GetAsyncKeyState(PanicVkeyCode))
{
ExitThread(0);
}
if (aimEnabled)
{
int PlayerNumber = NewPlayer.GetCrosshairId();
while (GetAsyncKeyState(NewAimVkeyCode) < 0 && NewPlayer.GetShotsFired() > 1 && PlayerNumber < 64 && PlayerNumber >= 0 && EntityList.GetTeam(PlayerNumber) != NewPlayer.GetTeam() && EntityList.IsDead(PlayerNumber) != true)
{
int TempPlayerNumber = NewPlayer.GetCrosshairId();
if (TempPlayerNumber < 64 && TempPlayerNumber >= 0 && EntityList.GetTeam(TempPlayerNumber) != NewPlayer.GetTeam() && EntityList.IsDead(TempPlayerNumber) != true)
{
PlayerNumber = TempPlayerNumber;
}
float PlayerPos[3];
float EnemyPos[3];
float AimAngle[3];
float CurrentAngle[3];
NewPlayer.GetPosition(PlayerPos);
EntityList.GetBonePosition(PlayerNumber, EnemyPos);
VelocityComp(PlayerNumber, EnemyPos);
calcang(PlayerPos, EnemyPos, AimAngle);
AngleNormalize(AimAngle);
NewPlayer.GetAngles(CurrentAngle);
AngleNormalize(CurrentAngle);
SmoothAngleSet(AimAngle, CurrentAngle);
Sleep(1);
}
while (GetAsyncKeyState(ForceAimVkeyCode) < 0 && PlayerNumber < 64 && PlayerNumber >= 0 && EntityList.GetTeam(PlayerNumber) != NewPlayer.GetTeam() && EntityList.IsDead(PlayerNumber) != true)
{
int TempPlayerNumber = NewPlayer.GetCrosshairId();
if (TempPlayerNumber < 64 && TempPlayerNumber >= 0 && EntityList.GetTeam(TempPlayerNumber) != NewPlayer.GetTeam() && EntityList.IsDead(TempPlayerNumber) != true)
{
PlayerNumber = TempPlayerNumber;
}
float PlayerPos[3];
float EnemyPos[3];
float AimAngle[3];
float CurrentAngle[3];
NewPlayer.GetPosition(PlayerPos);
EntityList.GetBonePosition(PlayerNumber, EnemyPos);
VelocityComp(PlayerNumber, EnemyPos);
calcang(PlayerPos, EnemyPos, AimAngle);
AngleNormalize(AimAngle);
NewPlayer.GetAngles(CurrentAngle);
AngleNormalize(CurrentAngle);
SmoothAngleSet(AimAngle, CurrentAngle);
Sleep(1);
}
}
}
}
DWORD WINAPI TB(LPVOID params)
{
cout << "Trigger thread is running..." << endl;
while (!GetAsyncKeyState(PanicVkeyCode))
{
Sleep(1);
if (GetAsyncKeyState(PanicVkeyCode))
{
ExitThread(0);
}
if (GetAsyncKeyState(TrigVkeyCode) < 0 && TrigVkeyCode != 1)
{
int PlayerNumber = NewPlayer.GetCrosshairId();
if (PlayerNumber < 64 && PlayerNumber >= 0 && EntityList.GetTeam(PlayerNumber) != NewPlayer.GetTeam() && EntityList.IsDead(PlayerNumber) != true)
{
Click();
}
else
{
Sleep(1);
}
}
}
}
int whichKeyIsPressed() {
while (true) {
for (int i = 1; i < 255; i++) {
if (GetAsyncKeyState(i) & 0x8000) {
while (GetAsyncKeyState(i) & 0x8000) {
Sleep(50);
}
return i;
}
}
Sleep(10);
}
}
void ReadData(Player* p) {
p->team = mem.Read<int>(p->dwBase + offEntityTeam);
}
int main() {
std::cout << "Bluehack - ESP & Aimbot\n\n";
std::cout << "Waiting for csgo.exe...";
while (!mem.Attach("csgo.exe")) {
std::cout << ".";
Sleep(500);
}
modClient = mem.GetModule("client.dll");
DwClient = modClient.dwBase;
modEngine = mem.GetModule("engine.dll");
DwEngine = modEngine.dwBase;
std::cout << "\nFound\n\n";
std::cout << "Getting offsets...";
offGlow = 0x04AFCE94;
offEntityList = 0x049EC244;
offLocalPlayer = 0x00A4A9bC;
Sleep(30);
std::cout << "\nDone\n\n";
std::cout << "Hotkeys: \n";
std::cout << "Toggle ESP: ";
ESPVkeyCode = whichKeyIsPressed();
std::cout << ESPVkeyCode << "\n";
std::cout << "Toggle Aimbot: ";
AimVkeyCode = whichKeyIsPressed();
std::cout << AimVkeyCode << "\n";
std::cout << "Force Aim: ";
ForceAimVkeyCode = whichKeyIsPressed();
std::cout << ForceAimVkeyCode << "\n";
std::cout << "Trigger Fire: ";
TrigVkeyCode = whichKeyIsPressed();
std::cout << TrigVkeyCode << "\n";
std::cout << "Radar Code: ";
RadarVkeyCode = whichKeyIsPressed();
std::cout << RadarVkeyCode << "\n";
std::cout << "Panic Key: ";
PanicVkeyCode = whichKeyIsPressed();
std::cout << PanicVkeyCode << "\n";
std::cout << "\n";
CreateThread(0, 0x1000, &AB, 0, 0, 0);
CreateThread(0, 0x1001, &TB, 0, 0, 0);
Player me;
Player players[64];
while (!GetAsyncKeyState(PanicVkeyCode)) {
if (GetAsyncKeyState(ESPVkeyCode) & 0x8000) {
while (GetAsyncKeyState(ESPVkeyCode) & 0x8000) {
Sleep(50);
}
glowEnabled = !glowEnabled;
std::cout << "Glow ESP is now ";
if (glowEnabled) {
std::cout << "enabled\n";
}
else {
std::cout << "disabled\n";
}
}
if (GetAsyncKeyState(AimVkeyCode) & 0x8000) {
while (GetAsyncKeyState(AimVkeyCode) & 0x8000) {
Sleep(50);
}
aimEnabled = !aimEnabled;
std::cout << "Aimbot is now ";
if (aimEnabled) {
std::cout << "enabled\n";
}
else {
std::cout << "disabled\n";
}
}
if (GetAsyncKeyState(RadarVkeyCode) & 0x8000) {
while (GetAsyncKeyState(RadarVkeyCode) & 0x8000) {
Sleep(50);
}
radarEnabled = !radarEnabled;
std::cout << "Radar is now ";
if (radarEnabled) {
std::cout << "enabled\n";
}
else {
std::cout << "disabled\n";
}
}
if (glowEnabled) {
me.dwBase = mem.Read<DWORD>(DwClient + offLocalPlayer);
ReadData(&me);
for (int i = 1; i < 64; i++) {
players[i].dwBase = mem.Read<DWORD>(DwClient + offEntityList + i * 0x10);
ReadData(&players[i]);
}
DWORD pointerGlow = mem.Read<DWORD>(DwClient + offGlow);
int objectCount = mem.Read<int>(DwClient + offGlow + 0x4);
if (pointerGlow != NULL) {
for (int i = 0; i < objectCount; i++) {
DWORD mObj = pointerGlow + i * sizeof(GlowObjectDefinition_t);
GlowObjectDefinition_t glowObj = mem.ReadNew<GlowObjectDefinition_t>(mObj);
if (glowObj.pEntity != NULL) {
int f_i = -1;
for (int j = 1; j < 64; j++) {
if (glowObj.pEntity == players[j].dwBase) {
int r = 255, g = 0, b = 0;
if (players[j].team == me.team) {
r = 0;
b = 255;
}
mem.WriteNew<float>(mObj + 0x4, r / 255);
mem.WriteNew<float>(mObj + 0x8, g / 255);
mem.WriteNew<float>(mObj + 0xC, b / 255);
mem.WriteNew<float>(mObj + 0x10, 1.0f);
mem.WriteNew<bool>(mObj + 0x24, true);
mem.WriteNew<bool>(mObj + 0x25, false);
}
}
}
// Entity found
}
}
}
if (radarEnabled) {
me.dwBase = mem.Read<DWORD>(DwClient + offLocalPlayer);
ReadData(&me);
for (int i = 1; i < 64; i++) {
players[i].dwBase = mem.Read<DWORD>(DwClient + offEntityList + i * 0x10);
ReadData(&players[i]);
}
DWORD pointerGlow = mem.Read<DWORD>(DwClient + offGlow);
int objectCount = mem.Read<int>(DwClient + offGlow + 0x4);
if (pointerGlow != NULL) {
for (int i = 0; i < objectCount; i++) {
DWORD mObj = pointerGlow + i * sizeof(GlowObjectDefinition_t);
GlowObjectDefinition_t glowObj = mem.ReadNew<GlowObjectDefinition_t>(mObj);
if (glowObj.pEntity != NULL) {
int f_i = -1;
for (int j = 1; j < 64; j++) {
if (glowObj.pEntity == players[j].dwBase) {
if (players[j].team != me.team) {
mem.WriteNew<int>(players[j].dwBase + dwSpotted, 1);
}
}
}
}
}
}
}
}
return 0;
}
It is working for me. Don't know what you are trying to do... just try recompiling with polyloader.... I just played 2 games today...
Then you do something terribly wrong to be honest... Did you really replace the code?
1. Open the ZIP Archive
2. copy the main.cpp out to somewhere
3. edit the code and replace it
4. put it back into the zip archive
5. use polyloader
6. (optional use VMProtect/Enigma)
I just needed to compile it 2 times, then it worked.
- - - Updated - - -
Forgot to mention: In my code the Trigger, Aimbot, Radar, and GlowESP are already turned on ;-)
So you need to press nothing but the Aimkey and Trigger-Key
1. Open the ZIP Archive
2. copy the main.cpp out to somewhere
3. edit the code and replace it
4. put it back into the zip archive
5. use polyloader
6. (optional use VMProtect/Enigma)
I just needed to compile it 2 times, then it worked.
- - - Updated - - -
Forgot to mention: In my code the Trigger, Aimbot, Radar, and GlowESP are already turned on ;-)
So you need to press nothing but the Aimkey and Trigger-Key

DWORD DwEntityList = 0x049ec244;
DWORD DwEnginePointer = 0x00559434;
DWORD DwLocalPlayer = 0x00a4a9bc;
DWORD DwViewAngle = 0x4CE0;
DWORD dwSpotted = 0x935;
These are the offsets I used if anyone wants to know, they work for me if they don't work for you then I'm sorry I don't know what to say.
DWORD DwEnginePointer = 0x00559434;
DWORD DwLocalPlayer = 0x00a4a9bc;
DWORD DwViewAngle = 0x4CE0;
DWORD dwSpotted = 0x935;
These are the offsets I used if anyone wants to know, they work for me if they don't work for you then I'm sorry I don't know what to say.
Just change this:
to this:
Code:
bool glowEnabled = true; bool aimEnabled = true; bool radarEnabled = true;
Code:
bool glowEnabled = false; bool aimEnabled = false; bool radarEnabled = false;
i cant get it work,i save it but it doesnt
This thread is closed for replies.
Similar Threads
Counter-Strike 2 Hacks[PolyHack] Bluehack Remastered
87 Counter-Strike 2 Hacks[PolyHack] BlueHack Remastered FIXED
72 Counter-Strike 2 Hacks[PolyHack] BlueHack Remastered FIXED 4/29/2015
170 Unturned Hacks & Cheats[Unturned]Bluehack Remastered - No Recoil, Vehicle Menu, Teleporting, Name Spoofing
135 Unturned Hacks & Cheats[Unturned]Bluehack Remastered - Newest Update
72

