游戏攻略   设为首页
加入收藏
关于我们
仙剑奇侠传  生化危机  鬼武者  轩辕剑  真三国无双  三国群英传  极品飞车  三国志  英雄无敌  三国志英杰传  曹操传  战神  足球经理  反恐精英  暗黑破坏神  天龙八部  罗马  模拟人生  魔兽争霸  星际争霸  金庸群侠传  命令与征服  鬼泣  大航海时代  地牢围攻  波斯王子  古墓丽影  帝国时代  怪物猎人  武林群侠传  侠盗飞车  红警  罪恶都市  明星志愿  武侠群英传  幻世录  翡翠帝国  流星蝴蝶剑  奇迹世界  最终幻想  最高指挥官  实况足球  侠盗猎车  刀剑封魔录  国家的崛起  反三国志  英雄传说  恶魔城  半条命  风色幻想  尾行  格兰蒂亚  鬼影镇  
首页 > 文明 >文明4战斗系统深入分析
 

文明4战斗系统深入分析

作者: 发布时间:2007-12-18 来源:攻略吧

文明4战斗系统深入分析

概述

战斗其实就是两个数值之间的较量,攻击方的力量A和防守方的力量D。这两个数值受到各种情况的修正,比如树林给予50%额外的防御加成,将会修正防守方的力量D。一旦修正后的A和D被用来计算胜率,以下的公式将对双方都生效,不管谁是进攻方,谁是防守方。

每个单位开始战斗时都有100点HP,并且在战斗后损失一定量的HP。一旦HP在战斗中降至0,这个单位就会死亡。如果一个力量3的弓箭手在战斗中损失了40点HP,战斗结束后他的力量会降至3*(1-0.4)=1.8。如果这个弓箭手开始战斗时只有2.5的力量,他还是有100点HP,如果这次也损失了40点HP,战斗结束后他的力量会降至2.5*(1-0.4)=1.5。

战斗是一轮一轮进行的,每一轮都会掷一次骰子,由A和D决定谁赢得这一轮。输掉的一方将会失去部分HP。之后进行下一轮的战斗。一旦某一方的HP降至0或负数,战斗结束并且这个单位被消灭。

先攻给予一个“自由”轮。这意味如果某一方有两次先攻,这两轮仍然如同原先一样战斗,但是如果先攻方输掉了这轮他不会受伤,而赢了他可以对对方正常造成伤害。

撤退对于胜率没有影响,它只发生在进攻方将要死亡的一轮。

如果一个单位有5-7的先攻,那么它究竟有几次先攻?(这一段原文比较繁琐,我翻译得简单一点)每个单位实际上有两个相关的参数:确定先攻和先攻机会。

先攻=确定先攻+先攻机会

所以5-7的先攻就是在每次战斗中选取一个5-7之间的随机数作为先攻次数。

一旦战斗开始,第一个要检查的是对方是否拥有免疫先攻能力,如果没有,先攻正常运作。接下来要检查对方是否也拥有先攻,如果也有的话,两者先攻的差将会在战斗计算被应用。比如一个6次先攻的部队面对一个2次先攻的部队,相当于前者拥有4次先攻。

基本公式

修正值

攻击方和防守方会从一些升级(比如1级战斗+10%力量)和位置(比如树林给防守方50%防御加值)得到奖励。这些加到单位的基本数值上,基本数值是指受伤时的力量(如果单位受伤的话)。一旦修正后的力量计算出来后,我们把攻击方数值叫做A,防守方叫做D,之后计算伤害时就只需要这两个数值了。

举个例子,一个受伤的2.5力量的弓箭手有一级战斗(+10%),并且在树林中防守(+50%),那么D=2.5*(1+10%+50%)=2.5*1.6=4

回合

决定每一轮成功的机会只是掷一个骰子。攻击方赢得这一轮的概率是A/(A+D),防守方相对地是D/(A+D)。

每一轮都会造成一个固定量的伤害。这个伤害从开始时总的100点HP中减去,伤害的数值由双方的力量决定(见下)。如果上面的D=4的弓箭手被一个A=6的弓骑兵(先不考虑先攻的因素,所以选用一个免疫先攻的兵种)攻击,在一轮中被击中造成的伤害是24点,这轮结束后弓箭手还有76点HP。

一轮造成的伤害

一轮造成的伤害的基本值是20点,也就是1/5的HP,但是双方的A和D也会影响各自造成的伤害。

进攻方对防守方一轮造成的伤害是:20*(3*A+D)/(3*D+A)
防守方对进攻方一轮造成的伤害是:20*(3*D+A)/(3*A+D)

结果会被四舍五入成整数。所以,弓箭手一轮对弓骑兵的伤害是20*9/11=16,而弓骑兵一轮对弓箭手的伤害是20*11/9=24。

可能的命中数

因为每一击都会造成固定的伤害,这就是说一个单位在死亡之前接受的命中数也是固定的。这个数值只取决于A和D的对比。

还举上面的例子,弓箭手一次受伤24点,也就是说它会在第5次被命中的时候死亡。4次之后它只剩4点HP,第5次是致命的。类似的,弓骑兵一次受伤16点,第7次被命中将会死亡。因为这个数值已经确定,最终影响结果的只取决于双方的命中数。

基本胜率计算

现在需要的东西都齐全了,就可以开始计算基本胜率。

弓箭手要胜弓骑兵,需要在自己被命中5次之前,先命中弓骑兵7次。也就是说,胜率是在11轮战斗中至少赢得7次,而每次的胜率都是D/(A+D)=0.4。我们先计算刚好11轮赢7次的概率,然后按同样的算法计算在11轮中赢8,9,10,11次的概率,然后全部相加,就是最终的胜率。

概率论中有一个伯努利过程,可以用一连串的事件X0X1..Xn来模拟一轮轮的战斗。每一个事件发生的概率都是p=D/(A+D)。那么在n=11轮中赢k=7次的概率符合二项式分布,f(k;n,p)=C(n,k)*(p^k)*((1-p)^(n-k))。这里C(n,k)是二项式系数,用代数式表达就是(n!)/(k!*(n-k)!)。把数字带入得f(7;11,0.4)=C(11,7)*(0.4^7)*((1-0.4)^(11-7)) = 0.0701 这是11次刚好赢7次的概率7%

然后同理计算其他几种情况,最终胜率是f(7;11,0.4)+f(8;11,0.4)+f(9;11,0.4)+f(10;11,0.4)+f(11;11,0.4) = 0.0701 + 0.02336 + 0.00519 + 0.000692 + 0.0000419 = 0.09935 所以弓箭手赢弓骑兵的概率大约是9.9%

然后我们再来看一下如果弓箭手赢了它还会剩下多少力量。在赢的情况下,有70%的可能性被击中4次,23%被击中3次,5%被击中2次,其余忽略不计。那么加权平均值是0.7*(100-4*24)+0.23*(100-3*24)+0.05*(100-2*24)=2.8+6.4+2.4=11.64 HP。转化成力量来看,2.5*11.64%=0.3。它平均只剩下0.3的力量了。这只是假设它获胜,因为90%的情况下它会输掉。

先攻的作用

假设这个弓箭手有两次先攻,这次进攻他的是一个剑士,力量和弓骑兵一样也是6,但是没有免疫先攻的能力。

那么,前两轮的战斗和之前不一样,弓箭手如果赢了,会正常造成伤害;如果输了,不会受到伤害。之后的战斗就和以前一样了。

计算的时候把前两轮分成三种情况考虑,第一种情况是头两轮弓箭手一箭都不中,出现这种情况的概率是36%,然后接下来的情况就和上面的例子完全一样,0.09935的胜率。第二种情况是中一箭,发生的概率是48%,接下来就要在10轮中至少赢得6轮,0.194的胜率。如果两箭都中,发生概率16%,接下来要在9轮中至少赢得5轮,0.404的胜率。总胜率就是0.36*0.0707 + 0.48*0.194 + 0.16*0.404 = 0.183

这次弓箭手有18.3%的概率获胜。

撤退

(这个我也简单翻译一下)

撤退只在攻击方的最后一轮生效(防守方不能撤退)。仍然按照通常的战斗进行,万一攻击方这一轮会被打死时,根据这个兵种的撤退概率随机。如果成功,退回来;失败就死了。

  
※ 您现在所阅读的是文明4战斗系统深入分析,以下是其相关信息
 ·文明4世界及民族奇迹介绍  (2007-12-18 00:07:03)
 ·文明4新特性体验心得  (2007-12-18 00:04:41)
 ·文明3征服世界引导攻略  (2007-12-18 00:02:50)
 ·文明3神级难度解析  (2007-12-17 23:59:28)
 ·文明3之谈判必成  (2007-12-17 23:58:37)
 ·文明3攻略  (2007-12-07 19:56:54)
 ·文明3无限文化点数  (2007-12-07 19:55:53)
 ·文明3之大图书馆  (2007-12-07 19:53:50)
 ·文明3攻略之内政管理篇  (2007-12-07 19:50:31)
 ·文明3秘籍  (2007-12-07 19:49:39)
 
 站内搜索
 网站最新
 人气排行 
栏目:

全站:

 

攻略吧 版权所有
Copyright © 2006 All rights reserved