ELMORION WorldForge Games Lab
Разработка

Elmorion заговорил: ASTRA, живые квесты и первые озвученные NPC

От первых live-проверок ASTRA до контекстной озвучки NPC: как квесты High Five становятся частью живого мира Elmorion.

Elmorion заговорил: ASTRA, живые квесты и первые озвученные NPC
Разработка Elmorion постепенно выходит за рамки изменения отдельных механик Lineage II High Five.

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

Именно здесь появляется главное изменение последних дней: квест перестаёт быть изолированным набором HTML-окон и начинает становиться частью живого мира Elmorion.

ASTRA P0.9.5-D прошла проверку в живой игре

Одним из ключевых этапов стала версия ASTRA P0.9.5-D.

Система была проверена непосредственно на игровом сервере, включая регион vs01.elven. Для теста использовались реальные квестовые цепочки High Five, адаптированные таким образом, чтобы их завершение передавало в ASTRA осмысленное действие игрока.

Это важно: ASTRA не заменяет квестовую систему Lineage II и не вмешивается в её базовые состояния. Сначала квест завершается штатным способом, и только после этого специальный Quest Bridge передаёт результат в региональную симуляцию.

Во время live-теста было подтверждено изменение состояния Elven Territory. После выполнения адаптированного задания регион перешёл на новую версию, а его внутренние параметры изменились именно в тех направлениях, которые соответствовали поступку игрока.

ASTRA при этом продолжает хранить не одну абстрактную шкалу, а целую модель региона: безопасность, инфраструктуру, торговлю, доверие, экологию, знания, память, независимость и другие характеристики.

Другими словами, для системы имеет значение не просто факт «квест выполнен», а что именно сделал игрок и какое значение этот поступок имеет для мира.

Старые квесты становятся историями Elmorion

Следующая большая работа касается самих заданий.

Мы не хотим механически уничтожать оригинальный High Five. Напротив, задача состоит в том, чтобы использовать его как исторический фундамент и аккуратно вплетать в него новый слой Elmorion.

Хороший пример — Q00160 Nerupa's Request.

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

Механически это простой ранний квест.

Но для Elmorion мы увидели в нём гораздо более интересную историю.

Нерупа воспринимает обмен не как торговую операцию. Для неё это старое обязательство: вещь за вещь, обещание за обещание. Унорен смотрит на происходящее глазами торговца, Кримис становится следующим звеном передачи, а склад Джулии завершает цепочку.

В результате обычный delivery quest превращается в маленькую модель работающего общества.

Игрок физически восстанавливает связь:

Нерупа → Унорен → Кримис → Джулия → Нерупа.

И именно такой поступок уже может иметь смысл для ASTRA: поддерживать торговлю, инфраструктуру и общественное доверие региона.

При этом игроку не показывается сообщение вроде «+2 к торговле». ASTRA должна оставаться за кулисами.

Мир просто помнит, что произошло.

Мы начали переписывать NPC как персонажей

Отдельное направление — отказ от одинакового тона у всех NPC.

Если каждый персонаж говорит длинной информационной «портянкой», мир остаётся базой данных с моделями поверх неё.

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

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

Унорен совершенно другой. Он практичный торговец. Он привык оценивать материалы, знает цену хорошему товару и первоначально пытается решить вопрос деньгами. Но постепенно становится ясно, что даже он понимает: некоторые отношения существуют по другим правилам.

Кримис и Джулия получат собственную функцию и интонацию внутри этой же цепочки.

В результате четыре NPC перестают говорить голосом одного сценариста.

Первый голос Elmorion уже работает в клиенте

Самым заметным экспериментом стала полноценная озвучка NPC.

Мы исследовали возможности клиента High Five, формат Unreal Audio Package и механизм PlaySound. После нескольких тестов удалось добиться воспроизведения собственного звукового объекта непосредственно игровым клиентом.

Первый рабочий пакет получил структуру:

ElmorionVoice_EVE_RU

А первым реально воспроизведённым голосовым объектом стала реплика Нерупы:

ElmorionVoice_EVE_RU.nerupa_q160_01

Это не внешний плеер, не видео поверх клиента и не модифицированный launcher.

Реплика находится внутри клиентского UAX-пакета и вызывается игровым сервером в нужный момент.

После этого voice-hook был встроен непосредственно в Q00160.

Теперь при открытии определённого состояния диалога сервер знает не только какой HTML показать игроку, но и какую голосовую реплику воспроизвести.

Например:

30370-03.htm → nerupa_q160_03

Клик по NPC становится не просто открытием текста.

NPC начинает говорить.

У каждого состояния квеста — своя реплика

Для Q160 мы отказались от идеи одной универсальной фразы на NPC.

Нерупа получает шесть отдельных voice cue, соответствующих различным стадиям задания. Унорен — три. Кримис — три. Джулия — две.

Всего первая полноценная цепочка содержит 14 контекстных реплик.

Это позволяет NPC реагировать на реальное состояние задания.

До принятия поручения Нерупа говорит одно. После принятия — другое. Если игрок возвращается раньше времени — третье. При завершении цепочки звучит уже финальная реплика.

Такой подход заметно сложнее простой озвучки текста, зато именно он создаёт ощущение разговора с персонажем.

Русский и английский голос должны быть одной системой

После первых тестов появился следующий архитектурный вопрос.

Если Elmorion будет поддерживать несколько языков, нельзя в каждом квесте вручную прописывать:

ElmorionVoice_EVE_RU

Поэтому был разработан Elmorion Voice Language Router.

Теперь смысловой идентификатор реплики остаётся одинаковым:

unoren_q160_01

А языковой слой выбирает нужный пакет:

ElmorionVoice_EVE_RU.unoren_q160_01

или

ElmorionVoice_EVE_EN.unoren_q160_01

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

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

Язык персонажа — больше, чем RU или EN

Параллельно развивается собственная языковая система Elmorion.

Для эльфов уже создан Эвелис — язык памяти, в котором мир описывается как сеть сохранённых связей. Его культурный принцип сформулирован как «Память связывает живое». Сам кодекс специально сохраняет канонические имена High Five и использует новые языки прежде всего для нового контента, песен, надписей, NPC, артефактов и озвучки.

Позже кодекс был расширен ветвью Evelis-Nar для тёмных эльфов. При этом она не объявляется «испорченным Эвелисом»: это самостоятельная родственная культурная линия со своим принципом работы с памятью и знанием.

Это даёт нам ещё один уровень будущей озвучки.

NPC сможет говорить с игроком на русском или английском языке, но отдельные обращения, имена, клятвы, песни и ритуальные формулы смогут существовать уже на настоящих языках самого Elmorion.

NPC становятся умнее одновременно с тем, как получают голос

Работа над диалогами идёт параллельно с развитием ASTRA NPC.

В текущей ветке P0.3-A уже работает Tactical-режим поведения. Система строится поверх предыдущего Utility Combat и анализирует боевую ситуацию не только через базовое vanilla AI.

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

Следующий слой — Tactical Movement — развивается отдельно, чтобы NPC не просто принимал более разумное решение, но и мог правильно реализовать его перемещением.

Для нас эти направления связаны.

NPC не должен быть умным только во время боя и снова превращаться в неподвижное меню при разговоре.

Цель гораздо шире: персонаж должен восприниматься как участник мира во всех состояниях — в бою, в квесте, в торговле, в реакции на регион и в обычном разговоре.

Что меняется в самом подходе к разработке

На раннем этапе Elmorion можно было описывать набором отдельных систем.

ASTRA.

NPC AI.

Квесты.

Локализация.

Лор.

Озвучка.

Клиент.

Сейчас границы между ними начинают исчезать.

Один маленький квест уже одновременно касается оригинального High Five, русской и английской локализации, лора Elmorion, региональной модели ASTRA, характеров NPC, клиентского UAX, серверного PlaySound и языкового маршрутизатора.

И это хороший знак.

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

Он появляется тогда, когда эти технологии перестают быть заметны сами по себе и начинают вместе создавать один игровой опыт.

Что дальше

Сейчас Q00160 проходит полный live-тест по всей цепочке.

Последовательно проверяются Нерупа, Унорен, Кримис и Джулия: состояния квеста, предметы, русские и английские HTML, голосовые cue и финальная передача результата в ASTRA.

После этого этот подход сможет стать производственным шаблоном для следующих заданий.

Мы не собираемся за один раз озвучивать тысячи старых HTML-файлов.

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

Так постепенно старый знакомый мир High Five начинает приобретать собственную память.

И теперь — собственный голос.

Elmorion строится не поверх Lineage II. Он прорастает сквозь неё.
← Назад