N3OW/events/scheme_events/sway_scheme/sway_outcome_events.txt
2026-05-28 10:08:00 -04:00

979 lines
21 KiB
Text

#Events handling Sway outcomes
namespace = sway_outcome
#Note: Outcome events for the Sway scheme are unusual. The default is simply a notification for success or failure
################################
# Standard outcomes
# 0000-0999
################################
#Standard success
#by Petter Vilberg
sway_outcome.0001 = {
hidden = yes
immediate = {
send_interface_message = {
type = sway_good_message
title = sway_sway_success_message
left_icon = scope:target
scope:target = {
if = {
limit = {
is_alive = yes
scope:owner = { is_alive = yes }
}
# if = {
# limit = {
# any_character_struggle = {
# is_struggle_type = persian_struggle
# has_struggle_phase_parameter = fp3_sway_vassals_removes_disloyalty
# }
# }
# add_opinion = {
# target = scope:owner
# modifier = scheme_sway_and_compelled_to_submit_opinion
# opinion = sway_opinion_increase_per_success
# }
# }
# else = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = sway_opinion_increase_per_success
}
# }
scope:owner = {
if = {
limit = {
faith = { has_doctrine_parameter = sway_scheme_piety }
OR = {
liege ?= scope:target
target_is_vassal_or_below = scope:target
}
}
add_piety = minor_piety_gain
}
}
}
}
sway_end_effect = yes
}
}
}
#Standard failure
#by Petter Vilberg
sway_outcome.0002 = {
hidden = yes
immediate = {
send_interface_message = {
type = sway_bad_message
title = sway_sway_failed_message
left_icon = scope:target
stress_impact = {
gregarious = minor_stress_impact_gain
}
sway_end_effect = yes
}
}
}
#################################
# Positive Outcomes
# 1000-1999
#################################
#Diplomacy Duel to get an extra bonus
#by Petter Vilberg
sway_outcome.1001 = {
type = character_event
title = sway_outcome.1001.t
desc = sway_outcome.1001.desc
theme = sway_scheme
left_portrait = scope:target
widget = {
gui = "event_window_widget_scheme"
container = "custom_widgets_container"
}
override_background = {
trigger = { is_travelling_not_at_activity = yes }
reference = terrain_travel
}
override_background = {
trigger = { is_travelling_at_activity = yes }
reference = ep2_activity
}
trigger = {
NOT = {
has_character_flag = had_event_sway_outcome_1001
}
}
immediate = {
add_character_flag = {
flag = had_event_sway_outcome_1001
years = 5
}
}
option = {
name = sway_outcome.1001.a
duel = {
target = scope:target
skill = diplomacy
20 = {
compare_modifier = {
value = scope:duel_value
}
desc = sway_outcome.1001.a.success
send_interface_toast = {
left_icon = scope:target
title = sway_outcome.1001.a.success
add_prestige = minor_prestige_gain
scope:target = {
# if = {
# limit = {
# any_character_struggle = {
# is_struggle_type = persian_struggle
# has_struggle_phase_parameter = fp3_sway_vassals_removes_disloyalty
# }
# }
# add_opinion = {
# target = scope:owner
# modifier = scheme_sway_and_compelled_to_submit_opinion
# opinion = 50
# }
# }
# else = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = 50
}
# }
scope:owner = {
if = {
limit = {
faith = { has_doctrine_parameter = sway_scheme_piety }
OR = {
liege ?= scope:target
target_is_vassal_or_below = scope:target
}
}
add_piety = minor_piety_gain
}
}
}
}
}
20 = {
compare_modifier = {
value = scope:duel_value
multiplier = -1
}
desc = sway_outcome.1001.a.failure
send_interface_toast = {
left_icon = scope:target
title = sway_outcome.1001.a.failure
add_prestige = minor_prestige_loss
}
}
}
sway_end_effect = yes
}
option = {
name = sway_outcome.1001.b
scope:target = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = 30
}
}
scope:owner = {
if = {
limit = {
faith = { has_doctrine_parameter = sway_scheme_piety }
OR = {
liege ?= scope:target
target_is_vassal_or_below = scope:target
}
}
add_piety = minor_piety_gain
}
}
sway_end_effect = yes
}
}
#Learning Duel to get an extra bonus
#by Petter Vilberg
sway_outcome.1002 = {
type = character_event
title = sway_outcome.1002.t
desc = {
first_valid = {
triggered_desc = {
trigger = { faith = scope:target.faith }
desc = sway_outcome.1002.same_faith
}
desc = sway_outcome.1002.other_faith
}
}
theme = sway_scheme
left_portrait = scope:target
widget = {
gui = "event_window_widget_scheme"
container = "custom_widgets_container"
}
override_background = {
trigger = { scope:target = { is_travelling = yes } }
reference = terrain_travel
}
trigger = {
NOT = {
has_character_flag = had_event_sway_outcome_1002
}
}
weight_multiplier = {
base = 0
compare_modifier = {
value = learning
multiplier = 0.1
}
modifier = {
add = 2
scope:target = {
is_landed = yes
government_has_flag = government_is_theocracy
}
}
}
immediate = {
add_character_flag = {
flag = had_event_sway_outcome_1002
years = 5
}
}
option = {
name = sway_outcome.1002.a
duel = {
target = scope:target
skill = learning
20 = {
compare_modifier = {
value = scope:duel_value
min = -18
max = 20
}
desc = sway_outcome.1001.a.success
send_interface_toast = {
left_icon = scope:target
title = sway_outcome.1001.a.success
add_prestige = minor_prestige_gain
scope:target = {
# if = {
# limit = {
# any_character_struggle = {
# is_struggle_type = persian_struggle
# has_struggle_phase_parameter = fp3_sway_vassals_removes_disloyalty
# }
# }
# add_opinion = {
# target = scope:owner
# modifier = scheme_sway_and_compelled_to_submit_opinion
# opinion = 50
# }
# }
# else = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = 50
}
# }
scope:owner = {
if = {
limit = {
faith = { has_doctrine_parameter = sway_scheme_piety }
OR = {
liege ?= scope:target
target_is_vassal_or_below = scope:target
}
}
add_piety = minor_piety_gain
}
}
}
}
}
20 = {
compare_modifier = {
value = scope:duel_value
multiplier = -1
min = -18
max = 20
}
desc = sway_outcome.1001.a.failure
send_interface_toast = {
left_icon = scope:target
title = sway_outcome.1001.a.failure
add_prestige = minor_prestige_loss
}
}
}
sway_end_effect = yes
}
option = {
name = sway_outcome.1002.b
scope:target = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = 30
}
}
scope:owner = {
if = {
limit = {
faith = { has_doctrine_parameter = sway_scheme_piety }
OR = {
liege ?= scope:target
target_is_vassal_or_below = scope:target
}
}
add_piety = minor_piety_gain
}
}
sway_end_effect = yes
}
}
#They're warming up to me, can I take it further?
#by Linnéa Thimrén
sway_outcome.1003 = {
type = character_event
title = sway_outcome.1003.t
desc = sway_outcome.1003.desc
theme = sway_scheme
left_portrait = scope:target
right_portrait = scope:friend
widget = {
gui = "event_window_widget_scheme"
container = "custom_widgets_container"
}
override_background = {
trigger = { is_travelling_not_at_activity = yes }
reference = terrain_travel
}
override_background = {
trigger = { is_travelling_at_activity = yes }
reference = ep2_activity
}
trigger = {
NOT = {
has_character_flag = had_event_sway_outcome_1003
}
}
immediate = {
add_character_flag = {
flag = had_event_sway_outcome_1003
years = 5
}
scope:target = {
# if = {
# limit = {
# any_character_struggle = {
# is_struggle_type = persian_struggle
# has_struggle_phase_parameter = fp3_sway_vassals_removes_disloyalty
# }
# }
# add_opinion = {
# target = scope:owner
# modifier = scheme_sway_and_compelled_to_submit_opinion
# opinion = 30
# }
# }
# else = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = 30
}
# }
scope:owner = {
if = {
limit = {
faith = { has_doctrine_parameter = sway_scheme_piety }
OR = {
liege ?= scope:target
target_is_vassal_or_below = scope:target
}
}
add_piety = minor_piety_gain
}
}
}
if = {
limit = {
any_relation = {
type = friend
diplomacy > root.diplomacy
}
}
random_relation = {
type = friend
limit = {
diplomacy > root.diplomacy
}
save_scope_as = friend
}
}
}
option = { #Gamble!
name = sway_outcome.1003.a
duel = {
target = scope:target
skill = diplomacy
30 = {
compare_modifier = {
value = scope:duel_value
}
desc = sway_outcome.1003.a.success
send_interface_toast = {
left_icon = scope:target
title = sway_outcome.1003.a.success
scope:target = {
# if = {
# limit = {
# any_character_struggle = {
# is_struggle_type = persian_struggle
# has_struggle_phase_parameter = fp3_sway_vassals_removes_disloyalty
# }
# }
# add_opinion = {
# target = scope:owner
# modifier = scheme_sway_and_compelled_to_submit_opinion
# opinion = 20
# }
# }
# else = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = 20
}
# }
}
}
}
20 = {
compare_modifier = {
value = scope:duel_value
multiplier = -1
}
desc = sway_outcome.1003.a.failure
send_interface_toast = {
left_icon = scope:target
title = sway_outcome.1003.a.failure
scope:target = {
# if = {
# limit = {
# any_character_struggle = {
# is_struggle_type = persian_struggle
# has_struggle_phase_parameter = fp3_sway_vassals_removes_disloyalty
# }
# }
# add_opinion = {
# target = scope:owner
# modifier = scheme_sway_and_compelled_to_submit_opinion
# opinion = -10
# }
# }
# else = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = -10
}
# }
}
}
}
}
}
option = { #Gamble! Friend helps you out!
name = sway_outcome.1003.a_friend
trigger = {
exists = scope:friend
}
scope:friend = {
duel = {
target = scope:target
skill = diplomacy
40 = {
compare_modifier = {
value = scope:duel_value
}
desc = sway_outcome.1003.a.success
send_interface_toast = {
left_icon = scope:target
title = sway_outcome.1003.a.success
scope:target = {
# if = {
# limit = {
# any_character_struggle = {
# is_struggle_type = persian_struggle
# has_struggle_phase_parameter = fp3_sway_vassals_removes_disloyalty
# }
# }
# add_opinion = {
# target = scope:owner
# modifier = scheme_sway_and_compelled_to_submit_opinion
# opinion = 15
# }
# }
# else = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = 15
# }
}
}
}
}
20 = {
compare_modifier = {
value = scope:duel_value
multiplier = -1
}
desc = sway_outcome.1003.a.failure
send_interface_toast = {
left_icon = scope:target
title = sway_outcome.1003.a.failure
scope:target = {
# if = {
# limit = {
# any_character_struggle = {
# is_struggle_type = persian_struggle
# has_struggle_phase_parameter = fp3_sway_vassals_removes_disloyalty
# }
# }
# add_opinion = {
# target = scope:owner
# modifier = scheme_sway_and_compelled_to_submit_opinion
# opinion = -10
# }
# }
# else = {
add_opinion = {
target = scope:owner
modifier = scheme_sway_opinion
opinion = -10
}
# }
}
}
}
}
}
}
option = { #Safe route
name = sway_outcome.1003.b
}
after = {
sway_end_effect = yes
}
}
##A disloyal vassal can be compelled to reconsider during the Anarchy at Samarra Struggle
# #by Ola Jentzsch
#
#sway_outcome.1004 = {
# type = character_event
# title = sway_outcome.1004.t
# desc = {
# first_valid = {
# triggered_desc = {
# trigger = {
# scope:target = {
# ai_vengefulness >= medium_positive_ai_value
# }
# }
# desc = sway_outcome_grudgingly.1004.desc
# }
# random_valid = {
# desc = sway_outcome_magnanimity.1004.desc
# desc = sway_outcome_blessed.1004.desc
# triggered_desc = {
# trigger = {
# scope:target = {
# NOR = {
# has_trait = stubborn
# has_trait = arrogant
# has_trait = august
# has_trait = callous
# }
# }
# }
# desc = sway_outcome_flattery.1004.desc
# }
# triggered_desc = {
# trigger = {
# AND = {
# scope:target = {
# AND = {
# OR = {
# has_religion = religion:buddhism_religion
# has_religion = religion:jainism_religion
# has_religion = religion:hinduism_religion
# }
# ai_zeal >= low_positive_ai_value
# }
# }
# scope:owner = {
# OR = {
# has_religion = religion:buddhism_religion
# has_religion = religion:jainism_religion
# has_religion = religion:hinduism_religion
# }
# }
# }
# }
# desc = sway_outcome_dharmic.1004.desc
# }
# triggered_desc = {
# trigger = {
# scope:target = {
# has_religion = religion:islam_religion
# ai_zeal >= low_positive_ai_value
# exists = faith.religious_head
# faith.religious_head = { this = root }
# }
# }
# desc = sway_outcome_caliph.1004.desc
# }
# }
# }
# }
# theme = sway_scheme
# left_portrait = {
# character = scope:owner
# triggered_animation = {
# trigger = {
# has_trait = callous
# has_trait = vengeful
# has_trait = sadistic
# }
# animation = personality_callous
# }
# animation = personality_bold
# }
# right_portrait = {
# character = scope:target
# animation = throne_room_bow_1
# }
#
# trigger = {
#
# any_character_struggle = {
# is_struggle_type = persian_struggle
# has_struggle_phase_parameter = fp3_sway_scheme_more_powerful
# }
#
# scope:target = {
# AND = {
# is_vassal_of = scope:owner
# has_trait = disloyal
# }
# NOT = {
# has_relation_rival = scope:owner
# }
# }
# }
#
# weight_multiplier = { #more likely to trigger if the target likes you, or has a flexible personality
# base = 1
# modifier = {
# add = 0.5
# scope:target = { has_trait = fickle } #They're flexible
# }
# modifier = {
# add = 0.5
# scope:target = { has_trait = trusting } #They trust you
# }
# modifier = {
# add = -0.7
# scope:target = { has_trait = stubborn } #They are not prone to change their ways
# }
# modifier = {
# add = -0.3
# scope:target = { has_trait = vengeful } #They are not soon to forgive slights, real or imagined
# }
# }
#
# immediate = {
#
# scope:target = {
# add_opinion = {
# target = scope:owner
# modifier = scheme_sway_opinion
# opinion = 20
# }
# remove_trait = disloyal
# }
# scope:owner = {
# if = {
# limit = {
# faith = { has_doctrine_parameter = sway_scheme_piety }
# OR = {
# liege ?= scope:target
# target_is_vassal_or_below = scope:target
# }
# }
# add_piety = minor_piety_gain
# }
# }
# }
#
# option = {
# name = sway_outcome.1004.a
#
# trigger = {
# OR = {
# has_trait = vengeful
# has_trait = arrogant
# has_trait = paranoid
# }
# }
#
# scope:scheme = {
# end_scheme = yes
# }
# }
#
# option = {
# name = sway_outcome.1004.b
#
# trigger = {
# NOR = {
# has_trait = vengeful
# has_trait = arrogant
# has_trait = paranoid
# }
# }
#
# scope:scheme = {
# end_scheme = yes
# }
# }
#}
#################################
# Negative Outcomes
# 2000-2999
#################################
#Diplomatic misunderstanding
#by Petter Vilberg
sway_outcome.2001 = {
type = character_event
title = sway_outcome.2001.t
desc = {
desc = sway_outcome.2001.opening
first_valid = {
triggered_desc = {
trigger = {
scope:target = {
OR = {
is_of_major_interest_to_root_trigger = yes
is_of_minor_interest_to_root_trigger = yes
}
NOT = {
has_relation_rival = root
}
}
}
desc = sway_outcome.2001.not_interested_relation
}
triggered_desc = {
trigger = {
scope:target = {
possibly_interested_in_character_trigger = {
CHARACTER = root
}
}
}
desc = sway_outcome.2001.not_interested_romantically
}
random_valid = {
desc = sway_outcome.2001.not_interested_horses
desc = sway_outcome.2001.not_interested_toll_exemptions
desc = sway_outcome.2001.not_interested_friend
triggered_desc = {
trigger = {
OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion }
OR = { scope:target.religion = religion:eastern_orthodox_religion scope:target.religion = religion:catholic_religion scope:target.religion = religion:protestant_religion }
}
desc = sway_outcome.2001.not_interested_relics
}
}
}
desc = sway_outcome.2001.end
}
theme = sway_scheme
left_portrait = {
character = scope:target
animation = eyeroll
}
widget = {
gui = "event_window_widget_scheme"
container = "custom_widgets_container"
}
override_background = {
trigger = { is_travelling_not_at_activity = yes }
reference = terrain_travel
}
override_background = {
trigger = { is_travelling_at_activity = yes }
reference = ep2_activity
}
trigger = {
NOT = {
has_character_flag = had_event_sway_outcome_2001
}
NOR = {
has_relation_lover = scope:target
has_relation_friend = scope:target
any_consort = {
this = scope:target
}
betrothed ?= scope:target
}
}
immediate = {
add_character_flag = {
flag = had_event_sway_outcome_2001
years = 5
}
}
option = {
name = sway_outcome.2001.a
scope:target = {
add_opinion = {
target = scope:owner
modifier = sway_blocker_opinion
opinion = -10
}
}
scope:scheme = {
end_scheme = yes
}
}
}
#They think you're plotting against them
#by Linnéa Thimrén
sway_outcome.2002 = {
type = character_event
title = sway_outcome.2002.t
desc = sway_outcome.2002.desc
theme = sway_scheme
left_portrait = scope:target
widget = {
gui = "event_window_widget_scheme"
container = "custom_widgets_container"
}
override_background = {
trigger = { is_travelling_not_at_activity = yes }
reference = terrain_travel
}
override_background = {
trigger = { is_travelling_at_activity = yes }
reference = ep2_activity
}
trigger = {
NOT = {
has_character_flag = had_event_sway_outcome_2002
}
}
weight_multiplier = {
base = 0.75
modifier = {
add = 0.75
has_trait = paranoid
}
}
immediate = {
add_character_flag = {
flag = had_event_sway_outcome_2002
years = 5
}
}
option = {
name = sway_outcome.2002.a
scope:target = {
add_opinion = {
target = scope:owner
modifier = sway_blocker_opinion
opinion = -10
}
add_character_modifier = {
modifier = more_vigilant_recistance_modifier
years = 5
}
}
scope:scheme = {
end_scheme = yes
}
}
}