Seaward.ru

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

> ИИ для морского боя, нужно собрать статистику живых игроков
ALexusB
сообщение May 20 2009, 21:31
Сообщение #1


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



Нужна ваша помошь!

Некоторые знают, а кто-то догадывается, но я не забросил поприще пиратски игр с концами smile.gif
Дело движется, медлено и как обычно ночами, но идет - кубики уже играбельны.

Начитался статей, много думал - понял, что к моменту начала кодинга ИИ кораблей нужно иметь базу знаний.
Помогите ее сделать!

Знания - это калька поведения нас - игроков в бою. Берем за основу бой в КВЛ-ГПК и текстом записываем свои действия.

Начну с себя, как пример, без деталей.

В бою у меня сразу идет
1. анализ состояния:
* сил противника (примерно равны, больше, меньше, сильно больше, сильно меньше).
* направления ветра

2. мои цели
* слинять из боя
* всех потопить
* всех абордировать
* часть абордировать и часть потопить
* часть абордировать и слинять из боя
Подзадачи:
* продержаться какое-то время (если это задача такая по квесту)
* защитить купца
- все это сводится в списку выше

3. Корректировка стратегии со временем, то есть повтор 1. и смена на 2.

4. Шаги для достижения цели 2.
* перезарядка
* выстрел
* маневрирование
* поднять-опустить паруса
* абордаж
* выкинуть товар

что еще обычно бывает?

И давайте лезть в детали - на что смотрим, когда оцениваем больше-меньше?

Паруса, корпус, команда, типы кораблей?

Попробуйте на примере конкретного боя описать свои действия - мне нужна статистика, я сам сведу по полочкам.
Пойдет рассказ "как я брал золотой флот" и типа того. Но в описании решений и критериев их оценки, а не литературных изысков про "отлетающие доски после бортового залпа".
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
6 страниц V « < 3 4 5 6 >  
Reply to this topicStart new topic
Ответов(80 - 99)
Shadow
сообщение Nov 25 2010, 14:07
Сообщение #81


капитан
*****


Группа: форумчанин
Сообщений: 389
Регистрация: 8-September 09
Пользователь №: 21,206



Цитата
Но общий принцип реализации по задачам ИИ верный - сам так думаю.

Э-э-э, разве это не описание реализации ИИ на основе стэйт машины? И при том весьма дубово, правда, может флэш и не вытянет тяжелых алгоритмов.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Nov 25 2010, 15:31
Сообщение #82


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



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

Тут влияет цель - игра (визуальное состояние и восприятие), а не супер цель прикрутить к игре нейронную или другую сесть и тп
Опять же ОЗУ и вычислитель лимитирован.
Иногда достаточно расставить врагов в редакторе и задать скрипт их выпрыгивания по тригерам, либо сделать "мега ИИ" из ранд() функций выбора направления движения с парой ифоф проверок статов ГГ.

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

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

Рефреш нужен, да, но по таймеру раз в 1-2 сек, а не 20-30 раз в сек. Что изменится за 1/20 секунды? Пользователь ничего не успеет нажать.
А если изменится, то есть прерывание - вот его и нужно обработать.
Иначе при >100 объектах будут жуткие тормоза, если каждый начнет на каждый кадр обрабатывать сложную логику.
Что оч просто видно, если в презентации из статьи прокликать добавку зомби, глядя на загруз проца.

Именно так и устроена боевка в Сторм-2.х
Тоже есть шаблоны и обработчики прерываний.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Shadow
сообщение Nov 25 2010, 15:34
Сообщение #83


капитан
*****


Группа: форумчанин
Сообщений: 389
Регистрация: 8-September 09
Пользователь №: 21,206



Цитата
Не знаю, открою ли я тайну, но во многих играх, даже когда в описании пишут "используется улучшенный, продвинутый ИИ", никакие научные изыскания из теории ИИ и ЭС не используются вообще smile.gif

Не откроете.

Цитата
Это в шутера.

Иногда, но не всегда. Вот, почитайте про ИИ в F.E.A.R, если интересуетесь темой: http://www.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.pdf Они юзают FSM вообще только с 3 стэйтами на чара и им хватает smile.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Dec 28 2010, 00:21
Сообщение #84


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



В тему ИИ
книжка аж 1975года, но от того даже интереснее smile.gif
М.М.Ботвинник. О кибернетической цели игры
тык

Книга экс-чемпиона мира по шахматам Ботвинника, в которой он рассказывает про свой опыт создания алгоритма игры в шахматы. Она дополняет его же книгу <алгоритм игры в шахматы>.
Книга будет очень интересна тем, кто умеет играть в шахматы и задумывался о том, как этому можно научить компьютер.
Книга научно-популярная и может читаться человеком с любой подготовкой.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Commandor_S
сообщение Dec 28 2010, 08:46
Сообщение #85


Commandor всея Руси & the Caribbean ;)
*******

Ветеран ТРЁПаВетеран Форума
Группа: форумчанин
Сообщений: 2,025
Регистрация: 18-November 04
Из: г. Донецк. Украина. Европа. Земля
Пользователь №: 96



Цитата(ALexusB @ Dec 27 2010, 23:21) *

В тему ИИ
книжка аж 1975года, но от того даже интереснее smile.gif
М.М.Ботвинник. О кибернетической цели игры
тык

Книга экс-чемпиона мира по шахматам Ботвинника, в которой он рассказывает про свой опыт создания алгоритма игры в шахматы. Она дополняет его же книгу <алгоритм игры в шахматы>.
Книга будет очень интересна тем, кто умеет играть в шахматы и задумывался о том, как этому можно научить компьютер.
Книга научно-популярная и может читаться человеком с любой подготовкой.

А я то думаю, почему так а не этак. lol.gif
Цитата
Остановимся, прежде всего на том, о каких машинах идет речь и каким образом они могут играть в шахматы. Имеются в виду современные вычислительные машины дискретного действия, так называемые ЭВМ, которые относятся к числу программно управляемых. Применение электронной техники делает их очень быстродействующими, однако основная их черта - автоматическое управление процессами переработки информации - вовсе не связана с этой техникой. Такие машины представляют собой сложные автоматы, состоящие из ряда связанных между собой устройств: устройства управления, запоминающего устройства (называемого также памятью), операционного устройства, устройства ввода информации и устройства выдачи результатов. Информация может быть введена в программно управляемую машину и фиксирована в ее памяти в алфавитно-цифровом виде (в виде слов и чисел, которые представлены, понятно, в машинном коде).
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Hovgaard
сообщение Feb 8 2011, 16:43
Сообщение #86


матрос
***


Группа: форумчанин
Сообщений: 73
Регистрация: 25-January 11
Пользователь №: 24,087



По теме:

1. Оценка погодных условий;
2. Проверка месторасположения вражеских кораблей(я) относительно
собственного корабля(ей) и (если есть) берегового ландшафта, рифов;
3. Анализ предположительных ходовых характеристик кораблей(я)
противника по предположительной загруженности его трюма, класса
корабля (парусного вооружения) и текущей скорости относительно вектора ветра.
4. Анализ условной опасности противника (каждого корабля отдельно,
и всех вместе).
5. Подсчет возможных затрат и потерь (в т.ч., временных) на уничтожение
противника.
6. Определение боевой задачи - бегство, расстрел, абордаж (кого именно,
судьба неабордированных кораблей) прикрытие за союзными силами или
рельефом берега/рифов (если есть).
7. Определение боевой тактики - алгоритм сближения/ухода/укрытия/расстрела.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Golden Hind
сообщение Feb 16 2011, 06:03
Сообщение #87


пират
*******

Ветеран ФорумаЗаслуженный Корсар
Группа: Validating
Сообщений: 1,328
Регистрация: 10-November 04
Из: Austria
Пользователь №: 38



Слабость ИИ в практически любых компьютерных играх состоит в том, что он не умеет мыслить абстрактно и тем самым он не может мыслить комбинационно. Другими словами ИИ действует только по обстановке, но он не может создать логически направленную цепь определённых действий, имеющую общую конечную цель. Потому все действия ИИ просчитываются игроком без каких-либо проблем. Могу привести пару примеров как действительно должен действовать ИИ на примере корсарской тематики, чтобы максимально очеловечить его действия.

1. Оценка ситуации перед боем. Здесь учитывается соотношение сил. Скорость и направление ветра. Для этого необходимо заложить в действия ИИ несколько вариантов поведения в той или иной ситуации.

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

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

Таким образом ИИ имея конечную цель абордаж уже заранее определяет вид боеприпасов, которые он и должен будет применять во время боя - книпеля, а позже картечь. Причём если ИИ удаётся сблизиться с противником на расстояние картечного выстрела, то он сразу же обязан переключиться на картечь, так как выбивая команду противника, он тем самым не только снижает скорость вражеского корабля, но и интенсивность ответной стрельбы противника.

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

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

Примерно такой же план боя с определённой конечной целью можно составить также и для других возможных вариантов действий ИИ, исходя из определённых параметров, которые ИИ имеет перед боем. Допустим, что ИИ проигрывает по каким-то параметрам противнику или если перед ним военный корабль, который лучше утопить, чем рисковать брать на абордаж. Ну и кроме всего прочего ИИ обязательно должен расчитывать план боя из тех характеристик своего корабля, которые у него более предпочтительные. Так к примеру с более манёвренным кораблём ИИ лучше не идти на сближение с противником, а вести бой со значительного расстояния. Если же у корабля ИИ главное преимущество в скорости, то желательно при всех других преимуществах идти на быстрый абордаж. Другими словами при выборе плана боя ИИ просто обязан исходить из той характеристики своего корабля, которая у него наиболее выгодная по сравнению с кораблём противника.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Serginio
сообщение Feb 16 2011, 13:08
Сообщение #88


инопланетянец
*******

Заслуженный КорсарСоздатель Модов к ГПК
Группа: форумчанин
Сообщений: 2,018
Регистрация: 7-August 07
Из: Днепропетровск
Пользователь №: 11,632



Цитата(Golden Hind @ Feb 16 2011, 07:03) *
Слабость ИИ в практически любых компьютерных играх состоит в том, что он не умеет мыслить абстрактно...
Мне кажется, что не меньшей слабостью ИИ является неумение оперативно менять стратегические задачи.

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

Но, если ИИ научить быть хитрым, то играть с ним станет невозможно, т.к. обсчёты возможностей противника он делает мгновенно (в отличие от геймера)...
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Feb 17 2011, 16:01
Сообщение #89


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



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

Но пока все понятные логики использования стратегий на несколько ходов (что выше описаны по делу) разбиваются о реальность - зрею, с какой стороны это все начать грызть. Кругами хожу и пока не нашел.
Начал с метрик описания всего, что есть в бою (дальности, попадание в сектор и тп). Потом это все нужно как-то анализить, чтоб принимать решения по маневру и уже от них сами команды (лево-право).
То есть, еще и траектории некие или последовательности движения нужно задавать. Чтоб не забыл ИИ в середине оверштага, зачем он его делал и что он вообще его делает smile.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Hovgaard
сообщение Feb 21 2011, 11:10
Сообщение #90


матрос
***


Группа: форумчанин
Сообщений: 73
Регистрация: 25-January 11
Пользователь №: 24,087



Цитата(ALexusB @ Feb 17 2011, 17:01) *

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

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


Я не программист и не математик (базовые/средние познания), но немного читал о применении эвристического подхода в кибернетике, заинтересовало. Популярно и красиво изложен в книге Стаффорда Бира "Мозг фирмы" (рус. пер.), очень рекомендую всем, кому интересна теория управления. Исходя из почерпнутых сведений, осмелюсь предложить где-то такую структуру расчетов ИИ:
Глобальная задача , определяется со старта, по входным параметрам. Инициализирует дробный (например, [0 - 1]) управляющий параметр, или "параметр успеха" (ПУ) на пути достижения глобальной задачи. Дальнейшие действия ИИ будут его повышать (в случае успешных тактик) либо понижать (противник успешно огрызается). При выборе одной из возможных тактик (оформленных в в виде дочерних к глобальной задаче процедур) достижения задачи ИИ пытается грубо просчитать, каким будет ПУ через (например) минутные интервалы в результате применения каждой из шаблонных тактик (процедур).
Среднесрочная стратегия боя будет избрана та, которая в прогнозе дала наибольший ПУ (или сумму ПУ дискретных чекпоинтов прогноза) в виде запуска действия по программе одной из алгоритмических тактик или их комбинации (ход в лоб 40с, залп ядрами, сближение, на книппеля и т.п.). При этом, сама стратегия НЕ является алгоритмом - через определенный промежуток времени, либо при драматическом изменении ключевых параметров (успешный залп бомбами с тремя критикалами) проводится извлечение текущего значения ПУ и проводится новый среднесрочный расчет (прогноз) его значения как результата применения различных стандартных тактик или их комбинаций. В итоге, предположительно наиболее успешная (с наибольшим ПУ) среднесрочная стратегия заменяет собой текущую.

Такой подход устраняет сразу несколько классических недостатков ИИ:
1. Узколобость, ограниченность в инструментарии тактик и стратегии в целом.
2. Стоический консерватизм - удержание давно неактуальной стратегии боя, определенной в начале боя или просто по слишком устаревшим параметрам.
3. Предсказуемость - даже если оставить в стороне постоянное жонглирование алгоритмическими тактиками (хотя бы, "в уме" компа, при прогнозировании на чекпоинтах, пускай он и будет выбирать одну пол-боя), эвристический подход будет иногда вносить "непредсказуемый тупизм" наряду с оригинальными, свежими боевыми комбинациями (вторых будет меньше), неизбежных вследствие проявления главного недостатка эвристического подхода - принципиальной сложности оценки и прогнозирования ПУ в процессе выполнения задачи. Собственно, оценка ПУ и есть самым сложным во всем этом.
4. Ну и резюмируя, он не страдает этим
Цитата
Слабость ИИ в практически любых компьютерных играх состоит в том, что он не умеет мыслить абстрактно и тем самым он не может мыслить комбинационно. Другими словами ИИ действует только по обстановке, но он не может создать логически направленную цепь определённых действий, имеющую общую конечную цель.
, так как именно увеличение ПУ и есть той нитью Ариадны, ведущей ИИ к успеху (выполнению глобальной задачи.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Serginio
сообщение Feb 21 2011, 11:53
Сообщение #91


инопланетянец
*******

Заслуженный КорсарСоздатель Модов к ГПК
Группа: форумчанин
Сообщений: 2,018
Регистрация: 7-August 07
Из: Днепропетровск
Пользователь №: 11,632



Цитата(Hovgaard @ Feb 21 2011, 12:10) *
Глобальная задача , определяется со старта, по входным параметрам...
Интересный метод, но его применение чревато ситуацией, которую мы можем наблюдать и сейчас - реагируя на тактическое изменение ситуации, ИИ постоянно перезаряжает орудия на различные боеприпасы (по мере приближения к нему противника), в конечном итоге гибнет, так и не сделав ни единого выстрела.
Причина в том, что не идёт просчёт "предполагаемых действий противника" - игрока.
Поэтому игроку не составляет труда растянуть караван ИИ так, как ему (игроку) будет удобнее его щипать.

ИМХО - обучать ИИ нужно с того, что определить ему чёткие "варианты боевого построения" в зависимости от выбранной тактики. А тактику выбирать исходя из единой стратегической задачи, как то - утопить ГГ; абордировать ГГ; сохранить все свои корабли; сохранить грузовые корабли каравана (один спецкорабль); увести грузовой транспорт в порт; и т.д....

В этом случае действия ИИ будут более адекватны и похожи на морской бой, а не настойчивые попытки суицида.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Hovgaard
сообщение Feb 21 2011, 18:50
Сообщение #92


матрос
***


Группа: форумчанин
Сообщений: 73
Регистрация: 25-January 11
Пользователь №: 24,087



Цитата(Serginio @ Feb 21 2011, 12:53) *

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

ИМХО - обучать ИИ нужно с того, что определить ему чёткие "варианты боевого построения" в зависимости от выбранной тактики. А тактику выбирать исходя из единой стратегической задачи, как то - утопить ГГ; абордировать ГГ; сохранить все свои корабли; сохранить грузовые корабли каравана (один спецкорабль); увести грузовой транспорт в порт; и т.д....

В этом случае действия ИИ будут более адекватны и похожи на морской бой, а не настойчивые попытки суицида.


Не спорю, контроль за приемлемостью "отрыва от своих" у кораблей быть должен.
Но его вполне можно запрограммировать в простенький алгоритм.
А вот ввести истинную непредсказуемость действий алгоритмически невозможно.
Думаю, просчет предполагаемых действий игрока - вещь весьма простая в краткосрочном
прогнозировании (линейная экстраполяция параметровЮ описывающих статус игрока)
и очень сложная - в длительных прогнозах. Кто его знает, что этому человеку в голову взбредет?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Serginio
сообщение Feb 22 2011, 11:54
Сообщение #93


инопланетянец
*******

Заслуженный КорсарСоздатель Модов к ГПК
Группа: форумчанин
Сообщений: 2,018
Регистрация: 7-August 07
Из: Днепропетровск
Пользователь №: 11,632



Цитата(Hovgaard @ Feb 21 2011, 19:50) *
Думаю, просчет предполагаемых действий игрока - вещь весьма простая в краткосрочном
прогнозировании (линейная экстраполяция параметровЮ описывающих статус игрока)
и очень сложная - в длительных прогнозах. Кто его знает, что этому человеку в голову взбредет?
Совершенно верно.
Но из всего возможного многообразия действий игрока, для ИИ важны только те, которые могут помешать ему выполнить генеральную стратегическую задачу. И не только действия предпринятые противником, но и возможные его действия.
Другими словами - идёт караван ИИ в порт (по ветру). Корабли находятся в предустановленном для случая конвоирования боевом порядке. А тут генерится геймер со своим люггером и пытается против ветра атаковать караван. ИИ просчитывает, что к моменту, когда этот камикадзе подойдёт на расстояние выстрела, последнее судно из каравана уже войдёт под прикрытие порта. Какие действия должен выполнить хитрый ИИ?
Варианта 2:
1. Никаких.
2. Изменить боевой порядок так, чтобы корабли охранения находились между вражеским люггером и охраняемым караваном. Сбалансировать скорости всех судов в эскадре, чтобы этот строй сохранялся, зарядить борта боевых кораблей книппелями, а конвоируемых - бомбами. Эти действия будут очень полезны на случай, если значительно поменяется ветер.

Согласитесь, что прописать указанные действия для ИИ не так уж сложно. Алгоритм будет универсальный для многих случаев. Просто в данной иллюстрации не затрагивается такой важный аспект, как изменение направления движения каравана (его цель находится по ветру).
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Feb 23 2011, 01:24
Сообщение #94


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



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

А так все по делу, закопипастил себе в Ворд стратегии по этой теме по оглавлению, от кого инфа. Для перечитываний и вывода модели. Спасибо - помогает.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kunla
сообщение Mar 17 2011, 22:26
Сообщение #95


путешественник
******

Ветеран Форума
Группа: форумчанин
Сообщений: 756
Регистрация: 14-January 06
Из: Балтика
Пользователь №: 2,288



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

Для примера если кому интересно существуют в ней люди оснащающие специальные корабли именно под абордаж и более ни для чего, задача получить скоростное и маневренное судно с длинным корпусом и лёгкими быстро зарядными орудиями и значительной по численности командой, в 99% случаев это Шебека, затачивают её на скорость и зацеп, задача в бою быстро сблизиться пересекающимся встречным курсом, пользуясь косым парусным вооружением и возможностью идти круто бейдевинд, дать залп картечью и остановить более тяжелый и неповоротливый корабль собственным длинным корпусом и воспользовавшись снижением скорости и отсутствием команды взять на абордаж, в случае же, если бой затянулся Фрегат увернулся и не дал снизить себе скорость, и Шебека будучи обстреленной получила значительные повреждения, она уходит крутым галсом от преследования и судно с прямым парусным вооружением отстает. Таким вот видом пиратства промышляют многие на серверах PotBS. Открытую перестрелку с Фрегатами Шебека вести не может, так как она более картонная с более легким вооружением, но может какое то время держать удар сбивая паруса противнику но не более. Однако она легко уходит практически от любого преследования (за редкими исключениями), и может атаковать практически любой по тяжести одиночный корабль, хоть 1вый рейт, риск конечно в этом случае огромен, т.к очень тяжелый корабль пустит картонную Шебеку на дно с одного двух залпов, но тут всё зависит от рукастости пилота cool.gif быстро войти в мертвую зону и очень быстро взять на обордаж иначе труп, более легкие фрегаты не способные утопить Шебеку в залп зачатую оставшись с ней 1на1 очень сильно рискуют.

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

Алекс если интересны подробности могу расписать более подробно, не знаю как это соотносится с реальными боевыми тактиками но в Корсарах Онлайн это всё довольно занимательно и сложно, сам играю в эту игру более 2ух лет.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Mar 17 2011, 23:57
Сообщение #96


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



пока это все мне рано, базовых вещей нет. Такие тонкости скорее всего будут на уже открытой бете балансироваться.
Но пока с начала марта времени нет у меня на разработку ИИ, так что опять придется заново все восстанавливать в памяти, тк ОЗУ головы было обнулено и перегружено оперативной работой не по играм.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Nov 28 2022, 13:30
Сообщение #97


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



Однако, какая хорошая тема и она снова актуальна для нового проекта по корабликам по настолке.
http://www.seaward.ru/forum/index.php?showtopic=14552

Всем большое спасибо за ответы, прям восстановление знаний из бакапа в мозг произошло!
Книги, что упоминались, тоже нашел.

Флаш заглох как раз в 2012 и теперь на Юнити порт делаю всего арта и идей. Пока по простой схеме. пошаговых правил

10 лет, я как-то был на паузе в части геймдева, т.к. тогда не получилось быстро войти в новую платформу.
Перегрузы на работе, фриланс заказы, если было время. Это не оставляло место творчеству без монетизации и НИОКР.

Перечитал тему с интересом, что-то опять перенес в ДизДок, т.к теперь акцент уже не на реалтайм игру и чем заряжено орудие, там проще, но тоже сложно делать.

И забавно, я 10-12 лет назад был более оптимистичен в "сча тут все быстро сваяем" smile.gif
Теперь уже нет, задача ИИ оч сложная и еще вчера я даже не знал, как начать думать ее делать. А 10 лет назад знал выходит, но забыл... ага.
Но.... обчитался инфой и теорией вчера и.. мысли есть.

За прошедшее время я сталкивался с нейронной сетью на работе, с год ее учили помогать на вопросы отвечать, но.... вырубли в итоге.
Хотя мы видим, как это все реально работает - дип-фейки, восстановление фото по куску и прочие автопилоты.

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

До самого ИИ я дойду сильно позже, когда будет кликабельная игра с PvP на одном экране.
Пока просто отмечу, что тема будет обсуждаться и прошу, кто мимо проходил и заглянул - заглядывать чаще, тут была тишина, да
Но теперь есть движуха в моем лице - так что "велкам бэк на борт"!
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Dec 10 2022, 17:57
Сообщение #98


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



Полезные статьи про ИИ в играх-стратегрях
https://dtf.ru/gamedev/91889-razrabotka-isk...kticheskoy-igre

https://gamedev.ru/code/articles/?id=6143
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Jan 5 2023, 22:05
Сообщение #99


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



Добрался до ИИ
Пока сделал просто выбор всех вариантов хода в массив и рандом по нему.
Пока делал, собрал кучу проблем, которые порешал, чтоб "мультик" хода ИИ не рвался.
Теперь даже играется, просто случайно тыкая в плашки хода, даже стрельнуть может.
Давать такое не буду, т.к. нужно же какую-то тактику сделать
Куда плыть, держать курс. Приоритет стрельбы и по кому, когда и где в ремонт.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Jan 6 2023, 21:51
Сообщение #100


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,165
Регистрация: 2-November 04
Пользователь №: 3



Я это сделал!

ИИ игровой

http://seaward.ru/pirates/ - сборка на тест

"маленький шаг для человека, но...." хотя это не про меня, но чувство у меня такое, т.к. месяц назад я даже не знал, как начать это делать.

Тут нет нейросетей, тут все "экспертная система" (как в вузе курсовую делал 25 лет назад).
Но слепок с меня самого - как бы я играл сам.

Есть что еще учесть, но и так норм.
Я сыграл пару игр с ПК и продул одну, вторую в ничью.

Сразу отмечу - ПК не жухлит! хотел такое сделать, как больше шанс или знать ветер, но.. это еще сложнее, чем просто жать плашки честно.
То есть ИИ думает, что жать из плашек хода и жмет - визуально даже видно, что он жмет (она моргает).

Для тестов можно натравить ПК на ПК
Ход будет через 5 сек сам закрываться для ПК-ПК игры (но вот рекламу нужно жать закрыть, если будет, хотя игра продолжится под ней, я так оставлял и тестил фоном, пока ужинал). Для ПК-Чел нужно ручками жать, как было

Подробные правила на 4х языках в как играть справке.

В табличке хода - название миссии, а то не ясно где что.

Какие-то еще правки по мелочи, забыл уже где, по ходу находил.

Иконки кораблей выдают название корабля при автоходе и выстреле - чтоб понято было, что это за корабль.

Оставил вероятности где-то, чтоб корабли могли сами что-то решить, как в +, так и минус - где-то реально тупят.
Люггер по испанскому золоту ищ-за Кубы еле выплывает - не понимает куда ему поворачивать

Хотя поиск пути сделан по матрицы полные "фронтом волны" и как бы обплыть может.

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

У меня вечно бой шел.
А у ИИ есть фича "не проходить мимо", если можно бахнуть в упор smile.gif

В логику ИИ вдаваться не буду - интереснее ее понять по ходу игры.

Где тупит - пишите кейсы, буду делать заплатки.

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

Изображение
Вот это ПК против ПК результат.
И это у меня уже третья игра - в пользу испанцев.
Пиратам е везет или таки баланс не за них.
Тут было два абордажа, но в взяли 1, у меня было 0/2 до того. Так-то если бы "да", то оставшиеся корабли 1 бы загоняли.

Уровень Спасти пирата буду балансить - пока там без шансов проплыть.
Может ТТХ кораблей еще изменю
===
Да, поменял
В спасти пирата - корвет вместо брига и у галеона 4/6 в начале, а не 3/6, а то любой шторм и его не довести, т.к. негде чинить.
У корвета 2 галса, он слабее флейта и пинаса, но будет маневр.
У шхуны сделал 3 галса.

Вопрос (для ответов в соседней теме) - какие еще миссии на этих 12и типах кораблей сделать?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

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

 



Текстовая версия Сейчас: 28th March 2024 - 12:39

Блок рекламы
Яндекс цитирования Rambler's Top100
Rambler's Top100