裏CHUNSOFT > ゲーム解析入門 > 1.ブフーの杖改造
1.ブフーの杖改造
ブフーの杖で、振られた側がNPCの時に何もしないように分岐する処理は031E60以降にあります。
031E60 E2 10 SEP #$10 ; "X","Y"のサイズは1バイト 031E62 A6 00 LDX $00 ; "X" = $00(振られた側のキャラ番号) 031E64 E0 13 CPX #$13 ; "X" - 13 を計算 031E66 F0 4D BEQ #$4D ; "X" = 13(シレン) のとき$031EB5へ(おにぎり状態にする) 031E68 86 00 STX $00 ; $00 = "X" 031E6A DA PHX ; 031E6B 22 AC 10 C2 JSL $0210AC ; キャラ番号$00の情報取得、$00=X座標,$01=Y座標,$02=方向,$03=キャラコード,$04=外見 031E6F FA PLX ; 031E70 A4 03 LDY $03 ; "Y" = $03(キャラコード) 031E72 C0 3C CPY #$3C ; "Y" - 3C を計算 031E74 B0 3E BCS #$3E ; "Y" >= 3C(3C以上は全てNPC) のとき$031EB4へ(何もしない) 031E76 C0 28 CPY #$28 ; "Y" - 28 を計算 031E78 F0 3A BEQ #$3A ; "Y" = 28(魔蝕虫) のとき$031EB4へ(何もしない)
見れば分かるように、031E70〜031E78の処理を無効にすれば良いのです。 特定の処理を無効にするには、NOPで埋める、JMPやBRAでジャンプする等、様々な方法がありますが、ここではもっと簡単な方法があります。 3Cと28を、キャラコードにはあり得ない値(例えばFF)に変更してしまえば良いのです。
ところで、振られた側がシレンの時にも、おにぎり状態にするように分岐していることが分かります。 折角なので、こちらも改造してみましょう。 031E65の13をFFに変更して、シレンにもブフーの杖の効果が出るようにしてみて下さい。 シレンにブフーの杖の効果が出ると(エーテルデビル、ガイコツまおうのどちらでも可)即死します。 復活の草を持っているとシレンの肉が出来上がります。
ということで、以下のように変更して、NPCやシレンにブフーの杖を振ってみて下さい。
変更前 031E60 E2 10 A6 00 E0 13 F0 4D 86 00 DA 22 AC 10 C2 FA 031E70 A4 03 C0 3C B0 3E C0 28 F0 3A A5 00 48 5A 86 00
変更後 031E60 E2 10 A6 00 E0 FF F0 4D 86 00 DA 22 AC 10 C2 FA 031E70 A4 03 C0 FF B0 3E C0 FF F0 3A A5 00 48 5A 86 00
2010年8月8日更新