開発日誌

すべての記事

[ テクニック ] [ 素材 ] [ プラグイン/スクリプト ] バフ・デバフの継続ターン数延長を防ぐ

2025-07-21 17:27:59

能力値の強化(バフ)や弱体(デバフ)が既にMaxに達している状態でさらに強化・弱体をかけようとした時、「これ以上は上がらない」旨のメッセージを表示し、継続ターン数もリセットされないようにするプラグインを公開しました。

RPGツクールMV/MZ両対応です。

昨日公開した「ステート重複付与無効プラグイン(PANDA_NoDuplicateStates.js)」のバフ・デバフ版です。

ステートと異なるのは、バフ・デバフの場合は重ねがけがあり得ること。

ツクールの標準仕様では2段階まで重ねがけが可能で、能力値の強化・弱体を1回かけるごとに1段階ずつ変動し、そのたびに継続ターン数がリセットされます。

ここで、既に最大の2段階まで強化・弱体がかかっている状態で、さらに強化・弱体をかけようとした場合、最大を超えてバフ・デバフがかかることはないものの、継続ターン数はリセットされます。そのためバフが切れる前にかけ直すことで、常にバフがかかった状態を維持することができてしまい、戦闘が単調になって作業感が出る恐れがあります。

このプラグインを導入すると、既に上限の段階までバフ・デバフがかかっている相手に、さらに同じバフ・デバフをかけようとすると、「もうこれ以上は上がらない/下がらない」といった戦闘メッセージを表示して、バフ・デバフの再付与はなされず、継続ターン数も上書きされません。

なお、例えば一度に2段階アップするスキルを、既に1段階アップしている相手にかけた場合は、1段階は上がっているため、「もうこれ以上は上がらない」旨のメッセージは表示されません。

プラグインパラメータで、既に上限に達している時に表示するメッセージを、強化と弱体でそれぞれ指定します。メッセージでは%1が対象者の名前、%2が対象の能力値の名前(「攻撃力」や「防御力」など)に置き換えられます。空欄の場合はメッセージは表示されません。

質問やアドバイスなどはコメント欄まで、お気軽にお願いします。素材利用条件などについては、このサイトについての「提供素材について」の項目などをご覧ください。

コメント
1. S 2025-07-22 03:40:07

プラグイン制作お疲れ様です。
効果があるのかこれ以上上がらないのかを明確にわかりやすく表示させるこの様なプラグインを探していたのでピンポイントでとてもありがたいです。
一つご相談なのですが、メッセージ表示をし、なおかつ継続ターン数の上書きを維持したままもしくはパラメータ設定で任意に上書きをするしないを選ぶようにしていただくことは可能でしょうか?
効果の表示とターン数延長を両立させたいと考えております。
ご検討いただけますと幸いです。何卒宜しくお願いいたします。

2. panda 2025-07-22 16:39:00

ありがとうございます。
こちら検討しましたが、プラグインの機能として提供するには、バフはともかくデバフの場合は成功判定も関係してくるため、修正範囲が大きく、本プラグインの趣旨とも外れてくるため、見送りとさせてください。
プラグインの改造は自由ですので、バフだけでOK、デバフの場合も無条件に延長されてOKということであれば、
2か所ある this.makeSuccess(target); の前に1行追加して
target.overwriteBuffTurns(effect.dataId, effect.value1);
と入れればターン数は延長されると思います。

3. S 2025-07-22 22:29:48

返答ありがとうございます。
デバフの場合無条件にというのは成功判定を無視して1度掛かっているものには100%延長されるということでしょうか?
いづれにしてもご教授いただいたものを試してみようと思います。
ご検討ありがとうございました。

4. panda 2025-07-23 14:14:40

そうですね。
デバフの場合は相手の耐性が考慮されるので成功判定を挟みますが、このプラグインはその成功判定より前で既に上限に達しているかを判定するため、処理を大きく変えない限りは上限に達していたら100%延長されてしまいます。

5. S 2025-07-23 17:25:56

返答ありがとうございます。
承知しました。

お名前
コメント
※ 確認画面はありません。