這個遊戲畫質比較差,應該是C社早期的作品,後來越改良越好。
首先先找金手指,找到一段「生命」
所以下斷點 wp E101,1,w
嘗試把35註記掉,發現不OK,因為這段代碼後面的CA 96 69,就是接關,這段跳過,在下段還是會直接死掉,要註記就要全註記00 00 00 00取代。稍微研究一下代碼,35是 dec (hl),然後34是inc (hl),所以如果直接把35改34,這樣就可以實踐死掉時,生命反而增加。
也是追斷點,看E0A5什麼時候被動到,後來追到一段代碼。
1d hl,$E0A5 把E0A5的值讀到hl暫存器
set 1,(hl) 把hl的值改為1,不管原本多少,這邊把CBCE改成CBDE,把hl的值改為3,不管原本多少,程式的設定只要超過1,就會是無敵狀態,所以給他一個3的數字,這樣就無敵。
再來是e164這邊有一個四發子彈,有子彈就80,沒有就00,同樣追斷點。
這個代碼很沒意義,因為已經無敵了,但是想看看GAMEOVER的時候,哪些東西被歸零。
果然找到大密寶,一起被歸零的還有E11F和EC07這兩個值
EC07是通過關卡,每次過關就加1,沒意義。
但是E11F就超有趣,他是小飛機的值。
同樣的,在這邊設斷點,往下追。
在E120發現每次吃到小飛機會變成83,E11F會變成02或03。
也就是說,只要能註記掉小飛機消失的代碼,小飛機就不會消失。
繼續追,小飛機撞擊時,會依序觸發3段代碼,這3段代碼都註記掉。
實踐小飛機無敵狀態,但是不知道為什麼,僅有左邊小飛機無敵,而且這個無敵和主角飛機不同的是,左邊的小飛機等同於一個戰搥,可以任意搥東西,右邊的小飛機就沒任何能力,但是死掉會在下一關補回。
原本以為這樣改就差不多了,無奈,玩一下就當了,然後夜已經深了,就不太想再研究下去。
有把翻車影片錄下來,前面幾關都還OK,後面就直接來一個ERROR。
也不知道前面哪一段代碼異常,也不想追了。
沒有留言:
張貼留言