|
发表于 2009-12-20 22:57:03
|显示全部楼层
第一步:
先在开始菜单上找到CE的程序组,找里面的“Cheat Engine Tutorial”(以下简称TUT),点击运行。这
个时候就出来这个TUT的框,上面一大段英文,而Next这个按钮是灰的,为什么呢?让我翻译一下上
面的英文吧,你就明白。TUT上面的英文的译文,我会用【】号把它们括起来。
【欢迎你来到CE的教程(V2.4)
这个教程试图解释在游戏中作弊的基本步骤,并让你更熟悉CE的使用。
首先运行CE,如果你还没运行的话(CCB:因为还没运行,所以Next按钮才是灰色的:)。
然后点击"open process"按钮(在左上角那个有电脑图标的那个)
当进程列表窗口打开后,找到这个教程,进程的名字应该是“tutorial.exe”,除非你把它改名了。选
择它,并点击OK。现在先不要管其他所有的按钮,如果你喜欢,以后再研究它们。
当这一切都做对了之后,进程选择窗口将会消失并且在CE上方会显示进程名。
现在,点击NEXT按钮继续到下一个步骤(或者输入密码而进到你想去的其他步骤)。
】
好了,上面的这些英文,我翻译过来了,所以这一步应该不需要我再补充什么,看这些译文应该能明白
怎么做,就是开TUT,开CE(哪个先开都没关系),然后点击CE左上的那个选择进程的按钮,选择这个TUT
的进程,这样就可以点NEXT进到下一步了。
第二步:
【第二步:精确数值扫描(密码:090453)
现在你已经在CE中打开了TUT,让我们到下一步吧。
你看到在这个窗口的下方的文字Health:XXX
每次你点击"Hit me"(打我)时,你的Health(血)会减少。
要进到下一个步骤,你必须找到这个数值并把它改为1000
要找到这个数值,有几个不同的方法,但我会告诉你一个最简单的,'Exact Value(精确数值扫描)':
首先数值类型设置为2字节或4字节,1字节也可以的,但当你最后在修改它时你会遇到麻烦(虽然很
容易解决)(CCB:大家不会忘了吧?1字节表示的最大数值是255,而这里要你改为1000,所以虽然用1字
节能找到,但要改却要连前一字节一起改,所以有点麻烦,不过不是大麻烦)。8字节可能也可以,如果
这个地址后面是0的话,不过我不敢打赌。Single, Double, 以及其他的扫描方式不行,因为它们储存数
值的方式不同。
当数值类型设置正确后,扫描方式设置在'Exact Value'
把血的数值填在数值输入框上,并点击'First Scan(首次扫描)'
过一会儿(如果你有一个非常慢的电脑的话)扫描完成并且扫描的结果会显示在左边(如果找到的地址的数
量少于设置的数值的话)。
如果你找到多于一个地址而你不知道哪一个是正确的地址的话,点击TUT上的'Hit me',并把新的血的数
值填到数值输入框,并点'Next Scan(再次扫描)'
重复这些步骤直到你你已经找到它的地址了(在地址列表上只有一个地址)
现在双击左边列表上的地址,这样会让这个地址移动到下方的列表上并显示它的当前数值。
双击(下方列表的)数值栏(或者选择它,并按回车),并把它修改为1000。
如果一切都OK,NEXT按钮将会变成可点击的了,你就准备好了下一步了。】
这一步,也不用我再补充什么了,这个TUT已经说得很清楚,这是使用CE的最基本功能,即找到数值,如
果扫描结果太多,试图改变数值然后再次扫描,直到结果剩下很少或者1个为止,这样你就找到了要修改
的数值的地址,并且也就能修改它了。到这一步,你已经能对付很简单的游戏了,不过现在的大多数游
戏都没这么简单,但至少你已经学到最基本的一步,就是精确数值的扫描和修改了。现在就点击NEXT进
入下一步吧!
第三步:
【第三步:未知初始数值(密码:419482)
OK,看来你已经理解了怎样使用精确数值扫描找到一个数值了,让我们下一步吧。
在上一步中我们知道初始数值所以我们进行了精确数值扫描,但现在我们有一个进度条,我们不知道它
开始时的数值。
我们只知道这个数值是在0到500之间,并且每次你点'Hit me'之后你会减一些血,每次减的血量会显示
在进度条的上方。
同样的有好几个方式找这个数值,(例如使用“减少了什么数值”的扫描方式),但我只解释最简单的方
式,“Unknown initial value”(未知初始数值)和“Descreased value(减少了的数值)”。
因为你不知道现在它的数值是多少,所以使用精确数值不行了,所以选择扫描方式为"Unknown initial
value",同样的,数值类型选择4字节,(大多数WINDOWS应用程序使用4字节数据)
点击'First scan'并等它扫描完成。
当扫描完成后点击'Hit me',你会掉一些血(掉的血量多少会在血条上方显示几秒然后消失,但你不需要
这个数值)
现在回到CE,并选择'Decreased Value'(减少了的数值),并点击“Next Scan”
当扫描完成后,再次点击'Hit me',并重复上面的步骤,直到你找到了若干地址。
我们知道这个数值是在0到500之间,所以选择比较象我们要的那个地址是,并把它加到下边的列表。
现在,把它改为5000,才能进到下一步。
】
这一步,稍为复杂一点了,这是对那些血条之类的东西的扫描。作者说知道数值是0到500之间,但没说
是怎么知道的。我的看法是,这东西一方面靠猜,另一方面靠试。你也许会说,比如血条或蓝条,上面
或下面不是有数字吗?是的,有些有,有些没有,但有时,血条上面有个表示血的数字,说血是548,但
你就知道它是真的按这个值存在内存的吗?不一定的哦,很多游戏的开发者,可能会用某一个方式存真
正的血的数值,而用另一个方式显示,例如,最简单的就是,真正的血是你看到的数值的3倍,例如上面
说的548,其实在内存可能是14,而当它要显示的时候才把14除以3然后显示出来,所以如果你受这
个显示数字的误导,结果就有可能找不到真正的地址。所以关于那些以长度表示的数值,一般还是靠猜
,然后根据猜测来找。还有,CCB友情提醒一下,其实有时在找到的数值比较多的时候,试试在扫描的过
程中,数值确实没改变的情况下,多加几次"Unchange"(无变化)扫描,这样可以再减掉一些无关的
结果。另外,其实在这一步,如果你够聪明,每次点了Hit me之后记住血条上面显示的减少的数字,再
在CE中输入刚才的数字(负号不要,负号只是表示它是减少的),并选择'Decreased value by',即“减
少了什么数值”,这样也能更快地找到准确的地址,但这种方式是在要知道减少了多少这个具体数值才
有用。好了,继续下一步吧。
第四步:
【第四步:浮点数(密码:890124)
在前面的教程中,我们使用字节来扫描,但有些游戏使用了叫做“浮点数”的记数方法。
(可能是为了防止简单的内存扫描)
浮点数是带有小数点的一些数字(如5.12或11321.1)
如下边你看到你的血(Health)和子弹(Ammo)。两者都以浮点数储存,但血是储存为float(浮点数)而子弹
是储存为double(双精度浮点数)(CCB:这是数据类型的术语,float和double都是浮点数,但float为单
精度数,而double为双精度数,它们在电脑里面占用的字节数长度不同,而所能表示的精度也不同,看
不懂不要紧,反正知道这是两种不同的浮点数就行)。
点击Hit me可以减少一些血,而点击shoot(CCB:其实是Fire)可以用掉0.5的子弹。
你得把这两者都修改到5000或者更多才能进下一步。
精确数值扫描方式在这一步能工作得很好,但也许你想试试其他的扫描方式。(CCB友情提示:扫描子弹
的时候试试'Decreased value by'方式就不错,数值填入0.5,很快就能找到)
】
这一步,其实也没什么,只是让你熟悉不同数据类型的扫描。再次提醒一下,其实有时游戏的开发者为
了不让你太容易扫描到数值的地址,所以有时故意颠倒黑白,例如你看到有小数的地方,有时在内存却
是用整数来保存,而你明明看到是显示为整数的数值,却有可能在内存中是用小数来保存,所以有时不
要轻易地被你看到的东西误导,特别是在多次搜索不到结果的时候,有时要换换别的方式,不要让狡猾
的游戏开发者骗了:)。
第五步:
【代码寻找(密码:888899)
有时一些东西的保存位置在你重新开始游戏时会改变,甚至是在你玩的时候也会变,在这种情况下,你
用二件事仍然能做出可以用的内存列表。
在这一步我会描述怎样用寻找代码功能。
下面的数值每次你开始这个TUT的时候会存放在不同的位置,所以一个普通的内存地址列表将会不适用。
首先找到这个数值的内存地址(你能进到这一步,我假设你已经知道怎么做了)
当你找到地址后,右击CE中的这个地址,并选择“Find out what writes to this address”(找到是什
么改写这个地址),一个窗口将会出现,上面会有一个空的列表。
然后,点击这个TUT上的'Change value'(改变数值)按钮,回到CE,如果一切都做得对,会看到一个地址
和一些汇编代码。
点击这个地址并选择Replace(替换)选项把它替换成什么也不做的代码,这样还会将代码地址加到高级选
项窗口上的代码列表(它将会一起保存,如果你保存地址表的话)。
点击Stop,这样游戏(CCB:指这个TUT)将会再次正常地运行下去,并点Close关闭这个窗口。
现在,点击这个TUT上的Change value按钮,如果一切都做对,NEXT按钮将会变成可点击的了。
注:如果你以足够快的速度锁定这个地址,这个NEXT按钮也会变成可见的。
]】
越来越精彩了,现在不但教你找地址,还教你找那条修改这个地址的指令了,虽然,你还不太清楚怎样
手工修改找到的地址,但至少也比单纯地找数值的地址并修改和锁定要好一些了,不是吗?别急,更精
彩的还在后面呢。 |
|