врівноваження будівельної гри


10

Я працюю над будівельною грою (звичайною, будуйте будинок X для отримання ресурсу A, який потім дозволяє будувати будинок Y ...), і я зараз перебуваю на стадії збалансування різних потреб і виробничих ресурсів.

Оскільки я, безумовно, не перша людина, яка займається цим, але не могла знайти практичних порад щодо того, як насправді це зробити, я запитую навколо: як зробити балансуючу математику?

Я думав про використання електронної таблиці, але головне питання не в чистих числах, а в залежностях - якщо A тоді B. Скільки X потрібно, щоб Y став доступним і чи відповідає це стадії гри, я хочу це статися?

Які кращі способи, ніж просто грати годинами та налаштовувати числа, існують? Які підходи ви використовуєте, щоб збалансувати свої економічні ігри?


Додаткові дані:

Гра - це статична гра build-your-village. "статичний" означає, що час не є фактором - будівлі надають фіксовану кількість ресурсів, а не "х на хвилину". Таким чином, будинок забезпечує житло для деяких селян, а господарство потребує деяких селян для роботи, забезпечуючи продуктами харчування.

Тож речі, які потрібно балансувати один одному, - це ресурси. Один тривіальний приклад: фермерським господарствам потрібно забезпечити більше їжі, ніж селяни, які працюють у господарстві, плюс дроворуби, необхідні для забезпечення дровами для побудови ферми.

Мета гри - оптимізація ресурсів. Досягнення максимальної кількості ресурсів, наявних на карті. Це ближче до головоломки, ніж до гри-клікеру.

Тривіальні елементи ранньої гри (див. Приклад ферми) легко балансувати. Але як тільки ви потрапляєте в дерева залежностей (наприклад, будинок 3-го рівня потребує A і B, які надаються X і Y, яким потрібні ресурси, створені в X2 і Y2, і т.д.), моя інтуїція не вдається. Чи правильно збалансовані X2 та Y2 чи вони повинні виробляти менше? більше?

Я шукаю не конкретні відповіді, а методи загального підходу до цієї проблеми.


2
Баланс - це питання про те, які входи дають бажані результати. Для того щоб запропонувати метод / робочий процес, щоб збалансувати вашу гру, ми повинні знати, які саме бажані результати. Що характеризує "добре збалансовану" версію вашої гри, або які симптоми "поганого балансу" ви намагаєтесь виявити та усунути?
DMGregory

Основна мета зараз - переконатися, що жодних ресурсів не надто легко або занадто важко досягти. #
Том

1
І як слід вимірювати "занадто легко" чи "занадто складно"? Оскільки в цих умовах немає стандартного математичного визначення, вам потрібно буде розпакувати, що це означає для ігрового досвіду, який ви хочете створити.
DMGregory

Я прошу загальну пораду, а не конкретну шкалу. Точні цифри все одно зміниться під час тестування. Тож у мене немає точного визначення поняття "занадто легко".
Том

1
@Том тут також чудова промова GDC на цю тему youtube.com/watch?v=tR-9oXiytsk
відвертий місяць _Max_

Відповіді:


7

EDIT: Оскільки ви додали до свого запитання, що ресурси статичні, я розповім про це трохи. Попередню відповідь я залишу під рядком, оскільки це може бути корисним іншим.

Якщо ваші ресурси статичні, у них може бути якийсь обмежуючий фактор. Це можуть бути ваші вихідні ресурси або кількість працівників, які визначають, скільки генераторів ви можете підтримувати. Їх потрібно розподілити таким чином, щоб їх примножувати та вкладати в інші ресурси досить ефективно, щоб досягти вашої мети. У такій грі насправді немає «зростання», а лише різних конфігурацій та комбінацій. Як ви сказали, це більше нагадує головоломку, ніж керуючу гру.

Спосіб балансування, хоча, схожий. Спочатку ви визначаєте умову виграшу (те, що я раніше називав виробничою ціллю). Це може бути певна кількість ресурсів та / або будівель (наприклад, мають X вільних робітників та X мечів, щоб їх озброїти, щоб скинути короля). Далі обчисліть ідеальну конфігурацію, щоб досягти цієї мети за допомогою ваших нинішніх чисел (наприклад, X мечам потрібні Y кузні, яким потрібні робітники Z, Q вугілля та V залізо, а значить, вам потрібні шахти W і R пальники вугілля, для чого знову потрібні ресурси та робітники та так далі до самих основних ресурсів). Ви можете частково автоматизувати це за допомогою скрипту або електронної таблиці, яка автоматично додає мінімальну кількість підтримуючих генераторів для всього, що ви додаєте вручну. Остерігайтеся петель (робітники приходять з будинків, будинки потребують їжі, їжа надходить від робітників), оскільки вони дуже ускладнюють математику.

Далі, і цей крок трохи складніше, дізнайтеся, чи можна дійсно досягти цієї конфігурації в програванні вперед, тобто чи зможете ви потрапити туди зі своїх вихідних ресурсів. Можливо мати теоретичну кінцеву конфігурацію, якої неможливо досягти на практиці, тому що в якийсь момент кілька речей вимагають одна від одної, і ви не зможете спочатку побудувати жодну з них, не маючи іншої. Ви можете дізнатися про це лише за допомогою тестових порад. Іншими словами, оскільки замовлення, в якому ви купуєте речі, є релевантним, ви не можете ідеально зробити висновок про результат. Тим не менш, як ви, швидше за все, зрозумієте свої власні методи управління ресурсами, ви повинні мати можливість використовувати оптимальні стратегії (наприклад, будувати будинки першого рівня, використовувати тих працівників, щоб розблокувати будинки рівня 2, які є більш ефективними, потім замініть всі будинки першого рівня (або залиште стільки, скільки у вас є ресурсів, які ви не можете використовувати більше ніде). За необхідності додайте або видаліть будівлі. Тепер у вас є нова розробка рішення, над яким ви знаєте, що працює.

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

  • Числа, які виділяються або не мають сенсу, тому що рішення роблять рішення неінтуїтивним і важче знайти (наприклад, вам потрібно 200 мін, але лише один пальник для вугілля для підтримки печі).
  • Цифри, які прямо пропорційні, але в дивних співвідношеннях (наприклад, одна млина підтримує рівно 3 791002 хлібопекарських виробів, що виробляють достатньо для 21452 будинків у кожній), тому що це буде дратувати гравців, які люблять викладати все, щоб точно вийти. Такі співвідношення можуть бути неминучими, якщо для декількох ресурсів потрібен один і той же ресурс, або навпаки, або тому, що ви хочете трохи перекрити, оскільки точні цифри дуже легко зрозуміти, скільки вам потрібно.
  • Протилежний напрямок: надто прості числа. Якщо ви можете просто купити 1 або 2 усього, і номери вишикуються, це занадто просто. Введіть невеликі навіси з простими числами (одна будівля дає 5, наступна потреба 4 або навпаки) і зробіть, щоб кілька речей вимагали одного і того ж ресурсу в різних кількостях.
  • Числа, які непотрібно великі. У вас повинно бути лише велика кількість, якщо це один з основних ресурсів, який використовується так багато інших будівель, що виробництво високого рівня вимагає так багато. Якщо ви можете розділити всю виробничу лінію на натуральне число, ймовірно, зробіть це.

Потім подумайте, наскільки суворо ви хочете, щоб ваші гравці дотримувалися вашого рішення. Напевно, доцільно включити сюди трохи гнучкості, а це означає, що ваші вихідні ресурси (обмежуючі фактори) повинні бути трохи щедрішими, ніж вони повинні бути для ідеального рішення. Також подумайте, яким саме завданням повинна стати ваша гра. Якщо мова йде про пошук правильних комбінацій, це може бути занадто просто, оскільки їм, можливо, доведеться лише будувати шлях до технологічного дерева та трохи збалансувати кількість. Якщо мова йде про невеликі хитрощі (як, наприклад, заміна будівель нижнього рівня на більш ефективні вищі яруси), то це може бути абсолютно непомітним, а з іншого боку - тривіально, коли ви дізнаєтесь, що можете це зробити - вам знадобиться кілька таких хитрощів відкривати.


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

Ваші змінні будуть приблизно такими, як кількість кожного ресурсу, кількість генераторів ресурсів, приріст ресурсів за один раз на генератор, використання ресурсів за один раз на генератор (ці два можна комбінувати за допомогою від'ємних чисел), вартість ресурсу на генератор та витрачений час. Якщо ваша гра включає щось на кшталт ефективності генератора (наприклад, ферми виробляють більше / менше залежно від зрошення / простору), приймайте середнє значення, і де це має сенс, також припускайте середнє значення генераторів. Останнього можна досягти, обчисливши мінімальну кількість генераторів для створення стабільного виходу ресурсу найвищого порядку (наприклад, якщо ви розраховуєте мечі, яким потрібно залізо, яке потребує руді та вугілля, яке потребує пиломатеріалах, ви можете розрахувати мінімальну кількість шахт,

Від того, чи будете ви залишатися на мінімальному рівні, залежить від норми амортизації генераторів, але я б уникав того, щоб опустити цю кролячу нору. Можливо, зробіть другий розрахунок після цього вдвічі більше і подивіться, як масштабується термін. Якщо у вашій грі є щось на кшталт дослідницьких розблокувань, ви також можете розібратися в одноразовій вартості їх, але робити це лише в тому випадку, якщо вартість досить висока, щоб помітно змінити час гри. Не намагайтесь нарахувати на оновлення, що збільшують темпи виробництва зараз - якщо у вашій грі є їх, просто враховуйте їх як більш високий середній темп виробництва. Тільки оновлення, які мають велику різницю, повинні мати місце у ваших рівняннях. Ви хочете збалансувати гру, а не написати дисертацію з математики. Замініть всі змінні константами куди завгодно.

Тепер встановіть виробничу мету, яка представляє успіх гравця, і вирішіть рівняння, скільки часу потрібно, щоб потрапити туди. Якщо ви все ще не маєте номерів для всіх цих речей, час від часу поверніть інженеру, працюючи вперед. Скільки часу гравцеві доведеться працювати, щоб отримати стабільні виробничі лінії першого рівня, скільки часу до рівня 2 до повного технологічного дерева. Працюючи вгору, ви вже маєте номери для передумов вищих рівнів.

Після цього ви можете спробувати і експериментувати із зовнішніми факторами, такими як простір та місцевість. Зазвичай це специфічна місія, тому вони є настільки ж частиною рівня дизайну, як і проектування систем.

Тепер, як довго гравцеві потрібно щось досягти, щоб гра займалася, це те, що вам потрібно буде грати, і це дуже залежить від того, скільки гравцеві потрібно робити під час гри і наскільки цікаві рішення, які вони приймають буде відчувати. Ось де ви можете розглянути можливість зміни своїх номерів, наприклад, зменшивши виробництво деяких генераторів, щоб збільшувати дії гравців за раз (тому що вони зараз мають будувати більше), або зробивши номери недосконалими, так що не так ясно, скільки будівлі ідеальні.

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


Приємно, ви опублікували таку гру, чи працюєте над нею?

@JimmySmith Ні, я просто любитель ігрового дизайну з особливим інтересом до дизайну систем. Я здогадуюсь, невеликий приріст, над яким я працюю, вважається такою грою? Я насправді в основному розробляю настільні рольові ігри.
Пахлаван
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.