No grenade damage:
Code:
#define grenades ((i==6)||(i==7)||(i==8)||(i==64)||(i==100)||(i==126)||(i==135)||(i==209)||(i==210)||(i==240)||(i==263)||(i==272)||(i==338)||(i==382)||(i==383)||(i==384))
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL && (grenades))
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0x7F8) = 0.0f; //String is "AmmoDamage"
No Reload (Without knife bug):
Code:
Code:
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL)
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0x2424) = 100.0f; //String is "ReloadAnimRatio"
One hit kill (Causes Client error in TD/MM/HM):
Code:
Code:
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL)
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0x7F8) = 99999.0f //use 116.0 in TD/MM/HM (not OHK) , String is "AmmoDamage"
No weapon weight:
Code:
Code:
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL)
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0x21DC) = 0.0f; //String is "MoveSpeedPenalty"
Shoot throgh wall:
Code:
Code:
if (*(DWORD*)((CShellBase)+WallMgr) != NULL)
{
*(bool*)((*(DWORD*)((CShellBase)+WallMgr))+(i*0x474)+0x468) = true; //String is "EdgeShotEnabled"
*(bool*)((*(DWORD*)((CShellBase)+WallMgr))+(i*0x474)+0x46C) = true; //String is "WallShotEnabled"
*(bool*)((*(DWORD*)((CShellBase)+WallMgr))+(i*0x474)+0x470) = true; //String is "PerfectWallShotEnabled"
No weapon change delay::
Code:
Code:
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL)
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0x2428) = 100.0f; //String is "ChangeWeaponAnimRatio"
Knife tele kill (causes client error if used 5 times
Code:
#define knives ((i==5) || (i==74) || (i==269) || (i==270) || (i==271) || (i== 372))
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL && (knives))
{
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0x7EC) = 20000.0f; //Visual , String is "Range"
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0xA20) = 20000.0f; //Not visual , String is "KnifeNormalRange"
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0xA24) = 20000.0f; //same as above "KnifeNormalRange" has two addys
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0xA2C) = 20000.0f //Not visual , String is "KnifeBigshotRange". this one should affect knife right click but i didn't test this one.
}
Max weapon range::
Code:
Code:
#define knives ((i==5) || (i==74) || (i==269) || (i==270) || (i==271) || (i== 372))
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL && (!knives))
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0x7EC) = 20000.0f; //String is "Range"
Fire types:
Code:
Code:
enum FireType
{
SingleFire =1;
RepeatFire = 2;
ShrapnelFire = 4;
DelayFire = 8;
AlternateFire = 16;
}
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i)) ) != NULL)
*(DWORD*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr)) +(4*i))) + 0xA38) = Something ;//look at strings in the enum
thank's to :
- ALL Member progamercity.net