EVENT здоровья придворных - Моды и моддинг - Strategium.ru Перейти к содержимому

EVENT здоровья придворных

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

Aurelius36

История: До патча 3.1.1 действовала зачистка двора от неважных придворных. Но в том патче ввели такое как "плата за сверх лимит придворных". Я знаю что есть решение на изгнание лишних придворных. Но она работает не так как мне хотелось. Судя по форуму и отзывам на форуме разработчиков данная схема сырая и недоработанная. 

Пытался написать ивент, но моих познаний не хватает чтоб все оформить правильно. Помогите плз))

Условие : ивент только для моего двора и действует только на моих придворных.

При достижение количества придворных:

20 человек - придворные которые попадают под требования теряют 1 здоровья

30 человек - теряют 3 здоровья

50 человек - теряют 5 здоровья

требования такие :

Спойлер

age = 21

NOR = {
        is_married = yes
        is_landed = yes
        has_job_title = yes
        has_minor_title = yes
        AND = {
            NOT = { dynasty = none }
            num_of_dynasty_members = 2
        }
        any_lover = { ai = no }
        any_close_relative = { ai = no }
        any_friend = { ai = no }
        any_rival = { ai = no }
        any_consort = { ai = no }
        num_of_claims = 1
        has_character_modifier = in_seclusion

 

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

Ивент on_action? Или  обычный MTTH, а триггер это именно число придворных?

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

Спойлер

 

namespace = pb_various

#Event to kill off useless courtiers
character_event = {
    id = pb_various.1
    hide_window = yes
    is_triggered_only = yes
    
    only_rulers = yes
    only_playable = yes
    
    trigger = {
        higher_tier_than = baron
    }
    
    immediate = {
        any_courtier = {
            limit = {
                is_ruler = no
                is_councillor = no
                is_married = no
                prisoner = no
                is_adult = yes #Never kill kids
                OR = { #Aren't important people
                    dynasty = 0
                    NOT = {
                        any_dynasty_member = {
                            higher_tier_than = baron
                        }
                    }
                }
                NOT = { #Have no useful claims
                    any_claim = {
                        higher_tier_than = baron
                    }
                }
                NOT = { #Not heir to anything
                    any_heir_title = {
                        always = yes
                    }
                }
                NOR = { #Bastards are always interesting
                    trait = bastard
                    trait = legit_bastard
                }
                NOR = { #Not if they have at least one attribute over 8
                        martial = 9
                        diplomacy = 9
                        intrigue = 9
                        stewardship = 9
                        learning = 9
                }
                OR = {
                    trait = incapable
                    AND = {
                        age = 40 #5 years of fertility isn't much use
                        is_female = yes
                    }
                    NOR = {
                        martial = 5
                        diplomacy = 5
                        intrigue = 5
                        stewardship = 5
                        learning = 5
                    }
                }
            }
            death = { death_reason = death_poor_health }
        }
    }

 

 

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

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

Ивент on_action? Или  триггер это именно число придворных?

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

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

 

namespace = pb_various

#Event to kill off useless courtiers
character_event = {
    id = pb_various.1
    hide_window = yes
    is_triggered_only = yes
    
    only_rulers = yes
    only_playable = yes
    
    trigger = {
        higher_tier_than = baron
    }
    
    immediate = {
        any_courtier = {
            limit = {
                is_ruler = no
                is_councillor = no
                is_married = no
                prisoner = no
                is_adult = yes #Never kill kids
                OR = { #Aren't important people
                    dynasty = 0
                    NOT = {
                        any_dynasty_member = {
                            higher_tier_than = baron
                        }
                    }
                }
                NOT = { #Have no useful claims
                    any_claim = {
                        higher_tier_than = baron
                    }
                }
                NOT = { #Not heir to anything
                    any_heir_title = {
                        always = yes
                    }
                }
                NOR = { #Bastards are always interesting
                    trait = bastard
                    trait = legit_bastard
                }
                NOR = { #Not if they have at least one attribute over 8
                        martial = 9
                        diplomacy = 9
                        intrigue = 9
                        stewardship = 9
                        learning = 9
                }
                OR = {
                    trait = incapable
                    AND = {
                        age = 40 #5 years of fertility isn't much use
                        is_female = yes
                    }
                    NOR = {
                        martial = 5
                        diplomacy = 5
                        intrigue = 5
                        stewardship = 5
                        learning = 5
                    }
                }
            }
            death = { death_reason = death_poor_health }
        }
    }

 

 

Не, убивать сразу их не стоит))

Просто так чтоб при росте двора невостребованные придворные потихоньку умирали.

По мере роста количества придворных у невостребованных понижалось здоровье. А там выживут только сильнейшие))

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

Да в defines. lua и так стоит что придворных с высоким здоровьем не трогать.

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

Aurelius36
4 минуты назад, Alana сказал:

Да в defines. lua и так стоит что придворных с высоким здоровьем не трогать.

И да, нужен такой ивент который я не буду замечать. Скрытый от моих глаз))

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

Я думаю, вам стоит изменить условия как-то так

 

        any_courtier = {
        age = 21
            NOR = {
                is_married = yes
                is_landed = yes
                has_job_title = yes
                has_minor_title = yes
                AND = {
                    NOT = { dynasty = none }
                    num_of_dynasty_members = 2
            }
                NOR = {
                    num_of_lovers = 1
                    num_of_spouses = 1
                    num_of_friends = 1
                    num_of_consorts = 1
                    num_of_claims = 1
                    has_character_modifier = in_seclusion
            }

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

Aurelius36

А как указать условие только для моего двора?

И еще вопрос правильно указать:  health или health_penalty ?

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

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

health_penalty когда отрицательное значение. 


Может быть вам как-то так сделать (я в моддинге сама профан)
 

    character_event = {
    id = LH.1
    hide_window = yes
    
    is_triggered_only = yes
    
    only_playable = yes
    ai = no
    
    trigger = {
       if = {
        num_of_courtiers = 20
            }

}
      

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


и в on_actions запускать раз в год
Хотя это долго...
 

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

Спойлер

    character_event = {
    id = LH.1
    hide_window = yes
    
    
    only_playable = yes
    ai = no
    
    trigger = {
        num_of_courtiers = 20
        }
        
        immediate = {
        random_courtier = {
            limit = {
                age = 21
                NOR = {
                    is_married = yes
                    is_landed = yes
                    has_job_title = yes
                    has_minor_title = yes
                    AND = {
                        NOT = { dynasty = none }
                        num_of_dynasty_members = 2
                    }
                    NOR = {
                        num_of_lovers = 1
                        num_of_spouses = 1
                        num_of_friends = 1
                        num_of_consorts = 1
                        num_of_claims = 1
                        has_character_modifier = in_seclusion
                        }
                }

           }
                health_penalty = -2
                    }
                }
            }
        option = {
        name = "EVTOPTALH" #OK
    }
}

Допиленный.

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

Aurelius36

Вот я создаю в папке event файл и в нем пишу

namespace = hp
character_event = { 
    id = hp.101

потом сам ивент

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

Допустим в папку on_actions или в файлы локализации?))

 

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

on_actions надо если вы ходите его активации после какого-то события, в начале игры, года, каждые два года.

Каждый ивент должен быть либо is_triggered_only то есть вызываться другим ивентом, либо иметь mean_time_to_happen.

Это скрытый ивент, можно без локализации.

 

Перечитала вики, там пишут, что triggered_only триггеры не нужны. Значит остается только Weight multiplier если вы выберете On_actions  либо через MTTH.

 

 

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

Aurelius36
9 минут назад, Alana сказал:

 

 

Перечитала вики, там пишут, что triggered_only триггеры не нужны. Значит остается только Weight multiplier если вы выберете On_actions  либо через MTTH.

 

 

Допустим 

mean_time_to_happen = 12

Это получится раз в 12 месяцев.. вроде нормально)

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

mean_time_to_happen = {

months = 12

}

 

По-моему, это значит, что за 12 месяцев событие  имеет 50% вероятность совершиться...

Но я не уверена.

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

Aurelius36

Спасибо! Завтра сложу все в единое целое и попробую еще раз запустить так как мне нужно.

А то по вводят ненужные функции в игру.. и приходится переделывать все под себя))

P.S. потом еще буду разбираться с дипломатической дистанцией. Они ее порезали втихую и не сообщили. Теперь мне не хватает дистанции для объявления священной войны заморским врагам))

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

Это вам в defines.lua Меняется очень легко.

_________
добавлено 0 минут спустя

    

Спойлер

character_event = {
    id = LH.1
    hide_window = yes
    
    
    only_playable = yes
    ai = no
    
    option = {
        name = EVTOPTALH.1
        trigger = {
        num_of_courtiers = 20
    }
        
        immediate = {
        random_courtier = {
            limit = {
                age = 21
                NOR = {
                    is_married = yes
                    is_landed = yes
                    has_job_title = yes
                    has_minor_title = yes
                    AND = {
                        NOT = { dynasty = none }
                        num_of_dynasty_members = 2
                    }
                    NOR = {
                        num_of_lovers = 1
                        num_of_spouses = 1
                        num_of_friends = 1
                        num_of_consorts = 1
                        num_of_claims = 1
                        has_character_modifier = in_seclusion
                        }
                }
            }
                health_penalty = -2
                    }
                }
            }
            mean_time_to_happen = {
            days = 40
            }
            
            
    option = {
        name = "EVTOPTBLH.1" 
        
        trigger = {
        num_of_courtiers = 30
        }
        
        immediate = {
        random_courtier = {
            limit = {
                age = 21
                NOR = {
                    is_married = yes
                    is_landed = yes
                    has_job_title = yes
                    has_minor_title = yes
                    AND = {
                        NOT = { dynasty = none }
                        num_of_dynasty_members = 2
                    }
                    NOR = {
                        num_of_lovers = 1
                        num_of_spouses = 1
                        num_of_friends = 1
                        num_of_consorts = 1
                        num_of_claims = 1
                        has_character_modifier = in_seclusion
                        }
                }
            }
                health_penalty = -3
                    }
            }
            
            mean_time_to_happen = {
            days = 40
            }
        }
        
        option = {
        name = EVTOPTCLH.1
        trigger = {
        num_of_courtiers = 40
    }
        
        immediate = {
        random_courtier = {
            limit = {
                age = 21
                NOR = {
                    is_married = yes
                    is_landed = yes
                    has_job_title = yes
                    has_minor_title = yes
                    AND = {
                        NOT = { dynasty = none }
                        num_of_dynasty_members = 2
                    }
                    NOR = {
                        num_of_lovers = 1
                        num_of_spouses = 1
                        num_of_friends = 1
                        num_of_consorts = 1
                        num_of_claims = 1
                        has_character_modifier = in_seclusion
                        }
                }
            }
                health_penalty = -5
                    }
                }
            }
            mean_time_to_happen = {
            days = 40
            }
    }

 

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

Aurelius36

А что означает   name = "EVTOPTBLH.1 ?

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

Я в вики прочла, что у вариантов должны быть имена. A, B, C.. Наверное, это говорит игре, что есть вот опция 1, а вот опция 2.
Думаю, что раз событие скрытое, то и локализовывать не нужно.

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

Aurelius36

Понятно! Спасибо еще раз!

Завтра буду настраивать и тестить какое влияние будет на игру))

Я там уже чуть ли не половину файлов переделал. 

Мне даже однажды Папа Римский подарил наложника гениального))

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

55 минут назад, Aurelius36 сказал:

Я там уже чуть ли не половину файлов переделал. 

Мне даже однажды Папа Римский подарил наложника гениального))

 

Я себе пока собираю мод из кусков кода других модов + собственные ивенты. Игра стала... весьма своебразной...

Из-за бага у меня священники как-то обзавелись шикарными гаремами.

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

El Búho
2 часа назад, Aurelius36 сказал:

А что означает   name = "EVTOPTBLH.1 ?

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

если событие скрытое (hide_window = yes), то никаких ответов быть не может. 

@Alana immediate внутри option быть не может. суть immediate в том, чтобы срабатывать до option (о чём и написано на вики), а внутри option всякие tooltips следует использовать. на этот код игра выдаст примерно полтора миллиона ошибок в журнал.

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

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

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

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

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

  Only 75 emoji are allowed.

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

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

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

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

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

  • Aurelius36

    20

  • Alana

    16

  • El Búho

    4

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

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

Aurelius36

Понятно! Спасибо еще раз! Завтра буду настраивать и тестить какое влияние будет на игру)) Я там уже чуть ли не половину файлов переделал.  Мне даже однажды Папа Римский подарил наложник

El Búho

серьёзно?  то ж пример был. естественно, что игра ругается. да, num_of_courtiers ввели в 3.1.1, в более ранних версиях этого нет. 

Aurelius36

Да я испытал в том виде как оно было)) А вот и готовый ивент полностью рабочий и проверен валидатором (ошибок нет). Вроде все верно и идеально как я хотел. Пока багов не обнаружено. Ч

Aurelius36

История: До патча 3.1.1 действовала зачистка двора от неважных придворных. Но в том патче ввели такое как "плата за сверх лимит придворных". Я знаю что есть решение на изгнание лишних придворных. Но о

Alana

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

Aurelius36

Не, убивать сразу их не стоит)) Просто так чтоб при росте двора невостребованные придворные потихоньку умирали. По мере роста количества придворных у невостребованных понижалось здоровье. А

Aurelius36

И да, нужен такой ивент который я не буду замечать. Скрытый от моих глаз))

Alana

Я думаю, вам стоит изменить условия как-то так           any_courtier = {         age = 21             NOR = {                 is_married = yes                 is_landed = yes     

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

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


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

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