Bypass 28_4

Posts 16–24 of 24 · Page 2 of 2
Quote Originally Posted by emiedumalasa View Post
Tested in crossfire ph, no disconnected from server received, however it gives client error 28_3, but I overwrite the client error 28_3 in the other way and combine this method of yours, and still getting client error 28_4, which means this method of bypass for client error 28_4 is not working, and besides this method is same like what Biesi posted and the others.
memcpy((void*)Weapons[i], (PVOID)Weapon, 0x1400) change it, i use 0xC3C0.
anyway, you'll need the DC bypass.
Quote Originally Posted by yaago View Post
memcpy((void*)Weapons[i], (PVOID)Weapon, 0x1400) change it, i use 0xC3C0.
anyway, you'll need the DC bypass.
Yes, this method works but need some adjusts, and need also the bypass to d/c, thanks for the explanation.
@yaago
Quote Originally Posted by CaiozinhoFC1 View Post
já tem publicado, procura direito no google
Procurei e unica referencia que achei foi no ra... league ( se é que entende)
Pode me dar uma luz?
Here's the working one, tested and working fine, around more or less 35 minutes ingame, no disconnected from server and no more client errors received.

Code:
#define dwBypassWeaponHack 0x000000; //need to update it
#define ADDR_WeaponMgrPointer 0x000000; //need to update it

typedef struct _WEAPON
{
    unsigned char Data[0xC3C0];
} WEAPON, *PWEAPON;

PWEAPON pOldWeapons[1600];

PWEAPON GetWeaponByIndex(int index)
{
    return pOldWeapons[index];
}

void CreateBackup(DWORD dwCShell, DWORD dwWeaponMgr)
{
    DWORD pWeaponMgr = *(DWORD*)(dwCShell + dwWeaponMgr );
    for(int i = 0; i < 1600; i++)
    {
        DWORD dwWeapon = *(DWORD*)(pWeaponMgr + (4 * i));
        if (dwWeapon)
        {
            pOldWeapons[i] = new WEAPON;
            memcpy(pOldWeapons[i], (void*)(dwWeapon), sizeof(WEAPON));
        }
    }
}

how to use:
void clientkiller()
{
CreateBackup(CShellModule, ADDR_WeaponMgrPointer)
DWORD dwOldProtect;
VirtualProtect((void*)(dwBypassWeaponHack + 0x1), sizeof(DWORD), PAGE_EXECUTE_READWRITE, &dwOldProtect);
*(DWORD*)(dwBypassWeaponHack + 0x1) = (DWORD)GetWeaponByIndex - dwBypassWeaponHack - 5;
VirtualProtect((void*)(dwBypassWeaponHack + 0x1), sizeof(DWORD), dwOldProtect, NULL);
}
credits: @Biesi - for the source. @yaago - for the latest offset addy @HardHaxing - for starting/posting the thread of 28_4, so that it gives me the courage to conduct a test on the said client error.
Quote Originally Posted by emiedumalasa View Post
Here's the working one, tested and working fine, around more or less 35 minutes ingame, no disconnected from server and no more client errors received.

Code:
#define dwBypassWeaponHack 0x000000; //need to update it
#define ADDR_WeaponMgrPointer 0x000000; //need to update it

typedef struct _WEAPON
{
    unsigned char Data[0xC3C0];
} WEAPON, *PWEAPON;

PWEAPON pOldWeapons[1600];

PWEAPON GetWeaponByIndex(int index)
{
    return pOldWeapons[index];
}

void CreateBackup(DWORD dwCShell, DWORD dwWeaponMgr)
{
    DWORD pWeaponMgr = *(DWORD*)(dwCShell + dwWeaponMgr );
    for(int i = 0; i < 1600; i++)
    {
        DWORD dwWeapon = *(DWORD*)(pWeaponMgr + (4 * i));
        if (dwWeapon)
        {
            pOldWeapons[i] = new WEAPON;
            memcpy(pOldWeapons[i], (void*)(dwWeapon), sizeof(WEAPON));
        }
    }
}

how to use:
void clientkiller()
{
CreateBackup(CShellModule, ADDR_WeaponMgrPointer)
DWORD dwOldProtect;
VirtualProtect((void*)(dwBypassWeaponHack + 0x1), sizeof(DWORD), PAGE_EXECUTE_READWRITE, &dwOldProtect);
*(DWORD*)(dwBypassWeaponHack + 0x1) = (DWORD)GetWeaponByIndex - dwBypassWeaponHack - 5;
VirtualProtect((void*)(dwBypassWeaponHack + 0x1), sizeof(DWORD), dwOldProtect, NULL);
}
credits: @Biesi - for the source. @yaago - for the latest offset addy @HardHaxing - for starting/posting the thread of 28_4, so that it gives me the courage to conduct a test on the said client error.
working fine, but generates disconnected from server, any solution @emiedumalasa
Quote Originally Posted by HardHaxing View Post
working fine, but generates disconnected from server, any solution @emiedumalasa
make the weapon functions as auto on.

memset((PBYTE)(CShell+CallDumped), NULL, sizeof(CShell+CallDumped));

CallDumped is the address of 28_3?
Quote Originally Posted by codex1992 View Post
memset((PBYTE)(CShell+CallDumped), NULL, sizeof(CShell+CallDumped));

CallDumped is the address of 28_3?
Yes
/msg2short
CFBR for me, even in auto on it still gives DC.
Posts 16–24 of 24 · Page 2 of 2

Post a Reply

Similar Threads

Talk with us