đây là 1 bài của 1 bạn bên cuasotinhoc nếu bạn hiểu được thì ta nói chuyện tiếp còn nếu không thì thôi:
Mình chỉ mới tìm ra được 1 số cái thôi, con thiếu nhiều lắm nhưng cũng post lên cho mọi người tham khảo. Dựa vào cái dưới đây các bạn đã có thể viết 1 auto đơn giản.
CODE
#define MAX_NPC 256
#define REGION_WIDTH 512
#define REGION_HEIGHT 1024
#define CELL_WIDTH 32
#define CELL_HEIGHT 32
#define PLAYER_BASE_ADD 0x717FEC
#define PLAYER_OFFSET 0x1EF2C
#define PLAYER_INDEX 1
#define NPC_BASE_ADD 0x6FF93C
#define NPC_DATA_SIZE 0x7E08
class CNpc
{
public:
int NpcData1[3];
BOOL m_IsExist; // 0x000C
int NpcData2[3];
int m_Level; // 0x001C
DWORD m_NpcKind; // 0x0020
int m_BasicElement; // 0x0024
int NpcData3[109];
int m_Doing; // 0x01DC
int NpcData4[821];
int m_ActiveSkill; // 0x0EB4
int NpcData5[2];
int m_CurLife; // 0x0EC0
int m_MaxLife; // 0x0EC4
int m_CurLifeRep; // 0x0EC8
int m_CurMana; // 0x0ECC
int m_MaxMana; // 0x0ED0
int m_CurManaRep; // 0x0ED4
int m_CurPhys; // 0x0ED8
int m_MaxPhys; // 0x0EDC
int m_CurPhysRep; // 0x0EE0
int NpcData6[74];
int m_CurrentAttackRadius; // 0x100C
int NpcData7[36];
int m_MapX, m_MapY, m_MapZ; // 0x10A0, 0x10A4, 0x10A8
int m_OffX, m_OffY; // 0x10AC, 0x10B0
int NpcData8[20];
BOOL m_bRideHorse; // 0x1104
char m_szName[32]; // 0x1108
int m_Sex; // 0x1128
int NpcData9[76];
BOOL m_bFightMode; // 0x125C
int NpcData10[224];
WORD m_RegX,m_RegY; // 0x15E0
int NpcData11[103];
int m_CmdKind; // 0x1780
int m_ParamX; // 0x1784
int m_ParamY; // 0x1788
int m_ParamZ; // 0x178C
int NpcData12[6536];
int m_nPeopleIdx; // 0x7DB0
int NpcData13[21];
};
class CPlayer
{
public:
DWORD m_dwID; // 0x0000
int m_nLeftSkillID; // 0x0004
int m_nLeftSkillLevel; // 0x0008
int m_nRightSkillID; // 0x000C
int m_nRightSkillLevel; // 0x0010
};