Как стать автором
Обновить

Комментарии 4

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

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

там несколько ситуаций, ситуация сандбокс, ситуация лан, ситуация типо ммо, там либо как удобно либо есть какието пути уже, либо ну бд+сериал

Занятно.
В целом я использовал похожий подоход для линейных сценариев, в целом можно тоже написать статью на эту тему.
К вашему подходу могу отметить, что можно чуть улучшить настройку, вынеся объекты и персонажей в отдельный SO и добавляя их через ссылки. Так можно добавить метаинформацию (спрайт, ключ локализации имени, в будущем может эмоции или доп детали) и удобно указывать их, не путаясь в индексах.
С другой стороны, это конечно не поможет при импорте / экспорте. Можно экспортировать имя SO, а при импорте находить его в проекте и проставлять.

Но хотел бы еще отметить одну вещь.
Я делал несколько попыток сделать редактор текстовых квестов (полноценных, с выборами, переходами по меткам и логикой - переменными и условиями). Успешных, в том числе и с визуальным редактором.

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

еще можно посмотреть на ситуацию как квест линейный это арбитр, человек принимая квест идёт по последовательным строкам, на примере квеста 1 разового без выбора, тоесть квест это как шейдер который кидает текст и итем в награду

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

тоесть это факторка текста с координатами(+ условиями ну чтобы квест засчитывался) и итемами

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации