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

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

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

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

Закреплённые сообщения
31 минуту назад, Kassatka сказал:

Фокус в том, что имя файла с картинкой не обязано называться как название решения/трейта, но вот в пути texturefile нужно прописывать точный путь к этому файлу. А вообще да, лучше называть одинаково.

картинка decision_icon_new_decision.dds

решение new_decision = { ... }

Спасибо, чуток с путями поработал и заработало. Иконка объявилась у решения.

 

Мысль появилась, не знаю возможно ли такое реализовать - Безземельные дети например каждый год с каким-то шансом решают ждать им подачки владений от сюзерена или же уйти служить в какой нить орден (в зависимости от религии и т.д.) Например шанс 2% и если он надумал то уходит в орден и становится его вассалом.

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

Shwang_Shwing

Хотелось давно узнать. Есть ли возможность игровое сохранение конвертировать в дату начала игры? Или если быть точнее, можно как нибудь включить редактор персонажа при загрузке сохранки? Можно конечно позаморачиваться и посадить в игре новых вассалов и за них пересесть, и даже в файлах прописать черты, но хотелось бы проще - сделав сейв стартовой датой. Ну и по сетке отыграть данную дату так проще и приятнее. 

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

А как добавлять модификаторы через консоль хотя бы? А по идее лучше через ивенты самописные, а то есть пара мыслей да не знаю с чего начать.

 

И попутно, как проверить создан ли на данный момент игры орден у язычников?

 

Ну и третий вопрос, заметил что АИ отдает владения лишние абыкому(то есть юзает кнопочку выдачи вассалу имения), хотя в наличии куча братьев, дядьев и т.д. реально ли как-то это исправить?

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

Новый вопрос. Ген передающийся по наследству хотелось бы подкорректировать, что бы он не передавался от жены если брак обычный, соответственно если девушка с этим геном, но брак матримониальный то и ген передается. Реализуемо ли?

Сейчас трейт выглядит так:

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

 

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

Kassatka
23 часа назад, Spectr-7 сказал:

Мысль появилась, не знаю возможно ли такое реализовать - Безземельные дети например каждый год с каким-то шансом решают ждать им подачки владений от сюзерена или же уйти служить в какой нить орден (в зависимости от религии и т.д.) Например шанс 2% и если он надумал то уходит в орден и становится его вассалом.

Реализовать-то можно. И не сложно. 2% шанс в год - это в среднем событие выпадает раз в 50 лет или 600 месяцев. Следовательно

mean_time_to_happen = { months = 600 }

Событие только для совершеннолетних мужчин, значит нужны пре-триггеры

only_men = yes

min_age = 16

Ну и этот пре-триггер будет очень полезен

prisoner = no

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

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

 

Hide  

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

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

 

Hide  

Только нафига такая механика? В священном ордене будут толпится сотни разных придворных не у дел.

Можно еще в триггер добавить is_married = no и тогда женатые в орден не пойдут, а только холостые, ведь в ордене вроде даже придворным нельзя жениться и они жен потеряют, если не ошибаюсь. Но это нужно проверять, а мне лень.

 

19 часов назад, Shwang_Shwing сказал:

Хотелось давно узнать. Есть ли возможность игровое сохранение конвертировать в дату начала игры? Или если быть точнее, можно как нибудь включить редактор персонажа при загрузке сохранки? Можно конечно позаморачиваться и посадить в игре новых вассалов и за них пересесть, и даже в файлах прописать черты, но хотелось бы проще - сделав сейв стартовой датой. Ну и по сетке отыграть данную дату так проще и приятнее. 

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

 

17 часов назад, Spectr-7 сказал:

А как добавлять модификаторы через консоль хотя бы?

Ждать выхода патча 2.8 (Нефритовый Дракон). Там как раз вводят консольные команды для добавления и удаления модификаторов. Смотреть патчноут по моддингу под спойлером в сообщении Platon в Дневниках по игре. Там написано про новые консольные команды.

17 часов назад, Spectr-7 сказал:

А по идее лучше через ивенты самописные, а то есть пара мыслей да не знаю с чего начать.

С написания самого простого ивента

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

 

Hide  

 

17 часов назад, Spectr-7 сказал:

И попутно, как проверить создан ли на данный момент игры орден у язычников?

d_xxx_holy_order = { has_holder = yes }

 

15 часов назад, Spectr-7 сказал:

Новый вопрос. Ген передающийся по наследству хотелось бы подкорректировать, что бы он не передавался от жены если брак обычный, соответственно если девушка с этим геном, но брак матримониальный то и ген передается. Реализуемо ли?

реализуемо. Проверить матрилинейный ли брак

is_married_matrilineally = yes

; патрилинейный ли брак

is_married_matrilineally = no

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

Также лучше не просто проверять патри-матрилинейность, а то, женаты ли н-линейно именно мать на отце. Если женаты, то проверяем н-линейность. Если уже на момент рождения не женаты, то просто по наличию трейта и всё.

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

 

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

 

Hide  

.

Больше код писать не буду, только называть методику. Есть на вики conditions commands и scopes, а также event_modding decision_modding и все нужное.

 

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

5 минут назад, Kassatka сказал:

Только нафига такая механика? В священном ордене будут толпится сотни разных придворных не у дел.

Можно еще в триггер добавить is_married = no и тогда женатые в орден не пойдут, а только холостые, ведь в ордене вроде даже придворным нельзя жениться и они жен потеряют, если не ошибаюсь. Но это нужно проверять, а мне лень.

например что бы избавиться от штрафа за безземельных заставлять их уходить в ордены - пущай там пашут и получают титулы если получится

 

7 минут назад, Kassatka сказал:

d_xxx_holy_order = { has_holder = yes }

Спасибо. А вообще где нить есть сборник самых полезных логических операций для модинга?

Еще раз спасибо, буду дальше разбираться.

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

Kassatka
18 минут назад, Spectr-7 сказал:

А вообще где нить есть сборник самых полезных логических операций для модинга?

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

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

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

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

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

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

С чего стоит начать и что иметь всегда под рукой. Там и другие статьи по моддингу есть, но эти самые главные.

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

AND OR NOT NOR NAND calc_true_if

 

PS: @Spectr-7, да и вот это ещё для полного комплекта Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

те модификаторы, к которым галочка в колонке traits юзаются для трейтов, те модификаторы, к которым галочка в колонке Character юзаются для модификаторов персонажа (add_character_modifier), и т.д.

Это общие статьи. Остальные по какому-то конкретному аспекту моддинга, например моддинг религий.

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

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

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

Baron von Baron

Где находятся решения в папках игры? Как их видоизменить? Например, удалить из требований к принятию феодализма пункт об организованном язычестве?

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

47 минут назад, Baron von Baron сказал:

Где находятся решения в папках игры? Как их видоизменить? Например, удалить из требований к принятию феодализма пункт об организованном язычестве?

Папка decisions

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

Это будет рабочий код?

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

Затея в том что бы оккупировать торговый пост у которого в данный момент нет владельца.

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

Kassatka
1 час назад, Spectr-7 сказал:

only_playable = yes

Правильно, все решения, предназначенные только для игрока, а не ИИ нужно так фильтровать. Тогда игра не будет проверять возможность применения решения для других персонажей. А в грядущем патче 2.8 можно будет фильтровать ещё жестче: ai = no

1 час назад, Spectr-7 сказал:

ai_will_do = { factor = 0 }

верно, но

1 час назад, Spectr-7 сказал:

from_potential = { }

вот здесь лучше сделать

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

если ai_will_do = { factor = 0 }, то какой смысл просчитывать решение для ИИ?

1 час назад, Spectr-7 сказал:

ai_target_filter = sub_realm_owned

Это тоже очень полезная строка, хотя если написать from_potential = { ai = no }, то вряд ли игра будет перебирать потенциальные цели. Но это всё лишь оптимизация, переходим к действиям.

 

1 час назад, Spectr-7 сказал:

trade_post_owner = { character = NONE }

В Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. в value type для character написано character/title/int

Не факт, что можно сравнивать с NONE, хотя не искючаю, что можно. Ведь для dynasty прописано character/int , а с NONE сравнивать можно.

Я знаю такое, если в триггере запросить какой-то scope персонажа, в котором ничего нет, то вернется false вне зависимости от условия внутри этого scope. Например, чтоб проверить, есть ли у персонажа отец, достаточно написать

father = { always = yes }

но можно и

father = { is_alive = yes }

Поэтому я предлагаю в potential написать просто

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

 

1 час назад, Spectr-7 сказал:

trade_post_owner = { war = no }

Вот здесь читабельное условие. Проверяем, чтоб не было войны у владельца торгового поста графского титула, по которому делаем клик. Однако оно совсем не вяжется с предыдущим условием в potential. Если наше решение потенциально возможно только для тех графств, у которых нет владельца торгового поста, то как можно вообще у несуществующего владельца что-либо проверять, в том числе наличие войны? trade_post_owner всегда возвратит false и нажать на решение будет нельзя. Вот такое условие прокатит:

NOT = { trade_post_owner = { war = yes } }

но оно всё равно избыточно, так как мы уже определились, что владельца нет. Убираем вообще блок allow, ну или пишем например

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

и решение нельзя будет применить если мы сами в войне.

Да, и ещё нет смысла делать решение для баронских, герцогских и др. титулов, только для графских и земельных.

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

 

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

 

А вот это уже чушь несусветная.

Триггер (условие) character в списке Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. есть. Где, скажите, вы выискали команду (действие) character в списке Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. ? А?

Триггеры(условия) можно использовать только в триггерах, команды(действия) только в эффектах. Да, бывает, что одно и то же слово является и триггером и командой. Например dynasty. Если использовать dynasty = FROM в триггере, то мы сравним династию THIS'а с династией FROM'а, если использовать dynasty = FROM в эффекте, то мы THIS'у присвоим династию FROM'а (добавим персонажа к этой династии). Но это потому, что dynasty есть в ОБОИХ списках (как условие и как команда).

Кроме того, если мы заходим внутрь какого-то scope, то мы уже не имеем отношения к предыдущему scope и можем лишь ссылаться на PREV. Если мы зашли внутрь trade_post_owner'а, до движок уже напрочь "забыл", о том, что текущий персонаж имеет отношение к какому-то торговому посту. Это если бы мы находились в scope торгового поста, то мы могли бы использовать какую-нибудь команду на смену владельца, например, находясь в scope ребенка мы можем выполнить команду set_father = FROM и FROM станет новым официальным отцом ребёнка. Но scope торгового поста нет, есть лишь scope графства или провинции, в которой находится пост. Возникает вопрос, есть ли команда на смену владельца торгового поста? Я логически прикинул, что в тексте команды должна быть фраза trade_post и поискал её поиском на Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. . Нашел буквально за пару секунд:

seize_trade_post  title/province  character

Перевод слова seize  
Переклади слова або виразу "seize"
 
дієслово
 
воспользоваться
take advantage of, make use of, seize, profit, embrace, seize upon
 
схватить
seize, catch, take hold of, grapple, capture, snatch
 
конфисковать
confiscate, seize, impound, sequester, sequestrate, condemn
 
захватывать
grab, capture, seize, grasp, grip, take
 
налагать арест
seize
 
ухватиться
seize, seize upon, clutch, snatch, leap, fasten upon
 
хватать
seize, suffice, snatch, last, claw, pluck at
 
понять
understand, grasp, find out, make out, get at, seize
 
заедать
seize, jam, seize up
 
хапать
seize
 
завладевать
seize, engross, occupy, lay hands on, secure, jump
 
вселяться
move, become implanted, take root, seize, fill, install oneself
 
охватывать
cover, embrace, span, comprise, grasp, seize
 
обдавать
pour over, seize
 
нахватать
pick up, grab, seize
 
найтовить
seize
 
обуять
overcome, seize, obsess, sweep
 
цапать
snatch, grab, seize
 
вводить во владение
seise, seize
 
обуревать
overwhelm, grip, shake, seize
Інші переклади (8)
Hide  
То есть нужно находясь в scope графства или провинции с торговым постом выполнить эту команду и указать после = нового владельца, то есть себя, FROM'а
Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

 

 

15 часов назад, Spectr-7 сказал:

можно ли с помощью консоли передать себе/кому-нибудь торговый пост?

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

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

Спасибо за правки и особенно за комментарии к этим строкам. Подправлю и протестирую сработает ли как мне хочется.

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

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

 

 

Первая часть по уничтожению своей фактории работает (ее не трогал, взял из другого мода), вторая часть - попытка написать код возможность захвата ничейной фактории. Но в первом случае по ПКМ появляется название провинции и ниже кнопочка - уничтожить, а во втором появляется название провинции только, так же как на чужих факториях. Собственно вопрос, может где-то надо эту самую кнопочку прописать? Только не нашел где же именно.

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

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

 

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

3 минуты назад, taoren сказал:

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

 

если просто без заморочек то нажимаем тильду ( ~ ) и пишем allow_laws, нажимаем ENTER и меняем закон на нужный. Но я не помню есть ли у вождества другие законы, если их нет тогда уже надо лазать по файлам и их менять.

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

17 минут назад, Spectr-7 сказал:

если просто без заморочек то нажимаем тильду ( ~ ) и пишем allow_laws, нажимаем ENTER и меняем закон на нужный. Но я не помню есть ли у вождества другие законы, если их нет тогда уже надо лазать по файлам и их менять.

Да, у вождеств нету законов, они появляются после реформирования в феодализм. Помню как то давно, на старых версиях игры менял в файлах игры возможность смены законов престолонаследия, но забыл где. Но меня так же волнует вопрос - как правильно прописать, что бы не затронуло ИИ, я не хочу ломать логику игры полностью.

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

19 минут назад, taoren сказал:

Да, у вождеств нету законов, они появляются после реформирования в феодализм. Помню как то давно, на старых версиях игры менял в файлах игры возможность смены законов престолонаследия, но забыл где. Но меня так же волнует вопрос - как правильно прописать, что бы не затронуло ИИ, я не хочу ломать логику игры полностью.

Меняться это должно тут: .../common/laws/succession_laws.txt

Сейчас гляну, может и подскажу как подправить.

Ну а что бы делать это мог только игрок можно использовать ai = no или only_playable = yes

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

Kassatka
49 минут назад, Spectr-7 сказал:

Собственно вопрос, может где-то надо эту самую кнопочку прописать? Только не нашел где же именно.

Кнопочки для решений нигде прописывать не надо. Если условия from_potential, potential и filter выполняются то кнопочка сама появится с таким текстом локализации, какой прописан для occupy_trade_post в одном из файлов локализации localisation\???.csv и с такой подсказкой, которая там прописана для occupy_trade_post_desc

Кнопка доступна для нажатия, если условия allow выполняются и наоборот неактивна, если невыполняются. Для любых типов decisions это похоже.

 

52 минуты назад, Spectr-7 сказал:

trade_post_decisions

А я то ведь думал, что у вас там title_decisions, которые вызываются через ПКМ на графском титуле провинции. С trade_post_decisions я никогда не работал, через ПКМ на чём они вызываются? Через ПКМ на иконке торгового поста? Надо было сразу цитировать код полностью вместе с trade_post_decisions, а то вы ввели в заблуждение меня, а я мог вас. В таком случае не нужны строки

57 минут назад, Spectr-7 сказал:

tier = COUNT

is_titular = no

они для title_decisions предназначены, чтоб отсеять графский титул провинции от других.

По сути я вообще не знаю, чем является ROOT в trade_post_decisions. Одно из двух - либо графский титул провинции, либо сама провинция. А это две большие разницы, одни триггеры/эффекты работают с титулами, другие с провинциями. Если там всё же не титул, как я думал, а провинция, то триггеры tier = COUNT и is_titular = no к ней неприменымы, следовательно potential не выполняется и решение не отображается в списке.

Scope trade_post_owner можно использовать как в триггерах, так и в эфектах и как внутри scope титула, так и scope провинции. Тут всё норм. Команду seize_trade_post тоже как внутри scope титула, так и scope провинции.

Для тестирования ивента лучше просто поставьте внутрь potential условие always = yes и все остальные строки удалите. Должно работать с любыми торг. постами, включая как те, что без владельца, так и те, что с любым владельцем. Потом уже будете проверять с NOT = { trade_post_owner = { always = yes } }

 

21 минуту назад, Spectr-7 сказал:

Сейчас гляну, может и подскажу как подправить.

Вот да, простейший вопрос по моддингу. Попробуйте ответить, я посмотрю. Не забываем, что одно условие, можно скажем заменить на два в блоке OR и тогда будет доступно, как и для одного, так и для другого случая. А может наоборот нужно одно из условий удалить/закомментить. Есть триггеры на проверку того, является ли персонаж феодалом, племенем и др. Они вызываются из scope персонажа, а не титула. Хотя если касается баронства (титула), то для него тоже есть проверка на то феодальное ли оно (замок) или племенное (село).

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

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

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

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

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

  Only 75 emoji are allowed.

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

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

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

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

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

  • 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

  • azgudda

    24

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

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

Kassatka

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

Carrachiolla

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

Kassatka

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

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

Foulyn

Вот, что пока получилось для эльфиек.  

Foulyn

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

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

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


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

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