Сейчас 23:58:29 Пятница, 26 апреля, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » АИ (кто не знает, прошу не писать. . .)
АИ
Imba_pvLДата: Вторник, 18 Июня 2013, 15:18:23 | Сообщение # 1
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
Всем добра.
Вообщем хочу создать грамотный АИ для своей карты (херо дефенс)
Есть ли годные статьи? или системки для примеров. . .
А то в каталоге статей про ии какой-то бред написан, лишь капитанские статьи, о том, что аи должен использовать предметы....-_-
Надеюсь поможете.




Сообщение отредактировал Imba_pvL - Вторник, 18 Июня 2013, 15:22:20
 

bornikkenyДата: Вторник, 18 Июня 2013, 16:55:08 | Сообщение # 2
5 уровень
Группа: Проверенные
Сообщений: 107
Награды: 0
Репутация: 81
Блокировки:
Цитата
херо дефенс
Думаю, может быть там найдешь для себя полезное(или новое). Удачи.
 

SlizzBenДата: Вторник, 18 Июня 2013, 17:09:51 | Сообщение # 3
1 уровень
Группа: Пользователи
Сообщений: 14
Награды: 0
Репутация: 28
Блокировки:
Те6е нужен ИИ для мо6ов или игроков(героев)?
 

Imba_pvLДата: Вторник, 18 Июня 2013, 18:11:28 | Сообщение # 4
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
SlizzBen, да для героев
bornikkeny, почитаю, спасибо за что-то




Сообщение отредактировал Imba_pvL - Вторник, 18 Июня 2013, 18:14:21
 

SlizzBenДата: Вторник, 18 Июня 2013, 18:13:34 | Сообщение # 5
1 уровень
Группа: Пользователи
Сообщений: 14
Награды: 0
Репутация: 28
Блокировки:
Цитата (SlizzBen)
Те6е нужен ИИ для мо6ов или игроков(героев)?

Цитата (Imba_pvL)
SlizzBen, да


Я так понял те6е и для того и для другого?
 

Imba_pvLДата: Вторник, 18 Июня 2013, 18:14:47 | Сообщение # 6
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
гы, не доконца прочел(
только для героев, ии для крипов не нужен.


 

SlizzBenДата: Вторник, 18 Июня 2013, 18:58:58 | Сообщение # 7
1 уровень
Группа: Пользователи
Сообщений: 14
Награды: 0
Репутация: 28
Блокировки:
Ну для начала составь список того, что6ы ты хотел от 6ота.

Есть 6анальный ИИ - вы6ирает героя, качает скиллы, покупает/получает вещи, идёт в нужную точку и стоит там дефит, пока его ХП не упадёт ниже определенного количества/процента(если упало ниже, 6ежит хилиться, докупает вещи, возвращаеться). Если в начале игры(до старта) в ячейке 6ота 6ыл вы6ран компьютер(сла6ый, средний, сильный), то герой 6удет использовать скиллы по логике заданной 6лиззардами, т.е. массовый стан(кентавра) использовать когда 6ьют 2 или 6ольше врагов и т.д.

Улучшение - 6от вы6ирает не случайного героя, а уже отталкивается от вы6ора других(Допустим 4 играют из них 1 человек, 3 6ота. Человек вы6ирает что хочет, допустим дд, 1-му 6оту рандомом вы6ираеться дд, танк или саппорт, 2-му 6оту вы6ираеться рандомно 2 оставшихся класса(дд или танк, если 2-му выпал саппорт), 3 - оставшийся класс. Вещи покупают нео6ходимые данному классу.

Дальше можно улучшить так - есть некоторые связки героев, 6оты пытаются пикать эти связки, что6ы увеличить КПД команды. Вещи покупаются уже отталкиваясь не от класса, а от того какой герой. Скиллы качаются отталкиваясь от вы6ранной связки героев. В триггерах отключаем 6лизардовский ИИ, и уже сами прописываем логику использования скиллов, т.е. в команде есть 2 масс стана, значит 2-ой стан использовать по окончанию 1-го. Уже Оттачиваем поведение 6отов в 6ою, т.е. саппы, маги, лучники стараются держать дистанцию, танки, мили нао6орот стараются находиться в гуще со6ытий, параллельно стараясь у6ивать тех, кто всё же сагрился на дальников.

Ну вот, старт есть. Тут много ещё додумать можно, это отталкиваться и от осо6енностей самой карты надо.
 

Imba_pvLДата: Вторник, 18 Июня 2013, 20:33:23 | Сообщение # 8
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
И так, для начала бот берет героя спустя 30 секунд
Далее, покупает лечилку на ману и хп. (у всех). Когда боту наносят урон 350 (он делает личилку, и убегает в сторону, также и с маной)
Далее от зависимости основного атрибута героя, идет покупать остальные арты.
Разумеется качает спелы (в рандомном значении (случайное число от 1 и 2), так как качать пассивку бот не должен, ведь он запорот игру)

Вот уже началась волна, наш бот делает спел, но перед этим должна быть пауза от 2 до 7 секунд, а потом уже и каст спела.
Затем уже регенится, как я говорил выше.
Далее качает спел, как я говорил выше.
После чего по кд делает способности.
Когда у бота нет лечилок, и когда он уже убегает от врагов и его хп больше 300 + 10*уровень волны, то он вновь идет дратся, если же это танк или ловкач.
А если маг, то еще ждет ману.

Примерно такой бот.
Кто сделает буду вечно благодарен, и запишу в благодарности карты.


 

Q1wAseДата: Вторник, 18 Июня 2013, 20:37:50 | Сообщение # 9
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Ну убегать на базу хилиться если у тебя меньше определённого процента хп, уж слишком банально. Это может быть не выгодна для бота. А если он мог к примеру убить вражеского героя и после этого уже только бежать на базу? Здесь всё же есть нюансы которые следует учитывать. На примере моего ИИ который мы вчера тестили.

 

Imba_pvLДата: Вторник, 18 Июня 2013, 20:39:58 | Сообщение # 10
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
Цитата (Q1wAse)
Ну убегать на базу

лол, какую базу?
максимум сделать тп, если он имеется, и бегать по кругу


 

Q1wAseДата: Вторник, 18 Июня 2013, 20:42:18 | Сообщение # 11
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Цитата (Imba_pvL)
максимум сделать тп, если он имеется, и бегать по кругу

По кругу бегать? Ты о чём?)


 

Imba_pvLДата: Вторник, 18 Июня 2013, 20:45:18 | Сообщение # 12
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
Q1wAse, ну если бы ты поиграл в мою карту, то ты бы понял
я не для арены, а для херо дефенс. . .


 

SlizzBenДата: Вторник, 18 Июня 2013, 20:50:06 | Сообщение # 13
1 уровень
Группа: Пользователи
Сообщений: 14
Награды: 0
Репутация: 28
Блокировки:
Цитата (Q1wAse)
убить вражеского героя

Карта Херо дефенс, в херо дефенсах что делают когда конаються хп и 6утылки на хп? Отходят что6ы купить новые.

Imba_pvL, я так понял это для твоей марвеловской карты 6оты, верно?

Добавлено (18 Июня 2013, 20:50:06)
---------------------------------------------

Цитата (SlizzBen)
конаються

кончаются*
 

Imba_pvLДата: Вторник, 18 Июня 2013, 20:52:38 | Сообщение # 14
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
SlizzBen, разумеется для них)
А когда нету зельев, то они берут рядом руны, а когда нету рун, бегают по карте и делают спелы по кд, когда хп уже нормальный (писал выше) опять дерутся, если же у них скорость перемещения маленькая, а скорость крипов куда больше, то они просто умирают


 

Q1wAseДата: Вторник, 18 Июня 2013, 21:01:55 | Сообщение # 15
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Нужно давать боту как можно больше возможностей. И он их будет применять. Ну я про системы. Система отлова врага на карте система ходьбы система которая всё это взаимосвязывает, система для выживания(убегать от врага, хилиться, давать скилы чтобы выжить если это поможет) Система TeamPlay то есть компы должны играть сложенно(То есть вместе), или же SinglePlay(То есть когда рядом нет союзников).
Ну вот все основные моменты, которые бы учёл в твоей карте к примеру.


 

Imba_pvLДата: Вторник, 18 Июня 2013, 21:09:34 | Сообщение # 16
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
Q1wAse, ну я ж говорил, что не нужно писать КАК должны ходить боты
мне нужна сама система, в триггерах.
остальное особо мне не нужно, главное понять 1 пример, и все пучком


 

SlizzBenДата: Вторник, 18 Июня 2013, 21:31:57 | Сообщение # 17
1 уровень
Группа: Пользователи
Сообщений: 14
Награды: 0
Репутация: 28
Блокировки:
чуть позже сяду сделаю примерчик
 

Q1wAseДата: Вторник, 18 Июня 2013, 22:00:12 | Сообщение # 18
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Да я ж просто помочь хотел. Объяснить конкретный принцип поведения среднего ИИ.

 

NaturekidДата: Вторник, 18 Июня 2013, 22:10:00 | Сообщение # 19
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
Q1wAse, у Imba_pvL, е херо дефенс, а херо арена.
То есть бежать на базу хилиться не получится, такой возможности нет.
Просто при сильном фокусе на героя заставлять его бежать в случ точку, при условии что есть герои, способные протанковать.
Ну и сделать итембилд для типов героев в 1 триггере.
Для арены, а тем болеее стандартной, АИ делается очень просто.

Добавлено (18 Июня 2013, 22:10:00)
---------------------------------------------
конкретно в данном случае тем еще проще, что враги - только мобы и вся цель - их уничтожить.


 

Q1wAseДата: Вторник, 18 Июня 2013, 22:28:11 | Сообщение # 20
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Цитата (Naturekid)
в случ точку

Не совсем верно.
Нужно бежить в направлении при определённых условиях что в том направлении выгодно бежать...


 

NaturekidДата: Вторник, 18 Июня 2013, 22:59:38 | Сообщение # 21
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
там монстры распределяются нередко
целую массу проверок запиливать ради мнимальной прибавки к кпд


 

Q1wAseДата: Вторник, 18 Июня 2013, 23:10:58 | Сообщение # 22
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Цитата (Naturekid)
там монстры распределяются нередко
целую массу проверок запиливать ради мнимальной прибавки к кпд

Каждая минимальная прибавка к кпд ведёт к победе ИИ над человеком.


 

SlizzBenДата: Среда, 19 Июня 2013, 00:20:05 | Сообщение # 23
1 уровень
Группа: Пользователи
Сообщений: 14
Награды: 0
Репутация: 28
Блокировки:
Вот начальная версия, от которой отталкиваться можешь - http://adf.ly/QjaKf

В ней лучка старается держаться на дистанции в 300 ед. Если же хп падает ниже 30% то использует хилку, если есть. Иначе использует скилл похищения здоровья, если он не кд и маны хватит, иначе просто у6егает.

У6егает в противоположную сторону от о6идчика и если скорость лучки выше врага.

Если продолжение надо, пиши, доделаю ;)
 

Imba_pvLДата: Среда, 19 Июня 2013, 09:20:32 | Сообщение # 24
10 уровень
Группа: Проверенные
Сообщений: 3151
Награды: 1
Репутация: 1260
Блокировки:
SlizzBen, Спасибо огромное =)) будет как примером
но вот не мог ли бы ты доработать?
просто она делает так, стоит ждет пока до нее доберутся мобы (в принципе так и должно быть), дальше когда они ее бьют, она тупо убегает и не наносит урона, лишь 2 раза ударит и убегает, далее хилится (да, то что нужно), затем просто забивается в углу, пока ее не отпинают, а затем просто похищает хп, но полностью она это сделать не может и умирает.
Надеюсь поможешь исправить баг с атакой)))
чтобы она била крипов, далее использует зелье, а когда хп уже нету, она убегает(кругами), и кастует спелы по кд

Добавлено (19 Июня 2013, 09:20:32)
---------------------------------------------
и да, если можно то с комментариями каждой строчки -)
Как покупать и как улучшать навыки, я понял точно, через переменные...гы гы
А вот переменная аи_скил зачем она? надеюсь напишешь


 

lawsonДата: Среда, 19 Июня 2013, 12:15:15 | Сообщение # 25
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Цитата (Imba_pvL)
И так, для начала бот берет героя спустя 30 секунд

30 сек прошло, создать юнита для игрока того то, убрать созданного юнита из таверны, если у тебя есть таверны.
Цитата (Imba_pvL)
Далее, покупает лечилку на ману и хп. (у всех)

дать герою н колво банок маны и здоровья, отнять столько то денег.
Цитата (Imba_pvL)
Когда боту наносят урон 350 (он делает личилку, и убегает в сторону, также и с маной)

каждую секунду проверятеся, если у бота текущее здоровье <= макс здор - 350, то если в инвентаре имеется банка хилки использовать ее.
Цитата (Imba_pvL)
Далее от зависимости основного атрибута героя, идет покупать остальные арты.

это уже делается разными способами, мне было легче делать это на жассе в виде структур и БД.
Цитата (Imba_pvL)
Вот уже началась волна, наш бот делает спел, но перед этим должна быть пауза от 2 до 7 секунд, а потом уже и каст спела.

в РО ставишь задержку каста спелла, вроде и все.
Цитата (Imba_pvL)
Затем уже регенится, как я говорил выше.

Цитата (Imba_pvL)
Далее качает спел, как я говорил выше.

Цитата (Imba_pvL)
После чего по кд делает способности.

Цитата (Imba_pvL)
После чего по кд делает способности.

Цитата (Imba_pvL)
Когда у бота нет лечилок

закупает новые - идет в магаз?
Цитата (Imba_pvL)
то он вновь идет дратся, если же это танк или ловкач.

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


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!


Сообщение отредактировал lawson - Среда, 19 Июня 2013, 12:15:55
 

Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » АИ (кто не знает, прошу не писать. . .)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz