Мы по-прежнему используем собственную базу игр, которая круглосуточно грабит Steam. Ниже представляем новое исследование.

Скачать исследование в PDF-формате

Методика анализа

Цель анализа — посмотреть, как меняется структура рынка компьютерных игр в Steam, какие типы игр становятся более востребованными, а какие, наоборот, теряют позиции. Для этого игры за двухлетний период группируются по сходству, после чего для каждой группы сравниваются изменение её успешности и изменение количества игр.

Важно отметить: анализ показывает рыночные тенденции, а не напрямую продажи, выручку или прибыльность разработки конкретной игры.

1. Исходные данные

В анализ включаются игры Steam, выпущенные в течение двухлетнего периода.

Для каждой игры используются, в частности:

В выборку попадают только игры, у которых есть теги и которые набрали минимальное число отзывов (по умолчанию не менее 10): по играм с меньшим числом отзывов об успешности судить нельзя. При сравнении половин периода (раздел 6) не учитываются игры, вышедшие менее 30 дней назад (параметр settle-days): они ещё не успели накопить отзывы.

Двухлетний период выбран для того, чтобы сравнение охватывало достаточно большой промежуток времени и меньше зависело от краткосрочных сезонных колебаний. Полностью исключить сезонность такой подход не может, но позволяет снизить её влияние.

2. Как игры группируются по типам

Каждая игра представляется в виде набора Steam-тегов. При этом учитывается не только наличие тега, но и то, насколько часто пользователи присваивали его игре.

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

Поэтому влияние слишком распространённых тегов дополнительно уменьшается. В результате более специфичные признаки получают больший вес, а универсальные — меньший.

Таким образом, каждая игра превращается в числовое описание её жанровых и содержательных особенностей.

3. Кластеризация

После формирования описания игр применяется двухэтапный метод кластеризации:

UMAP → HDBSCAN

Сначала UMAP уменьшает размерность исходного пространства тегов, сохраняя наиболее важные взаимосвязи между играми. Это позволяет работать с более компактным представлением данных.

Затем HDBSCAN объединяет близкие игры в кластеры. В отличие от метода, где количество групп нужно заранее задать вручную, здесь количество кластеров определяется структурой самих данных.

Часть игр может не попасть ни в один устойчивый кластер. Такие игры считаются шумом и не используются при анализе отдельных кластеров.

Получившиеся кластеры можно условно рассматривать как группы игр со схожим рыночным позиционированием и набором характеристик.

4. Как оценивается успешность

Для оценки успешности используется количество отзывов Steam.

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

При этом вместо среднего количества отзывов используется медиана.

Это важно, потому что в одном кластере может оказаться несколько чрезвычайно популярных игр. Их очень большое количество отзывов способно сильно завысить среднее значение и создать впечатление, что весь кластер успешнее, чем большинство входящих в него игр.

Медиана гораздо меньше зависит от таких отдельных выбросов.

Индекс успешности

Для каждого кластера рассчитывается отношение:

медиана отзывов игр кластера / медиана отзывов всех игр выборки, вышедших в тот же период.

Таким образом:

Поэтому этот показатель удобнее воспринимать как относительный индекс успешности, а не как оценку продаж.

«Рынок» здесь — это все игры выборки, включая игры, не попавшие ни в один кластер. Это не все игры Steam: игры с числом отзывов ниже порога в него не входят.

Деление на рыночную медиану того же периода нужно, чтобы убрать влияние возраста игр: игры, вышедшие раньше, накопили больше отзывов. Без такого деления игры второй (более свежей) половины периода в среднем выглядели бы менее успешными, и любой кластер казался бы «падающим». При этом предполагается, что внутри каждой половины периода игры кластера и рынка имеют примерно одинаковый возраст; об исключениях из этого правила сказано в разделе 11.

5. Как определяется рост предложения

Второй показатель — доля игр кластера среди всех игр рассматриваемого периода.

Она показывает, какую часть рынка занимает данный тип игр с точки зрения количества новых предложений.

Если доля кластера растёт, это означает, что разработчики выпускают больше игр данного типа относительно остальных.

Если доля снижается — предложение этого типа игр сокращается.

Важная оговорка: доля считается среди игр выборки, то есть среди игр, набравших минимальное число отзывов. Новые игры проходят этот порог не сразу, поэтому ближе к концу периода состав выборки смещается в сторону жанров, игры которых набирают первые отзывы быстрее: доля одних кластеров при этом завышается, других — занижается. Чтобы уменьшить эффект, самые свежие игры исключаются, а результат проверяется на более строгом значении (раздел 9).

Таким образом, два показателя отвечают на разные вопросы:

Показатель

Что показывает

Индекс успешности

Насколько хорошо в среднем выступают игры данного типа

Доля игр

Насколько активно рынок производит игры данного типа

6. Как определяется тренд

Двухлетний период делится на две равные по длине части. Из-за исключения свежих игр фактически анализируется около 23 месяцев, и каждая половина составляет около 350 дней. Каждая половина близка к году, поэтому сравнение фактически идёт «год к году», и это в значительной степени снимает влияние сезонности.

Для каждого кластера сравниваются:

  1. индекс успешности в первой и второй половине периода;

  2. доля кластера в первой и второй половине периода.

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

Например:

Именно сочетание этих двух изменений является основой итоговой классификации трендов.

При этом небольшие изменения не рассматриваются автоматически как полноценный тренд: используется минимальный порог изменения (min_change, по умолчанию 10%), чтобы не придавать значение практически незаметным колебаниям.

Чтобы оценить успешность кластера, в каждой половине периода должно быть не менее 30 его игр. Чтобы оценить только изменение предложения — не менее 10. Если игр от 10 до 29, успешность не оценивается, и кластер получает ярлык по предложению (если его изменение выражено). Если игр меньше 10, либо успешность оценить нельзя, а изменение предложения не выражено, кластер получает пометку «мало данных».

7. Временные графики

Помимо сравнения двух половин периода, для кластеров строятся временные графики.

Они нужны прежде всего для визуального анализа: по ним можно посмотреть, когда примерно началось изменение и насколько оно было устойчивым во времени.

Для построения графика используются скользящие окна. В каждом окне заново рассчитываются медиана отзывов и доля кластера.

Окна перекрываются, поэтому соседние точки графика используют значительную часть одних и тех же игр. Это сглаживает краткосрочные колебания и позволяет лучше увидеть общую динамику.

Важно: размер этого окна влияет только на внешний вид временного графика — его сглаженность и момент появления первой точки. Он не используется для определения кластеров и не меняет основной вывод о сравнении первой и второй половины периода.

8. Проверка статистической устойчивости

Любой тренд рассчитан по ограниченному числу игр, поэтому возникает вопрос: насколько сильно результат зависит от конкретного набора игр?

Для этого используется Bootstrap.

Метод многократно формирует повторные выборки из уже имеющихся игр, случайно выбирая их с возвращением, и каждый раз заново рассчитывает интересующий показатель.

Если при таких повторениях результат остаётся примерно одинаковым, это означает, что он не слишком сильно зависит от нескольких отдельных игр.

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

Bootstrap используется для индекса успешности. Доверительный интервал для доли кластера рассчитывается по приближённой формуле для отношения долей, без повторных выборок. Рыночная медиана при этом считается известной величиной, а неопределённость самой кластеризации интервалами не учитывается (см. раздел 11).

Используется 90%-й доверительный интервал. Тренд считается выраженным (рост или падение), только если интервал не включает «отсутствие изменений» и изменение не меньше min_change. Если изменение заметное, но интервал включает «отсутствие изменений», тренд помечается как неопределённый: данных не хватает, чтобы отличить его от случайных колебаний.

9. Проверка влияния свежих игр

У недавно вышедших игр есть естественная проблема: они просто не успели накопить столько отзывов, сколько более старые игры.

Чтобы этот эффект не создавал ложные тенденции, проводится дополнительная проверка с увеличенным периодом settle-days.

Сначала расчёт выполняется с основным значением периода ожидания, затем — с более строгим значением.

Если основные выводы сохраняются, это повышает уверенность в том, что результат не объясняется только наличием большого количества недавно вышедших игр.

При более строгом значении сдвигаются и границы половин периода, поэтому расхождение результатов говорит не только о влиянии свежих игр, но и о чувствительности вывода к выбору границы.

Уровни уверенности вывода

В отчёте по каждому кластеру указан уровень уверенности:

Уровень

Что означает

подтверждено

есть выраженный тренд (интервал не включает «отсутствие изменений»), он сохраняется при проверке из этого раздела, и игр в каждой половине периода не меньше 30

гипотеза

не выполнено хотя бы одно из этих условий, либо значимых изменений не найдено

нет данных

игр слишком мало: меньше 10 в одной из половин, либо меньше 30 и при этом изменение предложения не выражено

Слово «подтверждено» означает, что выполнены перечисленные проверки, но не гарантирует, что тренд реален (см. раздел 11).

10. Что в итоге показывает анализ

В результате для каждого кластера можно ответить на два основных вопроса:

  1. Стали ли игры этого типа относительно успешнее или менее успешными?

  2. Стало ли выпускаться больше или меньше игр этого типа?

Сочетание ответов позволяет определить направление развития конкретного сегмента рынка.

При этом полученные результаты следует воспринимать как индикатор рыночной динамики, а не как прямой прогноз коммерческого успеха отдельной игры.

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

11. Ограничения методики

Что сознательно не включено в методику

В текущей версии анализа не используется FDR/BH-коррекция множественных проверок. Для прикладного рыночного исследования она добавляла бы ещё один уровень статистической фильтрации, не являющийся необходимым для основной задачи.

Это осознанный компромисс: без неё чаще встречаются случайные выраженные тренды (см. раздел 11), поэтому результаты следует читать как гипотезы для дальнейшего изучения. По результатам модельной проверки, увеличение settle-days отсеивает примерно половину случайных находок, но не заменяет такую поправку.

Основной упор сделан на сочетании:

величины изменения → Bootstrap и доверительные интервалы → проверка устойчивости при увеличении settle-days.

Дальнейшие планы

По мере возможности мы продолжим совершенствовать накапливаемые данные. В частности, ищем способы прогнозов продаж. В конечном итоге мы хотим создать возможность автоматического скоринга создаваемых и предполагаемых проектов.