c语言----实战植物大战僵尸

摘要:
1.原理是通过指针找到太阳的地址,然后修改地址对应的值,即修改太阳值。

1. 原理

  通过指针先找到阳光的地址,然后修改地址对应的值即修改阳光值。

2. 工具

  CheatEngine  --- 查询进程中变量的地址

  Dll注入工具  -----  注入

  VS2017

3. 实战

  (1)  现在阳光地址为50,收集一个阳光后变为75

c语言----实战植物大战僵尸第1张

   (2) 打开CheatEngine 点击file -> open process -> 找到植物大战僵尸 Plant vsZombies

c语言----实战植物大战僵尸第2张

     (3) 将现在的阳光值75(你的可以是其他的数字)输入进去 ->点击first scan (or new scan)

  c语言----实战植物大战僵尸第3张

     (4) 消耗一次阳光,现在我的阳光值为25

c语言----实战植物大战僵尸第4张

     (5)将现在的阳光值25再次输入进去,点击next scan,现在找到了一个唯一的变量地址 --- 阳光

 也就是说对于数据地址的查找,基本两次就可以确定其地址(如果还是有多个地址,多次改变阳光的值,直到只有一个地址)

c语言----实战植物大战僵尸第5张

     (6) 打开VS2017,创建一个新项目,并且将项目的类型设为dll

_declspec(dllexport)void go(){
    int *p = 0x20EEE160; //刚刚查询到的变量地址
    if(*p<100){
        *p += 99;   //如果阳光值小于100 加99个阳光
    }
}

    (7) 生成解决方案

    (8)打开dll注入工具 ->找到植物大战僵尸进行->点击注入 ->浏览刚刚生成的dll,输入函数go->点击注入

c语言----实战植物大战僵尸第6张

c语言----实战植物大战僵尸第7张

免责声明:文章转载自《c语言----实战植物大战僵尸》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇oracle 视图JSON与JS的区别以及转换下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

STM32f103之外部中断

一、背景 有个需求,IO口检测上升沿,然后做相应的动作。在此记录STM32F103的外部中断结构及配置方法, 以备下次快速上手使用。 有许多不太明白,又是老司机(:-D)帮忙,真的是站在别人的肩膀上会让你看的更远,走的更快, 感谢老司机。 二、正文 STM32f103有68个可屏蔽中断。(...

嵌入式 Linux下修改MAC地址

Linux下修改MAC地址 方法一: 1.关闭网卡设备ifconfig eth0 down2.修改MAC地址ifconfig eth0 hw ether MAC地址3.重启网卡ifconfig eth0 up 方法二:以上方法一修改后linux重启后MAC又恢复为原来的,为了下次启动时修改后的MAC仍有效,我们可以修改文件file:/etc/rc.d /...

微信小程序连接无法跳转/ can not navigate to tabBar page错误

这里的说的跳转方式是通过js跳转如下: wxml页面: <button bindtap="enternews" >进入新闻news页面</button> js页面: enternews:function(){ wx.navigateTo({ url: '../products/products',//跳转地址 success: fu...

从IEEE754标准谈C语言浮点数据类型

先看下面几个问题,如果你能准确地回答,那么此篇文章将不适合你: 计算机中怎样表示浮点数的,与整型的表示方法有什么不同? 32位精度的float类型和64位精度的double类型能表示浮点数最大范围是多少? 该C语言语句 printf("%d\n", 2.5); 输出结果是什么,为什么? 我先说在此之前我如果回答,答案如下: 计算机中有符号整型采用补码...

C语言之生产者与消费者模型

多线程并发应用程序有一个经典的模型,即生产者/消费者模型。系统中,产生消息的是生产者,处理消息的是消费者,消费者和生产者通过一个缓冲区进行消息传递。生产者产生消息后提交到缓冲区,然后通知消费者可以从中取出消息进行处理。消费者处理完信息后,通知生产者可以继续提供消息。 要实现这个模型,关键在于消费者和生产者这两个线程进行同步。也就是说:只有缓冲区中有消息时,...

交换机到底有没有MAC地址?

网上搜索了一下,总结了如下答案. 1.二层交换机自身的MAC地址是可有可无的.二层交换机可分为"可网管"和"不可网管"两种类型,对于"可网管"的交换机,我们可以对其进行参数配置;而"不可网管"交换机,则不能对其进行配置.因为二层交换机只是用来转发数据帧,不对帧进行拆封打包,所以对转发数据来说,自身的MAC地址是无用的.但是有时候我们需要对交换机进行配置管...