Как стать автором
Обновить

Игровая экономика Premium игр на примере PC 4х стратегии

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров8.1K

Как спроектировать экономику для вашей игры? Это вопрос, ответ на который может занять небольшой цикл лекций или статей. Принципиальная разница в подходе основана в первую очередь на модели монетизации: F2P или B2P. Второе, что определяет подход к разработке экономической системы - жанр игры. В этой статье мы рассмотрим кейс проектирования игровой экономики B2P (premium) игры, не предполагающей заработка с микротранзакций.

Константин Сахнов

геймдизайнер

Рис. 0. Мортариэль, богиня смерти из игры автора (Shadows of Vengeance)
Рис. 0. Мортариэль, богиня смерти из игры автора (Shadows of Vengeance)

Определения

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

По балансу ресурсов экономика делится на:

  1. Профицита - ресурса дают больше, чем нужно

  2. Баланса - ресурса дают столько, сколько игрок потратит

  3. Дефицита - ресурса дают стабильно меньше нужного

Думаю, не нужно пояснять, что практически любой F2P проект имеет экономическую модель, основанную на дефиците того или иного ресурса. Но это тема отдельной статьи. В премиум PC и консольных играх такое деление также имеет место быть. Мой любимый пример - игры серии Resident Evil и Dead Space. Дефицит ресурсов сдвигает не только баланс, но всё ощущение от геймплея и чуть ли не весь жанр в хоррор. В то время как профицит патронов и аптечек делает его скорее увлекательным экшеном.

С точки зрения обмена ресурсами экономика делится на:

  1. Закрытую - свободного обмена ресурсом между игроками нет.

  2. Открытую - можно торговать и обмениваться неким ресурсом.

С чего начать

С игрового цикла. Экономика - это математическая модель с формулами и потоками ресурсов, и чтобы её спроектировать, сначала необходимо знать все игровые механики. Проектирование игровых циклов - это отдельная огромная задача. Но часть её - это экономический цикл. Давайте посмотрим на примере.

Рис. 1. Экономический цикл 4x стратегии Shadows of Vengeance
Рис. 1. Экономический цикл 4x стратегии Shadows of Vengeance

Что мы видим на UML-диаграммы:

  • Серым - игровые механики и сущности.

  • Фиолетовым - сцены, отличные от главной (поверхность планеты).

  • Зелёным - ресурсы.

  • Бежевым - объекты на поверхности.

4х стратегия - это очень сложный жанр. На экономической схеме не изображено множество механик, участвующих в экономическом цикле, но не оказывающих на него ключевого влияния: квесты, случайные события, исследование локаций, аномалии и т.д. Если попытаться изобразить всё диаграмма получится перегружена. Поэтому фокусируемся только на самых важных элементах экономики.

Ресурсы - основа экономики

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

Мы также видим, что в игре есть ресурсы второго уровня - продвинутые. Зачем они нужны? Вы можете ответить на этот вопрос, что судя по схеме они нужны для улучшения построек и терраформирования планеты. Это абсолютно верно, но это следствие. Базовая задача - интересный геймплей. Мы могли бы просто создать больше базовых ресурсов и часть отдать на одни постройки, часть на другие. Но ресурсы второго уровня - это аналог механики крафта. Вспомните крайне успешную инди-стратегию Against the Storm.

Рис. 2. Скриншот игры Against the Storm
Рис. 2. Скриншот игры Against the Storm

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

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

  1. Базовые - добываются легко, чаще всего профицитные.

  2. Продвинутые - производятся из базовых или более сложной добычей.

  3. Лимитированные - ограничивают механики, зависящие от экономики, к примеру боёвку.

  4. Особые - выполняют конкретную узкую задачу.

Так, на примере Цивилизации Сида Мейера можно сказать, что очки культуры, веры, науки, еда, деньги и производство - это базовые ресурсы. Их обычно всегда хватает и их производство чаще всего постоянно растёт. Продвинутыми у них являются ресурсы роскоши, которые увеличивают счастье населения. Лимитированными - редкие ресурсы, необходимые для создания армии. К особым можно отнести шкалы лояльности города, количество доступных корпораций (в базовой версии цивы 6 корпораций нет) и т.д.

Аналогичную работу можно проделать на примере большинства 4х стратегий, допустим, Endless Space II. Здесь вы также найдёте полный набор.

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

И так общий принцип работы с ресурсами в premium стратегиях:

  • Выделяем базовые ресурсы, которые скорее всего будут даваться в профиците или балансе.

  • Составляем список механик, потребляющих и производящих базовые ресурсы.

  • Составляем список механик, зависящих от экономики, но которые не должны улететь в космос, когда экономика разрастётся.

  • Завязываем их на лимитированные ресурсы, а не только на базовые.

  • Если стратегия с уклоном на долгие медленные сессии и тактику, удобно ввести вторичные - продвинутые ресурсы.

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

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

Ещё один важный момент - это логические типы ресурсов. Они могут быть:

  1. Валюта - можно получать, можно тратить, обычно значение валюты больше или равно нулю, может быть дробным

    1. Пример: золото

  2. Ресурс - можно получать, можно тратить, значение целочисленное, не может быть отрицательным

    1. Пример: брёвна

  3. Шкала - имеет минимум и максимум или хотя бы один из этих лимитов, часто имеет размерность (градусы, проценты, доли, g и т.д.)

    1. Пример: запас кислорода

Мне обычно хватает описанных выше, но в некоторых случаях появляются более уникальные типы ресурсов.

Математическая модель

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

Рис. 3. Формула расчёта базовых ресурсов в начале хода
Рис. 3. Формула расчёта базовых ресурсов в начале хода

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

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

И так у нас 3 базовых ресурса, а значит в каждой зоне логично построить хотя бы 3 постройки, потребляющих по 1 каждого и 1 духовной энергии, чтобы произвести 1 продвинутого ресурса. Масштаб производства в единицах был выбран для удобства игрока. Также в нашей игре можно улучшать здания, и после улучшения они будут производить и потреблять больше ресурсов. А значит одна зона с 6 жителями потребляет 3 + 3 = 6 духовной эссенции. Получилось удобно: 1 житель в среднем должен производить 1 духовной эссенции в ход. Постоянно сражающиеся орки не успевают молиться, а значит будут отдавать меньше эссенции и больше душ, умирая в боях, а более набожные эльфы будут возносить вам хвалы и умирать пореже. Но в среднем прирост душ и эссенции будет в районе 1 в ход с каждой единицы населения.

Наша следующая задача - понять масштаб заряда шкалы генератора. Это вообще сколько? От -100 до 100? Логично взять за начало 0. Осталось найти максимум. Возьмём в качестве вводного допущение, что мы хотим, чтобы генератор зарядился полностью к середине игровой сессии. В нашем случае мы планировали сессию в примерно 200 ходов, значит максимум будет в районе 100 хода. Сколько душ создаст население к этому моменту?

Если в начале в зоне живёт 1 населения, а средняя скорость прироста 1 в 10 ходов (орки быстрее, эльфы чуть медленнее), то в первые 10 ходов 1 населения будет давать по 1 душе в ход. В следующие 10 ходов, когда родится вторая единица, мы будем получать по 2 души в ход и т.д. до 100 хода. Получаем арифметическую прогрессию:

souls = 1 * 10 + 2 * 10 + ... + 9 * 10souls = 10 * \displaystyle\sum_{i=1}^{10} i = 10 * \frac{1 + 10}{2} * 10 = 550

Получаем, что максимальный заряд генератора должен быть в районе 550. Для удобства игрока округлим до 500.

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

  • Установить масштаб величин: сколько будет производство при минимуме шкалы и сколько при максимуме.

  • Каков будет характер зависимости производства от заряда.

Для удобства я взял значения:

  • при заряде 4 производится 2 нано-роя.

  • при заряде 128 производится 7 роя.

Думаю, те, кто знаком со степенями двойки, уже поняли, что в качестве кривой, определяющей характер зависимости, я решил взять логарифм по основанию 2. Посмотрев, что мы получим при полном заряде генератора (500), я понял, что хочу видеть цифры чуть больше. Логарифм подходим в данном случае, т.к. он решает сразу несколько задач:

  • в начале производство роя легко увеличить;

  • чем дальше мы хотим нарастить его, тем сложнее;

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

Рис. 4 Сравнение логарифмов по основанию 2 и 1,75
Рис. 4 Сравнение логарифмов по основанию 2 и 1,75

Немного поиграв с цифрами, я нашёл подходящий коэффициент: основание логарифма стало 1,75 вместо 2.

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

Плейтесты

Уверен, вы обратили внимание, что выше я сделал ряд допущений. К примеру о том, что хочется зарядить генератор полностью примерно к 100 ходу. Такие допущения называют вводными. Без них практически невозможно спроектировать игровую систему. Почему добытчик 1 уровня производит за ход 1 ресурса? Да просто потому что это число показалось геймдизайнеру удобным для расчётов и понятным для игрока. Таким образом мы задали масштаб всей экономики, осознанно или не очень. К слову, как преподаватель я много рассказываю про проектирование экономики игр, в частности на вот этой программе.

Точно также мы подбираем коэффициенты прогрессии: прирост населения на 1 за 10 ходов, среднюю стоимость здания в 5 единиц ресурса, коэффициент 1,75 в логарифме производства нано-роя… Всё это - тоже допущения. И их называют коэффициентами баланса экономики.

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

Чтобы убедиться, что спроектированная нами в теории экономика работает, есть лишь один способ, - реализовать её в игре. И очень много играть, чтобы самому отработать максимум ситуаций, с которыми может столкнуться игрок.

Общий принцип баланса здесь прост. Если модель работает, то все элементы, которые нас не устраивают в игре, мы тюним изменением коэффициентов. Отыгрывает снова и решаем, нужно ли подстраивать дальше. Не стоит менять сами формулы, ломать логику и особенно добавлять новые сущности, усложняющие экономическую модель, пока вы не убедитесь, что дело не в плохо подобранных коэффициентах. Если текущая модель не работает, почему усложнённая модель с добавлением будет работать, а не станет просто затычкой? Признаюсь, в своей работе геймдизайнеры, и я тоже, поджимаемые сроками и бюджетами, часто вставляют затычки там, где нужно было дольше тестировать баланс. Это простительно для небольших студий, по рукам и ногам связанных инвесторами. Но когда мы видим такие проблемы в ААА играх с огромными бюджетами и сроками, возникает вопрос: может быть этого можно было избежать?

Инструментарий

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

Большинство, наверняка, знает про Miro, Figma и другие сервисы, где удобно рисовать диаграммы игрового процесса. Но вот про сервисы проектирования экономики обычно знают мало.

Не могу не порекомендовать https://machinations.io/ - онлайн платформу, где вы можете сделать свою экономическую модель. Мне удалось спрототипировать там не всё, но многие вещи, в частности тестирование с учётом рандома, делать там очень удобно.

Рис. 5. Пример ресурсной модели из Machinations
Рис. 5. Пример ресурсной модели из Machinations

Подписывайтесь, чтобы не пропустить новые статьи по геймдизайну и разработке игр. Спасибо!

Теги:
Хабы:
Всего голосов 14: ↑12 и ↓2+11
Комментарии5

Публикации

Истории

Работа

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
10 – 11 октября
HR IT & Team Lead конференция «Битва за IT-таланты»
МоскваОнлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн