Сообщество Империал: Составление формаций в Europa Barbarorum II - Сообщество Империал

bitterhowl

Составление формаций в Europa Barbarorum II

Третий акт античного эпоса о схватке с ветряной мельницей тактического ИИ.
Тема создана: 18 мая 2019, 12:22 · Автор: bitterhowl
  • 5 Страниц
  • 1
  • 2
  • 3
  • 4
  • 5
 bitterhowl
  • Imperial
Imperial
El Compilator

Дата: 18 мая 2019, 12:22

Imperial

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

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

Пример из недавней практики - в блоке с unit_type spearmen очутились кони-люди, потому что в EB2 есть юниты spearmen cavalry.

Вкратце обобщу свой способ обращения с иакиическим ИИ, если кто-то не читал тему про эксперименты с ним: в .xml файле config_ai_battle есть возможность прописать только одно название формации для одного типа боестолкновения. Для открытых битв это ai_triple_missiles_in_front. Эта же формация прописана в kingdoms.exe и вероятнее всего при смене названия в .xml игра все равно будет в спорных ситуациях тяготеть к ней. Приоритет этой формации в запакованных файлах оригинальной игры выставлен 1.3 Для того, чтобы у каждой фракции на поле боя появилась своя уникальная формация нужно дать ей название ai_triple_missiles_in_front и указать в поле supported_factions название вашей фракции. Тогда .xml файл не войдет в противоречие и не будет выстраивать ничего взамен, а выстроит требуемую вам формацию. Приоритет вашей новой формации должен быть не ниже 1.3
Для построения блоков формации используется класс и категория юнита из ЕДУ, как показала практика, комбинации возможны любые - в частности, spearmen cavalry. Также для выбора юнита в блок могут быть использованы специальные построения - фаланга, ёж, стена щитов.

На основе своих мытарств с составлением формаций суммирую опыт -
1. Все параметры в блоке должны идти последовательно как в описании, иначе вылет. Видел много формаций в модах, где ;default_melee_state, т.е. выключен. Убираем ; и ловим вылет. Из-за этого автор такой формации отказывается от этого важнейшего параметра. Я так год назад переносил для из Тевтонца, тогда не разобрался и вернул ; А просто не в том месте было поставлено, надо сразу после unit_type.

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

3. Все юниты последовательно должны быть связаны через dummy_block, а dummy_block затем еще отдельно между собой. Эту методику я увидел в формациях Real Combat. Армия объективно движется более синхронно.

4. Интересно и требует тестов - по каким еще параметрам можно включать юниты в блок. Например horde, wedge - будет ли по аналогии с фалангой? И атрибуты crossbow, pike, gunmen - возможно, они для этого и сделаны, т.к. эффектов у них никаких нет.

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

Во избежание последней описанной ситуации я решил опробовать систему, когда все блоки будут ссылаться на начальный нулевой блок, который всегда будет присутствовать (вариант сделать его в виде dummy_block spacer, который обозначает пустое место без войск, либо блок с unit_type any и лимитом в 1 юнит).
     bitterhowl
    • Imperial
    Imperial
    El Compilator

    Дата: 24 мая 2019, 13:27

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

    Спойлер (раскрыть)
    В приведенный блок движок вставит только стрелков и застрельщиков, у которых построение отряда horde ("орда"). Все остальные (square, phalanx, shield_wall, schiltrom)туда уже не попадут. Так можно убирать, например, крестьян на фланги.
       bitterhowl
      • Imperial
      Imperial
      El Compilator

      Дата: 28 мая 2019, 13:08

      Вот формация свиная голова. Интересно, что если в армии больше 4-5 отрядов кавалерии, то движок не строит эту формацию, а выставляет всех в одну линию.
      Если армия чисто пехотная - строит без проблем.
      Спойлер (раскрыть)
         Genastrat
        • Imperial
        Imperial
        Форумчанин

        Дата: 28 мая 2019, 16:56

        bitterhowl

        Интересно, что если в армии больше 4-5 отрядов кавалерии, то движок не строит эту формацию, а выставляет всех в одну линию.
        Вот 8 отрядов кавы:
        Imperial
        Там же - всех мужиков с сиками заменил на копейщиков:
        Imperial
           bitterhowl
          • Imperial
          Imperial
          El Compilator

          Дата: 28 мая 2019, 17:28

          ИИ атакует в этом примере? У меня с при защите с построением такое произошло.
             Genastrat
            • Imperial
            Imperial
            Форумчанин

            Дата: 28 мая 2019, 17:58

            Это из польз битв. Противник берёт формацию головы либо общую германиковскую (почти). В общей, если кавы много, оставшаяся рукопашная пехота выстраивается в единую линию. Смотрел по такому файлу (я наплодил несколько, в этом support закомментирована, а сены щитов и копий выделены каждая в отдельную линию до 8 отрядоа; простенький такой):Для просмотра ссылки Зарегистрируйтесь Я думаю, стоит попробовать флаг engage_at_will и те, что нарыли в экзешнике
               bitterhowl
              • Imperial
              Imperial
              El Compilator

              Дата: 28 мая 2019, 21:05

              Я тоже тестирую на пользовательских, сейчас на своем моде и Сталюге. С supported_factions, как в примере. Если фракция атакует (неважно, игрок или ИИ) то строит эту формацию и с кавалерией и без. Если оборона - то строит только с пехотой свиную голову.

              Другой пример - сделал сам формацию типа англичан при битвах Столетней войны - в центре копейщики, на флангах лучники, за ними слева тяжелая пехота, справа легкая, кавалерия наоборот, слева легкая справа тяжелая. Хотел для обороны ее делать, поставил melee_state defend везде; в атаке ее строит, в обороне нет, всех в одну линию. Ладно, пробую чтобы ИИ атаковал ею, он перестраивается. Поменял defend на engage_at_will - сохраняет формацию и атакует меня.
                 Genastrat
                • Imperial
                Imperial
                Форумчанин

                Дата: 28 мая 2019, 23:03

                bitterhowl

                Если оборона - то строит только с пехотой свиную голову.
                Вы попробовали с переданным файлом? В ЕБ всё нормально, хоть без кавы, хоть с 8 отрядами кавы, хоть в обороне, хоть в атаке (вообще-то эта голова просто так, для теста на присутствие 2 формаций в поле)

                - - - Сообщение автоматически склеено - - -

                bitterhowl

                Хотел для обороны ее делать, поставил melee_state defend везде;
                лучше забудьте про defend, он не связан с тактикой обороны, а распространяется по однотипным блокам как малярия, ослабляя всех, кроме, возможно, стен копий.
                   bitterhowl
                  • Imperial
                  Imperial
                  El Compilator

                  Дата: 29 мая 2019, 04:09

                  Вставил формацию из приведенного файла, мой мод ее не строит в защите, увы. В атаке - да.

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


                     bitterhowl
                    • Imperial
                    Imperial
                    El Compilator

                    Дата: 30 мая 2019, 04:05

                    Genastrat (28 мая 2019, 17:58):

                    Это из польз битв. Противник берёт формацию головы либо общую германиковскую (почти). В общей, если кавы много, оставшаяся рукопашная пехота выстраивается в единую линию. Смотрел по такому файлу (я наплодил несколько, в этом support закомментирована, а сены щитов и копий выделены каждая в отдельную линию до 8 отрядоа; простенький такой):Для просмотра ссылки Зарегистрируйтесь Я думаю, стоит попробовать флаг engage_at_will и те, что нарыли в экзешнике

                    Полностью заменил файл формаций в ЕБ на приведенный здесь, и действительно все строит. Значит у меня какая-то запись одной из формаций в файле глючная и дает такой эффект. Буду дальше разбираться.
                      Voyage to the Dreamborn isles
                      Дата: 12 окт 2021, 14:44
                      Faster End Turn Camera
                      Дата: 11 окт 2021, 17:08
                      Часовой механизм / Clockwork (Clockwork Castle)
                      Дата: 11 окт 2021, 15:15
                      Море Призраков
                      Дата: 11 окт 2021, 15:07
                      Цитадель Порядка
                      Дата: 11 окт 2021, 14:33
                      Город Ледяное ущелье
                      Дата: 11 окт 2021, 14:30
                      Fleur de Lis: Normans
                      Дата: 10 окт 2021, 21:41
                      Зал Телванни
                      Дата: 10 окт 2021, 15:57
                      Колодец Волшебника
                      Дата: 10 окт 2021, 15:49
                      Дозорный / VIGILANT
                      Дата: 10 окт 2021, 15:19
                      UNSLAAD / Унслаад
                      Дата: 10 окт 2021, 15:07
                      Carved Brink / Огранные камни
                      Дата: 10 окт 2021, 15:02
                      The Blackwood Company
                      Дата: 10 окт 2021, 13:56
                      Темный
                      Дата: 10 окт 2021, 13:03
                      Зеркало Магнуса
                      Дата: 10 окт 2021, 12:47
                      Сборник Лорного Оружия
                      Дата: 10 окт 2021, 12:40
                      Сборник лорной брони
                      Дата: 10 окт 2021, 12:31
                      Han Souls 7.1
                      Дата: 04 окт 2021, 16:46
                      The Sigh of Empire - The Storm Riders
                      Дата: 04 окт 2021, 16:35
                      Road to Luoyang
                      Дата: 04 окт 2021, 16:30
                      Building Progression Icons II
                      Дата: 02 окт 2021, 19:32
                      Better Camera Mod
                      Дата: 26 сен 2021, 19:56
                      GCCM: Unique Faction Capitals
                      Дата: 21 сен 2021, 14:26
                      Region Trading
                      Дата: 20 сен 2021, 20:17
                      Ancient Empires Total Wars
                      Дата: 28 авг 2021, 13:48
                      [EU4] Stellaris UI Font
                      Дата: 21 авг 2021, 17:44
                      [EU4] Graphical Map Improvements
                      Дата: 13 авг 2021, 19:26
                      Old World Blues
                      Дата: 09 авг 2021, 19:36
                      The Greek Wars
                      Дата: 08 авг 2021, 20:57
                      Warhammer TW - Call to Arms
                      Дата: 08 авг 2021, 18:25
                      Empire at War Expanded: Thrawn's Revenge
                      Дата: 07 авг 2021, 17:30
                      Empire at War Expanded: Fall of the Republic
                      Дата: 02 авг 2021, 19:57
                      Hydra Total War
                      Дата: 30 июл 2021, 15:22
                      Larger historical battles
                      Дата: 27 июл 2021, 19:34
                      Grand Theft Auto III: Classic Edition
                      Дата: 16 июл 2021, 20:20
                      Grand Theft Auto San Andreas: Classic Edition
                      Дата: 16 июл 2021, 20:00
                      Grand Theft Auto Vice City: Classic Edition
                      Дата: 16 июл 2021, 19:33
                      Narnia Total War
                      Дата: 14 июл 2021, 16:49
                      Grand Theft Auto Liberty City Stories: Classic Edition
                      Дата: 27 мая 2021, 18:25
                      Grand Theft Auto Vice City Stories: Classic Edition
                      Дата: 27 мая 2021, 18:13
                      Поместье "Высокогорное"
                      Дата: 13 мая 2021, 15:24
                      Поместье "Эрта Майор"
                      Дата: 13 мая 2021, 15:21
                      Коттедж "Блад мун"
                      Дата: 11 мая 2021, 19:08
                      Original Loading Screens
                      Дата: 08 мая 2021, 19:32
                      • 5 Страниц
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      Воспользуйтесь одной из соц-сетей для входа
                      РегистрацияВход на форум 
                      2021 «Империал» · Условия · Ответственность · Визитка · Сотрудничество · 28 окт 2021, 00:45 · Счётчики