游戏系列 篇五:兰彻斯特战斗方程在星际二中的应用
可能有很多新玩家,在玩星际二这款游戏时,觉得虽然自己的兵比对方少一点,但仍然可以一战,结果却发现自己全军覆没,而对手却剩下了几乎一半的兵力,这是为什么呢?
首先提出一个简单的问题,在阵型完全展开且没有手动集火的情况下,10个陆战队员对战8个陆战队员,可以剩下几个?
可能许多朋友根据直觉,会觉得大概剩下3,4个。
但实际结果却是剩下6个。
也就是说,一方以损失4个陆战队员为代价,歼灭了对方8个陆战队员,打出了两倍的战损。
下面是两个兰彻斯特战斗方程。
1.兰彻斯特线性率
在阵型无法展开的情况下,即双方只能进行一对一的战斗,前排阵亡后由后排填补,此时
总体战斗力=单位战斗力×单位数量
2.兰彻斯特平方率
在阵型完全展开的情况下,双方所有单位均处于开火状态,此时
总体战斗力=单位战斗力×单位数量的平方
看完了这两个方程,可能很多朋友并不理解战斗力指的是什么。
在星际2中,当两个单位处于交战状态时,起作用的有两个属性,dps和生命值。
己方损失战斗单位需要的时间=己方生命值/对方dps
对方损失战斗单位需要的时间=对方生命值/己方dps
如果把对方损失战斗单位需要的时间/己方损失战斗单位需要的时间,视为双方战斗力的比值
那么可以得到:
己方战斗力/对方战斗力
=(己方生命值×己方dps)/(对方生命值/对方dps)
这样,便可以等效为
单个单位的战斗力=生命值×dps
当阵型可以完全展开的时候,总体战斗力
=总体生命值×总体dps
=(单位生命值×单位数量)×(单位dps×单位数量)
=(单位数量×单位数量)×(单位生命值×单位dps)
=单位数量的平方×单位战斗力
到了这里,相信大家已经明白了兰彻斯特方程的推导过程,可能有的朋友还会问,算出来的这个战斗力有什么用呢?
让我们回到文章开头的案例
首先设每个陆战队员战斗力为1
在阵型完全展开的情况下
10个陆战队员的战斗力=100
8个陆战队员的战斗力=64
交战之后,胜利一方剩余的战斗力=100-64=36
胜利一方剩余的陆战队员=36的平方根=6
下面再模拟一下10个陆战队员打9个陆战队员的情况:
胜利一方剩余陆战队员数量=(100-81)^0.5=19^0.5
大概会剩余4到5个陆战队员。
再模拟一下五个追猎者打四个追猎者的情况
剩余追猎者数量=(25-16)^0.5=3
剩余3个追猎者
当然,这只是几种比较简单的情况,实际中后期的战斗中,双方阵型往往不能完全展开,因此需要线性律和平方律结合使用,才能较好的模拟出战斗结果。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
sttk
校验提示文案
sxiping
感觉用在学习上考个985应该没问题
校验提示文案
jywlys
校验提示文案
贝罗尼卡
校验提示文案
fys2xxx
校验提示文案
悲痛欲绝的狗头
校验提示文案
jywlys
校验提示文案
sxiping
感觉用在学习上考个985应该没问题
校验提示文案
悲痛欲绝的狗头
校验提示文案
fys2xxx
校验提示文案
sttk
校验提示文案
贝罗尼卡
校验提示文案