Пациент, у вас имба! » что делать Game Data-аналитику, если игроки жалуются на баланс

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

Чем это плохо? Несбалансированный элемент может поломать весь дизайн игры, например:

  1. Ломается дизайн прогрессии. Увеличивается скорость прокачки, что позволяет игроку быстрее «пройти игру».
  2. Ломается дизайн экономики игры. Увеличивается скорость накопления ресурсов. Небольшое кол-во усилий приносит ему огромные ресурсы, когда другие игроки днями-ночами потеют, чтобы накопить ресурсы.
  3. Ломается геймплей игры. Игрок «нагибает» остальных и большинство остается недовольным. При столкновении с противником имба способна быстрее уничтожить противника, при этом не получив никакого отпора.
  4. Уменьшается время жизни игрока в продукте, то есть игроку быстро надоедает игра.

Что с этим можно сделать? Есть несколько вариантов. Первое, что приходит в голову – вывести данный элемент из игры. Все хейтеры будут счастливы, все обладатели имбы станут хейтерами. И второе, понерфить (сбалансировать) показатели элемента. В данном случае запросы хейтеров будут удовлетворены, и обладатели бывшей имбы не будут обижены. На примере танков продолжим разговор по теме.

Но как же понять: имба ли это на самом деле?

Шаг №1. Давайте возьмем всех обладателей имбы и сравним их с остальной аудиторией. Посмотрим, насколько они эффективны, сколько они получают ресурсов и как они играют вообще. Сравнили по такому принципу и получили, что обладатели имбы просто во всем превосходят остальных игроков. И кажется, вот она – имба, ломающая всю игру. Факты совпадают с реальностью.

В чем ошибка? В данном подходе мы не учли, что мы сравниваем аудиторию, которая играет абсолютно на разных уровнях. Логично же, что если сравнивать 1 и 10 уровень, то результаты боя у 10 уровня будут явно выше. На рисунке явно заметно ситуация, что обладатели имбы преимущественно играет на высоких уровнях.

Пациент, у вас имба! » что делать Game Data-аналитику, если игроки жалуются на баланс

Шаг №2. Усвоили урок и двигаемся дальше. Берем обладателей имбы и сравниваем с остальными игроками, но только с теми, которые играют на том же уровне. Сравниваем и получаем тот же результат.

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

Пациент, у вас имба! » что делать Game Data-аналитику, если игроки жалуются на баланс

Шаг №3. Окей, теперь-то мы точно не сделаем ошибки. Берем игроков, которые играют на одном и том же уровне, играют на одном и том же типе техники. Проводим анализ и «О, чудо!», мы снова получаем, что у нас обладатели имбы фармят намного больше и намного быстрее. Ну все, имба она и в Африке имба. Идем к заказчику, чтобы ответить на все вопросы.

В чем ошибка? Но тут опять же есть сомнения: «Уровень техники учли, тип техники учли… Аудиторию не учли!» У нас же могут быть игроки с абсолютно разными скиллами и разным опытом в игре.

Пациент, у вас имба! » что делать Game Data-аналитику, если игроки жалуются на баланс

Шаг №4. Начинаем все заново, выбираем игроков, которые выезжают на одном уровне техники, выбираем одинаковый тип техники. Дальше разбиваем аудиторию по скиллам. В качестве скилла можно взять разные метрики: его рейтинг, процент побед или же придумать свою метрику. Разбиваем игроков на бины и сравниваем эффективность в рамках каждого бина.

Пациент, у вас имба! » что делать Game Data-аналитику, если игроки жалуются на баланс

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

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

Если вы из Минска и хотите попробовать себя в гейм-дата аналитике – до 15 февраля бесплатные курсы Wargaming Forge проводят набор на эту специальность. Лучшие студенты получат оффер от разработчиков World of Tanks.

Вы пропустили

AEGIS Algorithms Android Angular Apache Airflow Apache Druid Apache Flink Apache Spark API API Canvas AppSec Architecture Artificial Intelligence Astro Authentication Authorization AutoGPT AWS AWS Aurora AWS Boto3 AWS EC2 AWS Lambda Azure Babylon.js Backend bash Beautiful Soup Bento UI Big Data Binary Tree Browser API Bun Career Cassandra Charts ChatGPT Chrome Extension Clean Code CLI ClickHouse Coding Codux Combine Compose Computer Context Fusion Copilot Cosmo Route CProgramming cron Cryptography CSS CTF Cypress DALL-E Data Analysis Data science Database dbt dbt Cloud deno Design Design Patterns Detekt Development Distributed Systems Django Docker Docker Hub Drizzle DRY DuckDB Express FastAPI Flask Flutter For Beginners Front End Development Game Development GCN GCP Geospatial Git GitHub Actions GitHub Pages Gitlab GMS GoFr Golang Google Google Sheets Google Wire GPT-3 GPT3 Gradio Gradle Grafana Graphic Design GraphQL gRPC Guidance HMS Hotwire HTML Huawei HuggingFace IndexedDB InfoSec Interview iOS Jackknife Java JavaScript Jetpack Compose JSON Kafka Kotlin Kubernetes LangChain Laravel Linux LlaMA LLM localStorage Logging Machine Learning Magento Math Mermaid Micro Frontends Mobile Mobile App Development mondayDB MongoDB Mongoose MySQL Naming NestJS NET NetMock Networks NextJS NLP Node.js Nodejs NoSQL NPM OOP OpenAI OTP Pandas PDF PHP Playwright Plotly Polars PostgreSQL Prefect Productivity Programming Prometheus Puppeteer Pushover Python Pytorch Quarkus Rabbitmq RAG Ramda Raspberry Pi React React Native Reactor Redis REST API Revolut Riverpod RProgramming Ruby Ruby on Rails Rust Scalene SCDB ScyllaDB Selenium Servers Sklearn SLO SnowFlake Snowkase Software Architecture Software Development Solara Solid Spring Boot SQL SQLite Streamlit SudoLang Supabase Swift SwiftUI Tailwind CSS Taipy Terraform Testing Transformers TURN TypeScript Ubuntu UI Design Unix UX UX Design Vim Vite VSCode Vue Web Architecture Web Components Web Development Web Frameworks Web Scraping Web-разработка Webassembly Websocket Whisper Widgets WordPress YAML YouTube Zed Наука о данных Разное Тренды

Современный подход к разработке с использованием Next.js