【解決】トリアコンタン様「HitAndEvasionExtend.js」の式がわかりません

dude
記事: 6
登録日時: 2021年1月17日(日) 00:40

【解決】トリアコンタン様「HitAndEvasionExtend.js」の式がわかりません

投稿記事by dude » 2021年1月17日(日) 01:01

トリアコンタン様の作成された「HitAndEvasionExtend.js」を使用して、命中式(命中率-回避率)を実現したいです。

MVのデフォルトの計算式では、命中率が100を超えてたら100と同じ仕様なので、攻撃側命中率110、防御側回避率10の場合、結果として命中率が90になってしまいます。命中率の超過分を無視せず、きちんとこの場合命中が110引く10の100になるようにしたいです。

本プラグインでは、パラメータ欄に
①物理命中計算式
②魔法命中計算式
③物理回避計算式
④魔法回避計算式
の4つがあり、そこに自分の設定したい計算式を設定するようになっていますが、どこにどう設定すればいいかがわかりません。端的に理想の式を書くならば「a.hit - b.eva」だと思うのですが上手くいきません。

どうかわかる方がいらっしゃいましたら宜しくお願い致します。
最後に編集したユーザー dude on 2021年1月17日(日) 03:43 [ 編集 1 回目 ]

奏ねこま
記事: 702
登録日時: 2016年1月20日(水) 20:04

Re: トリアコンタン様「HitAndEvasionExtend.js」の式がわかりません

投稿記事by 奏ねこま » 2021年1月17日(日) 02:55

MVは計算式の中で命中率100以上を100として扱っているわけではなく、
また、命中率から回避率を引いているわけでもありません。
MVの実装は

・攻撃者の命中率を元に命中判定を行う
・攻撃対象の回避率を元に回避判定を行う
・命中判定○、回避判定×ならばヒット
・命中判定×、または回避判定○ならばミス

となっており、
「命中判定の成否に関わらず回避されたらミス」「回避判定に命中率がまったく関与しない」
という内容であることが「命中率が100を超えてたら100と同じ」と言われる理由です。
HitAndEvasionExtend.jsで命中率計算式や回避率計算式を設定してもこの事実は変わりません。

これらをご理解頂いた上でご希望の挙動を実現するならば、
命中計算式に「a.hit - b.eva」と設定し、回避計算式に「0」を設定すると良いのではないでしょうか。
そうすることで回避判定は事実上行われず、命中判定のみ行われることになります。
dude
記事: 6
登録日時: 2021年1月17日(日) 00:40

Re: トリアコンタン様「HitAndEvasionExtend.js」の式がわかりません

投稿記事by dude » 2021年1月17日(日) 03:42

奏ねこま様


ご指摘通りに式を設定すると、希望通りの確率になっていること確認しました。
また、回避・命中判定について大変勉強になりました。

ありがとうございました。

“MV:質問” へ戻る