切换语言: Deutsch English Español Français 日本語 한국어 Português, Brasil Русский Українська

Damage/zh: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
m Link to Archive:Steel axe/zh and Archive:Iron axe/zh instead of redirects
Cardinal (talk | contribs)
Sync with English version.
Line 1: Line 1:
{{Languages}}
{{Languages}}
[[File:player_attacked_by_biters_small.png|thumb|300px|right|玩家受到伤害时,画面呈现红色闪光。]]
'''{{Translation|Damage}}'''是降低{{L|Player}}、{{L|Enemies}}和其它实体生命值的效果。
== 概述 ==
== 概述 ==
在Factorio,实体有生命,可以死亡/被破坏,有抗性。''伤害''被定义为通过使用攻击来降低实体的生命的概念,例如用枪对它射击,或者食人虫咬它。一个实体的抗性将确切地定义实体将从任意攻击中减免多少伤害。
游戏中的实体具有生命值,当生命值耗尽时它们会死亡/被摧毁,并且具有伤害抗性。''伤害''是指通过攻击降低实体的生命值的效果,例如使用武器攻击,或者被撕咬虫攻击。实体的抗性将决定实体在任意攻击中承受的伤害值。


[[player/zh|玩家]]的的最大生命值是250(没有[[energy shield/zh|能量盾]])。其他实体的生命值被列在它们各自的条目中。
玩家的最大生命值为250(不包含[[energy shield/zh|护盾]]),此数值可通过研究{{L|Health (research)}}{{SA}}提升。其他实体的生命值在其各自条目中列出。
 
== 成就 ==
伤害的概念直接与下列成就有关:
{{Achievement|run-forrest-run}}
{{Achievement|pyromaniac}}
{{Achievement|steamrolled}}
{{Achievement|golem}}
{{Achievement|watch-your-step}}


== 伤害类型 ==
== 伤害类型 ==
{|class="wikitable"
{|class="wikitable"
|-
|-
! Damage type|伤害类型 !! Used by|用于
! 伤害类型 !! 伤害来源
|-
| 物理 || {{Icon|Firearm magazine}}{{Icon|piercing rounds magazine}}{{Icon|uranium rounds magazine}}子弹、{{Icon|shotgun shells}}{{Icon|Piercing shotgun shells}}霰弹、{{IconLink|Railgun ammo|space-age=yes}}、{{IconLink|Defender capsule}}
<br>{{Icon|Biters||Enemies/zh#撕咬虫}}[[Enemies/zh#撕咬虫|撕咬虫]]、{{Icon|Pentapods||Enemies/zh#蠕动五足虫|space-age=yes}}[[Enemies/zh#蠕动五足虫|蠕动五足虫]]
|-
| 物理和爆炸 || {{Icon|cannon shell}}{{Icon|explosive cannon shell}}{{Icon|uranium cannon shell}}{{Icon|explosive uranium cannon shell}}坦克炮弹, {{IconLink|Artillery shell}}
|-
|-
| Physical|物理伤害 || Bullets|手枪、冲锋枪子弹([[Firearm magazine|标准弹匣]]/[[Piercing rounds magazine|穿甲弹匣]]/[[Uranium rounds magazine|贫铀弹匣]]),霰弹枪 ([[Shotgun shells|标准霰弹]]/[[Piercing shotgun shells|穿甲霰弹]]),[[Enemies#Biters|食人虫]],斧头 ([[Archive:Iron axe/zh|铁斧镐]]/[[Archive:Steel axe/zh|钢斧镐]]),[[Defender_capsule|防御无人机]]
| 撞击 || 与{{IconLink|Car}}、{{IconLink|Tank}}、{{Icon|Locomotive}}{{L|Train}}相撞
|-
|-
| Impact|碰撞伤害 || 碰撞([[Locomotive|内燃机车]]/[[car|汽车]]的)
| 火焰 || {{IconLink|Flamethrower ammo}}, {{IconLink|Flamethrower turret}}
|-
|-
| Fire|火焰伤害 || [[Flamethrower|火焰喷射器]]
| 酸蚀 || {{Icon|Behemoth spitter||Enemies/zh#喷吐虫}}[[Enemies/zh#喷吐虫|喷吐虫]]、{{Icon|Behemoth worm||Enemies/zh#沙虫}}[[Enemies/zh#沙虫|沙虫]] 和
{{Icon|Stomper big||Enemies/zh#重踏五足虫|space-age=yes}}[[Enemies/zh#重踏五足虫|重踏五足虫]]
|-
|-
| Acid|腐蚀伤害 || [[Enemies#Worms|沙虫]],[[Enemies#Spitters|喷吐虫]]
| 毒性 || {{IconLink|Poison capsule}}
<br>{{Icon|Pentapods||Enemies/zh#蠕动五足虫|space-age=yes}}[[Enemies/zh#蠕动五足虫|蠕动五足虫]]
|-
|-
| Poison|毒性伤害 || [[Poison capsule|剧毒胶囊]]
| 爆炸 || {{Icon|Rocket}}{{Icon|explosive rocket}}{{Icon|atomic bomb}}火箭弹、{{Icon|Grenade}}{{Icon|cluster grenade}}手雷、{{IconLink|Land mine}}
<br>{{Icon|Strafer medium||Enemies/zh#飞弹五足虫|space-age=yes}}[[Enemies/zh#飞弹五足虫|飞弹五足虫]]
|-
|-
| Explosion|爆炸伤害 || [[Rocket|标准火箭弹]],[[Explosive rocket|爆炸火箭弹]],[[Grenade|标准手雷]]],[[Cluster grenade|集束手雷]]
| 激光 || {{IconLink|Laser turret}}、{{IconLink|Distractor capsule}}、{{IconLink|Personal laser defense}}
|-
|-
| Laser|激光伤害 || [[Laser turret (research)|激光炮塔]], [[Distractor capsule|掩护机器人]]/[[Destroyer capsule|进攻机器人]], [[personal laser defense|个人激光防御模块]]
| 电击 || {{IconLink|Discharge defense}}、{{IconLink|Destroyer capsule}}、{{IconLink|Tesla ammo|space-age=yes}}、{{IconLink|Tesla turret|space-age=yes}}
|}
|}


=== 穿透力 ===
=== 穿透力 ===
穿透力存在于[[Tank|坦克]]弹药和穿甲霰弹。它决定了在不能够继续前进之前,发射物能对敌人HP敌人造成多少伤害。为了穿透敌人,敌人必须被发射物杀死,杀死的伤害必须小于当前的穿透力。[https://forums.factorio.com/viewtopic.php?f=5&t=30917] 所处理的伤害也降低穿透力。例如,用一个有300穿透力的炮弹攻击一个有75生命值的中型食人虫,意味着炮弹将穿透4个中型食人虫,杀死它们,并且仍能摧毁/伤害又一个目标。
部分弹药(例如{{L|Tank}}炮弹)具有穿透属性,它决定了弹药在其最大穿深内可以造成多少伤害。弹药必须击杀敌人才能穿过它,且杀死敌人所需的伤害要小于弹药剩余的穿透力能够造成的伤害。[https://forums.factorio.com/viewtopic.php?f=5&t=30917]对敌人的伤害会消耗穿透力。例如,如果用一发穿透力300的炮弹攻击一只生命值75的中型撕咬虫,则炮弹可以穿透4只敌人,且炮弹仍能再击杀/伤害1个敌人。


== 抗性 ==
== 抗性 ==
抗性有两方面:
特定伤害类型的抗性可以用两种方式表示:
=== 减少,或"flat"抗性 ===
* 百分比,例如:"物理伤害:10%"表示物理伤害直接减少10%。
减少抗性减少了指定数值的伤害,只要造成的伤害不会小于1。如果结果伤害会小于1,则使用另一个公式。
* 数值/百分比,例如:"物理伤害:25/10%"表示物理伤害先减少25点,然后再减少10%。
设R表示flat抗性,D表示输入伤害,m为计算flat抗性后修正伤害。然后
 
当攻击抗性为"25/10%"的实体时,如果每次攻击的伤害值少于25点,则几乎无法造成伤害。如果每次攻击的伤害值为45点,则抗性将首先减免25点伤害,剩余的20点伤害再被抗性抵消10%,实际伤害值为:
  (45 - 25) × (100% - 10%) = 18
 
以下两个小节将详细解释两种抗性的计算方法。
 
=== 数值抗性 ===
数值抗性能减免指定数值的伤害,但实际造成的伤害不能小于1。如果实际伤害值小于1,则会使用另一个公式。
 
以下公式中,R = 数值抗性,D = 伤害值,M = 实际伤害值(即考虑抗性减免后的伤害),则:


如果 R+1<D
如果 R+1<D


<code>M=D-R</code>
<code>M = D-R</code>


否则如果 D>1
否则,如果 D>1


<code>M=1/(R-D+2)</code>
<code>M = 1/(R-D+2)</code>


否则
否则


<code>M=1/(R+1)</code>.
<code>M = 1/(R+1)</code>


如果flat抗性匹配或超过原始伤害,则修正伤害渐近为0,如下面的示例表所示:
如果数值抗性等于或大于伤害值,则实际造成的伤害会趋近于0,如下表所示:


{| class="wikitable"
{| class="wikitable"
|-
|-
! Damage|伤害 !! Flat Resistance|flat抗性 !! Modified damage (with 0% resistance)|修正伤害(有着0%抗性)
! 伤害值 !! 抗性值 !! 实际伤害<br>(百分比抗性为0%)
|-
|-
| 5 || 0 || 5
| 5 || 0 || 5
Line 81: Line 93:
|}
|}


=== 百分位抗性 ===
=== 百分比抗性 ===
百分位抗性减少了指定百分比的伤害。当两种抗性都存在时它被应用于flat抗性之后,从而改变上面的“修正伤害”值,将其降低指定的百分比。如果该值为100%,则该实体免疫伤害。作为一个例子,一个拥有25%物理伤害抗性的实体被用100物理伤害的一颗子弹击中,会受到75伤害而不是100。
百分比抗性会减免指定百分比的伤害,它是在数值/百分比抗性(如果两者同时存在)之后再进行应用的。与数值抗性不同,百分比抗性按一定的百分比减少伤害值。如果抗性为100%,则实体将免疫该类型伤害。这是唯一使实体对某种伤害完全免疫的方式,因为数值抗性不能将实际伤害降低到1以下。
设M表示从上述适用公式导出的修正伤害,P表示百分数抗性(以小数形式,所以25%=0.25),F表示最终伤害,然后


<code>F=M*(1-P)</code>
例如,一个具有25%物理伤害抗性的实体被一颗物理伤害100点的子弹击中,实际上会受到75点而非100点伤害。


在Factorio,抗性以下列方式显示:
用于计算百分比抗性实体伤害值的公式如下:


减免抗性/百分比抗性
M = 初始伤害(即经过数值抗性减免后的伤害值),P = 百分比抗性(以小数计,例如25%=0.25),F = 实际伤害


所以,一个显示10/20%的火焰抗性的实体意味着该实体具有10的flat抗性和20%百分位火焰抗性。因此,如果所说的实体要受到30火焰伤害,那么在应用抗性后之后,它们会受到16伤害。
<code>F = M×(1-P)</code>


计算如下:
=== 组合公式 ===
以下公式中,D = 理论伤害值,R = 数值抗性,P = 百分比抗性(以小数计,例如20%=0.2),F = 实际伤害,则:


D=30, R=10, 所以 R+1=21<D=30, 然后我们对M使用上面第一个公式:
如果 R+1<D


M=30-10=20
<code>F = (D-R)×(1-P)</code>


然后因为 P=20%=0.2, 我们获得
否则,如果 D>1


F=20*(1-0.2)=20*0.8=16
<code>F = (1-P)/(R-D+2)</code>


== 组合公式 ==
否则
用D表示原始输入伤害(适用类型的),R表示flat抗性(对适用类型的伤害),P表示小数形式的百分数抗性(对相同类型的伤害)(例如20%=0.2),并用F表示对目标的最终伤害(适用类型的)。


如果 R+1<D
<code>F = (1-P)/(R+1)</code>


F = (D - R) * (1 - P)
== 相关成就 ==
 
{{Achievement|run-forrest-run}}
否则如果 D>1
{{Achievement|pyromaniac}}
 
{{Achievement|steamrolled}}
F = (1 - P) / (R-D+2)
{{Achievement|golem}}
 
{{Achievement|watch-your-step}}
否则


F = (1 - P) / (R+1)
{{C|Main}}

Revision as of 19:10, 19 February 2025

玩家受到伤害时,画面呈现红色闪光。

伤害是降低玩家、敌人和其它实体生命值的效果。

概述

游戏中的实体具有生命值,当生命值耗尽时它们会死亡/被摧毁,并且具有伤害抗性。伤害是指通过攻击降低实体的生命值的效果,例如使用武器攻击,或者被撕咬虫攻击。实体的抗性将决定实体在任意攻击中承受的伤害值。

玩家的最大生命值为250(不包含护盾),此数值可通过研究科技:永生计划提升。其他实体的生命值在其各自条目中列出。

伤害类型

伤害类型 伤害来源
物理
子弹、
霰弹、
磁轨炮弹、
防御无人机胶囊
撕咬虫、
蠕动五足虫
物理和爆炸
坦克炮弹,
重炮炮弹
撞击 与
汽车、
坦克、
火车相撞
火焰
油料储罐,
火焰炮塔
酸蚀
喷吐虫、
沙虫 和
重踏五足虫
毒性
剧毒胶囊
蠕动五足虫
爆炸
火箭弹、
手雷、
地雷
飞弹五足虫
激光
激光炮塔、
掩护无人机胶囊、
激光防御模块
电击
放电防御模块、
进攻无人机胶囊、
特斯拉弹药、
特斯拉炮塔

穿透力

部分弹药(例如坦克炮弹)具有穿透属性,它决定了弹药在其最大穿深内可以造成多少伤害。弹药必须击杀敌人才能穿过它,且杀死敌人所需的伤害要小于弹药剩余的穿透力能够造成的伤害。[1]对敌人的伤害会消耗穿透力。例如,如果用一发穿透力300的炮弹攻击一只生命值75的中型撕咬虫,则炮弹可以穿透4只敌人,且炮弹仍能再击杀/伤害1个敌人。

抗性

特定伤害类型的抗性可以用两种方式表示:

  • 百分比,例如:"物理伤害:10%"表示物理伤害直接减少10%。
  • 数值/百分比,例如:"物理伤害:25/10%"表示物理伤害先减少25点,然后再减少10%。

当攻击抗性为"25/10%"的实体时,如果每次攻击的伤害值少于25点,则几乎无法造成伤害。如果每次攻击的伤害值为45点,则抗性将首先减免25点伤害,剩余的20点伤害再被抗性抵消10%,实际伤害值为:

 (45 - 25) × (100% - 10%) = 18

以下两个小节将详细解释两种抗性的计算方法。

数值抗性

数值抗性能减免指定数值的伤害,但实际造成的伤害不能小于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点的子弹击中,实际上会受到75点而非100点伤害。

用于计算百分比抗性实体伤害值的公式如下:

M = 初始伤害(即经过数值抗性减免后的伤害值),P = 百分比抗性(以小数计,例如25%=0.25),F = 实际伤害

F = M×(1-P)

组合公式

以下公式中,D = 理论伤害值,R = 数值抗性,P = 百分比抗性(以小数计,例如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)

相关成就

阿甘快跑

撞倒树木数量达100。

放火烧山,牢底坐穿!

烧毁树木数量达10k。

摧枯拉朽

撞毁虫巢数量达10。

金钟罩铁布衫

单次受到至少500点伤害并存活下来。

迷之归西

被行驶中的机车撞死。