英雄联盟战斗力算法详解
的有关信息介绍如下:英雄联盟战斗力是一个综合了玩家各种表现的一个综合数值,是一个化繁为简的数值。战斗力由:排位赛加成分、胜率加成分、战斗场次加成分三部分组成。简而言之,如果一个人的胜场越多、胜率越高、排位赛的积分越高,战斗力就会越高。详细每部分的算法,下面会跟大家详细的介绍。
战斗力中最重要的是排位赛积分(rank),变动最大的是胜率加成分,最稳定增长的是胜场加成分。
客观全面概括了一个人的战斗数据,想要提高自己的战斗力,就从上面几部分入手吧。在我们的实践中,95%的玩家都觉得这个分值比较准,但也会偶尔“失灵”的情况,如下:
1、问:对方有个很高战斗力的人,或者看起来我们团队的平均战斗力很弱,但是我们还是赢了!
答:LOL的比赛胜负、除了跟玩家的基础战斗力有关外,也跟心态、英雄搭配、发挥等因素直接关联。战斗力只是一个辅助参考因素。
2、我的战斗力波动很大,为什么?
答:
(1)在玩的场次低于100场的时候,战斗力波动会较大,但玩的局数多了以后,就会很稳定波动;
(2)如果打了排位赛,表现良好的话,战斗力上升幅度会较大;反之若排位赛掉下来,战斗力下降幅度也较大。
(3)如果盒子搜集到您的数据不完全,则战斗力会无法正确计算,用盒子多打几场即可正常记录。
3、为何战斗力不考虑单场比赛的人头、助攻数?
答:战斗力是一个宏观指标,暂时不考虑将单场比赛的数据算到战斗力中,两个原因:
(1)虽然很少见,但盒子可能会漏记一些战斗记录。
(2)在实现上,很难设计一个令人满意的公式,以将单场比赛的数据反映到战斗力中。
基础分
所有参与排位赛的玩家,游戏会默认初始化其排位赛积分(又称为rank分)为1200分,分三种类型分别记分:组队3v3、组队5v5、单人5v5(2人组队算单人);分数低于1200分的将不会显示出来,可以在游戏内查到。
战斗力中的基础分,是在游戏官方的rank分值的基础上进行转换。详细规则如下:
(1)取三种排位比赛(5v5单排、5v5组排、3v3组排)中最高分的作为rank值;如果一个玩家从未打过任何一场排位赛,rank平均分按1150算。
(2)基础分 =rank加权平均分*1.2* (1+(rank加权平均分-1000)/2000)^1.6
简述之,如果玩家的rank分越高,这个基础分也越高,呈指数级增长。一个1300分玩家的rank加成分是1900分,而一个2000分玩家的rank加成分则能达到4600分。
除此之外,rank还会在其它两个战斗力组成的计算中有加成作用,因此最有效提高战斗力的方法就是去打排位赛。
另外,如果一个玩家只打电脑,则他的基础分是1.2*(600+等级*10)
胜场加成分
战斗胜利场数越多的人,加分越多。
这场分值会稳定增长,主要反映一个玩家是不是够老江湖,上限3800分(2012年11月29日提高到3800分)。
计算公式为:2*匹配赛胜场^0.9 + 3*当前赛季各种排位赛总胜场^0.9
只打电脑的玩家胜场加成分为胜场数*1.5
胜率加成分
胜率即 胜场/总场次,下面用winRatio表示。
详细规则如下:
(1)先计算出匹配赛和所有赛季排位赛的总胜率winRatio。
(2)如果胜率超过70%,会最高只算70%;匹配赛打超过100场的胜率超过70%的极其罕见。
(3)如果胜率大于50%,胜率加成分计算公式:750+100*(winRatio-50)^0.7;如果胜率低于50%,胜率加成分公式:750 -(100*(50-$winRatio)^0.7)。胜率加成分下面用winRatioScore代替.
(4)在上面第三步的基础上,进行胜场调节: - 如果胜场低于40场,则胜率加成分为winRatioScore*胜场/40; - 再根据胜场的总场次,对winRatioScore进行进一步加成
(5)在上面第四步的基础上,进行rank加成计算,超过1500 rank分的玩家胜率分有逐步加成(到2500分约加成1.6)。
(6)最后再乘以1.2(2012-5-5日优化,提高胜率分比重)。
(7)只打电脑的玩家不计算胜率分。此项分值最高可达到约5000分左右;如果一个人的胜率低于35%,则可能只拿到0分。
理论上这部分分值变化会较大,但考虑到官方的匹配系统很完善,打超过一定场次后,胜率超过60%很难,实际这部分波动也不大太大。