Переглянути джерело

Удалить 'Лекции/Игровой_дизайн/Написание_разветвленных_диалогов_для_игр.md'

u21-25volkova 2 місяців тому
батько
коміт
0f96b47e17

+ 0 - 248
Лекции/Игровой_дизайн/Написание_разветвленных_диалогов_для_игр.md

@@ -1,248 +0,0 @@
-### 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] Совет
-> Включай метафоры, аллегории или намёки, чтобы игрок почувствовал себя вовлечённым в исследование сюжета.
-
----
-### Заключение
-Диалоги — это не просто текст, а способ рассказать историю, придать мир игре и увлечь игрока. Их написание требует баланса между краткостью, характером персонажей и геймплейной интеграцией. А разветвлённая диалоговая система — один из лучших инструментов повествования. При всех её недостатках она ярче всех даёт игроку почувствовать контроль за ходом диалога и помогает игроку изучить внутренний мир персонажа. Естественно, такая система подходит не для каждой игры, но она стала неотъемлемой частью лучших сюжетных игр за всю историю индустрии.