Создание математической модели экономики игр
Когда игрок на третьем часу сессии перестаёт тратить золото — не потому что не хочет, а потому что копить выгоднее — это не случайность. Это сломанная кривая кривая инфляции. И обнаруживается она не в плейтесте, а в таблице: если посчитать income/expenditure ratio по уровням прогрессии, точка накопления видна задолго до релиза.
Что такое математическая модель экономики игры
Это набор формул, таблиц и симуляций, описывающих: как игрок зарабатывает ресурсы (gold, XP, материалы, энергию), как тратит их, и как эта динамика меняется с прогрессией. Модель строится в электронных таблицах (Google Sheets или Excel) и проверяется симуляцией до того, как эти цифры попадают в ScriptableObject или базу данных.
Ключевые параметры, которые модель должна описывать: earn rate (ресурсов в минуту активной игры), burn rate (расход на апгрейды, покупки, потери), time to next milestone (сколько времени до следующего значимого улучшения), inflation index (отношение ценности раннего ресурса к позднему).
Формульная база: кривые прогрессии
Три базовых типа кривых для XP и стоимости апгрейдов:
Линейная: cost(n) = base + n * step. Предсказуема, но быстро становится незначимой — разница между уровнями 50 и 51 ощущается так же, как между 1 и 2.
Экспоненциальная: cost(n) = base * multiplier^n. Типично для мобильных игр. При multiplier = 1.15 и 100 уровнях последний апгрейд стоит в 1174 раза дороже первого. Без источников позднего дохода игрок упирается в пейволл.
Полиномиальная: cost(n) = a * n^2 + b * n + c. Золотая середина для PC/console: рост ускоряется, но не экспоненциально. Коэффициенты a, b, c подбираются под желаемое время между апгрейдами.
На практике стоимость апгрейдов редко берётся из одной формулы — используется ступенчатая модель: первые 10 уровней по линейной, затем переключение на полиномиальную, после «prestige» точки — сброс с бонусным мультипликатором. Это создаёт ощущаемые «главы» прогрессии.
Симуляция сессий
Одна таблица — это статика. Симуляция — это динамика. В Google Sheets строится «бот»: ячейки, которые каждые 10 минут игрового времени вычисляют, сколько ресурсов заработано, что куплено по алгоритму оптимального поведения игрока, каков баланс. Прогоняется на 40 часов геймплея.
Типичные находки симуляции: ресурс B копится быстрее, чем тратится, начиная с часа 8 — значит, нужно либо добавить sink (трату), либо уменьшить earn rate. Или: игрок достигает «потолка» апгрейдов в час 12 при планируемом 20 — кривая стоимости задрана слабо.
Монетизационные механики и их математика
F2P игры строят экономику вокруг двух валют: hard currency (за реальные деньги) и soft currency (фармится). Критически важно, чтобы конвертация hard → soft не нарушала баланс для бесплатных игроков. Проверяется через paying player advantage index: если платящий игрок за $10 получает эквивалент 40 часов фарма, это агрессивная монетизация; 10–15 часов — умеренная.
Energy/stamina системы математически описываются как leaky bucket: наполнение со скоростью regenRate до maxEnergy, трата при действиях. Оптимальный maxEnergy — такой, чтобы среднестатистическая сессия (20–30 минут) потребляла 70–80% от максимума. Меньше — игрок заканчивает с запасом и возвращается реже. Больше — сессия обрывается на полуслове, что раздражает.
Инструменты и интеграция с игрой
Итоговые таблицы значений экспортируются в CSV и импортируются в ScriptableObject через кастомный AssetPostprocessor или Editor скрипт. Это исключает ручной перенос цифр и связанные ошибки. При изменении баланса дизайнер правит таблицу, экспортирует CSV, Unity автоматически обновляет ассеты.
Для runtime-аналитики встраивается логирование ключевых экономических событий: ResourceEarned, ResourceSpent, UpgradePurchased с метаданными (уровень игрока, источник ресурса, время сессии). Данные уходят в аналитическую систему (GameAnalytics, Amplitude, или собственный pipeline). Через неделю после мягкого запуска видно реальное поведение игроков против смоделированного.
Ориентировочные сроки
| Задача | Срок |
|---|---|
| Базовая модель прогрессии (одна валюта, XP, 30 уровней) | 3–7 дней |
| Полная модель (несколько валют, крафт, монетизация) | 2–4 недели |
| Модель + симуляция сессий + аналитика интеграция | 4–8 недель |
Типичные ошибки при проектировании
Симметричные источники и стоки. Если каждый квест даёт 100 золота и каждый апгрейд стоит 100 золота, у игрока нет причины приоритизировать что-либо. Разнообразие источников и стоков создаёт интерес к распределению ресурсов.
Неучтённый «эффект накопления». Игроки, которые пропустили несколько дней, возвращаются с переполненными ресурсами и несколькими уровнями апгрейдов за раз. Если это не заложено в модель, их прогресс резко нарушает баланс мультиплеерной экономики.
Инфляция без сброса. В долгоживущих онлайн-играх без sink-механик (налоги, порча предметов, крафт с расходом) soft currency накапливается у старых игроков до уровня, который делает бессмысленным фарм для новых. Периодические события-синки или сезонные сбросы — стандартное решение.





