GOFFICIAL ™ [REDZONE-SOFTWARE]
German Style^®
Nu sunteti logat.
Lista Forumurilor Pe Tematici
Nou pe simpatie:
Andreea Miluta
Femeie
24 ani
Braila
cauta Barbat
30 - 48 ani
GOFFICIAL ™ [REDZONE-SOFTWARE]ReguliInregistrareLoginPoze
GOFFICIAL ™ [REDZONE-SOFTWARE] / Counter-Strike: Source / [C++] External NoSpread TriggerBot  
Autor
Mesaj Pagini: 1
#1
GoogLe*
Administrator ♛
Postari: 391
CODE :

bool triggerBot2()
{
triggerbotEnabled = true;

ExAddress clientBase = exGetModuleAddress("client.dll";
ExAddress engineBase = exGetModuleAddress("engine.dll";

randomNum trigRand;

CClientEntityList entList;
CAimbot trigBot;
CPlayer me;

//int myScreenPos[2];
//int enemyScreenPos2[2];

//float localOrigin[3];

ExAddress localPlayerBase = clientBase + localPlayerOffset;

entList.SetBaseEnt(clientBase + entListOffset);

me.pos.SetPositionAddress(exReadAddress(localPlayerBase) + 0x2CC);
me.viewAngles.SetViewAnglesAddress(engineBase + viewAnglesOffset);

//trigBot.SetRecoilAddress(exReadAddress(localPlayerBase) + 0xD90);
//trigBot.SetWeapRecoil(2.0f);

trigBot.SetPlayer(&me);

struct player
{
struct origin_
{
float x;
float y;
float z;

ExAddress address;
};

struct viewAngles_
{
float pitch;
float yaw;
float roll;

ExAddress address;
};

origin_ origin;
viewAngles_ viewAngles;

ExAddress m_bDormant_address;
bool m_bDormant;

ExAddress m_iTeamNum_address;
int m_iTeamNum;

ExAddress m_iLifestate_address;
BYTE m_iLifestate;

ExAddress m_nSequence_address;
int m_nSequence;


ExAddress address;

int screenPos[2];
float m_vecAbsOrigin[3];
float m_angRotation[3];

float forwardOffset;
float rightOffset;

float vForward[3];
float vRight[3];
float vUp[3];
};

player players[32];
player localPlayer;

localPlayer.viewAngles.address = engineBase + viewAnglesOffset;

int lastTime = timeGetTime();

//DWORD weapPtrHandle;

ExAddress weapPtr;

int lastSequence;

int mid[2] = {gScreenSize[0]/2, gScreenSize[1]/2};

//float div = (gScreenSize[0]/341.3);
float div = (gScreenSize[0]/400);
float div2 = (gScreenSize[1]/200);
//float div2 = (gScreenSize[1]/192);

while(true)
{
localPlayer.address = exReadAddress(clientBase + localPlayerOffset);

float punchAngles[3];
exReadBuffer(localPlayer.address+0xD90, &punchAngles, sizeof(float) * 3);

localPlayer.m_iTeamNum = (int)exReadDword(localPlayer.address+0x98);

int ecx = (int)exReadDword(exReadAddress(engineBase+seqNumOffset + 0x10));
int edx = (int)exReadDword(exReadAddress(engineBase+seqNumOffset + 0x16));

float localFov = exReadFloat(clientBase+clientPredictionOffset+localFovOffset);

if(ecx+edx+1 > lastSequence)
{
int random_seed = MD5_PseudoRandom(ecx+edx+1) & 0x7fffffff;
trigRand.SetSeed((random_seed & 255) + 1);

DWORD weapHandle = exReadDword(localPlayer.address + 0xCD0);
weapPtr = entList.GetEntityByIndex((weapHandle & 0xFFF) - 1);

exReadBuffer(localPlayer.viewAngles.address, &localPlayer.viewAngles, sizeof(float) * 3);
exReadBuffer(localPlayer.address+0x2CC, &localPlayer.origin, sizeof(float) * 3);

localPlayer.m_vecAbsOrigin[0] = localPlayer.origin.x;
localPlayer.m_vecAbsOrigin[1] = localPlayer.origin.y;
localPlayer.m_vecAbsOrigin[2] = localPlayer.origin.z;

localPlayer.m_angRotation[0] = localPlayer.viewAngles.pitch;
localPlayer.m_angRotation[1] = localPlayer.viewAngles.yaw;
localPlayer.m_angRotation[2] = localPlayer.viewAngles.roll;

x = trigRand.RandomFloat( -0.5, 0.5 ) + trigRand.RandomFloat( -0.5, 0.5 );
y = trigRand.RandomFloat( -0.5, 0.5 ) + trigRand.RandomFloat( -0.5, 0.5 );

float vecSpread;

vecSpread = getSpread(weapPtr);

x *= vecSpread;
y *= vecSpread;

float vForward[3], vRight[3], vUp[3];

//float *angles = localPlayer.m_angRotation;

gMath.AngleVectors(localPlayer.m_angRotation, vForward, vRight, vUp);

float newView[3];

vecDir[0] = vForward[0] + x * vRight[0] + y * vUp[0];
newView[0] = 8192 * vecDir[0];
vecDir[1] = vForward[1] + x * vRight[1] + y * vUp[1];
newView[1] = 8192 * vecDir[1];
vecDir[2] = vForward[2] + x * vRight[2] + y * vUp[2];
newView[2] = 8192 * vecDir[2];

//vecDir = vForward2 + (x * vecSpread * vRight2) + (y * vecSpread * vUp2);

VectorNormalize(vecDir);

float angles3[3];

//VectorAngles(vecDir, angles2);
gMath.VectorAngles(newView, angles3);

angles3[0] *= -1;

localPlayer.m_angRotation[0] = angles3[0];
localPlayer.m_angRotation[1] = angles3[1];
localPlayer.m_angRotation[2] = angles3[2];

localPlayer.m_angRotation[0] += punchAngles[0] * 2;
localPlayer.m_angRotation[1] += punchAngles[1] * 2;
localPlayer.m_angRotation[2] += punchAngles[2] * 2;

lastSequence = ecx+edx+1;
}

if(GetAsyncKeyState(VK_LMENU))
{
for(int i=0;i<32;++i)
{
ExAddress readBase = entList.GetEntityByIndex(i);

if(readBase == 0x0)
continue;

players[i].address = readBase;

if(players[i].address == localPlayer.address)
continue;

ent_s entBuffer;

exReadBuffer(readBase, &entBuffer, sizeof(entBuffer));

players[i].m_nSequence = (int)entBuffer.sequence;
players[i].m_iTeamNum = (int)entBuffer.team;
players[i].m_iLifestate = (int)entBuffer.lifeState;
players[i].m_bDormant = (bool)entBuffer.dormant;
players[i].m_vecAbsOrigin[0] = entBuffer.vecAbsOrigin[0];
players[i].m_vecAbsOrigin[1] = entBuffer.vecAbsOrigin[1];
players[i].m_vecAbsOrigin[2] = entBuffer.vecAbsOrigin[2];

if(players[i].m_iLifestate != 0x0 || players[i].m_bDormant == true || players[i].m_iTeamNum == localPlayer.m_iTeamNum)
continue;

//exReadBuffer(players[i].origin.address, &players[i].origin, sizeof(float) * 3);

players[i].viewAngles.address = readBase + m_vecRotationOffset;
exReadBuffer(players[i].viewAngles.address, &players[i].viewAngles, sizeof(float) * 3);

players[i].m_angRotation[0] = players[i].viewAngles.pitch;
players[i].m_angRotation[1] = players[i].viewAngles.yaw;
players[i].m_angRotation[2] = players[i].viewAngles.roll;

players[i].forwardOffset = 10;
players[i].rightOffset = 4;

if(players[i].m_nSequence == 2 || players[i].m_nSequence == 5)
{
players[i].m_vecAbsOrigin[2] -= 17.5;

players[i].rightOffset = 2;
}

// CALCULATIONS
//exPrintf("%f", players[i].m_angRotation[0]);
gMath.AngleVectors(players[i].m_angRotation, players[i].vForward, players[i].vRight, players[i].vUp);

players[i].m_vecAbsOrigin[0] += (players[i].vForward[0]*players[i].forwardOffset) + (players[i].vRight[0]*players[i].rightOffset);
players[i].m_vecAbsOrigin[1] += (players[i].vForward[1]*players[i].forwardOffset) + (players[i].vRight[1]*players[i].rightOffset);

float dist = gMath.GetDistance(localPlayer.m_vecAbsOrigin, players[i].m_vecAbsOrigin) / 1000;

float var;
float var2;

if(localFov > 40)
{
var = div/dist;
var2 = div2/dist;
}
else if (localFov > 10)
{
var = (div*2.2)/dist;
var2 = (div2*2.2)/dist;
}
else
{
var = (div*5.6)/dist;
var2 = (div2*5.6)/dist;
}
//exPrintf("X: %i, Y: %i, %i", players[i].screenPos[0], players[i].screenPos[1], i);

if(gMath.WorldToScreen(players[i].m_vecAbsOrigin, localPlayer.m_vecAbsOrigin, localPlayer.m_angRotation, (int)localFov, gScreenSize, players[i].screenPos))
{
if(players[i].screenPos[0] >= mid[0]-var && players[i].screenPos[0] <= mid[0]+var && players[i].screenPos[1] >= mid[1]-var2 && players[i].screenPos[1] <= mid[1]+var2)
{
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
}
}
}
}

Sleep(1);
}

return true;
}


_______________________________________




 
   
Pagini: 1  
Mergi la