能力值:
( LV2,RANK:10 )
|
-
-
2 楼
在 购买call 下断
然后买一些物品
再看看断下来的参数
我们可以理解每个NPC都有自己的 货品清单
那么这个 货品清单 的 结构 可以是这样 :
[货品清单base]
[指针 货品清单 首物品(0)] : [货品清单base+k] //k 为一个常数 比如 0x4
[指针 货品清单 物品(i)] : [指针 货品清单 首物品 + i * 0x4]
[货品清单 物品 价格] : [[货品清单 物品]+k1]
[货品清单 物品 价格] : [[货品清单 物品]+k2] //也有可能是指向整个游戏的 物品清单表 里的 该物品,再拿这个指针加另一个偏移就是 物品 名称 了
接下来就是用CE来验证了
对了.断下来的参数很有可能是 [指针 货品清单 首物品 + i * 0x4]
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
可不可以根据背包反查呢?
比如买的小血,在背包中通过数量可以查出小血瓶的名称地址,
反过来在商店查物品名称来判断呢。
同时,物品的价格是不是也可以作为突破口?
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
谢谢楼上的两位兄弟,请问还有没其它的思路?今天结束后马上给分
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
还有个办法就是用CE搜索"金创药(小量)" 用Text(unicode与否都试试) //看起来扩号有全角,和半角的 注意一下
//如果搜不到的话 可以搜"金创药"
//然后扩展下 搜索到的结果 的长度
如果有找到什么的话,用 "Find out what accesses this address"(找出什么访问这地址)
运气好的话,可以捕获什么 Mov eax, dword prt[eax+k] 或 Mov eax, dword ptr [eax]
那么结构就出来了,看一下EAX的数值,它就是物品(i)的基址
不过注意下 [物品(i)的基址+k] 一般不会直接给你 名称的
一般都是 [[物品(i)的基址+k]]
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
问题已解决,直接给分了
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
怎么解决的,你说下呀!
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
很久不玩这游戏了
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
那啥~
保护我都没过去......
|
|
|