新浪网 新浪游戏
新浪游戏 | 新浪首页
英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌
英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌
英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌
英雄无敌
英雄无敌英雄无敌英雄无敌英雄无敌英雄无敌
 新浪游戏 >> 单机游戏 >> 英雄无敌  官网  编辑:洋一  设计:黑马

战斗系统深入分析

新浪游戏 2006-07-04 16:25

  概述

  战斗其实就是两个数值之间的较量,攻击方的力量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.64HP。转化成力量来看,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%的概率获胜。

  -----------------------------------------------------------------------

  撤退

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

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


评论
 
· H5作弊教程+秘籍·H3秘籍
· 英雄终极技能·特殊周全解
· 战役-图文攻略之HAVEN篇
· 战役-图文攻略之INFERNO篇
· 战斗系统深入分析
· 控制台及作弊码介绍
· 物品技能代码全解析
· 技能组合(1.10版)
· 恶魔领主技能·骑士技能
· 亡灵巫师技能·术士技能
· 妖术师技能· 游侠技能
· 公共技能
圣堂种族
· 历史介绍·兵种介绍·地形建筑
· 圣堂族战役攻略
地狱种族
· 历史介绍·兵种介绍·地形建筑
· 地狱族战役攻略
森林族
· 历史介绍·兵种介绍·地形建筑
· 森林族战役攻略
学院族
· 历史介绍·兵种介绍·地形建筑
· 学院族战役攻略
亡灵族
· 历史介绍·兵种介绍·地形建筑
· 亡灵族战役攻略
地牢族灵族
· 历史介绍·兵种介绍·地形建筑
· 地牢族战役攻略
英雄介绍
· 术士·恶魔领主·游侠
· 骑士·亡灵巫师·妖术师
魔法介绍

· 破坏魔法·光明魔法·黑暗魔法
· 其余魔法·冒险魔法·召唤魔法

宝物市场

· 宝物一览·全宝物及魔法
《英雄无敌》历代资料库
英雄无敌IV
英雄无敌III
英雄无敌II
英雄无敌I

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2006 SINA Corporation, All Rights Reserved

新浪公司 版权所有
北京网通提供网络带宽