评分、排名与赛制
Ratings, Rankings & Tournaments
Schreiber 与 Romero 第 14 章讨论包在单局游戏外面的元游戏系统:区分排名 (rank) 与评分 (rating),逐个分析 Harkness、Elo、Glicko、TrueSkill、在线 MMR 与大师分;列出评分系统的常见问题(抑制活跃、运气、匹配漏洞、通胀通缩、平局、多人、掉线、作弊)、把评分看作胜负预测并加以检验;再讲排名系统的设计旋钮(以《炉石传说》为例)、循环赛/淘汰赛/瑞士制/联赛等赛制,以及 F2P 竞技游戏的元游戏奖励(p.359–395)。
排名与评分(p.359–360)
- 排名 (rank) 是序数:第 1 名强于所有人,第 2 名仅次于第 1 名……只表示相对次序,不表示差距大小。排行榜、天梯都是排名系统。
- 评分 (rating) 是代表玩家某种绝对属性(通常是技术)的数值,两人评分之差有实际意义。最知名的评分系统是 Elo。
评分系统(p.360–367)
Harkness(国际象棋 Elo 之前的系统):赛后新评分只取决于本次赛事——对手平均分为 ,战绩正好五五开则新分为 ;比 50% 高 个百分点为 ,低则 。原书例:原分 1800,对手 1500、1700、1750、1900、1950(平均 1760),3 胜 1 负 1 和(胜 1、和 0.5、负 0)得 3.5/5 = 70%,,新分 ,与原分无关。缺陷:分数大起大落;新分必在对手平均分 ±500 以内,混进大师赛的新手哪怕全输也会拿到很高的分。
Elo:以原分为基线,赢强者涨得多、赢弱者涨得少,输给强者扣得少、输给弱者扣得多。两步:
是期望胜场(单局即胜率,取值 0–1), 是实际得分(胜 1、负 0)。
- 400 基本是审美选择,决定粒度:Elo 希望相差 200 分时强者期望胜率约 0.75,公式实际给出 0.7597。
- 双方 之和为 1:令 ,则 。
- 是单局最大涨跌,衡量不确定性;原书脚注:常见做法是定级期 、打满一定局数后 ,有的实现对高分玩家再降 ;没有公认值, 太低响应慢、太高则评分被最近几局支配。
- 可按单局或整个赛事计算:把各局 相加与总得分比较。原书例: 分别为 0.2、0.5、0.6,赢 2 局,变化 , 时 +11.2(只允许整数则记 11)。
- 因为涨跌相对于对手,存在实际上下限:从 1000 起步的系统里出现 5000 分基本不可能,模拟里看到 7724 多半是 bug。
- 平局按半胜计算:弱者逼和会涨分,强者被逼和会小幅掉分。
- 局限:假设纯技术(无限强者胜率趋近 100%,有运气成分的游戏不成立);平局等于半胜未必合理(弱者容易求和时);只适用于两人对局。
Glicko(Mark Glickman):可理解为"每个玩家有自己可变 的 Elo"。每人有评分偏差 RD:每局后下降,长时间不玩则缓慢上升;评分可显示为 ,约 95% 的玩家真实水平落在此区间。数学与心理的冲突:常玩使 RD 很小、评分几乎不动,让人觉得输赢无所谓,甚至要故意停玩一阵把 RD 养回来才能涨分——等于惩罚常玩;Glickman 本人建议实际实现设 RD 下限(如 30)。
TrueSkill(微软):每人有均值 与标准差 (正态分布)。赢则 必升、输则必降,幅度取决于双方 之比(高 玩家遇到低 对手获得的信息多、变动大,反之变动小)和 之差(爆冷变动大)。主要创新是显式支持多人:混战中按最终名次把 人局视为每人 场一对一,排在谁前面就算赢谁,成绩足够接近可算平局(阈值逐游戏设定,赛车可不允许平局);团队赛把队伍视为一个玩家(、 取队员之和),再按个人 在队内分配涨跌;开发者还可按个人贡献加权(FPS 里躲在角落的人贡献少)。
在线评分与 MMR:水平相近的对局最激动人心——高手虐新手不意外也无趣,新手偶尔赢了多半靠运气,自己不自豪、高手也恼火。因此多数在线竞技游戏(《英雄联盟》《炉石传说》、Dota 自走棋等)给每人一个 MMR(匹配评分),更新方式类似 Elo 或 TrueSkill。排队时既要分差小又要快:找不到合适对手就逐渐放宽允许的分差。MMR 常不公开,以免打击低分玩家——胜率五五开的人会觉得自己打得不错,哪怕是因为被匹配给同样弱的对手。组队时取队伍 MMR 的某种平均(原书脚注:可以是加权平均,若一人主导则直接取最大值),还可为单排与组排分别维护 MMR,因为熟人队伍配合更好。
大师分 (Masterpoints)(桥牌、网球、《万智牌》等):每参加有组织的赛事按成绩得分(如胜 3、和 1、负 0),评分是终身累计。桥牌按赛事级别给分数着色,邀请赛可要求某颜色以上分数达标;《万智牌》参赛本身也给分以鼓励参赛。特征是只涨不跌,缺点是分不清"打得多但平庸"与"打得少但常赢",多数也不考虑对手强弱,有利于专挑弱者打的人。
评分系统的常见问题(p.367–376)
- 鼓励活跃:Elo 类系统中高分玩家(觉得自己被高估,或怕丢掉世界第一)会避战保分;纯 Glicko 的 RD 趋近零也会锁死常玩者。对策:一段时间不活跃就移出总榜(只是部分解决,玩家会刚好打最低局数;门槛太高又冷落休闲玩家);大师分天然鼓励参与,但把经验与技术混为一谈,不适合匹配、比较技术或预测胜负;每日/每周任务给游戏货币,让玩家宁要奖励也不护分;隐藏评分只用于匹配,另给可见的排名——没有可护的分就不会为此避战。
- 运气与技术:Elo 中无限强者对无限弱者胜率为 100%,在万智牌、扑克这类有运气的游戏里不成立。若对局有 的概率由运气决定(各 50%),则期望胜率应修正为
原书例:95% 技术、5% 运气时,极端水平差下期望胜率应在 0.025–0.975 之间;一般地运气占 时上下限为 与 。不考虑运气时弱者赢得比预测多,形成负反馈:高手打弱者净失分,反之净得分。
- 匹配:早期在线游戏用大厅自选对手,简单、方便和朋友玩,但只要预测胜率与实际不符就会被利用:有运气却用 Elo 时,人人想挑战远强于自己的人并回避弱者;大师分(赢谁都一样分)则鼓励欺负弱者。若人人都最优地挑选,就没人会打(每场总有一方吃亏会拒绝)。即使预测准确,玩家仍可挑被暂时高估的对手(刚入场的新人通常从中位分开始、实际偏弱;顶尖玩家互相熟悉、看赛事结果判断谁被高估)。典型解法是自动匹配:排位局只声明要打,系统配对;目标是分差尽量小(对局最精彩,且只有真进步才会涨分)与等待时间尽量短之间的折中——先找几乎同分的人,每多等一秒就放宽允许分差。原书脚注:也可能有理由偏离均衡匹配,如给连败者偶尔安排弱得多的对手甚至故意输的 AI 以留住他——没有开发商会公开承认,但大概能提高留存。
- 评分通胀与通缩:大师分是正和;Elo 及其衍生多为零和(一方得分等于另一方失分)。起始分本身没有内在含义,只相对于他人有意义(中位数 1500 时新人默认低于中位,中位数 1000 时默认在中位)。平均分随时间上升为通胀、下降为通缩,在评分永久、持续、公开时尤其成问题:评分不再只是对局预测,还掺入了玩龄,降低匹配效用;通胀惩罚新玩家(要更努力追赶),通缩惩罚老玩家(要赢球才能保本)。来源:评分下限(在下限的人输了不扣分、对手照样加分,是正和事件);玩家离开带走其分数——低于平均者离开造成通胀、高于平均者离开造成通缩,而表现差、受挫的人更容易离开。对策:检查所有可能让系统变成正和或负和的情形,跟踪活跃玩家平均分,找出并消除或抵消来源;定期重置(赛季)的评分基本不受影响。
- 平局:有的游戏不可能平局(围棋比赛后手贴目带小数);有的平局需要技术(国际象棋高水平对局平局多,新手难以逼和大师)。若弱者专心不输就能逼和,把平局当半胜就不公平——弱者可专门挑战高分者求和刷分。可改规则;若有正当理由保留,可让平局不计分,或把平局与胜负分开计算(按给定分差下平局与胜局的期望比例决定平局得失)。
- 多人游戏:混战中要确定什么最能预测成绩——对手平均分、最强对手、最弱对手或其他加权;团队赛中队伍实力是平均还是偏向强者(能否一人带飞)或弱者(能否一人坑队),以及熟悉度——配合默契的熟人队可能胜过个人更强的陌生队。
- 掉线:难以分辨意外与故意。两人对局的选项各有代价:不计分(快输的人故意掉线);掉线判负(网络差的人受挫,还诱发 DDoS 对手;且给游戏增加了不均等的运气成分);AI 接管并承认结果(要做出称职的 AI 很难,AI 太差就等同判负);用局面评估算法判部分胜负(玩家会抢先领先再故意掉线)。团队赛更复杂:继续打则队友受罚,掉一人就结束则十人局常打不完。缓解:匹配时同时考虑历史掉线率与连接稳定性、按 ping 匹配、给合理的重连时间。经自有服务器联机更容易判断谁掉线,并可隐藏 IP 防 DDoS;P2P 时难以判断,甚至有人故意断网再在上报前重连。没有完美方案,"至少可以选你的毒药"。
- 作弊:只要能作弊就有人尝试,在竞技、有社区、有奖金或名誉的游戏中尤甚;大赛冠军被查出作弊会毁掉赛事公信力。只靠社区管理抓人负担重,还让本该做客服的人承担惩罚。可自选对手时会有小号送分、互相轮流放水、贿赂对手;自动匹配和匿名大大增加难度。任何正和元素(评分下限、某类对局的奖励分)都会被利用,保持零和可杜绝;若显示的是排名而隐藏 MMR,玩家会针对排名作弊,例如故意压低 MMR 以匹配到更弱的对手。
评分即胜负预测(p.376–380)
零和系统中技术不变的玩家评分应大致稳定。若某局赢得 分、输掉 分,系统隐含的胜率预测为
对手为 ,两者之和为 1;(输了不扣分)意味着预测必输, 意味着预测必赢( 无定义,但不应出现)。对 Elo 而言 、,代入正好得到 (本库推导)。
更多预测因子:运气之外,可选的开局对象(CCG 构筑卡组、MMO 构建、MOBA 英雄、格斗角色)从一开始就造成不对等——弱玩家拿冠军卡组可能胜过拿烂卡组的强玩家;已有的分析埋点(对象/角色/策略与胜率的相关)理论上可纳入预期结果。团队中角色之间的协同、队友一起打过多少局也可计入(越熟悉相当于有效评分越高)。非二元结果的终局状态也可利用:万智牌 20 血赢和 1 血赢不一样,评分系统可以预测分差并用分差更新。还可跟踪对局过程:一些高手出于风度故意不碾压,从早期领先一点并一直保持微弱优势——这种模式若被识别,说明胜者技术极高,能同时控制对手的体验。
验证系统:可以编写模拟——几千名玩家各有"真实评分",按匹配系统配对,按真实分差算期望胜率并用伪随机数决定胜负,再用评分系统更新;以所有玩家"系统评分 − 真实评分"的均方根误差对局数作图,得到收敛所需局数和稳态误差(稳态误差永远存在:处于真实分的人下一局就会涨或跌)。这适合比较两个候选系统的准确度与收敛速度,但不能证明系统模型正确,因为模拟必然使用与评分系统相同的模型。更好的是用数据分析:不知道真实评分,但可以比较系统预测胜率与实际胜率,看在哪里高估或低估;再看子集——有运气的游戏看极端水平差下的爆冷率,乘以 2 得到运气系数(运气起作用时一半仍偏向预期胜者);团队游戏只看"全陌生队 vs 全熟人队"衡量配合的作用;混战看最终名次与评分的偏离频率。理想做法是在 beta 期就埋点收集,赶在发售和实现评分系统之前用数据设计出预测尽量准确的系统(数据分析方法见 数据分析与平衡)。
排名系统(p.380–385)
大多数人进不了前十,而按定义一半玩家低于中位数,被告知这一点会大量打击士气(原书脚注:Valve 称 Dota 2 玩家对 MMR 系统的看法与其近期胜率高度相关)。所以很多在线游戏只把评分用于内部匹配,另用排名给玩家地位感。设计旋钮:
| 旋钮 | 选项与取舍 |
|---|---|
| 粒度 | 高粒度("你在 65,234 人中排第 3,487 名")澄清位置,适合最顶尖的约 5%(邀请赛资格);只对顶层显示具体名次时,进入有名次的行列本身就是里程碑,也不会暴露总玩家数。低粒度(青铜/白银/黄金/钻石/铂金……)模糊位置,让非顶尖玩家有目标又不觉得自己差;还可让最低档只容纳极少数人,弱玩家也不觉得垫底 |
| 社群范围 | 全球榜,或局部榜:上下各 30 名、公会、好友、同服、同城。多榜让玩家在某些榜上接近顶端,但可能分不清哪个是"官方"榜。显示方式影响留存与付费:在好友榜里显示玩家接近垫底可能促使付费超越朋友;限时赛事中先让玩家名次上升、再被别人反超,可能带动道具销售;在全球榜垫底且长期不变可能直接劝退——对不付费、只占带宽的玩家可能是有意为之。理论上可以显示不准确的名次来操纵感知,尚无开发者公开承认 |
| 永久性 | 终身排名,或独立于评分、定期重置。赛季重置让人人觉得新赛季有同等机会登顶,带来进程感而非终身评分的停滞,并促使定期回来打——在线 PvP 中很常见 |
| 主观性 | 在线游戏基本客观;部分职业体育由专家评审给出主观排名,常引发争议,尤其用于赛事种子时 |
| 升降方式 | 直接按评分排序(或按分段/百分位分档)——缺点是难以只重置排名而不重置评分。天梯:俱乐部里与紧邻上下者交替对局、下位者胜则互换;自动匹配下位者胜则直接占据上位者位置、中间者各降一位;可自由挑战时胜者与紧邻上方者互换、负者不动。天梯名字本身暗示攀登,至少一半对局无风险(挑战上位失败不降),但顶端只有一人,过半之后再爬很难,还像跑步机一样要打才能保位 |
《炉石传说》案例(原书描述的是其旧版天梯):从 25 级开始,每级若干颗星(低级 2 颗,逐渐增至 5 颗),赢一局得一星,集满再赢升一级直到 1 级。25–20 级不掉星,匹配同级相近评分时胜率约五五开,打得够多迟早升到 20 级,几乎所有活跃玩家都有进程感与胜任感;到可能掉星时已离底部好几级。5 级以前输一局掉一星,但连胜(含本局至少三连胜)每胜额外 +1 星:高手重置后能很快爬回;胜率 50% 的人也会因随机出现的连胜慢慢上升——例如三连胜后三连败,得 3+1 星失 3 星,净 +1;连败不会额外扣星。每月重置,登录即按上月最高段位发奖励,并按上月成绩给起始星级,让重置被感知为奖励而不是惩罚,形成"爬升—被打回—再爬升"的持续进程。可见排名系统可以同时充当进程系统、奖励系统、支配系统(胜过朋友、圈内第一乃至世界第一),并按需要澄清或模糊评分。
时效说明:原书描述的是《炉石传说》2020 年以前的 25 级星级天梯;2020 年 4 月起暴雪把天梯改为青铜至钻石各 10 级再到传说的分段制(每级 3 星、每个联赛在 10 级和 5 级设保底;见暴雪官方《Ashes of Outland – 17.0 Patch Notes》(2020-03-26)中的 Ranked Overhaul 一节)。原书的设计分析仍然适用,但具体数字已与现行版本不同。
赛事与联赛(p.385–391)
- 循环赛 (round robin):人人互打,按胜负排名;最简单也最公平。原书脚注给出公平的同分决胜:看同分者之间的直接交手,仍分不出时看对头名、次名……的战绩;用赛前评分决胜会把赛事之外的优势带进来,可能被视为不公平。缺点是耗时(见下方原书问题)。
- 单败淘汰 (single elimination):输一局即出局, 人只需 轮(4 人 2 轮、8 人 3 轮、16 人 4 轮)。要决定三件事:
- 对阵(种子):初始对阵强烈影响结果。原书设 16 人中每差一名有 1% 优势(头名对末名 65%:35%),比较两种种子:1 对 2、3 对 4……顺序排列时,第 8 名夺冠概率远低于第 9 名(前者一路要打三个更强的对手);标准种子(1–16、8–9、4–13、5–12 在同半区)使夺冠概率严格随名次递减。按此假设精确计算:顺序种子下第 8 名约 5.6%、第 9 名约 6.7%(第 4 名 7.1% 也低于第 5 名 7.3%),头名仅约 9.1%;标准种子下从第 1 名约 11.8% 单调降到第 16 名约 2.5%(本库按原书设定计算,与原书结论一致)。种子可依据全局评分或排名、预赛,或随机。
- 平局:可加赛到分出胜负(可能无限拖延),或用不允许平局的"突然死亡"模式,或用局内指标(场上资源最多者)决胜。
- 轮空:人数不是 2 的幂时,第一轮让最高种子轮空——反正他们本来要对最低种子,对结果扭曲最小;随机对阵时轮空也随机,可给轮空者一点补偿性劣势(如自动输掉决胜规则)。
- 双败淘汰:另设败者组,从主赛区每轮的失败者填入;最后主赛区与败者组的胜者决赛,主赛区一方要输两局才出局。可减少有运气成分时强者因一次背运出局;三败、四败制记账太麻烦,很少见。
- 瑞士制 (Swiss):所有人打同样多的轮次,首轮随机或按评分分组(原书脚注:围棋的 McMahon 制按评分预先给分,让强者早期互相对阵,避免倒霉的弱者首轮撞上最强者;轮数要足够让零起点玩家全胜也有机会夺冠),每轮后按累计成绩(通常胜 1、和 0.5、负 0,也可用局内分数)排名并与相近者配对。配对法如荷兰制(同分组内上半区与下半区对应者对阵:6 名 2-1-0 者中 1 对 4、2 对 5、3 对 6)、Monrad 制(1 对 2、3 对 4……),通常还禁止重复对阵和重复轮空。优点:不淘汰、无对阵图,人数不必是 2 的幂,奇数人数时每轮至多一个轮空(但每轮都有);缺点是配对复杂,每轮都要实时计分、排序、应用多重决胜规则。
- 混合制:仅为决出冠军时, 人瑞士制打 轮与单败淘汰长度相同、结果相同;打 轮就是循环赛;轮数多于或少于 时几乎必然多人并列头名,靠决胜算法加冕很扫兴,也缺少两强决赛的高潮。因此常先打若干轮瑞士制,再取前 4/8/16 名按瑞士制名次做种子进行淘汰赛:人人能多打,冠军又必须亲手击败对手。
- 联赛与赛季:联赛是持续数月到一年的多轮赛事,通常不用淘汰制;也可以用评分系统运行(人人同一起始分,期末最高分者胜)。赛季是一个接一个的联赛,借自职业体育,但在线游戏不会有长达数月的休赛期,以免玩家流失;各赛季独立,上赛季冠军可获少量起始优势。
- 中途退赛:循环赛可移除退赛者并作废其已赛对局,或保留其结果用于决胜;淘汰赛中其下一个对手轮空,或重排对阵把轮空给尚未轮空的最高种子——后期轮空比首轮轮空更值钱,因为跳过的多半是强敌;瑞士制直接从排名与后续配对中移除,基本不影响配对,但会改变是否需要轮空,若决胜规则涉及对手成绩还要定义退赛对手如何计算。
元游戏奖励系统(p.391–393)
多数 F2P 竞技游戏有游戏货币(有时两种:普通货币和主要靠现金获得的货币),用来解锁内容。纯付费即赢令人不满:付费者起初多赢几局,评分升上去后只是和其他付费者打,优势消失。玩家因而期待付不付费最终能力相同,于是问题变成:为哪些行为发货币?——答案是任何你希望玩家去做的、能代替金钱为游戏增加价值的事:
- 与真人对战——玩家相当于众包的 AI,为对手(无论是否付费)提供娱乐和挑战;
- 定期登录——让游戏成为习惯,来领奖的人通常会顺便做别的事,为社区增值,常回来的人也可能最终付费;
- 直接给开发者带来收入的行为——如看完广告。
也可以为排名提升发货币(每月重置的进程型排名),让玩家觉得金币是挣来的而不是在追逐诱饵;为参加和赢得赛事发奖(若参赛还要付费,动态会变得很复杂)。每日任务不只鼓励登录和对战,若要求用特定角色或策略且轮换,还能引导玩家探索原本忽略的系统。
课后练习要点(p.393–395)
讨论题涉及排名与评分的区别与优劣、为没有官方匹配的 PvP 游戏设计评分、电竞爆冷多于预测说明什么、显示或隐藏 MMR 的理由、评分通胀的成因、各赛制优劣、如何改评分以鼓励或抑制参与、种子如何影响结果。支线 14.1:8 人单败,每高一名对下一名胜率 55%、对隔一名 60%……对最末 85%,比较顺序种子 A(1-2、3-4、5-6、7-8)与标准种子 B(1-8、4-5、2-7、3-6)。按此设定计算(本库补充):A 中夺冠概率依次约 26.1%、18.3%、15.4%、10.3%、12.4%、8.0%、6.1%、3.5%(第 5 名高于第 4 名);B 中约 35.1%、24.0%、16.1%、10.3%、6.6%、4.2%、2.5%、1.3%,单调递减,更公平。支线 14.2 "Alpha"系统:分差 每 20 分少押 1 分,即每局押 分,问它能否让玩家寻找同分对手(提示:看对高分、低分、同分对手的期望得失)。支线 14.3 为 90% 技术、10% 运气的游戏改写 Elo(即上文 )。支线 14.4 为 4 人死亡竞赛(杀人 +2、被杀 −1、不低于 0、先到 20 分结束)设计 16 人瑞士制,进阶题处理 13–15 人的轮空与中途加入。法师主线第 5 部分:为 Harmony 设计排名或评分系统,把未知量(如运气比例)写成变量,并说明如何用数据分析估计。
原书问题
| 位置 | 问题 | 核对 |
|---|---|---|
| p.385 循环赛 | "for an N-player tournament, there would have to be N − 1 games played" 只对每名玩家成立(也是所需轮数);整个循环赛的总局数是 | 组合计数:每对玩家各打一局,共 局;例如 8 人需 7 轮、28 局 |
| p.380 低粒度示例 | 段位举例写作 "Bronze/Silver/Gold/Diamond/Platinum",与常见段位次序相反 | 采用这类命名的游戏(如《英雄联盟》)中铂金低于钻石;从低到高应为青铜、白银、黄金、铂金、钻石 |
数值核对:Harkness 例对手平均 、新分 1960 ✓;Elo 相差 200 分时 ✓;三局例 ✓;运气 5% 时上下限 ✓;16 人每名 1% 时头名对末名 ✓。
与其他书的对照
| 主题 | 已有观点 | Schreiber & Romero |
|---|---|---|
| 匹配与心流 | 第 12 章(PvP 进程与力量曲线)把评分与匹配作为让 PvP 玩家保持心流的首选;Schell 的 多人游戏与社区 从社区角度讨论排行榜与地位 | 本章给出具体算法:Elo/Glicko/TrueSkill 的公式与取舍,以及匹配中速度与精度的折中、隐藏 MMR 与可见排名的分工 |
| 元游戏 | 元游戏 讲游戏外部的策略环境(卡组选择、职业体育选秀) | 本章讲包在对局外的系统:评分、排名、赛制和货币奖励 |
出处
- Game_Balance_-_Ian_Schreiber_Brenda_Romero.pdf
- Ian Schreiber & Brenda Romero《Game Balance》第 1 版(CRC Press, 2022, ISBN 978-1-4987-9957-7)第 14 章 Metagame Systems(印刷页 p.359–395)