Вопросы по моддингу Crusader Kings 2 - Страница 99 - Моды и моддинг - Strategium.ru Перейти к содержимому
С новым 2025 годом! ×

Вопросы по моддингу Crusader Kings 2

Рекомендованные сообщения

MaslovRG
i
В этой теме задаем вопросы по моддингу Crusader Kings 2.
Изменено пользователем Kassatka
Ссылка на комментарий

Закреплённые сообщения
Kassatka

Создание отряда войск по ходу игры

Товарищи, помогите плыз.

Нужен пример для создания армии по решению. Как писать решения разобрался (на добавление удаление, трейтов), но вот синтаксис добавки армии найти не могу.

В чем проблема? Команда spawn_unit , встречается во всевозможных events и decisions 100500 раз. Так что ищите ее в тексте событий и/или решений и смотрите примеры.

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

Я знаю три варианта использования этой команды.

1. Просто жестко указать в troops количество солдат каждого типа. Например, ивент raise_tribal_units в unit_decisions.txt - при игре за племя создание временной армии в 2500 рыл за 500 престижа.

ТыцНажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

2. Создать армию пропорционально количеству войск своего врага (коэффициент match_character) но не меньше match_min рыл и не больше match_max рыл. Параметры match_min и/или match_max можно не указывать. Пример событие TOG.1202 в adventures_the_old_gods.txt. Для авантюриста создается армия из 6 отрядов, каждый из которых составляет 0.125, 0.1 или 0.075 от суммарного количества войск цели похода. Пример отряда:

ТыцНажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

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

Пример - революция еретиков в провинции. Событие TOG.1020 в rebel_events_the_old_gods.txt. Здесь создается по три отряда равные (scaled_by_biggest_garrison = 1.0) гарнизону, но состав отрядов может быть разный в зависимости от рандома. Например:

ТыцНажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

На что нужно обратить внимание при создании отряда войск.

  • Нужно задать провинцию, в которой возникнет армия province, домашнюю родную провинцию отечество home и владельца-правителя owner, которому эта армия принадлежит.
  • attrition от 0 до 1.0 - начальный боевой дух
  • maintenance_multiplier - коэффициент стоимости содержания войск. Если 0 или не указывать, то деньги на армию не тратятся. И еще есть булевский параметр maintenance - есть содержание вообще или нет.
  • disband_on_peace = yes|no Если указать disband_on_peace = yes, то войска расходятся по домам после заключения мира, т.е исчезают. Можно использовать хитрость - заключить мир, находясь на паузе и сразу же развязать новую войну. Тогда войска у игрока остаются, пока не закончится новая война. ИИ таким читерством никогда не занимается, поэтому у него войска строго одноразовые.
  • earmark - это текстовая локализация того, как называется отряд
  • cannot_inherit = yes - армия не будет наследоваться новым правителем.
  • с помощью параметров reinforces и reinforce_rate_multiplier, так понимаю, можно настроить постепенное восстановление потерь.
  • can_toggle_looting и is_looter - может и будет ли этот отряд грабительским.

Изменено пользователем Kassatka
Ссылка на комментарий

У меня есть религия nhellenic_pagan. Будет ли работать, если я напишу так? Тоесть, смогут ли греческие язычники жениться на римских и на реформированных римских и греческих язычниках?

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Ссылка на комментарий

Можно ли сделать, чтобы глава религии отсутствовал со старта, и его надо назначить решением?

Ссылка на комментарий

русич

Подскажите, в ивентах для орденов прописаны id SoA. Для своего ордена свой нужен какой-то, но какой?

Ссылка на комментарий

Kassatka
У меня есть религия nhellenic_pagan. Будет ли работать, если я напишу так? Тоесть, смогут ли греческие язычники жениться на римских и на реформированных римских и греческих язычниках?

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Прописав так, персонажи религии nhellenic_pagan будут не против жениться самим и женить своих придворных на представителях roman_pagan, nhellenic_pagan_reformed, roman_pagan_reformed. Если же хотите наоборот, чтобы представители roman_pagan, nhellenic_pagan_reformed, roman_pagan_reformed были не против, если брак предлагает им nhellenic_pagan, то нужно еще для каждой из религий roman_pagan, nhellenic_pagan_reformed, roman_pagan_reformed прописать

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Можно ли сделать, чтобы глава религии отсутствовал со старта, и его надо назначить решением?

Вполне можно. Нужно, чтобы от старта титул главы религии был неактивным, потом в решении активировать его командой activate_title и передать его через grant_title подходящему персонажу (например, его можно перед этим создать).

Подскажите, в ивентах для орденов прописаны id SoA. Для своего ордена свой нужен какой-то, но какой?

SoA - это просто неймспейс (namespace) для идентификатора события, иначе говоря префикс.

События могут быть либо с id без неймспейса - от id = 1 до id = 999999 (до 6 цифр макс.), либо с каким-то неймспейсом, например от id = SoA.1 до id = SoA.99999 (до 5 цифр макс.). Событие с id = 200 и событие с id = SoA.200 - это совершенно разные событие. Неймспейсы введены, чтоб пространства имен для разных людей, работающих над разными патчами, ДЛЦ и модами не пересекались друг с другом и не возникало путаницы. Поэтому при написании своего мода очень-очень желательно придумать и использовать свой собственный неймспейс. Я, например, в своих модах использую неймспейс KSS.

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

namespace = SoA

А вот для id персонажей(character) и династий, например, неймспейсы не заложены и приходится при добавлении в игру новых персонажей и/или династий искать какой же диапазон целых чисел не перекрывается с используемыми в игре и модах.

Ссылка на комментарий

Граждане хорошие, те кто разбираются в модинге. Можете выдернуть пару строк из мода CK+ на родительскую лояльность? Что бы ребенок автоматически получал +15 за родителей. Или напишите кто-нибудь, будьте так любезны. А то +5 за династию всем родственникам совсем не то. Все таки ребенок изначально любит своих родителей, а портятся отношения уже в процессе. Есть ведь в игре +50 своему чаду, так почему бы чадо не отвечало хоть толикой взаимности.

Ссылка на комментарий

Yandere-chan
Граждане хорошие, те кто разбираются в модинге. Можете выдернуть пару строк из мода CK+ на родительскую лояльность? Что бы ребенок автоматически получал +15 за родителей. Или напишите кто-нибудь, будьте так любезны. А то +5 за династию всем родственникам совсем не то. Все таки ребенок изначально любит своих родителей, а портятся отношения уже в процессе. Есть ведь в игре +50 своему чаду, так почему бы чадо не отвечало хоть толикой взаимности.

00_opinion_modifiers.txt

Меняйте модификаторы на отношения как хотите.

Ссылка на комментарий

Как сделать, чтобы ивент срабатывал, если авторитет религии меньше 45? Сейчас у меня это выглядит так:

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Ссылка на комментарий

Kassatka
Как сделать, чтобы ивент срабатывал, если авторитет религии меньше 45?

Условие

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Означает проверку авторитет >= 45

Условие

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Означает проверку авторитет < 45

Использование знаков "<" и ">" в коде запрещено. Так писать нельзя:

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Поскольку у вас использовано

OR = {

глава религии в тюрьме

авторитет < 45

}

То при замене на NOT = { religion_authority = 45.0 } событие будет срабатывать в двух случаях - когда глава религии в тюрьме или когда авторитет религии меньше 45. Но если глава религии имеет черту "набожный" то событие никогда не сработает.

Изменено пользователем Kassatka
Ссылка на комментарий

Вольт

Как сделать так, чтобы католики, православные и копты могли меж собой холивариться?

Ссылка на комментарий

Условие

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Означает проверку авторитет >= 45

Условие

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Означает проверку авторитет < 45

Использование знаков "<" и ">" в коде запрещено. Так писать нельзя:

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Поскольку у вас использовано

OR = {

глава религии в тюрьме

авторитет < 45

}

То при замене на NOT = { religion_authority = 45.0 } событие будет срабатывать в двух случаях - когда глава религии в тюрьме или когда авторитет религии меньше 45. Но если глава религии имеет черту "набожный" то событие никогда не сработает.

Не, там если ROOT (т.е. персонаж) не набожный, то ему ивент не выпадет

Как сделать так, чтобы католики, православные и копты могли меж собой холивариться?

В Crusader Kings 2/common/religions/00_religions.txt поменяй

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

на

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

И да, будет ли работать это? Тут в первом варианте должен придворному духовнику даваться титул, а во втором рандомному жрецу.

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Изменено пользователем Lism
Ссылка на комментарий

00_opinion_modifiers.txt

Меняйте модификаторы на отношения как хотите.

Спасибо, неожиданно все просто оказалось.

Ссылка на комментарий

GunganKnight
И да, будет ли работать это? Тут в первом варианте должен придворному духовнику даваться титул, а во втором рандомному жрецу.

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Ссылка на комментарий

Kassatka
Как сделать так, чтобы католики, православные и копты могли меж собой холивариться?

Это все задается в \\common\\cb_types\\00_cb_types.txt

# Holy War CB

religious = { ... }

внутри блока can_use = { ... }:

Тыц старый кодНажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

Разным мусульманам специально разрешено холивариться внутри муслимской группы. Точно также можно разрешить и христианам внутри христианской:

Тыц новый код 1Нажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

А можно поступить еще проще - всем разрешить холивариться внутри своей группы, включая иудейскую и индусскую группу:

Тыц новый код 2Нажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

Аналогичные действия нужно провести в is_valid = { ... }

Тыц старый кодНажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

Для варианта с исламом или христианством

Тыц новый код 1Нажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

Для варианта для всех религиозных групп одинаково заменить весь блок на

Тыц новый код 2Нажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

________________________________________________________________

И да, будет ли работать это? Тут в первом варианте должен придворному духовнику даваться титул, а во втором рандомному жрецу.

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Такое gain_title = ROOT = { job_spiritual } работать не будет. После равно должна быть либо константа, либо переменная, либо фигурные скобки. Второе равно ставить нельзя.

Вот так нужно давать титул придворному духовнику рута:

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Такая

gain_title = create_random_priest = {

колбаса с двойным "равно" тоже работать не будет. Это вам не C++, где можно написать a = b = c или a == b == c .

Вместо этого кода

Неправильный кодНажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]

нужно сначала создать персонажа, потом зайти в него через new_character, потом зайти в титул и отдать титул преву, т.е new_character'у:

Правильный кодНажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

[Cкрыть]
Изменено пользователем Kassatka
Ссылка на комментарий

GunganKnight
Такая колбаса с двойным "равно" тоже работать не будет. Это вам не C++, где можно написать a = b = c или a == b == c .

Вместо этого кода

Неправильный кодНажмите здесь!
  Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

. А то будет у Вас греческий священник - еврей.

Ссылка на комментарий

Kassatka
Добавьте Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

. А то будет у Вас греческий священник - еврей.

Нет необходимости специально это указывать. Если создавать персонажа create_priest ВНУТРИ РУТА, то и религия и культура будут такими, как у рута. Посмотрите самый банальный employment_decisions.txt, где мы нанимаем нового священника, управляющего, полководца или дебютантку. Там такой код:

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

И при этот прибывающие ко двору персонажи нашей религии, а не рандомной.

И еще советую вам использовать для маленьких отрезков кода теги [cоde], а не [cоdebox]. А то слишком много пространства экрана для кода отводится.

Ссылка на комментарий

Белый офицер

Есть ли мод на бессмертие и вечную молодость (к примеру если я стартую в 16 лет даже когда персонажу стукнет тысячелетие (хех) картинка не поменяется?) Желательно что бы это было трейтом и так же была пофикшена возможность выпадения трейтов недееспособный и немощный (шанс на их выпадение 0). Тем не менее этот трейт не должен спасать персонажа от смерти в бою или от удара в спину или яда. Просто хочется поиграть не за Династию, но за персонажа. И им выстроить огромную Империю постепенно раздавая ново завоеванные владения своим сыновьям, внукам, правнукам...

Изменено пользователем Белый офицер
Ссылка на комментарий

Вольт

Как сделать так, чтобы православие могло объявлять крестовые походы?

Ссылка на комментарий

GunganKnight
Нет необходимости специально это указывать. Если создавать персонажа create_priest ВНУТРИ РУТА, то и религия и культура будут такими, как у рута. Посмотрите самый банальный employment_decisions.txt, где мы нанимаем нового священника, управляющего, полководца или дебютантку. Там такой код:

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

И при этот прибывающие ко двору персонажи нашей религии, а не рандомной.

И еще советую вам использовать для маленьких отрезков кода теги [cоde], а не [cоdebox]. А то слишком много пространства экрана для кода отводится.

Я смотрел в решении restore_high_priesthood и там у него прописано

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

. Ну, не знаю.

Ссылка на комментарий

Вольт
В Crusader Kings 2/common/religions/00_religions.txt поменяй

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

на

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

У меня изначально уже было hostile_within_group = true, так что это не сработало и католики с православными всё ещё не могут холивариться

Ссылка на комментарий

Присоединиться к обсуждению

Вы можете оставить комментарий уже сейчас, а зарегистрироваться позже! Если у вас уже есть аккаунт, войдите, чтобы оставить сообщение через него.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Ваша ссылка автоматически преображена.   Отображать как простую ссылку

×   Предыдущее содержимое было восстановлено..   Очистить текст в редакторе

×   You cannot paste images directly. Upload or insert images from URL.

  • Ответы 4,538
  • Создано
  • Последний ответ
  • Просмотры 487639

Лучшие авторы в этой теме

  • El Búho

    312

  • Aurelius36

    262

  • Kassatka

    178

  • Armun

    84

  • e479

    75

  • iamtofik

    75

  • Alana

    73

  • Alariko

    64

  • Антипа

    62

  • Yandere-chan

    54

  • gigant275

    47

  • dorimi

    38

  • Eclairius

    38

  • Zuzuzaza

    34

  • WvWvW

    32

  • Evk

    32

  • White Drake

    31

  • Labes

    31

  • mrPunk

    30

  • Pipiskus

    30

  • Breton

    29

  • KomninAdrian

    28

  • Redononr

    25

  • Dævinius

    25

Лучшие авторы в этой теме

Популярные сообщения

Kassatka

Сделайте в своём моде новый текстовый файлик в common\dynasties\ и создавайте новые династии по образцу \common\dynasties\00_dynasties.txt Используйте такой диапазон номеров, который не используе

Carrachiolla

Я придумал все же. Тупо скопировал все файлы длц и извлек в одну папку. Потом взял папку interface и уже в ней заменил нотепадом во всех файлах все scale = 1.0f на scale = 0.5f. Правда там были не тол

Флавий Аниций

Да ошибаться не страшно. В процессе разработки собственных модов и саб-модов я тоже допускал подобные ошибки. Главное проявить внимательность и вовремя их исправить. Кроме того, следите за файлами дин

Kassatka

Уточните вопрос, не до конца понял. Чтоб на начало игры большое количество титулов принадлежало одному персонажу, нужног редактировать историю всех этих титулов в папке \history\titles\ . Чтоб разреши

Aurelius36

Не печалься! Завтра сделаем. Этот ивент меняет все законы на первородство. Включая титул императора Византии ))  Вот сюда мы добавить пару штрихов и все. Нужно будет исключить самого Императора

rugraver

Камрады, здравствуйте, прошу помощи. При открытии просмотра замка, постройки этого замка не вмещаются в поле, а вместо этого появляется скролл-слайдер справа. Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.  

El Búho

AND = {       religion_group = pagan       trait = sympathy_christendom }

El Búho

@Carrachiolla  defines.lua     ENFORCE_ONE_OF_EACH_HOLDING = 1  Так как файлы ванили лучше вообще никогда не трогать, то в любом моде создаёшь директорию common\defines, в ней файл lua

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу


Copyright © 2008-2024 Strategium.ru Powered by Invision Community

×
×
  • Создать...