【解決済み】ステートの付与を蓄積型に

かわらみや
記事: 5
登録日時: 2017年5月28日(日) 15:43

【解決済み】ステートの付与を蓄積型に

投稿記事by かわらみや » 2017年5月28日(日) 22:22

いつもお世話になっております。

現在製作中のゲームの中で、ステートの蓄積というシステムを実装したいと考えています。
デフォルトでは武器ないしスキルの付与率と対象のステート耐性を参考に判定を行っているのですが、
これを蓄積型へと変更するプラグインを作成していただきたいのです。
たとえば、毒耐性50の敵に毒属性10の武器で5回攻撃すれば毒状態になる、といった具合です。
スキルに毒属性10があれば10+10で合計20となり、耐性50の敵ならば3発で毒状態にすることができます。

また、すでにかかっているステートへの蓄積は同ステートが解除されるまで蓄積されないようにして頂きたく考えています。
可能であれば、それぞれの記述はメモ欄ではなくステート付与率を蓄積値に、耐性を……といった仕様にして頂けると作業が捗ります。
特に表示がなければ耐性50として扱う、など設定できれば小躍りします。

ゲーム内の実装ではCTBを想定しているのですが、素早い攻撃で敵に状態異常ダメージ(毒、出血etc)を与えるか、重い一撃で大ダメージを与えるかの選択ができるようにしたいと考えています。

何卒よろしくお願いいたします。
最後に編集したユーザー かわらみや on 2017年5月30日(火) 08:31 [ 編集 1 回目 ]

アバター
トリアコンタン
記事: 2311
登録日時: 2015年11月10日(火) 21:13
お住まい: きのこ王国
連絡を取る:

Re: ステートの付与を蓄積型に

投稿記事by トリアコンタン » 2017年5月28日(日) 23:27

こんばんは!
以前に作成したものに少し修正を加えました。
ご希望通りの仕様になっているかご確認ください。

「蓄積型ステートプラグイン」
特定のステートを蓄積型に変更します。
蓄積型のステートにしたい場合、メモ欄に以下の通り設定してください。

コード: 全て選択

<AS蓄積型>


蓄積型ステートは使用効果「ステート付加」によって値が蓄積していき、蓄積率が100%(=1.0)を超えると対象のステートが有効になります。計算式は以下の通りです。

効果「ステート付加」の設定値 * 対象の「ステートの有効度」 = 蓄積率
例:効果の「ステート付加」が80%(0.8)で、対象のステート有効度が50%(0.5)の場合

コード: 全て選択

0.8 * 0.5 = 0.4         # 蓄積率は40%(0.4)

上級者向け機能として蓄積率計算式を別途指定できます。
計算式では以下の変数が使用できます。

a : 効果の「ステート付加」の設定値
b : 対象の「ステート有効度」の設定値

蓄積率計算式の指定例

コード: 全て選択

a - (1.0 - b)

例:効果の「ステート付加」が80%(0.8)で、対象のステート有効度が50%(0.5)の場合

コード: 全て選択

0.8 - (1.0 - 0.5) = 0.3  # 蓄積率は30%(0.3)

蓄積率が負の値になった場合は「0」として計算されます。
また実行時にブザーが鳴る場合、スクリプトの記述に問題があります。
F8を押下してデベロッパツールを開き、内容を確認してください。

「ステート解除」によって蓄積率がリセットされます。

・ダウンロード
耐性計算式を除算と減算の二つを用意しました。(ver1.1.0)
https://raw.githubusercontent.com/triacontane/RPGMakerMV/master/AccumulateState.js
最後に編集したユーザー トリアコンタン on 2017年5月29日(月) 21:43 [ 編集 1 回目 ]
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30

[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
かわらみや
記事: 5
登録日時: 2017年5月28日(日) 15:43

Re: ステートの付与を蓄積型に

投稿記事by かわらみや » 2017年5月29日(月) 10:41

ありがとうございます!
ほとんど私が望んだものそのものでした!

しかし、1点だけ要望がございます。
現在の減算タイプの計算式だと、例えば武器付与率が10で敵の有効度が20のとき
0.1-(1-0.2)=-0.7となり、これは何回攻撃しても状態異常にかけることができません。

そこで、次のような計算式を追加して頂きたく思います。

1-(b-a)/b =蓄積率
b=対象のステート有効度 a=ステート付与率の合計

これであれば、例えば敵の耐性(有効度)が1000でこちらの蓄積値が10であっても

1-(1000-10)/1000=0.01

となり、つまり100回攻撃すれば状態異常にかけることができる計算になります。極端な例ですが(笑)
これならば視覚的にもわかりやすく、小回りが利く調整が可能になるのではと考えます。

最後に運について質問なのですが、確かデフォルトの設定では運が対象の運を10上回る毎に蓄積率が1%上がる、という計算だったと記憶してます。
それはこのプラグインを有効にした場合でも蓄積値が0.01(1%)づつ上がっていく、という認識でよろしいのでしょうか?


お願いする立場で長々と申し訳ありません。お手空きの時でかまいませんので、よろしくお願いいたします。
アバター
まっつUP
記事: 1155
登録日時: 2016年8月11日(木) 15:38
お住まい: タケノコ王国

Re: ステートの付与を蓄積型に

投稿記事by まっつUP » 2017年5月29日(月) 18:48

かわらみや様
スキルが必中ではなく、使用者の運 > 対象者の運の時、
互いの差に0.001をかけた値を元のステート付加確率にかけます。

したがって、デフォルトの特徴のみを持った運50のバトラーに
運60のバトラーがステート付加率50%の効果を与える時
ステート付加率は50.5%になります。弱いですね。

追記:
細かいことですが
1-(b-a)/b =蓄積率
b=対象のステート有効度 a=ステート付与率の合計
この計算式はbが0になる可能性があることを考えると止めた方がいいと思いました。
またステート有効度が低い方に不利が偏るように見えるのですが・・・。
有効度が0を超えるときはステート付与率 / 10を最低保障の蓄積値にするなどでいいのでは。
RPGで笑顔を・・・

ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup

github
https://github.com/mattuup/RPGMakerMZ
かわらみや
記事: 5
登録日時: 2017年5月28日(日) 15:43

Re: ステートの付与を蓄積型に

投稿記事by かわらみや » 2017年5月29日(月) 20:22

まっつUP様

運補正値の訂正ありがとうございます。
思った以上に弱いですね……運とは一体

bに0が入る可能性を失念しておりました。成るほど危険ですね……
誤って0を入力しないよう留意する……というのは根本的な解決になってませんね(笑)

例として1000と10という数字を出しましたが、実際には付与率は20~60、有効度は50~300を想定しています。
デフォルトは100なので偏りも許容範囲ではないかな……と
アバター
トリアコンタン
記事: 2311
登録日時: 2015年11月10日(火) 21:13
お住まい: きのこ王国
連絡を取る:

Re: ステートの付与を蓄積型に

投稿記事by トリアコンタン » 2017年5月29日(月) 21:41

お疲れさまです。
頂いたご要望を元に仕様を見直しました。
蓄積率計算式をダメージ計算式のように独自に指定できます。
また、デフォルトの仕様である運補正と必中補正の適用有無を選択するパラメータを追加しました。URLは同じです。

蓄積率計算式を独自に指定できるよう仕様変更。運補正と必中補正の有無を設定できる機能を追加(ver 2.0.0)
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30

[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
かわらみや
記事: 5
登録日時: 2017年5月28日(日) 15:43

Re: ステートの付与を蓄積型に

投稿記事by かわらみや » 2017年5月30日(火) 08:30

トリアコンタン様

ありがとうございます!
お手数おかけしてしまって申し訳ありません!

頂いたプラグインで色々試してみたいと思います。
本当にありがとうございました!

“MV:プラグイン素材のリクエスト” へ戻る