SF 1 SEA - Weapon data offset / Quick weapon switch item

Discussion in 'C and C++' started by FallBright, Apr 9, 2017.

  1. Another tut's on how to find WeaponOffset, Quick_Item& function to use it


    Weapon Item :
    Code:
    ___:008AE6B3                 jnz     loc_8AE869
    ___:008AE6B9                 mov     ecx, dword_E329FC
    ___:008AE6BF                 sub     esp, 18h
    ___:008AE6C2                 mov     [ebp+arg_4], esp
    ___:008AE6C5                 mov     eax, [ecx+7F5Ch]
    ___:008AE6CB                 cmp     [eax+ecx+0E4D0h], bl
    ___:008AE6D2                 mov     ecx, esp
    ___:008AE6D4                 jz      short loc_8AE6E9
    ___:008AE6D6                 push    offset aFastappear ; "FastAppear"
    ___:008AE6DB                 call    sub_5B0CC0
    ___:008AE6E0                 mov     [ebp+var_4], 0
    ___:008AE6E7                 jmp     short loc_8AE6FA
    ___:008AE6E9 ; ---------------------------------------------------------------------------
    let me explain it :

    ecx = GameBase :
    eax = Player_Index :
    and finally
    Quick weapon switch item :
    which mean :
    Code:
    Player_Index + GameBase + Quick_Offset;

    in C++ :

    Code:
    if(Weapon.FastAppear)
        {
            int MyIndex;
            DWORD dw_GameBase = *(PDWORD)0xE329FC;
            if(dw_GameBase)
            {
                MyIndex = (*(PBYTE)(dw_GameBase + 0x7F5C));
                *(PDWORD)(dw_GameBase + MyIndex + 0xE4D0) = 1;
            }
        }




    Weapon Data :
    another tut for Weapon Ammo & rapid fire etc...

    Weapon Offset is :
    Weapon_Offset is near from "FastAppear"


    Unlimited ammo :
    Rapid fire - not tested:
    in C++ :
    Code:
    if(Weapon.Hack)
        {
            DWORD dw_GameBase = *(PDWORD)0xE329FC;
            if(dw_GameBase)
            {
                DWORD Weapon_PTR = *(PDWORD)(dw_GameBase + 0x10660);
                if(Weapon_PTR)
                {
                *(PDWORD)(Weapon_PTR + 0x134) = 59; // Ammo
                *(PDWORD)(Weapon_PTR + 0x2B0) = 10001; // RapidFire
                }
            }
        }
    good luck boys. [​IMG]

    Credits: C4SP3R
     

Share This Page