計算の仕組み
拍ごとにカウンターが1増えます。10に達すると、パッシブはヒット1回を発行し、カウンターをリセットします。そのため毒は10秒ごとに1回ヒットします。ヒットは、ユニットの最大HP x 毒スタック数 x 0.01 で、ダメージタイプのない固定値。
発動タイミング: 効果がユニットにある間、パッシブはゲームの論理リフレッシュの拍(通常速度で毎秒1回)を購読します。
適用対象: 効果を持つユニット。ヒットにはダメージタイプがないため、物理耐性も魔法耐性も適用されません。
ツールチップが教えてくれないこと
- 1パーセントはメソッド内の定数で、スタック数を掛けます。行の FloatValues(1)は読まれないため、ツールチップの数値はたまたま一致しているだけ。
- 出荷された英語のツールチップは、毎秒の魔法ダメージと書いています。コードと韓国語の設計メモは、10秒ごとの属性なしダメージと書いています。
- 重ね掛け: 汎用の効果適用機は、毒をすでに持つユニットに対して、行の MaxStack(100)まで新しいスタックを加えます。毒を特別扱いするものはないため、設計メモの「重複しない」はコードでは成り立ちません。各スタックはヒットに最大HPの1%を加えます。
- このビルドでは毒を付与するスキル行、特性、コードパスはありません。AFFECTER_Poison のリテラルは、免疫チェックと 液体モンスターのパッシブでだけ読まれます。
- ビルド 25846389 以降、効果が新しいマップに引き継がれても10秒カウンターはリセットされないため、次のヒットはタイミングを保ちます。新しい毒は0から始まります。フラグは PassiveAction.IsTransferAttach(+0x51)で、このビルドで新たに追加されました。その名前と v0.4.29 のパッチノート(「進行状態と内部タイマーは、拠点とダンジョンの移動時にリセットされない」)から、マップ移動で再付与されたときに設定されると分かります。スライス内にセッターへの直接呼び出しは見つからず(書き込みはインライン化されている)、設定される正確な瞬間は追跡していません。
ビルド25846389のゲームバイナリから読み取り。 AFFECTER_Poison.Passive_Poison.OnEnable@0x96BBB4, AFFECTER_Poison.Passive_Poison.Damage@0x96BDB4, AFFECTER_Poison.Passive_Poison.<DamageRoutine>d__5.MoveNext@0x96BF04, Refactor.Tick.DataApply.AffecterApplier.Apply@0xAB0634
ダメージの計算方法
毒 は typeless ダメージを与えます。その量はスタックごとに対象の最大体力の 1%、10 秒ごとです。無属性のため、耐性では減りません。最大 100 スタックまで積み重なり、その量は対象の最大体力に依存し、術者の攻撃力には依存しません。持続時間は、それを付与するスキルで決まります。
| 1ヒットあたりのダメージ | 対象の最大体力の 1% |
| ダメージタイプ | Typeless、耐性は適用されない |
| 重複 | 最大 100 スタック |
| 依存する値 | 対象の最大体力(使用者の攻撃力ではない) |
| ティック間隔 | 10 秒 |
| 持続時間 | それを付与するスキルによって設定されます |
効果
スタックごとに対象の最大体力の1%を、10秒ごとに属性なしダメージとして与えます。耐性では軽減されません。100スタックまで重複。対象の最大体力に比例し、使用者の攻撃力には比例しません。例:500HPの対象に1スタックなら5ダメージ(10秒ごと)。持続時間は付与するスキルで決まります。
生の値: 1
プロパティ
| 最大スタック | 最大 100 スタック |
| 極性 | 負 |
| 継続時間あり | はい |
| 絶対(除去不可) | いいえ |
| プレイヤーに表示 | はい |
| 建物に取り付け可能 | いいえ |
参照元
効果:
毒無効 (Trait)
毒無効
イベント選択肢: 捨てられた秘術装置 ChoiceF28100
入手元
適用方法: ゲームシステムによって自動的に適用されます。