Re: [心得] 簡單來談談BizHawk記憶體修改程式
今天來實作模糊搜尋
實作前先來說明一下
先確定你要找的未知數是定值,但,你無法用精準搜尋找出來
可能是血條,可能是未顯示的參數,可能是時間,而這個未知
數可能是有跡可循,只是我們不知道它的起始值與變動值
我建議要練手先找有金手指位址的遊戲來練習,這樣才好控制
變數,你才知道自己的操作有沒有做錯,有沒有脫靶不小心排
除掉目標位址
流程不外乎先暫停→搜「等於來定起始值」→解除暫停回遊戲
產生變動值→按暫停→切換大於或小於按搜尋→解除暫停回遊
戲產生變動值→按暫停→切換大於或小於按搜尋→位址剩下個
位數位址→邊玩遊戲邊判斷剩餘位址是否有連動?是否是你要
的位址?
失敗就流程再來過
判斷是否是正確位址有時需要大膽修改數值或直接鎖定凍結
鍵盤的Pause鍵預設就是BizHawk的暫停,按它會畫面凍結連
遊戲時間值都會停止,如果小遊戲有需要按暫停,解除暫停當
然就是再按一次,你也可以改熱鍵指定手把未使用按鍵作為即
時暫停來用相當節省時間
請注意底下每一張截圖都是在暫停狀態,去挨打是一定解暫停
再挨打再暫停再進行截圖,以防你沒注意到我必須先說明清楚
實作開始
https://imgur.com/SNCDtvc


還記得46億年HP用10進位或16進位精準搜尋搜不到嗎?今天
模糊搜尋實作就拿它來一步一步操作,看需要多少次完成
上面兩張圖是起始狀態,HP:20/20
我們先來看看精準搜尋20
https://imgur.com/dyTEI4o

先來挨第一下傷害-2,HP:18/20
https://imgur.com/Upt2L95

我們再來搜18,果然搜不到
https://imgur.com/sFNpNla

沒關係,我們清掉按NEW,流程重來先設好不指定數值、10進
位、1BYTE,正式來模糊搜尋
https://imgur.com/dNXqBVJ

上面圖是按NEW之後我正常會用等於起手排除變動值位址,不
過,這次我起始值想用大於零起手
https://imgur.com/QFTRJvI

目前我們狀態是,HP:18/20,再來我們會再挨一下
https://imgur.com/Png33vv

傷害-2,HP:16/20,再來我們會搜小於
https://imgur.com/5imOpYw

再來我們會再挨一下傷害-2,HP:14/20
https://imgur.com/md2fwtX

再來我們會搜小於
https://imgur.com/Za4H4IU

再來我們會再挨一下傷害-1,HP:13/20
https://imgur.com/w5dGUjQ

再來我們會搜小於
https://imgur.com/7mwU8A9

再來我們會再挨一下傷害-1,HP:12/20
https://imgur.com/s4FIfQE

再來我們會搜小於
https://imgur.com/b5URBZQ

再來我們會再挨一下傷害-1,HP:11/20
https://imgur.com/U1a4fab

再來我們會搜小於
https://imgur.com/WdN5t0Z

再來我們會再挨一下傷害-2,HP:9/20
https://imgur.com/k8vzi0f

再來我們會搜小於
https://imgur.com/SOjZp5U

再來我們會再挨一下傷害-2,HP:7/20
https://imgur.com/XEXlgWG

再來我們會搜小於
https://imgur.com/cHMBFCK

再來我們會再挨幾下傷害-5,HP:2/20
https://imgur.com/JMVrvCP

再來我們會搜小於
https://imgur.com/BF0tX45

到了這裡位址剩一個,HP:2/20
正常到了這一步就算接近收工了,剩下就是觀察數值變動,再三
確認,這個位址你可以鎖定起來,也可以回遊戲做變動,或者大
膽修改數值反覆回遊戲查看,再來確認一下是否是我們找的目標
位址?
這裡我選擇回遊戲咬死怪,吃掉肉補血來確認
吃肉補血+2,HP:4/20
https://imgur.com/aCgKRQ3

再來我們看位址數值變化,數值:4
https://imgur.com/vKN69DH

到了這裡我們再比對金手指表單,果然位址相符
00C5
https://imgur.com/HfaFF3e

最後就是自己判斷它這個位址變化趨勢,一般我會複製兩組同一
位址,一個1BYTE10進位,一個1BYTE16進位
道具數量正常不會超過255,1BYTE很夠用了
HP多半不會超過65535,2BYTE很夠用了
金錢、經驗原則上大概是2BYTE到4BYTE之間
另外,搜尋時本來就會暫停,不過,事先精確暫停比較不會出意
外,小心駛得萬年船,加油!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 182.235.24.124 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Emulator/M.1743089929.A.6EC.html
※ 編輯: flingcould (182.235.24.124 臺灣), 03/28/2025 00:01:17
※ 編輯: flingcould (182.235.24.124 臺灣), 03/28/2025 00:12:43
※ 編輯: flingcould (182.235.24.124 臺灣), 03/28/2025 00:18:41
推
03/28 07:02,
3天前
, 1F
03/28 07:02, 1F
推
03/28 16:19,
2天前
, 2F
03/28 16:19, 2F
推
03/28 22:44,
2天前
, 3F
03/28 22:44, 3F
→
03/28 22:45,
2天前
, 4F
03/28 22:45, 4F
→
03/29 08:47,
2天前
, 5F
03/29 08:47, 5F
→
03/29 08:47,
2天前
, 6F
03/29 08:47, 6F
→
03/29 08:47,
2天前
, 7F
03/29 08:47, 7F
推
03/29 19:35,
1天前
, 8F
03/29 19:35, 8F
討論串 (同標題文章)
Emulator 近期熱門文章
PTT遊戲區 即時熱門文章