This tut can help you to make aimbot for any FPS game
Here is my Struct for M-Aimbot(memory aimbot)
Code:
typedef struct _PLAYER_DATA {
long baseadd;
long basehp;
long basename;
long basexy;
float coordEW;
float coordNS;
float coordUD;
float coordDS;
long coordEWa;
int zoombie;
int menumber;
int hp;
long coordNSa;
long coordUDa;
float lookX;
float lookY;
long lookXa;
long lookYa;
long name;
DWORD namea;
} PLAYER_DATA;
Code:
cP = GetMyPlayerData();
PLAYER_DATA Player;
ZeroMemory(&Player, sizeof(PLAYER_DATA));
ReadProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(hShellBASE+POSXYBASE+(PlayerNum * HP)), &Player.baseadd, 4,NULL);
Player.coordEWa = Player.baseadd + EWPLAYER;
Player.coordNSa = Player.baseadd + NSPLAYER;
Player.coordUDa = Player.baseadd + HIGHPLAYER;
Now we have 4 secs
Code:
if(oP.coordEW > cP.coordEW && oP.coordNS > cP.coordNS)
{
EWdif = oP.coordEW - cP.coordEW;
NSdif = oP.coordNS - cP.coordNS;
angleA = atanf(NSdif/EWdif) * 57.29578f;
newValue = (90-angleA)*(3.14159265f/180);
if(GetAsyncKeyState(keybota)){
if(aimbot == true)
{
if((value == 3 ) || (value == 4 ))
{
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(BASE+LOOKX), &newValue, 4,NULL);
}
if((value == 1 ) || (value == 2 ))
{
if(aim == true){
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(BASE+LOOKX), &newValue, 4,NULL);}
}
}
}
}
/*Sec 2*/
if(oP.coordEW < cP.coordEW && oP.coordNS > cP.coordNS)
{
EWdif = cP.coordEW - oP.coordEW;
NSdif = oP.coordNS - cP.coordNS;
angleA = atanf(NSdif/EWdif) * 57.29578f;
newValue = -(90-angleA)*(3.14159265f/180);
if(GetAsyncKeyState(keybota)){
if((value == 3 ) || (value == 4 ))
{
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(BASE+LOOKX), &newValue, 4,NULL);
}
if((value == 1 ) || (value == 2 ))
{
if(aim == true){
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(BASE+LOOKX), &newValue, 4,NULL);}
}
}
}
/*Sec 3*/
if(oP.coordEW < cP.coordEW && oP.coordNS < cP.coordNS)
{
EWdif = cP.coordEW - oP.coordEW;
NSdif = cP.coordNS - oP.coordNS;
angleA = atanf(NSdif/EWdif) * 57.29578f;
newValue = -(90+angleA)*(3.14159265f/180);
if(GetAsyncKeyState(keybota)){
if((value == 3 ) || (value == 4 ))
{
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(BASE+LOOKX), &newValue, 4,NULL);
}
if((value == 1 ) || (value == 2 ))
{
if(aim == true){
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(BASE+LOOKX), &newValue, 4,NULL);}
}
}
}
/*Sec 4*/
if(oP.coordEW > cP.coordEW && oP.coordNS < cP.coordNS)
{
EWdif = oP.coordEW - cP.coordEW;
NSdif = cP.coordNS - oP.coordNS;
angleA = atanf(NSdif/EWdif) * 57.29578f;
newValue = (90+angleA)*(3.14159265f/180);
if(GetAsyncKeyState(keybota)){
if((value == 3 ) || (value == 4 ))
{
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(BASE+LOOKX), &newValue, 4,NULL);
}
if((value == 1 ) || (value == 2 ))
{
if(aim == true){
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(BASE+LOOKX), &newValue, 4,NULL);}
}
}
}
Done X Look. Next step is Y LOOK:
Code:
if(oP.coordUD > cP.coordUD)
{
UDdif = oP.coordUD - cP.coordUD;
angleB = atanf(UDdif/flatDist) * 57.29578f;
newValueb = -angleB*(3.14159265f/180);
if(GetAsyncKeyState(keybota)){
if((value == 3 ) || (value == 4 ))
{
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(cP.lookYa), &newValueb ,4,NULL);
}
if((value == 1 ) || (value == 2 ))
{
if(aim == true){
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(cP.lookYa), &newValueb ,4,NULL);}
}
}
}
if (oP.coordUD < cP.coordUD)
{
UDdif = cP.coordUD - oP.coordUD;
angleB = atanf(UDdif/flatDist) * 57.29578f;
newValueb = angleB*(3.14159265f/180);
if(GetAsyncKeyState(keybota)){
if((value == 3 ) || (value == 4 ))
{
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(cP.lookYa), &newValueb ,4,NULL);
}
if((value == 1 ) || (value == 2 ))
{
if(aim == true){
WriteProcessMemory(GetCurrentProcess(),(LPVOID*)(DWORD)(cP.lookYa), &newValueb ,4,NULL);}
}
}
}
You must aim the nearest distance.
Code:
PLAYER_DATA CharNumber1 = GetPlayerData(1);
PLAYER_DATA CharNumber2 = GetPlayerData(2);
PLAYER_DATA CharNumber3 = GetPlayerData(3);
PLAYER_DATA CharNumber4 = GetPlayerData(4);
PLAYER_DATA CharNumber5 = GetPlayerData(5);
PLAYER_DATA CharNumber6 = GetPlayerData(6);
PLAYER_DATA CharNumber7 = GetPlayerData(7);
PLAYER_DATA CharNumber8 = GetPlayerData(8);
PLAYER_DATA CharNumber9 = GetPlayerData(9);
PLAYER_DATA CharNumber10 = GetPlayerData(10);
PLAYER_DATA CharNumber11 = GetPlayerData(11);
PLAYER_DATA CharNumber12 = GetPlayerData(12);
PLAYER_DATA CharNumber13 = GetPlayerData(13);
PLAYER_DATA CharNumber14 = GetPlayerData(14);
PLAYER_DATA CharNumber15 = GetPlayerData(15);
PLAYER_DATA CharNumber16 = GetPlayerData(16);
If you want to D3D aim. Create New function.
Code:
void SetMouseCursor( LPDIRECT3DDEVICE9 pDevice,float x,float y)
{
}
Develop from :
http://www.mpgh.net/forum/287-crossf...-fps-game.html