реклама
Бургер менюБургер меню

Николя Денешо – The Last of Us. Как серия исследует человеческую природу и дарит неповторимый игровой опыт (страница 25)

18

Эпизод в университете Колорадо – еще одна возможность понаблюдать, с каким тщанием Naughty Dog работает над общей связностью своего произведения и над повествованием через окружение. Ни один из элементов нельзя назвать случайным. Элли и Джоэл очень удивляются, обнаружив на территории университета обезьян, однако позже присутствие животных объяснит найденная аудиозапись. Из нее мы узнаем, что над обезьянами проводились эксперименты по поиску вакцины. Когда животные оказались заражены, часть ученых решила отпустить их на волю. Серьезная профессиональная ошибка, вне зависимости от этических взглядов на страдания животных.

В результате случилось то, что должно было случиться: как только обезьяны оказались на свободе, на территории университета началось всеобщее заражение[49]. Ученые бросили вещи в спешке – значит, отступать им пришлось быстро. Эта история с обезьянами второстепенна и на первый взгляд может показаться банальной и трагикомической, но она лишний раз указывает на полный непрофессионализм «Цикад», которым они словно бы упиваются. Они нечто среднее между благожелательными хиппи, безобидными экологами и великими мучениками нового мира.

Когда наши герои узнают, что «Цикады» ушли в Юту, в здание врывается банда мародеров. Чуть позже мы узнаем, что они еще и каннибалы. Начинается ожесточенная схватка. Один из нападающих застает Джоэла врасплох и скидывает с высоты. Падение чуть не стоит герою жизни – тот напарывается на ржавый штырь, торчащий из земли. К этому моменту игрок уже успел привыкнуть к игровым механикам The Last of Us и сценам боя, которые сочетаются с Quick Time Event (QTE). Поэтому у него может невольно создаться впечатление, что он пропустил некое действие и сейчас сцена начнется заново.

Но камера медленно поднимается и останавливается на Элли, которая приходит на выручку спутнику. Этот момент тонко намекает на последующие события и полную смену парадигмы в отношениях Элли и Джоэла. Наш герой серьезно ранен и обязан спасением воинственной Элли. Ей удается с честью выстоять в последней схватке, после чего герои наконец смогут сбежать из университета. Управление становится неточным, зрение размытым, камера двигается рывками, а Джоэл слабеет с каждой секундой и оставленной позади каплей крови. Глава кончается кадрами, в которых Джоэл теряет сознание и падает с лошади. Элли кидается к нему, обхватывает руками, стараясь поднять, и твердит, обезумев от страха: «Джоэл! Вставай! Вставай! Скажи, что делать! Давай! Ну вставай ты! Джоэл!»

7

Руководство по выживанию

Искусственная философия

Лучший способ создать реалистичный искусственный интеллект – сначала сделать персонажей хотя бы не тупыми, а потом уже стараться сделать их умными.

Не будем лукавить. В The Last of Us искусственный интеллект – точнее то, что мы подразумеваем под этим понятием – очень далек от идеала. Можно даже честно заявить, что это одна из самых больших проблем игры. Из-за нее становится очевидно, что по убедительности геймплей недотягивает до сюжета, в который и правда вложено много работы. Но пусть это не помешает рассмотреть серьезную и актуальную проблему для всей индустрии, которая старается экспериментировать и проявлять всю возможную изобретательность, чтобы оживить бои в играх.

Разработка искусственного интеллекта (именно этот термин обычно используется для набора сценариев, которые в определенное время или при определенных действиях оживляют неигровых персонажей) начинается с выбора философии. Вопреки распространенному мнению, речь не о подражании реальной жизни, разработчик не пытается создать робота, способного справиться с любой ситуацией. Напротив – он создает систему, способную воспроизводить определенное количество повторяющихся действий. Как и любая другая машина. Следовательно, нужно выбрать такую философию, которая соответствует тону игры.

В играх серии Mario Bros. тоады и другие существа, преграждающие путь сантехнику, задуманы не как жестокие противники, а как препятствия. Ведь в первую очередь игра испытывает мастерство игрока. В Pac-Man наоборот – призраки неустанно преследуют нашего круглого героя и следят за каждым его движением благодаря алгоритму, который анализирует движения джойстика.

Вот более свежий пример – искусственный интеллект саранчи, чудовищных противников в игре Gears of War от студии Epic. Они запрограммированы постоянно наседать на игрока, а если и давать иногда слабину, то только чтобы спровоцировать игрока на риск. А что же The Last of Us? Вы вряд ли удивитесь, узнав, что технические специалисты Naughty Dog с самого начала разработки геймплея – в 2008 году – хотели использовать поведение неигровых персонажей на благо сюжета.

Трэвис Макинтош, один из главных программистов студии, подробно описал этот процесс в статье для специализированного журнала Game AI Pro[50]: «Когда мы начали разрабатывать первые прототипы ИИ врагов-людей, мы задались вопросом: „Как заставить игроков почувствовать, что противники достаточно человечны, чтобы убивать их стало неприятно?“ Ответив на этот вопрос, мы нашли нужное направление[51], которое определило весь дальнейший дизайн искусственного интеллекта. Набрать лучших актеров, лучших специалистов по графике, лучших аниматоров – всего этого недостаточно. Нужно, чтобы уровень искусственного интеллекта соответствовал всему этому».

Давайте перейдем к технической стороне вопроса – держитесь, это будет интересно! Модель, которой пользовались в Naughty Dog для создания искусственного интеллекта со времен Jak and Daxter, называется «машина с конечным числом состояний»[52].

Эта система стала популярной после выхода Half-Life от студии Valve в 1998 году и до сих пор широко используется в видеоиграх. Если коротко, это метод теоретического моделирования сложных математических задач. Для примера возьмем неигрового персонажа (NPC), функция которого заключается в охране некой двери. В исходном состоянии он блокирует доступ к ней. При приближении игрока он поднимает оружие и требует пропуск. Когда NPC показывают документ, он опускает оружие и отходит в сторону, пропуская игрока. Как только он проходит, привратник возвращается в исходное положение. Вот как выглядит схема его действий.

Это упрощенный пример, но по нему можно понять две особенности такого подхода. Каждое из «состояний» («NPC блокирует вход», «NPC отходит в сторону и пропускает игрока») должно быть предусмотрено заранее и проверено на реакцию со всеми возможными взаимодействиями, никаких неожиданностей здесь не предусмотрено. Иными словами, все прописано заранее.

С помощью этого примера можно понять, что использование термина «интеллект» во многих случаях лишь преувеличение. Разработчики The Last of Us немного переработали идею «состояний» и «взаимодействий» и назвали их «Навыки» и «Поведение» (Skills and Behaviours). Идея в следующем: сначала нужно определить полный перечень действий, которые способен выполнять NPC, а затем перечислить все возможные для него взаимодействия с окружающим миром. Например, человек способен исследовать, наблюдать, прятаться и стрелять, а зараженный – бродить и преследовать добычу. В Game AI Pro Марк Ботта так говорит об этой архитектуре: «Как правило, персонажам не нужна сложная система принятия решений, чтобы выглядеть убедительными и создавать иллюзию интеллекта. Им достаточно казаться реалистичными и правдоподобно реагировать на окружающий мир».

Хотя система «машина с конечным числом состояний» может показаться сложной и тяжеловесной из-за необходимости просчитывать все возможные взаимодействия, она дает разработчику определенную гибкость. Каждую идею можно протестировать и при необходимости добавить новый элемент («Навык» или «Поведение»). Его легко интегрировать без проблем для остальной части архитектуры искусственного интеллекта. А когда все возможные ситуации проработаны, дизайнер ИИ отправляет этот документ разработчику. Тому остается лишь переложить случаи, описанные в диаграмме, на язык программирования.

Организованная охота

Объяснения выше могут показаться слишком оторванными от конкретики, поэтому давайте возьмем в качестве примера охотника. Это тип противников-людей, которые постоянно встречаются по ходу игры. Этот враг сражается в команде, в отличие от зараженных, которые подчиняются звериным инстинктам и действуют сами по себе. Поэтому охотники должны договариваться и согласовывать свои действия, когда противостоят игроку. Для этого разработчики наделили их следующими навыками: поиск, расследование, наступление, укрытие, перегруппировка, рукопашный бой, стрельба, бегство. Теперь им остается только ждать игрока и отвечать на его действия.

Для обнаружения нападающих охотник использует два чувства. Во-первых, это зрение. Поле зрения у этих противников устроено довольно сложно и раньше в подобных играх не встречалось. Учитывая мир The Last of Us, наполненный руинами, охотники видят в открытом пространстве под углом 90 градусов на расстояние примерно десять метров. Затем угол зрения уменьшается до 45 градусов.

Эта система более сложная и реалистичная, чем, например, в Uncharted или Metal Gear Solid 3. Там поле зрения NPC составляет 45 градусов, поэтому они часто не видят вас, даже когда вы вплотную подходите к ним в ближнем бою.