DQ3 成長限界上昇パッチ修正作業

今回から実作業を行います。全ステータスについて同様の作業を書くのはアレなので最大HPを代表して紹介することにします(実際の作業は全てのステータスにおいて同様の作業をしています)。

  • SR: $04306F 最大HP取得
04306FJSR $F938SR: $04F938最大HPをシステム最大値でクリップする
043072RTLreturn
  • SR: $043073 最大HP変更
043073JSL $C5FD31SR: $05FD31最大HPをシステム最大値でクリップする
  • SR: $04307F すごろく場・種使用時の最大HPのステータスアップ処理
0430A4JSL $C4FF63SR: $04FF63最大HP加算+加算後のステータスを返す
  • SR: $04FF63 最大HP加算+加算後のステータスを返す(新SR)
04FF63PHAPush A
04FF64JSL $C5FEDASR: $05FEDA最大HP職業別最大値取得
04FF68PHAPush A
04FF69JSL $C4306FSR: $04306F最大HP取得
04FF6DCMP $01,SA==or>=Stack($01)?
04FF6FPLAPull A
04FF70PLAPull A
04FF71BCS #$05if(c==on) goto $04FF78
04FF73JSL $C430AESR: $0430AE最大HP加算+加算後のステータスを返す
04FF77RTLreturn
04FF78JSL $C4306FSR: $04306F最大HP取得
04FF7CRTLreturn

  • SR: $043C83 レベルアップ時のステータスアップ、呪文拾得処理?
043E37JSL $C4FF63SR: $04FF63最大HP加算+加算後のステータスを返す

これで一応仕様通りの動作をするはずです。ステータス取得時に職業最大値でクリップするのをやめているので、オリジナルのセーブデータを引き継いだ場合にステータス表示が職業最大値以上になる場合があります。というわけで、テストを簡単に行うためにデバッグメニューの「やけくそにつよい」を変え、全てのステータスを現職業の最大値にするようにしまいた。作業量は多いわりに大事な箇所は1行しかないので詳細は省略します。興味がある人はSR: $0DD5F9と$07C87A-07CB3CのSR群を見てみてください。

パッチの修正自体は終わりました。簡単なテストもOKっぽかったので、もう少しテストをして、数日中に修正したパッチをろだにうpします。

コメント

タイトルとURLをコピーしました