Подробнее об искусственном интеллекте в Revenge of the Firstborn

Подробнее об искусственном интеллекте в Revenge of the Firstborn.

Новый дневник разработки основанной на SRD 3.5 ролевой игры Revenge of the Firstborn наполнен техническими подробностями работы искусственного интеллекта, более полезными интересующимся созданием игр, нежели обычным игрокам.

В этом месяце я решил немного изменить формат и рассказать об одной из внутренних систем в Revenge of the Firstborn, а именно об искусственном интеллекте. В Revenge of the Firstborn используется подход под названием Utility AI («ИИ полезности»). В Utility AI каждому доступному действию агента присваивается оценка «полезности», показывающая, насколько агент будет доволен его выполнением.

Чтобы определить действие с наивысшей полезностью, игра перебирает несколько десятков вариантов, начиная с завершения хода и заканчивая чтением заклинания или атакой. Любое действие имеет один или несколько входных параметров, каждый из которых представлен числом истинности или ложности. Эти значения суммируются и дают итоговую оценку полезности действия.

Возьмём пример с зельем лечения. Чтобы получить оценку полезности для зелья лечения, игра использует несколько входных параметров, которые могут повысить или понизить итоговый показатель. Вот они:

  1. Есть ли в инвентаре NPC зелье лечения? Если его нет, полезность действия должна быть очень низкой. Поскольку я знаю, что оценка для завершения хода NPC равна 0, я даю этому параметру значение −100 — это гаратнирует, что независимо от влияния входных параметров на общую оценку действия, она не превысит 0. Если у NPC есть зелье лечения, оценка не меняется, потому что само наличие зелья в инвентаре не влияет на желание его использовать.
  2. Второй по важности параметр связан с оценкой здоровья NPC. Если оно полное, проверка ничего не добавляет, однако если оно упало, скажем, ниже 50%, мы увеличиваем оценку, чтобы итог был выше базового значения 0. Допустим, это действие увеличивает оценку полезности до 25.
  3. Для примера добавим ещё один входной параметр. Сможет ли враг провести атаку по возможности, если агент выпьет зелье? Если да — уменьшаем оценку на 10. Таким образом, общая полезность действия составит 15, что понизит вероятность его выполнения, но не исключит совсем.

Предположим, наш гипотетический агент имеет зелье, его порядком потрепали, но критической опасности всё же нет. Это даст действию «Использовать зелье» итоговую оценку 25. Поблизости нет врагов, поэтому полезность атаки низкая, возможно, 10. Однако, на ИИ-агента действует эффект страха. Последний имеет крайне высокую оценку полезности, поскольку страх затмевает любые другие желания. Действие «Убежать в страхе» имеет оценку 75.

Итак, у нас получаются следующие оценки полезности:

  • Использовать зелье лечения — 25
  • Атаковать врага — 10
  • Убежать в страхе — 75

Очевидным победителем становится «Убежать в страхе». Агент попытается найти место подальше от испугавшей его сущности и побежит туда.

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

Аналогичная система используется для определения типа атаки агента. Например, атака сбивания с ног получает больший приоритет, если агент крупнее цели и обладает умением «Улучшенное сбивание с ног». Если агент явно сильнее (огромная разница в показателе силы), он может попытаться выполнить захват, что особенно эффективно против магов, во многом лишающихся возможности колдовать.

Доступные агенту заклинания оцениваются в зависимости от количества целей, которые оно может поразить, союзников в области действия (при условии, что существо заботится о союзниках) и так далее. Чтобы заклинания выбирались немного менее предсказуемо, каждое заклинание с оценкой полезности в пределах 10% от наивысшей имеет равные шансы быть выбранным. Таким образом, агент прочитает одно из полезнейших заклинаний, отметая явно неудачные варианты.

Надеюсь, вы с интересом заглянули во внутренние аспекты игры. Следите за обновлениями, чтобы узнать больше подробностей в будущем!

CC0
Вы можете копировать, изменять, распространять и исполнять данное произведение, даже в коммерческих целях, не спрашивая разрешения.

Поиск по сайту

Случайное из галереи

Который можно получить практически сразу.
Который можно получить практически сразу.

Сообщения на форуме | новые

Solasta: Crown of the Magister на форуме Всё остальное | Инди.
Последнее сообщение оставил Cringe (2026-01-05 в 05:48). Ответов: 230.
Skald: Against the Black Priory на форуме Всё остальное | Инди.
Последнее сообщение оставил TimeusGaylord (2026-01-05 в 02:02). Ответов: 40.
[Legend of Grimrock 2] Final Adventure на форуме Legend of Grimrock.
Последнее сообщение оставил ukdouble1 (2026-01-04 в 23:16). Ответов: 456.
Clair Obscur: Expedition 33 на форуме jRPG.
Последнее сообщение оставил Mercutio (2026-01-04 в 22:36). Ответов: 198.
[The Age of Decadence] Фанатик и его RPG на форуме The Age of Decadence.
Последнее сообщение оставил Guardians (2026-01-04 в 20:45). Ответов: 73.
Heroes of Might & Magic III на форуме Тактические и стратегические.
Последнее сообщение оставил Хоттабыч (2026-01-04 в 18:34). Ответов: 187.
Dungeon Crawl(er), как один из столпов RPG на форуме О жанре.
Последнее сообщение оставил darer333 (2026-01-04 в 11:41). Ответов: 70.
[В разработке] New Arc Line на форуме Всё остальное | Инди.
Последнее сообщение оставил AndreySolo (2026-01-01 в 20:58). Ответов: 59.
Baldur's Gate III на форуме Baldur's Gate III.
Последнее сообщение оставил Mercutio (2026-01-01 в 20:15). Ответов: 1840.
Owlcat Games на форуме Owlcat Games.
Последнее сообщение оставил Cringe (2026-01-01 в 15:18). Ответов: 88.

Ожидаемое | таблица

Новости C.O.R.E.

Статьи C.O.R.E.

Случайная цитата

What does this mean, to combine magic? Magic plus magic is still magic.

M'aiq the Liar, The Elder Scrolls V: Skyrim

Оставьте свой отзыв: QR-код для отзывов в «Яндексе».