Рейтинг арены и очки арены в ММОРПГ Genesis
После каждого матча у Рандольфа сервер делает две записи: двигает рейтинг арены и начисляет очки арены. Рейтинг нужен для места в таблице, очки тратятся в магазине. Считаются они по-разному, и путать их не стоит. Как попасть на сам матч, написано на странице арена в Genesis; здесь только счёт.
Рейтинг: исходные числа
Константы взяты из клиентской таблицы ArenaLadder.lod, сервер их не переиначивает.
| Параметр | Значение |
|---|---|
| Стартовый рейтинг | 1500 |
| Коэффициент K | 30 |
| Нижний предел | 800 |
| Верхний предел | 2200 |
| Победа / ничья / поражение | 1 / 0,5 / 0 в формуле |
| Ушёл из матча | считается как поражение |
Формула
Это обычный Эло. Сначала сервер берёт средний рейтинг каждой команды. Потом считает ожидаемый результат: E = 1 / (1 + 10^((Rсоперника - Rсвоих) / 400)). Изменение рейтинга равно 30 × (результат - E), округлённое до целого. Всей команде прибавляется одно и то же число, потому что считается оно по средним.
Из этого следуют две вещи. Равные команды делят 15 пунктов: победитель получает +15, проигравший теряет 15, ничья не меняет ничего. И больше 30 за один бой не бывает: команда со средним 1100, победившая команду со средним 1900, получает ровно +30.
Пример расчёта
Ваша тройка в среднем на 1500, соперники в среднем на 1600. Разница 100, значит 10^(100/400) ≈ 1,778, а E = 1 / 2,778 ≈ 0,36. Сервер ждёт, что вы выиграете примерно один бой из трёх.
| Исход | Расчёт | Ваша команда | Соперники |
|---|---|---|---|
| Победа | 30 × (1 - 0,36) = 19,2 | +19 | -19 |
| Ничья | 30 × (0,5 - 0,36) = 4,2 | +4 | -4 |
| Поражение | 30 × (0 - 0,36) = -10,8 | -11 | +11 |
Рейтинг упирается в пределы: если у вас 2195 и вы выиграли +15, станет 2200, а не 2210.
Обратите внимание на ничью. Для слабой стороны она плюс, для сильной минус: команда со средним 1600, сыгравшая вничью с командой на 1500, теряет 4 пункта. Сильной команде есть смысл до сигнала положить хотя бы одного соперника: тогда у неё больше людей на ногах, и это уже победа.
Что будет, если уйти
Дезертир считается проигравшим по той же формуле: результат 0 при тех же средних. В равном матче это -15, в примере выше -11. Сверху ложится «Дезертир» на 1800 секунд, ноль очков и строка «Отказ». Команда, которую он бросил, продолжает бой, и её результат считается обычным образом, только людей на ногах у неё теперь меньше.
Очки арены
Очки считаются от уровня самого бойца, а не от рейтинга. Таблица ArenaPoint.lod делит уровни на шесть групп, у каждой своя ставка. Победа платит четыре ставки, ничья две, поражение одну. Дезертир не получает ничего.
| Уровни | Ставка | Победа | Ничья | Поражение |
|---|---|---|---|---|
| 1-19 | 50 | 200 | 100 | 50 |
| 20-39 | 75 | 300 | 150 | 75 |
| 40-59 | 100 | 400 | 200 | 100 |
| 60-79 | 125 | 500 | 250 | 125 |
| 80-99 | 150 | 600 | 300 | 150 |
| 100-110 | 200 | 800 | 400 | 200 |
Первая строка есть в клиентской таблице, но на запись пускают только с 20 уровня, так что на деле она не используется. Множитель победы подобран по единственному числу, которое оставили игроки розничной версии: «на 72 лвл мне по 500 очков за бой». Это ровно четыре ставки группы 60-79. Снаряжение с эффектом «Очки арены» добавляет к начислению свой процент, например +5 %.
Куда тратить очки
Очки арены тратит Ранмару, у него «Магазин при арене». Цены там в очках, а не в каратах, и клиент сам пишет об этом при покупке: «Вы купили: %s. Цена: %d очков арены.» Не хватает очков, будет «Недостаточно очков арены.» В магазине черепа и руны; полный список и цены видны в окне Ранмару, на сайте мы их не дублируем, чтобы не врать при каждой правке ассортимента.
Записи и таблица на сайте
В окне арены две строки: за сегодня и за сезон, в каждой пять столбцов: «Матчи», «Выигрыш», «Проигрыш», «Ничья», «Отказ». День арены сменяется в 6:00 по Москве. Тогда строка «сегодня» обнуляется, а стрелка рядом с рейтингом показывает, насколько он ушёл от утреннего.
| Место | Имя | Класс | Рейтинг | Победы / поражения |
|---|---|---|---|---|
| 1 | чупапи | Десперадо | 2030 | 169 / 3 |
| 2 | Bogdan | Головорез | 2015 | 418 / 0 |
| 3 | гуччифлипфлап | Потрошитель | 1951 | 418 / 4 |
| 4 | какашигодзе | Следопыт | 1913 | 417 / 1 |
| 5 | Работяга | Потрошитель | 1902 | 339 / 0 |
Данные на 23:29 МСК, первые пять строк таблицы арены.
Рейтинг арены на сайте показывает сто строк. Порядок: рейтинг, потом число побед, потом имя по алфавиту. В таблицу не попадают персонажи без единого матча и аккаунты под баном. Тех, кто сейчас в игре, сервер берёт из памяти, а не с диска, поэтому свежий матч виден сразу; сама страница кэшируется на 60 секунд.
Свободная арена с 10 уровня ни рейтинг, ни очки не двигает: счёт ведётся только по матчам из очереди. Аккаунт для первого матча заводится на главной.
Вопросы
- С какого рейтинга начинают на арене?
- С 1500. Ниже 800 и выше 2200 рейтинг не уходит, сколько бы матчей ни было.
- Сколько рейтинга дают за победу?
- От 0 до 30, в зависимости от разницы средних рейтингов команд. Равные команды: +15 победителю и -15 проигравшему.
- Сколько очков арены за бой?
- Четыре ставки своей уровневой группы за победу, две за ничью, одна за поражение. На 60-79 уровне это 500, 250 и 125.
- Почему меня нет в таблице на сайте?
- В неё попадают только персонажи хотя бы с одним матчем из очереди, и только сто лучших. Забаненные аккаунты не показываются. Страница обновляется раз в минуту.
Аккаунт бесплатный, клиент тоже. Регистрация занимает минуту. Создать аккаунт - Скачать.