На этой странице представлена более подробная информация о том, как построено основное задание в шаблоне Повествование и ролевая игра и как оно связано с устройствами «Диалог». Также здесь объясняется работа устройства Verse «Диспетчер заданий», включая примеры кода Verse.
Начало задания
В этом шаблоне есть два способа начать основное задание: поговорив с дроидом-диджеем или с Карис. Прогресс не будет зависеть от того, с каким персонажем игрок заговорит в первую очередь. Разговор с Карис лишь перенаправит игрока к дроиду-диджею, поскольку тому нужна помощь. Однако вы можете создавать задания, в которых цели или прогресс будут меняться в зависимости от того, с каким персонажем игрок начнёт диалог.
Первый разговор с DJ R0-B0
Если игрок сначала поговорит с DJ R0-B0, дроид в какой-то момент скажет, что не может воспроизводить музыку из-за сломанной детали. Его знакомая Эскей должна была найти замену для этой детали, но дроид не знает, куда она запропастилась. Игрок может расспросить окружающих, чтобы выяснить, где найти Эскей. В конце концов он получит совет обратиться к Карис за стойкой.
Первый разговор с Карис
Во время диалога с Карис игрок может спросить: «Кому-нибудь нужна помощь?» В результате Карис расскажет о DJ R0-B0 и Эскей. После чего игрок направится к DJ R0-B0, будучи в курсе информации об Эскей. Дроид расскажет игроку о детали, которую должна была достать Эскей, и задание продолжится.
Отслеживание заданий с помощью устройства Verse «Сценарии-диспетчер заданий»
Устройство Verse Сценарии-диспетчер заданий использует сценарий quest_manager_device.verse, который управляет различными этапами основной сюжетной линии. Также оно определяет, для какого персонажа запускается сценарий dialog_device.verse.
Код Verse содержит подробные комментарии, которые поясняют, что делает каждая часть кода. Ниже приведена полная копия кода Verse для вашего удобства.
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
# See https://dev.epicgames.com/documentation/en-us/uefn/create-your-own-device-in-verse for how to create a verse device.
cantina_objectives<public>:=enum:
GameStart,
QuestAccepted,
Продвижение заданий с помощью целей
При создании задания необходимо составить список его целей. В этом шаблоне основное задание имеет нижеследующие цели.
Начало игры: в начале игры игроку предлагается поговорить с персонажами в «Норе».
Задание принято: игроку нужно узнать, что случилось с Эскей.
Поговорите с диджеем об Эскей: после разговора с Карис игрок может вернуться к дроиду-диджею и поделиться информацией об Эскей.
Найдите предмет: дроид-диджей сообщает игроку, что Эскей работала с Вексом — другим мусорщиком. Игрок соглашается поговорить с Вексом. Если игрок обратится к Вексу после разговора с дроидом-диджеем, мусорщик отправится искать нужную деталь.
Отнесите предмет диджею: когда игрок получит деталь, ему нужно будет отнести её дроиду-диджею и починить его.
Поговорите с Карис: после помощи дроиду-диджею игроку нужно будет снова поговорить с Карис. Карис сообщит, что капитан хочет поговорить с игроком.
Познакомьтесь с капитаном: игрок должен будет проследовать в комнату капитана.
Задание выполнено: после разговора с капитаном Джорном задание завершится, и игрок увидит сообщение о выполнении задания.
Настройка устройства «Управление заданиями»
Обычно для настройки и управления целями заданий используется устройство Управление заданиями. В этом шаблоне для управления и отслеживания задания используется сценарий quest_manager.verse, а устройство «Управление заданиями» применяется для отображения текущей цели на экране.
Устройство «Управление заданиями» можно найти в структуре, перейдя в раздел Интерфейс > Цели. Дважды нажмите, чтобы перейти к устройству в редакторе.
Задайте следующие параметры, если они ещё не заданы. Для всех настроек, не указанных в списке, можно оставить значения по умолчанию.
Настройка | Значение | Пояснение |
Отслеживаемый показатель | События | Если выбран параметр «События», ни один показатель отслеживаться не будет. Однако значение «Управление заданиями» можно изменять с помощью событий. |
Целевое значение | 1 | Значение, при котором устройство «Управление заданиями» завершает отслеживание. |
Закрепление в начале игры | Ложь | Обычно устройство «Управление заданиями» назначается игроку при начале игры, но в данном случае используется устройство Verse «Диспетчер заданий», поэтому этот параметр отключён. |
Закрепить при присоединении во время игры | Ложь | Напомним, что за назначение игроку отвечает устройство Verse «Диспетчер заданий», поэтому этот параметр отключён. |
Название задания | Задание: точка привязки | Название задания, которое отображается в элементе интерфейса вместе с текущей целью. |
Текст описания | Исследуйте «Нору» и поговорите с её обитателями | Этот текст — начальная цель, которая отображается при запуске игры. |
Виджет интерфейса | UW_UI_Tracker_Lightside | Пользовательский виджет интерфейса, который используется для интерфейса «Управление заданиями». Этот виджет находится в папке проекта по пути Интерфейс > Виджеты > Управление заданиями. |
Отображение прогресса | Ложь | Обычно прогресс игрока в достижении цели отображается в HUD-интерфейсе. Поскольку прогресс игрока обрабатывается устройством Verse «Диспетчер заданий», этот параметр отключён. |
Значок задания - маленький значок | T_RebelAlliance_Insignia | Значок, отображаемый на элементе интерфейса устройства «Управление заданиями». |
Значок задания - крупный значок | T_RebelAlliance_Insignia | Значок, отображаемый на элементе интерфейса устройства «Управление заданиями». |
Цвет | 6DDDFFFF | Цвет текста интерфейса устройства «Управление заданиями». |
Завершение задания с помощью устройства «Всплывающее диалоговое окно»
Устройство Всплывающее диалоговое окно можно использовать для завершения задания — оно продолжает историю и может предложить игроку выбор наград. В этом шаблоне разговор с капитаном и игра в сабакк завершают основное задание и отображают всплывающее сообщение.
Вы можете найти устройство «Всплывающее диалоговое окно» для сообщения о завершении задания двумя способами:
найдите и выберите устройство в редакторе. Устройство «Всплывающее диалоговое окно» для сообщения о завершении задания находится в комнате капитана, рядом с устройством Verse;
найдите устройство на панели «Структура» в папке Интерфейс. Дважды нажмите на устройство, чтобы перейти к нему в редакторе.
Выбрав устройство, откройте панель «Сведения». Задайте следующие параметры, если они ещё не заданы. Для параметров, не указанных здесь, можно оставить значения по умолчанию.
Настройка | Значение | Пояснение |
Заголовок | Задание выполнено - точка привязки | Заголовок, который отображается во всплывающем диалоговом окне. Его можно оставить пустым, но в данном случае он указывает, что задание завершено. |
Выравнивание содержимого | По центру | Всплывающее диалоговое окно можно разместить в разных областях экрана: есть варианты панели на всю высоту (слева, справа или по центру) и панели на всю ширину (сверху, по центру или снизу). В нашем случае поле находится по центру экрана. |
Описание | Поздравляю, боец. Вы без труда нашли общий язык с обитателями «Норы» и завоевали себе место среди повстанцев. Но это только начало истории. Теперь «Нора» в вашем распоряжении — развивайте, перестраивайте или меняйте её по своему усмотрению. Как вы продолжите эту историю? | Определяет текст, который будет отображаться в диалоговом окне. В данном случае сообщение информирует игрока о достигнутом результате и оставляет открытую цель. |
Автоматическое отображение | Никогда | Определяет, будет ли диалог автоматически отображаться для всех подходящих игроков на указанной фазе игры. Это всплывающее окно отображается только при срабатывании устройства Verse «Диспетчер заданий». |
Тип ответа | 1 кнопка | Определяет количество кнопок, которые отображаются в диалоге и используются игроками для выбора ответа. В данном случае используется только одна кнопка, поскольку единственное действие — закрыть диалоговое окно. |
Кнопка «Назад» по умолчанию | Кнопка 2 | Указывает, какая кнопка привязана к действию «Назад». |
Текст кнопки 1 | OK | Текст, отображаемый на кнопке 1. Если в параметре Response Type выбрано несколько кнопок, поле текста будет доступно для каждой из них. В данном случае используется текст «OK», и кнопка закрывает сообщение. |
Класс переопределения шаблона | UW_UI_Popup_Lightside | Переопределяет стандартный стиль диалогового окна и указывает пользовательский UI-виджет, который будет использоваться вместо него. Этот параметр находится в разделе Модальный виджет на панели «Сведения». Указанный виджет находится в папке проекта Интерфейс > Виджеты > Всплывающее окно. Доступно несколько виджетов на выбор:
В сообщении «Задание выполнено» используется виджет Lightside, потому что «Нора» — это аванпост повстанцев. Поскольку эти виджеты можно редактировать, вы также можете настроить их внешний вид для сообщения «Задание выполнено» с помощью материалов и текстур из папки «Интерфейс». |