Как сделать ии в варкрафт 3

Обновлено: 17.05.2024

Эта статья научит вас основам ИИ в 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-проверок. Вам, скорее всего, эта опция не понадобится, она больше для идентификации и вообще не влияет на саму способность.

Как сделать ии в варкрафт 3

собсна вопрос: как сделать это говнище? что нужно чтобы ии видел врага?

Добавлено (02.04.2016, 11:41)
---------------------------------------------
в общем прошли пара минут и я понял что надо указывать не мили скрипт а кампаигн скрипт.

Добавлено (06.04.2016, 18:15)
---------------------------------------------
хорус, это какой-то кабздец. на карте 3 ии. 2 из них робят как надо. даже нестандартные войса и улучшения юзают. один не хочет робить. и склеп у него есть, и бойня есть, производит всё: вурдалаков, некромантов, героев. всё, кроме мясников, могильщиков и труповозок. и хоть ты тресни. не хочит производить и всё мразь. тупое говнище =(

Как сделать ии в варкрафт 3

Рафаэль Тимергалиев

Этот учебник о различных частях .вай АИ редактор, как настроить, условие, объяснение. а также дать объяснение о функции. (Как я собираюсь написать это на левом)

Условия
Ну эта часть пишется в данный момент, так что все там может не оказаться

логическое условие: усл потом туре или ложную. Похожие на триггер один редактор.

Целое Состояние: Состояние тогда сумма. Похожие на триггер один редактор.

И условие: условие 1 и условие 2. Оба необходимы, чтобы активировать строку, присвоенную. Похожие на триггер один редактор.

Или условие: условие 1 или условие 2. Любой, необходимый для активации отведенную строку. Похожие на триггер один редактор.

Логические Состояния Триггеров
Большинство из них являются довольно прямо вперед, только те, которые не сложно я дам обьяснение.

Пресет - Текущая игра одного игрока

герой - Штурмовик капитан дома: это означает, что лидер нападения группы на базу.

Герой - Штурмовик капитан отступает

Герой - офицер атаки на цель

героя - атака группы полного

героя - атака Группа пуста

герой - офицер в бою: любой офицер (атака или защита) - это в бою.

Разное - ползает нигде

город - город находится под атакой

город - город мой: Вы должны положить вниз на город количество не вызовет.

Город - город зал: Вы должны положить вниз на город номер не другой триггер.

Города - Расширение Пятна Нужно

Целое Состояние Триггеров
Большинство из них являются довольно прямо вперед, только те, которые не сложно я дам обьяснение.

Пресет - Максимальное Количество слотов инвентаря (6)

Пресет - Максимальное количество игроков (12)

предварительно - Максимальное количество игроков(16)

Arithmetric: хорошо это combonation число триггера и оператор (+,-,х,/) и другие Целочисленные курок. Simlilar на курок один редактор.

Обратите внимание, что команды передаются от спускового крючка редактор

команд - команды ждут

Команды - последнюю команду данные: Вы можете либо удалить или оставить последней переданной команды данных.

Герой -Нападение Группы Размер

Героя - Атака Группы Здоровья Уровень

Героя - Атака Группы Уровень Маны

Смешанная - Текущая Волна Атаки

Разное - штурмовая сложности уровня

ресурсов - Текущее золото Количество

ресурсов - Текущая пиломатериалов Объем

ресурсов - всего не минными золото, принадлежащее

ресурсов - пищи, используемые

ресурсы - продукты питания, произведенные

ресурсы - продукты питания, произведенные Тип блока: блок сужение пищевого.

Город - Количество шахт, принадлежавших

город - город мой: через город ИД.

Город - очередное расширение города: через города ID.

Единицы Общая единицы Тип:владеет некоторой суммы Тип блока.

Единицы Общая единицы типа - только завершенные: владеет некоторой суммы Тип блока завершена.

Единицы Общая единицы типа по городу: Владеет определенный Размер Тип единицы завершенного или незавершенного в городе.

Блок - стоимость изготовления блока Тип

блока - Оптовая стоимость единицы Тип

единицы - время сборки установки

обновления - Текущее обновление уровня

апгрейда - золото стоимость апгрейда

апгрейд - Оптовая стоимость обновления

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

Рафаэль Тимергалиев

Название:устанавливает имя твоего ИИ. (Флажок "установить имя игрока" для этой работы, если ваша карта имеет фиксированные имена игроков).

Рас: Вы можете выбрать между человеком, орков, нежити и ночных эльфов. Если вы используете пользовательские расы есть специальный вариант для этого. (Для пользовательских импортировать объект данных с вашей карты.)

Поведения: это поведение.

Пользовательский объект данных импорт/экспорт: эта опция позволяет Вам импортировать и экспортировать пользовательские данные объекта. Тип файла .w3o.

Условия: это позволяет создать условия для формирования заказов и атакующей групп. Она также позволяет редактировать и удалять.

Как сделать ии в варкрафт 3

Что такое ИИ? ИИ - это аббревиатура слова Искусственный интеллект. Конечно же вы играли во многие карты Warcraft III по сети. Но неужели вам не хотелось сыграть в эту же карту в одиночном режиме? Побегать постреляться, покачаться, открыть какие ни будь секреты карты в конце концов и вы наверняка разочаровывались когда заходили в карту и бегали один одинешенька по карте, а другие герои тупо стояли. Да, конечно хочется что бы компьютер научился думать как человек и управлял другими героями, но, это не так уж и легко сделать. Не надо сразу критиковать создателей карты, им же тоже пришлось не легко делать ее, они и не рассчитывали на то что вы будите играть в одиночном режиме, заранее предполагалось что игра будет происходить с другими людьми, если быть точнее то по сети.

Представьте себя в роли опытного картостроителя, который уже не раз создавал карты.

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

Какие же основные критерии для создания ИИ.

1. Движение по карте. Как же вы представляете себе хорошее ИИ без движения персонажа? "Да ни как”- ответите вы себе, и будите совершенно правы.

Что такое движение? Мы разберем по подробнее.

С точки зрения компьютера.

Если вы хоть раз пытались сделать ИИ, или смотрели чужие нароботки, то вы наверно знаете что в триггерах вы будите задавать герою движение в случайную точку не зависимо от того есть ли там враги или нет. Это конечно же не правильно, нужно компьютер заставить мыслить! Заставить его осматривать ситуацию, что бы он мог передумать и пойти в другое место если ему это будет выгодно.

С точки зрения человека.

Вы зашли в какую ни будь карту, например Angel Arena. Что вы делаете первым делом, идете раскачивать своего персонажа, но как же вы это делаете. Очень просто, выбирая то место куда вы хотите пойти вы анализируете ситуацию, есть ли там герой чужой команды, если есть то вы смотрите на его параметры, предметы и думаете выгодно ли вам туда идти? Если вы сильнее его ,то вы наверняка пойдете и попробуете убить его.

Вывод.

Мы подумали и сделали вывод, что компьютер надо научить думать! Анализировать ситуацию, выгодно ему будет убить того или иного персонажа, или лучше подождать пока он уйдет от туда, а может вообще пойти в другое место! Короче – действовать по ситуации.

2. Предметы. Этому пункту я выделил особое внимание.

С точки зрения компьютера.

Во многих наработках я видел последовательную покупку предметов. То есть игрок накопил 50 монет и он тут же идет тратить их на одну вещь, не думая о том нужна она ему или нет. Так же он будет покупать остальные предметы пока не закончатся деньги.

С точки зрения человека.

Вы находитесь в какой то зоне и справляетесь со всеми мобами, в вашу казну деньги так и летят. Вы же не будите срываться с места что бы купить какую то бесполезную вещь, а потом опять возвращаться обратно. Нет, вы лучше подкопите денег и потом купите что ни будь по лучше, то что вам действительно будет нужно. Допустим вы накопили то кол-во денег сколько вам нужно было, вот вы стоите у торговой лавки и смотрите на статистику предмета, вы – воин. Выгодно ли будет вам покупать вещь которая прибавляет ловкость? Зачем она вам, незачем, а компьютеру все равно, он ее купит. Вы будите сравнивать параметры предметов, у которого больше свойства, то вы и купите, а компьютер – нет, он не будет сравнивать.

Вывод.

Опять же повторяюсь что компьютер надо научить мыслить! Без этого ни как! Надо научить компьютер сравнивать предметы по характеристикам, выгодно ли ему будет купить вещь на мага если он воин или нет?

Думайте, старайтесь! Без труда не вытащишь и рыбку из пруда.

Читайте также: