【20160926】【技术水】关于跨服匹配的计算建议
血族bloodline手游吧
全部回复
仅看楼主
level 13
大家都知道,如果只按照总战力匹配明显不合理,毕竟新区活跃公会的总战力不一定比老区三流公会低,但老区的几个1.4、1.5水光就能随便零封新区了。而使用方差进行调整又会遇到树法单卡等问题。这里提出一种计算方式,抛砖引玉,大家可以看看合理性如何。
第一步:确定某公会所有布防队伍的最高队伍战力x,以及最高单卡战力y。不允许x或y差距大于1.1倍以上的公会匹配到。
举例:甲公会最高战力为1.4w,最高单卡为3000战,那么若乙公会最高战力低于1.28w,或乙公会最高单卡战力低于2700战,则甲公会和乙公会不允许匹配到。
第二步:计算权重。大家都知道,13000战力和11000战力看上去只差2000战,但实战效果却是天差地别。所以这里引用了“权重”这一概念。设战力为k的权重为a,这里使用的权重公式是a=1/(1.1-k^2/x^2)。
举例:甲公会最高战是14000,小明的主队战力是14000,那么小明的主队权重是1/0.1=10;小红的主队战力是12000,那么小红主队权重是1/0.366=2.73;小萌的主队战力是7000,那么小萌的主队权重是1/0.85=1.18。
公式说明:最高战力的权重是10,然后哪怕战力再低,权重也不会低于1,因为低战也能发挥一点作用,比如消怒消加成或者浪费对面次数等。
单卡权重计算方法相同。
所有布防队伍的权重之和记为A,单卡权重之和记为B。
第三步:匹配。用A*x和B*y作为两项基本参考数值进行匹配。只有这两个数值相近的公会才会被匹配到。
2016年09月25日 08点09分 1
level 13
@血族波哥达 @破戒僧达冈
码字不易,脑洞更不易,希望能帮上忙[吐舌]
2016年09月25日 08点09分 2
level 13
楼主辛苦了(≧∇≦)/
2016年09月25日 08点09分 3
level 11

2016年09月25日 09点09分 5
level 11
我来水经验
2016年09月25日 09点09分 6
level 11
可以,这很公式,支持一下艾薇,但是战力权重可能还需要增加一个变量,如果全服务器都用同一个前提即K=a,那么新区的权重就会很低且无限接近,如果程序猿真的可以做到这个,那么可能需要每10个区甚至每5个区设定一个不同的权重。
另外吐糟一下这次改动,直接减少一次攻击次数,理想是美好的,让大家都推不平,推的建筑多的会胜利,这样就不比战力了,结果比分才290:290变成了260:260且逼死了指挥。。呵呵哒。
2016年09月25日 14点09分 10
1