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 モンスター出現数決定?
047EF4 22 F3 FF C4 SR: $04FFF3 モンスター用パレットアクセスIDシフト処理
047EF8 80 02 goto $047EFC
047EFA FF
047EFB FF

  • SR: $048242 モンスターグラフィック描画
048243 22 F3 FF C4 SR: $04FFF3 モンスター用パレットアクセスIDシフト処理
048247 80 02 goto $04824B
048249 FF
04824A FF

  • SR: $04FFFC モンスター用パレットアクセスIDシフト処理(新SR)
04FFF3 22 8B CC C2 08 00 C0 FF SR: $02CC8B 引数:1#$0008 引数:2#$FFC0 パレットアクセスID取得
04FFFB 18 c=off
04FFFC 69 00 04 A+=#$0400 シフトする
04FFFF 6B return

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

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

コメント

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