XCOM 2 вновь доказал что Firaxis одна из немногих компаний что умеет делать хорошие пошаговые стратегии. Многих до сих пор удивляет что жанр, которому пророчили смерть в начале двухтысячных, может и выглядеть лучше конкурентов, и создавать на удивление динамичные ситуации при полной отсутствии необходимости куда-либо спешить.
Но зайдите в любое обсуждение XCOM, и вы стопроцентно найдете комментарии или веселые картиночки с одной и той же проблемой — рандом.
-----------------------------------------------------------------------------------------------------------------------
Типичная ситуация в XCOM2. Солдаты стоят в упор, но шанс на промах удивительно высок для такой ситуации
-----------------------------------------------------------------------------------------------------------------------
85% попадания? Большинство коммандеров скажет, что его солдат с такими промахнет. 100%? Вы таки будете смеяться, но есть задокументированные случаи промаха и с такими шансами.
Не только на XCOM: EU и XCOM 2 обрушивался шквал критики: о хорошей стратегии Battle for Wesnoth кто-нибудь, да и скажет плохое слово про её боевую систему, целиком основанной на тех же процентах попадания.
Откуда проистекает такая ненависть к случайности, как она работает и зачем нужна? И, самое главное — как нам с ней жить? Разберемся.
Когда мы говорим о генераторах случайных чисел, существует ровно два стула, которые подразделяются на много табуреток: аппаратные генераторы и генераторы псевдослучайных чисел.
В первом случае устройство генерирует последовательность случайных чисел на основе измеряемых, хаотически изменяющихся параметров протекающего физического процесса. Возьмите простой шестигранный кубик — перед вами простейший генератор. Возьмите радиоактивное вещество, счетчик Гейгера и конвертируйте его потрескивания в цифровые сигналы — получится чуточку продвинутый. Преимущества любого из перечисленных способов в гарантии полной непредсказуемости. Недостаток — во времени подсчетов и некоторой громоздкости.
-----------------------------------------------------------------------------------------------------------------------
В настольных играх Dungeon&Dragons используются двадцатигранные кубики, так как шести слишком мало для всего множества вариантов что может случиться.
-----------------------------------------------------------------------------------------------------------------------
Во втором случае (как раз наш случай) используются специально написанные алгоритмы, порождающих последовательность чисел. Псевдослучайными их называют как раз за этот способ получения чисел. Алгоритмы заранее определенны и их последовательность чисто статистически не может быть случайной. Что, впрочем, и не требуется, ибо на практике достаточно, чтобы этот алгоритм проходил хотя бы большую часть тестов на случайность. А быстродействие этих алгоритмов делает их намного выгоднее любых истинных генераторов случайных результатов.
Большинство ожидает, что в статье речь пойдет о как раз не работающих генераторах, приносящих своими багами беды игрокам. И спешу вас обрадовать – нет. Более того, в рамках статьи речь о них вести мы не будем совершенно. Установить факт наличия бага в рандоме слишком сложно, в отличии от «багов», что мы будем осматривать. Да и ошибки в стиле бага 56ого года из Medieval: Total War – Viking invasion предмет скорее отдельной и веселой статьи.
Шутка в том, что если рандом сделать честным игроки будут страдать ещё больше. Ситуацию можно легко разобрать на примере многострадального XCOM 2. Предположим, что вы играете на самом начальном уровне сложности. Шанс попадания по противнику составляет 85%, и вы мажете. Следующий боец стоит рядом, и на цифрах его шанс составляет все те же 85%. Но только на цифрах. На самом деле, благодаря особенностям уровня сложности, к вашему шансу добавляют скрытые 10% на успех из-за предыдущего промаха. В итоге, следующий выстрел идет уже с 95%. Ну а если боги Хаоса вновь не на вашей стороне, то третий будет сразу 100%, за счет накапливающегося бонуса.
Самое интересное, что в XCOM 2 эти скрытые бонусы вам продолжаются вплоть до самого последнего уровня сложности. Верно, только на Легенде, последнем из 4х уровней сложности, разработчики сделали рандом в игре честным для всех.
А теперь вспомните все эти жалобы на нечестные шансы, на то, как косорукие солдаты мажут на 99%, и подумайте, как это сочетается со всеми этими послаблениями от разработчика? А как горько бы плакала Ярославна, если бы даже такой форы не было!
Не только XCOM пал жертвой критики игроков. Прекрасная стратегия Battle for Wesnoth подвергается многочисленным нападкам из-за похожей боевой системы: шанс попадания зависит от позиционирования солдат и слепой удачи. Великий корейский рандом на заточках оружия стал полноправным божеством геймерского пантеона из-за своей непредсказуемости, а игроки World of Tanks постоянно отписываются про его младшего брата — белорусский рандом.
-----------------------------------------------------------------------------------------------------------------------
В «Весноте» шанс попадания по солдату зависит от типа местности где он стоит, и его личных навыках пряток на этой местности. А от времени суток увеличивается или уменьшается урон.
-----------------------------------------------------------------------------------------------------------------------
Откуда берется ненависть к процентам? Так как мы уже договорились считать, что генератор случайных чисел в разбираемых играх работает условно правильно, то причин несколько:
1. Психологическая — игроку гораздо легче запомнить обидную подлянку рандома, чем самую редкую удачу на 1%.Человек привык рассматривать успехи как нечто само собой разумеющееся. А промахи — как жестокую несправедливость.
2. Математическая. Да, 50% на попадание не означает, что каждое второе попадание будет успешным. Может случиться даже 4 промаха подряд, ибо шансы 1\16 =! 0. Но скажите честно, вы будете помнить об этой мелочи после четырех промахов, или станете просто полыхать ненавистью к игре?
Как мы видим, вся проблема рандома в играх заключается в игроках. Игрок существо нежное, и он хочет побеждать, а элемент случайности добавляет непредсказуемости игре. А непредсказуемость это отличная возможность проиграть.
-----------------------------------------------------------------------------------------------------------------------
Полет трассеров пуль всего лишь ловкая иллюзия — отчетливо видны шансы на успешное попадание, и в игре легко заметить что пули влетают в цель только тогда, когда кубики сказали добро на попадание.
-----------------------------------------------------------------------------------------------------------------------
Получается, что главная задача разработчиков сделать рандом в своих играх как можно более нечестным — в пользу игрока, разумеется. В старом X-com не было никакой разницы для игры где генерировать пришельцев – далеко от карты, или сразу у трапа. На захватах больших батлшипов часто все заканчивалось и не успев начаться – сразу у трапа стоит добрый сектоид с бластер-лаучером и одним плевком заканчивает этот эпизод войны. Назвать это багом язык не повернется, но проблему старались убрать в любых последователях и продолжениях игр. Казалось бы это вполне честная вероятность для победы ИИ, но она раздражает игрока тем что она оставляет его беспомощным! И неважно что основа тактики в любом X-com заключается в том чтобы сделать врага беспомощным и победить его – ему нельзя использовать те же самые методы, если разработчик не хочет убить интерес.
Конечно же, попытка правки цифр подходит только играм где процент попадания у нас всегда перед глазами. Конечно же, скрытые броски невидимых кубиков происходят не только в стратегиях – в Knight of the Old Republic и играм по D&D каждый удар тоже расчитывается сложными бросками на попадания, урон и уклонение. В Dungeon Crowler-ах вроде Diablo проценты присутствуют в виде бонусов экипировки. Почему жалобы не идет на них? Ну, в большей части, потому что мы эти кубики не видим! Большинство игроков даже слабо задумываются, почему и как персонажи бьют, а динамичность игры в псевдо-реальном времени маскирует серии промахов: вам слишком легко их не заметить в горячке использования многочисленных особенностей.
Но иногда хреновый баланс не может создать иллюзию честности случайности. В MechWarrior IV в одной из миссий нам внезапно дают сигнал тревоги и требуют как можно быстрее двигаться на помощь попавшему в засаду союзнику. Как это делается в нормальных играх? Включается таймер, и как только мы подходим к нужной точке там повляется и цель, и атакующие её враги. Но в этой игре сделали все честно – союзники действительно попали в засаду, и их расстреливают все то время, пока мы к ним бежим. Чувствуете, к чему я клоню? Именно – если не повезет, то они умрут быстрее, чем игрок даже успеет подойти. Или умрут как раз, когда подойдете. Промахи и точность ИИ в большинстве игр рассчитывается теми же кубиками, и в данном случае хоть и хотели сделать реалистичную ситуацию, получили лишь безжалостный экзамен на вашу удачу.
-----------------------------------------------------------------------------------------------------------------------
Пример паршивого баланса есть и в Xenonauts. При заказе новобранцев стараются брать только тех у кого выпали хорошие параметры. Что делать если у всех вариантов только ужасные статы? Покупать инвалидов не умеющих стрелять! Слишком большая разница между минимум и максимум в генерируемых параметрах нередко приводит к таким проблемам.
-----------------------------------------------------------------------------------------------------------------------
Что в итоге получается? Там где разработчики хорошо спрятали кубики, претензий нет. Там где все лежит на поверхности очень много криков. Все дело только в том, что нам есть, на что сбросить собственные неудачи? Кроме тех случаев, где кубики действительно действуют нечестно и создают ложный вызов – да. В XCOM: EU отличный генератор случайных чисел, выдающий адекватные результаты. Но так как его работа ничем не прикрыта, игроки получают своего козла отпущения.
Разработчики отлично понимают, что игрок не хочет проиграть, а хочет получить удовольствие от победы. И если для этого нужно замаскировать работу систем игры или сделать расчет вероятностей немного нечестной в его пользу – они с удовольствием начинают использовать несколько своих нечестных приемов, за которые мы их расцелуем в обе щеки.
Но, прежде чем смотреть на способы борьбы разработчиков с честностью, давайте посмотрим, каким рандом вообще бывает в играх.
Сразу определим терминологию – рандом это когда мы не можем повлиять на конечный результат. Максимум что мы можем это изменить его вероятность в большую сторону, но вероятность полного провала остается несмотря ни на что, и никак мы на это не повлияем. Когда мы можем залечь за бугорком и долго целиться из винтовки чтобы сделать удачный выстрел – это не рандом. Когда мы приказываем солдату залечь за бугорком, потому что это +10% к точности, прицелиться ради +15% и подождать погоды для дополнительных 5% чтобы в итоге выбить 99% — это рандом. Локальную ситуацию гарантированного успеха создать можно, но большую часть времени мы наслаждаемся случайными результатами.
Первый и самый высокий по степени нервозатрат тип случайностей — все или ничего. Отсюда и растет пресловутый корейский рандом. При затачивании оружия на плюс к цифрам в большинстве MMO дается два варианта: либо улучшение установится, либо исчезнут вообще все успехи. Повлиять на процесс нельзя никак, все что есть это шанс на экране и простая удача.
Дальше идет модель XCOM и Wesnoth — позиционированием бойцов на карте и\или особыми возможностями можно повлиять на успех попадания, но в большинстве случаев шанс попадания все равно останется в руках Фортуны. Уже может появиться возможность влиять на противника, но опять же в простейших вещах вроде повышения шанса на попадание или урона.
Относительно «честный» рандом используется в более серьезных играх вроде Wargame: Red Dragon, Warhammer 40,000: Armageddon или Panzer Corps. Возрастает не только количество переменных, на которые можно влиять, но и добавляется ещё и разность в полученном результате в зависимости от численности отряда, силы его оружия, морали и поддержки. Отряд имперской гвардии в Armageddon состоит из 30 человек, и шанс попадания каждого отдельного бойца свой, из-за чего легко получаются ситуации, когда успешный залп толпы слабых солдат оказывается результативнее мощных залпов всего лишь трех танков.
-----------------------------------------------------------------------------------------------------------------------
Нам повезло — каждый из 25 огнеметчиков нашел свою жертву. Большие отряды в Armageddon плохи тем, что сильные, но малочисленные войска будет уничтожать их слишком долго. 5 танков не смогут сделать больше 5 трупов за залп.
-----------------------------------------------------------------------------------------------------------------------
Легко увидеть что градус “нормальности” случайности прямо пропорционален количеству способов, благодаря которой на неё можно повлиять. Но это лишь один из способов разработчиков “пофиксить” нечестный рандом.
Какие честные и не очень способы разработчики применяют, чтобы обмануть игрока, и сделать игру для него более податливой?
Первый уже был описан чуть выше: скрытые бонусы и штрафы. В какой-нибудь маленькой спрятавшейся переменной прописывается +10% за каждый промах, и вот получается, что даже самый неудачливый человек сможет набрать 100%. Чаще всего противнику выдаются аналогичные дебаффы – то есть урезания шансов на успехов.
Другой способ заключается в искусственном ограничении игры и создании определенных скриптовых срабатываниях “случайностей”. К примеру, в Heroes of might and magic V существует свойство у призраков замка Нежити “нематериальный”, благодаря которому они могут уклоняться от всех физических атак с 50% шансом. В первых версиях игры это были именно проценты, и игроки радостно отчитывали о страшном баге: как так, призрак уклоняться и по четыре раза подряд! Разработчикам надоело слушать это, и в скором времени “баг” был пофикшен: теперь железно избегалась лишь одна из двух атак. Вроде и все осталось на месте, но элемент случайности был заменен на предсказуемость.
Но любые ухищрения разработчика всегда будут наталкиваться на то что шанс на промах или неудачу останется. Что делать нам, игрокам, особенно если добрый дядя Сид ещё и заблокирует “сейвскам” — возможность загрузиться и перебросить кубики?
Хоть к теме это относится и слабо, но раз начали, упомянуть стоит: чаще ИИ ограничивается специально. Очень часто это встречается в различных серьезных wargame-ах: противник идет по заданном сценарию и вам остается лишь справится с данной ситуацией. В XCOM2 сектоид будет чаще всего использовать бесполезную псионику даже когда поддерживать ею некого, а лансеры будут бежать в ближний бой плюя на любой инстинкт самосохранения. Это удаление элемента случайности уже на глобальном уровне. Чаще всего у нас нет возможностей почитать документы врага и узнать, что он задумал, и подобные шаблоны поведения позволяют опытному игроку без лишних проблем сразу понять, как будет ходить враг, и как на это отвечать. Точно также как в шахматах мы должны знать как будут ходить чужие фигуры.
Но как бы разработчики не старались для нас, разбираться с тем что они сделали все равно нам. Что остается делать игроку, когда судьба всего боя зависит от богов Хаоса?
В первую очередь рандом учит нас всегда оставлять простор для запасного варианта. Промахнулся первый — попадет второй. Промахнется второй — попадет третий. Статистика может воевать и на нашей стороне, позволяю каждой неудаче повышать шанс успеха
Второе вытекает из первого — оставляйте место удаче! Да, промахи на 95% случаются — с той же периодичностью что и попадания на 25%. Как заядлый любитель iron-man-а в XCOM я могу подтвердить, что удачный критический выстрел по мутону в полном укрытии не раз и не два спасал команду. Если есть возможность, не сильно рискуя, сделать почти безнадежный удар — делайте. Попадет хорошо, не попадет не страшно.
-----------------------------------------------------------------------------------------------------------------------
Шансы на попадание были малы, но удачный критический выстрел резко изменил ситуацию на поле боя в нашу пользу.
-----------------------------------------------------------------------------------------------------------------------
А третье относится уже исключительно к психологической стороне. Отучайтесь жаловаться. Да, неудачи случаются. Нет, не запоминайте их. Учитывайте, но не относитесь как к чему-то особо страшному. Непредсказуемость процентов для того и создана чтобы рушить самые лучшие планы.
В заключение, я с готовностью могу сказать, что лучший рандом — этот тот, что отсутствует. Да, от него невозможно избавиться полностью (даже результат полета стрелы в Mount and Blade определяется броском многих невидимых кубиков, хоть мы и целимся в привычном виде), но чем лучше он замаскирован и чем сильнее мы можем на него влиять — тем лучше. Броски кубиков в стиле настольных игр из XCOM-а это все-таки в первую очередь лень разработчиков. Кубики могут сделать простейшую механику, но для компьютера она слишком до простого смешна. Современные технологии позволяют нам с помощью процедурной генерации создавать целые галактики в Spore и миры в Minecraft, которые могут выдавать вполне красивые пейзажи. Почему разработчики стесняются работать над красивой и относительно честной баллистикой для игр? Причин много.
В любом случае, мой взгляд заключается в том, что возможности компьютера стоит использовать на полную мощность. Промахи в упор на 85% обидны не из-за того они случаются, а из-за того что они почему-то существуют, плюя на законы логики и здравого смысла.
Всем спасибо за чтение, и удачи вам. Всей её.
Лучшие комментарии
И так как статья в этот раз получилась у меня нехарактерно маленькой, я лучше займу больше места в комментариях для маленького крика души.
XCOM2 — похвально? Ладно, не спорю может быть нашли что-то… но нет! Основная претензия это лагающий графончик и таймеры. Да ладно? Вы могли бы сказать хотя бы про то что в игру не завезли новшества Enemy Within, из-за чего она слегка обеднела, могли бы обмолвиться о слабом сюжете, который опять лишь маленькое оправдание к тому чтобы играть. Но нет, ему похвально из-за лагающего графончика, массаракш!
Стопгейм, стратегии оценивают немного по другим вещам. И рекомендация людям покупать Enemy Unknown, просто потому что он дешевле и не лагает, это огромная медвежья услуга, ибо по геймплею он проигрывает XCOM2 во всем. Использование гаджетов — расширено, разнообразие врагов — добавлено, полное изменение работы с оружием — сделано. Игра во всем лучше предыдущей части, как оно обычно у Фираксис и бывает. И покупать старую теперь есть смысл только из-за приступов ностальгии. Но никак не из-за того что она не лагает!
отредактировано Дедпулом
Вот в этом вечная беда пошаговых игр. Это выглядит как «стоит на месте и стреляет в упор», а на самом-то деле это в движении всё, причём одновременном типа. Пошаговость — это просто метод подачи. Но, конечно, большинство боёв в таком режиме сводится к стоянию смирно и стрелянию в упор.
Когда ты смотришь на персонажа, который метится во врага на расстоянии метров 20-ти и у него шанс попадания 90% и при стрельбе он промахивается. Твои эмоции выглядят примерно так: «Ну ты косипооооор»
Когда ты смотришь на персонажа, который метится во врага на расстоянии метров 2-ух и у него шанс попадания 90% и при стрельбе он промахивается. То тут ты, конечно, возмущаешься: «Что за!? КАК ТЫ УМУДРИЛСЯ ПРОМАХНУТЬСЯ?!? ВРАГ ЖЕ СТОЯЛ НА МЕСТЕ!!!!»
Думаю, стоит Firaxis, в частности, и, всем разработчикам подобных игр, в общем, разработать систему «уклонений». То есть, чтобы цель и стреляющий «сыграли» вместе анимацию промаха: «Стрельнул, а противник внезапно скакнул в сторону и вернулся назад на точку», чтобы выглядело это более реалистично.
P.S. Вспомнилась картинка в тему
Ты прав, что вне зависимости от рандома пистолет не пробьет броню танка (например), НО:
Да ну, бред какой-то)
И зачем его тогда вообще высказывать? )
Ладно-ладно, каюсь. Действительно глупо вышло.
1. Разрабы просто не смогут реализовать все по-настоящему влияющие характеристики в игре.
2. Маленький шанс, например в XCOM, при котором ты попал, означает, что ты умудрился стрельнуть танку в дырку для пилота, где благополучно залетела пилоту в глаз.
А вообще, мне кажется разработчикам давно пора заменить полное непопадание на штрафы к урону. Мне кажется не так и сложно перебалансить игру, чтобы наносилось не 8-10 урона с шансом 80%, а 0-10, но с неравномерной функцией вероятности. Чем круче функция вероятности, тем больше шанс нанести много урона. Правильный визуальный дизайн таких функций вполне удобно показывал бы игроку, какой у него шанс сделать очень больно, а какой — не особо.
Геймплейно это могло бы отражаться в виде попаданий в разные части тела или в количестве попавших пуль при стрельбе очередью.
«Что» пропустил.
Самого не на шутку выводят промахи при шансе в 90%, но, благодаря своему характеру, быстро прихожу в себя (пока это снова не случится).Но как же, черт возьми, приятно попасть в поганого берсерка с 20%-м шансом, да еще и критануть.Никакие другие игры не могут доставить такую же бурю эмоций, какую доставляют пошаговые игры с рандомом) Прохожу на нормале, потом перейду легенду.Ох, чувствую, настрадаюсь я там)
отредактировано Дедпулом
Рандом призван компенсировать реальность и её многофакторность и сложнопредсказуемость. Ровно как и «солдат с условным навыком стрельбы 100» — это вообще что? Навык стрельбы из чего, на какие дистанции, из какой позиции? Ведь существует миллиард факторов, влияющих на успех попадания. И даже если попадание свершилось — существует не меньшее количество различных факторов, определяющих исход этого попадания. Поэтому модель, в которую включён рандом получается более «живой» и непредсказуемой, чем абсолютная абстракция, которую, по ходу, предпочитаешь ты (типа шахмат, Frozen Synapse). Впрочем, и то — абстракция, и это. Право на существование имеют обе модели, как по мне, просто в итоге они работают на создание разных эффектов. Первая частично полагается на логику и способна генерировать интересные истории про «бросил 6 кубов, на всех — единицы, убил себя апстол», а вторая работает на прокачку логики без как бы то ни было допущений на случайности.
Но по идее должен быть какой-то бонус для стрельбы по противнику который не в укрытии. Но либо его не завезли, либо он минимальный. Что сводит тактическую составляющую на нет.