Эта статья научит вас основам ИИ в WarCraft, в том числе применению юнитами-ботами нестандартных способностей.
1. Как приказать юниту применить способность. Существует 3 способа это сделать. Первый - использование базовых функций в триггерах - дать юниту приказ применить способность. Это зависит от того, на основе какой способности сделана ваша - если используется способность без указания цели, как "Москиты" или способность с указанием цели, как "Скачок", тогда требуется указать конкретно тип приказа (Боевая единица -> Issue Order Targeting a Unit, Боевая единица -> Issue Order Targeting a Point, Боевая единица -> Issue Order With No Target). Например, для способностей на основе способности "Москиты" мы должны сделать такой приказ:
Боевая единица -> Order (ваш юнит) to Повелитель Могил - Москиты.
Для способностей на основе "Ледяной звезды" мы должны сделать такой приказ:
Боевая единица -> Order (ваш юнит) to Король Мёртвых - Ледяная звезда (целевой юнит).
Другой способ - приказать применить способность по её равкоду. Для этого создайте триггер-пустышку с вашими функциями, выполните "Боевая единица -> Issue Order..." с любой способностью. Сконвертируйте триггер в текст. Зайдите в редактор объектов и нажмите Ctrl -> D. Найдите свою способность - первые 4 символа - это и есть её равкод. Замените строку со способностью в триггере на этот равкод.
Также вы можете зайти в Редактор ИИ (F8) и создать новый скрипт ИИ. Затем войдите в редактор объектов и экспортируйте все данные по объектам. Вернитесь в Редактор ИИ. Затем выберите "Данные -> Импорт" и импортируйте сохранённые вами данные по объектам. Можете убрать волны, проверки и всё остальное. Затем нажмите "Файл -> Добавить к карте". Тогда данные появятся в Менеджере импорта. Войдите туда и удалите "Данные ИИ". Затем в триггерах при инициализации карты добавьте действие "ИИ -> Start Melee AI Script". Выберите ваш скрипт и он запустится для всех игроков-компьютеров, для которых вы его запустили. ИИ заставит их применять ваши нестандартные способности.
2. Точки для создания и движения юнитов. В любой уважающей себя AoS есть крипы, которые движутся по линиям и существует обычно 3 точки их спауна. Также крипы не стоят, а движутся в определённые области. Можно создать кучу триггеров, контролирующих каждый регион, но есть альтернатива этим триггерам. Всё это может быть сделано одним триггером. Вот такие триггеры будут для контроля всех крипов:
3. Дамми-юниты Дамми-юниты означают то, что они называются - дамми-юниты. Они используются для атаки объектов, применения способностей или ещё чего-нибудь, чтобы этого не было видно. Создать дамми-юнита просто - создать новую боевую единицу. Измените ему поле "Отображение тени: боевая единица" на "Нет". Измените файл модели на ".mdx". В поле "Способности" добавьте "Москиты". Создаётся дамми при помощи действия "Боевая единица - Create Units Facing Angle".
4. Способность "Канал". "Канал" - это способность, созданная Blizzard, которая используется картостроителями для триггерных способностей. "Канал" ничего не делает при применении, но у него очень много изменяемых опций.
Создать способность "Канал" можно, открыв Редактор объектов, нажав "Создать нестандартную способность" или же комбинацию клавиш Ctrl+Shift+N. Откроется список. Перейдите на вкладку "Герой" и найдите там название "Канал". Создайте нестандартную способность.
У способности "Канал" гораздо больше изменяемых опций, чем у других способностей. Ниже я приведу такие опции:
Длительность графики - определяет, сколько времени будет видеться спецэффект, прикреплённый к способности "Канал".
Базовый ID приказа - ID способности. Если мы поменяем это поле у "Канала", оно ДЕЙСТВИТЕЛЬНО поменяется. Это решает проблему использования многих способностей на одинаковой основе у одного героя. Так что у одного героя может быть несколько способностей на основе "Канала".
Отключить прочие способности - При значении "Да" скрывает остальные способности боевой единицы во время применения "Канала".
Следовать в течение времени - Определяет, является ли способность ченнелингом. Если вы хотите сделать её ченнелингом, выставьте значение равным "Длительности способности" и не забудьте отключить отключение прочих способностей. Иначе просто поставьте на 0.
Параметры - Это поле очень важное. Если вы оставите значение этого поля на "Нет", то вы не увидите иконки, на которую можно нажать, чтобы применить способность. Список параметров ниже.
- Изображение - показывает обычную кнопку без дополнительных надстроек.
- Изображение указателя цели - показывает АоЕ-указатель, как, к примеру, у "Безмолвия".
- Материальное заклинание - определяет, будет ли влиять иммунитет к магии на способность. если эта способность была выбрана, то вы не получите ошибки, если попытаетесь применить способность на воинов, обладающих баффом сопротивления к магии или имеющих иммунитет к магии.
- Универсальное заклинание - означает, что способность может быть использована на что угодно. Она не особо нужная, если вы не используете строгую Jass-проверку на универсальность способности.
- Только ручное применение - ещё одна опция для строгих Jass-проверок. Вам, скорее всего, эта опция не понадобится, она больше для идентификации и вообще не влияет на саму способность.
Тип цели - Определяет цель, на которую можно применить способность (мгновенная, точка, боевая единица, точка или боевая единица).
Вот вы и познакомились с этой способностью.
5. Melee AI Melee AI - это ИИ, который используют игроки-компьютеры в Режиме сражения. Существует АMAI - улучшенная версия ИИ. Скачать
тут.
Спасибо за внимание.