追蹤
Niauwu 的 cheat engine 教學
關於部落格
Niauwu教您如何使用Cheat Engine修改遊戲的數值,讓您輕鬆玩遊戲;玩遊戲輕鬆,我有facebook了
  • 158363

    累積人氣

  • 3

    今日人氣

    0

    追蹤人氣

tutorial step 7 Code Injection 注入程式碼 tutorial 6 教學

U是上圖,D是下圖
Step 7: Code Injection 注入程式碼 : (PW=013370) 

U到Step 7注入程式碼關,裡面有Health:100


D
用Cheat Engine找到Health:100的位址,不會找得參考
tutorial step 2 Exact Value scanning找尋實際值 tutorial 1 教學,找到後把他加到下面,在其上點右鍵,選擇Find out what writes to this address 


D
出現Confirm(確認)的視窗,選Yes


D
出現The following opcodes changed the selected address視窗


D
回到tutorial,按下Hit me 的按鈕,血由本來的99減少為98

D回到The following opcodes changed the selected address的視窗,點選新出現的東西,再按Show disassembler(反彙編器)

D
出現Memory Viewer(記憶體檢視)的視窗,點Tools(工具),選Auto Assemble(自行組合)


D
出現Auto assemble的視窗,點Template(模板),選Code injection(程式碼注入)



D
出現Code inject template視窗,輸入0045A063(其實一開始就幫我們輸入好了,按OK


D出現了該位址的程式碼,在紅色框框內是我們要輸入程式碼的地方,黃色框框裡面是一開始的程式碼。

U dec [ebx+00000310],是組合語言dec代表decrease(逐漸減少),[ebx+00000310]代表位址從D中,我們知道了[ebx+00000310]=0096E91C,所以整句"dec [ebx+00000310]"就是把address=ebx+00000310的位址的值減少1,所以我們的血值才會按一下Hit me 就會少1滴血。


D在注入程式碼這一關,可以用簡單的組合語言來注入程式碼,用add是很方便的方法,在黃色框框內輸入add [ebx+00000310],3,按Execute(執行)
延伸學習
1.add代表加上,,3代表3,整句add [ebx+00000310],3代表[ebx+00000310]的值加3,為甚麼要加3呢?因為本關要求注入程式碼後按下Hit me要從原本的減少1變成增加2,由於原始的程式碼我們沒有刪掉所以減1的效果還在,因此當我們輸入add [ebx+00000310],3,按下Hit me,就會執行+3-1=+2,所以等同加2
2.還有一個方法就是把原本的程式碼dec [ebx+00000310]刪掉,然後改成add [ebx+00000310],2,因為原本的-1程式碼已經刪掉了,所以按Hit me的時候就是+2
3.還有一個方法inc [ebx+00000310],inc代表increase(逐漸增加),inc [ebx+00000310]整句代表[ebx+00000310]的值+1,如果原本的程式碼dec [ebx+00000310]沒有刪掉的話,要貼上三個
inc [ebx+00000310] inc [ebx+00000310] inc [ebx+00000310]
刪掉的話當然只要貼上兩個
inc [ebx+00000310] inc [ebx+00000310]
4.除了dec inc add 外還有一個sub(subtract減去),用法sub [ebx+00000310],3代表[ebx+00000310]的值減去3
5.最後要注意的是add 和sub要用",x"表示要加上或是減去x,而inc 和 dec就不能用",x",因為inc 和dec是i++和i--
廣告還不錯支持一下吧

D出現確認的視窗,要我們卻認是否要注入程式碼,當然選Yes

D按OK


D回到tutorial按下Hit me ,我們可以發現Health從98變成100,每按一下hit me 血就會加2


終於完成了,接下來實際用小朋友下樓梯來試試看注入程式碼
小朋友下樓梯刺到針加5滴血~教學

相簿設定
標籤設定
相簿狀態