Для изобретения нужно осознание его необходимости. Для того, чтоб была создана дрель, нужно понять, что в стене необходима дырка.
На протяжении большей части истории игры были прежде всего формой социального взаимодействия. Игра предполагала партнёра, соперника, компанию за столом; развлечение для одиночки долгое время оставалось скорее исключением. Конечно, существовали пасьянсы и другие одиночные занятия, но они находились где-то на границе между игрой, упражнением и головоломкой и не слишком влияли на основную эволюцию настольных игр. Потребность-же в настольных играх для одного игрока сформировалась, по историческим меркам, совсем недавно и произошло это в рамках развития военных игр.
Бум варгеймов начался в 1958 году, после выхода игры Чарльза С. Робертса Gettysburg. Варгеймы хорошо продавались и непрерывно развивались, но почти сразу выявилась их неустранимая проблема – варгеймы были (и остаются) сложными в освоении и достаточно нишевыми. Что, в свою очередь, означало проблемы с поиском партнёров по игре. Люди приезжали играть на конвенты, размещали объявления о поиске партнёров в газетах – и в 70-е годы издатели варгеймов с некоторым удивлением обнаружили, что энтузиасты нередко играют в военные игры сами с собой, и существует вполне реальная и насущная потребность в играх для одного игрока – или опции играть в одиночку в игру для нескольких игроков.
Но, как не сложно предположить, удовлетворить этот спрос было не так уж легко. Конфликт – обязательная часть любой игры, он заложен в самом её определении. Было понятно, что нужна достаточно парадоксальная система – где, с одной стороны, игрок производит все действия за обе (или больше) стороны конфликта, а с другой – игра сохраняет вызов и элемент неожиданности. И это потребовало понять, как в принципе работает конфликт в игровом мире. Есть два основных подхода к конфликту в разработке игр:
1. Игрок против окружения
2. Игрок против [искусственного] игрока
(Есть и третий подход – игрок против себя самого, но он очень экзотичный и сегодня почти не встречается – его можно видеть в игре «Пелопонесская война», где игрок по очереди играет за каждую из трёх фракций, причём принимает командование над ней в том состоянии, в котором она была в конце предыдущего раунда – т.е. если игрок почти победил, но не добил противника – в следующем раунде он начнёт в очень тяжелых условиях и, скорее всего, проиграет.)
Первый подход - "мир против игрока"
Первый подход появился раньше других, и, в различных вариациях, до сих пор используется в соло- и кооперативных играх. Основной принцип игр этого типа состоит в том, что вместе с собственными действиями, игрок каждый ход узнаёт о том, как меняется игровой мир или какие действия окружающий мир предпринимает против игрока. Этот принцип, хотя и достаточно интуитивный, и даже примитивный, имеет несколько уровней сложности.
Самый базовый уровень был использован в старых играх вроде B-17 Queen of the sky (1981). В этой игре игрок брал на себя роль командира бомбардировщика на боевой миссии. Каждый ход игрок бросал кубики и проверял результаты по таблице – в которой были указаны события. Волны вражеских бомбардировщиков, зенитный огонь, неполадки – всё происходило с игроком по воле случая. Таблицы, как это обычно для варгеймов, были очень детальными и содержали проверки для целых серий событий – при повреждениях серией бросков проверялся тип повреждения, что он означает для самолета, и получилось ли исправить неполадку – если такая опция существует. Время игры и продвижение игрока к цели являются модификатором – чем дальше бомбардировщик продвигается во вражескую территорию, тем выше вероятность боевых столкновений.
Агентность игрока проявлялась не столько в выборе маршрута, сколько в связанных с событиями решениях. Например, при событии «от холода заело пулемет стрелка нижней полусферы» игрок-капитан мог принять решение опуститься ниже, туда, где теплее – но тем самым он нарушал строй и рисковал попасть под зенитный огонь. Не сложно видеть, что у подобной игры есть большая проблема с агентностью игрока – т.е. набор решений очень сильно ограничен, и успех рейда нередко сводиться к чистейшей удаче – почти исключая влияние стратегического планирования. Поэтому не удивительно, что сегодня он практически не используется.
(Хотя сам по себе подход, при котором мир «бросает в игрока» череду случайных событий в каждом игровом цикле, получил продолжение – в его рамках реализован ряд кооперативных игр, самой известной из которых является любимая мной серия семейных игр Pandemic.)
Между миром и партнёром - игры семейства "Ambush!"
Но позже, в играх Ambush! (1983), Move Out! (1984) и ряде других, принцип «игрок против окружения» становится гораздо более интересным – поскольку создаёт иллюзию второго игрока, пусть и не идеальную.
В тактических военных играх этого типа игрок управляет отрядом, движущимся по вражеской территории. В отличие от B-17, здесь игрок выбирает маршрут для отдельных юнитов под своим командованием, т.е. изначально обладает значительно более высокой агентностью.
Здесь, как и в более ранних соло-играх «ИИ» реализован через таблицы, но механизм триггера событий отличается – можно назвать его «топологическим». Каждый гекс на карте имеет свой индекс, подобно координатам клеток в шахматах. При перемещении юнитов по карте, игрок сверяется со специальной таблицей – что происходит, когда его отряд находится на том или ином поле.
Связанные с координатами на поле номера отсылают игрока к книге сценария, где можно посмотреть, что происходит.
Если происходит столкновение с противником или отряд обнаружен - игра переходит в «тактический» режим, на карте появляются немецкие подразделения. Какие они, сколько, есть ли у них инициатива, что они делают, какие цели выбирают — всё это проверяется бросками кубиков по таблицам на карточках немецких подразделений.
Номера в таблицах также отсылали игрока к книге сценария, где были как описания действий противника, так и базовая логика типа «если – то». (Например «если в этом раунде в ближайшую цель уже стреляли, немецкое подразделение стреляет в следующего американского солдата»
При всей кажущейся простоте, система “Ambush!” позволяет большую гибкость в развитии сценария и большое количество неожиданных и, при этом, логичных событий. Выбор событий очень разнообразный – от обнаружения разведданных, разговоров с местными и сценарных описаний до активации вражеских подразделений – вплоть до того, что, сверяясь с таблицами, можно получить что-то вроде самостоятельных действий вражеских боевых единиц. Одновременно события повышают уровень тревоги и готовности противника к отражению атаки – придавая миссиям дополнительный реализм. Реализуется это следующим, достаточно занятным образом – для одной и той же карты может быть несколько таблиц событий – а какую из них использовать задают «условия» - которые могут сильно менять соотношение сил в миссии.
Ключевая идея и одновременно гениальная простота этой системы состоит в том, что условный ИИ не “играет”, а “происходит”. В Ambush! и его продолжениях «искусственный» противник не планирует и не “пытается выиграть” - он реализует ситуацию, в которую игрок попал. «Бумажный» игрок не имеет какого-либо стратегического замысла – это просто серия помех и стимулов, которые сопровождают игрока на пути к победе.
"Настоящий бумажный игрок"
Как мы помним, второй подход к ИИ в настольных стратегиях пытается напрямую симулировать мышление искусственного противника – и, хотя этот подход кажется самым естественным, в действительно он показал себя очень ресурсоёмким и используется крайне редко.
Варгеймы семейства COIN - AndeanAbyss, ADistantPlain и подобные им включают действия бота (или нескольких ботов) непосредственно в каждый ход. Когда до бота доходит очередь, как до одного из игроков, его действия проверяются по блок-схеме.
Грубо говоря, это была самая настоящая программа, где пошаговым транслятором выступал игрок. Блоки соответствуют состояниям в игре и выборам, которые нужно сделать. Искусственный игрок в играх COIN – это процедурный, реактивный ИИ на блок-схемах, где противник анализирует текущее состояние, проходит по дереву условий и выбирает заранее заданное допустимое действие – точнее, это, руководствуясь блок-схемой, делает за него игрок. Рандом (кубик) в решениях ИИ используется тогда, когда то или иное состояние игры допускает несколько равноценных действий.
Что важно отметить – правила для ботов в играх подобного типа отличаются от правил для игроков. Из-за того, что с помощью блок-схем тяжело достичь той-же глубины планирования и решений, правила для ботов облегчены – особенно в части менеджмента ресурсов и условий для экспансии. Позже этот принцип ляжет в основу популярной сегодня системы «Автома».
Венцом эволюции этого подхода стала появившаяся в 2018 году система «Erasmus Bot» - по сути, те-же схемы принятия решений, но значительно более сложные – бот этого типа должен был играть по основным правилам игры и, что важно, демонстрировать некую стратегию, пусть и без разнообразия – поскольку схемы предписывают определённые действия в ответ на действия живого игрока. Действия этого «картонного ИИ» симулируются большим набором блок-схем, предназначенных для разных фаз игры. Так же на выборы в рамках схемы могут повлиять события предыдущей фазы.
Собственно, этот подход – наиболее «настоящий» в плане мышления искусственного игрока. Здесь система реактивна и даже действует сообразно некоей стратегии. Но именно поэтому он очень трудоёмкий, требует большого дизайнерского опыта и длительной отладки.
Automa - "венец эволюции"
И, наконец, мы подходим к основному решению для симуляции игрока в современных стратегических играх - системе Automa. Система запатентована автором – дизайнером MortenPedersen и её главный принцип настолько же прост, насколько гениален – игроку не важно, как думает его оппонент и думает ли он вообще. Игроку важно, как оппонент действует. И именно на этом основана «Автома» - бот сосредоточен не на том, чтоб по-настоящему анализировать ситуацию и делать выборы, а на том, как игроки взаимодействуют друг с другом и какие действия могут помешать игроку достичь его целей. Искусственный игрок не подчиняется правилам – он лишь симулирует возможные интеракции между игроками.
Типичный ход автомы:
1. Вытянуть карту (игры в рамках этой системы обычно основаны на карточках)
2. Пройтись по списку приоритетов
3. Выполнить первое возможное действие – не обязательно лучшее в стратегическом плане.
Т.е. в действиях автомы нет оптимизации, нет перебора и нет “лучшего” хода – только допустимый. Так же автома не играет по тем же правилам, что игрок, не распределяет и не хранит ресурсы как игрок и часто не считает очки стандартным образом (получает их в ином количестве или за другие действия).
Первой игрой в которой использовалась автома была Viticulture (2014). С тех пор добавился еще ряд популярных игр – Scythe, Wingspan и ROOT.
Лучше всего я знаком с последней. Игра ROOT – ассиметричный варгейм, родственный игре «Риск». Различные фракции животных воюют за поляны в лесу. Победа определяется тем, кто из игроков раньше других наберет 30 победных очков. У каждой фракции есть собственные условия получения победных очков - например, фракция котов «Marquise» получает победные очки за строительство фабрик на контролируемых полянах. А фракция мелких зверюшек «лесной союз» как за строительство баз, так и за привлечение сторонников.
В соло/кооп ROOT используются механические фракции (Mechanical Marquise, Electric Eyrie и т.д.). Они не играют “по-честному”, а действуют, с одной стороны, по алгоритму, с другой – в рамках заданного правилами выбора приоритетов, поскольку игроку регулярно нужно выбирать, на какую поляну двигать свои войска или где создавать постройки.
Ход автомы в ROOT отличается от хода живого игрока – хотя автома симулирует экспансию и создание инфраструктуры, за её действиями не стоит настоящий стратегический выбор. Поскольку в отличие от предыдущих примеров «картонного ИИ» автома гораздо менее интуитивна, приведу пример хода «механической» фракции Котов.
На игровом поле изначально есть поляны с разных типов (они отличаются по связанным с ними видам животных – лисы, зайцы и мыши). Мы смотрим на момент, когда у Котов (автомы) уже есть воины и здания, а на поле уже есть несколько вражеских фигур и ход переходит к «автоматическому» игроку.
Цикл хода согласно планшету "механического" игрока:
1. Утро (подготовительная фаза хода). Сначала Коты открывают карту приказа. Потом, если на ней изображён доступный предмет, они его "создают" (т.н. "крафт" - это даёт победные очки наравне с завоеваниями и строительством).
2. День (основная часть хода). У котов день начинается с битвы. Бой начинается по системе приоритетных маркеров на карте; если нужно выбирать между равными вариантами, бот берёт поляну с более высоким приоритетом. Защитником поляны (т.е. тем, чьи юниты будут атакованы) выбирается игрок с наибольшим числом фишек в данной поляне (на одной поляне могут быть юниты разных игроков) если фишек равное количество — игрок с большим числом победных очков.
3. Следующий шаг - мобилизация, создание новых воинов. Коты размещают четырёх воинов среди полян, которые они контролируют, распределяя их максимально равномерно. Если подходящих полян три, четвёртый воин идёт на поляну с более высоким приоритетом.
4. Потом идёт строительство. Здесь важна вытянутая в начале хода карта. По правилам Коты строят в той поляне, которую она контролирует и где у неё больше всего воинов. Но тип постройки берётся с карточки приказа: Лиса - лесопилка, заяц - мастерская а мышь - призывной пункт.
5. Перемещение. Если на каких-то полянах есть больше трёх воинов, Коты двигают "лишних" солдат в соседнюю поляну с наибольшим числом вражеских фишек. Порядок движения опять-таки определён в правилах. Если количество вражеских воинов на соседних полянах равное - снова работает схема приоритета.
6. Специальное дополнительное действие "Expand" . Если в этот ход механические коты не смогли построить здание и у них на карте есть пять или меньше зданий, они сбрасывают текущую карту приказа, тянут новую, не создаёт указанный на ней предмет а сразу возвращается к началу Дня.
7. Вечер. Вечером Коты подсчитывают победные очки, добавляют их в счетчик, атем сбрасывают текущую карту приказа в отбой.
В данном описании важно не понять правила - правила ROOT довольно сложны и требуют отдельного изучения - а увидеть, как простой алгоритм симулирует действия игрока, не пытаясь создать симуляцию мышления, как такового.
Как было сказано ранее, автома не анализирует состояние партии, не думает о победных очках, не реагирует на стратегию игрока и не адаптируется. Но, она стабильно симулирует движение по карте, системно атакует, блокирует пространство, создаёт ощущение активно противостоящего игроку оппонента. Не удивительно, что сегодня «автома» является чуть ли не самой распространённой системой для стратегических игр с возможностью игры в кооп и соло.
Картонный тактик - управление монстрами в игре Gloomhaven
Еще одна система, которая симулирует противника, это карточная тактическая система в игре GloomHaven.
Стратегически, на уровне мира, Gloomhaven устроен достаточно примитивно - мир игры описан в книге сценария – и то, где и какие сражения произойдут игроки узнают последовательно, переходи из одной локации в другую. Этим игра немного похожа на Ambush! Где описания заменяют ведущего. И, как и в играх Ambush! - типа, от этого сильно страдает реиграбельность.
Собственно, «ИИ» в Gloomhaven раскрывается в необычных тактических боях, где автоматический карточный движок управляет поведением монстров. Т.е. “Картонный ИИ” в Gloomhaven — это не искусственный игрок в полном смысле, а процедурный движок для поведения врагов, собранный из карт, базовых характеристик монстров и заранее заданных правил выбора цели, движения и атаки.
Каждый раунд для каждого типа монстров вскрывается карта способности; она задаёт инициативу и набор действий на этот раунд. Затем все монстры этого типа действуют по одной и той же инструкции, а их конкретное поведение уточняется общими правилами фокуса на цели, движения и атаки.
У этой системы три слоя. Во-первых, слой шаблона: у монстра есть базовые характеристики на карточке свойств - здоровье, базовое движение, базовая атака, дальность и постоянные особые свойства.
Во-вторых, слой тактических действий: карта способности на раунд сообщает, что именно этот тип монстров будет делать сейчас — например, раньше или позже ходить, двигаться, атаковать сильнее, лечиться, накладывать эффект и так далее. Одна карта вытягивается для каждого типа монстров на поле, и все монстры этого типа - и обычные, и элитные - исполняют именно её.
В-третьих, слой поведения монстров: когда карта говорит “двигайся” или “атакуй”, монстр выбирает цель согласно правилам (похоже на приоритеты в автоме), затем двигается минимально необходимым образом, чтобы атаковать эту цель с максимальным эффектом, а для дальнобойных атак старается избежать помехи от стрельбы вплотную. Если карта предписывает движение без атаки, монстр всё равно идёт к цели кратчайшим путём, как будто готовится к рукопашной.
Т.е. в, Gloomhaven мы имеем тактические бои, немного похожие по эффекту на систему Automa – хотя у монстров нет стратегии или тактики в бою, они создают ощущение разумно действующего противника и создают для игроков достаточно увлекательный вызов.
Заключение:
Как ни странно, задача создать в настольной игре искусственного оппонента или партнёра без электроники или сложной механики оказалась не только решаемой, но и удивительно плодотворной. За несколько десятилетий дизайнеры настольных игр выработали целый набор приёмов, позволяющих заменить живого противника: от таблиц и параграфов до сценарных триггеров и карточных алгоритмов. Сегодня соло- и кооперативных игр выходит всё больше, и почти все они, в той или иной степени, опираются на уже найденные принципы.
Поэтому, работая над собственной игрой, полезно смотреть не только на новинки, но и на старые системы. В них часто заложены решения, которые и сегодня остаются точными, изящными и неожиданно современными. Ambush!, игры системы COIN и другие игры показывают, что «искусственный интеллект» в настольном дизайне — это не обязательно попытка буквально воспроизвести человеческий разум, а искусство создать у игрока ощущение конфликта и сопротивления. Иногда это сопротивление выглядит как враждебная среда, иногда - как полноценный соперник с собственным стилем поведения.
Эти методы полезны не только дизайнерам настольных игр. Их принципы легко узнать и в цифровых стратегиях, и вообще в игровом дизайне как таковом. Например, опыт «автомы» помогает понять, почему компьютерный противник в некоторых RTS действует «нечестно»: он не обязан быть симметричным игроку, если его задача — не честно жить по тем же правилам, а создавать нужный темп, давление и игровой вызов. В этом смысле настольные игры особенно поучительны: они наглядно показывают, что искусственный оппонент — это не обязательно полноценный разум, а прежде всего тщательно спроектированная система реакций и приоритетов.
Настольные игры показывают, что для создания убедительного противника не всегда нужны вычислительные мощности. Иногда достаточно бумаги, нескольких таблиц и очень хорошего понимания того, какой именно вызов должен бросить игроку мир игры.
Комментарии
Войдите на сайт, чтобы оставить свой комментарий...