傻瓜教程目標(biāo)是:注重操作,不求深入,主要是為了培養(yǎng)各位的興趣和帶你迅速入門。
先簡單介紹下什么叫CE,CE的全稱是Cheat Engine,最新的版本是5.6.1(作者是 Dark Byte)
CE是目前最優(yōu)秀的游戲修改器,不是之一,這個(gè)工具絕對(duì)值得你去學(xué)習(xí)(只要花一點(diǎn)時(shí)間就夠了)。
忘記金山游俠,GM8,F(xiàn)PE之類的修改工具的吧,CE會(huì)讓你愛不釋手。
一、先下載CE 5.6.1,這個(gè)漢化版相當(dāng)不錯(cuò)哦(不需要安裝),推薦各位下載使用。
下載地址:http://www.innovatechautomation.com/soft/23578.html
二、打開CE目錄下的2個(gè)文件:
三、附加進(jìn)程(圖示):
操作到此就結(jié)束了。這個(gè)教程就是如此簡單,下一關(guān)同樣如此。
(就像玩游戲一樣,完全是闖關(guān)試的操作,請(qǐng)各位按照順序,一關(guān)一關(guān)的走)
按下一步進(jìn)入教程第二關(guān),需要掃描的精確數(shù)值是100
現(xiàn)在開始搜索精確數(shù)值 100 數(shù)值中輸入 100 點(diǎn)擊 首次掃描 按鈕
一般游戲就是4字節(jié),這里不需要改動(dòng),默認(rèn)就好。
這次掃描我們得到 59 個(gè)結(jié)果,里面肯定有我們要找的那個(gè)血值,不過好像太多了。
關(guān)鍵一步:回到 Tutorial 點(diǎn)擊 打我 按鈕,此時(shí)血值已有變化了:
我們?cè)佥斎?96 點(diǎn)擊 再次掃描 按鈕 結(jié)果只剩1個(gè)(這就是我們要找的),我們雙擊此地址將其添加到地址欄:
只有1個(gè)結(jié)果了,這個(gè)就是我們要找的內(nèi)存地址,雙擊將其加入到地址欄
圖示操作:
把 95 改成 1000 點(diǎn)擊 確定 按鈕
此時(shí)教程的 下一步 按鈕變成可用
闖關(guān)成功。
操作雖然簡單,但是大家需要明白這其實(shí)是一個(gè)篩選的過程,這樣操作就能把地址找出來。
本關(guān)的小技巧:
1、雙擊下圖對(duì)應(yīng)位置可快速更改數(shù)值。
2、雙擊地址可快速將其加入到地址欄
第3關(guān)的密碼是 419482
這一關(guān)很重要,因?yàn)槟承┯螒蛑醒@示的不是數(shù)字而是血條,這樣的話教程2中的方法就失效了。
本關(guān)就你要教會(huì)你如何修改這些討厭的未知數(shù)
此時(shí)點(diǎn)擊 新掃描 然后選擇 未知初始數(shù)值
點(diǎn)擊 首次掃描 然后出現(xiàn)了肯定是N多的結(jié)果,因?yàn)樘嗔,CE沒有顯示出來。
老辦法,回到 Tutorial ,點(diǎn)擊打我 ,CE會(huì)告訴你血量減了多少,比如-1
這里面我們換個(gè)思路,假設(shè)CE沒告訴我減少了多少或者我根本沒看清,這時(shí)應(yīng)該怎么辦呢?注意看下面的操作
一、掃描減少的數(shù)值
下拉框,選擇減少了的數(shù)值,按再次掃描(此時(shí)血量減少了)
二、掃描不變的數(shù)值
然后選擇 沒變動(dòng)的數(shù)值(此時(shí)血量沒有變化)
三、反復(fù)操作
再回到Tutorial ,點(diǎn)擊 打我 => 掃描減少了的數(shù)值 => 掃描沒變動(dòng)的數(shù)值 反復(fù)操作,最后就會(huì)只剩14個(gè)地址
四、簡單判斷
簡單判斷下(Tutorial中告訴你了這個(gè)數(shù)值是小于500的),很容易就找到了最終的地址。
雙擊把地址加到地址欄,然后更改數(shù)值為5000,就可以過關(guān)了(前面教程有說過,這里就不再重復(fù)了)闖關(guān)成功。
大家一定要明白這樣操作的思路:
血量減少=>CE搜索減少的數(shù)值
血量不變=>CE搜索不變的數(shù)值
血量增加=>CE搜索增加的數(shù)值
這樣反復(fù)篩減,就能很容易找到最終的結(jié)果。
第4關(guān)的密碼是 890124
這一關(guān)的操作和前面和基本相同,主要是介紹一下什么浮點(diǎn)數(shù):
浮點(diǎn)數(shù)就是帶小數(shù)點(diǎn)的數(shù)字
如何掃描呢:
1、首先將數(shù)值類型改成 浮點(diǎn)數(shù)。
2、浮點(diǎn)數(shù)掃描時(shí)不必輸入后的小數(shù) 94.444 掃描時(shí)輸入94就可以了
其它的操作和前面的基本相同。
大家也注意到了(上圖),浮點(diǎn)數(shù)也分為2種:
1、浮點(diǎn)數(shù) 也叫單精度浮點(diǎn)數(shù) 英文是Single Float
2、雙浮點(diǎn)數(shù) 也叫雙精度浮點(diǎn)數(shù) 英文是Double Float
這里面要強(qiáng)調(diào)的是:
浮點(diǎn)數(shù)的長度是4字節(jié),使用4字節(jié)也可搜索到浮點(diǎn)數(shù),但需要使用模糊搜索。
下圖:
雙浮點(diǎn)數(shù)的長度是8字節(jié),使用8字節(jié)也可搜索到浮點(diǎn)數(shù),但需要使用模糊搜索
小技巧:
1、雙擊圖中紅圈處可快速更改數(shù)值類型。
2、浮點(diǎn)數(shù)在4字節(jié)中大多以11開頭。
現(xiàn)在好多游戲都采用浮點(diǎn)數(shù)來處理,比如瘋狂農(nóng)場(chǎng)中的時(shí)間。例如您在掃描游戲時(shí)發(fā)現(xiàn)一個(gè)數(shù)值是 1120403456 這時(shí)候您就要想到它是浮點(diǎn)數(shù)。
4字節(jié)的 1120403456 = 浮點(diǎn)數(shù)的 100
目前的游戲大多以4字節(jié)(含浮點(diǎn)數(shù))為主,雙浮點(diǎn)數(shù)大家知道就行了。
將 血 和 子彈 都改成 5000 就可進(jìn)入下一關(guān),操作和第二關(guān)基本相同。
前面的教程已經(jīng)教會(huì)你內(nèi)存的基本搜索方法。本關(guān)有點(diǎn)特別:
本關(guān)的目的就是要讓改變數(shù)值的按鈕失效,很神奇,但是有什么用呢?
1、在游戲中我們可以利用此功能使金錢數(shù)量不會(huì)發(fā)生變化。
2、可以利用此功能讓怪物攻擊失效,從而實(shí)現(xiàn)無敵的效果。
3、讓彈藥不會(huì)減少,從而實(shí)現(xiàn)無限彈藥的效果
好處太多了,本關(guān)的方法就可以輕松實(shí)現(xiàn)上面的功能。
先找到血量的內(nèi)存地址,不會(huì)找的先去看前面幾關(guān),這里就不重復(fù)了,然后 在地址上 右鍵=>找出是什么改寫了這個(gè)地址:
點(diǎn)擊確定
彈出一個(gè)小窗口
然后點(diǎn)擊教程中的 改變數(shù)值 按鈕
小窗口中會(huì)出現(xiàn)一行代碼,選中代碼,然后點(diǎn)擊替換
最后一步:直接按確定就可以
然后回到 按改變數(shù)值的按鈕,你會(huì)發(fā)現(xiàn)按鈕已經(jīng)沒有用了。本關(guān)操作已經(jīng)結(jié)束了
操作非常簡單,但是為什么這樣就會(huì)使按鈕的功能失效:
改變數(shù)值按鈕其實(shí)是通過 代碼 0045aecb - 89 10 - mov [eax],edx 來實(shí)現(xiàn)數(shù)值改變的。
我們?cè)诘淖詈笠徊讲僮骶褪且堰@行代碼替換成什么也不做(英文是 Nop),這樣就會(huì)讓按鈕的功能失效。
大家可以找一些小的游戲改一改,試試這種方法究竟好不好使。
這一關(guān)是相當(dāng)重要的一關(guān),請(qǐng)各位務(wù)必要學(xué)會(huì)找指針的方法。
為什么要找指針,在前面的教程中,如果各位細(xì)心觀察的話就會(huì)發(fā)現(xiàn) 在我截圖中的出現(xiàn)地址和你的地址并不相同。
也就是說,這些地址是一直在變化的,我們把它叫做動(dòng)態(tài)地址。
問題:電腦是如何每次都知道這個(gè)動(dòng)態(tài)地址究竟是多少的?
其實(shí)并不是所有的地址都會(huì)變化的,不會(huì)變化的地址,我們把它叫做基址。
實(shí)現(xiàn)思路:用不變的地址定位會(huì)變化的地址,即用基址定位動(dòng)態(tài)地址。
上面介紹了2個(gè)簡單的概念,現(xiàn)在開始我們的具體操作
首先找到血量的地址,加入到地址欄,然后在地址上按 右鍵=>找出是什么改寫了這個(gè)地址,然后點(diǎn)擊 改變數(shù)值 按鈕,出現(xiàn)一行代碼(見第五關(guān)),雙擊那行代碼(或者點(diǎn)擊詳細(xì)信息)
然后出現(xiàn)一個(gè)信息框,具體的代碼是什么意思就不解釋了,CE會(huì)告訴你下一步該做什么,圖:
CE讓我們下一步找 01da6d48(在你電腦顯示可能不是這個(gè)地址,因?yàn)樗莿?dòng)態(tài)地址),繼續(xù)操作:
回到CE,點(diǎn)擊新掃描,先勾上HEX,點(diǎn)擊首次掃描
一定要勾上HEX,否則CE在搜索16進(jìn)制字母時(shí)會(huì)報(bào)錯(cuò)。
搜索結(jié)果出來了:
這個(gè)地址 460c34 顯示的是 綠色 的,你的電腦上也應(yīng)該是這個(gè)地址,因?yàn)樗褪腔贰?br />
記。在CE中顯示綠色的地址是基址,黑色的地址是動(dòng)態(tài)地址
添加指針:
點(diǎn)擊 手動(dòng)添加地址
圖示操作,輸入 460c34 然后點(diǎn)擊確定
注意看:指針在地址欄顯示的是 p-> 地址 這種類型的
我們將數(shù)值改成5000,再點(diǎn)擊前面的鎖定
然后點(diǎn)擊 Tutorial 中的 改變指針 按鈕,這關(guān)就可以過了。
注意
前面一個(gè)概念沒有說明,添加指針的時(shí)候出現(xiàn),就是偏移,這個(gè)指針的偏移就是 0。
也有不是0的情況,大家可以對(duì)著教程實(shí)戰(zhàn)一下:
1、查找紅警的金錢:http://bbs.52miji.com/thread-1456-1-1.html
2、植物大戰(zhàn)僵尸陽光的查找:http://bbs.52miji.com/thread-1210-1-1.html
這一關(guān)相當(dāng)重要,大家一定要多多練習(xí)(學(xué)會(huì)前六關(guān),你已經(jīng)可以修改大部分的游戲了)
小說明:
1、并不是所有的游戲都要找基址然后做指針,有的游戲直接就是基址,比如這個(gè)教程:http://bbs.52miji.com/thread-2622-1-1.html
2、基址是綠色的,如果找到最后有多個(gè)綠色地址,在一般情況下選擇第1個(gè)。
最后介紹下CE中的模塊地址:
雙擊基址
您會(huì)發(fā)現(xiàn)顯示的竟然是 Tutorial.exe+60C34 而不是 00460c34 這是為什么呢?
其實(shí) Tutorial.exe+60C34 就等于 00460c34
一般來說游戲在電腦中申請(qǐng)的地址是從00400000開始的,Tutorial.exe代表的就是 00400000 然后加上 60c34 自然就等于 00460c34。
但是在某些情況下游戲的起始地址并不是從00400000開始的,或者說每次啟動(dòng)申請(qǐng)的地址都不相同;那么就不能用 00460c34 來添加指針了,真正科學(xué)添加指針的方法是:
從本關(guān)開始,各位會(huì)初步接觸到CE的反匯編功能,這也是CE最強(qiáng)大的功能之一。在第6關(guān)的時(shí)候我們說到指針的找法,用基址定位動(dòng)態(tài)地址。但這一關(guān)不用指針也可以進(jìn)行修改,即使對(duì)方是動(dòng)態(tài)地址,且功能更加強(qiáng)大。
看看教程讓我們做什么:原來每按一次按鈕減少1點(diǎn)血,改成每按一次按鈕增加2點(diǎn)血。
還記得第5關(guān)的不傷血的修改方法嗎?這一關(guān)就是第5關(guān)的加強(qiáng)版。
查找血量的地址,然后再地址上 右鍵=> 查找寫入的地址
然后按一下打我按鈕,會(huì)出現(xiàn)一行匯編代碼 0045a063 - ff 8b 10 03 00 00 - dec [ebx+00000310]
雙擊那行代碼,看下詳細(xì)信息:
這行代碼什么意思呢?dec 大家都知道是英文減少的意思
圖示紅框處:EBX=01e0ee18
我們用計(jì)算器算一下(注意是16進(jìn)制的)
01e0ee18 + 310 = 01E0F128 正好是血量的地址。
dec [ebx+00000310] = dec [01E0F128] 夠清楚了吧,這就是讓血量減1的代碼(1省略了),其實(shí)CE中也有提示 Decrement by 1 。
明白了這行代碼的意思,我們回去看看Tutorial的要求:把減1改成加2。
繼續(xù)操作。選擇反匯編程序
點(diǎn)擊工具,選擇自動(dòng)匯編
第一步選擇作弊框架代碼
第二步選擇代碼注入
對(duì)應(yīng)的地址不要搞錯(cuò)了,是0045A063
然后按確定,會(huì)自動(dòng)生成匯編代碼,這些代碼是什么意思,我們先不管,找到關(guān)鍵的一行:dec [ebx+00000310]
把代碼注釋掉(刪除也行),改成 add [ebx+00000310],2
保存即可,然后在地址欄就可以看到這個(gè)腳本了,點(diǎn)擊前面的 單選框 執(zhí)行,然后點(diǎn)擊Tutorial中的打我,這關(guān)就可以過了。
你感覺到他的神奇了嗎?逆天級(jí)的修改:
1、怪物每次打我從傷血變成加血。
2、子彈越打越多。
3、錢越花越多。
如果你學(xué)會(huì)了這一關(guān),你已經(jīng)脫離菜鳥的行列了,不要再提金山游俠,F(xiàn)PE,GM8之類的修改工具了,告訴你們的朋友快來學(xué)習(xí)CE吧。
最后,再強(qiáng)調(diào)一下CE中的模塊地址:
在第6關(guān)的后面有提到過CE的模塊地址,我說過這是科學(xué)的添加方法。這一關(guān)也同樣適用,就是在代碼注入的時(shí)候。
0045A063 變成了 Tutorial.exe+5A063
注入的時(shí)候也應(yīng)該是
小技巧:
這種方法并不是百試百靈的,對(duì)于某些變態(tài)的游戲可能并不好使。如何判斷這種方法是否有效呢?很簡單:
在上面選中 顯示模塊地址 后,如果 0045A063 變成了 Tutorial.exe+5A063 說明這種方法好使。反之如果 0045A063 還是 0045A063 則說明這種方法失效了。至于為什么,你以后會(huì)明白。
當(dāng)然CE也有解決的方法,有興趣的話,大家可以學(xué)習(xí)下大象教程4中的 Aobscan。
學(xué)會(huì)此關(guān),您已經(jīng)可以對(duì)付絕大部分的游戲了。但這僅僅開始,CE比您想像中的還要強(qiáng)大。
這關(guān)是第6關(guān)的加強(qiáng)版,CE 5.6.1教程中的4級(jí)指針比5.4的要簡單些。
多級(jí)指針就像玩解謎游戲一樣,謎團(tuán)不只一個(gè),盒子中還有盒子。這里面是4級(jí)指針,游戲中也有比如8級(jí)指針,12級(jí)指針等等,思路都是一樣的。
查找一級(jí)指針:
找到血量地址 01E13B3C (動(dòng)態(tài)地址),然后右鍵 => 查找寫入
然后點(diǎn)擊改變 數(shù)值按鈕
出現(xiàn)代碼的詳細(xì)信息。
這個(gè)該怎么看呢?EBX = 01E13B24
EBX + 18 = 01E13B3C 就是血量的地址,也就是說。想找到血量的地址就要找到EBX(01E13B24 ),注意看了圖中一行字:
要查找地址的指針的可能值是 01E13B24
如果您覺得分析太麻煩,就按CE的建議來,這里面要提醒各位注意 可能 這個(gè)詞,也就是說不一定全對(duì)。
第6關(guān)也提到過偏移的概念。這里面的一級(jí)偏移是 18
查找二級(jí)指針:
下面找EBX,勾上HEX(16進(jìn)制),輸入 01E13B24 新掃描。
然后把新地址 01E136D4 添加到地址欄,在地址上右鍵=>選擇 查找訪問的地址。
一定要注意:這里面和上面的操作不同,第一次是查找寫入的地址,這次選擇的是查找訪問的地址。
如果沒有出現(xiàn)代碼信息。我們就到 Tutorial 中點(diǎn)擊一下 改變數(shù)值 按鈕
這里分析和上面一樣的,直接看CE的建議就好了。二級(jí)偏移是 0
查找三級(jí)指針:
再搜索 01E136D4 得到 01E12414
在地址01E12414上 右鍵=>選擇 查找訪問的地址
如果沒有出現(xiàn)代碼信息。我們就到 Tutorial 中點(diǎn)擊一下 改變數(shù)值 按鈕
三級(jí)偏移是 14
查找四級(jí)指針:
重復(fù)操作(和前面一樣,該找什么CE會(huì)告訴你的)
4級(jí)偏移是 c
再查找 1e12f64 得到一個(gè)綠色地址,這就是最終結(jié)果了。
一定要記住:在CE中顯示綠色的地址是基址,黑色的是動(dòng)態(tài)地址。如果有多個(gè)綠色地址,一般情況下我們選擇第一個(gè)。
最后添加指針
點(diǎn)擊手動(dòng)添加地址
如下操作
輸入基址和偏移:
這樣輸入才完全對(duì)(第6關(guān)和第7關(guān)有提到模塊地址的概念):
然后把數(shù)值改成5000,點(diǎn)擊前面的鎖定,再點(diǎn)擊 Tutorial 改變指針按鈕,這關(guān)就可以過了。
多級(jí)指針要注意的地方:
1、1級(jí)指針是 查找寫入,其余全是 查找訪問。
2、綠色的地址是基址,黑色是動(dòng)態(tài)地址。
3、添加指針時(shí)注意用模塊地址。
指針是由基址在偏移組成的,所以在教程中我們只要找到4個(gè)偏移和1個(gè)基址就可以了。
上一教程中我們找到紅警金錢的基址是 A35DB4 偏移是 24C
圖標(biāo),選擇 高級(jí)選項(xiàng)
圖示選擇
默認(rèn)即可
圖示:
選擇添加
按圖示操作
增加熱鍵
改圖標(biāo) + 生成修改器
最終生成的修改器