hi,
i stop world of warcraft and i'm looking for "Private Rust/ESP"
i give you all of my "casual" code for world of warcraft (x64)
it's c++, i compiled with "CodeBlock".
(link in CodeBlock)
-static-libgcc
-static-libstdc++
you need file named "conf" same folder .exe
i stop world of warcraft and i'm looking for "Private Rust/ESP"
i give you all of my "casual" code for world of warcraft (x64)
it's c++, i compiled with "CodeBlock".
(link in CodeBlock)
-static-libgcc
-static-libstdc++
you need file named "conf" same folder .exe
Code:
/* EXEMPLE CONF FILE ================================ General ================================ Structure = x64 GameBuild_value = 24415 GameBuild = 1699667 ================================ Player ================================ LocalPlayer = 185F668 offsetGUID = 58 offsetX = 0 offsetY = 0 offsetZ = 0 offsetHp = 2A10 offsetMana = 2A18 offsetSHARD = 2A1C offsetHpMax = 8140 offsetManaMax = 8148 offsetCastId = 1C6C offsetCastInst = 1C48 offsetChannelId = 1CA0 IsLooting = 197AB68 IsTexting = 165EE74 TargetGuid = 1960CA0 ================================ Entity List ================================ EntityList = 16F4600 FirstEntity = 18 NextEntity = 70 EntityType = 20 Descriptors = 08 GlobalID = 08 AuraCount1 = 26C0 AuraCount2 = 1DC0 AuraOwnerGUID = 50 AuraSpellId = 60 AuraTimeLeft = 70 AuraSize = 90 ================================ Custom ================================ SpellColldowns = 16E1088 SpellCharge = 16E10B8 WowTime = 163d98c */
Code:
#include <iostream>
#include <windows.h>
#include <string>
#include <fstream>
#include <sstream>
#include <tlhelp32.h>
#include "LocalPlayer.h"
#include <list>
#include <utility> // std::pair
#define KeyMono 0x31//0x31 //2
#define KeyMulti 0x32
#define KeyBurstMono 0x33
#define DebugPattern 0
bool kikoo = false;
bool bool_checkbox_DebugCharge = false;
bool bool_checkbox_DebugAura = false;
bool bool_checkbox_DebugSpell = false;
bool bool_checkbox_DebugLocalPlayer = false;
bool bool_checkbox_DebugPecheur = false;
bool new_idd = false;
int new_idd_cpt = -1;
int new_id[500];
bool Play_SummonGangregarde = true;
#define BTcheckbox_Auto 999
HWND HWND_checkbox_Auto;
bool bool_checkbox_Auto = false;
#define BTcheckbox_OnOff 1000
HWND HWND_checkbox_OnOff;
bool bool_checkbox_OnOff = false;
#define BTcheckbox_Warlock 1001
HWND HWND_checkbox_Warlock;
bool bool_checkbox_Warlock = false;
#define BTcheckbox_War 1002
HWND HWND_checkbox_War;
bool bool_checkbox_War = false;
#define BTcheckbox_Hunter 1003
HWND HWND_checkbox_Hunter;
bool bool_checkbox_Hunter = false;
#define BTcheckbox_Priest 1004
HWND HWND_checkbox_Priest;
bool bool_checkbox_Priest = false;
#define BTcheckbox_Shaman 1005
HWND HWND_checkbox_Shaman;
bool bool_checkbox_Shaman = false;
#define BTcheckbox_Drood 1006
HWND HWND_checkbox_Drood;
bool bool_checkbox_Drood = false;
#define BTcheckbox_Paladin 1007
HWND HWND_checkbox_Paladin;
bool bool_checkbox_Paladin = false;
#define BTcheckbox_Rogue 1008
HWND HWND_checkbox_Rogue;
bool bool_checkbox_Rogue = false;
int Jewel = GetTickCount()+2000;
#define BTcheckbox_DK 1009
HWND HWND_checkbox_DK;
bool bool_checkbox_DK = false;
#define BTcheckbox_Mage 1010
HWND HWND_checkbox_Mage;
bool bool_checkbox_Mage = false;
#define BTcheckbox_Moine 1011
HWND HWND_checkbox_Moine;
bool bool_checkbox_Moine = false;
#define BTcheckbox_DH 1012
HWND HWND_checkbox_DH;
bool bool_checkbox_DH = false;
#define BTcheckbox_SPE1 1013
HWND HWND_checkbox_SPE1;
bool bool_checkbox_SPE1 = false;
#define BTcheckbox_SPE2 1014
HWND HWND_checkbox_SPE2;
bool bool_checkbox_SPE2 = false;
#define BTcheckbox_SPE3 1015
HWND HWND_checkbox_SPE3;
bool bool_checkbox_SPE3 = false;
using namespace std;
int TimeLimit = GetTickCount()+2000;;
struct Info
{
int CastId;
int Hp;
int HpMax;
int HpPourcent;
int Mana;
int Energie;
int Rage;
int ManaMax;
int ManaPourcent;
int Shard;
int CombotPoint;
int X;
int Y;
int Z;
};
Info Player;
Info Target;
enum
{
VK_T = 84,
VK_G = 71,
VK_1 = 0x31,
VK_2 = 0x32,
VK_3 = 0x33,
VK_4 = 0x34,
VK_5 = 0x35,
VK_6 = 0x36,
VK_7 = 0x37,
VK_8 = 56,
VK_9 = 57,
VK_10 = 48,
VK_11 = 219,
VK_12 = 187
};
Code:
void spec(char* spe, INT32 enable)
{
if(enable == 1)
{
if(strcmp(spe,"SPE1"))
{
EnableWindow(HWND_checkbox_SPE1, true);
ShowWindow (HWND_checkbox_SPE1, SW_SHOW);
}
if(strcmp(spe,"SPE2"))
{
EnableWindow(HWND_checkbox_SPE2, true);
ShowWindow (HWND_checkbox_SPE2, SW_SHOW);
}
if(strcmp(spe,"SPE3"))
{
EnableWindow(HWND_checkbox_SPE3, true);
ShowWindow (HWND_checkbox_SPE3, SW_SHOW);
}
}
if(enable == 0)
{
if(strcmp(spe,"SPE1"))
{
EnableWindow(HWND_checkbox_SPE1, false);
ShowWindow (HWND_checkbox_SPE1, SW_HIDE);
}
if(strcmp(spe,"SPE2"))
{
EnableWindow(HWND_checkbox_SPE2, false);
ShowWindow (HWND_checkbox_SPE2, SW_HIDE);
}
if(strcmp(spe,"SPE3"))
{
EnableWindow(HWND_checkbox_SPE3, false);
ShowWindow (HWND_checkbox_SPE3, SW_HIDE);
}
}
}
void checkbox(char* classe, INT32 enable)
{
if(enable == 1)
{
SetWindowText(HWND_checkbox_SPE1,"SPE 1");
SetWindowText(HWND_checkbox_SPE2,"SPE 2");
SetWindowText(HWND_checkbox_SPE3,"SPE 3");
SendMessage(HWND_checkbox_SPE1, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
SendMessage(HWND_checkbox_SPE2, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
SendMessage(HWND_checkbox_SPE3, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
bool_checkbox_SPE1 = false;
bool_checkbox_SPE2 = false;
bool_checkbox_SPE3 = false;
spec((char*)"all", 0);
if(strcmp(classe,"Warlock"))
{
EnableWindow(HWND_checkbox_Warlock, true);
ShowWindow (HWND_checkbox_Warlock, SW_SHOW);
}
if(strcmp(classe,"War"))
{
EnableWindow(HWND_checkbox_War, true);
ShowWindow (HWND_checkbox_War, SW_SHOW);
}
if(strcmp(classe,"Hunter"))
{
EnableWindow(HWND_checkbox_Hunter, true);
ShowWindow (HWND_checkbox_Hunter, SW_SHOW);
}
if(strcmp(classe,"Priest"))
{
EnableWindow(HWND_checkbox_Priest, true);
ShowWindow (HWND_checkbox_Priest, SW_SHOW);
}
if(strcmp(classe,"Shaman"))
{
EnableWindow(HWND_checkbox_Shaman, true);
ShowWindow (HWND_checkbox_Shaman, SW_SHOW);
}
if(strcmp(classe,"Drood"))
{
EnableWindow(HWND_checkbox_Drood, true);
ShowWindow (HWND_checkbox_Drood, SW_SHOW);
}
if(strcmp(classe,"Paladin"))
{
EnableWindow(HWND_checkbox_Paladin, true);
ShowWindow (HWND_checkbox_Paladin, SW_SHOW);
}
if(strcmp(classe,"Rogue"))
{
EnableWindow(HWND_checkbox_Rogue, true);
ShowWindow (HWND_checkbox_Rogue, SW_SHOW);
}
if(strcmp(classe,"DK"))
{
EnableWindow(HWND_checkbox_DK, true);
ShowWindow (HWND_checkbox_DK, SW_SHOW);
}
if(strcmp(classe,"Mage"))
{
EnableWindow(HWND_checkbox_Mage, true);
ShowWindow (HWND_checkbox_Mage, SW_SHOW);
}
if(strcmp(classe,"Moine"))
{
EnableWindow(HWND_checkbox_Moine, true);
ShowWindow (HWND_checkbox_Moine, SW_SHOW);
}
if(strcmp(classe,"DH"))
{
EnableWindow(HWND_checkbox_DH, true);
ShowWindow (HWND_checkbox_DH, SW_SHOW);
}
}
else if(enable == 0)
{
SendMessage(HWND_checkbox_SPE1, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
SendMessage(HWND_checkbox_SPE2, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
SendMessage(HWND_checkbox_SPE3, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
bool_checkbox_SPE1 = false;
bool_checkbox_SPE2 = false;
bool_checkbox_SPE3 = false;
spec((char*)"all", 1);
if(strcmp(classe,"Warlock"))
{
EnableWindow(HWND_checkbox_Warlock, false);
ShowWindow (HWND_checkbox_Warlock, SW_HIDE);
}
if(strcmp(classe,"War"))
{
EnableWindow(HWND_checkbox_War, false);
ShowWindow (HWND_checkbox_War, SW_HIDE);
}
if(strcmp(classe,"Hunter"))
{
EnableWindow(HWND_checkbox_Hunter, false);
ShowWindow (HWND_checkbox_Hunter, SW_HIDE);
}
if(strcmp(classe,"Priest"))
{
EnableWindow(HWND_checkbox_Priest, false);
ShowWindow (HWND_checkbox_Priest, SW_HIDE);
}
if(strcmp(classe,"Shaman"))
{
EnableWindow(HWND_checkbox_Shaman, false);
ShowWindow (HWND_checkbox_Shaman, SW_HIDE);
}
if(strcmp(classe,"Drood"))
{
EnableWindow(HWND_checkbox_Drood, false);
ShowWindow (HWND_checkbox_Drood, SW_HIDE);
}
if(strcmp(classe,"Paladin"))
{
EnableWindow(HWND_checkbox_Paladin, false);
ShowWindow (HWND_checkbox_Paladin, SW_HIDE);
}
if(strcmp(classe,"Rogue"))
{
EnableWindow(HWND_checkbox_Rogue, false);
ShowWindow (HWND_checkbox_Rogue, SW_HIDE);
}
if(strcmp(classe,"DK"))
{
EnableWindow(HWND_checkbox_DK, false);
ShowWindow (HWND_checkbox_DK, SW_HIDE);
}
if(strcmp(classe,"Mage"))
{
EnableWindow(HWND_checkbox_Mage, false);
ShowWindow (HWND_checkbox_Mage, SW_HIDE);
}
if(strcmp(classe,"Moine"))
{
EnableWindow(HWND_checkbox_Moine, false);
ShowWindow (HWND_checkbox_Moine, SW_HIDE);
}
if(strcmp(classe,"DH"))
{
EnableWindow(HWND_checkbox_DH, false);
ShowWindow (HWND_checkbox_DH, SW_HIDE);
}
}
}
HWND hwnd2;
INT32 border,marginTop,marginTop_first;
LRESULT CALLBACK WinProcUI(HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lParam)
{
switch(Msg)
{
case WM_CREATE:
{
}
break;
case WM_PAINT :
{
}
break;
case WM_DESTROY:
{
PostQuitMessage(0);
exit(0);
break;
}
case WM_COMMAND :
{
switch(LOWORD(wParam))
{
case BTcheckbox_Auto:
{
if ( SendMessage( HWND_checkbox_Auto , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Auto = true;
printf("bool_checkbox_Auto = true;\n");
}
else
{
bool_checkbox_Auto = false;
printf("bool_checkbox_Auto = false;\n");
}
break;
}
case BTcheckbox_OnOff:
{
if ( SendMessage( HWND_checkbox_OnOff , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_OnOff = true;
printf("bool_checkbox_OnOff = true;\n");
RECT pos;
GetWindowRect(hwnd, &pos);
MoveWindow(hwnd,pos.left,pos.top,240+border,marginTop+border+13/*+50*/,true);
Sleep(250);
if(pos.right < 400 && pos.right > 0)
{
checkbox((char*)"all", 1);
spec((char*)"all", 1);
spec((char*)"all", 0);
}
TimeLimit = GetTickCount()+2000;
}
else
{
bool_checkbox_OnOff = false;
printf("bool_checkbox_OnOff = false;\n");
}
break;
}
case BTcheckbox_Warlock:
{
if ( SendMessage( HWND_checkbox_Warlock , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Warlock = true;
printf("bool_checkbox_Warlock = true;\n");
checkbox((char*)"Warlock", 0);
SetWindowText(HWND_checkbox_SPE1,"Demono");
SetWindowText(HWND_checkbox_SPE2,"");
SetWindowText(HWND_checkbox_SPE3,"");
}
else
{
bool_checkbox_Warlock = false;
printf("bool_checkbox_Warlock = false;\n");
checkbox((char*)"Warlock", 1);
}
break;
}
case BTcheckbox_War:
{
if ( SendMessage( HWND_checkbox_War , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_War = true;
printf("bool_checkbox_War = true;\n");
checkbox((char*)"War", 0);
}
else
{
bool_checkbox_War = false;
printf("bool_checkbox_War = false;\n");
checkbox((char*)"War", 1);
}
break;
}
case BTcheckbox_Hunter:
{
if ( SendMessage( HWND_checkbox_Hunter , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Hunter = true;
printf("bool_checkbox_Hunter = true;\n");
checkbox((char*)"Hunter", 0);
}
else
{
bool_checkbox_Hunter = false;
printf("bool_checkbox_Hunter = false;\n");
checkbox((char*)"Hunter", 1);
}
break;
}
case BTcheckbox_Priest:
{
if ( SendMessage( HWND_checkbox_Priest , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Priest = true;
printf("bool_checkbox_Priest = true;\n");
checkbox((char*)"Priest", 0);
}
else
{
bool_checkbox_Priest = false;
printf("bool_checkbox_Priest = false;\n");
checkbox((char*)"Priest", 1);
}
break;
}
case BTcheckbox_Shaman:
{
if ( SendMessage( HWND_checkbox_Shaman , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Shaman = true;
printf("bool_checkbox_Shaman = true;\n");
checkbox((char*)"Shaman", 0);
}
else
{
bool_checkbox_Shaman = false;
printf("bool_checkbox_Shaman = false;\n");
checkbox((char*)"Shaman", 1);
}
break;
}
case BTcheckbox_Drood:
{
if ( SendMessage( HWND_checkbox_Drood , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Drood = true;
printf("bool_checkbox_Drood = true;\n");
checkbox((char*)"Drood", 0);
SetWindowText(HWND_checkbox_SPE1,"Gardien");
SetWindowText(HWND_checkbox_SPE2,"");
SetWindowText(HWND_checkbox_SPE3,"");
}
else
{
bool_checkbox_Drood = false;
printf("bool_checkbox_Drood = false;\n");
checkbox((char*)"Drood", 1);
}
break;
}
case BTcheckbox_Paladin:
{
if ( SendMessage( HWND_checkbox_Paladin , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Paladin = true;
printf("bool_checkbox_Paladin = true;\n");
checkbox((char*)"Paladin", 0);
SetWindowText(HWND_checkbox_SPE1,"Protectio");
SetWindowText(HWND_checkbox_SPE2,"");
SetWindowText(HWND_checkbox_SPE3,"");
}
else
{
bool_checkbox_Paladin = false;
printf("bool_checkbox_Paladin = false;\n");
checkbox((char*)"Paladin", 1);
}
break;
}
case BTcheckbox_Rogue:
{
if ( SendMessage( HWND_checkbox_Rogue , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Rogue = true;
printf("bool_checkbox_Rogue = true;\n");
checkbox((char*)"Rogue", 0);
SetWindowText(HWND_checkbox_SPE1,"Outlow");
}
else
{
bool_checkbox_Rogue = false;
printf("bool_checkbox_Rogue = false;\n");
checkbox((char*)"Rogue", 1);
}
break;
}
case BTcheckbox_DK:
{
if ( SendMessage( HWND_checkbox_DK , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_DK = true;
printf("bool_checkbox_DK = true;\n");
checkbox((char*)"DK", 0);
}
else
{
bool_checkbox_DK = false;
printf("bool_checkbox_DK = false;\n");
checkbox((char*)"DK", 1);
}
break;
}
case BTcheckbox_Mage:
{
if ( SendMessage( HWND_checkbox_Mage , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Mage = true;
printf("bool_checkbox_Mage = true;\n");
checkbox((char*)"Mage", 0);
}
else
{
bool_checkbox_Mage = false;
printf("bool_checkbox_Mage = false;\n");
checkbox((char*)"Mage", 1);
}
break;
}
case BTcheckbox_Moine:
{
if ( SendMessage( HWND_checkbox_Moine , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_Moine = true;
printf("bool_checkbox_Moine = true;\n");
checkbox((char*)"Moine", 0);
}
else
{
bool_checkbox_Moine = false;
printf("bool_checkbox_Moine = false;\n");
checkbox((char*)"Moine", 1);
}
break;
}
case BTcheckbox_DH:
{
if ( SendMessage( HWND_checkbox_DH , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_DH = true;
printf("bool_checkbox_DH = true;\n");
checkbox((char*)"DH", 0);
}
else
{
bool_checkbox_DH = false;
printf("bool_checkbox_DH = false;\n");
checkbox((char*)"DH", 1);
}
break;
}
case BTcheckbox_SPE1:
{
if ( SendMessage( HWND_checkbox_SPE1 , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_SPE1 = true;
printf("bool_checkbox_SPE1 = true;\n");
spec((char*)"SPE1", 0);
TimeLimit = GetTickCount()+2000;
}
else
{
bool_checkbox_SPE1 = false;
printf("bool_checkbox_SPE1 = false;\n");
spec((char*)"SPE1", 1);
}
break;
}
case BTcheckbox_SPE2:
{
if ( SendMessage( HWND_checkbox_SPE2 , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_SPE2 = true;
printf("bool_checkbox_SPE2 = true;\n");
spec((char*)"SPE2", 0);
TimeLimit = GetTickCount()+2000;
}
else
{
bool_checkbox_SPE2 = false;
printf("bool_checkbox_SPE2 = false;\n");
spec((char*)"SPE2", 1);
}
break;
}
case BTcheckbox_SPE3:
{
if ( SendMessage( HWND_checkbox_SPE3 , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_SPE3 = true;
printf("bool_checkbox_SPE3 = true;\n");
spec((char*)"SPE3", 0);
TimeLimit = GetTickCount()+2000;
}
else
{
bool_checkbox_SPE3 = false;
printf("bool_checkbox_SPE3 = false;\n");
spec((char*)"SPE3", 1);
}
break;
}
default: break;
}
}
}
return DefWindowProc(hwnd, Msg, wParam, lParam);
}
Code:
BOOL InitializeWindowUI(HWND hwnd, HINSTANCE hInst, INT32 CmdShow)
{
hwnd2 = hwnd;
WNDCLASS WNDCLASS_wcUI;
WNDCLASS_wcUI.lpfnWndProc = WinProcUI;
WNDCLASS_wcUI.lpszClassName = TEXT(" ");
if (!RegisterClass(&WNDCLASS_wcUI)){MessageBox(hwnd, "Register class failed!", "Yay UI!", MB_OK);}
hwnd = CreateWindow(TEXT(" "),0,WS_VISIBLE,0,0,100+border,240+border,0,0,0,0);
RECT pos;
//NIVEAU 1
HWND_checkbox_Auto = CreateWindowEx(0, "Button","Auto",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX,70,0,250,13,hwnd,(HMENU)BTcheckbox_Auto,hInst,NULL);
HWND_checkbox_OnOff = CreateWindowEx(0, "Button","On/Off",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX,0,0,70,13,hwnd,(HMENU)BTcheckbox_OnOff,hInst,NULL);
GetWindowRect(HWND_checkbox_OnOff, &pos);
border = pos.left;
marginTop = pos.top;
marginTop_first = pos.top;
//printf("border %d\n",border);
//printf("marginTop %d\n\n",marginTop);
//NIVEAU 2
HWND_checkbox_Warlock = CreateWindowEx(0, "Button","Warlock",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,0 ,pos.bottom-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_Warlock,hInst,NULL);
GetWindowRect(HWND_checkbox_Warlock, &pos);
EnableWindow(HWND_checkbox_Warlock, false);
SendMessage(HWND_checkbox_Warlock, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_Warlock, SW_HIDE);
HWND_checkbox_War = CreateWindowEx(0, "Button","War",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_War,hInst,NULL);
GetWindowRect(HWND_checkbox_War, &pos);
EnableWindow(HWND_checkbox_War, false);
SendMessage(HWND_checkbox_War, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_War, SW_HIDE);
HWND_checkbox_Hunter = CreateWindowEx(0, "Button","Hunter",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_Hunter,hInst,NULL);
GetWindowRect(HWND_checkbox_Hunter, &pos);
EnableWindow(HWND_checkbox_Hunter, false);
SendMessage(HWND_checkbox_Hunter, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_Hunter, SW_HIDE);
//NIVEAU 3
HWND_checkbox_Priest = CreateWindowEx(0, "Button","Priest",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,0 ,pos.bottom-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_Priest,hInst,NULL);
GetWindowRect(HWND_checkbox_Priest, &pos);
EnableWindow(HWND_checkbox_Priest, false);
SendMessage(HWND_checkbox_Priest, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_Priest, SW_HIDE);
HWND_checkbox_Shaman = CreateWindowEx(0, "Button","Shaman",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_Shaman,hInst,NULL);
GetWindowRect(HWND_checkbox_Shaman, &pos);
EnableWindow(HWND_checkbox_Shaman, false);
SendMessage(HWND_checkbox_Shaman, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_Shaman, SW_HIDE);
HWND_checkbox_Drood = CreateWindowEx(0, "Button","Drood",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_Drood,hInst,NULL);
GetWindowRect(HWND_checkbox_Drood, &pos);
EnableWindow(HWND_checkbox_Drood, false);
SendMessage(HWND_checkbox_Drood, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_Drood, SW_HIDE);
//NIVEAU 4
HWND_checkbox_Paladin = CreateWindowEx(0, "Button","Paladin",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,0 ,pos.bottom-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_Paladin,hInst,NULL);
GetWindowRect(HWND_checkbox_Paladin, &pos);
EnableWindow(HWND_checkbox_Paladin, false);
SendMessage(HWND_checkbox_Paladin, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_Paladin, SW_HIDE);
HWND_checkbox_Rogue = CreateWindowEx(0, "Button","Rogue",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_Rogue,hInst,NULL);
GetWindowRect(HWND_checkbox_Rogue, &pos);
EnableWindow(HWND_checkbox_Rogue, false);
SendMessage(HWND_checkbox_Rogue, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_Rogue, SW_HIDE);
HWND_checkbox_DK = CreateWindowEx(0, "Button","DK",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_DK,hInst,NULL);
GetWindowRect(HWND_checkbox_DK, &pos);
EnableWindow(HWND_checkbox_DK, false);
SendMessage(HWND_checkbox_DK, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_DK, SW_HIDE);
//NIVEAU 5
HWND_checkbox_Mage = CreateWindowEx(0, "Button","Mage",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,0 ,pos.bottom-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_Mage,hInst,NULL);
GetWindowRect(HWND_checkbox_Mage, &pos);
EnableWindow(HWND_checkbox_Mage, false);
SendMessage(HWND_checkbox_Mage, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_Mage, SW_HIDE);
HWND_checkbox_Moine = CreateWindowEx(0, "Button","Moine",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_Moine,hInst,NULL);
GetWindowRect(HWND_checkbox_Moine, &pos);
EnableWindow(HWND_checkbox_Moine, false);
SendMessage(HWND_checkbox_Moine, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_Moine, SW_HIDE);
HWND_checkbox_DH = CreateWindowEx(0, "Button","DH",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_DH,hInst,NULL);
GetWindowRect(HWND_checkbox_DH, &pos);
EnableWindow(HWND_checkbox_DH, false);
SendMessage(HWND_checkbox_DH, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_DH, SW_HIDE);
//NIVEAU 6
HWND_checkbox_SPE1 = CreateWindowEx(0, "Button","SPE 1",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,0 ,pos.bottom-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_SPE1,hInst,NULL);
GetWindowRect(HWND_checkbox_SPE1, &pos);
EnableWindow(HWND_checkbox_SPE1, false);
SendMessage(HWND_checkbox_SPE1, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_SPE1, SW_HIDE);
HWND_checkbox_SPE2 = CreateWindowEx(0, "Button","SPE 2",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_SPE2,hInst,NULL);
GetWindowRect(HWND_checkbox_SPE2, &pos);
EnableWindow(HWND_checkbox_SPE2, false);
SendMessage(HWND_checkbox_SPE2, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_SPE2, SW_HIDE);
HWND_checkbox_SPE3 = CreateWindowEx(0, "Button","SPE 3",WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX ,pos.right-border ,pos.top-marginTop ,80 ,13 ,hwnd,(HMENU)BTcheckbox_SPE3,hInst,NULL);
GetWindowRect(HWND_checkbox_SPE3, &pos);
EnableWindow(HWND_checkbox_SPE3, false);
SendMessage(HWND_checkbox_SPE3, BM_SETCHECK, BST_UNCHECKED, (LPARAM)nullptr);
ShowWindow (HWND_checkbox_SPE3, SW_HIDE);
marginTop = pos.top;
//Move & Update
MoveWindow(hwnd,pos.left,pos.top,100+border,marginTop_first+border+13,true);
Sleep(250);
checkbox((char*)"all", 0);
spec((char*)"all", 0);
return true;
}
DWORD WINAPI UI(LPVOID arg)
{
MSG MsgUI;
InitializeWindowUI(NULL, 0, true);
while(GetMessage(&MsgUI, NULL, 0, 0) > 0)
{
TranslateMessage(&MsgUI);
DispatchMessage(&MsgUI);
}
return true;
}
// enable the privilege necessary to patch the process
void EnableDebugPriv()
{
HANDLE hToken;
LUID sedebugnameValue;
TOKEN_PRIVILEGES tkp;
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
puts("Failed to Enable Debug Options!");
if (!LookupPrivilegeValue(NULL, SE_DEBUG_NAME, &sedebugnameValue))
{
CloseHandle(hToken);
puts("Failed to Enable Debug Options!");
system("PAUSE");
}
tkp.PrivilegeCount = 1;
tkp.Privileges[0].Luid = sedebugnameValue;
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if (!AdjustTokenPrivileges(hToken, FALSE, &tkp, sizeof tkp, NULL, NULL))
CloseHandle( hToken );
}
uint64_t GetDLL(char* DllName, uint64_t tPid){
HANDLE snapMod;
MODULEENTRY32 me32;
if (tPid == 0) return 0;
snapMod = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, tPid);
me32.dwSize = sizeof(MODULEENTRY32);
if (Module32First(snapMod, &me32)){
do{
if (strcmp(DllName,me32.szModule) == 0){
CloseHandle(snapMod);
return (uint64_t) me32.modBaseAddr;
}
}while(Module32Next(snapMod,&me32));
}
CloseHandle(snapMod);
return 0;
}
INT32 PID = 0;
INT32 GetPidByName(char *szProcName){
PROCESSENTRY32 pe = {sizeof(PROCESSENTRY32)};
HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if(hSnap != INVALID_HANDLE_VALUE)
{
if(Process32First(hSnap, &pe))
{
do
{
if(strcmpi(pe.szExeFile, szProcName) == 0)
{
PID = pe.th32ProcessID;
return PID;
break;
}
}
while(Process32Next(hSnap, &pe));
}
CloseHandle(hSnap);
}
PID = 0;
return PID;
}
bool KeyMonoIsEnable = false;
bool KeyMultiIsEnable = false;
bool KeyBurstMonoIsEnable = false;
bool NeedFast = false;
bool haveTarget = false;
DWORD CHECK_PID(LPVOID arg)
{
while(PID)
{
GetPidByName((char*)"Wow-64.exe");
Sleep(1000);
if(bool_checkbox_OnOff)
{
Sleep(100);
if(GetTickCount() > TimeLimit){bool_checkbox_OnOff = false;}
}
else
{
Sleep(1000);
if ( SendMessage( HWND_checkbox_OnOff , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
if ( SendMessage( HWND_checkbox_SPE1 , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_OnOff = true;
}
else if ( SendMessage( HWND_checkbox_SPE2 , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_OnOff = true;
}
else if ( SendMessage( HWND_checkbox_SPE3 , BM_GETCHECK, (WPARAM) NULL, (LPARAM) NULL ) == BST_CHECKED )
{
bool_checkbox_OnOff = true;
}
}
Sleep(1000);
}
}
return 0;
}
bool KeySender = false;
void cast(int key)
{
if(KeySender == false)
{
//printf("%x %d\n",key,Player.Shard);
keybd_event(key,key, 0,0);
Sleep(50);
keybd_event(key,key, KEYEVENTF_KEYUP,0);
Sleep(50);
}
KeySender = true;
}
void castHorsGCD(int key)
{
keybd_event(key,key, 0,0);
Sleep(10);
keybd_event(key,key, KEYEVENTF_KEYUP,0);
Sleep(10);
}
Code:
DWORD WINAPI SCAN_SPELL(LPVOID arg);
DWORD WINAPI SCAN_CHARGE(LPVOID arg);
DWORD WINAPI SCAN_PLAYER(LPVOID arg);
DWORD WINAPI SCAN_WoWTime(LPVOID arg);
DWORD WINAPI SCAN_ENTITY(LPVOID arg);
DWORD WINAPI Dps(LPVOID arg);
//OFFSET & MEMORY INFORMATIONS
uint64_t WoW64;
INT32 GameBuild;
string GameBuild_value;
HANDLE h_Read_Process;
INT32 LocalPlayer;
INT32 offsetGUID;
INT32 offsetX;
INT32 offsetY;
INT32 offsetZ;
INT32 offsetHp;
INT32 offsetMana;
INT32 offsetSHARD;
INT32 offsetManaMax;
INT32 offsetCastId;
INT32 offsetCastInst;
INT32 offsetChannelId;
INT32 offsetHpMax;
INT32 IsLooting;
INT32 IsTexting;
INT32 TargetGuid;
INT32 EntityList;
INT32 FirstEntity;
INT32 NextEntity;
INT32 EntityType;
INT32 Descriptors;
INT32 GlobalID;
INT32 AuraCount1;
INT32 AuraCount2;
INT32 AuraOwnerGUID;
INT32 AuraSpellId;
INT32 AuraTimeLeft;
INT32 AuraSize;
INT32 SpellColldowns;
INT32 SpellCharge;
INT32 WowTime;
#define DEBUG_UI 0
uint64_t FindPattern(uint64_t start,uint64_t range,INT32 offset,INT32 p[],INT32 sizeP);
INT32 main()
{
//check jeu lancé ?
GetPidByName((char*)"Wow-64.exe");
if(DEBUG_UI){PID = 1;}
if(PID == 0){printf("...NoGame...\n");Sleep(3000);exit(0);}
//check conf
string line,GameBuild_value,temp;
ifstream myfile ("conf");
if (myfile.is_open() && !DEBUG_UI)
{
int l = 0;
/* EXEMPLE CONF FILE
================================
General
================================
Structure = x64
GameBuild_value = 24415
GameBuild = 1699667
================================
Player
================================
LocalPlayer = 185F668
offsetGUID = 58
offsetX = 0
offsetY = 0
offsetZ = 0
offsetHp = 2A10
offsetMana = 2A18
offsetSHARD = 2A1C
offsetHpMax = 8140
offsetManaMax = 8148
offsetCastId = 1C6C
offsetCastInst = 1C48
offsetChannelId = 1CA0
IsLooting = 197AB68
IsTexting = 165EE74
TargetGuid = 1960CA0
================================
Entity List
================================
EntityList = 16F4600
FirstEntity = 18
NextEntity = 70
EntityType = 20
Descriptors = 08
GlobalID = 08
AuraCount1 = 26C0
AuraCount2 = 1DC0
AuraOwnerGUID = 50
AuraSpellId = 60
AuraTimeLeft = 70
AuraSize = 90
================================
Custom
================================
SpellColldowns = 16E1088
SpellCharge = 16E10B8
WowTime = 163d98c
*/
//General CONFIG
getline (myfile,line);l++;cout << line << endl;
if(line != "================================"){printf("Line%d error\n",l);myfile.close();Sleep(3000);exit(0);}
getline (myfile,line);l++;cout << line << endl;
if(line != "General"){printf("Line%d error\n",l);myfile.close();Sleep(3000);exit(0);}
getline (myfile,line);l++;cout << line << endl;
if(line != "================================"){printf("Line%d error\n",l);myfile.close();Sleep(3000);exit(0);}
//line 4 --- Structure#x64
getline (myfile,line);l++;cout << line << endl;
//verif - Structure
temp = line.substr(0, line.find(" = "));
if(temp != "Structure"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
//vérif - x64
line = line.substr(line.find(" = ")+9, line.length());
if(line != "x64"){printf("Line%d error(#param2)(",l);cout<<line<<")";myfile.close();Sleep(3000);exit(0);}
//line 5 --- GameBuild_value#23877
getline (myfile,GameBuild_value);l++;cout << GameBuild_value << endl;
//verif - GameBuild_value
temp = GameBuild_value.substr(0, GameBuild_value.find(" = "));
if(temp != "GameBuild_value"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
//verif - 23877
GameBuild_value = GameBuild_value.substr(GameBuild_value.find(" = ")+3, GameBuild_value.length());
if(GameBuild_value == ""){printf("Line%d error(#param2)\n",l);myfile.close();Sleep(3000);exit(0);}
//line 6 GameBuild#165C7D7
getline (myfile,line);l++;cout << line << endl;
//verif - GameBuild
temp = line.substr(0, line.find(" = "));
if(temp != "GameBuild"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
//verif - 165C7D7
line = line.substr(line.find(" = ")+9, line.length());
if(line == ""){printf("Line%d error(#param2)\n",l);myfile.close();Sleep(3000);exit(0);}
istringstream(line) >> hex >> GameBuild;
if(GameBuild == 0){printf("Line%d error(#param2)\n",l);myfile.close();Sleep(3000);exit(0);}
//Player CONFIG
getline (myfile,line);l++;cout << line << endl;
if(line != "================================"){printf("Line%d error\n",l);myfile.close();Sleep(3000);exit(0);}
getline (myfile,line);l++;cout << line << endl;
if(line != "Player"){printf("Line%d error\n",l);myfile.close();Sleep(3000);exit(0);}
getline (myfile,line);l++;cout << line << endl;
if(line != "================================"){printf("Line%d error\n",l);myfile.close();Sleep(3000);exit(0);}
//verif - LocalPlayer
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "LocalPlayer"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+7, line.length());
istringstream(line) >> hex >> LocalPlayer;
//verif - offsetGUID
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetGUID"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+8, line.length());
istringstream(line) >> hex >> offsetGUID;
//verif - offsetX
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetX"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+11, line.length());
istringstream(line) >> hex >> offsetX;
//verif - offsetY
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetY"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+11, line.length());
istringstream(line) >> hex >> offsetY;
//verif - offsetZ
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetZ"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+11, line.length());
istringstream(line) >> hex >> offsetZ;
//verif - offsetHp
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetHp"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+10, line.length());
istringstream(line) >> hex >> offsetHp;
//verif - offsetMana
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetMana"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+8, line.length());
istringstream(line) >> hex >> offsetMana;
//verif - offsetSHARD
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetSHARD"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+7, line.length());
istringstream(line) >> hex >> offsetSHARD;
//verif - offsetHpMax
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetHpMax"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+7, line.length());
istringstream(line) >> hex >> offsetHpMax;
//verif - offsetManaMax
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetManaMax"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+5, line.length());
istringstream(line) >> hex >> offsetManaMax;
//ligne vide
getline (myfile,line);l++;cout << line << endl;
//verif - offsetCastId
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetCastId"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+6, line.length());
istringstream(line) >> hex >> offsetCastId;
//verif - offsetCastInst
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetCastInst"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+4, line.length());
istringstream(line) >> hex >> offsetCastInst;
//verif - offsetChannelId
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "offsetChannelId"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+3, line.length());
istringstream(line) >> hex >> offsetChannelId;
offsetChannelId = 0x1CA0;
//ligne vide
getline (myfile,line);l++;cout << line << endl;
//verif - IsLooting
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "IsLooting"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+9, line.length());
istringstream(line) >> hex >> IsLooting;
//verif - IsTexting
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "IsTexting"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+9, line.length());
istringstream(line) >> hex >> IsTexting;
//verif - TargetGuid
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "TargetGuid"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+8, line.length());
istringstream(line) >> hex >> TargetGuid;
//Entity List CONFIG
getline (myfile,line);l++;cout << line << endl;
if(line != "================================"){printf("Line%d error\n",l);myfile.close();Sleep(3000);exit(0);}
getline (myfile,line);l++;cout << line << endl;
if(line != "Entity List"){printf("Line%d error\n",l);myfile.close();Sleep(3000);exit(0);}
getline (myfile,line);l++;cout << line << endl;
if(line != "================================"){printf("Line%d error\n",l);myfile.close();Sleep(3000);exit(0);}
//verif - EntityList
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "EntityList"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+8, line.length());
istringstream(line) >> hex >> EntityList;
//verif - FirstEntity
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "FirstEntity"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+7, line.length());
istringstream(line) >> hex >> FirstEntity;
//verif - NextEntity
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "NextEntity"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+8, line.length());
istringstream(line) >> hex >> NextEntity;
//Vide
getline (myfile,line);l++;cout << line << endl;
//verif - EntityType
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "EntityType"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+8, line.length());
istringstream(line) >> hex >> EntityType;
//verif - Descriptors
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "Descriptors"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+7, line.length());
istringstream(line) >> hex >> Descriptors;
//verif - GlobalID
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "GlobalID"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+10, line.length());
istringstream(line) >> hex >> GlobalID;
//verif - LINE VIDE
getline (myfile,line);l++;cout << line << endl;
//verif - AuraCount1
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "AuraCount1"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+8, line.length());
istringstream(line) >> hex >> AuraCount1;
//verif - GlobalID
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "AuraCount2"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+8, line.length());
istringstream(line) >> hex >> AuraCount2;
//verif - AuraOwnerGUID
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "AuraOwnerGUID"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+5, line.length());
istringstream(line) >> hex >> AuraOwnerGUID;
//verif - AuraSpellId
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "AuraSpellId"){printf("Line%d error3(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+7, line.length());
istringstream(line) >> hex >> AuraSpellId;
//verif - AuraTimeLeft
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "AuraTimeLeft"){printf("Line%d error2(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+6, line.length());
istringstream(line) >> hex >> AuraTimeLeft;
//verif - AuraSize
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "AuraSize"){printf("Line%d error1(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+10, line.length());
istringstream(line) >> hex >> AuraSize;
//Custom CONFIG
getline (myfile,line);l++;cout << line << endl;
getline (myfile,line);l++;cout << line << endl;
if(line != "================================"){printf("Line%d error7\n",l);myfile.close();Sleep(3000);exit(0);}
getline (myfile,line);l++;cout << line << endl;
if(line != "Custom"){printf("Line%d error8\n",l);myfile.close();Sleep(3000);exit(0);}
getline (myfile,line);l++;cout << line << endl;
if(line != "================================"){printf("Line%d error9\n",l);myfile.close();Sleep(3000);exit(0);}
//verif - SpellColldowns
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "SpellColldowns"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+4, line.length());
istringstream(line) >> hex >> SpellColldowns;
//verif - SpellCharge
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "SpellCharge"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+7, line.length());
istringstream(line) >> hex >> SpellCharge;
//verif - WowTime
getline (myfile,line);l++;cout << line << endl;
temp = line.substr(0, line.find(" = "));
if(temp != "WowTime"){printf("Line%d error(#param1)\n",l);myfile.close();Sleep(3000);exit(0);}
line = line.substr(line.find(" = ")+11, line.length());
istringstream(line) >> hex >> WowTime;
//printf("0x%x\n",WowTime);
myfile.close();
printf("\n\n");
//verif memoire GameBuild
//EnableDebugPriv();
WoW64 = GetDLL((char*)"Wow-64.exe",PID);
printf("Wow64 = 0x%I64x\n",WoW64);
printf("Wow-64.exe PID %d\n",PID);
//h_Read_Process = OpenProcess(PROCESS_ALL_ACCESS, 0, PID);
h_Read_Process = OpenProcess(PROCESS_VM_READ, 0, PID);
//COMPARE VERSION JEUX
char tmp[GameBuild_value.size()];
ReadProcessMemory(h_Read_Process,(LPCVOID)(WoW64+GameBuild), &tmp, sizeof(tmp), NULL);
bool cmp = true;
for(uint8_t i = 0; i<GameBuild_value.size();i++)
{
if(GameBuild_value[i] != tmp[i]){cmp = false;break;}
}
if(cmp == false && !DEBUG_UI)
{
for(uint8_t i = 0; i<GameBuild_value.size();i++){printf("%C",GameBuild_value[i]);}printf("\n");
for(uint8_t i = 0; i<GameBuild_value.size();i++){printf("%C",tmp[i]);}printf("\n");
printf("error versioning\n");system("pause");exit(1);
}
else
{
for(uint8_t i = 0; i<GameBuild_value.size();i++){printf("%C",GameBuild_value[i]);}printf("\n");
for(uint8_t i = 0; i<GameBuild_value.size();i++){printf("%C",tmp[i]);}printf("\n");
}
}
else
{
if(!DEBUG_UI)
{
printf("missing conf\n");
Sleep(5000);
exit(0);
}
}
uint64_t Pattern_LocalPlayer = FindPattern(WoW64,0x3000000,0x00,pattern_LocalPlayer,sizeof(pattern_LocalPlayer)/sizeof(*pattern_LocalPlayer));
HANDLE HANDLE_UI = NULL;
HANDLE_UI = CreateThread(NULL, 0,UI, NULL,0,NULL);
if(HANDLE_UI == NULL){exit(0);}
HANDLE HANDLE_SCAN_SPELL = NULL;
HANDLE HANDLE_SCAN_PLAYER = NULL;
HANDLE HANDLE_WoWTime = NULL;
HANDLE HANDLE_SCAN_CHARGE = NULL;
HANDLE HANDLE_SCAN_ENTITY = NULL;
HANDLE HANDLE_Dps = NULL;
DWORD CHECK_KeyPress(LPVOID arg);
if(!DEBUG_UI){CreateThread(NULL, 0,CHECK_PID, NULL,0,NULL);}
if(!DEBUG_UI){CreateThread(NULL, 0,CHECK_KeyPress, NULL,0,NULL);}
while(PID)
{
while(bool_checkbox_OnOff == false && PID)
{
if(HANDLE_SCAN_PLAYER != NULL)
{
HANDLE_SCAN_PLAYER = NULL;
}
if(HANDLE_WoWTime != NULL)
{
HANDLE_WoWTime = NULL;
}
if(HANDLE_SCAN_SPELL != NULL)
{
HANDLE_SCAN_SPELL = NULL;
}
if(HANDLE_SCAN_CHARGE != NULL)
{
HANDLE_SCAN_CHARGE = NULL;
}
if(HANDLE_SCAN_ENTITY != NULL)
{
HANDLE_SCAN_ENTITY = NULL;
}
if(HANDLE_Dps != NULL)
{
HANDLE_Dps = NULL;
}
Sleep(50);
}
while(bool_checkbox_OnOff == true && PID)
{
if(HANDLE_SCAN_PLAYER == NULL && !DEBUG_UI)
{
HANDLE_SCAN_PLAYER = CreateThread(NULL, 0,SCAN_PLAYER, NULL,0,NULL);
}
if(HANDLE_WoWTime == NULL && !DEBUG_UI)
{
HANDLE_WoWTime = CreateThread(NULL, 0,SCAN_WoWTime, NULL,0,NULL);
}
if(HANDLE_SCAN_SPELL == NULL && !DEBUG_UI)
{
HANDLE_SCAN_SPELL = CreateThread(NULL, 0,SCAN_SPELL, NULL,0,NULL);
}
if(HANDLE_SCAN_CHARGE == NULL && !DEBUG_UI)
{
HANDLE_SCAN_CHARGE = CreateThread(NULL, 0,SCAN_CHARGE, NULL,0,NULL);
}
if(HANDLE_SCAN_ENTITY == NULL && !DEBUG_UI)
{
HANDLE_SCAN_ENTITY = CreateThread(NULL, 0,SCAN_ENTITY, NULL,0,NULL);
}
if(HANDLE_Dps == NULL && !DEBUG_UI)
{
HANDLE_Dps = CreateThread(NULL, 0,Dps, NULL,0,NULL);
}
Sleep(50);
}
}
Sleep(500);
return 0;
}
Code:
BYTE MY_TargetGuid[16];
BYTE MY_Guid[16];
INT32 MY_Hp;
INT32 MY_Shard;
INT32 MY_Mana;
INT32 MY_ManaMax;
INT32 CastId;
INT32 CastInst;
INT32 ChannelId;
INT32 MY_HpMax;
INT32 MY_ManaPourcent;
INT32 MY_HpPourcent;
INT32 Time;
struct Spell {
INT32 SpellID;
INT32 key;
INT32 TimeLeft;
INT32 LastView;
};
//WARKLOCK
Spell ShadowBolt = {686,VK_F1,0,-1};
Spell DemonBolt = {157695,VK_F1,0,-1};
Spell Traqueffrois = {104316,VK_F11,0,-1};
Spell PetGangrorage = {119914,VK_F3,0,-1};
Spell Thalkiel = {211714,VK_F4,0,-1};
Spell SummonGangregarde = {111898,VK_F8,0,-1};
Spell GardeFuneste = {18540,VK_F12,0,-1};
Spell Infernal = {1122,VK_F12,0,-1};
Spell HandOfGuldan = {105174,VK_F6,0,-1};
Spell BuffPet = {193396,VK_F7,0,-1};
Spell Connexion = {1454,VK_F10,0,-1};
Spell Aoe = {193440,VK_F2,0,-1};
Spell RacialOrc = {33702,VK_F9,0,-1};
//ROGUE
Spell CoupDeSabre = {193315,VK_F1,0,-1};
Spell CoupDePistolet = {185763,VK_F2,0,-1};
Spell LaMortVenuDenHaut = {152150,VK_F3,0,-1};
Spell Percee = {2098,VK_F4,0,-1};
Spell JetDosselets = {193316,VK_F5,0,-1};
Spell DelugeDeLames = {13877,VK_F7,0,-1};
Spell PousseeDadrenaline = {13750,VK_F8,0,-1};
Spell MaledictionDesLamesDeffroi = {202665,VK_F9,0,-1};
Spell Debiter = {5171,VK_F5,0,-1};
Spell DesignePourMourir = {137619,VK_F3,0,-1};
Spell BarrageDeCanons = {185767,VK_F6,0,-1};
Spell RogueSelfHeal30Pourcent = {185311,VK_F11,0,-1};
Spell EntreLesDeuxYeux = {199804,VK_F6,0,-1};
Spell Suriner = {1776,VK_F10,0,-1};
Spell Trinket1 = {225141,VK_G,0,-1};
Spell Trinket2 = {230011,VK_F12,0,-1};
Spell Vanish = {1856,VK_G,0,-1};
Spell SerieMeutriere = {51690,VK_F7,0,-1};
//DROOD
Spell Balayage = {213771,VK_F1,0,-1};
Spell Rosser = {77758,VK_F2,0,-1};
Spell Mutilation = {33917,VK_F3,0,-1};
Spell Mutiler = {6807,VK_F4,0,-1};
Spell MonoStun = {5211,VK_F5,0,-1};
Spell RuptMono = {106839,VK_F6,0,-1};
Spell RegenerationFrenetique = {22842,VK_F7,0,-1};
Spell InstinctsDeSurvie = {61336,VK_F8,0,-1};
Spell Ecorse = {22812,VK_F9,0,-1};
Spell Ferpoil = {192081,VK_F10,0,-1};
Spell RageDuDormeur = {200851,VK_F11,0,-1};
Spell EclatLunaire = {8921,VK_F12,0,-1};
struct Buff{
int SpellID;
bool IsEnable;
int TimeLeft;
int LastView;};
//WARKLOCK
Buff AppelDemoniaque = {205146,false,0,-1};
//ROGUE
Buff FreeCoupDePistolet = {195627,false,0,-1};
Buff TronBlon = {202848,false,0,-1};//FREE x2 + bonus dégats BUFFID > 202848 (timeleft 0)
Buff BonusHatePonction = {193358,false,0,-1};
Buff BonusEnergieRegen = {199600,false,0,-1};
Buff BonusCombotPlusUn = {193356,false,0,-1};
Buff BonusCoupDeSabre = {199603,false,0,-1};
Buff BonusCollDown = {193359,false,0,-1};
Buff BonusKrit = {193357,false,0,-1};
Buff BonusHate = {193538,false,0,-1};//2%
Buff BonusDebiter = {5171,false,0,-1};//2%
Buff Bonus100PourcentKrit = {235027,false,0,-1};//2%
Buff BonusAdrenaline = {13750,false,0,-1};//2%
Buff BonusMaledictionDesLamesDeffroi = {202665,false,0,-1};//2%
Buff FuFu = {158188,false,0,-1};//2%
Buff BonusDegatsCoupDePistolet = {209423,false,0,-1};//2%
Buff LegBrassard = {209420,false,0,-1};
//DROOD
Buff Free_EclatLunaire = {213708,false,0,-1};
Buff Free_Mutilation = {93622,false,0,-1};
Buff Buff_Ecorse = {22812,false,0,-1};
Buff Buff_RageDuDormeur = {200851,false,0,-1};
Buff Buff_InstinctsDeSurvie = {50322,false,0,-1};
Buff Buff_Ferpoil = {192081,false,0,-1};
Buff Buff_Bonus_Ferpoil_Ou_RegenerationFrenetique = {213680,false,0,-1};
Buff BuffRegenerationFrenetique = {22842,false,0,-1};
//Buff CoupDeSabre = {193315,VK_F1,0,-1};
struct Charge{int ChargeID;int MaxCharge;int key;int CurrentCharge;bool IsEnable;int LastView;};
//PALADIN
Charge MainDuProtecteur{1667,1,VK_T,0,false,-1};
Charge LumiereDuProtecteur{1668,1,VK_T,0,false,-1};
Charge Charge_InstinctsDeSurvie{1469,2,VK_F8,0,false,-1};
Charge Charge_RegenerationFrenetique{1568,2,VK_F7,0,false,-1};