【解決済み】BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

アバター
アーヴェル
記事: 48
登録日時: 2019年5月18日(土) 12:02

【解決済み】BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by アーヴェル » 2020年4月05日(日) 20:45

質問失礼いたします。
やな様のBattleFormationと、ツミオ様のTsumioMenuSystemを使用しております。

プラグインをこの2つだけにした状態でも、
バトル参加可能人数を上回った状態でメニュー画面を開くとエラーとなってしまいます。

普段はフトコロ様のFTKR_MAXBattleMembersも用いて、5名が最大なので、6名以上。
デフォルトであれば4名までがバトル参加可能人数なので、
5名以上のメンバーが居るときにメニューを開くとエラーすることも確認しています。

TsumioMenuSystemがダメならばということでフトコロ様のFTKR_CustomSimpleActorStatus等を用いてみましたが、
メニュー画面にSVアクター表示を行っていると、やはり同様のエラーになるようでした。
(TsumioMenuSystemでもメニュー画面にSVアクターが表示されています)

そのため、BattleFormation側の記述変更でどうにかならないかということで試しましたが、
私では解決出来ませんでした。


レイアウトの問題でFTKR_CustomSimpleActorStatusを扱う際はFTKR_GDM_WindowEditorも
使いたいのですが、そちらが少々他のプラグインと競合を起こすため、最良なのはBattleFormation側、
次点でTsumioMenuSystem側での解決方法を何卒アドバイスを頂けないでしょうか?
最後に編集したユーザー アーヴェル on 2020年4月06日(月) 20:34 [ 編集 1 回目 ]

アバター
ムノクラ
記事: 2011
登録日時: 2018年2月23日(金) 11:41
連絡を取る:

Re: BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by ムノクラ » 2020年4月05日(日) 21:23

お邪魔しました。
最後に編集したユーザー ムノクラ on 2020年4月05日(日) 22:30 [ 編集 1 回目 ]
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
アバター
アーヴェル
記事: 48
登録日時: 2019年5月18日(土) 12:02

Re: BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by アーヴェル » 2020年4月05日(日) 21:40

すみません少々言葉足らずでした。等という点で省略しすぎました。申し訳ないです。

FTKR_CustomSimpleActorStatusは拡張プラグイン(FTKR_CSS_***.js)と組み合わせることで・・・とのことですので、
FTKR_CSS_MenuStatusのstatusListから、SVを選択してメニュー画面にSVが出るようにした状態です。

こちらのケースではBattleFormation と合わせて合計3つのプラグインでSVアクターを出した状態となります。

バージョンはそれぞれ、
BattleFormation ver.104

TsumioMenuSystem 1.1.4
(こちらはFTKR_CSS_MenuStatusを試す場合は切っています。
逆の場合はFTKRプラグインを2つ切って、計2つで試しています。)

FTKR_CustomSimpleActorStatus v3.5.3
FTKR_CSS_MenuStatus v2.1.3

となっております。
アバター
ムノクラ
記事: 2011
登録日時: 2018年2月23日(金) 11:41
連絡を取る:

Re: BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by ムノクラ » 2020年4月05日(日) 21:47

確認プラグインを間違えていました。
失礼いたしました。

再現の設定が難しいようですので、せめてエラー内容だけでも提示いただけばと思います。
最後に編集したユーザー ムノクラ on 2020年4月05日(日) 22:42 [ 編集 4 回目 ]
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
アバター
アーヴェル
記事: 48
登録日時: 2019年5月18日(土) 12:02

Re: BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by アーヴェル » 2020年4月05日(日) 21:52

確認作業をして頂いて非常にありがたく思っております。
えっと、大変恐縮ですが、ムノクラ様がご覧のプラグインはSceneFormationというプラグインのようです。
私が入れているのは入れ替えではなく、一般に陣形プラグインと呼ばれている感じのもので、こちらになります。
添付ファイル
gazou1.png
アバター
アーヴェル
記事: 48
登録日時: 2019年5月18日(土) 12:02

Re: BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by アーヴェル » 2020年4月05日(日) 23:17

直接的なエラーの原因となるのは、 BattleFormationの715行目

var __SActor_setActorHome = Sprite_Actor.prototype.setActorHome;
Sprite_Actor.prototype.setActorHome = function(index) {
__SActor_setActorHome.call(this, index);
if (!this._actor._bfHome) $gameParty.setBattleFormation(null);
var home = this._actor._bfHome;
this.setHome(home[0], home[1] + 80);
if (this._actor._home) {
this._actor._home = this._actor._bfHome;
}
};

↓↓↓
this.setHome(home[0], home[1] + 80);

この部分となります。

前述したTsumioMenuSystem・FTKR_CSS_MenuStatus共に、
メニュー画面でパーティメンバー全員分のSVアクターを呼び出しています。

陣形プラグインで呼ばれるSVアクターの数は戦闘参加可能人数と同数です。
そして、両プラグインを用いていても、
戦闘参加可能な人数とパーティメンバーの数が同数までであればエラーが起きません。

素人考えではありますが、陣形プラグインでは、
専用メニューにおいて、陣形で設定された場所へ位置変更を行うので、
戦闘可能な人数を超えて既に呼び出されてしまっているアクターに、
移動できるポジションが指定されていないのが原因なのかなぁ・・・とは思っています。
添付ファイル
gazou2.png
gazou2.png (29.06 KiB) 閲覧数: 4504 回
アバター
ムノクラ
記事: 2011
登録日時: 2018年2月23日(金) 11:41
連絡を取る:

Re: BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by ムノクラ » 2020年4月05日(日) 23:58

アーヴェル さんが書きました:直接的なエラーの原因となるのは、 BattleFormationの715行目

var __SActor_setActorHome = Sprite_Actor.prototype.setActorHome;
Sprite_Actor.prototype.setActorHome = function(index) {
__SActor_setActorHome.call(this, index);
if (!this._actor._bfHome) $gameParty.setBattleFormation(null);
var home = this._actor._bfHome;
this.setHome(home[0], home[1] + 80);
if (this._actor._home) {
this._actor._home = this._actor._bfHome;
}
};

↓↓↓
this.setHome(home[0], home[1] + 80);

この部分となります。

前述したTsumioMenuSystem・FTKR_CSS_MenuStatus共に、
メニュー画面でパーティメンバー全員分のSVアクターを呼び出しています。

陣形プラグインで呼ばれるSVアクターの数は戦闘参加可能人数と同数です。
そして、両プラグインを用いていても、
戦闘参加可能な人数とパーティメンバーの数が同数までであればエラーが起きません。

素人考えではありますが、陣形プラグインでは、
専用メニューにおいて、陣形で設定された場所へ位置変更を行うので、
戦闘可能な人数を超えて既に呼び出されてしまっているアクターに、
移動できるポジションが指定されていないのが原因なのかなぁ・・・とは思っています。


再現できていないので、合っている自信はないですが、ステートの表示で似たようなエラーを見た記憶があるので…

FTKR_CustomSimpleActorStatus
の設定で
Enabled State Motion

Enabled Sv Motion
を0にして、無効にしたら回避できないでしょうか?
SS01.png
SS01.png (20.27 KiB) 閲覧数: 4495 回

SS02.png
SS02.png (24.62 KiB) 閲覧数: 4495 回

既に試していたら、すいません。
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
アバター
アーヴェル
記事: 48
登録日時: 2019年5月18日(土) 12:02

Re: BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by アーヴェル » 2020年4月06日(月) 00:15

ありがとうございます。試していなかったので試してみましたが、残念ながらこれもダメなようです。
状態としては、この3つしかプラグインが入っていない状態で、

FTKR_CSS_MenuStatusでSVを追加するとSVがメニュー画面に表示されて、このような状態になっています。
写真では4人ですが、ここに5人目のキャラクターを追加して、陣形メニューを開こうとする。
或いは並び替えでもステータスでも、5人目のキャラクターを選択しようとするだけでも、
先程と同様のエラーが出るようです。

追記
BattleFormationを最下においた場合、5人でも陣形を開くことは出来ました。
ただし、5人目に対して並び替えをしようとするとエラーが起きるのは変わらないようです。
添付ファイル
gazou4.png
gazou3.png
biv36htspH7k5cC
記事: 35
登録日時: 2020年2月17日(月) 20:21

Re: BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by biv36htspH7k5cC » 2020年4月06日(月) 00:30

アーヴェル さんが書きました:ありがとうございます。試していなかったので試してみましたが、残念ながらこれもダメなようです。
状態としては、この3つしかプラグインが入っていない状態で、

FTKR_CSS_MenuStatusでSVを追加するとSVがメニュー画面に表示されて、このような状態になっています。
写真では4人ですが、ここに5人目のキャラクターを追加して、陣形メニューを開こうとする。
或いは並び替えでもステータスでも、5人目のキャラクターを選択しようとするだけでも、
先程と同様のエラーが出るようです。

追記
BattleFormationを最下においた場合、5人でも陣形を開くことは出来ました。
ただし、5人目に対して並び替えをしようとするとエラーが起きるのは変わらないようです。


となると、並び替えだけがエラーになるのですよね?
「並び替えシーン」を使用したら互換があるとかないですかね?
同じ作者なので…

なにせ再現できていないので、アドバイスにならないアドバイスばかりになってしまって申し訳ありません。
よろしければ、サンプルプロジェクトを出してくだされば、研究します。
最後に編集したユーザー biv36htspH7k5cC on 2020年4月06日(月) 07:24 [ 編集 2 回目 ]
アバター
アーヴェル
記事: 48
登録日時: 2019年5月18日(土) 12:02

Re: BattleFormationとメニュー画面にSVアクターを表示しているプラグインの競合について

投稿記事by アーヴェル » 2020年4月06日(月) 00:54

返信ありがとうございます。

試してみた所、FTKR_CSS_MenuStatusでSVアクターを表示している場合に関しては、
メニューに表示されているSVアクターの数が、最大戦闘参加可能人数と同数まで、
なおかつ通常の並び替えを用いず、やな様のSceneFrmationを用いることで、
条件付きの競合回避が出来る事がわかりました。
避けるためにプラグインを追加するという発想はありませんでした。ありがとうございます。

ただし、TsumioMenuSystemでは、戦闘可能人数よりメンバー数が増えた時点で
メニュー画面自体がやはり開けませんでした。

これも、とはいえ一つの回避策としてはわかったので、これも次善策として考慮しつつも、
一番始めに目的としていた、BattleFormation側、或いはTsumioMenuSystem側での競合回避について、
自分でも解決策を探しつつ、お力添えを待たせて頂こうかと思います。

“MV:質問” へ戻る