Навеяно постами на форуме, типа: "сделал по-аналогии, внес нужные изменения, а оно не работает". Давайте общими усилиями в этой теме раз и навсегда закончим с наёмниками и, чтобы ни у кого больше вопросов не возникало, посмотрим какие изменения там действительно "нужные".
Руководство по созданию наёмников.
Часть первая. Редактирование "landed_titles.txt ".
Часть перваяНажмите здесь!
В игре может быть несколько файлов "landed_titles.txt ". Найдите рабочий файл. Начните его поиск с поиска папки "common". В ней находится папка "landed_titles", а в ней уже сам файл. В зависимости от Вашей конфигурации, оригинальная папка "common" будет находиться в корневом каталоги игры, а добавленные локализацией или сторонними модами - в их папках. Если установлена локализация, то рабочий файл, как правило, будет в ней.
Для начала сохраните оригинальный файл. Можете прямо в каталоге игры создать папку "Back_Up", куда и будете копировать перед редактированием оригинальные игровые файлы. Теперь открывайте файл "landed_titles.txt ". В каком именно месте текста кода Вы расположите своих наёмников не имеет значения (если, конечно, Вы не запихнёте их в чьи-нибудь владения). Поэтому, чтобы потом долго не искать место где именно Вы вносили свои изменения - прокручивайте содержимое в самый конец.
Теперь копируйте вот этот код. Копируйте со всеми значками "#". Объясню почему. Надеюсь, что всем понятно, что программа воспринимает код от начала строки до её конца или пока не упрётся в символ "#". И всё, что находится за ним до конца строки для программы уже не существует. И то, что если значек "#" стоит в начале строки, то из кода исключается вся строка. Поэтому, если начать копировать с "#" и ими же закончить, то как бы не стараться "накосячить", внутри всё-равно будет правильный код (эдакий, так-называемый, "ефрейторский зазор") и даже закрывающая скобка всегда гарантированно будет на своём месте . С другой стороны, когда Вы вносите изменения в оригинальный игровой файл, с такой маркировкой Вы всегда легко найдёте эти изменения и на следующее утро после бессонной ночи (проведённой за составлением кода ), и через три дня, и через месяц, и даже через два года. Особенно, если не поленились и заполнили "маркировку" начала и конца блока кода. Попробуйте, потом сами оцените эти преимущества. Короче говоря - копируйте.
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.
Скопировали? Теперь семь раз проверьте, что находитесь в конце кода файла "landed_titles.txt " ПОСЛЕ ВСЕХ СКОБОК!!! Добавьте пустую строку и вставьте скопированное.
Сохраните файл. Запустите СК2 и начните НОВУЮ (!) игру. Откройте меню наёмников и убедитесь, что в игре появился отряд латгальцев-язычников, возглавляемый капитаном, с названием "d_Velna_Kalpi_band" и пустым значком герба их владения (или названием "Слуги дьявола" и гербом Риги, если уже перенесли в игру файлы из приложения к этому посту). Если всё скопировано правильно в нужный файл, ОНИ НЕ МОГУТ НЕ ПОЯВИТЬСЯ! Появились - возрадуемся и продолжим редактирование, не появились - ищем рабочий файл "landed_titles.txt " в других папках и редактируем уже его.
Убедившись, займёмся приданием наемникам нужного вида.Для этого разберем код по составным частям.
d_Velna_Kalpi_band - уникальный идентификатор (ID) Ваших наёмников. В нём:
- "d_" - влияет на то, чем будет владеть главарь наёмников. Так как владения виртуальные, то это не играет никакой роли (на цену тоже не влияет ). Значения могут быть и "b_" и "c_ " и т.д.. Просто, если подставите "k_" - главарем будет король в короне, "e_" - император. Хотя, есть один плюсик. Если нет желания возиться с гербом владения наёмников - подставьте "b_" и у Вас будет банда "городских" наёмников, зато с каким-нибудь сгенерированным игрой гербом.
- "Velna_Kalpi_band" - само имя "Банды". Вместо "Velna_Kalpi" пишите что хотите, главное латинскими символами (естественно, без "#") и не повторяющееся с другими идентификаторами файла. "_band" в конце можно оставить для наглядности.
color и color2 - цвет пустого герба. Если не хотите возиться с гербом или делать городскую "банду" - поиграйте с циферками. Получите пустой герб, зато Вашего любимого цвета.
capital - номер повинции, где будет располагаться виртуальная столица виртуального владения главаря наёмников. Влияет на дальность зоны найма отряда. К примеру, если столица будет где-нибудь в Финляндии, то в Испании или в Африке в списке найма отряд уже не появится - для него это будет далеко. Как видите из кода, его можно вообще убрать (он закрыт значком "#") - тогда у главаря будет написано, что он находится в неизвестной локации, а отряд будет доступен по всей карте. На реальную провинцию её выбор в качестве виртуальной столицы наемников никак не влияет. Чтобы использовать параметр уберите значок "#" из начала строки.
allow - условия кому (когда) разрешено нанимать банду. Если нанимать могут все и всегда - оставьте без изменения. Если хотите создать условия, то об этом поговорим после второго пробного и успешного запуска Ваших наёмников в игре.
religion - какую религию будет исповедывать главарь наёмников. Будет влиять на его отношение к Вашему правителю. Пропишите нужную.
culture - к какой культуре будет принадлежать главарь. По идее, тоже должно влиять, но не влияет. Пропишите нужную.
mercenary = yes - именно эта штука объясняет игре, что весь этот блок кода создаёт наёмников. Кстати, если эту строчку замените на "holy_order = yes", то вместо наёмников у Вас появится рыцарский орден.
title и foa. "title" - титул, ранг, звание главаря наёмников. "foa" - обращение к главарю (типа "Ваше превосходительство" и т.п.). Это единственные значения в блоке, которые надо прописывать в кавычках. Ванильные для наёмников: Капитан - "CAPTAIN" и "CAPTAIN_FOA", Кондотьер - "CONDOTTIERO" и "CONDOTTIERO_FOA". Ванильные для рыцарского ордена: Гроссмейстер -"GRANDMASTER" и "GRANDMASTER_FOA", Великий магистр - "HOCHMEISTER" и "HOCHMEISTER_FOA", Великий мастер - "GRANDHEADMASTER" и "GRANDHEADMASTER_FOA", Военачальник - "WARCHIEF" и "WARCHIEF_FOA". Если не устраивают имеющиеся - придумайте свои. Не нужна даже локализация - в кавычках можно прописать и русские символы.
landless = yes - НЕ ТРОГАТЬ! Подставите "no" - получите отряд наёмников без главаря. Эта команда говорит игре, что у отряда и его главаря нет реального землевладения (landless - безземельный).
primary = yes - не может иметь дополнительные титулы. Оставьте как есть.
independent = yes - независимый, не может быть вассалом. Оставьте как есть
.
strength_growth_per_century = 1.00 - по идее, должен увеличивать сопротивляемость или силу отряда за столетие. Не смог отследить что меняет этот параметр. У многих ванильных отрядов он просто отсутствует. Буду рад подсказке по этому параметру.
modifier - модификатор состава отряда (сам состав задаётся в файле "static_modifiers.txt "). Пока оставьте то, что есть.
Проверьте то, что Вы изменили, сохраните файл, запустите игру и удостоверьтесь, что все изменения работают. При необходимости исправьте.
Теперь можно приступать к редактированию самого интересного. Параметр "allow". Малейшая ошибка в его условиях и Вы рискуете не увидеть своих наёмников в игре.
Сразу, для самых жадных. Хотите, чтобы наёмники были доступны только Вашей династии - вводите в условия переменную "dynasty = ". Если серьёзно подходили к редактированию, то у Вас, скорее всего, уже есть своя отредактированая династия. А значит, Вам известен её идентификатор. Если нет, тоже - ничего страшного. Откройте блокнотом файл сохранения, сделайте поиск по "player=yes" и найдите в коде её значение. Это будет значение первой переменной "dynasty = " после "player=yes". Теперь, замените "always = yes" на "dynasty = идентификатор" в "allow".
В коде это будет выглядеть примерно так:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.
только вместо "2233322" пропишите идентификатот вашей династии. Всё - отряд смогут нанимать только члены Вашей династи.
Теперь про основные варианты. Их два: все условия работают вместе или каждое из условий разрешает найм.
Первый вариант. В "allow" просто перечисляете необходимые условия. Каждое из них добавит дополнительное ограничение. Т.е. условия будут суммироваться. Размещайте каждое на новой строке. Пример:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.
Это значит, что отряд будет доступен для найма с 1066 года для членов династии с идентификатором "2233322", если они будут христианами.
Второй вариант. В "allow" перечисляете необходимые условия (так же - каждое на новой строке), но уже в рамках орератора "OR = ". В этом случае каждое из условий разрешает найм. Пример:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.
В этом случае отряд смогут нанять члены династии с идентификатором "2233322", а так же все христиане. Это до 1066 года. А после 1066 смогут нанять все.
Можно скомбинировать и эти два варианта. Для этого нужно использовать оператор "AND =". Он плюсует условия так же как и в простом "allow", но разрешает варианты этих комбинаций в "OR = ".
Пример:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.
При данных условиях отряд смогут нанять: 1. христиане с 1066 года, 2. персонажи с треэйтом "викинг", если их престиж больше тысячи. 3. члены династии с идентификатором "2233322".
Экспериментируйте. Ограничения только в Вашей фантазии и правильном использовании оператора "OR=".
Сохраняйтесь, запускайте игру. Моделируйте условия и проверьте, как всё работает.
[Cкрыть]
Часть вторая. Редактирование "static_modifiers.txt ".
Часть втораяНажмите здесь!
Теперь перейдём к редактированию файла "static_modifiers.txt ". Он находится в папке "common". Опять идёте в самый конец кода, вставляете пустую строку и копируете туда этот код:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.
Вставили?
Сразу же заменим "d_Velna_Kalpi_band" на ID Вашего отряда. "_modifier" лучше оставить для наглядности. Всё, ID Вашего модификатора готов.
Теперь давайте разбираться чего мы можем добиться редактированием этого файла.
Наёмники характеризуются тремя показателями:
1. Стоимостью найма отряда.
2. Стоимостью месячного содержания отряда.
3. Составом отряда.
Все эти параметры как раз и задаются здесь. Разберем на запчасти остальную часть кода. Он состоит из параметра "levy_size" и перечня родов войск, составляющих отряд. "levy_size" - это, пожалуй, здесь самый хитрый параметр и о нем мы поговорим отдельно. А пока рассмотрим оставшийся код. Он представляет собой те войска, которые могут быть включены в наш отряд. Для каждого из них прописывается численность: род войск = число солдат. Значек "#" в начале строки исключает данный род войск из отряда.
От выбора рода войск будет зависить плата за ежемесячное содержание отряда. Если вы не редактировали базовую стоимость в файле "defines.lua", то стоимость содержания войск будет следующая:
light_infantry - легкая пехота, содержание 0.25 золотых за сотню (базовое 1).
heavy_infantry - тяжелая пехота, содержание 0.50 золотых за сотню (базовое 2).
pikemen - пикемены, содержание 0.50 золотых за сотню (базовое 2).
light_cavalry - кавалерия, содержание 0.50 золотых за сотню (базовое 2).
knights - рыцари, содержание 1.00 золотой за сотню (базовое 4).
archers - лучники, содержание 0.25 золотых за сотню (базовое 1).
horse_archers - конные лучники, содержание 0.50 золотых за сотню (базовое 2).
galleys - галлеры, содержание 75 золотых за сотню (базовое 300). Вот с ними есть небольшой нюанс. Не знаю что это - глюк программы или только моей версии, но реальное содержание обойдётся Вам в 10 раз дешевле, чем указывается в меню найма. Если у Вас есть такой же глюк, то имейте его в виду, потому что в меню наемников он так же будет искажать реальную стоимость месячного содержания дефолтных наемников с флотом.
Теперь о численности войск. ВНИМАНИЕ! Числа, которые Вы пропишите родам войск, будут БАЗОВЫМИ. Это значит, что в меню найма численность отряда будет совсем другой. Почему? Пришла пора переходить к разбору хитрого параметра "levy_size".
"Levy" переводится как "сбор, сумма обложения" или "набор рекрутов". В отношение "levy_size" справедливы оба значения . По своей сути, он является коэффициентом стоимости найма и численности отряда. На стоимость месячного содержания отряда "levy_size" не влияет. Чтобы рассчитать стоимость найма нужно значение "levy_size" умножить на общую заданную Вами базовую численность (БЧ) отряда и результат разделить на 10. А чтобы рассчитать реальную численность отряда нужно базовую численность умножить на "levy_size" плюс 1. Более наглядно:
Стоимость найма = "levy_size" х БЧ / 10
Численность отряда = БЧ х ("levy_size" + 1)
И вот здесь начинаются интересные варианты.
Мы можем получить отряд численностью 1000 единиц, изменяя значение "levy_size":
= 1 (наиболее популярное значение). Базовая численность будет 500, стимость найма, соответственно, 50 золотых.
= 3. Базовая численность - 250, стоимость найма 75 золотых.
= 4. Базовая численность - 200, стоимость найма 80 золотых.
= 9. Базовая численность - 100, стоимость найма 90 золотых.
А результат одини и тот же - отряд, численностью 1000 единиц.
Принцип ясен. Теперь понятно, что в нашем модификаторе задан отряд, состоящий из лёгкой пехоты (остальные войска закрыты символом "#") численностью 1000 единиц, стоимость найма которого будет 50 золотых, а содержание - 2,50 в месяц.
Дальше - больше.
Значение "levy_size":
= 0. Численность отряда будет равна базовой численности, отряд достанется Вам даром!
= - 0.9. Сделайте базовую численность 10000 - получите ту же 1000 боевых единиц, но при найме наёмники заплатят Вам 900 золотых. Но, это уже читерство
= - 1 и больше в минус. Базовая численность не имеет значения, в отряде солдат всё равно не будет. При найме получите деньги, но несуществующий отряд распустить уже не сможете.
Вот, пожалуй, и всё про "levy_size". Подсчитывайте цены, прописывайте базовую численность родов войск, открывайте/закрывайте строки значком "#", выбирайте значение "levy_size".
Сохраните "static_modifiers.txt "и пропишите созданный модификатор в "landed_titles.txt ". Запускайте игру и вперёд - на проверку изменений.
[Cкрыть]
Завершение работы.
ЗавершениеНажмите здесь!
Убедившись, что всё работает так, как Вам хочется, добавьте последние штрихи.
Если ещё не сделали, то создайте свой файл локализации. Для этого выберите любую из имеющихся таблиц локализации, очистите содержимое, НО! Оставьте названия столбцов (1-я строчка). Сохраните под новым именем в той же папке. Формат тот же - .csv . Не обращайте внимание на предупреждения о несовместимых с форматом возможностях, жмите "Да".
В таблице нас интересуют два столбца:
#CODE - здесь пропишите ID созданного отряда. В дальнейшем можете вносить в этот столбец всё, что в результате Вашей деятельности потребуется внятно прописать в игре или перевести: названия трэйта, эвента, сообщения и т.п.
ENGLISH - здесь вписывайте перевод или просто отредактированное название. Именно значение этой ячейки будет появляться в игре вместо того, что указано в "#CODE".
И последнее. Лучше не поленитесь и сделайте своему отряду герб владений. Если, вдруг, при создании отряда у него уже будет какой-то герб (кроме случая, когда Вы создали "городскую банду" с присвоенным игрой гербом или использовали файлы приложения) особо не радуйтесь. Скорее всего где-то перемешались гербы провинций. Если ещё нет, то Вы рискуете получить это перемешивание в любой момент. Поэтому подготовьте картинку герба владений Ваших наёмников любым удобным для вас способом. Она должна быть размером 128х128 пикселей и иметь разрешение -.tga. Сохраните её под именем созднанного отряда (в нашем примере это d_Velna_Kalpi_band.tga) в папке \Crusader Kings 2\gfx\flags.
Всё. Примите поздравления. Ваш отряд полностью готов к экспдуатации.
P.S.
Для ускорения старта работы добавлено приложение. О плюшках в нём.
1. Файл "Mercenary_BLOCK.txt". Шаблон для создания нового отряда. Он сделан для редактирования сразу обоих кодов для файлов "landed_titles.txt" и "static_modifiers.txt ". Если будете вставлять код для проверки подключения наёмников без своего модификатора, обязательно пропишите любой уже готовый.
2. Мод "TEMP_Mercenary". Добавит уже размещённые по нужным папкам файлы для кодов из этого поста:
- "TEMP_localization.csv" - локализация с названием отряда
- "d_Velna_Kalpi_band.tga" - герб владений наемников.
Удачи!
[Cкрыть]
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.
Опубликовано
WvWvW,
Закреплено
Strаtegium
1
Присоединиться к обсуждению
Вы можете оставить комментарий уже сейчас, а зарегистрироваться позже!
Если у вас уже есть аккаунт, войдите, чтобы оставить сообщение через него.
Рекомендованные сообщения
Навеяно постами на форуме, типа: "сделал по-аналогии, внес нужные изменения, а оно не работает". Давайте общими усилиями в этой теме раз и навсегда закончим с наёмниками и, чтобы ни у кого больше вопросов не возникало, посмотрим какие изменения там действительно "нужные".
Руководство по созданию наёмников.
Часть первая. Редактирование "landed_titles.txt ".
В игре может быть несколько файлов "landed_titles.txt ". Найдите рабочий файл. Начните его поиск с поиска папки "common". В ней находится папка "landed_titles", а в ней уже сам файл. В зависимости от Вашей конфигурации, оригинальная папка "common" будет находиться в корневом каталоги игры, а добавленные локализацией или сторонними модами - в их папках. Если установлена локализация, то рабочий файл, как правило, будет в ней.
Для начала сохраните оригинальный файл. Можете прямо в каталоге игры создать папку "Back_Up", куда и будете копировать перед редактированием оригинальные игровые файлы. Теперь открывайте файл "landed_titles.txt ". В каком именно месте текста кода Вы расположите своих наёмников не имеет значения (если, конечно, Вы не запихнёте их в чьи-нибудь владения). Поэтому, чтобы потом долго не искать место где именно Вы вносили свои изменения - прокручивайте содержимое в самый конец.
Теперь копируйте вот этот код. Копируйте со всеми значками "#". Объясню почему. Надеюсь, что всем понятно, что программа воспринимает код от начала строки до её конца или пока не упрётся в символ "#". И всё, что находится за ним до конца строки для программы уже не существует. И то, что если значек "#" стоит в начале строки, то из кода исключается вся строка. Поэтому, если начать копировать с "#" и ими же закончить, то как бы не стараться "накосячить", внутри всё-равно будет правильный код (эдакий, так-называемый, "ефрейторский зазор") и даже закрывающая скобка всегда гарантированно будет на своём месте
. С другой стороны, когда Вы вносите изменения в оригинальный игровой файл, с такой маркировкой Вы всегда легко найдёте эти изменения и на следующее утро после бессонной ночи (проведённой за составлением кода
), и через три дня, и через месяц, и даже через два года. Особенно, если не поленились и заполнили "маркировку" начала и конца блока кода. Попробуйте, потом сами оцените эти преимущества. Короче говоря - копируйте.
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.Скопировали? Теперь семь раз проверьте, что находитесь в конце кода файла "landed_titles.txt " ПОСЛЕ ВСЕХ СКОБОК!!! Добавьте пустую строку и вставьте скопированное.
Сохраните файл. Запустите СК2 и начните НОВУЮ (!) игру. Откройте меню наёмников и убедитесь, что в игре появился отряд латгальцев-язычников, возглавляемый капитаном, с названием "d_Velna_Kalpi_band" и пустым значком герба их владения (или названием "Слуги дьявола" и гербом Риги, если уже перенесли в игру файлы из приложения к этому посту). Если всё скопировано правильно в нужный файл, ОНИ НЕ МОГУТ НЕ ПОЯВИТЬСЯ! Появились - возрадуемся и продолжим редактирование, не появились - ищем рабочий файл "landed_titles.txt " в других папках и редактируем уже его.
Убедившись, займёмся приданием наемникам нужного вида.Для этого разберем код по составным частям.
d_Velna_Kalpi_band - уникальный идентификатор (ID) Ваших наёмников. В нём:
- "d_" - влияет на то, чем будет владеть главарь наёмников. Так как владения виртуальные, то это не играет никакой роли (на цену тоже не влияет
). Значения могут быть и "b_" и "c_ " и т.д.. Просто, если подставите "k_" - главарем будет король в короне, "e_" - император. Хотя, есть один плюсик. Если нет желания возиться с гербом владения наёмников - подставьте "b_" и у Вас будет банда "городских" наёмников, зато с каким-нибудь сгенерированным игрой гербом.
- "Velna_Kalpi_band" - само имя "Банды". Вместо "Velna_Kalpi" пишите что хотите, главное латинскими символами (естественно, без "#") и не повторяющееся с другими идентификаторами файла. "_band" в конце можно оставить для наглядности.
color и color2 - цвет пустого герба. Если не хотите возиться с гербом или делать городскую "банду" - поиграйте с циферками. Получите пустой герб, зато Вашего любимого цвета.
capital - номер повинции, где будет располагаться виртуальная столица виртуального владения главаря наёмников. Влияет на дальность зоны найма отряда. К примеру, если столица будет где-нибудь в Финляндии, то в Испании или в Африке в списке найма отряд уже не появится - для него это будет далеко. Как видите из кода, его можно вообще убрать (он закрыт значком "#") - тогда у главаря будет написано, что он находится в неизвестной локации, а отряд будет доступен по всей карте. На реальную провинцию её выбор в качестве виртуальной столицы наемников никак не влияет. Чтобы использовать параметр уберите значок "#" из начала строки.
allow - условия кому (когда) разрешено нанимать банду. Если нанимать могут все и всегда - оставьте без изменения. Если хотите создать условия, то об этом поговорим после второго пробного и успешного запуска Ваших наёмников в игре.
religion - какую религию будет исповедывать главарь наёмников. Будет влиять на его отношение к Вашему правителю. Пропишите нужную.
culture - к какой культуре будет принадлежать главарь. По идее, тоже должно влиять, но не влияет. Пропишите нужную.
mercenary = yes - именно эта штука объясняет игре, что весь этот блок кода создаёт наёмников. Кстати, если эту строчку замените на "holy_order = yes", то вместо наёмников у Вас появится рыцарский орден.
title и foa. "title" - титул, ранг, звание главаря наёмников. "foa" - обращение к главарю (типа "Ваше превосходительство" и т.п.). Это единственные значения в блоке, которые надо прописывать в кавычках. Ванильные для наёмников: Капитан - "CAPTAIN" и "CAPTAIN_FOA", Кондотьер - "CONDOTTIERO" и "CONDOTTIERO_FOA". Ванильные для рыцарского ордена: Гроссмейстер -"GRANDMASTER" и "GRANDMASTER_FOA", Великий магистр - "HOCHMEISTER" и "HOCHMEISTER_FOA", Великий мастер - "GRANDHEADMASTER" и "GRANDHEADMASTER_FOA", Военачальник - "WARCHIEF" и "WARCHIEF_FOA". Если не устраивают имеющиеся - придумайте свои. Не нужна даже локализация - в кавычках можно прописать и русские символы.
landless = yes - НЕ ТРОГАТЬ! Подставите "no" - получите отряд наёмников без главаря. Эта команда говорит игре, что у отряда и его главаря нет реального землевладения (landless - безземельный).
primary = yes - не может иметь дополнительные титулы. Оставьте как есть.
independent = yes - независимый, не может быть вассалом. Оставьте как есть
.
strength_growth_per_century = 1.00 - по идее, должен увеличивать сопротивляемость или силу отряда за столетие. Не смог отследить что меняет этот параметр. У многих ванильных отрядов он просто отсутствует. Буду рад подсказке по этому параметру.
modifier - модификатор состава отряда (сам состав задаётся в файле "static_modifiers.txt "). Пока оставьте то, что есть.
Проверьте то, что Вы изменили, сохраните файл, запустите игру и удостоверьтесь, что все изменения работают. При необходимости исправьте.
Теперь можно приступать к редактированию самого интересного. Параметр "allow". Малейшая ошибка в его условиях и Вы рискуете не увидеть своих наёмников в игре.
Сразу, для самых жадных. Хотите, чтобы наёмники были доступны только Вашей династии - вводите в условия переменную "dynasty = ". Если серьёзно подходили к редактированию, то у Вас, скорее всего, уже есть своя отредактированая династия. А значит, Вам известен её идентификатор. Если нет, тоже - ничего страшного. Откройте блокнотом файл сохранения, сделайте поиск по "player=yes" и найдите в коде её значение. Это будет значение первой переменной "dynasty = " после "player=yes". Теперь, замените "always = yes" на "dynasty = идентификатор" в "allow".
В коде это будет выглядеть примерно так:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.только вместо "2233322" пропишите идентификатот вашей династии. Всё - отряд смогут нанимать только члены Вашей династи.
Теперь про основные варианты. Их два: все условия работают вместе или каждое из условий разрешает найм.
Первый вариант. В "allow" просто перечисляете необходимые условия. Каждое из них добавит дополнительное ограничение. Т.е. условия будут суммироваться. Размещайте каждое на новой строке. Пример:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.Это значит, что отряд будет доступен для найма с 1066 года для членов династии с идентификатором "2233322", если они будут христианами.
Второй вариант. В "allow" перечисляете необходимые условия (так же - каждое на новой строке), но уже в рамках орератора "OR = ". В этом случае каждое из условий разрешает найм. Пример:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.В этом случае отряд смогут нанять члены династии с идентификатором "2233322", а так же все христиане. Это до 1066 года. А после 1066 смогут нанять все.
Можно скомбинировать и эти два варианта. Для этого нужно использовать оператор "AND =". Он плюсует условия так же как и в простом "allow", но разрешает варианты этих комбинаций в "OR = ".
Пример:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.При данных условиях отряд смогут нанять: 1. христиане с 1066 года, 2. персонажи с треэйтом "викинг", если их престиж больше тысячи. 3. члены династии с идентификатором "2233322".
Экспериментируйте. Ограничения только в Вашей фантазии и правильном использовании оператора "OR=".
Сохраняйтесь, запускайте игру. Моделируйте условия и проверьте, как всё работает.
[Cкрыть]Часть вторая. Редактирование "static_modifiers.txt ".
Теперь перейдём к редактированию файла "static_modifiers.txt ". Он находится в папке "common". Опять идёте в самый конец кода, вставляете пустую строку и копируете туда этот код:
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.Вставили?
Сразу же заменим "d_Velna_Kalpi_band" на ID Вашего отряда. "_modifier" лучше оставить для наглядности. Всё, ID Вашего модификатора готов.
Теперь давайте разбираться чего мы можем добиться редактированием этого файла.
Наёмники характеризуются тремя показателями:
1. Стоимостью найма отряда.
2. Стоимостью месячного содержания отряда.
3. Составом отряда.
Все эти параметры как раз и задаются здесь. Разберем на запчасти остальную часть кода. Он состоит из параметра "levy_size" и перечня родов войск, составляющих отряд. "levy_size" - это, пожалуй, здесь самый хитрый параметр и о нем мы поговорим отдельно. А пока рассмотрим оставшийся код. Он представляет собой те войска, которые могут быть включены в наш отряд. Для каждого из них прописывается численность: род войск = число солдат. Значек "#" в начале строки исключает данный род войск из отряда.
От выбора рода войск будет зависить плата за ежемесячное содержание отряда. Если вы не редактировали базовую стоимость в файле "defines.lua", то стоимость содержания войск будет следующая:
light_infantry - легкая пехота, содержание 0.25 золотых за сотню (базовое 1).
heavy_infantry - тяжелая пехота, содержание 0.50 золотых за сотню (базовое 2).
pikemen - пикемены, содержание 0.50 золотых за сотню (базовое 2).
light_cavalry - кавалерия, содержание 0.50 золотых за сотню (базовое 2).
knights - рыцари, содержание 1.00 золотой за сотню (базовое 4).
archers - лучники, содержание 0.25 золотых за сотню (базовое 1).
horse_archers - конные лучники, содержание 0.50 золотых за сотню (базовое 2).
galleys - галлеры, содержание 75 золотых за сотню (базовое 300). Вот с ними есть небольшой нюанс. Не знаю что это - глюк программы или только моей версии, но реальное содержание обойдётся Вам в 10 раз дешевле, чем указывается в меню найма. Если у Вас есть такой же глюк, то имейте его в виду, потому что в меню наемников он так же будет искажать реальную стоимость месячного содержания дефолтных наемников с флотом.
Теперь о численности войск. ВНИМАНИЕ! Числа, которые Вы пропишите родам войск, будут БАЗОВЫМИ. Это значит, что в меню найма численность отряда будет совсем другой. Почему? Пришла пора переходить к разбору хитрого параметра "levy_size".
"Levy" переводится как "сбор, сумма обложения" или "набор рекрутов". В отношение "levy_size" справедливы оба значения . По своей сути, он является коэффициентом стоимости найма и численности отряда. На стоимость месячного содержания отряда "levy_size" не влияет. Чтобы рассчитать стоимость найма нужно значение "levy_size" умножить на общую заданную Вами базовую численность (БЧ) отряда и результат разделить на 10. А чтобы рассчитать реальную численность отряда нужно базовую численность умножить на "levy_size" плюс 1. Более наглядно:
Стоимость найма = "levy_size" х БЧ / 10
Численность отряда = БЧ х ("levy_size" + 1)
И вот здесь начинаются интересные варианты.
Мы можем получить отряд численностью 1000 единиц, изменяя значение "levy_size":
= 1 (наиболее популярное значение). Базовая численность будет 500, стимость найма, соответственно, 50 золотых.
= 3. Базовая численность - 250, стоимость найма 75 золотых.
= 4. Базовая численность - 200, стоимость найма 80 золотых.
= 9. Базовая численность - 100, стоимость найма 90 золотых.
А результат одини и тот же - отряд, численностью 1000 единиц.
Принцип ясен. Теперь понятно, что в нашем модификаторе задан отряд, состоящий из лёгкой пехоты (остальные войска закрыты символом "#") численностью 1000 единиц, стоимость найма которого будет 50 золотых, а содержание - 2,50 в месяц.
Дальше - больше.
Значение "levy_size":
= 0. Численность отряда будет равна базовой численности, отряд достанется Вам даром!
= - 0.9. Сделайте базовую численность 10000 - получите ту же 1000 боевых единиц, но при найме наёмники заплатят Вам 900 золотых. Но, это уже читерство
= - 1 и больше в минус. Базовая численность не имеет значения, в отряде солдат всё равно не будет. При найме получите деньги, но несуществующий отряд распустить уже не сможете.
Вот, пожалуй, и всё про "levy_size". Подсчитывайте цены, прописывайте базовую численность родов войск, открывайте/закрывайте строки значком "#", выбирайте значение "levy_size".
Сохраните "static_modifiers.txt "и пропишите созданный модификатор в "landed_titles.txt ". Запускайте игру и вперёд - на проверку изменений.
[Cкрыть]Завершение работы.
Убедившись, что всё работает так, как Вам хочется, добавьте последние штрихи.
Если ещё не сделали, то создайте свой файл локализации. Для этого выберите любую из имеющихся таблиц локализации, очистите содержимое, НО! Оставьте названия столбцов (1-я строчка). Сохраните под новым именем в той же папке. Формат тот же - .csv . Не обращайте внимание на предупреждения о несовместимых с форматом возможностях, жмите "Да".
В таблице нас интересуют два столбца:
#CODE - здесь пропишите ID созданного отряда. В дальнейшем можете вносить в этот столбец всё, что в результате Вашей деятельности потребуется внятно прописать в игре или перевести: названия трэйта, эвента, сообщения и т.п.
ENGLISH - здесь вписывайте перевод или просто отредактированное название. Именно значение этой ячейки будет появляться в игре вместо того, что указано в "#CODE".
И последнее. Лучше не поленитесь и сделайте своему отряду герб владений. Если, вдруг, при создании отряда у него уже будет какой-то герб (кроме случая, когда Вы создали "городскую банду" с присвоенным игрой гербом или использовали файлы приложения) особо не радуйтесь. Скорее всего где-то перемешались гербы провинций. Если ещё нет, то Вы рискуете получить это перемешивание в любой момент. Поэтому подготовьте картинку герба владений Ваших наёмников любым удобным для вас способом. Она должна быть размером 128х128 пикселей и иметь разрешение -.tga. Сохраните её под именем созднанного отряда (в нашем примере это d_Velna_Kalpi_band.tga) в папке \Crusader Kings 2\gfx\flags.
Всё. Примите поздравления. Ваш отряд полностью готов к экспдуатации.
P.S.
Для ускорения старта работы добавлено приложение. О плюшках в нём.
1. Файл "Mercenary_BLOCK.txt". Шаблон для создания нового отряда. Он сделан для редактирования сразу обоих кодов для файлов "landed_titles.txt" и "static_modifiers.txt ". Если будете вставлять код для проверки подключения наёмников без своего модификатора, обязательно пропишите любой уже готовый.
2. Мод "TEMP_Mercenary". Добавит уже размещённые по нужным папкам файлы для кодов из этого поста:
- "TEMP_localization.csv" - локализация с названием отряда
- "d_Velna_Kalpi_band.tga" - герб владений наемников.
Удачи!
[Cкрыть]Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.
Опубликовано WvWvW,
Закреплено StrаtegiumПрисоединиться к обсуждению
Вы можете оставить комментарий уже сейчас, а зарегистрироваться позже! Если у вас уже есть аккаунт, войдите, чтобы оставить сообщение через него.