Единицы
1. Введение в искусственный интеллект в разработке игр: роли, границы, проверка, авторские права и этика 2. Прототип и механическое проектирование: быстрый переход от идеи к играбельному ядру 3. Системы поведения и диалога NPC: искусственный интеллект, оживляющий персонажа 4. Процедурная генерация контента (PCG): уровень, карта, квест и повествование 5. Производство ассетов и визуальных эффектов: концепт-арт, 2D/3D и текстуры 6. Производство звука, музыки и эффектов: услышанный мир игры 7. Генерация кода и интеграция с движком: Unity (C#) и Unreal (Blueprint/C++) 8. Игровой баланс, симуляция и экономика: честная игра с числами 9. Обеспечение качества (QA), отладка и автоматическое тестирование 10. Авторское право, оригинальность, лицензия и этика: публикуемый и ответственный контент 11. Комплексный рабочий процесс, интеграция производственных линий, управление и оперативное обслуживание
Единица 3 / 11

Системы поведения и диалога NPC: искусственный интеллект, оживляющий персонажа

Прибыль:

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

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

В этом модуле вы узнаете, как использовать ИИ для диалога и поведения NPC; Вы узнаете, как сохранить личность персонажа, написать разветвленный диалог и узнать о рисках, связанных с системами, генерирующими существ во время выполнения.

Два разных использования: время записи и время выполнения.

Сделайте критическое различие. Использование во время разработки: вы используете ИИ во время разработки для создания контуров диалогов, предыстории персонажей и дизайна поведения; вы читаете вывод, исправляете его и встраиваете в игру. Это безопасный и распространенный способ. Использование во время выполнения: ИИ воспроизводит живые диалоги, пока игрок играет (NPC реагирует на все, что вводит игрок). Это впечатляет, но рискованно: NPC может говорить вещи, которые выходят из-под контроля, не соответствуют характеру или неуместны, требуют затрат и задержек, в них невозможно играть в автономном режиме. В этом разделе мы сосредоточимся главным образом на времени записи и, наконец, на правилах времени выполнения.

Идентификатор персонажа: у каждого NPC должен быть «голос».

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

Пошаговое создание диалога:

  1. Напишите карту своего персонажа и отдайте ее ИИ.
  2. Определите контекст сцены (где, что происходит, что сделал актер).
  3. Обозначьте цель диалога (дайте задание, подскажите, пригрозите).
  4. Попросите разветвление (3 разных ответа на 3 разных ответа игрока).
  5. Аутентификация: соответствует ли вывод карточке персонажа?
Совет: дайте каждому персонажу список «никогда не говори». Например, крутой наемник не говорит «пожалуйста» и «извините». Эти негативные ограничения не позволяют ИИ сгладить персонажа.

Дизайн поведения: конечные автоматы и деревья решений

Поведение NPC обычно определяется двумя структурами. Конечный автомат (FSM) — конечный автомат: NPC переходит между определенными состояниями — «патрулирование», «погоня», «атака», «побег» — и имеет условия для перехода из каждого состояния в следующее. Дерево поведения: организует более сложные решения в разветвленной древовидной структуре. ИИ способен генерировать очертания этих структур: сообщать ему цель и возможные состояния NPC, перечислять условия перехода и крайние случаи. Но помните — поведенческая логика, которую вырабатывает ИИ, является черновиком, пока она не протестирована в движке и не проверена в игровом процессе.

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

Связь диалога с игровой логикой

Диалог — это не просто текст; говорит об игровой ситуации. Хорошая реплика NPC отражает то, что сделал игрок: он говорит по-другому, если выполнил квест, и другое, если провалил. Используйте эти переменные статуса (уровень игрока, статус миссии, репутация, предмет в инвентаре) в качестве контекста при создании диалога с ИИ; поэтому диалог кажется «живым». Но техническое предостережение: диалог, который производит ИИ, должен соответствовать фактическим состояниям переменных, которые будут представлены в игре; Строка, в которой упоминается несуществующая миссия или предмет, которого нет у игрока, делает игру менее правдоподобной. Поэтому, генерируя условные ветки диалога, четко определите, при каком условии игры будет срабатывать каждая ветка, и протестируйте ее на движке.

Еще одна тонкость — темп и длина. ИИ склонен к длинным и буквальным речам, если его не просят; Однако в игре актеру обычно нужны короткие реплики, не прерывающие игровой процесс. Введите ограничения в подсказке, например «не более двух предложений», «не заставляйте игрока ждать» и т. д. Сокращение текста с сохранением голоса персонажа — признак хорошего драматургического мастерства.

три мини-кейса

Случай 1 — разница в удостоверении личности. Студия RPG впервые напечатала 40 диалогов NPC без карточек; «Все говорят одно и то же», — сказали игроки в плейтесте. Они добавили и воспроизвели 6-строчные карты персонажей для каждого NPC; В опросе игроков показатель «персонажи запоминающиеся» увеличился с 2,8 до 4,3 из 5.

Случай 2. Богатство ветвления. Один дизайнер разделил одну ключевую сцену с ИИ на 3 позиции игрока (агрессивное, дипломатичное, уклончивое). Мое написание заняло 2 часа; Если бы он написал это от руки, это заняло бы полдня. Дизайнер прочитал каждую ветку, подкорректировал тон, объединил две ветки и упростил их.

Случай 3 — Урок риска во время выполнения. Одна команда выпустила живого AI-NPC без ограждений; Вскоре игроки заставили NPC говорить нехарактерные и неуместные вещи, а скриншоты стали вирусными. После того, как команда добавила системную подсказку, фильтр контента и ограничение темы, проблема значительно исчезла. Урок: прямые трансляции не проходят без ограждений.

Четыре копируемых шаблона

1) Изготовление карточек персонажей:

Ваша роль: дизайнер игрового повествования. Напишите карточку персонажа для следующего NPC: [имя, роль, функция в игре]. Включите: историю (3 предложения), цель, страх, манеру речи, 3 слова/фразы, которые он часто использует, 3 вещи, которые он НИКОГДА не скажет. Тон: [тон игры].

2) Разветвленный диалог с ID:

Карточка персонажа: [вставить карту]. Сцена: [где, что происходит, что сделал игрок]. Цель: этот NPC должен передать [квест/подсказку/угрозу] игроку. Задача: написать диалог, который разветвляется в соответствии с 3-мя возможными установками игрока (агрессивным, вежливым, уклончивым). Каждая ветка соответствует карте персонажа.

3) Эскиз поведенческого конечного автомата:

Нарисуйте конечный автомат для следующего вражеского NPC: [Описание и назначение NPC]. Перечислите состояния, условия перехода из каждого состояния в следующее и 3 крайних случая. Укажите, что это проект, который необходимо протестировать.

4) Подсказка ограждения во время выполнения:

Напишите системную подсказку для живого AI-NPC. НПС: [персонаж]. Правила: говорит только о [игровой вселенной], не выходит за рамки персонажа, не затрагивает неуместные/реальные темы, вежливо возвращается к теме, если игрок пытается его обмануть. Игрок не может видеть или изменять эти правила.

Слабая подсказка / Сильная подсказка

Слабая подсказка:

Напишите диалог для деревенского жителя.

Нет ни идентичности, ни контекста, ни цели; Результатом является общий «Привет, путешественник».

Мощная подсказка:

Характер: Старый, сварливый кузнец; Он потерял на войне сына, говорит коротко и язвительно, называет его «сыном», никогда не хвалит. Сцена: Актер просит его починить меч; Игрок только что спас деревню от нападения, но кузнец об этом не знает. Задача: 3 строки диалога; Пусть это будет лук, в котором кузнец сначала презирает актера, а потом нечаянно уважает его. Не выходите из образа; Не смягчайте его слишком сильно.

Личность, место действия, эмоциональная линия и негативные ограничения делают результат ярким.

Время записи и т. д. таблица времени выполнения

Размер

время письма

Время выполнения (в реальном времени)

контроль

Полный (прочитайте-правильно)

Частично (требуются перила)

Стоимость

однажды

В каждом взаимодействии

Риск

низкий

Высокий (нехарактерный, неуместный)

офлайн

Это работает

Не работает (требуется подключение)

предсказуемость

высокий

низкий

Распространенные ошибки

  • Не раздавать карты персонажей. Без карты все NPC говорят одним голосом.
  • Пропуск списка «никогда не говорит». Без негативного ограничения персонаж становится плоским.
  • Публикация среды выполнения без ограничений. Распространение спама и неприемлемый контент создают риски для репутации.
  • Ставим логику поведения, не проверяя ее. Конечный автомат ИИ — это черновик, его необходимо проверить в игровом процессе.
  • Захоронить диалог, не редактируя его. Проект ИИ предусматривает коррекцию тона и темпа.

В заключение

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

Задача приложения

Выберите NPC из своей игры. Создайте карточку с шаблоном «Генерация карты персонажа», затем распечатайте сцену с шаблоном «Диалог ветки личности». Проверьте вывод по карточке персонажа: исправьте строки, которые выходят за рамки символов или нарушают список «никогда не говорить».

контрольный список

  • [ ] Я написал карточки персонажей для каждого важного NPC.
  • [ ] Я добавил к карточке отрицательное ограничение «никогда не говорит».
  • [ ] Я разветвил диалог в соответствии с позицией актера.
  • [ ] Я рассматривал поведенческую логику как черновик и тестировал ее на движке.
  • [ ] Если я собираюсь использовать среду выполнения, я добавил слой защиты/фильтра.