游戏安全实验室 首页 游戏漏洞 查看内容

【游戏漏洞】《天涯明月刀》怪物坐标分析

发布于:2018-8-29 10:00   |    301507次阅读 作者: 外部投稿    |   原作者: 通化程序员

怪物和NPC的坐标由于不好控制其走位,所以扫描起来也比较麻烦,所以一般来说我们都是从角色坐标入手去分析怪物坐标遍历。由于《天涯明月刀》中的角色坐标在遍历中的访问很少,并没有从直接得到角色坐标基地址的访问代码那么多,所以我们想直接返回到遍历中是很难的。于是我们尝试从某些坐标偏移所在的函数头部下断,来寻找不同的返回,从而得到怪物遍历经过的代码。

我们来到角色坐标+404偏移所在的函数处(如图)

 

我们在头部下断后,第一次断下得到的是角色的坐标地址,我们点F9发现ECX变化,而ecx+4也变为了“ManNPC”,这说明我们断到了NPC坐标所在的地址(如图)

执行到返回并继续分析ecx的来源,经过一层参数传递,和一层局部变量传递,得到了-10偏移(如图)

继续向上分析又转到了错误的代码中,于是我们通过CE对这层偏移的来源进行扫描,得到较少的结果(如图)

如果对怪物的属性分析稍微熟悉一点,可以观察到在这个地址上面是怪物的两个ID(如图)

OD对这个地址下访问断点,游戏很快断下(如图)

访问代码较多,所以可能断的位置会不同,但是得到的结果相差不大,这里我们得到+8偏移,继续向上分析得到来源于01097B95 处的 call    00CEFE80内部,到函数内部可以得到一个数组套链表的结构,以及基地址(如图)

这样我们就得到了怪物坐标的遍历公式,不过由于分析的方法不同,可能每个人得到的公式会有一定的差异,不过只要结构中的对象数量一致就没有任何的问题。

 

 

 


来源:通化程序员-投稿

GSLAB网站投稿文章仅代表作者本人的观点,与本网站立场无关。

*转载请注明来自游戏安全实验室(GSLAB.QQ.COM)

收藏
分享到:
踩1 赞0

收藏

上一篇:【游戏漏洞】《天涯明月刀》传送点遍历

下一篇:【游戏分析】《天涯明月刀》技能库分析

最新评论
B Color Image Link Quote Code Smilies

发表评论

top 问题反馈

返回顶部