【解決】スキルがランダムで発生するプラグイン

アバター
mikka
記事: 23
登録日時: 2021年2月22日(月) 20:48

【解決】スキルがランダムで発生するプラグイン

投稿記事by mikka » 2021年6月02日(水) 23:18

特定のスキルを使うと指定させたスキルの内の1つをランダムで発動するプラグインを探しているのですが
ありませんでしょうか?

効果不確定スキルRX_T_Effect_Uncertain_Skills.js が個人的に近かったのですが、
使用した後にメッセージで表示されるスキル名を 指定させて発動したスキルの名前にしたい為
こちらでは実現できませんでした。
このようなプラグインをご存知の方はいませんか?
最後に編集したユーザー mikka on 2021年6月07日(月) 00:30 [ 編集 1 回目 ]

主にEffekseerで素材の作成やRTP画像の改変を主にしています。
まだ、改変や簡単な物しか作ることが出来ません。
Twitter→https://twitter.com/mikiD24596677
アバター
アーヴェル
記事: 48
登録日時: 2019年5月18日(土) 12:02

Re: スキルがランダムで発生するプラグイン

投稿記事by アーヴェル » 2021年6月06日(日) 09:45

自分でも、もしかしたら使うかもしれないなぁと思い作りました。
もし宜しければどうぞー。


仕様上、分岐を設定しているスキルは、スキル欄で選んだスキルではなく、
分岐で抽選されたスキルを選んだという事になります。

なので、分岐前スキルからは使用条件(選択出来る条件)のみが参照され、
発動時のスキル名表示・消費等は分岐後のスキルのものが参照されます。
範囲についても分岐後のスキルを参照するので、
敵単体・味方単体のスキルを選択候補にした場合、
スキル選択後に敵や味方の対象選択画面が出てくるので、
プレイヤーは何が出るのか予測でき、対象選択からスキル選択に戻って再度スキルを選ぶことで、
何度でも再抽選が可能です。

範囲が敵全・味方全・敵ランダム等であれば、対象選択が発生せずに発動待機となるので、
戻れませんし、この辺りは設定の工夫でどうにか出来る範囲でしょうか。一応、現行の仕様です。

https://drive.google.com/file/d/1wzT9cm ... sp=sharing

以下、プラグインヘルプ

---------------------------------------------------------------------------
Version
1.0.0 2021/06/06 初版
1.0.1 2021/06/06 再試行のバグを修正
プラグインパラメータの追加 skillLearned
スキルを取得しているかを判定出来るように
---------------------------------------------------------------------------
* 分岐元のスキルのメモ欄に記載を行うことで、指定したスキルへ分岐します。
* 分岐確率も設定可能であり、分岐予定のスキルが使用不能の場合、
* 予備スキルへ分岐します。
* タグでの記載がない場合は プラグインパラメータ
* yobiskill で設定したスキルが選択されます(デフォルトではID1 攻撃)
*
* ------------------------------------------------------------------------
* 仕様について
* ------------------------------------------------------------------------
* 当然ながらデフォルトではスキル欄で選択したスキルを使用します。
* このプラグインはスキル欄で選択したスキルをデータとして受け取った後に、
* タグがあれば分岐してから受け渡す。というものになっています。
* つまり、分岐前のスキル、実際にスキル欄で選択するスキルに
* 消費MPなどを設定した場合、実際には別のスキルが選択されるので
* 消費もされませんし、分岐元が封印やMP不足等で選択できない場合になった場合、
* そもそも分岐の処理まで辿り着かないので分岐できません。
*
* スキルを取得しているかの判定では、装備や特徴でスキルを取得している場合、
* 取得しているとみなされません。クラスやイベントコマンドによる取得が必要です。
*
* Game_Action.prototype.setSkill を上書きしています。
* 上記関数を上書き定義しているプラグインとは排他関係にあります。
*
* 上記関数に処理を継ぎ足すタイプのプラグインであれば、
* 本プラグインを上の方へ配置する事で、もしかしたら動くかもしれません。
*
* ------------------------------------------------------------------------
* <スキル分岐:n,n....>の設定
* ------------------------------------------------------------------------
* 分岐元となるスキルのメモ欄に記述します。
* 例えば<スキル分岐:1,2>と記載した場合は、
* スキルID1番と2番が分岐の候補となります。
* , で区切り、いくつでも記載可能です。
*
* 例 <スキル分岐:1,2,151,175,198>
* と記載の場合は計5個のスキルが分岐候補
* ------------------------------------------------------------------------
* <分岐確率:n,n....>の設定
* ------------------------------------------------------------------------
* 分岐元となるスキルのメモ欄に記述します。
* 一応エラー回避は入れているものの、
* 原則として<スキル分岐>で設定したスキル分の分岐を記述してください。
*
* <スキル分岐:200,201>
* <分岐確率:90,10>
* と記載した場合は、90%の確率でスキルID200番に分岐し、
* 10%の確率で201番に分岐します。
*
* <分岐確率>タグを設定しない場合は、分岐先のスキルに、
* 等しい確率でランダム分岐します。
* 
* 尚、分岐確率の和を分母として計算している為、
* 分岐確率の和が100未満や101以上でも問題ありません。
* <分岐確率:5,1000,1,4,100>
* のような記載をした場合、1110分のnの確率で分岐といった感じになります。
*
* 分岐先が使用不能だった場合は再試行を行います。
* 再試行の回数はプラグインパラメータ numberoftrials にて設定可能です。
*
* 仮に1を設定した場合、分岐確率の高いスキルが何らかの理由で
* 使用不能になっている場合、高確率で予備分岐へと分岐します。
*
* ------------------------------------------------------------------------
* <予備分岐:n>の設定
* ------------------------------------------------------------------------
* 分岐元となるスキルのメモ欄に記述します。
* <予備分岐:2>と記載した場合は、
* スキルID2番(デフォルトでは防御)が分岐の候補となります。
* 予備分岐は一つのみ設定可能です。
*
* 記載がない場合はプラグインパラメータ yobiskill で設定したスキルに分岐します。
* (デフォルトでは スキルID1 攻撃)
* ------------------------------------------------------------------------
* 利用規約的なやつ
* ------------------------------------------------------------------------
* 本プラグインの使用に際して、
* 私自身の創作を優先する為、基本的にサポートする気が無いという事をご了承ください。
* そもそも、私の技術力的にも競合解消等は仮にやる気があっても難しいため、
* 競合した場合は切り捨てるか、自力での問題解決をお願いいたします。
*
* 自分のコードが綺麗であるとも思っていないので、
* 競合相手や他者様に競合解消の依頼をされるのは、私としては望ましくありません。
* どうかお控えくださいますよう。
*
* 尚、プラグイン単体でのバグであれば対応します。
* その際には、単体のバグであること
* (他の全プラグインを切り、 Av_SkillForking.js のみで同様の問題が起こる事)
* を十分に確認の上で報告をお願いします。
*/
アバター
mikka
記事: 23
登録日時: 2021年2月22日(月) 20:48

Re: スキルがランダムで発生するプラグイン

投稿記事by mikka » 2021年6月06日(日) 14:17

アーヴェル さんが書きました:自分でも、もしかしたら使うかもしれないなぁと思い作りました。
もし宜しければどうぞー。


仕様上、分岐を設定しているスキルは、スキル欄で選んだスキルではなく、
分岐で抽選されたスキルを選んだという事になります。

なので、分岐前スキルからは使用条件(選択出来る条件)のみが参照され、
発動時のスキル名表示・消費等は分岐後のスキルのものが参照されます。
範囲についても分岐後のスキルを参照するので、
敵単体・味方単体のスキルを選択候補にした場合、
スキル選択後に敵や味方の対象選択画面が出てくるので、
プレイヤーは何が出るのか予測でき、対象選択からスキル選択に戻って再度スキルを選ぶことで、
何度でも再抽選が可能です。

範囲が敵全・味方全・敵ランダム等であれば、対象選択が発生せずに発動待機となるので、
戻れませんし、この辺りは設定の工夫でどうにか出来る範囲でしょうか。一応、現行の仕様です。

https://drive.google.com/file/d/1wzT9cm ... sp=sharing

以下、プラグインヘルプ

---------------------------------------------------------------------------
Version
1.0.0 2021/06/06 初版
1.0.1 2021/06/06 再試行のバグを修正
プラグインパラメータの追加 skillLearned
スキルを取得しているかを判定出来るように
---------------------------------------------------------------------------
* 分岐元のスキルのメモ欄に記載を行うことで、指定したスキルへ分岐します。
* 分岐確率も設定可能であり、分岐予定のスキルが使用不能の場合、
* 予備スキルへ分岐します。
* タグでの記載がない場合は プラグインパラメータ
* yobiskill で設定したスキルが選択されます(デフォルトではID1 攻撃)
*
* ------------------------------------------------------------------------
* 仕様について
* ------------------------------------------------------------------------
* 当然ながらデフォルトではスキル欄で選択したスキルを使用します。
* このプラグインはスキル欄で選択したスキルをデータとして受け取った後に、
* タグがあれば分岐してから受け渡す。というものになっています。
* つまり、分岐前のスキル、実際にスキル欄で選択するスキルに
* 消費MPなどを設定した場合、実際には別のスキルが選択されるので
* 消費もされませんし、分岐元が封印やMP不足等で選択できない場合になった場合、
* そもそも分岐の処理まで辿り着かないので分岐できません。
*
* スキルを取得しているかの判定では、装備や特徴でスキルを取得している場合、
* 取得しているとみなされません。クラスやイベントコマンドによる取得が必要です。
*
* Game_Action.prototype.setSkill を上書きしています。
* 上記関数を上書き定義しているプラグインとは排他関係にあります。
*
* 上記関数に処理を継ぎ足すタイプのプラグインであれば、
* 本プラグインを上の方へ配置する事で、もしかしたら動くかもしれません。
*
* ------------------------------------------------------------------------
* <スキル分岐:n,n....>の設定
* ------------------------------------------------------------------------
* 分岐元となるスキルのメモ欄に記述します。
* 例えば<スキル分岐:1,2>と記載した場合は、
* スキルID1番と2番が分岐の候補となります。
* , で区切り、いくつでも記載可能です。
*
* 例 <スキル分岐:1,2,151,175,198>
* と記載の場合は計5個のスキルが分岐候補
* ------------------------------------------------------------------------
* <分岐確率:n,n....>の設定
* ------------------------------------------------------------------------
* 分岐元となるスキルのメモ欄に記述します。
* 一応エラー回避は入れているものの、
* 原則として<スキル分岐>で設定したスキル分の分岐を記述してください。
*
* <スキル分岐:200,201>
* <分岐確率:90,10>
* と記載した場合は、90%の確率でスキルID200番に分岐し、
* 10%の確率で201番に分岐します。
*
* <分岐確率>タグを設定しない場合は、分岐先のスキルに、
* 等しい確率でランダム分岐します。
* 
* 尚、分岐確率の和を分母として計算している為、
* 分岐確率の和が100未満や101以上でも問題ありません。
* <分岐確率:5,1000,1,4,100>
* のような記載をした場合、1110分のnの確率で分岐といった感じになります。
*
* 分岐先が使用不能だった場合は再試行を行います。
* 再試行の回数はプラグインパラメータ numberoftrials にて設定可能です。
*
* 仮に1を設定した場合、分岐確率の高いスキルが何らかの理由で
* 使用不能になっている場合、高確率で予備分岐へと分岐します。
*
* ------------------------------------------------------------------------
* <予備分岐:n>の設定
* ------------------------------------------------------------------------
* 分岐元となるスキルのメモ欄に記述します。
* <予備分岐:2>と記載した場合は、
* スキルID2番(デフォルトでは防御)が分岐の候補となります。
* 予備分岐は一つのみ設定可能です。
*
* 記載がない場合はプラグインパラメータ yobiskill で設定したスキルに分岐します。
* (デフォルトでは スキルID1 攻撃)
* ------------------------------------------------------------------------
* 利用規約的なやつ
* ------------------------------------------------------------------------
* 本プラグインの使用に際して、
* 私自身の創作を優先する為、基本的にサポートする気が無いという事をご了承ください。
* そもそも、私の技術力的にも競合解消等は仮にやる気があっても難しいため、
* 競合した場合は切り捨てるか、自力での問題解決をお願いいたします。
*
* 自分のコードが綺麗であるとも思っていないので、
* 競合相手や他者様に競合解消の依頼をされるのは、私としては望ましくありません。
* どうかお控えくださいますよう。
*
* 尚、プラグイン単体でのバグであれば対応します。
* その際には、単体のバグであること
* (他の全プラグインを切り、 Av_SkillForking.js のみで同様の問題が起こる事)
* を十分に確認の上で報告をお願いします。
*/


返信が遅れてしまってすいません。
素早い対応ありがとうございます<(_ _)>
主にEffekseerで素材の作成やRTP画像の改変を主にしています。
まだ、改変や簡単な物しか作ることが出来ません。
Twitter→https://twitter.com/mikiD24596677

“MZ:質問” へ戻る