【解決】ChangeSurpriseRateByDir(神無月サスケ様作) MZへ移植

munokura

ユーザー
下記のプラグインをRPGツクールMZ用への移植を希望いたします。
シンボルエンカウントで、イベントの向きによって先制や不意打ち率を変更します。

先日、プレイヤー探索プラグインを移植していただけました。

早速、サンプルプロジェクトを組もうとしたところで、このプラグインがシンボルエンカウントの制御には不可欠だったのを思い出したという…

どうぞ、よろしくお願いいたします。
 
今晩、やりますので、今しばらくお待ちを。
少しいじってみたのですが、思いのほか、このあたりは変更点が多いらしく
ちょっとやそっとの変更じゃ無理だと分かったので、
しっかりと取り掛からせていただきます。
 
お待たせしました。ご要望の物が仕上がりましたのでお確かめください。
ソースを見ると分かりますが、若干力業で何とかしている部分もありますが……。

(!!注意!!)
このトピックのファイルは最新版ではありません。
エンバグの可能性を考慮して、こちらも残しておりますが、
一番新しいトピックのものが最新版です。
 

Attachments

  • ChangeSurpriseRateByDirMZ.zip
    1.8 KB · 閲覧: 12
最後に編集:

munokura

ユーザー
コードを拝見しましたが、元のコードも理解できていないので「長くなったな」としか分かりません:kaoblush:
動作確認できました。
問題なく動作しております。

素早い対応をいただき、ありがとうございました。
 

munokura

ユーザー
久しぶりにゲームを製作中なのですが、どうもこちらのプラグインが動作しない条件があるようです。
試行錯誤した結果、シンボルエンカウントの敵グループを「ランダムエンカウントと同じ」にすると動作しないようです。
コード:
◆戦闘の処理:ランダムエンカウントと同じ
:勝ったとき
  ◆
:逃げたとき
  ◆
:負けたとき
  ◆
:分岐終了
対応いただければ幸いです。
 
どうも、ムノクラ様、プラグイン気に入ってくださりありがとうございます。
さて、上記の件、こちらでも試したのですが、再現しませんでした。
「ランダムエンカウントと同じ」にしたのですが、先制、待ち伏せがきちんと起きています。

他のプラグインとの競合も考えられるので、もう少しご検証願えないでしょうか。
 

munokura

ユーザー
どうも、ムノクラ様、プラグイン気に入ってくださりありがとうございます。
さて、上記の件、こちらでも試したのですが、再現しませんでした。
「ランダムエンカウントと同じ」にしたのですが、先制、待ち伏せがきちんと起きています。

他のプラグインとの競合も考えられるので、もう少しご検証願えないでしょうか。
甘い検証で申し訳ありません。

下記と競合しているようです。
MNKR 敵ランダム入替え プラグイン

エラーは出ないのですが、不意打ち等が発生しなくなってしまいます。

プラグイン管理リストで
MNKR_RandomEnemies
ChangeSurpriseRateByDirMZ
の順に並べると動作しました。

って。MNKR_RandomEnemiesの書き方が悪いんですね、多分。
フック処理されていませんし…

調整できました。
お騒がせして、申し訳ありませんでした。
 
最後に編集:
どうも、ムノクラさん、ご検証ありがとうございます。
やはり同じようなところを扱うプラグインにとって、こういうのは避けて通れないですね。
ひとまず、次のバージョンでは、@orderAfter MNKR_RandomEnemies をアノテーションに追加したいと思います。
そちらでも、@orderBefore ChangeSurpriseRateByDirMZ とすれば完璧ですね。
 

munokura

ユーザー
どうも、ムノクラさん、ご検証ありがとうございます。
やはり同じようなところを扱うプラグインにとって、こういうのは避けて通れないですね。
ひとまず、次のバージョンでは、@orderAfter MNKR_RandomEnemies をアノテーションに追加したいと思います。
そちらでも、@orderBefore ChangeSurpriseRateByDirMZ とすれば完璧ですね。
MNKR_RandomEnemiesに、今フックを追加した所、どちらが上でも問題なく動作したようです。
ですので、それには及ばないかと思います。
 
それはよかったです。今後も何かあったらお気軽にご相談ください。
その際、今回のように「競合が疑わしいプラグイン」も一緒に添付していただけると助かります。
 

munokura

ユーザー
ピンポイントな競合があり困っています。

RPGツクールMZ v1.3.2
ChangeSurpriseRateByDirMZ.js
ARTM_PlayerSensorMZ.js

▼ARTM プレイヤー探索MZ(Artemis様作) - ARTM_PlayerSensorMZ.js
対象イベントの視界の範囲を描画し、範囲内にプレイヤーが存在した場合、発見状態となり指定されたスイッチをONにします。

もの凄いピンポイントな競合だったので、全く気づかなかったのですが…
移動ルートのカスタムで「プレイヤーの方を向く」が動作しなくなります。
どちらか片方のプラグインをOFFにすると動作しますが…シンボルエンカウントの動作には両方必要と考えています。

敵がプレイヤーを探す動作を凝ろうとしたら、気づいた競合でした。
再現用のサンプルをつけます。
新規プロジェクトに上書きするだけで、確認できるはずです。

解決策がお分かりでしたら、ご検討ください。

※ARTM_PlayerSensorMZの作者Artemis氏は既にツクールから別ツールに移ったと宣言されており、Artemis氏のサポートは期待できないと考えています。
 

Attachments

  • sample.zip
    25.5 KB · 閲覧: 0
トップ