Comments 38
Второе — делаем видео/ стрим «lowlife-берсеркер гнёт всех»
Третье — смотрим, затопило ли форум слезами от разбойников, которые в среднем живут хуже и танков, которые не наносят повреждений по сравнению с берсеркерами.
Таких ленивых — большинство, в результате, когда находится вариант, который сильнее — на серверах половина бегает за самый сильный класс в самом сильном билде, а остальные ноют на форумах про дисбаланс и просят нерфов.
Хотя, возможно в этом и цель геймдизайнеров — усиливать малопопулярные классы в одном патче, чтоб ослабить в следующем: да, будут тонны нытья, зато игрокам не скучно.
Другое дело, если к примеру поставить такой баланс, при котором даже у хиллера есть шанс в сражении 1 на 1, только нужна будет другая стратегия: обвешаться бафами, накладывать безмолвие, выхиливать большое количество урона ограниченное количество раз, накладывать дебаф на крит. Игра мечты просто.
По поводу бафов классов, когда то Метелица могла несколько лет подряд не менять особо в механике класса ровным счётом ничего. Помню даже пробег голых гномов во имя справедливости, на который компания положила. Возможно так они видели игру, да и за отсутствием явной соревновательной системы это было ни к чему, было просто обидно.
Но это уже не столько проблема баланса, сколько гейм-дизайна в принципе.
Это автоматом повышает требования к «прямоте рук», а на самом деле к тому, чтобы ДУМАТЬ быстро и наперёд, и реализовать дамаг -не дохнуть.
Поэтому те, кто взял дамагеров, очень быстро расслоятся на 15% нагибаторов, ещё 20-30% тех кто хочет и учится, и остальную часть «крабов».
В случае WoW и других игр с развитым PvE процент смещён в плюс, т.к. мобов валять проще, чем игроков.
— медленные сильные удары против слабых но частых.
— точечные удары против сплеш-атак
— урон можно блокировать бронёй, поглощать за счёт здоровья или уклоняться
— бонусы за контратаки, удары с разбега, комбо, классовое оружие и т.д.
— станы, обезоруживание, связывание, отбрасывание, принудительное агро…
И это всё только для для ближнего боя.
То есть само понятие «самый эффективный» в зависимости от ситуации будет сильно меняться, и это не всегда будет «самый дамажный».
Компенсируем это механиками и снаряжением, которые не дают попасть по разбойнику, стримом "разбойник, в которого не возможно попасть даже берсерку", смотрим — затопило ли форум слезами мазилами-берсерками, которые машут своими массивными топорами без шанса на попадание и дохнут от бакстабов с пятерным уроном.
Это типичные классы персонажей в RPG.
Понятие «длины» палки (силы урона) вводится слишком резко, внимание на нем не сконцентрировано в должной мере, отчего переход от черных фигур к цветным разных размеров становится понятен только после третьего прочтения (да, я тугодум, но все же). Здесь же сразу добавляется и другая характеристика — ширина прямоугольника. Хотя про нее уже говорилось, но мне кажется, визуально отметить границы палок было бы полезно.Подумайте, что это за персонаж:
Эй, мы тут цветные прямоугольники рассматривали, и не договаривались, что имеем дело с графиками зависимости силы урона от времени. И хотя этот факт логично вытекает из принятых абстракций, незнакомый с математикой человек здесь впадет в ступор и будет долго хлопать глазами (это не «берсерк», извините, — это буква «L», упавшая на спину, когда у нее полноги отрубили). Сами оси на рисунках таки появляются (куда ж без них), но гораздо позже, чем хотелось бы.Но что, если у нас в руках Потрошитель Гоблинов, который наносит им двойной урон?
В этом моменте я всерьез начал думать, что подход с палками и площадями хорош в начале разработки, а не когда игра уже сделана и ее (внезапно!) нужно балансировать. Тогда есть возможность двигаться от простого к сложному, постепенно наращивая детали и усложняя математическую модель (да, в «статье без математики» поразительно много математики — автор пытается завуалировать ее применение наглядными картинками, но суть от этого не меняется. Это ни в коей мере не является критикой, так как мы работаем с точными системами и сбалансировать игру вообще без математики ну никак не получится). Так вот, в реальной жизни урон не будет постоянной величиной. И еоличество гоблинов на уровне тоже. А значит вам (нам, им, всем) придется иметь дело с вероятностями, распределениями и прочими муторными вещами (за которые я в ВУЗе на экзамене получил тройку и не решился ее пересдавать). В лучшем случае, вы будете умножать ваши длины и ширины (эммм… такого слова нет) на проценты (а это уже математика). В худшем же случае… рядом со мной в шкафу есть еще одно место.В шутере нам надо знать сколько процентов от карты составляют коридоры, а сколько — тесные комнаты
Ну да, так и есть — к готовой игре подход уже неприменим (либо с нуля переделывать). Как посчитать процент «корридорности» корридора, чтобы понять эффективность дробовика? Как учесть взаимное расположение двух (пусть вначале двух) игроков на карте, если точек спауна N? (тут я хотел формулу вставить — ну эту, из комбинаторики, но вовремя вспомнил, где нахожусь и что за люди зашли почитать эту статью). А если игроков больше двух? А если оружия больше двух? А если уровень трехмерный? А если есть оружие, которое дает AoE? А ежели дождь во время усушки, а?. Сложность модели растет в геометрической прогрессии — успевай только памперсы менять. Вы должны быть готовы к серьезной, кропотливой работе, делать которую трудно, но совершенно необходимо (иначе ваша игра быстро всем надоест).Теперь среднюю силу силу дробовика снова можно посчитать как сумму площадей прямоугольников:
Автор это знает, но стесняется сказать (чтоб не отпугивать народ): персонажи шутеров не перемещаются по карте рывками, а потому на соответствующем графике (можно я все же буду говорить «график», а?) никаких «ступенек» не будет — а будет плавная «волна», выражаемая некоей функцией. В конце автор честно признается: чтобы высчитать площадь, необходимо взять интеграл этой функции в нужных пределах (добро пожаловать в мир математики).
— Товарищ майор, вот вы в академии учили высшую математику. Она вам когда-то в жизни пригодилась?
— Да. Один раз у меня танк в болоте застрял. Я согнул лом интегралом и вытащил.
Просьба не закидывать кирпичами, я ни в коей мере не критикую статью — наоборот, она мне очень понравилась (добавил в избранное, буду перечитывать). Не тем, что учит балансировать игру без математики, а тем, что позволяет понять математику в простой и наглядной форме, показать начинающим гейм-дизайнерам, что в ней нет ничего страшного и сложного. Автор (который, видно, много знает по теме) не отмахивается от новичков со словами «ну вы, это, наймите тестировщиков, они там все потестируют», а честно пытается на пальцах объяснить довольно-таки непростые вещи. Кто знает, может это побудит кого-то пойти подучиться и заняться вычислениями уже всерьез (а значит, научиться «понимать игру», как об этом поэтично сказано в конце статьи).
С нетерпением жду продолжения.
Вы все верно подметили. Материал намеренно упрощен. И даже не чтобы не отпугивать читателей. У материала две основных цели:
— Сломать страх перед подобными задачами у тех, у кого он есть.
— Продемонстрировать, что баланс — это вопрос дизайна. Очень часто можно встретить отношение типа «я придумал штуку, а цифры потом настроим чтобы было хорошо». Как бы отделяя баланс от дизайна и думая, что эти вещи могут работать по отдельности. Такой подход работает только если фундаментальный дизайн в порядке. А если в нем есть проблемы, правки цифр — это как пластырь на перелом. В конце концов, математика — это описательный язык. Нужно знать что ты ею описываешь.
Это не материал с конкретными прикладными советами. В начале я дал ссылку на Яна Шрайбера, я очень люблю его циклы лекций. И говоря совсем честно, мне не кажется что после них мне есть что добавить. Если чувствуете, что вам нужна большая детализация, очень советую почитать их.
Теперь по конкретным моментам.
1) Материал и так получился крупный. Чтобы его еще сильнее не раздувать я решил просто ввести некоторые аксиомы, о которых не полагается задумываться, а нужно просто принять на веру. Думаю, мне надо будет больше внимания уделять тому, что можно просто сказать, а что нужно пояснять.
2) Отсутствие осей в начале прямо вытекает из целей статьи. Я притворяюсь, что тут нет математики, и фокусирую внимание на других вещах. Вероятно, лучшая визуализация «совместно сложенных палок» тут хорошо помогла бы сгладить переход.
3) Говорите все верно. В реальной работе полностью избежать математики не получится. Я просто пытаюсь показать что это не какой-то монстр из интегралов и функций. И в реальных ГД задачах очень редко нужен уровень дальше первого семестра университета, где все еще преподают достаточно базовые вещи. Единственная игра, которая использовала реально сложную математику — третьи герои. Говорят, там баланс считали с помощью дифференциальных уравнений. Все остальное часто можно свести к вот таким простым площадям. Да, если добавить детали, там будут гладкие графики функций, которые считаются интегралами. Но физический смысл интеграла и есть площадь. Я просто сделал функцию достаточно простой, чтобы было наглядней.
Но считать интеграл — это прикладной навык. А идеология та же, что описана в статье.
4) А вот тут я не соглашусь. На своей практике я подобным образом работал с уже существующей игрой. У существующей игры уже есть какая-то модель баланса, даже если она никем никогда не задумывалась. Если цифры просто подгонялись на глаз после множества тестов. В таком случае эту модель надо обнаружить. Это задача reverse engineering, и я такие делал. Возможно выкопать модель баланса из игры, и когда вы ее раскопаете, ее можно будет описать вот подобным образом. Только не так примитивно как я это сделал — вы уже будете знать все детали и зависимости в игре к концу процесса.
На эту тему я опять сошлюсь к Шрайберу, у него есть лекция по реверс инжинирингу баланса стоимости маны в MtG. И она будет очень полезна, даже если работать надо не с ККИ, описанный там подход универсален.
ссылка
Ну и по последнему пункту думаю я дал ответ в начале. Еще раз спасибо :)
Блин, а так можно было!?
На самом деле очень интересно, гейм-дизайн моя мечта, но нелюбовь меня к математики
Жаль что в свою бытность школьником IT сфера еще представляла из себя архаичную коллегию магов, нежели столичную академию искусств. Так что надеюсь на продолжение
Автору мой респект!
Но как понять, сбалансированы ли эти классы между собой?? Ответ вы могли уже узнать — надо просто посчитать площади прямоугольников. Если они одинаковые, значит у классов одинаковая сила и они в балансе между собой.
Смею заявить, что это очень наивный подход к понятию баланса.
Подход упрощённый, но отнюдь не наивный. Просто здесь рассматриваются лишь две характеристики, в то время как в реальных играх их несколько десятков. Но если каждую из них выразить в численном виде, перемножить между собой (то есть, найти объем многомерного параллелепипеда) и сравнить, то мы как раз и получим, что при равенстве значений (объемов) объекты сбалансированы, а при неравенстве — нет.
Более неоднозначные параметры тоже можно конвертировать. Преимущество в дистанции атаки (лучник против воина) можно интерпретировать как «несколько бесплатных атак лучника до того как начнется полноценный бой».
Так или иначе, в конечном итоге всё друг с другом перемножается (подмигивающий смайлик).
Я имел в виду характеристики, которые не сводятся к урону или времени жизни. На ум приходят различные взаимодействия персонажей: бафы, дебафы, хилы и тому подобное. Теперь, когда я думаю об этом, возможны граничные случаи, при которых персонаж вообще не наносит урона, но при этом является "сбалансированной" единицей.
В терминах прямоугольников такие персонажи увеличивают площадь прямоугольников союзников или уменьшают — противников.
Возникает проблема посчитать суммарную силу нескольких юнитов.
Как только начинается взаимодействие персонажей, происходит комбинаторный взрыв.
Общую силу группы можно представить, как непрерывное количество побежденных монстров (без использования зелий/расходников).
В примере с ценностью тоже не все так просто. Так как ценность ситуативная. Вы вряд ли выберете предмет с «сопротивляемостью к урону вилкой», если ваш следующий противник вооружен пылесосом.
Так же, если большинство противников вооружены вилками, то первый предмет ценнее.
Если разрешить несколько ситуативных модификаторов, то игроки будут вынуждены собирать различные наборы одежды под различные ситуации.
Так вот откуда берутся эти непомерно дорогие кольца "+10% к вероятности крита". Типа наносим 100 урона в секунду с вероятностью критануть х2 в 10% — так что кольцо дает ажно +20 к урону по мнению геймдизайнера
Скорее всего, если это кольцо непомерно стоит, то это потому, что его цена считалась относительно ситуации где-то в конце игры. Когда у персонажа уже не 100 урона в секунду, а 1000. И продешевить тут очень опасно, потому что тогда прокачанные персонажи будут поголовно бегать обвешанные критами, куплеными за бесценок.
По этой же причине в мобах на разных этапах игры разные статы экономически выгоднее. В начале матча выгоднее покупать чистый урон. Крит стоит дорого, а ДПСа даст мало. В конце крит покупать выгоднее, потому что он будет давать больше ДПСа, чем урон на те же деньги.
А тактика кайтинга преобразуется в "очень много бесплатных атак"
Опять-таки, боссы такого рода — это изначально контент для топ-задротов, готовых тратить дни на прокачку одноразовых персонажей ради крафта определнных предметов и убиения гильдой условной Джайны.
Впрочем, этим ребятам выбор не нужен. Достаточно вызова.
А про Power Creep у Extra Credits есть отличная серия роликов www.youtube.com/results?search_query=extra+credits+power+creep
Там много разных вариантов выхода они предлагают (что само по себе говорит, что хорошего нет). Мне больше всего нравится подход с созданием новой «оси» (типа абилки) вместо просто увеличения статов, хотя у этого подхода наряду с классными плюсами, конечно, есть прям большие минусы (сильно «дорого» по ресурсам, наверное, главный из них)
А во-вторых, даже 99% уворота при честном генераторе случайных чисел не гарантирует, что следующие 2-3 удара пройдут по тебе полностью и обеспечат мгновенную смерть, что вызывает ОЧЕНЬ яркие эмоции у игрока.
А ещё у врагов есть меткость, которая тоже участвует в расчёте шансов уклонения и эту меткость можно увеличить / уменьшить.
И да, в большинстве случаев уклонение от заклинаний, снарядов оружия дальнего боя и от атак ближнего боя будет рассчитываться по-разному.
Похоже на извращение, но работает.
Конечно лучшим вариантом всё-таки будет завести калькулятор для своего детища, как только разберешь основы и выстроишь основную логику.
Если говорить про баланс (а на самом деле даже разнообразие и баланс), то мне ближе подход «осей». Когда выбираются несколько осей (например если это оружие: скорость стрельбы, скорость перезарядки, урон одного выстрела, АОЕ-шность, эффективная дальность и т.д.) и разные виды сущностей раскидываются по этим осям (если назначить осям условную цену, то можно на каждую сущность выделять определенное кол-во очков), то есть например одно оружие скорострельное, но с небольшим уроном и быстрой перезарядкой и т.д., другое с другими значениями тех же характеристик (с одинаковой суммой «очков» по ним). Так, на мой взгляд, легче создавать монстров, оружие, классы (или что там мы сейчас создаем), которые с одной стороны кажутся игроку разнообразными, с другой создают интересные пересечения и взаимодействия, с третей стороны благодаря тому, что кол-во очков по осям у них близкое, они в какой-то степени уже забалансены.
Ну а потом уже главное оружие геймдизайнера — итерации, они же плейтесты разных мастей :)
Но с главной мыслью автора статьи, что в балансе математики намного меньше, чем это, может, кажется на первый взгляд, я, конечно, абсолютно согласен
Что касается осей и стоимостей, да, это тоже хороший подход. В следующей статье я немного его затрону. У него есть свои трудности: корректная оценка стоимости шага по каждой из осей, наличие бинарных эффектов, которые не раскладываются в ось, количество самих осей. Но тут как и с любой методологией, все зависит от механики игры и целей. В одном случае система стоимостей покажет себя лучше, в другом беглая оценка по ХП/ДПС будет достаточно эффективной.
Курс Молодого Геймдизайнера: как считать баланс персонажей и снаряжения без математики