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

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

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

Alterus
i

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

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

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

@Aurelius36 ага, поправила, но не помогло

Попробую еще покопаться, хотя уже два часа сижу и не понимаю х)

Вы проверьте еще всякие мелочи. Наверняка найдется и все запустится. Ошибки в названиях. Случайная буква на кириллице вместо латиницы и т.д.

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

Dartemaron

Доброго времени суток!

Хочу создать персонажей из древних династий путем написания альтернативной истории: Ахемениды, Аргеиды и т.д.

Интересует вопрос:
1. Как создать мертвых в далеком прошлом персонажей, чтобы сделать их предками вымышленных приемников (с созданием новых персонажей живых С ТИТУЛАМИ я разобрался)?
2. Как создать персонажей, которые будут появляться при дворе определенного персонажа при старте игры? Смотрел в файлах игры есть примеры: employer = XXX, но прописывание этой строки не создает персонажа в новой игре.

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

Alariko

Есть слухи о HIP'e в новой части?

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

Labes
В 13.10.2020 в 13:10, Dartemaron сказал:

1. Как создать мертвых в далеком прошлом персонажей, чтобы сделать их предками вымышленных приемников (с созданием новых персонажей живых С ТИТУЛАМИ я разобрался)?


Здравствуйте.
Если честно, CK3 я все ещё практически не ковырял, так что могу быть неточен.
Давайте попробуем разобраться на примере.
Находим: ...\Crusader Kings III\game\history\characters\russian.txt -> #Severians
Смотрим:

Спойлер

#
#Severians
#
194142 = {
    name = "Sviatoslav"
    dynasty = 1029138
    religion = slavic_pagan
    culture = severian
    733.1.1 = {
        birth = yes
    }
    799.1.1 = {
        death = yes
    }
}
194143 = {
    name = "Volodar"
    dynasty = 1029138
    religion = slavic_pagan
    culture = severian
    770.6.4 = {
        birth = yes
    }
    822.8.23 = {
        death = yes
    }
}
194144 = {
    name = "Svetozar"
    dynasty = 1029138
    religion = slavic_pagan
    culture = ilmenian
    father = 194143
    802.4.5 = {
        birth = yes
    }
    852.9.13 = {
        death = yes
    }
}
...


Видим, что тут, судя по всему, небольшая путаница. У истока династии стоит человек (194142), никак не связанный с остальной династией (скорее всего, для 194143 бедного 194142 банально забыли указать как отца). Ну да ладно, что бы не вносить путаницу, опустим этот момент, и будем работать с 194143, который наш прямой предок.
Пропишем ему предка "Олега" (исторический ID для "Олега" был выбран случайный из свободных [для поиска по множеству текстовых файлов можно использовать notepad++, bash+grep или что-то с подобным функционалом]), и укажем его как отца 194143 (изменения выделены):

Спойлер

194142 = {
    name = "Sviatoslav"
    dynasty = 1029138
    religion = slavic_pagan
    culture = severian
    733.1.1 = {
        birth = yes
    }
    799.1.1 = {
        death = yes
    }
}
879001 = {
    name = "Oleg"
    dynasty = 1029138
    religion = slavic_pagan
    culture = severian
    740.3.10 = {
        birth = yes
    }
    800.1.1 = {
        death = yes
    }
}

194143 = {
    name = "Volodar"
    dynasty = 1029138
    religion = slavic_pagan
    culture = severian
    father = 879001
    770.6.4 = {
        birth = yes
    }
    822.8.23 = {
        death = yes
    }
}
...


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

Будьте внимательны с датами рождения и смерти (кстати, обратите внимание на дату смерти "Олега").
Что бы дать "Олегу" тот же титул, который был у его, теперь уже, сына, идем: ...\Crusader Kings III\game\history\titles\k_ruthenia.txt -> c_pereyaslavl

Спойлер

c_pereyaslavl = {
    867.1.1 = {    change_development_level = 3 }
    1066.1.1 = { change_development_level = 8 }
    
    ###Pre Kievan Rus
    800.1.1 = {
        liege = 0
        holder = 194143        #Volodar Seversky, fictional
        government = tribal_government
    }
...


И допишем "Олега" (изменения выделены):

Спойлер

c_pereyaslavl = {
    867.1.1 = {    change_development_level = 3 }
    1066.1.1 = { change_development_level = 8 }
    
    ###Pre Kievan Rus
    782.7.19 = {
        holder = 879001        #Oleg Seversky, fictional
    }

    800.1.1 = {
        liege = 0
        holder = 194143        #Volodar Seversky, fictional
        government = tribal_government
    }
...


Подробнее на paradoxwikis -> Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. .
Вспоминаем дату смерти "Олега", она совпадает с приходом к власти его сына 194143. Т.е. мы сымитировали преемственность власти.
Как результат:

Спойлер

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

 

В 13.10.2020 в 13:10, Dartemaron сказал:

2. Как создать персонажей, которые будут появляться при дворе определенного персонажа при старте игры? Смотрел в файлах игры есть примеры: employer = XXX, но прописывание этой строки не создает персонажа в новой игре.

 

Находим: ...\Crusader Kings III\game\events и создаем текстовый файл, например -> poor_events.txt

 

Заполняем его следующим:

Спойлер

namespace = poor_events
 

poor_events.0001 = {
    type = character_event
    immediate = {
        hidden_effect = {
            create_character = {
                location = root.capital_province
                gender_female_chance = 100
                employer = root
                culture = culture:hausa
                faith = faith:adamites
                random_traits = yes
                age = { 18 20 }
            }
        }
    }
}


Подробнее про "create_character" на paradoxwikis -> Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. .
Почему именно юная адамитка хаусской культуры? Понятия не имею и буду все отрицать.

Что бы вызвать ивент на старте игры, находим: ...\Crusader Kings III\game\common\on_action\game_start.txt -> on_game_start

"on_game_start" даже не нужно искать, он в самом верху:

Спойлер

# Called from code after history generation
# Empty scope
on_game_start = {
    effect = {
...


В конец блока "effect" дописываем:

Спойлер

character:6860 = {
            if = {
                limit = {
                    is_alive = yes
                    is_landed = yes
                }
                trigger_event = {
                    id = poor_events.0001
                    days = { 1 2 }
                }
            }
        }


Это самый простой вариант, через исторический ID персонажа. Юная леди прибудет ко двору персонажа 6860 через 1-2 дня после старта игры.
Вместо исторического ID Вы можете использовать что-то более универсальное, например: if = { limit = { exists = title:e_hre.holder } title:e_hre.holder = { ...
По-хорошему, все изменения нужно вынести в отдельный мод, а не просто модифицировать файлы ванилы.


Ну и на всякий случай повторю: я с CK3, к сожалению, практически не успел ознакомится. И предложенные решения не претендуют на звание лучших.

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

9 часов назад, Labes сказал:

 

Спасибо.

 

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

Dartemaron
9 часов назад, Labes сказал:

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

Спасибо за помощь, начинаю разбираться потихоньку.

 

Новая порция вопросов. Подскажите, пожалуйста.

1. Возможно ли прописать персонажей мертвых до н.э. Я планирую создать династии, которые уходят корнями и вымерли в то время. Или все же игровая дата намертво ограничена 0 годом нашей эры?

 

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

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

Labes
8 часов назад, Dartemaron сказал:

1. Возможно ли прописать персонажей мертвых до н.э. Я планирую создать династии, которые уходят корнями и вымерли в то время. Или все же игровая дата намертво ограничена 0 годом нашей эры?


Может я кого-то упустил, но один из самых "ранних" персонажей которых я нашел в ваниле - Шейх Фарсман, правитель Тбилиси:

Спойлер

159909 = {
    name = "Parsman" #
    dynasty = 23001
    religion = "urartuism"
    culture = "georgian"
    2.1.1 = {
        birth = "2.1.1"
    }
    58.1.1 = {
        death = "58.1.1"
    }
}


А вот что можно найти в ...\history\titles\00_other_titles.txt:

Спойлер

d_masmudi = {
    1.1.1 = {
        succession_laws = {
            temporal_head_of_faith_succession_law
        }
    }
}

d_malabarism = {
    1.1.1 = {
        succession_laws = {
            temporal_head_of_faith_succession_law
        }
    }
}


Судя по всему, дату до Рождества Христова указать не получится, и максимум (ну, или минимум) это 0.1.1.

Кстати, за "бесконечность" в модификаторах отвечает дата 9999.1.1. Т.е. это будет выглядеть так:

Спойлер

modifier={
    modifier="rejected_from_marriage_bed_modifier"
    expiration_date=9999.1.1
}

 

8 часов назад, Dartemaron сказал:

2. С английской Вики знакомился, но частных вопросов там не разбирается, а оттого я не понимаю как мне писать определенные вещи


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

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

Dartemaron

Спасибо еще раз за советы.

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

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

Dartemaron

С вопросом выше я разобрался самостоятельно.
Теперь осталось мучиться с эвентами, в которых я не понимаю от слова совсем. Даже взяв за пример ивенты из модов или игры я не понимаю что, где и как менять в них.
Боль.

Вопросы:

1. Как прописать в эвенте срабатывание в определенный срок (год, месяц, день), при наличии определенных трейтов у персонажа?

2. Позволяет ли игра двум и более имперским титулам иметь де-юре претензии друг к другу? Например: я собираюсь прописать Персидской Империи новые де-юре границы, но они входят в состав Византии. Не сломается ли игра, если продублировать де-юре владения Византии, например, в Анатолии в список де-юре территорий Персидской Империи?

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

Mayonez_kun
2 часа назад, Dartemaron сказал:

2. Позволяет ли игра двум и более имперским титулам иметь де-юре претензии друг к другу? Например: я собираюсь прописать Персидской Империи новые де-юре границы, но они входят в состав Византии. Не сломается ли игра, если продублировать де-юре владения Византии, например, в Анатолии в список де-юре территорий Персидской Империи?

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

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

eternal_solitude
В 05.09.2020 в 14:42, Arzazel сказал:

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

Друг, можно поподробнее? Как именно создать такую штучку. И можно ли, допустим, добавить ещё одну культуру (свою, которую сделаю) в западногерманскую культурную группу? 

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

El Búho
5 часов назад, Mayonez_kun сказал:

Вечные клеймы друг на друга при смене владельца.

Во 2-й части это легко делается и не думаю, что в 3-й части это куда-то делось. 

Нужен номер династии (если претензия династическая), аналог current_heir и add_claim.

Событие запускается при смерти правителя (можно при смене владельца титула) и при узурпации титула. Если эти on_actions триггеры есть в 3-й части, то нет никаких проблем написать вечные претензии.

Можно посмотреть мой мод для 2-й части "Династическая претензия".

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

Dartemaron

Так-с, всем спасибо.

Новая порция вопросов:

1. Как прописать в эвенте, чтобы при выборе определенного варианта ответа на все провинции во владении root вешался модификатор на -контроль и -народное мнение? Сам не могу разобраться с модификаторами такого толка.

2. Как сделать старт эвента на старте игры за определенного персонажа? Пытался on_action game_start модифицировать - эвент просто не срабатывает ни через день, ни через месяц. Эвент рабочий, проверял, сделав решение на старт эвента.

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

Подскажите пожалуйста как прописать иконку для новой доктрины?

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

Bum4akalaka

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

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

Всем привет. Есть такой вопрос. 

в моде№1 пишу условие на проверку трейта из мода №2. Трейт у нипа есть. А условие не выполняется

scope:recipient = { has_trait = vampire }

 

Есть какое ни будь решение?

П.С.

Порядок модов в лаунчере правильный, сначала идет мод№2 - с проверяемый трейтом, а потому уже мод №1 с условием по трейту

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

6 часов назад, Nakato сказал:

Всем привет. Есть такой вопрос. 

в моде№1 пишу условие на проверку трейта из мода №2. Трейт у нипа есть. А условие не выполняется

scope:recipient = { has_trait = vampire }

 

Есть какое ни будь решение?

П.С.

Порядок модов в лаунчере правильный, сначала идет мод№2 - с проверяемый трейтом, а потому уже мод №1 с условием по трейту

 

Сорян сам дурак) не разобрался с условием. Вопрос снят)

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

Cromwell7

Hey. А есть у кого-нибудь мысли, как можно через ивент директивно менять тип местности/религию/культуру провинции? Если со 2 и 3 я еще могу найти обходные пути, то как поменять тип местности, ей богу, не знаю. Условно, предки голланцев осушили в каком-то баронстве болото, вот я и хочу поменять болото там на равнины, к примеру. Помогите)

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

Мужики, в чем может быть проблема. 

Создал мод через лаунчер парадоксов. Появилась папка с названием мода, в папке mod. С дискриптором и т.п. Загрузил туда common/dynasty_perks/00_dynasty_perks.txt . В последнем файле изменил процент одного перка. Включаю мод, запускаю. Изменений никаких нет в игре. В окне династических перков, отображает старые значения (окно признания династии). Что я сделал неправильно??

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

Labes
В 19.10.2020 в 13:42, Dartemaron сказал:

1. Как прописать в эвенте, чтобы при выборе определенного варианта ответа на все провинции во владении root вешался модификатор на -контроль и -народное мнение? Сам не могу разобраться с модификаторами такого толка.

2. Как сделать старт эвента на старте игры за определенного персонажа? Пытался on_action game_start модифицировать - эвент просто не срабатывает ни через день, ни через месяц. Эвент рабочий, проверял, сделав решение на старт эвента.


Здравствуйте. Не знаю, актуально ли, но тем не менее.

На всякий случай напомню:
1) Все изменения лучше вынести в отдельный мод, а не просто модифицировать файлы ванилы.
2) Предложенное решения стоит воспринимать как "черновое", а не хорошее.

Я так понимаю, Вы хотите создать свой собственный модификатор провинции.
Для этого допишем в конец файла -> ...\Crusader Kings III\game\common\modifiers\00_county_modifiers.txt

Спойлер

poor_modifier = {
    icon = county_modifier_opinion_negative
    county_opinion_add = -30
    monthly_county_control_change_add = -1
}


Модификатор даст -30 к мнению и -1 к потере контроля ежемесячно.

Чтобы модификатор имел "нормальное" имя (а не "poor_modifier"), его нужно добавить в файл локализации.
Для этого допишем в конец файла -> ...\Crusader Kings III\game\localization\russian\modifiers\county_modifiers_l_russian.yml (если играете на русском)

Спойлер

 poor_modifier:0 "Все плохо"


Теперь сам ивент на добавление модификатора Вашим провинциям.
Находим -> ...\Crusader Kings III\game\events и создаем текстовый файл, например -> poor_events.txt

 

Заполняем его следующим:

Спойлер

namespace = poor_events
 

poor_events.0001 = {
    type = character_event

    left_portrait = {
        character = root
        animation = personality_rational
    }

    option = {
        every_sub_realm_county = {

            limit = { holder = root }
            add_county_modifier = {
                modifier = poor_modifier
                days = 1825
            }        
        }
    }

    option = {
        add_prestige = major_prestige_loss
    }
}


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

Чтобы вызвать ивент на старте игры для конкретного персонажа, находим -> ...\Crusader Kings III\game\common\on_action\game_start.txt
В конец "on_game_start" дописываем (я выделил интересующий Вас текст):

Спойлер

# Called from code after history generation
# Empty scope
on_game_start = {
    effect = {
        ### Я вырезал лишний текст для простоты восприятия
        character:6860 = {
            if = {
                limit = {
                    is_alive = yes
                    is_landed = yes
                }
                trigger_event = {
                    id = poor_events.0001
                    days = { 1 2 }
                }
            }
        }

    }
}


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

Если выложите Ваш код, можем попробовать разобраться.

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

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

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

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

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

  Only 75 emoji are allowed.

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

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

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

  • Ответы 920
  • Создано
  • Последний ответ
  • Просмотры 115313

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

  • Alorian

    106

  • Кодекс

    77

  • Labes

    57

  • Aurelius36

    18

  • Stics

    17

  • Xowk

    16

  • LuciferMorningstar

    16

  • himitsu7

    16

  • Desidur

    14

  • Shaha

    14

  • Cromwell7

    13

  • korolevskiypingvin

    13

  • svetlovanton

    12

  • Basileus

    11

  • Mayonez_kun

    10

  • Филипп1999

    10

  • Cobalt XIV

    10

  • Slutskin

    10

  • Snow Hunter

    9

  • zxcxz

    9

  • Мирон

    8

  • Алябьев

    8

  • Zuzuzaza

    7

  • eric2la

    7

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

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

Дoбро

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

Alterus

i Данная тема предназначена для вопросов по игровым модификациям, правке файлов и сохранений.

srx47

без лаунчера: 1) кидать моды в *\Documents\Paradox Interactive\Crusader Kings III\mod   2) содать текстовый файл *\Documents\Paradox Interactive\Crusader Kings III\dlc_load.js

Labes

Здравствуйте. Вы немного не туда воюете =) Вам сначала нужно добавить русскую культуру в список культур, для которых доступна инновация. Инновации прописаны в нескольких файлах. Например иннова

Labes

"На то воля Божья"

Кодекс

В запущенной игре, прямо можно с стартового меню. Слева внизу settings (иконка выглядит как свиток с галочкой), далее пункт game, подпункт language

Labes

@Mr.Weis Здравствуйте. Нужды создавать отдельную тему не было, вопросы по редактированию файлов сохранения можно задать -> Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. .   Если я все правильно понял,

Keksik

@Labes @Mr.Weis раз ответ дан, то перенёс тему сюда. 

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

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


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

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