Моддинг Empire: Total War

Моддинг Empire: Total War

Характеристики флота (Empire: Total War)

Характеристики флота (Empire: Total War)

Мораль.
Мораль кораблей в Empire: Total War связана по меньшей мере с двумя таблицами в папке db: _kv_naval_morale_tables и unit_stats_naval_tables.
Первая таблица напрямую связана с моралью, а названия характеристик являются неплохим подспорьем при моддинге. Эти характеристики в основном работают как штрафы к морали, связанные с событиями в бою или с размерами потерянной морали, которые корабль может потерять, пока не дойдет до штрафов.
Во второй таблице первая колонка, согласно своему названию, относится к морали и, кажется, является общим объемом морали, которую корабль может потерять в бою. Здесь также присутствует группа характеристик, относящаяся к стойкости морали и корпуса корабля. О них я напишу в разделе о стойкости корпуса.

Стойкость корпуса
Стойкость корпуса имеет много характеристик, указанны в таблице unit_stats_naval_tables. Но первое, что я хотел сказать о них, это то, что характеристика в колонке №2, названная ‘hull strength’ никак не влияет на стойкость корпуса в боевых тестах, которые я провел.

Другая характеристика, названная ‘hull strength’ и ни на что не влияющая, – это последняя характеристика в той же таблице. Это просто-напросто число, указанное в описании корабля, которое вы видите, когда кликаете правой кнопкой по иконке корабля.

Настоящие боевые характеристики стойкости корпуса идут в колонках 64-114, в DB Editor - с unknown 41 по unknown 94. Я не уверен, как они в действительности работают, но то, что я здесь пишу, - это что я думаю именно в данный момент. Характеристики идут группами по 3, так что значения в первой группе будут соответственно 3, 270 и 0,7. Я называю первое число в каждой группе – А, второе – Б, третье – В. Число Б кажется мне главной характеристикой стойкости корпуса, а число А – похоже, коэффициент. Если вы увеличите А, целостность корпуса сохраняется дольше. Число С, кажется, переводит значения стойкости в значения моральной стойкости, т.к. корабли с очень большими значения А и Б и низкими значениями В при первом попадании не несут никакого видимого ущерба. И к чему относятся эти троичные группы характеристик? Хороший вопрос, который я и сам себе задаю – удивительно, насколько я сообразителен! Сперва я подозревал, что они относятся к частям корпуса, а потом я думал, что они могут быть разными характеристиками, работающими вместе. Но может быть и так, что распределение этих характеристик по корпусу корабля конкретного класса может варьироваться от корабля к кораблю. Я пока не пришел к какому-либо заключению. Я также подозреваю, что последнее и самое маленькое значение связано с мачтами. Если кто-нибудь протестирует это и расскажет мне, я буду очень благодарен.

Что касается применения, которое я нашел этим характеристикам, я использовал число А, чтобы продлить визуальную целостность корабля после повреждений в битве. Потому вам следует знать, что необходимо сбалансировать значения, т.к. если вы поставите очень высокие значения для больших кораблей, более мелкие пушки более мелких кораблей не нанесут им видимого ущерба. Также вам, возможно, понадобится увеличить штрафы морали в зависимости от повреждений, нанесённых корпусу.

Пушки
К пушкам относится несколько таблиц: unit_stats_naval_tables, gun_types_tables, projectiles_tables и gun_type_to_projectiles_tables.

unit_stats_naval_tables: Здесь, как видите, колонки с 5 по 11 названы Cannon Type, а далее идет какое-либо число. Каждая из этих характеристик – это пушка, установленная в определенной части корабля – на палубах, на носу, на корме. Распределение пушек зависит от конкретной модели корабля, так что если для первой палубы (корабля первого класса), которая является самой нижней, число Cannon Type (тип пушек) равно 7, то для четвертого класса Cannon Type равно 6. Распределение пушек по корабельным Cannon Types таково:

Как видите, я выделил некоторые строки красным. Я хотел показать этим, какой cannon type является главным для каждой модели корабля. И что же значит главный cannon type? Это значит, что в каждой модели, имеющей два или более cannon type, один из них задает максимальную область поражения (т.е., как я понял, «заставляет» другие типы стрелять в той же области, что и сам - Tryggvi). И, пожалуйста, заметьте также, что я говорю о cannon type, то есть о размещении пушек по кораблю. Давайте рассмотрим пример корабля типа razee (корабль со срезанной верхней палубой). Сначала я задал распределение пушек:

Вот какой эффект это даёт:

 

Если я изменю распределение пушек, то:

 

Скорость


Скорость корабля в бою связана с несколькими характеристиками в unit_stats_naval_tables. Главная характеристика – та, которая находится в колонке 31, в DB editor названной примерно так же – speed. Но кроме этого есть еще несколько характеристик, которые меняют результирующую скорость в битве в зависимости от курса корабля по отношению к направлению ветра. Это коэффициенты, потому все значения менее 1, и они умножаются на основную характеристику скорости, так что получается итоговая скорость, зависящая от заданного курса корабля. Представим корабль с основной скоростью 22. Таким образом, если вы сделаете коэффициент равным 1, то корабль будет развивать полную скорость на данном курсе, то есть 22, а если 0,1, то скорость корабля станет 2,2, опять же на данном курсе. Но к чему конкретно относятся данные характеристики? Они помещены в колонках с 38 по 49. Я знаю, что некоторые люди, кажется, верят, что характеристика в 50-й колонке (значением 0,17) относится к скорости. Как я понимаю, они считают, что это коэффициент скорости корабля, идущего против ветра. А некоторые еще думают, что и 51-я колонка (значением 0,12) относится к скорости, но, извините, это неверно – см. раздел о движении кораблей, чтобы узнать, что определяют эти характеристики.

Здесь я дам общий график значения характеристик в соотношении с направлением ветра, а также графики некоторых корабельных характеристик. Как видите, характеристика 38 является коэффициентом к основной скорости, когда корабль отклоняется от направления ветра на 0 градусов, то есть идет точь-в-точь по ветру. Ветер дует на запад, и корабль идет на запад, никакого отличия от направления ветра. А характеристика 49 – это 180 градусов, т.е. коэффициент к основной скорости, когда корабль идет против ветра. Всё, что между этими характеристиками – промежуточные величины. Однако это не значит, что эти величины обязательно меньше. Для некоторых кораблей наивысшей величиной является отнюдь не курс в 0 градусов. Для шлюпа (sloop), например, максимальная скорость достигается на курсах между 40 и 55 градусами (коэффициент тут 1). Правильно ли это? Если у корабля только один парус, это было бы не слишком точно. Но для кораблей с несколькими парусами, если ветер дует в спину, вы не сможете извлечь пользу из всех парусов. Таково объяснение, почему курс в 45 градусов оказывается быстрее, чем курс в 0 градусов. Вы также можете видеть, что характеристики соотносятся не с конкретным курсом, а с диапазоном конкретных курсов. Также, когда корабль идет по курсу, а потом меняет его, следующий коэффициент не начинает работать до тех пор, пока не «углубится» в следующий диапазон курсов. Я думаю, это нужно, чтобы симулировать движение по инерции. И это может быть очень полезно, если вы знаете об этом во время битвы.

Об изменении этих характеристик физика скажет, что невозможно, чтобы корабль в Empire: Total War под парусами шел против ветра. Но в нашем маленьком мире Империи корабли ИИ не понимают, что идти против ветра, когда вы поставили коэффициент 0 в характеристике 49, нельзя и что это их остановит. Потому они могут стоять так, полагая, что идут по курсу в 180 градусов, в течение всей битвы. Иногда «ИИ» значит скорее не «искусственный интеллект», а «искусственный идиот».
Скорость поворота
Характеристики, относящиеся к этим действиям, похоже, находятся в колонках с 52 по 59 включительно (в DBEditor с unknown 32 по unknown 39), так что можно сказать, что они больше не «unknown» («неизвестны»). Эти характеристики влияют на поворот не только когда корабль остановился, но и во время его движения. Потому вы не можете поставить значение 0 для этих характеристик, а иначе корабль будет только двигаться по изначальному курсу. Также слишком низкие значения приводят к тому, что корабль пропускает приказы о повороте во время движения: белая дуга курса становится все шире и шире до тех пор, пока приказ не оказывается пропущен.

Движение корабля
Характеристика в колонке 50 (unknown 30 в DBeditor) – величина, заставляющая корабль плыть по воде вверх-вниз, как игрушка йо-йо (видимо, «подпрыгивать» и «падать» на волнах(?) - Tryggvi). Это не характеристика скорости.

Характеристика в колонке 51 (unknown 31 в DBeditor) – величина, которая заставляет корабль раскачиваться на воде. Это не характеристика скорости.

 

 

Локализация :Tryggvi

Автор : Bethencourt

Пособие #3 по Db таблицам (Empire: Total War)

db/region_unit_resources_tables/region_unit_resources

Эта таблица определяет "AOR"s зону/регионы в которых определенные единицы могут быть наняты в Empire: Total War. Они должны быть отнесены к регионам в startpos.esf ибо присвоение сдесь без определения в этом файле приведет к краху при старте! 
Колонка 1 (Region IDRef) определяет индекс региона, прописывается, как в units_tables,так и в startpos.esf. Колонка 2 служит чисто для улучшеного визуального восприятия/понимания о каком регионе идет речь.


db/unit_class_tables/unit_class

Эта таблица определяет все классы юнитов. Колонка 1 (Class ID) индекс класса, Колонка 2 служит чисто для улучшенного визуального восприятия/понимания о каком классе идет речь.


db/warscape_animated_tables/warscape_animated

Эта таблица определяет все скины для анимации.

  • unknown : неизвестен
  • Path: путь извлечения текстуры (_faction) _diffuse.dds, (_faction) _gloss_map.dds, и _normal.dds
  • Категория: здесь должна быть прописана анимация (animation) для добавляемых текстур, будь то юнит или здание


db/warscape_animated_lod_tables/warscape_animated_lod

Аналогичная таблица, но уже для моделей.

  • unknown1: Числовое значение. На практике доказано что для внедрения новой модели достаточно ввести любое значение, вероятность совпадения с существующей крайне мала.
  • Path: путь извлечения модели (в 4-х екземплярах). Визуально вполне понятно (само собой все 4-е номера должны отличатся).
  • unknown2: Это диапазон, в котором модель показана. (LOD = уровень детализации)
  • unknown3: Это ID (индекс) текстуры - определены в warscape_animated_tables.


db/battle_entities_tables/battle_entities



Эта таблица определяет скорость и тип ходьбы, бега, а также много других вещей.

  1. Battle Entity ID: Это индекс блока, о которых говорится в unit_stats
  2. Category: категория блока
  3. unknown1: эффект неизвестен
  4. Walk1: скорость ходьбы
  5. Run1: скорость бега
  6. Walk2: ускорение ходьбы. скорость после 1 секунды "разбега" при ходьбе
  7. Acceleration: ускорение, скорость после 1 секунды стартового движения
  8. Charge: скорость разгона
  9. Decceleration: скорость замедления при остановке после ходьбы/бега
  10. Distance to begin charge: расстояние необходимое для разбега
  11. Distance to adopt charge stance: дистанция для максимального разбега
  12. Distance to Pick Charge Target: расстояние на которое распространяется стартовый натиск при атаке

    В остальной части этой таблицы, к сожалению, unknown (по крайней мере для меня).

db/battle_personalities_tables/battle_personalities

Здесь определены офицеры, музыканты, и знаменосцы отрядов.

  • Battle Personality ID: Это запись индексов из unit stats tables
  • Unit Model: индекс отряда
  • Behaviour: Определяет поведение единицы, специализацию юнита - играет на флейте, бьет в барабан и т.д.
  • Warscape Equipment Theme: экипировка юнита которая прописана в warscape equipment theme tables
  • Role: спецификация юнита Empire: Total War, его роль в отряде  


db/unit_class_to_unit_abiliites_junctions/unit_class_to_unit_abiliites_junctions

Используется, чтобы дать всему блоку класса (колонка 1) способность (колонка 2)


db/unit_to_unit_abilities_tables/unit_to_unit_abilities

Используется, чтобы дать конкретному юниту (колонка 1) способность (колонка 2) в дополнение к способностям класса в целом


db/unit_to_groupings_military_permissions_tables/unit_to_groupings_military_permissions

Сдесь задаются доступные к найму юниты (колонка 1) для этнической группы (колонка 2) - сами типы групп прописаны в groupings_military_tables, принадлежность фракции к той или иной группе в factions_table.


db/unit_to_exclusive_faction_permission_tables/unit_to_exclusive_faction_permission

В этой таблице уточняется возможность найма конкретной фракцией из группы. Единица (колонка 1) может быть активна(True) или пассивна/отключена (False) (графа 3) для фракции (колонка 2). 
Это не является необходимым, чтобы добавить юнита к фракции, если он уже прописан в units to groupings military permission для этнической группы Empire: Total War.

Автор : Lazy Knight.

Локализатор : Reitar-13

Как повысить эффективность снаряда (Empire: Total War)

В этом пособии поведаю вам со слов p.jakub88 о усилении мощи пушек, гаубиц, корабельных орудий и прочих кускодробящей техники в Empire: Total War. Для этого из инструмента нам как всегда понадобится Pack File Manager. 
В данном случае нас интересуют следующие db подпункты :

db/projectiles_tables/projectiles - сдесь можна изменить

  • Range - дальность/дистанция выстрела
  • Velocity - скорость полета ядра
  • Damage - ущерб наносимый снарядом
  • Base Reload Time - время перезарядки орудия


Там еще куча разных параметров, в частности можна побаловатся изменением типа шрапнели и тд.
db/projectiles_explosions_tables/projectiles_explosions - увеличение количества частиц/осколков (начинки) снаряда. К сожалению сами заголовки пунктов имеют название unknown, так что это общие сведения
db/kv_rules_tables/kv_rules - глобальный множитель значений еффектов для орудий (и не только)
db/units_stats_land_tables/units_stats_land :

  • Unit Size - количество юнитов в артрасчете
  • Number of Artillery - количество орудий
  • Number of Horses - количество лошадей (для конной артиллерии)


Внимание : при увеличении размера батареи соблюдайте пропорцию люди - орудия - лошади ( для конной артиллерии) Empire: Total War
Автор : p.jakub88
Локализация : Reitar-13

Меняем расцветку государства (фракционные цвета) (Empire: Total War)

Здесь я покажу вам как полностью изменить цветовые атрибуты той или иной нации - иконки, gloss текстур (окраска лоска которая наносится на части униформы, отдельная для каждой фракции), флаги и тд. Все это фактически делается за 5 минут, при этом лезть к самим текстурам нам не понадобится. Вам нужны лишь Pack File Manager и EsfEditor.
Итак вы столкнулись с ситуацией когда с легкой руки разработчиков, к примеру, Турки имеют почему то зеленую окраску вместо багряно-красной как им, по идее, положено. Ну или как и мне не по вкусу муторная расцветка некоторых миноров типа Венеции или Ганновера, вообщем вы решили это исправить. При владении вышеуказанным инструментом делаем следующее (на примере Турции):
- Открываем startpos.esf по адресу - Data/campaigns/main, с помощью EsfEditor. Идем по пути - CAMPAIGN_ENV/CAMPAIGN_MODEL/WORDL/FACTION_ARRAY/Ottomans Faction_Array/Ottomans Faction/ внизу списка найдите Data/Ui/Flags***. Будет две строки для монархии и республики отдельно. При наведении на них в правом окне под строчкой наименования страны с флагами увидите 9-ть числовых значений - это три (3х3) цветовых кода RGB (Red - красный,Green - зеленый, Blue - синий) для флагов фракции, измените их на желаемое.


Как видите я заменил значения [7 134 7] на [134 0 0] что соответствует багряному цвету.

- Дальше запускаем PFM и находим в db faction table

 Цвета прописаны в том же RGB формате, в 6-ти вариантах (3х6), опять же три для монархии и три для республики, вот только сдесь уже не флаги а окраска иконок и текстур. То есть для каждого строя мы можем задать/подправить желаемый цвет.
Как понять какая кодировка за какой цвет отвечает ? Элементарно, открываем любой из графических редакторов имеющихся на ПК и пытаемся задать цвет:

Вот так и вычисляем нашу гамму.

Автор : Reitar-13

Подпункт db/unit_stats_land_tables/unit_stats_land в patch.pack (Empire: Total War)

Подпункт db/unit_stats_land_tables/unit_stats_land в patch.pack

Пожалуй этот раздел db таблиц Empire: Total War заслуживает отдельного обсуждения ибо есть очень громоздок и важен. Для более детального ознакомления условно разобью его на две части где 1-я - параметры а 2-я способности.

Часть I.

Пункты :
Unit IDRef - индекс юнита
Unit Size - количество солдат в отряде
Number of Horses - количество лошадей
Number of Artillery - количество орудий
Officer - тип офицера
Drummer - барабанщик
Standart Bearer - тип знаменосца
Model Name - индекс модели юнита
Infantry Battle Intity - боевой "уровень" юнита (легкий,средний,тяжелый)
Animation Table - индекс анимации
Warscape Equipment Theme IDRef - индекс экипировки юнита
unknown - ?
Armor Type - тип брони
unknown - ?
Horse - порода/тип лошади
Cavalry Battle Entity - класс наездников
Horse 3 - вид животного (лошадь,верблюд,слон)
unknown - ?
unknown - ?
Carriage Battle Entity - класс конной артиллерии
Ammo Train Battle Entity - класс боеприпасов
Limber - индекс орудийной части
Artillery 1 - тип артиллерии
Has Artillery 2? - дословно наличие артиллерии, но и у некоторых артотрядов стоит False,посему утверждать не берусь
Gun IDRef - индекс орудий
unknown - тип оружия
Accuracy - точность стрельбы
Reloading Skill - скорость перезарядки
unknown - ?
unknown - тип ружья
Projectile IDRef - тип заряда
Ammo - количество боеприпасов
unknown - индекс модели оружия
Melee Weapon - тип холодного оружия
Melee Skeel - урон в ближнем бою
Charge Bonus - сила натиска
Defense Skill - защита
unknown - ?
unknown - индекс рукопашной анимации
unknown - ?
Drill Set - индекс начисления опыта(по родам войск)
Training - степень способности к начислению опыта
Morale - мораль юнита
unknown - ?
File Spacing - интервал построения?(возможно отвечает за расстояние между юнитами в отряде)
Rank Spacing - расстояние между шеренгами
unused - ? (дословно неиспользованный)
unused - ? (дословно неиспользованный)
unknown - ?
unknown - ?
unknown - ?
unknown - ?
Как менять основные характеристики путем изменения цифровых значений думаю визуально понятно и уже расписано более подробно в паралельных ветках посему перейдем к способностям отрядов. Чтобы не вносить путаницу начну их перечисление с конца таблицы :

Часть II.

Способности :
Can Shoot While Moving - может вести огонь в движении
Can Use Pike Square - Может строится в порядок "каре пикинеров"
Can Use Pike Wall - Может использовать прием "стена пик"
unknown - неизвестный
Cold Resistant - устойчив к морозу
Heat Resistant - устойчив к жаре
Use Grappling Hooks - может использовать "кошки" при осаде
Good Stamina - Хорошая стойкость
Inspires Allies - Вдохновляет союзников
Scares Enemies - Пугает врагов
Scares Horses - Пугает лошадей
unknown - неизвестный
Morale Shock Resistant - Моральная стойкость к шоку
Garrison Police Bonus - Гарнизонный бонус
Paths Seldom Trod - Неплотное построение
unknown - неизвестный
unknown - неизвестный
unknown - неизвестный
Can Fire from Horseback - Может стрелять верхом
unknown - неизвестный
Can Hide when Walking - Может скрываться в движении 
Can Hide in Buildings - Может заходить в здания
Can Hide in Long Grass - Может скрываться в высокой траве
Can Hide in Light Scrub - Может скрываться в редком кустарнике
Can Hide in Woodlands - Может прятаться в лесу
Can Rally Comrades - Может вдохновить товарищей
Is Slow Moving - Медленное перемещение
unknown - неизвестный
Can Dismount - Может оседлать/спешиваться (кавалерия)
Can Guard - Может охранять
Can Skirmish - Может отстреливаться отступая
Can Throw Grenades - Может метать гранаты

True - включить/активна, False - отключить/неактивна
Думаю эти списки помогут вам разобраться как добавить/убрать тому или иному юниту более подходящие, на ваш взгляд, черты.

 

Подпункт db/unit_to_unit_abilities_junctions_tables/unit_to_unit_abilities_junctions в patch.pack

Столбик Unit Ability IDRef - способность, Unit IDRef - юнит к которому данная способность относится :


  • chevaux de frise - доступно ограждение "паук" (бревно с шипами)
  • diamond_formation - формирование "ромб"
  • earthworks - я так понимаю при наличии даного юнита в стеке формация получит допукрепления (при стоянии на одном месте(страткарта))
  • fire and advance - может вести огонь на марше (спецвозможность появляющияся при изучении определенной технологии)
  • fire volley - может вести залповый огонь
  • fire_mounted - шквальный (усиленый) огонь
  • fougasse basic - стандартные разрывные пули
  • ougasse improved - улучшеные разрывные пули
  • gabionade - спецспособность артиллерии
  • improved platoon fire grouped - повзводная стрельба
  • light infantry behaviour - тактика легкой пехоты
  • pike square formation - формация "каре" пик
  • pike wall formation - формация стены пик
  • latoon fire grouped - концентрированый огонь
  • rank fire - огонь шеренгами
  • square formation - формация "каре"
  • wedge formation - формация "клин"
  • wooden stakes - доступны деревяные колья

 

 

Автор : Reitar-13