-Engine UI
-Constant UAV
-Red Boxes
-Steady Aim
-No Recoil
-Laser
-Modded Crosshairs
-Health Bar
-Field Of View
-Third Person
-FPS
-Wallhack
-Reload Color
-Big Map
-Floating Objects
-Rapid Fire
-Chrome Players
-Dvar Command
-Left Gun
-Big Names
-Super Slight of Hand
-Default
-Evening
-Black & White
-Half Black
-Flashy
-L33T Vision
-Fully Functional Non Host Aimbot
-Logical Aimbot
-Stealth Aimbot
-Tag Changer
-R3 + Dpad Up to Open Menu
-Dpad Up and Down to Scroll
-X to Select Options
-Circle To Go Back
NickBeHaxing - Designing & Coding Menu, Aimbot Help & Some Addresses
Sabotage - Aimbot & Lots of Addresses
Mango_Knife - Offsets
Milky4444 - Addresses
SC58 - Addresses & Offsets
VezahMoDz - Keyboard Function
Thriefboy - Hooking/Write Process Function
Geo - Snow Engine Pictures & Ideas
//re-written and optimised by Bitwise
typedef struct _vec3
{
float x, y, z;
vec3(float fX, float fY, float fZ) : x(fX), y(fY), z(fZ) {}
vec3(float vec[3]) : x(vec[0]), y(vec[1]), z(vec[2]) {}
vec3(vec3&vec) : x(vec.x), y(vec.y), z(vec.z) {}
vec3() : x(0), y(0), z(0) {}
vec3&operator-(vec3&v) { return *(new vec3(this->x - v.x, this->y - v.y, this->z - v.z)); }
template<int nCount>
void set(int dwAddress)
{
if(nCount < 0 || nCount > 3) return;
for(int i = 0, f = 0; i < nCount; i++, f += 4)
{
*(float*)(dwAddress + f) = (&this->x)[i];
}
}
int len()
{
int nCount = 0;
for(nCount;(&this->x)[nCount]!=0.0f;nCount++);
return nCount;
}
}vec3, *pvec3;
template<int nCount>
inline vec3 get(int dwAddress)
{
if(nCount < 0 || nCount > 3) return *(new vec3(0.0f,0.0f,0.0f));
return *(new vec3(nCount > 0 ? *(float*)(dwAddress) : 0.0f, nCount > 1 ? *(float*)(dwAddress + 4) : 0.0f, nCount > 2 ? *(float*)(dwAddress + : 0.0f));
}
template<int dwEntry, int nSize, int dwIndex>
inline int accessArray(bool bPointed = true)
{
return (bPointed ? *(int*)dwEntry : dwEntry) + (dwIndex * nSize);
}
#define get_centity(clientNum) accessArray<0x7BD010, 0x1EC, clientNum>()
#define get_clientActive accessArray<0x7F0ECC, NULL, NULL>() // didn't you know it supports all 4 players?
#define get_cg accessArray<0x7BD008, NULL, NULL>() // again^
#define get_clientInfo(clientNum) accessArray<accessArray<0x7BD010, NULL, NULL)(), 0x594, clientNum>(false)
#define maxEnts *(int*)(get_cg + 0x6690)
#define PI 3.1415926535897931f
#define hostNum *(int*)(get_cg + 0x150)
inline bool onSameTeam(int clientInfo1, int clientInfo2)
{
return !strncmp(Dvar_GetString("ui_gametype"), "dm", 2) ? true : *(int*)(clientInfo1 + 0x24) == *(int*)(clientInfo2 + 0x24);
}
vec3 baseAngles()
{
return get<2>(get_clientActive() + 0xE0);
}
typedef struct {
vec3 m_pos;
bool m_completed;
int m_name;
}tagInfo, *ptagInfo;
ptagInfo AimTarget_GetTagPos(int targetCEnt, char*szTagName)
{
ptagInfo info = new ptagInfo;
memset(info, 0, sizeof(tagInfo));
info->m_name = SL_GetString(szTagName);
info->m_completed = CG_DObjGetWorldTagPos(targetCEnt, Com_GetClientDObj(*(int*)(targetCEnt + 0xC4), 0), info->m_name, &info->m_pos);
return info;
}
vec3 getBonePos(int clientNum, char*szTagName)
{
ptagInfo info = AimTarget_GetTagPos(get_centity(clientNum), szTagName);
return info->m_completed ? info->m_pos : *(new vec3(0.0f, 0.0f, 0.0f));
}
template<vec3 v1, vec3 v2>
float distance()
{
return sqrt( pow(v2.x - v1.x, 2) + pow(v2.y - v1.y, 2) + pow(v2.z - v1.z, 2) );
}
vec3 VectorToAngles(vec3 vec)
{
float pitch = 0, yaw = 0;
// x&y are null
*(double*)(&vec.x)[0] == 0.0 ? pitch = (vec.z > 0 ? 90.0f : 270.0f) : false;
vec.x >= 0 ? yaw = float(atan2(vec.y, vec.x) * (180.0f / PI)) : false;
yaw = vec.y > 0 ? 90.0f : 270.0f;
pitch = atan2(vec.z, sqrt((vec.x*vec.x)+(vec.y*vec.y)));
return *(new vec3(-(pitch < 0 ? pitch + 360.0f : pitch), yaw < 0 ? yaw + 360.0f : yaw, 0.0f))
}
int getClosestPlayer(int clientNum) {
float nDist = 99999999.0f;
int closestID;
for(int i = 0; i < maxEnts; i++)
{
if( i != clientNum && *(bool*)(get_centity(clientNum) + 2) && onSameTeam(get_centity(hostNum), get_centity(i)))
{
float fDis = distance<get<3>(get_centity(clientNum) + 0x14), get<3>(get_centity(i) + 0x14)>();
// if client is closer than the last, and construction checks are active while client is not constructed from view
(checkConst ? nDist < fDis && Visability(0, get_centity(i), 0x803003) : nDist < fDis) ? nDist = fDis, closestID = i : continue;
}
}
}
void Aimbot()
{
do
{
if(isInGame() && Aimbot){
vec3(VectorToAngles(get<2>(get_centity(i) + 0x20)) - baseAngles()).set<2>(get_clientActive + 0x35B0);
sleep(300);
}
// isOptionOn not for use, monitor this to suit your system
Aimbot = isInGame && isOptionOn(OPTION_AIMBOT)
sleep(10);
}while(true);
}
typedef enum _button_s : unsigned char
{
B_CROSS,
B_CIRCLE,
B_SQUARE,
B_TRIANGLE,
B_L1,
B_R1,
B_START = (B_R1*B_TRIANGLE)-B_SQUARE,
B_SELECT,
B_L3,
B_R3,
B_L2,
B_R2,
B_DPAD_UP,
B_DPAD_DOWN,
B_DPAD_LEFT,
B_DPAD_RIGHT
}button_s;
#define button_pressed(button) *(bool*)(0x7ED24B + (button * 0xC))
//example
if(button_pressed(button_s::B_L2) && button_pressed(button_s::B_RS) { /*do ur bs/* }
typedef enum _button_s : unsigned char
{
B_CROSS,
B_CIRCLE,
B_SQUARE,
B_TRIANGLE,
B_L1,
B_R1,
B_START = (B_R1*B_TRIANGLE)-B_SQUARE,
B_SELECT,
B_L3,
B_R3,
B_L2,
B_R2,
B_DPAD_UP,
B_DPAD_DOWN,
B_DPAD_LEFT,
B_DPAD_RIGHT
}button_s;
#define button_pressed(button) *(bool*)(0x7ED24B + (button * 0xC))
//example
if(button_pressed(button_s::B_L2) && button_pressed(button_s::B_RS) { /*do ur bs/* }
Copyright © 2024, NextGenUpdate.
All Rights Reserved.