碧云轩

您的位置:首页 -> 腾讯游戏 -> 英雄联盟 -> 正文

英雄联盟匹配系统是怎样匹配的呢

发布日期:2012-7-13 15:33:21

  英雄联盟匹配系统概述:

  匹配系统的目的如下,优先级从高到低:

  1、保护新手不被有经验的玩家虐;让高手局中没有新手。

  2、创造竞技和公平的游戏对局,使玩家的游戏乐趣最大化。

  3、无需等待太久就能找到对手进入游戏。

  匹配系统尽其所能的匹配水平接近的玩家,玩家的水平是来自他们在此之前赢了谁以及他们对手的水平。当你战胜对手,系统会认为你更强,当你输给对手,系统会认为你更弱。虽然这对于某一局游戏并不是那么的公平,但是长期来看,对于多局游戏是相当的公平:因为好的玩家总会对游戏结果造成正面的、积极的影响。我们使用了这样一个方法测试:给水平高的玩家一个新帐号,然后看他们游戏数局后的结果。我们通过大量的测试来证明了我们的想法。

  并且,匹配系统知道预先组队的玩家有一些优势,如果你是预先组队,会给你一些更强的玩家。我们用一些非常巧妙的数学方法来解决预先组队的玩家VSsolo玩家的匹配公平问题。我甚至让两个数学博士来验证,他们都说给力!

  匹配是怎么完成的?

  首先,系统将你放进适当的匹配池里——根据游戏模式(匹配模式、排位solo/双人、排位5人、其他模式等等)

  然后,系统会尝试将匹配池里的人分到更细的匹配池里——5人组队VS5人组队,低等级新手vs其他一些低等级新手,如此这般。

  当你在匹配池中,系统会开始尝试找到合适的配对,目标是撮合一个双方获胜机会都为50%的游戏。

  第1步:确定你的实力:

  *如果你是solo,就直接使用你的个人匹配分(也就是elo值,匹配模式和排位赛有不同的匹配分)

  *如果你是预先组队的,你的匹配分是你队伍的平均分,并且会根据你组队的规模稍微提高一些,这样才能保证你匹配到更强的对手来抵消你组队的优势。我和一个计算机生物学的博士(ComputationalBiologyPh.D)通过研究成百上千的游戏结果,计算出了预先组队到底有多大的优势。我们还在幕后做了一些其他调整,比如新手和高玩组队,比如某地图上蓝队和紫队的玩家哪个更有优势,诸如此类。

  第2步:确定你合适的对手:

  *首先,系统会基于你的elo值,给你匹配跟你非常相近的玩家。最终,系统会放宽匹配的条件,给你一些不是那么完美的匹配,因为你肯定也不想永远匹配不到人。

  *新手会得到一些特殊的保护,通常新手只会匹配到其他新手(在成熟的服务器里,这个比例达到了99%+。除非这个新手和一个高级玩家朋友预先组队)

  第3步:确定匹配:

  *最终,系统会匹配10个大体上同水平、同等级的玩家,促成一个游戏。

  *系统会尝试平衡这个队伍,尽量使双方的获胜机会都为50%。在绝大多数时间,误差会在3%之内——类似50/50,49/51,48/52。实际上的获胜机会会有一点点差别(会在Q&A里面回答这个问题),但是我们的研究标明,在绝大多数情况下,这实际上是一个非常精确的预测。

  长期来讲,我的匹配分(Elo值)是如何被测量的?

  我们使用了一个修改过的ELO系统。ELO系统的基本要点通过使用数学比较两个人的积分,来预测两人的比赛结果——类似“A和B比赛数局,A会赢掉75%的局”。

  然后,比赛结果出来了。如果你赢了,你会加分,如果你输了,你会被扣分。如果你是“出人意料”的赢了(系统认为你输的可能性更大),你会赢得更多的分数。额外的,如果你是一个新玩家,你会加分减分更快,以便于你可以快速的进入到你的水平等级。长期来看,这意味着好的玩家会得到高的匹配分,因为他们总是超过系统的预期,他们会不断加分直到系统可以正确的预测他们的胜率。

  我们修改这个系统给团队比赛使用,基本概念是:基于该团队的所有玩家,得到一个团队ELO值。如果你的队伍胜利,系统会假设该队伍的所有玩家都要比系统猜测的“更强”,并且加分。虽然有一些问题,但是总体上来讲是有效的,特别是玩家预先组队的时候。

  举例,本人在北美的服务器上有2000的普通匹配模式elo。如果我建一个小号,就算没有天赋和符文,我打到8级的时候就已经有1800elo了。这个系统并不完美,但是确实能够让玩家快速的接近自己水平所在的位置。

  当你才开始玩的时候,我们也对ELO做一些微调,让你更快的进入你水平所在的位置。

  *我们有大量的,有优先级的方法来鉴定一个玩家,相比一个标准的新玩家是否更有技巧,更猛。如果发现是的,我们会在幕后提高他的elo一个档次。

  *我们同样也会分辨真的菜鸟新手。

  *提升等级也会极大的提高你的elo值。这个也将帮助系统将30级满级的召唤师和低等级的召唤师区分开来

  如果你想知道ELO系统的理论,以及更多细节,你可以看看这:

  http://en.wikipedia.org/wiki/Elo_rating_system

  http://zh.wikipedia.org/wiki/ELO

  呃,等等,你是怎么处理组队玩家vssolo(单排)玩家的?

  我们大多数情况下,会通过将5人组队的队伍匹配给另外一个5人组队的队伍来避免这种情况的发生(几乎是所有情况下)。

  对于“部分”组队,我们进行了大量的研究,发现优势并没有想象的那么大,所以我们也会把他们混到solo(单排)的玩家里。我们发现有大量的因素会影响到组队优势的大小:从预先组队的规模(比如2、3、4、5组队),到组队玩家的水平,到高玩带菜鸟的组合,到玩家水平不同而导致的情况不同,以及其他的一些必须考虑到的微妙因素。这个要比一些我们曾见过的点对点算法-将任意的统计数据杂糅在一起猜测分数-要可靠的多

  发现这些优势,我们就知道对于预先组队的队伍,需要提高多少elo值,来达成一个公平的匹配,确定一个适当的,在数学上合理的调整。结果在有些情况下非常令人惊讶(同时会校正统计数据)。

  虽然我们不会给出精确的数值,因为这是商业机密,但是我们可以告诉您:

  *5人组队只是比5个路人稍强。

  *部分组队只是比5个路人略强。

  *菜鸟5人组队并不会带来太大的优势,但是高玩组队会有很大的优势。

  *团队实力方差高的队伍,会比方差低的队伍更强。(方差简单来说,是在平均值相同的情况下反应各个元素的大小差异,方差大表示差异大,高方差的队伍类似高玩带低玩,低方差的队伍各个队员实力接近。)

  *这说明了大体上,高水平玩家的Carry作用(可以理解为带领或者大腿),比低水平玩家的送人头作用(feeder)要强力。

  好吧…那为什么要把预先组队的玩家和非组队玩家匹配到一起?

  这是一些原因:

  *这会帮助系统更快的找到适合你的匹配分,让系统更快的给你公平的匹配。这个的工作原理是,如果你组队,会减低运气所带来的成分,如果你单排,你的队友的好坏将对你输赢的影响更大。如果你预先组队,你会和你水平差不多的玩家组成队伍,你随机遇到猛男/坑爹队友几率会更小。因为游戏的结果更多来自你和水平相近的朋友的表现,而不是随机因素,所以你的匹配分会更快的到达精确的值。

  *我们希望玩家可以和自己的朋友一起玩,因为这样会让他们玩的更有乐趣。你也不可能为5v5的游戏设置单独的2人匹配池或者3人匹配池,你需要组合他们来让系统工作。我们选择包含5人组队,因为这非常有乐趣。如果我们以后有足够大的匹配池,我们可能会将5人组队和部分组队区分开来,但是数据告诉我们,这基本不会提升匹配的公平程度,两者的效果基本相同。

  其他一些常见的问题:

  Q:为什么不加入一些其他的细节,类似击杀数等等来确定我的匹配分?

  A:因为这是有偏差的,并且因为非常难以给击杀数这个数值来评分,你使用一个gank英雄的时候(类似老鼠和易大师),要杀多少人才能算是好的呢?而且这会让好的辅助玩家非常吃亏,因为他们的目的就不是拿人头,甚至会为了自己的Carry挡死。最后,玩家会为了刷数据,故意拖长游戏时间,然后拿大量farm对方的人头,而不是为了赢得比赛。我们尽量把测量玩家水平和激励玩家的机制放到努力取胜上面,我们避免了一些不必要的周边行为,而这些行为既没乐趣,还会扰乱匹配系统。

  Q:我非常愤怒,因为匹配系统老给我坑爹队友(feeders,送人头的)。为什么不阻止这种情况发生?

  A:我们的确有试图阻止这种情况发生,但是如果你被匹配到一个明显很弱的玩家,这也说明匹配系统同时匹配给你了一个或者多个强力的玩家。根据我们的研究,我们发现Carry(大腿)对队伍的带领作用要比feeder(送人头,坑爹)的坑爹作用更强。原因是在LOL里,多次击杀同一个玩家的收益是会递减的,并不像其他的同类游戏。我们的分析标明,在平均elo相同的情况下,提高或者降低这个队伍的某个玩家的elo值100(其他玩家相应降低/提高以保持平均分相同),整个队伍的实力会提高约7点elo值。这也表明,LOL中Carry的作用要比feeder的作用更给力一些。确实,有时候你会因为匹配到feeder而输掉这一局比赛,但是那是因为你们队的Carry不够给力。

  Q:这样的话,如果我连胜了数盘,我是不是会被匹配到一些完全不可战胜的对手?

  A:不全是。连胜导致你的匹配分会提高,你会不断遇到更强的对手——但是我们并不是故意的让你的胜率保持在50%的,我们的目的只是为了系统能够正确的预测游戏结果。最终,你会达到你的极限,你将会大致保持50%的胜率。比平均水平高的玩家,往往胜率会比50%略高,因为比他们弱的玩家更多,比他们强的玩家更少。所以匹配时,往往会略微“向下匹配”。对于排位顶尖的高端玩家,他们经常会有90%的胜率。

  Q:你们会如何设计固定的队伍?类似WOW的竞技场队伍?

  A:这是一个非常好的想法,并且让我们有机会设计出更好的匹配系统。我们迟早会做这个,并且使用我们开发的新方法。我们需要检验并且搞清楚你大体上有多强力(例如你的个人积分),同时允许你创建/解散队伍。这是个非常大的工程,但是我们对此非常有激情~

  Q:如果匹配系统真的那么公平,那为何我老遇见那种一边倒的比赛?

  A:有两个原因。第一,LOL有时候“雪球效应”会非常明显。前期太差的表现会导致游戏让人感觉非常一边倒。特别是某些队伍,如果他们开始很顺风,就会一直很顺风。我们遇到过同样的队伍,第一局25-5取胜,第2局确以类似的比分输掉。第二个原因是,玩家发挥的并不好,队伍选取阵容也不好。要进行一局势均力敌的比赛,你需要平衡玩家水平和平衡阵容的选取。有时候玩家选了一个比较渣的阵容,比如5个近战dps,或者3坦克2法师之类的,或者没选打野英雄而对面有。这样的话,尽管你的队伍实力也很不错,但是情况往往惨不忍睹。

  Q:为什么我作为一个高等级玩家,有时候会匹配到一些低等级玩家?他们看上去都是来送人头的。

  A:当一个高等级玩家和一个低等级玩家组队,这是一个非常令人头疼的问题。我们希望玩家可以和自己的朋友一起玩,并且希望这是一种愉快的体验。但是我们并不希望将一部分人的快乐建立在另一部分人的痛苦之上,所以我们往往将这种组合评分更高,保护新玩家不会被高等级玩家虐待。非常不幸的是,不管我们怎么做,我们把这样的组合匹配到任何的游戏中,都有可能造成不愉快的体验。因此,我们计划将实施一个“不平衡组队”的队列,类似我们尽量将5人组队匹配给5人组队。

  Q:我20级了,然后我被匹配到了一些10级的和一些29级的,怎么回事?

  A:当不同等级的玩家组队,我们会使用他们的平均等级来作为匹配的参考。等级并不是匹配系统的主导参数——匹配系统通常是使用实力来匹配——但是我们也会尽量将等级相近的玩家匹配到一起。在预先组队的情况下,我们没法替玩家选择,所以我们尽我们所能,使用平均等级。我们会在这个计算系统里把30级的玩家看作36级,所以我们通常能让中等级玩家的游戏没有30级玩家,然而有时候呢,29级玩家能插进来。