Results 1 to 3 of 3
  1. #1
    M4L1F1C's Avatar
    Join Date
    Dec 2015
    Gender
    male
    Posts
    15
    Reputation
    10
    Thanks
    4
    My Mood
    Amused

    Combat Arms Unified - Classes & Function (June 2016)

    I had this laying around, it's the best way to get SFXMgr pointer.
    Addresses are up2date.

    These are the current classes:
    Code:
    class cPlayerInfo
    {
    public:
     __int32 Index; //0x0000 
     union
     {
      cObject* pObject; //0x0004 
      int *Object; //0x0004 
     };
     unsigned char bIsDead; //0x0008 
     char pad_0x0009[0x3]; //0x0009
     __int32 TeamID; //0x000C 
     char pad_0x0010[0x8]; //0x0010
     __int32 ClientID; //0x0018 
     char pad_0x001C[0xC]; //0x001C
     char cName[16]; //0x0028 
     char pad_0x0038[0x8]; //0x0038
     __int32 Kills; //0x0040 
     __int32 Deaths; //0x0044 
     __int32 KillCombo; //0x0048 
     __int32 TotalDeaths; //0x004C 
     __int32 TotalKills; //0x0050 
     char pad_0x0054[0x4]; //0x0054
     __int32 Suicides; //0x0058 
     __int32 HeadShots; //0x005C 
     char pad_0x0060[0x174]; //0x0060
     __int32 ExpReceived; //0x01D4 
     __int32 GPReceived; //0x01D8 
     char pad_0x01DC[0x84]; //0x01DC
     __int32 RankID; //0x0260 
     char pad_0x0264[0x70]; //0x0264
     __int32 CountryID; //0x02D4 
     char pad_0x02D8[0x30]; //0x02D8
     __int32 KillAssists; //0x0308 
     char pad_0x030C[0x48]; //0x030C
     cPlayerInfo* pPlayerPrev; //0x0354 
     cPlayerInfo* pPlayerNext; //0x0358 
     char pad_0x035C[0x2CE4]; //0x035C
    
    };//Size=0x3040
    
    class cCharacterFX
    {
    public:
     char pad_0x0000[0x4]; //0x0000
     float fTick; //0x0004 
     char pad_0x0008[0x8]; //0x0008
     union
     {
      cObject *pObject; //0x0010
      int *Object;      //0x0010
     };
     char pad_0x0014[0x2C]; //0x0014
     __int32 isPlayer; //0x0040 
     char pad_0x0044[0x34]; //0x0044
     BYTE spacer_Unknown00; //0x0078 
     char pad_0x0079[0x4DF]; //0x0079
     unsigned char spacer_Unknown01; //0x0558 
     unsigned char bIsDead; //0x0559 
     bool bSpawnShield; //0x055A 
     char pad_0x055B[0x9]; //0x055B
     union
     {
      cHitbox *pHitbox; //0x0564
      int *Hitbox;      //0x0564
     };
     char pad_0x0568[0x64]; //0x0568
     WORD Health; //0x05CC 
     WORD Armor; //0x05CE 
     char pad_0x05D0[0x2]; //0x05D0
     unsigned char spacer_Unknown02; //0x05D2 
     unsigned char spacer_Unknown03; //0x05D3 
     __int32 Index; //0x05D4 
     char pad_0x05D8[0x6AA]; //0x05D8
    
    };//Size=0x0C82
    Engine Function:
    Code:
    typedef DWORD(__thiscall* oGetSFXMgr)(DWORD dwThis);
    oGetSFXMgr GetSFXMgr;
    * This engine function is the fastest way to get SFXMgr pointer WITHOUT GameClientShell *

    Usage:
    Code:
    // Addresses (Up2Date)
    DWORD dw_SFXThisCall = 0x37ACEAB0;
    DWORD dw_SFXFunc = 0x371C7830;
    
    // Assign Address
    GetSFXMgr = (oGetSFXMgr)dw_SFXFunc;
    
    // Call Function (& Get pointer back)
    dw_SFXMgr = GetSFXMgr((*(DWORD*)dw_SFXThisCall));
    
    // Pointer Usage
    cSFXMgr *p_SFXMgr = (cSFXMgr*)dw_SFXMgr;
    Credits:
    - M4L1F1C

  2. The Following User Says Thank You to M4L1F1C For This Useful Post:

    DAGER-05 (06-17-2016)

  3. #2
    xXIGORXx's Avatar
    Join Date
    Oct 2015
    Gender
    male
    Posts
    1
    Reputation
    10
    Thanks
    0
    DWORD dw_SFXThisCall = 0x37ACEAB0;
    DWORD dw_SFXFunc = 0x371C7830;

    please update for Combat Arms Brazil

  4. #3
    DAGER-05's Avatar
    Join Date
    Jul 2013
    Gender
    male
    Posts
    87
    Reputation
    10
    Thanks
    0
    Quote Originally Posted by M4L1F1C View Post
    I had this laying around, it's the best way to get SFXMgr pointer.
    Addresses are up2date.

    These are the current classes:
    Code:
    class cPlayerInfo
    {
    public:
     __int32 Index; //0x0000 
     union
     {
      cObject* pObject; //0x0004 
      int *Object; //0x0004 
     };
     unsigned char bIsDead; //0x0008 
     char pad_0x0009[0x3]; //0x0009
     __int32 TeamID; //0x000C 
     char pad_0x0010[0x8]; //0x0010
     __int32 ClientID; //0x0018 
     char pad_0x001C[0xC]; //0x001C
     char cName[16]; //0x0028 
     char pad_0x0038[0x8]; //0x0038
     __int32 Kills; //0x0040 
     __int32 Deaths; //0x0044 
     __int32 KillCombo; //0x0048 
     __int32 TotalDeaths; //0x004C 
     __int32 TotalKills; //0x0050 
     char pad_0x0054[0x4]; //0x0054
     __int32 Suicides; //0x0058 
     __int32 HeadShots; //0x005C 
     char pad_0x0060[0x174]; //0x0060
     __int32 ExpReceived; //0x01D4 
     __int32 GPReceived; //0x01D8 
     char pad_0x01DC[0x84]; //0x01DC
     __int32 RankID; //0x0260 
     char pad_0x0264[0x70]; //0x0264
     __int32 CountryID; //0x02D4 
     char pad_0x02D8[0x30]; //0x02D8
     __int32 KillAssists; //0x0308 
     char pad_0x030C[0x48]; //0x030C
     cPlayerInfo* pPlayerPrev; //0x0354 
     cPlayerInfo* pPlayerNext; //0x0358 
     char pad_0x035C[0x2CE4]; //0x035C
    
    };//Size=0x3040
    
    class cCharacterFX
    {
    public:
     char pad_0x0000[0x4]; //0x0000
     float fTick; //0x0004 
     char pad_0x0008[0x8]; //0x0008
     union
     {
      cObject *pObject; //0x0010
      int *Object;      //0x0010
     };
     char pad_0x0014[0x2C]; //0x0014
     __int32 isPlayer; //0x0040 
     char pad_0x0044[0x34]; //0x0044
     BYTE spacer_Unknown00; //0x0078 
     char pad_0x0079[0x4DF]; //0x0079
     unsigned char spacer_Unknown01; //0x0558 
     unsigned char bIsDead; //0x0559 
     bool bSpawnShield; //0x055A 
     char pad_0x055B[0x9]; //0x055B
     union
     {
      cHitbox *pHitbox; //0x0564
      int *Hitbox;      //0x0564
     };
     char pad_0x0568[0x64]; //0x0568
     WORD Health; //0x05CC 
     WORD Armor; //0x05CE 
     char pad_0x05D0[0x2]; //0x05D0
     unsigned char spacer_Unknown02; //0x05D2 
     unsigned char spacer_Unknown03; //0x05D3 
     __int32 Index; //0x05D4 
     char pad_0x05D8[0x6AA]; //0x05D8
    
    };//Size=0x0C82
    Engine Function:
    Code:
    typedef DWORD(__thiscall* oGetSFXMgr)(DWORD dwThis);
    oGetSFXMgr GetSFXMgr;
    * This engine function is the fastest way to get SFXMgr pointer WITHOUT GameClientShell *

    Usage:
    Code:
    // Addresses (Up2Date)
    DWORD dw_SFXThisCall = 0x37ACEAB0;
    DWORD dw_SFXFunc = 0x371C7830;
    
    // Assign Address
    GetSFXMgr = (oGetSFXMgr)dw_SFXFunc;
    
    // Call Function (& Get pointer back)
    dw_SFXMgr = GetSFXMgr((*(DWORD*)dw_SFXThisCall));
    
    // Pointer Usage
    cSFXMgr *p_SFXMgr = (cSFXMgr*)dw_SFXMgr;
    Credits:
    - M4L1F1C
    bro have you maybe updated ?
    class cWeaponInfo

Similar Threads

  1. [Source Code] Combat Arms Unified - Classes
    By M4L1F1C in forum Combat Arms Hack Coding / Programming / Source Code
    Replies: 13
    Last Post: 04-06-2016, 08:05 AM
  2. [Source Code] Combat Arms Unified - Classes [December]
    By M4L1F1C in forum Combat Arms Hack Coding / Programming / Source Code
    Replies: 4
    Last Post: 01-14-2016, 01:50 PM
  3. [Info] MPGH Combat Arms VIP VIDEO by Zoom[June 23, 2010]
    By Zoom in forum Combat Arms Europe Hacks
    Replies: 93
    Last Post: 10-07-2010, 03:53 PM
  4. MPGH Combat Arms VIP VIDEO by Zoom[June 23, 2010]
    By Zoom in forum Combat Arms Discussions
    Replies: 108
    Last Post: 09-27-2010, 02:24 AM
  5. Replies: 0
    Last Post: 02-06-2009, 01:37 PM