taqman探针设计:英雄无敌4里面肉搏和远程伤害具体是怎么计算的?

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 20:02:37
需要计算公式……

H4完整伤害计算公式
作者:baoshanbo

完整杀伤计算公式,包含魔法、技能、宝物、地形等的作用

一. 完整近战杀伤计算公式

??攻方伤害统计值[*冲锋][*城墙][*杀戮]*攻防比[*冰/火抵抗][*魔法阵营抵御][*幸运/厄运]
??[]内没有就不用计算,以下同。(注①)

??1. 攻方伤害统计值(the atrracker's Damage statistic):
一个生物或英雄伤害统计值为伤害范围(Min—Max)内的随机整数,取各整数的概率相等;相当于掷骰子,骰子有(Max-Mi n+1)面。N个生物伤害统计值为对各个生物伤害统计值求和; 相当于掷N个(Max-Min+1)面的色子。(注②)单个伤害值诅咒/祝福后是一个定值,直接乘个数就得出伤害统计值。增大伤害魔法:巨龙力量:*2。巨人力量:*5/4(取整),右键能显示出来。
??2. 冲锋:据骑士/死亡骑士移动距离计算(光标放在目标身上显示的伤害已计算冲锋)。
??3. 城墙:在城外隔着城墙或城门攻击城内,一级城墙4/5,二级2/3,三级1/2。在城内隔着城墙或城门攻击城外,一级城墙5/4,二级3/2,三级2。与部队属于攻城方还是守城方无关。城门被破坏或倒下城墙也有效。城门相当于生命50防御10的部队(一级城墙,城门只有1层;二级,城门有2层;三级,城门有3层):从城外打城门,城门在城内 ;从城内打城门,城门在城外。
??4. 杀戮:3/2,被攻击方为4级生物且攻击方有杀戮时(巨人杀手则为双倍伤害)。
??5. 攻防比:攻方攻击/被攻击方防御。低于1/20时取1/20,高于20时取20。这里的攻击、防御都是最终值,包括生物防御被肉 搏和箭术忽略。英雄和生物的攻击、防御计算在后面详述。(注③)
??6. 冰/火抵抗:1/2,被攻击方有冰/火抵抗且攻击方的攻击属性为冰/火时。(注④)
??7. 魔法阵营抵御:2/3,被攻击方有攻击方的抵御时。
??8. 幸运/厄运:出现幸运时,取值2/3;出现厄运时,取值3/2。

二. 完整远程杀伤计算公式

??攻方伤害统计值*攻防比[*距离][*障碍][*魔法阵营抵御][*火抵抗][*杀戮][*幸运/厄运]

??1. 距离:远程攻击(Ranged)实际距离如果超过40英尺,取值1/2。短程射击(Short Range)实际距离超过20英尺取值1/2,实际距离超过40英尺取值1/4。长程射击(Long Range)无此项。
??2. 障碍:被攻击方在城内紧贴城墙或在箭塔上,攻击方在城外攻击,取值1/2;射击路线上有灌木树丛、烟雾之类的障碍物阻隔,取值也 为1/2。攻击方有忽略障碍物能力则无此项。(注⑤)
??3. 火抵抗:被攻击方有火抵抗且攻击方的攻击属性为火时,取值1/2。(注⑥)

三. 生物的防御(包括肉搏和箭术忽略)

??DF[*虚无/骨骼][*(1+Defense)][*地形][*瓦解射线][*老化][*邪歌][*精神护甲][*护体石肤][*模糊][*防御][*防护][*海上战斗奖励][*酸液][*Vial of Choking Gas]
??DF为生物的原始防御(骷髅/幽灵/风元素为12/15/16)被忽略防御力技能忽略成的一个数。

??1. 忽略防御力这技能攻击敌人英雄或是防御力低于10的生物时不起作用,对于防御力高于10的生物,最多将其忽略到10。
??2. 虚无/骨骼:2。
??3. Defense:战术或航海的Defense、加防御?%宝物、守卫者特殊能力,其叠加为相加,按Defense最大的英雄计算 ,最多为1.7。战术系的Defense和航海术(在海上)的Defense都有时,取其中较高的。航海日志(Logbook of the Master Sailer)要在海上战场上才显示效果,与说明不符,无航海术/战术也有作用。
??4. 地形:箭塔2,河/流沙4/5,树丛/草丛5/4。
??5. 模糊、防护为3/2,瓦解射线、老化、邪歌为4/5,精神护甲、护体石肤、防御为5/4。
??6. 海上战斗奖励:要在海上战场上才显示效果,3/2。
??7. 酸液:4/5。Vial of Choking Gas:17/20。

四. 生物的攻击

??原始攻击[*近战减半][*(1+Offense)][*地形][*虚弱][*老化][*嗜血/精准][*邪歌][*祈祷][*士气][*海上战斗奖励][*酸液][*Vial of Choking Gas]

??1. Offense:战术或航海的Offense、加攻击?%宝物、陆军元帅特殊能力,其叠加为相加,按Offense最大的英雄计 算,最多为1.7。关于航海术与航海日志与Defense同。
??2. 近战减半:无近战不减能力的远程生物,1/2。
??3. 地形:箭塔2,河/流沙3/4。
??4. 老化、虚弱为3/4;邪歌为4/5;嗜血/精准、祈祷为5/4。士气高昂5/4,士气低落4/5。
??5. 海上战斗奖励:要在海上战场上才显示效果,3/2。
??6. 酸液:4/5。Vial of Choking Gas:17/20。

五. 英雄攻击、防御

??用以下面地图上数值代替生物防御、攻击计算公式中的DF或原始攻击。防御、肉搏攻击、远程攻击的极小值为5。地图上英雄肉搏攻击 、防御就是见到的数值。

??防御=战斗技能防御[+防御奖励][+宝物防御][+临时防御奖励]。(注⑦)
??肉搏攻击=肉搏技能肉搏攻击[+攻击奖励][+宝物肉搏攻击][+战争领主特技][+临时攻击奖励]。
??远程攻击=箭术技能远程攻击[+攻击奖励*0.7][+宝物远程攻击][+游侠特技][+临时攻击奖励*0.7]。注意,不能射箭看不到。
??防御奖励、攻击奖励在编辑器定制英雄时可设。能力强化建筑也能加。用事件可以加减(临时)防御奖励、攻击奖励(都是有符号4字节 整数)。

注:

??①/*程序算法:攻方伤害统计值是整数,攻防比是实数,其余都是分数(即乘一个数,再出一个数)。计算分两步,第一步算到第4 项,前4项的计算结果是整数。最后计算结果也是整数,小数处理:数值较小时用进一法,而数值较大时用舍去法。为减少误差,先算所有乘,再算所有除,以下涉及分数时算法类似。*/

??②/*在生物数超过10又不是10的倍数时伤害总值还要经过整定。
??生物数量较大时,可能改用一种比较简单的方法:产生一个随机变量,此随机变量的分布为正态分布(不懂的请参阅概率论/工程数学) ;平均伤害值(只有一位小数)为此随机变量的函数;再乘以个数得到伤害统计值(取整)。*/

??③ /*攻击、防御也是实数变量,右键显示整数(小数处理为:小于等于0.5舍,大于0.5入;或四舍五入)。英雄和生物的原始攻击 、防御均为整数。*/

??④ 气息攻击(Breath Attack),沿着攻击方向9英尺×3英尺范围;WOW弧形焰息(Arc Breath Attack),一个很大的扇形区域。硬接触攻击目标遭受的攻击为火属性攻击。不接触却遭到气息的部队,如有火抵抗不受伤害,如无火抵抗受到的伤害仍按以上计算。

??⑤射击时的1/2、1/4等有时是距离,有时是障碍,有时为两者乘积。另外,非范围射击的远程部队,在弹药耗完之前的最后一箭,不计算距离和障碍。对某目标原本不能射击(一般无范围射击能力),但现在因为有范围射击能力能射击,此时不计算距离和障碍;如前面有别的目标挡着(有时是挡一半),又如目标在城内不紧贴城墙。

??⑥ 火元素射击火元素、火怪、凤凰、火卫士时,计算火抵抗。在tgs中火焰箭只是将英雄的普通远程攻击变为范围射击,不是火属性。在WOW中火焰箭中心点为普通物理攻击。周围的火焰气息(无硬接触),如有火抵抗不受伤害,如无火抵抗受到的伤害仍按以上远程杀 伤公式计算。WOW中投石车射击是从中心点下手的气息攻击。中心点为火属性攻击(有硬接触)。周围的火焰气息(无硬接触),有火抵抗不受伤害 ,无火抵抗受到的伤害仍按以上远程杀伤公式计算。(……火石向周围冒火,与箭向周围冒火不同。)

??⑦战斗技能防御(无,基础,高级,专家,大师,宗师):10,15,20,30,40,60。肉搏技能肉搏攻击(无,基础,……,宗师):10,15,20,30,40,40。箭术技能远程攻击(无,基础,……,宗师):7(=10*0.7),10,15,20,30,30。