SFCGENEditor 0.8.3リリース

ろだにうpされたDQ3 Extended 1.44対応をしています(モンスターのグラフィック描画の際にシフトされたレコードIDを参照するようになっている)。残念ながら1.44対応のプログラムでは現状1.43のモンスターグラフィック描画やパレット変更が正しく動作しません。というわけで、1.43を使い続けたい場合はしばらく同梱予定のDQ3SFCPluginfor1.43.dllをリネームして使用してください。例によって「ダウンロード」ページにうpしてあります。

今回のDQ3 Extended 1.44はもともとは86氏が当ブログの以前の記事を見て解決策を出してくださったものです。こちらの中途半端な作業を形にしていただき大変恐縮です。ともあれ、この変更により、パレットアクセスはモンスターは256種異なる色を使用することが可能になり、また、もともとのパレットアクセスには約250空きができることになります(1.43は80前後)。モンスターのカラーリングを別立てでできるようになったので、安心して色定義ができそうです。自分の開発中のK.Mix(実はまだ作業中)にも反映させました。

さて、実現方法は実に簡単で、モンスターデータ中に記述されているパレットアクセスIDに0x0400シフトした場所に実際のパレットアクセスデータを置く、というものです(これが思いつかなかったんですよねぇ)。実際のデータの移動に加えて、モンスターの描画をする際にパレットアクセスIDを取得している直後で#$0x0400を足しています。また、一部モンスターのアニメーション(バラモス、ゾーマ)でパレットアクセスIDを直接指定している場所があるので、そのIDにも#$0x0400を足してやります。

  • SR: $047EA2 モンスター出現数決定?
047EF422 F3 FF C4SR: $04FFF3モンスター用パレットアクセスIDシフト処理
047EF880 02goto $047EFC
047EFAFF
047EFBFF

  • SR: $048242 モンスターグラフィック描画
04824322 F3 FF C4SR: $04FFF3モンスター用パレットアクセスIDシフト処理
04824780 02goto $04824B
048249FF
04824AFF

  • SR: $04FFFC モンスター用パレットアクセスIDシフト処理(新SR)
04FFF322 8B CC C2 08 00 C0 FFSR: $02CC8B 引数:1#$0008 引数:2#$FFC0パレットアクセスID取得
04FFFB18c=off
04FFFC69 00 04A+=#$0400シフトする
04FFFF6Breturn

デバッグメニューでひと通り確認する限り、問題なさそうです。実際の戦闘でもエフェクト発生後も正常に動作していました。

※スタイルシートをいじってブログのデザインのテーブル幅を固定で指定している部分をオーバーライドして690pxから900pxに変更しました。プログラム部分の記述が多少見やすくなっていることを期待。

コメント

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