Почему NPC в играх до сих пор мебель — и что с этим делает ИИ
«Я — стражник. Я стою у ворот. Мне есть что сказать тебе. Но только если ты нажмёшь на меня. И только одну из трёх заготовленных фраз.»
Так работают NPC в большинстве игр. И мы настолько к этому привыкли, что перестали замечать абсурд. Целые города, населённые манекенами с табличками. Тысячи персонажей, которые существуют только чтобы выдать квест или продать зелье.
Краткая история мебели
В настольных RPG NPC — это живые существа. Гейм-мастер импровизирует их на ходу: трактирщик может оказаться бывшим наёмником, случайный прохожий — шпионом, а ребёнок на площади — носителем пророчества. У мастера нет скрипта. Есть воображение и реакция на игроков.
Видеоигры пошли другим путём. В Ultima IV (1985) Ричард Гэрриотт дал NPC расписания — они спали, ели, ходили на работу. Революция? Безусловно. Но говорили они всё те же три фразы.
The Elder Scrolls пошли дальше — Radiant AI в Oblivion (2006) обещал NPC, которые живут своей жизнью. На практике получилось забавно: NPC воровали еду друг у друга, убивали за морковку и засыпали прямо в магазинах. Bethesda вырезала большую часть «интеллекта», потому что он создавал хаос.
В 2005 году вышла Façade — экспериментальная игра Майкла Матеаса и Эндрю Стерна, где два NPC (семейная пара Трип и Грейс) разговаривали с игроком через обработку естественного языка. Игрок мог печатать что угодно, и персонажи реагировали. Это был прорыв — и тупик одновременно. Разработка заняла 5 лет ради одной сцены с двумя персонажами.
Проблема была понятна всем: создать одного «живого» NPC стоит столько ресурсов, что населить ими целый мир — невозможно. Поэтому индустрия пошла по пути наименьшего сопротивления: больше озвучки, больше скриптов, больше анимаций. Иллюзия жизни вместо жизни.
Что не так со скриптами
Скриптовый NPC — это дерево решений. Если игрок сказал А — ответить Б. Если сказал В — ответить Г. Всё, что не предусмотрено автором, игнорируется.
Отсюда знакомые всем проблемы:
— Стражник, который не замечает дракона за спиной
— Торговец, который покупает 300 украденных у него же вилок
— Квестодатель, который повторяет одну фразу до конца времён
— NPC, которые знают всё и одновременно ничего
Мы смеёмся над этим, делаем мемы, принимаем как данность. Но задумайтесь: в настолке гейм-мастер никогда бы не допустил такого. Если игрок спрашивает стражника о драконе — стражник реагирует. Паникует, бежит, берётся за оружие, врёт — но реагирует.
ИИ как бесконечный гейм-мастер
Языковые модели изменили правила. NPC больше не нужен скрипт — ему нужен характер.
Вот как это работает в AI-приключениях: вместо дерева диалогов у персонажа есть описание. Кто он, чего хочет, чего боится, как говорит. ИИ получает это описание и генерирует реплики на лету, реагируя на конкретные действия конкретного игрока.
Трактирщик не просто говорит «Чего изволите?». Он может рассказать о проблемах с поставками, пожаловаться на крыс в подвале, вспомнить старого друга — если игрок спросит. А может послать куда подальше, если игрок ведёт себя как хам. У него есть характер, а не набор реплик.
И это не фантазия. Это уже работает. Но — с оговорками.
Честно о проблемах
ИИ-персонажи галлюцинируют. Трактирщик может «вспомнить» событие, которого не было. Стражник может знать то, чего знать не должен. NPC может зациклиться на одной теме и гнуть своё 10 ходов подряд.
Это реальные проблемы, и врать не будем — они есть. Мы боремся с ними правилами: ИИ получает инструкции о том, что NPC знает только то, что мог узнать в рамках сюжета. Что каждый персонаж должен быть уникальным. Что если игрок хочет сменить тему — NPC обязан отпустить.
Но иногда ИИ всё равно творит странное. И знаете что? Иногда это лучше скрипта. Потому что скрипт никогда не удивит. А ИИ-персонаж может выдать реплику, от которой мурашки по коже — именно потому, что её никто не писал заранее.
Между Skyrim и настолкой
AI-приключения занимают странную нишу. Это не видеоигра с графикой и физикой. Это не настолка с живым мастером. Это что-то между — текстовый мир, где каждый персонаж может ответить на любой вопрос. Где сюжет не рельсы, а река, которая течёт туда, куда идёт игрок.
Идеальны ли NPC в таких играх? Нет. Но они живые в том смысле, в каком никогда не будут живыми скриптовые персонажи. Они реагируют. Импровизируют. Иногда несут чушь. Совсем как люди за столом для настолок.
Попробовать — ai-whisp.ru