Здравствуйте, гость ( Вход | Регистрация )
| ALexusB |
May 20 2009, 21:31
Сообщение
#1
|
|
Разработчик ВМЛ-КВЛ ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Admin Сообщений: 16,628 Регистрация: 2-November 04 Пользователь №: 3 |
Нужна ваша помошь!
Некоторые знают, а кто-то догадывается, но я не забросил поприще пиратски игр с концами Дело движется, медлено и как обычно ночами, но идет - кубики уже играбельны. Начитался статей, много думал - понял, что к моменту начала кодинга ИИ кораблей нужно иметь базу знаний. Помогите ее сделать! Знания - это калька поведения нас - игроков в бою. Берем за основу бой в КВЛ-ГПК и текстом записываем свои действия. Начну с себя, как пример, без деталей. В бою у меня сразу идет 1. анализ состояния: * сил противника (примерно равны, больше, меньше, сильно больше, сильно меньше). * направления ветра 2. мои цели * слинять из боя * всех потопить * всех абордировать * часть абордировать и часть потопить * часть абордировать и слинять из боя Подзадачи: * продержаться какое-то время (если это задача такая по квесту) * защитить купца - все это сводится в списку выше 3. Корректировка стратегии со временем, то есть повтор 1. и смена на 2. 4. Шаги для достижения цели 2. * перезарядка * выстрел * маневрирование * поднять-опустить паруса * абордаж * выкинуть товар что еще обычно бывает? И давайте лезть в детали - на что смотрим, когда оцениваем больше-меньше? Паруса, корпус, команда, типы кораблей? Попробуйте на примере конкретного боя описать свои действия - мне нужна статистика, я сам сведу по полочкам. Пойдет рассказ "как я брал золотой флот" и типа того. Но в описании решений и критериев их оценки, а не литературных изысков про "отлетающие доски после бортового залпа". |
![]() ![]() |
| Serginio |
Jun 14 2009, 14:45
Сообщение
#2
|
|
инопланетянец ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: форумчанин Сообщений: 2,018 Регистрация: 7-August 07 Из: Днепропетровск Пользователь №: 11,632 |
Не буду описывать какое-то конкретное сражение, т.к. сути основных тактических моментов это не изменит.
Итак самыми важными стратегическими факторами для оценки ситуации до схватки считаю. 1. Направление ветра. 2. Сила ветра. 3. Калибр орудий противника(ов), т.к. от этого зависит дистанция стрельбы. 4. Количество и скоростные данные кораблей противника. 5. Умения вражеских кэпов, по убыванию значения: защита, пушки, меткость, абордаж, нава. Практически всегда хожу парой. Целью ставлю "Всех абордировать". Перед боем опустошаю трюм своего флагмана оставляю только и исключительно: картечь (количество на 10 круговых выстрелов), книппеля и бомбы (в половину от картечи), порох (на 10 круговых), оружие и лекарства по числу максимальной команды с перегрузом. Всё остальное перегружаю компаньону. Команду перегружаю себе. Но это индивидуальная тактика геймера и для ИИ она как бы бесполезна. Но вот дальнейшие мои действия ИИ должен бы учитывать-прогнозировать, иначе ему придётся худо Итак. Команда компаньону "Уплыть", иначе ему начинают сбивать паруса и выбивать команду, а я этого очень не люблю. Сам, сохраняя недоступную для стрельбы противника дистанцию, ухожу так, чтоб оказаться от него с наветренной стороны. Первой жертвой выбираю противника (в порядке убывания приоритетов): 1. С максимально мощным вооружением. Если вооружение одинаковое, то с макчимальными статами "пушки и меткость" у вражеских кэпов. Если и тут разница небольшая, то с минимальной "защитой" у кэпа. 2. Максимально скоростного (корветы, заразы достают). 3. Ближайшего в строю. Тактиа "Акула", как наиболее используемая - быстрое сближение по ветру, активный обстрел картечью выбранной в эскадре противника жертвы (возможно абордаж), быстрый разрыв дистанции по ветру. Такие атаки повторяю циклически, до полного уничтожения противника. Абордируемых или топлю предварительно ограбив, или сажаю на них компаньонов и командую "уплыть". Экипаж обычно перегружаю назад на флагмана, игра это позволяет при постановке борт к борту (делаю это больше для сохранения команды). Активный обстрел жертвы провожу из зоны, где атакуемый мною шип прикрывает меня от залпов своих же компаньонов. Последовательность действий при такой тактике: 1. Провоцирую, чтоб противник разрядил борт(а) на максимальной дистанции (обычно это ядра). Принимая залп, становлюсь к нему носом (или кормой) и спускаю паруса. 2. Пока противник разворачивается, активно с ним сближаюсь. Заряжен всегда картечью. 3. Если у противника дальнобойные орудия, то таких рывковых сближений иногда приходится делать по 2-3 до момента моего первого залпа. 4. Выбиваю команду и абордирую. 5. При маневрировании вблизи противника активно использую "Манёвренный разворот" и "Быструю перезарядку". Всегда стараюсь держаться в глухой необстреливаемой противником зоне (45 градусов от его носа или кормы). 6. Подхожу к борту противника только непосредственно после его бортового залпа или, когда он начинает перезарядку на другой вид боеприпасов. Об это нужно сказать особо. Иногда ИИ постоянно перезаряжает свои корабли, некоторые уходят на дно, так и не успев выпустить ни одного заряда. Если бы кто-то из вражеской эскадры был постоянно заряжен книппелями, другой - картечью, а третий - бомбами не зависимо от дистанции, они смогли бы навредить мне гораздо больше. С такими "тугодумами" всегда возни больше. Практически никогда не удаётся подойти к ним в борт, отсюда и обстреливуаю их только из "мёртвой зоны", да ещё и маневрировать приходится в ущерб скорострельности. Тактиа "Дельфин" применяется при неблагоприятном ветре или неудачной конфигурации береговой линии - беспорядочно разряжаю борта, заряженные книппелями и ухожу в крутой бейдевинд (обычно в противоположную от компаньона сторону, чтоб отвлеч на себя внимание). Ухожу дооолго, иногда использую команду "Доплыть до...", чтоб макимально растянуть караван противника. Когда расстояние между кораблями противника начинает превышать максимальную дальность стрельбы их орудий, разворачиваюсь и уже поветру быстро атакую одного за другим. Корабли, которые планирую оставить после абордажа себе, абордирую последними. Такая тактика возможна благодаря бестолковости ИИ. Если бы корабли противника сохраняли строй независимо от повреждения парусов (т.е. самые быстрые равнялись на самых медленных), эта тактика была бы непреемлима. А корветы и бриги охраны не пёрлись бы в догонку за моим люггером, а конвоировали бы кильватерный строй противника по бокам, увеличивая тем самым зону обстреливаемую орудиями эскадры, то против них пришлось бы использовать другую тактику. Для караванов противника можно было бы прописать тактику ИИ, чтоб грузовые суда уходили к ближайшему форту, стремясь укрыться под огнём его орудий, а боевая охрана такой отход прикрывала. И отход не беспорядочный, а клином, к примеру, или уступом (лучше - каре), в зависимости от втера и изначального строя в эскадре. Боевой корабль эскорта не должен гнаться за мной, он должен стермиться занять позицию между мной и основной частью грузового каравана. Но для этого у меня есть ещё одна тактика. Тактика "Барракуда" - в сложных и неудобных боёвках или когда нас застали врасплох. Абордируем ближайший, доступный для абордажа с минимальными потерями, шип (пусть даже самый небольшой). Грабим и отпускаем. Дальше используем его, как щит, и высовываясь из-за него разряжаем борта в противника. Бывали случаи, когда этому шипу его же компаньоны мачты сбивали, пытаясь попасть по мне. Но пустой шип будет иметь большую скорость и манёвренность, поэтому его нужно удерживать от побега, постоянно баражируя перед его носом. В конце концов, он всё равно слиняет, оставив нас против мощных врагов. Продолжаем ту же тактику. Только теперь наша жертва - самый мощный с большими пушками противник. Абордируем, сразу снимаем с него всю команду (в особых случаях, сажаем компаньона с перком "Спасение на шлюпке"). Вот это будет щит, который уже никуда от нас не денется, лишь бы корпус выдержал. Даём ему команду "Уплыть", чтоб не вертелся как ни попадя, а дальше преследуем свои цели. Основной огонь принимает на себя "щит". Когда противник будет рассеян, то можно спокойно перегрузить товар из "Щита", а его затопить, чтоб не мучался. Тактика "Пиранья" используется в случаях, когда нам не нужна вся эскадра противника, но топить абордированных не с руки (имеем малый трюм) - уходим в крутом бейдевинде, затем делаем дугу и атакуем последний(е) корабли в колонне (обычно это грузовики). Потом их легко увести по ветру от основных сил противника. Опять же ИИ увлекается погоней, а не защитой. Есть ещё тактика "Анаконда", когда битва планируется заранее. Покупаем галеон или ТГ, загружаем его командой лохов с перегрузом. Опустошаем трюм, оставляем только картечь и порох на 1-2 круговых выстрела, оружие, лекарство. После выхода в "Море" командуем компаньону "Уплыть", а сами на этой "Анаконде" прём быстро напролом к самому мощному кораблю эскадры противника. Немного его обстреляв, абордируем и пересаживаемся. Свой галеон чаще всего топим, в особых случаях можно очистить трюм и посадить компаньона с перком "Спасение на шлюпке" (всё равно это корыто будет потоплено противником). Теперь наша крепость находится в колце неприятеля. "Манёвренный разворот", "Быстрая перезарядка" и после 2-3 оборотов вокруг нас только пузыри или лоханки без парусов или экипажей (в зависимости от того, какие цели перед нами стоят). Но чаще всего, приходится уводить эту крепость, активно работая картечью, по ходу абордируя обескровленного противника с небольшой командой, набивая себе трюм или разбрасывая вокруг себя свои и чужие "щиты". А завершается разгром обычно на корабле своего компаньона (он остаётся менее повреждён при такой тактике). И корабли, которые мы планируем оставить себе обычно абордируются последними, чтоб их бывшие союзники не попортили им шкурку. Какие корабли я топлю без абордажа? Обычно корабли охраны при контрабанде, пиратов, ОЗГов, т.е. те, чьи трюмы заведомо пустые. Также очень не люблю абордировать большие корабли с мушкетным залпом. Если удаётся, то переигрываю сцены и топлю их без абордажа. Вот, собственно, почти все тактические схемы, применяемых мною боёвок. некоторые возможны только благодаря неповоротливости ИИ, другие достаточно универсальны, чтоб быть успешными ипри любых схемах поведения компьютера... Буду рад, если хоть что-то из написанного пригодится для конструирования поведения виртуального противника... |
ALexusB ИИ для морского боя May 20 2009, 21:31
Dir
В бою у меня сразу идет
1. анализ состояния:
* с... May 20 2009, 21:47
makarena Для меня:
1.анализ состояния:
* сил противника (пр... May 20 2009, 22:24
Black Angel 1.1 Количество кораблей противника(не важен класс)... May 21 2009, 00:49
dima12 Оценка противника:
*Эскадра или одиночка
*Оценка с... May 21 2009, 09:34
Джафар Оценка противника:
Оценка : Эскадра/одиночка (клас... May 21 2009, 14:23
ALexusB Усложним задачу - как бы вы играли против себя?
Вы... May 21 2009, 16:25
Black Angel
Усложним задачу - как бы вы играли против себя?
В... May 22 2009, 23:20
dima12 Это сложнее.
*Противник равен мне по силам или си... May 21 2009, 19:28
Dir
#Если на равне
1)даю бой, НО
2)держусь дистанции,... May 22 2009, 06:31
ALexusB
Заряд разный по бортам будет. May 22 2009, 08:14
Bers Если сражаться против себя, и силы равны.
То не ст... May 22 2009, 11:47
Dir В бою с равным соперником,потеря им части парусног... May 22 2009, 11:54
Джафар Тогда можно будет использовать так называемые ... May 22 2009, 11:58
Bers
В бою с равным соперником,потеря им части парусно... May 22 2009, 12:19
Rаvеn Проще всего рассмотреть тактику боя на примере, ко... May 22 2009, 15:24
Golden Hind [b]Анализ действий обычно начинается с оценки сил ... May 22 2009, 14:08
mr.Li Так, ну что же, я играл бы против себя так:
1 Осто... May 22 2009, 21:08
ALexusB В хорошем ИИ есть плохая сторона для игр - ИИ долж... May 22 2009, 23:28
Golden Hind
В хорошем ИИ есть плохая сторона для игр - ИИ дол... May 23 2009, 19:56
Black Angel 2ALexuSB
Надо чtобы наpод pаcкaзал как он боpetца ... May 22 2009, 23:46
ALexusB любой ИИ (даже тупой) нужно сделать, делать его ср... May 23 2009, 09:20
navy
Ага, для примера, вы играетесь с ПГГ на коэффицие... May 23 2009, 13:30
mr.Li Хочу заявить, что это не единственная моя тактика.... May 23 2009, 20:18
Kamil Гм... Чтобы я делал играя против себя - нападать т... May 24 2009, 19:16
Black Angel ALexusB вы меня не поняли.Я имел в видy 'tyпые... May 24 2009, 23:37
Bucaneer Для эталонного ИИ вполне можно взять существующий ... May 25 2009, 14:51
Denis В данной задаче необходимо посмотреть на ситуацию ... May 26 2009, 11:02
sergo-kon В большинстве случаев на низких уровнях развития Г... May 26 2009, 21:38
Ван дер Декен было бы не плохо если бы были специальные маневры ... May 27 2009, 12:22
Mitrich Вот и пришло время заняться многострадальным ИИ. П... May 28 2009, 06:35
ALexusB Я понял, что у игроков (не программистов) есть уст... May 28 2009, 12:04
Denis Mitrich
В своем посте я попытался сделать кальку м... May 28 2009, 20:45
ALexusB Denis, да, возможно.
Только дело не в типе, а в ст... May 28 2009, 21:38
Mitrich ALexusB
Отвечу за себя. У меня нет никаких "з... May 29 2009, 06:25
Denis Mitrich
Ты прав в том, что надо определиться с тер... May 29 2009, 08:27
ALexusB
Да, все так
А тут остановлю.
Нет такой сильной ... May 29 2009, 08:39
Denis
Тогда дай, плз, образец шаблона для описания мо... May 29 2009, 09:26
ALexusB так выше дал
Идет сперва перечень шаблонов (кратн... May 29 2009, 09:47
sergo-kon А развороты к сзади нагоняющему противнику, будут ... May 30 2009, 13:32
Mitrich 2Denis
Тут ты прав, «золотому флоту» незачем знать... May 30 2009, 16:00
ALexusB ираектории джижения судов - это отдельная задача н... May 30 2009, 21:49
delfin_ Против себя, играл бы так:
Если 1х1 - снести мачт... May 31 2009, 00:16
Denis Тут есть важный момент для правильной оценки ситуа... May 31 2009, 12:03
delfin_
Ну или в том случае если корабль особой ценности ... May 31 2009, 14:34
Mitrich 2ALexusB
"Траектория движения". Я об это... May 31 2009, 14:52
Oceanlab В дебри размышлений заходить не буду опишу свой ме... Jun 14 2009, 01:47
Rolando
Пойдет рассказ "как я брал золотой флот... Jun 14 2009, 08:43
Джафар На днях играл, вышла такая фигня:
Прижали меня во... Jun 14 2009, 08:57
Rolando
Почему? ведь они враги вроде, по идее должны хотя... Jun 14 2009, 10:17
Джафар
А под каким флагом шли Вы и какой нации и НГЗ был... Jun 14 2009, 13:15
Rolando
Буду рад, если хоть что-то из написанного пригоди... Jun 14 2009, 19:05
ALexusB Да уж... пока искушение токо одно - оставить токо ... Jun 14 2009, 22:03
СТРАННИК Много тут наговорили уже.
Позвольте и мне вставить... Jun 15 2009, 09:56
Serginio Serginio играйте в патч 1.2.3 - бейтесь с Джентель... Jun 15 2009, 21:31
ALexusB разница в перезарядки бортов КВЛ и ГПК есть и она ... Jun 15 2009, 12:05
Rolando Недавно встретилась явная "дыра" в повед... Jul 4 2009, 11:12
СТРАННИК Проходил квест 20 моноваров
Лин кор у меня был.
И... Jul 4 2009, 12:11
Serginio А как вы проходите 20 мановаров?
:1: Дык для них... Jul 4 2009, 19:57
Rolando
А как вы проходите 20 мановаров?
Использую Араб... Jul 6 2009, 20:32
Serginio Использую Арабеллу для взятия описи методом с/л: к... Jul 6 2009, 21:44
Blood5 Всем привет!
И так конкретное:
1. Вижу эскадр... Jul 9 2009, 02:13
Миротворец Если выхожу на охоту , то используя перк у меня на... Aug 5 2009, 20:56
VladNiP Расскажу о своей тактике в морском бою:
В зависимо... Aug 5 2009, 21:12
Керосин предлагаю таким образом усовершенствовать тактику ... Aug 6 2009, 13:01
Rolando
предлагаю таким образом усовершенствовать тактику... Aug 6 2009, 16:52
Керосин или вот пример морского боя (реально бывший в игре... Aug 7 2009, 10:33
FoKyS В бою у меня сразу идет
1. анализ состояния:
* си... Sep 22 2009, 10:32
ALexusB Прочел книжецу
C / С++ : C++ мастер-класс. 85 нетр... Apr 27 2010, 08:58
N.tony Пришел к некому концепту реализации ИИ для мор боя... Apr 27 2010, 09:25
ALexusB
Обычно в таком случае ИИ сильно неловкий получает... Apr 30 2010, 23:43
N.tony Я отказался от самообучения - мне проще самому идт... May 1 2010, 00:02
Hawcker
2.* слинять из боя
* всех потопить
Слинять из... Apr 27 2010, 17:49
m-traxx Постараюсь рассказать, что на мой взгляд позволяет... Apr 27 2010, 19:04
bullet Кста, а мона в сетке где-нить нарыть основы/правил... Apr 27 2010, 20:17
Captain Flint
Кста, а мона в сетке где-нить нарыть основы/прави... Apr 27 2010, 21:45
ALexusB Пробовать буду - тема интересная мне, потому и дел... May 1 2010, 00:35
HenMoR
Пробовать буду - тема интересная мне, потому и де... Nov 2 2010, 00:45
ALexusB Статья в тему ИИ
http://xitri.com/2010/10/27/ai-c... Nov 25 2010, 10:33
Shadow
Э-э-э, разве это не описание реализации ИИ на осн... Nov 25 2010, 14:07
ALexusB Не знаю, открою ли я тайну, но во многих играх, да... Nov 25 2010, 15:31
Shadow
Не откроете.
Иногда, но не всегда. Вот, почитай... Nov 25 2010, 15:34
ALexusB В тему ИИ
книжка аж 1975года, но от того даже инте... Dec 28 2010, 00:21
Commandor_S
В тему ИИ
книжка аж 1975года, но от того даже инт... Dec 28 2010, 08:46
Hovgaard По теме:
1. Оценка погодных условий;
2. Проверка ... Feb 8 2011, 16:43
Golden Hind Слабость ИИ в практически любых компьютерных играх... Feb 16 2011, 06:03
Serginio Слабость ИИ в практически любых компьютерных играх... Feb 16 2011, 13:08
ALexusB Наконец-то подошел к задачам уровня ИИ для их прак... Feb 17 2011, 16:01
Hovgaard
Наконец-то подошел к задачам уровня ИИ для их пра... Feb 21 2011, 11:10
Serginio [b]Глобальная задача , определяется со старта, по ... Feb 21 2011, 11:53
Hovgaard
Интересный метод, но его применение чревато ситуа... Feb 21 2011, 18:50
Serginio Думаю, просчет предполагаемых действий игрока - ве... Feb 22 2011, 11:54
ALexusB Самое интересно, что навернуть стратегию высокого ... Feb 23 2011, 01:24
Kunla кстати по поводу абордажа, например в PotBS зацепи... Mar 17 2011, 22:26
ALexusB пока это все мне рано, базовых вещей нет. Такие то... Mar 17 2011, 23:57
ALexusB Однако, какая хорошая тема и она снова актуальна д... Nov 28 2022, 13:30
ALexusB Полезные статьи про ИИ в играх-стратегрях
https://... Dec 10 2022, 17:57
ALexusB Добрался до ИИ
Пока сделал просто выбор всех вариа... Jan 5 2023, 22:05
ALexusB Я это сделал!
ИИ игровой
http://seaward.ru/p... Jan 6 2023, 21:51![]() ![]() |
| Текстовая версия | Сейчас: 30th October 2025 - 09:40 |