250
edits
(まとめを作成) |
(攻撃による状態異常付与を書く) |
||
| Line 4: | Line 4: | ||
DamageHPの一部とCondition.csとかを中心に見ていく。 | DamageHPの一部とCondition.csとかを中心に見ていく。 | ||
==攻撃による状態異常付与== | |||
あらゆる攻撃は、'''そのダメージ量とは別に「属性強度」'''という値を持ちます。<ref>楽器も属性強度がありますが、説明を簡潔にするためこのページでは攻撃によるもののみ扱います。</ref> | |||
これは状態異常の発生率と付与される状態異常の強度に関わり、[[Elin:解析/物理戦闘|物理攻撃]]や[[Elin:解析/魔法|魔法攻撃]]で属性ダメージを受ける際には属性強度に基づいて状態異常の付与が決定されます。 | |||
|魔法 | |||
| | |||
属性強度の実際の値と計算式については、各ページを参照してください。 | |||
== | ===攻撃による状態異常付与の一般的な条件=== | ||
<syntaxhighlight lang="c#"> | |||
if (dmg > 0 || (origin != null && origin.HasElement(1345))) | |||
{ | |||
ApplyElementEffect(e, eleP, origin); | |||
} | |||
</syntaxhighlight>攻撃による状態異常付与は、まず1ダメージ以上を与える必要があります。 | |||
キズアミを信仰しているキャラクターはこの条件を無視することができます。 | |||
=== 火炎属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 910: | |||
if (Chance(30 + eleP / 5, 100)) | |||
{ | |||
MarkHostile().AddCondition<ConBurning>(eleP); | |||
} | |||
break; | |||
</syntaxhighlight>火炎属性の攻撃で炎上が付与されます。 | |||
付与確率は'''「30 + 属性強度 / 5」'''%で、最低30%、最大100%です。 | |||
付与される炎上の強度は'''「属性強度」'''と等しいです。 | |||
=== 冷気属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 911: | |||
if (Chara.isWet) | |||
{ | |||
if (Chance(30 + eleP / 10, 100)) | |||
{ | |||
Chara.AddCondition<ConFreeze>(eleP); | |||
} | |||
} | |||
else if (Chance(50 + eleP / 10, 100)) | |||
{ | |||
Chara.AddCondition<ConWet>(eleP); | |||
} | |||
break; | |||
</syntaxhighlight>冷気属性の攻撃で濡れ・凍結が付与されます。 | |||
濡れでないなら濡れの判定のみ、濡れているなら凍結の判定のみ行われます。 | |||
濡れの付与確率は'''「50 + 属性強度 / 10」'''%で、最低50%、最大100%です。 | |||
付与される濡れの強度は'''「属性強度」'''と等しいです。 | |||
凍結の付与確率は'''「30 + 属性強度 / 10」'''%で、最低30%、最大100%です。 | |||
付与される凍結の強度は'''「属性強度」'''と等しいです。 | |||
=== 電撃属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 912: | |||
if (Chance(75 + eleP / 20, 100) && EClass.rnd(3) == 0) | |||
{ | |||
Chara.AddCondition<ConParalyze>(1, force: true); | |||
} | |||
break; | |||
</syntaxhighlight>電撃属性の攻撃で麻痺が付与されます。 | |||
付与確率は'''「(75 + 属性強度 / 20) * 0.333」'''%で、最低約「25」%、最大'''「33.3」'''%です。 | |||
付与される麻痺は'''「1」'''ターンで、これは耐性や無効化を無視します。 | |||
=== 暗黒属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 913: | |||
if (Chance(30 + eleP / 5, 100)) | |||
{ | |||
Chara.AddCondition<ConBlind>(eleP); | |||
} | |||
break; | |||
</syntaxhighlight>暗黒属性の攻撃で盲目が付与されます。 | |||
付与確率は'''「30 + 属性強度 / 5」'''%で、最低約30%、最大100%です。 | |||
付与される盲目の強度は'''「属性強度」'''と等しいです。 | |||
=== 幻惑属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 914: | |||
flag = false; | |||
if (EClass.rnd(3) != 0) | |||
{ | |||
if (Chance(30 + eleP / 5, 100)) | |||
{ | |||
Chara.AddCondition<ConConfuse>(eleP); | |||
} | |||
} | |||
else if (Chance(30 + eleP / 5, 100)) | |||
{ | |||
Chara.AddCondition<ConSleep>(eleP); | |||
} | |||
break; | |||
... | |||
if (Chara.conSleep != null && flag) | |||
{ | |||
Chara.conSleep.Kill(); | |||
} | |||
</syntaxhighlight> | |||
幻惑属性の攻撃で混乱か睡眠が付与されます。 | |||
確率2/3で混乱の判定のみ、残りの1/3の確率で睡眠の判定のみが起こります。 | |||
混乱・麻痺ともに付与確率は'''「30 + 属性強度 / 5」'''%で、最低30%、最大100%です。 | |||
付与される状態異常の強度は'''「属性強度」'''と等しいです。 | |||
また、この属性の攻撃では睡眠が解除されません。 | |||
=== 毒属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 915: | |||
if (Chance(30 + eleP / 5, 100)) | |||
{ | |||
MarkHostile().AddCondition<ConPoison>(eleP); | |||
} | |||
break; | |||
</syntaxhighlight>毒属性の攻撃で毒が付与されます。 | |||
付与確率は'''「30 + 属性強度 / 5」'''%で、最低約30%、最大100%です。 | |||
付与される毒の強度は'''「属性強度」'''と等しいです。 | |||
=== 轟音属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 917: | |||
if (Chance(50 + eleP / 10, 100)) | |||
{ | |||
Chara.AddCondition<ConDim>(eleP); | |||
} | |||
break; | |||
</syntaxhighlight> | |||
轟音属性の攻撃で朦朧が付与されます。 | |||
混乱・麻痺ともに付与確率は'''「50 + 属性強度 / 10」'''%で、最低50%、最大100%です。 | |||
付与される状態異常の強度は'''「属性強度」'''と等しいです。 | |||
=== 神経属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 918: | |||
flag = false; | |||
if (Chance(30 + eleP / 5, 100)) | |||
{ | |||
Chara.AddCondition<ConParalyze>(eleP); | |||
} | |||
break; | |||
... | |||
if (Chara.conSleep != null && flag) | |||
{ | |||
Chara.conSleep.Kill(); | |||
} | |||
</syntaxhighlight> | |||
神経属性の攻撃で麻痺が付与されます。 | |||
付与確率は'''「30 + 属性強度 / 5」'''%で、最低30%、最大100%です。 | |||
付与される麻痺の強度は'''「属性強度」'''と等しいです。 | |||
また、この属性の攻撃では睡眠が解除されません。 | |||
=== 混沌属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 920: | |||
flag = false; | |||
if (Chance(5 + eleP / 25, 40)) | |||
{ | |||
Chara.AddCondition<ConBlind>(eleP / 2); | |||
} | |||
if (Chance(5 + eleP / 25, 40)) | |||
{ | |||
Chara.AddCondition<ConParalyze>(eleP / 2); | |||
} | |||
if (Chance(5 + eleP / 25, 40)) | |||
{ | |||
Chara.AddCondition<ConConfuse>(eleP / 2); | |||
} | |||
if (Chance(5 + eleP / 25, 40)) | |||
{ | |||
MarkHostile().AddCondition<ConPoison>(eleP / 2); | |||
} | |||
if (Chance(5 + eleP / 25, 40)) | |||
{ | |||
Chara.AddCondition<ConSleep>(eleP / 2); | |||
} | |||
if (Chance(5 + eleP / 25, 40)) | |||
{ | |||
Chara.AddCondition<ConDim>(eleP / 2); | |||
} | |||
if (Chance(30 + eleP / 10, 100)) | |||
{ | |||
Chara.SAN.Mod(EClass.rnd(2)); | |||
} | |||
break; | |||
... | |||
if (Chara.conSleep != null && flag) | |||
{ | |||
Chara.conSleep.Kill(); | |||
} | |||
</syntaxhighlight> | |||
混沌属性の攻撃で盲目・麻痺・混乱・毒・睡眠・朦朧が付与され、狂気度が上昇します。 | |||
それぞれの状態異常が同時に付与されることがあります。また、この属性の攻撃では睡眠が解除されません。 | |||
盲目の付与確率は'''「5 + 属性強度 / 25」'''%で、最低5%、最大'''「40」'''%です。 | |||
付与される盲目の強度は'''「属性強度 / 2」'''です。 | |||
麻痺の付与確率は'''「5 + 属性強度 / 25」'''%で、最低5%、最大'''「40」'''%です。 | |||
付与される麻痺の強度は'''「属性強度 / 2」'''です。 | |||
混乱の付与確率は'''「5 + 属性強度 / 25」'''%で、最低5%、最大'''「40」'''%です。 | |||
付与される混乱の強度は'''「属性強度 / 2」'''です。 | |||
毒の付与確率は'''「5 + 属性強度 / 25」'''%で、最低5%、最大'''「40」'''%です。 | |||
付与される毒の強度は'''「属性強度 / 2」'''です。 | |||
睡眠の付与確率は'''「5 + 属性強度 / 25」'''%で、最低5%、最大'''「40」'''%です。 | |||
付与される睡眠の強度は'''「属性強度 / 2」'''です。 | |||
朦朧の付与確率は'''「5 + 属性強度 / 25」'''%で、最低5%、最大'''「40」'''%です。 | |||
付与される朦朧の強度は'''「属性強度 / 2」'''です。 | |||
狂気度の上昇確率は'''「(30 + 属性強度 / 10) / 2」'''%で、最低15%、最大'''「50」'''%です。 | |||
上昇する狂気度は'''「1」'''です。 | |||
=== エーテル属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 922: | |||
Chara.ModCorruption(EClass.rnd(eleP / 50 + 10)); | |||
break; | |||
</syntaxhighlight> | |||
エーテル属性の攻撃でエーテル病が進行します。 | |||
進行確率は100%です。 | |||
進行度は'''「0 ~ (10 + 属性強度 / 50)の範囲内のランダムな値」'''です。<ref>参考として、進行度50でエーテル溶解液1個分相当、進行度200でエーテル抗体1個分相当。</ref> | |||
=== 酸属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 923: | |||
if (Chance(50 + eleP / 10, 100) && EClass.rnd(4) == 0) | |||
{ | |||
ActEffect.Proc(EffectId.Acid, Chara); | |||
} | |||
break; | |||
</syntaxhighlight> | |||
酸属性の攻撃で装備品の劣化判定が発生します。 | |||
付与確率は'''「(50 + 属性強度 / 10) / 4」'''%で、最低12.5%、最大'''「25」'''%です。 | |||
=== 出血属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 924: | |||
if (Chance(50 + eleP / 10, 100)) | |||
{ | |||
MarkHostile().AddCondition<ConBleed>(eleP); | |||
} | |||
break; | |||
</syntaxhighlight> | |||
出血属性の攻撃で出血が付与されます。 | |||
付与確率は'''「50 + 属性強度 / 10」'''%で、最低50%、最大100%です。 | |||
付与される出血の強度は'''「属性強度」'''と等しいです。 | |||
=== 衝撃属性 === | |||
<syntaxhighlight lang="c#"> | |||
case 925: | |||
if (EClass.rnd(3) == 0) | |||
{ | |||
if (Chance(30 + eleP / 5, 100)) | |||
{ | |||
Chara.AddCondition<ConDim>(eleP); | |||
} | |||
} | |||
else if (EClass.rnd(2) == 0) | |||
{ | |||
if (EClass.rnd(3) == 0) | |||
{ | |||
Chara.AddCondition<ConParalyze>(1, force: true); | |||
} | |||
} | |||
else if (EClass.rnd(2) == 0) | |||
{ | |||
Chara.AddCondition<ConConfuse>(1 + EClass.rnd(3), force: true); | |||
} | |||
break; | |||
</syntaxhighlight> | |||
幻惑属性の攻撃で朦朧、麻痺、混乱のどれか1つが付与されます。 | |||
判定は、1/3で朦朧、1/9で麻痺、1/6で混乱。残る7/18は判定発生なしです。 | |||
朦朧の付与確率は'''「30 + 属性強度 / 5」'''%で、最低30%、最大100%です。 | |||
付与される朦朧の強度は'''「属性強度」'''と等しいです。 | |||
麻痺の付与確率は100%です。 | |||
付与される麻痺は'''「1」'''ターンで、耐性や無効化を無視します。 | |||
混乱の付与確率は100%です。 | |||
付与される混乱の強度は'''「1 ~ 3の範囲内のランダムな値」'''で、耐性や無効化を無視します。 | |||
edits