本文的计算不但有公式烽火算法,还有举例,举例数据引自论坛贴:
}
进攻方的战斗力计算烽火算法:
进攻方的战斗力计算相对简单,加法和乘法即可烽火算法。
近攻计算法:(A士兵近攻值*A士兵数量+B士兵近攻值*B士兵数量+C士兵近攻值*C士兵数量……+A英雄近攻值+B英雄近攻值+C英雄近攻值)*(1+利刃科技+家族攻击加成+武略加成+宝物近攻加成)
远攻计算法:(A士兵远攻值*A士兵数量+B士兵远攻值*B士兵数量+C士兵远攻值*C士兵数量……+A英雄远攻值+B英雄远攻值+C英雄远攻值)*(1+神箭科技+家族攻击加成+武略加成+宝物远攻加成)
战斗力=近攻值+远攻值
举例如下:数据引自论坛贴
}
进攻方的兵力为:长枪兵1490个(近攻180、远攻0)、骑枪战将129个(近攻900、远攻0)、3个英雄(战报里看不到,官方开发人员通过后台查出的数据大概为3个廉颇,分别近攻为57313、42656、32610)
近攻值=1490长枪兵*近攻180+129骑枪战将*近攻900+廉颇A近攻57313+廉颇B近攻42656+廉颇C近攻32610=1490*180+129*900+57313+42656+32610=516879
近攻值算出来,但是千万别漏了各种加成值哦~
加成=1+利刃0.9+宝物0.965+家族1.2+武略0.57=4.635
那么近攻值=516879*4.635=2395734.165
由于进攻方没有远攻士兵、没有远攻英雄,所以远攻值为0。如果大家碰到其他的战斗可能会有远攻值的,具体的算法可以参照上面的近攻算发。
所以他的进攻总值=近攻+远攻=2395734.165+0=2395734.165
我们可以看出计算出的结果和战报显示的相差无几
防御方的战斗力计算:
防御方的战斗力计算比较复杂,有一点要强调的就是防御方的战斗力只计算防御数值,不计算进攻数值(也就是说在防御的时进攻力完全无用)。而且防御方的战斗力计算不再是单纯的数值加和乘,总的一句话防御方的战斗力的多少是由进攻方近攻和远攻的占比决定的。即进攻方派出的部队全是近攻,没有远攻击,那么防御方的近防值全部起效果而远防值一点效果都不起;若进攻方70%近攻、30%远攻,那么防御方的近防值只有70%生效、远防值只有30%生效。
士兵近防值=(A士兵近防值*A士兵数量+B士兵近防值*B士兵数量+C士兵近防值*C士兵数量……+A英雄近防值+B英雄近防值+C英雄近防值)*(1+护甲科技+家族防御加成+文韬加成+宝物近防加成+国家相克)
城防近防值=( A城防近防值*A城防数量+B城防近防值*B城防数量+C城防近防值*C城防数量……)*(1+筑城科技)
近防值=士兵近防值+城防近防值
士兵的远防值、城防远防值的计算方法和近防一样,只是把宝物的近防加成改为宝物的远防加成即可
远防值=士兵远防值+城防远防值
防御方战斗力=近防值*(近攻值/进攻方战斗力)+远防值*(远攻值/进攻方战斗力)
说的比较难懂,我们以具体的例子来看:
数据引自论坛贴
}
首先我们确定下进攻方的近攻和远攻数值占比,从上面进攻方战斗力计算可以看出,进攻方的近攻占比为100%,即2395734.165;而远攻为0%。
士兵近防值=侦察兵148个*近防1+强弩兵1个*近防30+长枪兵7个*近防30+骑枪战将2个*近防150+弓箭兵2个*近防5+骑射战将3个*近防120+英雄0个(防御方无英雄战报可见)=148*1+1*30+7*30+2*150+2*5+3*120+0=1058
士兵近防加成=1+护甲0.85+家族0.87+文韬1.88-国家被克0.2=4.4
士兵近防值=1058*4.4=4655.2
城防近防值=陷阱114个*近防80+高级陷阱154个*近防160+箭塔114个*近防0+高级箭塔154个*近防0+滚石76个*近防200+火箱7个*近防2500+绞车195个*近防5000=114*80+154*160+114*0+154*0+76*200+7*2500+195*5000=1041460
城防近防加成=1+筑城0.85=1.85
城防近防值=1041460*1.85=1926701
防御方近防总值=士兵近防值4655.2+城防近防值1926701=1931356.2
同理我们可以算出:
士兵远防值=2385*4.4=10494
城防远防值=1041460*1.85=1926701
防御方远防总值=士兵远防值10494+城防远防值1926701=1937195
这个时候我们就可以根据近攻远攻占比来计算防御方的战斗力了:
防御方战斗力=近防值*(近攻值/进攻方战斗力)+远防值*(远攻值/进攻方战斗力)
防御方战斗力=1931356.2*100%+1937195*0%=1931356.2
我们可以看出计算出的结果和战报显示的虽然有点相差,但8九不离十了。
由此我们可以大概了解了下游戏的战斗力的计算方式,做到有的放矢的战斗。