← 返回总索引物品对象字段(数组指针 + 偏移) 2026-09-16-13-19-49\物品对象字段_数组指针偏移.md
分类:内存逆向与基址定位来源会话:2026-09-16原件:2026-09-16-13-19-49\物品对象字段_数组指针偏移.md

物品对象字段(数组指针 + 偏移)

来源:用户实跑子程序 遍历背包(易语言,本机活游戏代码),常量数值取自工程
旧版本更新.代码\常量.e.txt(与 31007 模块字段偏移完全一致,仅基址不同)。
背包基址经 YGOnline.exe 二进制反查:✅ 本轮已确认为本游戏活基址


一、容器结构(背包)

背包基址值  = #背包基址值 = 62512352 = 0x03B9DCE0   ← 全局指针变量地址(在 exe 中命中 3495 次)
背包基址    = 读整数(0x03B9DCE0)                      ← 背包容器结构指针(堆区)
物品位置    = 读整数(背包基址 + 0x53C + (格子-1)×4)   ← 物品对象指针;≤0 跳过
                                                                 0x53C = #背包物品位置值
格子        = 1 .. 全局_背包数

⚠️ 0x03B9DCE0 是「存放背包容器指针的全局变量地址」,要先读它拿到容器指针,再 +0x53C 才是物品指针数组头。
31007 模块的 #背包基址=0x031455E4 在本游戏 exe 中 0 命中 → 已过期,勿用。


二、物品对象字段(相对 物品位置 指针)

偏移 十进制 常量 字段 读法
+0x64 100 #背包物品名称值 名称 文本(BIG5)
+0x54 84 #背包物品编号值 编号 整数
+0xD4C 3404 #背包物品数量值 数量 整数
+0xD54 3412 #物品分类值(=物品类型) 分类 整数
+0xE3C 3644 #石头属性值(=石头类型) 石头属性(槽0) 整数
+0xE44 3652 #石头大小值 石头大小(槽0) / 强化等级 整数
+0xF9 249 #物品说明值 说明 文本(BIG5)
+0xE44 3652 (代码硬编码 十六到十("E44") 强化等级 整数
+0x538 1336 (代码硬编码 十六到十("538") 属性1 文本(BIG5)
+0x738 1848 (代码硬编码 十六到十("738") 属性2 文本(BIG5)
+0x938 2360 (代码硬编码 十六到十("938") 属性3 文本(BIG5)
+0xB38 2872 (代码硬编码 十六到十("B38") 属性4 文本(BIG5)

三、石头/宝石槽数组(内部结构,来自旧版本代码 line 1490-1492 / 1604 / 1613)

石头属性[k] = 读整数(物品位置 + 0xE3C + k×0x18)   k 从 0 起,每槽 0x18(24) 字节
石头大小[k] = 读整数(物品位置 + 0xE44 + k×0x18)

四、冲突 / 说明

  1. 强化等级 = 石头大小(同偏移 0xE44):未镶嵌石头时该 4 字节 = 强化/升级等级;镶嵌后 = 第 0 槽石头大小。旧版本代码 line1474 强化等级 = 读整数(物品位置 + #石头大小值) 印证。
  2. 物品说明 = 0xF9(249),不是旧表可能误写的 0xED。31007 模块注释 ED+12237+12=249=0xF9,权威值为 0xF9。
  3. 装备等级 / 物品ID:本子程序声明但未读取(字段待补)。
  4. 31007 模块字段对照(证明一致):
    - 背包名称=100=0x64 ✓ | 背包编号=84=0x54 ✓ | 背包数量=3404=0xD4C ✓
    - 物品类型=3412=0xD54(=物品分类值)✓ | 石头类型=3644=0xE3C(=石头属性值)✓ | 石头大小=3652=0xE44 ✓ | 物品说明=249=0xF9 ✓

五、检测状态

状态 依据
背包基址值 0x03B9DCE0 ✅ 二进制确认 exe 命中 3495 次
物品对象字段偏移(+0x64/0x54/0xD4C/0xD54/0xE3C/0xE44/0xF9/0x538/0x738/0x938/0xB38) 📁 源码权威(旧版本与31007一致) 需 CE 读包确认
石头槽数组结构 📁 源码权威 同上

备注:本游戏是 2026-09-14 重编译版,玩家/怪物对象偏移已实测与 31007 不符
(玩家血 +0x74、怪物血 +0x5F4 等)。物品对象偏移与 31007 一致,但为稳妥仍建议
用下方脚本实际读一只背包物品核对「名称/数量/分类」是否命中。


六、其它容器(同结构,仅基址不同,均需活游戏确认)

容器 旧版本常量值 偏移布局 备注
背包 0x03B9DCE0 同上 活游戏已确认
装备栏 0x031455E8(31007) / 0x03B9DCE? +0x53C 指针数组 旧版本未给,待指针扫描
凝神珠背包 0x03B9DCE4(旧版本,exe 38 hits) +0x53C 指针数组 活游戏已确认
个人/综合仓库 0x03148A88/0x03148A84(31007) 待确认 31007 过期,待指针扫描