通过一个静态变量可以获取到玩家自身英雄的结构指针,以下简称 pHeroObj (具体的内存地址就不公布了)
当前游戏版本: 5.15.1.333
进过调试可以判断出大致的结构
#pragma pack(push)
#pragma pack(1)
typedef struct _GAME_STRING{
char Str[16];
int Len;
int Flag;
}GAME_STRING,*PGAME_STRING;
//英雄对象结构
typedef struct _HeroObj{
VIRTUAL_FUNC pFuncs; //虚函数表
HERO_RES_INFO pHeroResInfo; //英雄资源信息
DWORD Unkonw1[4];
DWORD UnitType; //对象类别
DWORD Unkonw2;
GAME_STRING NickName; //昵称
GAME_STRING HeroName; //
DWORD Unkonw3[3]; //
float X;
float Z;
float Y;
//....后面还有很长就不分析了
}HERO_OBJ,*PHERO_OBJ;
#pragma pack(pop)
这个结构其实是个类,通过类的方法可以获取到不少的信息,下节再来分析下