Monster Prom: Создание диалоговой системы для многопользовательского симулятора свиданий

МонстрПром серия от Beautiful Glitch — это мастер-класс по контролируемому хаосу. Эта популярная франшиза берет симулятор свиданий (обычно это одиночная игра), добавляет абсурдный юмор и переворачивает сценарий, делая его конкурентной многопользовательской игрой. С четырьмя выпущенными играми (и пятой на подходе), тысячами разветвляющихся событий и отличительным комедийным голосом, Monster Prom является отличным примером того, как итерация на знакомой концепции может сделать ее свежей каждый раз.
Мы поговорили с Элиасом Перейрасом, ведущим программистом Beautiful Glitch, чтобы узнать о пользовательских инструментах, которые позволяют MonsterProm’s сложным разветвленным повествованиям, и о том, как эти инструменты развивались вместе с франшизой.
Найти идеальное соответствие жанра
Концепция Monster Prom возникла из простого наблюдения: Команда Beautiful Glitch увидела пробел на рынке для нарративных игр, которые можно играть с друзьями. С этой основной идеей в голове они начали исследовать различные типы нарративных игр и увидели потенциал в жанре симулятора свиданий.
«Мы остановились на симуляторах свиданий, потому что чувствовали, что жанр часто слишком привязан к своим конвенциям, и это может быть отличной отправной точкой, чтобы внести новый поворот и сделать его свежим для новой аудитории», — объясняет Элиас. «Одна идея стала особенно привлекательной: добавить многопользовательский режим в нарративный симулятор свиданий и, кроме того, придать ему комедийный и абсурдный тон.»
Эта смесь вечеринки и нарративной игры стала фирменным знаком студии. Популярность оригинального Monster Prom дала Beautiful Glitch средства для разработки сиквела (Monster Prom 2: Monster Camp), а затем еще одного (Monster Prom 3: Monster Roadtrip), и еще одного (Monster Prom 4: Monster Con). По мере роста франшизы команда продолжала внедрять инновации, руководствуясь основным принципом: Пусть повествование и тема определяют основные механики.
«Мы стараемся позволить нарративу вести нас. Прежде чем приступить к полноценной разработке, у нас уже есть четкое представление о сеттинге игры, поэтому мы стараемся думать о тематически подходящих механиках», — говорит Элиас. «Это наиболее очевидно в идее автопутешествия на Monster Prom 3, что сильно определяет жанр игры, но это также причина, по которой Monster Camp имеет механику «сплетни», а Monster Con позволяет игрокам создавать свои собственные комиксы.»
С постоянно развивающимися механиками, сотнями событий в каждой игре и объемом контента, необходимого для поддержки разветвленных нарративов для до четырех игроков, Beautiful Glitch столкнулась с некоторыми значительными техническими проблемами.

Проблемы с пайплайном
Наративная сложность Monster Prom, с бесчисленными переменными, проверками статов и разветвленными путями, требовала надежной системы. Но к тому времени, когда Beautiful Glitch начала работать над Monster Prom 2, пайплайн, который они разработали для первой игры, уже оказался несовместим с будущими проектами.
«Monster Prom использовал совершенно другую систему, чем та, которую мы используем сейчас», — говорит Элиас. «В той первой, более примитивной системе нам нужно было предрассчитать и сохранить все данные, извлеченные из парсинга, в сцене. Мы начали с очень ограниченного числа событий, поэтому то, что у нас было, работало; однако в конечном итоге это выросло до такой степени, что парсинг мог занимать до 20 минут. И что еще хуже: если возникала ошибка парсинга, процесс приходилось начинать заново.»

Этот медленный рабочий процесс был серьезным техническим барьером для студии. Двадцать минут парсинга означали двадцать минут меньше времени на разработку. Добавление нарративных правок от писателей было медленным и подверженным ошибкам. И в игре время загрузки было значительно дольше, потому что GameObjects, содержащие огромные объемы информации, должны были загружаться во время выполнения. Для Monster Prom 2 Beautiful Glitch решил полностью перестроить систему.
«В Monster Prom 2 мы использовали обычные .txt файлы, которые разбирались при запуске игры во время выполнения. Новая версия системы была оптимизирована до такой степени, что все разборы и загрузка данных из событий занимали около 0,1 секунды, что значительно упростило импорт текстов и тестирование событий», - говорит Элиас.

Настройка редактора для некодеров
Решение этой проблемы с производительностью вдохновило команду искать другие способы оптимизации их рабочего процесса. Студия хотела найти способ, чтобы писатели могли независимо проверять свой контент, не требуя глубоких знаний редактора Unity. Предложенное решение заключалось в многоступенчатом конвейере, который начинается с инструмента, знакомого большинству писателей игр: Google Sheets.

«Мы разработали инструмент, который автоматически импортирует таблицы из Google Drive и сохраняет их в проекте в виде .txt файлов», - объясняет Элиас. «После этого можно проводить правильные и глубокие проверки в редакторе, что намного быстрее и имеет доступ к реальным игровым активам, поэтому ошибки могут быть показаны в разных категориях для лучшего решения их проблем, проверяя формат, синтаксис, активы, наименования и так далее.»
Текст, импортируемый из Google Sheets в редактор Beautiful Glitch Validator, который отмечает ошибки для исправления.
Чтобы сделать этот рабочий процесс еще более доступным, Beautiful Glitch пошел дальше и создал инструмент под названием «Просмотр событий», отдельное исполняемое приложение, оснащенное основными инструментами проверки редактора, но обернутое в более удобный для писателей интерфейс.
«Наш Просмотр событий может проверять изменения в реальном времени из таблиц, импортируя их в StreamingAssets во время выполнения и предоставляя ту же проверку ошибок, что и инструмент редактора», - продолжает он. «Большое преимущество этого инструмента заключается в том, что импортированные события можно тестировать непосредственно в этой сборке для разработчиков, позволяя писателям больше итераций и сосредоточиться на улучшении качества текста и макета."
Ошибки событий из предыдущего видеоклипа, теперь видимые в Просмотре событий. Отсюда текст можно обновить, повторно импортировать и воспроизвести для быстрой проверки.
С обновленной контентной цепочкой, Beautiful Glitch теперь имеет лучшее из обоих миров: Программисты могут сосредоточить свои усилия на глубокой технической работе, в то время как писатели могут независимо вносить свой вклад в проект с помощью специально разработанного приложения для написания, проверки и тестирования. Влияние этого рабочего процесса быстро стало очевидным.
«Хорошо то, что инструменты, которые мы разработали в Unity, заключаются в том, что, даже если писатели могут использовать редактор и наши инструменты редактора для выполнения сложных задач, таких как создание персонажей, им не нужно это для их повседневных задач», - говорит Элиас. «Вместо этого они могут напрямую проверять свою работу в реальном времени и даже получать доступ к конкретным ячейкам таблицы, содержащим ошибки, чтобы легко их исправить. Таким образом, наши писатели не должны беспокоиться о том, чтобы овладеть новой технологией, и могут сосредоточиться на креативности и нарративе.»

Ключевые выводы
Если есть что-то, что стоит вынести из путешествия Beautiful Glitch с Monster Prom, так это то, что инвестиции в пользовательские инструменты не являются отвлечением; это основная часть процесса разработки, которая может кардинально изменить сотрудничество между техническими и нетехническими членами команды.
С тех пор Beautiful Glitch разработала пользовательские инструменты для автоматизации ряда повторяющихся задач, от создания данных персонажей и проверки изображений до классификации аудиоклипов и создания новых сборок. Это мышление, которое рассматривает разработку инструментов как неотъемлемую часть процесса разработки игр и которое в конечном итоге стоит инвестиций.
«Это то, что любой новичок-разработчик должен принять: время, сэкономленное с помощью пользовательских инструментов, почти всегда компенсирует время, потраченное на их создание», - говорит Элиас. «Рассматривайте создание инструментов как часть общего процесса разработки – а не как раздражающий обходной путь.»
Опираясь на расширяемость редактора Unity, Beautiful Glitch может сосредоточиться на том, что привлекает игроков к Monster Prom: юмористическое написание, неожиданные механики и удовольствие от игры – и неудачи – в конкурентном свидании с монстрами с друзьями.

Monster Glitch's MonsterProm серия доступна сейчас на Steam. Изучите больше игр, созданных с помощью Unity, на нашей странице кураторов Steam, и ознакомьтесь с другими историями от разработчиков Unity на блоге Unity и ресурсном центре.
