In other languages: Deutsch English Español Français 한국어 Русский Українська 简体中文

Damage/ja: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
mNo edit summary
(Change "抵抗(力)" to "耐性" ("resistance" in English))
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Languages}}{{Translation verification|revisionID=194221}}
{{Languages}}{{Translation verification|revisionID=198362}}
[[File:player_attacked_by_biters_small.png|thumb|300px|right|ダメージを受けると赤くフラッシュする]]
[[File:player_attacked_by_biters_small.png|thumb|300px|right|ダメージを受けると赤くフラッシュする]]
'''ダメージ'''を受けるとは、[[enemies/ja|敵]] やその他のエンティティによって [[player/ja|プレイヤー]]の耐久力が低下することである。
'''ダメージ'''を受けるとは、[[enemies/ja|敵]] やその他のエンティティによって [[player/ja|プレイヤー]]の耐久力が低下することである。


== 概要 ==
== 概要 ==
Factorioでは、エンティティは耐久力を持ち、死亡もしくは破壊することができ、抵抗力を持っている。
Factorioでは、エンティティは耐久力を持ち、死亡もしくは破壊することができ、耐性を持っている。
''ダメージ''とは、銃による射撃やバイターに噛まれるなどで、エンティティの耐久力を低下させる概念として定義される。
''ダメージ''とは、銃による射撃やバイターに噛まれるなどで、エンティティの耐久力を低下させる概念として定義される。
エンティティの抵抗力は、任意の攻撃からエンティティが受けるダメージをどの程度軽減できるかを定義する。
エンティティの耐性は、任意の攻撃からエンティティが受けるダメージをどの程度軽減できるかを定義する。


プレイヤーの最大耐久力は250である([[energy shield/ja|エネルギーシールド]]を除く)。その他のエンティティの耐久力は、それぞれのエントリに記載されている。
プレイヤーの最大耐久力は250である([[energy shield/ja|エネルギーシールド]]を除く)。その他のエンティティの耐久力は、それぞれのエントリに記載されている。
Line 43: Line 43:
貫通力は[[tank/ja|戦車]]の弾薬に存在する。これは弾丸がそれ以上飛翔できなくなるまでに、どれだけの敵のHPにダメージを与えられるかを決定する。敵を貫通するためには、敵が弾丸によって殺される必要があり、殺傷するために与えられるダメージは現在の貫通力以下でなければならない。[https://forums.factorio.com/viewtopic.php?f=5&t=30917]ダメージを与えた分、貫通力も減少する。例えば、耐久力75の中型バイターを貫通力300の砲弾で撃つと、砲弾は4体の中型バイターを貫通して彼らを殺し、さらにもう1体のターゲットを破壊/損傷させることになる。
貫通力は[[tank/ja|戦車]]の弾薬に存在する。これは弾丸がそれ以上飛翔できなくなるまでに、どれだけの敵のHPにダメージを与えられるかを決定する。敵を貫通するためには、敵が弾丸によって殺される必要があり、殺傷するために与えられるダメージは現在の貫通力以下でなければならない。[https://forums.factorio.com/viewtopic.php?f=5&t=30917]ダメージを与えた分、貫通力も減少する。例えば、耐久力75の中型バイターを貫通力300の砲弾で撃つと、砲弾は4体の中型バイターを貫通して彼らを殺し、さらにもう1体のターゲットを破壊/損傷させることになる。


== 抵抗 ==
== 耐性 ==
抵抗には2つの側面がある。
耐性には2つの側面がある。


=== 減衰または "一律"の抵抗 ===
=== 減衰または "一律"の耐性 ===
減衰抵抗は、結果としてダメージが1を下回らない限り、指定した数値だけダメージを減少させる。結果的にダメージが1より小さくなる場合は、別の計算式を用いる。Rを一律の抵抗値、Dを元のダメージ、Mを一律の抵抗を考慮した後の修正ダメージとする。
減衰耐性は、結果としてダメージが1を下回らない限り、指定した数値だけダメージを減少させる。結果的にダメージが1より小さくなる場合は、別の計算式を用いる。Rを一律の耐性値、Dを元のダメージ、Mを一律の耐性を考慮した後の修正ダメージとする。


R+1<D の場合
R+1<D の場合
Line 61: Line 61:
<code>M=1/(R+1)</code>.
<code>M=1/(R+1)</code>.


一律の抵抗が修正前のダメージに一致するか、より大きい場合、修正後のダメージは以下の表に示すように0に漸近する。
一律の耐性が修正前のダメージに一致するか、より大きい場合、修正後のダメージは以下の表に示すように0に漸近する。


{| class="wikitable"
{| class="wikitable"
|-
|-
! ダメージ !! 一律抵抗 !! 修正後ダメージ (抵抗 0%の場合)
! ダメージ !! 一律耐性 !! 修正後ダメージ (耐性 0%の場合)
|-
|-
| 5 || 0 || 5
| 5 || 0 || 5
Line 88: Line 88:
|}
|}


=== 割合抵抗 ===
=== 割合耐性 ===


割合抵抗は、ダメージを指定の割合減少させる。両方の抵抗が存在するとき、割合抵抗は一律/減衰抵抗の''後''に適用され、上記の「修正ダメージ」の値を変更し、指定された割合だけ減少させる。
割合耐性は、ダメージを指定の割合減少させる。両方の耐性が存在するとき、割合耐性は一律/減衰耐性の''後''に適用され、上記の「修正ダメージ」の値を変更し、指定された割合だけ減少させる。
この値が100%の場合、そのエンティティはそのダメージに対する耐性を持つ。一律抵抗はダメージを1以下に減らすことができないため、これはエンティティにダメージの種類に対する耐性を持たせる唯一の方法である。
この値が100%の場合、そのエンティティはそのダメージを無効化できる。一律耐性はダメージを1以下に減らすことができないため、これはエンティティが特定のダメージの種類を無効化する唯一の方法である。


例えば、物理ダメージに25%の抵抗をもつエンティティの場合、弾丸が命中して100物理ダメージが発生しても、実際に受けるダメージは100ではなく75になる。
例えば、物理ダメージに25%の耐性をもつエンティティの場合、弾丸が命中して100物理ダメージが発生しても、実際に受けるダメージは100ではなく75になる。


割合抵抗のダメージを計算する式は以下のようになる。
割合耐性のダメージを計算する式は以下のようになる。


Mを一律抵抗による修正後のダメージとし、Pを割合抵抗の値(十進表記。25%ならば0.25)とし、Fを最終的なダメージとする。
Mを一律耐性による修正後のダメージとし、Pを割合耐性の値(十進表記。25%ならば0.25)とし、Fを最終的なダメージとする。


<code>F = M * (1 - P)</code>
<code>F = M * (1 - P)</code>
Line 103: Line 103:
--------
--------


Factorioでは、抵抗はUIで以下のように表記される。
Factorioでは、耐性はUIで以下のように表記される。


減衰抵抗/割合抵抗(ダメージ種類)
減衰耐性/割合耐性(ダメージ種類)


火炎に10/20%抵抗と表示しているエンティティは、火炎に対して一律抵抗 10と 20%抵抗を持っている。このエンティティが30火炎ダメージを受けると、抵抗が適用された結果、耐久力が16ダメージを受ける。
火炎に10/20%耐性と表示しているエンティティは、火炎に対して一律耐性 10と 20%耐性を持っている。このエンティティが30火炎ダメージを受けると、耐性が適用された結果、耐久力が16ダメージを受ける。


上の場合を数式で表すと以下のようになる。
上の場合を数式で表すと以下のようになる。


16<sup>最終ダメージ</sup> = (30<sup>初期ダメージ</sup> - 10<sup>一律抵抗</sup>) * 0.8<sup>20% 抵抗</sup>
16<sup>最終ダメージ</sup> = (30<sup>初期ダメージ</sup> - 10<sup>一律耐性</sup>) * 0.8<sup>20% 耐性</sup>


== 組み合わせた数式 ==
== 組み合わせた数式 ==
D を(適切な種類の)初期ダメージとし、R を(ダメージに対して適切な種類の)一律抵抗値とし、Pを(ダメージと同じ種類の)割合抵抗の10進表記(例 20%=0.2)とし、Fを(適切な種類の)最終的に与えられるダメージとする。
D を(適切な種類の)初期ダメージとし、R を(ダメージに対して適切な種類の)一律耐性値とし、Pを(ダメージと同じ種類の)割合耐性の10進表記(例 20%=0.2)とし、Fを(適切な種類の)最終的に与えられるダメージとする。


=== R+1<D の場合===
=== R+1<D の場合===

Latest revision as of 02:15, 7 September 2024

ダメージを受けると赤くフラッシュする

ダメージを受けるとは、 やその他のエンティティによって プレイヤーの耐久力が低下することである。

概要

Factorioでは、エンティティは耐久力を持ち、死亡もしくは破壊することができ、耐性を持っている。 ダメージとは、銃による射撃やバイターに噛まれるなどで、エンティティの耐久力を低下させる概念として定義される。 エンティティの耐性は、任意の攻撃からエンティティが受けるダメージをどの程度軽減できるかを定義する。

プレイヤーの最大耐久力は250である(エネルギーシールドを除く)。その他のエンティティの耐久力は、それぞれのエントリに記載されている。

実績

ダメージの概念は、以下の実績と直接関係している。

Run-forrest-run-achievement.png 走れ、フォレスト、走れ

100本のを自動車や戦車の衝突で破壊する

Pyromaniac-achievement.png 放火魔

炎で1万本のを破壊する

Steamrolled-achievement.png ローラー作業

10個のを自動車や戦車の衝突で破壊する

Golem-achievement.png ゴーレム

一撃で500以上のダメージを受け、生存する

Watch-your-step-achievement.png 足元にご注意ください

動いている機関車に轢かれて死ぬ

ダメージの種類

ダメージの種類 ダメージ源
物理 弾薬 (通常/貫通/劣化ウラン), ショットガン弾薬 (通常/貫通), バイター, ディフェンダーカプセル
衝撃 (機関車/自動車/戦車との)衝突
火炎 火炎放射器, 火炎放射タレット
ワーム, スピッター
毒素カプセル
爆発 ロケット弾, 炸裂ロケット弾, グレネード, クラスターグレネード, 長距離砲弾, 地雷
レーザー レーザータレット, ディストラクターカプセル, 携帯レーザー防御モジュール
電気 携帯放電防御モジュール, デストロイヤーカプセル

貫通力

貫通力は戦車の弾薬に存在する。これは弾丸がそれ以上飛翔できなくなるまでに、どれだけの敵のHPにダメージを与えられるかを決定する。敵を貫通するためには、敵が弾丸によって殺される必要があり、殺傷するために与えられるダメージは現在の貫通力以下でなければならない。[1]ダメージを与えた分、貫通力も減少する。例えば、耐久力75の中型バイターを貫通力300の砲弾で撃つと、砲弾は4体の中型バイターを貫通して彼らを殺し、さらにもう1体のターゲットを破壊/損傷させることになる。

耐性

耐性には2つの側面がある。

減衰または "一律"の耐性

減衰耐性は、結果としてダメージが1を下回らない限り、指定した数値だけダメージを減少させる。結果的にダメージが1より小さくなる場合は、別の計算式を用いる。Rを一律の耐性値、Dを元のダメージ、Mを一律の耐性を考慮した後の修正ダメージとする。

R+1<D の場合

M=D-R

D>1 の場合

M=1/(R-D+2)

その他の場合

M=1/(R+1).

一律の耐性が修正前のダメージに一致するか、より大きい場合、修正後のダメージは以下の表に示すように0に漸近する。

ダメージ 一律耐性 修正後ダメージ (耐性 0%の場合)
5 0 5
5 1 4
5 2 3
5 3 2
5 4 1
5 5 1/2
5 6 1/3
5 7 1/4
5 8 1/5
... ... ...

割合耐性

割合耐性は、ダメージを指定の割合減少させる。両方の耐性が存在するとき、割合耐性は一律/減衰耐性のに適用され、上記の「修正ダメージ」の値を変更し、指定された割合だけ減少させる。 この値が100%の場合、そのエンティティはそのダメージを無効化できる。一律耐性はダメージを1以下に減らすことができないため、これはエンティティが特定のダメージの種類を無効化する唯一の方法である。

例えば、物理ダメージに25%の耐性をもつエンティティの場合、弾丸が命中して100物理ダメージが発生しても、実際に受けるダメージは100ではなく75になる。

割合耐性のダメージを計算する式は以下のようになる。

Mを一律耐性による修正後のダメージとし、Pを割合耐性の値(十進表記。25%ならば0.25)とし、Fを最終的なダメージとする。

F = M * (1 - P)


Factorioでは、耐性はUIで以下のように表記される。

減衰耐性/割合耐性(ダメージ種類)

火炎に10/20%耐性と表示しているエンティティは、火炎に対して一律耐性 10と 20%耐性を持っている。このエンティティが30火炎ダメージを受けると、耐性が適用された結果、耐久力が16ダメージを受ける。

上の場合を数式で表すと以下のようになる。

16最終ダメージ = (30初期ダメージ - 10一律耐性) * 0.820% 耐性

組み合わせた数式

D を(適切な種類の)初期ダメージとし、R を(ダメージに対して適切な種類の)一律耐性値とし、Pを(ダメージと同じ種類の)割合耐性の10進表記(例 20%=0.2)とし、Fを(適切な種類の)最終的に与えられるダメージとする。

R+1<D の場合

F = (D - R) * (1 - P)

D>1 の場合

F = (1 - P) / (R-D+2)

その他の場合

F = (1 - P) / (R+1)