По Дену Стаббсу
Я мечтал об управляемой игроком  системе динамического повествования последние 20 лет, а последние 5 из них пытался придумать работоспособную разработку. The Hit станет ее первой частью, которая выйдет в публичный релиз. Мне необходимо будет получить столько пользовательских отзывов и показателей игроков, насколько это это возможно, чтобы получить уверенность в том, что спроектированная игра будет приятной и привлекательной с самого начала и построенной исключительно в динамической системе повествования. Когда игра будет выпущена, я начну добавлять больше динамических и развивающих систем для создания более богатого и глубокого повествовательного контента.

Есть одна вещь, которую я должен ясно дать понять: я не пытаюсь создать динамическую систему повествования для традиционной FPS или RPG, хотя надеюсь, что те, кто  прочтут нижеследующее, найдут информацию полезной. Вместо этого я строю игру вокруг динамической системы повествования, и многие из проектируемых и механических систем в The Hit обусловлены этим. Вот краткий обзор того, как будет работать динамическая система повествования.

Нулевой уровень: пешеходы и Город

 

На простейшем уровне Город полон пешеходов. Каждый пешеход имеет свой NPC-стиль [который описан так просто, чтобы в рамках игры можно было только понять, как выглядит персонаж] и зацикленный маршрут, по которому он постоянно движется. С точки зрения процессорного времени пешеходы очень просты и смехотворно дешевы, и поэтому тысячами могут существовать одновременно на игровой сцене. Кроме того, они синхронизированы в сети, для того чтобы другие онлайн-игроки могли видеть одних и тех же пешеходов на одной улице.
Сам Город состоит из секторов (в полквартала размером), для каждого из которых назначено определенное количество пешеходов. Генерация правил для каждой из секций города диктует процент разных типов NPC (в костюмах, повседневной одежде и т.д.), созданных для этих секций. Этим я занимаюсь в данный момент. Я сконцентрировался на том, чтобы сделать The Hit полностью играбельным и безупречным для первого выпуска, после чего я начну разработку первого уровня системы в игре.

Уровень 1: NPС и Облако

 

Если игрок взаимодействует с пешеходом (если он заговорит с ним, сфотографирует его или будет следовать за ним в течение определенного времени), тогда некая процедурно генерируемая информация будет закреплена за этим пешеходом и он станет NPC. NPC будет присвоено имя, профессия и два или более адреса (обычно домашний и рабочий; также он может иметь автомобиль, который будет использовать для езды от одного адреса к другому). Простой циклический путь, которым он следовал до этого, также будет заменен на дорогу с началом и концом, так что любой из NPC будет выглядеть и вести себя реалистично.
Данные, используемые для генерации образа NPC, будут взяты из Облака, которое представляет собой постоянный и перманентно изменяемый набор информации, охватывающей каждый аспект геймплея. По существу, это резерв предварительно сгенерированной информации, позволяющий игре всегда когда это требуется иметь “под рукой” необходимые данные. В спокойные моменты геймплея Облако будет создавать новые наборы данных, включающие не только информацию об NPC, но и процедурно генерируемые плакаты, вывески, рекламные щиты, граффити, рисунки т.д.
Если данные NPC не используются (например, если игрок начал разговор с NPC, но не узнал его имени или того, где он живет или работает), то они либо полностью игнорируются, либо возвращаются в Облако, и NPC снова назначается статус пешехода. Это позволяет избежать необходимости хранения данных о каждом пешехода в городе, ведь память с гораздо большей выгодой можно использовать в другом месте.
Здесь, как мне кажется, система, описанная недавно Кеном Левином в GDC, разваливается. Нет необходимости моделировать все в игре-мире, пока игрок ощущает реалистичность происходящего. Больше сигналов — меньше шума. Dwarf Fortress (правящий король исходящего контента) на самом деле не создает повествование путем моделирования, он просто генерирует достаточно «шума» с достаточно специфичным  контекстом для игрока, чтобы он был в состоянии выделить сигнал из этого общего шума. Большинство игроков, однако, не будут столь терпеливыми, чтобы фильтровать весь шум с целью вычленения из него повествования.

 

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

Уровень 2: Персонажи и Режиссер

 

NPC  — это еще не совсем персонаж. Персонажи же могут быть созданы одним из двух способов. Первый — если игрок проводит достаточно времени в непосредственной близости от NPC, он будет запрашивать данные персонажа из Облака. Второй метод  — через Режиссера. Похожий в применении с Режиссером AI в четвертой серии Мертвецов. Режиссер постоянно наблюдает за игроком и может принимать решение о реализации различных сюжетных нитей, которые есть в игре. Он может на лету извлекать данные из Облака, и применять их к NPC в игре.
Персонажи обладают показателями, которые могут иметь инструкции исключений, таким образом конфликтующие черты никогда не назначаются одному персонажу. Показатели являются модульными, и могут быть общими, редкими и уникальными. Самые уникальные показатели будут иметь историю (см. ниже), привязанную к ним.
Примеры показателей: Слабый слух, Южный акцент, Религиозность, Нелюдимость, Гунг-хо, Безумная ревность, Родственник, Самоубийца, Серийный убийца и т.д.
Небольшой, но важной частью создания абстрактных систем является продумывание способов визуального представления системы, чтобы пользователи могли быстро создавать и обмениваться контентом. Одной из моих целей является открытие системы The Hit для разработчиков сюжета, которым будет нужен простой способ отображения показателей на своих персонажах или понимания, как сотрудники создали этих персонажей. В итоге это, скорее всего, будет выглядеть примерно как система Чакры или Каббалы.
Персонажи могут также создаваться разработчиками в полном либо частичном объеме, в этом случае модульная система позволит им быстро воплотить новый персонаж в жизнь. Для The Hit я не планирую в ближайшем будущем использовать разговорный диалог, что ускорит и сделает дешевле разработку прототипов и последующее тестирование.


История игры

 

Режиссер, по существу, играет в свою собственную игру с игроком и имеет несколько правил для работы. Он обладает памятью о последних сюжетных точках (событиях, связанных с другими событиями) и стремлением к тому, что бы такие сюжетные точки продолжали возникать на регулярной основе, иногда перемежаясь с автономными инцидентами. Он также знает, как далеко игрок отстоит от текущих основных и второстепенных сюжетных арок. Эта часть немного сложнее. Наверное, лучший всего объяснить ее, использовав карточную игру в качестве метафоры.
Истории состоят из дискретных событий, и могут существовать как отдельные события, цепочки событий и арки. При этом нет предела длине этой цепочки или арки; истории также могут быть вложены в еще большие арки.
Каждое событие будет иметь много условий запуска, которые должны быть выполнены, прежде чем событие сможет начаться. Условиями могут являться знакомства (или, скорее, их отличительные черты), объекты или информация, и их можно рассматривать как карты в руке игрока. Режиссер будет постоянно сортировать свой ​​список событий в порядке желательности. Если игрок пропускает только одну карту события с высоким значением, Режиссер может принять решение ‘усилить’ карты в руке игрока с помощью меньшего события.
Пример события 1 (Вестерн): игрок отследил банду Якоби, которая скрывалась на семейной ферме. Используя хитрость и стратегию, игрок убивает участников банды один за другим, пока не остается только 18-летний Ларри Якоби. Вместо того чтобы бороться, он бросает свой ​​пистолет и предлагает купить свою свободу за определенную часть информации. Это событие можно использовать для передачи в руки игрока либо персонажа (не обязательно только самого Ларри), либо элемент или даже просто информацию, независимо от того, позволит ли игрок жить Ларри Якоби или нет; оно может также обеспечить существование захватывающего и удивительного сюжета.
Пример события 2 (Фэнтези): игрок обладает магическим артефактом, а также имеет дружественные отношения с неким могущественным персонажем, который выясняет, что артефакт является невероятно опасным и, одновременно, очень нужным особо могущественному злому персонажу. Он/она решает, что игрок должен транспортировать артефакт к месту, где он может быть уничтожен, и призывает нескольких способных друзей на помощь игроку. Это может быть началом эпической арки, и позволит также ввести в сюжет сразу многих персонажей.

 

Преимуществ этой системы много: быстрота развития, гибкость и разнообразие игр, она также позволит разработчикам создавать и изменять события по ходу действия, вместо того чтобы разрабатывать все с самого начала.
Есть момент, который я должен подчеркнуть. События будут, насколько это возможно, ориентированы на игрока. Режиссер постоянно пытается настроить события, окружающие игрока, но они останутся посторонними для игрока до тех пор, пока не возникнет условие, которое сделает старт события абсолютно необходимым. Для того чтобы это произошло, у Режиссера будут триггеры для старта ряда событий в игре в любой момент времени, их число будет увеличиваться, и, следовательно, вероятность запуска события будет тем больше, чем дольше игрок идет, не вовлекаясь в сюжетные узлы. Когда игрок инициирует определенной событие, большинство триггеров для инициации других событий удаляются из игры до тех пор, пока не понадобятся снова. Останутся только некоторые разовые события; мы не хотим, чтобы игрок путался в нескольких сюжетных точках. Опять же, это может быть еще одним большим преимуществом в сравнении с традиционной системой RPG Quest. Это даст разработчикам шанс вести историю вместо того, чтобы вынуждать игроков застревать на множественных миссиях для того, чтобы максимизировать свои шансы на получение XP в каждой локации.
Мультиплеер встроен в The Hit  с самого начала и должен снизить число проблем, в сравнении с традиционными сюжетными играми. Из-за того что персонажи и события генерируются в игре, разработчикам никогда не придется столкнуться с проблемой персонажей, существующих в разных локациях в игре каждого игрока. Кроме того, персонажи могут быть разделены между игроками, пока те подключены, и изъяты из игры, когда игроки покидают ее. Основное влияние мультиплеера на геймплей состоит в том, что Режиссер всегда будет иметь больше “карт” для игры, и, следовательно, больше возможностей для создания событий и разворачивания сюжета.


Об авторе

Я занимался разработкой видеоигр и приложений, моделированием и подготовкой программного обеспечения для оборонной промышленности и ряда других крупных организаций, работал в анимации, вел семинары Unity, был глубоко вовлечен в организацию различных игровых джемов, встречается и фестивалей и время от времени писал об играх. Я оставил прекрасную работу пару лет назад, и теперь могу создавать игры, и посвящать The Hit большую часть времени.
 
Перевод Н.Мельничук, Оригинал — здесь
 
Become a patron at Patreon!