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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Раздел картостроителя » [СТАТЬЯ]Как сделать хороший ИИ (Теория)
[СТАТЬЯ]Как сделать хороший ИИ
BUUNIДата: Вторник, 09 Ноября 2010, 14:13:05 | Сообщение # 1
7 уровень
Группа: Проверенные
Сообщений: 347
Награды: 1
Репутация: 53
Блокировки:
[СТАТЬЯ]Как создать хороший ИИ

В данной статье я расскажу как сделать хороший ИИ (Искусственный интеллект) для всех типов карт.

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

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

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

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

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

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

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

Если вы хоть раз пытались сделать ИИ, или смотрели чужие нароботки, то вы наверно видели, что в триггерах это будет выглядеть примерно так "Боевая единица - заставить юнит передвигаться в случайную точку региона ..." не зависимо от того есть ли там враги или нет. В некоторых случаях это конечно же не правильно (AoS), нужно компьютер заставить мыслить! Заставить его осматривать ситуацию, что бы он мог передумать и пойти в другое место если ему это будет выгодно.

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

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

Вывод.

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

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

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

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

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

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

Вывод.

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

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

Автор статьи: buuni
Специально для Warcraft3ft.info

Скоро выложу примеры того что у меня получилось, на данный момент научил персонажа думать, нужно ли идти ему в то место или лучше пойти в другое.




Сообщение отредактировал BUUNI - Четверг, 11 Ноября 2010, 19:53:04
 

BloodSamFДата: Вторник, 09 Ноября 2010, 17:43:45 | Сообщение # 2
8 уровень
Группа: Проверенные
Сообщений: 707
Награды: 0
Репутация: 175
Блокировки:
чтобы научить компьютер мыслить - нужно самому уметь мыслить
небольшие недочеты в статье:
Quote (BUUNI)
вы будите задавать герою движение в случайную точку не зависимо от того есть ли там враги или нет

Quote (BUUNI)
Это конечно же не правильно

вот это - зависит от карты, в АоS и рпг, конечно же нужно каждую единицу прорабатывать, а в маленьких (!) аренах - случайное перемещение используется повсеместно

и вообще BUUNI, ты капитан очевидность, но статья норм

 

BUUNIДата: Вторник, 09 Ноября 2010, 18:31:59 | Сообщение # 3
7 уровень
Группа: Проверенные
Сообщений: 347
Награды: 1
Репутация: 53
Блокировки:
Спасибо за помощь, статью поправил.

 

BloodSamFДата: Вторник, 09 Ноября 2010, 19:17:31 | Сообщение # 4
8 уровень
Группа: Проверенные
Сообщений: 707
Награды: 0
Репутация: 175
Блокировки:
мне кажется что перемещения и покупки предметов - мало...
Еще необходимо взаимодействие с остальными юнитами и правильное использование скиллов
 

BUUNIДата: Вторник, 09 Ноября 2010, 19:20:50 | Сообщение # 5
7 уровень
Группа: Проверенные
Сообщений: 347
Награды: 1
Репутация: 53
Блокировки:
Quote (BloodSamF)
мне кажется что перемещения и покупки предметов - мало... Еще необходимо взаимодействие с остальными юнитами и правильное использование скиллов

Согласен, будет время - добавлю.


 

-Castro-Дата: Вторник, 09 Ноября 2010, 19:58:16 | Сообщение # 6
УГ продюсер
Группа: Ветераны
Сообщений: 2099
Награды: 3
Репутация: 1213
Блокировки:
Статья слабовата. А вобще, это не статья, а лишь размышления автора на тему создания ИИ. Статья картостроения должна быть ориентирована на обучение читателя, в данном случае - созданию ИИ. Ни одного примера, лишь пустые слова. Среднестатистический нуб на все подобные рассуждения будет иметь один вопрос: "А как?".

BUUNI, никто не будет верить автору, который сам не доказал, что умеет делать то, что описано в статье, так, что нужны примеры, примеры и еще раз примеры!

 

BUUNIДата: Вторник, 09 Ноября 2010, 20:04:35 | Сообщение # 7
7 уровень
Группа: Проверенные
Сообщений: 347
Награды: 1
Репутация: 53
Блокировки:
-Castro-, хорошо, будут доказательства)

 

-Castro-Дата: Вторник, 09 Ноября 2010, 20:05:55 | Сообщение # 8
УГ продюсер
Группа: Ветераны
Сообщений: 2099
Награды: 3
Репутация: 1213
Блокировки:
Quote (BUUNI)
-Castro-, хорошо, будут доказательства)

Я не доказательств прошу по сути, нужны примеры в статью.
 

BUUNIДата: Вторник, 09 Ноября 2010, 20:07:57 | Сообщение # 9
7 уровень
Группа: Проверенные
Сообщений: 347
Награды: 1
Репутация: 53
Блокировки:
Quote (-Castro-)
Я не доказательств прошу по сути, нужны примеры в статью.

Я понял, это того рода шутка)


 

Dimon4iK-ERAДата: Среда, 10 Ноября 2010, 00:24:51 | Сообщение # 10
9 уровень
Группа: Проверенные
Сообщений: 1046
Награды: 0
Репутация: 397
Блокировки:
И, как уже сообщили, она мала. Я как не умел, так толком и не умею делать ИИ ибо на одних передвижениях и скупе не ограничишься. Ты не объяснил как сделать своевременный отход из боя, исп. скилов и вообще... многие, конечно, кто хорошо знает триггеры и могут сами додуматься, но есть же, кто и не очень их знает. Или влом убить 3-4 часа только на то, чтобы понять все, что нужно для создания ИИ и еще 48 часов, чтобы создать примитивный (вместо 12)
 

BUUNIДата: Среда, 10 Ноября 2010, 00:32:17 | Сообщение # 11
7 уровень
Группа: Проверенные
Сообщений: 347
Награды: 1
Репутация: 53
Блокировки:
Как будет время то стазу дополню статью и выложу примеры.

 

P@d®eДата: Воскресенье, 14 Ноября 2010, 08:47:17 | Сообщение # 12
6 уровень
Группа: Пользователи
Сообщений: 221
Награды: 0
Репутация: 73
Блокировки:
Quote (BUUNI)
Как будет время то стазу дополню статью и выложу примеры.

Так чего же ждешь? Публика !!требует!! хороших примеров.


Кому помог поставьте плюсичек.
 

BUUNIДата: Воскресенье, 14 Ноября 2010, 18:49:03 | Сообщение # 13
7 уровень
Группа: Проверенные
Сообщений: 347
Награды: 1
Репутация: 53
Блокировки:
Quote (P@d®e)
Так чего же ждешь? Публика !!требует!! хороших примеров.

Как только, так сразу.


 

HanRUSДата: Воскресенье, 14 Ноября 2010, 21:03:46 | Сообщение # 14
1 уровень
Группа: Пользователи
Сообщений: 14
Награды: 0
Репутация: 1
Блокировки:
Но лучше сразу и теорию и практику

Мой ник - (H@n[RU$]).co
 

НеКиТоСДата: Понедельник, 21 Марта 2011, 18:13:47 | Сообщение # 15
6 уровень
Группа: Проверенные
Сообщений: 209
Награды: 0
Репутация: 31
Блокировки:
Dimon4iK-ERA, тем, кто не хочет
Quote (Dimon4iK-ERA)
убить 3-4 часа только на то, чтобы понять все, что нужно для создания ИИ и еще 48 часов, чтобы создать примитивный

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


Ландшафтер...


 

lawsonДата: Четверг, 24 Марта 2011, 23:59:02 | Сообщение # 16
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Может скоро напишу статью по созданию хорошего ИИ на JASS в одно триггере через таймер с пиком юнитов. Без тупых триггеров типа Юнита Атакован или Юнит входит в область.

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


Сообщение отредактировал lawson - Пятница, 25 Марта 2011, 00:00:41
 

­­­­­­­­Дата: Пятница, 25 Марта 2011, 01:47:05 | Сообщение # 17
1 уровень
Группа: Пользователи
Сообщений: 3
Награды: 0
Репутация: 4
Блокировки:
Слишком мало информации
Надо дополнить и написать функции. Просто посылать в случайную локацию - порог смертных. Начнутся лаги, по причине сохранения позиции этой самое случайной локации в памяти. Проверено
 

DemiferДата: Среда, 14 Сентября 2011, 19:37:30 | Сообщение # 18
7 уровень
Группа: Проверенные
Сообщений: 363
Награды: 0
Блокировки:
­

(╮°-°)╮┳━━┳ Взял стол. ( ╯°□°)╯ ┻━━┻ И устроил дебош!
 

Artem3123Дата: Четверг, 15 Сентября 2011, 18:41:36 | Сообщение # 19
9 уровень
Группа: Проверенные
Сообщений: 816
Награды: 0
Репутация: 577
Блокировки:
Кэп: а как это воплотить в жизнь
 

аркейДата: Понедельник, 28 Ноября 2011, 19:25:57 | Сообщение # 20
9 уровень
Группа: Проверенные
Сообщений: 948
Награды: 0
Репутация: 1080
Блокировки:
Дата: Вторник, 09 Ноябрь 2010, 14:13:05 | Сообщение # 1
год прошел результата 0 некакой помощи новичкам в ИИ


 

lawsonДата: Понедельник, 28 Ноября 2011, 20:20:08 | Сообщение # 21
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (аркей)
год прошел результата 0 некакой помощи новичкам в ИИ

Читай тему полностью. :)
Люди у меня подпись что так трудно прочитать??? Учите жасс и я вас с удовольствием научу.


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


Сообщение отредактировал lawson - Понедельник, 28 Ноября 2011, 20:20:56
 

Gamefr@nkДата: Понедельник, 28 Ноября 2011, 20:56:09 | Сообщение # 22
8 уровень
Группа: Проверенные
Сообщений: 638
Награды: 0
Репутация: 188
Блокировки:
lawson, а если знаешь полужасс,то научишь?)
 

аркейДата: Понедельник, 28 Ноября 2011, 21:53:25 | Сообщение # 23
9 уровень
Группа: Проверенные
Сообщений: 948
Награды: 0
Репутация: 1080
Блокировки:
Quote (lawson)
год прошел результата 0 некакой помощи новичкам в ИИ

Читай тему полностью.
Люди у меня подпись что так трудно прочитать??? Учите жасс и я вас с удовольствием научу.


я ет читал после етого в тему заглянул я триги знаю мож показать пару жасс примером ИИ ?) :'(


 

lawsonДата: Понедельник, 28 Ноября 2011, 22:54:51 | Сообщение # 24
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (Gamefr@nk)
а если знаешь полужасс,то научишь?)

Это как?
Quote (аркей)
пару жасс примером ИИ

Ну и толку будет от этого? Карту свою дать не могу так как сижу без ВЕ на ноутбуке, приеду домой на выходных скину карту, но думаю это мало чем тебе поможет.
Скажу вкраце об ИИ: Система перемещения проста, по началу кажеться что совсем наоборот, релизуеться простейшим таймером без глупых аля триггеров типа юнит атакован, и тому подобное, все в одном триггере. Другое дела система сборки, так как я в жизни не видел более продвинутого ИИ чем в доте, я делаю такую же систему сборки и у себя на карте, это вышло уже сложней чем перемещение, но я практически ее закончил.
Gamefr@nk, Кстати я тебе помоему скидывал уже свою карту, если так то скинь ее аркей.


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


Сообщение отредактировал lawson - Понедельник, 28 Ноября 2011, 22:55:48
 

Gamefr@nkДата: Понедельник, 28 Ноября 2011, 23:05:52 | Сообщение # 25
8 уровень
Группа: Проверенные
Сообщений: 638
Награды: 0
Репутация: 188
Блокировки:
lawson,
Quote (lawson)
Это как

Это вроде все окей,но все же не жасс,точнее пока не могу
делать всякие тру наработки типо инвентаря большого
Таймером пользоватся неоч люблю(ну переборю как нить)
и почии косяки в изучении жасса,скину если найду))

Добавлено (28 Ноябрь 2011, 23:05:52)
---------------------------------------------
Точнее говоря у мну уклон изучения жасса был в спелмэйкниг:D
Ибо любил спеллы,а делал накрайность коряво.

 

Форум о Warcraft 3 » Раздел для картостроителей » Раздел картостроителя » [СТАТЬЯ]Как сделать хороший ИИ (Теория)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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