Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ifndef _GAME_DEFINES_H
- #define _GAME_DEFINES_H
- #include "stdafx.h"
- #include "vec3.h"
- enum modes{
- MODE_DISABLED = 0,
- MODE_NORMAL = 1,
- MODE_PREDICT = 2
- };
- #define CLIENT_FLAG_CROUCHED 0x04
- #define CLIENT_FLAG_PRONE 0x08
- #define CHALL_RESP_FLAG_RETAIL 0x03
- #define KEY_LB 0x05;
- #define KEY_RB 0x06;
- #define KEY_LT 0x12
- #define KEY_RT 0x13
- #define KEY_SELECT 0x0F
- #define KEY_START 0x0E
- #define KEY_Y 0x04
- #define KEY_X 0x03
- #define KEY_A 0x01;
- #define KEY_B 0x02;
- #define KEY_LS 0x10
- #define KEY_RS 0x11
- #define KEY_DPAD_UP 0x14
- #define KEY_DPAD_LEFT 0x16
- #define KEY_DPAD_DOWN 0x15
- #pragma pack(push, 1)
- typedef struct cgs_t
- {
- DWORD ViewX; // 0x0000
- DWORD ViewY; // 0x0004
- DWORD ViewWidth; // 0x0008
- DWORD ViewHeight; // 0x000C
- FLOAT ViewAspect; // 0x0010
- FLOAT ViewMultiplyer; // 0x0014
- DWORD ServerCommandSequence; // 0x0018
- DWORD ProcessedSnapshotNumber; // 0x001C
- DWORD LocalServer; // 0x0020
- CHAR Gametype[32]; // 0x0024
- CHAR HostName[256]; // 0x0044
- DWORD Hardcore; // 0x0144
- DWORD MaxClients; // 0x0148
- DWORD PrivateClients; // 0x014C
- CHAR Mapname[64]; // 0x0150
- BYTE _0x0190[0xD4E4 - 0x190];
- } cgs_t, *pcgs_t; // size 0xD4E4
- typedef struct usercmd_s
- {
- DWORD ServerTime; // 0x0000
- DWORD Buttons; // 0x0004
- DWORD ViewAngles[3]; // 0x0008
- CHAR _0x0014[48];
- } usercmd_s, *pusercmd_s; // size 0x44
- typedef struct clientActive_t
- {
- BYTE _0x0000[248];
- vec3 Origin; // 0x00F8
- vec3 Velocity; // 0x0104
- vec3 SpawnAngles; // 0x0110
- BYTE _0x011C[12936];
- CHAR Mapname[64]; // 0x33A4
- BYTE _0x33E4[260];
- vec3 ViewAngles; // 0x34E8
- usercmd_s UserCommands[128]; // 0x34F4
- DWORD CommandNumber; // 0x56F4
- BYTE _0x56F8[0xFB80 - 0x56F8];
- DWORD GetUserCommandNumber()
- { return CommandNumber & 0x7F; }
- pusercmd_s GetUserCommand(DWORD CommandNumber)
- { return &UserCommands[CommandNumber]; /* # r10 = r11 & 0x7F */ }
- } clientActive_t, *pclientActive_t; // size 0xFB80
- #define FLAG_CROUCHED 0x04
- #define FLAG_PRONE 0x08
- typedef enum entityType_t : BYTE
- {
- ET_GENERAL = 0x0,
- ET_PLAYER = 0x1,
- ET_PLAYER_CORPSE = 0x2,
- ET_ITEM = 0x3,
- ET_MISSILE = 0x4,
- ET_INVISIBLE = 0x5,
- ET_SCRIPTMOVER = 0x6,
- ET_SOUND_BLEND = 0x7,
- ET_FX = 0x8,
- ET_LOOP_FX = 0x9,
- ET_PRIMARY_LIGHT = 0xA,
- ET_TURRET = 0xB,
- ET_HELICOPTER = 0xC,
- ET_PLANE = 0xD,
- ET_VEHICLE = 0xE,
- ET_VEHICLE_COLLMAP = 0xF,
- ET_VEHICLE_CORPSE = 0x10,
- ET_VEHICLE_SPAWNER = 0x11,
- ET_AGENT = 0x12,
- ET_AGENT_CORPSE = 0x13
- } entityType_t;
- typedef struct centity_s
- {
- BYTE _0x0000[20];
- vec3 Origin; // 0x0014
- vec3 Angles; // 0x0020
- BYTE _0x002C[64];
- DWORD Flags; // 0x006C
- BYTE _0x0070[102];
- DWORD ClientNumber; // 0x00D6
- BYTE _0x00DA[10];
- BYTE EntityType; // 0x00E4
- BYTE _0x00E5[63];
- DWORD WeaponIndex; // 0x0124
- BYTE _0x0128[179];
- BYTE Alive; // 0x01DB
- BYTE _0x01DC[48];
- DWORD GetCurrentWeaponIndex()
- { return WeaponIndex & 0x3FF; /* r11 = r28 & 0x3FF */ }
- } centity_s, *pcentity_s; // size 0x020C
- typedef struct refdef_s
- {
- BYTE _0x0000[4];
- WORD Width; // 0x0004
- WORD Height; // 0x0006
- BYTE _0x0008[8];
- vec2 Fov; // 0x0010
- vec3 ViewOrigin; // 0x0018
- vec3 ViewAxis[3]; // 0x0024
- BYTE _0x0048[4];
- FLOAT ZoomProgress; // 0x004C
- vec3 _ViewOrigin; // 0x0050
- } refdef_s, *prefdef_s; // 0x005C
- typedef struct playerName_t
- {
- CHAR PlayerName[32]; // 0x0000
- BYTE _0x0020[276];
- } playerName_t, *pplayerName_t; // 0x0134
- typedef struct clientInfo_t
- {
- BYTE _0x0000[12];
- DWORD Team; // 0x000C
- BYTE _0x0010[3108];
- } clientInfo_t, *pclientInfo_t; // size 0x0C34
- typedef struct cg_s
- {
- BYTE ClientNumber; // 0x0000
- BYTE _0x0001[75];
- DWORD ServerTime; // 0x004C
- BYTE _0x0050[8];
- DWORD Flags; // 0x0058
- BYTE _0x005C[28];
- vec3 Origin; // 0x0078
- vec3 Velocity; // 0x0084
- BYTE _0x0090[344];
- DWORD Health; // 0x01E8
- BYTE _0x01EC[0x1AF30 - 0x1EC];
- playerName_t playerNames[12]; // 0x1AF30 (sizeof(playerName_t[12]) - 0xE70)
- BYTE _0x1BDA0[0x37640 - 0x1BDA0];
- refdef_s refdef; // 0x37640
- BYTE _0x3769C[0xA0418 - 0x3769C];
- clientInfo_t clientInfo[12]; // 0xA0418 (sizeof(clientInfo_t[12]) - 0x9270)
- BYTE _0xA9688[0xBF600 - 0xA9688];
- } cg_s, *pcg_s; // size 0xBF600
- #pragma pack(pop)
- typedef enum XAssetType : DWORD
- {
- material = 0x05,
- font = 0x1C,
- rawfile = 0x2B,
- scriptfile = 0x2C,
- structureddatadef = 0x2F
- } XAssetType;
- struct toggles_s{
- bool
- clicked,
- welcomeMsg,
- ingame;
- int click, mode;
- void reset(){
- clicked = false;
- welcomeMsg = false;
- click = 0;
- mode = MODE_DISABLED;
- ingame = false;
- }
- };
- class aimbot{
- public:
- vec3 lastPos;
- vec3 myLastPos;
- int lastClient;
- static int closestClient(DWORD Client, bool VisibilityCheck = true);
- static vec3 tagPosition(DWORD ClientNumber, CONST PCHAR Tag);
- static void addPrediction(int client, vec3 in, vec3 old, vec3 *out, float Prediction);
- void reset(){
- lastPos = vec3();
- myLastPos = vec3();
- lastClient = -1;
- }
- };
- class engine{
- public:
- static void DrawLine(float X1, float Y1, float X2, float Y2, float Width, vec4& Color);
- static void MakeESPLine(vec3 Center, float X1, float Y1, float Z1, float X2, float Y2, float Z2, vec4 Color);
- static void Make3DBox(vec3 Center, float W, float H, vec4 Color);
- };
- //Game
- static CONST PCHAR (__cdecl *va)(CONST PCHAR Format, ...);
- static int (__cdecl *Key_IsDown)(int ClientNum, int ButtonEnum);
- static bool (__cdecl *Dvar_Getbool)(CONST PCHAR Dvar);
- static WORD (__cdecl *SL_GetStringOfSize)(CONST PCHAR Text, DWORD User, DWORD Length, DWORD Type);
- static bool (__cdecl *CG_CanSeePlayer)(DWORD LocalClientNum, pcentity_s centity_s, DWORD Mask);
- static VOID (__cdecl *AimAssist_GetTagPos)(DWORD LocalClientNumber, pcentity_s centity_s, WORD Tag, vec3& Position);
- //Engine Text
- static VOID (__cdecl *CL_DrawTextPhysical)(CONST PCHAR Text, DWORD MaxCharacters, DWORD Font, float X, float Y, float XScale, float YScale, float Angle, vec4& Color, DWORD Style);
- static VOID (__cdecl* CG_DrawRotatedPicPhysical)(DWORD ScreenPlacement, float X, float Y, float Width, float Height, float Angle, vec4& Color, DWORD Material);
- static DWORD (__cdecl *DB_FindXAssetHeader)(XAssetType Type, CONST PCHAR Name, DWORD r5);
- static DWORD (__cdecl *R_TextWidth)(CONST PCHAR Text, DWORD MaxCharacters, DWORD Font);
- static void (__cdecl *usermsg)(const char* txt);
- VOID aw_ini();
- struct addrs_s{
- UINT //Basic mem pokes
- getTagPos_error,
- crosshair,
- recoil,
- chams,
- uav;
- UINT //Function pointers
- drawFps_ptr,
- writePacket_ptr;
- //Struct pointers
- UINT
- screenPlacement,
- clientActive,
- centity,
- cg, cgs; //826D0BF8+4C
- void ini(){
- //Basic mem pokes
- /*crosshair = findPattern(".text", "\x40\x9A\x00\x28\x81\x7F\x05\x00", "XXXXXXX?", "crosshair");
- recoil = (findPattern(".text", "\x3C\xDD\x00\x04\x3C\xBD\x00\x04", "XXXXXXXX", "recoil [+0x24]") + 0x24);
- chams = (findPattern(".text", "\x7F\xE5\x07\x34\x7D\xE4\x7B\x78", "XXXXXXXX", "chams [-0x08]") - 0x08);
- uav = findPattern(".text", "\x55\x19\xEF\xFE\x55\x18\xD7\xFE", "XXXXXXXX", "uav");
- getTagPos_error = (findPattern(".text", "\x3D\x40\x82\x03\x38\x60\x00\x01", "XXXXXXXX", "getTagPos_error [+0x10]") + 0x10);
- //Function pointers
- drawFps_ptr = (findPattern(".text", "\x89\x4B\x00\x0C\x2B\x0A\x00\x00\x41\x9A\x00\x90", "XXXXXXXXXXXX", "drawFps_ptr [-0x1C]") - 0x1C);
- writePacket_ptr = (findPattern(".text", "\x7D\x23\x21\xD6\x7E\xC9\x52\x14", "XXXXXXXX"," writePacket_ptr [-0x44]") - 0x44);
- va = (CONST PCHAR (__cdecl *)(CONST PCHAR, ...))findPattern(".text", "\x7D\x88\x02\xA6\x91\x81\xFF\xF8\xFB\xE1\xFF\xF0\xF8\x81\x00\x18", "XXXXXXXXXXXXXXXX", "va");
- Key_IsDown = (int (__cdecl *)(int ClientNum, int ButtonEnum))(findPattern(".text", "\x39\x0A\x01\x24\x55\x27\x10\x3A", "XXXXXXXX", "Key_IsDown [-0x28]") - 0x28);
- Dvar_Getbool = (bool (__cdecl *)(CONST PCHAR))(findPattern(".text", "\x89\x63\x00\x08\x2B\x0B\x00\x00\x40\x9A\x00\x18\x88\x63\x00\x0C", "XXXXXXXXXXXXXXXX", "Dvar_Getbool [-0x28]") - 0x28);
- SL_GetStringOfSize = (WORD (__cdecl *)(CONST PCHAR, DWORD, DWORD, DWORD))(findPattern(".text", "\x7C\x8E\x23\x78\x7C\xA4\x2B\x78\x7C\x72\x1B\x78\x7C\xB8\x2B\x78", "XXXXXXXXXXXXXXXX", "SL_GetStringOfSize [-0x0C]") - 0x0C);
- CG_CanSeePlayer = (bool (__cdecl*)(DWORD, pcentity_s, DWORD))(findPattern(".text", "\xC1\x7F\x00\x18\x3D\x7C\x00\x03\xED\x4B\x68\x28", "XXXXXXXXXXXX", "CG_CanSeePlayer [-0xA4]") - 0xA4);
- AimAssist_GetTagPos = (VOID (__cdecl *)(DWORD, pcentity_s, WORD, vec3&))(findPattern(".text", "\x7C\x87\x39\x10\x7C\x84\x28\x38\x2B\x04\x00\x00\x40\x9A\x00\x0C", "XXXXXXXXXXXXXXXX", "AimAssist_GetTagPos [-0x54]") - 0x54);
- CL_DrawTextPhysical = (VOID (__cdecl*)(CONST PCHAR, DWORD, DWORD, FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, vec4&, DWORD))(findPattern(".text", "\x89\x63\x00\x00\x7C\x7C\x1B\x78\x7C\x9B\x23\x78\x7C\xBE\x2B\x78", "XXXXXXXXXXXXXXXX", "CL_DrawTextPhysical [-0x0C]") - 0x0C);
- CG_DrawRotatedPicPhysical = (VOID (__cdecl*)(DWORD, FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, vec4&, DWORD))(findPattern(".text", "\x2F\x0B\x00\x00\xED\x6B\x03\x32\x41\x9A\x00\x0C\xFD\x40\x08\x90", "XXXXXXXXXXXXXXXX", "CG_DrawRotatedPicPhysical [-0x8C]") - 0x8C);
- DB_FindXAssetHeader = (DWORD (__cdecl *)(XAssetType, CONST PCHAR, DWORD))(findPattern(".text", "\x89\x7B\x00\x0A\x55\x6A\x07\x7E\x55\x4A\x07\xFA\x2B\x0A\x00\x00", "XXXXXXXXXXXXXXXX", "DB_FindXAssetHeader [-0x114]") - 0x114);
- R_TextWidth = (DWORD (__cdecl *)(CONST PCHAR, DWORD, DWORD))(findPattern(".text", "\x7C\x7E\x1B\x78\x7C\x9B\x23\x78\x7C\xBC\x2B\x78\x3B\xE0\x00\x00", "XXXXXXXXXXXXXXXX", "R_TextWidth [-0x0C]") - 0x0C);
- //Struct pointers
- screenPlacement = ReadHighLow(findPattern(".text", "\xEC\x5D\x00\x2A\xEC\x3E\x00\x2A\xFC\xC0\x40\x90", "XXXXXXXXXXXX", "screenPlacement"), 0x2E, 0x36);
- clientActive = ReadHighLow(findPattern(".text", "\xC1\x24\x00\x08\xED\xAA\x68\x2A", "XXXXXXXX", "clientASctive"), 0x0E, 0x1E);
- centity = ReadHighLow(findPattern(".text", "\x54\x6B\x08\x3C\x7C\x8A\x07\x34", "XXXXXXXX", "centity"), 0x0E, 0x1A);
- cg = ReadHighLow(findPattern(".text", "\x2B\x0B\x00\x12\x40\x9A\xFF\xE8", "XXXXXXXX", "cg"), 0x12, 0x22);
- cgs = ReadHighLow(findPattern(".text", "\x7D\x43\x39\xD6\x7D\x6A\x5A\x14", "XXXXXXXX", "cgs") - 0x24, 0x02, 0x22);*/
- /*//crosshair = 0x826E4B3C;
- //recoil = 0x83922DBC;
- chams = 0x8269E014;
- //uav = 0x826D1C7C;
- getTagPos_error = 0x8282C514;
- //Function pointers
- drawFps_ptr = 0x823C8B50;
- writePacket_ptr = 0x82643FF8;
- va = (CONST PCHAR (__cdecl *)(CONST PCHAR, ...))0x82399918;
- Key_IsDown = (int (__cdecl *)(int ClientNum, int ButtonEnum))0x82640910;
- Dvar_Getbool = (bool (__cdecl *)(CONST PCHAR))0x823A0EF8;
- SL_GetStringOfSize = (WORD (__cdecl *)(CONST PCHAR, DWORD, DWORD, DWORD))0x824872A8;
- CG_CanSeePlayer = (bool (__cdecl*)(DWORD, pcentity_s, DWORD))0x82662F78;
- AimAssist_GetTagPos = (VOID (__cdecl *)(DWORD, pcentity_s, WORD, vec3&))0x8282C458;
- usermsg = (void (cdecl *)(const char *))0x824AEEE8;
- CL_DrawTextPhysical = (VOID (__cdecl*)(CONST PCHAR, DWORD, DWORD, FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, vec4&, DWORD))0x822AD260;
- CG_DrawRotatedPicPhysical = (VOID (__cdecl*)(DWORD, FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, vec4&, DWORD))0x826C4648;
- DB_FindXAssetHeader = (DWORD (__cdecl *)(XAssetType, CONST PCHAR, DWORD))0x825C14A8;
- R_TextWidth = (DWORD (__cdecl *)(CONST PCHAR, DWORD, DWORD))0x822C6F00;
- //Struct pointers
- screenPlacement = 0x82C535D0;
- clientActive = 0x82BCC568;
- centity = 0x82B7D09C;
- cg = 0x82B8F4E8;
- cgs = 0x82B8AB8C;*/
- //crosshair = 0x826E4B3C;
- //recoil = 0x83922DBC;
- chams = 0x8269F764;
- //uav = 0x826D1C7C;
- getTagPos_error = 0x8282FD74;
- //Function pointers
- drawFps_ptr = 0x823C9390;
- writePacket_ptr = 0x826457C0;
- va = (CONST PCHAR (__cdecl *)(CONST PCHAR, ...))0x82399CC0;
- Key_IsDown = (int (__cdecl *)(int ClientNum, int ButtonEnum))0x826420D0;
- Dvar_Getbool = (bool (__cdecl *)(CONST PCHAR))0x823A1298;
- SL_GetStringOfSize = (WORD (__cdecl *)(CONST PCHAR, DWORD, DWORD, DWORD))0x824879D0;
- CG_CanSeePlayer = (bool (__cdecl*)(DWORD, pcentity_s, DWORD))0x82664758;
- AimAssist_GetTagPos = (VOID (__cdecl *)(DWORD, pcentity_s, WORD, vec3&))0x8282FCB8;
- CL_DrawTextPhysical = (VOID (__cdecl*)(CONST PCHAR, DWORD, DWORD, FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, vec4&, DWORD))0x822AD4C0;
- CG_DrawRotatedPicPhysical = (VOID (__cdecl*)(DWORD, FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, vec4&, DWORD))0x826C5EF0;
- DB_FindXAssetHeader = (DWORD (__cdecl *)(XAssetType, CONST PCHAR, DWORD))0x825C2230;
- R_TextWidth = (DWORD (__cdecl *)(CONST PCHAR, DWORD, DWORD))0x822C70C8;
- //Struct pointers
- screenPlacement = 0x82C3FC18;
- clientActive = 0x82BB8B2C;
- centity = 0x82B7715C;
- cg = 0x82B7BABC;
- cgs = 0x82B7BAB8;
- #ifdef DUMP_AW_OFFSETS
- DbgPrint("AW: addrs_s address dump-------");
- DbgPrint("Basic mem pokes---");
- DbgPrint("Crosshair: %p | %p", crosshair, findPattern(".text", "\x40\x9A\x00\x28\x81\x7F\x05\x00", "XXXXXXX?", "crosshair"));
- DbgPrint("Recoil: %p", recoil);
- DbgPrint("Chams: %p", chams);
- DbgPrint("UAV: %p", uav);
- DbgPrint("GetTagPos_error: %p | %p", getTagPos_error, (findPattern(".text", "\x3D\x40\x82\x03\x38\x60\x00\x01", "XXXXXXXX", "getTagPos_error [+0x10]") + 0x10));
- DbgPrint("");
- DbgPrint("Hook pointers---");
- DbgPrint("DrawFPS_ptr: %p", drawFps_ptr);
- DbgPrint("WritePacket_ptr: %p", writePacket_ptr);
- DbgPrint("");
- DbgPrint("Function pointers---");
- DbgPrint("VA: %p", va);
- DbgPrint("Key_IsDown: %p | %p", Key_IsDown, (findPattern(".text", "\x39\x0A\x01\x24\x55\x27\x10\x3A", "XXXXXXXX", "Key_IsDown [-0x28]") - 0x28));
- DbgPrint("Dvar_Getbool: %p", Dvar_Getbool);
- DbgPrint("SL_GetStringOfSize: %p", SL_GetStringOfSize);
- DbgPrint("CG_CanSeePlayer: %p", CG_CanSeePlayer);
- DbgPrint("AimAssist_GetTagPos: %p", AimAssist_GetTagPos);
- DbgPrint("CL_DrawTextPhysical: %p", CL_DrawTextPhysical);
- DbgPrint("CG_DrawRotatedPicPhysical: %p", CG_DrawRotatedPicPhysical);
- DbgPrint("DB_FindXAssetHeader: %p", DB_FindXAssetHeader);
- DbgPrint("R_TextWidth: %p", R_TextWidth);
- DbgPrint("");
- DbgPrint("Struct pointers---");
- DbgPrint("ScreenPlacement: %p", screenPlacement);
- DbgPrint("ClientActive: %p", clientActive);
- DbgPrint("Centity: %p", centity);
- DbgPrint("CG: %p", cg);
- DbgPrint("CGs: %p | %p", cgs, ReadHighLow(findPattern(".text", "\x7D\x43\x39\xD6\x7D\x6A\x5A\x14", "XXXXXXXX", "cgs") - 0x24, 0x02, 0x22));
- DbgPrint("AW: addrs_s address dump END---");
- #endif
- }
- };
- #endif
Advertisement
Add Comment
Please, Sign In to add comment