「呪文からエネルギーへ」検証結果

概要

本検証は、

  • 内部ソースコードの確認

  • SpellLab, Wand dbg, 自分が埋め込んだ処理確認用MOD

を利用しています。
また、以下の順番で説明していきます。不必要なところは各自読み飛ばしてください。

  1. 「呪文からエネルギーへ」の動作検証

  2. 「呪文からエネルギーへ」が何故か発動しない問題に対する動作検証

  3. 「呪文からエネルギーへ」と爆破設定のない呪文について

  4. 「呪文からエネルギーへ」が呪文を吸収しないパターンについて

  5. 「呪文からエネルギーへ」で火力を安定させるには

結論

「呪文からエネルギーへ」の適応を安定させるには 

  • 爆破範囲のある呪文で「呪文からエネルギーへ」を呼び出す

  • 同時詠唱数を稼いで、「呪文からエネルギーへ」が適応される呪文を増やす

  • タイマールミナス等で、「呪文からエネルギーへ」の発動タイミングをずらす

「呪文からエネルギーへ」の火力を出すには 

  • 爆破ダメージが設定されてない呪文を読み込む

  • 高火力の呪文を読み込む

  • オービット(火の玉の軌道以外)を読み込ませる

呪文からエネルギーへの処理

発動してから1F後に、周囲120にある呪文を取り込みます。取り込んだ後は、取り込まれた呪文ごとの、

  • ダメージ

  • 爆破ダメージ

をそれぞれ、「呪文からエネルギーへ」に紐づいているスペルに対してダメージ追加します。また、爆破範囲も付与されます。
爆破範囲は、

「エネルギーから呪文へ」が付与された呪文の爆破範囲 = 
  吸収する側の呪文爆破範囲 + 
  ln( (吸収された側の呪文ダメージ + 吸収された側の呪文爆破ダメージ) * 10 * 10.5)

(「エネルギーから呪文へ」が付与された呪文の爆破範囲 <= 120)

となっています。
lnは自然対数ですが、自然対数については割愛します(俺も忘れたしわからん)。ダメージ量が大きくなればなるほど、上昇値が伸びなくなるとだけ考えてください。また爆破範囲には上限値が設定されており、120が「エネルギーから呪文へ」を利用した際の最大爆破範囲となります。
以下のサイトで自然対数の計算ができたりします。

https://keisan.casio.jp/exec/system/1260332465

呪文の取り込み処理が完了すると、呪文の取り込み処理は破棄されて「呪文からエネルギーへ」の処理が終わります。

検証1「爆破のない放射物をエネルギーとして吸収した場合」

「呪文からエネルギーへ」が乗ったスピッターボルト(7.5ダメージ)に対して、スピッターボルトを取り込むと、

7.5(吸収する方) + 7.5(吸収された方) = 15dmg

になると想定できます。

検証1: 放射物を読み込ませる

実際に試すと、問題なくエネルギーとして取り込めています。スピッターボルトで検証しているのは、スパークボルトだとクリティカルが乗るときがあるためです。

検証2「爆破のある放射物をエネルギーとして吸収した場合」

「呪文からエネルギーへ」が乗ったスピッターボルト(7.5ダメージ)に対して、ダイナマイトを取り込むと

7.5(スピッターボルト) + 62.5(TNTの爆破ダメージ) = 70dmg

になります。

しかし実際に試すと、70ダメージのときと7.5ダメージの時があります。7.5ダメージであることから、爆破ダメージ分の火力が適応されていないことになります。この現象については、"「呪文からエネルギーへ」が何故か発動しない問題への調査" の項目で解説します。

検証3「調整版が乗った放射物をエネルギーとして吸収した場合」

「呪文からエネルギーへ」が乗ったスピッターボルト(7.5ダメージ)に対して、スピッターボルト + ダメージプラスを取り込むと、

7.5(吸収する方) + 7.5(吸収された方)+ 10(ダメージプラス) = 25dmg

になります。

検証3: 調整版を読み込ませる

想定通り、問題なく25ダメージになっていることがわかります。

検証4「呪文からエネルギーへ」が何故か発動しない問題への調査

「検証2」で再現できた、「呪文からエネルギーへ」が発動しない問題は、呪文の爆破範囲が小さすぎることで、爆破ダメージが適応されていないことが原因で発生しています。
「検証2」では爆破範囲がないスピッターボルトを使っていましたが、爆破範囲が12あるファイアー爆弾に切り替えてみると、確定で爆発していることがわかります。

検証4: ファイアー爆弾での読み込み

爆破解除を入れてファイアー爆弾の爆破範囲をなくしてみると、ファイアー爆弾自体の10炎ダメージのみ適応されていることがわかります。

検証4: ファイアー爆弾に爆破解除を入れたときのダメージ

爆破解除には爆破ダメージマイナスもあるので、ホーリーボムを読み込んで試しても見ましたが、やはり先程と同じく、ファイアー爆弾の10炎ダメージのみになっています。

検証4: 大量の爆破ダメージを爆破解除をいれて読み込む

「呪文からエネルギーへ」の爆破ダメージがうまく適応される爆破範囲は?
細かくは調べてないですが、トリプリケイトボルトの爆破範囲(11-12)がギリギリだったので、それ以上の爆破範囲がある呪文が良いです。

  • ダブルトリガースパークボルト

  • ファイアー爆弾

等なら問題なかったです。

「呪文からエネルギーへ」と爆破設定のない呪文について

爆破ダメージが設定されていない呪文は、デフォルト値の125爆破ダメージが適応されます。なので、「呪文からエネルギーへ」の方で爆破範囲を設定してあげれば、安定して火力を出すことができます。

「呪文からエネルギーへ」が呪文を吸収しないパターンについて

同時詠唱で呪文を呼んだ場合、読み込まれない呪文が発生するときがあります。これは、呪文詠唱時のフレームよりも先に「呪文からエネルギーへ」が詠唱されていることが原因です。

立方バリア + スピッターボルト
鋸刃の軌道 + スピッターボルト

XXの軌道(オービット)を「呪文からエネルギーへ」が吸収するときの処理

「XXの軌道」呪文も、1フレーム単位で呼び出されています。正確に書くと、発生後1Fで

  1. 軌道用の呪文(鋸刃の軌道ならディスク)を呼び出し、呪文に「軌道」のタグ付を行う

  2. 「軌道」タグがついている呪文を取得し、角度を変えて再描画する

  3. [2]を1フレーム単位で呪文がなくなるまで行う

という動作が発生します。この処理が、「呪文からエネルギーへ」の処理よりも後に読み込まれていることがあるため、軌道が残り続けてエネルギー化されなくなります。原理は同時詠唱のときに読み込まれないパターンがあるのと同じです。

プラズマビーム、鋸刃の軌道の火力が高い原因
火の玉の軌道はファイアーが回る都合上、爆破ダメージが設定されているため弱いですが、鋸刃、プラズマには爆破ダメージが未設定になっているので、鋸刃を例にすると

125(ディスクダメージ) * 4 = 500 爆破ダメージ

が発生します。

「呪文からエネルギーへ」で火力を安定させるには

「呪文からエネルギーへ」にディレイをかける

タイマー付きの光線ドリル等を利用して、「呪文からエネルギーへ」が適応された呪文にディレイを掛けて詠唱してください。ただし、立方バリア等の範囲が広い魔法については、位置ずれでうまく読み込めないケースが発生するようです。

バリアの残りカスがあるとき

タイマールミナス以外には、「ノッラ」を利用した連続詠唱の方法もあります。1つ目の詠唱では、チェーンソーを用いて詠唱遅延をゼロにして、1Fで発射します。2つ目の詠唱で、タイマー系をノッラで詠唱することで、擬似的なタイマールミナス(ディレイ)を実現しています。その後、タイマー先からでる玉で、1つ目に撃った玉を「呪文からエネルギーへ」で回収します。この方法を利用する場合、早すぎるとマナが枯渇して「鋸刃の軌道」が出るだけのパターンが発生する可能性があるので、ある程度のリチャージ待機時間(0.4~がオススメ)があったほうが運用しやすいです。

鋸刃ノッラ呪文からエネルギーへ

「呪文からエネルギーへ」の同時詠唱数を増やす

1フレーム内の処理順はわからないので、「呪文からエネルギーへ」が発動する数を増やして、吸収を安定させる方法です。多少読み込まれないリスクはありますが、火力は安定します。また1F内で処理されるため、タイミングによっては「呪文からエネルギーへ」が複数の鋸刃を読む可能性があります。これに関しては、細かい挙動は調べきれてないです。
下図だと、スピッターボルトで撃ってるので何個かは爆破ダメージが入ってないパターンがあるのかもです。

Noitaわからん


この記事が気に入ったらサポートをしてみませんか?