Обложка: 3 инструмента, которые помогут написать сценарий для игры

3 инструмента, которые помогут написать сценарий для игры

10
Оксана Чистовская
Оксана Чистовская

Игровой сценарист и нарративный дизайнер, гейм-дизайнер компании PecPoc Games

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

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

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

Twine

Движок Twine — пожалуй, самый популярный инструмент для сценарного прототипирования, в том числе в зарубежных студиях. Изначально его создал веб-разработчик Крис Климас, но сейчас он поддерживается группой людей в нескольких репозиториях на GitHub. Движок с открытым исходным кодом доступен в веб-версии и как приложение на ПК.

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

Карточки Twine

Внутренности карточки Twine

Twine использует собственные форматы Harlowe, Snowman и SugarCube. Это что-то вроде мини-движков в движке. У всех есть общий базовый функционал, но каждый использует свой язык программирования и разные фишки. Например, в SugarCube можно создать чек-лист, а в Harlowe поставить время. Также в открытом доступе есть множество разных макросов на JavaScript, созданных пользователями Twine.

Схема сюжета в Twine

Схема развития сюжета в Twine

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

Готовый файл сюжета скачивается в формате HTML. Его можно запустить в любом браузере, добавить на веб-сайт или даже конвертировать в JSON и портировать в Unity/Unreal Engine.

yEd Live

Онлайн-редактор диаграмм и блок-схем yEd Live — это инструмент не совсем про прототип, но про удобное выстраивание логики сюжета и вообще любых структур. Чтобы начать работать с yEd, достаточно запустить лаунчер в браузере. У немецкой компании-разработчика yWorks есть еще приложение yEd Graph Editor. Но лаунчер yEd удобен именно тем, что доступен с любого ПК.

В редакторе можно создавать диаграммы, блок-схемы, системы квестов и диалогов, структуры приложений и интерфейсов, родословные, семантические сети. В общем, много всего хорошего. По функционалу yEd удобнее, чем Draw.io или Visio.

Работа с программой максимально простая: перетаскиваешь элемент из списка шаблонов, добавляешь описание и выстраиваешь схему. Все ячейки разделены на группы в зависимости от визуала. Можно найти таблицы, иконки и отдельные элементы для UML-, BPMN- и ER-систем. Но если в списке нет подходящего изображения, то можно загрузить свою картинку в формате SVG.

yED live в лаунчере

Пример работы yED live в лаунчере

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

На официальном сайте программы можно найти примеры диаграмм, которые были созданы реальными разработчиками. Например, там опубликована модель состояния для онлайн-игры Ingress. Все примеры можно открыть сразу в лаунчере, что очень удобно для изучения.

Модель состояний игры в yEd

Модель состояний для онлайн-игры Ingress в yEd. Автор: Роланд Виз.

Ещё в редакторе доступны автоматическое выравнивание элементов, добавление аннотаций к каждому объекту, изометрическое отображение и прочие визуальные шалости. Готовую схему можно сохранить в PNG, SVG, PDF или выгрузить в собственном формате yEd и отправить файл в облако, чтобы работать с проектом на другом устройстве. Ещё один вариант — поделиться схемой на GitHub.

Articy Draft

Программа Articy Draft — это мощный инструмент для моделирования сюжетов, в том числе. для AAA-игр. Не зря ее использовали в работе CD Project Red, BioWare и Ubisoft. Этот инструмент использовали при создании таких игр, как Disco Elysium, Tropico 6, Gardenscapes и SpellForce 3.

Программа позволяет спроектировать сюжет, некоторые геймплейные элементы, создать полноценный сценарный прототип и сыграть в него. К сожалению, бесплатной версии у программы нет, кроме trial-версии на 14 дней. Есть подписка от 6 $ в месяц или покупка в Steam за 100 $. Для крупных проектов эти расходы окупаются, потому что функционал этого инструмента очень широкий.

В программе можно создать:

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

Все описанные выше элементы можно привязывать друг к другу. В этом и кроется козырь программы: можно создать огромную игровую вселенную, не запутавшись в ней.

Пример разработки в Articy Draft

Разработка в Articy Draft

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

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

По итогу работы с программой гейм-дизайнер или нарративщик получит полноценную конфигурацию, которую будет не стыдно отдать программистам. Проект можно сразу портировать в движки Unity/Unreal Engine или экспортировать в форматах JSON, XML, DOC и XLSX.

Что думаете?