魔法(スキル)回避率の設定の仕方【RPGBakin】
この記事ではRPGDeveroperBakinのスキル回避率の実装について解説いたします。
・2023年5月3日執筆の記事です。今後アップデートされ追加されるかもしれません。
・プラグインを使わない(使えない)のでデフォルト機能だけで作成しております。
・変数を使うので中級者~向け
・敵1体、味方1人のバトルを想定してます。(筆者制作中のゲームがそうなので)応用次第で複数人のバトルでも対応できると思います。
スキル回避設定
こんにちは、んだば重工です!
助手のラビットちゃんです。
今日はゲーム制作ツールであるRPGDeveroperBakinのスキル(魔法)回避率の実装と、「回避」コマンドの作成例を解説します!
わざわざ解説するってことは「設定しなきゃ存在しない」ということですか?
はい、その通りです。「回避率」というのはパラメーターとして存在しますが、スキルに関する設定はスキル自体の成功判定のみで、対象の能力を参照する項目は現時点で存在いたしません。。。
そこで「変数」を使って、スキル回避率のパラメータを作ってしまおうと思います。
変数すげえ!
大まかな流れですが、
敵のスキルを「ヒット時」「回避成功時」の2種類を作る。
バトルイベント「毎ターン」で敵の行動を変数で決定させる。
という流れになります。
敵スキルの作成
まずは同名の敵スキルを作成します。スライムタッチとしておきます
ひとつは成功率を100に、もうひとつは0にしておきます。
変数の作成と設定
次に以下の変数を新規作成します。名前は管理しやすければ何でもいいです。
・命中率
・回避率
・ランダム100
イベントの制作
バトルイベント「敵AI」というものを作ります。名前は任意で大丈夫です。
開始条件は「毎ターン」です。
今回は例で敵Aの命中が100、味方Aの回避が80で、引き算で計算して最終回避率が20%になるように調整します。
イベントの中身ですが、
1・変数「命中率」に敵Aの命中100を代入します。
2・次に変数「回避率」に味方Aの回避80を代入します。
3・変数「命中率」から変数「回避率」を減算します。
これで「命中率」の中には20という数値が格納されます。
4・そして変数「ランダム100」に一度0を代入し、その後「ランダム100」に乱数0~100を加算します。(一度0を代入する理由ですが、Bakinには現状乱数が加算しかできないので、変数をリセットしておかないと正常に動きません)
敵の行動をランダム100の変数で変わるようにします。
仮に70%の確率で「スライムタッチ」、30%の確率で「何もしない」とういう行動をさせます。
5・条件判断「変数ボックスの確認」、ランダム100が70より上で分岐させます。
6・条件に当てはまる時に「バトルキャストの行動を指定する」で該当の敵に「何もしない」を設定します
これで30%の確率で敵は「何もしない」という行動をとります。
7・条件に当てはまらない時に、再びランダム100に0を代入、その後乱数100を追加します。
8・再び条件判断「変数ボックスの確認」で変数「ランダム100」が「変数命中率」より大きいを指定します。(命中率の中には20という数値が格納されています)
9・条件が当てはまった場合に「バトルキャストの行動を指定する」で上記で作ったスキル、成功率100%の「スライムタッチ」を、条件が当てはまらなかった場合に、成功率0%の「スライムタッチ」を指定します。
これで条件が達成され「敵の攻撃を20%で回避する」という設定が出来ました。
命中率と回避率内の変数を変えることで自由に回避率を設定することができます。
※味方が複数人いる場合はそれぞれ命中率と回避率を算出し、ターゲット指定の変数分岐を作れば同様に動くと思います。
応用編
こちらを応用すれば敵の回避率と、「回避コマンド」で「使用ターンの回避率を上げる」というものを作ることもできます。ただし、味方のコマンドを決定した後に開始するというイベント開始条件がBakinにはないため、かなりトリッキーな作りになります。
やり方としては
・コマンド選択時に「敵を行動不能にさせる」
・行動指定にプレイヤーの行動を「何もしない」に指定
・毎ターン開始の上記命中判定のランダム部分をスイッチなどで機能させない
というやり方で、疑似的にそのターンで回避率を30あげることができます。(内部的には2ターン経過している)
ただし、このやり方はあくまで味方1人のバトルでしか使えませんので、2人以上のパーティだと別の方法を考えなきゃいけません。
編集後記
以上がBakinでスキル回避判定を作ろう、でした!
ZZZZ...
ね、寝てる。。。