Results 1 to 10 of 10
  1. #1
    Fogest's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Canada, Ontario
    Posts
    3,096
    Reputation
    164
    Thanks
    10,455
    My Mood
    Amazed

    Battlefield Play4Free Classes

    Hi, here are the classes i reversed for BF Play4Free.

    I havent fully tested them but my ESP and Aimbot is working.
    Still need to finish up CRay for Visible checks( will post when its done ).
    Virtual functions i havent checked either.

    I also havent fully reversed CSkeleton, CScoreboard & CRender. CDeviation i dont think is fully correct.

    The game runs the same engine for BFH which is the refractor engine.
    Pretty much everything is the same..

    Code:
    class CArmor
    {
    public:
        char unknown0[16]; //0x0000
        float fHealth; //0x0010  
        char unknown20[44]; //0x0014
    };//Size=0x0040(64)
    
    class CPhysicsNode
    {
    public:
        char unknown0[72]; //0x0000
        D3DXVECTOR3 impulse_force; //0x0048  
        char unknown76[44]; //0x004C
        D3DXVECTOR3 position; //0x0078  
        D3DXVECTOR3 speed; //0x007C  
        char unknown128[64]; //0x0080
    };//Size=0x00C0(192)
    
    
    class CTemplate
    {
    public:
        virtual void Function0();
        virtual void Function1();
        virtual void Function2();
        virtual void Function3();
        virtual int GetTemplateType(void);
        virtual void Function5();
        virtual void Function6();
        virtual void Function7();
        virtual void Function8();
        virtual void Function9();
        virtual void Function10();
        virtual void Function11();
        virtual void Function12();
        virtual void Function13();
        virtual void Function14();
        virtual void Function15();
        virtual void Function16();
        virtual void Function17();
        virtual void Function18();
        virtual void Function19();
        virtual void Function20();
        virtual void Function21();
        virtual void Function22();
        char ID02997C78[28]; //0x0000  
        DWORD object_id; //0x0020  
        DWORD template_type; //0x0024  
        char unknown40[28]; //0x0028
        DWORD template_id; //0x0044  
        char unknown72[736]; //0x0048
        float weapon_velocity; //0x0328  
        char unknown812[1364]; //0x032C
    };//Size=0x0304(772) 
    
    class CWeapon
    {
    public:
        char unknown0[44]; //0x0000
        CTemplate* weapon_template; //0x002C  
        char unknown48[500]; //0x0030
        CDeviation* weapon_deviation; //0x0224  
        char unknown552[408]; //0x0228
    };//Size=0x03C0(960)
    
    class CDeviation
    {
    public:
        char unknown0[4]; //0x0000
        float total_deviation; //0x0004  
        char unknown8[12]; //0x0008
        float up_deviation_add; //0x0014  
        float right_deviation_add; //0x0018  
        char unknown28[36]; //0x001C
    };//Size=0x0040(64)
    
    class CMatrices
    {
    public:
        char unknown[323];
        __int32 matrices;
    };
    
    class CObject
    {
    public:
        char unknown0[28]; //0x0000
        __int32 flags; //0x001C  
        char unknown32[4]; //0x0020
        CObject* object_root; //0x0024  
        char unknown40[4]; //0x0028
        CTemplate* object_template; //0x002C  
        char unknown48[28]; //0x0030
        CArmor* Health; //0x004C  
        char unknown80[4]; //0x0050
        CPhysicsNode* object_physics; //0x0054  
        char unknown88[96]; //0x0058
        D3DXMATRIX Matrix; //0x00B8  
        char unknown188[4]; //0x00BC
    };//Size=0x00C0(192)
    
    
    class CPlayerInfo
    {
    public:
        char unknown0[32]; //0x0000
        CObject* object_root; //0x0020  
        char unknown36[8]; //0x0024
        CTemplate* object_template; //0x002C  
        char unknown48[28]; //0x0030
        CArmor* Armor; //0x004C  
        char unknown80[4]; //0x0050
        CPhysicsNode* Physics; //0x0054  
        char unknown88[96]; //0x0058
        D3DXMATRIX Matrix; //0x00B8  
        char unknown188[432]; //0x00BC
        CWeapon* player_weapon; //0x026C  
        char unknown624[92]; //0x0270
        DWORD SelectedWeapon; //0x02CC  
        char unknown720[100]; //0x02D0
        float bodyYaw; //0x0334  
        float strafeForce; //0x0338  
        float forwardForce; //0x033C  
        DWORD posture; //0x0340  
        DWORD posture_cur; //0x0344  
        float headPitch; //0x0348  
        float headPitchChange; //0x034C  
        float headYaw; //0x0350  
        float headYawChange; //0x0354  
        char unknown856[4]; //0x0358
        DWORD posture3; //0x035C  
        char unknown864[120]; //0x0360
        CSkeleton* Skeleton_3p; //0x03D8  
        char unknown988[36]; //0x03DC
        DWORD iStance; //0x0400  
    };//Size=0x0480(1152)
    
    
    class CSkeleton
    {
    public:
        char unknown0[16]; //0x0000
        CBone* bones; //0x0010  
        char unknown20[4]; //0x0014
        __int32 number_of_bones; //0x0018  
        char unknown28[8]; //0x001C
        D3DXMATRIX* matrices; //0x0024  
        char unknown40[24]; //0x0028
    };//Size=0x0040(64)
    
    class CBone
    {
    public:
        __int32 bone_num; //0x0000  
        __int16 bone_code; //0x0004  
        __int16 parent; //0x0006  
        __int32 unknown; //0x0008  
        float offset_x; //0x000C  
        float offset_y; //0x0010  
        float offset_z; //0x0014  
        float length; //0x0018  
        float radius; //0x001C  
        __int32 material; //0x0020  
    };//Size=0x0024(36)
    
    class CInfo
    {
    public:
        char unknown0[4]; //0x0000
        CObject* soldier_ptr; //0x0004  
    };//Size=0x0040(64)
    
    class CSoldierInfo
    {
    public:
        char unknown0[4]; //0x0000
        CPlayerInfo* soldier_ptr; //0x0004  
    };//Size=0x0040(64)
    
    
    class CViewMatrix
    {
    public:
        virtual void function0(); //
        virtual void function1(); //
        virtual void function2(); //
        virtual void function3(); //
        virtual void function4(); //
        virtual void function5(); //
        virtual void function6(); //
        virtual void function7(); //
        virtual void function8(); //
        virtual void function9(); //
        virtual void function10(); //
        virtual void function11(); //
        virtual void function12(); //
        virtual void function13(); //
        virtual void function14(); //
        virtual void function15(); //
        virtual void function16(); //
        virtual void function17(); //
        virtual void function18(); //
        virtual void function19(); //
        virtual void function20(); //
        virtual void function21(); //
        virtual void function22(); //
        virtual void function23(); //
        virtual float GetInsideFieldOfView(); //
        char unknown4[268]; //0x0004
        D3DXMATRIX Matrix; //0x0110  
        char unknown276[44]; //0x0114
    };//Size=0x0140(320)
    
    class CScoreBoard // Needs updating!
    {
    public:
        char unknown0[4]; //0x0000
        __int32 Score; //0x0004  
        __int32 TotalScore; //0x0008  
        char unknown12[36]; //0x000C
        __int32 Deaths; //0x0030  
        __int32 Kills; //0x0034  
        char unknown56[16]; //0x0038
        __int32 Rank; //0x0048  
    };//Size=0x004C(76)
    
    class CRenderer // Needs updating!
    {
    public:
        virtual void AddRef( void ); //
        virtual void GetRef( void ); //
        virtual void function2(); //
        virtual void function3(); //
        virtual void function4(); //
        virtual void function5(); //
        virtual void function6(); //
        virtual void function7(); //
        virtual void function8(); //
        virtual void function9(); //
        virtual void RenderScreen    (void* param1, void* param2, void* param3); //
        virtual void function11(); //
        virtual void function12(); //
        virtual void function13(); //
        virtual void function14(); //
        virtual void function15(); //
        virtual void function16(); //
        virtual void function17(); //
        virtual void function18(); //
        virtual void function19(); //
        virtual void function20(); //
        virtual void function21(); //
        virtual void function22(); //
        virtual void function23(); //
        virtual void function24(); //
        virtual  void DrawConsole( void ); //
        virtual void function26(); //
        virtual void function27(); //
        virtual void function28(); //
        virtual void function29(); //
        virtual void function30(); //
        virtual void function31(); //
        virtual void function32(); //
        virtual void function33(); //
        virtual void function34(); //
        virtual void function35(); //
        virtual void function36(); //
        virtual void function37(); //
        virtual void function38(); //
        virtual void function39(); //
        virtual void function40(); //
        virtual void function41(); //
        virtual void function42(); //
        virtual void function43(); //
        virtual void function44(); //
        virtual void function45(); //
        virtual void function46(); //
        virtual void function47(); //
        virtual void function48(); //
        virtual void function49(); //
        virtual void function50(); //
        virtual void function51(); //
        virtual void function52(); //
        virtual void function53(); //
        virtual BYTE DrawOverlay( void ); //
        virtual BYTE Present( int code ); //
        virtual void function56(); //
        virtual void function57(); //
        char unknown4[4]; //0x0004
        IDirect3D9* pDirect3D; //0x0008  
        IDirect3DDevice9* pDirect3Ddev; //0x000C  
        char unknown16[20]; //0x0010
        __int32 vid_width; //0x0024  
        __int32 vid_height; //0x0028  
    };//Size=0x06C4(1732)
    
    
    class CPlayerManager
    {
    public:
        virtual void AddRef();
        virtual int GetRef();
        virtual void Release();
        virtual void Function3();
        virtual void Function4();
        virtual void Function5();
        virtual void Function6();
        virtual void Function7();
        virtual CPlayer* GetPlayerByIndex(int Index);
        virtual void Function9();
        virtual void Function10();
        virtual void Function11();
        virtual CPlayer* GetLocalPlayer();
        char unknown0[32]; //0x0000
        DWORD amountOfPlayers; //0x0024  
        char unknown40[192]; //0x0028
        CPlayer* LocalPlayer; //0x00E8  
        char unknown236[24]; //0x00EC  
    };//Size=0x0070(112)
    
    class CPlayer
    {
    public:
        char unknown0[96]; //0x0000
        __int32 Kit; //0x0060  
        char unknown100[8]; //0x0064
        char Name[16]; //0x006C  
        char unknown124[40]; //0x007C
        CInfo* Soldier; //0x00A4  
        CViewMatrix* ViewMatrix; //0x00A8  
        char unknown172[156]; //0x00AC
        float zoom; //0x0148  
        float zoom2; //0x014C  
        char unknown336[4]; //0x0150
        CSoldierInfo* SoldierObj; //0x0154  
        char unknownrand[5]; //0x0158  
        BYTE Alive; //0x015D  
        char unknownrand2[6]; //0x015E  
        DWORD Team; //0x0164  
        char unknown360[28]; //0x0168
        DWORD Ping; //0x0184  
        char unknown392[212]; //0x0188
        DWORD InVehicle; //0x025C  
        char unknown608[12]; //0x0260
        DWORD Sprinting; //0x026C  
        char unknown624[680]; //0x0270
    };//Size=0x0518(1304)
    
    
    class CClassManager
    {
    public:
        virtual void function0(); //
        virtual void function1(); //
        virtual void function2(); //
        virtual void function3(); //
        virtual void function4(); //
        virtual void function5(); //
        virtual void function6(); //
        virtual void function7(); //
        virtual void function8(); //
        virtual void function9(); //
        virtual void function10(); //
        virtual void function11(); //
        virtual void function12(); //
        virtual void function13(); //
        virtual void function14(); //
        virtual void function15(); //
        virtual void function16(); //
        virtual void function17(); //
        virtual void* GetClassPointerByName(string* pszClassname); //
    };//Size=0x0004(4)
    
    
    class CActionBuffer
    {
    public:
        float InputFlags[64]; //0x0000  
    };//Size=0x0040(64)
    
    
    #endif
    Other Stuff:
    Code:
    class CObject
    {
    public:
        char unknown0[28]; //0x0000
        __int32 flags; //0x001C  
        char unknown32[4]; //0x0020
        CObject* object_root; //0x0024  
        char unknown40[4]; //0x0028
        CTemplate* object_template; //0x002C  
        char unknown48[28]; //0x0030
        CArmor* Health; //0x004C  
        char unknown80[4]; //0x0050
        CPhysicsNode* object_physics; //0x0054  
        char unknown88[96]; //0x0058
        D3DXMATRIX Matrix; //0x00B8 
    };//Size=0x00F8
    
    class CSoldier : public CObject
    {
    public:
        char unknown0[360]; //0x00F8
        CWeapon* player_weapon; //0x0260  
        char unknown612[104]; //0x0264
        __int32 SelectedWeapon; //0x02CC  
        char unknown720[100]; //0x02D0
        float body_yaw; //0x0334  
        float LeftRightForce; //0x0338  
        float ForwardBackwardForce; //0x033C  
        __int32 Posture_Cur2; //0x0340  
        __int32 Posture; //0x0344  
        float head_pitch; //0x0348  
        float head_pitchChange; //0x034C  
        float head_yaw; //0x0350  
        float head_yawChange; //0x0354  
        char unknown856[4]; //0x0358
        __int32 Posture_Cur; //0x035C  
        char unknown864[56]; //0x0360
        CSkeleton* Skeleton_1p; //0x0398  
        char unknown924[4]; //0x039C
        CSkeleton* Skeleton_3p; //0x03A0  
        char unknown932[29]; //0x03A4
        BYTE IsLanding; //0x03C1  
        BYTE Jumping; //0x03C2  
        char unknown963[273]; //0x03C3
    };//Size=0x04D4(1236)
    
    class CWeapon : public CObject
    {
    public:
        char unknown48[300]; //0x0030
        CDeviation* weapon_deviation; //0x0224  
        char unknown552[408]; //0x0228
    };//Size=0x03C0(960)
    Code:
    class CPlayer
    {
    public:
        char unknown0[96]; //0x0000
        __int32 Kit; //0x0060  
        char unknown100[8]; //0x0064
        char Name[16]; //0x006C  
        char unknown124[40]; //0x007C
        CInfo* Soldier; //0x00A4  
        CViewMatrix* ViewMatrix; //0x00A8  
        char unknown172[156]; //0x00AC
        float zoom; //0x0148  
        float zoom2; //0x014C  
        char unknown336[4]; //0x0150
        CSoldierInfo* SoldierObj; //0x0154  
        char unknownrand[5]; //0x0158  
        BYTE Alive; //0x015D  
        char unknownrand2[6]; //0x015E  
        DWORD Team; //0x0164  
        char unknown360[12]; //0x0168
        BYTE isDead; //0x0174  
        BYTE ID03B70998; //0x0175  
        BYTE ID088B6760; //0x0176  
        BYTE ID088B66E0; //0x0177  
        char unknown376[12]; //0x0178
        DWORD Ping; //0x0184  
        char unknown392[12]; //0x0188
        CScoreBoard* ScoreBoard; //0x0194  
        char unknown408[196]; //0x0198
        DWORD InVehicle; //0x025C  
        char unknown608[12]; //0x0260
        DWORD Sprinting; //0x026C  
        char unknown624[680]; //0x0270
    };//Size=0x0518(1304)
    
    class CScoreBoard
    {
    public:
        char unknown0[4]; //0x0000
        __int32 Score; //0x0004  
        char unknown8[48]; //0x0008
        __int32 Deaths; //0x0038  
        __int32 Kills; //0x003C  
        char unknown64[16]; //0x0040
        __int32 Rank; //0x0050  
        char unknown84[44]; //0x0054
    };//Size=0x0080(128)


    Credits to
    P47R!CK - For his public SDK for BF2
    Zoomgod - For his awesomness references
    Winslow - For his other posts on classes on BFH
    Jugga
    & Others who reversed BF along the way and gave public info.

  2. #2
    nerds123's Avatar
    Join Date
    Aug 2011
    Gender
    male
    Posts
    1
    Reputation
    10
    Thanks
    0
    sorry im new but how to make these thing work?
    should i put it in a file of Battlefield P4F folder or sumthin?

  3. #3
    Fogest's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Canada, Ontario
    Posts
    3,096
    Reputation
    164
    Thanks
    10,455
    My Mood
    Amazed
    Quote Originally Posted by nerds123 View Post
    sorry im new but how to make these thing work?
    should i put it in a file of Battlefield P4F folder or sumthin?
    Ummm dude these are used to aid you in making hacks they are not a hack ready to use themselves. You need to know how to code hacks to use these.

  4. #4
    FalleNN's Avatar
    Join Date
    Sep 2010
    Gender
    male
    Posts
    36
    Reputation
    10
    Thanks
    0
    TYTYTYTYTYTY

  5. #5
    ♪~ ᕕ(ᐛ)ᕗ's Avatar
    Join Date
    Jun 2010
    Gender
    male
    Location
    Uterus
    Posts
    9,119
    Reputation
    1096
    Thanks
    1,970
    My Mood
    Doh
    Already posted :P
    I used to live in this section xD

  6. #6
    Fogest's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Canada, Ontario
    Posts
    3,096
    Reputation
    164
    Thanks
    10,455
    My Mood
    Amazed
    Quote Originally Posted by Elio View Post
    Already posted :P
    I used to live in this section xD
    Well then there back I guess

  7. #7
    xCYANIDEx_Aveng's Avatar
    Join Date
    Mar 2011
    Gender
    male
    Posts
    3
    Reputation
    10
    Thanks
    0
    My Mood
    Amused
    Woah. That seems just a bit complicated.

  8. #8
    Fogest's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Canada, Ontario
    Posts
    3,096
    Reputation
    164
    Thanks
    10,455
    My Mood
    Amazed
    Quote Originally Posted by xCYANIDEx_Aveng View Post
    Woah. That seems just a bit complicated.
    Yeah just a bit

  9. #9
    1wizz's Avatar
    Join Date
    Dec 2008
    Gender
    male
    Location
    Florida - USA
    Posts
    173
    Reputation
    10
    Thanks
    29
    My Mood
    Cheerful
    LoL nice Ima get started..

  10. #10
    Fogest's Avatar
    Join Date
    Apr 2010
    Gender
    male
    Location
    Canada, Ontario
    Posts
    3,096
    Reputation
    164
    Thanks
    10,455
    My Mood
    Amazed
    Quote Originally Posted by 1wizz View Post
    LoL nice Ima get started..
    Good luck to you bro.

Similar Threads

  1. Battlefield Play4Free
    By I_want_cheat in forum Battlefield Hacks & Cheats
    Replies: 56
    Last Post: 03-24-2011, 02:04 PM
  2. Free Battlefield Play4Free Code. [WORKING 4 UP TO 5000 USERS!]
    By iampoor12345 in forum Battlefield Play4Free Hacks
    Replies: 4
    Last Post: 01-16-2011, 02:09 AM
  3. Battlefield Play4Free guide an information
    By Lonesome Cowboy in forum Battlefield Play4Free Hacks
    Replies: 14
    Last Post: 12-26-2010, 05:00 PM
  4. Battlefield Play4Free 2 Keys For Sale
    By deathjr453 in forum Selling Accounts/Keys/Items
    Replies: 4
    Last Post: 12-18-2010, 02:35 AM
  5. Battlefield Play4Free
    By SpaceMan in forum Beta Games
    Replies: 10
    Last Post: 12-17-2010, 07:39 AM