13:59 Редактор диалогов для дипломного проекта "ИТиД: лабиринты знаний" | |
Ещё один инструментарий, разрабатываемый собственными силами в рамках дипломного проекта "ИТиД: лабиринты знаний". Редактор диалогов позволяет создавать шаблоны разветвлённых диалогов и тестировать эти шаблоны в реальном времени! Разумеется, инструментарий разрабатывается с расчётом на то, чтобы быть использованным в будущих проектах. Пока что он готов примерно на 70% от запланированного (далее добавится возможность вставлять скрипты и условия между нодами). Принцип работы: каждый шаблон диалога содержит множество нодов различных типов. В данный момент существуют следующие типы нодов: реплика, необходимость выбора, возврат к якорю, скрипт. Каждая нода может содержать множество входящих и исходящих контактов. Контакты между собой соединяют потоки (каждый поток имеет начало в виде исходящего контакта и конец в виде входящего контакта). Таким образом потоки посредством контактов соединяют ноды диалога. Контакты могут содержать список условий, при выполнении которых во время процесса диалога они остаются "активными". Если условия контактов не выполняются - то диалог не сможет пойти по их потокам. Так, например, игрок не сможет сказать "я принёс тебе еду" если у игрока нет еды. Для шаблона диалога определяются "роли", по умолчанию для диалогов создаётся две роли: "player" и "npc". Так, если диалог не привязан к какому-либо определённому персонажу, а, например, должен запускаться при общении с любым гражданским лицом, то на роль "npc" может устанавливаться любой необходимый персонаж на момент создания процесса диалога по указанному шаблону. Диалоги не обязаны иметь игрока в качестве действующего лица. Вполне возможны диалоги, ориентируемые на общение неписей между собой. Количество ролей в диалоге может быть любым желаемым. Инструментарий имеет широкую расширяемость на будущее -) | |
|
Всего комментариев: 0 | |