DQ6 Extended 0.9.2リリース

戦闘中に麻痺中のモンスター(含むPC?)キャラクターがいるとフリーズする問題を修正しました。麻痺フラグを移動したのが関係していました。「ダウンロード」ページにうpしてあります。今回も現象発生直前のステートセーブ(SNES9x自動SS保存版を使用していただいたようです)を頂いたので比較的短時間で問題の特定ができました。ご協力ありがとうございます。

DQ6戦闘画面10

(12/03追記)
「ダウンロード」ページのURLが間違っていたので修正しました。ご指摘ありがとうございます。

問題の箇所は以下の場所です。スーパースターがパーティ内に存在するか判断する箇所に使用されるSRです。

  • SR:$02EEC1 ターゲット情報ビットマスク判定_SR_0032
02EEC1 LDA $204F,Y A=$204F+Y
02EEC4 CMP #$0200 A>=#$0200?

この箇所だけ他と異なり#$03FF(オリジナルでは#$01FF)でマスクする処理がありません。麻痺中のキャラクターが居ると最上位ビットがONになるので該当のアドレスの値が#$8xxxとなってしまうのでとんでもない場所の値を参照しようとしてフリーズするということでした。というわけで空いている箇所もないので別SRを作って必ず#$03FFでマスクするように変えました(簡単なので実装は省略)。

また、同梱のSFCGENEditor用のRommap.xmlに戦闘行動の対象範囲を選択するフィールドを定義しました。多分まだガバガバなので未定義のフィールドがかなりあると思います。必要な場合は各自適宜定義を追加していってください。

(11/11追記)
rc2に更新しました。モンスターがマホトーン、マホトラ、不思議な踊りを実行するかどうかを評価するSRの実行中に問題があることがわかっています。頂いたステートにはブースカ戦でもフリーズが起きるということでしたが、ブースカがベホマスライムを呼んでマホトラを実行しようとしてフリーズしているのであればこれで対処できていると思いますが、完全に直っているかは不明です。また、別の方が「テールイーター戦でフリーズする」とコメントしていましたが、テールイーターはこれらの行動を取らないのでまだ何かありそうな感じです。

(11/21追記)
rc3に更新しました。ご指摘いただいた問題のうち、修正対象は「ランプのまおうのモシャス時の指定パレットがモンスター基本データの1個上のまおうのランプ(エビルポットの色違い)になっていたためにおかしなパレットになる」だけです。紛らわしい名前のモンスターが2つ並んでいたので指定するパレットを間違ったというしょーもないミスでした。3つ目は単にモシャスの対象の幅がデカすぎてモシャス判定で失敗するということなので、特に何もしません。1つ目の問題はルイーダ熟練度表示バグによるものですが、DQ6 Extendedでは修正しません。また、rc1からD6_Extended.ipsがDQ6_Extended_test.ipsをあてた状態になってしまっていたのであわせて対処しています。

(11/30追記)
rc3をそのまま正式版に移行しました。

コメント

  1. syye より:

    おつかれさまです
    ちょうどテールイーター戦や沈黙の羊戦でフリーズの症状に困っていたところです。
    なるほどステートセーブを送れば開発に貢献できるのですね
    自分もなにかありましたら協力させて頂きますね。

    管理者より返信:

    協力ありがとうございます。1点注意していただきたいのが、SSを送る際はsnes9x 1.51版でということです。公開されているデバッガが1.51のものしかないので1.51以外のSSでは読み込めないからです。手前味噌ですがうちのサイトで後悔しているsnes9xカスタマイズ版を使っていただければストレスなくSSが回収できるはずです。その辺の詳しい話はこちらのエントリを参照してください。

  2. シルバー より:

    お早い対応ありがとうございます
    0.9.2rc1にテストパッチを適用しsnes9x151d3d_asを使用した状態で
    敵を麻痺させても問題ないことを確認しました
    ただ、一部敵との戦闘時にフリーズが発生しました
    毎回必ずフリーズする訳ではないので確認の手助けになればと
    ステートセーブは戦闘に入る直前とフリーズ直後を送付します
    ttp://up2.cache.kouploader.jp/xxxx.ZIP
    (※管理者がURLを変更しました)
    この内ダークホーン戦はsyyeさんの仰る沈黙の羊戦と同じ原因の気がします
    (マホトーン使用時?)

    管理者より返信:

    SSの送付ありがとうございました。調査した結果、マホトーンが戦闘行動の候補に上がった際ににPC側のMPを取得する箇所でとんでもない場所のアドレスを参照していてバグっていることがわかりました。サイレスのケースでは修正を確認しましたが、その他のケースについても修正が確認できたらrc2をリリースします。

  3. シルバー より:

    0.9.2rc2でブースカが呼んだベホマスライムがマホトラを使用してもフリーズしないことを確認しました
    その他敵のマホトーンやマホトラ使用時も改善されました、ありがとうございます
    テールイーターでのフリーズは自分も前に確認したんですが、その時はsnes9x151d3d_asとは
    違うエミュ使っていたのもあってステートセーブを取り損ねてしまいました
    現段階でテールイーターと何度か戦闘してみたのですが、自分の環境ではフリーズは発生しませんでした(snes9x151d3d_asと別エミュで確認)

    管理者より返信:

    確認ありがとうございます。最近またDQ3熱が高まってしまってDQ6は疎かになりがち(特にテストプレイ)なので何かあればSSを送っていただければなる早で対処します。SFCのエミュもコア部分は今となっては何を使っても変わりがないはずなので別エミュで起きなければ大丈夫だと思います。

  4. シルバー より:

    0.9.2rc2でゲームに支障が出る程の問題ではないのですが、気になる点が3つありました
    ・ルイーダに預けている仲間の職業熟練度表示が違うキャラと入れ替わる
    ・敵がランプの魔王にモシャスした際に色がおかしくなる
    ・一部の仲間モンスター相手に敵のモシャスが発動しない
    ステートセーブはモシャスが発動しない件のみ戦闘直前、他2つは発生後の状態です
    ttp://fast-uploader.com/file/xxxx/
    (※管理者がURLを変更しました)
    ルイーダの不具合はステートセーブでは預け順で1番目の仲間にして一切育てていない
    ウインドマージの職業熟練度表示が3番目のアモスと入れ替わってしまっています
    実際のデータには影響ないみたいで3番目キャラをルイーダから引き取ると3番目キャラの職業熟練度表示は正しく表示されます
    その代わりに預け順が3番目に繰り上がった4番目キャラの表示が1番目キャラと入れ替わってしまいます
    敵のモシャスが発動しない件については全仲間モンスターで確認した訳ではないのですが
    とりあえずダークホーンとレッサーデーモンで確認しました
    (敵が何度モシャスを唱えても「しかしなにもおこらなかった」と表示される)
    ドランゴ、キメイラ、キングスライム、スライムナイト、スーパーテンツクでは敵がちゃんと化けました
    エミュはsnes9x151d3d_as使用です

    管理者より返信:

    SSうpありがとうございます。モシャス絡みは相当怪しいので正直テストが十分でないとは思っていましたのでいい機会なのでデバッグします。

  5. シルバー より:

    修正ありがとうございます
    モシャスが不発になるのは敵の数が多い状態だとキャラグラが大きなキャラに対しては
    画面に入りきらないので変身できないということだったんですね
    そしてルイーダ熟練度表示バグに関してはオリジナル版から存在していた
    バグとのことで本当にすいませんでした
    次からは書き込み前に過去の記事にきちんと目を通すように気を付けます

    管理者より返信:

    SSもあったのですぐに再現できましたし、かけた時間は2,30分くらいなのでそれほど手間はかけていません(最初自分でも修正忘れかと思って修正したけど後からReadmeに「・ルイーダ熟練度バグについてはこのパッチでは修正していません。」と書いたのを思い出して取り消した)。

    過去のエントリを漁るよりも怪しいと思ったら報告をしてもらったほうが双方にとって建設的だと思うので、あまり気になさらぬよう。基本的には想定外の動作については「オリジナルでも起きるか」で切り分けてほしいですが、DQ6 Extendedではセーブデータの互換性を捨ててしまっているので難しいですね。

  6. 匿名 より:

    DQ6 Extended をやらせていただいております
    こんなところにカジノが!とか楽しくやらせていただいておりますが
    DQ3 K.Mix データセンター のような形で変更点ネタバレのページがほしいです。
    仲間モンスターの種類が増えている?のでしょうか
    仲間になるかわからないモンスター狩りはちょっとつらいので

    管理者より返信:

    申し訳ないですが、なんのことかさっぱりわかりません。DQ6 Extendedはゲーム性はオリジナルから一切変えていません。単にアイテムやモンスター数の上限を拡張したにすぎません。そのままプレイしてもオリジナルと全く変わらないのが期待する動作です。別の方のパッチをプレイしているか、パッチのあて方が間違ってバグっているかのどちらかです。ご確認ください。

  7. 匿名 より:

    素晴らしいパッチの公開ありがとうございます。
    dq3のパッチでは作戦内容を個別するという凄いギミックを実装されていたと記憶しています。
    何年後かに何もすることが無く、気が向いた時でいいのでdq6のExtendedにも作戦内容を個別指定できる機能を追加していただけたら幸いです。

    管理者より返信:

    DQ6で個別作戦を指定できるようにする案はもちろんありますが、DQ6 Extendedには実装する予定はありません。あくまでDQ6 Extendedは拡張用の基礎なのでオリジナルからのゲーム性を変えるような変更は入れたくないので。悪しからず。

  8. 匿名 より:

    回答ありがとうございます。

    >拡張用の基礎なのでゲーム性を変えるようなギミックは入れたくないので。悪しからず。
    確かに主旨から外れてしまいますね。

    個別作戦は僧侶は「命大事に」を、魔法使いは「呪文節約」を設定したりと従来の仕様では出来なかった痒い所に手が届く素晴らしいギミックでした。
    従来の仕様でも命令させろにしろと言われればそれまでですが、6についてはランプ魔王やキラーマシン2のようにAIに任せないと2回攻撃してくれないキャラがいるパーティーにこそ個別作戦の真価が発揮されるギミックだったので厚かましくもお願いしてしまいました。
    貴重な時間を取らせてしまいすみませんでした。
    これからも素晴らしい作品のリリースと有益な情報の公開を楽しみしております。

    管理者より返信:

    拡張パッチには極力色をつけたくないというのが方針なのでご理解ください。

    個別作戦は各キャラクターのデータのどこかに3ビットの空きを作ればいいだけの話ですが、実は設定するためのUIの実装のほうが手間だったりします(ウィンドウをいくつか新規に実装する必要がある)。個別に作戦を設定できないせいで下ムドー前でMPがカツカツなのにバンバン呪文を使うミレーユやチャモロに歯がゆい思いをしたものです。

    個別作戦設定はDQ3 K.Mixのよう統合パッチの一機能として実装することになると思います。部分パッチとしてはリリースしません。その昔書き散らしたDQ6の改造案はこちらです。https://retrogamehackers.net/dq6-design-001/

    DQ6の改造作業はそもそもベースとする予定のDQ6ウィンドウ高速化パッチとインターフェース改良パッチのマージ作業が途中で頓挫しているので現状やる気がしませんペンディングとしています。DQ6のウィンドウ実装はDQ3とだいぶ勝手が違っているので理解しにくい(DQ3のほうが洗練されているということもありDQ3に慣れてしまうと余計にいじりにくい)というのもあります。

  9. 匿名 より:

    >個別作戦設定はDQ3 K.Mixのような個別パッチの一機能として実装することになると思います
    公開されるのを何年後でもお待ちしております。
    ちなみに6もDSでは個別作戦が実装されているようですが仲間モンスターがスライム系だけになっているのでSFC版が最高だと思っています。なので6のパッチを公開していただいていることに非常に感謝しております。

    管理者より返信:

    モチベが上がったら作業を再開しようと思います。気長にお待ち下さい。

  10. no name より:

    3FB6C2-3FC96C:キャラクター成長データ(177B*27)
    3FC96D-3FCBD8:戦闘行動配置(4B*155)
    は拡張される予定はあるのでしょうか?
    今のままだと新キャラを追加しても独自の成長や習得特技を割り当てられないし、
    新呪文を追加しても戦闘行動配置に入れないと(既存呪文と入れ替えないと)味方に覚えさせられない、
    と思うのですがどうでしょうか。

    管理者より返信:

    現状予定はありません。必要に応じて各自拡張してください。

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