【CE】图形化作弊教程通关手册(超真实的游戏体验)

news2024/11/23 8:03:19

▒ 目录 ▒

    • 🛫 导读
      • 需求
      • 开发环境
    • 1️⃣ 第一关
      • 翻译
      • 操作
      • 总结
    • 2️⃣ 第二关(代码共享)
      • 翻译
      • 操作
      • 验证
    • 3️⃣ 第三关
      • 翻译
      • 操作
      • 总结
    • 🛬 文章小结
    • 📖 参考资料

🛫 导读

需求

除了Tutorial-x86_64.exe教程外,CE还提供了图形化教程gtutorial-x86_64.exe。作为强迫症深度患者,自然是要把所有关卡都完成的,今天就按照小编的思路,一起通关图形化作弊教程吧。
在这里插入图片描述

开发环境

版本号描述
文章日期2023-03-
操作系统Win11 - 21H2 - 22000.1335
Cheat Engine7.4

1️⃣ 第一关

在这里插入图片描述

翻译

Every 5 shots you have to reload.
after which the target will heal
Try to find a way to destroy the target
(Click to hide)
5 次射击,您就会被重新加载目标,之后目标会愈合。
尝试找到一种方法来摧毁目标。

操作

简单的尝试就明白,目标不会被直接摧毁,简单的说,就是第5次执行的时候会被重置。
其实,这个5是个坑,我们应该做的是,将目标血量清零。

  1. 定位目标血量
  • 1.1 按照下图配置,进行首次扫描
    在这里插入图片描述
  • 1.2 执行一次打击,然后设置扫描类型为减少的数值,点击再次扫描
    在这里插入图片描述
  • 1.3 将扫描类型设置为未变动的数值,点击再次扫描(不断的回到游戏,可以多次扫描未变动的数值)。
    重复1.2和1.3操作,射击4次后,只剩下22个结果。
    在这里插入图片描述
  • 1.4 我们从结果中,可以看到两个值为4的值。修改该值,目标血量也跟着进行了变化。可以猜测,该值就是我们想要的值。
    在这里插入图片描述
    在这里插入图片描述
  1. 找规律,我们重复攻击目标,会发现,每次血量都会减少24点。
    那么我们直接将血量改为24,是不是就可以完成任务了。尝试之,的确有效。
    不过,这里需要注意的是,不能在最后一次攻击的时候设置24,否则依然会使得血量恢复。而且不能直接设置为0,攻击没有任何效果。
    在这里插入图片描述

总结

  • 搜索技巧:未知初始值、减少的值、不变的值。
  • 多观察、多猜测,每次减少24。
  • 不断尝试修改,并验证,两个血量就是目标血量,改了后能看到血量变化。

ps: 本关还有很多种解法,之前尝试修改代码,让血量直接变为0,也能成功。
游戏本身就是这样,不只有一种解法,缕清思路,不断尝试,总能找到合适的方案。

2️⃣ 第二关(代码共享)

在这里插入图片描述

翻译

Step 2:
These two enemies have more health and do more damage to you than you do to them.
Destroy them

Tip/warning: Enemy and player are related
这两个敌人和你相比拥有更多的血量、造成更多的伤害。
消灭他们。

提示/警告:敌人和玩家是相关联的。

操作

跟第一关相同的思路,我们应该做的是,将目标血量清零。(盯着自己的血量不被清零比较难实现了)

  1. 定位敌人血量(参考第一关)
  1. 在两个敌人地址上执行《找出是什么改写了这个地址F6》,分别攻击两个敌人,定位到血量减少的代码,如下图:
    在这里插入图片描述
  1. 分析步骤2中的内容,发现减少敌人血量代码的是同一块(减少自己血量的代码也是这里)。
    那么直接修改该处代码,当rax分别是0x00000000116F8D000x0000000011927580时,将其血量清零,是不是就可以了呢?
  1. 在地址"gtutorial-x86_64.exe"+400E3(第2步中截图中的指令地址)处,增加代码注入(参考小编的《【CE】Mac下的CE教程Tutorial》系列文章),生成模板代码如下:
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048,"gtutorial-x86_64.exe"+400E3) 
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
sub [rax+60],edx
ret 
add [rax],al

exit:
jmp returnhere

"gtutorial-x86_64.exe"+400E3:
jmp newmem
nop
returnhere:
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"gtutorial-x86_64.exe"+400E3:
sub [rax+60],edx
ret 
add [rax],al
//Alt: db 29 50 60 C3 00 00

newmem: 下面增加如下代码:

cmp eax, 0000000011927580
je kill
cmp eax, 00000000116F8D00
je kill

jmp originalcode


kill:
mov edx, [rax+60]
sub [rax+60],edx
ret

比较修改前后代码,如下图(包含代码含义):
在这里插入图片描述
上面的汇编代码可以有很多种,只要能完成任务即可。

验证

这个操作需要特别注意,需要快速攻击两个敌人,时间不能差太多,否则会出现第二个角色回血的现象。
等待敌人被命中,将会弹出成功的对话框。
在这里插入图片描述

3️⃣ 第三关

在这里插入图片描述

翻译

Step 3:
Mark all platforms green to unlock the door
Beware: Enemies are 1 hit kill(and bad losers)
Have fun!

Hint: There are multiple solutions
e.g: Find collisiton detect with enemies.or teleport, or fly
Or ..
把每个平台标记为绿色可以解锁那扇门。
注意:敌人会将你一击致命(然后就失败了)
玩的愉快!

提示:有很多解决方案。
比如:找到与敌人的碰撞检测,或者 Teleport(传送),或者飞行,或者...

操作

根据提示,首先想到的就是坐标,玩家移动,坐标将被修改。

  1. 搜索出玩家横坐标地址。
    按左右键不断移动玩家,搜索变动的数值
    一直按左键,游戏边界检测,玩家坐标不会变化,搜索未变动的数值
    不断重复上面的操作。
    (ps:修改0x01631550的第一个字节,玩家会消失,猜测是玩家是否挂掉的标记)
    在这里插入图片描述
  1. 确认纵坐标
    在内存窗口中,查看0x01631550地址。
    按空格键,使玩家跳起来,观察到0x01631558地址的值会变化,确定纵坐标(修改该值为0,玩家会从高处落下!!!)。
    在这里插入图片描述
  1. 修改代码,实现玩家飞行
    右键0x01631558地址,选择菜单《找出是什么改写了这个地址F6》。
    按空格键,使玩家跳起来,会发现有两处地址改写了纵坐标NOP掉这两处代码即可。
    在这里插入图片描述
  1. 修改纵坐标,按左右键移动横坐标,使所有平台标记为绿色
    在这里插入图片描述
  1. 测出地图中右下角坐标(0.97,0.86),修改玩家坐标,使玩家瞬移到右下角。
    在这里插入图片描述

总结

整体分析过程梳理:

  • 确认横坐标:搜索内存,分析出玩家坐标地址
  • 确认纵坐标。
  • 修改代码,实现玩家飞行。(nop掉修改用户纵坐标的代码)
  • 修改玩家纵坐标,按左右键移动横坐标,使所有平台标记为绿色
  • 测出地图中右下角坐标(0.97,0.86),修改玩家坐标,通关。
    在这里插入图片描述

🛬 文章小结

本篇文章,小编尝试了很多种可能,最终写的时候,只写了成功的思路。三关都很有意思,尤其是第三关,让人立马想到游戏中的实现,对以后分析游戏有很大的帮助。
对分析过程感兴趣的,可以参考文章《[调试逆向] CE教程:进阶篇 CE Tutorial Games gtutorial https://www.52pojie.cn/thread-915447-1-1.html》,该文章总结了作者的无数猜想和尝试,十分有意义。

总之,不断思考,不断尝试,不断总结,慢慢的就会积累出各种思路。
小编将与你们同在,一起继续分析各种应用。
逆向之旅,永不停歇。

📖 参考资料

  • [调试逆向] CE教程:进阶篇 CE Tutorial Games gtutorial https://www.52pojie.cn/thread-915447-1-1.html

ps: 文章中内容仅用于技术交流,请勿用于违规违法行为。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/430227.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法,离你并不遥远

算法,离你并不遥远引子什么是算法?为什么算法很重要?什么时候开始学算法?狭隘的算法定义算法从现在学起,从现在用起算法永不过时引子 今天又是搬砖摸鱼胡混的一天,在问答闲逛,看到了一个问答&a…

Linux多线程-2

“我是我境遇里的起步者。” -- 里尔克《布里格手记》 在上一节Linux多线程当中,我们讲述了Linux中线程的概念以及线程的控制内容。这一篇博客承接上次内容,我们来对线程安全进行阐述。 目录 1.线程安全 1.1互斥的实现 1.1.1互斥锁实现互斥 1.1.2互…

启动 Ethereum(上海) 主网全节点

问题描述 采用最新的geth版本之后,按照之前的方法启动geth主网节点会出现如下问题: Post-merge network, but no beacon client seen. Please launch one to follow the chain!问题原因 The above message is emitted when Geth is run without a conse…

PyTorch深度学习实战 | 神经网络的优化难题

即使我们可以利用反向传播来进行优化,但是训练过程中仍然会出现一系列的问题,比如鞍点、病态条件、梯度消失和梯度爆炸,对此我们首先提出了小批量随机梯度下降,并且基于批量随机梯度下降的不稳定的特点,继续对其做出方…

SpringBoot集成Dubbo启用gRPC协议

文章目录前言项目结构代码示例父工程api moduleservice module注意事项区别本文记录下SpringBoot集成Dubbo启用gRPC协议,以及与原生 gRPC 在代码编写过程中的区别。 下面还有投票,帮忙投个票👍 前言 Dubbo 在 2.7.5 版本开始支持原生 gRPC 协…

【软件测试】浅了解什么是软件测试及开发测试模型

目录 1.什么是软件测试? 2.什么是需求? 3.什么是测试用例 4.什么是软件错误(bug)? 5.开发模型和测试模型 5.1软件的生命周期 5.2瀑布模型 5.3螺旋模型 5.4软件测试V模型 5.5软件测试w模型 6.软件测试的生命周…

Redis第二十九讲 Redis集群发布订阅模式以及Redis集群事务

Redis集群状态下的发布订阅 在Redis的几个基本数据结构介绍中,有讲过List数据结构,可以使用List的阻塞特性实现订阅消费,关于Redis的底层数据结构可以参考我的这篇博客:Redis第六讲 Redis之List底层数据结构实现 底层数据结构基本操作可以看我的这篇博客,Redis第十五讲 R…

【从零到Offer】- 泛型

泛型是个啥 ​ Java 泛型是 JDK 5 中引入的一个新特性,其提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 ​ 通过将数据类型参数化&#xf…

用opencv+playwright过滑动验证码

目录 梳理思路 编写代码 总结与提高 在本节,我们将使用opencv和playwright这两个库通过QQ空间的滑动验证码。 梳理思路 1. 使用playwright打开浏览器,访问qq空间登录页面。 2. 点击密码登录。 3. 输入账号密码并点击登录。 4. 出现滑动验证码图片后…

大型语言模型综述,非常详细,格局打开!A Survey of Large Language Models

大型语言模型综述,非常详细,格局打开!A Survey of Large Language Models 返回论文和资料目录 论文地址 项目地址 1.导读 讲得通俗易懂,且格局拉满!基本覆盖了自ChatGPT以来的AI比较火的事件,还多次提到…

AI 模型首次有了国家标准!头部大厂参与编制,辐射 AMD

3月17日,国内首个面向人工智能生成式模型的国家标准正式公开,并向社会征求意见。 该标准全称为《信息技术神经网络表示与模型压缩第一部分:卷积神经网络》 (GB/T 42382.1-2023&a…

【Linux系统下安装JDK】

一,linux下载JDK最方便快捷的方式:yum 1,执行下方命令,查看可安装java版本。 yum -y list java*2,选择一个进行安装,带-devel的安装的是jdk,而不带-devel的安装的是jre 3,安装命令…

【springBoot篇1】概念、创建和运行

目录 一、什么是springBoot?为什么要学springBoot springBoot的优点:(5点) 优点1:快速集成框架 优点2:内置了Tomcat容器 优点3:快速部署项目 优点4:少配置,多注解 优点5:支持更…

机器学习中的公平性

文章目录机器学习公平性评估指标群体公平性指标个人公平性指标引起机器学习模型不公平的潜在因素提升机器学习模型公平性的措施机器学习公平性 定义: 机器学习公平性主要研究如何通过解决或缓解“不公平”来增加模型的公平性,以及如何确保模型的输出结果…

生信刷题之ROSALIND——Part 1

目录写在前面1、Counting DNA NucleotidesProblemSample DatasetSample OutputCodeOutput2、Transcribing DNA into RNAProblemSample DatasetSample OutputCodeOutput3、Complementing a Strand of DNAProblemSample DatasetSample OutputCodeOutput4、Rabbits and Recurrence…

Android操作系统介绍

目录 Android 名词 Android LOGO 体系架构 Android系统架构 Linux 内核 硬件抽象层(HAL) Android Runtime 原生C/C库 Java API框架 系统应用 应用组件 活动 (Activity) 服务 (Service ) 广播接收器 &…

BLOOM模型结构详解

《BLOOM: A 176B-Parameter Open-Access Multilingual Language Model》 论文地址: https://arxiv.org/pdf/2211.05100.pdf 代码地址: transformers库-modeling_bloom.py BigScience 官方提供的代码链接并没有找到完整的模型实现代码,只有提示说模型结构代码是在 Megatron 的…

JS 中深拷贝的几种爱恨情仇

页面开发中,经常会碰到需要对数据进行某些处理操作,又不想影响原先的数据,所会经常将数据进行拷贝,当然这里指的是深拷贝。 深拷贝和浅拷贝的区别? 深拷贝通通俗点来讲呢,其实就是不管当前要操作的数据层级…

目标检测算法——YOLOv5/v7/v8改进结合涨点Trick之Wise-IoU(超越CIOU/SIOU)

超越CIOU/SIOU | Wise-IoU助力YOLO强势涨点!!! 论文题目:Wise-IoU: Bounding Box Regression Loss with Dynamic Focusing Mechanism 论文链接:https://arxiv.org/abs/2301.10051 ​ 近年来的研究大多假设训练数据中的…

Java实现发送邮件(定时自动发送邮件)

系列文章目录 Redis缓存穿透、击穿、雪崩问题及解决方法Spring Cache的使用–快速上手篇分页查询–Java项目实战篇全局异常处理–Java实战项目篇 该系列文章持续更新,更多的文章请点击我的主页查看哦! 文章目录 目录 系列文章目录 文章目录 前言 一…