на главную страницу
Крупнейший сайт о стратегиях. Обзоры новинок.Активный ФОРУМ и встречи с разработчиками. Большая качалка МОДов для RTW и не только. Родной дом «Империи» и «Бонапарта».
На internetwars.ru


ЭНЦИКЛОПЕДИЯ МОДЕЛИРОВАНИЯ

 

КАК РЕДАКТИРОВАТЬ ИИ ЧЕРЕЗ ПАРАМЕТРЫ ФАЙЛА EXPORT_DESCR_UNIT.TXT


НАШ ФОРУМ

Здесь можно задать вопрос по этому тутору. м

Активно обсуждаем военные игры, историю, МОДы, и новинки
игрового мира.

Представляю перевод сделанной моей женой и мной небезынтересной дискуссией касательно, наверное, последнего крупного открытия в моддинге РТW - по поводу параметров export_descr_unit:
-stat_charge_dist
-stat_fire_delay

Прежде всего, наблюдения Dart Vader’а:

Я обнаружил интересные закономерности в зависимости от значений в EDU файле.

-stat_charge_dist
(Фактически для пеших стрелковых отрядов этот stat определяет расстояние, с которого искусственный интеллект может начать атаку)
-stat_fire_delay
(Это значение можно интерпретировать как среднюю величину, соотношение междудвумя опциями: выбором рукопашного или стрелкового боя)

Это в общем, а теперь перейдем к деталям.

Для лучников/пращников необходимо:

-stat_charge_dist=удвоить и меньше (Например, если диапазон равен 120, тогда установите 200-250). Справедливо соотношение значение>=диапазон оружия
-stat_fire_delay=ноль(=важно!...Не выставляйте здесь минусовые значения!)

Для копьеносцев необходимо:
-stat_charge_dist=может быть широкий диапазон значений (5x-7x расстояние для оружия)

Для осадных орудий:
-stat_charge_dist=диапазон орудия
-stat_fire_delay=ноль (Важно!)

Каков результат всего этого?
ИИ теперь защищается более эфективно, используя свои пешие стрелковые отряды. Они меньше "бродят".
И не только это ... общее поведение единиц ИИ намного лучше. Кажется, что значение stat_fire_delay позволяет им лучше группировать юниты и не смешивать их друг с другом.

Кавалерия
-stat_charge_dist=в своем моде я задаю широкий диапазон (100-300 метров) в зависимости от типа кавалерии.
-stat_fire_delay=большие отрицательные значения (приблизительно (-90000) –
(-450000!)

Спецификации:
Мобильная легкая кавалерия/ с метательными дротиками
-stat_charge_dist = (150-200)
-stat_fire_delay=большие минусовые значения(приблизительно (-150000) - (-350000) (в зависимости от брони)

Средняя/тяжелая кавалерия
-stat_charge_dist = (90-400) (Уланам в BI я выставляю максимальные значения, тяжелой коннице с большой мощью сопротивления я выставляю минимум.)
-stat_fire_delay=большие минусовые значения(приблизительно (-90000) - (-450000) (согласно броне и типу юнита)
Для руокпашной кавалерии я выставляю приблизительно (-90000) - (-190000) для специальных элитных единиц, при большей ударной силе я выставляю -200000 и более
.... Кавалерия генерала получает максимальное во всей игре значение... Я выставляю -350000 в RTW и-450000 в BI.
Это делает почти невозможным поймать ИИ генерала в сражении, поскольку он умно маневрирует.

Слоны
-stat_charge_dist= 100 (можно изменить это, надо еще потестировать)
-stat_fire_delay= 100000.
Чтобы запускать более реалистично решающие залпы ... надо должен увеличить их нападение.
Колесницы
-stat_charge_dist= 200
-stat_fire_delay=100000. Делает их более тяжелыми, следовательно устойчивыми, они не меняют постоянно свое направление. Чтобы запустить более реалистично решающие залпы ..., Вы должны увеличить нападение после этого.

Рукопашная Пехота
Короткое оружие (мечи, топоры, короткие копья и т.д.)
-stat_charge_dist=разное (Например я даю варварским единицам большие значения, чтобы получить реалистический сильный прорыв и меньший более тяжелым цивилизованным отрядам.)
-stat_fire_delay= 5000 для всех (помогает ИИ группировать отряды вместе, а не изолировать их. Например, я придаю такое значение германским фалангам, иначе ИИ группирует их по отдельности.
Если выставить отрицательное значение, юнит ведет стреляет как безумный и не переходит в рукопашную. Но это может использоваться возможно для некоторых типов отрядов подобно woad warriors.

Фаланги
-stat_charge_dist=1-2 (очень малое значение устанавливают для того, чтобы солдаты держались вместе и прекращали блуждать по местности). Они становятся более статическими. Избегайте выставлять ноль, или минусовые значения, потому что это заставляет солдат неортодоксальных фаланг и сумасшедших отдельных отрядов постоянно перемещаться в рукопашной схватке
-stat_fire_delay=55000 - 100000 или больше. (Большое значение фактически становится преимуществом , т.к. фаланга эффективна в разных направлениях

Для лучшего эффекта задайте каждой фракции одиниковые значения по фалангам.

Precursor units (подобно римлянам)
-stat_charge_dist=диапазон их оружия
-stat_fire_delay = -55000 приблизительно...
Отряды становятся более мобильными, лучше стреляют и не тормозят, как раньше.

А теперь мнение Sihunet’а:

Прежде всего, поздравляю с интересными открытиями. Мне всегда было интересно, что это за флаги в EDU.txt файле. Я интерпретировал это так: fire_delay - некоторый другой рудимент подобно "stat_foot", изменение расстояний атаки может только расшатать всю систему. И я предпочитаю лично неэмпирические способы внедрения новых вещей, поэтому когда я не совсем уверен, что я делаю, я оставляю все как есть (в отличие от Вас, ничего плохого в этом нет, каждый подход имеет свои преимущества и недостатки).

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

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

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

Воспринимайте мой пост как нейтральный диалог на нейтральную тему: у меня нет амбиций. Но эта информация была бы очень полезня для меня, потому что в данный момент я решаю, необходимо ли это и в конечном счете как изменить установки для стрелковых юнитов и копьеносцев в ИИ формациях. И я не хочу вносить никакие изменения, которые бы не позволили использовать ваши настройки в EDU.txt файлах, которые могут быть благоприятными для поведения ИИ в сражении в целом...

Я попробовал использовать предложенный тобой подход: принять твои значения за аксиому и изменять их только по необходимости.
Были получены следующие новые результаты:
- Вы правы, что положительное значение для задержки огня для первичного оружия увеличивает "дефект оружия"; также верно, что выгода от положительных значений является минимальной (они действуют подобно обычным пехотным юнитам, одинаковое значение должно препятствовать изоляции, но эти приобретенные свойства в реальности оказываются незначительными, периферийными)
- однако, я не соглашусь с Вами, что задержка огня для этого типа юнитов должна всегда иметь отрицательное значение, они действуют более "дико" и что более важно в битве моих армий, в результате этого они сдвигаются вправо в начале битвы. То же самое происходит и с твоими строями. Причины такого поведения пока неопределены, скорее всего их много разных: отрицательное значение fire_delay для гастатов/принцепсов наряду с моими ИИ формированиями на платформе repmans BBW приводит к такому результату, но стоит выставить fire_delay равным нулю, проблема исчезает. Это мои личные наблюдения в конкретной ситуации - я не заявляю, что это может быть той самой причиной блуждания и в твоем моде. Однако это типично для моддинга битв с ИИ, когда нелогичные соотношения и зависимости значений являются источником ошибок...
- это также доказывает твое утверждение, что эмпирический метод необходим, теории хороши, но действительность более красочна d кодовых царствах CA...
Теперь мои два вопроса:
Почему ты устанавливаешь расстояние атаки для Варваров больше чем 60, и говоришь, что это необходимо для лучшей групповой атаки? Мне кажется более логичным установить это значение поменьше для "более тяжелых" копьеносцев, чтобы предотврпатить их реакцию на слишком большом радиусе...
Почему Вы думаете, что значение атаки для застрельщиков/копьеносцев должно быть 5x их диапазона огня. Я пошел на компромисс, установив в конце концов - 3x, и это, кажется, функционирует лучше (они реагируют на досаточно большой площади сражения, но не находятся "всегда и везде"). Есть ли какая-либо причина для установки значения 5х, на котором ты так настаивал?
Также я не соглашусь с вашим утверждением, что группировка конных отрядов и помещение их под контроль искусственного интеллекта всегда хуже, чем микроуправление ими. Это верно почти всегда для ванили и недалеко ушедших от ванили модов (наскольк я поняла, ванилью пренебрежительно называют простейшие, банальные, избитые моды), но в-общем это не действительное утверждение. Я сыграл битв за последние несколько недель и могу доказать (это - не субъективные домыслы, но результаты статистики сражений), что это является вопросом специфических формирований искусственного интеллекта, в комбинации со специфическими EDU назначениями и на специфической платформе. Минимальное 50:50 отношение вероятности, что искусственный интеллект более эффективен в манипулировании конным отрядом армии, но цифра достигает почти 100 % в сражениях с потребностью большого маневрирования. Примите этот последний параграф как выразитель моей за теоретическую чистоту и ясность в утверждениях, это не так уж важно.

 

© Материал и перевод предоставлены Дмитрием.
©Запрещается любая перепечатка и копирование без согласия  Internetwars.ru .