新手如何使用Cheat Engine (CE) 来修改“我的世界“?

您所在的位置:网站首页 我的世界开挂脚本 新手如何使用Cheat Engine (CE) 来修改“我的世界“?

新手如何使用Cheat Engine (CE) 来修改“我的世界“?

2024-06-29 06:10| 来源: 网络整理| 查看: 265

 

教你如何使用CE来利用一些电脑游戏。作弊引擎是一种内存扫描工具。它允许您访问存储在计算机内存中的数据并更改该数据。这使您可以更改游戏中的信息,例如健康、弹药、分数、生命以及库存中的物品数量。

部分1 安装CE

1 打开CE页面。在您计算机的网络浏览器中 访问https://cheatengine.org/downloads.php 。

2 点击下载CE。这是页面中间的一个大链接。 该按钮还将列出当前版本的CE(例如,下载CE 6.7)。如果您尝试在 Mac 上使用 Cheat Engine,请改为单击Download Cheat Engine 6.2 For Mac链接。

3 安装作弊引擎。这样做会因计算机的操作系统而异: Windows — 双击 Cheat Engine 安装文件,出现提示时单击Yes ,单击Next,选中“我同意”框并单击Next,再单击3 次,取消选中“我同意安装 McAfee WebAdvisor”框并单击Next,然后单击安装。设置完成后,如果出现提示,请单击Next,然后单击Finish。Mac — 双击 Cheat Engine DMG 文件,如果出现提示,请验证安装,单击 Cheat Engine 徽标并将其拖到“应用程序”文件夹中,然后按照屏幕上的说明进行操作。

4 打开作弊引擎。安装完作弊引擎后,打开开始

(Windows) 或 Launchpad (Mac),然后单击作弊引擎选项。 您可能必须单击是或打开才能打开作弊引擎。 部分2

在作弊引擎中打开游戏进程

开始游戏。打开您要与作弊引擎一起使用的游戏。 请记住,这不能是在线多人游戏或基于服务器的游戏。

2 单击“进程”图标。在作弊引擎窗口中,点击左上角的电脑图标。这将打开一个弹出窗口,其中包含您计算机的当前程序。

3 选择你的游戏进程。滚动进程列表,直到找到您的游戏,然后单击游戏名称。如果您尝试将 Cheat Engine 用于浏览器游戏,您将选择浏览器的名称。 如果您的游戏未出现在“进程”列表中,则您无法在 Cheat Engine 中对其进行编辑。您可能首先需要单击窗口顶部的进程选项卡。

单击确定。它位于窗口的底部。这将在作弊引擎中打开游戏。 寻找和改变游戏中的价值

确定要改变的游戏方面。为了让您能够更改游戏方面,方面必须附有一个数字(例如,弹药量、生命值或物品)。 号码必须在屏幕上。例如,如果您想更改库存中某个项目的编号,您首先必须将库存打开到该项目编号可用的页面。

2 最小化游戏窗口并点击 Cheat Engine。您需要在游戏最小化时打开作弊引擎窗口。 执行此操作时不要暂停游戏。

3 单击新建扫描。它位于左侧面板旁边的作弊引擎顶部。任何时候要扫描新值时,都需要单击New Scan。

4 选择扫描类型。开始新扫描时,您可以执行五种扫描类型。您将使用的两个主要参数是“精确值”和“未知初始值”。使用“扫描类型”旁边的下拉菜单选择您要执行的扫描类型。扫描类型如下: 精确值:如果您知道要更改的确切数字,请使用此扫描类型。例如,如果您知道确切的生命数量或拥有的弹药数量,则可以选择此选项。未知的初始值:在视频游戏中,有时值不是用数字表示的。例如,您的健康状况可能由健康计量器而不是数字来表示。在这种情况下,你没有一个确切的数字来说明你有多少健康。有一个数字代表您的健康,您只是在屏幕上看不到它。在这种情况下,您可以选择Unknown initial value。大于...:'如果您不知道要查找的确切数字,但您知道可能的最小值,请选择此选项。小于...:如果您不知道确切的值,但您知道可能的最大值,请选择此选项。介于...之间的值:此选项允许您输入要查找的值范围。

选择数据类型:数据类型表示值在内存中的存储方式。可能很难知道要选择什么数据类型,所以这可能需要一些猜测。使用“数据类型”旁边的下拉菜单选择数据类型。如果使用一种数据类型找不到您要查找的值,请单击“新建扫描”并使用其他数据类型重试。您将使用的一些更常见的数据类型如下: 字节: 2 字节和 4 字节是您最常使用的数据类型。大多数 Windows 应用程序使用 4 字节,所以从它开始。您还可以使用 2 字节找到这些值。1 字节和 8 字节也可以工作,但您可能会遇到问题。浮点数:浮点数据类型是值中有小数点的值(尽管您可能在游戏中看不到小数点)。有时游戏将值存储为浮点数以防止简单的内存扫描。如果您无法通过扫描字节找到您要查找的值,请尝试扫描浮点数。双精度:双精度与浮点数类似,但它们可以包含两倍的位数。如果您无法通过扫描字节或浮点数来找到值,请尝试将其作为双精度数进行扫描。全部:此选项扫描所有数据类型的所有值。如果您不知道要搜索什么,这是一个不错的选择,但它也会返回更多您需要缩小范围的搜索结果。

输入您要更改的值,然后单击First scan。例如,如果您的弹药中还剩 20 颗子弹,您可以20在“值”文本框中输入。这将扫描所有包含数字“20”的值。这可能会在地址列表中产生一长串值,您需要将其缩小一点。

返回您的游戏并更改值。你如何做到这一点将取决于游戏本身;例如,如果您想给自己更多的健康,您可能会故意损害自己的健康以降低数量。如果你想要更多的弹药,你可以开几枪来减少你的弹药数量。

返回作弊引擎并扫描更新的数值。再次最小化游戏并点击返回作弊引擎。在“值”部分输入新数字,然后单击Next Scan。这将扫描您第一次扫描中的所有值,并将地址缩小到更改为您在“值”栏中输入的值的地址。 未知初始值:如果您为第一次扫描选择了“未知初始值”,请根据值(或米)是增加还是减少,在“扫描类型”下选择增加值或减少值。这将扫描所有增加或减少的值,而不是扫描确切的数字。

重复搜索过程,直到您有 4 个或更少的值。您将不断更改数字,然后搜索更新的数字,直到作弊引擎左侧列出的值不超过 4 个。 您最终应该会在每个值的数字的“上一个”列中看到您搜索的上一个数字,而该项目的当前值将在“值”列中。

将值添加到地址列表。您可以双击一个值将其添加到底部的地址列表中,也可以单击一个地址将其选中,然后单击值列表右下角的红色对角箭头。这样做会将值放在窗口底部的地址列表中。 要选择多个地址,您可以按住“Shift”并单击顶部地址和底部地址。

将数字更改为您想要的值。使用以下步骤更改值编号: 双击作弊引擎底部列表中“值”下方的数字。在“值”字段中输入一个新数字。单击确定。

12 检查您的游戏中的值是否更新。当您重新打开游戏时,您编辑的值应该反映您刚刚输入的数字。下一部分将教您如何通过将值替换为非操作代码来阻止值更改。 您可能需要再次更改该值,然后它才会更新。 部分4 替换代码以阻止值更改

1 扫描要停止的值。这部分教你如何使用代码查找器找到写入要更改的地址的内容,然后将其替换为非操作代码。这将防止价值在游戏中发生变化。使用上一部分中的步骤查找要更改的值。将其添加到屏幕底部的列表中。

2 右键单击该地址,然后单击Find out what access this address。这将打开作弊引擎调试器。这将显示写入您正在访问的地址的指令。

3 单击是。这确认您希望将调试器附加到 Cheat Engine 进程。这将打开代码调试器。当窗口第一次打开时,列表将是空白的。

4 返回游戏并再次更改值。再一次,回到你的游戏并做一些事情来改变你想要停止的价值。这将导致访问您选择的地址的代码指令出现在调试器窗口中。

5 返回作弊引擎并单击列表中的指令。可能有多个地址。如果是这种情况,请选择不写入相同基地址的那个。查找“[' 和”] 括号之间的值与其他指令不同的指令。

6 单击替换。这将代码替换为非操作 (NOP) 代码。[1] 如果列表中有多个项目,请继续并选择所有项目。

7 单击停止。这使非操作代码生效。这将防止价值在游戏中发生变化。 要恢复原始代码,请选择列表中的项目并单击Show disassembler。右键单击显示“NOP”的位置,然后单击使用原始代码还原。如果您没有看到此选项,请单击Replace with code that does nothing,单击Yes。然后再次右键单击NOP并选择Restore with orignal code。 部分5 使用指针查找写入值的内容

1 扫描要更改的值。有时值可以在您重新启动游戏时或在游戏中间更改地址。您可以使用指针来查找写入地址的内容。一旦找到不变的基级静态地址,就可以更改该值。

2 右键单击该地址,然后单击Find out what writes to this address。这将打开调试器窗口。 如果有多个地址,请为作弊引擎允许的尽可能多的地址打开一个调试器窗口。

3 返回游戏并再次更改值。再一次,回到你的游戏并做一些事情来改变你想要改变的价值(即开火,被击中)。这将导致写入该地址的指令出现在调试器窗口中。 如果调试器窗口中没有任何变化,则它不是正确的地址。尝试不同的。

4 返回作弊引擎并单击列表中的指令。它在调试器窗口中。可能有多个地址。如果是这种情况,请查找在“[”和“]”括号之间具有不同字符集的指令。如果没有单个地址具有不同的字符,请检查指针是否对所有人来说都是一样的。 如果字符末尾有一个+ 和一个数字(即[ESI+14])。那是一个偏移量。写下来。你稍后会需要它。

5 单击更多信息。这将显示当 Extra Info 屏幕中的值更改时发生的说明。这也列出了写入地址的指针。 您还可以通过检查括号中的字符,然后检查底部列出的这些字符后面的数字来找到地址。例如,如果地址旁边有“[rdx]”,则在底部查找 RDX=xxxxxxxx。

6 单击“十六进制”旁边的复选框并重新扫描指针地址。指针的地址列在“查找此地址所需的指针的值可能是 xxxxxxxxx”的文本中。使用以下步骤搜索此句末尾的地址。 单击新建扫描。单击“值”字段旁边的“十六进制”复选框。在 Value 字段中输入指针地址,然后单击First scan。

7 双击指针地址。这会将地址添加到作弊引擎底部的列表中。 如果地址在扫描结果中以绿色列出。这意味着它是一个静态地址,可能是您正在寻找的指针。在某些情况下,您找到的指针也可能是指针。这称为多级指针。在这种情况下,您需要对找到的每个指针重复这些步骤,以找出根静态指针地址是什么。

8 双击“地址”下方的数字。这将打开“更改地址”对话框。

9 复制字段中的地址,然后单击取消。要复制地址,只需突出显示“更改地址”框顶部字段中的整个文本。右键单击它,然后单击复制。然后单击“取消”关闭该字段。

10 单击手动添加地址。它是作弊引擎底部地址列表上方左侧的按钮。这将打开一个类似于“更改地址”框的框,除了这个框允许您添加地址。

11 单击“指针”旁边的复选框。这会扩展该框并添加一个新的文本字段,您可以在其中输入指针。

12 将指针地址粘贴到“指针”下方的字段中,然后单击确定。这将为控制要更改的值的指针添加一个新地址。您刚刚创建的指针的地址将显示为“P-->xxxxxxxx”。这表明这是一个指向特定地址的指针。 如果有偏移编号,请将其输入到粘贴地址的字段上方的空白处。如果有多个指针,请单击添加偏移量。这将在您粘贴地址的区域上方添加更多偏移量数字框。在每个框中输入正确的偏移量。

13 单击刚刚添加的指针地址旁边的“活动”框。它是屏幕底部列表地址列表中“活动”下方的框。这会激活指针。

14 更改您刚刚添加的地址的值。您刚刚创建的指针地址的值编号应该与您搜索的值的地址相同。如果指针写入不同的位置,您扫描的原始地址将不再有效。但是,您仍然可以更改刚刚创建的指针地址的值。无论将值位置写入何处,这都将起作用。单击您刚刚添加的地址的“值”下方的数字。输入一个新的数值并点击Ok。 部分6 使用代码注入更改代码

1 扫描要停止的值。这部分教你如何使用代码注入来改变代码写入值的方式。例如,如果您每次被击中都会失去生命值,您可以更改代码,以便在被击中时增加生命值。

2 右键单击该地址,然后单击Find out what access this address。这将打开作弊引擎调试器。

3 单击是。这确认您希望将调试器附加到 Cheat Engine 进程。这将打开代码调试器。当窗口第一次打开时,列表将是空白的。

4 返回游戏并再次更改值。再一次,回到你的游戏并做一些事情来改变你想要停止的价值。这将导致访问您选择的地址的代码出现在调试器窗口中。

5 返回游戏并再次更改值。再一次,回到你的游戏并做一些事情来改变你想要停止的价值。这将导致写入该地址的指令出现在调试器窗口中。

6 返回作弊引擎并单击列表中的指令。可能有多个地址。如果是这种情况,请在指令中查找包含单词“sub”的指令以从值中减去,或者查找包含单词“add”或“inc”的指令以增加值。

7 单击显示反汇编程序。这将打开反汇编程序中的代码。

8 选择减去或增加值的代码。它通常是代码顶部的第一条指令。它很可能在代码的开头有单词“Sub”或“Add”,以从值中减去或添加到它。

 

单击工具,然后单击自动组装。这将打开自动汇编程序。

10 单击模板,然后单击完全注入。这将显示一个弹出窗口,确认您要将代码注入的地址。

11 确保地址正确,然后单击确定。确保该字段中的地址与您在 Memory Viewer 反汇编器窗口中选择的地址相同。然后单击确定。这将打开一个新模板。

12 将代码替换为相反的代码。向下滚动到显示“代码”的位置。它下面的行是更改值的代码。如果该行以“sub”开头,则将“sub”更改为“add”。如果该行以“add”开头,则将其更改为“sub”。您还可以更改行尾的值,以更改您希望它更改值的程度。

13 单击执行,然后单击是两次。“执行”按钮位于代码注入窗口的底部。系统将询问您是否确定要注入代码。单击是确认。然后您可以单击是或否在反汇编程序中打开新代码。如果代码注入成功,则游戏中的值将与它们应该做的相反。您可以通过射击武器而不是丢失弹药来获得弹药。当你被击中而不是失去健康时,你可以获得健康。 部分7 区分具有共享代码的对象

1 扫描要停止的值。在某些游戏中,多个对象共享相同的代码。将代码注入一个对象也会影响所有其他对象。因此,您可能会冻结自己的健康条,结果却发现所有敌人的健康也被冻结了。在这种情况下,你需要弄清楚如何区分不同的对象,并注入一个只影响你想要的对象的脚本。 为了为不同的对象注入脚本,你需要知道一些汇编代码。但是,创建一个基本脚本并不难。

2 右键单击该地址,然后单击Find out what writes to this address。一旦确定了要更改或停止的值的地址,找出写入这些地址的内容,打开调试器并找出写入该地址的内容。

3 选择指令并单击Show disassembler。这是打开调试器时突出显示的指令。这将显示代码反汇编程序中的指令。

4 右键单击顶部指令,然后单击找出该指令访问的地址。这将打开一个窗口,其中显示指令在写入新地址时访问的所有地址的列表。

5 允许游戏中的所有对象更改其值。这将显示指令访问的所有地址的列表。例如,如果您试图阻止您的健康栏发生变化,您可以返回您的游戏并受到打击。这将在访问地​​址列表窗口中显示访问该地址的指令。如果你击中了一个也共享该指令的敌人,它也会显示在访问地址列表窗口中。

6 在访问地址列表窗口中选择所有地址。一旦您拥有访问地址列表中所有共享相同地址的对象的地址,只需单击并拖动以突出显示所有对象。 或者,您可以右键单击每个单独的地址,然后单击Show register states。[2]

7 剖析所有列出地址的结构数据。使用以下步骤来剖析地址列表的数据结构: 右键单击选定的地址。单击打开带有选定地址的解剖数据。单击确定。输入数据结构的名称并单击Ok。单击是。输入结构的起始大小或保持原样,然后单击Ok。

8 找到一个对玩家相同但对其他对象不同的值。无论您是查看每个对象的数据结构还是寄存器,您都需要找到一个对所有盟友都相同但对敌人不同的值。例如,如果团队 1 有两个玩家角色,而团队 2 有两个计算机控制的角色,那么团队 1 的角色可以用值 1 表示,而团队 2 的值可能是 2。 如果找不到对盟友相同但对敌人不同的值,您可以制作一个。只需右键单击其中一个值(例如指针),然后单击Add Element。选择“4 Bytes”作为数据类型,并给它一个不取的偏移数值。偏移量编号列在数据剖析结构表的左侧。

9 请注意该值的寄存器。无论您是查看寄存器视图还是数据剖析视图,寄存器值都在左侧。在寄存器视图中,它将是指令写入的实际寄存器(即 RSI、RDX、EDX 等)。如果您正在查看数据结构,则寄存器将是左侧列出的偏移量数字或字母。

10 为指令打开一个新的代码注入模板。返回到 Memory Viewer 窗口并为写入不同地址的指令打开一个新的代码注入模板。使用以下步骤执行此操作: 单击 Memory Viewer 窗口中的指令。单击顶部菜单栏中的工具。单击自动装配器。单击顶部菜单栏中的模板。点击代码注入。

11 为要影响的对象创建一个新标签。标签列在代码注入模板的顶部。在现有标签下方为要影响的对象添加新标签。要添加标签,只需label在括号中键入标签名称即可。例如,“标签(玩家)”或“标签(敌人)”。

12 为您刚刚创建的标签创建一个新部分。要为标签创建新部分,请在原始代码之前或之后的任意位置键入标签名称,后跟冒号 (:)。

13 将代码添加到更改要影响的对象的值的标签中。这需要一点汇编代码的知识。您需要添加一行代码,以您想要更改的方式更改您想要更改的对象的值。然后你需要添加一行跳转到出口,原始代码,返回代码。

14 在“newmem”下面创建一个比较代码。代码注入模板中的“newmem:”行表明该指令正在调用一个新的内存地址。通常,它将直接进入具有 (code:) 或 (originalcode:) 标签的原始代码。使用“cmp”命令创建一行代码,比较注册表或注册表中不同对象的值加上偏移量。例如,如果偏移量为 14 的 RDX 从计算机团队中确定了玩家团队,并且玩家团队的值为 1,则您将键入cmp [rbx+14],1以检查对象是否为玩家。

15 添加一行代码,跳转到要更改的对象的部分。使用“je”命令跳转到您的比较命令部分。例如,如果您的标签名为“播放器”,je player如果值比较对应播放器,则添加行以跳转到播放器部分。

16 添加跳转到原始代码的代码。在您创建一行代码以跳转到要更改的对象的部分后,如果值与玩家或盟友不对应,则需要添加一行代码以跳转到原始代码。使用“jmp”命令在跳转到原始代码的代码行之后创建一行代码跳转到原始代码(或您创建的另一组执行不同操作的代码)。 保持简单的一种方法是不添加任何新标签。只需在“newmen:”末尾创建一个比较代码,以区分盟友和敌人。然后添加一行代码,如果是盟友则跳转到出口。如果是敌人,让它跳转到原始代码。这将使得如果玩家或盟友受到攻击(或使用消耗品等开火武器),什么都不会改变,但如果敌人受到攻击,代码将正常执行。

17 单击执行。这将执行您输入的代码。如果一切顺利,您将注入区分盟友和敌人的新代码。以下是一个简单的脚本示例,您可以使用它来区分盟友和敌人:  alloc ( newmem , 2048 , " Tutorial-x86_64.exe "+ 2 EB6D ) label ( returnhere ) label ( originalcode ) label ( exit ) label ( player ) //播放器的新 标签 。 newmem: //这会 调用 一个 新的 内存 地址。 cmp [ rbx + 14 ], 1 // 这将 区分 友方团队成员和敌方团队je player //如果对象在玩家的团队中,则跳转到玩家部分。jmp originalcode //跳转到_ _ 如果对象是敌方团队,则为原始代码。 player : //这 会为玩家的队伍创建 一个 新 部分 jmp exit //这会跳转到出口并且对玩家的队伍没有任何作用。 originalcode: //这 是 原始 代码段movss [ rbx + 08 ] , xmm0 //这会执行原始 指令(针对敌方队伍) exit: //本 节 结束 此 脚本。 jmp 回到这里 " Tutorial-x86_64.exe "+ 2 EB6D : jmp newmem 返回这里: 部分8 了解作弊引擎

1 了解作弊引擎的工作原理。作弊引擎可以访问存储在计算机随机存取存储器 (RAM) 中的数据片段。当您运行某个软件(例如游戏)时,信息会从硬盘驱动器等静态存储位置传输到您的 RAM。从那里,可以读取和写入信息。作弊引擎允许您扫描存储在 RAM 中的信息并更改信息。

2 理解术语。作弊引擎处理大量高级计算机代码。为了让事情更容易理解,理解一些涉及的术语会有所帮助。以下是作弊引擎中使用的一些术语: 值:值是计算机程序中附加了数值的任何东西。它可以是您的健康百分比,您拥有的弹药数量或您拥有的物体的数量。作弊引擎允许您扫描变量并对其进行更改。地址:地址是信息在 RAM 中存储的位置。有时,值的位置可能会改变。数据类型:数据类型是值的存储方式。I 可以是字节(即 2 字节、4 字节或 8 字节),也可以是浮点数或双精度数。指针:指针是一个地址,其中包含一个由另一个地址写入的值。这些地址可能会在您每次加载游戏时更改,或者在游戏进行中的某个时候更改。

3 了解 Cheat Engine 不适用于许多游戏。任何具有某种形式的作弊保护或在线多人游戏功能的游戏都不能与 Cheat Engine 一起使用,并且尝试使用 Cheat Engine 通常会导致您的帐户或个人资料被禁止在线玩。 如果您能够以某种方式使用作弊引擎来获取通常用真钱购买的资源,您可能会因盗窃而受到起诉。CE是一款备受瞩目的软件,因此大多数游戏都有某种形式的保护措施。

4 了解哪些游戏可以与CE一起使用。较早的单人游戏和一些 Steam 单人游戏应该可以使用 Cheat Engine,但相关游戏必须具有一些您可以查看和更改的屏幕值。 许多没有社区链接的在线 Flash 游戏(例如,没有多人游戏和没有高分)也与 Cheat Engine 兼容。


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3