2019年05月16日
プラグイン/条件付きシリーズ(戦闘関連)
本日ご紹介するプラグインは、条件付きシリーズ(Yana様作)です。
条件を付けていろいろできるプラグインで、ツクールのデフォルト状態では実現が難しいものが多いです。
条件付き○○ベース ver1.07
共通事項である「条件部分」を定義したコアプラグインだそうです。
要するにこれがないと条件の定義ができないということです。
条件付き追加効果 ver1.04
スキルやアイテムの発動後に、追加スキルやアイテムを発動する条件を設定するもののようです。
最近ソシャゲでもよくある、特定条件で追加効果が発動するようなアレですね。
条件付きスキル&アイテム変化 ver1.04
スキルやアイテムを条件付きで別のスキルやアイテムに変更します。
読んで字の如くで、「閃きのようなこともできます」とのことです。合成システムとか作れそうですね。
条件付きドロップ ver1.04
条件を満たすと追加されるドロップアイテムや経験値、お金などを設定できます。
変数やスイッチも使えるので、クエストを受けているときだけドロップする、とか出来そうですね。
フェイズスキル特徴 ver1.06
バトル開始時やターン開始時、ターン終了時などの特定のフェイズでスキルを発動する特徴を
設定できるようになります。
先制して発動するスキルなどを設定することができるようです。
スキル使用条件 ver1.03
スキルやアイテムに細かい使用条件を設定できるようにします。
私がChainTowerで使ったのはこちらです。一応他のプラグインも併用してます。
行動決定前及びイベント判定前スイッチオン ver1.01
行動決定前やイベント判定前に条件に従ってスイッチを操作します。
戦闘時に条件を満たした場合にスイッチを入れる、といったことができるようです。
何故このプラグインを紹介しようと思ったのかと言えば、今回ChainTowerで私が使ったからに他ありません。
プラグインを入れてメモ欄にちょっと文章入れただけであっという間に成功したので、これは楽でいい!と衝動的に紹介しておりますw
ちなみに私が使ったのは、昨日も言及した「詠唱システム」です。
1.詠唱をスキルとして使用
2.必要回数の詠唱を行うことで、詠唱が必要なスキルが使えるようになる
まずはデフォルトのMVでやってみたんですが、コモンイベントとスイッチ&変数使えば簡単に行けるだろ!とタカを括ってやってみた結果、いくつかの問題点が発生しました。
まずは軽く作った部分。今回は神聖術の詠唱部分なので、名前は「神聖術詠唱」です。
まず詠唱したのが誰かを判断していないと、詠唱スキルが重複してしまうため、コモンイベントを作成。
ちなみに、変数にスクリプトを指定して代入し、「$gameParty.inBattle() ? BattleManager._subject._actorId : $gameParty.menuActor()._actorId」と入力すると、スキルの使用者IDを変数へ格納してくれます。ものすごく便利!
--内容--
◆変数の操作:#0113 神聖術詠唱者ID = $gameParty.inBattle() ? BattleManager._subject._actorId : $gameParty.menuActor()._actorId
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(1)
----------
次にスキルを作成。
----------
詠唱(1ターン目用):普通に習得。使用すると「詠唱(1)」というステートが使用者に付き、詠唱(1ターン目用)を忘れる。上のコモンイベントを実行。
詠唱(2ターン目用):「詠唱(1)」ステートにて習得。「詠唱(2)」というステートが付き、詠唱(2ターン目用)を忘れる。
・
・
・
詠唱(5ターン目用):「詠唱(4)」ステートにて習得。「詠唱(5)」というステートが付き、詠唱(4ターン目用)を忘れる。
要詠唱1ターンのスキル〜要詠唱5ターンのスキル
----------
問題点1。
詠唱したまま戦闘が終了した場合、詠唱スキルが消滅する。
当たり前ですね。詠唱(1ターン目用)にて詠唱忘れてますからw
また、複数のアクターが同じ詠唱を行った場合、ごちゃごちゃになってしまうのを防ぐため、同時に同種の詠唱を行えないように設定したいと考える。
解決法1。
忘れていることをMVに理解させるためスイッチを使用。
最初に使うのは「詠唱(1ターン目)」なので、上のコモンイベントを以下のように修正。
--内容--
◆スイッチの操作:#4999 誰か詠唱している = ON
◆条件分岐:神聖術詠唱者ID = 0
◆変数の操作:#0113 神聖術詠唱者ID = $gameParty.inBattle() ? BattleManager._subject._actorId : $gameParty.menuActor()._actorId
◆
:それ以外のとき
◆文章:なし, ウィンドウ, 下
: : すでに\N[\V[113]]が神聖術詠唱を始めている。
: : そのため詠唱に失敗してしまった!
◆
:分岐終了
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(1)
----------
さらに、別のコモンイベントを作成。
--発動条件--
トリガー:並列処理/スイッチ:#4999 誰か詠唱している
--内容--
◆条件分岐:神聖術詠唱者ID ≠ 0
◆変数の操作:#0113 神聖術詠唱者ID = 0
◆スキルの増減:{神聖術詠唱者ID}, + 神聖術詠唱(1)
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(2)
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(3)
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(4)
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(5)
◆
:分岐終了
◆スイッチの操作:#4999 誰か詠唱している = OFF
----------
問題点2。
要詠唱1ターンのスキル〜要詠唱5ターンのスキルの設定でステートで習得させてしまうと、詠唱さえ覚えていれば使えることになってしまう。
また、逆に通常の方法で覚えている場合、詠唱を行わなくても使える状態となってしまう。
解決法2。
上記の[スキル使用条件 ver1.03]を導入し、条件を定義して、たとえ習得していたとしても選択不可の状態にする。
また、習得していなければ当然「選択不可の状態」ですらリストに現れなくなる。
問題点3。
詠唱1を使った後、詠唱1があった場所とは全然違う場所に詠唱2が現れる。
解決法3。
しぐれん様の[Mano_SkillSort.js]を使わせて頂き、ソートをID順に強制変更。
以上の処理で何とか上手くできました。
本来であれば、数ターン問答無用で詠唱(行動不能)し、必要ターン経過後に強制発動してくれる方がプレイヤーとしては馴染み深いのでしょうが、正直そっちは「強制発動」の方で苦労して挫折しました。
やってみたのは、
・詠唱必要ターン分、行動不能ステート「詠唱」を付与
・「詠唱」ステートより1ターン長く設定した「自動戦闘」ステートを作成し、該当魔法以外を封印
これらを両方ステート付与したら行けるんじゃないかなぁと思ったんですが、何故か自動戦闘ステートが一切仕事しないまま終了するという意味がわからない状況になったため諦めましたw
発動分の1ターンの差を2ターンにしてみたりして頑張ってみたんですけどね……。
一応こちらも何とかやれないか探ってみて、上手く行ったらまた報告しようと思います。
さて、次回は多分進捗報告になると思います。
進捗が報告できないようなら、またプラグイン紹介します!
条件を付けていろいろできるプラグインで、ツクールのデフォルト状態では実現が難しいものが多いです。
条件付き○○ベース ver1.07
共通事項である「条件部分」を定義したコアプラグインだそうです。
要するにこれがないと条件の定義ができないということです。
条件付き追加効果 ver1.04
スキルやアイテムの発動後に、追加スキルやアイテムを発動する条件を設定するもののようです。
最近ソシャゲでもよくある、特定条件で追加効果が発動するようなアレですね。
条件付きスキル&アイテム変化 ver1.04
スキルやアイテムを条件付きで別のスキルやアイテムに変更します。
読んで字の如くで、「閃きのようなこともできます」とのことです。合成システムとか作れそうですね。
条件付きドロップ ver1.04
条件を満たすと追加されるドロップアイテムや経験値、お金などを設定できます。
変数やスイッチも使えるので、クエストを受けているときだけドロップする、とか出来そうですね。
フェイズスキル特徴 ver1.06
バトル開始時やターン開始時、ターン終了時などの特定のフェイズでスキルを発動する特徴を
設定できるようになります。
先制して発動するスキルなどを設定することができるようです。
スキル使用条件 ver1.03
スキルやアイテムに細かい使用条件を設定できるようにします。
私がChainTowerで使ったのはこちらです。一応他のプラグインも併用してます。
行動決定前及びイベント判定前スイッチオン ver1.01
行動決定前やイベント判定前に条件に従ってスイッチを操作します。
戦闘時に条件を満たした場合にスイッチを入れる、といったことができるようです。
何故このプラグインを紹介しようと思ったのかと言えば、今回ChainTowerで私が使ったからに他ありません。
プラグインを入れてメモ欄にちょっと文章入れただけであっという間に成功したので、これは楽でいい!と衝動的に紹介しておりますw
ちなみに私が使ったのは、昨日も言及した「詠唱システム」です。
1.詠唱をスキルとして使用
2.必要回数の詠唱を行うことで、詠唱が必要なスキルが使えるようになる
まずはデフォルトのMVでやってみたんですが、コモンイベントとスイッチ&変数使えば簡単に行けるだろ!とタカを括ってやってみた結果、いくつかの問題点が発生しました。
まずは軽く作った部分。今回は神聖術の詠唱部分なので、名前は「神聖術詠唱」です。
まず詠唱したのが誰かを判断していないと、詠唱スキルが重複してしまうため、コモンイベントを作成。
ちなみに、変数にスクリプトを指定して代入し、「$gameParty.inBattle() ? BattleManager._subject._actorId : $gameParty.menuActor()._actorId」と入力すると、スキルの使用者IDを変数へ格納してくれます。ものすごく便利!
--内容--
◆変数の操作:#0113 神聖術詠唱者ID = $gameParty.inBattle() ? BattleManager._subject._actorId : $gameParty.menuActor()._actorId
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(1)
----------
次にスキルを作成。
----------
詠唱(1ターン目用):普通に習得。使用すると「詠唱(1)」というステートが使用者に付き、詠唱(1ターン目用)を忘れる。上のコモンイベントを実行。
詠唱(2ターン目用):「詠唱(1)」ステートにて習得。「詠唱(2)」というステートが付き、詠唱(2ターン目用)を忘れる。
・
・
・
詠唱(5ターン目用):「詠唱(4)」ステートにて習得。「詠唱(5)」というステートが付き、詠唱(4ターン目用)を忘れる。
要詠唱1ターンのスキル〜要詠唱5ターンのスキル
----------
問題点1。
詠唱したまま戦闘が終了した場合、詠唱スキルが消滅する。
当たり前ですね。詠唱(1ターン目用)にて詠唱忘れてますからw
また、複数のアクターが同じ詠唱を行った場合、ごちゃごちゃになってしまうのを防ぐため、同時に同種の詠唱を行えないように設定したいと考える。
解決法1。
忘れていることをMVに理解させるためスイッチを使用。
最初に使うのは「詠唱(1ターン目)」なので、上のコモンイベントを以下のように修正。
--内容--
◆スイッチの操作:#4999 誰か詠唱している = ON
◆条件分岐:神聖術詠唱者ID = 0
◆変数の操作:#0113 神聖術詠唱者ID = $gameParty.inBattle() ? BattleManager._subject._actorId : $gameParty.menuActor()._actorId
◆
:それ以外のとき
◆文章:なし, ウィンドウ, 下
: : すでに\N[\V[113]]が神聖術詠唱を始めている。
: : そのため詠唱に失敗してしまった!
◆
:分岐終了
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(1)
----------
さらに、別のコモンイベントを作成。
--発動条件--
トリガー:並列処理/スイッチ:#4999 誰か詠唱している
--内容--
◆条件分岐:神聖術詠唱者ID ≠ 0
◆変数の操作:#0113 神聖術詠唱者ID = 0
◆スキルの増減:{神聖術詠唱者ID}, + 神聖術詠唱(1)
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(2)
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(3)
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(4)
◆スキルの増減:{神聖術詠唱者ID}, - 神聖術詠唱(5)
◆
:分岐終了
◆スイッチの操作:#4999 誰か詠唱している = OFF
----------
問題点2。
要詠唱1ターンのスキル〜要詠唱5ターンのスキルの設定でステートで習得させてしまうと、詠唱さえ覚えていれば使えることになってしまう。
また、逆に通常の方法で覚えている場合、詠唱を行わなくても使える状態となってしまう。
解決法2。
上記の[スキル使用条件 ver1.03]を導入し、条件を定義して、たとえ習得していたとしても選択不可の状態にする。
また、習得していなければ当然「選択不可の状態」ですらリストに現れなくなる。
問題点3。
詠唱1を使った後、詠唱1があった場所とは全然違う場所に詠唱2が現れる。
解決法3。
しぐれん様の[Mano_SkillSort.js]を使わせて頂き、ソートをID順に強制変更。
以上の処理で何とか上手くできました。
本来であれば、数ターン問答無用で詠唱(行動不能)し、必要ターン経過後に強制発動してくれる方がプレイヤーとしては馴染み深いのでしょうが、正直そっちは「強制発動」の方で苦労して挫折しました。
やってみたのは、
・詠唱必要ターン分、行動不能ステート「詠唱」を付与
・「詠唱」ステートより1ターン長く設定した「自動戦闘」ステートを作成し、該当魔法以外を封印
これらを両方ステート付与したら行けるんじゃないかなぁと思ったんですが、何故か自動戦闘ステートが一切仕事しないまま終了するという意味がわからない状況になったため諦めましたw
発動分の1ターンの差を2ターンにしてみたりして頑張ってみたんですけどね……。
一応こちらも何とかやれないか探ってみて、上手く行ったらまた報告しようと思います。
さて、次回は多分進捗報告になると思います。
進捗が報告できないようなら、またプラグイン紹介します!
【このカテゴリーの最新記事】
-
no image
-
no image
-
no image
-
no image
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/8808653
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック