Skip to content
MPGHThe Dark Arts
/
RegisterLog in
Forum
Community
What's NewLatest posts across the boardTrendingHottest threads right nowSubscribedThreads you follow
Discussion
GeneralIntroductionsEntertainmentDebate FortFlaming & Rage
Board
News & AnnouncementsMPGH TimesSuggestions & HelpGiveaways
More Sections
Art & Graphic DesignProgrammingHackingCryptocurrency
Hacks & Cheats
Games
ValorantCS2 / CS:GOCall of Duty / WarzoneFortniteApex LegendsEscape From Tarkov
+14 moreLeague of LegendsGTA VMinecraftRustROTMGBattlefieldTroveBattleOnCombat ArmsCrossFireBlackshotRuneScapeDayZDead by Daylight
Resources
Game Hacking TutorialsReverse EngineeringGeneral Game HackingAnti-CheatConsole Game Hacking
Tools
Game Hacking ToolsTrainers & CheatsHack/Release NewsNew
Submit a release →Share your cheat, tool, or config with the community.
AINEW
AI Tools
General & DiscussionPrompt EngineeringLLM JailbreaksHotAI Agents & AutomationLocal / Open Models
AI × Gaming
AI Aimbots & VisionML Anti-CheatGame Bots & Automation
Create
AI Coding / Vibe CodingAI Art & MediaAI Voice & TTS
The AI frontier →Where game hacking meets modern machine learning. Jump in.
Marketplace
Buy & Sell
SellingBuyingTradingUser Services
Trust & Safety
Middleman LoungeMarketplace TalkVouch Copy Profiles
Money
Cryptocurrency TalkCurrency ExchangeWork & Job Offers
Start selling →List accounts, services, and goods. Use the middleman to trade safe.
MPGH The Dark Arts

A community for offensive security research, reverse engineering, and AI.

Community

ForumMarketplaceSearch

Account

RegisterLog in

Legal

Privacy PolicyForum RulesHelp & FAQ
© 2026 MPGH · All rights reserved.Built by the community, for the community. For educational purposes onlyContent is shared for security research and education — we don't condone illegal use. You're responsible for complying with applicable laws. Use at your own risk.
Home › Forum › MultiPlayer Game Hacks & Cheats › Call of Duty Hacks & Cheats › Call of Duty 8 - Modern Warfare 3 (MW3) Hacks & Cheats › Call of Duty Modern Warfare 3 Coding, Programming & Source Code › FULL ESP Source Code

FULL ESP Source Code

Posts 1–15 of 32 · Page 1 of 3
MarkHC
MarkHC
FULL ESP Source Code
I'm so bored that I thought.. "Why not release a esp source code?"

First of all, I DO NOT CARE if you're a noob and don't know how to make this work... That's your problem, not mine...
Second, Yes, the code is really, REALLY messy... that's also your problem if you don't understand it..

Structs.h
Code:
#include <Windows.h>
#include <iostream>
#include <math.h>

typedef struct
{
	int Valid;                                       //0x0 (0xAD28F8)
	char _0x0004[0x8];                               //0x4
	char Name[16];                                   //0xC (0xAD2904)
	int Team;                                        //0x1C (0xAD2914)
	char _0x0020[0x4];                               //0x20
	int Rank;                                        //0x24 (0xAD291C)
	char _0x0028[0x10];                              //0x28
	int Perk;                                        //0x38 (0xAD2930)
	char _0x003C[0x8];                               //0x3C
	int Score;                                       //0x44 (0xAD293C)
	char _0x0048[0x458];                             //0x48
	int Attacking;                                   //0x4A0 (0xAD2D98)
	char _0x04A4[0x4];                               //0x4A4
	int Zooming;                                     //0x4A8 (0xAD2DA0)
	char _0x04AC[0xB8];                              //0x4AC
}ClientInfo_T; //[Addr: 0xAD28F8] [Size: 0x564]

typedef struct
{
	char _0x0000[0x8];                               //0x0
	int Width;                                       //0x8 (0xA40438)
	int Height;                                      //0xC (0xA4043C)
	int FovX;                                        //0x10 (0xA40440)
	int FovY;                                        //0x14 (0xA40444)
	float Origin[3];                                  //0x18 (0xA40448)
	float ViewAngles[3][3];                              //0x24 (0xA40454)
	char _0x0048[0x24];                              //0x48
	float ZoomProgress;                              //0x6C (0xA4049C)
	char _0x0070[0x4ABC];                            //0x70
	float RefViewAngleY;                             //0x4B2C (0xA44F5C)
	float RefViewAngleX;                             //0x4B30 (0xA44F60)
	char _0x4B34[0x34];                              //0x4B34
	float WeaponViewAngleX;                          //0x4B68 (0xA44F98)
	float WeaponViewAngleY;                          //0x4B6C (0xA44F9C)
}RefDef; //[Addr: 0xA40430] [Size: 0x4B70]

typedef struct
{
	float Recoil[3];                                   //0x0 (0x1139E48)
	float Origin[3];                                   //0xC (0x1139E54)
	char _0x0018[0x80];                              //0x18
	float ViewAngleY;                                //0x98 (0x1139EE0)
	float ViewAngleX;                                //0x9C (0x1139EE4)
}viewmatrix_t; //[Addr: 0x1139E48] [Size: 0xA0]

typedef struct
{
	char _0x0000[0x2];                               //0x0
	short Valid;                                     //0x2 (0xADE82A)
	char _0x0004[0x10];                              //0x4
	float Origin[3];                                   //0x14 (0xADE83C)
	float Angles[3];                                   //0x20 (0xADE848)
	char _0x002C[0x3C];                              //0x2C
	int Flags;                                       //0x68 (0xADE890)
	char _0x006C[0xC];                               //0x6C
	float OldOrigin[3];                                //0x78 (0xADE8A0)
	char _0x0084[0x18];                              //0x84
	float OldAngles[3];                                //0x9C (0xADE8C4)
	char _0x00A8[0x28];                              //0xA8
	int ClientNumber;                                   //0xD0 (0xADE8F8)
	short Type;                                      //0xD4 (0xADE8FC)
	char _0x00D6[0x12];                              //0xD6
	float NewOrigin[3];                                //0xE8 (0xADE910)
	char _0x00F4[0x1C];                              //0xF4
	float NewAngles[3];                                //0x110 (0xADE938)
	char _0x011C[0x7C];                              //0x11C
	byte WeaponID;                                   //0x198 (0xADE9C0)
	char _0x0199[0x37];                              //0x199
	int IsAlive;                                     //0x1D0 (0xADE9F8)
	char _0x01D4[0x24];                              //0x1D4
}Entity_T; //[Addr: 0xADE828] [Size: 0x1F8]

typedef struct
{
	int ServerTime;                                  //0x0 (0x9D5220)
	int PlayerState;                                 //0x4 (0x9D5224)
	int StaminaTimer;                                //0x8 (0x9D5228)
	unsigned short PlayerStance;                     //0xC (0x9D522C)
	char _0x000E[0x2];                               //0xE
	int IsIngame;                                    //0x10 (0x9D5230)
	char _0x0014[0x4];                               //0x14
	int iVelocity;                                   //0x18 (0x9D5238)
	float Origin[3];                                   //0x1C (0x9D523C)
	float Velocity[3];                                 //0x28 (0x9D5248)
	char _0x0034[0x2C];                              //0x34
	float RefViewAngleY;                             //0x60 (0x9D5280)
	float RefViewAngleX;                             //0x64 (0x9D5284)
	char _0x0068[0xE8];                              //0x68
	int ClientNumber;                                   //0x150 (0x9D5370)
	char _0x0154[0x4];                               //0x154
	float ViewAngleY;                                //0x158 (0x9D5378)
	float ViewAngleX;                                //0x15C (0x9D537C)
	char _0x0160[0x3C];                              //0x160
	int Health;                                      //0x19C (0x9D53BC)
	char _0x01A0[0x1C];                              //0x1A0
	int MaxEntities;                                 //0x1BC (0x9D53DC)
	char _0x01C0[0x44];                              //0x1C0
	int AdvancedUAV;                                 //0x204 (0x9D5424)
}CG_T; //[Addr: 0x9D5220] [Size: 0x205608]

typedef struct
{
	char _0x0000[0x8];                               //0x0
	int Width;                                       //0x8 (0x9D0CA8)
	int Height;                                      //0xC (0x9D0CAC)
	char _0x0010[0x14];                              //0x10
	char GameType[4];                                //0x24 (0x9D0CC4)
	char _0x0028[0x1C];                              //0x28
	char HostName[64];                               //0x44 (0x9D0CE4)
	char _0x0084[0xC4];                              //0x84
	int MaxClients;                                  //0x148 (0x9D0DE8)
	char _0x014C[0x4];                               //0x14C
	char MapName[64];                                //0x150 (0x9D0DF0)
	char _0x0190[0x43F0];                            //0x190
}CGS_T; //[Addr: 0x9D0CA0] [Size: 0x45C0]

enum entity_type_t
{
	ET_GENERAL			= 0,
	ET_PLAYER           = 1,
	ET_PLAYER_CORPSE    = 2,
	ET_ITEM             = 3,
	ET_EXPLOSIVE        = 4,
	ET_INVISIBLE        = 5,
	ET_SCRIPTMOVER      = 6,
	ET_SOUND_BLEND      = 7,
	ET_FX               = 8,
	ET_LOOP_FX          = 9,
	ET_PRIMARY_LIGHT    = 10,
	ET_TURRET           = 11,
	ET_HELICOPTER       = 12,
	ET_PLANE            = 13,
	ET_VEHICLE          = 14,
	ET_VEHICLE_COLLMAP  = 15,
	ET_VEHICLE_CORPSE   = 16,
	ET_VEHICLE_SPAWNER  = 17
};  


#define FLAGS_CROUCHED 0x0004
#define FLAGS_PRONE	0x0008
#define FLAGS_FIRING	0x0200 


#define REFDEF 0x00A414B0
#define CG 0x009D62A0
#define CGS 0x009D1D20
#define ENTITY 0x00ADF8C0
#define CLIENTINFO 0x00AD3978
#define VIEWMATRIX 0x0113AE9C
#define ISINGAME 0x009D62B0
#define PLAYERMAX 18
#define ENTITIESMAX 2048

#define NORECOIL_ADDRESS 0x572DC9

#define FONT_SMALL_DEV    "fonts/smallDevFont"
#define FONT_BIG_DEV    "fonts/bigDevFont"
#define FONT_CONSOLE    "fonts/consoleFont"
#define FONT_BIG        "fonts/bigFont"
#define FONT_SMALL        "fonts/smallFont"
#define FONT_BOLD        "fonts/boldFont"
#define FONT_NORMAL        "fonts/normalFont"
#define FONT_EXTRA_BIG    "fonts/extraBigFont"
#define FONT_OBJECTIVE    "fonts/objectiveFont" 

typedef float vec_t;
typedef vec_t vec4_t[4];

class CScreenMatrix
{
public:
	char _0x0000[64];
};

char* Bones[20] = {
/*Head*/          "j_helmet"     , "j_head"            , "j_neck" 
/*Arms*/        , "j_shoulder_le", "j_shoulder_ri"  , "j_elbow_le"     , "j_elbow_ri", "j_wrist_le", "j_wrist_ri", "j_gun"
/*Back*/        , "j_mainroot"   , "j_spineupper"   , "j_spinelower" , "j_spine4" 
/*Legs*/        , "j_hip_ri"     , "j_hip_le"       , "j_knee_le"    , "j_knee_ri" , "j_ankle_ri", "j_ankle_le"};

class w2s_t
{
public:
char unknown[0xDC];
};

class trace_t
{
public:
    float Fraction;
	char _0x0004[0x60];
};

//TYPEDEFS
typedef void* ( * tRegisterFont )( char* szName );
typedef int ( * tDrawEngineText )( char* Text, int NumOfChars, void* Font, float X, float Y, float scaleX, float scaleY, float unk1, float* Color, int unk2 );
typedef void (__cdecl* tUiShowList) (int a1, int a2, int a3, int a4);
typedef int(*R_RegisterShader)(char *ShaderName);
typedef CScreenMatrix* ( __cdecl* tGetScreenMatrix )();
typedef int ( __cdecl* tDrawRotatedPic )( CScreenMatrix* ptr, float x, float y, float w, float h, float angle, float* color, int shader);
typedef void ( __cdecl *CG_Trace_t)( trace_t *tr,float start[3],float NullVec[3],float endpos[3],int Skip, int mask);
typedef int(*R_RegisterTag)(char *szName);
typedef bool (*World2Screen_)(int unknown, w2s_t* w2scalc, float vPoint[3], float Screen[2]);
typedef w2s_t *(*Getw2s_t)();
typedef int(*CG_StrWidth)(char *szText,int a2,void *lpFont,int a4);

vec4_t WHITE = {1.0f, 1.0f, 1.0f, 1.0f};
vec4_t BLACK = {0   , 0   , 0   , 1.0f};
vec4_t RED   = {1.0f, 0   , 0   , 1.0f};
vec4_t GREEN = {0   , 1.0f, 0   , 1.0f};
vec4_t BLUE  = {0   , 0   , 1.0f, 1.0f};
int shader;

tRegisterFont RegisterFont_ = ( tRegisterFont )0x53C340;
tDrawEngineText DrawEngineText_ = ( tDrawEngineText )0x4635C0;
R_RegisterShader RegisterShader_ = ( R_RegisterShader )0x456100;
tGetScreenMatrix GetScreenMatrix = ( tGetScreenMatrix )0x5561C0;
tDrawRotatedPic DrawRotatedPic_ = ( tDrawRotatedPic )0x4E55C0;
CG_Trace_t CG_Trace=(CG_Trace_t)0x4A82D0;
R_RegisterTag GetTagByName = (R_RegisterTag)0x00488EF0;
World2Screen_ w2s = (World2Screen_)0x546D70;
Getw2s_t GetCalc = (Getw2s_t)0x5561C0;
CG_StrWidth tStrWidth = (CG_StrWidth)0x4043F0;


RefDef_T* RefDef;
CG_T* Cg;
ClientInfo_T* Clients[PLAYERMAX];
Entity_T* Entities[ENTITIESMAX];
CGS_T* Cgs;
static bool bInitialize;
int* IsInGame;
void pFont;
int MyTeam;

tUiShowList UiShowList = NULL;

DWORD OFFuiShowList = 0x65E1D0;
DWORD OFFDraw2D = 0x471740;
DWORD OFFSGetTagPos = 0x58B440; 


bool GetTagPos(Entity_T *pEnt,char *szTag,float flOut[3])
{
	WORD wTag = GetTagByName(szTag);
	if(!wTag) 
		return false;

	DWORD dwCall=OFFSGetTagPos;
	__asm
	{
		MOV ESI,pEnt;
		MOVZX EDI,wTag;
		PUSH flOut;
		CALL dwCall;
		ADD ESP,0x4
	}
	return true;
}

bool bCompare(const BYTE* pData, const BYTE* bMask, const char* szMask)
{
        for(;*szMask;++szMask,++pData,++bMask)
                if(*szMask=='x' && *pData!=*bMask)
                        return 0;
        return (*szMask) == NULL;
}

DWORD FindPattern(DWORD dwAddress,DWORD dwLen,BYTE *bMask,char * szMask)
{
        for(DWORD i=0; i<dwLen; i++)
                if (bCompare((BYTE*)(dwAddress+i),bMask,szMask))
                        return (DWORD)(dwAddress+i);
        return 0;
}

void MakeJMP( BYTE *pAddress, DWORD dwJumpTo, DWORD dwLen )
{
    DWORD dwOldProtect, dwBkup, dwRelAddr;
    
    VirtualProtect(pAddress, dwLen, PAGE_EXECUTE_READWRITE, &dwOldProtect);
    dwRelAddr = (DWORD) (dwJumpTo - (DWORD) pAddress) - 5;
    *pAddress = 0xE9;
    
    *((DWORD *)(pAddress + 0x1)) = dwRelAddr;
    for(DWORD x = 0x5; x < dwLen; x++) *(pAddress + x) = 0x90;
    VirtualProtect(pAddress, dwLen, dwOldProtect, &dwBkup);
    
    return;
}

void *DetourFunction (BYTE *src, const BYTE *dst, const int len)
{
        BYTE *jmp = (BYTE*)malloc(len+5);
        DWORD dwBack;

        VirtualProtect(src, len, PAGE_EXECUTE_READWRITE, &dwBack);
        memcpy(jmp, src, len);
        jmp += len;
        jmp[0] = 0xE9;
        *(DWORD*)(jmp+1) = (DWORD)(src+len - jmp) - 5;
        src[0] = 0xE9;
        *(DWORD*)(src+1) = (DWORD)(dst - src) - 5;
        for (int i=5; i<len; i++)  
			src[i]=0x90;
        VirtualProtect(src, len, dwBack, &dwBack);
        return (jmp-len);
}
DllMain.cpp
Code:
#include "Structs.h"

int StrWidth(char *szString,...)
{
	char szBuf[300] = "";
	va_list valist;

	va_start(valist,szString);
	_vsnprintf_s(szBuf,sizeof(szBuf),szString,valist);
	va_end(valist);

	return tStrWidth(szBuf,0,pFont,0);
}
void DrawText(bool center, float x, float y, void* pFont, float* color, const char *Text, ... )
{
	char buf[300] = "";
	va_list va_alist;
	va_start( va_alist, Text );
	vsnprintf( buf, sizeof( buf ), Text, va_alist );
	va_end( va_alist );
	if(!center)
		DrawEngineText_( buf, 0x7FFFFFFF, pFont, x, y, 1.0f, 1.0f, 0.0f, color, 0 );
	else
		DrawEngineText_( buf, 0x7FFFFFFF, pFont, x - StrWidth(buf)/2, y, 1.0f, 1.0f, 0.0f, color, 0 );
}

int DrawLine1(int x1, int y1, int x2, int y2, float* color, int shader){
	CScreenMatrix* ptr = GetScreenMatrix();

	float x,y,angle,l1,l2,h1;
    h1=y2-y1;
    l1=x2-x1;
    l2=sqrt(l1 * l1 + h1 * h1);
    x=x1+((l1-l2)/2);
    y=y1+(h1/2);
    angle=atan(h1/l1)* (180 / 3.14159265358979323846) ;
    return DrawRotatedPic_(ptr,x,y,l2,1.5,angle,color, shader);
}

int DrawLine2(int x1, int y1, int x2, int y2, float* color, int shader){
	CScreenMatrix* ptr = GetScreenMatrix();

	float x,y,angle,l1,l2,h1;
    h1=y2-y1;
    l1=x2-x1;
    l2=sqrt(l1 * l1 + h1 * h1);
    x=x1+((l1-l2)/2);
    y=y1+(h1/2);
    angle=atan(h1/l1)* (180 / 3.14159265358979323846) ;
    return DrawRotatedPic_(ptr,x,y,l2,1,angle,color, shader);
}


void MakeESPLine(float center[3], float x1, float y1, float z1, float x2, float y2, float z2, vec4_t color)
{
	float pointPos1[3] = {center[0] + x1, center[1] + y1, center[2] + z1};
	float pointPos2[3] = {center[0] + x2, center[1] + y2, center[2] + z2};
	float xy1[2], xy2[2];
	w2s_t * calc;
	calc = GetCalc();
	if (w2s(0, calc,pointPos1, xy1) && w2s(0,calc,pointPos2, xy2))
		DrawLine2(xy1[0], xy1[1], xy2[0], xy2[1], color, shader);
}

void Make3DBox(float center[3], float w, float h, vec4_t color)
{
	//bottom
	MakeESPLine(center, -w, -w, 0, w, -w, 0, color);
	MakeESPLine(center, -w, -w, 0, -w, w, 0, color);
	MakeESPLine(center, w, w, 0, w, -w, 0, color);
	MakeESPLine(center, w, w, 0, -w, w, 0, color);

	//middle
	MakeESPLine(center, -w, -w, 0, -w, -w, h, color);
	MakeESPLine(center, -w, w, 0, -w, w, h, color);
	MakeESPLine(center, w, -w, 0, w, -w, h, color);
	MakeESPLine(center, w, w, 0, w, w, h, color);

	//top
	MakeESPLine(center, -w, -w, h, w, -w, h, color);
	MakeESPLine(center, -w, -w, h, -w, w, h, color);
	MakeESPLine(center, w, w, h, w, -w, h, color);
	MakeESPLine(center, w, w, h, -w, w, h, color);
}

void ReadGame(){
	IsInGame = (int*)ISINGAME;
	RefDef = (RefDef_T*)REFDEF;
	Cg = (CG_T*)CG;
	Cgs = (CGS_T*)CGS;
	for(int i = 0; i < ENTITIESMAX; i++)
		Entities[i] = (Entity_T*)(ENTITY + ((int)0x1F8 * i));
	for(int i = 0; i < PLAYERMAX; i++)
		Clients[i] = (ClientInfo_T*)(CLIENTINFO + ((int)0x564 * i));

	for(int i = 0; i < PLAYERMAX; i++)
		{
			if (Cg->ClientNumber == Entities[i]->ClientNumber) {
				MyTeam = Clients[i]->Team;
				break;
			}
		}
}

#define MenuItems 5
int MenuSelectedIndex = 0;
bool Toogles[MenuItems] = { true, true, true, true, true};
char* Labels[MenuItems] = {"Bones", "Names", "Distance","3D Boxes", "No-Recoil"};
bool IsMenuOn = true;
int MenuOffset[2] = {30,125};
void Toggles(){
	if((GetAsyncKeyState(VK_INSERT) & 0x1))
		IsMenuOn = !IsMenuOn;
	if(IsMenuOn){
		if((GetAsyncKeyState(VK_DOWN) & 0x1) && MenuSelectedIndex < MenuItems-1)
			MenuSelectedIndex++;
		if((GetAsyncKeyState(VK_UP) & 0x1) && MenuSelectedIndex > 0)
			MenuSelectedIndex--;
		if((GetAsyncKeyState(VK_RIGHT) & 0x1) || (GetAsyncKeyState(VK_LEFT) & 0x1))
			Toogles[MenuSelectedIndex] = !Toogles[MenuSelectedIndex];
	}
}

float BackColor[4] = {0,0,0,0.6f};
void DrawMenu(){
	if(IsMenuOn){
		CScreenMatrix* ptr = GetScreenMatrix();
		DrawRotatedPic_(ptr, MenuOffset[0]-25, MenuOffset[1]-30, 165, MenuItems * 20, 0, BackColor, shader);
		DrawText(false,(float)MenuOffset[0] - 20, (float)MenuOffset[1] -15, pFont, RED, "Press INSERT to Close");
		for(int i = 0; i< MenuItems; i++){
			if(i == MenuSelectedIndex){
				DrawText(false,(float)MenuOffset[0], (float)MenuOffset[1] + i*15, pFont, GREEN, "%s", Labels[i]);
				DrawText(false,(float)MenuOffset[0] + 100, (float)MenuOffset[1] + i*15, pFont, GREEN, "%d", Toogles[i]);
			}
			else{
				DrawText(false,(float)MenuOffset[0], (float)MenuOffset[1] + i*15, pFont, WHITE, "%s", Labels[i]);
				DrawText(false,(float)MenuOffset[0] + 100, (float)MenuOffset[1] + i*15, pFont, WHITE, "%d", Toogles[i]);
			}
			
		}
	}
}

bool CanBeKilled(float Point[3])
{
	trace_t trace;
	float nullvec[3] = {0.f, 0.f, 0.f};
	CG_Trace(&trace,RefDef->Origin, Point, nullvec,Cg->ClientNumber, 0x803003);
	return (trace.Fraction>=1.0f);
}

float PegarDistancia( float A[3], float B[3] )
{
	float dx = A[0] - B[0];
	float dy = A[1] - B[1];
	float dz = A[2] - B[2];

	return (float)sqrt( ( dx * dx ) + ( dy * dy ) + ( dz * dz ) ) * 0.03048f;
}
float GetBoxWidth(Entity_T *ent){
	if(ent->Flags & FLAGS_PRONE)
		return 60;
	else return 17;
}
float GetBoxHeight(Entity_T *ent){
	if(ent->Flags & FLAGS_PRONE)
		return 17;
	else if(ent->Flags & FLAGS_CROUCHED)
		return 40;
	else return 60;
}

float BonePos[20][3];
float BonePos2[20][3];
void ESP(){
	float Screen[2];
	float Origin[3];
	char* cor = "^1";
	w2s_t * calc;
	for(int i = 0; i < ENTITIESMAX; i++)
	{
		if (Entities[i]->Type != ET_PLAYER)
			continue;
		if ((i < PLAYERMAX) && (Entities[i]->Type == ET_PLAYER) && Entities[i]->Valid && (Entities[i]->IsAlive & 1) && !(Cg->ClientNumber == Entities[i]->ClientNumber))
		{
			calc = GetCalc();
			cor = "^1";
			for(int j = 0;j < 20;j++){
				GetTagPos(Entities[i], Bones[j], BonePos[j]);	
				if (w2s(0, calc, BonePos[j], Screen))
				{
					if(j==0 && CanBeKilled(Entities[i]->Origin)){
						cor = "^3";
					}
					if (((Clients[i]->Team == 1) || (Clients[i]->Team == 2)) && (Clients[i]->Team == MyTeam)){
						if(Toogles[0])DrawText(false,Screen[0], Screen[1],pFont, RED, "^2.");
						if(j == 0){
							if(Toogles[1])
								DrawText(true,Screen[0], Screen[1]-10,pFont, WHITE, "^7[^2%s^7]", Clients[i]->Name);
							if(Toogles[2])
								DrawText(true,Screen[0], Screen[1]-20,pFont, RED, "^7[^2%.2f^7]", PegarDistancia(RefDef->Origin, Entities[i]->Origin));
						}
					}
					else{
						if(Toogles[0])DrawText(false,Screen[0], Screen[1],pFont, RED, "%s.", cor);
						if(j == 0){
							if(Toogles[1])
								DrawText(true,Screen[0], Screen[1]-10,pFont, WHITE, "^7[%s%s^7]",cor, Clients[i]->Name);
							if(Toogles[2])
								DrawText(true,Screen[0], Screen[1]-20,pFont, RED, "^7[^2%.2f^7]", PegarDistancia(RefDef->Origin, Entities[i]->Origin));
							if(Toogles[3])
								 Make3DBox(BonePos[j], GetBoxWidth(Entities[i]), -GetBoxHeight(Entities[i]), RED);
						}
					}
				}
			}
		}	
	}
}

void Crosshair(){
	DrawLine1(RefDef->Width/2 - 20, RefDef->Height/2, RefDef->Width/2 - 10, RefDef->Height/2, RED, shader);
	DrawLine1(RefDef->Width/2 + 20, RefDef->Height/2, RefDef->Width/2 + 10, RefDef->Height/2, RED, shader);
	DrawLine1(RefDef->Width/2, RefDef->Height/2 - 20, RefDef->Width/2, RefDef->Height/2 - 10, RED, shader);
	DrawLine1(RefDef->Width/2, RefDef->Height/2 + 20, RefDef->Width/2, RefDef->Height/2 + 10, RED, shader);
}

void NoRecoilOn(){
	unsigned long *fireRecoil = (unsigned long*)NORECOIL_ADDRESS;
	unsigned char patch[5] = {0x90,0x90,0x90,0x90,0x90};
	unsigned long orig1;
	VirtualProtect((void*)fireRecoil, sizeof(patch), PAGE_EXECUTE_READWRITE, &orig1);
		memcpy((void*)fireRecoil, &patch, sizeof(patch));
	VirtualProtect((void*)fireRecoil, sizeof(patch), orig1, &orig1);	
}

void NoRecoilOff(){
	unsigned long *fireRecoil = (unsigned long*)NORECOIL_ADDRESS;
	unsigned char patch[5] = {0xE8, 0xE2, 0x61, 0xF2, 0xFF};
	unsigned long orig1;
	VirtualProtect((void*)fireRecoil, sizeof(patch), PAGE_EXECUTE_READWRITE, &orig1);
		memcpy((void*)fireRecoil, &patch, sizeof(patch));
	VirtualProtect((void*)fireRecoil, sizeof(patch), orig1, &orig1);	
}

void Func()
{
	if( !bInitialize )
    {
        pFont = RegisterFont_( FONT_SMALL_DEV );
		shader = RegisterShader_("white");
        bInitialize = true;
    }
	ReadGame();
	Toggles();
	DrawMenu();
	if(*IsInGame != 0){
		if(Toogles[0] || Toogles[1] || Toogles[2] || Toogles[3])ESP();
		Crosshair();
		if(Toogles[4])NoRecoilOn();
		else NoRecoilOff();
	}
}

void UI_ShowList(int a1, int a2, int a3, int a4)
{
	__asm PUSHAD;
	Func();
	__asm POPAD;
	UiShowList(a1, a2,a3,a4);
}

BOOL WINAPI DllMain( HMODULE hMod, DWORD dwReason, LPVOID lpReserved )
{
    if( dwReason == DLL_PROCESS_ATTACH )
    {
        UiShowList = (tUiShowList) DetourFunction( (PBYTE)OFFuiShowList, (PBYTE)&UI_ShowList ,5);
    }

    else if( dwReason == DLL_PROCESS_DETACH )
    {
       //Nothing to do here?
    }

    return TRUE;
}
#1 · edited 14y ago · 14y ago
HU
hunt-me
Is this for IW5M or MW3 Steam?
#2 · 14y ago
Horror
Horror
It is for Anything, and Everything, if u know how to use it
#3 · 14y ago
rawr im a tiger
rawr im a tiger
Thanks @General Shepherd , I know it's hard to release an entire source.
#4 · 14y ago
Eidolon
Eidolon
yaaaaay!!!! Lets all rage and make ESPs so the forum will be 30 pages long esp just like hapenned before when jorndel released the trainerclass!!
DaFUQ man!? This is like an invitation for every noob, every user and even viewer from MPGH to all start making ESPs. Its messy like hell luckily but some still copypaste and will see it works...
#5 · 14y ago
maurya
maurya
Much won't benefit from it if they don't take care to fix the bugs out of it! btw shepherd why did you release it? Any intentions?
#6 · 14y ago
Eidolon
Eidolon
Quote Originally Posted by maurya View Post
Much won't benefit from it if they don't take care to fix the bugs out of it! btw shepherd why did you release it? Any intentions?
Read his sig
Quote Originally Posted by General Shepherd's signature
Do you Like My Post? I LIKE REP
#7 · 14y ago
maurya
maurya
Just now I added rep for him.

@Anonymouss: You are bit cynical about releasing source? Just asking! Can I know the reason?
#8 · 14y ago
MarkHC
MarkHC
Quote Originally Posted by Anonymouss View Post
DaFUQ man!? This is like an invitation for every noob, every user and even viewer from MPGH to all start making ESPs. Its messy like hell luckily but some still copypaste and will see it works...
1- BO2 is almost out.. this section will be dead when it does...
2- Have you tried to compile that code? It won't happen if you don't know what you're doing...
3- This will help some people that really want to code something without copypasting..

Quote Originally Posted by Anonymouss View Post
Read his sig
The cool part is that my rep never goes up and I saw like. 4 or 5 people saying "+Rep" on my posts
#9 · 14y ago
maurya
maurya
Ya! Shepherd is right! Some people might try to get idea from this code! It's upto them. The resource is here!

@shepherd: Why not rep boost(like nuke boosting)?
#10 · 14y ago
Eidolon
Eidolon
Quote Originally Posted by General Shepherd View Post
1- BO2 is almost out.. this section will be dead when it does...
2- Have you tried to compile that code? It won't happen if you don't know what you're doing...
3- This will help some people that really want to code something without copypasting..
1- Youre right, we'll happily continue hacking BOII
2- No since Im no copypaster
3- Thats true but I recommend them not to use the sources on MPGH [since I did and I simply couldnt understand, went to an outside link and understood it immediately], however, good luck to the ones who wanna make something without copypasting


---------- Post added at 08:15 PM ---------- Previous post was at 08:10 PM ----------

Quote Originally Posted by maurya View Post
Just now I added rep for him.

@Anonymouss: You are bit cynical about releasing source? Just asking! Can I know the reason?
Because nobody has the brains to do things themselves. Posting snippets is great ofcourse but releasing complete projects is asking for problems [either people can make stuff without knowing what actually happens or it gets patched since everyone has control of it]. Im someone who works like 10 hours a day on projects and I see the fun in it and I learn how stuff works and shit. I hate people who simply copypaste because it simply makes a mockery of your work...
#11 · 14y ago
maurya
maurya
@Anonymouss: Valid point!

Releasing the full source has both pros and cons! But let's hope that it would kindle some hope to some people who wish to create their own hacks in future.
#12 · 14y ago
mememine
mememine
seems i am that noob..

but ,
thanks, it is really useful
#13 · 14y ago
rawr im a tiger
rawr im a tiger
Quote Originally Posted by Anonymouss View Post

Because nobody has the brains to do things themselves. Posting snippets is great ofcourse but releasing complete projects is asking for problems [either people can make stuff without knowing what actually happens or it gets patched since everyone has control of it]. Im someone who works like 10 hours a day on projects and I see the fun in it and I learn how stuff works and shit. I hate people who simply copypaste because it simply makes a mockery of your work...
There's no point in reinventing the wheel.
#14 · 14y ago
kb2010
kb2010
lol....such a noob, i dont know nothing...

give me a hint man...
#15 · 13y ago
Posts 1–15 of 32 · Page 1 of 3

Post a Reply

Similar Threads

  • Full CA Source Code...By R45H1D in Combat Arms Hack Coding / Programming / Source Code
    65Last post 16y ago
  • [SOLVED] External Esp source code editing questionBy Demented420 in Call of Duty Modern Warfare 2 Help
    6Last post 16y ago
  • need a full hack source codeBy Dead(H)ell in CrossFire Hack Coding / Programming / Source Code
    7Last post 14y ago
  • PLZ!FULL WARROCK SOURCE CODEBy DReS in C++/C Programming
    3Last post 16y ago

Tags for this Thread

None