IPB

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
> AI
NordStar
сообщение 02 Jun 2005, 12:33
Сообщение #21

Immortal
Сообщений: 1 995
Спасибо сказали: 6 раз




Цитата(Calaidh @ 02 Jun 2005, 11:31)
Вопрос команде WOG: можно ли реализовать подключение своего кода к Героям, например средствами Erm (e.g.  !#DL<имя dll>:Rххх; Зарегистрировать функцию dll за !!FUххх и передавать параметры этой функции как обычной FU). Или как-нибудь по-другому.

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

Кстати, на счет кустистости дерева, не так это и страшно. Разве мозгов мало сейчас у современных машинок? У тех же шахмат отнюдь кустистость не меньше будет, а то и побольше. Вопрос в другом - оценочная функция, которая, как известно складывается из тактической оценки и материальной оценки. Не слишком проработанный в гороях момент и вот тут, как раз сбор статистики ОЧЕНЬ нужен. В частности мне, как координатору NTG такая статистика была бы очень полезной для балансинга юнитов города, что задача не очень уж простая.

Добавлено ([mergetime]1117704828[/mergetime]):
P.S. Если уж можно было бы подключить внешний dll к героям, то не было бы смысла в скрипте сборщике статистики, лучше уж это было бы просто кодом решить. Быстро и со вкусом.


--------------------
Усячески Ваш :)
Go to the top of the pageAdd Nick
 
+Quote Post
Dj_Kolan
сообщение 02 Jun 2005, 15:07
Сообщение #22

Жгу!
Сообщений: 765
Спасибо сказали: 77 раз




2 Calaidh (Kalaidh)
Эх, жаль, я в скриптах не силён. sorry.gif Вечная моя проблема -- скрипты. Всё-таки надо когда-нибудь пересилить себя, сесть и выучить хотябы половину...
Go to the top of the pageAdd Nick
 
+Quote Post
Гость_Calaidh_*
сообщение 02 Jun 2005, 15:27
Сообщение #23







2NordStar
Понимаю, безопасность... А то еще появятся вирусы для WOG biggrin.gif .
А то можно было бы криптографию привернуть, тот же RSA, и пусть WOG team сертификаты раздает (они наверно очень обрадуются этому новому развлечению, тестировать присланные dll или исходники).
Значит будем ждать, что сотворит coff.
А зачем у юнитов параметры combat value и fight value? Неужели по ним компьютер и думает?
Go to the top of the pageAdd Nick
 
+Quote Post
NordStar
сообщение 10 Jun 2005, 19:06
Сообщение #24

Immortal
Сообщений: 1 995
Спасибо сказали: 6 раз




Цитата(Remedy @ 10 Jun 2005, 18:17)
NordStar – проблема вся в том, что алгоритмизация AI –
чрезвычайно сложный с точки зрения математики процесс.
Вы скажите – мол открыл Америку – здесь я как раз подчеркиваю –
что настолько сложный – что без университетского, математического образования вопрос не решается – уж точно.


Ну прям таки все так грустно biggrin.gif

Цитата(Remedy @ 10 Jun 2005, 18:17)
Метод перебора вариантов отпадает – поскольку оно превышает шахматный расклад, где-то в [(pi/6)*(sp-1)^2]*c+g(a) (pi=3.14; sp-скорость монстра; с – магия в книге; g(a) – другие факторы (пропустить ход – ждать, магия и т.п.)  ) – как правило нужно просчитывать как минимум на 5 ходов вперед – и в итоге мы получаем огромные числа (5 ходов – это 2^17 вариантов – не думаю, что это будет быстро ...) ( тут много неточностей – во первых – гексагональная площадь не описывается кругом – на самом деле там формула кажись такая: S=1+{сумма от 1 до sp по i}(6*i) =1+6*((sp^sp+sp)2) - ну и погрешности в превышении скорости за рамки поля и т.п. ).


Ломовой перебор естественно будет бесполезен. Действительно, юнит в героях имеет куда больше степеней свободы чем юнит в шахматах. Но скажите, сколько из всего множества ходов юнита действительно осмысленны? Мне кажется можно говорить о "тактических действиях", ведь во всем множестве ходов мы выбираем только немного основных - атака (кого-то), отход (в бок, назад), защита и т.д. Вариантов не так уж и много, следует только детально заняться и выявить такие осмысленные ходы, и тогда можно будет не переберать абсолютно все варианты ходов, а именно только ограниченный набор "тактических действий" юнита. А уже после предварительного просчета действий на уровне "тактических действий" наиболее перспективные варианты просчитать более глубоко - т.е. метод отсечение ветвей. В продвинутых шахматных алгоритмах используется нечто подобное для сокращения глубины перебора в бесперспективных ветвях.
Еще один вариант сокращения перебора - делить возможные ходы на "острые", связанные с активным обменом ударами и разменом материала, и на "спокойные". И снова это активно используется при програмировании ИИ.

Цитата(Remedy @ 10 Jun 2005, 18:17)
Есть ещё два варианта – 1) создать хорошею базу ситуаций и научить компьютер их видеть


Можно пытаться - искать стандартные ситуации и анализировать алгоритмы для них, но это не решит проблемы в целом, скорее закроет явные дыры ИИ.

Цитата(Remedy @ 10 Jun 2005, 18:17)
2) научить компьютер «думать» лучше
Для этого нужно разработать совершенный механизм функции оценки ситуации.

Ремеди, любой алгоритм ИИ должен уметь оценивать ситуацию, все на этом строится. А вот вопрос как оценивать, действительно не простой. Как я уже писал, классически оценочная функция включает в себя материальную часть (перевес по юнитам) и тактическую часть (более выгодное построение и др.). В случае героев, есть еще и стратегическая состовляющая - нужно битву рассматривать в связи с партией вцелом.
Вот тут действительно все очень не просто и нужен серьёзный анализ.
Цитата(Remedy @ 10 Jun 2005, 18:17)
К сожалению, я не имел возможности сталкиваться с программированием AI,
но зато сделал большие успехи в воссоздания баланса на гексагональном поле
(и потом как выяснилось – и первое и второе тесно связаны между собой,
хотя не без своих).
Что там особенно интересно – так это введения характеристических функций,
которые определяют оценку ситуации по возможной подсистеме вариантов.
Другими словами – это своего рода тоже база ситуаций –
только смоделирована чисто математически.
Этими же функциями удобно описывать «критические точки»  тактической фазы.
Вот хороший (правда банальный) пример – 1-а бабочка валит n-големов за x количество ходов.
То есть глобальная характеристическая функция анализа содержит подфункцию анализа скорости юнитов.
(цикличность процесса по замкнутому контуру – при максимальном удалении от объекта  с учетом вероятности срабатывания «боевого духа»(ну если не голем) )
Вот эта функция, как по мне – то не такая уж сложная – один вечер работы.
Цикличность по замкнутому контуру – можно посмотреть что-то по криволинейным интегралам второго порядка по кривой – или ещё проще – с полями поигратся; удаленность - простое распределение материальной точки от заданой в конечном объеме). Но, к сожалению, таких ситуаций не много – а как правило – все намного сложнее.

В общем – если у кого-то будут какие-нить идеи и ваш ваши знания высшей математики на высоте –
с удовольствием вмести буду раз исследовать другие интересные функции.

И ещё – если кому не трудно – доработайте до конца функцию «по скорости юнитов».
У меня просто времени не хватает выложить все на язык математики.
А это нужная вещь – можно сделать, что бы AI тоже так действовал в похожих ситуациях.
А если копнуть глубже – то я уверен,
что на основе «игры по контуру и максимальным отдалением»,
можно реализовать ещё как минимум 5 игровых ситуаций.

Пишите на remeddy@mail.ru

Это как раз ты и занимался анализом тактической состовляющей оценочной функции - стандартные алгоритмы. Просто это частности, хотя и верные.


--------------------
Усячески Ваш :)
Go to the top of the pageAdd Nick
 
+Quote Post
deagle
сообщение 13 Jun 2005, 09:26
Сообщение #25

Member
Сообщений: 66
Спасибо сказали: 0 раз




Цитата(NordStar @ 10 Jun 2005, 19:06)
Цитата(Remedy @ 10 Jun 2005, 18:17)
Есть ещё два варианта – 1) создать хорошею базу ситуаций и научить компьютер их видеть


Можно пытаться - искать стандартные ситуации и анализировать алгоритмы для них, но это не решит проблемы в целом, скорее закроет явные дыры ИИ.


Этого для 3.59 будет вполне достаточно! О таком сейчас и так только мечтать можно. Пусть это будет даже небольшая база основных ситуаций, когда ИИ делает глупости... Такая база ситуаций уже сделает игровой процесс на порядок интересней (это основное, не забыли? smile.gif gameplay gamplay и еще раз gameplay) А нюансы работы ИИ и высшую математику можно оставить на следующие апдейты. А то не получим ни того ни другого.
Go to the top of the pageAdd Nick
 
+Quote Post
NordStar
сообщение 13 Jun 2005, 10:40
Сообщение #26

Immortal
Сообщений: 1 995
Спасибо сказали: 6 раз




Ок.
Давайте тогда сюда скидывать ляпы ИИ и правильные алгоритмы его поведения в описываемой ситуации.
Формат:
1. Признаки ситуации (как ее однозначно можно распознать)
2. Что сейчас комп делает не так
3. Как нужно - четкий алгоритм.


--------------------
Усячески Ваш :)
Go to the top of the pageAdd Nick
 
+Quote Post
deagle
сообщение 14 Jun 2005, 11:22
Сообщение #27

Member
Сообщений: 66
Спасибо сказали: 0 раз




Цитата(NordStar @ 13 Jun 2005, 10:40)
Ок.
Давайте тогда сюда скидывать ляпы ИИ и правильные алгоритмы его поведения в описываемой ситуации.
Формат:
1. Признаки ситуации (как ее однозначно можно распознать)
2. Что сейчас комп делает не  так
3. Как нужно - четкий алгоритм.


1. Самый главный в бою недостаток - кастование магии раньше времени и "не туда", т.е. ситуация - возможность наложить каст. А также неправильная расстановка приоритетов целей. т.е ситуация - возможность сделать ход юнитом.
2. все не так.
3. Предлагаю 3 равновероятные стратегии, которые выбираются случайно или в зависимости от силы армии своей/врага/класса героя/динамических рангов. Перед началом боя армии врага и свои ранжируются по силе, т.е. самые слабые югиты получают 1 ранг, самые сильные - 7-й ранг. В бою ранги пересчитываются динамическикаждый раунд с учетом призванных существ. Ранг зависит от типа юнита, его количества в группе и апа. Ранжировать можно разными методами, ничего сложного тут нет.
а. Магическая. Простое правило из мира фэнтези (не помню где читал)- кто кастует первый, тот проиграл. т.е. ИИ ждет каста врага и только потом свой бросает (желательно противоположного действия, приоритет экспертным). При этом выбирается самый сильный юнит врага (или свой) - максимальный ранг. Или если есть возможность полностью "добить" остатки какой-нибудь группы юнитов - добивает.
б. Оборонительная.
ВСЕГДА закрывать стрелков (выбирает самых сильных) - макс. ранг.
Никогда не ходить раньше своей очередности после паузы.
в. Атакующая.
Атака сразу допустима только в двух случаях - при условии что атакующая группа может нанести существенный урон (в процентах от общего хп - к примеру, больше 50%) юнитам врага с рангом больше заданного (к примеру 4). 2-я ситуация - возможность сразу добить юниты с рангом больше 6-го или стрелков максимального ранга.
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 14 Jun 2005, 22:54
Сообщение #28

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




Недавно видел, как AI стоял не одном месте целую неделю.
Go to the top of the pageAdd Nick
 
+Quote Post
Efrit
сообщение 15 Jun 2005, 08:48
Сообщение #29

Прощайте - я ушёл. И все отлично знают, почему :(
Сообщений: 2 862
Спасибо сказали: 159 раз




Баги AI? Ein Moment!
Возьмём очень известную ситуацию: комп надает на ваш город, в котором есть только мизерная охрана - что-то вроде 2 гремлинов и одной гаргульи (если нападаает на Башню). 200% сложность. У компа, предположим, чуть меньше недельного найма. Башня лучников проходила, снесла почти всех стрелков. Ход компа.
Как действует комп? Тут есть два случая:
- у вас (обороняющегося) есть герой.
Тогда вы, естественно, бахаете по комповской армии атакующей магией (поначалу волшебными стрелами, если есть сильнее - то другими). Комп знает это. Но в большинстве случаев он не поступает точно также (то есть не бьёт магией ваших юнитов), а ложит ... ЗАЩИТУ от магии! То есть, если вы бьёте ударами молний, то он ложит защиту от Воздуха. Особенно часто комп любит так делать, если у него та магия экспертная и он сможет защитить ею всех. То вы в связи с этим выигрываете драгоценное время и башней лучников расстреливаете часть его стрелков. Если добавить к этому любовь компа к усиляющей магии (ускорение или жажда крови), то времени выигрывается немало, а значит, можно получить реальные шансы на победу, оставив его с одной пехотой.
Комп - лох!
- второй случай: если у вас нет в городе героя (только одни юниты).
Тогда вы либо защищаетесь пехотой, вылетаете летунами (посли вейта, естественно) и встаёте перед его скоростными стрелками, а стрелками - стреляете. Что делает комп? Он, вместо того, чтобы применить убойную магию (типа файрбола), начинает ... ОСЛАБЛЯТЬ ваши войска! Опять же любит он это делать, когда соответствующая магия у него на эксперте. Наприммер, редкий комп отказывается от экспертной медлительности в начале битвы. А это опять же позволяет выиграть время, и если не выиграть битву (что без героя в замке всё же редкость), то избавить компа от нескольких стеков.
Комп - лох!

И, приведу ещё два примера с последней моей игры.
1. На меня нападает комп с 1 Древним Чудищем, другой армии нет. У меня - 3 беса, нет даже героя. Отстроен Замок.
Казалось бы, ну коли нет стрелков и летунов, ну бей ты магией! Ан нет, это же AI! Он начинает ... ЛЕЧИТЬ Чудика! Естественно, что силы магии для полного излечивания у него не хватает, и Чудик остаётся повреждённым. Через три хода он погибает.
2. На этот же (!) город нападает герой с 4 личами, разделёнными в 4 стека. Башня лучников сносит 3 стека, остаётся 1 лич. Ну примени ты Волну Смерти! Ан нет, он ... восстанавливает лича!!! У него становится два стека по 1 личу в каждом, которые за ход сносят 2 бесов, а один выживает. Следующий ход, башня лучников добивает компа.
Комп - лох!
Вывод: для AI (по его мнению) лучше оставить армию противнику, чем лишиться части своей. Поэтому он и защищает свои войска от магии и лечит их. Но Башня лучников, очевидно, не входит в его планы. Отсюда такие ляпы.

Воможное решение проблемы: при нападении компа на город уменьшаем стоимость бьющих заклятий (допустим, в полтора раза, а стоимость остальных увеличиваем в это же количествро раз. После применения им бьющей магии, чтобы было честно, забираем "удешевление" маны и, соответственно, отдаём "удорожание" маны после применения небьющей магии. Казалось бы, какая разница? Но перед применением магии комп будет видеть, что ему выгоднее будет стукнуть бьющей (вот!). А про "удорожание" и "удешевление" он не знает.

Ну, вот. Я грамотно описал ситуацию smile.gif


--------------------
>>> Официальный Форум Wake of Gods <<<

You believe, but what you see?
You recieve, but what you give?
Go to the top of the pageAdd Nick
 
+Quote Post
*Pirat*
сообщение 18 Jun 2005, 21:46 (Сообщение отредактировал *Pirat* - 18 Jun 2005, 21:48)
Сообщение #30

Power Member
Сообщений: 179
Спасибо сказали: 9 раз




Цитата(Efrit @ 15 Jun 2005, 09:48)
Баги AI? Ein Moment!

***********

"Ну, вот. Я грамотно описал ситуацию smile.gif


Да таких тормозов у компа сотни, не стану их даже перечислять.
Он даже не использует всех заклов, например - Берсерк.

И интересный факт, когда AI бежит с поля боя, куда деваются деньги, за счёт которых он здаётся, или может он удерает всегда за бесплатно, спасая только героя. Если так, надо было бы сдельть, чтобы он спасал и войсько.
А может я не знаю, он платит за здачу, а деньги, сделано специально, чтобы не доставались мне. Как оно есть?


--------------------
- Денег...-простонал умирающий. - Денег...
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 21 Jun 2005, 17:49
Сообщение #31

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




Между прочим AI умеет использовать атакующую магию (и при осаде замка тоже)!
Go to the top of the pageAdd Nick
 
+Quote Post
*Pirat*
сообщение 22 Jun 2005, 14:43
Сообщение #32

Power Member
Сообщений: 179
Спасибо сказали: 9 раз




Цитата(gamecreator @ 21 Jun 2005, 18:49)
Между прочим AI умеет использовать атакующую магию (и при осаде замка тоже)!


Плохо использует - под конец хода почти всегда.

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

Вот какие я заметил ошибки в ИИ:

1. Не обращает внимания на систему опита стрелковых башень. Тоесть, ИИ нападает на мой замок первый раз, проигрывает, а потом нападает второй раз неучитывая того, что опит стр. башень вырос. Таким образом ещё пару таких оборон и мой замок превращается в чёрную дыру, которая притягивает, и из которой никто не возвращается (разве что герой, со стрелой в жопе своего коня biggrin.gif).

2. Чего-то ИИ почти всегда применяет боевые заклы под конец хода, хотя эфект из них всегда больший, если их применить в начале.

3. Сильные герои ИИ, так, как и слабые, собирают ресурсы, посещают ненужные объекты на карте, теряя при этом много драгоценного времья.
Я считаю, что такую, можно так сказать - проблему, надо устранить в первую очередь. Это уже был бы большой плюс в сторону ИИ.

4. Я ещё такое заметил
Когда в ИИ армия посильнее за мою, в бою он действует на 4+. Но когда армия у него слабее за мою, он в бою начинает глупить.


--------------------
- Денег...-простонал умирающий. - Денег...
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 22 Jun 2005, 16:58
Сообщение #33

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




Цитата(*Pirat* @ 22 Jun 2005, 15:43)
4. Я ещё такое заметил
Когда в ИИ армия посильнее за мою, в бою он действует на 4+. Но когда армия у него слабее за мою, он в бою начинает глупить.

Также AI не нападает на замок, если у него армия не намного сильнее той, что в замке, хотя наличие сильных юнитов дает ему большие шансы на выигрыш!
Go to the top of the pageAdd Nick
 
+Quote Post
marius24
сообщение 22 Jun 2005, 18:45
Сообщение #34

Newbie
Сообщений: 19
Спасибо сказали: 0 раз




Цитата(*Pirat* @ 22 Jun 2005, 14:43)
3. Сильные герои ИИ, так, как и слабые, собирают ресурсы, посещают ненужные объекты на карте, теряя при этом много драгоценного времья.
Я считаю, что такую, можно так сказать -  проблему, надо устранить в первую очередь. Это уже был бы большой плюс в сторону ИИ.


Поддерживаю! Я как то уже предлагал такую идею. Человек не стал бы терять времья на такое.
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 22 Jun 2005, 19:54 (Сообщение отредактировал gamecreator - 22 Jun 2005, 20:03)
Сообщение #35

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




Часто можно увидеть, как AI тратит время на бесполезные переходы с одного места на другое. Это может длится несколько секунд, минут, часов или, может быть, до конца игры!

Еще когда игрок нападает на AI, у которого нормальная армия, когда очередь доходит до компа, то он запускает в противника волшебную стрелу или молнию и убегает, хотя мог бы нанести потери игроку. Убежавшего героя AI нанимает не всегда.
Go to the top of the pageAdd Nick
 
+Quote Post
noble paladin
сообщение 24 Jun 2005, 06:46
Сообщение #36

Московский КОТ
Сообщений: 176
Спасибо сказали: 5 раз




самый болной поступок ИИ, который иногда может выйти боком уже человеку - то что он часто хайендами долбит...боевые машины. Не глупо ли? если ты спец-артиллерист уровня эдак 18, то купив пару стрелок в битве будешь иметь минимум 20 баллист, которые порешат много мелочи. Ну сломает он баллисты, палатки...а толку? ИИ потратил ход, за что ходивший юнит тут же огребся по полной. следующий ход - тоже самое. к концу боя у человека нет боевых машин, а у уомпа нет армии. зато я добежав до ближайшей кузни ситуацию исправлю, а вот комп вряд ли.
С другой стороны, иногда он сначала решает войско ,а потом не обращая внимания ни на что начинает кромсать деревяшки. это уже лучше, тем более если он победит то должен по идее получить опыт и за разбитыке машины. хотя что он там имеет...
еще ляп: комп в бою - либо ВСЕХ на передовицу (исключение стрелки) либо всех на вейт. с другой стороны некоторые юниты (теже пегасы) на ассе могут дамажить и сваливать обратно. поччему он етим не пользуется, если не может достать? кастанул хаст, массхаст, молитва или контрудар (особ на эксперте) и плохо кому-то будет...
Иногда как фанатик бегает по ресам, хотя с такой армией можно склады циклопьи вскрывать без потерь. но сдругой стороны, если он нашел городской драг ресурс, которого ему счас позарез не хватает, то пусть берет - на ето можно потратить ход. (тут можно сделать так что после 15 уровня напрмер он перестает бегать по рудникам либо пусть таскает с собой напарника, который под прикрытием сильного коняшки ворует все что плохо лежит - так было бы лучше, и врага можно измотать особенно в начале и слабачок не получит по шее безнаказанно)
зы. пока все. судя по тому что каждый приводит свой опыт, то стоит реализовать базу знаний. добавить в 3.59 сборщик инфы о том что творит человек в игре (как строится, каким приоритетом ставит рудники если ресов хватает, как ведет себя в битве... может не лишне былобы после етого подкорректить fight-values кричей)


--------------------
Оглянуться назад стоит лишь для того, чтобы увидеть как далеко вы ушли. © Noble Palladin [КВК]
Go to the top of the pageAdd Nick
 
+Quote Post
NordStar
сообщение 27 Jun 2005, 08:06
Сообщение #37

Immortal
Сообщений: 1 995
Спасибо сказали: 6 раз




То что описал Нобль - это свежезапеченные баги WOG. История их появления совершенно очевидна и риторические вопрсы на самом деле давно имеют ответы.
Когда придавали новые способности старым юнитам, то добавляли именно СПОСОБНОСТИ, но никто специально комп пользоваться ими не учил, очевидно не так это просто - обучить компа новым возможностям и юнитов и игры. Так что на вопрос "почему криво использует крутых пегасов?" - ответ как раз совершенно ясен.
Вот на вопрос "что делать?" ответа нет. Чую, что скриптами это не поправить.


--------------------
Усячески Ваш :)
Go to the top of the pageAdd Nick
 
+Quote Post
deagle
сообщение 29 Jun 2005, 11:24 (Сообщение отредактировал deagle - 29 Jun 2005, 11:24)
Сообщение #38

Member
Сообщений: 66
Спасибо сказали: 0 раз




Идея насчет безтолковой беготни по шахтам и объектам посещения героев ИИ:

Есть скрипт передачи объектов карты игрокам... А что если, начиная с некоторого дня (когда эта беготня уже не так нужна в принципе), в начале каждого хода текущего компа:
1. Сохранять состояние всех объектов на карте (чей или нейтрален и посещен или нет)
2. Делать все нейтральные объекты принадлежащими данному ИИ smile.gif
3. Устанавливать флаг посещения всех объектов в "посещен" - это можно сделать, так как есть скрипт ежемесячного обновления посещаемости одноразовых объектов, както ж он обновляет флаги?
4. Отдавать ход искусственному идиоту

а в конце хода возвращать все на свои места.
Да, есть недостатки... Но зато какие преимущества! Может быть комп начнет играть на порядок лучше! подумайте... ведь что главное в героях? ИМХО, передвижение по карте мира. Если ИИ будет считать, что "все его", может он решит наконец занятся войной а не беготней туда-сюда?? spiteful.gif
Go to the top of the pageAdd Nick
 
+Quote Post
*Pirat*
сообщение 29 Jun 2005, 12:32
Сообщение #39

Power Member
Сообщений: 179
Спасибо сказали: 9 раз




Цитата(deagle @ 29 Jun 2005, 12:24)
Идея насчет безтолковой беготни по шахтам и объектам посещения героев ИИ:

Есть скрипт передачи объектов карты игрокам... А что если, начиная с некоторого дня (когда эта беготня уже не так нужна в принципе), в начале каждого хода текущего компа: 
1. Сохранять состояние всех объектов на карте (чей или нейтрален и посещен или нет)
2. Делать все нейтральные объекты принадлежащими данному ИИ smile.gif
3. Устанавливать флаг посещения всех объектов в "посещен" - это можно сделать, так как есть скрипт ежемесячного обновления посещаемости одноразовых объектов, както ж он обновляет флаги?
4. Отдавать ход искусственному идиоту

а в конце хода возвращать все на свои места.
Да, есть недостатки... Но зато какие преимущества! Может быть комп начнет играть на порядок лучше! подумайте... ведь что главное в героях? ИМХО, передвижение по карте мира. Если ИИ будет считать, что "все его", может он решит наконец занятся войной а не беготней туда-сюда??  spiteful.gif


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


--------------------
- Денег...-простонал умирающий. - Денег...
Go to the top of the pageAdd Nick
 
+Quote Post
deagle
сообщение 29 Jun 2005, 12:38
Сообщение #40

Member
Сообщений: 66
Спасибо сказали: 0 раз




Цитата(*Pirat* @ 29 Jun 2005, 12:32)
Цитата(deagle @ 29 Jun 2005, 12:24)
Идея насчет безтолковой беготни по шахтам и объектам посещения героев ИИ:

Есть скрипт передачи объектов карты игрокам... А что если, начиная с некоторого дня (когда эта беготня уже не так нужна в принципе), в начале каждого хода текущего компа: 
1. Сохранять состояние всех объектов на карте (чей или нейтрален и посещен или нет)
2. Делать все нейтральные объекты принадлежащими данному ИИ smile.gif
3. Устанавливать флаг посещения всех объектов в "посещен" - это можно сделать, так как есть скрипт ежемесячного обновления посещаемости одноразовых объектов, както ж он обновляет флаги?
4. Отдавать ход искусственному идиоту

а в конце хода возвращать все на свои места.
Да, есть недостатки... Но зато какие преимущества! Может быть комп начнет играть на порядок лучше! подумайте... ведь что главное в героях? ИМХО, передвижение по карте мира. Если ИИ будет считать, что "все его", может он решит наконец занятся войной а не беготней туда-сюда??  spiteful.gif


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

Этот минус легко превратить в плюс, если "направить" затуманенный интелектом взор ИИ на "нужные объекты", оставив их нейтральными! biggrin.gif . Степень их нужности можно определить хотя бы примерно на 3 шаге алгоритма. Ну а время хода... Чем-то ж надо компенсировать преимущества?.. диалектика как-никак. Я б подождал лишних xx секунд ради более умного ИИ.
Go to the top of the pageAdd Nick
 
+Quote Post

3 страниц V  < 1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 26 April 2026 - 22:26
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика