Форум игры Age of Magic


It is currently 25 Jul 2011, 18:24

All times are UTC + 3 hours [ DST ]





Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 125 posts ]  Go to page 1, 2, 3, 4, 5 ... 13  Next
Author Message
 Post subject: ИИ
PostPosted: 11 Feb 2008, 23:39 
Offline
Администратор
User avatar
 WWW  Profile

Joined: 17 Jan 2008, 15:39
Posts: 918
Location: СПб
Господа, давайте вместе подумаем как реализовать логику ИИ в игре.
А конкретно я сейчас думаю над битвами CPU-CPU. Делать полное моделирование битвы достаточно затратно, потому встает вопрос о том как ввести весовые коэффициенты и рассчитать результаты битвы с помощью них.
Поясню.
Для каждого существа создается весовой коэффициент (или несколько коэффициентов) в зависимости от атаки/здоровья/скорости/количеству и пр. Ко всему этому добавляются параметры героев. Учитывая коэффициенты надо вычислить количество убитых/выживших с каждой стороны. Вот такая вот задачка, кто что думает?

З.Ы. Кстати нашел старую темку по PH на gamedev.ru, вот ссылка - http://www.gamedev.ru/code/forum/?id=1319

_________________
Nokia E61i


Top
 

 Post subject: Re: ИИ
PostPosted: 12 Feb 2008, 01:51 
Offline
User avatar
 WWW  Profile

Joined: 05 Feb 2008, 00:50
Posts: 21
Location: Харьков
Что приходит в голову навскидку, это сделать отдельный урон от стрелковых юнитов, т.е. не что бы коэф. стрелков по дамагу был больше чем у не стрелков (с учётом ессно скорости передвижения войск), т.е. если юнит не стреляет,то его может конкретно покоцать,пока он дойдёт до вражеской армии, и если скорость передвижения больше, то покоцает его меньше.
Т.е. нам необходимо учитывать полюбому скорость для расчёта числа ходов после которых начнется рукопашная. И это число ходов будет помножено на число дамага нанесённого стрелками в предварительной части игры.

З.Ы. Как то сумбурно написал. Надеюсь, что все меня поняли:)


Top
 

 Post subject: Re: ИИ
PostPosted: 12 Feb 2008, 23:05 
Offline
Администратор
User avatar
 WWW  Profile

Joined: 17 Jan 2008, 15:39
Posts: 918
Location: СПб
Я понял)
А вот как делить суммарные повреждения? Кто остается в живых а кто нет?

_________________
Nokia E61i


Top
 

 Post subject: Re: ИИ
PostPosted: 12 Feb 2008, 23:56 
Offline
User avatar
 WWW  Profile

Joined: 05 Feb 2008, 00:50
Posts: 21
Location: Харьков
Мне кажется что имеет смысл атаковать слабейшие войска (по характеристикам) или стрелков. Т.е. указать их как приоритетные цели, а затем уже атаковать всех остальных. также ИМХО следует выбирать цели для атаки руководствуясь скоростными характеристиками юнитов. Т.е. в идеале первым комп должен мочить слабых скоростных стреляющих юнитов :)
Ещё нужно прописать бегство с поля боя при неком минимальном (в процентном отношении) количестве войск у компа. Для упрощения можно использовать эту возможность только при битвах с людьми (думаю, что таким образом мы ускорим игровой процесс)


Top
 

 Post subject: Re: ИИ
PostPosted: 18 Feb 2008, 00:40 
Offline
 Profile

Joined: 11 Feb 2008, 22:01
Posts: 5
Location: dn.ua
Как бы оно не выросло в систему уравнений для нечетких выводов :)

Сделать нормальный расчет без симуляци тактики думаю нереально.

Из относительно "простых вариантов" ~ "я тебе ты мне".
Инициатива = Атака +1(если нападаешь) - защита_врага -1(если он в замке) + моя_территория - его_территория ... получаем 1й и 2й
Битвы в замках, автобой, и CPU-HUM отдельная история...
Бегство = цена юнитов твоих *4 > цена юнитов чужих

Порядок расчета:
нападавший(только стрелки), инициатива, 2й, 1й, 2й ...

пока живые есть или бегство
урон по каждому отряду= (атака_всех_врага - защита_всех_своих) / отряды своих
каждый отряд = юнит*количество - урон по каждому отряду
бегство();

Можно добавить зависимость от типа юнита(ближний дальний), положения в отряде (1я линия, 2я линия), лечение...

Расчет глупый, не учитывающий множество параметров, который можно критиковать и критиковать.

Но чем больше таких идей тем ближе к здравым мыслям, брэиншторм ещё никто не отменял.
Изобретать велосипед так изобретать :D

_________________
Nokia N73, Nokia E60


Last edited by Grem on 18 Feb 2008, 18:11, edited 1 time in total.

Top
 

 Post subject: Re: ИИ
PostPosted: 18 Feb 2008, 13:14 
Offline
User avatar
 WWW  Profile

Joined: 05 Feb 2008, 00:50
Posts: 21
Location: Харьков
Grem wrote:
Инициатива = Атака +1(если нападаешь) - защита_врага -1(если он в замке) + моя_территория - его_территория ... получаем 1й и 2й

Имхо можно упростить и инициативу расчитывать от скорости. Если скорость одинакова, то первый ходит нападающий.

По поводу приоритетов для атаки я уже писал. Единственное что можно добавить, так это ввести ещё дополнительную зависимость от числа юнитов которые атакует комп.


Top
 

 Post subject: Re: ИИ
PostPosted: 19 Feb 2008, 20:14 
Offline
Администратор
User avatar
 WWW  Profile

Joined: 17 Jan 2008, 15:39
Posts: 918
Location: СПб
Эх, чувствую все таки придется ноормальную симуляцию делать.... А тио если все учитывать, то кода еще больше получится...

_________________
Nokia E61i


Top
 

 Post subject: Re: ИИ
PostPosted: 19 Feb 2008, 21:00 
Offline
User avatar
 WWW  Profile

Joined: 17 Jan 2008, 21:42
Posts: 384
Хы... Да ладно, смарты сейчас не слабые. Будем ждать, пока комп разбираться будет...


Top
 

 Post subject: Re: ИИ
PostPosted: 19 Feb 2008, 22:02 
Offline
Администратор
User avatar
 WWW  Profile

Joined: 17 Jan 2008, 15:39
Posts: 918
Location: СПб
В плане вывода графики 9.1 серия с 200МГц процами откровенно слабая.

_________________
Nokia E61i


Top
 

 Post subject: Re: ИИ
PostPosted: 20 Feb 2008, 00:47 
Offline
 Profile

Joined: 20 Feb 2008, 00:46
Posts: 1
Я где-то видел открытый код к геймбоевской версии героев. Насколько я помню это там реализовано. Если надо, могу поискать


Top
 

Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 125 posts ]  Go to page 1, 2, 3, 4, 5 ... 13  Next

All times are UTC + 3 hours [ DST ]



Who is online

Users browsing this forum: Yahoo [Bot] and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group  
Design By Poker Bandits