二、陆战的两种伤害--士气打击和兵力打击
-----------这是陆战兵力打击公式----------

(1)、陆jun单位有如下属性:
①当前士气:每个单位士气单独计算,不参与士气打击计算。
②最大士气:用于计算士气打击,同时作为双方战斗界面士气条最大值(见面士气掉一半只是假象,士气是将双方士气按比例缩放),拉低维护费将严重影响最大士气,最大士气不会低于0.51。
③人数(兵力):每个单位兵力单独计算,即参与兵力打击又参与士气打击计算,还决定单位侧翼范围以及战斗图标明暗度。
④兵种pips:采用攻防单位的攻防差值进行双伤害计算;火力阶段兵力打击采用火力点,冲击阶段兵力打击采用冲击点,两个阶段的士气打击都采用士气点(1.33改版了,火力冲击也参与士气打击);后排炮兵可以为正前方单位提供防御,数值为三种防御点数的一半向下取整(原版为为0~2)。
⑤火力冲击xiu正:提升对应兵种双伤害打击,随科技提升而提升;有少数xiu正会提升此项,如西班牙、葡萄牙的+1炮兵火力,只提升炮兵火力阶段双伤害。
⑥作战能力:提升对应兵种的双伤害打击;如普鲁士鹅步+20%步兵战斗能力,只增加步兵全阶段的双伤害。
⑦战术值:提升所有兵种的双伤害防御,随科技提升而提升,训练度会提升战术值。
⑧训练度:提升所有兵种的双伤害打击,提升战术值(间接提升所有兵种的双伤害防御)。
⑨火冲攻防:提升所有兵种的兵力打击(火力伤害、冲击伤害),提升所有兵种的兵力防御(火力防御、冲击防御);这项xiu正不会直接影响士气打击。
⑩侧翼能力:决定单位最大可攻击范围,受单位兵力影响;注意一个单位一次只能攻击一个目标;理论上,攻击范围=2*(max(1,int(侧翼范围*兵力xiu正)))+1,实际,攻击范围=(max(1,int(侧翼范围*兵力xiu正)))+1,因为如果一个单位如果正前方无可攻击目标,他将选择攻击范围内最靠近中央的单位为目标。
⑪移动速度:单位跨越省份所需时间,利用移动速度可抢占有利地形或是追击敌军。
⑫补员速度(不是人力恢复速度):设定单位满员为1000人(可xiu改),如果不满员且有后备且处于可补员状态,则每月1日补员;基础补员效率为100%,数值为满员人数的10%;是否为己方省份、军需官、战地医生、维护费、破产、将领机动都将影响补员效率;注意补员也是单位独自计算的,假设990兵力的单位每月补员效率为100%(100人),实际只能补员10人,超过部分就浪费了不能补员到其他单位中。
⑬士气恢复速度:基础士气恢复速度为最大士气值的15%,在己方控制省份+5%,满陆军传统+10%,还有理念政策决议任务等xiu正,总的来说士气恢复远比补员速度要快。
⑭预备军士气损失降低 :80职业度的奖励以及自建国理念,参战单位无论是在战斗中还是预备队都会受到固定士气打击以防止战斗时间过长难以结束,此xiu正降低了预备队所受士气打击,在大兵团战斗中效果极为明显。
其它任何陆战相关xiu正都将转化成上述属性。
陆军将领4围、骰子、地形惩罚/加成(木墙、第一时代首都同地形加成)将在陆战计算中作用于所有非预备队单位。
※陆军将领机动力常常被玩家唾弃,但其实将领机动非直观的增加战斗能力(阿姆罗:元老们可不只是跑的快而已!):
增加移动速度、增加地块补给上限、增加补员效率、抵消地形惩罚;
一般来说机动高的将领相当于多1-2点的火力和冲击(在冲山或跨河这类情况下),即0010进攻2200除了多了这些buff外,可能伤害也一样高;极端情况,4400、0010、0000冲山且骰子为0,它们的伤害是一样的,当然这就不仅是机动的效果了。详细原因见(3)Dresult、Cbase介绍。
(2)、士气打击和兵力打击的公式相似,但有如下区别:
①兵力打击只用兵种火/冲pips;
士气打击改版前只用兵种士气pips,改版后用火士/冲士pips(未测试改版后前排防御pips和后排炮兵防御pips是否参与计算);
②兵力打击会影响下一天的士气打击,因为二者都需要采用单位兵力计算,而兵力打击会减少单位兵力;
③火冲攻防只影响兵力打击,不影响士气打击;
④士气打击要乘以一个常数(我不太确定,但实际这么算比较符合实际士气打击效果),以此来换算成正常的士气打击值;
⑤训练度和士气最大值都影响士气打击,而训练度同时增加兵力打击和士气打击的攻防值,所以5%训练其实比10%士气造成更大的士气打击;
并且由于每回合训练能造成更多的兵力打击,5%训练所造成的士气打击将越来越高于10%士气的士气打击(注意:两者都不是线性增加或减少);
但由于 固定士气打击、10%士气本身的总士气要高于5%训练,所以5%训练的优势就被削弱甚至反超,这也是贴吧常出现的简单控制变量测试总是得出士气>训练的原因。
⑥士气打击存在固定士气打击,而兵力打击则没有。
(3)、Dresult、Cbase介绍:
①骰子:双方骰子不会相互抵消(即不计算差值),骰子只直接决定己方输出,间接影响对方输出(兵力的减少);
②将领属性:火力/冲击阶段,将领属性分别用火力/冲击点差值计算,将领点数差值LS=max(0, LS);也就是说两个0000将军对战或两个6600将军对战,对士气、兵力打击的影响是完全一样的;而一个如李景隆一般的将领并不会降低单位的基本输出,反而有可能比0000伤害高。
③兵种pips:单位a攻击单位b,则用a的火力/冲击攻击点减去b的火力/冲击攻击点(可能为负);后排炮兵的火力/冲击/士气/防御点的一半向下取整用于增加正前方单位的防御点(典型的就是13级大型铸铁炮可以给前排提供1pips的火力防御,而小型铸铁炮则不行);火力/冲击阶段分别用火力/冲击pips差值计算兵力打击,始终用士气pips计算士气打击(1.33改版了,火冲pips也参与士气打击)。
④地形惩罚:跨河-1,冲高地、沼泽、丘陵、树林、森林、丛林、冰川-1,冲山-2,跨海峡-2,登陆-2;将领机动只要高于对方1点即可抵消所有地形惩罚,但机动不高于对方时,惩罚是否叠加,有无最高值,我以前做过测试现在忘记了(希望有玩家可以补充一下)。
⑤以上所有"骰子"合计即为Dresult,而Cbase=5⋅(3+Dresult);Dresult、Cbase至少有一个存在非负最低值,根据我以往测试记忆,应该是Dresult=max(0,Dresult)。也就是说一场战斗中你的骰子是0或是2造成的输出可能是一样的。
(4)、陆战公式细节:
①游戏中战斗UI上显示的各项数值并非一定是用于战斗计算的数值,它们可能是向上取整、向下取整、平均值、加权平均值等;
②战斗的任意一天计算伤害时,双方同时用当前状态计算对敌伤害,而不是a先攻击b,b再还击;
③单位人数和士气值最低为0,不会降到负值
④eu4陆战算法中很可能存在进位、取整运算;比如:兵力打击10.9,则实际为击杀10人;战术值2.88则可能是2.8、2.85、2.88、2.9;单位兵力999可能当作1000、990、950、900来计算;其它因素类似上述操作;我曾想完全模拟eu4陆战,奈何能力不够、时间不够无法做到,希望有大神可以模拟eu4陆战或者反编译eu4源码扒出算法。