引言:为什么从陆军开始?
《钢铁雄心4》(Hearts of Iron IV,玩家社区常称”钢丝”)是一款以第二次世界大战为背景的大战略战争模拟游戏。与许多历史策略游戏不同,钢丝的核心体验并非缓慢的外交博弈或复杂的经济建设,而是工业化时代的总体战——将国家的每一个工厂、每一滴石油、每一个 manpower 转化为前线师团的战斗力,并通过军事手段摧毁对手的战争潜力。
钢丝的风格可以概括为:以战术细节承载战略决策。你需要关注师团的编制宽度、装甲厚度、补给消耗,也需要筹划数百公里战线上的包围与突破。这种”微观可操作、宏观可规划”的双层设计,使得游戏的乐趣很大程度上来自于将工业产能转化为战场优势的过程。
本教程的切入逻辑
市面上已有大量关于钢丝的新手教程,它们通常从国家选择、内阁任命、科研优先级、工厂建设讲起,试图构建一条”从和平到战争”的完整学习路径。然而,这种线性教学往往导致一个困境:玩家学会了如何建造工厂、研究科技、训练部队,却在战争爆发的那一刻陷入迷茫——我不知道我养这些师团是要干什么,我也不知道我的工业应该服务于什么样的军事目标。
因此,本教程选择了一条逆向而更为高效的路径:直接从陆军核心机制讲起。
这个选择的理论依据很简单:钢丝本质上是一个战争游戏。玩家的唯一胜利条件是通过军事手段击败对手。在这个前提下,军事需求决定了工业形态,而非相反。你需要先了解”什么样的部队能打赢仗”当你明确了军事目标,你才能倒推出:我需要多少工厂生产坦克?我的科研槽应该优先点装甲还是步兵装备?我的后勤系统需要覆盖怎样的补给线?
运营本身是围绕军事转的。不了解军事就去谈运营,就像在设计一座从不使用的工厂。
在接下来的章节中,我们将跳过前期运营的细枝末节,直接深入钢丝陆军的核心机制:师团编制(Division Template)的设计逻辑、战斗宽度(Combat Width)的数学原理、软攻硬攻与组织度的攻防博弈、地形与补给对战斗效率的制约,以及装甲、摩托化与步兵的协同运用。当你掌握了这些军事原理,你将自然而然地明白:为了支撑这样的部队,你需要怎样的工业基础、科技路线和资源配置。
让我们从最基本的单位属性开始,构建你对钢丝战争艺术的理解。
部队编制数值(基础战斗数值)

其中红框内的就是本期所主要讨论的数值。
对人员杀伤(以下简称:软攻),对装甲杀伤(以下简称:硬攻),突破,防御,装甲厚度,穿甲深度,战斗宽度以及HP和组织度共同组成了你部队编制的基础属性。这些参数通过特定的数学运算相互关联,决定了部队在战斗中的数值表现。
一、两种基础计算规则
规则一:加法计算(越多越好)
以下参数把每个营的数值直接相加,营越多数值越大:
- 软攻、硬攻、突破、防御、HP、战斗宽度
计算方式:师级数值 = 营A数值 + 营B数值 + 营C数值…
特性:线性增长。20个营的软攻是10个营的两倍。
规则二:平均计算(稀释效应)
以下参数取所有营的平均值,新增营会改变整体数值:
- 组织度、装甲厚度、穿甲深度、硬度
计算方式:师级数值 = (营A数值 + 营B数值…) ÷ 营总数
特性:混合高低值。把一个组织度10的坦克营加入组织度60的步兵营中,会拉低全师组织度。
二、生存参数计算
HP(生命值)
算法:所有营HP相加。
衰减机制:当前HP ÷ 最大HP = 战斗力比例。
50%HP时,软攻/硬攻/突破/防御均变为50%。
组织度
算法:所有营组织度相加 ÷ 营总数。
归零机制:组织度归零 = 失去战斗能力。
三、硬度与攻击分配
硬度决定敌方软攻和硬攻如何作用于你的部队。
硬度计算
算法:所有战斗营(不含支援连)的硬度平均值。
示例:
- 2个坦克营(硬度80)+ 2个步兵营(硬度0)
- 硬度 = (80+80+0+0) ÷ 4 = 40%
攻击分配公式
当敌方用软攻和硬攻攻击你时:
实际受到软攻 = 敌方软攻 × (100% – 你的硬度) 实际受到硬攻 = 敌方硬攻 × 你的硬度
总有效攻击 = 实际软攻 + 实际硬攻
示例:
- 敌方:100软攻 + 50硬攻
- 你:60%硬度
- 实际软攻 = 100 × 40% = 40
- 实际硬攻 = 50 × 60% = 30
- 总有效攻击 = 70
四、装甲与穿甲的40/60加权计算
装甲和穿甲采用特殊加权方式,而非简单平均。
装甲厚度计算
步骤:
- 找出所有营中装甲最高的那个营(最高值)
- 计算所有营的装甲平均值(平均值)
- 师装甲 = 最高值×40% + 平均值×60%
示例:
- 1个现代坦克营(装甲90)+ 2个步兵营(装甲0)
- 最高值 = 90
- 平均值 = (90+0+0)÷3 = 30
- 师装甲 = 90×0.4 + 30×0.6 = 36 + 18 = 54
穿甲深度计算
步骤:
- 找出所有营中穿甲最高的那个营(最高值)
- 计算所有营的穿甲平均值(平均值)
- 师穿甲 = 最高值×40% + 平均值×60%
穿甲效率判定: 计算穿甲比 = 攻击方穿甲 ÷ 防守方装甲表格
| 穿甲比 | 伤害输出 |
|---|---|
| ≥100% | 100% |
| 75% | 80% |
| 50% | 65% |
| <50% | 50% |
中间值线性计算:如穿甲比62.5%(介于50%-75%正中间),伤害输出72.5%(介于65%-80%正中间)。
五、攻防判定与命中计算
基础数值转换
攻击点数 = 总有效攻击 ÷ 10,四舍五入取整 防御点数 = 防御值(或突破值)÷ 10,四舍五入取整
命中判定
情况一:攻击点数 ≤ 防御点数(未破防)
- 命中率:10%
- 90%的攻击被闪避
情况二:攻击点数 > 防御点数(破防) 攻击分为两部分:
- 被格挡部分(等于防御点数的攻击):命中率10%
- 破防部分(超出防御点数的攻击):命中率40%
效率对比:破防部分的杀伤效率是未破防的4倍。
示例:
- 攻击方:15攻击点数
- 防守方:10防御点数
- 被格挡:10点 → 期望命中1次
- 破防:5点 → 期望命中2次
- 总期望命中:3次
六、战斗宽度与超宽惩罚
宽度累加
师宽度 = 各营宽度相加
常见营宽度:
- 步兵/坦克/骑兵:2
- 炮兵/火箭炮:3
- 反坦克/防空:1
- 支援连:0
超宽惩罚计算
超宽比例 = (实际投入宽度 – 战场宽度) ÷ 战场宽度
惩罚规则:
- 超宽0%:无惩罚
- 超宽10%:攻防-10%
- 超宽25%:攻防-25%
- 超宽33%:攻防-33%(达到上限)
- 超宽>33%:仍-33%,但预备队无法进入
部队实际战斗面板计算

一、面板信息解读与编制还原
1.1 攻击方(德军)—— 2个师,总宽度20
编制推断(典型1939年轻装甲师):
- 2个轻坦克营(宽度2×2=4,软攻25,硬攻35,突破30,装甲30,穿甲40,组织度10)
- 2个摩托化步兵营(宽度2×2=4,软攻20,硬攻2,突破5,组织度60)
- 1个摩托化炮兵营(宽度3,软攻45,硬攻5,组织度0)
- 1个侦察营(宽度2,软攻8,硬攻1,突破2,组织度50)
- 2个支援连(工兵+通信,宽度0)
德军单师计算:
- 总宽度:4+4+3+2 = 13(面板显示2个师总宽20,存在约14%的超宽或编制差异,此处按标准轻装甲师13宽计算)
- 软攻:25×2 + 20×2 + 45 + 8 = 143
- 硬攻:35×2 + 2×2 + 5 + 1 = 80
- 突破:30×2 + 5×2 + 2 = 72
- 组织度:(10×2 + 60×2 + 0 + 50)÷6 = 31.7
- 装甲:最高30,平均(30×2+0×2+0+0)÷5=12 → 30×0.4 + 12×0.6 = 19.2
- 穿甲:最高40,平均(40×2+0×2+0+0)÷5=16 → 40×0.4 + 16×0.6 = 25.6
- 硬度:(80×2 + 0×2 + 0 + 0)÷5 = 32%
1.2 防守方(波军)—— 1个师,宽度6
编制推断(骑兵旅):
- 3个骑兵营(宽度2×3=6,软攻12,硬攻2,防御15,组织度70,装甲0,穿甲5)
- 1个骑兵炮兵营(宽度0或3,此处假设为支援炮兵不占宽,软攻25)
- 支援连(无)
波军师计算:
- 总宽度:6(与面板一致)
- 软攻:12×3 + 25 = 61
- 硬攻:2×3 = 6
- 防御:15×3 = 45
- 组织度:(70×3 + 0)÷4 = 52.5
- 装甲:0
- 穿甲:最高5,平均5 → 5
- 硬度:0%
二、战斗数值计算流程
2.1 宽度与战场容量
- 平原地形基础宽度:80
- 德军投入:2个师,单师13宽,总投入26宽
- 波军投入:1个师,6宽
- 总战场宽度:26 + 6 = 32宽,远低于80上限,无超宽惩罚
2.2 德军攻击波军(软攻阶段)
步骤1:硬度修正 波军硬度 = 0%
- 德军软攻全额生效:143
- 德军硬攻全额生效:80
- 总有效攻击 = 143 + 80 = 223
步骤2:攻击点数离散化N攻击=round(223÷10)=round(22.3)=22
步骤3:防御点数计算 波军防御 = 45 N防御=round(45÷10)=5
步骤4:破防判定22>5(破防)
步骤5:命中分配
- 被格挡部分(5点):命中率10% → 期望命中0.5次
- 破防部分(22-5=17点):命中率40% → 期望命中6.8次
- 总期望命中 = 0.5 + 6.8 = 7.3次
步骤6:装甲判定 德军穿甲25.6 vs 波军装甲0 r=25.6÷0=∞>100% 穿甲比 > 100%,全额伤害,无减免。
步骤7:伤害计算 单次命中伤害:
- HP伤害 = 随机(1,2) × 0.06 = 0.06~0.12,期望0.09
- 组织度伤害 = 随机(1,4) × 0.053 = 0.053~0.212,期望0.1325
每小时期望伤害:
- HP伤害 = 7.3 × 0.09 = 0.657
- 组织度伤害 = 7.3 × 0.1325 = 0.967
战斗持续时间估算(波军组织度52.5): T=52.5÷0.967≈54小时(约2.25天)
2.3 波军反击(对德军软攻阶段)
步骤1:硬度修正 德军硬度 = 32%
- 波军软攻 = 61 × (1-0.32) = 61 × 0.68 = 41.48
- 波军硬攻 = 6 × 0.32 = 1.92
- 总有效攻击 = 41.48 + 1.92 = 43.4
步骤2:攻击点数离散化N攻击=round(43.4÷10)=4
步骤3:防御点数计算 德军突破 = 72(进攻方使用突破而非防御) N突破=round(72÷10)=7
步骤4:破防判定4≤7(未破防)
步骤5:命中计算 未破防,命中率10%:
- 期望命中 = 4 × 0.1 = 0.4次
步骤6:装甲判定 波军穿甲5 vs 德军装甲19.2 r=5÷19.2=26%<50% 穿甲比 < 50%,伤害减半(50%输出)。
步骤7:伤害计算
- HP伤害 = 0.4 × 0.09 × 0.5 = 0.018
- 组织度伤害 = 0.4 × 0.1325 × 0.5 = 0.0265
对比:
- 德军每小时对波军组织度伤害:0.967
- 波军每小时对德军组织度伤害:0.0265
- 伤害比:36.5:1
三、面板数字对应关系
表格
| 面板显示 | 计算来源 | 数值含义 |
|---|---|---|
| 76(德军软攻图标) | 单师软攻143÷2(面板显示为单师平均值)或加成后数值 | 师级软攻数值 |
| 48(德军硬攻图标) | 单师硬攻80÷2或加成后 | 师级硬攻数值 |
| 99(德军组织度) | 计算值31.7与面板99存在差异,可能为满编状态或游戏内加成后 | 当前组织度百分比或绝对值 |
| 8(波军软攻) | 计算值61被硬度修正后÷10取整或面板简化显示 | 有效软攻 |
| 78(波军组织度) | 计算值52.5与面板78存在差异,可能为不同编制或加成 | 当前组织度 |
注:面板显示数值与理论计算存在偏差,原因在于:
- 游戏版本差异(不同版本编制基础值不同)
- 科技与学说加成(面板数值已包含各种加成)
- 指挥官技能与地形修正
- 部队经验等级(老兵+25%攻防)
四、战斗结果预测
基于上述计算:
组织度归零时间:
- 波军:约54小时(2.25天)后组织度归零,被迫撤退或被歼灭
- 德军:约1194小时(49天)后组织度才可能归零(实际不会,因波军早已溃败)
HP损失:
- 波军:54小时内损失约35.4 HP(若总HP为100,则剩余约65%)
- 德军:54小时内损失约0.97 HP(几乎无损)
结论:此战斗为单方面碾压。德军轻装甲师凭借高突破(72)完全格挡波军攻击(攻击点数4 < 突破点数7),同时以高软攻(143)快速消耗波军组织度。波军既无法有效反击(穿甲不足,装甲劣势),也无法承受伤害(低防御 vs 高攻击)。
机制参数来源及参考文献
一、基础计算范式
| 机制 | 计算方式 | 官方来源 |
|---|---|---|
| 加法参数(软攻/硬攻/突破/防御/HP/宽度) | 算术求和 | Wiki: Division – “soft/hard attack and defense/breakthrough are additive” |
| 平均参数(组织度/装甲/穿甲/硬度) | 算术平均 | Wiki: Division – “organization is the average”, “Armor: 40% * (Highest) + 60% * (Average)” |
二、生存参数
| 机制 | 来源 |
|---|---|
| HP衰减函数(当前HP比例影响战斗力) | Wiki: Division – “stats… are scaled by the manpower ratio” |
| 组织度归零效应(失去战斗能力) | Wiki: Land battle – “when a division reaches 0 organization, it will retreat or be destroyed” |
三、硬度与攻击分配
| 机制 | 来源 |
|---|---|
| 硬度仅计算战斗营(不含支援连) | Wiki: Division – “Average of Hardness of Line Battalions” |
| 软硬攻按硬度比例分配 | Wiki: Land battle – “Hardness determines the proportion of soft and hard attacks” |
| 攻击点数离散化(除以10取整) | Wiki: Land battle – “The number of attacks is equal to the total attack value divided by 10 and rounded to the nearest integer” |
四、装甲与穿甲系统
| 机制 | 来源 |
|---|---|
| 40/60加权公式 | Wiki: Division – 明确公式:”40% * (Highest) + 60% * (Average)” |
| 穿甲比例伤害减免表(50%/65%/80%/100%) | Defines.lua : PIERCING_THRESHOLDS = {1.0, 0.75, 0.5, 0.0} 与 PIERCING_THRESHOLD_DAMAGE_VALUES = {1.0, 0.8, 0.65, 0.5} |
| 装甲优势组织度骰子(1d4→1d6) | Wiki: Land battle – “armor advantage… changes the die from size 4 to size 6” |
五、防御与命中机制
| 机制 | 来源 |
|---|---|
| 防御点数计算(防御或突破÷10) | Wiki: Land battle – “defensive value is divided by 10” |
| 未破防命中率10% | Wiki: Land battle – “only 10% of attacks are considered for damage if covered by defense” |
| 破防命中率40% | Wiki: Land battle – “40% is considered when attack points have exhausted defense points” |
| 命中率对比4:1 | 基于上述两点计算:40%/10% = 4 |
六、宽度与超宽惩罚
| 机制 | 来源 |
|---|---|
| 营宽度数值(步兵/坦克=2,炮兵=3,反坦克=1) | Wiki: Land units – 各营详细属性表 |
| 支援连宽度=0 | Wiki: Division – “support companies do not affect combat width” |
| 超宽惩罚公式(-100%×超宽比例) | Wiki: Land battle – “Overstacking penalty = -100% × (Width – Battle Width) / Battle Width” |
| 超宽上限-33% | Defines.lua : OVERSTACKING_PENALTY_MAX = -0.33 |
| 增援阻断阈值(超宽>33%) | Wiki: Land battle – “once the penalty exceeds -33%, reinforcements cannot join” |
七、伤害计算核心
| 机制 | 来源 |
|---|---|
| HP伤害骰子1d2 | Wiki: Land battle – “random number between 1 and 2” |
| 组织度伤害骰子1d4(装甲优势1d6) | Wiki: Land battle – “die size of 4… armor advantage changes to die size 6” |
| 伤害系数0.06 | Defines.lua : BASE_DAMAGE 相关计算链(0.06 = 6%基础伤害) |
| 组织度伤害系数0.053 | Defines.lua : ORGANIZATION_DAMAGE_MODIFIER = 0.053 |
八、地形与战场宽度
| 机制 | 来源 |
|---|---|
| 平原宽度80,森林50-70 | Wiki: Land battle – Combat width by terrain table |
| 多方向攻击宽度加成 | Wiki: Land battle – “additional attack directions add 50% of base width” |


神人,玩个游戏而已,搞这么复杂干什么