特定のステートの時だけ属性攻撃が効く敵

味噌原

ユーザー
空を飛んでいる敵を作成しようとしています。

空を飛んでいる敵は地属性の攻撃を一切受けませんが、矢などを受けるとステート「転落」になります。
その状態の敵を地属性で攻撃すると、通常より多くのダメージが入るようにしたいです。

そのために、敵の地属性の属性有効度を0%にしました。
そして ステート「転落」 の地属性有効度を200%にしました。
ですが、敵本体の元々の属性有効度が0%なので、ステートで属性有効度を変更しても地属性ダメ―ジを与えることができません。

敵の属性有効度を1%など限りなく低く設定する手もありますが、
ツクールMVのステートに設定できる属性有効度の最大値は2000%ですから、爽快感のあるダメージ値にはなりそうにありません。

ステートで敵の属性有効度を強制的に変更する手段はないでしょうか?
 

munokura

ユーザー
プラグインを使うか、スクリプトを書き換えるしかエディタの限界を超える方法は無いと思います。

実験してないですが、ヘルプを読んで使えないかな?と思ったプラグインを挙げてみます。

▼Mano 耐性加減算
加減算によるステート耐性を実装
https://plugin.fungamemake.com/archives/1920
※エディタの限界値を超えられるか未確認。超えられる気がする。

▼KZR 属性チェインステート
仲間の攻撃に反応して追撃を行うステートを作成します。
https://plugin.fungamemake.com/archives/11315
※連撃で大ダメージとか設定できそう。

▼YEP Lunatic Pack – Critical Sway
スキル、アイテム、ステートのクリティカル率を調整するために新しい効果を追加
https://plugin.fungamemake.com/archives/10554
※ステートでクリティカル率を大幅に上げるというのはアリかも?ただし、前提プラグインが多いので注意。
 
最後に編集:
根本的な解決策になるかどうかは分かりませんが……
「ステートの耐性上下を割合ではなく固定値にしたい」という質問が以前あり、
そこで僕はプラグインを作りました。
https://forum.tkool.jp/index.php?threads/2905/

今回のケースは、まさにこれが功を奏するのですが(0%と200%でうまくいく)、
これを導入すると、地属性以外もこれの影響を受けるので、検討してから導入してください。
 

味噌原

ユーザー
根本的な解決策になるかどうかは分かりませんが……
「ステートの耐性上下を割合ではなく固定値にしたい」という質問が以前あり、
そこで僕はプラグインを作りました。
https://forum.tkool.jp/index.php?threads/2905/

今回のケースは、まさにこれが功を奏するのですが(0%と200%でうまくいく)、
これを導入すると、地属性以外もこれの影響を受けるので、検討してから導入してください。
プラグインを適用できました。
状態異常から大ダメージに持ち込むことができるようになったのでうれしいです。
元々属性は少なくする予定だったので、影響も少ないと思います。
ありがとうございました!
 

味噌原

ユーザー
プラグインを使うか、スクリプトを書き換えるしかエディタの限界を超える方法は無いと思います。

実験してないですが、ヘルプを読んで使えないかな?と思ったプラグインを挙げてみます。

▼Mano 耐性加減算
加減算によるステート耐性を実装
https://rpgfun.tk/archives/1920
※エディタの限界値を超えられるか未確認。超えられる気がする。

▼KZR 属性チェインステート
仲間の攻撃に反応して追撃を行うステートを作成します。
https://rpgfun.tk/archives/11315
※連撃で大ダメージとか設定できそう。

▼YEP Lunatic Pack – Critical Sway
スキル、アイテム、ステートのクリティカル率を調整するために新しい効果を追加
https://rpgfun.tk/archives/10554
※ステートでクリティカル率を大幅に上げるというのはアリかも?ただし、前提プラグインが多いので注意。
今回はほかのプラグインを入れたのですが、
追撃ステートやクリティカル調整も制作の幅が広がりそうですね。
ありがとうございます!
 

Zakky

ユーザー
私なら、、、
①空中の敵には「空中」というステートを予め与えておきます。
 方法としては、プラグインを用いるか、空中の敵は、出現時にそのステートが付与されるよう、敵グループのイベントで設定する。

②その空中のステートの敵には弓ダメージが大きくなるようにします。
 (方法その1 弓と他の武器で属性を変えておき、効果率を変える
  方法その2 弓のダメージ計算を 『元の計算式 * (k+b.isStateAffected(n))』:[nは「空中」のステートID]
        を掛け算しておくと(k+1)倍に)

③そして弓の攻撃には「墜落」のステートを付与させるようにします。
 「墜落」のステートには「空中」のステートを無効とすることで、「墜落」が付与された時点で「空中」が自動で解除されます。
 今度は、「墜落」のステートでも上記のように、地属性のダメージが大きくなるようにします。

④この場合、「空中」で地属性のダメージを受けなくするのも、
 『属性効果率を0%にする』という方法のほかに、
 地属性の攻撃自身の計算式を「空中」のステートがあるとダメージがないことを
 『元の計算式 * (1-b.isStateAffected(n))』:[nは「空中」のステートID]
 とすることで実現しようかな、と考えます。

⑤「墜落」のステートが無くても、もともとそのエネミーが地属性の効果率を高めておけば、弓の攻撃に「空中」のステートを解除する効果を付帯しておくことで、事足りるかもしれませんね。
 
最後に編集:
トップ