Перейти к содержимому
Все статьи
Гайды

Как работает рейтинг игр на ИграйТут: разбор алгоритма

В каталоге тысячи оценок, но одна из них 4.5, а другая 4.6. Рассказываем, как мы считаем рейтинг и почему он отличается от простого среднего.

Arthur
23 февраля 2026 г.5 мин чтения

Рейтинг в любом каталоге, будь то Amazon, Кинопоиск или наш ИграйТут это всегда компромисс. Одна игра получила 5 оценок подряд «5 звёзд», у неё рейтинг 5.0. Другая получила 1000 оценок, в среднем 4.8. Какая лучше?

Правильный ответ: вторая, с большим отрывом. Но простое «среднее арифметическое» этого не покажет. Рассказываем, как мы считаем рейтинг и почему алгоритм хитрее, чем кажется.

Диаграмма распределения рейтингов: 5 звёзд 60%, 4 звезды 25%, остальное меньше
Диаграмма распределения рейтингов: 5 звёзд 60%, 4 звезды 25%, остальное меньше

Проблема простого среднего

Допустим, у игры 3 оценки: две по 5 звёзд и одна 1 звезда. Среднее: (5 + 5 + 1) / 3 = 3.67. Но достаточно ли трёх оценок, чтобы сделать вывод? Нет.

Ты можешь зайти в игру, увидеть рейтинг 3.67 и подумать «так себе». А на самом деле игра могла бы заслуживать 4.5 или 2.5, просто данных недостаточно.

Это и называется статистической неопределённостью. И её надо учитывать в алгоритме.

Wilson score: как мы делаем

На ИграйТут мы используем алгоритм под названием Wilson score (или нижняя граница доверительного интервала Уилсона). Это стандартный подход для сайтов с оценками, которое используют Reddit, Steam, Yelp и другие.

Упрощённо: Wilson score считает не «среднее оценок», а «какой вероятный минимальный настоящий рейтинг игры учитывая количество оценок». Чем больше оценок, тем ближе результат к настоящему среднему. Чем меньше, тем сильнее рейтинг «штрафуется» за неопределённость.

Пример:

Игра A: 5 оценок по 5 звёзд. Простое среднее,5.0. Wilson score, 4.0. Потому что 5 оценок это мало для уверенности.

Игра B: 1000 оценок, среднее 4.6. Wilson score, 4.58. Потому что 1000 оценок это статистически значимо.

На главной каталога выше окажется B, потому что в её оценке мы уверены больше.

Формула (для любознательных)

Не буду мучить тебя математикой, но общая идея такая:

$$\text{Wilson} = \frac{\hat{p} + \frac{z^2}{2n} - z\sqrt{\frac{\hat{p}(1-\hat{p})}{n} + \frac{z^2}{4n^2}}}{1 + \frac{z^2}{n}}$$

Где: - p̂, доля положительных оценок - n, общее число оценок - z, коэффициент доверия (обычно 1.96 для 95% уверенности)

На практике мы не заставляем игроков это считать. Всё делается на сервере при каждой новой оценке, рейтинг пересчитывается автоматически.

Защита от накруток

Рейтинг это ценный ресурс, а значит его будут накручивать. Три защиты, которые мы применяем:

1. Минимум 5 минут игры

Оставить отзыв можно только если ты действительно сыграл в игру не менее 5 минут. Это отсеивает большинство ботов и троллей, которые заходят, ставят 1 звезду, выходят. Мы трекаем время через SDK (или через полноэкранное окно игры).

Индикатор времени игры: «Играю 4 минуты, до возможности оценить 1 минута»
Индикатор времени игры: «Играю 4 минуты, до возможности оценить 1 минута»

2. Один аккаунт, одна оценка

Нельзя поставить несколько оценок с одного аккаунта. Если изменил мнение, можешь отредактировать существующую, но не добавить новую. Это важно для случаев, когда игра обновилась, и оценка устарела.

3. IP и fingerprint дедупликация

Если с одного IP или device-fingerprint приходит много оценок одной игре, они попадают в очередь модерации. Не блокируются сразу (чтобы не обвинять ошибочно), но помечаются как подозрительные. Если паттерн подтверждается, оценки удаляются, аккаунты банятся.

Что показываем пользователю

В карточке игры мы показываем:

Звёздный рейтинг (округление Wilson score до одного знака). Количество оценок в скобках. Распределение оценок (сколько 5-звёздочных, сколько 1-звёздочных) при наведении на рейтинг.

Последнее это важно: игра с рейтингом 4.0 может быть поляризующей (половина ставит 5 звёзд, половина 1 звезду, нет промежуточных). Или нормальной (большинство 4 звезды, немного 3 и 5). В первом случае стоит читать отзывы внимательнее.

Отличие «топа» от «новинок»

В каталоге есть три сортировки:

Популярные, по количеству игроков в неделю. Не учитывает рейтинг напрямую. Новинки, по дате публикации. Топ, по Wilson score.

У каждой свой смысл. «Популярные» это что сейчас на хайпе, может быть хорошим или плохим. «Новинки», что только что появилось. «Топ», что реально хорошо по оценкам игроков.

Три сортировки каталога: популярные, новинки, топ
Три сортировки каталога: популярные, новинки, топ

Проблемы: которые мы знаем

Wilson score это хорошо, но не идеально. Есть случаи, где он проигрывает:

Первое. Старые игры с кучей старых оценок. Игра вышла в 2022 году, собрала 10000 оценок в среднем 4.5, потом обновилась, и обновление плохое. Текущее качество 3.5, но алгоритм ещё долго будет показывать 4.5, пока новые оценки не «разбавят» старые.

Второе. Манипуляция через рассылку. Если разработчик рассылает в свой Telegram-канал «поставьте нам 5 звёзд» это сложно обнаружить. Все оценки настоящие, от настоящих пользователей. Но массовость подозрительна.

Третье. Троллинг через review-бомбинг. Если игра поссорилась с комьюнити, за день могут прилететь тысячи 1-звёздочных оценок. Rate-limit на 10 оценок в минуту с IP смягчает, но не решает полностью.

Над этими случаями мы работаем. В v1.1 планируем: - Weighted rating с учётом времени (недавние оценки важнее старых) - Fraud detection на базе AI для обнаружения массовых паттернов - Reputation score для пользователей, чтобы оценки опытных игроков весили больше

Как ты можешь помочь

Хорошие рейтинги формируются сообществом. Если играешь в игру и у тебя есть мнение:

Первое. Оставь оценку и отзыв. Особенно если мнение необычное (все пишут что игра хороша, а тебе не зашло, или наоборот). Ты помогаешь следующим игрокам принять правильное решение.

Второе. Голосуй за полезные отзывы. У каждого отзыва есть кнопки «👍 полезный» и «👎 не полезный». Полезные показываются первыми, и это улучшает опыт для всех.

Третье. Жалуйся на спам. Если видишь явно накрученный отзыв или спам, нажми «Пожаловаться». Модераторы разберутся.

Итого

Рейтинг на ИграйТут это не «среднее арифметическое», а Wilson score с защитой от накруток. Мы показываем не только звёзды, но и количество оценок, распределение, сортировки с разной логикой. Цель: помочь тебе найти реально хорошую игру, а не просто «популярную сегодня».

И небольшая просьба: если понравилась игра или статья, оставь оценку. Каждый голос важен, и из этих голосов рождается наш каталог.

Понравилась статья?