0


C++之PVZCheat制作(一):利用CE和OD实现秒杀僵尸

主要思路是僵尸受到攻击则血量减少,用CE扫描减少的变量,找到控制僵尸扣血的代码,然后利用OD修改。

那么先打开游戏和CE,等待第一只僵尸出现。

由于僵尸的血量是未知量,所以扫描类型选择未知的初始值进行首次扫描。

在僵尸受到攻击时暂停游戏,来到CE扫描类型选择减少的数值点击再次扫描。可以看到出现了很多结果,再次返回游戏让僵尸受到攻击之后再用CE扫描,如此反复,便得到了控制僵尸血量的地址。

右击该地址,点击“是什么改写了改地址”。返回游戏让僵尸受到一次伤害便可以得到相应的结果。

可以看出这是个赋值语句,将ebp的值赋给[edi+000000C8],点击显示反汇编程序来到代码修改界面,有两种思路。

一种是直接将mov [edi+000000C8],edp改为mov [edi+000000C8],0,将0赋值给 [edi+000000C8]。

还有一种是将上面减法语句,意思是ebp=ebp-[esp+20],的sub edp,[esp+20]改为sub edp,edp,让edp的值为0。

修改后可以发现实现了秒杀普通僵尸的功能。

但是发现在面对有防具的僵尸,例如路障,铁桶等却并不起作用,因此还需要用到OD来扫描游戏。

下篇文章将介绍如何秒杀带有防具的僵尸。

标签: c++ visual studio

本文转载自: https://blog.csdn.net/qq_46122208/article/details/119296912
版权归原作者 wotmchaoshuai 所有, 如有侵权,请联系我们删除。

“C++之PVZCheat制作(一):利用CE和OD实现秒杀僵尸”的评论:

还没有评论