### 1. Введение в разветвлённые диалоговые системы Разветвлённая диалоговая система — это интерактивная структура, где игрок получает возможность выбирать различные варианты ответов в процессе общения с игровыми персонажами. Эти выборы могут влиять на: - Развитие сюжета: направление истории меняется в зависимости от решений игрока. - Персонажей: отношения с NPC могут улучшаться, ухудшаться или оставаться нейтральными. - Мир игры: выб оры игрока могут влиять на состояние игрового мира или доступные ресурсы. Пример: в играх, таких как The Witcher 3, Night in the Woods или Mass Effect, выборы игрока приводят к различным концовкам и реакциям персонажей. ![Alt-текст](https://vk.com/doc562707558_681284865?hash=i756CMfosyhFUSOF7Y0uaMRXwTUIkDA4kdAaoms3jD8&dl=jW7Ubu4ZsqYrH6SzWK0TLTFL78QXgxeZdvz6IR288VD&api=1&no_preview=1 "Night in the Woods") #### Значимость 1. **Вовлечённость**: Игрок ощущает себя активным участником событий, а не просто наблюдателем. Примеры: - В _The Walking Dead_ от Telltale Games игрок принимает эмоционально трудные решения, которые остаются с ним на протяжении всей игры. - В _Detroit: Become Human_ каждая сюжетная развилка зависит от действий игрока. 2. **Уникальный опыт прохождения**: Разветвлённая система позволяет игрокам создавать индивидуальную историю. Например: - Два игрока могут пройти одну и ту же игру совершенно разными способами, выбирая разные пути. 3. **Эмоциональная вовлечённость**: Когда выборы имеют последствия (например, смерть персонажа, изменение концовки), игрок чувствует вес своих решений. Это укрепляет эмоциональную связь с сюжетом. 4. **Повышение реиграбельности**: Если выборы игрока приводят к различным концовкам, это стимулирует повторное прохождение, чтобы открыть все варианты. Пример: _Undertale_ или _Disco Elysium_. ![Alt-текст](https://vk.com/doc562707558_681284864?hash=TqyNoMbCfQloUssM1vGs09NcM7xglJ7fHBK7wQ2ZniX&dl=fcWPqAiIPim2ptdWUg8FGLZ68evRbKSqj8WabJgnwZ0&api=1&no_preview=1 "Дискоэлизиум") #### Классификация систем 1. **Линейные с вариативностью**: Здесь выборы игрока не меняют основную сюжетную линию, но влияют на мелкие детали (реплики персонажей, доступ к дополнительным миссиям). Пример: _Dragon Age: Origins_. 2. **Ветвящиеся сюжеты**: Каждое решение открывает новую ветку истории, которая может значительно отличаться от других. Пример: _Heavy Rain_. 3. **Открытые системы**: Полная свобода действий, где нет "предопределённых" сценариев. Такие системы создаются с расчётом на процедурную генерацию. Пример: _Dwarf Fortress_ (хотя это скорее симулятор). --- ### 2. Проектные соображения ##### Цели диалога Перед началом разработки разветвлённых диалогов важно определить, зачем нужна конкретная беседа в игре. Диалоги могут выполнять одну или несколько задач: 1. **Передача информации**: - Разъяснение событий, представление мира и лора. - Пример: В _The Elder Scrolls V: Skyrim_ диалоги с NPC содержат информацию о квестах, мифах и локациях. - В _Atomic Heart_ диалоги служат способом подачи сюжета, но их влияние на игровой процесс минимально. Например, разговоры с близкими героями или "Терешковой" дают контекст событий, однако выборы игрока практически отсутствуют до финала. Это пример игры, где диалоги скорее помогают понять лор, но не влияют на геймплей. > [!NOTE] Совет > Не перегружать игрока информацией, делая её понятной и дозированной. ![Alt-текст](https://vk.com/doc562707558_681285324?hash=1Em2kEwTUGDJvVCY0ZtgdzDrIhrp9ukFQ0cD0yh8P98&dl=OCDF3tehuphJUpWOIXrWw1mL4ZmX14CFWtByZIUrtzo&api=1&no_preview=1 "Atomic Heart") 2. **Развитие персонажей**: - Раскрытие характера и мотивации героев. - Пример: В _Mass Effect_ взаимодействие с напарниками позволяет лучше узнать их историю и характер, что усиливает эмоциональную связь с ними. - В _Зайчике_ диалоги составляют основу геймплея, помогая не только раскрывать персонажей, но и полностью вовлекать игрока в события. Решения, принимаемые игроком, напрямую влияют на ход сюжета и его возможные концовки. Это пример игры, где диалоги делают выборы игрока значимыми и эмоционально насыщенными. > [!NOTE] Совет > Делайте персонажей многогранными, чтобы игроку было интересно узнавать их. ![Alt-текст](https://vk.com/doc562707558_681285325?hash=W95kND2BVstAo2gRyeuugtrcj3yK7Gj9lZfYbSiLe6w&dl=uyJMZlQJOZRZMXVScuLOiP1f4UH82HuPcA3mBGHKkHg&api=1&no_preview=1 "Зайчик") 3. **Продвижение сюжета**: - Построение основной сюжетной линии. - Пример: В _Disco Elysium_ диалоги не только раскрывают персонажей, но и продвигают расследование, что помогает развивать историю. - В _Atomic Heart_ сюжет продвигается через заранее прописанные диалоги, а выбор появляется только в финале, что делает влияние игрока ограниченным. - В _Зайчике_, напротив, игрок через диалоги влияет на то, каким образом развивается история, и даже на то, какой её финал увидит > [!NOTE] Совет > Важно избегать "пустых" диалогов — каждая беседа должна нести ценность для сюжета или геймплея. #### Ограничения Разработка разветвлённых диалогов может столкнуться с рядом ограничений: 1. **Технические ограничения**: - Хранение большого количества данных (ветвлений, состояний). - Обработка переменных, влияющих на выборы. - Пример: В играх с открытым миром (_Fallout 4_) количество переменных, влияющих на сюжет, требует значительных вычислительных ресурсов. 2. **Ресурсные ограничения**: - **Объём текста**: Создание ветвящихся диалогов увеличивает общий объём работы для сценаристов и редакторов. - **Озвучка**: Если все диалоги озвучены, это требует больших затрат на запись, редактирование и синхронизацию. - **Время разработки**: Разработка диалогов, особенно с учётом последствий, требует тщательного планирования, написания и тестирования. ![Alt-текст](https://vk.com/doc562707558_681285628?hash=JgET6jDZYfmF0ATd5xK110eRp0S1rWj93dMoeWwlYC8&dl=5XHZKk4TU0pgSeEv6HULK3L5dwMgii5lB9P8BMVQAQc&api=1&no_preview=1 "Fallout 4") > [!NOTE] Совет > Ограничивайте количество ответвлений на начальных этапах, чтобы избежать перегрузки команды. 3. **Игровой баланс**: - Неравномерное распределение ветвей может сделать некоторые выборы значительно менее значимыми. - Пример: В _The Witcher 2_ выбор в первой главе полностью меняет вторую главу игры, но оставляет некоторые пути менее насыщенными. #### Последствия выбора Ключевая особенность разветвлённых диалогов — это их влияние на игровой процесс. 1. **Заметность последствий**: - Игроки должны видеть, как их выборы влияют на историю или мир. - В _Life is Strange_ последствия решений проявляются как в ближайшем будущем, так и в ключевых сюжетных моментах. - В _Зайчике_ каждое решение, принятое игроком в диалогах, имеет свои последствия, будь то отношения с другими персонажами или направление сюжета. - В _Atomic Heart_, хотя выборы игрока практически отсутствуют, финальное решение (устранять виновника катастрофы или нет) определяет концовку игры. > [!NOTE] Совет > Добавляйте визуальные или текстовые подсказки, чтобы игрок понимал важность своего выбора. ![Alt-текст](https://vk.com/doc562707558_681285627?hash=U7KD4anX3GZ8OSx64DqjgOQK5s2fFK71b6gJgKIOv04&dl=ukB2NWh3kDO1ExR9tY4ia3tKUG9cNnWAv2DJScTUjkP&api=1&no_preview=1 "Life is Strange") 2. **Логичность последствий**: - Выборы должны приводить к результатам, которые выглядят правдоподобно. - Пример: В _Until Dawn_ выборы игрока могут привести к смерти персонажей, но эти события всегда следуют из причинно-следственной цепочки. 1. **Масштаб последствий**: - Не обязательно каждый выбор должен менять всё — важно определить уровень влияния (локальное или глобальное). - В _Fallout: New Vegas_ последствия варьируются от изменения отношения NPC до глобальных изменений в судьбе целых фракций. - _Зайчике_ влияние игрока ощущается в каждом эпизоде, в то время как в _Atomic Heart_ оно сосредоточено в ключевом моменте ближе к завершению. > [!NOTE] Совет > Создайте баланс между крупными и мелкими последствиями, чтобы игрок чувствовал, что даже небольшие решения важны. --- ### 3. Создание диалогового дерева #### Инструменты Для разработки и визуализации диалогов удобно использовать специализированные редакторы: 1. **inklewriter** \ **ink** - Позволяет быстро создавать разветвлённые диалоги с минимальными техническими знаниями. - В Unity можно установить расширение для интеграции с _inklewriter_, что упрощает процесс: диалоги пишутся прямо в редакторе и затем импортируются в нужном формате в игру. Это особенно удобно для проектов, где требуется быстрое тестирование и внесение изменений. ![Alt-текст](https://vk.com/doc562707558_681285763?hash=2rohEC3gwxAOkcxOGvGUoUDeNN9DB8yJbrwbBRNAB0w&dl=D2CHFKogRn0WKRa1FwLPIhoVzhq2L2dslB7ktS5uT30&api=1&no_preview=1 "inklewriter") 1. **Chat Mapper** - Инструмент для построения сложных диалоговых систем с визуальной настройкой. Подходит для проектов с большим количеством персонажей и разветвлений. 2. Другие редакторы, такие как Twine или Articy Draft, также могут быть полезны для разработки сложных диалогов. ![Alt-текст](https://vk.com/doc562707558_681285764?hash=ZVesZ45PwQfiZB5rQGzOynar8KzDSGJv06ZkM7MWCIP&dl=SKggouvQwnPLAi7ZvfpXhXZcQYUXe971zePf4jpEgxc&api=1&no_preview=1 "Chat Mapper") #### Критический путь При создании диалогового дерева важно определить основной путь, который необходимо пройти для продвижения сюжета: - **Главная линия**: Все ключевые события игры должны быть связаны этим путём, чтобы игрок всегда мог продвигаться по сюжету. - **Дополнительные ветки**: Ответвления, которые добавляют вариативность, углубляют проработку мира и персонажей, но не обязательны для завершения игры. Например, в сюжетных RPG такие ветки часто включают побочные квесты или раскрытие второстепенных персонажей. #### Структура Баланс между глубиной и шириной диалогового дерева имеет большое значение: - **Глубина** (количество последовательных выборов): Позволяет создавать более насыщенные ветви сюжета. Например, длинные цепочки диалогов, где каждое решение влияет на следующее. - **Ширина** (количество вариантов на каждом этапе): Обеспечивает игроку ощущение свободы, но чрезмерное увеличение количества вариантов может усложнить восприятие и разработку. - **Оптимальный баланс**: Игроку должно быть понятно, какие действия приведут к продвижению, а какие — к дополнительным событиям. #### Пример применения В _Зайчике_ основной сюжет линейный, но каждая ветка диалогов углубляет понимание персонажей и позволяет игроку эмоционально переживать выборы. В _Atomic Heart_, напротив, структура дерева диалогов значительно проще, так как акцент сделан на действиях, а не на взаимодействии с NPC. --- ### 4. Руководящие принципы #### Фокус на игроке 1. **Значимость выбора:** Игрок должен ощущать, что его выборы важны и действительно влияют на ход событий. Это может быть достигнуто через: - Явные последствия (например, изменение сюжетной линии, как в _Detroit: Become Human_). - Скрытые, но ощутимые изменения (например, отношение персонажей к герою, как в серии _Until Dawn_. Не редко маленькая упущенная деталь или слово могут повлиять на т, доживёт один из героев до утра или нет, а после принятия важных решений игра оповещает игрока, о том что текущий выбор повлияет как-то в дальнейшем). ![Alt-текст](https://vk.com/doc562707558_681286656?hash=r1TzufPNzhCBChU0RX93KsmC6KTrbucPB8l79q25fYH&dl=5M44MsBK4AH9A1ZctDtzgUuHeMvl4FgUXH84GYk6ZkP&api=1&no_preview=1 "Detroit: Become Human древо последсвий выборов") 1. **Персонализация опыта:** Диалоги должны быть гибкими, чтобы игрок мог развивать сюжет в соответствии со своими предпочтениями, стилем игры или моральными установками. 3. **Иммерсивность:** Важно, чтобы игрок чувствовал себя вовлечённым в процесс, будь то через эмоциональные выборы, неожиданные повороты или динамичные изменения в ситуации. ![Alt-текст](https://vk.com/doc562707558_681286965?hash=v1oP1uQsveXpVNjzmkCRvStKuOJ1UEKJ0oaJ22ezu1g&dl=v6QqbJZl3MsxJft4z0A8uzjLDJqZuW3dwd7cmpdygy8&api=1&no_preview=1 "[Until dawn") #### Планирование 1. **Структура и логика:** - Диалоговая система должна быть спланирована так, чтобы избежать путаницы и логических несоответствий. - Использование таблиц, графиков и визуальных редакторов (например упомянутые, Chat Mapper или ink) помогает структурировать диалоги. 2. **Сценарные сценарии:** Создавая диалоги, нужно учитывать как минимум два уровня планирования: - **Общий контекст:** Как диалог вписывается в общую историю игры. - **Локальные детали:** Как отдельные реплики отражают характеры персонажей и текущую ситуацию. #### Естественность 1. **Реалистичность реплик:** - Персонажи должны говорить так, как это естественно для них, учитывая их характер, возраст, социальное положение и эмоциональное состояние. - Избегай использования однотипных или шаблонных фраз, чтобы диалоги не казались искусственными. 2. **Динамика общения:** - Реплики должны передавать развитие беседы: от знакомства и уточнения деталей до кульминации и финала. - Добавление эмоциональных оттенков (сарказм, сомнение, уверенность) делает беседы живыми и интересными. 3. **Адаптация к игровому миру:** - Диалоги должны органично вписываться в сеттинг игры. Например, в фэнтези мире могут использоваться архаичные слова, а в киберпанке — технические термины и сленг. #### Пример реализации 1. В _Detroit: Become Human_ выборы в диалогах и по ходу игры (так как жанр игры относится к "интерактивному кино") не только влияют на концовку, но и делают мир глубже: реакции персонажей адаптированы к решениям игрока, перед которым очень часто встают глубокие моральные вопросы и выборы. 2. В _Life is Strange_ каждая реплика кажется естественной и эмоционально заряженной, а выборы дают возможность влиять на развитие сюжета, сохраняя реалистичность. --- ### 5. Практические приёмы и оформление #### Размещение выборов 1. **Ключевые моменты:** Важно размещать выборы там, где они имеют реальное значение. Это может быть: - Кульминация сюжетной линии или события. - Моральные дилеммы (например, _The Walking Dead_). - Решения, которые меняют восприятие героя другими персонажами (_Dragon Age_ или _Mass Effect_). 2. **Подача вариантов:** - Делай выборы интуитивно понятными. Игрок должен понимать, чего ожидать от каждого варианта (без полного раскрытия последствий). - Визуально выделяй выборы, чтобы игроку было легко сориентироваться (например, цветовые подсказки или метки характера, как в _Fallout: New Vegas_). ![Alt-текст](https://vk.com/doc562707558_681287110?hash=QjqrJyvvL220zSfMrgMwLdj5oCV5eVsdpqlufC0dPok&dl=v22NqcGJYMiMph1BkG3xvJxdMZkiSDbEY2RyN7wAkoP&api=1&no_preview=1 "[Fallout: New Vegas") #### Частота выборов 1. **Избегание перегрузки:** Слишком много выборов может замедлить игровой процесс, создавая ощущение "текста ради текста". Например: - Для сюжетно-ориентированных игр (как новеллы) выборы могут быть чаще, чтобы держать игрока вовлечённым. - Для экшен-ориентированных игр — реже, чтобы не разрушать темп геймплея. 2. **Плавность восприятия:** - Выборы должны быть равномерно распределены, чтобы игрок не чувствовал, что в одном месте слишком много решений, а в другом — их совсем нет. - Разбавляй длинные ветки без выборов интригующими событиями, чтобы поддерживать интерес. #### Контекстуальность 1. **Логичность и связь с предыдущими репликами:** - Варианты ответов должны быть обоснованы предыдущими действиями персонажа или текущей ситуацией. - Варианты не должны казаться случайными или выбивающимися из общей атмосферы диалога. 2. **Соответствие сеттингу:** - Реплики должны учитывать мир игры, текущие события и знания игрока о происходящем. Например: - В фэнтези-игре рыцарь не будет отвечать современным сленгом. - В киберпанке возможны реплики, наполненные техническими терминами и жаргоном. #### Тестирование 1. **Проверка логики:** - Убедись, что нет "мертвых" веток, где игрок оказывается в тупике. - Проверь, чтобы все выборы вели к осмысленным результатам. 2. **Обратная связь от игроков:** - Игроки могут помочь выявить скучные или нелогичные моменты в диалогах. - Собирай отзывы о том, как воспринимаются выборы и их последствия. 3. **Автоматизированные проверки:** - Используй инструменты, которые позволяют тестировать прохождение всех веток (например, функциональность ink для визуализации всех возможных путей диалога). #### Пример реализации 1. _Detroit: Become Human_ — частота выборов сбалансирована так, чтобы игрок чувствовал постоянный контроль над ситуацией, но не перегружался. 2. _Undertale_ — контекстуальные реплики и последствия выборов привязывают игрока к каждому действию, создавая глубокую связь с игровым миром. --- ### 6. Уроки написания диалогов из игр Про диалог как инструмент геймплея и важность краткости и лаконичности мы упомянули, чему еще могут научить нас уже существующие игры? #### 1. Уникальные голоса персонажей Если в игре присутствует озвучка или минимальные звуковые эффекты в диалоге с конкретным персонажем, каждый персонаж должен иметь свой уникальный стиль речи, отражающий его характер, происхождение и цели. - **Пример:** В _The Witcher 3_ персонажи имеют ярко выраженные черты, которые отражаются в их манере речи (грубость геральтов, изысканность дворян, простота крестьян). > [!NOTE] Совет > Работай над индивидуальностью персонажей, чтобы их можно было узнать только по стилю речи, даже без визуального сопровождения. #### 2. Использование юмора Уместный юмор помогает сделать диалоги запоминающимися и разбавить напряжение. - **Пример:** _The Stanley Parable_ использует сатиру и иронию в репликах рассказчика, что превращает обычное исследование в комедийное приключение. > [!NOTE] Совет > Юмор должен быть связан с контекстом ситуации, избегай вставок ради вставок. ![Alt-текст](https://vk.com/doc562707558_681287679?hash=0mDSXc2xpYZR8tyq1kZMkKbiuyfqz6tqohAVGarxzek&dl=v0ZwW11ZyUsI0vgFROhDV0diXhaaRjHU0WZhG6e4vJL&api=1&no_preview=1 "The Stanley Parable") #### 3. Не навязывать очевидного Избегай прямолинейных реплик, которые диктуют игроку, что он должен делать. Дай ему пространство для размышлений. - **Пример:** В _Dark Souls_ NPC часто говорят загадками, оставляя игроку самому понять, как действовать дальше. > [!NOTE] Совет > Включай метафоры, аллегории или намёки, чтобы игрок почувствовал себя вовлечённым в исследование сюжета. --- ### Заключение Диалоги — это не просто текст, а способ рассказать историю, придать мир игре и увлечь игрока. Их написание требует баланса между краткостью, характером персонажей и геймплейной интеграцией. А разветвлённая диалоговая система — один из лучших инструментов повествования. При всех её недостатках она ярче всех даёт игроку почувствовать контроль за ходом диалога и помогает игроку изучить внутренний мир персонажа. Естественно, такая система подходит не для каждой игры, но она стала неотъемлемой частью лучших сюжетных игр за всю историю индустрии.