Hey, I've decided I really can not be bothered to keep up with WOT, and it's fucked up way of updating. (have to reinstall each fucking time).
So i've decided to give you users, a simple headstart in hacking this game.
Chams (Tank):
Code:
if(bHack[CHAMS] && Stride == 36) //Tank Chams
Chams (Flag):
Code:
if(bHack[FCHAMS] && Stride == 12) //Flag Chams
DIP Hook:
Code:
DIP_HOOK = VTable[82] + 0x2D;
DIP_RET = DIP_HOOK + 0x07;
Endscene Hook:
Code:
ENDSCENE_HOOK = VTable[42] + 0x2A;
ENDSCENE_RET = ENDSCENE_RET + 0x6;
If you use Stride 8, you get wallhack!!! (I think
)
You do NOT need a Midfunction hook for hooking Reset!!
(I think the same applies to DIP but I did DIP just incase).
If you need detours (which you WILL not need but for you noobs)
Code:
#define SIZEOF_JMP_REL 5
DWORD Detours::DetourCreateE9( DWORD SrcVA, DWORD DstVA, DWORD Size )
{
DWORD DetourVA, dwProtect, i;
if ( SrcVA && DstVA && Size >= SIZEOF_JMP_REL )
{
DetourVA = (DWORD) VirtualAlloc( NULL, Size + SIZEOF_JMP_REL, MEM_COMMIT, PAGE_EXECUTE_READWRITE );
if ( DetourVA && VirtualProtect( (VOID*)SrcVA, Size, PAGE_EXECUTE_READWRITE, &dwProtect ) )
{
for ( i=0; i < Size; i++ ) {
*(BYTE*)( DetourVA + i ) = *(BYTE*)( SrcVA + i );
}
*(BYTE*)( DetourVA + Size + 0 ) = 0xE9;
*(DWORD*)( DetourVA + Size + 1 ) = ( SrcVA - DetourVA - SIZEOF_JMP_REL );
*(BYTE*)( SrcVA + 0 ) = 0xE9;
*(DWORD*)( SrcVA + 1 ) = ( DstVA - SrcVA - SIZEOF_JMP_REL );
VirtualProtect( (VOID*)SrcVA, Size, dwProtect, &dwProtect );
VirtualProtect( (VOID*)DetourVA, Size + SIZEOF_JMP_REL, PAGE_EXECUTE_READ, &dwProtect );
return DetourVA;
}
}
return (0);
}
Remember, if you want to use these codes, please credit + rep + thank me!!.