N3OW/common/decisions/40_japan_decisions.txt
2026-05-24 05:01:46 -04:00

548 lines
15 KiB
Text

### Pledge Loyalty to the [GetPlayer.GetLiege.GetTitleTierName|U] ###
pledge_loyalty_to_liege_decision = {
ai_check_interval_by_tier = {
barony = 0
county = 45
duchy = 45
kingdom = 45
empire = 45
hegemony = 0
}
picture = {
trigger = {
culture = { has_cultural_parameter = must_pledge_loyalty_to_liege }
top_liege ?= {
culture = { has_cultural_parameter = must_pledge_loyalty_to_liege }
}
}
reference = "gfx/interface/illustrations/event_story/tgp_japanese_shogunate.dds"
}
picture = {
reference = "gfx/interface/illustrations/decisions/decision_knight_kneeling.dds"
}
decision_group_type = major
cost = {
gold = {
value = 0
if = {
limit = {
exists = scope:pledge_loyalty_to_liege_gold
scope:pledge_loyalty_to_liege_gold = yes
}
add = medium_gold_value
}
}
}
is_shown = {
is_landed = yes
primary_title.tier >= tier_county
is_independent_ruler = no
liege ?= { has_royal_court = yes }
culture = { has_cultural_parameter = must_pledge_loyalty_to_liege }
OR = {
government_has_flag = government_is_feudal
government_has_flag = government_is_clan
government_has_flag = government_is_japan_feudal
}
}
is_valid = {
custom_tooltip = {
text = pledge_loyalty_to_liege_grace_valid_tt
trigger_if = { # Has not Pledged Loyalty to this Liege before
limit = {
has_variable = pledge_loyalty_to_liege_grace
}
NOT = { var:pledge_loyalty_to_liege_grace = liege }
}
}
}
is_valid_showing_failures_only = {
is_available_adult = yes
liege ?= { is_available_adult = yes }
is_at_war_with_liege = no
trigger_if = {
limit = {
is_ai = no
has_royal_court = yes
}
has_spawned_court_events = no # should only be used for human players
}
trigger_if = { # Has not Pledged Loyalty to this Liege before
limit = {
has_variable = pledge_loyalty_to_liege_grace
}
custom_tooltip = {
text = pledge_loyalty_to_liege_grace_valid_tt
NOT = { var:pledge_loyalty_to_liege_grace = liege }
}
}
}
widget = {
gui = "decision_view_widget_pay_homage"
controller = decision_option_list_controller
decision_to_second_step_button = "pledge_loyalty_to_liege_DECISION_NEXT_STEP_BUTTON"
item = { # Submission
value = pledge_loyalty_to_liege_submission
is_valid = {}
current_description = pledge_loyalty_to_liege_submission_desc
localization = pledge_loyalty_to_liege_decision_option_submission
icon = "gfx/interface/icons/icon_liege.dds"
ai_chance = { # Always likely
value = 50
if = { # Generous vassals want to give gold if they can!
limit = {
ai_greed <= -50
gold >= medium_gold_value
}
add = -50
}
}
}
item = { # Hook
value = pledge_loyalty_to_liege_hook
is_valid = {
custom_tooltip = { # Liege does not already have a hook
text = pledge_loyalty_to_liege_hook_tt
NOT = {
liege ?= { has_hook = prev }
}
}
}
current_description = pledge_loyalty_to_liege_hook_desc
localization = pledge_loyalty_to_liege_decision_option_hook
icon = "gfx/interface/icons/message_feed/hook.dds"
ai_chance = { # More likely if family
value = 25
if = {
limit = {
liege ?= { is_close_or_extended_family_of = prev }
}
add = 25
}
if = { # Certain AI's really do not want to be indebted
limit = {
OR = {
has_trait = paranoid
has_trait = arrogant
ai_greed >= 50
}
}
add = -50
}
}
}
item = { # Contract
value = pledge_loyalty_to_liege_contract
is_shown = { government_has_flag = government_is_feudal }
is_valid = {
custom_tooltip = { # Contract can be changed
text = pledge_loyalty_to_liege_contract_modifiable_tt
vassal_contract_has_modifiable_obligations = yes
}
custom_tooltip = { # Contract not at highest
text = pledge_loyalty_to_liege_contract_increasable_tt
OR = {
vassal_contract_obligation_level_can_be_increased = feudal_government_taxes
vassal_contract_obligation_level_can_be_increased = feudal_government_levies
}
}
}
current_description = pledge_loyalty_to_liege_contract_desc
localization = pledge_loyalty_to_liege_decision_option_contract
icon = "gfx/interface/icons/message_feed/a_catch_all_councillor_icon.dds"
ai_chance = { # More likely if contract is already lenient
value = 10
if = {
limit = {
OR = {
vassal_contract_obligation_level:feudal_government_levies = feudal_levies_low_level
vassal_contract_obligation_level:feudal_government_taxes = feudal_tax_low_level
}
}
add = 40
}
else_if = {
limit = {
OR = {
vassal_contract_obligation_level:feudal_government_levies = feudal_levies_exempt_level
vassal_contract_obligation_level:feudal_government_taxes = feudal_tax_exempt_level
}
}
add = 90
}
if = { # Certain AI's really do not want increased obligations
limit = {
OR = {
has_trait = ambitious
has_trait = arrogant
ai_greed >= 50
}
}
add = -50
}
}
}
item = { # Gold
value = pledge_loyalty_to_liege_gold
is_valid = {
custom_tooltip = { # Can afford gold homage
text = pledge_loyalty_to_liege_gold_tt
gold >= medium_gold_value # Can afford gold homage
}
}
current_description = pledge_loyalty_to_liege_gold_desc
localization = pledge_loyalty_to_liege_decision_option_gold
icon = "gfx/interface/icons/message_feed/money.dds"
ai_chance = { # More likely if rich
value = 50
if = {
limit = { gold > major_gold_value }
add = 50
}
if = { # Certain AI's really do not want to part with gold
limit = {
ai_greed >= 50
}
add = -100
}
}
}
}
effect = {
set_variable = {
name = pledge_loyalty_to_liege_scope
value = liege
}
custom_tooltip = pledge_loyalty_to_liege_decision_effects
custom_description_no_bullet = { text = pledge_loyalty_to_liege_gift_warning_effect }
if = { # Gift
limit = { scope:pledge_loyalty_to_liege_gold = yes }
set_variable = {
name = homage_type
value = flag:pledge_loyalty_to_liege_gold
}
# used for refunding if travel is canceled mid-way
set_variable = {
name = pledge_loyalty_to_liege_gold_value
value = medium_gold_value
}
custom_tooltip = pledge_loyalty_to_liege_decision_effects_gold
}
else_if = { # Hook
limit = { scope:pledge_loyalty_to_liege_hook = yes }
set_variable = {
name = homage_type
value = flag:pledge_loyalty_to_liege_hook
}
custom_tooltip = pledge_loyalty_to_liege_decision_effects_hook
}
else_if = { # Contract
limit = { scope:pledge_loyalty_to_liege_contract = yes }
set_variable = {
name = homage_type
value = flag:pledge_loyalty_to_liege_contract
}
if = {
limit = {
vassal_contract_obligation_level:feudal_government_levies < vassal_contract_obligation_level:feudal_government_taxes
vassal_contract_obligation_level_can_be_increased = feudal_government_levies
}
custom_tooltip = pledge_loyalty_to_liege_decision_effects_contract_levies
}
else_if = {
limit = {
vassal_contract_obligation_level:feudal_government_taxes < vassal_contract_obligation_level:feudal_government_levies
vassal_contract_obligation_level_can_be_increased = feudal_government_taxes
}
custom_tooltip = pledge_loyalty_to_liege_decision_effects_contract_gold
}
else = {
if = {
limit = { vassal_contract_obligation_level_can_be_increased = feudal_government_taxes }
custom_tooltip = pledge_loyalty_to_liege_decision_effects_contract_gold
}
else = { custom_tooltip = pledge_loyalty_to_liege_decision_effects_contract_gold }
}
hidden_effect = { set_vassal_contract_modification_blocked = yes }
}
else = { # Submission
set_variable = {
name = homage_type
value = flag:pledge_loyalty_to_liege_submission
}
}
show_as_tooltip = {
switch = {
trigger = has_trait
shy = { add_stress = minor_stress_impact_gain }
arrogant = { add_stress = minor_stress_impact_gain }
}
}
save_scope_as = pledge_loyalty_to_liege_vassal
if = {
limit = { exists = liege } # To stop errors
liege = { save_scope_as = pledge_loyalty_to_liege_liege }
}
start_travel_plan = {
destination = liege.capital_province
on_start_on_action = pledge_loyalty_to_liege_start
on_travel_planner_cancel_on_action = pledge_loyalty_to_liege_travel_planner_exit
on_arrival_event = pledge_loyalty_to_liege.9000
on_arrival_destinations = all_but_last
}
}
ai_potential = {
is_at_war = no
}
ai_will_do = {
base = 0
modifier = {
add = 60
culture = { has_cultural_parameter = must_pledge_loyalty_to_liege }
}
modifier = {
add = 50
prestige > standard_activity_base_cost
}
modifier = { # AI's who can give gold are more likely
add = 50
gold >= medium_gold_value
ai_greed < 50
primary_title.tier > tier_county
}
modifier = {
add = -50
has_relation_rival = liege
}
modifier = {
add = -25
opinion = {
target = liege
value < 0
}
}
modifier = { # Dukes/kings should be more weighted
add = 25
primary_title.tier >= tier_duchy
}
modifier = { # Barons should be less weighted
add = -25
primary_title.tier < tier_county
}
}
}
### Petition the Ceremonial Monarch ###
petition_ceremonial_liege_decision = {
ai_check_interval = 0
sort_order = 199
selection_tooltip = {
first_valid = {
triggered_desc = {
trigger = {
liege = { tgp_is_ceremonial_regent_trigger = yes }
}
desc = petition_liege_decision_tooltip_non_royal
}
desc = petition_liege_decision_tooltip
}
}
title = {
first_valid = {
triggered_desc = {
trigger = { exists = top_liege.primary_title.var:administrative_ui_special_title.holder }
desc = petition_ceremonial_liege_decision_title
}
desc = petition_ceremonial_liege_decision
}
}
desc = petition_ceremonial_liege_decision_desc
picture = {
trigger = {
culture = { has_graphical_east_asia_culture_group_trigger = yes }
}
reference = "gfx/interface/illustrations/decisions/tgp_kowtow.dds"
}
picture = {
trigger = {
NOR = {
government_has_flag = government_is_tribal
government_has_flag = government_is_nomadic
government_has_flag = government_is_theocracy
top_liege ?= { government_has_flag = government_is_tribal }
top_liege ?= { government_has_flag = government_is_nomadic }
top_liege ?= { government_has_flag = government_is_theocracy }
}
OR = {
culture = { has_cultural_pillar = heritage_byzantine }
top_liege ?= {
OR = {
culture = { has_cultural_pillar = heritage_byzantine }
capital_barony ?= title:b_constantinople
is_roman_emperor_primary_title_trigger = yes
}
}
}
}
reference = "gfx/interface/illustrations/decisions/ep3_cerimonial_decision.dds"
}
picture = {
reference = "gfx/interface/illustrations/decisions/decision_knight_kneeling.dds"
}
cost = {
prestige = {
value = 0
if = {
limit = { petition_liege_admin_valid_trigger = no }
add = standard_activity_base_cost
}
}
influence = {
value = 0
if = {
limit = { petition_liege_admin_valid_trigger = yes }
add = standard_activity_base_cost
}
}
}
cooldown = {
days = standard_petition_liege_cooldown_time
}
is_shown = {
is_playable_character = yes
has_dlc_feature = royal_court
tgp_is_ceremonial_petition_shown_trigger = yes
}
is_valid_showing_failures_only = {
is_available_adult = yes
tgp_is_ceremonial_petition_shown_trigger = yes
tgp_is_ceremonial_petition_valid_trigger = yes
}
widget = {
gui = "decision_view_widget_petition_liege"
controller = decision_option_list_controller
decision_to_second_step_button = "CHOOSE_PETITION_DECISION_NEXT_STEP_BUTTON"
item = { # Regent endorsement
value = petition_ceremonial_liege_regent
is_valid = {
government_allows = administrative
is_independent_ruler = no
trigger_if = {
limit = { exists = top_liege.primary_title.var:administrative_ui_special_title.holder }
custom_tooltip = {
text = petition_ceremonial_liege_regent_already_given_tt
NOT = { var:petition_liege_regent_support ?= top_liege.primary_title.var:administrative_ui_special_title.holder }
}
}
trigger_else = { always = no }
}
current_description = petition_ceremonial_liege_regent_desc
localization = petition_ceremonial_liege_decision_option_regent
icon = "gfx/interface/icons/message_feed/tier_up.dds"
ai_chance = { value = 0 } # Currently unused
}
item = { # Appointment support
value = petition_ceremonial_liege_appointment
is_valid = { government_allows = administrative }
current_description = petition_ceremonial_liege_appointment_desc
localization = petition_ceremonial_liege_decision_option_appointment
icon = "gfx/interface/icons/message_feed/icon_scheme_promote.dds"
ai_chance = { value = 0 } # Currently unused
}
item = { # Royal wedding
value = petition_ceremonial_liege_wedding
is_valid = {
tgp_is_in_ceremonial_house_trigger = no
}
current_description = petition_ceremonial_liege_wedding_desc
localization = petition_ceremonial_liege_decision_option_wedding
icon = "gfx/interface/icons/message_feed/marriage.dds"
ai_chance = { value = 0 } # Currently unused
}
item = { # Privilege
value = petition_ceremonial_liege_privilege
is_valid = {
tgp_is_in_ceremonial_house_trigger = no
}
current_description = petition_ceremonial_liege_privilege_desc
localization = petition_ceremonial_liege_decision_option_privilege
icon = "gfx/interface/icons/message_feed/vassal_contract.dds"
ai_chance = { value = 0 } # Currently unused
}
}
effect = {
top_liege.primary_title.var:administrative_ui_special_title.holder = { save_scope_as = ceremonial_liege }
custom_tooltip = petition_ceremonial_liege_decision_effects
if = {
limit = {
liege = { is_ai = yes }
}
custom_description_no_bullet = { text = petition_liege_warning_effect }
}
show_as_tooltip = {
switch = {
trigger = has_trait
shy = { add_stress = medium_stress_impact_gain }
arrogant = { add_stress = medium_stress_impact_gain }
}
}
switch = {
trigger = yes
scope:petition_ceremonial_liege_regent = {
set_variable = { name = petition_type value = flag:regent }
}
scope:petition_ceremonial_liege_appointment = {
set_variable = { name = petition_type value = flag:appointment }
}
scope:petition_ceremonial_liege_wedding = {
set_variable = { name = petition_type value = flag:wedding }
}
scope:petition_ceremonial_liege_privilege = {
set_variable = { name = petition_type value = flag:privilege }
}
}
if = {
limit = { location = scope:ceremonial_liege.capital_province }
trigger_event = { on_action = petition_ceremonial_liege_start }
trigger_event = petition_liege.9020
}
else = {
trigger_event = { on_action = petition_ceremonial_liege_start }
start_travel_plan = {
destination = scope:ceremonial_liege.capital_province
on_travel_planner_cancel_on_action = petition_ceremonial_liege_travel_planner_exit
on_arrival_event = petition_liege.9020
on_arrival_destinations = all_but_last
}
}
add_character_flag = {
flag = petition_ceremonial_liege_character_flag
weeks = 2
}
}
ai_potential = { always = no } # Only players can do this. AI vassals go through the normal court events/hold court activity.
}