段位与赛季
计分
四个排位模式(公平 / 巅峰 × 1V1 / 2V2)的分数各自独立,初始分数 rating.default(默认 1000)。
每场结束用 Elo 计算:
- 期望胜率 =
1 / (1 + 10^((对方平均分 − 我方平均分) / 400)) - 分数变化 =
K × (结果 − 期望胜率),结果:胜 1、平 0.5、负 0 - 赢强队加得多、赢弱队加得少;胜负局至少变动
rating.min-change分(默认 1) - 分数不会低于
rating.floor(默认 0)
2V2:期望胜率用两队的平均分计算,算出来的增减套用在每个人自己的分数上。队友原本 1500 与 1100,赢了之后是 1516 与 1116,不会被改成同一个分数。
中途离开或下线算阵亡,队伍全灭就判负。时间到(match.max-duration)时,比较两队活着的人剩余血量百分比的总和,多的赢,一样平手。
rating:
default: 1000
k-factor: 32
placements: 3
placement-k-factor: 64
min-change: 1
floor: 0
定级赛
每个排位模式要先打 rating.placements 场(默认 3)定级赛:
- 定级期间菜单与变量显示「定级中 1/3」,不上排行榜。
- 定级赛用
placement-k-factor(默认 64),分数变化比较大,快速找到真实水平。 - 打完显示「定级完成!段位 xxx」。
段位线
config.yml 的 ranks,从低到高,min 是这个段位的最低分数:
ranks:
- {name: '黑铁I', min: 0, color: '&8', icon: GRAY_DYE}
- {name: '青铜I', min: 300, color: '&6', icon: ORANGE_DYE}
- {name: '白银I', min: 600, color: '&f', icon: LIGHT_GRAY_DYE}
- {name: '黄金I', min: 900, color: '&e', icon: GOLD_INGOT}
- {name: '铂金I', min: 1200, color: '&b', icon: CYAN_DYE}
- {name: '钻石I', min: 1500, color: '&3', icon: DIAMOND}
- {name: '超凡I', min: 1800, color: '&5', icon: TOTEM_OF_UNDYING}
- {name: '神话I', min: 2100, color: '&d', icon: AMETHYST_SHARD}
- {name: '赋能', min: 2400, color: '&4', icon: NETHER_STAR}
默认共 25 级(黑铁 I – 神话 III 每 100 分一级,2400 以上为赋能)。icon 用在战绩与排行榜菜单。
晋升到 broadcast.rankup-tier(默认 钻石I)或更高的段位时全服播报;留空不播报。
排行榜
/ca top [模式]或主菜单的 排行榜:排位模式按分数(只列已完成定级、至少打过一场的人),匹配模式按胜场。- 排行榜每 60 秒更新一次(
/ca admin reload立即更新)。 - 变量:
%cloudarena_top_name_<模式>_<名次>%、%cloudarena_top_rating_<模式>_<名次>%,见 变量。
赛季
/ca admin season 查看目前赛季
/ca admin season reset soft confirm 结算并进入下一季(软重置)
/ca admin season reset hard confirm 结算并进入下一季(硬重置)
结算时:
- 把所有玩家每个模式的分数、场次、胜负存档到
ca_seasons表。 - 重置分数:soft =
(原分数 + 初始分) / 2;hard = 回到初始分。 - 定级赛与连胜归零,所有人重新定级。
- 赛季编号 +1(
%cloudarena_season%,名称格式season.format,默认S{n})。
还有比赛在进行时 不能结算。多个子服共用 MySQL 时,在任一台执行即可(赛季编号存在数据库)。
排名奖励的结算周期设成「跟着赛季」(ranking.cycle: season)时,结算赛季前会先依目前的排行榜发放排名奖励;也可以设成每天 / 每周 / 每月自动结算,并选择结算后是否重置分数,见 奖励。
管理员调整
| 指令 | 作用 |
|---|---|
/ca admin rating <玩家> <模式> <分数> | 直接设定分数(同时视为已完成定级) |
/ca admin resetstats <玩家> [模式] | 清空战绩与分数(不填模式 = 全部模式) |
/ca admin lookup <玩家> | 文字列出这个玩家每个模式的分数与战绩(离线也能查) |