|
本帖最后由 tempa 于 2022-6-26 20:13 编辑
因为不玩这个游戏,所以也没有做这个游戏的CT,但是根据最近一些制作CT的经验,一些无效的问题,原因,以及解决方法说一下,如果作者看到可以试试修复。
以版中 Fullcodes 的这个CT来说明
https://bbs.3dmgame.com/thread-6311889-1-1.html
首先第一项,记录玩家基址函数
Must Be On 必须开启
define(GetPlayerBase,PlayerHealthStat::get_HP+4)
define(address2,Paris.Game.Actor.Player::HandleMovement+7E)
define(bytes,8B 40 3C C3 19 00)
define(bytes2,48 8B 96 68 01 00 00)
使用的是函数的绝对地址,测试发现第二项,HandleMovement+7E会有问题,Win7,Win10都有出入,因为C#代码不是100%固定,不唯一,所以在不同机器上会有地址偏移不同,以我的电脑为例
Win7显示为 HandleMovement+79
Win10显示为 HandleMovement+7A
注意字节码也有变化,
Win7是 48 8B 96 68 01 00 00
Win10是 48 8B 8E 68 01 00 00
实际上Win10和Win7后面这个代码就不一样了,48 8B 8E 68 01 00 00 在Win7上面一行也有
这就导致选项一勾不上,而其他部分功能,AOB地址是固定没变的,比如一鸡必杀
Paris.Combat.HealthStat::set_HP+16
Win7,Win10都可以使用
这种小问题对懂CE的人来说,随手就可以修复,但是不懂的就没办法了。
解决方法,使用 aobscanregion 指定函数扫描范围,就可以避免绝对地址前后偏移,而勾不上的问题了
纯路过提一句,主要是我以前也这么写,经常被人吐槽用不了,也是一头雾水,最近才改了aob的写法
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|