幻塔PC端Cheat Engine捣鼓记录

兴趣爱好,萌新中的萌新,仅做记录用

指针定位坐标

我的第一个目标就是寻找本人的坐标。

最开始我利用CE的指针扫描器,选择最大5级偏移的结果,但效果并不好。

于是我便开始查找最大4级偏移的指针,在多次小重启,大重启的筛选下,我得到了一个指针

1
2
3
4
5
1E8
4D0
50
118
"QRSL.exe"+06B2D0B8(此基址目前已失效)

因为搜坐标肯定是先找z轴,因此这是一个当时我找到的Z轴坐标的指针

而四级偏移+4(1E4)就是y轴,+8(1E0)就是x轴

在这之后我发现,幻塔作为一个网络游戏,他的坐标存放位置不是完全固定的,但是那个数据结构却是大体确定的。

比如这个三级偏移,我当时搜到的时候是4D0,但是当我传送到其他位置,重新加载地图之后,这个指针就有可能会丢失我当前的坐标,指向一些错误的数据。

于是每当我发现指针不再指向我自身坐标后,我就重新利用指针扫描器再次找到我的坐标所对应的指针。

结果一石二鸟的发现,扫描器里的指针有一个的指针的基址也是

1
"QRSL.exe"+06B2D0B8

并且一级,二级,四级偏移同样是118、50、1E8,只有三级偏移不同,于是我彻底确认,在三级偏移后的结构就是一个列表,能够存放每个加载进程序里的玩家。

但是他的这个存放位置似乎没有规律,非常奇怪,因为他每次更改之后都有可能换位置,但是换到的位置有可能又是我之前发现过的,比如现在是4D0,如果我传送到了别处后有可能变成520,也有可能变成210,有时候如果再回来可能又变回4D0,但又不是绝对完全不变。

相较于cs1.6的结构,是以本人信息作为首位,之后倒数第二个偏移逐渐+4即可获取房间里所有玩家的信息。但幻塔的是不一样的,这让我很难找到他的确切结构是什么。由于指针每次都在发生变化,所以单个指针无法通用。

改换特征码定位

  • 我所使用的z坐标特征码,截止至2022/1/17仍可使用
1
?? ?? ?? ?? 00 00 00 00 00 00 80 3F 00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 ?? ?? ?? ?? ?? ?? 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 ?? A9 1F 62 05 18 3B 00

最终我使用的特征码不能算真正意义上的叫特征码,因为我实在不知道要怎么从只要有人加载就全都一样的字节数组里找出那个属于我自身的特殊字节。

更别提这游戏会默认分配4个位置用来存放玩家信息,即使你只有一个人,并且你周围都没有别人,都没有加载出来,也会占用掉4个位置。因为这4个位置里的3个就是用来存放你那不存在的队伍玩家信息的。所以当我使用我的z坐标这个特征码时,永远会搜出4个以上结果。

一般都是其他3个x,y,z坐标全是0。如果这个地方有很多人的话,那毫无疑问是逐渐增加数量的。并且我目前还没有办法从那么多个坐标里定位到我自己的坐标,可能需要我在4级偏移里面寻找别的信息了。

简单规律记录

  1. 不论加载到什么地图,变动范围永远在三级偏移之内
  2. 完美似乎没有什么很好的反作弊措施,因为我打开CE这么久了都没被检测过
  3. 每次更新时最麻烦情况只是更新一下模块的基址即可,1、2、4级偏移到目前为止1个月多的时间里都是能用的
  4. 目前自身坐标三级偏移出现过的有: 4D0(主世界)、190(虫洞)、520、4E0、550(主世界)