Что делать с миссиями в играх

Oct 21, 2023 14:48

У игр, подобных РПГ, но и не только, сейчас большие траблы с миссиями.

Годные и атмосферные бывают, однако в ста процентах случаев их спецом написали сценаристы. Что само по себе имеет кучу дополнительных проблем.

Во-первых, реиграбельность у таких миссий очень низкая. Даже если там предусмотрены разные концовки, в зависимости от выбора, мильярд концовок написать не в человеческих силах, и после пары-тройки попыток игрок уже знает все. В сотый же раз делать то, что было очень красиво и детально описано - это иммёршн брейкинг. Поскольку каждому интуитивно понятно, что столь детальное не может повториться в мире даже два раза, не говоря уже про сотню раз.

Во-вторых, очень тяжело подогнать такие миссии под мир, который может реально меняться. Ибо всем понятно, что если вы в стратегии низвели какую-то страну до одной провинции, то её правитель, даже если решит претендовать на мировое господство, вряд ли сможет выдвинуть огромные армии адских чудовищ, как это прописано сценаристами. То есть, либо надо делать мир статичным, либо скриптом преобразовывать его к нужному состоянию. А это тоже иммёршн брейкинг. Ну или, как вариант, большинство миссий в большинстве партий будут пылиться на полке.

В-третьих, технически нереально заранее прописать все те влияния, которые тот или иной исход выполнения миссии окажет на сотни персонажей и игровых объектов, как и то, как детали миссий поменяются, в зависимости от текущего состояния оных. Что побуждает делать «художественные» миссии очень локальными и камерными. Вовлечённые в них как бы изолируются от всего остального мира, несмотря даже на то, что игрок в процессе выполнения может снести все космические станции в некоторой звёздной системе, хотя это и не было предусмотрено сценаристами.

С другой стороны, автогенерируемые миссии, хотя и выглядят привлекательно, хорошо так нигде реализованы и не были. В RDR 2 и куче других проектов обещали сделать так, чтобы взаимодействие NPC или хотя бы действия игрока сами по себе порождали игровые миссии, логично привязанные к состоянию мира, однако хрен там - NPC имеют распорядок дня, правда пытаются ему следовать, но миссий не генерируют. Вместо этого имеются только «абстрактные» прегенерённые миссии.

Которые в своих проявлениях выглядят примерно как «вам надо… бросаем кубик… убить… бросаем кубик… 193… бросаем кубик… орков… бросаем кубик… в Шмагенроке». Лично для меня такая генерация окончательно добила Elite Dangerous в моих глазах, но уверен, что счёт таким образом добитых игр в глазах всего человечества идёт на сотни.

Иными словами, плохо и так, и эдак.

Гипотетически второй вариант перспективней - особенно если попытаться добавить к нему децл художественного текста от сценаристов, но чо-то пытаются, а не выходит.

И я даже могу догадаться почему - дерево вариантов оказывается слишком развесистым, чтобы его мог охватить не только сценарист, а даже те программисты, которые пишут генератор миссий. Как накидать кубиком заполнение универсального шаблона понятно, а вот как написать продвинутый анализатор состояния, не потратив на это вечность, уже не понятно.

Что характерно, в это время человек, даже если он не имеет особого сценарного опыта, вполне себе справляется с задачей, если ему состояние мира-таки описать и сказать, что в этом мире игрок вообще может делать.

И это подводит меня к интересной мысли: это ли не отличная сфера для применения GPT?

Мы даём ему вводную про устройство мира, про то, что игрок и NPC там могут делать, и про текущее состояние мира, а он генерирует иммерсивный текст задания, а заодно и то, что игроку физически надо сделать в соответствии с игровыми механиками. Когда игрок каким-то образом завершил квест, мы сообщаем эти детали ИИ, и он генерирует, во-первых, иммерсивный ответ от квестодателя, а во-вторых, что от фактических результатов поменялось в мире и во взаимоотношениях игрока с этим миром.

Шах и мат, аметисты, мы только что совместили художественный сценарий с учётом состояния динамичного мира, сделали миссии сколь угодно разнообразными и бонусом получили возможность генерировать сколь угодно длинные и разветвлённые деревья миссий, не написав ни строчки кода, который строит эти деревья. Конечно, генератор запросов к ИИ и парсер его ответов написать нам всё-таки пришлось, однако это ведь гораздо проще.

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

Запрос:

Предположим, у нас есть игра во вселенной вроде Elite Dangerous. Игрок может сражаться в космосе и на поверхности планет, может посещать космические станции и планетные аванпосты, может брать и отдавать некоторые вещи, может продавать и покупать товары, может вести разведку путём сканирования планет и посещения мест (посещение здания или комнаты даёт больше данных чем сканирование в широком диапазоне), может управлять наземным транспортными средствами, может вести добычу на астероидах и породах на поверхности планеты.

Ты должен создать миссию, которая появляется, когда игрок запрашивает миссию у какой-то шпионской организации. Миссия должна содержать художественный текст о том, что игроку надо делать и почему, и описывать, что игрок действительно должен делать в игре согласно её механике.

Ответ:

Вот потенциальная шпионская миссия для описанной вами игры:

Брифинг миссии:

Мы недавно получили оперативные разведданные, позволяющие предположить, что высокопоставленный член корпорации Veritas посетит космическую станцию Омикрон Прайм в ближайшем будущем. Корпорацию Veritas уже давно подозревают в разработке незаконного оружия и технологий, однако убедительных доказательств найти не удаётся. Нам нужен кто-то внутри корпорации, чтобы подтвердить, перевозят или хранят ли они какие-либо незаконные материалы на Омикрон Прайм.

Ваша миссия - проникнуть на станцию под видом торговца, доставляющего груз. Во время разгрузки груза осторожно осмотрите территорию и определите, есть ли у Veritas Corp какие-либо зоны ограниченного доступа или подозрительные грузовые контейнеры. Если возможно, установите устройства наблюдения в ключевых районах, но избегайте обнаружения любой ценой. Мы не можем позволить себе межгалактический инцидент из-за непроверенных подозрений. Транспортный корабль «Архангел» должен прибыть на Омикрон Прайм через 48 часов - вы должны быть на борту, когда он пришвартуется. Это тайная операция: проникните внутрь, получите информацию и уходите. Отчитайтесь, как только миссия будет завершена. Удачи, оперативник.

Что нужно сделать игроку:

  1. Приобретите подходящий грузовой корабль и замаскируйтесь под торговца.

  1. Приземлитесь на Омикрон Прайм, когда прибудет Архангел.

  1. Разгружайте товары в качестве прикрытия.

  1. Исследуйте космическую станцию и ищите запретные зоны.

  1. Сканируйте любые подозрительные грузовые контейнеры, чтобы определить их содержимое.

  1. Устройства наблюдения размещайте за пределами зон с ограниченным доступом, если это возможно.

  1. Избегайте обнаружения охранниками или персоналом Veritas Corp.

  1. Безопасно вернитесь на корабль и покиньте станцию, прежде чем истечёт время.

  1. Сообщите о результатах контактному лицу шпионской организации.

Запрос:

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

Ответ:

Ответ дающего миссию:

«Поздравляю, оперативник, несмотря на некоторые сложности, вам удалось получить важную информацию о деятельности Veritas Corp на Омикрон Прайм. Наши аналитики все ещё просматривают данные с ваших устройств наблюдения, но ясно, что они накапливают нелегальную взрывчатку и оружие из антиматерии. Эти доказательства позволят нам, наконец, положить конец их опасным операциям. Однако Веритас наверняка будет сейчас в состоянии повышенной готовности в поисках злоумышленника. Мы уже слышали сообщения о том, что они усиливают меры безопасности на всех своих объектах. К сожалению, ваше прикрытие на Омикрон Прайм было дезавуировано - вам придётся затаиться на некоторое время, прежде чем вернуться туда. Тем не менее, отличный рабочий агент. Кредиты были переведены на ваш счёт вместе с бонусом за выполнение основной задачи, несмотря на ваше обнуружения. Эта информация, возможно, только что предотвратила потенциальную галактическую катастрофу. Отдохните немного, и мы скоро свяжемся с вами с новым заданием».

Последствия/Изменения:

  1. Veritas Corp повышает безопасность на всех своих объектах

  1. Игрока теперь разыскивают в Омикрон Прайм, и, если он вернётся, на него нападут сразу же.

  1. Власти Галактики начинают расследование деятельности Veritas Corp.

  1. Veritas может послать за игроком убийц/охотников за головами в качестве мести.

  1. Игрок получает оплату плюс бонусные кредиты за выполнение основной цели.

  1. Открываются новые сюжетные возможности и миссии против Veritas Corp.

  1. Незаконная взрывчатка из антивещества увезена с Омикрон Прайм

  1. За успех игрок получает репутацию в шпионской организации.

  1. Возможные будущие диверсионные миссии против объектов Veritas.

  1. Veritas может попытаться провести контроперацию против игрока и его союзников.

Запрос:

Игрок попадает в систему Альбино, в которой есть несколько кораблей корпорации Veritas, множество свободных торговцев и несколько космических пиратов. Есть три обитаемые планеты с шахтерскими аутпостами, и одна с пригодной для дыхания атмосферой, на которой несколько небольших аграрных городков. Сгенерируй иммерсивное событие в соответствии с игровой механикой, дав техническую информацию о том, что на самом деле происходит в игре благодаря этому.

Ответ:

  1. Корабли Veritas Corp атакуют медицинский транспорт Halcyon

  1. Транспорт близок к разрушению, двигатели/двигатели отключены.

  1. Экипаж спасается в капсулах, которые пытаются сбить корабли Veritas.

  1. В наличии ценный медицинский груз, направляющийся в колонию Альбино-3

  1. Дополнительная миссия - вступить в бой с кораблями Веритас и отогнать их.

  1. Если транспорт будет уничтожен, в колонии возникнет кризис нехватки медицинских работников.

  1. Выживший экипаж может предоставить информацию об атаке.

  1. Битва с кораблями Веритас ещё больше ухудшит репутацию с ними.

  1. Есть возможность разграбить транспортный груз, если его не подберёт никто другой.


Не могу сказать, что это прямо вообще самые лучшие миссии, которые я видел в жизни, однако…

  1. Это совершенно точно гораздо лучше, чем убийство рандомных 193 рандомных орков в рандомном Шмагенроке.

  2. Это - по крайней мере, с виду - привязано к реальному положению вещей в игровом мире.

  3. Похоже, что любой исход можно обработать таким образом и получить одновременно художественный ответ в диалогах с NPC и описание изменений в игровом мире.

Так что, возможно, скоро мы увидим совсем другие расклады в игровых миссиях.

doc-файл

игры

Previous post Next post
Up