佳丽云

英雄无敌3-WoG中文站

 找回密码
 英雄注册|Register
查看: 2482|回复: 2

内存中英雄的数据结构

[复制链接]
  • TA的每日心情
    奋斗
    2024-9-6 20:00
  • 签到天数: 5 天

    连续签到: 1 天

    [LV.2]野猪

    9

    回帖

    7603

    金币

    0

    精华

    1级 Hired Hero

    Rank: 1

    积分
    66
    发表于 2009-9-22 17:21:42 | 显示全部楼层 |阅读模式
    肯请各位达人解读以下定义中的未知字节

    //sizeof(Hero) == 1170
    struct Hero{
        WORD  xPos;           // 1-2  [wiki]英雄[/wiki]在地图上的x坐标, 以格为单位
        WORD  yPos;           // 3-4  英雄在地图上的y坐标, 以格为单位
        WORD  zPos;           // 5-6  英雄在地图上的z坐标, 0为地上, 1为地下
        BYTE  Tmp1[18];       // 7-24 未知 18 字节, 似乎1,5字节同时为0时且3字节不为0不为e8时表示当前选定英雄
        WORD  MgcPnts;        // 25-26 魔法值
        BYTE  Trait;          // 27    特长
        BYTE  Tmp2[7];        // 28-34 未知 7 字节
        BYTE  PlyerID;        // 35 英雄所属颜色
        char  HeroName[13];   // 36-48 英雄名称
        BYTE  HeroKnd;        // 49 英雄类别
        BYTE  Tmp3[3];        // 50-52 未知 3 字节
        BYTE  HeroID;         // 53 英雄头像
        BYTE  Tmp4[18];       // 54-71 未知 18 字节
        BYTE  Herodirection;  // 72 英雄方向
        BYTE  Tmp5;           // 73 未知 1 字节
        DWORD HeroMvMax;      // 74-77 英雄最大移动力
        DWORD HeroMvCur;      // 78-81 英雄剩余移动力
        DWORD HeroExp;        // 82-85 英雄经验值
        BYTE  HeroLvl;        // 86 英雄级别
        BYTE  Tmp6[59];       // 87-145 未知 59 字节
        DWORD Troops[7];      // 146-173
        DWORD TrpNum[7];      // 174-201
        BYTE  Skills[28];     // 202-229 技能等级列表
        BYTE  SkllLst[28];    // 230-257 学会的技能
        BYTE  SkllCnt;        // 258 要显示的技能数
        BYTE  Tmp7[43];       // 259-301 未知 43 字节
        DWORD Equip[2 * 19];  // 302-453 装备宝物, 19 样, 每样8字节
        /*头盔 -- 披肩 -- 项链 -- 右手 -- 左手 --
          躯体 -- 右腕 -- 左腕 -- 脚 -- 杂物1--
          杂物2 -- 杂物3 -- 杂物4 -- 弩车 -- 补给车 --
          帐篷 -- 投石车 -- 魔法书 -- 杂物5*/
        BYTE  Tmp8;           // 454 未知 1 字节
        BYTE  EquipStat[14];  // 455-468 对应位置是否已放置宝物, 0 表示未放置, 1表示已放置
        /*头-->披肩-->项链-->右手-->左手-->躯体-->手腕-->脚-->杂物-->补给车
          -->弩车-->帐篷-->投石车-->魔法书, 其中手腕和杂物比较特殊,手腕由于
          有左手腕和右手腕,所以该位置可为 00 、01 、02三个值, 杂物有五处,
          所以对应的位置可以是 00 、01 、02 、03 、04 、05六个值*/
        DWORD Craft[2 * 64];  // 469-980 行囊中的宝物, 最多64样, 每样8字节
        BYTE  CrftCnt;        // 981 行囊中的宝物数量
        BYTE  Tmp9[21];       // 982-1002 未知 21 字节
        BYTE  Mgcs[70];       // 1003-1072 魔法修习地址, 1表示已经学会魔法
        BYTE  Magics[70];     // 1073-1142 魔法记载地址, 1表示魔法书已记载
        BYTE  Att;            // 1143 攻击力
        BYTE  Dft;            // 1144 防御力
        BYTE  Pwr;            // 1145 魔力
        BYTE  Kwn;            // 1146 知识
        BYTE  Tmp10[24];      // 1147-1170 未知 24 字节
    };

    该用户从未签到

    2134

    回帖

    9786

    金币

    3

    精华

    4级 Famous Hero

    水客帝国炽天使

    Rank: 4

    积分
    2701

    退役版主

    发表于 2009-9-23 14:58:26 | 显示全部楼层
    对于H3,好像这些就够了,没什么补充的
  • TA的每日心情
    奋斗
    2024-9-6 20:00
  • 签到天数: 5 天

    连续签到: 1 天

    [LV.2]野猪

    9

    回帖

    7603

    金币

    0

    精华

    1级 Hired Hero

    Rank: 1

    积分
    66
     楼主| 发表于 2009-9-24 08:55:44 | 显示全部楼层
    有网友提出应该还有对建筑的访问纪录,如马概、水井、泉水等,我觉得有道理。
    这些不具体值,可能不容易分析出来

    [ 本帖最后由 magicfox 于 2009-10-4 15:38 编辑 ]
    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 英雄注册|Register

    本版积分规则

    捐赠
    关注我们,英3Mod一网打尽!

    WoG中文站 ( 辽B2-20210485-10 )|辽公网安备 21128202000228 号

    GMT+8, 2024-9-23 15:31 , Processed in 0.224547 second(s), 11 queries , Gzip On, File On.

    Powered by Discuz! X3.4

    Copyright © 2004-2022, Beijing Second Sight Technology Co., LTD.

    快速回复 返回顶部 返回列表