LINUX.ORG.RU

Все игру готовишься написать? Напиши для начала сетевой мультиплеер, ботов потом добавишь.

morse ★★★★★ ()
Ответ на: комментарий от morse

Не хочу сеть делать. Игру пишу от скуки. Ну или большой практичности. Ну кому нужно мое умение пользоваться графами. И я пишу не сам.) Помогаю своим друзьям.

Так все таки, что там? Как реализовать интеллект?

knotri ()
Ответ на: комментарий от morse

Напиши для начала сетевой мультиплеер

Вот так и полнятся репы тоннами никому ненужных стратежек.

baverman ★★★ ()

А по теме, ты же должен был слышать что для ИИ сделали специальный язык — LISP. Вот его и учи.

baverman ★★★ ()
Ответ на: комментарий от knotri

Как реализовать интеллект?

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

В стратегии сразу можно выявить 2 типа интеллекта:
1)интеллект юнита(самооборона, преследование цели, обход препятствий, атака);
2)интеллект 'стратега' какие войска куда двинуть, что построить.
Ну либо ещё больше, тогда, например: 2)будет интеллект 'генерала' (управление группировками войск и в каком месте атаковать(где меньше укреплений и сосредоточения войск противника)) 3)интеллект 'глобального стратега' чего сколько строить, сколько должно быть денег, где и когда развернуть вторую базу, когда следует атаковать.

Bad_ptr ★★★★ ()
Ответ на: комментарий от Bad_ptr

Ну вот интеллект юнита (самый простой) я уже писал. Если есть рядом цель - атакуй.

А вот с интеллектом стратега нет вообще никаких идей. Собственно а что он вообще такое? Нейросети и графы отпадает, а больше способов интеллекта и я не знаю у компа.

Книжки какие читать?

knotri ()
Ответ на: комментарий от knotri

Нейросети и графы отпадает, а больше способов интеллекта и я не знаю у компа.

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

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

Книжки какие читать?

по разработке игр и ИИ )

Bad_ptr ★★★★ ()
Последнее исправление: Bad_ptr (всего исправлений: 1)
Ответ на: комментарий от knotri

http://plakhov.livejournal.com/49077.html


Я не буду рассказывать о нейронных сетях, генетических алгоритмах, цепях Маркова и прочих принятых парадигмах самообучения. Это связано с тем, что, по нашим данным, в компьютерных играх данные техники не оправдывают себя - результаты, полученные с помощью них, малопредсказуемы, и не обладают какими-либо важными преимуществами. Примерно по тем же причинам речь не пойдет ни о языках Lisp, ПРОЛОГ (в 2007 году я совсем не так уверен насчет Lisp'а), ни о нечеткой логике.


))

Bad_ptr ★★★★ ()
Ответ на: комментарий от morse

Напиши для начала сетевой мультиплеер, ботов потом добавишь

дык боты сами добавятся

anonymous ()
Ответ на: комментарий от knotri

А вот с интеллектом стратега нет вообще никаких идей. Собственно а что он вообще такое? Нейросети и графы отпадает, а больше способов интеллекта и я не знаю у компа.

man Теория игр

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

Harald ★★★★★ ()
Ответ на: комментарий от knotri

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

quiet_readonly ★★★★ ()
Последнее исправление: quiet_readonly (всего исправлений: 1)

Напиши нечто, умеющее торговаться в твоей игре с игроком. Т.е. выясняющее best cases по заданным параметрам. Это и будет что-то вроде ИИ.

blexey ★★★★★ ()

Про «рассуждамсы» -
есть куча обвинительных заключений по поводу Пролога,
и несколько способов улучшить его.

man Пятое поколение ЭВМ

livi ()
Ответ на: комментарий от tailgunner

Хуже Пролог-клауз - только Пролог-машина.
Но лучшего способа моделировать логичное мышление,
нежели Пролог-программы, в массовых учебниках пока не прописано.

livi ()
Ответ на: комментарий от insfel

Собственно в RA2 юниты так себя и ведут - видишь врага - стреляй.

А вообще в старой злобной Earth 2150 можно было задавать разные модели поведения, в частности - атаковать первым, атаковать в ответ и вообще игнорировать врага, плюс к ним в дополнение - преследовать противника и удерживать позицию.

Это, конечно, не для хомячка-геймера, но ИМХО наиболее правильный набор.

RiseOfDeath ★★★★ ()
Последнее исправление: RiseOfDeath (всего исправлений: 1)
Ответ на: комментарий от knotri

Вы не правильно гуглите, для этого используется термин ИИИ (Игровой Искусственный Интеллект), как раз что бы не путать с «нормальным» ИИ.

RiseOfDeath ★★★★ ()
Ответ на: комментарий от Harald

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

RiseOfDeath ★★★★ ()

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

Потому тоже читери.

invy ★★★★★ ()
Последнее исправление: invy (всего исправлений: 1)

Писал немного. Нифига математики не знаю. Просто ставлю себя на место бота, и описываю

 _________
/ условия \ <--|
-----------    |
     |         |
     |         |
|---------|    |
|действия |    |
-----------    |
     |         |
     |         |
/----------\   |
|результаты|---|
------------

anonymous ()
Ответ на: комментарий от knotri

ИИ кода что-то «планирует» исходит из колличества ресурсов и того, что он знает.

Разница «честного» и «не честного» в том, что последний имеет очень много ресурсов и знает всю текущую ситуацию.

RiseOfDeath ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.