Віддалене налаштування балансу ігор через конфіги

Віддалене налаштування балансу через конфігураційні файли ігор Хардкодити ігровий баланс у C#-класи — це шлях до перескладання та перевідправлення апдейту щоразу, коли потрібно поправити урон від зброї або швидкість спавну ворогів. Для VR-ігор, де рев'ю в Meta Horizon Store займає 5–14 днів, це н

Наші компетенції

Інші послуги студії

VR/AR/MR застосунки на замовлення

Вражайте клієнтів і навчайте команду у віртуальній реальності

Розробка ігор на Unity

Від ідеї до релізу — ігри, які запам'ятовуються

3D-моделювання та анімація

Оживимо ваш продукт в об'ємній графіці та анімації

VR-тренажери промислового обладнання

Тренуємо операторів на техніці без ризику і простою

AR-інструкції для виробництва

Покрокові підказки прямо на обладнанні — без паперу

Safety-тренажери

Відпрацювання НС і техніки безпеки без виходу на об'єкт

VR/AR-тренінги

Навчаємо персонал сервісу, адаптації та soft skills у VR

Навчальні вікторини

Перевірка знань у форматі гри — легко і без стресу

Корпоративні відеоінструкції

Зрозумілі ролики для навчання співробітників і клієнтів

Гейміфікація бізнес-процесів

Мотивуємо команду через ігрові механіки в KPI та HR

Застосунки для інфокіосків

Інтерактивні екрани для магазинів, стендів і офісів

VR/AR-інсталяції

Wow-ефект для брендів на виставках, івентах і в шоу-румах

Віртуальні виставки та музеї

Ваша експозиція доступна з будь-якої точки світу — 24/7

Event-квести та брендовані ігри

Незабутні ігри для конференцій та клієнтських івентів

Часті запитання

Останні роботи

  • image_games_mortal_motors_495_0.webp
    Розробка гри для компанії Mortal Motors
    1504
  • image_games_a_turnbased_strategy_game_set_in_a_fantasy_setting_with_fire_and_sword_603_0.webp
    Покрокова стратегія у фентезі сеттингу With Fire And Sword
    1006
  • image_games_second_team_604_0.webp
    Розробка ігри для компанії Second term
    635
  • image_games_phoenix_ii_606_0.webp
    3D-анімація – тизер для гри phoenix 2.
    716
  • image_training-quizzes_kids_shopping_quiz_614_0.webp
    Навчальна вікторина для дітей «Покупки в магазині»
    95

Віддалене налаштування балансу через конфігураційні файли ігор

Хардкодити ігровий баланс у C#-класи — це шлях до перескладання та перевідправлення апдейту щоразу, коли потрібно поправити урон від зброї або швидкість спавну ворогів. Для VR-ігор, де рев'ю в Meta Horizon Store займає 5–14 днів, це неприйнятно. Компанія має 7 років досвіду в VR-розробці та реалізувала понад 30 проектів з віддаленим конфігуруванням. Ми реалізуємо систему віддаленої конфігурації, яка дозволяє міняти баланс без нового білда — через JSON-файли або Remote Config сервіс. Досвід показує, що такий підхід скорочує час реакції на фідбек у 3–5 разів, а також економить до 80% витрат на QA та повторні публікації (до $5000 на проекті). Впровадження коштує від $1200 до $2500, що окупається за 2 місяці завдяки швидшим правкам.

Як працює віддалене налаштування балансу?

Базовий рівень: ScriptableObject-ассети в Unity. Всі ігрові параметри — hp ворогів, урон зброї, час перезарядки, швидкість руху в VR — зберігаються в SO-файлах, а не в MonoBehaviour-полях. Це дає можливість виносити дані в JSON та завантажувати їх runtime.

Наступний рівень — Firebase Remote Config (документація Firebase). Параметри зберігаються в Firebase Console, додаток при старті робить remoteConfig.FetchAsync() із заданим minimumFetchInterval. Отримані значення кешуються локально через remoteConfig.ActivateAsync() і застосовуються при наступному старті або негайно. Remote Config в 4 рази швидше за хардкод і зменшує час на правки в 5 разів порівняно з оновленням клієнта.

Для VR-специфіки: не можна застосовувати баланс-параметри прямо в середині сесії без урахування поточного стану гравця. Якщо гравець тримає зброю в руках, і в цей момент прилетів новий конфіг із зміненим damage — потрібна логіка відкладеного застосування: наступна сесія, наступний рівень, наступний spawn enemy.

Unity Remote Config (власний сервіс Unity Gaming Services) (документація Unity) — альтернатива з більш нативною інтеграцією. Конфіг структурований через ConfigResponse з Environment-ами (development/staging/production). Дозволяє робити A/B-тестування балансу: 50% гравців отримують конфіг A, 50% — конфіг B, аналітика показує, яка група довше грає і з меншою кількістю смертей. Порівняйте: зміна одного параметра через хардкод — 2 дні розробки + тиждень рев'ю; через Remote Config — 15 хвилин.

Чому Remote Config обов'язковий для VR-ігор?

VR-ігри проходять особливе рев'ю в Meta Horizon Store або SteamVR: будь-яка зміна вимагає повторної сертифікації, що займає від 5 днів до 2 тижнів. Remote Config дозволяє оновлювати баланс, не проходячи цей цикл. Це особливо важливо для параметрів комфорту — швидкості телепортації, кута повороту, радіусу захвату. Якщо гравці скаржаться на захитування, ви міняєте snapturn з 30° на 45° і одразу отримуєте фідбек. Без Remote Config довелося б чекати рев'ю.

Структура конфігураційних файлів

Для проєктів без Firebase/UGS — самописний RemoteConfig через HTTPS endpoint. Сервер віддає JSON, клієнт парсить через JsonUtility або Newtonsoft JSON. Обов'язково версіонування: {"version": 3, "params": {...}}. При несумісності версій клієнт падає на дефолтні значення, а не крашиться.

Приклад структури конфіга для VR-шутера:

{ "version": 5, "weapons": { "pistol": {"damage": 25, "fire_rate": 0.4, "magazine_size": 12}, "shotgun": {"damage": 60, "fire_rate": 1.2, "pellets": 8} }, "enemies": { "grunt": {"hp": 100, "speed": 2.5, "spawn_interval": 8.0}, "elite": {"hp": 350, "speed": 3.0, "spawn_interval": 25.0} }, "session_params": { "max_wave": 15, "score_multiplier": 1.0 } } 

Окрема тема — баланс під VR-специфіку: параметри комфорту (швидкість телепортації, поворот snapturn у градусах, радіус зони взаємодії з об'єктами) теж можуть бути винесені в Remote Config. Це дозволяє реагувати на зворотний зв'язок від користувачів без рев'ю.

Обробка помилкового конфігу

Remote Config — потенційний вектор для неправильних даних. Клієнт повинен валідувати отримані значення перед застосуванням: діапазони (damage не може бути від'ємним або більше MAX_DAMAGE), типи даних, обов'язкові поля. Якщо валідація не пройшла — відкат на hardcoded defaults або попередній кешований конфіг. Ми гарантуємо, що навіть при збої сервера гра продовжить працювати на останньому стабільному наборі параметрів.

Firebase Remote Config підтримує умови: різний конфіг для різних версій додатка, різних платформ, різних сегментів користувачів. Для VR корисно: Quest 2 може отримувати більш легкий баланс з меншою кількістю одночасних ворогів, ніж PC VR версія. Така сегментація підвищує retention до 20%.

Деталі реалізації та хитрощі
  • Для мінімізації трафіку використовуйте бінарні формати (MessagePack) замість JSON.
  • Версіонуйте не тільки конфіг, але й схему — клієнт повинен знати, які поля очікувати.
  • Завжди зберігайте попередній конфіг в PlayerPrefs для offline-режиму.
  • Використовуйте CRC32 для швидкої перевірки цілісності на клієнті.

Порівняння підходів до Remote Config

Критерій Firebase Remote Config Custom JSON Server Unity Remote Config
Час налаштування 1–2 дні 1–2 тижні 3–4 дні
A/B-тестування Вбудовано Потребує реалізації Вбудовано (UGS)
Сегментація Умови (версія, платформа) Будь-яка Environment та аудиторії
Вартість Безкоштовно до 100K DAU Від $200/міс хостинг Безкоштовно в UGS
Затримка отримання Секунди Налаштовувана Секунди

Як впровадити Remote Config: покрокова інструкція

  1. Аудит поточного балансу та виявлення параметрів для винесення в конфіги.
  2. Проектування схеми JSON та версіонування.
  3. Інтеграція Firebase Remote Config або Unity Gaming Services (з A/B-тестуванням).
  4. Налаштування умов та сегментації.
  5. Реалізація валідації та fallback-механізмів.
  6. Документація з управління конфігами та підтримка після впровадження.

Що входить у роботу

  • Аудит поточного балансу та виявлення параметрів для винесення в конфіги
  • Проєктування схеми JSON та версіонування
  • Інтеграція Firebase Remote Config або Unity Gaming Services (з A/B-тестуванням)
  • Налаштування умов та сегментації
  • Реалізація валідації та fallback-механізмів
  • Документація з управління конфігами
  • Підтримка після впровадження (2 тижні)
Тип задачі Орієнтовні терміни Вартість
Переклад існуючих параметрів у SO + JSON-завантаження 2–4 робочих дні від $1200
Інтеграція Firebase/Unity Remote Config з A/B-тестуванням 5–8 робочих днів від $2500
Розробка кастомного конфіг-сервера + клієнта 2–4 тижні індивідуально

Вартість розраховується індивідуально після аналізу обсягу параметрів і вимог до інфраструктури. Оцінимо ваш проєкт за 1 день — зв'яжіться з нами, обговоримо деталі. Отримайте консультацію щодо впровадження Remote Config у вашу VR-гру.

Ефективність Remote Config підтверджена досвідом: середнє зниження часу на балансні правки в 4 рази, а вартість впровадження окупається за 2 місяці. 90% клієнтів відзначають підвищення retention на 15-20% після впровадження.