structs:
Code:
struct CVehicle;
struct CServer
{
char unknown0[876]; //0x0000
__int32 spectate; //0x036C
char unknown880[4]; //0x0370
__int32 premium; //0x0374
__int32 premium_; //0x0378
};//Size=0x037C(892)
struct CPlayer
{
vector recoil; //0x0000
char unknown12[4]; //0x000C
float stamina; //0x0010
char unknown20[68]; //0x0014
BYTE index; //0x0058
char unknown89[31]; //0x0059
CVehicle* vehicle; //0x0078
char unknown124[16]; //0x007C
DWORD _weapon; //0x008C
char unknown144[128]; //0x0090
BYTE rolling; //0x0110
char unknown273[11]; //0x0111
float pitch; //0x011C
char unknown288[24]; //0x0120
float yaw; //0x0138
char unknown316[8]; //0x013C
vector pos_; //0x0144
char unknown336[12]; //0x0150
WORD weapon; //0x015C
WORD weapon_; //0x015E
char unknown352[88]; //0x0160
BYTE status; //0x01B8
BYTE status_; //0x01B9
char unknown442[90]; //0x01BA
BYTE onground; //0x0214
char unknown533[27]; //0x0215
BYTE forward; //0x0230
BYTE backward; //0x0231
BYTE left; //0x0232
BYTE right; //0x0233
char unknown564[8]; //0x0234
vector pos; //0x023C
char unknown584[192]; //0x0248
float nofall; //0x0308
char unknown780[8]; //0x030C
BYTE shooting; //0x0314
};//Size=0x0315(789)
struct CBase
{
CPlayer* local; //0x0000
char unknown4[72]; //0x0004
CPlayer** player; //0x004C
char unknown80[48]; //0x0050
};//Size=0x0080(128)
struct CVehicle
{
char unknown0[55]; //0x0000
char name[18]; //0x0037
};//Size=0x0049(73)
struct CServerBase
{
CServer* server; //0x0000
};//Size=0x0004(4)
struct CLocal
{
char unknown0[32]; //0x0000
vector pos; //0x0020
char unknown44[36]; //0x002C
float pitch; //0x0050
float yaw; //0x0054
char unknown88[16]; //0x0058
float view_down; //0x0068
float view_up; //0x006C
float fovx; //0x0070
float fovy; //0x0074
};//Size=0x0078(120)
struct CPlayerInfo
{
char unknown0[12]; //0x0000
WORD local; //0x000C 257 = local?
char unknown14[50]; //0x000E
char name[20]; //0x0040
char unknown84[1004]; //0x0054
char ip[16]; //0x0440
char unknown1104[140]; //0x0450
__int32 exp; //0x04DC
char unknown1248[12]; //0x04E0
__int32 dinar; //0x04EC
char unknown1264[64]; //0x04F0
char loginname[20]; //0x0530
char unknown1348[488]; //0x0544
char name_[20]; //0x072C
char unknown1856[4500]; //0x0740
__int32 points; //0x18D4
char unknown6360[16]; //0x18D8
__int32 kills; //0x18E8
__int32 deaths; //0x18EC
char unknown6384[4]; //0x18F0
__int32 health; //0x18F4
char unknown6392[140]; //0x18F8
BYTE index; //0x1984
BYTE ID187A59E0; //0x1985
BYTE ID187A4360; //0x1986
BYTE ID187A4260; //0x1987
BYTE team; //0x1988
char unknown6537[176]; //0x1989
};//Size=0x1A39(6713)
'vector' is my vector struct. its 12bytes long. you can replace vector pos with float pos[3]
usage:
Code:
//do stamina, nofall and more
g_pBase = (CBase*)0xCC4778;
if(g_pBase->local)
{
g_pBase->local->stamina = 100;
g_pBase->local->nofall = -2000;
g_pBase->local->recoil = 0;
//your position
//g_pBase->local->pos
}
///////////////////////////////////////////////////
//loop through all players
for(int i = 0; i < 32; i++)
{
if(!g_pBase->player || !g_pBase->local) break;
CPlayerInfo *pInfo = GetPlayerInfo(i);
CPlayer* pPlayer = g_pBase->player[i];
if(pInfo && pPlayer)
{
g_pBase->local->pos = pPlayer->pos; //teleports you to a player
//do more stuff, esp, aimbot, etc
//health: pInfo->health
//name: pInfo->name
//team: pInfo->team
//index: pInfo->index
//etc...
}
}
///////////////////////////////////////////////////
CPlayerInfo* GetPlayerInfo(int index)
{
if(index > 32) return 0;
DWORD dwBasePointer = 0xC22B88;
return (CPlayerInfo*) (dwBasePointer + (index*0x1A40));
}
credits: drunkencheetah (reclass)
edit:
Code:
g_pView = (CLocal*) *(DWORD*)0xB03EA4;
g_pServer = (CServerBase*)0xBCE110;