Передача армии от одного государства к другому
Туториал камрада
Barmalei-Nukleid
Прежде чем передавать армию от одного владельца к другому, необходимо просчитать армию нового хозяина. Это необходимо по одной простой причине полки имеют свою определенную нумерацию.
Подразделения ополчения имеют свою нумерацию,
To view the link Register
Как видно на скине в правой части у нас прописано
unit_regiment_names_localisation_lookup_unit_name_euro_infantry_units_218, не надо понимать буквально что полк имеет номер 218, это просто его обозначение в игре
Конные полки и конное ополчения имеют свою нумерацию(общая),
To view the link Register
unit_regiment_names_localisation_lookup_unit_name_euro_cavalry_units_002-в данном случае у нас будет второй конный полк
Легкая пехота имеет свою нумерацию,
To view the link Register
unit_regiment_names_localisation_lookup_unit_name_euro_light_foot_001-тут аналогично первый полк легкой пехоты
линейная пехота свою нумерацию(прошу учесть такую маленькую деталь, что линейной пехотой в игре являются не только юниты с названием линейная пехота, но и ряд других юнитов, как пример казаки у России являются юнитами линейной пехоты),
To view the link Register
unit_regiment_names_localisation_lookup_unit_name_euro_infantry_units_001-тут первый полк линейной пехоты
полки пикинеров и батареи полупушек нумерации не имеют.
To view the link Register
unit_regiment_names_localisation_lookup_unit_name_euro_artillery_units_fixed_001
-артиллерия
unit_regiment_names_localisation_lookup_unit_name_euro_infantry_units_161-пикинеры
В данном случае fixed_001 и units_161 ни какого отношения к номерам полков не имеют. Это обозначение в игре
Для каждой категории юнитов своя отдельная нумерация. Таким образом необходимо сосчитать число подразделений по категориям, что бы при прописке новой армии, новым полкам присвоить правильные номера, а у государства у которого отняли армию необходимо тоже потом исправить номера полков, соответственно уменьшить на то количество какое было передано. Данный способ гораздо проще чем ползать в стартпосте по всем армиям фракции и считать юнитсов, легко можно перепутать милицию(конницу и пехоту) и линпехов с легкой пехотой. Помимо этого необходимо запомнить ФИО
General или
colonel(
admiral или
captain ), по одной причине так проще его найти в стартпосте в
CHARACTER_ARRAY\ CHARACTER, но об этом чуть позже
После того как сделано описанное выше, запускаем программу
EsfEditor1.4.3, у кого ее нет качаем тут :
To view the link Register, и открываем этой прогой файл
startpos.esf(путь к нему следующий
Empire Total War\data\campaigns\main).
To view the link Register
To view the link Register
Далее в проге переходим по пути
\startpos.esf\CAMPAIGN_STARTOPS\ CAMPAIGN_ENV\ CAMPAIGN_MODEL\ WORLD\FACTION_ARRAY\ FACTION_ARRAY\ FACTION
To view the link Register
То есть в списке
FACTION_ARRAY мы ищем ту фракцию у которой армия(флот) отбирается. На скине видно что данный пункт
FACTION отвечает за
New Spain. Когда будет найдена требуемая фракция , дальнейший переход будет следующий
FACTION \ CHARACTER_ARRAY \ CHARACTER_ARRAY\ CHARACTER\CAMPAING_LOCALISATION(обратите внимание что их три, интересуют только первые два пункта, в первом имя, в втором фамилия)
To view the link Register
То есть перебираем по очереди все вкладки
CHARACTER_ARRAY\ CHARACTER\CAMPAING_LOCALISATION пока не найдем требуемого командира. После того как определились . Нам необходимо скопировать этого командира(
CHARACTER_ARRAY) через функцию копирование.
To view the link Register
А затем вставить скопированный пункт
CHARACTER_ARRAY той фракции которой передается армия, через функцию паста в пункт
FACTION \ CHARACTER_ARRAY(вставленный пункт
CHARACTER_ARRAY будет зеленого цвета и будет первым в общем списке характеров)
To view the link Register
Теперь необходимо вернуться к фракции донору и удалить скопированный ранее нами пункт
CHARACTER_ARRAY, через функцию делета(удаляемый пункт станнит красного цвета)
To view the link Register
Теперь сохраним произведенные изменения.
To view the link Register
После сохранения открываем опять скопированный нами ранее
CHARACTER_ARRAY. Теперь необходимо отредактировать командира в рамках той фракции, которой передали. Нам необходимо в пункте
CHARACTER_ARRAY\ CHARACTER \ CHARACTER_DETAILS в третьей строке столбца Value изменить название фракции, то есть прописать новую фракцию
To view the link Register
Теперь вносим изменение в прописку имени командира
CHARACTER_ARRAY\ CHARACTER \ CHARACTER_DETAILS \CAMPAIGN_LOCALISATION(в обоих пунктах)
То есть в обоих пунктах
CAMPAIGN_LOCALISATION необходимо исправить
names_name_names_spanish..... к примеру на
names_name_names_ottoman?. меняем имя фракции.
To view the link Register
Но если передаем к примеру России(да и не только к примеру Австрия тоже отличие есть) то необходимо исправить не страну командира в пункте
CHARACTER_ARRAY\ CHARACTER \ CHARACTER_DETAILS \CAMPAIGN_LOCALISATION(в обоих пунктах).
Таким образом в пункте
CHARACTER_ARRAY\ CHARACTER \ CHARACTER_DETAILS \CAMPAIGN_LOCALISATION у европейского командира прописано names_name_names_spanish?, то для России необходимо прописать
names_name_names_slavonic_general?.. Это копируется с любого характеса в пункте
FACTION отвечающего за Россию.
To view the link Register
НО это еще не все если к примеру мы будем передавать османам армию, то необходимо еще одно действие в пункте в пункте
CHARACTER_ARRAY\ CHARACTER \ CHARACTER_DETAILS \CAMPAIGN_LOCALISATION нам необходимо внести следующие изменение сменить строку
agent_culture_details_onscreen_name_Generaleuropean на
agent_culture_details_onscreen_name_Generalmiddle_east.
To view the link Register
То есть чтобы не было ошибки лучше открыть у фракции которой передаем еще одного командира в характес, для справочной информации.
Теперь опять сохраняем внесенные изменения.
После сохранения редактируем саму армию, которой командует переданный ранее нами командир. На смене нумерации полков я повторяться не буду, думаю и так все понятно с этим.
Возвращаемся к фракции у которой вырезали командира и переходим к пункту
ARMY_ARRAY, он находится чуть ниже
CHARACTER_ARRAY.
To view the link Register
Необходимо найти армию которой командует вырезанный ранее нами командир, тут три варианта, зная какие юнитсы входят в армию можно тупа перебирать все армии и вычислять требуемый состав , тип юнита прописан в пункте
ARMY_ARRAY\ ARMY_ARRAY\ ARMY\UNITS_ARRAY\ UNITS_ARRAY\LAND_UNIT\LAND_RECORD_KEY
To view the link Register
Этот способ хорош когда армия по составу специфическая, но в игре много армий в составе которых полупушки и пикинеры, тут этот вариант не катит, тут другой способ, через имя командира в списке
ARMY_ARRAY\ ARMY_ARRAY\ ARMY\UNITS_ARRAY\ UNITS_ARRAY первый из
UNITS_ARRAY командирский отряд, ФИО командира армии прописано в пункте
ARMY_ARRAY\ ARMY_ARRAY\ ARMY\UNITS_ARRAY\ UNITS_ARRAY\LAND_UNIT\ UNIT\COMMANDER_DETAILS\ CAMPAING_LOCALISATION(в двух пунктах запись плана
names_name_names_polish?.)
To view the link Register
Но я в принципе предпочитаю третий вариант поиска, а первых два варианта использую как проверочные самого себя. Третий вариант это использование ИД генерала(
General ID ). Поэтому вернемся к пункту характерс скопированный ранее нами
CHARACTER_ARRAY\ CHARACTER_ARRAY\ CHARACTER, в пункте
CHARACTER в первой строке столбца
Value прописана девятизначная группа цифр, которая является
General ID.
To view the link Register
Этот ид можно выписать на лист или просто пока не закрывать, возращаемся к фракции донору обратно и переходим по пути
ARMY_ARRAY\ ARMY_ARRAY\ ARMY\MILITARY_FORCE, в этом пункте в второй строке столбца
Value прописан
General ID и начинаем планомерно просматривать каждую армию до совпадения выписанной ранее группой цифр
To view the link Register
Таким образом
General ID обеспечивает взаимосвязь между командиром и его армией. Теперь когда требуемая армия найдена, поступаем с ней как и ранее поступили с
CHARACTER_ARRAY командира, то есть вырезаем у фракции донора и вставляем в
ARMY_ARRAY фракции которой передали командира.
To view the link Register
НЕ забываем после этой манипуляции у фракции донора удалить армию, которую копировали. Теперь сохраняете произведенные изменения.
Далее необходимо исправить принадлежность к фракции командиров каждого полка армии в пункте
ARMY_ARRAY\ ARMY_ARRAY\ ARMY\UNITS_ARRAY\ UNITS_ARRAY\LAND_UNIT\ UNIT\COMMANDER_DETAILS\ CAMPAING_LOCALISATION(в двух пунктах )
To view the link Register
Делается это аналогично тем манипуляциям которые проделывались с командующим армии.
После того как переименуем командиров возможно придется еще и сами полки изменять, причина та же что и с характерс командира, то если у России линейная пехота к примеру называется
euro_line_infantry_russia, то у османов линейная пехота будет обзываться к примеру
east_ethnic_musketmen_isarelys. Таким образом возможен вариант внесения изменений в следующие пункты :
1.ARMY_ARRAY\ ARMY_ARRAY\ ARMY\UNITS_ARRAY\ UNITS_ARRAY\LAND_UNIT\LAND_RECORD_KEY
2.ARMY_ARRAY\ ARMY_ARRAY\ ARMY\UNITS_ARRAY\ UNITS_ARRAY\LAND_UNIT\ UNIT\ UNIT_RECORD_KEY
3.ARMY_ARRAY\ ARMY_ARRAY\ ARMY\UNITS_ARRAY\ UNITS_ARRAY\LAND_UNIT\ UNIT\ CAMPAING_LOCALISATION
To view the link Register
Тут проще всего открыть любую армию у фракции которая получает армию в качестве справочника
По исправлению нумерации полков я говорил в самом начале поэтому заострять внимание на это не буду, но это как раз делается сейчас , как у фракции донора, так и у фракции которая получила армию. Теперь сохраняем все изменения.
Теперь необходимо отправится в тьму таракань, а именно в
CAI_INTERFACE, путь туда следующий
\startpos.esf\CAMPAIGN_STARTOPS\ CAMPAIGN_ENV\ CAMPAIGN_MODEL\ CAI_INTERFACE и далее идем \ CAI_ WORLD\ CAI_ WORLD _ CHARACTER \ в этом пункте лежит список всех характеров в игре виде общего списка
CAI_WORLD_CHARACTER
To view the link Register
Теперь чтоб не открывать весь список, необходимо сузить количество пунктов
CAI_WORLD_CHARACTER в которых будем искать командира армии. Делается это через пункт
CAI_ WORLD _ CHARACTER\OWNED_INDIRECT в нем прописан ИД фракции к которой принадлежит характерс,
To view the link Register
то есть пробегаем через ряд пунктов
CAI_WORLD_CHARACTER проверяем
OWNED_INDIRECT на искомый ид, когда находим вычисляем рядом лежащие характерсы интересующей нас фракции(а именно фракции донора)
Теперь отвлечемся от нашего командира и посмотрим откуда нам взять этот ИД(СА жуки ничего не могли придумать проще, решили мододелам мозг в хлам раздолбать). Для начала вернемся в самое начало и идем по пути
\startpos.esf\CAMPAIGN_STARTOPS\ CAMPAIGN_ENV\ CAMPAIGN_MODEL\ WORLD\FACTION_ARRAY\ FACTION_ARRAY\ FACTION. Спросите почему я сразу это не объяснил, потому что каша в голове бы получилась у начинающих модостроитлей, один раз сделаете своими руками, потом будет все махом получаться,
?тяжело в учении ?легко в бою?. В пункте
FACTION в первой строке столбца
Value прописан интересующий нас ид фракции, тут он прописан виде девятизначного числа.
To view the link Register
Выпишем на лист этот ид и переходим по пути
\startpos.esf\CAMPAIGN_STARTOPS\ CAMPAIGN_ENV\ CAMPAIGN_MODEL\ CAI_INTERFACE и далее идем
\ CAI_ WORLD\ CAI_ WORLD_ FACTIONS\ тут прописан список из пунктов
CAI_ WORLD_ FACTIONS, каждый из которых отвечает за свою фракцию, аналог списка
FACTION_ARRAY только отличие по содержанию. Далее переходим к пункту
CAI_ WORLD_ FACTIONS тут в первой строке столбца
Value прописан четырехзначный ИД фракции
To view the link Register
Аналогичный ИД прописан в ниже находящемся пункте
OWNED_INDIRECT
To view the link Register
Но пока не известно какой именно фракции принадлежит данный пункт
CAI_ WORLD_ FACTIONS, что бы определить нашли ли нужную фракцию или нет необходимо открыть пункт
CAI_ WORLD_ FACTIONS\ CAI_ FACTIONS. В седьмой строке столбца
Value будет прописан девятизначный ид фракции,
To view the link Register
проверяем с ранее выписанным если не совпадает то переходим к следующему пункту
CAI_WORLD_ FACTIONS и опять проверяем. Если ИД-ы совпали то мы нашли требуемую фракцию.
Теперь когда найден требуемый пункт
CAI_WORLD_ FACTIONS выписываем(запоминаем) четырехзначный ИД фракции из пункта OWNED_INDIRECT и возвращаемся к моменту поиска командира армии в
CAI_ WORLD _ CHARACTER по описанной выше методе. Когда определен возможный круг нахождения требуемого характера в
CAI_WORLD_CHARACTER, необходимо опять вернуться к
General ID, он прописан в
CAI_WORLD_CHARACTER в пункте
CAI_CHARACTER, в четвертой строке столбца
Value
To view the link Register
Таким образом пробегаем по всему списку
CAI_WORLD_CHARACTER для определения требуемого пункта, который отвечает за командира. Когда он найден изменяем значение прописанного в
CAI_WORLD _CHARACTER\OWNED_INDIRECT, то есть изменяем ИД фракции донора, на ИД фракции которой передаем.
To view the link Register
Как определить ИД фракции которой передана армия повторяться смысла нет это было только что объяснено на примере вычисления аналогичного ИД фракции донора.
Теперь обратим внимание еще на одно число прописанное в
CAI_WORLD_CHARACTER\CAI_CHARACTER только теперь на значение прописанное в первой строке столбца
Value
To view the link Register
Запомним это четырехзначное значение , оно обеспечивает взаимосвязь командира армии еще с одним пунктом
CAI_INTERFACE это
CAI_WORLD_RESOURSE_MOBILES, тут тоже прописаны командиры(для общего развития помимо этого если мне память не изменяет шпионы и священники тоже тут шкеряться). Переходим по пути
\CAI_INTERFACE \CAI_WORLD\CAI_WORLD_RESOURSE_MOBILES \CAI_ WORLD_RESOURSE_MOBILES. Запомниный только что четырехзначное значение прописано в пункте
CAI_ WORLD _RESOURSE_MOBILES в первой строке столбца
Value
To view the link Register
Таким образом пробегаемся по пунктам
CAI_WORLD_RESOURSE_MOBILES пока ненаходим требуемое значение. Когда находим открываем пункт
CAI_WORLD_RESOURSE_MOBILES и переходим к пункту
OWNED_INDIRECT, тут изменяем значение четырехзначный ИД фракции донора на ИД фракции которой передали армию.
To view the link Register
Сохраняем внесенные изменения. Усё
Теперь совсем немного для общего развития перейдем тут же к пункту
CAI_RESOURSE_MOBILES , интересует нас 10 строка столбца
Value, тут девятизначный ИД
To view the link Register
Это очередной ИД командира , теперь посмотрим нашего командира в
FACTION\CHARACTER_ARRAY\ CHARACTER_ARRAY\CHARACTER этот ИД прописан в третьей строке столбца
Value
To view the link Register
Теперь вернемся к нашей армии
ARMY_ARRAY\ ARMY_ARRAY\ ARMY, в третьей строке столбца
Value прописан идентичный ИД
To view the link Register
Ну и последнее заглянем
ARMY_ARRAY\ARMY_ARRAY\ARMY\MILITARY_FORCE, в третьей строке столбца Value прописан идентичный ИД
To view the link Register
Все вопросы по данному сообщению, задавайте здесь -
To view the link Register
Copyright © ?Империал?