23494 lines
500 KiB
Text
23494 lines
500 KiB
Text
namespace = ep2_wedding
|
|
|
|
############################
|
|
## Wedding Events - Maintenance
|
|
## 0001-0999
|
|
## by Claudia Baldassi
|
|
############################
|
|
## Wedding Events
|
|
##
|
|
## by Claudia Baldassi, Veronica Pazos, Luke Bean
|
|
#
|
|
## Ceremony Events
|
|
# ep2_wedding.1000 - Host: The other party arrives early and criticizes your chosen options
|
|
# ep2_wedding.1010 - Host: You have an occasion to kickstart your Diplomacy/Seduce targeting efforts
|
|
# ep2_wedding.1080 - Matchmaking Intent: Lay the ground for the matchmaking
|
|
# ep2_wedding.1100 - Northern wedding: the bride goes to a bathhouse with the married women of her family: removal of clothes and kransen (golden circlet)
|
|
# ep2_wedding.1020 - Spouse: The spouses fall in love at first sight
|
|
# ep2_wedding.1030 - A good or bad omen happens: how do you react?
|
|
# ep2_wedding.1120 - Children of the spouses from a previous partner make a fuss
|
|
# ep2_wedding.1130 - A bad secret about one of the spouses comes up
|
|
# ep2_wedding.1140 - Host: A spouse has an embarrassing misstep, how do you recover?
|
|
# ep2_wedding.1150 - Seduction Intent: target scouting
|
|
# ep2_wedding.1160 - Some pesants are at the gate of the festivity - what do you do?
|
|
# ep2_wedding.1170 - A spouse has arrived with a whole parade. Interact with it
|
|
# ep2_wedding.1180 - Your spouse doesn't really like you...
|
|
# ep2_wedding.1190 - Religious guest complains about lavishness, luxury, wastes, and unchaste mingling
|
|
# ep2_wedding.1200 - Proud parent watches everything go well and brags with intent target/friend/rival/neighbor
|
|
# ep2_wedding.1210 - Political talk with a fellow ruler
|
|
# ep2_wedding.1220 - In-laws are bullies (or other close relatives)
|
|
# ep2_wedding.4000 - Non-spouse: Matchmaking Intent - What a nice wedding, maybe you should follow?
|
|
#
|
|
## Banquet Events
|
|
# ep2_wedding.1040 - You make a new friend
|
|
# ep2_wedding.1050 - Someone catches fire from the torches
|
|
# ep2_wedding.1070 - Showing off exotic animals can go very well or very wrong
|
|
# ep2_wedding.1090 - Matchmaking Intent: push a couple together
|
|
# ep2_wedding.1310 - A Friend Is Monopolizing Your Attention
|
|
# ep2_wedding.1320 - A rival seeks forgiveness
|
|
# ep2_wedding.2000-2001 - Diplomatic Intent: You find information about your target by talking to a friend of theirs
|
|
# ep2_wedding.2010-2011 - Host: Paint an animal white and pretend it's a legendary guest
|
|
#
|
|
## Wedding Night Events
|
|
# ep2_wedding.1060 - Spouse: Inspired by Matilda of Tuscany's second wedding: a younger/meeker husband is too intimidated
|
|
# ep2_wedding.1065 - Spouse: Inverted event: it's you who have problems - spouse's reaction
|
|
# ep2_wedding.1110 - Non-spouses: someone gets extremely drunk/doesn't want to leave
|
|
# ep2_wedding.1111 - Non-spouses: you get extremely drunk/don't want to leave
|
|
# ep2_wedding.1300 - Spouse: a spouse has insecurities
|
|
# ep2_wedding.1330 - Spouse: We were lovers before the wedding
|
|
# ep2_wedding.3000 - Spouse: Both spouses are shy/nervous
|
|
# ep2_wedding.3010 - Spouse: Spouse with a secret has a breakdown and confesses
|
|
# ep2_wedding.3020 - Spouse: You find out that your spouse fancies the other gender
|
|
# ep2_wedding.3030 - Spouse: Spouse gives you a memento to symbolize your love
|
|
# ep2_wedding.3040 - Spouse: The bed catches fire while you're at it
|
|
# ep2_wedding.3050 - Non-spouses: Murder Intent - try to kill your target with a chandelier
|
|
# ep2_wedding.3060 - Spouse: Murder Intent - try to kill your spouse while you're at it
|
|
|
|
# BETROTHAL INVALIDATED
|
|
|
|
# The Grand Wedding wasn't organized in the set amount of time
|
|
|
|
ep2_wedding.0001 = {
|
|
type = character_event
|
|
title = ep2_wedding.0001.t
|
|
desc = {
|
|
desc = ep2_wedding.0001.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
NOR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.0001.desc_betrothed
|
|
}
|
|
desc = ep2_wedding.0001.desc_self
|
|
}
|
|
}
|
|
theme = marriage
|
|
left_portrait = {
|
|
character = root
|
|
animation = disapproval
|
|
}
|
|
lower_right_portrait = scope:spouse_1
|
|
lower_center_portrait = scope:spouse_2
|
|
|
|
trigger = {
|
|
exists = var:promised_grand_wedding_marriage_countdown
|
|
has_variable = promised_grand_wedding_marriage_countdown
|
|
var:promised_grand_wedding_marriage_countdown = { is_alive = yes }
|
|
exists = var:promised_grand_wedding_marriage_countdown.betrothed
|
|
NOT = {
|
|
involved_activity ?= {
|
|
has_activity_type = activity_wedding
|
|
activity_host = root
|
|
}
|
|
}
|
|
var:promised_grand_wedding_marriage_countdown = { age >= 19 }
|
|
var:promised_grand_wedding_marriage_countdown.betrothed = { age >= 19 }
|
|
}
|
|
|
|
# This event shouldn't trigger unless the spouses have been adult and marriable for at least 3 years in any case, but to prevent edge cases, we check that they are adult, and if they are not or have not been for at least 3 years, we try again one year later
|
|
on_trigger_fail = {
|
|
if = {
|
|
limit = {
|
|
has_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
if = {
|
|
limit = { exists = var:promised_grand_wedding_marriage_countdown }
|
|
trigger_event = {
|
|
id = ep2_wedding.0001
|
|
days = 365
|
|
}
|
|
set_variable = {
|
|
name = promised_grand_wedding_marriage_countdown
|
|
value = var:promised_grand_wedding_marriage_countdown
|
|
years = grand_wedding_timeout
|
|
}
|
|
}
|
|
else = {
|
|
remove_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
var:promised_grand_wedding_marriage_countdown = {
|
|
save_scope_as = spouse_1
|
|
}
|
|
scope:spouse_1.betrothed = {
|
|
save_scope_as = spouse_2
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0001.a
|
|
break_grand_wedding_betrothal_effect = yes
|
|
}
|
|
}
|
|
|
|
# A betrothed died before organizing the activity - Host
|
|
|
|
ep2_wedding.0002 = {
|
|
type = character_event
|
|
title = ep2_wedding.0002.t
|
|
desc = ep2_wedding.0002.desc
|
|
theme = marriage
|
|
left_portrait = {
|
|
character = root
|
|
animation = grief
|
|
}
|
|
lower_right_portrait = scope:dead_spouse
|
|
lower_center_portrait = scope:alive_spouse
|
|
|
|
immediate = {
|
|
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0002.a
|
|
remove_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
}
|
|
|
|
# Your betrothed died before organizing the activity - Other Betrothed (also if the betrothed was the host)
|
|
|
|
ep2_wedding.0003 = {
|
|
type = character_event
|
|
title = ep2_wedding.0002.t
|
|
desc = ep2_wedding.0003.desc
|
|
theme = marriage
|
|
left_portrait = {
|
|
character = root
|
|
animation = grief
|
|
}
|
|
lower_right_portrait = scope:dead_spouse
|
|
|
|
option = {
|
|
name = ep2_wedding.0003.a
|
|
remove_variable = promised_grand_wedding_by
|
|
if = {
|
|
limit = {
|
|
has_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
remove_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
}
|
|
}
|
|
|
|
# ON START - CEREMONY
|
|
|
|
ep2_wedding.0100 = {
|
|
type = activity_event
|
|
title = ep2_wedding.0100.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
root = scope:host
|
|
NOR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.0100.desc_host
|
|
desc = ep2_wedding.0100.desc_host_outro
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
root = scope:host
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.0100.desc_host_spouse
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.0100.desc_spouse
|
|
}
|
|
desc = ep2_wedding.0100.desc_guest
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
is_pregnant = yes
|
|
}
|
|
desc = ep2_wedding.0100.desc_root_pregnant
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
AND = {
|
|
scope:spouse_1 = { is_pregnant = yes }
|
|
root != scope:spouse_1
|
|
}
|
|
AND = {
|
|
scope:spouse_2 = { is_pregnant = yes }
|
|
root != scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.0100.desc_spouse_pregnant
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
trigger = {
|
|
NOR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
character = root
|
|
animation = happiness
|
|
}
|
|
center_portrait = {
|
|
character = scope:spouse_1_portrait
|
|
camera = camera_event_left_wedding
|
|
triggered_animation = {
|
|
trigger = {
|
|
NOT = { has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 } }
|
|
}
|
|
animation = wedding_bride_left
|
|
}
|
|
animation = disapproval
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2_portrait
|
|
camera = camera_event_right_wedding
|
|
triggered_animation = {
|
|
trigger = {
|
|
NOT = { has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_1 } }
|
|
}
|
|
animation = wedding_groom_right
|
|
}
|
|
animation = dismissal
|
|
}
|
|
|
|
immediate = {
|
|
scope:host = { save_scope_as = host }
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 }
|
|
if = {
|
|
limit = {
|
|
root = scope:spouse_1
|
|
}
|
|
scope:spouse_2 = { save_scope_as = my_spouse }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
root = scope:spouse_2
|
|
}
|
|
scope:spouse_1 = { save_scope_as = my_spouse }
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
sex_opposite_of = scope:activity.special_guest:spouse_2
|
|
is_male = yes
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_2_portrait
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_1_portrait
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_1_portrait
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_2_portrait
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0100.a
|
|
}
|
|
}
|
|
|
|
# ON END - CEREMONY
|
|
|
|
# For the host (not spouse) and guests
|
|
ep2_wedding.0150 = {
|
|
type = activity_event
|
|
title = ep2_wedding.0150.t
|
|
desc = ep2_wedding.0150.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = scope:spouse_1_portrait
|
|
animation = wedding_bride_left
|
|
camera = camera_event_left_wedding
|
|
}
|
|
center_portrait = {
|
|
character = scope:officiant
|
|
animation = wedding_priest
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2_portrait
|
|
animation = wedding_groom_right
|
|
camera = camera_event_right_wedding
|
|
}
|
|
|
|
trigger = {
|
|
exists = scope:activity.special_guest:spouse_1
|
|
exists = scope:activity.special_guest:spouse_2
|
|
NOR = {
|
|
scope:activity.special_guest:spouse_1 = this
|
|
scope:activity.special_guest:spouse_2 = this
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
location.culture = { has_graphical_india_culture_group_trigger = yes }
|
|
}
|
|
play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_india"
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
location.culture = { has_graphical_mena_culture_group_trigger = yes }
|
|
location.culture = { has_graphical_steppe_culture_group_trigger = yes }
|
|
location.culture = { has_graphical_african_culture_group_trigger = yes }
|
|
}
|
|
}
|
|
play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_mena"
|
|
}
|
|
else = {
|
|
play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_west"
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_1
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_2
|
|
}
|
|
if = {
|
|
limit = {
|
|
exists = scope:activity.special_guest:officiant
|
|
}
|
|
scope:activity.special_guest:officiant = { save_scope_as = officiant }
|
|
}
|
|
scope:spouse_1 = {
|
|
show_as_tooltip = {
|
|
marry = scope:spouse_2
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
sex_opposite_of = scope:activity.special_guest:spouse_2
|
|
is_male = yes
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_2_portrait
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_1_portrait
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_1_portrait
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_2_portrait
|
|
}
|
|
}
|
|
base_legitimacy_intent_reward = yes
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0150.a
|
|
}
|
|
}
|
|
|
|
# For the spouses
|
|
ep2_wedding.0151 = {
|
|
type = activity_event
|
|
title = ep2_wedding.0150.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = special_type
|
|
option = wedding_type_bloody
|
|
}
|
|
}
|
|
scope:host = { NOT = { has_variable = bloody_wedding_backed_down_var } }
|
|
}
|
|
desc = ep2_wedding.0151.desc.murder
|
|
}
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = education_diplomacy_3
|
|
has_trait = education_diplomacy_4
|
|
has_trait = education_diplomacy_5
|
|
has_trait = education_stewardship_3
|
|
has_trait = education_stewardship_4
|
|
has_trait = education_stewardship_5
|
|
has_trait = diplomat
|
|
has_trait = administrator
|
|
has_trait = ambitious
|
|
}
|
|
}
|
|
desc = ep2_wedding.0151.desc_diplo
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = education_learning_3
|
|
has_trait = education_learning_4
|
|
has_trait = education_learning_5
|
|
has_trait = scholar
|
|
has_trait = theologian
|
|
has_trait = zealous
|
|
has_character_modifier = bp1_superstition_modifier
|
|
}
|
|
}
|
|
desc = ep2_wedding.0151.desc_religious
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = lifestyle_reveler
|
|
has_trait = gluttonous
|
|
has_trait = gregarious
|
|
has_trait = drunkard
|
|
has_trait = hashishiyah
|
|
}
|
|
}
|
|
desc = ep2_wedding.0151.desc_party
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = seducer
|
|
has_trait = lustful
|
|
has_trait = rakish
|
|
has_trait = deviant
|
|
has_trait = adulterer
|
|
has_trait = fornicator
|
|
}
|
|
}
|
|
desc = ep2_wedding.0151.desc_seducer
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = chaste
|
|
has_trait = humble
|
|
has_trait = shy
|
|
has_trait = reclusive
|
|
}
|
|
}
|
|
desc = ep2_wedding.0151.desc_shy
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = wrathful
|
|
has_trait = arrogant
|
|
has_trait = callous
|
|
has_trait = irritable
|
|
has_trait = impatient
|
|
}
|
|
}
|
|
desc = ep2_wedding.0151.desc_arrogant
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = paranoid
|
|
has_trait = craven
|
|
}
|
|
}
|
|
desc = ep2_wedding.0151.desc_paranoid
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = maimed
|
|
has_trait = one_eyed
|
|
has_trait = one_legged
|
|
has_trait = disfigured
|
|
has_trait = scarred
|
|
has_trait = blind
|
|
has_trait = beauty_bad
|
|
has_trait = physique_bad
|
|
has_trait = clubfooted
|
|
has_trait = hunchbacked
|
|
has_trait = weak
|
|
has_trait = scaly
|
|
has_trait = wheezing
|
|
has_trait = bleeder
|
|
}
|
|
}
|
|
desc = ep2_wedding.0151.desc_appearance
|
|
}
|
|
desc = ep2_wedding.0151.desc
|
|
}
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = scope:spouse_1_portrait
|
|
animation = wedding_bride_left
|
|
camera = camera_event_left_wedding
|
|
}
|
|
center_portrait = {
|
|
character = scope:officiant
|
|
animation = wedding_priest
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2_portrait
|
|
animation = wedding_groom_right
|
|
camera = camera_event_right_wedding
|
|
}
|
|
|
|
trigger = {
|
|
exists = scope:activity.special_guest:spouse_1
|
|
exists = scope:activity.special_guest:spouse_2
|
|
root = scope:activity.special_guest:spouse_1
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
location.culture = { has_graphical_india_culture_group_trigger = yes }
|
|
}
|
|
play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_india"
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
location.culture = { has_graphical_mena_culture_group_trigger = yes }
|
|
location.culture = { has_graphical_steppe_culture_group_trigger = yes }
|
|
location.culture = { has_graphical_african_culture_group_trigger = yes }
|
|
}
|
|
}
|
|
play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_mena"
|
|
}
|
|
else = {
|
|
play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_west"
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_1
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_2
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
sex_opposite_of = scope:activity.special_guest:spouse_2
|
|
is_male = yes
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_2_portrait
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_1_portrait
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_1_portrait
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_2_portrait
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0151.a
|
|
scope:spouse_1 = {
|
|
marry = scope:spouse_2
|
|
}
|
|
if = {
|
|
limit = { scope:officiant ?= scope:spouse_1.faith.religious_head }
|
|
scope:spouse_1 = {
|
|
add_piety = major_piety_gain
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { scope:officiant.involved_activity ?= scope:activity }
|
|
scope:spouse_1 = {
|
|
add_piety = medium_piety_gain
|
|
}
|
|
}
|
|
else = {
|
|
scope:spouse_1 = {
|
|
add_piety = minor_piety_gain
|
|
}
|
|
}
|
|
if = {
|
|
limit = { scope:officiant ?= scope:spouse_2.faith.religious_head }
|
|
scope:spouse_2 = {
|
|
add_piety = major_piety_gain
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { scope:officiant.involved_activity ?= scope:activity }
|
|
scope:spouse_2 = {
|
|
add_piety = medium_piety_gain
|
|
}
|
|
}
|
|
else = {
|
|
scope:spouse_2 = {
|
|
add_piety = minor_piety_gain
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
root = scope:host
|
|
}
|
|
scope:activity.activity_location.county = {
|
|
add_county_modifier = {
|
|
modifier = ruler_married_here_county_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
scope:spouse_1.dynasty ?= { add_dynasty_prestige = medium_dynasty_prestige_gain }
|
|
if = {
|
|
limit = {
|
|
NOT = { scope:spouse_2.dynasty ?= scope:spouse_1.dynasty }
|
|
}
|
|
scope:spouse_2.dynasty ?= { add_dynasty_prestige = medium_dynasty_prestige_gain }
|
|
}
|
|
if = {
|
|
limit = {
|
|
this = scope:spouse_1
|
|
}
|
|
create_character_memory = {
|
|
type = grand_wedding_got_married
|
|
participants = {
|
|
spouse = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
create_character_memory = {
|
|
type = grand_wedding_got_married
|
|
participants = {
|
|
spouse = scope:spouse_1
|
|
}
|
|
}
|
|
}
|
|
scope:spouse_1 = { remove_variable = promised_grand_wedding_by }
|
|
scope:spouse_2 = { remove_variable = promised_grand_wedding_by }
|
|
scope:host = {
|
|
remove_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
# The marriage should not be consummated before the Wedding Night!
|
|
hidden_effect = {
|
|
scope:spouse_1 = {
|
|
add_character_modifier = { modifier = wedding_fertility_delay_modifier }
|
|
}
|
|
scope:spouse_2 = {
|
|
add_character_modifier = { modifier = wedding_fertility_delay_modifier }
|
|
}
|
|
}
|
|
# Progress to next phase
|
|
hidden_effect = {
|
|
scope:activity = { progress_activity_phase_after = { days = 1 } }
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0151.b
|
|
trigger = {
|
|
is_ai = no
|
|
}
|
|
custom_tooltip = ep2_wedding.0151.b.tt
|
|
scope:activity = {
|
|
set_variable = wedding_invalidated_said_no
|
|
}
|
|
add_character_flag = grand_wedding_said_no
|
|
ai_chance = {
|
|
base = 0
|
|
}
|
|
}
|
|
}
|
|
|
|
scripted_effect ep2_wedding_cleanup_jitter_modifier_effect = {
|
|
if = {
|
|
limit = { has_character_modifier = wedding_confident_groom }
|
|
remove_character_modifier = wedding_confident_groom
|
|
}
|
|
if = {
|
|
limit = { has_character_modifier = wedding_confident_bride }
|
|
remove_character_modifier = wedding_confident_bride
|
|
}
|
|
if = {
|
|
limit = { has_character_modifier = wedding_jitters }
|
|
remove_character_modifier = wedding_jitters
|
|
}
|
|
}
|
|
|
|
# I DON'T: the consequences
|
|
ep2_wedding.0152 = {
|
|
type = character_event
|
|
title = ep2_wedding.0152.t
|
|
desc = ep2_wedding.0152.desc
|
|
theme = wedding_ceremony_activity
|
|
|
|
left_portrait = {
|
|
character = root
|
|
animation = wedding_objection_start
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = shock
|
|
}
|
|
lower_right_portrait = scope:scorned_matchmaker
|
|
|
|
immediate = {
|
|
scope:spouse_2.matchmaker = {
|
|
if = {
|
|
limit = {
|
|
this != scope:spouse_2
|
|
}
|
|
save_scope_as = scorned_matchmaker
|
|
}
|
|
}
|
|
scope:previous_host = {
|
|
# the betrothal is broken: hand out the consequences
|
|
break_grand_wedding_betrothal_effect = yes
|
|
|
|
# The wedding is invalidated: get a refund
|
|
custom_tooltip = {
|
|
text = ep2_wedding.9000.tt
|
|
add_gold = var:gwedding_gold_recoup_value
|
|
}
|
|
}
|
|
create_character_memory = {
|
|
type = grand_wedding_refused_to_marry
|
|
participants = {
|
|
spouse = scope:spouse_2
|
|
}
|
|
}
|
|
ep2_wedding_cleanup_jitter_modifier_effect = yes
|
|
scope:spouse_2 = {
|
|
ep2_wedding_cleanup_jitter_modifier_effect = yes
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0152.a
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = grand_wedding_said_no
|
|
scope:previous_host = { remove_variable = gwedding_gold_recoup_value }
|
|
}
|
|
}
|
|
|
|
|
|
# ON START - BANQUET
|
|
|
|
ep2_wedding.0200 = {
|
|
type = activity_event
|
|
title = ep2_wedding.0200.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = { #spouse and bloody wedding
|
|
this = scope:host
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = special_type
|
|
option = wedding_type_bloody
|
|
}
|
|
}
|
|
root = scope:spouse_1
|
|
}
|
|
desc = ep2_wedding.0200.desc.murder_spouse
|
|
}
|
|
triggered_desc = { #bloody wedding
|
|
trigger = {
|
|
this = scope:host
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = special_type
|
|
option = wedding_type_bloody
|
|
}
|
|
}
|
|
root != scope:spouse_1
|
|
}
|
|
desc = ep2_wedding.0200.desc.murder
|
|
}
|
|
triggered_desc = { #spouses
|
|
trigger = {
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 }
|
|
}
|
|
desc = ep2_wedding.0200.desc_spouse_dislike
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
has_any_good_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 }
|
|
}
|
|
desc = ep2_wedding.0200.desc_spouse_like
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
OR = {
|
|
has_trait = lifestyle_reveler
|
|
has_trait = gluttonous
|
|
has_trait = gregarious
|
|
has_trait = drunkard
|
|
has_trait = hashishiyah
|
|
}
|
|
}
|
|
desc = ep2_wedding.0200.desc_spouse_party
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
OR = {
|
|
has_trait = chaste
|
|
has_trait = humble
|
|
has_trait = shy
|
|
has_trait = reclusive
|
|
}
|
|
}
|
|
desc = ep2_wedding.0200.desc_spouse_shy
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
OR = {
|
|
has_trait = wrathful
|
|
has_trait = arrogant
|
|
has_trait = callous
|
|
has_trait = irritable
|
|
has_trait = impatient
|
|
}
|
|
}
|
|
desc = ep2_wedding.0200.desc_spouse_arrogant
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.0200.desc_spouse_fallback
|
|
}
|
|
triggered_desc = { #host
|
|
trigger = {
|
|
root = scope:host
|
|
}
|
|
desc = ep2_wedding.0200.desc_host
|
|
}
|
|
desc = ep2_wedding.0200.desc #guest
|
|
}
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
trigger = {
|
|
NOR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
character = root
|
|
animation = toast_goblet
|
|
}
|
|
center_portrait = {
|
|
character = scope:spouse_1
|
|
camera = camera_event_left_wedding
|
|
triggered_animation = {
|
|
trigger = {
|
|
scope:spouse_1 = {
|
|
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 }
|
|
}
|
|
}
|
|
animation = disapproval
|
|
}
|
|
animation = wedding_bride_left
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
camera = camera_event_right_wedding
|
|
triggered_animation = {
|
|
trigger = {
|
|
scope:spouse_2 = {
|
|
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_1 }
|
|
}
|
|
}
|
|
animation = disapproval
|
|
}
|
|
animation = wedding_groom_right
|
|
}
|
|
|
|
trigger = {
|
|
exists = scope:activity
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 }
|
|
scope:activity.var:spouse_2_var = { save_scope_as = spouse_2 }
|
|
if = {
|
|
limit = {
|
|
root = scope:spouse_1
|
|
}
|
|
scope:spouse_2 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
root = scope:spouse_2
|
|
}
|
|
scope:spouse_1 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = {
|
|
trigger = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = special_type
|
|
option = wedding_type_bloody
|
|
}
|
|
}
|
|
}
|
|
text = ep2_wedding.0200.a.murder
|
|
}
|
|
name = {
|
|
trigger = {
|
|
NOT = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = special_type
|
|
option = wedding_type_bloody
|
|
}
|
|
}
|
|
}
|
|
}
|
|
text = ep2_wedding.0200.a
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
root = scope:host
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
add_prestige = minor_prestige_gain
|
|
}
|
|
}
|
|
}
|
|
|
|
# ON START - WEDDING NIGHT
|
|
|
|
ep2_wedding.0300 = {
|
|
type = activity_event
|
|
title = ep2_wedding.0300.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = special_type
|
|
option = wedding_type_bloody
|
|
}
|
|
}
|
|
root = scope:spouse_1
|
|
}
|
|
desc = ep2_wedding.0300.desc.murder_spouse
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.0300.desc_spouse
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
root = scope:host
|
|
}
|
|
desc = ep2_wedding.0300.desc
|
|
}
|
|
desc = ep2_wedding.0300.desc_guest
|
|
}
|
|
}
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
trigger = {
|
|
NOR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
character = root
|
|
animation = happiness
|
|
}
|
|
center_portrait = {
|
|
character = scope:spouse_1
|
|
triggered_animation = {
|
|
trigger = {
|
|
scope:spouse_1 = {
|
|
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_2 }
|
|
}
|
|
}
|
|
animation = disapproval
|
|
}
|
|
animation = reception_groom_left
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
triggered_animation = {
|
|
trigger = {
|
|
scope:spouse_2 = {
|
|
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:spouse_1 }
|
|
}
|
|
}
|
|
animation = dismissal
|
|
}
|
|
animation = reception_bride_right
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity.special_guest:spouse_1 ?= {
|
|
save_scope_as = spouse_1
|
|
}
|
|
scope:activity.special_guest:spouse_2 ?= {
|
|
save_scope_as = spouse_2
|
|
}
|
|
if = {
|
|
limit = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
}
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = other_spouse }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = other_spouse }
|
|
}
|
|
hidden_effect = {
|
|
scope:spouse_1 ?= {
|
|
if = {
|
|
limit = {
|
|
has_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
remove_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
}
|
|
scope:spouse_2 ?= {
|
|
if = {
|
|
limit = {
|
|
has_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
remove_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0300.a
|
|
}
|
|
}
|
|
|
|
# INVALIDATED
|
|
|
|
# For the host (not spouse) and the guests - one of the spouses died
|
|
|
|
ep2_wedding.0900 = {
|
|
type = character_event
|
|
title = ep2_wedding.0900.t
|
|
desc = ep2_wedding.0900.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = sadness
|
|
}
|
|
right_portrait = {
|
|
character = scope:sad_spouse
|
|
animation = grief
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
scope:spouse_1 ?= { is_alive = yes }
|
|
}
|
|
scope:spouse_1 = { save_scope_as = sad_spouse }
|
|
scope:spouse_2 = { save_scope_as = dead_spouse }
|
|
}
|
|
else = {
|
|
scope:spouse_2 = { save_scope_as = sad_spouse }
|
|
scope:spouse_1 = { save_scope_as = dead_spouse }
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:sad_spouse = { has_character_modifier = wedding_fertility_delay_modifier }
|
|
}
|
|
scope:sad_spouse = { remove_character_modifier = wedding_fertility_delay_modifier }
|
|
}
|
|
if = {
|
|
limit = {
|
|
root = scope:previous_host
|
|
}
|
|
# The wedding is invalidated: get a refund
|
|
custom_tooltip = {
|
|
text = ep2_wedding.9000.tt
|
|
add_gold = var:gwedding_gold_recoup_value
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0900.a
|
|
}
|
|
|
|
after = {
|
|
if = {
|
|
limit = {
|
|
has_variable = gwedding_gold_recoup_value
|
|
}
|
|
remove_variable = gwedding_gold_recoup_value
|
|
}
|
|
}
|
|
}
|
|
|
|
# For the spouses - the other spouse died
|
|
|
|
ep2_wedding.0910 = {
|
|
type = character_event
|
|
title = ep2_wedding.0900.t
|
|
desc = ep2_wedding.0910.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = grief
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
root = scope:previous_host
|
|
}
|
|
# The wedding is invalidated: get a refund
|
|
custom_tooltip = {
|
|
text = ep2_wedding.9000.tt
|
|
add_gold = var:gwedding_gold_recoup_value
|
|
}
|
|
}
|
|
create_character_memory = {
|
|
type = grand_wedding_death_at_wedding
|
|
participants = {
|
|
dead_spouse = scope:dead_spouse
|
|
}
|
|
}
|
|
error_log = "Invalidating [activity.GetName] of [activity.GetOwner.GetLogName] because a spouse is dead"
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0910.a
|
|
}
|
|
|
|
after = {
|
|
if = {
|
|
limit = {
|
|
has_variable = gwedding_gold_recoup_value
|
|
}
|
|
remove_variable = gwedding_gold_recoup_value
|
|
}
|
|
remove_variable = promised_grand_wedding_by
|
|
scope:previous_host = {
|
|
remove_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
remove_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
}
|
|
}
|
|
|
|
# If the host who is a spouse dies, notify the heir
|
|
ep2_wedding.0915 = {
|
|
type = character_event
|
|
title = ep2_wedding.0900.t
|
|
desc = ep2_wedding.0915.desc
|
|
theme = family
|
|
left_portrait = {
|
|
character = root
|
|
animation = sadness
|
|
}
|
|
lower_center_portrait = scope:previous_host
|
|
|
|
immediate = {
|
|
# The wedding is invalidated: get a refund
|
|
custom_tooltip = {
|
|
text = ep2_wedding.9015.tt
|
|
add_gold = scope:previous_host.var:gwedding_gold_recoup_value
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0915.a
|
|
}
|
|
|
|
after = {
|
|
if = {
|
|
limit = {
|
|
has_variable = gwedding_gold_recoup_value
|
|
}
|
|
remove_variable = gwedding_gold_recoup_value
|
|
}
|
|
}
|
|
}
|
|
|
|
# A spouse has been imprisoned: for the prisoner
|
|
ep2_wedding.0920 = {
|
|
type = character_event
|
|
title = ep2_wedding.0900.t
|
|
desc = ep2_wedding.0920.desc
|
|
theme = prison
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = { is_in_prison_type = house_arrest }
|
|
animation = prisonhouse
|
|
}
|
|
triggered_animation = {
|
|
trigger = { is_in_prison_type = dungeon }
|
|
animation = prisondungeon
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
root = scope:previous_host
|
|
}
|
|
# The wedding is invalidated: get a refund
|
|
custom_tooltip = {
|
|
text = ep2_wedding.9000.tt
|
|
add_gold = var:gwedding_gold_recoup_value
|
|
}
|
|
}
|
|
create_character_memory = {
|
|
type = grand_wedding_missed_wedding_in_prison
|
|
participants = {
|
|
spouse = scope:free_spouse
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0920.a
|
|
}
|
|
|
|
after = {
|
|
if = {
|
|
limit = {
|
|
has_variable = gwedding_gold_recoup_value
|
|
}
|
|
remove_variable = gwedding_gold_recoup_value
|
|
}
|
|
remove_variable = promised_grand_wedding_by
|
|
scope:previous_host = {
|
|
remove_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
remove_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
}
|
|
}
|
|
|
|
# A spouse has been imprisoned: for everyone else
|
|
ep2_wedding.0921 = {
|
|
type = character_event
|
|
title = ep2_wedding.0900.t
|
|
desc = ep2_wedding.0921.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = sadness
|
|
}
|
|
lower_center_portrait = scope:prisoner_spouse
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
root = scope:previous_host
|
|
}
|
|
# The wedding is invalidated: get a refund
|
|
custom_tooltip = {
|
|
text = ep2_wedding.9000.tt
|
|
add_gold = var:gwedding_gold_recoup_value
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
root = scope:free_spouse
|
|
}
|
|
create_character_memory = {
|
|
type = grand_wedding_canceled_in_prison
|
|
participants = {
|
|
spouse = scope:prisoner_spouse
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0921.a
|
|
}
|
|
|
|
after = {
|
|
if = {
|
|
limit = {
|
|
has_variable = gwedding_gold_recoup_value
|
|
}
|
|
remove_variable = gwedding_gold_recoup_value
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_variable = promised_grand_wedding_by
|
|
}
|
|
remove_variable = promised_grand_wedding_by
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
remove_character_modifier = wedding_fertility_delay_modifier
|
|
}
|
|
}
|
|
}
|
|
|
|
# CONCLUSION - HOST
|
|
|
|
ep2_wedding.0950 = {
|
|
type = activity_event
|
|
title = ep2_wedding.0950.t
|
|
desc = ep2_wedding.0950.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
trigger = {
|
|
NOR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
character = root
|
|
animation = happiness
|
|
}
|
|
center_portrait = {
|
|
character = scope:spouse_1
|
|
animation = wedding_bride_left
|
|
camera = camera_event_left_wedding
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = wedding_groom_right
|
|
camera = camera_event_right_wedding
|
|
}
|
|
|
|
immediate = {
|
|
play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_end"
|
|
play_music_cue = weddingend_cue
|
|
show_as_tooltip = {
|
|
scope:spouse_1 = { marry = scope:spouse_2 }
|
|
tooltip_disburse_wedding_host_activity_rewards = yes
|
|
}
|
|
save_scope_as = root_scope
|
|
# if the host is also a spouse, we disburse the special host-spouse rewards to the host, and the regular spouse rewards to the other spouse
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
show_as_tooltip = { disburse_wedding_spouse_host_activity_rewards = yes }
|
|
}
|
|
else = { #the spouses already had a memory created during the ceremony
|
|
create_character_memory = {
|
|
type = grand_wedding_completed_host
|
|
participants = {
|
|
spouse_1 = scope:spouse_1
|
|
spouse_2 = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0950.a
|
|
}
|
|
}
|
|
|
|
# CONCLUSION - SPOUSES
|
|
|
|
ep2_wedding.0960 = {
|
|
type = activity_event
|
|
title = ep2_wedding.0950.t
|
|
desc = ep2_wedding.0960.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = scope:spouse_1
|
|
animation = wedding_bride_left
|
|
camera = camera_event_left_wedding
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = wedding_groom_right
|
|
camera = camera_event_right_wedding
|
|
}
|
|
|
|
immediate = {
|
|
play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_end"
|
|
play_music_cue = weddingend_cue
|
|
save_scope_as = root_scope
|
|
show_as_tooltip = {
|
|
scope:spouse_1 = { marry = scope:spouse_2 }
|
|
disburse_wedding_spouse_activity_rewards = yes
|
|
}
|
|
if = {
|
|
limit = {
|
|
root = scope:spouse_1
|
|
}
|
|
scope:spouse_2 = { save_scope_as = other_spouse }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
root = scope:spouse_2
|
|
}
|
|
scope:spouse_1 = { save_scope_as = other_spouse }
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0950.a
|
|
}
|
|
}
|
|
|
|
# CONCLUSION - GUESTS
|
|
|
|
ep2_wedding.0970 = {
|
|
type = activity_event
|
|
title = ep2_wedding.0950.t
|
|
desc = ep2_wedding.0970.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = scope:spouse_1
|
|
animation = wedding_bride_left
|
|
camera = camera_event_left_wedding
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = wedding_groom_right
|
|
camera = camera_event_right_wedding
|
|
}
|
|
|
|
immediate = {
|
|
play_sound_effect = "event:/DLC/EP2/SFX/Stingers/Grand_Activities/ep2_mx_sting_wedding_end"
|
|
play_music_cue = weddingend_cue
|
|
save_scope_as = root_scope
|
|
show_as_tooltip = {
|
|
scope:spouse_1 = { marry = scope:spouse_2 }
|
|
tooltip_disburse_wedding_guest_activity_rewards = yes
|
|
}
|
|
create_character_memory = {
|
|
type = grand_wedding_completed_guest
|
|
participants = {
|
|
spouse_1 = scope:spouse_1
|
|
spouse_2 = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0970.a
|
|
}
|
|
}
|
|
|
|
# INVALIDATION - SPOUSE DISAPPEARS
|
|
ep2_wedding.0997 = {
|
|
type = character_event
|
|
title = ep2_wedding.0900.t
|
|
desc = {
|
|
desc = ep2_wedding.0997.desc_intro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:spouse_1
|
|
root = scope:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.0997.desc_spouse
|
|
}
|
|
desc = ep2_wedding.0997.desc_generic
|
|
}
|
|
}
|
|
|
|
theme = realm
|
|
|
|
left_portrait = {
|
|
character = root
|
|
animation = sadness
|
|
}
|
|
|
|
immediate = {
|
|
# we should never get this far. If it happens, just get a free pass out of the Grand Wedding Promise since something has gone wrong
|
|
if = {
|
|
limit = {
|
|
this = scope:host
|
|
}
|
|
remove_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_variable = promised_grand_wedding_by
|
|
var:promised_grand_wedding_by = scope:host
|
|
}
|
|
remove_variable = promised_grand_wedding_by
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0998.a
|
|
}
|
|
}
|
|
|
|
# FALLBACK INVALIDATION
|
|
ep2_wedding.0998 = {
|
|
type = character_event
|
|
title = ep2_wedding.0900.t
|
|
desc = ep2_wedding.0998.desc
|
|
theme = realm
|
|
|
|
left_portrait = {
|
|
character = root
|
|
animation = sadness
|
|
}
|
|
|
|
immediate = {
|
|
# we should never get this far. If it happens, just get a free pass out of the Grand Wedding Promise since something has gone wrong
|
|
if = {
|
|
limit = {
|
|
this = scope:host
|
|
}
|
|
remove_variable = promised_grand_wedding_marriage_countdown
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_variable = promised_grand_wedding_by
|
|
var:promised_grand_wedding_by = scope:host
|
|
}
|
|
remove_variable = promised_grand_wedding_by
|
|
}
|
|
if = {
|
|
limit = {
|
|
exists = scope:spouse_1
|
|
exists = scope:spouse_2
|
|
}
|
|
show_as_tooltip = {
|
|
scope:spouse_1 = {
|
|
break_betrothal = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0998.a
|
|
}
|
|
}
|
|
|
|
# INVALIDATION - HOST TIER TOO LOW
|
|
ep2_wedding.0999 = {
|
|
type = character_event
|
|
title = ep2_wedding.0999.t
|
|
desc = ep2_wedding.0999.desc
|
|
theme = realm
|
|
|
|
left_portrait = {
|
|
character = scope:host
|
|
animation = grief
|
|
}
|
|
|
|
immediate = {
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.0999.a
|
|
}
|
|
}
|
|
|
|
# CEREMONY EVENTS
|
|
|
|
##################################################
|
|
# Artistic Differences
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1000
|
|
##################################################
|
|
|
|
# The other party arrives early and criticizes your chosen options.
|
|
|
|
scripted_trigger ep2_wedding_1000_valid_relative_trigger = {
|
|
is_alive = yes
|
|
is_ai = yes
|
|
is_participant_in_activity = scope:activity
|
|
age >= 10
|
|
location = root.location
|
|
NOT = { has_character_flag = busy_in_wgathering_event }
|
|
}
|
|
|
|
ep2_wedding.1000 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1000.t
|
|
desc = {
|
|
desc = ep2_wedding.1000.desc
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_bad
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1000.desc_servants
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_good
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1000.desc_dec
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_bad
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1000.desc_dec_low
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_entertainment
|
|
option = wedding_entertainment_good
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1000.desc_entertainment
|
|
}
|
|
desc = ep2_wedding.1000.desc_fallback
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = eyeroll
|
|
}
|
|
right_portrait = {
|
|
character = scope:1000_relative
|
|
animation = disapproval
|
|
}
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
any_close_family_member = {
|
|
is_alive = yes
|
|
is_ai = yes
|
|
is_participant_in_activity = scope:activity
|
|
has_trait = fickle
|
|
}
|
|
}
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
any_close_family_member = {
|
|
is_alive = yes
|
|
is_ai = yes
|
|
is_participant_in_activity = scope:activity
|
|
has_trait = arrogant
|
|
}
|
|
}
|
|
add = 3
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
any_close_family_member = {
|
|
is_alive = yes
|
|
is_ai = yes
|
|
is_participant_in_activity = scope:activity
|
|
root.intent_target ?= this
|
|
}
|
|
}
|
|
add = 3
|
|
}
|
|
modifier = {
|
|
scope:activity.special_guest:spouse_2 ?= {
|
|
house_has_feud_relation_with_trigger = { TARGET = scope:activity.special_guest:spouse_1 }
|
|
}
|
|
add = 5
|
|
}
|
|
}
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:host = root
|
|
location = scope:activity.activity_location
|
|
scope:activity.special_guest:spouse_1 = root
|
|
|
|
scope:activity.special_guest:spouse_2 = {
|
|
any_close_family_member = {
|
|
ep2_wedding_1000_valid_relative_trigger = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_wgathering_event
|
|
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_1
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_2
|
|
}
|
|
|
|
scope:spouse_2 = {
|
|
random_close_family_member = {
|
|
limit = {
|
|
ep2_wedding_1000_valid_relative_trigger = yes
|
|
root.intent_target ?= this
|
|
}
|
|
alternative_limit = {
|
|
ep2_wedding_1000_valid_relative_trigger = yes
|
|
}
|
|
save_scope_as = 1000_relative
|
|
add_character_flag = busy_in_wgathering_event
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option A: mediate
|
|
option = {
|
|
name = ep2_wedding.1000.a
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:1000_relative
|
|
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1000.a.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1000.a.success.tt
|
|
left_icon = root
|
|
right_icon = scope:1000_relative
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_artistic_mediate_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:1000_relative
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1000_relative
|
|
modifier = impressed_opinion
|
|
opinion = 20
|
|
}
|
|
add_prestige = minor_prestige_gain
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
impatient = minor_stress_impact_gain
|
|
arrogant = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1000.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1000.a.failure.tt
|
|
left_icon = root
|
|
right_icon = scope:1000_relative
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_artistic_mediate_fail_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = root
|
|
target = scope:1000_relative
|
|
}
|
|
root = {
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
impatient = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
add = -50
|
|
has_trait = impatient
|
|
}
|
|
modifier = {
|
|
add = -50
|
|
has_trait = arrogant
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: insult
|
|
option = {
|
|
name = ep2_wedding.1000.b
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_artistic_insult_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = root
|
|
target = scope:1000_relative
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1000_relative
|
|
modifier = insult_opinion
|
|
opinion = -20
|
|
}
|
|
add_dread = minor_dread_gain
|
|
}
|
|
}
|
|
}
|
|
|
|
stress_impact = {
|
|
patient = medium_stress_impact_gain
|
|
humble = medium_stress_impact_gain
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
add = -50
|
|
has_trait = patient
|
|
}
|
|
modifier = {
|
|
add = -50
|
|
has_trait = humble
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option C: I don't care
|
|
option = {
|
|
name = ep2_wedding.1000.c
|
|
trigger = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 80
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_wgathering_event
|
|
scope:1000_relative = { remove_character_flag = busy_in_wgathering_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Magnificent Welcome
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1010
|
|
##################################################
|
|
|
|
# You have an occasion to kickstart your Diplomacy/Seduce targeting efforts
|
|
|
|
ep2_wedding.1010 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1010.t
|
|
desc = {
|
|
desc = ep2_wedding.1010.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_activity_intent = diplomatic_intent
|
|
}
|
|
desc = ep2_wedding.1010.diplo
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_activity_intent = woo_attendee_intent
|
|
}
|
|
desc = ep2_wedding.1010.seduce
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:1010_match
|
|
}
|
|
desc = ep2_wedding.1010.match
|
|
}
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = happiness
|
|
}
|
|
center_portrait = {
|
|
trigger = {
|
|
exists = scope:1010_match
|
|
}
|
|
character = scope:1010_match
|
|
animation = boredom
|
|
}
|
|
right_portrait = {
|
|
character = scope:1010_target
|
|
animation = dismissal
|
|
}
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
OR = {
|
|
has_activity_intent = diplomatic_intent
|
|
has_activity_intent = woo_attendee_intent
|
|
}
|
|
|
|
scope:host = root
|
|
intent_target.location = root.location
|
|
|
|
intent_target = {
|
|
is_ai = yes
|
|
NOT = { has_character_flag = busy_in_wgathering_event }
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
intent_target = {
|
|
save_scope_as = 1010_target
|
|
add_character_flag = busy_in_wgathering_event
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_child = {
|
|
is_adult = no
|
|
is_betrothed = no
|
|
is_participant_in_activity = scope:activity
|
|
is_ai = yes
|
|
NOT = { has_character_flag = busy_in_wgathering_event }
|
|
}
|
|
}
|
|
random_child = {
|
|
limit = {
|
|
is_adult = no
|
|
is_betrothed = no
|
|
is_participant_in_activity = scope:activity
|
|
is_ai = yes
|
|
NOT = { has_character_flag = busy_in_wgathering_event }
|
|
}
|
|
save_scope_as = 1010_match
|
|
add_character_flag = busy_in_wgathering_event
|
|
}
|
|
}
|
|
add_character_flag = busy_in_wgathering_event
|
|
}
|
|
|
|
#Option A: gardens
|
|
option = {
|
|
name = ep2_wedding.1010.a
|
|
random_list = {
|
|
# target is impressed
|
|
60 = {
|
|
modifier = {
|
|
scope:activity.activity_location.county = {
|
|
development_level >= medium_development_level
|
|
}
|
|
add = 15
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_gardener
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_herbalist
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
any_court_position_holder = {
|
|
type = court_gardener_court_position
|
|
}
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
scope:activity.activity_location = {
|
|
has_building_or_higher = orchards_01
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:activity.activity_location = {
|
|
has_building_or_higher = royal_garden_01
|
|
}
|
|
add = 50
|
|
}
|
|
desc = ep2_wedding.1010.a.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1010.a.success.tt
|
|
left_icon = scope:1010_target
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_welcome_garden_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:1010_target
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1010_target
|
|
modifier = impressed_opinion
|
|
opinion = 20
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = woo_attendee_intent
|
|
can_set_relation_lover_trigger = { CHARACTER = scope:1010_target }
|
|
}
|
|
progress_towards_lover_effect = {
|
|
REASON = lover_atmospheric_location
|
|
CHARACTER = scope:1010_target
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
lustful = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
#target is not impressed
|
|
40 = {
|
|
modifier = {
|
|
diplomacy < 10
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
stewardship < 10
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:activity.activity_location.county = {
|
|
development_level <= bad_development_level
|
|
}
|
|
add = 30
|
|
}
|
|
desc = ep2_wedding.1010.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1010.a.failure.tt
|
|
left_icon = scope:1010_target
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_welcome_garden_fail_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = root
|
|
target = scope:1010_target
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1010_target
|
|
modifier = bored_opinion
|
|
opinion = -20
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
scope:activity.activity_location.county = {
|
|
development_level >= medium_development_level
|
|
}
|
|
add = 15
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_gardener
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_herbalist
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
any_court_position_holder = {
|
|
type = court_gardener_court_position
|
|
}
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
scope:activity.activity_location = {
|
|
has_building_or_higher = orchards_01
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:activity.activity_location = {
|
|
has_building_or_higher = royal_garden_01
|
|
}
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: venue
|
|
option = {
|
|
name = ep2_wedding.1010.b
|
|
random_list = {
|
|
# target is impressed
|
|
60 = {
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_good
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_food
|
|
option = wedding_food_good
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_entertainment
|
|
option = wedding_entertainment_good
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
desc = ep2_wedding.1010.b.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1010.a.success.tt
|
|
left_icon = scope:1010_target
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_welcome_ceremony_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:1010_target
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1010_target
|
|
modifier = impressed_opinion
|
|
opinion = 20
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = woo_attendee_intent
|
|
can_set_relation_lover_trigger = { CHARACTER = scope:1010_target }
|
|
}
|
|
progress_towards_lover_effect = {
|
|
REASON = lover_atmospheric_location
|
|
CHARACTER = scope:1010_target
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
lustful = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
#target is not impressed
|
|
40 = {
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_bad
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_food
|
|
option = wedding_food_bad
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_entertainment
|
|
option = wedding_entertainment_bad
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
desc = ep2_wedding.1010.b.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1010.a.failure.tt
|
|
left_icon = scope:1010_target
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_welcome_ceremony_fail_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = root
|
|
target = scope:1010_target
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1010_target
|
|
modifier = bored_opinion
|
|
opinion = -20
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_good
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_food
|
|
option = wedding_food_good
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_entertainment
|
|
option = wedding_entertainment_good
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option C: nevermind
|
|
option = {
|
|
name = ep2_wedding.1010.c
|
|
reverse_add_opinion = {
|
|
target = scope:1010_target
|
|
modifier = feeling_welcome_opinion
|
|
opinion = 5
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
after = {
|
|
remove_character_flag = busy_in_wgathering_event
|
|
scope:1010_target = { remove_character_flag = busy_in_wgathering_event }
|
|
if = {
|
|
limit = {
|
|
exists = scope:1010_match
|
|
}
|
|
scope:1010_match = { remove_character_flag = busy_in_wgathering_event }
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Proper Match
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1080
|
|
##################################################
|
|
|
|
# Lay the ground for the matchmaking
|
|
|
|
ep2_wedding.1080 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1080.t
|
|
desc = {
|
|
desc = ep2_wedding.1080.desc
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:matchmaking_2
|
|
}
|
|
desc = ep2_wedding.1080.desc_2
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = personality_rational
|
|
}
|
|
right_portrait = {
|
|
character = scope:1080_target
|
|
animation = happiness
|
|
}
|
|
lower_left_portrait = scope:matchmaking_1
|
|
lower_center_portrait = scope:matchmaking_2
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
has_activity_intent = matchmaking_intent
|
|
|
|
intent_target.location = root.location
|
|
location = scope:activity.activity_location
|
|
|
|
intent_target = {
|
|
has_activity_state = passive
|
|
is_ai = yes
|
|
NOT = { has_character_flag = busy_in_wgathering_event }
|
|
}
|
|
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
is_ai = yes
|
|
location = root.location
|
|
has_activity_state = passive
|
|
can_marry_character_trigger = { CHARACTER = root.intent_target }
|
|
NOR = {
|
|
exists = betrothed
|
|
has_character_flag = busy_in_wgathering_event
|
|
is_close_or_extended_family_of = root.intent_target
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
is_female = yes
|
|
}
|
|
age < marriage_female_fertility_cutoff_age_value
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
}
|
|
|
|
immediate = {
|
|
intent_target = { save_scope_as = 1080_target }
|
|
scope:1080_target = { add_character_flag = busy_in_wgathering_event }
|
|
add_character_flag = busy_in_wgathering_event
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
is_ai = yes
|
|
location = root.location
|
|
has_activity_state = passive
|
|
can_marry_character_trigger = { CHARACTER = root.intent_target }
|
|
NOR = {
|
|
exists = betrothed
|
|
has_character_flag = busy_in_wgathering_event
|
|
is_close_or_extended_family_of = root.intent_target
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
is_female = yes
|
|
}
|
|
age < marriage_female_fertility_cutoff_age_value
|
|
}
|
|
}
|
|
save_scope_as = matchmaking_1
|
|
add_character_flag = busy_in_wgathering_event
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
is_ai = yes
|
|
location = root.location
|
|
has_activity_state = passive
|
|
can_marry_character_trigger = { CHARACTER = root.intent_target }
|
|
NOR = {
|
|
exists = betrothed
|
|
has_character_flag = busy_in_wgathering_event
|
|
is_close_or_extended_family_of = root.intent_target
|
|
this = scope:matchmaking_1
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
is_female = yes
|
|
}
|
|
age < marriage_female_fertility_cutoff_age_value
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
is_ai = yes
|
|
location = root.location
|
|
has_activity_state = passive
|
|
can_marry_character_trigger = { CHARACTER = root.intent_target }
|
|
NOR = {
|
|
exists = betrothed
|
|
has_character_flag = busy_in_wgathering_event
|
|
is_close_or_extended_family_of = root.intent_target
|
|
this = scope:matchmaking_1
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
is_female = yes
|
|
}
|
|
age < marriage_female_fertility_cutoff_age_value
|
|
}
|
|
}
|
|
save_scope_as = matchmaking_2
|
|
add_character_flag = busy_in_wgathering_event
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option A: Introduce to matchmaking_1
|
|
option = {
|
|
name = ep2_wedding.1080.a
|
|
scope:1080_target = {
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:matchmaking_1
|
|
60 = { # success - the matchmaking continues
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1080.a.success
|
|
root = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1080.a.success.tt
|
|
left_icon = scope:1080_target
|
|
right_icon = scope:matchmaking_1
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_propermatch_court_log
|
|
tags = { good }
|
|
score = 20
|
|
character = scope:1080_target
|
|
target = scope:matchmaking_1
|
|
|
|
# Effect
|
|
scope:matchmaking_1 = {
|
|
add_opinion = {
|
|
target = scope:1080_target
|
|
modifier = impressed_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:1080_target = {
|
|
set_variable = {
|
|
name = wedding_good_match
|
|
value = scope:matchmaking_1
|
|
}
|
|
}
|
|
}
|
|
40 = { # failure - you'll have to start again with someone else
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1080.a.failure
|
|
root = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1080.a.failure.tt
|
|
left_icon = scope:1080_target
|
|
right_icon = scope:matchmaking_1
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_propermatch_court_fail_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = scope:1080_target
|
|
target = scope:matchmaking_1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:1080_target = {
|
|
set_variable = {
|
|
name = wedding_no_match
|
|
value = scope:matchmaking_1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
#Option B: Introduce to matchmaking_2
|
|
option = {
|
|
trigger = {
|
|
exists = scope:matchmaking_2
|
|
}
|
|
name = ep2_wedding.1080.b
|
|
scope:1080_target = {
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:matchmaking_2
|
|
50 = { # success - the matchmaking continues
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1080.b.success
|
|
root = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1080.a.success.tt
|
|
left_icon = scope:1080_target
|
|
right_icon = scope:matchmaking_2
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_propermatch_court_log
|
|
tags = { good }
|
|
score = 20
|
|
character = scope:1080_target
|
|
target = scope:matchmaking_2
|
|
|
|
# Effect
|
|
scope:matchmaking_2 = {
|
|
add_opinion = {
|
|
target = scope:1080_target
|
|
modifier = impressed_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:1080_target = {
|
|
set_variable = {
|
|
name = wedding_good_match
|
|
value = scope:matchmaking_2
|
|
}
|
|
}
|
|
}
|
|
50 = { # failure - you'll have to start again with someone else
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1080.b.failure
|
|
root = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1080.a.failure.tt
|
|
left_icon = scope:1080_target
|
|
right_icon = scope:matchmaking_2
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_propermatch_court_fail_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = scope:1080_target
|
|
target = scope:matchmaking_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:1080_target = {
|
|
set_variable = {
|
|
name = wedding_no_match
|
|
value = scope:matchmaking_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
#Option C: let's keep looking
|
|
option = {
|
|
name = ep2_wedding.1080.c
|
|
flavor = ep2_wedding.1080.c.tt
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = fickle
|
|
add = 25
|
|
}
|
|
}
|
|
}
|
|
after = {
|
|
remove_character_flag = busy_in_wgathering_event
|
|
scope:1080_target = { remove_character_flag = busy_in_wgathering_event }
|
|
scope:matchmaking_1 = { remove_character_flag = busy_in_wgathering_event }
|
|
if = {
|
|
limit = { exists = scope:matchmaking_2 }
|
|
scope:matchmaking_2 = { remove_character_flag = busy_in_wgathering_event }
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Ritual Wash
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1100
|
|
##################################################
|
|
|
|
# Northern wedding: the bride goes to a bathhouse with the married women of her family: removal of clothes and kransen (golden circlet)
|
|
|
|
ep2_wedding.1100 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1100.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.1100.desc_bride
|
|
}
|
|
desc = ep2_wedding.1100.desc_relative
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:guest_3
|
|
}
|
|
desc = ep2_wedding.1100.desc_extra_guest
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = scope:bride
|
|
animation = personality_content
|
|
}
|
|
center_portrait = {
|
|
character = scope:guest_2
|
|
animation = admiration
|
|
}
|
|
right_portrait = {
|
|
character = scope:guest_1
|
|
animation = wedding_happy_cry
|
|
}
|
|
lower_center_portrait = scope:guest_3
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
NOT = { has_variable = has_had_event_1100 }
|
|
}
|
|
|
|
culture = { has_cultural_pillar = heritage_north_germanic }
|
|
is_female = yes
|
|
is_ai = no
|
|
OR = {
|
|
AND = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
any_spouse = {
|
|
even_if_dead = yes
|
|
NOT = { exists = this }
|
|
}
|
|
any_former_spouse = {
|
|
even_if_dead = yes
|
|
NOT = { exists = this }
|
|
}
|
|
}
|
|
AND = {
|
|
this = scope:activity.special_guest:spouse_2
|
|
any_spouse = {
|
|
even_if_dead = yes
|
|
NOT = { exists = this }
|
|
}
|
|
any_former_spouse = {
|
|
even_if_dead = yes
|
|
NOT = { exists = this }
|
|
}
|
|
}
|
|
AND = {
|
|
is_close_or_extended_family_of = scope:activity.special_guest:spouse_1
|
|
scope:activity.special_guest:spouse_1 = { is_female = yes }
|
|
is_married = yes
|
|
}
|
|
AND = {
|
|
is_close_or_extended_family_of = scope:activity.special_guest:spouse_2
|
|
scope:activity.special_guest:spouse_2 = { is_female = yes }
|
|
is_married = yes
|
|
}
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
is_female = yes
|
|
}
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
culture = { has_cultural_pillar = heritage_north_germanic }
|
|
is_female = yes
|
|
is_close_or_extended_family_of = scope:activity.special_guest:spouse_1
|
|
is_married = yes
|
|
save_temporary_scope_as = guest_1
|
|
}
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
culture = { has_cultural_pillar = heritage_north_germanic }
|
|
is_female = yes
|
|
is_close_or_extended_family_of = scope:activity.special_guest:spouse_1
|
|
is_married = yes
|
|
this != scope:guest_1
|
|
}
|
|
}
|
|
}
|
|
trigger_else = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
culture = { has_cultural_pillar = heritage_north_germanic }
|
|
is_female = yes
|
|
is_close_or_extended_family_of = scope:activity.special_guest:spouse_2
|
|
is_married = yes
|
|
is_ai = yes
|
|
save_temporary_scope_as = guest_1
|
|
}
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
culture = { has_cultural_pillar = heritage_north_germanic }
|
|
is_female = yes
|
|
is_close_or_extended_family_of = scope:activity.special_guest:spouse_2
|
|
is_married = yes
|
|
is_ai = yes
|
|
this != scope:guest_1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
is_ai = no
|
|
factor = 2
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
set_variable = has_had_event_1100
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
save_scope_as = bride
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = { is_female = yes }
|
|
}
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = bride }
|
|
root = { save_scope_as = guest_1 }
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = bride }
|
|
root = { save_scope_as = guest_1 }
|
|
}
|
|
scope:bride = {
|
|
add_character_flag = busy_in_wgathering_event
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
culture = { has_cultural_pillar = heritage_north_germanic }
|
|
is_female = yes
|
|
is_close_or_extended_family_of = scope:bride
|
|
is_married = yes
|
|
is_ai = yes
|
|
NOR = {
|
|
has_character_flag = busy_in_wgathering_event
|
|
this = scope:guest_1
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
exists = scope:guest_1
|
|
}
|
|
save_scope_as = guest_2
|
|
}
|
|
else = {
|
|
save_scope_as = guest_1
|
|
}
|
|
}
|
|
random_attending_character = {
|
|
limit = {
|
|
culture = { has_cultural_pillar = heritage_north_germanic }
|
|
is_female = yes
|
|
is_close_or_extended_family_of = scope:bride
|
|
is_married = yes
|
|
is_ai = yes
|
|
NOR = {
|
|
has_character_flag = busy_in_wgathering_event
|
|
this = scope:guest_1
|
|
this = scope:guest_2
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
exists = scope:guest_2
|
|
}
|
|
save_scope_as = guest_3
|
|
}
|
|
else = {
|
|
save_scope_as = guest_2
|
|
}
|
|
}
|
|
}
|
|
scope:guest_1 = { add_character_flag = busy_in_wgathering_event }
|
|
scope:guest_2 = { add_character_flag = busy_in_wgathering_event }
|
|
if = {
|
|
limit = {
|
|
exists = scope:guest_3
|
|
}
|
|
scope:guest_3 = { add_character_flag = busy_in_wgathering_event }
|
|
}
|
|
}
|
|
|
|
#Option A: follow tradition
|
|
option = {
|
|
name = ep2_wedding.1100.a
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_cleansing_log
|
|
tags = { good }
|
|
score = 50
|
|
character = scope:bride
|
|
|
|
# Effect
|
|
scope:bride = {
|
|
add_character_modifier = {
|
|
modifier = wedding_purified_modifier
|
|
years = 5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:guest_1 = {
|
|
add_character_modifier = {
|
|
modifier = wedding_purified_modifier
|
|
years = 5
|
|
}
|
|
}
|
|
scope:guest_2 = {
|
|
add_character_modifier = {
|
|
modifier = wedding_purified_modifier
|
|
years = 5
|
|
}
|
|
}
|
|
if = {
|
|
limit = { exists = scope:guest_3 }
|
|
scope:guest_3 = {
|
|
add_character_modifier = {
|
|
modifier = wedding_purified_modifier
|
|
years = 5
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:bride = {
|
|
any_vassal = { vassal_stance = courtly }
|
|
}
|
|
}
|
|
scope:bride = {
|
|
every_vassal = {
|
|
vassal_stance = courtly
|
|
add_opinion = {
|
|
target = scope:bride
|
|
modifier = wedding_traditional_ritual_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:bride.betrothed = {
|
|
any_vassal = { vassal_stance = courtly }
|
|
}
|
|
}
|
|
scope:bride.betrothed = {
|
|
every_vassal = {
|
|
vassal_stance = courtly
|
|
add_opinion = {
|
|
target = scope:bride
|
|
modifier = wedding_traditional_ritual_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
#Option B: try something new
|
|
option = {
|
|
name = ep2_wedding.1100.b
|
|
trigger = {
|
|
this = scope:bride
|
|
}
|
|
random_list = {
|
|
25 = {} #nothing happens
|
|
25 = {
|
|
show_chance = no
|
|
trigger = {
|
|
can_set_relation_friend_trigger = { CHARACTER = scope:guest_1 }
|
|
}
|
|
set_relation_friend = {
|
|
target = scope:guest_1
|
|
reason = friend_wedding_ritual
|
|
}
|
|
}
|
|
25 = {
|
|
show_chance = no
|
|
trigger = {
|
|
can_set_relation_friend_trigger = { CHARACTER = scope:guest_2 }
|
|
}
|
|
set_relation_friend = {
|
|
target = scope:guest_2
|
|
reason = friend_wedding_ritual
|
|
}
|
|
}
|
|
25 = {
|
|
show_chance = no
|
|
trigger = {
|
|
exists = scope:guest_3
|
|
can_set_relation_friend_trigger = { CHARACTER = scope:guest_3 }
|
|
}
|
|
set_relation_friend = {
|
|
target = scope:guest_3
|
|
reason = friend_wedding_ritual
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_cleansing_new_log
|
|
tags = { good }
|
|
score = 50
|
|
character = scope:bride
|
|
|
|
# Effect
|
|
}
|
|
}
|
|
stress_impact = {
|
|
shy = medium_stress_impact_gain
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
#Option D: just enjoy the bath
|
|
option = {
|
|
name = ep2_wedding.1100.d
|
|
trigger = {
|
|
has_activity_intent = reduce_stress_intent
|
|
this = scope:bride
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 150
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option C: this is dumb
|
|
option = {
|
|
name = ep2_wedding.1100.c
|
|
if = {
|
|
limit = {
|
|
this = scope:bride
|
|
any_vassal = { vassal_stance = courtly }
|
|
}
|
|
every_vassal = {
|
|
vassal_stance = courtly
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_no_ritual_opinion
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
this = scope:bride
|
|
betrothed = {
|
|
any_vassal = {
|
|
vassal_stance = courtly
|
|
}
|
|
}
|
|
}
|
|
betrothed = {
|
|
every_vassal = {
|
|
vassal_stance = courtly
|
|
add_opinion = {
|
|
target = scope:bride
|
|
modifier = wedding_no_ritual_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
this != scope:bride
|
|
}
|
|
scope:bride = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = annoyed_opinion
|
|
opinion = -20
|
|
}
|
|
if = {
|
|
limit = {
|
|
NOT = { has_relation_rival = root }
|
|
}
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_despised_ritual
|
|
CHARACTER = root
|
|
OPINION = 0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = wedding_thinking_outside_box_modifier
|
|
years = 10
|
|
}
|
|
stress_impact = {
|
|
zealous = medium_stress_impact_gain
|
|
cynical = medium_stress_impact_loss
|
|
}
|
|
if = {
|
|
limit = { root = scope:bride }
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_cleansing_dismiss_log
|
|
tags = { good }
|
|
score = 50
|
|
character = scope:bride
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_cleansing_log
|
|
tags = { good }
|
|
score = 50
|
|
character = scope:bride
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 75
|
|
modifier = {
|
|
has_trait = cynical
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = zealous
|
|
add = -25
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
scope:bride = { remove_character_flag = busy_in_wgathering_event }
|
|
scope:guest_1 = { remove_character_flag = busy_in_wgathering_event }
|
|
scope:guest_2 = { remove_character_flag = busy_in_wgathering_event }
|
|
if = {
|
|
limit = {
|
|
exists = scope:guest_3
|
|
}
|
|
scope:guest_3 = { remove_character_flag = busy_in_wgathering_event }
|
|
}
|
|
}
|
|
}
|
|
|
|
# CEREMONY EVENTS
|
|
|
|
##################################################
|
|
# Could it Be You?
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1020
|
|
##################################################
|
|
|
|
# The spouses fall in love at first sight
|
|
|
|
ep2_wedding.1020 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1020.t
|
|
desc = ep2_wedding.1020.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = ecstasy
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = admiration
|
|
}
|
|
|
|
cooldown = { years = 30 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
NOR = {
|
|
has_variable = has_had_event_1020
|
|
has_variable = has_had_event_1180
|
|
}
|
|
}
|
|
|
|
scope:activity.special_guest:spouse_1 = {
|
|
num_of_relation_soulmate = 0
|
|
NOT = { has_character_flag = busy_in_ceremony_event }
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
num_of_relation_soulmate = 0
|
|
NOT = { has_character_flag = busy_in_ceremony_event }
|
|
}
|
|
|
|
root = {
|
|
OR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
|
|
scope:activity.special_guest:spouse_1 = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_2 }
|
|
scope:activity.special_guest:spouse_2 = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_1 }
|
|
scope:activity.special_guest:spouse_1 = {
|
|
can_set_relation_soulmate_trigger = {
|
|
CHARACTER = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
|
|
# They should not know each other, as much as we can verify
|
|
scope:activity.special_guest:spouse_1 = {
|
|
NOR = {
|
|
has_relation_lover = scope:activity.special_guest:spouse_2
|
|
has_relation_friend = scope:activity.special_guest:spouse_2
|
|
has_relation_potential_lover = scope:activity.special_guest:spouse_2
|
|
has_relation_crush = scope:activity.special_guest:spouse_2
|
|
has_relation_potential_friend = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
NOT = {
|
|
scope:activity.special_guest:spouse_1 = { has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:activity.special_guest:spouse_2 } }
|
|
}
|
|
|
|
trigger_if = {
|
|
limit = {
|
|
root = { is_ai = yes }
|
|
}
|
|
scope:activity.special_guest:spouse_1 = { is_ai = yes }
|
|
scope:activity.special_guest:spouse_2 = { is_ai = yes }
|
|
}
|
|
trigger_else = {
|
|
OR = {
|
|
scope:activity.special_guest:spouse_1 = { is_ai = yes }
|
|
scope:activity.special_guest:spouse_2 = { is_ai = yes }
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
has_activity_intent = woo_attendee_intent
|
|
intent_target ?= root.betrothed
|
|
add = 1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
set_variable = has_had_event_1020
|
|
}
|
|
if = {
|
|
limit = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_2
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_2
|
|
}
|
|
}
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:spouse_2 = { add_character_flag = busy_in_ceremony_event }
|
|
}
|
|
|
|
option = {
|
|
name = ep2_wedding.1020.a
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_first_sight_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:spouse_2
|
|
|
|
# Effect
|
|
root = {
|
|
set_relation_soulmate = { reason = soulmate_wedding_first_sight target = scope:spouse_2 }
|
|
reverse_add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = love_opinion
|
|
opinion = 30
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = woo_attendee_intent
|
|
intent_target = scope:spouse_2
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
# Achievements
|
|
player_succeeded_at_a_thousand_and_one_nights_achievement_effect = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:spouse_2 = { remove_character_flag = busy_in_ceremony_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Good/Bad Omen
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1030
|
|
##################################################
|
|
|
|
# A good or bad omen happens: how do you react?
|
|
|
|
ep2_wedding.1030 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1030.t
|
|
desc = {
|
|
desc = ep2_wedding.1030.desc
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_character_flag = good_thing_flag
|
|
}
|
|
desc = ep2_wedding.1030.desc_good1
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_character_flag = good_thing_flag
|
|
}
|
|
desc = ep2_wedding.1030.desc_good2
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_character_flag = good_thing_flag
|
|
}
|
|
desc = ep2_wedding.1030.desc_good3
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_character_flag = bad_thing_flag
|
|
}
|
|
desc = ep2_wedding.1030.desc_bad1
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_character_flag = bad_thing_flag
|
|
}
|
|
desc = ep2_wedding.1030.desc_bad2
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_character_flag = bad_thing_flag
|
|
}
|
|
desc = ep2_wedding.1030.desc_bad3
|
|
}
|
|
}
|
|
desc = ep2_wedding.1030.desc_outro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_character_flag = bad_thing_flag
|
|
}
|
|
desc = ep2_wedding.1030.desc_bad
|
|
}
|
|
desc = ep2_wedding.1030.desc_good
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_character_flag = bad_thing_flag
|
|
}
|
|
animation = fear
|
|
}
|
|
animation = happiness
|
|
}
|
|
right_portrait = {
|
|
character = scope:1030_chatter
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_character_flag = bad_thing_flag
|
|
}
|
|
animation = worry
|
|
}
|
|
animation = admiration
|
|
}
|
|
lower_center_portrait = {
|
|
character = scope:spouse_2
|
|
}
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
NOT = {
|
|
has_variable = has_had_event_1030
|
|
}
|
|
}
|
|
|
|
scope:activity.special_guest:spouse_2 = { is_ai = yes }
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
is_ai = yes
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_2
|
|
this = root
|
|
has_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
has_character_modifier = bp1_superstition_modifier
|
|
add = 3
|
|
}
|
|
modifier = {
|
|
is_ai = yes
|
|
factor = 0.3
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = 1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
set_variable = has_had_event_1030
|
|
}
|
|
hidden_effect = {
|
|
random_list = {
|
|
50 = {
|
|
add_character_flag = good_thing_flag
|
|
}
|
|
50 = {
|
|
add_character_flag = bad_thing_flag
|
|
}
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_2
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_1
|
|
}
|
|
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
NOR = {
|
|
scope:spouse_2 = this
|
|
root = this
|
|
}
|
|
is_ai = yes
|
|
}
|
|
save_scope_as = 1030_chatter
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
|
|
add_character_flag = busy_in_ceremony_event
|
|
|
|
random = {
|
|
chance = legend_seed_chance_low
|
|
add_character_flag = wedding_legend_seed
|
|
}
|
|
}
|
|
|
|
#Option A: good omen - excellent!
|
|
option = {
|
|
name = ep2_wedding.1030.a
|
|
trigger = {
|
|
has_character_flag = good_thing_flag
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_omen_good_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:spouse_2
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
}
|
|
}
|
|
else = {
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: dismiss bad omen
|
|
option = {
|
|
name = ep2_wedding.1030.b
|
|
trigger = {
|
|
has_character_flag = bad_thing_flag
|
|
NOT = { has_character_modifier = bp1_superstition_modifier }
|
|
}
|
|
if = {
|
|
limit = {
|
|
ai_rationality >= 40
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_omen_dismissed_log
|
|
tags = { bad }
|
|
score = 50
|
|
character = root
|
|
target = scope:spouse_2
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_omen_bad_log
|
|
tags = { bad }
|
|
score = 50
|
|
character = root
|
|
target = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
#Option c: bad omen - panic
|
|
option = {
|
|
name = ep2_wedding.1030.c
|
|
trigger = {
|
|
has_character_flag = bad_thing_flag
|
|
has_character_modifier = bp1_superstition_modifier
|
|
}
|
|
stress_impact = {
|
|
base = medium_stress_impact_gain
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_omen_bad_log
|
|
tags = { bad }
|
|
score = 50
|
|
character = root
|
|
target = scope:spouse_2
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
#Option D: good omen - you get a legend seed!
|
|
option = {
|
|
name = ep2_wedding.1030.d
|
|
trigger = {
|
|
has_character_flag = good_thing_flag
|
|
NOR = {
|
|
has_personal_legend_seed = heroic
|
|
has_personal_legend_seed = holy
|
|
has_personal_legend_seed = legitimizing
|
|
}
|
|
has_character_flag = wedding_legend_seed
|
|
OR = {
|
|
scope:spouse_2.dynasty = root.dynasty
|
|
scope:spouse_1.dynasty = root.dynasty
|
|
}
|
|
}
|
|
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_omen_good_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:spouse_2
|
|
}
|
|
}
|
|
|
|
legend_seed_great_deed_dynasty_effect = yes
|
|
|
|
ai_chance = { #AI can into legend seeds
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
after = {
|
|
if = {
|
|
limit = {
|
|
has_character_flag = good_thing_flag
|
|
}
|
|
remove_character_flag = good_thing_flag
|
|
}
|
|
else = {
|
|
remove_character_flag = bad_thing_flag
|
|
}
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:spouse_2 = { remove_character_flag = busy_in_ceremony_event }
|
|
scope:1030_chatter = { remove_character_flag = busy_in_ceremony_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# New Family
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1120
|
|
##################################################
|
|
|
|
# Spouse: your child from a previous partner makes a fuss
|
|
|
|
scripted_trigger ep2_wedding_1120_valid_child_trigger = {
|
|
NOT = {
|
|
any_parent = { this = root.betrothed }
|
|
}
|
|
any_parent = {
|
|
even_if_dead = yes
|
|
this != root
|
|
save_temporary_scope_as = other_parent
|
|
}
|
|
age >= 6
|
|
involved_activity ?= { this = scope:activity }
|
|
save_temporary_scope_as = trouble_child
|
|
}
|
|
|
|
ep2_wedding.1120 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1120.t
|
|
desc = {
|
|
desc = ep2_wedding.1120.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:trouble_child = {
|
|
is_adult = no
|
|
}
|
|
}
|
|
desc = ep2_wedding.1120.desc_child
|
|
}
|
|
desc = ep2_wedding.1120.desc_adult
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_parent = {
|
|
involved_activity ?= { this = scope:activity }
|
|
}
|
|
}
|
|
desc = ep2_wedding.1120.desc_parent
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = shock
|
|
}
|
|
center_portrait = {
|
|
character = scope:other_spouse
|
|
animation = worry
|
|
}
|
|
right_portrait = {
|
|
character = scope:trouble_child
|
|
animation = wedding_objection_start
|
|
}
|
|
lower_right_portrait = scope:other_parent
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
NOT = {
|
|
has_variable = has_had_event_1120
|
|
}
|
|
}
|
|
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
betrothed ?= {
|
|
is_ai = yes
|
|
}
|
|
any_child ?= {
|
|
ep2_wedding_1120_valid_child_trigger = yes
|
|
}
|
|
# if the child's real parent is a secret, make sure that the child knows about it before denouncing it, and they don't like you enough
|
|
trigger_if = {
|
|
limit = {
|
|
any_secret = {
|
|
type = secret_unmarried_illegitimate_child
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
}
|
|
any_secret = {
|
|
type = secret_unmarried_illegitimate_child
|
|
secret_target = { this = scope:trouble_child }
|
|
is_known_by = scope:trouble_child
|
|
}
|
|
scope:trouble_child = {
|
|
opinion = { target = root value < 0 }
|
|
}
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
any_secret = {
|
|
type = secret_disputed_heritage
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
}
|
|
any_secret = {
|
|
type = secret_disputed_heritage
|
|
secret_target = { this = scope:trouble_child }
|
|
is_known_by = scope:trouble_child
|
|
}
|
|
scope:trouble_child = {
|
|
opinion = { target = root value < 0 }
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
# More drama if the other parent is there too
|
|
modifier = {
|
|
any_child = {
|
|
ep2_wedding_1120_valid_child_trigger = yes
|
|
}
|
|
scope:other_parent = {
|
|
is_alive = yes
|
|
involved_activity ?= { this = scope:activity }
|
|
}
|
|
add = 4
|
|
}
|
|
# more likely if the child is an actual child
|
|
modifier = {
|
|
any_child = {
|
|
ep2_wedding_1120_valid_child_trigger = yes
|
|
is_adult = no
|
|
}
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = -0.5
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:activity = {
|
|
set_variable = has_had_event_1120
|
|
}
|
|
betrothed = { save_scope_as = other_spouse }
|
|
scope:other_spouse = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
random_child = {
|
|
limit = {
|
|
ep2_wedding_1120_valid_child_trigger = yes
|
|
}
|
|
save_scope_as = trouble_child
|
|
}
|
|
scope:trouble_child = {
|
|
random_parent = {
|
|
even_if_dead = yes
|
|
limit = {
|
|
this != root
|
|
}
|
|
save_scope_as = other_parent
|
|
}
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:other_parent = {
|
|
is_alive = yes
|
|
involved_activity ?= { this = scope:activity }
|
|
}
|
|
}
|
|
scope:other_parent = { add_character_flag = busy_in_ceremony_event }
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_secret = {
|
|
type = secret_unmarried_illegitimate_child
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
}
|
|
random_secret = {
|
|
type = secret_unmarried_illegitimate_child
|
|
limit = {
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
expose_secret = scope:trouble_child
|
|
}
|
|
add_character_flag = wedding_secret_child_revealed
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
any_secret = {
|
|
type = secret_disputed_heritage
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
}
|
|
random_secret = {
|
|
type = secret_disputed_heritage
|
|
limit = {
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
expose_secret = scope:trouble_child
|
|
}
|
|
add_character_flag = wedding_secret_child_revealed
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_character_flag = wedding_secret_child_revealed
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_child_fuss_secret_log
|
|
show_in_conclusion = yes
|
|
character = scope:trouble_child
|
|
target = root
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_child_fuss_log
|
|
character = scope:trouble_child
|
|
target = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option A: be strict
|
|
option = {
|
|
name = ep2_wedding.1120.a
|
|
trigger = {
|
|
NOT = {
|
|
has_character_flag = wedding_secret_child_revealed
|
|
}
|
|
}
|
|
add_prestige = major_prestige_gain
|
|
scope:trouble_child = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = hate_opinion
|
|
opinion = -60
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
add_opinion = {
|
|
target = scope:trouble_child
|
|
modifier = angry_opinion
|
|
opinion = -30
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = humble
|
|
has_trait = content
|
|
ai_compassion >= medium_positive_ai_value
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = awkward_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
else = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = amused_opinion
|
|
opinion = 30
|
|
}
|
|
root = {
|
|
add_character_modifier = {
|
|
modifier = ep2_wedding_shared_values_modifier
|
|
years = 5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_gain
|
|
patient = minor_stress_impact_gain
|
|
humble = minor_stress_impact_gain
|
|
calm = minor_stress_impact_gain
|
|
shy = minor_stress_impact_gain
|
|
arrogant = medium_stress_impact_loss
|
|
callous = medium_stress_impact_loss
|
|
impatient = minor_stress_impact_loss
|
|
wrathful = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: be accepting
|
|
option = {
|
|
name = ep2_wedding.1120.b
|
|
trigger = {
|
|
NOT = {
|
|
has_character_flag = wedding_secret_child_revealed
|
|
}
|
|
}
|
|
dynasty ?= {
|
|
add_dynasty_prestige = medium_dynasty_prestige_gain
|
|
}
|
|
scope:trouble_child = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = love_opinion
|
|
opinion = 60
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
add_opinion = {
|
|
target = scope:trouble_child
|
|
modifier = angry_opinion
|
|
opinion = -30
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
ai_compassion <= low_positive_ai_value
|
|
has_trait = callous
|
|
has_trait = wrathful
|
|
has_trait = vengeful
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = awkward_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
else = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = respect_opinion
|
|
opinion = 30
|
|
}
|
|
root = {
|
|
add_character_modifier = {
|
|
modifier = ep2_wedding_shared_values_modifier
|
|
years = 5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_loss
|
|
patient = minor_stress_impact_loss
|
|
humble = minor_stress_impact_loss
|
|
calm = minor_stress_impact_loss
|
|
shy = minor_stress_impact_loss
|
|
arrogant = medium_stress_impact_gain
|
|
callous = medium_stress_impact_gain
|
|
impatient = minor_stress_impact_gain
|
|
wrathful = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option C: it was a secret!!
|
|
option = {
|
|
name = ep2_wedding.1120.c
|
|
trigger = {
|
|
has_character_flag = wedding_secret_child_revealed
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:trouble_child = {
|
|
is_adult = yes
|
|
}
|
|
}
|
|
set_variable = {
|
|
days = 100
|
|
name = ep2_confrontational_child
|
|
value = scope:trouble_child
|
|
}
|
|
}
|
|
stress_impact = {
|
|
deceitful = major_stress_impact_gain
|
|
honest = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:trouble_child = { remove_character_flag = busy_in_ceremony_event }
|
|
scope:other_spouse = { remove_character_flag = busy_in_ceremony_event }
|
|
scope:other_parent = {
|
|
if = {
|
|
limit = { has_character_flag = busy_in_ceremony_event }
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_character_flag = wedding_secret_child_revealed
|
|
}
|
|
remove_character_flag = wedding_secret_child_revealed
|
|
}
|
|
}
|
|
}
|
|
|
|
# Opposite event: it is your spouse who has a complaining child
|
|
|
|
scripted_trigger ep2_wedding_1121_valid_child_trigger = {
|
|
NOT = {
|
|
any_parent = { this = root }
|
|
}
|
|
any_parent = {
|
|
even_if_dead = yes
|
|
this != root.betrothed
|
|
save_temporary_scope_as = other_parent
|
|
}
|
|
age >= 6
|
|
involved_activity ?= { this = scope:activity }
|
|
save_temporary_scope_as = trouble_child
|
|
}
|
|
|
|
ep2_wedding.1121 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1120.t
|
|
desc = {
|
|
desc = ep2_wedding.1120.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:trouble_child = {
|
|
is_adult = no
|
|
}
|
|
}
|
|
desc = ep2_wedding.1121.desc_child
|
|
}
|
|
desc = ep2_wedding.1121.desc_adult
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_parent = {
|
|
involved_activity ?= { this = scope:activity }
|
|
}
|
|
}
|
|
desc = ep2_wedding.1120.desc_parent
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = scope:other_spouse
|
|
animation = worry
|
|
}
|
|
center_portrait = {
|
|
character = root
|
|
animation = shock
|
|
}
|
|
right_portrait = {
|
|
character = scope:trouble_child
|
|
animation = wedding_objection_start
|
|
}
|
|
lower_right_portrait = scope:other_parent
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
NOT = {
|
|
has_variable = has_had_event_1120
|
|
}
|
|
}
|
|
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
root.betrothed ?= {
|
|
OR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
is_ai = yes
|
|
save_temporary_scope_as = other_spouse
|
|
any_child = {
|
|
ep2_wedding_1121_valid_child_trigger = yes
|
|
}
|
|
}
|
|
# if the child's real parent is a secret, make sure that the child knows about it before denouncing it, and they don't like their parent enough
|
|
trigger_if = {
|
|
limit = {
|
|
scope:other_spouse = {
|
|
any_secret = {
|
|
type = secret_unmarried_illegitimate_child
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
any_secret = {
|
|
type = secret_unmarried_illegitimate_child
|
|
secret_target = { this = scope:trouble_child }
|
|
is_known_by = scope:trouble_child
|
|
}
|
|
}
|
|
scope:trouble_child = {
|
|
opinion = { target = scope:other_spouse value < 0 }
|
|
}
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
scope:other_spouse = {
|
|
any_secret = {
|
|
type = secret_disputed_heritage
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
any_secret = {
|
|
type = secret_disputed_heritage
|
|
secret_target = { this = scope:trouble_child }
|
|
is_known_by = scope:trouble_child
|
|
}
|
|
}
|
|
scope:trouble_child = {
|
|
opinion = { target = scope:other_spouse value < 0 }
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
# More drama if the other parent is there too
|
|
modifier = {
|
|
root.betrothed = {
|
|
any_child = {
|
|
ep2_wedding_1121_valid_child_trigger = yes
|
|
}
|
|
scope:other_parent = {
|
|
is_alive = yes
|
|
involved_activity ?= { this = scope:activity }
|
|
}
|
|
}
|
|
add = 4
|
|
}
|
|
# more likely if the child is an actual child
|
|
modifier = {
|
|
root.betrothed = {
|
|
any_child = {
|
|
ep2_wedding_1121_valid_child_trigger = yes
|
|
is_adult = no
|
|
}
|
|
}
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = -0.5
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:activity = {
|
|
set_variable = has_had_event_1120
|
|
}
|
|
root.betrothed = { save_scope_as = other_spouse }
|
|
scope:other_spouse = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
scope:other_spouse = {
|
|
random_child = {
|
|
limit = {
|
|
ep2_wedding_1121_valid_child_trigger = yes
|
|
}
|
|
save_scope_as = trouble_child
|
|
}
|
|
}
|
|
scope:trouble_child = {
|
|
random_parent = {
|
|
even_if_dead = yes
|
|
limit = {
|
|
this != root.betrothed
|
|
}
|
|
save_scope_as = other_parent
|
|
}
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:other_parent = {
|
|
involved_activity ?= { this = scope:activity }
|
|
}
|
|
}
|
|
scope:other_parent = { add_character_flag = busy_in_ceremony_event }
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:other_spouse = {
|
|
any_secret = {
|
|
type = secret_unmarried_illegitimate_child
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
random_secret = {
|
|
type = secret_unmarried_illegitimate_child
|
|
limit = {
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
expose_secret = scope:trouble_child
|
|
}
|
|
add_character_flag = wedding_secret_child_revealed
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:other_spouse = {
|
|
any_secret = {
|
|
type = secret_unmarried_illegitimate_child
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
random_secret = {
|
|
type = secret_disputed_heritage
|
|
limit = {
|
|
secret_target = { this = scope:trouble_child }
|
|
}
|
|
expose_secret = scope:trouble_child
|
|
}
|
|
add_character_flag = wedding_secret_child_revealed
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
if = {
|
|
limit = {
|
|
has_character_flag = wedding_secret_child_revealed
|
|
}
|
|
add_opinion = {
|
|
target = scope:trouble_child
|
|
modifier = angry_opinion
|
|
opinion = -30
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:other_spouse = { has_character_flag = wedding_secret_child_revealed }
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_child_fuss_secret_log
|
|
show_in_conclusion = yes
|
|
character = scope:trouble_child
|
|
target = scope:other_spouse
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_child_fuss_log
|
|
character = scope:trouble_child
|
|
target = scope:other_spouse
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option A: Shut up!
|
|
option = {
|
|
name = ep2_wedding.1121.a
|
|
add_dread = medium_dread_gain
|
|
scope:trouble_child = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = hate_opinion
|
|
opinion = -50
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
if = {
|
|
limit = {
|
|
save_temporary_opinion_value_as = { name = opinion_of_you target = root }
|
|
opinion = { target = scope:trouble_child value >= scope:opinion_of_you }
|
|
NOT = {
|
|
has_dread_level_towards = {
|
|
target = root
|
|
level >= 1
|
|
}
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = berated_child_opinion
|
|
}
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ep2_wedding_authoritarian_modifier
|
|
years = 10
|
|
}
|
|
stress_impact = {
|
|
compassionate = major_stress_impact_gain
|
|
arrogant = major_stress_impact_gain
|
|
patient = medium_stress_impact_gain
|
|
humble = medium_stress_impact_gain
|
|
calm = medium_stress_impact_gain
|
|
shy = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_boldness = 0.5
|
|
ai_vengefulness = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: I'll be a better parent!
|
|
option = {
|
|
name = ep2_wedding.1121.b
|
|
scope:trouble_child = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = give_a_chance_opinion
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = give_a_chance_opinion
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ep2_wedding_family_focus_modifier
|
|
years = 10
|
|
}
|
|
stress_impact = {
|
|
callous = major_stress_impact_gain
|
|
arrogant = major_stress_impact_gain
|
|
wrathful = major_stress_impact_gain
|
|
impatient = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_honor = 0.5
|
|
ai_vengefulness = -0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:trouble_child = { remove_character_flag = busy_in_ceremony_event }
|
|
scope:other_spouse = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
if = {
|
|
limit = {
|
|
has_character_flag = wedding_secret_child_revealed
|
|
}
|
|
remove_character_flag = wedding_secret_child_revealed
|
|
}
|
|
}
|
|
scope:other_parent = {
|
|
if = {
|
|
limit = { has_character_flag = busy_in_ceremony_event }
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Follow-up to 1120. NB this is a Banquet Event.
|
|
# You talk with the child who revealed your secret.
|
|
|
|
ep2_wedding.1122 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1120.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:trouble_child = {
|
|
has_character_flag = 1122_repentant
|
|
}
|
|
}
|
|
desc = ep2_wedding.1122.desc_repentant
|
|
}
|
|
desc = ep2_wedding.1122.desc_unrepentant
|
|
}
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = personality_honorable
|
|
}
|
|
right_portrait = {
|
|
character = scope:trouble_child
|
|
triggered_animation = {
|
|
trigger = {
|
|
scope:trouble_child = {
|
|
has_character_flag = 1122_repentant
|
|
}
|
|
}
|
|
animation = shame
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
NOT = {
|
|
scope:trouble_child = {
|
|
has_character_flag = 1122_repentant
|
|
}
|
|
}
|
|
}
|
|
animation = personality_callous
|
|
}
|
|
}
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
has_variable = ep2_confrontational_child
|
|
scope:activity = {
|
|
NOT = {
|
|
has_variable = has_had_event_1122
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
var:ep2_confrontational_child = {
|
|
save_scope_as = trouble_child
|
|
}
|
|
scope:activity = {
|
|
set_variable = has_had_event_1122
|
|
}
|
|
add_character_flag = busy_in_banquet_event
|
|
scope:trouble_child = {
|
|
add_character_flag = busy_in_banquet_event
|
|
}
|
|
scope:trouble_child = {
|
|
random_list = {
|
|
# child regrets it
|
|
50 = {
|
|
modifier = {
|
|
has_trait = humble
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = family_first
|
|
add = 100
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = 100
|
|
}
|
|
modifier = {
|
|
has_trait = patient
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = craven
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = shy
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = trusting
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = fickle
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = forgiving
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = contrite
|
|
add = 100
|
|
}
|
|
add_character_flag = 1122_repentant
|
|
}
|
|
# child is unrepentant
|
|
50 = {
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = arbitrary
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = paranoid
|
|
add = 100
|
|
}
|
|
modifier = {
|
|
has_trait = wrathful
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = impatient
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = brave
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = ambitious
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = vengeful
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = stubborn
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option A: You forgive
|
|
option = {
|
|
name = ep2_wedding.1122.a
|
|
trigger = {
|
|
scope:trouble_child = {
|
|
has_character_flag = 1122_repentant
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = 1122_child_pacified_log
|
|
tags = { good }
|
|
score = 10
|
|
character = root
|
|
target = scope:trouble_child
|
|
# Effect
|
|
scope:trouble_child = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = forgiven_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
vengeful = massive_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: You don't forgive
|
|
option = {
|
|
name = ep2_wedding.1122.b
|
|
trigger = {
|
|
scope:trouble_child = {
|
|
has_character_flag = 1122_repentant
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = 1122_child_not_pacified_log
|
|
tags = { bad }
|
|
score = 10
|
|
character = root
|
|
target = scope:trouble_child
|
|
# Effect
|
|
scope:trouble_child = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = unforgiven_opinion
|
|
opinion = -30
|
|
}
|
|
}
|
|
root = {
|
|
if = {
|
|
limit = {
|
|
can_add_hook = {
|
|
target = scope:trouble_child
|
|
type = indebted_hook
|
|
}
|
|
}
|
|
add_hook = {
|
|
target = scope:trouble_child
|
|
type = indebted_hook
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
forgiving = massive_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_vengefulness = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option C: You accept the critique
|
|
option = {
|
|
name = ep2_wedding.1122.c
|
|
trigger = {
|
|
scope:trouble_child = {
|
|
NOT = { has_character_flag = 1122_repentant }
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = 1122_child_pacified_log
|
|
tags = { good }
|
|
score = 10
|
|
character = root
|
|
target = scope:trouble_child
|
|
# Effect
|
|
scope:trouble_child = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = respect_opinion
|
|
opinion = 30
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
vengeful = massive_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_rationality = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option D: You remain angry
|
|
option = {
|
|
name = ep2_wedding.1122.d
|
|
trigger = {
|
|
scope:trouble_child = {
|
|
NOT = { has_character_flag = 1122_repentant }
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = 1122_child_not_pacified_log
|
|
tags = { bad }
|
|
score = 10
|
|
character = root
|
|
target = scope:trouble_child
|
|
# Effect
|
|
root = {
|
|
if = {
|
|
limit = {
|
|
can_add_hook = {
|
|
target = scope:trouble_child
|
|
type = indebted_hook
|
|
}
|
|
}
|
|
add_hook = {
|
|
target = scope:trouble_child
|
|
type = indebted_hook
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
forgiving = massive_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_vengefulness = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_banquet_event
|
|
scope:trouble_child = {
|
|
remove_character_flag = busy_in_banquet_event
|
|
if = {
|
|
limit = {
|
|
has_character_flag = 1122_repentant
|
|
}
|
|
remove_character_flag = 1122_repentant
|
|
}
|
|
}
|
|
remove_variable = ep2_confrontational_child
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Secret Whispers
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1130
|
|
##################################################
|
|
|
|
# A bad secret comes up and compromises the union: someone who knows spills the beans
|
|
#The secret is yours.
|
|
|
|
ep2_wedding.1130 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1130.t
|
|
desc = {
|
|
desc = ep2_wedding.1130.desc
|
|
desc = ep2_wedding.1130.desc_continue
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = shock
|
|
}
|
|
right_portrait = {
|
|
character = scope:1130_knows
|
|
animation = wedding_objection_start
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
NOT = {
|
|
has_variable = has_had_event_1130
|
|
}
|
|
}
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
has_any_secrets = yes
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
any_known_secret = {
|
|
secret_owner = root
|
|
NOT = { secret_target ?= prev }
|
|
}
|
|
opinion = { target = root value <= 0 }
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
any_known_secret = {
|
|
secret_owner = root
|
|
NOT = { secret_target ?= prev }
|
|
|
|
}
|
|
has_trait = contrite
|
|
}
|
|
}
|
|
add = 4
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
any_known_secret = {
|
|
secret_owner = root
|
|
NOT = { secret_target ?= prev }
|
|
}
|
|
has_relation_rival = root
|
|
}
|
|
}
|
|
add = 5
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = -0.5
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:activity = {
|
|
set_variable = has_had_event_1130
|
|
}
|
|
betrothed = {
|
|
save_scope_as = other_spouse
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
any_known_secret = {
|
|
secret_owner = root
|
|
NOT = { secret_target ?= prev }
|
|
}
|
|
}
|
|
save_scope_as = 1130_knows
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
scope:1130_knows = {
|
|
random_known_secret = {
|
|
limit = {
|
|
secret_owner = root
|
|
NOT = { secret_target ?= scope:1130_knows }
|
|
}
|
|
save_scope_as = 1130_secret
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option A: let them expose the secret
|
|
option = {
|
|
name = ep2_wedding.1130.a
|
|
add_character_modifier = {
|
|
modifier = wedding_clean_slate_modifier
|
|
years = 10
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_secret_revealed_log
|
|
show_in_conclusion = yes
|
|
character = scope:1130_knows
|
|
target = root
|
|
|
|
#Effect
|
|
scope:1130_secret = { expose_secret = scope:1130_knows }
|
|
root = {
|
|
if = {
|
|
limit = {
|
|
can_set_relation_nemesis_trigger = { CHARACTER = scope:1130_knows }
|
|
}
|
|
set_relation_nemesis = {
|
|
target = scope:1130_knows
|
|
reason = nemesis_wedding_spread_voices_secret
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:1130_knows = {
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
}
|
|
stress_impact = {
|
|
deceitful = major_stress_impact_gain
|
|
contrite = massive_stress_impact_loss
|
|
honest = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 75
|
|
ai_value_modifier = {
|
|
ai_honor = 0.5
|
|
}
|
|
modifier = {
|
|
has_trait = contrite
|
|
add = 200
|
|
}
|
|
modifier = {
|
|
has_trait = honest
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: kick them out
|
|
option = {
|
|
name = ep2_wedding.1130.b
|
|
add_character_modifier = {
|
|
modifier = wedding_web_of_secrets_modifier
|
|
years = 10
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_secret_not_revealed_log
|
|
show_in_conclusion = yes
|
|
character = scope:1130_knows
|
|
target = root
|
|
|
|
#Effect
|
|
root = {
|
|
if = {
|
|
limit = {
|
|
can_set_relation_rival_trigger = { CHARACTER = scope:1130_knows }
|
|
}
|
|
set_relation_rival = {
|
|
target = scope:1130_knows
|
|
reason = rival_wedding_spread_voices
|
|
}
|
|
}
|
|
add_dread = major_dread_gain
|
|
}
|
|
scope:1130_knows = {
|
|
remove_from_activity = scope:activity
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
contrite = massive_stress_impact_gain
|
|
honest = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 125
|
|
ai_value_modifier = {
|
|
ai_honor = -0.5
|
|
}
|
|
modifier = {
|
|
has_trait = deceitful
|
|
add = 200
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:other_spouse = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
scope:1130_knows = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
}
|
|
|
|
# The secret is your partner's.
|
|
|
|
ep2_wedding.1131 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1130.t
|
|
desc = {
|
|
desc = ep2_wedding.1130.desc
|
|
desc = ep2_wedding.1131.desc
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = shock
|
|
}
|
|
center_portrait = {
|
|
character = scope:other_spouse
|
|
animation = shame
|
|
}
|
|
right_portrait = {
|
|
character = scope:1130_knows
|
|
animation = wedding_objection_start
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
NOT = {
|
|
has_variable = has_had_event_1130
|
|
}
|
|
}
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
betrothed ?= {
|
|
has_any_secrets = yes
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
any_known_secret = {
|
|
secret_owner = root.betrothed
|
|
NOT = { is_known_by = root }
|
|
NOT = { secret_target ?= prev }
|
|
}
|
|
opinion = { target = root.betrothed value <= 0 }
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
any_known_secret = {
|
|
secret_owner = root.betrothed
|
|
NOT = { is_known_by = root }
|
|
NOT = { secret_target ?= prev }
|
|
}
|
|
has_trait = contrite
|
|
}
|
|
}
|
|
add = 4
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
any_known_secret = {
|
|
secret_owner = root.betrothed
|
|
NOT = { is_known_by = root }
|
|
NOT = { secret_target ?= prev }
|
|
}
|
|
has_relation_rival = root
|
|
}
|
|
}
|
|
add = 4
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
any_known_secret = {
|
|
secret_owner = root.betrothed
|
|
NOT = { is_known_by = root }
|
|
NOT = { secret_target ?= prev }
|
|
}
|
|
has_relation_rival = root.betrothed
|
|
}
|
|
}
|
|
add = 4
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = -0.5
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:activity = {
|
|
set_variable = has_had_event_1130
|
|
}
|
|
betrothed = {
|
|
save_scope_as = other_spouse
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
any_known_secret = {
|
|
secret_owner = root.betrothed
|
|
NOT = { is_known_by = root }
|
|
NOT = { secret_target ?= prev }
|
|
}
|
|
}
|
|
save_scope_as = 1130_knows
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
scope:1130_knows = {
|
|
random_known_secret = {
|
|
limit = {
|
|
secret_owner = scope:other_spouse
|
|
NOT = { is_known_by = root }
|
|
NOT = { secret_target ?= scope:1130_knows }
|
|
}
|
|
save_scope_as = 1130_secret
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_secret_revealed_log
|
|
show_in_conclusion = yes
|
|
character = scope:1130_knows
|
|
target = scope:other_spouse
|
|
|
|
#Effect
|
|
scope:1130_secret = { expose_secret = scope:1130_knows }
|
|
}
|
|
}
|
|
scope:1130_knows = {
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option A: be understanding
|
|
option = {
|
|
name = ep2_wedding.1131.a
|
|
scope:other_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_understanding_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
can_add_hook = {
|
|
target = scope:other_spouse
|
|
type = favor_hook
|
|
}
|
|
}
|
|
add_hook = {
|
|
target = scope:other_spouse
|
|
type = favor_hook
|
|
}
|
|
}
|
|
stress_impact = {
|
|
impatient = minor_stress_impact_gain
|
|
callous = medium_stress_impact_gain
|
|
wrathful = medium_stress_impact_gain
|
|
vengeful = major_stress_impact_gain
|
|
paranoid = major_stress_impact_gain
|
|
honest = medium_stress_impact_loss
|
|
forgiving = medium_stress_impact_loss
|
|
compassionate = medium_stress_impact_loss
|
|
trusting = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
ai_value_modifier = {
|
|
ai_compassion = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: this is unacceptable!
|
|
option = {
|
|
name = ep2_wedding.1131.b
|
|
add_dread = major_dread_gain
|
|
add_character_modifier = {
|
|
modifier = wedding_trust_compromised_modifier
|
|
years = 10
|
|
}
|
|
stress_impact = {
|
|
impatient = minor_stress_impact_loss
|
|
callous = medium_stress_impact_loss
|
|
wrathful = medium_stress_impact_loss
|
|
vengeful = major_stress_impact_loss
|
|
paranoid = major_stress_impact_loss
|
|
honest = medium_stress_impact_gain
|
|
forgiving = medium_stress_impact_gain
|
|
compassionate = medium_stress_impact_gain
|
|
trusting = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
ai_value_modifier = {
|
|
ai_compassion = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:other_spouse = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
scope:1130_knows = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
}
|
|
|
|
# You know a secret about a spouse.
|
|
|
|
ep2_wedding.1132 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1130.t
|
|
desc = ep2_wedding.1132.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = wedding_objection_start
|
|
}
|
|
center_portrait = {
|
|
character = scope:other_spouse
|
|
animation = shock
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_with_secret
|
|
animation = shame
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
NOT = {
|
|
has_variable = has_had_event_1130
|
|
}
|
|
}
|
|
NOR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
any_known_secret = {
|
|
secret_owner = {
|
|
OR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
NOT = { secret_target ?= root }
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
has_trait = contrite
|
|
add = 4
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = -0.5
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:activity = {
|
|
set_variable = has_had_event_1130
|
|
}
|
|
random_known_secret = {
|
|
limit = {
|
|
secret_owner = {
|
|
OR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
NOT = { secret_target ?= root }
|
|
}
|
|
save_scope_as = 1130_secret
|
|
}
|
|
scope:1130_secret = {
|
|
secret_owner = {
|
|
save_scope_as = spouse_with_secret
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
scope:spouse_with_secret.betrothed = {
|
|
save_scope_as = other_spouse
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
|
|
#Option A: reveal it
|
|
option = {
|
|
name = ep2_wedding.1132.a
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_secret_revealed_log
|
|
show_in_conclusion = yes
|
|
character = root
|
|
target = scope:spouse_with_secret
|
|
|
|
#Effect
|
|
scope:1130_secret = { expose_secret = root }
|
|
}
|
|
}
|
|
scope:other_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = opened_my_eyes_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
can_add_hook = {
|
|
target = scope:other_spouse
|
|
type = favor_hook
|
|
}
|
|
}
|
|
add_hook = {
|
|
target = scope:other_spouse
|
|
type = favor_hook
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
stress_impact = {
|
|
honest = major_stress_impact_loss
|
|
contrite = massive_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = honest
|
|
add = 100
|
|
}
|
|
modifier = {
|
|
has_trait = contrite
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: keep it
|
|
option = {
|
|
name = ep2_wedding.1132.b
|
|
scope:spouse_with_secret = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = kept_my_secret_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
can_add_hook = {
|
|
target = scope:spouse_with_secret
|
|
type = favor_hook
|
|
}
|
|
}
|
|
add_hook = {
|
|
target = scope:spouse_with_secret
|
|
type = favor_hook
|
|
}
|
|
}
|
|
stress_impact = {
|
|
deceitful = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = deceitful
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:spouse_with_secret = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
scope:other_spouse = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Misstep
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1140
|
|
##################################################
|
|
|
|
# A spouse has an embarrassing misstep: stuttering, missing cues, forgetting vows… How do you recover?
|
|
|
|
ep2_wedding.1140 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1140.t
|
|
desc = {
|
|
desc = ep2_wedding.1140.desc
|
|
random_valid = {
|
|
desc = ep2_wedding.1140.desc_1
|
|
desc = ep2_wedding.1140.desc_2
|
|
desc = ep2_wedding.1140.desc_3
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_activity_intent = diplomatic_intent
|
|
has_activity_intent = woo_attendee_intent
|
|
}
|
|
intent_target = {
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1140.desc_target
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_activity_intent = diplomatic_intent
|
|
has_activity_intent = woo_attendee_intent
|
|
}
|
|
intent_target = {
|
|
OR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1140.desc_target_spouse
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = wedding_objection_start
|
|
}
|
|
right_portrait = {
|
|
character = scope:fumbling_spouse
|
|
animation = shame
|
|
}
|
|
|
|
lower_right_portrait = scope:intent_target
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
root = scope:host
|
|
NOR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
scope:activity.special_guest:spouse_1 = { is_ai = yes }
|
|
scope:activity.special_guest:spouse_2 = { is_ai = yes }
|
|
trigger_if = {
|
|
limit = {
|
|
OR = {
|
|
has_activity_intent = diplomatic_intent
|
|
has_activity_intent = woo_attendee_intent
|
|
}
|
|
}
|
|
intent_target = { is_ai = yes }
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
OR = {
|
|
has_activity_intent = diplomatic_intent
|
|
has_activity_intent = woo_attendee_intent
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
add = 2
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 }
|
|
random_list = {
|
|
50 = {
|
|
modifier = {
|
|
scope:spouse_1 = {
|
|
has_trait = shy
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = {
|
|
has_trait = gregarious
|
|
}
|
|
add = -10
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = {
|
|
has_trait = calm
|
|
}
|
|
add = -10
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = {
|
|
has_trait = impatient
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = {
|
|
has_trait = arrogant
|
|
}
|
|
add = 10
|
|
}
|
|
scope:spouse_1 = { save_scope_as = fumbling_spouse }
|
|
}
|
|
50 = {
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = shy
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = gregarious
|
|
}
|
|
add = -10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = calm
|
|
}
|
|
add = -10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = impatient
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = arrogant
|
|
}
|
|
add = 10
|
|
}
|
|
scope:spouse_2 = { save_scope_as = fumbling_spouse }
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
has_activity_intent = diplomatic_intent
|
|
has_activity_intent = woo_attendee_intent
|
|
}
|
|
}
|
|
intent_target = { save_scope_as = intent_target }
|
|
}
|
|
}
|
|
|
|
# Option A: Try to salvage the situation
|
|
option = {
|
|
name = ep2_wedding.1140.a
|
|
duel = {
|
|
skill = diplomacy
|
|
value = average_skill_rating
|
|
# Success: you recover smoothly
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1140.a.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1140.a.success.tt
|
|
left_icon = root
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = recovered_from_misstep_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:spouse_1
|
|
|
|
root = {
|
|
if = {
|
|
limit = {
|
|
has_lifestyle = diplomacy_lifestyle
|
|
}
|
|
add_diplomacy_lifestyle_xp = major_lifestyle_experience
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
root = { has_activity_intent = diplomatic_intent }
|
|
}
|
|
custom_tooltip = ep2_wedding.1140.a.success.tt2
|
|
root.intent_target = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = impressed_opinion
|
|
opinion = 30
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
root = { has_activity_intent = woo_attendee_intent }
|
|
}
|
|
custom_tooltip = ep2_wedding.1140.a.success.tt2
|
|
root = {
|
|
progress_towards_lover_effect = {
|
|
REASON = lover_impressed_by_smooth_save
|
|
CHARACTER = root.intent_target
|
|
OPINION = 15
|
|
}
|
|
}
|
|
}
|
|
scope:fumbling_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = grateful_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
brave = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
# Failure: you are publicly embarassed
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1140.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1140.a.failure.tt
|
|
left_icon = root
|
|
right_icon = scope:fumbling_spouse
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = made_a_misstep_log
|
|
tags = { bad }
|
|
score = 50
|
|
character = scope:spouse_1
|
|
|
|
scope:fumbling_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = disappointed_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_gain
|
|
shy = medium_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
paranoid = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
OR = {
|
|
has_activity_intent = diplomatic_intent
|
|
has_activity_intent = woo_attendee_intent
|
|
}
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: ignore it
|
|
option = {
|
|
name = ep2_wedding.1140.b
|
|
scope:fumbling_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = disappointed_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_gain
|
|
gregarious = medium_stress_impact_gain
|
|
shy = medium_stress_impact_loss
|
|
callous = medium_stress_impact_loss
|
|
sadistic = medium_stress_impact_loss
|
|
lazy = medium_stress_impact_loss
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = made_a_misstep_log
|
|
tags = { bad }
|
|
score = 50
|
|
character = scope:spouse_1
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
# Option C: relax!
|
|
option = {
|
|
name = ep2_wedding.1140.c
|
|
trigger = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
scope:fumbling_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = relieved_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = recovered_from_misstep_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:spouse_1
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Romantic Scouting
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1150
|
|
##################################################
|
|
|
|
# Seduction Intent: target scouting
|
|
|
|
ep2_wedding.1150 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1150.t
|
|
desc = {
|
|
desc = ep2_wedding.1150.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:intent_target = {
|
|
OR = {
|
|
has_trait = shy
|
|
has_trait = compassionate
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1150.desc_1
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:intent_target = {
|
|
OR = {
|
|
has_trait = gluttonous
|
|
has_trait = drunkard
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1150.desc_2
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:intent_target = {
|
|
OR = {
|
|
has_trait = callous
|
|
has_trait = cynical
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1150.desc_3
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:intent_target = {
|
|
has_trait = zealous
|
|
}
|
|
}
|
|
desc = ep2_wedding.1150.desc_4
|
|
}
|
|
desc = ep2_wedding.1150.desc_fallback
|
|
}
|
|
desc = ep2_wedding.1150.desc_conclusion
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = flirtation_left
|
|
}
|
|
right_portrait = {
|
|
character = scope:intent_target
|
|
animation = personality_content
|
|
}
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
has_activity_intent = woo_attendee_intent
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
NOR = {
|
|
intent_target = scope:activity.special_guest:spouse_1
|
|
intent_target = scope:activity.special_guest:spouse_2
|
|
}
|
|
intent_target = { is_ai = yes }
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
intent_target = {
|
|
save_scope_as = intent_target
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
|
|
# Option A: approach with diplo
|
|
option = {
|
|
name = ep2_wedding.1150.a
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:intent_target
|
|
# Success: you make a good impression
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1150.a.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1150.a.success.tt
|
|
left_icon = root
|
|
right_icon = scope:intent_target
|
|
progress_towards_lover_effect = {
|
|
REASON = lover_impressed_by_talk
|
|
CHARACTER = scope:intent_target
|
|
OPINION = 15
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_lifestyle = diplomacy_lifestyle
|
|
}
|
|
add_diplomacy_lifestyle_xp = major_lifestyle_experience
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
lustful = major_stress_impact_loss
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = seduction_good_impression_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:intent_target
|
|
}
|
|
}
|
|
}
|
|
# Failure: target is not impress
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1150.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1150.a.failure.tt
|
|
left_icon = root
|
|
right_icon = scope:intent_target
|
|
scope:intent_target = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = annoyed_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_gain
|
|
shy = medium_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
diplomacy >= average_skill_level
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: approach with intrigue
|
|
option = {
|
|
name = ep2_wedding.1150.b
|
|
duel = {
|
|
skill = intrigue
|
|
target = scope:intent_target
|
|
# Success: you make a good impression
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1150.a.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1150.a.success.tt
|
|
left_icon = root
|
|
right_icon = scope:intent_target
|
|
progress_towards_lover_effect = {
|
|
REASON = lover_impressed_by_talk
|
|
CHARACTER = scope:intent_target
|
|
OPINION = 15
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_lifestyle = intrigue_lifestyle
|
|
}
|
|
add_intrigue_lifestyle_xp = major_lifestyle_experience
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
lustful = major_stress_impact_loss
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = seduction_good_impression_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:intent_target
|
|
}
|
|
}
|
|
}
|
|
# Failure: target is not impress
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1150.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1150.a.failure.tt
|
|
left_icon = root
|
|
right_icon = scope:intent_target
|
|
scope:intent_target = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = annoyed_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_gain
|
|
shy = medium_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
intrigue >= average_skill_level
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option C: approach with learning
|
|
option = {
|
|
name = ep2_wedding.1150.c
|
|
duel = {
|
|
skill = learning
|
|
target = scope:intent_target
|
|
# Success: you make a good impression
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1150.a.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1150.a.success.tt
|
|
left_icon = root
|
|
right_icon = scope:intent_target
|
|
progress_towards_lover_effect = {
|
|
REASON = lover_impressed_by_talk
|
|
CHARACTER = scope:intent_target
|
|
OPINION = 15
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_lifestyle = learning_lifestyle
|
|
}
|
|
add_learning_lifestyle_xp = major_lifestyle_experience
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
lustful = major_stress_impact_loss
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = seduction_good_impression_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:intent_target
|
|
}
|
|
}
|
|
}
|
|
# Failure: target is not impress
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1150.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1150.a.failure.tt
|
|
left_icon = root
|
|
right_icon = scope:intent_target
|
|
scope:intent_target = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = annoyed_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_gain
|
|
shy = medium_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
learning >= average_skill_level
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:intent_target = { remove_character_flag = busy_in_ceremony_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Gatecrashers
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1160
|
|
##################################################
|
|
|
|
# Some pesants are at the gate of the festivity - what do you do?
|
|
|
|
ep2_wedding.1160 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1160.t
|
|
desc = ep2_wedding.1160.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = schadenfreude
|
|
}
|
|
|
|
lower_right_portrait = scope:host
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
has_activity_intent = banquet_mischief_intent
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
scope:activity = {
|
|
NOT = {
|
|
has_variable = has_had_1160_event
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:activity = {
|
|
set_variable = has_had_1160_event
|
|
}
|
|
}
|
|
|
|
# Option A: let the peasants in
|
|
option = {
|
|
name = ep2_wedding.1160.a
|
|
flavor = ep2_wedding.1160.a.tt
|
|
# for the follow-up event
|
|
root = {
|
|
save_scope_as = mischief_maker
|
|
}
|
|
scope:host = { trigger_event = ep2_wedding.1161 }
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
wrathful = medium_stress_impact_loss
|
|
impatient = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
deceitful = major_stress_impact_loss
|
|
arbitrary = major_stress_impact_loss
|
|
callous = major_stress_impact_loss
|
|
fickle = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = deceitful
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = arbitrary
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = fickle
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: smuggle food to the pesants
|
|
option = {
|
|
name = ep2_wedding.1160.b
|
|
flavor = ep2_wedding.1160.b.tt
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
gluttonous = medium_stress_impact_loss
|
|
diligent = medium_stress_impact_loss
|
|
generous = major_stress_impact_loss
|
|
humble = major_stress_impact_loss
|
|
gregarious = major_stress_impact_loss
|
|
compassionate = massive_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = generous
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = humble
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option C: this is below me
|
|
option = {
|
|
name = ep2_wedding.1160.c
|
|
stress_impact = {
|
|
greedy = minor_stress_impact_loss
|
|
temperate = minor_stress_impact_loss
|
|
lazy = minor_stress_impact_loss
|
|
honest = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = honest
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
|
|
# Follow-up for the host
|
|
|
|
ep2_wedding.1161 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1160.t
|
|
desc = ep2_wedding.1161.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = anger
|
|
}
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
|
|
# Option A: kick them out!
|
|
option = {
|
|
name = ep2_wedding.1161.a
|
|
duel = {
|
|
skill = martial
|
|
value = average_skill_rating
|
|
50 = {
|
|
# Success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1161.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1161.success.tt
|
|
left_icon = root
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_peasant_invasion_managed_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
|
|
root = {
|
|
add_character_modifier = {
|
|
modifier = wedding_enforced_security_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
wrathful = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
callous = major_stress_impact_loss
|
|
paranoid = massive_stress_impact_loss
|
|
}
|
|
}
|
|
scope:mischief_maker = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1161.success.tt2
|
|
left_icon = root
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
# Failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1161.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1161.failure.tt
|
|
left_icon = root
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_peasant_invasion_not_managed_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = root
|
|
|
|
root = {
|
|
add_character_modifier = {
|
|
modifier = wedding_peasants_overrun_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
wrathful = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
callous = medium_stress_impact_gain
|
|
paranoid = major_stress_impact_gain
|
|
}
|
|
}
|
|
scope:mischief_maker = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1161.failure.tt2
|
|
left_icon = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
# Option B: let them stay
|
|
option = {
|
|
name = ep2_wedding.1161.b
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_peasant_invasion_stay_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = root
|
|
|
|
root.location.county = {
|
|
add_county_modifier = {
|
|
modifier = wedding_peasants_connections_county_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
}
|
|
}
|
|
else = {
|
|
stress_impact = {
|
|
generous = medium_stress_impact_loss
|
|
humble = medium_stress_impact_loss
|
|
gregarious = medium_stress_impact_loss
|
|
compassionate = medium_stress_impact_loss
|
|
paranoid = medium_stress_impact_gain
|
|
greedy = medium_stress_impact_gain
|
|
}
|
|
}
|
|
scope:mischief_maker = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1161.b.tt
|
|
left_icon = root
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = humble
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = generous
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# The Parade
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1170
|
|
##################################################
|
|
|
|
# A spouse has arrived with a whole parade. Interact with it
|
|
|
|
ep2_wedding.1170 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1170.t
|
|
desc = {
|
|
desc = ep2_wedding.1170.desc
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
desc = ep2_wedding.1170.desc_relax
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
desc = ep2_wedding.1170.desc_mischief
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_activity_intent = murder_attendee_intent
|
|
}
|
|
desc = ep2_wedding.1170.desc_murder
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = ecstasy
|
|
}
|
|
lower_center_portrait = scope:rich_spouse
|
|
lower_right_portrait = scope:murderee
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_good
|
|
}
|
|
}
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
OR = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
NOT = { is_close_or_extended_family_of = root }
|
|
is_lowborn = no
|
|
is_ai = yes
|
|
location = scope:activity.activity_location
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
NOT = { is_close_or_extended_family_of = root }
|
|
is_lowborn = no
|
|
is_ai = yes
|
|
location = scope:activity.activity_location
|
|
}
|
|
}
|
|
NOT = {
|
|
scope:activity = {
|
|
has_variable = has_had_event_1170
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
OR = {
|
|
has_activity_intent = reduce_stress_intent
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
has_activity_intent = murder_attendee_intent
|
|
add = 1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:activity = {
|
|
set_variable = has_had_event_1170
|
|
}
|
|
random_list = {
|
|
50 = {
|
|
trigger = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
NOT = { is_close_or_extended_family_of = root }
|
|
is_lowborn = no
|
|
is_ai = yes
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = rich_spouse }
|
|
}
|
|
50 = {
|
|
trigger = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
NOT = { is_close_or_extended_family_of = root }
|
|
is_lowborn = no
|
|
is_ai = yes
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = rich_spouse }
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = murder_attendee_intent
|
|
}
|
|
intent_target = {
|
|
save_scope_as = murderee
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_parade_arrival_log
|
|
tags = { good }
|
|
score = 20
|
|
character = scope:rich_spouse
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option A: Pocket some horseshoes
|
|
option = {
|
|
name = ep2_wedding.1170.a
|
|
flavor = ep2_wedding.1170.a.tt
|
|
add_gold = minor_gold_value
|
|
stress_impact = {
|
|
greedy = medium_stress_impact_loss
|
|
generous = medium_stress_impact_gain
|
|
compassionate = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_greed = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: What a show
|
|
option = {
|
|
name = ep2_wedding.1170.b
|
|
trigger = {
|
|
NOT = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
}
|
|
flavor = ep2_wedding.1170.b.tt
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
generous = medium_stress_impact_loss
|
|
compassionate = medium_stress_impact_loss
|
|
greedy = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_greed = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option C: Enjoy the show
|
|
option = {
|
|
name = ep2_wedding.1170.c
|
|
trigger = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
humble = major_stress_impact_loss
|
|
compassionate = major_stress_impact_loss
|
|
gregarious = major_stress_impact_loss
|
|
trusting = major_stress_impact_loss
|
|
generous = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
# Option D: mayhem
|
|
option = {
|
|
name = ep2_wedding.1170.d
|
|
trigger = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
add_character_modifier = {
|
|
modifier = wedding_parade_mayhem_modifier
|
|
years = 5
|
|
}
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
# Option E: try to kill
|
|
option = {
|
|
name = ep2_wedding.1170.e
|
|
trigger = {
|
|
has_activity_intent = murder_attendee_intent
|
|
}
|
|
flavor = ep2_wedding.1170.e.tt
|
|
custom_tooltip = available_because_intent_tt
|
|
duel = {
|
|
skills = { intrigue prowess }
|
|
target = scope:murderee
|
|
40 = {
|
|
# Success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1170.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1170.success.tt
|
|
left_icon = root
|
|
right_icon = scope:murderee
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_parade_death_log
|
|
tags = { good }
|
|
score = 20
|
|
character = scope:rich_spouse
|
|
target = scope:murderee
|
|
}
|
|
}
|
|
scope:murderee = {
|
|
death = {
|
|
killer = root
|
|
death_reason = death_plotting
|
|
}
|
|
}
|
|
complete_activity_intent = yes
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
vengeful = medium_stress_impact_loss
|
|
paranoid = medium_stress_impact_loss
|
|
deceitful = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
60 = {
|
|
# Failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1170.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1170.failure.tt
|
|
left_icon = root
|
|
right_icon = scope:murderee
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
vengeful = medium_stress_impact_gain
|
|
paranoid = medium_stress_impact_gain
|
|
deceitful = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
if = {
|
|
limit = {
|
|
intent_target ?= { has_character_flag = busy_in_ceremony_event }
|
|
}
|
|
intent_target = { remove_character_flag = busy_in_ceremony_event }
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Bad Match
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1180
|
|
##################################################
|
|
|
|
# Your spouse doesn't really like you...
|
|
|
|
ep2_wedding.1180 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1180.t
|
|
desc = ep2_wedding.1180.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = anger
|
|
}
|
|
right_portrait = {
|
|
character = scope:other_spouse
|
|
animation = disgust
|
|
}
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
OR = {
|
|
root.betrothed ?= {
|
|
trait_compatibility = {
|
|
target = root
|
|
value <= low_negative_trait_compatibility
|
|
}
|
|
}
|
|
root.betrothed ?= {
|
|
save_temporary_opinion_value_as = {
|
|
name = target_opinion
|
|
target = root
|
|
}
|
|
scope:target_opinion < 0
|
|
}
|
|
}
|
|
root.betrothed ?= {
|
|
has_any_good_relationship_with_root_trigger = no
|
|
is_ai = yes
|
|
}
|
|
}
|
|
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
betrothed = { has_any_bad_relationship_with_root_trigger = yes }
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
betrothed = { has_trait = fickle }
|
|
add = 1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
betrothed = {
|
|
save_scope_as = other_spouse
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
scope:activity = { set_variable = has_had_event_1180 }
|
|
}
|
|
|
|
# Option A: it doesn't matter
|
|
option = {
|
|
name = ep2_wedding.1180.a
|
|
add_character_modifier = {
|
|
modifier = wedding_political_mentality_modifier
|
|
years = 10
|
|
}
|
|
scope:other_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = hurt_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
stress_impact = {
|
|
humble = minor_stress_impact_gain
|
|
compassionate = minor_stress_impact_gain
|
|
callous = minor_stress_impact_loss
|
|
arrogant = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: I'll make you like me!
|
|
option = {
|
|
name = ep2_wedding.1180.b
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = woo_attendee_intent
|
|
intent_target = scope:other_spouse
|
|
}
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:other_spouse
|
|
REASON = lover_wedding_trying_hard
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
can_start_scheme = {
|
|
type = seduce
|
|
target_character = scope:other_spouse
|
|
}
|
|
}
|
|
start_scheme = {
|
|
type = seduce
|
|
target_character = scope:other_spouse
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
any_scheme = {
|
|
type = seduce
|
|
scheme_target_character = scope:other_spouse
|
|
}
|
|
}
|
|
random_scheme = {
|
|
type = seduce
|
|
limit = {
|
|
scheme_target_character = scope:other_spouse
|
|
}
|
|
add_scheme_progress = scheme_progress_gain
|
|
}
|
|
}
|
|
else = {
|
|
scope:other_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = making_an_effort_opinion
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:other_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:other_spouse
|
|
}
|
|
stress_impact = {
|
|
arrogant = minor_stress_impact_gain
|
|
fickle = minor_stress_impact_gain
|
|
lustful = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = lustful
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option C: don't care!
|
|
option = {
|
|
name = ep2_wedding.1180.c
|
|
trigger = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
scope:other_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = disappointed_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 150
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:other_spouse = { remove_character_flag = busy_in_ceremony_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Religious Complaints
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1190
|
|
##################################################
|
|
|
|
# Religious guest complains about lavishness, luxury, wastes, and unchaste mingling
|
|
|
|
ep2_wedding.1190 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1190.t
|
|
desc = ep2_wedding.1190.desc
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = dismissal
|
|
}
|
|
right_portrait = {
|
|
character = scope:grumbler
|
|
animation = personality_zealous
|
|
}
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = {
|
|
root = scope:host
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:host
|
|
}
|
|
OR = {
|
|
this = root.faith.religious_head
|
|
has_trait = devoted
|
|
has_trait = theologian
|
|
has_trait = zealous
|
|
}
|
|
faith = {
|
|
NOR = {
|
|
trait_is_virtue = lustful
|
|
trait_is_virtue = gluttonous
|
|
}
|
|
}
|
|
}
|
|
NOT = {
|
|
has_variable = has_had_1190
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
scope:activity = {
|
|
set_variable = has_had_1190
|
|
random_attending_character = {
|
|
limit = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:host
|
|
}
|
|
this = root.faith.religious_head
|
|
faith = {
|
|
NOR = {
|
|
trait_is_virtue = lustful
|
|
trait_is_virtue = gluttonous
|
|
}
|
|
}
|
|
}
|
|
alternative_limit = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:host
|
|
}
|
|
has_trait = devoted
|
|
faith = {
|
|
NOR = {
|
|
trait_is_virtue = lustful
|
|
trait_is_virtue = gluttonous
|
|
}
|
|
}
|
|
}
|
|
alternative_limit = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:host
|
|
}
|
|
has_trait = theologian
|
|
faith = {
|
|
NOR = {
|
|
trait_is_virtue = lustful
|
|
trait_is_virtue = gluttonous
|
|
}
|
|
}
|
|
}
|
|
alternative_limit = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:host
|
|
}
|
|
has_trait = zealous
|
|
faith = {
|
|
NOR = {
|
|
trait_is_virtue = lustful
|
|
trait_is_virtue = gluttonous
|
|
}
|
|
}
|
|
}
|
|
save_scope_as = grumbler
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
add_activity_log_entry = {
|
|
key = wedding_religious_complaints_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = scope:grumbler
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option A: repent
|
|
option = {
|
|
name = ep2_wedding.1190.a
|
|
scope:grumbler = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = pious_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
has_trait = zealous
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
every_attending_character = {
|
|
limit = {
|
|
has_trait = zealous
|
|
this != scope:grumbler
|
|
this != root
|
|
}
|
|
custom = every_zealous_attending_character
|
|
add_opinion = {
|
|
target = root
|
|
modifier = pious_opinion
|
|
opinion = 5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_lifestyle = learning_lifestyle
|
|
}
|
|
add_learning_lifestyle_xp = medium_lifestyle_experience
|
|
}
|
|
stress_impact = {
|
|
zealous = medium_stress_impact_loss
|
|
humble = minor_stress_impact_loss
|
|
temperate = minor_stress_impact_loss
|
|
chaste = minor_stress_impact_loss
|
|
cynical = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
gluttonous = medium_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
drunkard = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_zeal = 1.5
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: kick them out
|
|
option = {
|
|
name = ep2_wedding.1190.b
|
|
trigger = {
|
|
root = scope:host
|
|
}
|
|
scope:grumbler = {
|
|
remove_from_activity = scope:activity
|
|
}
|
|
progress_towards_rival_effect = {
|
|
CHARACTER = scope:grumbler
|
|
REASON = rival_kicked_out_priest
|
|
OPINION = default_rival_opinion
|
|
}
|
|
stress_impact = {
|
|
zealous = major_stress_impact_gain
|
|
cynical = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
gluttonous = medium_stress_impact_loss
|
|
lustful = medium_stress_impact_loss
|
|
drunkard = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = gluttonous
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = cynical
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = drunkard
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option C: ignore
|
|
option = {
|
|
name = ep2_wedding.1190.c
|
|
scope:grumbler = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = ignored_opinion
|
|
opinion = -5
|
|
}
|
|
}
|
|
stress_impact = {
|
|
zealous = medium_stress_impact_gain
|
|
cynical = minor_stress_impact_loss
|
|
arrogant = minor_stress_impact_loss
|
|
gluttonous = minor_stress_impact_loss
|
|
lustful = minor_stress_impact_loss
|
|
drunkard = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
# Option D: yes, and I will enjoy it too!
|
|
option = {
|
|
name = ep2_wedding.1190.d
|
|
trigger = {
|
|
OR = {
|
|
has_activity_intent = reduce_stress_intent
|
|
has_activity_intent = woo_attendee_intent
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
scope:grumbler = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = annoyed_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = woo_attendee_intent
|
|
intent_target = {
|
|
NOR = {
|
|
this = scope:grumbler
|
|
has_trait = zealous
|
|
}
|
|
}
|
|
}
|
|
root = {
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = root.intent_target
|
|
REASON = lover_daring_move
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:grumbler = { remove_character_flag = busy_in_ceremony_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Parent's Heart
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1200
|
|
##################################################
|
|
|
|
# Proud parent watches everything go well and brags with intent target/friend/rival/neighbor
|
|
|
|
ep2_wedding.1200 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1200.t
|
|
desc = {
|
|
desc = ep2_wedding.1200.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_activity_intent = woo_attendee_intent
|
|
has_activity_intent = diplomatic_intent
|
|
has_activity_intent = matchmaking_intent
|
|
scope:listener = { has_relation_rival = root }
|
|
scope:listener = { has_relation_potential_rival = root}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1200.desc_interest
|
|
}
|
|
desc = ep2_wedding.1200.desc_generic
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = wedding_happy_cry
|
|
}
|
|
center_portrait = {
|
|
character = scope:my_child
|
|
animation = wrestling_victory
|
|
}
|
|
right_portrait = {
|
|
character = scope:listener
|
|
animation = boredom
|
|
}
|
|
lower_left_portrait = scope:my_child
|
|
lower_center_portrait = scope:intent_target
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
OR = {
|
|
scope:activity.special_guest:spouse_1 = { is_child_of = root }
|
|
scope:activity.special_guest:spouse_2 = { is_child_of = root }
|
|
}
|
|
# Incest alert
|
|
NOR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
has_activity_intent = matchmaking_intent
|
|
}
|
|
OR = {
|
|
root.intent_target = { has_variable = wedding_good_match }
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
is_ai = yes
|
|
location = root.location
|
|
can_marry_character_trigger = { CHARACTER = root.intent_target }
|
|
NOR = {
|
|
exists = betrothed
|
|
has_character_flag = busy_in_wgathering_event
|
|
is_close_or_extended_family_of = root.intent_target
|
|
root.intent_target.var:wedding_no_match ?= this
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
is_female = yes
|
|
}
|
|
age < marriage_female_fertility_cutoff_age_value
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
has_activity_intent = woo_attendee_intent
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
has_activity_intent = diplomatic_intent
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
has_activity_intent = matchmaking_intent
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
root = scope:host
|
|
add = 2
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = { is_child_of = root }
|
|
}
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = my_child }
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = my_child }
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
has_activity_intent = woo_attendee_intent
|
|
has_activity_intent = diplomatic_intent
|
|
}
|
|
}
|
|
intent_target = { save_scope_as = listener }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_activity_intent = matchmaking_intent
|
|
intent_target = { has_variable = wedding_good_match }
|
|
}
|
|
intent_target.var:wedding_good_match = { save_scope_as = listener }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_activity_intent = matchmaking_intent
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
is_ai = yes
|
|
location = root.location
|
|
can_marry_character_trigger = { CHARACTER = root.intent_target }
|
|
NOR = {
|
|
exists = betrothed
|
|
has_character_flag = busy_in_wgathering_event
|
|
is_close_or_extended_family_of = root.intent_target
|
|
root.intent_target.var:wedding_no_match ?= this
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
is_female = yes
|
|
}
|
|
age < marriage_female_fertility_cutoff_age_value
|
|
}
|
|
}
|
|
save_scope_as = listener
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
OR = {
|
|
has_relation_friend = root
|
|
has_relation_rival = root
|
|
has_relation_lover = root
|
|
has_relation_potential_friend = root
|
|
has_relation_potential_rival = root
|
|
has_relation_potential_lover = root
|
|
}
|
|
NOR = {
|
|
this = scope:my_child
|
|
this = scope:my_child.betrothed
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
OR = {
|
|
has_relation_friend = root
|
|
has_relation_rival = root
|
|
has_relation_lover = root
|
|
has_relation_potential_friend = root
|
|
has_relation_potential_rival = root
|
|
has_relation_potential_lover = root
|
|
}
|
|
NOR = {
|
|
this = scope:my_child
|
|
this = scope:my_child.betrothed
|
|
}
|
|
}
|
|
save_scope_as = listener
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:my_child
|
|
this = scope:my_child.betrothed
|
|
}
|
|
}
|
|
save_scope_as = listener
|
|
}
|
|
}
|
|
}
|
|
scope:listener = { add_character_flag = busy_in_ceremony_event }
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = matchmaking_intent
|
|
}
|
|
intent_target = { save_scope_as = intent_target }
|
|
}
|
|
}
|
|
|
|
# Option A: So proud
|
|
option = {
|
|
name = ep2_wedding.1200.a
|
|
add_prestige = minor_prestige_gain
|
|
dynasty ?= { add_dynasty_prestige = minor_dynasty_prestige_gain }
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_any_good_relationship_with_character_trigger = { CHARACTER = scope:listener }
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: Aren't you jealous
|
|
option = {
|
|
name = ep2_wedding.1200.b
|
|
if = {
|
|
limit = {
|
|
can_set_relation_rival_trigger = { CHARACTER = scope:listener }
|
|
}
|
|
progress_towards_rival_effect = {
|
|
CHARACTER = scope:listener
|
|
REASON = rival_rubbed_it_in
|
|
OPINION = default_rival_opinion
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_relation_rival = scope:listener
|
|
num_of_relation_nemesis = 0
|
|
}
|
|
set_relation_nemesis = {
|
|
target = scope:listener
|
|
reason = rival_rubbed_it_in
|
|
}
|
|
}
|
|
else = {
|
|
reverse_add_opinion = {
|
|
target = scope:listener
|
|
modifier = annoyed_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_gloating_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = root
|
|
target = scope:listener
|
|
}
|
|
}
|
|
stress_impact = {
|
|
vengeful = medium_stress_impact_loss
|
|
callous = medium_stress_impact_loss
|
|
sadistic = medium_stress_impact_loss
|
|
deceitful = medium_stress_impact_loss
|
|
paranoid = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_any_bad_relationship_with_character_trigger = { CHARACTER = scope:listener }
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = vengeful
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = 25
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option C: Woo - what about *us*
|
|
option = {
|
|
name = ep2_wedding.1200.c
|
|
trigger = {
|
|
has_activity_intent = woo_attendee_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
duel = {
|
|
skill = intrigue
|
|
target = scope:listener
|
|
50 = {
|
|
# Success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
scope:listener = { has_trait = lustful }
|
|
add = 15
|
|
}
|
|
desc = ep2_wedding.1200.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1200.success.tt
|
|
left_icon = root
|
|
right_icon = scope:listener
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:listener
|
|
REASON = lover_love_is_in_the_air
|
|
OPINION = default_lover_opinion
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
lustful = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
# Failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
scope:listener = { has_trait = chaste }
|
|
add = 15
|
|
}
|
|
desc = ep2_wedding.1200.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1200.failure.tt
|
|
left_icon = root
|
|
right_icon = scope:listener
|
|
scope:listener = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = awkward_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
# Option D: Diplo: impressive show of power
|
|
option = {
|
|
name = ep2_wedding.1200.d
|
|
flavor = ep2_wedding.1200.d.tt
|
|
trigger = {
|
|
has_activity_intent = diplomatic_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:listener
|
|
40 = {
|
|
# Success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
root = scope:host
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:listener = { has_trait = trusting }
|
|
add = 10
|
|
}
|
|
desc = ep2_wedding.1200.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1200.success.tt
|
|
left_icon = root
|
|
right_icon = scope:listener
|
|
complete_activity_intent = yes
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_alliance_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:listener
|
|
|
|
root = {
|
|
create_alliance = {
|
|
target = scope:listener
|
|
allied_through_owner = root
|
|
allied_through_target = scope:listener
|
|
}
|
|
}
|
|
scope:listener = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = event_negotiated_alliance_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
60 = {
|
|
# Failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
scope:listener = { has_trait = paranoid }
|
|
add = 20
|
|
}
|
|
desc = ep2_wedding.1200.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1200.failure.tt
|
|
left_icon = root
|
|
right_icon = scope:listener
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
# Option E: Matchmaking: if only I could do the same for X
|
|
option = {
|
|
name = ep2_wedding.1200.e
|
|
trigger = {
|
|
has_activity_intent = matchmaking_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
duel = {
|
|
skills = { diplomacy intrigue }
|
|
target = scope:listener
|
|
50 = {
|
|
# Success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1200.e.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1200.e.success
|
|
left_icon = root
|
|
right_icon = scope:listener
|
|
custom_tooltip = ep2_wedding.1200.e.success.tt
|
|
if = {
|
|
limit = {
|
|
intent_target = {
|
|
NOT = {
|
|
has_variable = wedding_good_match
|
|
}
|
|
}
|
|
}
|
|
intent_target = {
|
|
set_variable = {
|
|
name = wedding_good_match
|
|
value = scope:listener
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
intent_target = {
|
|
create_betrothal = scope:listener
|
|
}
|
|
}
|
|
scope:listener = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = flattered_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
scope:listener = {
|
|
add_opinion = {
|
|
target = scope:intent_target
|
|
modifier = flattered_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
family_first = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
gregarious = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
# Failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1200.e.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1200.e.failure
|
|
left_icon = root
|
|
right_icon = scope:listener
|
|
intent_target = {
|
|
set_variable = {
|
|
name = wedding_no_match
|
|
value = scope:listener
|
|
}
|
|
}
|
|
scope:listener = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = insult_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
family_first = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
gregarious = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:listener = { remove_character_flag = busy_in_ceremony_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Political Talk
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1210
|
|
##################################################
|
|
|
|
# Political talk with a fellow ruler
|
|
|
|
ep2_wedding.1210 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1210.t
|
|
desc = {
|
|
desc = ep2_wedding.1210.desc
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:talk_to.gold < 0
|
|
}
|
|
desc = ep2_wedding.1210.desc_gold
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:talk_to = {
|
|
OR = {
|
|
has_trait = shy
|
|
has_trait = craven
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1210.desc_fear
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:talk_to = {
|
|
any_sub_realm_county = {
|
|
any_county_province = {
|
|
has_province_modifier = recently_looted_modifier
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1210.desc_raids
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:talk_to = {
|
|
OR = {
|
|
any_relation = {
|
|
type = rival
|
|
}
|
|
has_trait = paranoid
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1210.desc_rivals
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:talk_to = {
|
|
age > 65
|
|
}
|
|
}
|
|
desc = ep2_wedding.1210.desc_age
|
|
}
|
|
desc = ep2_wedding.1210.desc_bad_harvest
|
|
desc = ep2_wedding.1210.desc_rain
|
|
desc = ep2_wedding.1210.desc_enemies
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = personality_rational
|
|
}
|
|
right_portrait = {
|
|
character = scope:talk_to
|
|
animation = thinking
|
|
}
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
is_landed = yes
|
|
has_activity_intent = diplomatic_intent
|
|
intent_target = {
|
|
is_landed = yes
|
|
NOT = { is_vassal_of = root }
|
|
is_ai = yes
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
NOR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
intent_target = {
|
|
save_scope_as = talk_to
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
|
|
# Option A: gain hook
|
|
option = {
|
|
name = ep2_wedding.1210.a
|
|
trigger = {
|
|
can_add_hook = {
|
|
target = scope:talk_to
|
|
type = threat_hook
|
|
}
|
|
}
|
|
duel = {
|
|
skill = intrigue
|
|
target = scope:talk_to
|
|
50 = {
|
|
# Success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
has_trait = schemer
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = torturer
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = lazy }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = craven }
|
|
add = 20
|
|
}
|
|
desc = ep2_wedding.1210.a.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1210.a.success
|
|
left_icon = root
|
|
right_icon = scope:talk_to
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_intimidation_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:talk_to
|
|
|
|
root = {
|
|
add_hook = {
|
|
target = scope:talk_to
|
|
type = threat_hook
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
deceitful = medium_stress_impact_loss
|
|
sadistic = medium_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
# Failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = torturer }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = brave }
|
|
add = 20
|
|
}
|
|
desc = ep2_wedding.1210.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1210.a.failure
|
|
left_icon = root
|
|
right_icon = scope:talk_to
|
|
reverse_add_opinion = {
|
|
target = scope:talk_to
|
|
modifier = threatened_opinion
|
|
opinion = -20
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
deceitful = medium_stress_impact_gain
|
|
sadistic = medium_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
# Option B: gain alliance
|
|
option = {
|
|
name = ep2_wedding.1210.b
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:talk_to
|
|
40 = {
|
|
# Success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
has_trait = diplomat
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = august
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = lazy }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = trusting }
|
|
add = 20
|
|
}
|
|
desc = ep2_wedding.1210.b.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1210.b.success
|
|
left_icon = root
|
|
right_icon = scope:talk_to
|
|
complete_activity_intent = yes
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_alliance_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:talk_to
|
|
|
|
root = {
|
|
create_alliance = {
|
|
target = scope:talk_to
|
|
allied_through_owner = root
|
|
allied_through_target = scope:talk_to
|
|
}
|
|
}
|
|
scope:talk_to = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = event_negotiated_alliance_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
gregarious = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
60 = {
|
|
# Failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = diplomat }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = august }
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = paranoid }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = shy }
|
|
add = 20
|
|
}
|
|
desc = ep2_wedding.1210.b.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1210.b.failure
|
|
left_icon = root
|
|
right_icon = scope:talk_to
|
|
scope:talk_to = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = suspicion_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
gregarious = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
# Option C: subjugate
|
|
option = {
|
|
name = ep2_wedding.1210.c
|
|
trigger = {
|
|
scope:talk_to = { activity_wedding_diplomatic_intent_impressible_target = yes }
|
|
}
|
|
duel = {
|
|
skills = { diplomacy intrigue }
|
|
target = scope:talk_to
|
|
30 = {
|
|
# Success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
has_trait = diplomat
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = august
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = trusting }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = craven }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = shy }
|
|
add = 20
|
|
}
|
|
desc = ep2_wedding.1210.c.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1210.c.success
|
|
left_icon = root
|
|
right_icon = scope:talk_to
|
|
complete_activity_intent = yes
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_fealty_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:talk_to
|
|
|
|
root = {
|
|
create_title_and_vassal_change = {
|
|
type = swear_fealty
|
|
save_scope_as = title_change
|
|
add_claim_on_loss = no
|
|
}
|
|
scope:talk_to = {
|
|
change_liege = {
|
|
liege = root
|
|
change = scope:title_change
|
|
}
|
|
}
|
|
resolve_title_and_vassal_change = scope:title_change
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
ambitious = major_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
70 = {
|
|
# Failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = diplomat }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = august }
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:talk_to = { has_trait = paranoid }
|
|
add = 20
|
|
}
|
|
desc = ep2_wedding.1210.c.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1210.c.failure
|
|
left_icon = root
|
|
right_icon = scope:talk_to
|
|
scope:talk_to = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = suspicion_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:talk_to = { remove_character_flag = busy_in_ceremony_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Poisonous Relations
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1220
|
|
##################################################
|
|
|
|
# In-laws are bullies (or other close relatives)
|
|
|
|
scripted_trigger wedding_1220_valid_relative_trigger = {
|
|
is_ai = yes
|
|
is_adult = yes
|
|
is_close_family_of = $RELATIVE_SPOUSE$
|
|
NOT = { is_close_family_of = $NON_RELATIVE_SPOUSE$ }
|
|
NOR = {
|
|
this = $RELATIVE_SPOUSE$
|
|
this = $NON_RELATIVE_SPOUSE$
|
|
}
|
|
OR = {
|
|
# They enjoy making people feel inadequate
|
|
has_trait = deceitful
|
|
has_trait = vengeful
|
|
has_trait = callous
|
|
has_trait = torturer
|
|
has_trait = greedy
|
|
has_trait = sadistic
|
|
# Their family is marrying down
|
|
highest_held_title_tier > $NON_RELATIVE_SPOUSE$.highest_held_title_tier
|
|
$RELATIVE_SPOUSE$.highest_held_title_tier > $NON_RELATIVE_SPOUSE$.highest_held_title_tier
|
|
# They are feuding
|
|
house_has_feud_relation_with_trigger = { TARGET = $NON_RELATIVE_SPOUSE$ }
|
|
# They already didn't like you
|
|
has_any_bad_relationship_with_character_trigger = { CHARACTER = $NON_RELATIVE_SPOUSE$ }
|
|
opinion = {
|
|
target = $NON_RELATIVE_SPOUSE$
|
|
value <= -25
|
|
}
|
|
# They think you are a criminal
|
|
has_imprisonment_reason = $NON_RELATIVE_SPOUSE$
|
|
# Or a miscreant
|
|
faith = {
|
|
NOR = {
|
|
this = $NON_RELATIVE_SPOUSE$.faith
|
|
faith_hostility_level = {
|
|
target = $NON_RELATIVE_SPOUSE$.faith
|
|
value = 0 # Accepted
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.1220 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1220.t
|
|
desc = {
|
|
desc = ep2_wedding.1220.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
scope:relative.highest_held_title_tier > root.highest_held_title_tier
|
|
scope:other_spouse.highest_held_title_tier > root.highest_held_title_tier
|
|
}
|
|
}
|
|
desc = ep2_wedding.1220.desc_marry_down
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:relative ?= {
|
|
house_has_feud_relation_with_trigger = { TARGET = root }
|
|
}
|
|
}
|
|
desc = ep2_wedding.1220.desc_feud
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:relative = {
|
|
OR = {
|
|
has_any_bad_relationship_with_character_trigger = { CHARACTER = root }
|
|
opinion = {
|
|
target = root
|
|
value <= -25
|
|
}
|
|
has_imprisonment_reason = root
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1220.desc_despicable
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:relative.faith = {
|
|
NOR = {
|
|
this = root.faith
|
|
faith_hostility_level = {
|
|
target = root.faith
|
|
value = 0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1220.desc_miscreant
|
|
}
|
|
desc = ep2_wedding.1220.desc_fallback
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_activity_intent = diplomatic_intent
|
|
scope:relative != scope:diplo_target
|
|
}
|
|
desc = ep2_wedding.1220.desc_target
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = shame
|
|
}
|
|
center_portrait = {
|
|
trigger = {
|
|
scope:diplo_target ?= { this != scope:relative }
|
|
}
|
|
character = scope:diplo_target
|
|
animation = thinking
|
|
}
|
|
right_portrait = {
|
|
character = scope:relative
|
|
animation = anger
|
|
}
|
|
|
|
lower_right_portrait = scope:other_spouse
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
wedding_1220_valid_relative_trigger = {
|
|
RELATIVE_SPOUSE = scope:activity.special_guest:spouse_2
|
|
NON_RELATIVE_SPOUSE = scope:activity.special_guest:spouse_1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
trigger_else = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
wedding_1220_valid_relative_trigger = {
|
|
RELATIVE_SPOUSE = scope:activity.special_guest:spouse_1
|
|
NON_RELATIVE_SPOUSE = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
has_activity_intent = diplomatic_intent
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
add = 1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_ceremony_event
|
|
if = {
|
|
limit = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
}
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = other_spouse }
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = other_spouse }
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
wedding_1220_valid_relative_trigger = {
|
|
RELATIVE_SPOUSE = scope:other_spouse
|
|
NON_RELATIVE_SPOUSE = root
|
|
}
|
|
}
|
|
save_scope_as = relative
|
|
add_character_flag = busy_in_ceremony_event
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = diplomatic_intent
|
|
}
|
|
intent_target = { save_scope_as = diplo_target }
|
|
}
|
|
}
|
|
|
|
# Option A: ignore
|
|
option = {
|
|
name = ep2_wedding.1220.a
|
|
add_prestige = minor_prestige_loss
|
|
scope:relative = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = weak_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
stress_impact = {
|
|
lazy = minor_stress_impact_loss
|
|
calm = medium_stress_impact_loss
|
|
patient = medium_stress_impact_loss
|
|
humble = medium_stress_impact_loss
|
|
content = medium_stress_impact_loss
|
|
forgiving = major_stress_impact_loss
|
|
wrathful = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
brave = medium_stress_impact_gain
|
|
trusting = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option B: react aggressively
|
|
option = {
|
|
name = ep2_wedding.1220.b
|
|
add_prestige = medium_prestige_gain
|
|
scope:relative = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = threatened_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
can_set_relation_rival_trigger = { CHARACTER = scope:relative }
|
|
}
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_wedding_challenged_prejudices
|
|
CHARACTER = scope:relative
|
|
OPINION = 0
|
|
}
|
|
}
|
|
stress_impact = {
|
|
lazy = minor_stress_impact_gain
|
|
calm = medium_stress_impact_gain
|
|
patient = medium_stress_impact_gain
|
|
humble = medium_stress_impact_gain
|
|
craven = medium_stress_impact_gain
|
|
shy = medium_stress_impact_gain
|
|
paranoid = minor_stress_impact_loss
|
|
wrathful = medium_stress_impact_loss
|
|
brave = medium_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
stubborn = medium_stress_impact_loss
|
|
vengeful = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_vengefulness = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
# Option C: diplomatic intent: if you handle them well, you can also impress your target (especially if they are the target)
|
|
option = {
|
|
name = ep2_wedding.1220.c
|
|
trigger = {
|
|
has_activity_intent = diplomatic_intent
|
|
}
|
|
flavor = ep2_wedding.1220.c.tt
|
|
custom_tooltip = available_because_intent_tt
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:relative
|
|
50 = {
|
|
# Success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1220.c.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1220.c.success.tt
|
|
left_icon = root
|
|
right_icon = scope:relative
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_proved_wrong_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:relative
|
|
|
|
root = {
|
|
add_prestige = medium_prestige_gain
|
|
if = {
|
|
limit = {
|
|
can_set_relation_friend_trigger = { CHARACTER = scope:relative }
|
|
}
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_wedding_not_so_bad
|
|
CHARACTER = scope:relative
|
|
OPINION = default_friend_opinion
|
|
}
|
|
}
|
|
}
|
|
scope:diplo_target ?= {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = impressed_opinion
|
|
opinion = 20
|
|
}
|
|
if = {
|
|
limit = {
|
|
this = scope:relative
|
|
root = {
|
|
can_add_hook = {
|
|
target = scope:relative
|
|
type = favor_hook
|
|
}
|
|
}
|
|
}
|
|
root = {
|
|
add_hook = {
|
|
target = scope:relative
|
|
type = favor_hook
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
calm = medium_stress_impact_loss
|
|
patient = medium_stress_impact_loss
|
|
forgiving = major_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
# Failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1220.c.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1220.c.failure.tt
|
|
left_icon = root
|
|
right_icon = scope:relative
|
|
add_prestige = minor_prestige_loss
|
|
if = {
|
|
limit = {
|
|
can_set_relation_rival_trigger = { CHARACTER = scope:relative }
|
|
}
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_wedding_confirmed_prejudices
|
|
CHARACTER = scope:relative
|
|
OPINION = default_rival_opinion
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
paranoid = minor_stress_impact_gain
|
|
wrathful = medium_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
# Option D: mischief intent: mess with them
|
|
option = {
|
|
name = ep2_wedding.1220.d
|
|
trigger = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
if = {
|
|
limit = {
|
|
has_lifestyle = intrigue_lifestyle
|
|
}
|
|
add_intrigue_lifestyle_xp = medium_lifestyle_xp
|
|
}
|
|
add_dread = minor_dread_gain
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
arrogant = major_stress_impact_loss
|
|
stubborn = major_stress_impact_loss
|
|
vengeful = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_ceremony_event
|
|
scope:relative = { remove_character_flag = busy_in_ceremony_event }
|
|
}
|
|
}
|
|
|
|
|
|
|
|
# BANQUET EVENTS
|
|
|
|
##################################################
|
|
# A Kindred Spirit
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1040
|
|
##################################################
|
|
|
|
# You make a new friend
|
|
|
|
ep2_wedding.1040 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1040.t
|
|
desc = ep2_wedding.1040.desc
|
|
theme = wedding_banquet_activity
|
|
center_portrait = {
|
|
character = root
|
|
animation = laugh
|
|
}
|
|
right_portrait = {
|
|
character = scope:new_friend
|
|
animation = personality_content
|
|
}
|
|
|
|
cooldown = { years = 1 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
OR = {
|
|
has_relation_potential_friend = root
|
|
AND = {
|
|
has_any_good_relationship_with_root_trigger = no
|
|
has_any_bad_relationship_with_root_trigger = no
|
|
}
|
|
}
|
|
is_ai = yes
|
|
is_adult = yes
|
|
NOT = { has_character_flag = busy_in_banquet_event }
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
is_ai = yes
|
|
factor = 0.1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_banquet_event
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
OR = {
|
|
has_relation_potential_friend = root
|
|
AND = {
|
|
has_any_good_relationship_with_root_trigger = no
|
|
has_any_bad_relationship_with_root_trigger = no
|
|
}
|
|
}
|
|
is_ai = yes
|
|
is_adult = yes
|
|
NOT = { has_character_flag = busy_in_banquet_event }
|
|
}
|
|
save_scope_as = new_friend
|
|
}
|
|
}
|
|
scope:new_friend = { add_character_flag = busy_in_banquet_event }
|
|
}
|
|
|
|
#Option A:
|
|
option = {
|
|
name = ep2_wedding.1040.a
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_kindred_log
|
|
tags = { good }
|
|
score = 50
|
|
character = root
|
|
target = scope:new_friend
|
|
|
|
# Effect
|
|
root = {
|
|
set_relation_friend = { reason = friend_wedding_enjoyable_chat target = scope:new_friend }
|
|
reverse_add_opinion = {
|
|
target = scope:new_friend
|
|
modifier = friendliness_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
shy = minor_stress_impact_gain
|
|
reclusive = minor_stress_impact_gain
|
|
paranoid = minor_stress_impact_gain
|
|
trusting = medium_stress_impact_loss
|
|
gregarious = major_stress_impact_loss
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = shy
|
|
add = -50
|
|
}
|
|
modifier = {
|
|
has_trait = reclusive
|
|
add = -75
|
|
}
|
|
modifier = {
|
|
has_trait = paranoid
|
|
add = -75
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B:
|
|
option = {
|
|
name = ep2_wedding.1040.b
|
|
reverse_add_opinion = {
|
|
target = scope:new_friend
|
|
modifier = unfriendly_opinion
|
|
opinion = -15
|
|
}
|
|
stress_impact = {
|
|
gregarious = medium_stress_impact_gain
|
|
reclusive = major_stress_impact_loss
|
|
paranoid = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = -75
|
|
}
|
|
}
|
|
}
|
|
after = {
|
|
remove_character_flag = busy_in_banquet_event
|
|
scope:new_friend = { remove_character_flag = busy_in_banquet_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Fiery Dance
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1050
|
|
##################################################
|
|
|
|
# Someone catches fire from the torches
|
|
|
|
scripted_trigger ep2_wedding_extra_victim_valid_trigger = {
|
|
is_ai = yes
|
|
is_adult = yes
|
|
NOR = {
|
|
this = root
|
|
this = scope:1050_victim
|
|
}
|
|
NOT = { has_character_flag = busy_in_banquet_event }
|
|
}
|
|
|
|
ep2_wedding.1050 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1050.t
|
|
desc = ep2_wedding.1050.desc
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = fear
|
|
}
|
|
center_portrait = {
|
|
trigger = {
|
|
exists = scope:extra_victim_1
|
|
}
|
|
character = scope:extra_victim_1
|
|
animation = shock
|
|
}
|
|
right_portrait = {
|
|
character = scope:victim
|
|
animation = pain
|
|
}
|
|
lower_center_portrait = scope:other_victim
|
|
lower_right_portrait = scope:extra_victim_2
|
|
|
|
cooldown = { years = 15 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
NOT = {
|
|
has_variable = has_had_event_1050
|
|
}
|
|
}
|
|
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_entertainment
|
|
option = wedding_entertainment_good
|
|
}
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
is_adult = yes
|
|
this != root
|
|
is_ai = yes
|
|
NOT = { has_character_flag = busy_in_banquet_event }
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
is_ai = yes
|
|
factor = 0.1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
set_variable = has_had_event_1050
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
is_adult = yes
|
|
this != root
|
|
is_ai = yes
|
|
NOT = { has_character_flag = busy_in_banquet_event }
|
|
}
|
|
save_scope_as = 1050_victim
|
|
increase_wounds_effect = { REASON = burned }
|
|
add_character_flag = busy_in_banquet_event
|
|
}
|
|
}
|
|
add_character_flag = busy_in_banquet_event
|
|
if = {
|
|
limit = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_extra_victim_valid_trigger = yes
|
|
save_temporary_scope_as = extra_victim_1
|
|
}
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_extra_victim_valid_trigger = yes
|
|
this != scope:extra_victim_1
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
ep2_wedding_extra_victim_valid_trigger = yes
|
|
}
|
|
save_scope_as = extra_victim_1
|
|
add_character_flag = busy_in_banquet_event
|
|
}
|
|
random_attending_character = {
|
|
limit = {
|
|
ep2_wedding_extra_victim_valid_trigger = yes
|
|
this != scope:extra_victim_1
|
|
}
|
|
save_scope_as = extra_victim_2
|
|
add_character_flag = busy_in_banquet_event
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_extra_victim_valid_trigger = yes
|
|
NOR = {
|
|
this = scope:extra_victim_1
|
|
this = scope:extra_victim_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
ep2_wedding_extra_victim_valid_trigger = yes
|
|
NOR = {
|
|
this = scope:extra_victim_1
|
|
this = scope:extra_victim_2
|
|
}
|
|
}
|
|
save_scope_as = other_victim
|
|
add_character_flag = busy_in_banquet_event
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option A: try to save them
|
|
option = {
|
|
name = ep2_wedding.1050.a
|
|
duel = {
|
|
skill = prowess
|
|
value = decent_skill_rating
|
|
40 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1050.a.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1050.a.success.tt
|
|
left_icon = scope:1050_victim
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_dance_rescue_log
|
|
tags = { good }
|
|
score = 25
|
|
character = root
|
|
target = scope:1050_victim
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1050_victim
|
|
modifier = grateful_opinion
|
|
opinion = 30
|
|
}
|
|
if = {
|
|
limit = {
|
|
can_add_hook = {
|
|
type = indebted_hook
|
|
target = scope:1050_victim
|
|
}
|
|
}
|
|
add_hook = {
|
|
type = indebted_hook
|
|
target = scope:1050_victim
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = woo_attendee_intent
|
|
intent_target = scope:1050_victim
|
|
}
|
|
progress_towards_lover_effect = {
|
|
REASON = lover_wedding_saved_from_flames
|
|
CHARACTER = scope:1050_victim
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_activity_intent = diplomatic_intent
|
|
intent_target = scope:1050_victim
|
|
}
|
|
create_alliance = {
|
|
target = scope:1050_victim
|
|
allied_through_owner = root
|
|
allied_through_target = scope:1050_victim
|
|
}
|
|
scope:1050_victim = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = event_negotiated_alliance_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
60 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1050.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1050.a.failure.tt
|
|
left_icon = scope:1050_victim
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_dance_rescue_fail_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = root
|
|
target = scope:1050_victim
|
|
|
|
# Effect
|
|
root = {
|
|
increase_wounds_effect = { REASON = burned }
|
|
scope:1050_victim = {
|
|
increase_wounds_effect = { REASON = burned }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
craven = massive_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
modifier = {
|
|
has_trait = brave
|
|
add = 100
|
|
}
|
|
modifier = {
|
|
has_trait = craven
|
|
add = -100
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: call for help
|
|
option = {
|
|
name = ep2_wedding.1050.b
|
|
random_list = {
|
|
50 = {
|
|
#Saved!
|
|
desc = ep2_wedding.1050.b.1
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_bad
|
|
}
|
|
}
|
|
add = -25
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_good
|
|
}
|
|
}
|
|
add = 25
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1050.b.1.tt
|
|
left_icon = scope:1050_victim
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_dance_saved_log
|
|
tags = { good }
|
|
score = 25
|
|
character = scope:1050_victim
|
|
}
|
|
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1050_victim
|
|
modifier = grateful_opinion
|
|
opinion = 15
|
|
}
|
|
if = {
|
|
limit = {
|
|
can_add_hook = {
|
|
type = indebted_hook
|
|
target = scope:1050_victim
|
|
}
|
|
}
|
|
add_hook = {
|
|
type = indebted_hook
|
|
target = scope:1050_victim
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
#Keeps burning!
|
|
desc = ep2_wedding.1050.b.2
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1050.b.2.tt
|
|
left_icon = scope:1050_victim
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_dance_saved_fail_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = scope:1050_victim
|
|
|
|
# Effect
|
|
scope:1050_victim = {
|
|
increase_wounds_effect = { REASON = burned }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
}
|
|
}
|
|
|
|
#Option C: FIRE!
|
|
option = {
|
|
name = ep2_wedding.1050.c
|
|
trigger = {
|
|
exists = scope:extra_victim_1
|
|
exists = scope:extra_victim_2
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_dance_disaster_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = scope:1050_victim
|
|
|
|
# Effect
|
|
scope:extra_victim_1 = {
|
|
increase_wounds_effect = { REASON = burned }
|
|
}
|
|
scope:extra_victim_2 = {
|
|
increase_wounds_effect = { REASON = burned }
|
|
}
|
|
|
|
root = { add_dread = medium_dread_gain }
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = major_stress_impact_gain
|
|
callous = medium_stress_impact_loss
|
|
vengeful = major_stress_impact_loss
|
|
sadistic = massive_stress_impact_loss
|
|
torturer = massive_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 30
|
|
modifier = {
|
|
has_trait = sadistic
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = -70
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option D: panic
|
|
option = {
|
|
name = ep2_wedding.1050.d
|
|
trigger = { exists = scope:other_victim }
|
|
random = {
|
|
chance = 30
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1050.d.tt.2
|
|
left_icon = scope:other_victim
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_dance_knocked_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = root
|
|
target = scope:other_victim
|
|
|
|
# Effect
|
|
root = { custom_tooltip = ep2_wedding.1050.d.tt }
|
|
scope:other_victim = {
|
|
increase_wounds_effect = { REASON = burned }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
stress_impact = {
|
|
brave = massive_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
modifier = {
|
|
has_trait = craven
|
|
add = 100
|
|
}
|
|
modifier = {
|
|
has_trait = brave
|
|
add = -100
|
|
}
|
|
}
|
|
}
|
|
after = {
|
|
remove_character_flag = busy_in_banquet_event
|
|
scope:1050_victim = { remove_character_flag = busy_in_banquet_event }
|
|
if = {
|
|
limit = { exists = scope:other_victim }
|
|
scope:other_victim = { remove_character_flag = busy_in_banquet_event }
|
|
}
|
|
if = {
|
|
limit = { exists = scope:extra_victim_1 }
|
|
scope:extra_victim_1 = { remove_character_flag = busy_in_banquet_event }
|
|
}
|
|
if = {
|
|
limit = { exists = scope:extra_victim_2 }
|
|
scope:extra_victim_2 = { remove_character_flag = busy_in_banquet_event }
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# An Exotic Show
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1070
|
|
##################################################
|
|
|
|
# Showing off exotic animals can go very well or very wrong
|
|
|
|
ep2_wedding.1070 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1070.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
root = scope:host
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.1070.desc_host
|
|
}
|
|
desc = ep2_wedding.1070.desc_guest
|
|
}
|
|
desc = ep2_wedding.1070.desc_mid
|
|
first_valid = {
|
|
triggered_desc = { #Everyone is impressed
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_good
|
|
}
|
|
desc = ep2_wedding.1070.desc_good
|
|
}
|
|
desc = ep2_wedding.1070.desc_bad #The animals are out of control!
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:1070_target
|
|
has_character_flag = 1070_exotic_fiends_bad
|
|
}
|
|
desc = ep2_wedding.1070.desc_bad_target
|
|
}
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_bad
|
|
}
|
|
animation = shock
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_good
|
|
}
|
|
animation = personality_bold
|
|
}
|
|
}
|
|
right_portrait = {
|
|
trigger = {
|
|
exists = scope:1070_target
|
|
has_character_flag = 1070_exotic_fiends_bad
|
|
}
|
|
character = scope:1070_target
|
|
animation = fear
|
|
}
|
|
|
|
lower_right_portrait = scope:m_hunt
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_entertainment
|
|
option = wedding_entertainment_good
|
|
}
|
|
}
|
|
scope:activity = {
|
|
NOT = { has_variable = has_had_event_1070 }
|
|
}
|
|
scope:host = {
|
|
has_character_modifier = hunt_captive_beast_modifier
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
scope:host = { has_trait = arrogant }
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
scope:host = { has_trait = humble }
|
|
add = -1
|
|
}
|
|
modifier = {
|
|
is_ai = no
|
|
factor = 2
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_banquet_event
|
|
scope:activity = { set_variable = has_had_event_1070 }
|
|
scope:host = {
|
|
if = {
|
|
limit = {
|
|
employs_court_position = master_of_hunt_court_position
|
|
any_court_position_holder = {
|
|
type = master_of_hunt_court_position
|
|
is_ai = yes
|
|
is_adult = yes
|
|
involved_activity = root.involved_activity
|
|
NOT = { has_character_flag = busy_in_banquet_event }
|
|
}
|
|
}
|
|
random_court_position_holder = {
|
|
type = master_of_hunt_court_position
|
|
limit = {
|
|
is_ai = yes
|
|
is_adult = yes
|
|
involved_activity = root.involved_activity
|
|
NOT = { has_character_flag = busy_in_banquet_event }
|
|
}
|
|
save_scope_as = m_hunt
|
|
add_character_flag = busy_in_banquet_event
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
has_activity_intent = murder_attendee_intent
|
|
has_activity_intent = woo_attendee_intent
|
|
has_activity_intent = diplomatic_intent
|
|
}
|
|
}
|
|
intent_target = { save_scope_as = 1070_target }
|
|
}
|
|
random_list = {
|
|
50 = { # all goes well
|
|
modifier = {
|
|
scope:host = {
|
|
employs_court_position = master_of_hunt_court_position
|
|
}
|
|
add = 15
|
|
}
|
|
modifier = {
|
|
exists = scope:m_hunt
|
|
add = 15
|
|
}
|
|
modifier = {
|
|
scope:host = {
|
|
has_trait = lifestyle_hunter
|
|
}
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
scope:host = {
|
|
has_trait = diligent
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_good
|
|
}
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_normal
|
|
}
|
|
}
|
|
add = 5
|
|
}
|
|
add_character_flag = 1070_exotic_fiends_good
|
|
}
|
|
50 = { # a beast escapes!
|
|
modifier = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_bad
|
|
}
|
|
}
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:host = {
|
|
has_trait = arrogant
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:host = {
|
|
has_trait = lazy
|
|
}
|
|
add = 15
|
|
}
|
|
add_character_flag = 1070_exotic_fiends_bad
|
|
if = {
|
|
limit = {
|
|
this = scope:host
|
|
}
|
|
stress_impact = {
|
|
arrogant = major_stress_impact_gain
|
|
ambitious = major_stress_impact_gain
|
|
diligent = medium_stress_impact_gain
|
|
paranoid = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option A: a worthy show
|
|
option = {
|
|
name = ep2_wedding.1070.a
|
|
trigger = { has_character_flag = 1070_exotic_fiends_good }
|
|
scope:activity = {
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != scope:host
|
|
}
|
|
add_opinion = {
|
|
target = scope:host
|
|
modifier = wedding_good_entertainment_opinion
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_entertain_log
|
|
tags = { good }
|
|
score = 20
|
|
character = scope:host
|
|
|
|
# Effect
|
|
scope:host = { add_prestige = medium_prestige_gain }
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
#Option E: I can do better
|
|
option = {
|
|
name = ep2_wedding.1070.e
|
|
flavor = ep2_wedding.1070.e.tt
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_good
|
|
}
|
|
scope:activity = {
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != scope:host
|
|
}
|
|
add_opinion = {
|
|
target = scope:host
|
|
modifier = wedding_good_entertainment_opinion
|
|
}
|
|
}
|
|
}
|
|
duel = {
|
|
skill = prowess
|
|
value = high_skill_rating
|
|
# Success: you make the beasts do your bid!
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.e.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.e.tt.success
|
|
left_icon = root
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_charm_success_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
|
|
# Effect
|
|
root = {
|
|
add_character_modifier = {
|
|
modifier = ep2_beastmaster_modifier
|
|
years = 20
|
|
}
|
|
add_prestige = medium_prestige_gain
|
|
}
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != root
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = impressed_opinion
|
|
opinion = 25
|
|
}
|
|
}
|
|
}
|
|
root = {
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
brave = medium_stress_impact_loss
|
|
gregarious = medium_stress_impact_loss
|
|
arrogant = major_stress_impact_loss
|
|
ambitious = major_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# Failure: the beasts disagree with you
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.e.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.e.tt.failure
|
|
left_icon = root
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_charm_failure_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = root
|
|
|
|
# Effect
|
|
root = {
|
|
random_list = {
|
|
20 = {
|
|
custom_tooltip = ep2_wedding.1070.e.tt.failure_1
|
|
scope:activity = {
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != root
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = laughingstock_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
increase_wounds_effect = { REASON = wild_animal }
|
|
}
|
|
30 = {
|
|
trigger = {
|
|
NOT = { has_trait = maimed }
|
|
}
|
|
apply_maimed_trait_and_modifier_effect = yes
|
|
}
|
|
30 = {
|
|
trigger = {
|
|
NOT = { has_trait = one_eyed }
|
|
}
|
|
add_trait = one_eyed
|
|
}
|
|
30 = {
|
|
trigger = {
|
|
NOT = { has_trait = one_legged }
|
|
}
|
|
add_trait = one_legged
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
stubborn = medium_stress_impact_gain
|
|
lazy = major_stress_impact_gain
|
|
content = major_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = ambitious
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = stubborn
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = -75
|
|
}
|
|
modifier = {
|
|
has_trait = content
|
|
add = -50
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: jump in to save the day!
|
|
option = {
|
|
name = ep2_wedding.1070.b
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_bad
|
|
NOT = { exists = scope:1070_target }
|
|
}
|
|
duel = {
|
|
skill = prowess
|
|
value = high_skill_rating
|
|
# Success: you calm down the beasts
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.b.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.b.tt.success
|
|
left_icon = root
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_calmed_success_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
|
|
# Effect
|
|
root = {
|
|
add_character_modifier = {
|
|
modifier = ep2_beastmaster_modifier
|
|
years = 20
|
|
}
|
|
}
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != root
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = impressed_opinion
|
|
opinion = 25
|
|
}
|
|
}
|
|
}
|
|
root = {
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
lifestyle_hunter = medium_stress_impact_loss
|
|
brave = major_stress_impact_loss
|
|
gregarious = major_stress_impact_loss
|
|
arrogant = major_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# Failure: the beasts disagree with you
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.b.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.e.tt.failure
|
|
left_icon = root
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_calmed_failure_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
|
|
# Effect
|
|
root = {
|
|
random_list = {
|
|
50 = {
|
|
increase_wounds_effect = { REASON = wild_animal }
|
|
}
|
|
30 = {
|
|
trigger = {
|
|
NOT = { has_trait = maimed }
|
|
}
|
|
apply_maimed_trait_and_modifier_effect = yes
|
|
}
|
|
30 = {
|
|
trigger = {
|
|
NOT = { has_trait = one_eyed }
|
|
}
|
|
add_trait = one_eyed
|
|
}
|
|
30 = {
|
|
trigger = {
|
|
NOT = { has_trait = one_legged }
|
|
}
|
|
add_trait = one_legged
|
|
}
|
|
}
|
|
}
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != scope:host
|
|
}
|
|
add_opinion = {
|
|
target = scope:host
|
|
modifier = wedding_scary_entertainment_opinion
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
lifestyle_hunter = medium_stress_impact_gain
|
|
lazy = medium_stress_impact_gain
|
|
craven = major_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = brave
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_hunter
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 50 }
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 100 }
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = -75
|
|
}
|
|
modifier = {
|
|
has_trait = craven
|
|
add = -100
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option G: jump in to save the intent target!
|
|
option = {
|
|
name = ep2_wedding.1070.g
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_bad
|
|
exists = scope:1070_target
|
|
NOT = { has_activity_intent = murder_attendee_intent }
|
|
}
|
|
duel = {
|
|
skill = prowess
|
|
value = high_skill_rating
|
|
# Success: you calm down the beasts
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.g.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.g.tt.success
|
|
left_icon = scope:1070_target
|
|
set_relation_friend = { reason = friend_wedding_saved_from_beasts target = scope:1070_target }
|
|
if = {
|
|
limit = { has_activity_intent = woo_attendee_intent }
|
|
progress_towards_lover_effect = {
|
|
REASON = friend_wedding_saved_from_beasts
|
|
CHARACTER = scope:1070_target
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_activity_intent = diplomatic_intent
|
|
intent_target = scope:1070_target
|
|
}
|
|
add_hook = {
|
|
type = indebted_hook
|
|
target = scope:1070_target
|
|
}
|
|
create_alliance = {
|
|
target = scope:1070_target
|
|
allied_through_owner = root
|
|
allied_through_target = scope:1070_target
|
|
}
|
|
scope:1070_target = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = event_negotiated_alliance_opinion
|
|
}
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_rescue_success_log
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:1070_target
|
|
|
|
# Effect
|
|
root = {
|
|
add_character_modifier = {
|
|
modifier = ep2_beastmaster_modifier
|
|
years = 20
|
|
}
|
|
}
|
|
scope:1070_target = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = grateful_opinion
|
|
opinion = 40
|
|
}
|
|
}
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:1070_target
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = impressed_opinion
|
|
opinion = 25
|
|
}
|
|
}
|
|
}
|
|
root = {
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
lifestyle_hunter = medium_stress_impact_loss
|
|
brave = major_stress_impact_loss
|
|
gregarious = major_stress_impact_loss
|
|
arrogant = major_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# Failure: the beasts disagree with you
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.g.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.g.tt.failure
|
|
left_icon = root
|
|
right_icon = scope:1070_target
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_rescue_failure_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = root
|
|
target = scope:1070_target
|
|
|
|
# Effect
|
|
root = {
|
|
random_list = {
|
|
50 = {
|
|
increase_wounds_effect = { REASON = wild_animal }
|
|
}
|
|
30 = {
|
|
trigger = {
|
|
NOT = { has_trait = maimed }
|
|
}
|
|
apply_maimed_trait_and_modifier_effect = yes
|
|
}
|
|
30 = {
|
|
trigger = {
|
|
NOT = { has_trait = one_eyed }
|
|
}
|
|
add_trait = one_eyed
|
|
}
|
|
30 = {
|
|
trigger = {
|
|
NOT = { has_trait = one_legged }
|
|
}
|
|
add_trait = one_legged
|
|
|
|
}
|
|
}
|
|
}
|
|
scope:1070_target = { increase_wounds_effect = { REASON = wild_animal } }
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != scope:host
|
|
}
|
|
add_opinion = {
|
|
target = scope:host
|
|
modifier = wedding_scary_entertainment_opinion
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
lifestyle_hunter = medium_stress_impact_gain
|
|
lazy = medium_stress_impact_gain
|
|
craven = major_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = brave
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_hunter
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 50 }
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 100 }
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = -75
|
|
}
|
|
modifier = {
|
|
has_trait = craven
|
|
add = -100
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option H: let the beasts kill your target
|
|
option = {
|
|
name = ep2_wedding.1070.h
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_bad
|
|
exists = scope:1070_target
|
|
has_activity_intent = murder_attendee_intent
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
scope:1070_target = {
|
|
duel = {
|
|
skill = prowess
|
|
value = high_skill_rating
|
|
# Success: they survive
|
|
40 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.h.survive
|
|
root = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.h.tt.survive
|
|
left_icon = scope:1070_target
|
|
stress_impact = {
|
|
ambitious = minor_stress_impact_gain
|
|
callous = minor_stress_impact_gain
|
|
deceitful = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
vengeful = medium_stress_impact_gain
|
|
sadistic = major_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_murder_survive_log
|
|
tags = { intent murder }
|
|
score = 50
|
|
character = scope:1070_target
|
|
}
|
|
}
|
|
}
|
|
# Failure: the beasts kill them
|
|
60 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.h.kill
|
|
root = {
|
|
complete_activity_intent = yes
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.h.tt.kill
|
|
left_icon = scope:1070_target
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_murder_kill_log
|
|
tags = { intent murder }
|
|
score = 50
|
|
character = scope:1070_target
|
|
|
|
# Effect
|
|
scope:1070_target = {
|
|
death = { death_reason = death_wild_animal }
|
|
}
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != scope:host
|
|
}
|
|
add_opinion = {
|
|
target = scope:host
|
|
modifier = wedding_scary_entertainment_opinion
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = major_stress_impact_gain
|
|
ambitious = minor_stress_impact_loss
|
|
callous = minor_stress_impact_loss
|
|
deceitful = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
vengeful = medium_stress_impact_loss
|
|
sadistic = major_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = -75
|
|
}
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = craven
|
|
add = 100
|
|
}
|
|
modifier = {
|
|
has_trait = deceitful
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option C: call master of hunt
|
|
option = {
|
|
name = ep2_wedding.1070.c
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_bad
|
|
exists = scope:m_hunt
|
|
this = scope:host
|
|
}
|
|
duel = {
|
|
skill = prowess
|
|
value = average_skill_rating
|
|
50 = {
|
|
#Master of hunt knows what they are doing
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.c.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.c.tt.success
|
|
left_icon = scope:m_hunt
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_calmed_success_log
|
|
tags = { good }
|
|
score = 20
|
|
character = scope:m_hunt
|
|
|
|
# Effect
|
|
scope:m_hunt = {
|
|
add_character_modifier = {
|
|
modifier = ep2_beastmaster_modifier
|
|
years = 20
|
|
}
|
|
}
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != scope:host
|
|
}
|
|
add_opinion = {
|
|
target = scope:host
|
|
modifier = wedding_good_entertainment_opinion
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
#Why are you paying this guy again??
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1070.c.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1070.c.tt.failure
|
|
left_icon = scope:m_hunt
|
|
scope:host = {
|
|
remove_character_modifier = hunt_captive_beast_modifier
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_master_failure_log
|
|
tags = { bad }
|
|
score = 20
|
|
character = scope:m_hunt
|
|
|
|
# Effect
|
|
scope:m_hunt = { increase_wounds_effect = { REASON = wild_animal } }
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != scope:host
|
|
}
|
|
add_opinion = {
|
|
target = scope:host
|
|
modifier = wedding_scary_entertainment_opinion
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
greedy = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
#Option F: GUARDS!!
|
|
option = {
|
|
name = ep2_wedding.1070.f
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_bad
|
|
this = scope:host
|
|
NOT = { exists = scope:m_hunt }
|
|
}
|
|
scope:host = {
|
|
remove_character_modifier = hunt_captive_beast_modifier
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_guards_log
|
|
tags = { bad }
|
|
score = 10
|
|
character = scope:host
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != scope:host
|
|
}
|
|
add_opinion = {
|
|
target = scope:host
|
|
modifier = wedding_scary_entertainment_opinion
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
#Option D: run and hide!
|
|
option = {
|
|
name = ep2_wedding.1070.d
|
|
flavor = ep2_wedding.1070.d.tt
|
|
trigger = {
|
|
has_character_flag = 1070_exotic_fiends_bad
|
|
this != scope:host
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_beasts_fled_log
|
|
tags = { bad }
|
|
score = 10
|
|
character = scope:host
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != scope:host
|
|
}
|
|
add_opinion = {
|
|
target = scope:host
|
|
modifier = wedding_scary_entertainment_opinion
|
|
}
|
|
}
|
|
every_attending_character = {
|
|
custom = custom.every_attending_character
|
|
limit = {
|
|
this != root
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = coward_opinion
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_gain
|
|
brave = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = callous
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = shy
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = reclusive
|
|
add = 150
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_banquet_event
|
|
if = {
|
|
limit = {
|
|
exists = scope:m_hunt
|
|
}
|
|
scope:m_hunt = { remove_character_flag = busy_in_banquet_event }
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Match Made In... ?
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1090
|
|
##################################################
|
|
|
|
# Matchmaking Intent: push a couple together
|
|
|
|
scripted_trigger ep2_wedding_1090_good_match_trigger = {
|
|
is_ai = yes
|
|
location = root.location
|
|
can_marry_character_trigger = { CHARACTER = root.intent_target }
|
|
NOR = {
|
|
exists = betrothed
|
|
AND = {
|
|
exists = root.intent_target.var:wedding_no_match
|
|
this = root.intent_target.var:wedding_no_match
|
|
}
|
|
has_character_flag = busy_in_banquet_event
|
|
is_close_or_extended_family_of = root.intent_target
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
is_female = yes
|
|
}
|
|
age < marriage_female_fertility_cutoff_age_value
|
|
}
|
|
}
|
|
|
|
ep2_wedding.1090 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1090.t
|
|
desc = {
|
|
desc = ep2_wedding.1090.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
intent_target = { has_variable = wedding_good_match }
|
|
}
|
|
desc = ep2_wedding.1090.desc_already_matched
|
|
}
|
|
desc = ep2_wedding.1090.desc_new_match
|
|
}
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = schadenfreude
|
|
}
|
|
center_portrait = {
|
|
character = scope:1090_target
|
|
animation = flirtation_left
|
|
}
|
|
right_portrait = {
|
|
character = scope:1090_match
|
|
animation = flirtation
|
|
}
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
has_activity_intent = matchmaking_intent
|
|
|
|
intent_target.location = root.location
|
|
location = scope:activity.activity_location
|
|
|
|
intent_target = { NOT = { has_character_flag = busy_in_banquet_event } }
|
|
|
|
OR = {
|
|
intent_target = { has_variable = wedding_good_match }
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1090_good_match_trigger = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
intent_target = { has_variable = wedding_good_match }
|
|
add = 4
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_banquet_event
|
|
intent_target = {
|
|
save_scope_as = 1090_target
|
|
add_character_flag = busy_in_banquet_event
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:1090_target = { has_variable = wedding_good_match }
|
|
}
|
|
scope:1090_target.var:wedding_good_match = {
|
|
save_scope_as = 1090_match
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
ep2_wedding_1090_good_match_trigger = yes
|
|
}
|
|
save_scope_as = 1090_match
|
|
}
|
|
}
|
|
}
|
|
scope:1090_match = { add_character_flag = busy_in_banquet_event }
|
|
}
|
|
|
|
#Option A: push them together
|
|
option = {
|
|
name = ep2_wedding.1090.a
|
|
scope:1090_target = {
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:1090_match
|
|
50 = { # success - get a betrothal
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1090.a.success
|
|
root = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1080.a.success.tt
|
|
left_icon = scope:1090_target
|
|
right_icon = scope:1090_match
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_matchmade_success_log
|
|
tags = { betrothal }
|
|
score = 50
|
|
character = scope:1090_target
|
|
target = scope:1090_match
|
|
|
|
# Effect
|
|
scope:1090_target = { create_betrothal = scope:1090_match }
|
|
scope:1090_match = {
|
|
add_opinion = {
|
|
target = scope:1090_target
|
|
modifier = impressed_opinion
|
|
opinion = 20
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:1090_match = { can_set_relation_lover_trigger = { CHARACTER = scope:1090_target } }
|
|
}
|
|
random = {
|
|
chance = 10
|
|
scope:1090_match = {
|
|
set_relation_lover = { reason = lover_wedding_matchmaking target = scope:1090_target }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
root = { add_prestige = minor_prestige_gain }
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = { has_activity_intent = matchmaking_intent }
|
|
complete_activity_intent = yes
|
|
}
|
|
}
|
|
}
|
|
50 = { # failure - you'll have to start again with someone else
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.1090.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1080.a.failure.tt
|
|
left_icon = scope:1090_target
|
|
right_icon = scope:1090_match
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_matchmade_failure_log
|
|
tags = { betrothal }
|
|
score = 50
|
|
character = scope:1090_target
|
|
target = scope:1090_match
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
}
|
|
}
|
|
scope:1090_target = {
|
|
set_variable = {
|
|
name = wedding_no_match
|
|
value = scope:1090_match
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
}
|
|
}
|
|
|
|
#Option B: no deal
|
|
option = {
|
|
name = ep2_wedding.1090.b
|
|
scope:1090_target = {
|
|
set_variable = {
|
|
name = wedding_no_match
|
|
value = scope:1090_match
|
|
}
|
|
}
|
|
scope:1090_target = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = disappointed_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = fickle
|
|
add = 25
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_banquet_event
|
|
scope:1090_match = { remove_character_flag = busy_in_banquet_event }
|
|
scope:1090_target = { remove_character_flag = busy_in_banquet_event }
|
|
}
|
|
}
|
|
|
|
# WEDDING NIGHT EVENTS
|
|
|
|
##################################################
|
|
# That Cursed Table
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1060
|
|
##################################################
|
|
|
|
# Inspired by Matilda of Tuscany's second wedding: a younger/meeker husband is too intimidated
|
|
|
|
ep2_wedding.1060 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1060.t
|
|
desc = ep2_wedding.1060.desc
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = disgust
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = shame
|
|
}
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity.special_guest:spouse_2 = {
|
|
is_ai = yes
|
|
is_male = yes
|
|
NOT = { has_character_flag = busy_in_wnight_event }
|
|
}
|
|
scope:activity.special_guest:spouse_1 = root
|
|
scope:activity.special_guest:spouse_1 = {
|
|
NOT = { has_relation_lover = scope:activity.special_guest:spouse_2 }
|
|
}
|
|
|
|
OR = {
|
|
# is weaker
|
|
scope:activity.special_guest:spouse_1 = {
|
|
tier_difference = {
|
|
target = scope:activity.special_guest:spouse_2
|
|
value >= 2
|
|
}
|
|
}
|
|
# is younger
|
|
scope:activity.special_guest:spouse_2.age <= scope:activity.special_guest:spouse_1.age_minus_10
|
|
# has "difficulties"
|
|
scope:activity.special_guest:spouse_2 = {
|
|
OR = {
|
|
fertility <= low_fertility
|
|
has_trait = infertile
|
|
NOT = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_1 }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
|
|
modifier = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
tier_difference = {
|
|
target = scope:activity.special_guest:spouse_2
|
|
value > 2
|
|
}
|
|
}
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
scope:activity.special_guest:spouse_2.age <= scope:activity.special_guest:spouse_1.age_minus_25
|
|
add = 3
|
|
}
|
|
modifier = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
NOT = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_1 }
|
|
}
|
|
add = 3
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = spouse_1
|
|
add_character_flag = busy_in_wnight_event
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = spouse_2
|
|
add_character_flag = busy_in_wnight_event
|
|
}
|
|
}
|
|
|
|
#Option A: *Fine* - triggers follow up
|
|
option = {
|
|
name = ep2_wedding.1060.a
|
|
flavor = ep2_wedding.1060.a.tt
|
|
trigger_event = {
|
|
id = ep2_wedding.1061
|
|
days = 3
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
compassionate = medium_stress_impact_gain
|
|
patient = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = impatient
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 75
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: be accepting
|
|
option = {
|
|
name = ep2_wedding.1060.b
|
|
scope:spouse_2 = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_understanding_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = wedding_understanding_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:spouse_2
|
|
}
|
|
if = {
|
|
limit = {
|
|
can_set_relation_soulmate_trigger = { CHARACTER = scope:spouse_2 }
|
|
}
|
|
random = {
|
|
chance = 5
|
|
set_relation_soulmate = { reason = soulmate_wedding_accepting_partner target = scope:spouse_2 }
|
|
# Achievements
|
|
player_succeeded_at_a_thousand_and_one_nights_achievement_effect = yes
|
|
}
|
|
}
|
|
scope:spouse_1 = { remove_character_flag = busy_in_wnight_event }
|
|
scope:spouse_2 = { remove_character_flag = busy_in_wnight_event }
|
|
stress_impact = {
|
|
impatient = medium_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
compassionate = medium_stress_impact_loss
|
|
patient = medium_stress_impact_loss
|
|
humble = medium_stress_impact_loss
|
|
chaste = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = patient
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = chaste
|
|
add = 75
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Follow up event: you have emptied the room except for a bare table - spouse reaction
|
|
|
|
ep2_wedding.1061 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1060.t
|
|
desc = {
|
|
desc = ep2_wedding.1061.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:spouse_2 = { has_character_flag = 1061_success }
|
|
}
|
|
desc = ep2_wedding.1061.desc_1 #It goes well
|
|
}
|
|
desc = ep2_wedding.1061.desc_2 #Still nothing
|
|
}
|
|
}
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = anger
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = shame
|
|
}
|
|
|
|
trigger = {
|
|
exists = scope:activity
|
|
}
|
|
|
|
immediate = {
|
|
random_list = {
|
|
30 = {
|
|
# he gets over it
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
NOT = { has_trait = impotent }
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
NOT = { fertility <= low_fertility }
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = arrogant
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = lustful
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = brave
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = gregarious
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
NOT = { is_attracted_to_gender_of = scope:spouse_1 }
|
|
}
|
|
factor = 0
|
|
}
|
|
scope:spouse_2 = { add_character_flag = 1061_success }
|
|
}
|
|
70 = {
|
|
#he really doesn't get over it
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = impotent
|
|
}
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
fertility <= low_fertility
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = shy
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = chaste
|
|
}
|
|
add = 20
|
|
}
|
|
scope:spouse_2 = { add_character_flag = 1061_not_success }
|
|
}
|
|
}
|
|
add_character_flag = is_naked
|
|
}
|
|
|
|
#Option A: All good then!
|
|
option = {
|
|
name = ep2_wedding.1061.a
|
|
trigger = {
|
|
scope:spouse_2 = { has_character_flag = 1061_success }
|
|
}
|
|
scope:spouse_2 = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_challenging_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = wedding_challenging_spouse_opinion
|
|
}
|
|
}
|
|
scope:spouse_2 = {
|
|
add_character_modifier = {
|
|
modifier = wedding_nagging_spouse_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:spouse_2
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
lustful = medium_stress_impact_loss
|
|
}
|
|
}
|
|
|
|
#Option B: kick them out and denounce them!
|
|
option = {
|
|
name = ep2_wedding.1061.b
|
|
trigger = {
|
|
scope:spouse_2 = { has_character_flag = 1061_not_success }
|
|
}
|
|
scope:spouse_2 = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_cruel_spouse_opinion
|
|
}
|
|
add_character_modifier = {
|
|
modifier = wedding_accused_impotency_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_very_bad_fertility = scope:spouse_1
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = wedding_useless_spouse_opinion
|
|
}
|
|
}
|
|
stress_impact = {
|
|
calm = minor_stress_impact_gain
|
|
patient = medium_stress_impact_gain
|
|
chaste = medium_stress_impact_gain
|
|
compassionate = major_stress_impact_gain
|
|
vengeful = minor_stress_impact_loss
|
|
callous = minor_stress_impact_loss
|
|
wrathful = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = sadistic
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = wrathful
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = impatient
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option C: be patient
|
|
option = {
|
|
name = ep2_wedding.1061.c
|
|
trigger = {
|
|
scope:spouse_2 = { has_character_flag = 1061_not_success }
|
|
}
|
|
scope:spouse_2 = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_understanding_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = wedding_understanding_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:spouse_2
|
|
}
|
|
stress_impact = {
|
|
arrogant = minor_stress_impact_gain
|
|
sadistic = minor_stress_impact_gain
|
|
callous = minor_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
wrathful = medium_stress_impact_gain
|
|
impatient = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = calm
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
has_trait = patient
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = 75
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
after = {
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_character_flag = 1061_success }
|
|
}
|
|
scope:spouse_2 = { remove_character_flag = 1061_success }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_character_flag = 1061_not_success }
|
|
}
|
|
scope:spouse_2 = { remove_character_flag = 1061_not_success }
|
|
}
|
|
scope:spouse_1 = { remove_character_flag = busy_in_wnight_event }
|
|
scope:spouse_2 = { remove_character_flag = busy_in_wnight_event }
|
|
remove_character_flag = is_naked
|
|
}
|
|
}
|
|
|
|
# Inverted event: it's you who have problems - spouse's reaction
|
|
|
|
ep2_wedding.1065 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1060.t
|
|
desc = ep2_wedding.1065.desc
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = shame
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = disgust
|
|
}
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
scope:activity.special_guest:spouse_1 = { is_male = yes }
|
|
scope:activity.special_guest:spouse_1 = root
|
|
scope:activity.special_guest:spouse_1 = {
|
|
NOT = { has_relation_lover = scope:activity.special_guest:spouse_2 }
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
is_ai = yes
|
|
NOT = { has_character_flag = busy_in_wnight_event }
|
|
}
|
|
|
|
OR = {
|
|
# is weaker
|
|
scope:activity.special_guest:spouse_2 = {
|
|
tier_difference = {
|
|
target = root
|
|
value >= 2
|
|
}
|
|
}
|
|
# is younger
|
|
age <= scope:activity.special_guest:spouse_2.age_minus_10
|
|
# has difficulties
|
|
fertility <= low_fertility
|
|
has_trait = infertile
|
|
NOT = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_2 }
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
|
|
modifier = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
tier_difference = {
|
|
target = root
|
|
value > 2
|
|
}
|
|
}
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
age <= scope:activity.special_guest:spouse_2.age_minus_25
|
|
add = 3
|
|
}
|
|
modifier = {
|
|
NOT = { is_attracted_to_gender_of = scope:activity.special_guest:spouse_2 }
|
|
add = 3
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 }
|
|
scope:spouse_1 = { add_character_flag = busy_in_wnight_event }
|
|
scope:spouse_2 = { add_character_flag = busy_in_wnight_event }
|
|
}
|
|
|
|
#Option A: It's a curse!
|
|
option = {
|
|
name = ep2_wedding.1065.a
|
|
flavor = ep2_wedding.1065.a.tt
|
|
trigger_event = {
|
|
id = ep2_wedding.1066
|
|
days = 3
|
|
}
|
|
stress_impact = {
|
|
honest = medium_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
deceitful = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = deceitful
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_character_modifier = bp1_superstition_modifier
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: Sorry...
|
|
option = {
|
|
name = ep2_wedding.1065.b
|
|
random_list = {
|
|
50 = { #they are understanding
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = compassionate
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = calm
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = patient
|
|
}
|
|
add = 20
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1065.b1
|
|
scope:spouse_2 = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_understanding_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = wedding_understanding_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
50 = { #they are not
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = callous
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = lustful
|
|
}
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = impatient
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = {
|
|
has_trait = wrathful
|
|
}
|
|
add = 10
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1065.b2
|
|
scope:spouse_2 = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_useless_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = wedding_cruel_spouse_opinion
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = wedding_accused_impotency_modifier
|
|
years = 10
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_very_bad_fertility = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:spouse_1 = { remove_character_flag = busy_in_wnight_event }
|
|
scope:spouse_2 = { remove_character_flag = busy_in_wnight_event }
|
|
stress_impact = {
|
|
deceitful = medium_stress_impact_gain
|
|
honest = medium_stress_impact_loss
|
|
humble = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = humble
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = honest
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Follow up event: your spouse has emptied the room except for a bare table
|
|
|
|
ep2_wedding.1066 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1060.t
|
|
desc = {
|
|
desc = ep2_wedding.1066.desc
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
has_character_flag = 1066_success
|
|
}
|
|
desc = ep2_wedding.1066.desc_1 #It goes well
|
|
}
|
|
desc = ep2_wedding.1066.desc_2 #Still nothing
|
|
}
|
|
}
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = shame
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = anger
|
|
}
|
|
|
|
trigger = {
|
|
exists = scope:activity
|
|
}
|
|
|
|
immediate = {
|
|
random_list = {
|
|
30 = {
|
|
# you get over it
|
|
modifier = {
|
|
NOT = { has_trait = impotent }
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
NOT = { fertility <= low_fertility }
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = brave
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
NOT = { is_attracted_to_gender_of = scope:spouse_2 }
|
|
factor = 0
|
|
}
|
|
add_character_flag = 1066_success
|
|
}
|
|
70 = {
|
|
#you really don't get over it
|
|
modifier = {
|
|
has_trait = impotent
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
fertility <= low_fertility
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = shy
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = chaste
|
|
add = 20
|
|
}
|
|
add_character_flag = 1066_not_success
|
|
}
|
|
}
|
|
scope:spouse_2 = {
|
|
add_character_flag = is_naked
|
|
}
|
|
}
|
|
|
|
#Option A: I feel better
|
|
option = {
|
|
name = ep2_wedding.1066.a
|
|
trigger = {
|
|
has_character_flag = 1066_success
|
|
}
|
|
scope:spouse_2 = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_challenging_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:spouse_2
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = wedding_challenging_spouse_opinion
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = wedding_nagging_spouse_modifier
|
|
years = 10
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
lustful = medium_stress_impact_loss
|
|
}
|
|
}
|
|
|
|
#Option B: ...Still nothing
|
|
option = {
|
|
name = ep2_wedding.1066.b
|
|
trigger = {
|
|
has_character_flag = 1066_not_success
|
|
}
|
|
random_list = {
|
|
50 = { #hey don't take it well
|
|
modifier = {
|
|
scope:spouse_2 = { has_trait = arrogant }
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = { has_trait = callous }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = { has_trait = sadistic }
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = { has_trait = lustful }
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = { has_trait = wrathful }
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = { has_trait = impatient }
|
|
add = 25
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1066.b_1
|
|
left_icon = scope:spouse_2
|
|
scope:spouse_2 = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_useless_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = wedding_cruel_spouse_opinion
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = wedding_accused_impotency_modifier
|
|
years = 10
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_very_bad_fertility = scope:spouse_2
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
50 = { #they take it well
|
|
modifier = {
|
|
scope:spouse_2 = { has_trait = calm }
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = { has_trait = patient }
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
scope:spouse_2 = { has_trait = compassionate }
|
|
add = 40
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1066.b_2
|
|
left_icon = scope:spouse_2
|
|
scope:spouse_2 = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_understanding_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:spouse_2
|
|
modifier = wedding_understanding_spouse_opinion
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:spouse_2
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
after = {
|
|
if = {
|
|
limit = {
|
|
has_character_flag = 1066_success
|
|
}
|
|
remove_character_flag = 1066_success
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_character_flag = 1066_not_success
|
|
}
|
|
remove_character_flag = 1066_not_success
|
|
}
|
|
scope:spouse_1 = { remove_character_flag = busy_in_wnight_event }
|
|
scope:spouse_2 = {
|
|
remove_character_flag = busy_in_wnight_event
|
|
remove_character_flag = is_naked
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# One More Goblet
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1110
|
|
##################################################
|
|
|
|
# Non-spouses: someone gets extremely drunk/doesn't want to leave
|
|
|
|
scripted_trigger ep2_wedding_1110_valid_drunk_trigger = {
|
|
is_adult = yes
|
|
is_ai = yes
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
this = scope:host
|
|
has_character_flag = busy_in_wnight_event
|
|
}
|
|
drinks_alcohol_trigger = yes
|
|
}
|
|
|
|
ep2_wedding.1110 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1110.t
|
|
desc = {
|
|
desc = ep2_wedding.1110.desc_intro
|
|
desc = ep2_wedding.1110.desc
|
|
triggered_desc = {
|
|
trigger = {
|
|
root = scope:host
|
|
}
|
|
desc = ep2_wedding.1110.desc_host
|
|
}
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = disgust
|
|
}
|
|
right_portrait = {
|
|
character = scope:1110_drunk
|
|
animation = wedding_drunk
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
NOR = {
|
|
scope:activity.special_guest:spouse_1 ?= root
|
|
scope:activity.special_guest:spouse_2 ?= root
|
|
}
|
|
scope:host ?= { #There must be alcohol at the party!
|
|
drinks_alcohol_trigger = yes
|
|
}
|
|
scope:activity ?= {
|
|
any_attending_character = {
|
|
ep2_wedding_1110_valid_drunk_trigger = yes
|
|
}
|
|
NOT = { has_variable = has_had_1110_event }
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1110_valid_drunk_trigger = yes
|
|
has_trait = drunkard
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1110_valid_drunk_trigger = yes
|
|
OR = {
|
|
has_activity_intent = reduce_stress_intent
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
}
|
|
}
|
|
add = 3
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1110_valid_drunk_trigger = yes
|
|
has_trait = gregarious
|
|
}
|
|
}
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
is_ai = yes
|
|
factor = 0.1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
ep2_wedding_1110_valid_drunk_trigger = yes
|
|
has_trait = drunkard
|
|
}
|
|
alternative_limit = {
|
|
ep2_wedding_1110_valid_drunk_trigger = yes
|
|
has_trait = gregarious
|
|
}
|
|
alternative_limit = {
|
|
ep2_wedding_1110_valid_drunk_trigger = yes
|
|
OR = {
|
|
has_activity_intent = reduce_stress_intent
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
}
|
|
alternative_limit = {
|
|
ep2_wedding_1110_valid_drunk_trigger = yes
|
|
}
|
|
save_scope_as = 1110_drunk
|
|
add_character_flag = busy_in_wnight_event
|
|
}
|
|
set_variable = has_had_1110_event
|
|
}
|
|
add_character_flag = busy_in_wnight_event
|
|
}
|
|
|
|
#Option B: Kick them out (host only)
|
|
option = {
|
|
name = ep2_wedding.1110.b
|
|
trigger = { root = scope:host }
|
|
flavor = ep2_wedding.1110.b.tt
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_goblet_eject_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = root
|
|
target = scope:1110_drunk
|
|
|
|
# Effect
|
|
root = {
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_kicked_out
|
|
CHARACTER = scope:1110_drunk
|
|
OPINION = -30
|
|
}
|
|
add_prestige = minor_prestige_gain
|
|
add_character_modifier = {
|
|
modifier = wedding_severe_host_modifier
|
|
years = 20
|
|
}
|
|
scope:1110_drunk = { remove_from_activity = scope:activity }
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = minor_stress_impact_gain
|
|
gregarious = minor_stress_impact_gain
|
|
patient = medium_stress_impact_gain
|
|
drunkard = major_stress_impact_gain
|
|
just = minor_stress_impact_loss
|
|
impatient = minor_stress_impact_loss
|
|
callous = minor_stress_impact_loss
|
|
temperate = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_energy = 0.5
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = -25
|
|
}
|
|
modifier = {
|
|
has_trait = patient
|
|
add = -50
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = -50
|
|
}
|
|
modifier = {
|
|
has_trait = temperate
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option C: If you can't fight them, join them!
|
|
option = {
|
|
name = ep2_wedding.1110.c
|
|
trigger = { drinks_alcohol_trigger = yes }
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_goblet_fool_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = root
|
|
target = scope:1110_drunk
|
|
|
|
# Effect
|
|
root = {
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_drinking_buddies
|
|
CHARACTER = scope:1110_drunk
|
|
OPINION = 10
|
|
}
|
|
if = {
|
|
limit = {
|
|
NOT = {
|
|
has_trait = drunkard
|
|
}
|
|
}
|
|
random = {
|
|
chance = 5
|
|
add_trait = drunkard
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = wedding_social_drinker_modifier
|
|
years = 20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
gregarious = medium_stress_impact_loss
|
|
drunkard = major_stress_impact_loss
|
|
temperate = major_stress_impact_gain
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 50
|
|
modifier = {
|
|
has_trait = drunkard
|
|
add = 200
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = temperate
|
|
add = -75
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option A: Judge them hard
|
|
option = {
|
|
name = ep2_wedding.1110.a
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_goblet_refusal_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = scope:1110_drunk
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1110_drunk
|
|
modifier = annoyed_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = temperate
|
|
add = 50
|
|
}
|
|
ai_value_modifier = {
|
|
ai_energy = -0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_wnight_event
|
|
scope:1110_drunk = { remove_character_flag = busy_in_wnight_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# One More Goblet
|
|
# by Claudia Baldassi
|
|
# ep2_wedding.1111
|
|
##################################################
|
|
|
|
# Non-spouses: you get extremely drunk/don't want to leave
|
|
|
|
scripted_trigger ep2_wedding_1111_valid_drunk_trigger = {
|
|
is_adult = yes
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
has_character_flag = busy_in_wnight_event
|
|
}
|
|
drinks_alcohol_trigger = yes
|
|
}
|
|
|
|
ep2_wedding.1111 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1110.t
|
|
desc = {
|
|
desc = ep2_wedding.1110.desc_intro
|
|
desc = ep2_wedding.1111.desc
|
|
triggered_desc = {
|
|
trigger = {
|
|
root = scope:host
|
|
}
|
|
desc = ep2_wedding.1111.desc_host
|
|
}
|
|
desc = ep2_wedding.1111.desc_conclusion
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = wedding_drunk
|
|
}
|
|
right_portrait = {
|
|
character = scope:1111_other
|
|
animation = disgust
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
|
|
ep2_wedding_1111_valid_drunk_trigger = yes
|
|
|
|
scope:host = { #There must be alcohol at the party!
|
|
drinks_alcohol_trigger = yes
|
|
}
|
|
scope:activity = {
|
|
NOT = { has_variable = has_had_1110_event }
|
|
}
|
|
NOR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
OR = {
|
|
this = scope:host
|
|
scope:host = scope:activity.special_guest:spouse_1
|
|
scope:host = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
NOT = { has_character_flag = busy_in_wnight_event }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 0.5
|
|
modifier = {
|
|
has_trait = drunkard
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = 2
|
|
}
|
|
modifier = {
|
|
is_ai = yes
|
|
factor = 0.1
|
|
}
|
|
modifier = {
|
|
OR = {
|
|
has_activity_intent = reduce_stress_intent
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
add = 5
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_wnight_event
|
|
scope:activity = {
|
|
set_variable = has_had_1110_event
|
|
}
|
|
if = {
|
|
limit = {
|
|
NOR = {
|
|
this = scope:host
|
|
scope:host = {
|
|
OR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:host = {
|
|
add_character_flag = busy_in_wnight_event
|
|
save_scope_as = 1111_other
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
NOT = { has_character_flag = busy_in_wnight_event }
|
|
}
|
|
save_scope_as = 1111_other
|
|
add_character_flag = busy_in_wnight_event
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option B: not sorry
|
|
option = {
|
|
name = ep2_wedding.1111.b
|
|
add_character_modifier = {
|
|
modifier = wedding_social_drinker_modifier
|
|
years = 20
|
|
}
|
|
random_list = {
|
|
30 = { #join me!
|
|
trigger = {
|
|
scope:1111_other = { drinks_alcohol_trigger = yes }
|
|
}
|
|
modifier = {
|
|
scope:1111_other = { has_trait = drunkard }
|
|
add = 200
|
|
}
|
|
modifier = {
|
|
scope:1111_other = { has_trait = gregarious }
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
scope:1111_other = { has_trait = wrathful }
|
|
add = -50
|
|
}
|
|
desc = ep2_wedding.1111.b.1
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1111.b.1.tt
|
|
left_icon = scope:1111_other
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_goblet_fool_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = root
|
|
target = scope:1111_other
|
|
|
|
# Effect
|
|
root = {
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_drinking_buddies
|
|
CHARACTER = scope:1111_other
|
|
OPINION = 10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
70 = { #you get kicked out!
|
|
trigger = {
|
|
scope:1111_other = scope:host
|
|
}
|
|
modifier = {
|
|
scope:1111_other = { has_trait = patient }
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
scope:1111_other = { has_trait = compassionate }
|
|
add = -25
|
|
}
|
|
modifier = {
|
|
scope:1111_other = { has_trait = forgiving }
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
scope:1111_other = { has_trait = wrathful }
|
|
add = 50
|
|
}
|
|
desc = ep2_wedding.1111.b.2
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1111.b.2.tt
|
|
left_icon = scope:1111_other
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_goblet_eject_log
|
|
tags = { bad }
|
|
score = 10
|
|
|
|
character = scope:1111_other
|
|
target = root
|
|
|
|
#Effect
|
|
root = { remove_from_activity = scope:activity }
|
|
scope:1111_other ={
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_kicked_out
|
|
CHARACTER = root
|
|
OPINION = -30
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
50 = { #you get judged - harshly
|
|
trigger = {
|
|
scope:1111_other != scope:host
|
|
}
|
|
desc = ep2_wedding.1111.b.3
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1111.b.3.tt
|
|
left_icon = scope:1111_other
|
|
reverse_add_opinion = {
|
|
target = scope:1111_other
|
|
modifier = annoyed_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_goblet_reprimand_log
|
|
tags = { bad }
|
|
score = 10
|
|
|
|
character = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
has_activity_intent = reduce_stress_intent
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
}
|
|
else = {
|
|
stress_impact = {
|
|
humble = medium_stress_impact_gain
|
|
temperate = major_stress_impact_gain
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = drunkard
|
|
add = 75
|
|
}
|
|
modifier = {
|
|
has_trait = humble
|
|
add = -50
|
|
}
|
|
modifier = {
|
|
has_trait = temperate
|
|
add = -75
|
|
}
|
|
modifier = {
|
|
OR = {
|
|
has_activity_intent = reduce_stress_intent
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
opinion = {
|
|
target = scope:host
|
|
value < neutral_opinion
|
|
}
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
#Option A: sorry
|
|
option = {
|
|
name = ep2_wedding.1111.a
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_goblet_reprimand_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = root
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:1111_other
|
|
modifier = respect_opinion
|
|
opinion = 15
|
|
}
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_gain
|
|
drunkard = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 200
|
|
modifier = {
|
|
opinion = {
|
|
target = scope:host
|
|
value > low_positive_opinion
|
|
}
|
|
add = 100
|
|
}
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = -75
|
|
}
|
|
modifier = {
|
|
has_trait = drunkard
|
|
add = -75
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_wnight_event
|
|
scope:1111_other = { remove_character_flag = busy_in_wnight_event }
|
|
}
|
|
}
|
|
|
|
|
|
##################################################
|
|
# Why Would You Marry Someone Like Me?
|
|
# by Luke Bean
|
|
# ep2_wedding.1300
|
|
##################################################
|
|
|
|
scripted_trigger ep2_wedding_1300_appearance_insecurity_trigger = {
|
|
OR = {
|
|
AND = {
|
|
is_female = yes
|
|
has_trait = giant
|
|
}
|
|
has_trait = one_eyed
|
|
has_trait = scarred
|
|
has_trait = one_legged
|
|
has_trait = disfigured
|
|
has_trait = scaly
|
|
has_trait = albino
|
|
has_trait = dwarf
|
|
has_trait = hunchbacked
|
|
has_trait = maimed
|
|
has_trait = spindly
|
|
has_trait = beauty_bad_1
|
|
has_trait = beauty_bad_2
|
|
has_trait = beauty_bad_3
|
|
}
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_1300_voice_insecurity_trigger = {
|
|
OR = {
|
|
has_trait = lisping
|
|
has_trait = stuttering
|
|
has_trait = wheezing
|
|
}
|
|
}
|
|
|
|
ep2_wedding.1300 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1300.t
|
|
desc = {
|
|
desc = ep2_wedding.1300.desc_intro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = { scope:insecurity = flag:appearance }
|
|
desc = ep2_wedding.1300.desc_appearance
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:insecurity = flag:dark_past }
|
|
desc = ep2_wedding.1300.desc_dark_past
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:insecurity = flag:voice }
|
|
desc = ep2_wedding.1300.desc_voice
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:insecurity = flag:lowborn }
|
|
desc = ep2_wedding.1300.desc_lowborn
|
|
}
|
|
}
|
|
desc = ep2_wedding.1300.desc_outro
|
|
}
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = thinking
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse_2
|
|
animation = worry
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
has_ep2_dlc_trigger = yes
|
|
root = scope:activity.special_guest:spouse_1
|
|
scope:activity.special_guest:spouse_2 = {
|
|
is_alive = yes
|
|
NOR = {
|
|
has_trait = arrogant
|
|
any_relation = { type = lover this = root }
|
|
any_relation = { type = best_friend this = root }
|
|
}
|
|
OR = {
|
|
ep2_wedding_1300_appearance_insecurity_trigger = yes
|
|
has_any_shunned_or_criminal_trait_in_faith_trigger = {
|
|
CHARACTER = scope:activity.special_guest:spouse_2
|
|
FAITH = scope:activity.special_guest:spouse_2.faith
|
|
}
|
|
ep2_wedding_1300_voice_insecurity_trigger = yes
|
|
is_lowborn = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 2
|
|
modifier = {
|
|
has_activity_intent = woo_attendee_intent
|
|
intent_target = scope:activity.special_guest:spouse_2
|
|
add = 3
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
root = { save_scope_as = spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 }
|
|
add_character_flag = busy_in_wnight_event
|
|
scope:spouse_2 = {
|
|
add_character_flag = busy_in_wnight_event
|
|
add_character_flag = is_naked
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = {
|
|
ep2_wedding_1300_appearance_insecurity_trigger = yes
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = insecurity
|
|
value = flag:appearance
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_any_shunned_or_criminal_trait_in_faith_trigger = {
|
|
CHARACTER = scope:spouse_2
|
|
FAITH = scope:spouse_2.faith
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = insecurity
|
|
value = flag:dark_past
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:spouse_2 = {
|
|
ep2_wedding_1300_voice_insecurity_trigger = yes
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = insecurity
|
|
value = flag:voice
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:spouse_2 = {
|
|
is_lowborn = yes
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = insecurity
|
|
value = flag:lowborn
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:spouse_2 = {
|
|
OR = {
|
|
has_trait = intellect_good_1
|
|
has_trait = intellect_good_2
|
|
has_trait = intellect_good_3
|
|
has_trait = ambitious
|
|
has_trait = shrewd
|
|
intrigue >= high_skill_rating
|
|
diplomacy >= high_skill_rating
|
|
stewardship >= high_skill_rating
|
|
martial >= high_skill_rating
|
|
learning >= high_skill_rating
|
|
}
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = mind_of_a_ruler
|
|
value = yes
|
|
}
|
|
}
|
|
add_character_flag = is_naked
|
|
}
|
|
|
|
# I chose you for your virtue
|
|
option = {
|
|
name = ep2_wedding.1300.virtue
|
|
custom_tooltip = ep2_wedding.1300.virtue.tt #This option is available because SPOUSE is a virtuous PERSON
|
|
custom_tooltip = ep2_wedding.1300.followup.tt
|
|
trigger = {
|
|
scope:spouse_2 = { num_virtuous_traits >= 1 }
|
|
NOR = {
|
|
scope:spouse_2 = { num_sinful_traits >= 1 }
|
|
has_any_shunned_or_criminal_trait_in_faith_trigger = {
|
|
CHARACTER = scope:spouse_2
|
|
FAITH = scope:spouse_2.faith
|
|
}
|
|
}
|
|
}
|
|
|
|
show_as_tooltip = {
|
|
random_list = {
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.a
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:spouse_2
|
|
REASON = lover_shared_insecurity
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.b
|
|
show_chance = no
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.c
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_shared_insecurity
|
|
CHARACTER = scope:spouse_2
|
|
OPINION = -20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
sadistic = minor_stress_impact_gain
|
|
wrathful = minor_stress_impact_gain
|
|
cynical = minor_stress_impact_gain
|
|
just = minor_stress_impact_loss
|
|
chaste = minor_stress_impact_loss
|
|
zealous = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_honor = 0.5
|
|
ai_zeal = 0.5
|
|
}
|
|
modifier = {
|
|
has_trait = impatient
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
has_trait = wrathful
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
has_trait = sadistic
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
has_trait = cynical
|
|
add = -80
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = reassurance
|
|
value = flag:virtue
|
|
}
|
|
scope:spouse_2 = {
|
|
trigger_event = {
|
|
id = ep2_wedding.1301
|
|
}
|
|
}
|
|
}
|
|
|
|
# I need someone like you to rule by my side
|
|
option = {
|
|
name = ep2_wedding.1300.rule_together
|
|
custom_tooltip = ep2_wedding.1300.rule_together.tt #This option is available because SPOUSE has the mind of a ruler
|
|
custom_tooltip = ep2_wedding.1300.followup.tt
|
|
|
|
trigger = {
|
|
exists = scope:mind_of_a_ruler
|
|
}
|
|
show_as_tooltip = {
|
|
random_list = {
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.a
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:spouse_2
|
|
REASON = lover_shared_insecurity
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.b
|
|
show_chance = no
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.c
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_shared_insecurity
|
|
CHARACTER = scope:spouse_2
|
|
OPINION = -20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
lazy = minor_stress_impact_gain
|
|
content = minor_stress_impact_gain
|
|
fickle = medium_stress_impact_gain
|
|
just = medium_stress_impact_loss
|
|
diligent = medium_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_energy = 0.5
|
|
}
|
|
modifier = {
|
|
has_trait = content
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = -80
|
|
}
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = -80
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = reassurance
|
|
value = flag:rule_together
|
|
}
|
|
scope:spouse_2 = {
|
|
trigger_event = {
|
|
id = ep2_wedding.1301
|
|
}
|
|
}
|
|
}
|
|
|
|
# This marriage is practical for both of us
|
|
option = {
|
|
name = ep2_wedding.1300.practical
|
|
custom_tooltip = ep2_wedding.1300.followup.tt
|
|
trigger = {
|
|
NOR = { #This is purely so that you don't get a seven-option event if you marry a beautiful fertile genius with a lisp
|
|
has_trait = beauty_good_1
|
|
has_trait = beauty_good_2
|
|
has_trait = beauty_good_3
|
|
}
|
|
}
|
|
show_as_tooltip = {
|
|
random_list = {
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.a
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:spouse_2
|
|
REASON = lover_shared_insecurity
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.b
|
|
show_chance = no
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.c
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_shared_insecurity
|
|
CHARACTER = scope:spouse_2
|
|
OPINION = -20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
arbitrary = minor_stress_impact_gain
|
|
zealous = minor_stress_impact_gain
|
|
diligent = minor_stress_impact_loss
|
|
callous = medium_stress_impact_loss
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_rationality = 0.5
|
|
}
|
|
modifier = {
|
|
has_trait = arbitrary
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
has_trait = zealous
|
|
add = -30
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = reassurance
|
|
value = flag:practical
|
|
}
|
|
scope:spouse_2 = {
|
|
trigger_event = {
|
|
id = ep2_wedding.1301
|
|
}
|
|
}
|
|
}
|
|
|
|
# Stop whining, I'm making you a TITLE
|
|
option = {
|
|
name = ep2_wedding.1300.stop_whining
|
|
custom_tooltip = ep2_wedding.1300.followup.tt
|
|
|
|
trigger = {
|
|
OR = {
|
|
has_trait = sadistic
|
|
has_trait = callous
|
|
has_trait = wrathful
|
|
has_trait = impatient
|
|
has_trait = arrogant
|
|
}
|
|
}
|
|
show_as_tooltip = {
|
|
random_list = {
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.b
|
|
show_chance = no
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.c
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_shared_insecurity
|
|
CHARACTER = scope:spouse_2
|
|
OPINION = -20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_gain
|
|
calm = minor_stress_impact_gain
|
|
sadistic = minor_stress_impact_loss
|
|
callous = minor_stress_impact_loss
|
|
wrathful = minor_stress_impact_loss
|
|
impatient = minor_stress_impact_loss
|
|
arrogant = minor_stress_impact_loss
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = -1
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = -80
|
|
}
|
|
modifier = {
|
|
has_trait = calm
|
|
add = -50
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = reassurance
|
|
value = flag:stop_whining
|
|
}
|
|
scope:spouse_2 = {
|
|
trigger_event = {
|
|
id = ep2_wedding.1301
|
|
}
|
|
}
|
|
}
|
|
|
|
# I understand how you feel
|
|
option = {
|
|
name = ep2_wedding.1300.understanding
|
|
custom_tooltip = ep2_wedding.1300.followup.tt
|
|
|
|
trigger = {
|
|
OR = {
|
|
has_trait = reclusive
|
|
has_trait = shy
|
|
has_trait = depressed_1
|
|
has_trait = depressed_genetic
|
|
ep2_wedding_1300_appearance_insecurity_trigger = yes
|
|
ep2_wedding_1300_voice_insecurity_trigger = yes
|
|
}
|
|
}
|
|
show_as_tooltip = {
|
|
random_list = {
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.a
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:spouse_2
|
|
REASON = lover_shared_insecurity
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.b
|
|
show_chance = no
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.c
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_shared_insecurity
|
|
CHARACTER = scope:spouse_2
|
|
OPINION = -20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_loss
|
|
calm = minor_stress_impact_loss
|
|
sadistic = minor_stress_impact_gain
|
|
callous = minor_stress_impact_gain
|
|
wrathful = minor_stress_impact_gain
|
|
impatient = minor_stress_impact_gain
|
|
arrogant = minor_stress_impact_gain
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = -1
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = -80
|
|
}
|
|
modifier = {
|
|
has_trait = calm
|
|
add = -50
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = reassurance
|
|
value = flag:understanding
|
|
}
|
|
scope:spouse_2 = {
|
|
trigger_event = {
|
|
id = ep2_wedding.1301
|
|
}
|
|
}
|
|
}
|
|
|
|
# You're the most beautiful PERSON in the world
|
|
option = {
|
|
name = ep2_wedding.1300.beauty
|
|
custom_tooltip = ep2_wedding.1300.beauty.tt #This option is available because SPOUSE is renowned for THEIR looks
|
|
custom_tooltip = ep2_wedding.1300.followup.tt
|
|
|
|
trigger = {
|
|
scope:spouse_2 = {
|
|
OR = {
|
|
has_trait = beauty_good_1
|
|
has_trait = beauty_good_2
|
|
has_trait = beauty_good_3
|
|
}
|
|
}
|
|
}
|
|
show_as_tooltip = {
|
|
random_list = {
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.a
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:spouse_2
|
|
REASON = lover_shared_insecurity
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.b
|
|
show_chance = no
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.c
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_shared_insecurity
|
|
CHARACTER = scope:spouse_2
|
|
OPINION = -20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
chaste = minor_stress_impact_gain
|
|
lustful = minor_stress_impact_loss
|
|
honest = minor_stress_impact_loss
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = 0.25
|
|
}
|
|
modifier = {
|
|
has_trait = chaste
|
|
add = -50
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = reassurance
|
|
value = flag:beauty
|
|
}
|
|
scope:spouse_2 = {
|
|
trigger_event = {
|
|
id = ep2_wedding.1301
|
|
}
|
|
}
|
|
}
|
|
|
|
# You will give me many strong heirs
|
|
option = {
|
|
name = ep2_wedding.1300.fertility
|
|
custom_tooltip = ep2_wedding.1300.fertility.tt #This option is available because SPOUSE has the right qualities to be a prolific PARENT
|
|
custom_tooltip = ep2_wedding.1300.followup.tt
|
|
|
|
trigger = {
|
|
scope:spouse_2 = {
|
|
OR = {
|
|
has_trait = physique_good_1
|
|
has_trait = physique_good_2
|
|
has_trait = physique_good_3
|
|
has_trait = fecund
|
|
has_trait = lustful
|
|
}
|
|
}
|
|
}
|
|
show_as_tooltip = {
|
|
random_list = {
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.b
|
|
show_chance = no
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.1300.followup.c
|
|
show_chance = no
|
|
scope:spouse_1 = {
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_shared_insecurity
|
|
CHARACTER = scope:spouse_2
|
|
OPINION = -20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
chaste = minor_stress_impact_gain
|
|
compassionate = minor_stress_impact_gain
|
|
lustful = medium_stress_impact_loss
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = -0.5
|
|
ai_rationality = 0.5
|
|
}
|
|
modifier = {
|
|
has_trait = chaste
|
|
add = -50
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = -50
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = reassurance
|
|
value = flag:fertility
|
|
}
|
|
scope:spouse_2 = {
|
|
trigger_event = {
|
|
id = ep2_wedding.1301
|
|
}
|
|
}
|
|
}
|
|
after = {
|
|
remove_character_flag = is_naked
|
|
scope:spouse_2 = {
|
|
remove_character_flag = is_naked
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.1301 = { #Spouse response
|
|
type = activity_event
|
|
title = ep2_wedding.1301.t
|
|
desc = {
|
|
desc = ep2_wedding.1301.desc_intro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = { scope:insecurity = flag:appearance }
|
|
desc = ep2_wedding.1301.desc_appearance
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:insecurity = flag:dark_past }
|
|
desc = ep2_wedding.1301.desc_dark_past
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:insecurity = flag:voice }
|
|
desc = ep2_wedding.1301.desc_voice
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:insecurity = flag:lowborn }
|
|
desc = ep2_wedding.1301.desc_lowborn
|
|
}
|
|
}
|
|
desc = ep2_wedding.1301.desc_midtro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = { scope:reassurance = flag:virtue }
|
|
desc = ep2_wedding.1301.desc_virtue
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:reassurance = flag:rule_together }
|
|
desc = ep2_wedding.1301.desc_rule_together
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:reassurance = flag:practical }
|
|
desc = ep2_wedding.1301.desc_practical
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:reassurance = flag:stop_whining }
|
|
desc = ep2_wedding.1301.desc_stop_whining
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:reassurance = flag:understanding }
|
|
desc = ep2_wedding.1301.desc_understanding
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:reassurance = flag:beauty }
|
|
desc = ep2_wedding.1301.desc_beauty
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:reassurance = flag:fertility }
|
|
desc = ep2_wedding.1301.desc_fertility
|
|
}
|
|
}
|
|
desc = ep2_wedding.1301.desc_outro
|
|
}
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = scope:spouse_1
|
|
animation = thinking
|
|
}
|
|
right_portrait = {
|
|
character = root
|
|
animation = worry
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = is_naked
|
|
scope:spouse_1 = {
|
|
add_character_flag = is_naked
|
|
}
|
|
}
|
|
|
|
option = { #I want to be worthy of your love...
|
|
name = ep2_wedding.1301.love
|
|
trigger = {
|
|
is_attracted_to_gender_of = scope:spouse_1
|
|
NOR = {
|
|
scope:reassurance = flag:fertility
|
|
scope:reassurance = flag:stop_whining
|
|
scope:reassurance = flag:practical
|
|
}
|
|
}
|
|
scope:spouse_1 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1301.outcome.love
|
|
left_icon = scope:spouse_2
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_whyme_love_log
|
|
tags = { good }
|
|
score = 25
|
|
character = scope:spouse_1
|
|
target = scope:spouse_2
|
|
|
|
# Effect
|
|
scope:spouse_1 = {
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = woo_attendee_intent
|
|
intent_target = scope:spouse_2
|
|
can_set_relation_lover_trigger = { CHARACTER = scope:spouse_2 }
|
|
}
|
|
set_relation_lover = {
|
|
reason = lover_shared_insecurity
|
|
target = scope:spouse_2
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
else = {
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:spouse_2
|
|
REASON = lover_shared_insecurity
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
scope:spouse_2 = {
|
|
add_character_modifier = {
|
|
modifier = wedding_soothed_insecurity_modifier
|
|
years = 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_rationality = -0.25
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:understanding
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:beauty
|
|
add = 15
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = { has_trait = compassionate }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = { attraction >= low_positive_attraction }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = { attraction >= medium_positive_attraction }
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = { attraction >= high_positive_attraction }
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = { attraction <= low_negative_attraction }
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = { attraction <= medium_negative_attraction }
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = { attraction <= high_negative_attraction }
|
|
add = -50
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { #I want to trust you...
|
|
name = ep2_wedding.1301.trust
|
|
trigger = {
|
|
NOR = {
|
|
scope:reassurance = flag:fertility
|
|
scope:reassurance = flag:stop_whining
|
|
}
|
|
}
|
|
scope:spouse_1 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1301.outcome.trust
|
|
left_icon = scope:spouse_2
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_whyme_trust_log
|
|
tags = { good }
|
|
score = 25
|
|
character = scope:spouse_1
|
|
target = scope:spouse_2
|
|
|
|
# Effect
|
|
scope:spouse_1 = {
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = woo_attendee_intent
|
|
intent_target = scope:spouse_2
|
|
can_set_relation_lover_trigger = { CHARACTER = scope:spouse_2 }
|
|
}
|
|
set_relation_lover = {
|
|
reason = lover_shared_insecurity
|
|
target = scope:spouse_2
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
else = {
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:spouse_2
|
|
REASON = lover_shared_insecurity
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
scope:spouse_2 = {
|
|
add_character_modifier = {
|
|
modifier = wedding_soothed_insecurity_modifier
|
|
years = 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_honor = 0.25
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:rule_together
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:virtue
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = { has_trait = honest }
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:spouse_1 = { num_virtuous_traits >= 1 }
|
|
add = 20
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { #I'm being silly
|
|
name = ep2_wedding.1301.silly
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_rationality = 0.5
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:practical
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:fertility
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:rule_together
|
|
add = 10
|
|
}
|
|
}
|
|
scope:spouse_1 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1301.outcome.silly
|
|
left_icon = scope:spouse_2
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_whyme_silly_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = scope:spouse_1
|
|
target = scope:spouse_2
|
|
|
|
# Effect
|
|
scope:spouse_2 = {
|
|
add_character_modifier = {
|
|
modifier = wedding_practical_marriage_modifier
|
|
years = 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { #Misunderstood
|
|
name = ep2_wedding.1301.misunderstood
|
|
|
|
ai_chance = {
|
|
base = 120
|
|
ai_value_modifier = {
|
|
ai_energy = -0.25
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:practical
|
|
add = 5
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:fertility
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
scope:reassurance = flag:stop_whining
|
|
add = 20
|
|
}
|
|
}
|
|
scope:spouse_1 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1301.outcome.misunderstood
|
|
left_icon = scope:spouse_2
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_whyme_misunderstood_log
|
|
tags = { bad }
|
|
score = 25
|
|
character = scope:spouse_1
|
|
target = scope:spouse_2
|
|
|
|
# Effect
|
|
scope:spouse_1 = {
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_shared_insecurity
|
|
CHARACTER = scope:spouse_2
|
|
OPINION = -20
|
|
}
|
|
}
|
|
scope:spouse_2 = {
|
|
add_character_modifier = {
|
|
modifier = wedding_insecure_marriage_modifier
|
|
years = 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_wnight_event
|
|
remove_character_flag = is_naked
|
|
scope:spouse_1 = {
|
|
remove_character_flag = busy_in_wnight_event
|
|
remove_character_flag = is_naked
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
##################################################
|
|
# A Friend Is Monopolizing Your Attention
|
|
# by Luke Bean
|
|
# ep2_wedding.1310
|
|
##################################################
|
|
|
|
scripted_trigger ep2_wedding_1310_wedding_friend_trigger = {
|
|
any_relation = { type = friend this = root }
|
|
is_adult = yes
|
|
is_ai = yes
|
|
NOR ={
|
|
AND = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
} # If the spouses are friends, that's adorable but incompatible with this event
|
|
AND = {
|
|
this = scope:activity.special_guest:spouse_2
|
|
root = scope:activity.special_guest:spouse_1
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.1310 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1310.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
this = scope:spouse_1
|
|
this = scope:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.1310.desc_spouse
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
this = scope:host
|
|
}
|
|
desc = ep2_wedding.1310.desc_host
|
|
}
|
|
desc = ep2_wedding.1310.desc_guest
|
|
}
|
|
}
|
|
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = laugh
|
|
}
|
|
center_portrait = {
|
|
character = scope:other_guest
|
|
animation = disapproval
|
|
}
|
|
right_portrait = {
|
|
character = scope:friend
|
|
animation = wedding_drunk
|
|
}
|
|
|
|
lower_right_portrait = scope:other_spouse
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
has_ep2_dlc_trigger = yes
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1310_wedding_friend_trigger = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
has_trait = shy
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_reveler
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
scope:activity = { exists = var:lovers_wedding }
|
|
add = -1
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
is_ai = yes
|
|
factor = 0.1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = spouse_2 }
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
ep2_wedding_1310_wedding_friend_trigger = yes
|
|
}
|
|
save_scope_as = friend
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
#If you're one of the spouses
|
|
OR = {
|
|
this = scope:spouse_1
|
|
this = scope:spouse_2
|
|
}
|
|
}
|
|
if = {
|
|
limit = { this = scope:spouse_1 }
|
|
#The person judging you will probably be a close relative of your new spouse, but could also be the spouse themselves
|
|
scope:spouse_2 = { save_scope_as = other_spouse }
|
|
random_list = {
|
|
100 = {
|
|
trigger = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
NOT = {
|
|
any_relation = { type = friend this = root }
|
|
any_relation = { type = friend this = scope:friend }
|
|
this = root
|
|
this = scope:friend
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
is_close_family_of = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
NOT = {
|
|
any_relation = { type = friend this = root }
|
|
any_relation = { type = friend this = scope:friend }
|
|
this = root
|
|
this = scope:friend
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
is_close_family_of = scope:spouse_2
|
|
}
|
|
save_scope_as = other_guest
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
scope:spouse_2 = { save_scope_as = other_guest }
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
scope:spouse_1 = { save_scope_as = other_spouse }
|
|
random_list = {
|
|
100 = {
|
|
trigger = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
NOT = {
|
|
any_relation = { type = friend this = root }
|
|
any_relation = { type = friend this = scope:friend }
|
|
this = root
|
|
this = scope:friend
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
is_close_family_of = scope:spouse_1
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
NOT = {
|
|
any_relation = { type = friend this = root }
|
|
any_relation = { type = friend this = scope:friend }
|
|
this = root
|
|
this = scope:friend
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
is_close_family_of = scope:spouse_1
|
|
}
|
|
save_scope_as = other_guest
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
scope:spouse_1 = { save_scope_as = other_guest }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { this = scope:host } # If you are the host, the judgy guest can be either spouse or any of their close family
|
|
random_list = {
|
|
100 = {
|
|
trigger = {
|
|
NOT = {
|
|
scope:spouse_1 = {
|
|
any_relation = {
|
|
type = friend
|
|
this = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:spouse_1 = { save_scope_as = other_guest }
|
|
}
|
|
100 = {
|
|
trigger = { NOT = { scope:spouse_2 = { any_relation = { type = friend this = root } } } }
|
|
scope:spouse_2 = { save_scope_as = other_guest }
|
|
}
|
|
100 = {
|
|
trigger = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
NOT = {
|
|
any_relation = { type = friend this = root }
|
|
any_relation = { type = friend this = scope:friend }
|
|
this = root
|
|
this = scope:friend
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
OR = {
|
|
is_close_family_of = scope:spouse_1
|
|
is_close_family_of = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
NOT = {
|
|
any_relation = { type = friend this = root }
|
|
any_relation = { type = friend this = scope:friend }
|
|
this = root
|
|
this = scope:friend
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
OR = {
|
|
is_close_family_of = scope:spouse_1
|
|
is_close_family_of = scope:spouse_2
|
|
}
|
|
}
|
|
save_scope_as = other_guest
|
|
}
|
|
}
|
|
}
|
|
1 = {
|
|
scope:activity = { random_attending_character = { save_scope_as = other_guest } } #In case you're friends with both spouses and their entire families, I guess.
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
random_list = {
|
|
10 = {
|
|
trigger = { NOT = { scope:spouse_1 = { any_relation = { type = friend this = root } } } } #Same options as if you're the host, but much less likely to grab the spouses
|
|
scope:spouse_1 = { save_scope_as = other_guest }
|
|
}
|
|
10 = {
|
|
trigger = { NOT = { scope:spouse_2 = { any_relation = { type = friend this = root } } } }
|
|
scope:spouse_2 = { save_scope_as = other_guest }
|
|
}
|
|
100 = {
|
|
trigger = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
NOT = {
|
|
any_relation = { type = friend this = root }
|
|
any_relation = { type = friend this = scope:friend }
|
|
this = root
|
|
this = scope:friend
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
OR = {
|
|
is_close_family_of = scope:spouse_1
|
|
is_close_family_of = scope:spouse_2
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
NOT = {
|
|
any_relation = { type = friend this = root }
|
|
any_relation = { type = friend this = scope:friend }
|
|
this = root
|
|
this = scope:friend
|
|
}
|
|
is_adult = yes
|
|
is_ai = yes
|
|
OR = {
|
|
is_close_family_of = scope:spouse_1
|
|
is_close_family_of = scope:spouse_2
|
|
}
|
|
}
|
|
save_scope_as = other_guest
|
|
}
|
|
}
|
|
}
|
|
1 = {
|
|
scope:activity = { random_attending_character = { save_scope_as = other_guest } }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# What a joy to have FRIEND here with me!
|
|
option = {
|
|
name = ep2_wedding.1310.a
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_banquet_bond_log
|
|
tags = { good }
|
|
score = 25
|
|
character = root
|
|
target = scope:friend
|
|
|
|
# Effect
|
|
root = {
|
|
if = {
|
|
limit = {
|
|
can_set_relation_best_friend_trigger = { CHARACTER = scope:friend }
|
|
}
|
|
set_relation_best_friend = { reason = best_friend_great_time_at_wedding copy_reason = friend target = scope:friend }
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
this = scope:spouse_1
|
|
this = scope:spouse_2
|
|
this = scope:host
|
|
}
|
|
}
|
|
reverse_add_opinion = {
|
|
target = scope:other_guest
|
|
modifier = insult_opinion
|
|
opinion = -30
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_honor = -0.1
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
add = -15
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = -25
|
|
}
|
|
}
|
|
}
|
|
|
|
# OTHER GUEST, come join us!
|
|
option = {
|
|
name = ep2_wedding.1310.b
|
|
random_list = {
|
|
50 = { #Third person befriends you both
|
|
desc = ep2_wedding.1310.b.newfriends
|
|
compatibility_modifier = {
|
|
who = scope:friend
|
|
compatibility_target = scope:other_guest
|
|
multiplier = 3
|
|
max = 50
|
|
min = -30
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1310.b.newfriends
|
|
left_icon = scope:other_guest
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_cannot_escape_friends_log
|
|
tags = { good }
|
|
score = 25
|
|
character = root
|
|
target = scope:other_guest
|
|
|
|
# Effect
|
|
root = {
|
|
if = {
|
|
limit = {
|
|
can_set_relation_friend_trigger = { CHARACTER = scope:other_guest }
|
|
}
|
|
set_relation_friend = {
|
|
reason = friend_great_time_at_wedding
|
|
target = scope:other_guest
|
|
province = root.location
|
|
}
|
|
}
|
|
stress_impact = {
|
|
gregarious = medium_stress_impact_loss
|
|
}
|
|
}
|
|
scope:friend = {
|
|
if = {
|
|
limit = {
|
|
can_set_relation_friend_trigger = { CHARACTER = scope:other_guest }
|
|
}
|
|
set_relation_friend = {
|
|
reason = friend_great_time_at_wedding
|
|
target = scope:other_guest
|
|
province = root.location
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
50 = { #Everyone has a good time
|
|
desc = ep2_wedding.1310.b.goodtime
|
|
compatibility_modifier = {
|
|
who = scope:friend
|
|
compatibility_target = scope:other_guest
|
|
multiplier = 2
|
|
max = 35
|
|
min = -35
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1310.b.goodtime
|
|
left_icon = scope:other_guest
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_cannot_escape_goodtime_log
|
|
tags = { betrothal }
|
|
score = 25
|
|
character = root
|
|
target = scope:other_guest
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:other_guest
|
|
modifier = friendliness_opinion
|
|
opinion = 30
|
|
}
|
|
reverse_add_opinion = {
|
|
target = scope:friend
|
|
modifier = friendliness_opinion
|
|
opinion = 30
|
|
}
|
|
stress_impact = {
|
|
gregarious = minor_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
40 = { #Everyone has a bad time
|
|
desc = ep2_wedding.1310.b.badtime
|
|
compatibility_modifier = {
|
|
who = scope:friend
|
|
compatibility_target = scope:other_guest
|
|
multiplier = -3
|
|
max = 60
|
|
min = -9
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1310.b.badtime
|
|
left_icon = scope:other_guest
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_cannot_escape_badtime_log
|
|
tags = { betrothal }
|
|
score = 25
|
|
character = root
|
|
target = scope:other_guest
|
|
|
|
#Effect
|
|
if = {
|
|
limit = {
|
|
scope:friend = { can_set_relation_rival_trigger = { CHARACTER = scope:other_guest } }
|
|
}
|
|
scope:friend = {
|
|
set_relation_rival = {
|
|
target = scope:other_guest
|
|
reason = rival_bad_time_at_wedding
|
|
}
|
|
}
|
|
}
|
|
root = {
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_sociability = 0.5
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = shy
|
|
add = -75
|
|
}
|
|
}
|
|
}
|
|
|
|
# Let's sneak out so we can talk properly!
|
|
option = {
|
|
name = ep2_wedding.1310.c
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_cannot_escape_sneak_log
|
|
tags = { betrothal }
|
|
score = 25
|
|
character = root
|
|
target = scope:friend
|
|
|
|
# Effect
|
|
root = {
|
|
if = {
|
|
limit = { NOT = { has_trait = confider } }
|
|
add_trait = confider
|
|
}
|
|
else = {
|
|
add_stress = major_stress_impact_loss
|
|
}
|
|
}
|
|
scope:other_guest = {
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
this = scope:spouse_1
|
|
this = scope:spouse_2
|
|
}
|
|
}
|
|
progress_towards_rival_effect = {
|
|
REASON = rival_dishonored_wedding_banquet
|
|
CHARACTER = root
|
|
OPINION = 0
|
|
}
|
|
}
|
|
else = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = insult_opinion
|
|
opinion = -30
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_sociability = -0.5
|
|
}
|
|
modifier = {
|
|
has_trait = shy
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = -50
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # You must excuse me, my friend.
|
|
name = ep2_wedding.1310.d
|
|
flavor = ep2_wedding.1310.d.tt
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_cannot_escape_excuse_log
|
|
tags = { betrothal }
|
|
score = 25
|
|
character = root
|
|
target = scope:other_guest
|
|
|
|
# Effect
|
|
scope:other_guest = {
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_great_time_at_wedding
|
|
CHARACTER = root
|
|
OPINION = 0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
gregarious = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_honor = 0.5
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = -20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
######################################
|
|
# A Rival Seeks Forgiveness
|
|
# by Luke Bean
|
|
# ep2_wedding.1320
|
|
######################################
|
|
|
|
scripted_trigger ep2_wedding_1320_forgiving_rival_trigger = {
|
|
is_adult = yes
|
|
is_ai = yes
|
|
any_relation = { type = rival this = root }
|
|
NOR = {
|
|
has_character_flag = busy_in_wnight_event
|
|
has_trait = vengeful
|
|
has_trait = arrogant
|
|
any_relation = { type = nemesis this = root }
|
|
}
|
|
OR = {
|
|
has_trait = forgiving
|
|
has_trait = humble
|
|
has_trait = compassionate
|
|
AND = {
|
|
has_trait = zealous
|
|
this.faith = { trait_is_virtue = forgiving }
|
|
}
|
|
trait_compatibility = {
|
|
target = root
|
|
value >= medium_positive_trait_compatibility # We're not so different, you and I...
|
|
}
|
|
}
|
|
NOR = {
|
|
AND = {
|
|
root = scope:activity.special_guest:spouse_1 # Never triggers for rival spouses
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
AND = {
|
|
root = scope:activity.special_guest:spouse_2
|
|
this = scope:activity.special_guest:spouse_1
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.1320 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1320.t
|
|
desc = {
|
|
desc = ep2_wedding.1320.desc_intro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:role = flag:host
|
|
scope:rival_role = flag:spouse
|
|
}
|
|
desc = ep2_wedding.1320.desc_host_vs_spouse
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:role = flag:host
|
|
scope:rival_role = flag:guest
|
|
}
|
|
desc = ep2_wedding.1320.desc_host_vs_guest
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:role = flag:spouse
|
|
scope:rival_role = flag:guest
|
|
}
|
|
desc = ep2_wedding.1320.desc_spouse_vs_guest
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:role = flag:guest
|
|
scope:rival_role = flag:host
|
|
}
|
|
desc = ep2_wedding.1320.desc_guest_vs_host
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:role = flag:guest
|
|
scope:rival_role = flag:spouse
|
|
}
|
|
desc = ep2_wedding.1320.desc_guest_vs_spouse
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:role = flag:spouse
|
|
scope:rival_role = flag:host
|
|
}
|
|
desc = ep2_wedding.1320.desc_spouse_vs_host
|
|
}
|
|
desc = ep2_wedding.1320.desc_guest_vs_guest
|
|
}
|
|
desc = ep2_wedding.1320.desc_outro
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = personality_cynical
|
|
}
|
|
right_portrait = {
|
|
character = scope:rival
|
|
animation = shame
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1320_forgiving_rival_trigger = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
OR = {
|
|
root = scope:host
|
|
scope:host = {
|
|
ep2_wedding_1320_forgiving_rival_trigger = yes
|
|
}
|
|
}
|
|
add = 5 # Very, very likely to happen if one rival invited and the other accepted
|
|
}
|
|
modifier = {
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
scope:activity.special_guest:spouse_2 = { ep2_wedding_1320_forgiving_rival_trigger = yes }
|
|
}
|
|
add = 3 # Much more likely to happen on the occasion of one of the rivals' weddings
|
|
}
|
|
modifier = {
|
|
has_trait = forgiving ### More likely to happen if the rival thinks root is the sort of person who might forgive them
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1320_forgiving_rival_trigger = yes
|
|
has_trait = forgiving
|
|
}
|
|
}
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1320_forgiving_rival_trigger = yes
|
|
has_trait = humble
|
|
}
|
|
}
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1320_forgiving_rival_trigger = yes
|
|
has_trait = compassionate
|
|
}
|
|
}
|
|
add = 1
|
|
}
|
|
modifier = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1320_forgiving_rival_trigger = yes
|
|
has_trait = zealous
|
|
faith = { trait_is_virtue = forgiving }
|
|
}
|
|
}
|
|
add = 1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
ep2_wedding_1320_forgiving_rival_trigger = yes
|
|
OR = {
|
|
has_trait = forgiving
|
|
has_trait = humble
|
|
has_trait = compassionate
|
|
AND = {
|
|
has_trait = zealous
|
|
faith = { trait_is_virtue = forgiving }
|
|
}
|
|
}
|
|
}
|
|
alternative_limit = {
|
|
ep2_wedding_1320_forgiving_rival_trigger = yes
|
|
}
|
|
save_scope_as = rival
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
root = scope:host
|
|
}
|
|
save_scope_value_as = {
|
|
name = role
|
|
value = flag:host
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = role
|
|
value = flag:spouse
|
|
}
|
|
}
|
|
else = {
|
|
save_scope_value_as = {
|
|
name = role
|
|
value = flag:guest
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:rival = scope:host
|
|
}
|
|
save_scope_value_as = {
|
|
name = rival_role
|
|
value = flag:host
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
scope:rival = scope:activity.special_guest:spouse_1
|
|
scope:rival = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
save_scope_value_as = {
|
|
name = rival_role
|
|
value = flag:spouse
|
|
}
|
|
}
|
|
else = {
|
|
save_scope_value_as = {
|
|
name = rival_role
|
|
value = flag:guest
|
|
}
|
|
}
|
|
}
|
|
|
|
# Embrace RIVAL and let bygones be bygones!
|
|
option = {
|
|
name = ep2_wedding.1320.a
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_embraced_rival_log
|
|
tags = { rival }
|
|
score = 25
|
|
character = root
|
|
target = scope:rival
|
|
|
|
#Effect
|
|
root = {
|
|
remove_relation_rival = scope:rival
|
|
random_list = {
|
|
80 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1320.a.friendliness
|
|
left_icon = scope:rival
|
|
reverse_add_opinion = {
|
|
target = scope:rival
|
|
modifier = friendliness_opinion
|
|
opinion = 30
|
|
}
|
|
}
|
|
}
|
|
20 = {
|
|
compatibility_modifier = {
|
|
who = root
|
|
compatibility_target = scope:rival
|
|
multiplier = 3
|
|
max = 50
|
|
min = -30
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1320.a.friend
|
|
left_icon = scope:rival
|
|
set_relation_friend = { reason = friend_reconciled_at_wedding target = scope:rival }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
vengeful = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
forgiving = massive_stress_impact_loss
|
|
compassionate = major_stress_impact_loss
|
|
gregarious = minor_stress_impact_loss
|
|
humble = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_honor = -0.2
|
|
ai_compassion = 0.5
|
|
ai_sociability = 0.2
|
|
}
|
|
modifier = {
|
|
has_trait = vengeful
|
|
add = -100
|
|
}
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = -50
|
|
}
|
|
modifier = {
|
|
has_trait = forgiving
|
|
add = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
# Hurl a DISH in RIVAL's face.
|
|
option = {
|
|
name = ep2_wedding.1320.b
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_dished_rival_log
|
|
tags = { rival }
|
|
score = 25
|
|
character = root
|
|
target = scope:rival
|
|
|
|
# Effect
|
|
root = {
|
|
add_dread = minor_dread_gain
|
|
}
|
|
}
|
|
}
|
|
random_list = {
|
|
100 = {
|
|
desc = ep2_wedding.1310.b.nowound
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1310.b.nowound
|
|
left_icon = scope:rival
|
|
reverse_add_opinion = {
|
|
target = scope:rival
|
|
modifier = angry_opinion
|
|
opinion = -50
|
|
}
|
|
}
|
|
}
|
|
30 = {
|
|
desc = ep2_wedding.1310.b.wound
|
|
trigger = {
|
|
can_set_relation_nemesis_trigger = { CHARACTER = scope:rival }
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1310.b.wound
|
|
left_icon = scope:rival
|
|
scope:rival = { increase_wounds_effect = { REASON = fight } }
|
|
set_relation_nemesis = { reason = nemesis_spurned_reconciliation_at_wedding target = scope:rival }
|
|
}
|
|
}
|
|
30 = {
|
|
desc = ep2_wedding.1310.b.wound
|
|
trigger = {
|
|
NOT = { can_set_relation_nemesis_trigger = { CHARACTER = scope:rival } }
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1310.b.wound
|
|
left_icon = scope:rival
|
|
scope:rival = { increase_wounds_effect = { REASON = fight } }
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
vengeful = major_stress_impact_loss
|
|
}
|
|
}
|
|
else = {
|
|
stress_impact = {
|
|
vengeful = medium_stress_impact_loss
|
|
arrogant = medium_stress_impact_loss
|
|
forgiving = massive_stress_impact_gain
|
|
compassionate = major_stress_impact_gain
|
|
gregarious = minor_stress_impact_gain
|
|
humble = minor_stress_impact_gain
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_honor = -0.5
|
|
ai_compassion = -0.5
|
|
}
|
|
modifier = {
|
|
has_trait = wrathful
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
has_trait = impatient
|
|
add = 30
|
|
}
|
|
}
|
|
}
|
|
|
|
# What's forgiveness worth to you?
|
|
option = {
|
|
name = ep2_wedding.1320.c
|
|
|
|
duel = {
|
|
target = scope:rival
|
|
skill = diplomacy
|
|
25 = {
|
|
desc = ep2_wedding.1310.c.hook
|
|
trigger = {
|
|
can_add_hook = {
|
|
target = scope:rival
|
|
type = favor_hook
|
|
}
|
|
}
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1310.c.hook
|
|
left_icon = scope:rival
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_hooked_rival_log
|
|
tags = { rival }
|
|
score = 25
|
|
character = root
|
|
target = scope:rival
|
|
|
|
# Effect
|
|
root = {
|
|
remove_relation_rival = scope:rival
|
|
add_hook = {
|
|
target = scope:rival
|
|
type = favor_hook
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
30 = {
|
|
desc = ep2_wedding.1310.c.apology
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 2
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1310.c.apology
|
|
left_icon = scope:rival
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_apology_rival_log
|
|
tags = { rival }
|
|
score = 25
|
|
character = root
|
|
target = scope:rival
|
|
|
|
# Effect
|
|
root = {
|
|
remove_relation_rival = scope:rival
|
|
add_prestige = medium_prestige_value
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
35 = {
|
|
desc = ep2_wedding.1310.c.refusal
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1310.c.refusal
|
|
left_icon = scope:rival
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_refusal_rival_log
|
|
tags = { rival }
|
|
score = 25
|
|
character = root
|
|
target = scope:rival
|
|
|
|
# Effect
|
|
root = {
|
|
reverse_add_opinion = {
|
|
target = scope:rival
|
|
modifier = angry_opinion
|
|
opinion = -50
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_rationality = 1
|
|
}
|
|
modifier = {
|
|
has_trait = ambitious
|
|
add = 10
|
|
}
|
|
}
|
|
}
|
|
|
|
#Ignore RIVAL until they leave.
|
|
option = {
|
|
name = ep2_wedding.1320.d
|
|
add_prestige = minor_prestige_gain
|
|
scope:rival = { add_prestige = minor_prestige_loss }
|
|
reverse_add_opinion = {
|
|
target = scope:rival
|
|
modifier = angry_opinion
|
|
opinion = -20
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 80
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = 50
|
|
}
|
|
ai_value_modifier = {
|
|
ai_energy = -0.5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
##############################################
|
|
# We Were Lovers Before The Wedding
|
|
# by Luke Bean
|
|
# ep2_wedding.1330
|
|
##############################################
|
|
|
|
scripted_trigger ep2_wedding_1330_doubts_own_fidelity_trigger = {
|
|
OR = {
|
|
has_trait = lustful
|
|
has_trait = seducer
|
|
has_trait = rakish
|
|
any_relation = {
|
|
type = lover
|
|
this != scope:spouse
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.1330 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1330.t
|
|
desc = ep2_wedding.1330.desc
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = happiness
|
|
}
|
|
right_portrait = {
|
|
character = scope:spouse
|
|
animation = flirtation
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
has_ep2_dlc_trigger = yes
|
|
scope:activity = { exists = var:lovers_wedding }
|
|
OR = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 100
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = { root = scope:activity.special_guest:spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = spouse }
|
|
}
|
|
else_if = {
|
|
limit = { root = scope:activity.special_guest:spouse_2 }
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = spouse }
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_relation = { type = soulmate this != scope:spouse }
|
|
}
|
|
random_relation = {
|
|
type = soulmate
|
|
limit = { this != scope:spouse }
|
|
save_scope_as = soulmate
|
|
}
|
|
}
|
|
}
|
|
|
|
# I love this MAN beyond words
|
|
option = {
|
|
name = ep2_wedding.1330.a
|
|
trigger = {
|
|
can_set_relation_soulmate_trigger = { CHARACTER = scope:spouse }
|
|
}
|
|
|
|
set_relation_soulmate = {
|
|
reason = soulmate_married_my_lover
|
|
copy_reason = lover
|
|
target = scope:spouse
|
|
}
|
|
# Achievements
|
|
player_succeeded_at_a_thousand_and_one_nights_achievement_effect = yes
|
|
|
|
stress_impact = {
|
|
seducer = medium_stress_impact_gain
|
|
rakish = medium_stress_impact_gain
|
|
deceitful = minor_stress_impact_gain
|
|
chaste = medium_stress_impact_loss
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_rationality = -0.25
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = -20
|
|
}
|
|
}
|
|
}
|
|
|
|
# I will never need anyone else but HIM
|
|
option = {
|
|
name = ep2_wedding.1330.b
|
|
trigger = {
|
|
ep2_wedding_1330_doubts_own_fidelity_trigger = no
|
|
}
|
|
|
|
add_character_modifier = {
|
|
modifier = wedding_wants_to_be_faithful_modifier
|
|
years = 20
|
|
}
|
|
|
|
stress_impact = {
|
|
fickle = medium_stress_impact_gain
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_honor = 0.25
|
|
}
|
|
modifier = {
|
|
has_trait = chaste
|
|
add = 20
|
|
}
|
|
}
|
|
}
|
|
|
|
# I will be faithful. I will change my ways!
|
|
option = {
|
|
name = ep2_wedding.1330.c
|
|
trigger = {
|
|
OR = {
|
|
has_trait = rakish
|
|
any_relation = {
|
|
type = lover
|
|
this != scope:spouse
|
|
}
|
|
}
|
|
}
|
|
|
|
add_character_modifier = {
|
|
modifier = wedding_wants_to_be_faithful_modifier
|
|
years = 20
|
|
}
|
|
if = {
|
|
limit = { has_trait = rakish }
|
|
random_list = {
|
|
50 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1330.c.rakish.success
|
|
remove_trait = rakish
|
|
add_stress = major_stress_impact_gain
|
|
}
|
|
}
|
|
50 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1330.c.rakish.failure
|
|
add_stress = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
every_relation ?= {
|
|
type = lover
|
|
limit = { this != scope:spouse }
|
|
save_temporary_scope_as = lover
|
|
if = {
|
|
limit = { scope:lover = { is_ai = no } }
|
|
scope:lover = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1330.c.breakup
|
|
left_icon = root
|
|
root = { remove_relation_lover = scope:lover }
|
|
}
|
|
}
|
|
}
|
|
else = { root = { remove_relation_lover = scope:lover } }
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_rationality = -0.25
|
|
ai_honor = 0.25
|
|
}
|
|
modifier = {
|
|
has_trait = lustful # lustful will avoid this option UNLESS...
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
has_trait = compassionate # ...they have a reason to feel bad about it.
|
|
add = 80
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
has_trait = just
|
|
add = 60
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
has_trait = honest
|
|
add = 60
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
has_trait = zealous
|
|
root.faith = { trait_is_virtue = chaste }
|
|
add = 80
|
|
}
|
|
}
|
|
}
|
|
|
|
# I wonder if HE's into... that one thing?
|
|
option = {
|
|
name = ep2_wedding.1330.d
|
|
trigger = {
|
|
OR = {
|
|
has_trait = deviant
|
|
any_secret = { type = secret_deviant }
|
|
}
|
|
NOR = {
|
|
faith = { has_doctrine = doctrine_deviancy_accepted }
|
|
scope:spouse = { has_trait = deviant }
|
|
scope:spouse = { any_secret = { type = secret_deviant NOT = { is_known_by = root } } }
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = { any_secret = { type = secret_deviant NOT = { is_known_by = scope:spouse } } }
|
|
every_secret = { type = secret_deviant reveal_to = scope:spouse }
|
|
}
|
|
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { scope:spouse = { NOT = { any_secret = { type = secret_deviant } } } }
|
|
random_list = {
|
|
70 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1330.d.yuck
|
|
left_icon = scope:spouse
|
|
reverse_add_opinion = {
|
|
target = scope:spouse
|
|
modifier = disgusted_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
}
|
|
30 = {
|
|
compatibility_modifier = {
|
|
who = root
|
|
compatibility_target = scope:spouse
|
|
multiplier = 3
|
|
max = 50
|
|
min = -30
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = lustful }
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = chaste }
|
|
add = -50
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1330.d.yum
|
|
left_icon = scope:spouse
|
|
scope:spouse = { add_secret = { type = secret_deviant } }
|
|
reverse_add_opinion = {
|
|
target = scope:spouse
|
|
modifier = love_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = { scope:spouse = { any_secret = { type = secret_deviant NOT = { is_known_by = root } } } }
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1330.d.yeahmetoo
|
|
left_icon = scope:spouse
|
|
scope:spouse = { every_secret = { type = secret_deviant reveal_to = root } }
|
|
reverse_add_opinion = {
|
|
target = scope:spouse
|
|
modifier = love_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
show_as_tooltip = {
|
|
random_list = {
|
|
1 = {
|
|
desc = ep2_wedding.1330.d.yuck.tt
|
|
show_chance = no
|
|
reverse_add_opinion = {
|
|
target = scope:spouse
|
|
modifier = disgusted_opinion
|
|
opinion = -15
|
|
}
|
|
}
|
|
1 = {
|
|
desc = ep2_wedding.1330.d.yum.tt
|
|
show_chance = no
|
|
scope:spouse = { add_secret = { type = secret_deviant } }
|
|
reverse_add_opinion = {
|
|
target = scope:spouse
|
|
modifier = love_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
1 = {
|
|
desc = ep2_wedding.1330.d.yeahmetoo.tt
|
|
show_chance = no
|
|
custom_tooltip = ep2_wedding.1330.d.confession.tt
|
|
}
|
|
}
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 120
|
|
ai_value_modifier = {
|
|
ai_boldness = 0.25
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
add = 20
|
|
}
|
|
}
|
|
}
|
|
|
|
# How could I have done this to SOULMATE?
|
|
option = {
|
|
name = ep2_wedding.1330.e
|
|
trigger = {
|
|
exists = scope:soulmate
|
|
}
|
|
|
|
remove_relation_lover = scope:spouse
|
|
reverse_add_opinion = {
|
|
target = scope:soulmate
|
|
modifier = love_opinion
|
|
opinion = 100
|
|
}
|
|
|
|
stress_impact = {
|
|
base = major_stress_impact_loss
|
|
stubborn = medium_stress_impact_gain
|
|
chaste = medium_stress_impact_gain
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 90
|
|
ai_value_modifier = {
|
|
ai_honor = 0.25
|
|
ai_boldness = -0.25
|
|
ai_rationality = -0.5
|
|
}
|
|
modifier = {
|
|
has_trait = fickle
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
has_trait = arbitrary
|
|
add = 10
|
|
}
|
|
}
|
|
}
|
|
|
|
# Am I really HIS only love?
|
|
option = {
|
|
name = ep2_wedding.1330.f
|
|
hidden_effect = {
|
|
random_list = {
|
|
100 = { # Mind at ease
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1330.f.mindatease
|
|
left_icon = scope:spouse
|
|
add_character_modifier = {
|
|
modifier = wedding_mind_at_ease_modifier
|
|
days = 3650
|
|
}
|
|
}
|
|
}
|
|
100 = { # Lingering doubts
|
|
modifier = {
|
|
scope:spouse = { has_trait = deceitful }
|
|
add = 30
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = lustful }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = honest }
|
|
add = -30
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = chaste }
|
|
add = -50
|
|
}
|
|
modifier = {
|
|
has_trait = paranoid
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = trusting
|
|
add = -60
|
|
}
|
|
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1330.f.lingeringdoubts
|
|
left_icon = scope:spouse
|
|
add_character_modifier = {
|
|
modifier = wedding_lingering_doubts_modifier
|
|
days = 3650
|
|
}
|
|
}
|
|
}
|
|
100 = { # Confess all
|
|
trigger = { scope:spouse = { any_secret = { type = secret_lover NOT = { is_known_by = root } } } }
|
|
modifier = {
|
|
scope:spouse = { has_trait = honest }
|
|
add = 200
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = compassionate }
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = just }
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = deceitful }
|
|
add = -100
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = callous }
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
scope:spouse = { has_trait = sadistic } # "The LOOK on your face!"
|
|
add = 20
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1330.f.confession
|
|
left_icon = scope:spouse
|
|
scope:spouse = { every_secret = { type = secret_lover limit = { NOT = { is_known_by = root } } reveal_to = root } }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
show_as_tooltip = {
|
|
random_list = {
|
|
1 = {
|
|
desc = ep2_wedding.1330.f.lingeringdoubts.tt
|
|
show_chance = no
|
|
add_character_modifier = {
|
|
modifier = wedding_lingering_doubts_modifier
|
|
days = 3650
|
|
}
|
|
}
|
|
1 = {
|
|
desc = ep2_wedding.1330.f.mindatease.tt
|
|
show_chance = no
|
|
add_character_modifier = {
|
|
modifier = wedding_mind_at_ease_modifier
|
|
days = 3650
|
|
}
|
|
}
|
|
1 = {
|
|
desc = ep2_wedding.1330.f.confession.desc
|
|
show_chance = no
|
|
custom_tooltip = ep2_wedding.1330.f.confession.tt
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
trusting = minor_stress_impact_gain
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 90
|
|
modifier = {
|
|
has_trait = paranoid
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
# Finally, we have no need to hide our love!
|
|
option = {
|
|
name = ep2_wedding.1330.g
|
|
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
honest = major_stress_impact_loss
|
|
}
|
|
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_energy = -0.5
|
|
}
|
|
modifier = {
|
|
has_trait = honest
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Condolences On Your Wedding
|
|
# by Luke Bean
|
|
# ep2_wedding.1340
|
|
##################################################
|
|
|
|
scripted_trigger ep2_wedding_1340_marriage_cynic_trigger = {
|
|
is_ai = yes
|
|
OR = {
|
|
any_spouse = { # dislikes a spouse
|
|
OR = {
|
|
reverse_opinion = {
|
|
target = prev
|
|
value <= low_negative_opinion
|
|
}
|
|
has_relation_rival = prev
|
|
}
|
|
}
|
|
any_memory = { memory_type = spouse_committed_adultery } # has been cheated on
|
|
AND = { # has been divorced
|
|
any_former_spouse = { }
|
|
NOT = {
|
|
any_memory = { memory_type = spouse_died }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_1340_unusual_hobbies_trigger = {
|
|
OR = {
|
|
AND = {
|
|
has_trait = lustful
|
|
any_relation = {
|
|
type = lover
|
|
this != scope:intended
|
|
}
|
|
}
|
|
has_trait = seducer
|
|
has_trait = torturer
|
|
has_trait = rakish
|
|
has_trait = cannibal
|
|
any_secret = { type = secret_cannibal }
|
|
has_trait = witch
|
|
any_secret = { type = secret_witch }
|
|
}
|
|
}
|
|
|
|
scripted_effect ep2_wedding_1340_add_confidence = {
|
|
if = {
|
|
limit = {
|
|
this = { is_female = yes }
|
|
}
|
|
add_character_modifier = wedding_confident_bride
|
|
}
|
|
else = { add_character_modifier = wedding_confident_groom }
|
|
}
|
|
|
|
ep2_wedding.1340 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1340.t
|
|
desc = {
|
|
desc = ep2_wedding.1340.desc.intro
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:disliked_spouse
|
|
scope:cynic = {
|
|
NOR = {
|
|
has_trait = lustful
|
|
has_trait = seducer
|
|
has_trait = rakish
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1340.desc.dislikes_spouse
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:disliked_spouse
|
|
scope:cynic = {
|
|
OR = { # dislikes a spouse and has a lust-related trait
|
|
has_trait = lustful
|
|
has_trait = seducer
|
|
has_trait = rakish
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1340.desc.dislikes_spouse_lustful
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:cynic = {
|
|
AND = { # has been divorced
|
|
any_former_spouse = { }
|
|
NOT = {
|
|
any_memory = {
|
|
memory_type = spouse_died
|
|
}
|
|
}
|
|
}
|
|
}
|
|
exists = scope:divorced_spouse
|
|
}
|
|
desc = ep2_wedding.1340.desc.divorced
|
|
}
|
|
triggered_desc = {
|
|
trigger = { # has been cheated on
|
|
NOT = { exists = scope:adulterous_spouse } # separate loc if they can name them
|
|
scope:cynic = {
|
|
any_memory = {
|
|
memory_type = spouse_committed_adultery
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.1340.desc.cheated_on
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:adulterous_spouse
|
|
}
|
|
desc = ep2_wedding.1340.desc.cheated_on_alt
|
|
}
|
|
}
|
|
desc = ep2_wedding.1340.desc.outro
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = worry
|
|
}
|
|
right_portrait = {
|
|
character = scope:cynic
|
|
animation = eyeroll
|
|
}
|
|
lower_center_portrait = scope:intended
|
|
|
|
cooldown = { years = 15 }
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = { # more likely to happen if close family member is cynical about marriage
|
|
root = {
|
|
any_close_family_member = {
|
|
is_alive = yes
|
|
is_ai = yes
|
|
is_participant_in_activity = scope:activity
|
|
ep2_wedding_1340_marriage_cynic_trigger = yes
|
|
}
|
|
}
|
|
add = 3
|
|
}
|
|
modifier = { # also more likely to happen with a friend
|
|
root = {
|
|
any_relation = {
|
|
type = friend
|
|
is_alive = yes
|
|
is_ai = yes
|
|
is_participant_in_activity = scope:activity
|
|
ep2_wedding_1340_marriage_cynic_trigger = yes
|
|
}
|
|
}
|
|
add = 3
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = 2
|
|
}
|
|
}
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
location = scope:activity.activity_location
|
|
OR = {
|
|
scope:activity.special_guest:spouse_1 = root
|
|
scope:activity.special_guest:spouse_2 = root
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1340_marriage_cynic_trigger = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
add_character_flag = busy_in_wgathering_event
|
|
root = { save_scope_as = nervous_spouse }
|
|
if = {
|
|
limit = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = intended
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = intended
|
|
}
|
|
}
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = { ep2_wedding_1340_marriage_cynic_trigger = yes }
|
|
weight = {
|
|
base = 1
|
|
modifier = { # much more likely to be cynical friend or family
|
|
factor = 100
|
|
has_relation_friend = root
|
|
}
|
|
modifier = {
|
|
factor = 100
|
|
is_close_family_of = root
|
|
}
|
|
modifier = { # helps if their personality disposes them to be cynical about marriage
|
|
factor = 3
|
|
OR = {
|
|
has_trait = cynical
|
|
has_trait = lustful
|
|
}
|
|
}
|
|
}
|
|
save_scope_as = cynic
|
|
add_character_flag = busy_in_wgathering_event
|
|
if = { # if cynic dislikes a current spouse, mention them by name
|
|
limit = {
|
|
any_spouse = {
|
|
OR = {
|
|
reverse_opinion = {
|
|
target = prev
|
|
value <= 0
|
|
}
|
|
has_relation_rival = prev
|
|
}
|
|
}
|
|
}
|
|
random_spouse = {
|
|
limit = {
|
|
OR = {
|
|
reverse_opinion = {
|
|
target = prev
|
|
value <= 0
|
|
}
|
|
has_relation_rival = prev
|
|
}
|
|
}
|
|
save_scope_as = disliked_spouse
|
|
}
|
|
}
|
|
if = { # if cynic has a memory of adultery about a living spouse, mention them
|
|
limit = {
|
|
any_memory = {
|
|
memory_type = spouse_committed_adultery
|
|
}
|
|
}
|
|
every_spouse = {
|
|
save_temporary_scope_as = temp_spouse
|
|
prev = {
|
|
every_memory = {
|
|
memory_type = spouse_committed_adultery
|
|
if = {
|
|
limit = { has_memory_participant = scope:temp_spouse }
|
|
scope:temp_spouse = { save_scope_as = adulterous_spouse }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
every_former_spouse = {
|
|
save_temporary_scope_as = temp_spouse
|
|
prev = {
|
|
every_memory = {
|
|
memory_type = spouse_committed_adultery
|
|
if = {
|
|
limit = { has_memory_participant = scope:temp_spouse }
|
|
scope:temp_spouse = { save_scope_as = adulterous_spouse }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
AND = {
|
|
any_former_spouse = { }
|
|
NOT = {
|
|
any_memory = {
|
|
memory_type = spouse_died
|
|
}
|
|
}
|
|
}
|
|
}
|
|
random_former_spouse = { save_scope_as = divorced_spouse }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # SPOUSE is perfect for me.
|
|
name = ep2_wedding.1340.a
|
|
flavor = ep2_wedding.1340.a.tt
|
|
random_list = {
|
|
40 = {
|
|
compatibility_modifier = {
|
|
who = root
|
|
compatibility_target = scope:intended
|
|
multiplier = 3
|
|
max = 100
|
|
min = -20
|
|
}
|
|
modifier = {
|
|
scope:intended = {
|
|
attraction >= low_positive_attraction
|
|
}
|
|
factor = 1.2
|
|
}
|
|
modifier = {
|
|
attraction <= low_negative_attraction
|
|
factor = 0.8
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1340.a.success
|
|
ep2_wedding_1340_add_confidence = yes
|
|
add_stress = medium_stress_impact_loss
|
|
}
|
|
}
|
|
20 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1340.a.failure
|
|
add_character_modifier = wedding_jitters
|
|
add_stress = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
option = { # Don't worry, I'll have my hobbies!
|
|
name = ep2_wedding.1340.b
|
|
flavor = ep2_wedding.1340.b.tt
|
|
trigger = { ep2_wedding_1340_unusual_hobbies_trigger = no }
|
|
random_list = {
|
|
15 = {
|
|
modifier = {
|
|
has_trait = lifestyle_gardener
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_reveler
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_hunter
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_poet
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_blademaster
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_herbalist
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_mystic
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_physician
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = athletic
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = journaller
|
|
add = 40
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1340.b.success
|
|
ep2_wedding_1340_add_confidence = yes
|
|
add_stress = medium_stress_impact_loss
|
|
}
|
|
}
|
|
30 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1340.b.failure
|
|
add_character_modifier = wedding_jitters
|
|
add_stress = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
base = 1
|
|
modifier = {
|
|
has_trait = lifestyle_gardener
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_reveler
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_hunter
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_poet
|
|
add = 70
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_blademaster
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_herbalist
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_mystic
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_physician
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = athletic
|
|
add = 40
|
|
}
|
|
modifier = {
|
|
has_trait = journaller
|
|
add = 40
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Don't worry, I'll have my... hobbies.
|
|
name = ep2_wedding.1340.c
|
|
flavor = ep2_wedding.1340.c.tt
|
|
trigger = { ep2_wedding_1340_unusual_hobbies_trigger = yes }
|
|
random_list = {
|
|
0 = {
|
|
modifier = {
|
|
has_trait = lustful
|
|
any_relation = {
|
|
type = lover
|
|
this != scope:intended
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = seducer
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = torturer
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = rakish
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
OR = {
|
|
any_secret = { type = secret_cannibal }
|
|
has_trait = cannibal
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
OR = {
|
|
any_secret = { type = secret_witch }
|
|
has_trait = witch
|
|
}
|
|
add = 20
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1340.c.success
|
|
ep2_wedding_1340_add_confidence = yes
|
|
add_stress = medium_stress_impact_loss
|
|
}
|
|
}
|
|
10 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1340.c.failure
|
|
add_character_modifier = wedding_jitters
|
|
add_stress = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 150
|
|
modifier = {
|
|
has_trait = seducer
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = torturer
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
has_trait = rakish
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
OR = {
|
|
any_secret = { type = secret_cannibal }
|
|
has_trait = cannibal
|
|
}
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
OR = {
|
|
any_secret = { type = secret_witch }
|
|
has_trait = witch
|
|
}
|
|
add = 20
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Please, I know all about marriage!
|
|
name = ep2_wedding.1340.d
|
|
flavor = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
number_of_current_and_former_spouses > 1
|
|
}
|
|
desc = ep2_wedding.1340.d.tt.more
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
number_of_current_and_former_spouses > 0
|
|
}
|
|
desc = ep2_wedding.1340.d.tt.once
|
|
}
|
|
desc = ep2_wedding.1340.d.tt.never
|
|
}
|
|
}
|
|
random_list = {
|
|
10 = {
|
|
modifier = {
|
|
number_of_current_and_former_spouses > 0
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
number_of_current_and_former_spouses > 1
|
|
add = 20
|
|
}
|
|
modifier = {
|
|
number_of_current_and_former_spouses > 2
|
|
add = 30
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1340.d.success
|
|
ep2_wedding_1340_add_confidence = yes
|
|
add_stress = medium_stress_impact_loss
|
|
}
|
|
}
|
|
20 = {
|
|
send_interface_toast = {
|
|
title = ep2_wedding.1340.d.failure
|
|
add_character_modifier = wedding_jitters
|
|
add_stress = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
|
|
option = { # Get out of my face, you bitter wretch.
|
|
name = ep2_wedding.1340.e
|
|
trigger = { has_trait = wrathful }
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
}
|
|
reverse_add_opinion = {
|
|
target = scope:cynic
|
|
modifier = insulted_opinion
|
|
opinion = -30
|
|
}
|
|
ai_chance = {
|
|
base = 300
|
|
}
|
|
}
|
|
|
|
option = { # ...will it really be that bad?
|
|
name = ep2_wedding.1340.f
|
|
trigger = {
|
|
NOT = { has_trait = wrathful }
|
|
}
|
|
add_character_modifier = wedding_jitters
|
|
ai_chance = {
|
|
base = 50
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_character_flag = busy_in_wgathering_event
|
|
scope:cynic = { remove_character_flag = busy_in_wgathering_event }
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Lost For Words
|
|
# by Luke Bean
|
|
# ep2_wedding.1350
|
|
##################################################
|
|
|
|
scripted_trigger ep2_wedding_1350_caring_relative_trigger = {
|
|
is_ai = yes
|
|
is_close_family_of = root
|
|
NOR = {
|
|
is_child_of = root
|
|
is_grandchild_of = root
|
|
has_trait = callous
|
|
has_trait = sadistic
|
|
this = root
|
|
}
|
|
opinion = {
|
|
target = root
|
|
value >= 40
|
|
}
|
|
}
|
|
|
|
ep2_wedding.1350 = {
|
|
type = activity_event
|
|
title = ep2_wedding.1350.t
|
|
desc = ep2_wedding.1350.desc.intro
|
|
theme = wedding_ceremony_activity
|
|
center_portrait = {
|
|
character = root
|
|
animation = personality_compassionate
|
|
}
|
|
right_portrait = {
|
|
character = scope:caring_relative
|
|
animation = admiration
|
|
}
|
|
|
|
cooldown = { years = 15 }
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = { # much more likely to happen if root has wedding jitters
|
|
root = {
|
|
has_character_modifier = wedding_jitters
|
|
}
|
|
add = 5
|
|
}
|
|
modifier = {
|
|
has_activity_intent = reduce_stress_intent
|
|
add = 2
|
|
}
|
|
}
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
location = scope:activity.activity_location
|
|
OR = {
|
|
scope:activity.special_guest:spouse_1 = root
|
|
scope:activity.special_guest:spouse_2 = root
|
|
}
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_1350_caring_relative_trigger = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = { ep2_wedding_1350_caring_relative_trigger = yes }
|
|
weight = {
|
|
base = 10
|
|
modifier = {
|
|
add = 10
|
|
is_parent_of = root
|
|
}
|
|
modifier = {
|
|
add = 5
|
|
is_sibling_of = root
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = compassionate
|
|
}
|
|
}
|
|
save_scope_as = caring_relative
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Enjoy a quiet moment together.
|
|
name = ep2_wedding.1350.a
|
|
stress_impact = {
|
|
base = medium_stress_impact_loss
|
|
}
|
|
reverse_add_opinion = {
|
|
target = scope:caring_relative
|
|
modifier = love_opinion
|
|
opinion = 15
|
|
}
|
|
if = {
|
|
limit = { has_character_modifier = wedding_jitters }
|
|
remove_character_modifier = wedding_jitters
|
|
ep2_wedding_1340_add_confidence = yes # replace wedding_jitters with confidence
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
has_character_modifier = wedding_jitters
|
|
add = 50
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Tell RELATIVE how much it means to have them here.
|
|
name = ep2_wedding.1350.b
|
|
progress_towards_friend_effect = {
|
|
CHARACTER = scope:caring_relative
|
|
OPINION = 20
|
|
REASON = friend_supportive_at_wedding
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
############################
|
|
## Wedding Banquet Events
|
|
## 2000-2999
|
|
## by Veronica Pazos
|
|
############################
|
|
|
|
# Diplomatic Intent: You ask a friend of your target's for info about them
|
|
|
|
scripted_trigger ep2_wedding_2000_valid_friend = {
|
|
feast_default_adult_participant_trigger = yes
|
|
drinks_alcohol_trigger = yes
|
|
OR = { #they know the person
|
|
is_close_family_or_spouse_of_root_trigger = yes
|
|
has_any_moderate_good_relationship_with_character_trigger = { CHARACTER = root.intent_target }
|
|
}
|
|
NOT = { is_spouse_of = root }
|
|
NOT = { is_close_family_of = root }
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_2000_is_valiant = {
|
|
OR = {
|
|
has_lifestyle = martial_lifestyle
|
|
prowess >= high_skill_rating
|
|
martial >= high_skill_rating
|
|
has_trait = brave
|
|
has_trait = reckless
|
|
has_trait = gallant
|
|
has_trait = wrathful
|
|
has_trait = overseer
|
|
has_trait = strategist
|
|
has_trait = lifestyle_hunter
|
|
has_trait = lifestyle_blademaster
|
|
}
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_2000_is_nerd = {
|
|
OR = {
|
|
has_lifestyle = learning_lifestyle
|
|
learning >= high_skill_rating
|
|
has_trait = theologian
|
|
has_trait = scholar
|
|
has_trait = diligent
|
|
has_trait = shrewd
|
|
}
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_2000_is_social = {
|
|
OR = {
|
|
has_lifestyle = diplomacy_lifestyle
|
|
diplomacy >= high_skill_rating
|
|
has_trait = lifestyle_reveler
|
|
has_trait = gregarious
|
|
has_trait = august
|
|
has_trait = diplomat
|
|
has_trait = drunkard
|
|
has_trait = trusting
|
|
has_trait = compassionate
|
|
}
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_2000_is_fishy = {
|
|
OR = {
|
|
has_lifestyle = intrigue_lifestyle
|
|
intrigue >= high_skill_rating
|
|
has_trait = callous
|
|
has_trait = cynical
|
|
has_trait = arbitrary
|
|
has_trait = deceitful
|
|
has_trait = schemer
|
|
has_trait = torturer
|
|
has_trait = greedy
|
|
has_trait = vengeful
|
|
has_trait = ambitious
|
|
has_trait = disloyal
|
|
}
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_2000_is_lustful = {
|
|
OR = {
|
|
has_trait = lustful
|
|
has_trait = seducer
|
|
has_trait = rakish
|
|
has_trait = fornicator
|
|
has_trait = adulterer
|
|
has_trait = sodomite
|
|
has_trait = deviant
|
|
}
|
|
}
|
|
|
|
ep2_wedding.2000 = {
|
|
type = activity_event
|
|
title = ep2_wedding.2000.t
|
|
desc = {
|
|
desc = ep2_wedding.2000.desc.intro
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_lustful = yes
|
|
}
|
|
AND = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_lustful = no
|
|
}
|
|
scope:target_friend = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.2000.desc.lustful
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_nerd = yes
|
|
}
|
|
AND = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_nerd = no
|
|
}
|
|
scope:target_friend = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.2000.desc.nerd
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_valiant = yes
|
|
}
|
|
AND = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_valiant = no
|
|
}
|
|
scope:target_friend = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.2000.desc.valiant
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_social = yes
|
|
}
|
|
AND = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_social = no
|
|
}
|
|
scope:target_friend = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.2000.desc.social
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
AND = {
|
|
intent_target = {
|
|
ep2_wedding_2000_is_fishy = no
|
|
}
|
|
scope:target_friend = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.2000.desc.fishy
|
|
}
|
|
}
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
animation = scheme
|
|
}
|
|
animation = admiration
|
|
}
|
|
right_portrait = {
|
|
character = scope:target_friend
|
|
animation = drink_goblet
|
|
}
|
|
lower_center_portrait = scope:diplo_target
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
has_ep2_dlc_trigger = yes
|
|
has_activity_intent = diplomatic_intent
|
|
intent_target = { #there's something we can say of them
|
|
is_alive = yes
|
|
OR = {
|
|
ep2_wedding_2000_is_valiant = yes
|
|
ep2_wedding_2000_is_nerd = yes
|
|
ep2_wedding_2000_is_social = yes
|
|
ep2_wedding_2000_is_fishy = yes
|
|
ep2_wedding_2000_is_lustful = yes
|
|
}
|
|
}
|
|
scope:activity = { #there's someone that knows the person
|
|
any_attending_character = {
|
|
ep2_wedding_2000_valid_friend = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
factor = 2
|
|
scope:activity = { #there's a guy that's best friends with target
|
|
any_attending_character = {
|
|
has_relation_best_friend = root.intent_target
|
|
}
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 1.5
|
|
scope:activity = { #their soulmate is around
|
|
any_attending_character = {
|
|
has_relation_soulmate = root.intent_target
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = { #there's someone that knows the person
|
|
random_attending_character = {
|
|
limit = {
|
|
ep2_wedding_2000_valid_friend = yes
|
|
}
|
|
save_scope_as = target_friend
|
|
}
|
|
}
|
|
intent_target = { save_scope_as = diplo_target }
|
|
}
|
|
|
|
#Awesome, let's go!
|
|
option = {
|
|
name = ep2_wedding.2000.a
|
|
custom_tooltip = ep2_wedding.2000.a.tt
|
|
trigger_event = ep2_wedding.2001
|
|
stress_impact = {
|
|
lazy = medium_stress_impact_gain
|
|
patient = medium_stress_impact_gain
|
|
shy = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = lazy
|
|
has_trait = patient
|
|
has_trait = shy
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Are they... lying?
|
|
option = {
|
|
name = ep2_wedding.2000.b
|
|
duel = {
|
|
skill = intrigue
|
|
target = scope:target_friend
|
|
50 = { #they were lying, you catch them
|
|
desc = ep2_wedding.2000.b.success
|
|
show_chance = no
|
|
modifier = {
|
|
add = 20
|
|
scope:target_friend = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
}
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = 5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.2000.b.success
|
|
left_icon = root
|
|
custom_tooltip = ep2_wedding.2000.b.success.tt
|
|
set_variable = {
|
|
name = wbanquet_friend_insight_var
|
|
value = scope:diplo_target
|
|
}
|
|
add_intrigue_skill = 1
|
|
if = {
|
|
limit = { has_lifestyle = intrigue_lifestyle }
|
|
add_intrigue_lifestyle_xp = minor_lifestyle_experience
|
|
}
|
|
}
|
|
}
|
|
50 = { #they weren't lying
|
|
desc = ep2_wedding.2000.b.failure
|
|
show_chance = no
|
|
modifier = {
|
|
add = 50
|
|
scope:target_friend = {
|
|
has_trait = honest
|
|
}
|
|
}
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = 5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.2000.b.failure
|
|
left_icon = scope:target_friend
|
|
scope:target_friend = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = insult_opinion
|
|
opinion = -5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
reclusive = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
has_trait = reclusive
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.2001 = {
|
|
type = activity_event
|
|
title = ep2_wedding.2001.t
|
|
desc = ep2_wedding.2001.desc
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
animation = scheme
|
|
}
|
|
animation = admiration
|
|
}
|
|
right_portrait = {
|
|
character = scope:diplo_target
|
|
triggered_animation = {
|
|
trigger = {
|
|
drinks_alcohol_trigger = yes
|
|
}
|
|
animation = drink_goblet
|
|
}
|
|
animation = happiness
|
|
}
|
|
|
|
lower_center_portrait = scope:target_friend
|
|
|
|
#Lustful
|
|
option = {
|
|
name = ep2_wedding.2001.a
|
|
set_local_variable = ep2_wedding_lustful_var
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
ep2_wedding_2000_is_lustful = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
#Nerd
|
|
option = {
|
|
name = {
|
|
trigger = {
|
|
NOT = { has_trait = dull }
|
|
capital_province = {
|
|
geographical_region = world_europe
|
|
}
|
|
}
|
|
text = ep2_wedding.2001.b
|
|
}
|
|
name = ep2_wedding.2001.b.dull
|
|
flavor = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
NOT = { has_trait = dull }
|
|
}
|
|
desc = ep2_wedding.2001.b.flavor
|
|
}
|
|
}
|
|
set_local_variable = ep2_wedding_nerd_var
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
ep2_wedding_2000_is_nerd = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
#Valiant
|
|
option = {
|
|
name = ep2_wedding.2001.c
|
|
set_local_variable = ep2_wedding_valiant_var
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
ep2_wedding_2000_is_valiant = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
#Social
|
|
option = {
|
|
name = ep2_wedding.2001.d
|
|
set_local_variable = ep2_wedding_social_var
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
ep2_wedding_2000_is_social = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
#Fishy
|
|
option = {
|
|
name = ep2_wedding.2001.e
|
|
set_local_variable = ep2_wedding_fishy_var
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
ep2_wedding_2000_is_fishy = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
scope:diplo_target = {
|
|
hidden_effect = {
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
AND = {
|
|
ep2_wedding_2000_is_lustful = yes
|
|
has_local_variable = ep2_wedding_lustful_var
|
|
}
|
|
AND = {
|
|
ep2_wedding_2000_is_nerd = yes
|
|
has_local_variable = ep2_wedding_nerd_var
|
|
}
|
|
AND = {
|
|
ep2_wedding_2000_is_valiant = yes
|
|
has_local_variable = ep2_wedding_valiant_var
|
|
}
|
|
AND = {
|
|
ep2_wedding_2000_is_social = yes
|
|
has_local_variable = ep2_wedding_social_var
|
|
}
|
|
AND = {
|
|
ep2_wedding_2000_is_fishy = yes
|
|
has_local_variable = ep2_wedding_fishy_var
|
|
}
|
|
}
|
|
}
|
|
set_local_variable = ep2_wedding_2000_got_it_right
|
|
}
|
|
}
|
|
}
|
|
random_list = {
|
|
5 = {
|
|
trigger = {
|
|
scope:diplo_target = { activity_wedding_diplomatic_intent_impressible_target = yes }
|
|
}
|
|
desc = ep2_wedding.2000.after.subjugate
|
|
show_chance = no
|
|
send_interface_toast = {
|
|
title = ep2_wedding.2000.after.subjugate
|
|
left_icon = scope:diplo_target
|
|
custom_tooltip = {
|
|
text = ep2_wedding.2000.after.subjugate.tt
|
|
complete_activity_intent = yes
|
|
create_title_and_vassal_change = {
|
|
type = swear_fealty
|
|
save_scope_as = title_change
|
|
add_claim_on_loss = no
|
|
}
|
|
scope:diplo_target = {
|
|
change_liege = {
|
|
liege = root
|
|
change = scope:title_change
|
|
}
|
|
}
|
|
resolve_title_and_vassal_change = scope:title_change
|
|
}
|
|
}
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.2000.after.alliance
|
|
show_chance = no
|
|
send_interface_toast = {
|
|
title = ep2_wedding.2000.after.alliance
|
|
left_icon = scope:diplo_target
|
|
custom_tooltip = {
|
|
text = ep2_wedding.2000.after.alliance.tt
|
|
complete_activity_intent = yes
|
|
create_alliance = {
|
|
target = scope:diplo_target
|
|
allied_through_owner = root
|
|
allied_through_target = scope:diplo_target
|
|
}
|
|
scope:diplo_target = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = event_negotiated_alliance_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.2000.after.friends
|
|
show_chance = no
|
|
send_interface_toast = {
|
|
title = ep2_wedding.2000.after.friends
|
|
left_icon = scope:diplo_target
|
|
progress_towards_friend_effect = {
|
|
CHARACTER = scope:diplo_target
|
|
OPINION = 15
|
|
REASON = friend_wedding
|
|
}
|
|
}
|
|
}
|
|
20 = { #only possible if you messed up
|
|
trigger = {
|
|
NOT = { has_local_variable = ep2_wedding_2000_got_it_right }
|
|
}
|
|
desc = ep2_wedding.2000.after.insult
|
|
show_chance = no
|
|
send_interface_toast = {
|
|
title = ep2_wedding.2000.after.insult.short
|
|
left_icon = scope:diplo_target
|
|
reverse_add_opinion = {
|
|
target = scope:diplo_target
|
|
modifier = insult_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
############################
|
|
## Wedding Night Events
|
|
## 3000-3999
|
|
## by Veronica Pazos and Joe Parkin
|
|
############################
|
|
|
|
# Both spouses are shy/nervous and bond over something else
|
|
|
|
scripted_trigger ep2_wedding.is_valid_shy = {
|
|
OR = {
|
|
AND = {
|
|
age <= 19 #they're young
|
|
NOT = { has_trait = lustful }
|
|
}
|
|
has_trait = shy
|
|
has_trait = craven
|
|
has_trait = depressed_1
|
|
has_trait = depressed_genetic
|
|
has_trait = reclusive
|
|
has_trait = chaste
|
|
}
|
|
}
|
|
|
|
ep2_wedding.3000 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3000.t
|
|
desc = ep2_wedding.3000.desc
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = stress
|
|
}
|
|
right_portrait = {
|
|
character = scope:my_spouse
|
|
animation = shame
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = { #you are a spouse and shy
|
|
AND = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
ep2_wedding.is_valid_shy = yes
|
|
}
|
|
AND = {
|
|
root = scope:activity.special_guest:spouse_2
|
|
ep2_wedding.is_valid_shy = yes
|
|
}
|
|
}
|
|
OR = { #and they are a spouse and shy; you also don't have a lover relationship already
|
|
scope:activity.special_guest:spouse_1 = {
|
|
this != root
|
|
NOT = { has_relation_lover = root }
|
|
ep2_wedding.is_valid_shy = yes
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
this != root
|
|
NOT = { has_relation_lover = root }
|
|
ep2_wedding.is_valid_shy = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = shy
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = { this != root }
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
add_character_flag = { #doesn't make sense for you to have sexy times after this
|
|
flag = busy_in_wnight_event
|
|
days = 90
|
|
}
|
|
}
|
|
|
|
#Let's go for a walk
|
|
option = {
|
|
name = ep2_wedding.3000.a
|
|
custom_tooltip = ep2_wedding.3000.tt
|
|
random_list = {
|
|
50 = { #they like it
|
|
desc = ep2_wedding.3000.a.success
|
|
show_chance = no
|
|
modifier = {
|
|
add = 50
|
|
scope:my_spouse = {
|
|
OR = {
|
|
has_trait = lifestyle_herbalist
|
|
has_trait = lifestyle_gardener
|
|
}
|
|
}
|
|
}
|
|
modifier = {
|
|
add = 50
|
|
scope:my_spouse = {
|
|
OR = {
|
|
has_trait = impatient
|
|
has_trait = diligent
|
|
}
|
|
}
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3000.a.success
|
|
left_icon = scope:my_spouse
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = ep2_wedding_3000_log_a
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:my_spouse
|
|
|
|
# Effect
|
|
root = {
|
|
if = {
|
|
limit = {
|
|
NOT = { has_relation_friend = scope:my_spouse }
|
|
}
|
|
set_relation_friend = {
|
|
target = scope:my_spouse
|
|
reason = lover_wnight_walk
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
NOT = { has_relation_lover = scope:my_spouse }
|
|
}
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
REASON = lover_wnight_walk
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
else = {
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = romance_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wnight_common_things_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
50 = { #they dont
|
|
desc = ep2_wedding.3000.a.failure
|
|
show_chance = no
|
|
modifier = {
|
|
add = 50
|
|
scope:my_spouse = {
|
|
OR = {
|
|
has_trait = lazy
|
|
has_trait = patient
|
|
}
|
|
}
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3000.a.failure
|
|
left_icon = scope:my_spouse
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = bored_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wnight_nothing_in_common_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
lazy = medium_stress_impact_gain
|
|
patient = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = lazy
|
|
has_trait = patient
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Do you like... things? Talk about something else
|
|
option = {
|
|
name = ep2_wedding.3000.b
|
|
custom_tooltip = ep2_wedding.3000.tt
|
|
random_list = {
|
|
50 = { #they like it
|
|
desc = ep2_wedding.3000.b.success
|
|
show_chance = no
|
|
modifier = {
|
|
add = 50
|
|
scope:my_spouse = {
|
|
OR = {
|
|
has_trait = patient
|
|
has_trait = calm
|
|
}
|
|
}
|
|
}
|
|
modifier = {
|
|
add = 50
|
|
scope:my_spouse = {
|
|
OR = {
|
|
has_trait = gregarious
|
|
has_trait = trusting
|
|
}
|
|
}
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3000.b.success
|
|
left_icon = scope:my_spouse
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = ep2_wedding_3000_log_b
|
|
tags = { good }
|
|
score = 20
|
|
character = root
|
|
target = scope:my_spouse
|
|
|
|
# Effect
|
|
root = {
|
|
if = {
|
|
limit = {
|
|
NOT = { has_relation_friend = scope:my_spouse }
|
|
}
|
|
set_relation_friend = {
|
|
target = scope:my_spouse
|
|
reason = lover_wnight_talk
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { NOT = { has_relation_lover = scope:my_spouse } }
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
REASON = lover_wnight_talk
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
else = {
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = romance_opinion
|
|
opinion = 5
|
|
}
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wnight_common_things_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
50 = { #they dont
|
|
desc = ep2_wedding.3000.b.failure
|
|
show_chance = no
|
|
modifier = {
|
|
add = 50
|
|
scope:my_spouse = {
|
|
OR = {
|
|
has_trait = shy
|
|
has_trait = reclusive
|
|
}
|
|
}
|
|
}
|
|
modifier = {
|
|
add = 50
|
|
scope:my_spouse = {
|
|
OR = {
|
|
has_trait = lisping
|
|
has_trait = stuttering
|
|
}
|
|
}
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3000.b.failure
|
|
left_icon = scope:my_spouse
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = bored_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wnight_nothing_in_common_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
reclusive = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
has_trait = reclusive
|
|
}
|
|
}
|
|
}
|
|
|
|
#Let's just sleep
|
|
option = {
|
|
name = ep2_wedding.3000.c
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = friendliness_opinion
|
|
opinion = 5
|
|
}
|
|
}
|
|
stress_impact = {
|
|
impatient = medium_stress_impact_gain
|
|
gregarious = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = impatient
|
|
has_trait = gregarious
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Spouse with a secret has a breakdown and confesses their secret
|
|
|
|
ep2_wedding.3010 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3010.t
|
|
desc = {
|
|
desc = ep2_wedding.3010.desc.intro
|
|
first_valid = { #some vague flavour in case you choose the option to not hear about it (you still know the secret in the tooltip
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_spouse = {
|
|
any_secret = {
|
|
type = secret_murder
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3010.desc.murder
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_spouse = {
|
|
any_secret = {
|
|
type = secret_murder_attempt
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3010.desc.murder_attempt
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_spouse = {
|
|
any_secret = {
|
|
type = secret_cannibal
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3010.desc.cannibal
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_spouse = {
|
|
any_secret = {
|
|
type = secret_deviant
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3010.desc.deviant
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_spouse = {
|
|
any_secret = {
|
|
type = secret_witch
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3010.desc.witch
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_spouse = {
|
|
any_secret = {
|
|
type = secret_non_believer
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3010.desc.non_believer
|
|
}
|
|
desc = ep2_wedding.3010.desc.fallback
|
|
}
|
|
}
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = shock
|
|
}
|
|
right_portrait = {
|
|
character = scope:my_spouse
|
|
animation = grief
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = { #you are one of the spouses
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
OR = { #the other spouse has a secret
|
|
scope:activity.special_guest:spouse_1 = {
|
|
this != root
|
|
any_secret = {
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
this != root
|
|
any_secret = {
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = shy
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = { this != root }
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
scope:my_spouse = {
|
|
random_secret = {
|
|
limit = { NOT = { is_known_by = root } }
|
|
save_scope_as = secret_to_reveal
|
|
}
|
|
}
|
|
}
|
|
|
|
#You can trust me
|
|
option = {
|
|
name = ep2_wedding.3010.a
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_confession_log
|
|
tags = { good }
|
|
score = 25
|
|
character = root
|
|
target = scope:my_spouse
|
|
|
|
# Effect
|
|
root = {
|
|
scope:secret_to_reveal = { reveal_to = root }
|
|
if = {
|
|
limit = { NOT = { has_relation_lover = scope:my_spouse } }
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
REASON = lover_wnight_secret_accepted
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
else = {
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = grateful_opinion
|
|
opinion = 5
|
|
}
|
|
}
|
|
scope:my_spouse = {
|
|
if = {
|
|
limit = {
|
|
NOT = { has_character_modifier = wnight_confider_modifier }
|
|
}
|
|
add_character_modifier = {
|
|
modifier = wnight_confider_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:my_spouse
|
|
}
|
|
else = {
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = grateful_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
root = {
|
|
stress_impact = { #intended to be a very stressful moment
|
|
calm = medium_stress_impact_gain
|
|
content = medium_stress_impact_gain
|
|
diligent = medium_stress_impact_gain
|
|
temperate = medium_stress_impact_gain
|
|
paranoid = major_stress_impact_gain #they can hurt you
|
|
just = major_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = calm
|
|
has_trait = content
|
|
has_trait = diligent
|
|
has_trait = temperate
|
|
has_trait = paranoid
|
|
has_trait = just
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#I don't wanna hear the rest
|
|
option = {
|
|
name = ep2_wedding.3010.b
|
|
add_character_modifier = {
|
|
modifier = wnight_clear_conscience_modifier
|
|
years = 10
|
|
}
|
|
stress_impact = {
|
|
deceitful = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
has_trait = deceitful
|
|
}
|
|
}
|
|
}
|
|
|
|
#confess YOUR secret
|
|
option = {
|
|
name = ep2_wedding.3010.c
|
|
trigger = {
|
|
any_secret = {
|
|
NOT = { is_known_by = scope:my_spouse }
|
|
}
|
|
}
|
|
if = {
|
|
limit = { NOT = { has_relation_lover = scope:my_spouse } }
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
REASON = lover_wnight_secret_shared
|
|
OPINION = 20
|
|
}
|
|
}
|
|
else = {
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = grateful_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = {
|
|
NOT = { has_character_modifier = wnight_confider_modifier }
|
|
}
|
|
}
|
|
scope:my_spouse = {
|
|
add_character_modifier = {
|
|
modifier = wnight_confider_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
deceitful = minor_stress_impact_gain
|
|
paranoid = minor_stress_impact_gain
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_confession_joint_log
|
|
tags = { good }
|
|
score = 25
|
|
character = root
|
|
target = scope:my_spouse
|
|
|
|
# Effect
|
|
root = {
|
|
scope:secret_to_reveal = { reveal_to = root }
|
|
random_secret = {
|
|
limit = { NOT = { is_known_by = scope:my_spouse } }
|
|
reveal_to = scope:my_spouse
|
|
}
|
|
if = {
|
|
limit = { NOT = { has_relation_soulmate = scope:my_spouse } }
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
REASON = lover_wnight_secret_shared
|
|
OPINION = 20
|
|
}
|
|
}
|
|
else = {
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = grateful_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = {
|
|
NOT = { has_character_modifier = wnight_confider_modifier }
|
|
}
|
|
}
|
|
scope:my_spouse = {
|
|
add_character_modifier = {
|
|
modifier = wnight_confider_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:my_spouse
|
|
}
|
|
else = {
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = grateful_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = deceitful
|
|
has_trait = paranoid
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# You find out that your spouse fancies the other gender
|
|
|
|
scripted_effect ep2_wedding.3020.reveal_secret_effect = {
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = {
|
|
any_secret = {
|
|
type = secret_homosexual
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
scope:my_spouse = {
|
|
random_secret = {
|
|
type = secret_homosexual
|
|
limit = {
|
|
NOT = { is_known_by = root }
|
|
}
|
|
reveal_to = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.3020 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3020.t
|
|
desc = ep2_wedding.3020.desc
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = { NOT = { is_attracted_to_gender_of = scope:my_spouse } }
|
|
animation = disbelief
|
|
}
|
|
animation = stress
|
|
}
|
|
right_portrait = {
|
|
character = scope:my_spouse
|
|
animation = worry
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = { #you are one of the spouses
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
OR = { #the other spouse doesn't fancy you
|
|
scope:activity.special_guest:spouse_1 = {
|
|
this != root
|
|
NOT = { is_attracted_to_gender_of = root }
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
this != root
|
|
NOT = { is_attracted_to_gender_of = root }
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = { this != root }
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
add_character_flag = { #doesn't make sense for you to have sexy times after this revelation
|
|
flag = busy_in_wnight_event
|
|
days = 90
|
|
}
|
|
}
|
|
|
|
#Well... not my problem
|
|
option = {
|
|
name = ep2_wedding.3020.a
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = lazy
|
|
has_trait = patient
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#I get it - comfort them
|
|
option = {
|
|
name = ep2_wedding.3020.b
|
|
ep2_wedding.3020.reveal_secret_effect = yes
|
|
if = {
|
|
limit = {
|
|
can_set_relation_friend_trigger = { CHARACTER = scope:my_spouse }
|
|
}
|
|
set_relation_friend = {
|
|
reason = friend_wnight_homosexual
|
|
target = scope:my_spouse
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = {
|
|
NOT = { has_character_modifier = wnight_confider_modifier }
|
|
}
|
|
}
|
|
scope:my_spouse = {
|
|
add_character_modifier = {
|
|
modifier = wnight_confider_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:my_spouse
|
|
}
|
|
stress_impact = {
|
|
lustful = medium_stress_impact_gain
|
|
callous = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = lustful
|
|
has_trait = callous
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#You're also NOT attracted to them
|
|
option = {
|
|
name = ep2_wedding.3020.c
|
|
trigger = {
|
|
NOT = { is_attracted_to_gender_of = scope:my_spouse }
|
|
}
|
|
if = {
|
|
limit = {
|
|
can_set_relation_friend_trigger = { CHARACTER = scope:my_spouse }
|
|
}
|
|
set_relation_friend = {
|
|
reason = friend_wnight_homosexual_both
|
|
target = scope:my_spouse
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = {
|
|
NOT = { has_character_modifier = wnight_confider_modifier }
|
|
}
|
|
}
|
|
scope:my_spouse = {
|
|
add_character_modifier = {
|
|
modifier = wnight_confider_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:my_spouse
|
|
}
|
|
ep2_wedding.3020.reveal_secret_effect = yes
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
NOT = { is_attracted_to_gender_of = scope:my_spouse }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Spouse gives you a cute memento to remember this night
|
|
|
|
ep2_wedding.3030 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3030.t
|
|
desc = ep2_wedding.3030.desc
|
|
theme = wedding_night_activity
|
|
center_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = seducer
|
|
has_trait = lustful
|
|
has_trait = rakish
|
|
}
|
|
}
|
|
animation = flirtation_left
|
|
}
|
|
animation = love
|
|
}
|
|
right_portrait = {
|
|
character = scope:my_spouse
|
|
animation = flirtation
|
|
}
|
|
artifact = {
|
|
target = scope:love_memento
|
|
position = lower_center_portrait
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = { #you are one of the spouses
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
OR = { #the other spouse likes you in any way
|
|
scope:activity.special_guest:spouse_1 = {
|
|
this != root
|
|
OR = {
|
|
has_any_good_relationship_with_root_trigger = yes
|
|
opinion = {
|
|
target = root
|
|
value >= default_friend_opinion #15
|
|
}
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
this != root
|
|
OR = {
|
|
has_any_good_relationship_with_root_trigger = yes
|
|
opinion = {
|
|
target = root
|
|
value >= default_friend_opinion #15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
factor = 1.5
|
|
OR = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
this != root
|
|
has_relation_lover = root
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
this != root
|
|
has_relation_lover = root
|
|
}
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
this != root
|
|
has_relation_soulmate = root
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
this != root
|
|
has_relation_soulmate = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
save_scope_as = itsa_me_scope #used in the artifact description
|
|
if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = { this != root }
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
hidden_effect_new_object = {
|
|
generate_romantic_trinket_effect = { OWNER = scope:my_spouse }
|
|
if = {
|
|
# Checks required for error suppression
|
|
limit = { exists = scope:romantic_trinket }
|
|
scope:romantic_trinket = {
|
|
save_scope_as = love_memento
|
|
set_artifact_description = love_memento_desc
|
|
}
|
|
}
|
|
}
|
|
create_character_memory = {
|
|
type = wedding_night_trinket
|
|
participants = {
|
|
spouse_1 = root
|
|
spouse_2 = scope:my_spouse
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_character_artifact = {
|
|
artifact_slot_type = miscellaneous
|
|
this != scope:love_memento
|
|
}
|
|
}
|
|
random_character_artifact = {
|
|
limit = {
|
|
artifact_slot_type = miscellaneous
|
|
this != scope:love_memento
|
|
}
|
|
save_scope_as = my_love_memento
|
|
}
|
|
}
|
|
add_character_flag = is_naked
|
|
scope:my_spouse = {
|
|
add_character_flag = is_naked
|
|
}
|
|
}
|
|
|
|
#I shall cherish this
|
|
option = {
|
|
name = ep2_wedding.3030.a
|
|
#get a bonus to court schemes targetting them
|
|
custom_tooltip = ep2_wedding.3030.a.tt
|
|
set_variable = {
|
|
name = wnight_court_memento_var
|
|
value = scope:my_spouse
|
|
}
|
|
custom_tooltip = ep2_wedding.3030.artifact_tt
|
|
scope:love_memento = {
|
|
add_artifact_history = {
|
|
type = given
|
|
actor = scope:my_spouse
|
|
recipient = root
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:my_spouse
|
|
}
|
|
else = {
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = romance_opinion
|
|
opinion = 10
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_activity_intent = reduce_stress_intent
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
paranoid = minor_stress_impact_gain
|
|
}
|
|
}
|
|
else = {
|
|
stress_impact = {
|
|
paranoid = medium_stress_impact_gain
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = lustful
|
|
has_trait = paranoid
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#I shall cherish /you/
|
|
option = {
|
|
name = ep2_wedding.3030.b
|
|
#get a bonus to seduce schemes targetting them
|
|
custom_tooltip = ep2_wedding.3030.b.tt
|
|
set_variable = {
|
|
name = wnight_seduce_memento_var
|
|
value = scope:my_spouse
|
|
}
|
|
custom_tooltip = ep2_wedding.3030.artifact_tt
|
|
scope:love_memento = {
|
|
add_artifact_history = {
|
|
type = given
|
|
actor = scope:my_spouse
|
|
recipient = root
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:my_spouse
|
|
}
|
|
else = {
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = romance_opinion
|
|
opinion = 10
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_gain
|
|
paranoid = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = paranoid
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#I have something for you too!
|
|
option = {
|
|
name = ep2_wedding.3030.c
|
|
trigger = {
|
|
exists = scope:my_love_memento
|
|
}
|
|
scope:love_memento = { set_owner = root }
|
|
scope:my_love_memento = { set_owner = scope:my_spouse }
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_very_good_fertility = scope:my_spouse
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
NOT = { has_relation_lover = scope:my_spouse }
|
|
}
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
REASON = lover_wnight_gifts
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
else = {
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = romance_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
greedy = medium_stress_impact_gain
|
|
lustful = medium_stress_impact_gain
|
|
paranoid = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = greedy
|
|
has_trait = lustful
|
|
has_trait = paranoid
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Reject it
|
|
option = {
|
|
name = ep2_wedding.3030.d
|
|
trigger = {
|
|
has_trait = paranoid
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:my_spouse
|
|
}
|
|
else = {
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = insult_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
after = {
|
|
remove_character_flag = is_naked
|
|
scope:my_spouse = {
|
|
remove_character_flag = is_naked
|
|
}
|
|
}
|
|
}
|
|
|
|
# Your spouse and you are having a nice time when the bed catches fire
|
|
|
|
ep2_wedding.3040 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3040.t
|
|
desc = ep2_wedding.3040.desc
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = brave
|
|
has_trait = reckless
|
|
}
|
|
}
|
|
animation = anger
|
|
}
|
|
animation = fear
|
|
}
|
|
right_portrait = {
|
|
character = scope:my_spouse
|
|
animation = shock
|
|
}
|
|
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = { #you are one of the spouses
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_decoration
|
|
option = wedding_decoration_bad
|
|
}
|
|
}
|
|
#This is to check if you've been cheap in general
|
|
OR = {
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_entertainment
|
|
option = wedding_entertainment_bad
|
|
}
|
|
}
|
|
scope:activity = {
|
|
has_activity_option = {
|
|
category = wedding_option_food
|
|
option = wedding_food_bad
|
|
}
|
|
}
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
root = scope:activity.special_guest:spouse_1
|
|
}
|
|
#the other spouse likes you at least a tiny bit so you were having fun before the fire
|
|
scope:activity.special_guest:spouse_2 = {
|
|
OR = {
|
|
has_any_good_relationship_with_root_trigger = yes
|
|
opinion = {
|
|
target = root
|
|
value >= 0
|
|
}
|
|
}
|
|
is_attracted_to_gender_of = root
|
|
}
|
|
# And you like them too
|
|
root = {
|
|
is_attracted_to_gender_of = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
trigger_else = {
|
|
#the other spouse likes you at least a tiny bit so you were having fun before the fire
|
|
scope:activity.special_guest:spouse_1 = {
|
|
OR = {
|
|
has_any_good_relationship_with_root_trigger = yes
|
|
opinion = {
|
|
target = root
|
|
value >= 0
|
|
}
|
|
}
|
|
is_attracted_to_gender_of = root
|
|
}
|
|
# And you like them too
|
|
root = {
|
|
is_attracted_to_gender_of = scope:activity.special_guest:spouse_1
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
add = 1
|
|
has_trait = reckless #you wouldn't pay attention to the candles
|
|
}
|
|
modifier = {
|
|
scope:activity.special_guest:spouse_1 = {
|
|
has_relation_lover = scope:activity.special_guest:spouse_2
|
|
}
|
|
add = 1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
if = {
|
|
limit = {
|
|
scope:activity.special_guest:spouse_1 = { this != root }
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_2 = {
|
|
save_scope_as = my_spouse
|
|
}
|
|
}
|
|
add_character_flag = is_naked
|
|
scope:my_spouse = {
|
|
add_character_flag = is_naked
|
|
}
|
|
}
|
|
|
|
#Save them!
|
|
option = {
|
|
name = ep2_wedding.3040.a
|
|
duel = {
|
|
skill = prowess
|
|
value = average_skill_rating
|
|
50 = { #you save them
|
|
desc = ep2_wedding.3040.a.success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 0.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3040.a.success
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
}
|
|
}
|
|
50 = { #you get injured
|
|
desc = ep2_wedding.3040.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3040.a.failure
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
increase_wounds_no_death_effect = { REASON = fire }
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:my_spouse
|
|
}
|
|
else = {
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = grateful_opinion
|
|
opinion = 5
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
callous = minor_stress_impact_gain
|
|
sadistic = minor_stress_impact_gain
|
|
craven = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = callous
|
|
has_trait = sadistic
|
|
has_trait = craven
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Save yourself
|
|
option = {
|
|
name = ep2_wedding.3040.b
|
|
random_list = {
|
|
50 = { #spouse saves themselves
|
|
desc = ep2_wedding.3040.b.success
|
|
show_chance = no
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3040.b.success
|
|
left_icon = scope:my_spouse
|
|
}
|
|
}
|
|
50 = { #spouse gets injured
|
|
desc = ep2_wedding.3040.b.failure
|
|
show_chance = no
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3040.b.failure
|
|
left_icon = scope:my_spouse
|
|
scope:my_spouse = {
|
|
increase_wounds_no_death_effect = { REASON = fire }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:my_spouse
|
|
}
|
|
else = {
|
|
scope:my_spouse = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = disappointed_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = minor_stress_impact_gain
|
|
just = minor_stress_impact_gain
|
|
brave = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = just
|
|
has_trait = brave
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#MY BODY IS MY WEAPON
|
|
option = {
|
|
name = ep2_wedding.3040.c
|
|
trigger = { has_lifestyle = martial_lifestyle }
|
|
duel = {
|
|
skill = prowess
|
|
value = average_skill_rating
|
|
70 = { #you save them
|
|
desc = ep2_wedding.3040.c.success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 0.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3040.c.success
|
|
left_icon = root
|
|
add_prowess_skill = 1
|
|
}
|
|
}
|
|
30 = { #you get injured
|
|
desc = ep2_wedding.3040.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3040.a.failure
|
|
left_icon = root
|
|
increase_wounds_no_death_effect = { REASON = fire }
|
|
add_prestige = minor_prestige_loss
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = tourney_participant
|
|
has_trait_xp = {
|
|
trait = tourney_participant
|
|
track = foot
|
|
value < 100
|
|
}
|
|
}
|
|
add_trait_xp = {
|
|
trait = tourney_participant
|
|
track = foot
|
|
value = tournament_hastiludes_xp_gain_medium_value
|
|
}
|
|
}
|
|
else = {
|
|
add_martial_lifestyle_xp = medium_lifestyle_xp
|
|
}
|
|
#no fertility gain because you're doing for yourself
|
|
stress_impact = {
|
|
callous = medium_stress_impact_gain
|
|
sadistic = medium_stress_impact_gain
|
|
craven = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = brave
|
|
has_trait = reckless
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 1.5
|
|
has_lifestyle = martial_lifestyle
|
|
}
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = craven
|
|
has_trait = callous
|
|
has_trait = sadistic
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Are you trying to kill your spouse?
|
|
option = {
|
|
name = ep2_wedding.3040.d
|
|
flavor = ep2_wedding.3040.d.flavor
|
|
trigger = {
|
|
has_activity_intent = murder_attendee_intent
|
|
scope:my_spouse = { is_ai = yes }
|
|
intent_target = scope:my_spouse
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
random_list = {
|
|
50 = { #spouse saves themselves
|
|
desc = ep2_wedding.3040.d.success
|
|
show_chance = no
|
|
send_interface_toast = { #but they know
|
|
title = ep2_wedding.3040.d.success
|
|
left_icon = scope:my_spouse
|
|
attempted_murder_opinion_effect = {
|
|
VICTIM = scope:my_spouse
|
|
MURDERER = root
|
|
}
|
|
add_secret = {
|
|
type = secret_murder_attempt
|
|
target = scope:my_spouse
|
|
}
|
|
}
|
|
}
|
|
50 = { #spouse dies
|
|
desc = ep2_wedding.3040.d.failure
|
|
show_chance = no
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3040.d.failure
|
|
left_icon = scope:my_spouse
|
|
custom_tooltip = ep2_wedding.wedding_intent.success.tt
|
|
unknown_murder_effect = {
|
|
VICTIM = scope:my_spouse
|
|
MURDERER = root
|
|
REASON = death_burned
|
|
}
|
|
set_variable = just_widowed_var
|
|
complete_activity_intent = yes
|
|
}
|
|
give_nickname = nick_the_just_widowed
|
|
}
|
|
}
|
|
}
|
|
after = {
|
|
remove_character_flag = is_naked
|
|
scope:my_spouse = {
|
|
remove_character_flag = is_naked
|
|
}
|
|
}
|
|
}
|
|
|
|
# Non-spouse: Use the Wedding Night phase where almost no one is around to kill your target
|
|
# episode 1: CHANDELIER EXTRAVAGANZA
|
|
|
|
ep2_wedding.3050 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3050.t
|
|
desc = ep2_wedding.3050.desc
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = scheme
|
|
}
|
|
right_portrait = {
|
|
character = scope:intent_victim
|
|
animation = drink_goblet
|
|
}
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
NOR = { #you are not one of the spouses
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
has_activity_intent = murder_attendee_intent #you're trying to kill someone
|
|
intent_target = { is_alive = yes } #they're not dead yet
|
|
intent_target = { #you're not trying to kill the spouses
|
|
NOR = {
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = callous
|
|
has_trait = deceitful
|
|
has_trait = sadistic
|
|
}
|
|
}
|
|
modifier = { #more likely for them to stay behind
|
|
factor = 1.5
|
|
intent_target ?= {
|
|
OR = {
|
|
has_trait = drunkard
|
|
has_trait = gregarious
|
|
has_trait = lifestyle_reveler
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
intent_target = { save_scope_as = intent_victim }
|
|
}
|
|
|
|
#Kill them immediately
|
|
option = {
|
|
name = ep2_wedding.3050.a
|
|
duel = {
|
|
skill = prowess
|
|
value = average_skill_rating
|
|
70 = { #you kill them
|
|
desc = ep2_wedding.3050.a.success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3050.a.success
|
|
left_icon = scope:intent_victim
|
|
custom_tooltip = ep2_wedding.wedding_intent.success.tt
|
|
unknown_murder_effect = {
|
|
VICTIM = scope:intent_victim
|
|
MURDERER = root
|
|
REASON = death_accident
|
|
}
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
30 = { #they catch you
|
|
desc = ep2_wedding.3050.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3050.a.failure
|
|
left_icon = root
|
|
right_icon = scope:intent_victim
|
|
attempted_murder_opinion_effect = {
|
|
VICTIM = scope:intent_victim
|
|
MURDERER = root
|
|
}
|
|
add_secret = {
|
|
type = secret_murder_attempt
|
|
target = scope:intent_victim
|
|
}
|
|
random_secret = {
|
|
type = secret_murder_attempt
|
|
limit = {
|
|
secret_target = scope:intent_victim
|
|
}
|
|
expose_secret = scope:intent_victim
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
craven = medium_stress_impact_gain
|
|
patient = medium_stress_impact_gain
|
|
compassionate = medium_stress_impact_gain
|
|
deceitful = medium_stress_impact_gain
|
|
calm = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = craven
|
|
has_trait = patient
|
|
has_trait = compassionate
|
|
has_trait = deceitful
|
|
has_trait = calm
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Use the chandelier
|
|
option = {
|
|
name = ep2_wedding.3050.b
|
|
duel = {
|
|
skill = intrigue
|
|
value = average_skill_rating
|
|
40 = { #you kill them
|
|
desc = ep2_wedding.3050.b.success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3050.b.success
|
|
left_icon = scope:intent_victim
|
|
custom_tooltip = ep2_wedding.wedding_intent.success.tt
|
|
unknown_murder_effect = {
|
|
VICTIM = scope:intent_victim
|
|
MURDERER = root
|
|
REASON = death_accident
|
|
}
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
60 = { #they suspect
|
|
desc = ep2_wedding.3050.b.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3050.b.failure
|
|
left_icon = root
|
|
right_icon = scope:intent_victim
|
|
scope:intent_victim = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = suspicion_opinion
|
|
opinion = -5
|
|
}
|
|
}
|
|
add_secret = {
|
|
type = secret_murder_attempt
|
|
target = scope:intent_victim
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
wrathful = medium_stress_impact_gain
|
|
vengeful = medium_stress_impact_gain
|
|
craven = medium_stress_impact_gain
|
|
compassionate = medium_stress_impact_gain
|
|
impatient = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = wrathful
|
|
has_trait = vengeful
|
|
has_trait = craven
|
|
has_trait = compassionate
|
|
has_trait = impatient
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Not now, not now...
|
|
option = {
|
|
name = ep2_wedding.3050.c
|
|
custom_tooltip = ep2_wedding.3050.c.tt
|
|
set_variable = {
|
|
name = wnight_chandelier_murder_var
|
|
value = scope:intent_victim
|
|
}
|
|
stress_impact = {
|
|
wrathful = medium_stress_impact_gain
|
|
impatient = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = wrathful
|
|
has_trait = impatient
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Either you or spouse doesn't want to take part in bedding ceremony
|
|
|
|
scripted_trigger ep2_wedding_3200_is_shy_trigger = {
|
|
OR = {
|
|
has_trait = shy
|
|
has_trait = reclusive
|
|
has_trait = craven
|
|
has_trait = paranoid
|
|
}
|
|
NOT = { has_trait = gregarious }
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_bedding_ceremony_witness_trigger = {
|
|
is_adult = yes
|
|
NOR = {
|
|
this = root
|
|
this = scope:my_spouse
|
|
scope:bedding_witness_1 ?= this
|
|
scope:bedding_witness_2 ?= this
|
|
}
|
|
OR = {
|
|
scope:host.cp:councillor_court_chaplain ?= this
|
|
is_close_family_of = root
|
|
is_close_family_of = scope:my_spouse
|
|
has_relation_friend = root
|
|
has_relation_friend = scope:my_spouse
|
|
any_court_position_employer = { this = root }
|
|
any_court_position_employer = { this = scope:my_spouse }
|
|
}
|
|
}
|
|
|
|
scripted_effect ep2_wedding_bedding_ceremony_witness_effect = {
|
|
hidden_effect = {
|
|
while = {
|
|
count = 3
|
|
scope:activity = {
|
|
if = {
|
|
limit = {
|
|
any_attending_character = { ep2_wedding_bedding_ceremony_witness_trigger = yes }
|
|
}
|
|
random_attending_character = {
|
|
limit = { ep2_wedding_bedding_ceremony_witness_trigger = yes }
|
|
weight = {
|
|
base = 1
|
|
modifier = {
|
|
scope:host.cp:councillor_court_chaplain ?= this
|
|
add = 1000
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_reveler
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = 25
|
|
}
|
|
is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root }
|
|
is_of_minor_interest_to_weight_up_modifier = { CHARACTER = scope:my_spouse }
|
|
is_of_major_interest_to_weight_up_modifier = { CHARACTER = root }
|
|
is_of_major_interest_to_weight_up_modifier = { CHARACTER = scope:my_spouse }
|
|
}
|
|
if = {
|
|
limit = { exists = scope:bedding_witness_2 }
|
|
save_scope_as = bedding_witness_3
|
|
}
|
|
else_if = {
|
|
limit = { exists = scope:bedding_witness_1 }
|
|
save_scope_as = bedding_witness_2
|
|
}
|
|
else = { save_scope_as = bedding_witness_1 }
|
|
add_to_list = bedding_witnesses
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.3200 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3200.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = { scope:shy_both ?= this }
|
|
desc = ep2_wedding.3200.both
|
|
}
|
|
triggered_desc = {
|
|
trigger = { scope:shy_spouse ?= this }
|
|
desc = ep2_wedding.3200.self
|
|
}
|
|
desc = ep2_wedding.3200.other
|
|
}
|
|
}
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
outfit_tags = { nightgown }
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
scope:shy_spouse ?= this
|
|
exists = scope:shy_both
|
|
}
|
|
}
|
|
animation = worry
|
|
}
|
|
animation = disapproval
|
|
}
|
|
right_portrait = {
|
|
character = scope:my_spouse
|
|
outfit_tags = { nightgown }
|
|
triggered_animation = {
|
|
trigger = { scope:shy_spouse ?= this }
|
|
animation = worry
|
|
}
|
|
triggered_animation = {
|
|
trigger = { exists = scope:shy_both }
|
|
animation = stress
|
|
}
|
|
animation = disapproval
|
|
}
|
|
lower_left_portrait = scope:bedding_witness_1
|
|
lower_center_portrait = scope:bedding_witness_2
|
|
lower_right_portrait = scope:bedding_witness_3
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = { #you are one of the spouses
|
|
scope:activity.special_guest:spouse_1 ?= this
|
|
scope:activity.special_guest:spouse_2 ?= this
|
|
}
|
|
OR = {
|
|
scope:activity.special_guest:spouse_1 ?= {
|
|
NOT = { has_trait = gregarious }
|
|
}
|
|
scope:activity.special_guest:spouse_2 ?= {
|
|
NOT = { has_trait = gregarious }
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
factor = 2
|
|
scope:activity.special_guest:spouse_1 = { ep2_wedding_3200_is_shy_trigger = yes }
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
scope:activity.special_guest:spouse_2 = { ep2_wedding_3200_is_shy_trigger = yes }
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
# Identify root
|
|
if = {
|
|
limit = { root = scope:activity.special_guest:spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = my_spouse }
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = my_spouse }
|
|
}
|
|
# Determine shy beddiness
|
|
if = {
|
|
limit = {
|
|
ep2_wedding_3200_is_shy_trigger = yes
|
|
scope:my_spouse = { ep2_wedding_3200_is_shy_trigger = yes }
|
|
}
|
|
save_scope_as = shy_both
|
|
}
|
|
else_if = {
|
|
limit = { ep2_wedding_3200_is_shy_trigger = yes }
|
|
save_scope_as = shy_spouse
|
|
}
|
|
else = {
|
|
scope:my_spouse = { save_scope_as = shy_spouse }
|
|
}
|
|
# Save witnesses
|
|
ep2_wedding_bedding_ceremony_witness_effect = yes
|
|
}
|
|
|
|
#Bar the doors
|
|
option = {
|
|
name = ep2_wedding.3200.a
|
|
flavor = ep2_wedding.3200.a.flavor
|
|
trigger = {
|
|
# Has door privileges
|
|
OR = {
|
|
location.county.holder = root
|
|
highest_held_title_tier > scope:my_spouse.highest_held_title_tier
|
|
}
|
|
}
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_barred_bedding_log
|
|
character = root
|
|
target = scope:my_spouse
|
|
|
|
# Effect
|
|
root = {
|
|
add_character_modifier = {
|
|
modifier = wedding_barred_doors_modifier
|
|
years = 5
|
|
}
|
|
if = {
|
|
limit = { scope:shy_spouse ?= this }
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_barred_bedding_doors_opinion
|
|
opinion = -20
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 5
|
|
}
|
|
}
|
|
else = {
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_barred_bedding_doors_opinion
|
|
opinion = 20
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 75
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
every_in_list = {
|
|
list = bedding_witnesses
|
|
custom = ep2_wedding_witnesses_tt
|
|
add_opinion = {
|
|
target = root
|
|
modifier = wedding_barred_bedding_doors_opinion
|
|
opinion = -10
|
|
}
|
|
if = {
|
|
limit = { exists = scope:shy_both }
|
|
add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_barred_bedding_doors_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
shy = minor_stress_impact_loss
|
|
reclusive = minor_stress_impact_loss
|
|
paranoid = minor_stress_impact_loss
|
|
craven = minor_stress_impact_loss
|
|
compassionate = minor_stress_impact_loss
|
|
gregarious = miniscule_stress_impact_gain
|
|
trusting = miniscule_stress_impact_gain
|
|
brave = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = 0.5
|
|
ai_boldness = 1
|
|
ai_sociability = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Convince to bar
|
|
option = {
|
|
name = ep2_wedding.3200.c
|
|
trigger = {
|
|
OR = {
|
|
scope:shy_spouse ?= this
|
|
exists = scope:shy_both
|
|
}
|
|
NOR = {
|
|
location.county.holder = root
|
|
highest_held_title_tier > scope:my_spouse.highest_held_title_tier
|
|
}
|
|
}
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:my_spouse
|
|
40 = { #they accept
|
|
desc = ep2_wedding.3200.c.success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
exists = scope:shy_both
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3200.c.success
|
|
left_icon = scope:my_spouse
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = wedding_barred_bedding_log
|
|
character = root
|
|
target = scope:my_spouse
|
|
|
|
# Effect
|
|
root = {
|
|
add_character_modifier = {
|
|
modifier = wedding_barred_doors_modifier
|
|
years = 5
|
|
}
|
|
if = {
|
|
limit = { scope:shy_spouse ?= this }
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_barred_bedding_doors_opinion
|
|
opinion = 10
|
|
}
|
|
}
|
|
else = {
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_barred_bedding_doors_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 25
|
|
}
|
|
}
|
|
}
|
|
}
|
|
every_in_list = {
|
|
list = bedding_witnesses
|
|
custom = ep2_wedding_witnesses_tt
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_barred_bedding_doors_opinion
|
|
opinion = -10
|
|
}
|
|
if = {
|
|
limit = { exists = scope:shy_both }
|
|
add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_barred_bedding_doors_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
shy = minor_stress_impact_loss
|
|
reclusive = medium_stress_impact_loss
|
|
paranoid = minor_stress_impact_loss
|
|
craven = minor_stress_impact_loss
|
|
}
|
|
}
|
|
}
|
|
60 = { #they refuse
|
|
desc = ep2_wedding.3200.c.failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3200.c.failure
|
|
left_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_forced_bedding_ceremony_opinion
|
|
opinion = -10
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 5
|
|
}
|
|
stress_impact = {
|
|
shy = miniscule_stress_impact_gain
|
|
reclusive = minor_stress_impact_gain
|
|
paranoid = miniscule_stress_impact_gain
|
|
craven = miniscule_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = 1
|
|
ai_boldness = 0.5
|
|
ai_sociability = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Convince to take part
|
|
option = {
|
|
name = ep2_wedding.3200.d
|
|
trigger = {
|
|
NOT = { scope:shy_spouse ?= root }
|
|
}
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:my_spouse
|
|
40 = { #
|
|
desc = ep2_wedding.3200.d.success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3200.d.success
|
|
left_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_caved_to_bedding_opinion
|
|
opinion = 10
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 75
|
|
}
|
|
}
|
|
}
|
|
60 = { #
|
|
desc = ep2_wedding.3200.d.failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3200.d.failure
|
|
left_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_forced_bedding_ceremony_opinion
|
|
opinion = -10
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
stubborn = miniscule_stress_impact_gain
|
|
compassionate = minor_stress_impact_loss
|
|
callous = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = 0.5
|
|
ai_boldness = 0.5
|
|
ai_sociability = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Force to take part
|
|
option = {
|
|
name = ep2_wedding.3200.e
|
|
trigger = { scope:shy_spouse ?= scope:my_spouse }
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_forced_bedding_ceremony_opinion
|
|
opinion = -10
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 20
|
|
}
|
|
stress_impact = {
|
|
gregarious = medium_stress_impact_loss
|
|
zealous = medium_stress_impact_loss
|
|
diligent = medium_stress_impact_loss
|
|
callous = minor_stress_impact_loss
|
|
fickle = miniscule_stress_impact_gain
|
|
compassionate = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = -0.5
|
|
ai_boldness = 0.5
|
|
ai_sociability = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Do your duty
|
|
option = {
|
|
name = ep2_wedding.3200.b
|
|
trigger = { scope:shy_spouse ?= this }
|
|
if = {
|
|
limit = {
|
|
NOT = { exists = scope:shy_both }
|
|
}
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = wedding_caved_to_bedding_opinion
|
|
opinion = 20
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:my_spouse
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 20
|
|
}
|
|
stress_impact = {
|
|
shy = minor_stress_impact_gain
|
|
reclusive = minor_stress_impact_gain
|
|
paranoid = minor_stress_impact_gain
|
|
craven = minor_stress_impact_gain
|
|
gregarious = medium_stress_impact_loss
|
|
zealous = medium_stress_impact_loss
|
|
diligent = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_boldness = -1
|
|
ai_sociability = 0.5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
scripted_trigger wedding_3300_flavor_character_trigger = {
|
|
is_participant_in_activity = scope:activity
|
|
NOR = {
|
|
this = scope:my_spouse
|
|
this = root
|
|
}
|
|
}
|
|
|
|
ep2_wedding.3300 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3300.t
|
|
desc = {
|
|
desc = ep2_wedding.3300.opening
|
|
# Ceremony flavor 1
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:officiant ?= { is_clergy = yes }
|
|
}
|
|
desc = ep2_wedding.3300.blessing
|
|
}
|
|
triggered_desc = {
|
|
trigger = { exists = scope:officiant }
|
|
desc = ep2_wedding.3300.decorate
|
|
}
|
|
desc = ep2_wedding.3300.flowers
|
|
}
|
|
# Ceremony flavor 2
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
drinks_alcohol_trigger = yes
|
|
scope:my_spouse = { drinks_alcohol_trigger = yes }
|
|
}
|
|
desc = ep2_wedding.3300.wine
|
|
}
|
|
desc = ep2_wedding.3300.anointing
|
|
}
|
|
# Spouse flavor
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = { has_relation_lover = scope:my_spouse }
|
|
desc = ep2_wedding.3300.lover
|
|
}
|
|
triggered_desc = {
|
|
trigger = { has_relation_friend = scope:my_spouse }
|
|
desc = ep2_wedding.3300.friend
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_relation_rival = scope:my_spouse
|
|
reverse_opinion = { target = scope:my_spouse value < -50 }
|
|
}
|
|
}
|
|
desc = ep2_wedding.3300.hatred
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_relation_rival = scope:my_spouse
|
|
reverse_opinion = { target = scope:my_spouse value < -10 }
|
|
}
|
|
}
|
|
desc = ep2_wedding.3300.unfriendly
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_relation_rival = scope:my_spouse
|
|
reverse_opinion = { target = scope:my_spouse value >= 25 }
|
|
}
|
|
}
|
|
desc = ep2_wedding.3300.friendly
|
|
}
|
|
desc = ep2_wedding.3300.polite
|
|
}
|
|
# Party flavor
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = { scope:jester.employer ?= root }
|
|
desc = ep2_wedding.3300.jester_self
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:jester
|
|
scope:jester.employer != root
|
|
}
|
|
desc = ep2_wedding.3300.jester
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:friend ?= { has_relation_friend = root }
|
|
}
|
|
desc = ep2_wedding.3300.other_friend_self
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:friend
|
|
NOT = {
|
|
scope:friend = { has_relation_friend = root }
|
|
}
|
|
}
|
|
desc = ep2_wedding.3300.other_friend
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_spouse ?= { is_spouse_of = root }
|
|
}
|
|
desc = ep2_wedding.3300.other_spouse_self
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:other_spouse
|
|
NOT = {
|
|
scope:other_spouse ?= { is_spouse_of = root }
|
|
}
|
|
}
|
|
desc = ep2_wedding.3300.other_spouse
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:family ?= { is_close_family_of = root }
|
|
}
|
|
desc = ep2_wedding.3300.family_self
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:family ?= { is_close_family_of = scope:my_spouse }
|
|
}
|
|
desc = ep2_wedding.3300.family
|
|
}
|
|
desc = ep2_wedding.3300.fallback
|
|
}
|
|
}
|
|
theme = wedding_night_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_relation_rival = scope:my_spouse
|
|
opinion = { target = scope:my_spouse value < -50 }
|
|
}
|
|
}
|
|
animation = dismissal
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_relation_lover = scope:my_spouse
|
|
opinion = { target = scope:my_spouse value >= 25 }
|
|
}
|
|
}
|
|
animation = flirtation_left
|
|
}
|
|
animation = idle
|
|
}
|
|
right_portrait = {
|
|
character = scope:my_spouse
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_relation_rival = root
|
|
opinion = { target = root value < -10 }
|
|
}
|
|
}
|
|
animation = disapproval
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_relation_lover = root
|
|
opinion = { target = root value >= 25 }
|
|
}
|
|
}
|
|
animation = flirtation
|
|
}
|
|
animation = idle
|
|
}
|
|
lower_left_portrait = scope:bedding_witness_1
|
|
lower_center_portrait = scope:bedding_witness_2
|
|
lower_right_portrait = scope:bedding_witness_3
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
OR = { #you are one of the spouses
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
# Identify root
|
|
if = {
|
|
limit = { root = scope:activity.special_guest:spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = my_spouse }
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = my_spouse }
|
|
}
|
|
# Save witnesses
|
|
ep2_wedding_bedding_ceremony_witness_effect = yes
|
|
# Save officiant
|
|
if = {
|
|
limit = {
|
|
scope:host.cp:councillor_court_chaplain ?= { is_participant_in_activity = scope:activity }
|
|
}
|
|
scope:host.cp:councillor_court_chaplain = { save_scope_as = officiant }
|
|
}
|
|
# Save jester
|
|
if = {
|
|
limit = {
|
|
employs_court_position = court_jester_court_position
|
|
court_position:court_jester_court_position ?= { wedding_3300_flavor_character_trigger = yes }
|
|
}
|
|
court_position:court_jester_court_position = { save_scope_as = jester }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:my_spouse = {
|
|
employs_court_position = court_jester_court_position
|
|
court_position:court_jester_court_position ?= { wedding_3300_flavor_character_trigger = yes }
|
|
}
|
|
}
|
|
scope:my_spouse.court_position:court_jester_court_position = { save_scope_as = jester }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:host = {
|
|
employs_court_position = court_jester_court_position
|
|
court_position:court_jester_court_position ?= { wedding_3300_flavor_character_trigger = yes }
|
|
}
|
|
}
|
|
scope:host.court_position:court_jester_court_position = { save_scope_as = jester }
|
|
}
|
|
# Save friend
|
|
if = {
|
|
limit = {
|
|
any_relation = {
|
|
type = friend
|
|
wedding_3300_flavor_character_trigger = yes
|
|
}
|
|
}
|
|
random_relation = {
|
|
type = friend
|
|
limit = { wedding_3300_flavor_character_trigger = yes }
|
|
weight = {
|
|
base = 1
|
|
modifier = { add = ai_sociability }
|
|
modifier = { add = ai_boldness }
|
|
}
|
|
save_scope_as = other_friend
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:my_spouse = {
|
|
any_relation = {
|
|
type = friend
|
|
wedding_3300_flavor_character_trigger = yes
|
|
}
|
|
}
|
|
}
|
|
scope:my_spouse = {
|
|
random_relation = {
|
|
type = friend
|
|
limit = { wedding_3300_flavor_character_trigger = yes }
|
|
weight = {
|
|
base = 1
|
|
modifier = { add = ai_sociability }
|
|
modifier = { add = ai_boldness }
|
|
}
|
|
save_scope_as = other_friend
|
|
}
|
|
}
|
|
}
|
|
# Save other spouse
|
|
if = {
|
|
limit = {
|
|
any_spouse = { wedding_3300_flavor_character_trigger = yes }
|
|
}
|
|
random_spouse = {
|
|
limit = { wedding_3300_flavor_character_trigger = yes }
|
|
weight = {
|
|
base = 1
|
|
modifier = { add = ai_sociability }
|
|
modifier = { add = ai_boldness }
|
|
}
|
|
save_scope_as = other_spouse
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:my_spouse = {
|
|
any_spouse = { wedding_3300_flavor_character_trigger = yes }
|
|
}
|
|
}
|
|
scope:my_spouse = {
|
|
random_spouse = {
|
|
limit = { wedding_3300_flavor_character_trigger = yes }
|
|
weight = {
|
|
base = 1
|
|
modifier = { add = ai_sociability }
|
|
modifier = { add = ai_boldness }
|
|
}
|
|
save_scope_as = other_spouse
|
|
}
|
|
}
|
|
}
|
|
# Save family
|
|
random_list = {
|
|
10 = {
|
|
trigger = {
|
|
any_in_list = {
|
|
list = bedding_witnesses
|
|
is_close_family_of = root
|
|
}
|
|
}
|
|
random_in_list = {
|
|
list = bedding_witnesses
|
|
limit = { is_close_family_of = root }
|
|
weight = {
|
|
base = 1
|
|
modifier = { add = ai_sociability }
|
|
modifier = { add = ai_boldness }
|
|
}
|
|
save_scope_as = family
|
|
}
|
|
}
|
|
10 = {
|
|
trigger = {
|
|
any_in_list = {
|
|
list = bedding_witnesses
|
|
is_close_family_of = scope:my_spouse
|
|
}
|
|
}
|
|
random_in_list = {
|
|
list = bedding_witnesses
|
|
limit = { is_close_family_of = scope:my_spouse }
|
|
weight = {
|
|
base = 1
|
|
modifier = { add = ai_sociability }
|
|
modifier = { add = ai_boldness }
|
|
}
|
|
save_scope_as = family
|
|
}
|
|
}
|
|
}
|
|
# Save scopes for portraits
|
|
if = {
|
|
limit = {
|
|
exists = scope:jester
|
|
scope:jester != scope:bedding_witness_1
|
|
}
|
|
scope:jester = { save_scope_as = bedding_witness_1 }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
exists = scope:other_friend
|
|
scope:other_friend != scope:bedding_witness_1
|
|
}
|
|
scope:other_friend = { save_scope_as = bedding_witness_1 }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
exists = scope:other_spouse
|
|
scope:other_spouse != scope:bedding_witness_1
|
|
}
|
|
scope:other_spouse = { save_scope_as = bedding_witness_1 }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
exists = scope:family
|
|
scope:family != scope:bedding_witness_1
|
|
}
|
|
scope:family = { save_scope_as = bedding_witness_1 }
|
|
}
|
|
add_character_flag = is_naked
|
|
scope:my_spouse = {
|
|
add_character_flag = is_naked
|
|
}
|
|
}
|
|
|
|
#Hurry up!
|
|
option = {
|
|
name = ep2_wedding.3300.a
|
|
random_list = {
|
|
1 = {
|
|
desc = ep2_wedding.3300.a.success
|
|
opinion_modifier = {
|
|
who = scope:my_spouse
|
|
opinion_target = root
|
|
multiplier = 1
|
|
}
|
|
modifier = { add = attraction }
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = trusting }
|
|
factor = 1.5
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = humble }
|
|
factor = 1.5
|
|
}
|
|
min = 5
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3300.a.success
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = feast_had_good_time_together_opinion
|
|
opinion = 10
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:my_spouse
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 75
|
|
}
|
|
}
|
|
}
|
|
1 = {
|
|
desc = ep2_wedding.3300.a.failure
|
|
opinion_modifier = {
|
|
who = scope:my_spouse
|
|
opinion_target = root
|
|
multiplier = -1
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = paranoid }
|
|
factor = 1.5
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = arrogant }
|
|
factor = 1.5
|
|
}
|
|
min = 5
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3300.a.failure
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = disgusted_opinion
|
|
opinion = -10
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:my_spouse
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
impatient = minor_stress_impact_loss
|
|
rakish = minor_stress_impact_loss
|
|
lustful = minor_stress_impact_loss
|
|
chaste = miniscule_stress_impact_gain
|
|
humble = miniscule_stress_impact_gain
|
|
craven = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
opinion_modifier = {
|
|
opinion_target = scope:my_spouse
|
|
multiplier = 1
|
|
}
|
|
ai_value_modifier = {
|
|
ai_boldness = 1
|
|
ai_sociability = 1
|
|
ai_compassion = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
#Tired
|
|
option = {
|
|
name = ep2_wedding.3300.b
|
|
random_list = {
|
|
1 = {
|
|
desc = ep2_wedding.3300.b.success
|
|
opinion_modifier = {
|
|
who = scope:my_spouse
|
|
opinion_target = root
|
|
multiplier = 0.5
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = compassionate }
|
|
factor = 1.5
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = lustful }
|
|
factor = 1.5
|
|
}
|
|
min = 5
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3300.b.success
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = insulted_opinion
|
|
opinion = -10
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:my_spouse
|
|
}
|
|
}
|
|
}
|
|
1 = {
|
|
desc = ep2_wedding.3300.b.failure
|
|
opinion_modifier = {
|
|
who = scope:my_spouse
|
|
opinion_target = root
|
|
multiplier = -0.5
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = chaste }
|
|
factor = 1.5
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = callous }
|
|
factor = 1.5
|
|
}
|
|
min = 5
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3300.b.failure
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = relieved_opinion
|
|
opinion = 10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
callous = minor_stress_impact_loss
|
|
sadistic = minor_stress_impact_loss
|
|
compassionate = miniscule_stress_impact_gain
|
|
lustful = miniscule_stress_impact_gain
|
|
rakish = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
opinion_modifier = {
|
|
opinion_target = scope:my_spouse
|
|
multiplier = -1
|
|
}
|
|
ai_value_modifier = {
|
|
ai_boldness = 0.5
|
|
ai_compassion = -1
|
|
ai_sociability = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Need more wine
|
|
option = {
|
|
name = ep2_wedding.3300.c
|
|
trigger = { drinks_alcohol_trigger = yes }
|
|
random_list = {
|
|
1 = {
|
|
opinion_modifier = {
|
|
who = scope:my_spouse
|
|
opinion_target = root
|
|
multiplier = 0.25
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = gluttonous }
|
|
factor = 1.25
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = shy }
|
|
factor = 1.5
|
|
}
|
|
min = 5
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3300.c.success
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = relieved_opinion
|
|
opinion = 10
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:my_spouse
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 75
|
|
}
|
|
}
|
|
}
|
|
1 = {
|
|
opinion_modifier = {
|
|
who = scope:my_spouse
|
|
opinion_target = root
|
|
multiplier = -0.25
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { drinks_alcohol_trigger = no }
|
|
factor = 2
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = temperate }
|
|
factor = 1.5
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = gregarious }
|
|
factor = 1.5
|
|
}
|
|
min = 5
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3300.c.failure
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = insulted_opinion
|
|
opinion = -10
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:my_spouse
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
drunkard = minor_stress_impact_loss
|
|
honest = minor_stress_impact_loss
|
|
temperate = miniscule_stress_impact_gain
|
|
compassionate = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
opinion_modifier = {
|
|
opinion_target = scope:my_spouse
|
|
multiplier = -0.5
|
|
}
|
|
ai_value_modifier = {
|
|
ai_boldness = 0.5
|
|
ai_compassion = -0.5
|
|
ai_sociability = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
#I'll do it, but I won't like it
|
|
option = {
|
|
name = ep2_wedding.3300.d
|
|
trigger = {
|
|
OR = {
|
|
has_relation_rival = scope:my_spouse
|
|
opinion = {
|
|
target = scope:my_spouse
|
|
value < -10
|
|
}
|
|
}
|
|
}
|
|
random_list = {
|
|
1 = {
|
|
desc = ep2_wedding.3300.d.success
|
|
opinion_modifier = {
|
|
who = scope:my_spouse
|
|
opinion_target = root
|
|
multiplier = 0.5
|
|
}
|
|
modifier = { add = attraction }
|
|
modifier = { add = scope:my_spouse.attraction }
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = lustful }
|
|
factor = 1.5
|
|
}
|
|
min = 5
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3300.d.success
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = feast_had_good_time_together_opinion
|
|
opinion = 10
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_good_fertility = scope:my_spouse
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 75
|
|
}
|
|
}
|
|
}
|
|
1 = {
|
|
desc = ep2_wedding.3300.d.failure
|
|
opinion_modifier = {
|
|
who = scope:my_spouse
|
|
opinion_target = root
|
|
multiplier = -0.5
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = shy }
|
|
factor = 1.5
|
|
}
|
|
modifier = {
|
|
scope:my_spouse = { has_trait = chaste }
|
|
factor = 1.5
|
|
}
|
|
min = 5
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3300.d.failure
|
|
left_icon = root
|
|
right_icon = scope:my_spouse
|
|
reverse_add_opinion = {
|
|
target = scope:my_spouse
|
|
modifier = seduce_bad_time_opinion
|
|
opinion = -10
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:my_spouse = { has_any_fertility_relationship_with_root_trigger = no }
|
|
}
|
|
set_relation_wedding_bad_fertility = scope:my_spouse
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:my_spouse
|
|
PREGNANCY_CHANCE = 5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
ambitious = minor_stress_impact_loss
|
|
stubborn = minor_stress_impact_loss
|
|
fickle = miniscule_stress_impact_gain
|
|
arrogant = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
opinion_modifier = {
|
|
opinion_target = scope:my_spouse
|
|
multiplier = 0.5
|
|
}
|
|
ai_value_modifier = {
|
|
ai_honor = 0.5
|
|
ai_boldness = -0.5
|
|
ai_sociability = 0.5
|
|
}
|
|
}
|
|
}
|
|
after = {
|
|
remove_character_flag = is_naked
|
|
scope:my_spouse = {
|
|
remove_character_flag = is_naked
|
|
}
|
|
}
|
|
}
|
|
|
|
scripted_trigger wedding_3400_shared_trigger = {
|
|
is_adult = yes
|
|
is_participant_in_activity = scope:activity
|
|
NOR = {
|
|
this = root
|
|
has_any_scripted_relation = root
|
|
scope:activity.special_guest:spouse_1 ?= this
|
|
scope:activity.special_guest:spouse_2 ?= this
|
|
is_child_of = root
|
|
is_nibling_of = root
|
|
is_uncle_or_aunt_of = root
|
|
is_sibling_of = root
|
|
is_parent_of = root
|
|
is_grandparent_of = root
|
|
is_great_grandparent_of = root
|
|
is_grandchild_of = root
|
|
is_great_grandchild_of = root
|
|
}
|
|
}
|
|
|
|
scripted_trigger wedding_3400_suitor_trigger = {
|
|
age < 50
|
|
is_participant_in_activity = scope:activity
|
|
is_attracted_to_gender_of = $SUITOR$
|
|
age >= $SUITOR$.age_minus_25
|
|
age < $SUITOR$.age_plus_25
|
|
OR = {
|
|
is_married = no
|
|
allowed_more_spouses = yes
|
|
trigger_if = {
|
|
limit = { is_female = yes }
|
|
faith = { has_doctrine = doctrine_adultery_women_accepted }
|
|
root.faith = { has_doctrine = doctrine_adultery_women_accepted }
|
|
$SUITOR$.faith = { has_doctrine = doctrine_adultery_women_accepted }
|
|
|
|
}
|
|
trigger_else = {
|
|
faith = { has_doctrine = doctrine_adultery_men_accepted }
|
|
root.faith = { has_doctrine = doctrine_adultery_men_accepted }
|
|
$SUITOR$.faith = { has_doctrine = doctrine_adultery_men_accepted }
|
|
}
|
|
}
|
|
}
|
|
|
|
scripted_effect wedding_3400_save_relative_effect = {
|
|
save_scope_as = other_family_spouse
|
|
random_close_or_extended_family_member = {
|
|
limit = {
|
|
is_close_family_of = scope:other_family_spouse
|
|
wedding_3400_shared_trigger = yes
|
|
save_temporary_scope_as = other_relative_temp
|
|
}
|
|
alternative_limit = {
|
|
wedding_3400_shared_trigger = yes
|
|
save_temporary_scope_as = other_relative_temp
|
|
}
|
|
weight = {
|
|
base = 1
|
|
wedding_similiar_family_member_modifier = yes
|
|
modifier = {
|
|
add = 50
|
|
scope:my_family_spouse = {
|
|
any_close_family_member = {
|
|
wedding_3400_suitor_trigger = { SUITOR = scope:other_relative_temp }
|
|
save_temporary_scope_as = family_suitor_temp
|
|
}
|
|
}
|
|
wedding_3400_suitor_trigger = { SUITOR = scope:family_suitor_temp }
|
|
}
|
|
}
|
|
save_scope_as = other_family_relative
|
|
}
|
|
}
|
|
|
|
scripted_effect wedding_3400_knowledge_effect = {
|
|
random_list = {
|
|
0 = {
|
|
trigger = { diplomacy < $OTHER$.diplomacy }
|
|
modifier = { add = $OTHER$.diplomacy }
|
|
add_diplomacy_skill = 1
|
|
}
|
|
0 = {
|
|
trigger = { martial < $OTHER$.martial }
|
|
modifier = { add = $OTHER$.martial }
|
|
add_martial_skill = 1
|
|
}
|
|
0 = {
|
|
trigger = { stewardship < $OTHER$.stewardship }
|
|
modifier = { add = $OTHER$.stewardship }
|
|
add_stewardship_skill = 1
|
|
}
|
|
0 = {
|
|
trigger = { intrigue < $OTHER$.intrigue }
|
|
modifier = { add = $OTHER$.intrigue }
|
|
add_intrigue_skill = 1
|
|
}
|
|
0 = {
|
|
trigger = { learning < $OTHER$.learning }
|
|
modifier = { add = $OTHER$.learning }
|
|
add_learning_skill = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.3400 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3400.t
|
|
desc = {
|
|
desc = ep2_wedding.3400.opening
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = { drinks_alcohol_trigger = yes }
|
|
desc = ep2_wedding.3400.drink_self
|
|
}
|
|
triggered_desc = {
|
|
trigger = { can_be_hashishiyah = yes }
|
|
desc = ep2_wedding.3400.hashish_self
|
|
}
|
|
desc = ep2_wedding.3400.fallback_self
|
|
}
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_relative = { drinks_alcohol_trigger = yes }
|
|
}
|
|
desc = ep2_wedding.3400.drink
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_relative = { can_be_hashishiyah = yes }
|
|
}
|
|
desc = ep2_wedding.3400.hashish
|
|
}
|
|
desc = ep2_wedding.3400.fallback
|
|
}
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_relative = {
|
|
drinks_alcohol_trigger = yes
|
|
NOR = {
|
|
is_child_of = scope:my_family_spouse
|
|
is_sibling_of = scope:my_family_spouse
|
|
is_parent_of = scope:my_family_spouse
|
|
is_grandparent_of = scope:my_family_spouse
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3400.drink_family
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_relative = {
|
|
drinks_alcohol_trigger = no
|
|
NOR = {
|
|
is_child_of = scope:my_family_spouse
|
|
is_sibling_of = scope:my_family_spouse
|
|
is_parent_of = scope:my_family_spouse
|
|
is_grandparent_of = scope:my_family_spouse
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3400.family
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = house
|
|
exists = scope:other_family_relative.house
|
|
house != scope:other_family_relative.house
|
|
scope:other_family_relative = { drinks_alcohol_trigger = yes }
|
|
}
|
|
desc = ep2_wedding.3400.drink_house
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = house
|
|
exists = scope:other_family_relative.house
|
|
house != scope:other_family_relative.house
|
|
scope:other_family_relative = { drinks_alcohol_trigger = no }
|
|
}
|
|
desc = ep2_wedding.3400.house
|
|
}
|
|
}
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
drinks_alcohol_trigger = yes
|
|
NOT = { has_trait = temperate }
|
|
}
|
|
animation = drink_goblet
|
|
}
|
|
animation = happiness
|
|
}
|
|
right_portrait = {
|
|
character = scope:other_family_relative
|
|
triggered_animation = {
|
|
trigger = {
|
|
drinks_alcohol_trigger = yes
|
|
NOT = { has_trait = temperate }
|
|
}
|
|
animation = toast_goblet
|
|
}
|
|
animation = laugh
|
|
}
|
|
lower_right_portrait = scope:activity.special_guest:spouse_1
|
|
lower_center_portrait = scope:my_family_suitor
|
|
lower_left_portrait = scope:activity.special_guest:spouse_2
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
is_adult = yes
|
|
# Spouse 1 and 2 are not root
|
|
NOR = {
|
|
scope:activity.special_guest:spouse_1 = root
|
|
scope:activity.special_guest:spouse_2 = root
|
|
}
|
|
# Spouse 1 is related to root and someone related to Spouse 2 is kicking around
|
|
trigger_if = {
|
|
limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = {
|
|
any_close_or_extended_family_member = { wedding_3400_shared_trigger = yes }
|
|
}
|
|
}
|
|
# Spouse 2 is related to root and someone related to Spouse 1 is kicking around
|
|
trigger_else_if = {
|
|
limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_2 }
|
|
scope:activity.special_guest:spouse_1 = {
|
|
any_close_or_extended_family_member = { wedding_3400_shared_trigger = yes }
|
|
}
|
|
}
|
|
# No dice
|
|
trigger_else = { always = no }
|
|
}
|
|
|
|
immediate = {
|
|
# Save someone related to Spouse 2
|
|
save_scope_as = my_family_relative
|
|
if = {
|
|
limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 }
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = my_family_spouse }
|
|
scope:activity.special_guest:spouse_2 = { wedding_3400_save_relative_effect = yes }
|
|
}
|
|
# Save someone related to Spouse 1
|
|
else = {
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = my_family_spouse }
|
|
scope:activity.special_guest:spouse_1 = { wedding_3400_save_relative_effect = yes }
|
|
}
|
|
# Save suitor if relevant
|
|
if = {
|
|
limit = {
|
|
any_close_family_member = {
|
|
wedding_3400_suitor_trigger = { SUITOR = scope:other_family_relative }
|
|
save_temporary_scope_as = family_suitor_temp
|
|
}
|
|
scope:other_family_relative = {
|
|
wedding_3400_suitor_trigger = { SUITOR = scope:family_suitor_temp }
|
|
}
|
|
}
|
|
random_close_family_member = {
|
|
limit = {
|
|
wedding_3400_suitor_trigger = { SUITOR = scope:other_family_relative }
|
|
save_temporary_scope_as = family_suitor_temp
|
|
scope:other_family_relative = {
|
|
wedding_3400_suitor_trigger = { SUITOR = scope:family_suitor_temp }
|
|
}
|
|
}
|
|
weight = {
|
|
base = 1
|
|
modifier = {
|
|
add = 50
|
|
age >= scope:other_family_relative.age_minus_5
|
|
age < scope:other_family_relative.age_plus_5
|
|
}
|
|
modifier = {
|
|
add = 25
|
|
age >= scope:other_family_relative.age_minus_10
|
|
age < scope:other_family_relative.age_plus_10
|
|
}
|
|
modifier = { add = attraction }
|
|
}
|
|
save_scope_as = my_family_suitor
|
|
}
|
|
}
|
|
}
|
|
|
|
#Oh lemme bore you
|
|
option = {
|
|
name = ep2_wedding.3400.a
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3400.tt
|
|
left_icon = root
|
|
right_icon = scope:other_family_relative
|
|
wedding_3400_knowledge_effect = { OTHER = scope:other_family_relative }
|
|
scope:other_family_relative = {
|
|
wedding_3400_knowledge_effect = { OTHER = root }
|
|
}
|
|
}
|
|
stress_impact = {
|
|
ambitious = minor_stress_impact_loss
|
|
diligent = minor_stress_impact_loss
|
|
content = miniscule_stress_impact_gain
|
|
lazy = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_energy = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Family matchmaker
|
|
option = {
|
|
name = ep2_wedding.3400.b
|
|
trigger = { exists = scope:my_family_suitor }
|
|
random_list = {
|
|
10 = {
|
|
desc = ep2_wedding.3400.b.success
|
|
opinion_modifier = {
|
|
who = scope:my_family_suitor
|
|
opinion_target = scope:other_family_relative
|
|
multiplier = 0.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3400.b.tt
|
|
left_icon = scope:other_family_relative
|
|
right_icon = scope:my_family_suitor
|
|
scope:other_family_relative = {
|
|
progress_towards_lover_effect = {
|
|
CHARACTER = scope:my_family_suitor
|
|
REASON = lover_wedding_relation_suitor
|
|
OPINION = default_lover_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.3400.b.failure
|
|
opinion_modifier = {
|
|
who = scope:my_family_suitor
|
|
opinion_target = scope:other_family_relative
|
|
multiplier = -0.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3400.b.failure
|
|
left_icon = scope:other_family_relative
|
|
right_icon = scope:my_family_suitor
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = minor_stress_impact_loss
|
|
trusting = minor_stress_impact_loss
|
|
callous = miniscule_stress_impact_gain
|
|
paranoid = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
opinion_modifier = {
|
|
opinion_target = scope:my_family_suitor
|
|
multiplier = 0.5
|
|
}
|
|
opinion_modifier = {
|
|
opinion_target = scope:other_family_relative
|
|
multiplier = 0.5
|
|
}
|
|
ai_value_modifier = {
|
|
ai_compassion = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
#More wine!
|
|
option = {
|
|
name = {
|
|
trigger = { drinks_alcohol_trigger = yes }
|
|
text = ep2_wedding.3400.c.drink
|
|
}
|
|
name = {
|
|
trigger = { drinks_alcohol_trigger = no }
|
|
text = ep2_wedding.3400.c.hashish
|
|
}
|
|
trigger = {
|
|
OR = {
|
|
drinks_alcohol_trigger = yes
|
|
can_be_hashishiyah = yes
|
|
}
|
|
}
|
|
add_prestige = medium_prestige_gain
|
|
if = {
|
|
limit = { has_trait = lifestyle_reveler }
|
|
add_trait_xp = {
|
|
trait = lifestyle_reveler
|
|
value = medium_trait_xp
|
|
}
|
|
}
|
|
else = { add_trait = lifestyle_reveler }
|
|
if = {
|
|
limit = { drinks_alcohol_trigger = yes }
|
|
if = {
|
|
limit = {
|
|
NOT = { has_trait = drunkard }
|
|
}
|
|
random = {
|
|
chance = 1
|
|
add_trait = drunkard
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
drunkard = minor_stress_impact_loss
|
|
lifestyle_reveler = minor_stress_impact_loss
|
|
lazy = minor_stress_impact_loss
|
|
temperate = miniscule_stress_impact_gain
|
|
diligent = miniscule_stress_impact_gain
|
|
}
|
|
}
|
|
|
|
}
|
|
else_if = {
|
|
limit = { can_be_hashishiyah = yes }
|
|
random = {
|
|
chance = 1
|
|
add_trait = hashishiyah
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
hashishiyah = minor_stress_impact_loss
|
|
lifestyle_reveler = minor_stress_impact_loss
|
|
lazy = minor_stress_impact_loss
|
|
temperate = miniscule_stress_impact_gain
|
|
diligent = miniscule_stress_impact_gain
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
modifier = {
|
|
has_trait = drunkard
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
has_trait = hashishiyah
|
|
add = 50
|
|
}
|
|
ai_value_modifier = {
|
|
ai_boldness = 1
|
|
ai_rationality = -0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
#Befriend
|
|
option = {
|
|
name = ep2_wedding.3400.d
|
|
trigger = {
|
|
OR = {
|
|
NOT = { exists = scope:my_family_suitor }
|
|
NOT = { is_attracted_to_gender_of = scope:other_family_relative }
|
|
}
|
|
}
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_wedding_relation_bond
|
|
CHARACTER = scope:other_family_relative
|
|
OPINION = default_friend_opinion
|
|
}
|
|
stress_impact = {
|
|
gregarious = minor_stress_impact_loss
|
|
humble = minor_stress_impact_loss
|
|
shy = miniscule_stress_impact_gain
|
|
arrogant = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
opinion_modifier = {
|
|
opinion_target = scope:other_family_relative
|
|
multiplier = 1
|
|
}
|
|
ai_value_modifier = {
|
|
ai_sociability = 1
|
|
}
|
|
modifier = {
|
|
num_of_relation_friend >= 2
|
|
factor = 0
|
|
}
|
|
}
|
|
}
|
|
|
|
#Woo
|
|
option = {
|
|
name = ep2_wedding.3400.e
|
|
trigger = {
|
|
is_attracted_to_gender_of = scope:other_family_relative
|
|
NOT = { has_trait = celibate }
|
|
}
|
|
duel = {
|
|
skill = intrigue
|
|
value = medium_skill_rating
|
|
10 = {
|
|
desc = ep2_wedding.3400.e.success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
add = 5
|
|
has_trait = seducer
|
|
}
|
|
modifier = { add = attraction }
|
|
modifier = {
|
|
add = 50
|
|
scope:other_family_relative = {
|
|
would_attempt_to_seduce_trigger = { CHARACTER = root }
|
|
}
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3400.e.success
|
|
progress_towards_lover_effect = {
|
|
REASON = lover_wedding_relation_bond
|
|
CHARACTER = scope:other_family_relative
|
|
OPINION = default_lover_opinion
|
|
}
|
|
if = {
|
|
limit = {
|
|
might_cheat_on_every_partner_trigger = yes
|
|
scope:other_family_relative = { might_cheat_on_every_partner_trigger = yes }
|
|
}
|
|
had_sex_with_effect = {
|
|
CHARACTER = scope:other_family_relative
|
|
PREGNANCY_CHANCE = pregnancy_chance
|
|
}
|
|
}
|
|
}
|
|
min = 5
|
|
}
|
|
10 = {
|
|
desc = ep2_wedding.3400.e.failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
add = 50
|
|
NOT = {
|
|
scope:other_family_relative = {
|
|
would_attempt_to_seduce_trigger = { CHARACTER = root }
|
|
}
|
|
}
|
|
}
|
|
min = 5
|
|
send_interface_toast = {
|
|
title = ep2_wedding.3400.e.failure
|
|
reverse_add_opinion = {
|
|
target = scope:other_family_relative
|
|
modifier = disgusted_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
lustful = minor_stress_impact_loss
|
|
rakish = minor_stress_impact_loss
|
|
chaste = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
opinion_modifier = {
|
|
opinion_target = scope:other_family_relative
|
|
multiplier = 1
|
|
}
|
|
ai_value_modifier = {
|
|
ai_boldness = 0.5
|
|
ai_sociability = 0.5
|
|
}
|
|
modifier = {
|
|
num_of_relation_lover >= 2
|
|
factor = 0
|
|
}
|
|
modifier = {
|
|
NOT = {
|
|
would_attempt_to_seduce_trigger = { CHARACTER = scope:other_family_relative }
|
|
}
|
|
factor = 0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.3410 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3410.t
|
|
desc = {
|
|
desc = ep2_wedding.3410.opening
|
|
first_valid = {
|
|
triggered_desc = { # Double trouble
|
|
trigger = { exists = scope:double_jealousy }
|
|
desc = ep2_wedding.3410.double
|
|
}
|
|
triggered_desc = { # Primary spouse
|
|
trigger = {
|
|
OR = {
|
|
has_relation_lover = scope:jealousy_focus
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:jealousy_focus
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3410.lover
|
|
}
|
|
triggered_desc = { # Primary spouse
|
|
trigger = { primary_spouse ?= scope:jealousy_focus }
|
|
desc = ep2_wedding.3410.primary
|
|
}
|
|
desc = ep2_wedding.3410.secondary
|
|
}
|
|
first_valid = {
|
|
triggered_desc = { # Double trouble
|
|
trigger = { exists = scope:double_jealousy }
|
|
desc = ep2_wedding.3410.double_opinion
|
|
}
|
|
triggered_desc = { # Primary spouse
|
|
trigger = {
|
|
reverse_opinion = {
|
|
target = scope:jealousy_focus
|
|
value >= 25
|
|
}
|
|
}
|
|
desc = ep2_wedding.3410.positive_opinion
|
|
}
|
|
triggered_desc = { # Primary spouse
|
|
trigger = {
|
|
reverse_opinion = {
|
|
target = scope:jealousy_focus
|
|
value <= 0
|
|
}
|
|
}
|
|
desc = ep2_wedding.3410.negative_opinion
|
|
}
|
|
desc = ep2_wedding.3410.indifferent_opinion
|
|
}
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
exists = scope:double_jealousy
|
|
AND = {
|
|
NOT = { exists = scope:double_jealousy }
|
|
reverse_opinion = {
|
|
target = scope:jealousy_focus
|
|
value > 0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
animation = stress
|
|
}
|
|
animation = war_over_win
|
|
}
|
|
lower_right_portrait = scope:jealousy_focus
|
|
lower_left_portrait = scope:jealousy_usurper
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
is_adult = yes
|
|
# Spouse 1 and 2 are not root
|
|
NOR = {
|
|
scope:activity.special_guest:spouse_1 = root
|
|
scope:activity.special_guest:spouse_2 = root
|
|
}
|
|
# Has an intimate relationship with a spouse
|
|
OR = {
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:activity.special_guest:spouse_1
|
|
}
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:activity.special_guest:spouse_2
|
|
}
|
|
has_relation_lover = scope:activity.special_guest:spouse_1
|
|
has_relation_lover = scope:activity.special_guest:spouse_2
|
|
is_spouse_of = scope:activity.special_guest:spouse_1
|
|
is_spouse_of = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
# Check for double
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:activity.special_guest:spouse_1
|
|
}
|
|
has_relation_lover = scope:activity.special_guest:spouse_1
|
|
is_spouse_of = scope:activity.special_guest:spouse_1
|
|
}
|
|
OR = {
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:activity.special_guest:spouse_2
|
|
}
|
|
has_relation_lover = scope:activity.special_guest:spouse_2
|
|
is_spouse_of = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
save_scope_as = double_jealousy
|
|
}
|
|
# Save jealous focus, or preferred
|
|
hidden_effect = {
|
|
random_list = {
|
|
1 = {
|
|
trigger = {
|
|
OR = {
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:activity.special_guest:spouse_1
|
|
}
|
|
has_relation_lover = scope:activity.special_guest:spouse_1
|
|
is_spouse_of = scope:activity.special_guest:spouse_1
|
|
}
|
|
}
|
|
opinion_modifier = {
|
|
opinion_target = scope:activity.special_guest:spouse_1
|
|
multiplier = 1
|
|
}
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = jealousy_focus }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = jealousy_usurper }
|
|
}
|
|
1 = {
|
|
trigger = {
|
|
OR = {
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:activity.special_guest:spouse_2
|
|
}
|
|
has_relation_lover = scope:activity.special_guest:spouse_2
|
|
is_spouse_of = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
opinion_modifier = {
|
|
opinion_target = scope:activity.special_guest:spouse_2
|
|
multiplier = 1
|
|
}
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = jealousy_focus }
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = jealousy_usurper }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Make a scene
|
|
option = {
|
|
name = ep2_wedding.3410.a
|
|
flavor = ep2_wedding.3410.a.flavor
|
|
add_prestige = minor_prestige_gain
|
|
reverse_add_opinion = {
|
|
target = scope:jealousy_focus
|
|
modifier = ruined_wedding_night_opinion
|
|
opinion = -15
|
|
}
|
|
reverse_add_opinion = {
|
|
target = scope:jealousy_usurper
|
|
modifier = ruined_wedding_night_opinion
|
|
opinion = -15
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:jealousy_focus
|
|
}
|
|
}
|
|
scope:jealousy_usurper = {
|
|
every_close_family_member = {
|
|
custom = every_usurper_close_family_tt
|
|
add_opinion = {
|
|
target = scope:jealousy_focus
|
|
modifier = revealed_lover_wedding_night_opinion
|
|
opinion = -20
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = ruined_wedding_night_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
expose_lover_secret_or_run_consequence_effect = {
|
|
TARGET = scope:jealousy_focus
|
|
EXPOSER = root
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
wrathful = minor_stress_impact_loss
|
|
calm = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_energy = 0.5
|
|
ai_vengefulness = 0.5
|
|
ai_boldness = 0.5
|
|
}
|
|
modifier = {
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:jealousy_usurper
|
|
}
|
|
factor = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
#Plot murder
|
|
option = {
|
|
name = ep2_wedding.3410.b
|
|
trigger = {
|
|
NOR = {
|
|
any_secret = {
|
|
type = secret_lover
|
|
secret_target = scope:jealousy_usurper
|
|
}
|
|
has_relation_lover = scope:jealousy_usurper
|
|
is_scheming_against = { target = scope:jealousy_usurper }
|
|
}
|
|
can_start_scheme = {
|
|
type = murder
|
|
target_character = scope:jealousy_usurper
|
|
}
|
|
}
|
|
start_scheme = {
|
|
target_character = scope:jealousy_usurper
|
|
type = murder
|
|
}
|
|
random_scheme = {
|
|
type = murder
|
|
limit = {
|
|
scheme_target_character = scope:jealousy_usurper
|
|
}
|
|
add_scheme_modifier = { type = wedding_consorts_envy_modifier }
|
|
}
|
|
custom_tooltip = ep2_wedding.3410.b.tt
|
|
stress_impact = {
|
|
vengeful = minor_stress_impact_loss
|
|
zealous = miniscule_stress_impact_gain
|
|
just = miniscule_stress_impact_gain
|
|
forgiving = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 75
|
|
opinion_modifier = {
|
|
opinion_target = scope:jealousy_usurper
|
|
multiplier = -1
|
|
}
|
|
ai_value_modifier = {
|
|
ai_energy = 1
|
|
ai_vengefulness = 1
|
|
ai_boldness = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Fed up with focus
|
|
option = {
|
|
name = ep2_wedding.3410.c
|
|
trigger = {
|
|
OR = {
|
|
has_relation_lover = scope:jealousy_focus
|
|
has_relation_lover = scope:jealousy_usurper
|
|
}
|
|
}
|
|
if = {
|
|
limit = { has_relation_lover = scope:jealousy_focus }
|
|
if = {
|
|
limit = { is_ai = yes }
|
|
add_opinion = {
|
|
target = scope:jealousy_focus
|
|
modifier = insulted_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
lose_lover_effect = { LOVER = scope:jealousy_focus }
|
|
}
|
|
if = {
|
|
limit = { has_relation_lover = scope:jealousy_usurper }
|
|
if = {
|
|
limit = { is_ai = yes }
|
|
add_opinion = {
|
|
target = scope:jealousy_focus
|
|
modifier = insulted_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
lose_lover_effect = { LOVER = scope:jealousy_usurper }
|
|
}
|
|
stress_impact = {
|
|
fickle = minor_stress_impact_loss
|
|
base = miniscule_stress_impact_gain
|
|
stubborn = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_vengefulness = 1
|
|
ai_compassion = 1
|
|
ai_boldness = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
#Fine by me
|
|
option = {
|
|
name = ep2_wedding.3410.d
|
|
add_character_modifier = {
|
|
modifier = wedding_old_news_modifier
|
|
years = 5
|
|
}
|
|
stress_impact = {
|
|
humble = minor_stress_impact_loss
|
|
content = minor_stress_impact_loss
|
|
arrogant = miniscule_stress_impact_gain
|
|
ambitious = miniscule_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
opinion_modifier = {
|
|
opinion_target = scope:jealousy_focus
|
|
multiplier = -1
|
|
}
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.3420 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3420.t
|
|
desc = {
|
|
desc = ep2_wedding.3420.opening
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = gluttonous
|
|
has_trait = comfort_eater
|
|
}
|
|
exists = scope:wedding_eat
|
|
}
|
|
desc = ep2_wedding.3420.eat
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = drunkard
|
|
has_trait = hashishiyah
|
|
has_trait = lifestyle_reveler
|
|
}
|
|
exists = scope:wedding_drink
|
|
}
|
|
desc = ep2_wedding.3420.drink
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = lustful
|
|
has_trait = rakish
|
|
}
|
|
exists = scope:wedding_lech
|
|
}
|
|
desc = ep2_wedding.3420.lech
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = greedy
|
|
has_trait = avaricious
|
|
}
|
|
exists = scope:wedding_steal
|
|
}
|
|
desc = ep2_wedding.3420.steal
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = shy
|
|
has_trait = reclusive
|
|
}
|
|
exists = scope:wedding_flee
|
|
}
|
|
desc = ep2_wedding.3420.flee
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = generous
|
|
has_trait = improvident
|
|
}
|
|
exists = scope:wedding_charity
|
|
}
|
|
desc = ep2_wedding.3420.charity
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = gregarious
|
|
has_trait = trusting
|
|
}
|
|
exists = scope:wedding_social
|
|
}
|
|
desc = ep2_wedding.3420.social
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = arrogant
|
|
has_trait = ambitious
|
|
has_trait = august
|
|
}
|
|
exists = scope:wedding_posture
|
|
}
|
|
desc = ep2_wedding.3420.posture
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = honest
|
|
has_trait = contrite
|
|
}
|
|
exists = scope:wedding_blab
|
|
scope:blab_guest = root
|
|
}
|
|
desc = ep2_wedding.3420.blab_self
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = honest
|
|
has_trait = contrite
|
|
}
|
|
exists = scope:wedding_blab
|
|
}
|
|
desc = ep2_wedding.3420.blab
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = deceitful
|
|
has_trait = schemer
|
|
}
|
|
exists = scope:wedding_scheme
|
|
}
|
|
desc = ep2_wedding.3420.scheme
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = generous
|
|
}
|
|
exists = scope:wedding_help
|
|
}
|
|
desc = ep2_wedding.3420.help
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = zealous
|
|
}
|
|
exists = scope:wedding_pray
|
|
}
|
|
desc = ep2_wedding.3420.pray
|
|
}
|
|
}
|
|
desc = ep2_wedding.3420.closing
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = thinking
|
|
}
|
|
right_portrait = {
|
|
character = scope:social_guest
|
|
trigger = { exists = scope:wedding_social }
|
|
animation = happiness
|
|
}
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
is_adult = yes
|
|
exists = scope:activity
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
# Blab scopes
|
|
random_attending_character = {
|
|
limit = {
|
|
any_targeting_secret = {
|
|
OR = {
|
|
is_known_by = root
|
|
secret_owner = root
|
|
}
|
|
}
|
|
}
|
|
save_scope_as = blab_guest
|
|
random_targeting_secret = {
|
|
limit = { is_known_by = root }
|
|
alternative_limit = { secret_owner = root }
|
|
save_scope_as = blab_secret
|
|
}
|
|
}
|
|
# Scheme scopes
|
|
random_attending_character = {
|
|
limit = {
|
|
OR = {
|
|
any_secret = {
|
|
NOR = {
|
|
is_known_by = root
|
|
secret_owner ?= root
|
|
secret_target ?= root
|
|
}
|
|
}
|
|
any_targeting_secret = {
|
|
NOR = {
|
|
is_known_by = root
|
|
secret_owner ?= root
|
|
secret_target ?= root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
weight = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0.1
|
|
scope:blab_guest ?= this
|
|
}
|
|
is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root }
|
|
is_of_major_interest_to_weight_up_modifier = { CHARACTER = root }
|
|
}
|
|
save_scope_as = scheme_guest
|
|
hidden_effect = {
|
|
random_list = {
|
|
1 = {
|
|
trigger = {
|
|
any_secret = {
|
|
NOR = {
|
|
is_known_by = root
|
|
secret_owner = root
|
|
trigger_if = {
|
|
limit = { exists = scope:scheme_target }
|
|
secret_target = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
random_secret = {
|
|
limit = {
|
|
NOR = {
|
|
is_known_by = root
|
|
secret_owner = root
|
|
trigger_if = {
|
|
limit = { exists = scope:scheme_target }
|
|
secret_target = root
|
|
}
|
|
}
|
|
}
|
|
save_scope_as = scheme_secret
|
|
}
|
|
}
|
|
1 = {
|
|
trigger = {
|
|
any_targeting_secret = {
|
|
NOR = {
|
|
is_known_by = root
|
|
secret_owner = root
|
|
trigger_if = {
|
|
limit = { exists = scope:scheme_target }
|
|
secret_target = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
random_targeting_secret = {
|
|
limit = {
|
|
NOR = {
|
|
is_known_by = root
|
|
secret_owner = root
|
|
trigger_if = {
|
|
limit = { exists = scope:scheme_target }
|
|
secret_target = root
|
|
}
|
|
}
|
|
}
|
|
save_scope_as = scheme_secret
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# Social scopes
|
|
random_attending_character = {
|
|
limit = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
has_any_scripted_relation = root
|
|
}
|
|
opinion = {
|
|
target = root
|
|
value > -25
|
|
}
|
|
}
|
|
weight = {
|
|
base = 50
|
|
modifier = {
|
|
scope:blab_guest ?= this
|
|
factor = 0.1
|
|
}
|
|
modifier = {
|
|
scope:scheme_guest ?= this
|
|
factor = 0.1
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_reveler
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
trait_compatibility = {
|
|
target = root
|
|
value >= low_positive_trait_compatibility
|
|
}
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
trait_compatibility = {
|
|
target = root
|
|
value >= medium_positive_trait_compatibility
|
|
}
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
trait_compatibility = {
|
|
target = root
|
|
value >= high_positive_trait_compatibility
|
|
}
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
sex_same_as = root
|
|
add = 50
|
|
}
|
|
modifier = {
|
|
age >= root.age_minus_10
|
|
age < root.age_plus_10
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
age >= root.age_minus_5
|
|
age < root.age_plus_5
|
|
add = 25
|
|
}
|
|
}
|
|
save_scope_as = social_guest
|
|
}
|
|
# Help scopes
|
|
random_attending_character = {
|
|
limit = {
|
|
NOR = {
|
|
this = root
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
has_any_bad_relationship_with_character_trigger = { CHARACTER = root }
|
|
}
|
|
}
|
|
weight = {
|
|
base = 50
|
|
modifier = {
|
|
scope:blab_guest ?= this
|
|
factor = 0.1
|
|
}
|
|
modifier = {
|
|
scope:scheme_guest ?= this
|
|
factor = 0.1
|
|
}
|
|
modifier = {
|
|
scope:social_guest ?= this
|
|
factor = 0.1
|
|
}
|
|
modifier = {
|
|
OR = {
|
|
has_trait = drunkard
|
|
has_trait = lifestyle_reveler
|
|
}
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
is_healthy = no
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
age >= 50
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
is_close_family_of = root
|
|
factor = 2
|
|
}
|
|
modifier = {
|
|
ai_energy <= low_negative_ai_value
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
ai_energy <= medium_negative_ai_value
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
ai_energy <= high_negative_ai_value
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
current_weight >= overweight_value
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
age > 30
|
|
add = 25
|
|
}
|
|
modifier = {
|
|
age > 60
|
|
add = 25
|
|
}
|
|
}
|
|
save_scope_as = help_guest
|
|
}
|
|
}
|
|
hidden_effect = {
|
|
while = {
|
|
count = 4
|
|
random_list = {
|
|
10 = { # Eat
|
|
trigger = {
|
|
NOR = {
|
|
exists = scope:wedding_eat
|
|
has_trait = inappetetic
|
|
}
|
|
}
|
|
modifier = {
|
|
has_trait = temperate
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = gluttonous
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = comfort_eater
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
add = {
|
|
value = ai_energy
|
|
multiply = -1
|
|
}
|
|
}
|
|
save_scope_as = wedding_eat
|
|
}
|
|
10 = { # Drink
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_drink }
|
|
}
|
|
modifier = {
|
|
has_trait = temperate
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = drunkard
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = hashishiyah
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = lifestyle_reveler
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = lazy
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
add = {
|
|
value = ai_energy
|
|
multiply = -1
|
|
}
|
|
}
|
|
save_scope_as = wedding_drink
|
|
}
|
|
10 = { # Lech
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_lech }
|
|
would_attempt_to_seduce_married_trigger = yes
|
|
is_eunuch_trigger = no
|
|
NOR = {
|
|
has_trait = celibate
|
|
has_trait = devoted
|
|
}
|
|
}
|
|
modifier = {
|
|
has_trait = chaste
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = lustful
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = rakish
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
add = {
|
|
value = ai_sociability
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
modifier = {
|
|
add = {
|
|
value = ai_honor
|
|
multiply = -0.5
|
|
}
|
|
}
|
|
save_scope_as = wedding_lech
|
|
}
|
|
10 = { # Steal
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_steal }
|
|
exists = root.capital_province
|
|
NOT = { scope:activity.activity_location ?= root.capital_province }
|
|
OR = {
|
|
has_trait = greedy
|
|
has_trait = avaricious
|
|
gold < 0
|
|
ai_honor < low_positive_honor
|
|
}
|
|
}
|
|
modifier = {
|
|
has_trait = generous
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = greedy
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = arbitrary
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = avaricious
|
|
add = 10
|
|
}
|
|
modifier = { add = ai_greed }
|
|
modifier = {
|
|
add = {
|
|
value = ai_honor
|
|
multiply = -1
|
|
}
|
|
}
|
|
save_scope_as = wedding_steal
|
|
}
|
|
10 = { # Flee
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_flee }
|
|
OR = {
|
|
has_trait = shy
|
|
has_trait = reclusive
|
|
has_trait = paranoid
|
|
has_trait = impatient
|
|
}
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = brave
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = trusting
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = shy
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = paranoid
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = craven
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = reclusive
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = impatient
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
add = {
|
|
value = ai_boldness
|
|
multiply = -1
|
|
}
|
|
}
|
|
save_scope_as = wedding_flee
|
|
}
|
|
10 = { # Charity
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_charity }
|
|
}
|
|
modifier = {
|
|
has_trait = greedy
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = avaricious
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = sadistic
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = generous
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = improvident
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
add = {
|
|
value = ai_greed
|
|
multiply = -1
|
|
}
|
|
add = {
|
|
value = ai_zeal
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
save_scope_as = wedding_charity
|
|
}
|
|
10 = { # Social
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_social }
|
|
exists = scope:social_guest
|
|
}
|
|
modifier = {
|
|
has_trait = shy
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = reclusive
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = gregarious
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = confider
|
|
add = 10
|
|
}
|
|
modifier = { add = ai_sociability }
|
|
save_scope_as = wedding_social
|
|
}
|
|
10 = { # Posture
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_posture }
|
|
}
|
|
modifier = {
|
|
has_trait = humble
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = content
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = arrogant
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = ambitious
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = august
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
add = {
|
|
value = ai_boldness
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
save_scope_as = wedding_posture
|
|
}
|
|
10 = { # Blab
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_blab }
|
|
exists = scope:blab_guest
|
|
exists = scope:blab_secret
|
|
}
|
|
modifier = {
|
|
has_trait = deceitful
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = honest
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = contrite
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
add = {
|
|
value = ai_honor
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
save_scope_as = wedding_blab
|
|
}
|
|
10 = { # Scheme
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_scheme }
|
|
}
|
|
modifier = {
|
|
has_trait = honest
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = contrite
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = deceitful
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = schemer
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
add = {
|
|
value = ai_honor
|
|
multiply = -1
|
|
}
|
|
}
|
|
save_scope_as = wedding_scheme
|
|
}
|
|
10 = { # Help
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_help }
|
|
exists = scope:help_guest
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = sadistic
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = generous
|
|
add = 10
|
|
}
|
|
modifier = { add = ai_compassion }
|
|
save_scope_as = wedding_help
|
|
}
|
|
10 = { # Pray
|
|
trigger = {
|
|
NOT = { exists = scope:wedding_pray }
|
|
OR = {
|
|
is_close_or_extended_family_of = scope:activity.special_guest:spouse_1
|
|
is_close_or_extended_family_of = scope:activity.special_guest:spouse_2
|
|
has_trait = devoted
|
|
has_trait = zealous
|
|
}
|
|
}
|
|
modifier = {
|
|
has_trait = cynical
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = callous
|
|
add = -20
|
|
}
|
|
modifier = {
|
|
has_trait = zealous
|
|
add = 10
|
|
}
|
|
modifier = {
|
|
has_trait = compassionate
|
|
add = 10
|
|
}
|
|
modifier = { add = ai_zeal }
|
|
modifier = {
|
|
add = {
|
|
value = ai_compassion
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
save_scope_as = wedding_pray
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Eat
|
|
option = {
|
|
name = ep2_wedding.3420.a
|
|
trigger = { exists = scope:wedding_eat }
|
|
trait = gluttonous
|
|
trait = comfort_eater
|
|
target_weight_modifier_effect = { VALUE = 2 }
|
|
stress_impact = {
|
|
gluttonous = medium_stress_impact_loss
|
|
comfort_eater = medium_stress_impact_loss
|
|
temperate = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 75
|
|
ai_value_modifier = {
|
|
ai_energy = 1
|
|
ai_vengefulness = 1
|
|
ai_boldness = 1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Drink
|
|
option = {
|
|
name = ep2_wedding.3420.b
|
|
trigger = { exists = scope:wedding_drink }
|
|
trait = drunkard
|
|
trait = hashishiyah
|
|
trait = lifestyle_reveler
|
|
if = {
|
|
limit = {
|
|
NOT = { has_trait = lifestyle_reveler }
|
|
}
|
|
add_trait = lifestyle_reveler
|
|
}
|
|
else = {
|
|
add_trait_xp = {
|
|
trait = lifestyle_reveler
|
|
value = medium_trait_xp
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_loss
|
|
drunkard = medium_stress_impact_loss
|
|
hashishiyah = medium_stress_impact_loss
|
|
lifestyle_reveler = medium_stress_impact_loss
|
|
temperate = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_vengefulness = 1
|
|
ai_compassion = 1
|
|
ai_boldness = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
#Lech
|
|
option = {
|
|
name = ep2_wedding.3420.c
|
|
trigger = { exists = scope:wedding_lech }
|
|
trait = lustful
|
|
trait = rakish
|
|
if = {
|
|
limit = {
|
|
NOT = { is_attracted_to_men = yes }
|
|
}
|
|
had_sex_with_unknown_effect = { GENDER = female }
|
|
}
|
|
else = {
|
|
had_sex_with_unknown_effect = { GENDER = male }
|
|
}
|
|
stress_impact = {
|
|
lustful = medium_stress_impact_loss
|
|
rakish = medium_stress_impact_loss
|
|
chaste = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Steal
|
|
option = {
|
|
name = ep2_wedding.3420.d
|
|
trigger = { exists = scope:wedding_steal }
|
|
trait = greedy
|
|
trait = avaricious
|
|
add_gold = { 10 25 }
|
|
stress_impact = {
|
|
greedy = medium_stress_impact_loss
|
|
avaricious = medium_stress_impact_loss
|
|
generous = medium_stress_impact_gain
|
|
just = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Flee
|
|
option = {
|
|
name = ep2_wedding.3420.e
|
|
trigger = { exists = scope:wedding_flee }
|
|
trait = shy
|
|
trait = reclusive
|
|
add_prestige = miniscule_prestige_loss
|
|
stress_impact = {
|
|
impatient = minor_stress_impact_loss
|
|
paranoid = minor_stress_impact_loss
|
|
shy = medium_stress_impact_loss
|
|
reclusive = medium_stress_impact_loss
|
|
gregarious = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_energy = 0.5
|
|
ai_vengefulness = 0.5
|
|
ai_boldness = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
#Charity
|
|
option = {
|
|
name = ep2_wedding.3420.f
|
|
trigger = { exists = scope:wedding_charity }
|
|
trait = generous
|
|
trait = improvident
|
|
remove_short_term_gold = { 10 25 }
|
|
add_piety = minor_piety_gain
|
|
stress_impact = {
|
|
generous = medium_stress_impact_loss
|
|
improvident = medium_stress_impact_loss
|
|
greedy = minor_stress_impact_gain
|
|
avaricious = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Socialize
|
|
option = {
|
|
name = ep2_wedding.3420.g
|
|
trigger = { exists = scope:wedding_social }
|
|
trait = gregarious
|
|
trait = trusting
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_wedding_relation_bond
|
|
CHARACTER = scope:social_guest
|
|
OPINION = default_friend_opinion
|
|
}
|
|
stress_impact = {
|
|
gregarious = medium_stress_impact_loss
|
|
trusting = medium_stress_impact_loss
|
|
shy = minor_stress_impact_gain
|
|
paranoid = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Posture
|
|
option = {
|
|
name = ep2_wedding.3420.h
|
|
trigger = { exists = scope:wedding_posture }
|
|
trait = arrogant
|
|
trait = ambitious
|
|
add_prestige = minor_prestige_gain
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_loss
|
|
ambitious = medium_stress_impact_loss
|
|
humble = minor_stress_impact_gain
|
|
content = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Blab
|
|
option = {
|
|
name = ep2_wedding.3420.i
|
|
trigger = { exists = scope:wedding_blab }
|
|
trait = honest
|
|
trait = contrite
|
|
if = {
|
|
limit = {
|
|
root != scope:blab_guest
|
|
}
|
|
reverse_add_opinion = {
|
|
target = scope:blab_guest
|
|
modifier = exposed_my_secret_opinion
|
|
}
|
|
}
|
|
scope:blab_secret = { expose_secret = root }
|
|
stress_impact = {
|
|
honest = medium_stress_impact_loss
|
|
contrite = medium_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Scheme
|
|
option = {
|
|
name = ep2_wedding.3420.j
|
|
trigger = { exists = scope:wedding_scheme }
|
|
trait = deceitful
|
|
trait = schemer
|
|
remove_short_term_gold = { 10 25 }
|
|
random = {
|
|
chance = 50
|
|
custom_tooltip = ep2_wedding.3420.j.tt
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { exists = scope:scheme_secret }
|
|
send_interface_toast = {
|
|
title = secret_discovered_toast
|
|
scope:scheme_secret = { reveal_to = root }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
deceitful = medium_stress_impact_loss
|
|
schemer = medium_stress_impact_loss
|
|
honest = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Help
|
|
option = {
|
|
name = {
|
|
text = ep2_wedding.3420.k.health
|
|
trigger = {
|
|
scope:help_guest = { is_healthy = no }
|
|
}
|
|
}
|
|
name = {
|
|
text = ep2_wedding.3420.k.drink
|
|
trigger = {
|
|
scope:help_guest = {
|
|
OR = {
|
|
has_trait = drunkard
|
|
has_trait = lifestyle_reveler
|
|
}
|
|
}
|
|
}
|
|
}
|
|
name = {
|
|
text = ep2_wedding.3420.k.fallback
|
|
trigger = {
|
|
scope:help_guest = {
|
|
is_healthy = yes
|
|
NOR = {
|
|
has_trait = drunkard
|
|
has_trait = lifestyle_reveler
|
|
}
|
|
}
|
|
}
|
|
}
|
|
trigger = { exists = scope:wedding_help }
|
|
trait = compassionate
|
|
flavor = ep2_wedding.3420.k.flavor
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_wedding_relation_bond
|
|
CHARACTER = scope:help_guest
|
|
OPINION = default_friend_opinion
|
|
}
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_loss
|
|
callous = minor_stress_impact_gain
|
|
sadistic = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
|
|
#Pray
|
|
option = {
|
|
name = ep2_wedding.3420.l
|
|
trigger = { exists = scope:wedding_pray }
|
|
trait = zealous
|
|
add_piety = minor_piety_gain
|
|
stress_impact = {
|
|
compassionate = minor_stress_impact_loss
|
|
zealous = medium_stress_impact_loss
|
|
cynical = minor_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 50
|
|
ai_value_modifier = {
|
|
ai_energy = -1
|
|
ai_boldness = -1
|
|
ai_vengefulness = -1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
scripted_trigger wedding_3500_shared_trigger = {
|
|
is_adult = yes
|
|
is_participant_in_activity = scope:activity
|
|
NOR = {
|
|
this = root
|
|
scope:my_family_relative ?= this
|
|
scope:my_family_relative_1 ?= this
|
|
scope:my_family_relative_2 ?= this
|
|
this = scope:activity.special_guest:spouse_1
|
|
this = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
|
|
scripted_trigger wedding_3500_same_relation_spouse_trigger = {
|
|
is_$RELATION$_of = scope:my_family_spouse
|
|
scope:my_family_relative_1 = { is_$RELATION$_of = scope:my_family_spouse }
|
|
scope:my_family_relative_2 = { is_$RELATION$_of = scope:my_family_spouse }
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_3500_relations_spouse_shared_trigger = {
|
|
OR = {
|
|
wedding_3500_same_relation_spouse_trigger = { RELATION = great_grandchild }
|
|
wedding_3500_same_relation_spouse_trigger = { RELATION = grandchild }
|
|
wedding_3500_same_relation_spouse_trigger = { RELATION = child }
|
|
wedding_3500_same_relation_spouse_trigger = { RELATION = great_grandparent }
|
|
wedding_3500_same_relation_spouse_trigger = { RELATION = grandparent }
|
|
wedding_3500_same_relation_spouse_trigger = { RELATION = sibling }
|
|
wedding_3500_same_relation_spouse_trigger = { RELATION = nibling }
|
|
wedding_3500_same_relation_spouse_trigger = { RELATION = uncle_or_aunt }
|
|
wedding_3500_same_relation_spouse_trigger = { RELATION = cousin }
|
|
}
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_3500_same_relation_root_trigger = {
|
|
scope:my_family_relative_1 = { is_$RELATION$_of = root }
|
|
scope:my_family_relative_2 = { is_$RELATION$_of = root }
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_3500_relations_root_shared_trigger = {
|
|
OR = {
|
|
ep2_wedding_3500_same_relation_root_trigger = { RELATION = great_grandchild }
|
|
ep2_wedding_3500_same_relation_root_trigger = { RELATION = grandchild }
|
|
ep2_wedding_3500_same_relation_root_trigger = { RELATION = child }
|
|
ep2_wedding_3500_same_relation_root_trigger = { RELATION = great_grandparent }
|
|
ep2_wedding_3500_same_relation_root_trigger = { RELATION = grandparent }
|
|
ep2_wedding_3500_same_relation_root_trigger = { RELATION = sibling }
|
|
ep2_wedding_3500_same_relation_root_trigger = { RELATION = nibling }
|
|
ep2_wedding_3500_same_relation_root_trigger = { RELATION = uncle_or_aunt }
|
|
ep2_wedding_3500_same_relation_root_trigger = { RELATION = cousin }
|
|
}
|
|
}
|
|
|
|
scripted_effect wedding_3500_save_family_effect = {
|
|
scope:activity.special_guest:$SPOUSE$ = { save_scope_as = my_family_spouse }
|
|
if = {
|
|
limit = { scope:my_family_spouse = scope:activity.special_guest:spouse_1 }
|
|
scope:activity.special_guest:spouse_2 = { save_scope_as = other_family_spouse }
|
|
}
|
|
else = {
|
|
scope:activity.special_guest:spouse_1 = { save_scope_as = other_family_spouse }
|
|
}
|
|
while = {
|
|
count = 2
|
|
random_close_or_extended_family_member = {
|
|
limit = {
|
|
trigger_if = {
|
|
limit = {
|
|
root = { is_close_family_of = scope:my_family_spouse }
|
|
}
|
|
is_close_family_of = scope:my_family_spouse
|
|
}
|
|
trigger_else = { is_extended_family_of = scope:my_family_spouse }
|
|
wedding_3500_shared_trigger = yes
|
|
NOR = {
|
|
has_relation_rival = scope:other_family_spouse
|
|
opinion = {
|
|
target = scope:other_family_spouse
|
|
value <= -25
|
|
}
|
|
}
|
|
}
|
|
alternative_limit = {
|
|
wedding_3500_shared_trigger = yes
|
|
NOR = {
|
|
has_relation_rival = scope:other_family_spouse
|
|
opinion = {
|
|
target = scope:other_family_spouse
|
|
value <= -25
|
|
}
|
|
}
|
|
}
|
|
weight = {
|
|
base = 1
|
|
wedding_family_member_compatibility_modifier = yes
|
|
is_of_minor_interest_to_weight_up_modifier = { CHARACTER = root }
|
|
is_of_major_interest_to_weight_up_modifier = { CHARACTER = root }
|
|
}
|
|
if = {
|
|
limit = { exists = scope:my_family_relative_1 }
|
|
save_scope_as = my_family_relative_2
|
|
}
|
|
else = { save_scope_as = my_family_relative_1 }
|
|
}
|
|
}
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_3500_active_bedroom_trigger = {
|
|
scope:my_family_spouse = {
|
|
is_eunuch_trigger = no
|
|
NOT = { has_trait = celibate }
|
|
}
|
|
scope:other_family_spouse = {
|
|
is_eunuch_trigger = no
|
|
NOT = { has_trait = celibate }
|
|
}
|
|
}
|
|
|
|
scripted_trigger ep2_wedding_3500_dislikes_fornicators_trigger = {
|
|
scope:other_family_spouse = {
|
|
OR = {
|
|
has_trait = fornicator
|
|
has_trait = adulterer
|
|
}
|
|
}
|
|
scope:my_family_spouse = {
|
|
OR = {
|
|
has_trait = fornicator
|
|
has_trait = adulterer
|
|
}
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
scope:other_family_spouse = { is_female = yes }
|
|
}
|
|
faith = {
|
|
NOT = { has_doctrine = doctrine_adultery_women_accepted }
|
|
}
|
|
}
|
|
trigger_else = {
|
|
faith = {
|
|
NOT = { has_doctrine = doctrine_adultery_men_accepted }
|
|
}
|
|
}
|
|
}
|
|
|
|
ep2_wedding.3500 = {
|
|
type = activity_event
|
|
title = ep2_wedding.3500.t
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_family_relative_1 = { sex_same_as = scope:my_family_relative_2 }
|
|
ep2_wedding_3500_relations_root_shared_trigger = yes
|
|
}
|
|
desc = ep2_wedding.3500.intro_plural
|
|
}
|
|
desc = ep2_wedding.3500.intro
|
|
}
|
|
desc = ep2_wedding.3500.intro_connector
|
|
first_valid = {
|
|
# BOTH
|
|
triggered_desc = {
|
|
trigger = { ep2_wedding_3500_relations_spouse_shared_trigger = yes }
|
|
desc = ep2_wedding.3500.relation_shared
|
|
}
|
|
desc = ep2_wedding.3500.relation
|
|
}
|
|
first_valid = {
|
|
# Personal concerns
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_family_relative_1 = {
|
|
OR = {
|
|
ep2_wedding_3500_dislikes_fornicators_trigger = yes
|
|
has_imprisonment_reason = scope:other_family_spouse
|
|
has_relation_rival = scope:other_family_spouse
|
|
opinion = {
|
|
target = scope:other_family_spouse
|
|
value <= -25
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = {
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = { # Fornicator or adulterer trait, and not accepted in faith
|
|
scope:my_family_relative_1 = { ep2_wedding_3500_dislikes_fornicators_trigger = yes }
|
|
}
|
|
desc = ep2_wedding.3500.fornicator
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_family_relative_1 = { has_imprisonment_reason = scope:other_family_spouse }
|
|
NOT = {
|
|
scope:my_family_relative_1 = { has_imprisonment_reason = scope:my_family_spouse }
|
|
}
|
|
}
|
|
desc = ep2_wedding.3500.criminal
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
has_relation_rival = scope:other_family_spouse
|
|
opinion = {
|
|
target = scope:other_family_spouse
|
|
value <= -25
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3500.dislike
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# Political concerns
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:other_family_spouse.house
|
|
exists = scope:my_family_spouse.house
|
|
OR = {
|
|
scope:other_family_spouse.dynasty.dynasty_prestige_level < scope:my_family_spouse.dynasty.dynasty_prestige_level
|
|
scope:other_family_spouse.house.house_head ?= {
|
|
is_ruler = yes
|
|
OR = {
|
|
any_neighboring_top_liege_realm_owner = {scope:my_family_spouse.house.house_head.liege ?= this }
|
|
AND = {
|
|
exists = liege
|
|
scope:my_family_spouse.house.house_head.liege ?= liege
|
|
}
|
|
}
|
|
}
|
|
AND = {
|
|
NOT = {
|
|
scope:my_family_relative_1 = { has_trait = cynical }
|
|
}
|
|
scope:my_family_spouse.faith = {
|
|
NOR = {
|
|
this = scope:other_family_spouse.faith
|
|
faith_hostility_level = {
|
|
target = scope:other_family_spouse.faith
|
|
value = 0 # Accepted
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = {
|
|
random_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_spouse.dynasty.dynasty_prestige_level < scope:my_family_spouse.dynasty.dynasty_prestige_level
|
|
}
|
|
desc = ep2_wedding.3500.renown
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_spouse.house.house_head ?= {
|
|
is_ruler = yes
|
|
OR = {
|
|
any_neighboring_top_liege_realm_owner = {scope:my_family_spouse.house.house_head.liege ?= this }
|
|
AND = {
|
|
exists = liege
|
|
scope:my_family_spouse.house.house_head.liege ?= liege
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3500.realms
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
NOT = {
|
|
scope:my_family_relative_1 = { has_trait = cynical }
|
|
}
|
|
scope:my_family_spouse.faith = {
|
|
NOR = {
|
|
this = scope:other_family_spouse.faith
|
|
faith_hostility_level = {
|
|
target = scope:other_family_spouse.faith
|
|
value = 0 # Accepted
|
|
}
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3500.faith
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# Petty concerns
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_spouse = { is_healthy = no }
|
|
scope:my_family_spouse = { is_healthy = yes }
|
|
scope:my_family_relative_1 = { is_healthy = yes }
|
|
}
|
|
desc = ep2_wedding.3500.health
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_spouse.ai_boldness > low_positive_boldness
|
|
scope:my_family_spouse.ai_boldness < low_negative_boldness
|
|
scope:my_family_relative_1.ai_boldness < low_negative_boldness
|
|
}
|
|
desc = ep2_wedding.3500.bold
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_spouse.ai_boldness < low_negative_boldness
|
|
scope:my_family_spouse.ai_boldness > low_positive_boldness
|
|
scope:my_family_relative_1.ai_boldness > low_positive_boldness
|
|
}
|
|
desc = ep2_wedding.3500.shy
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:other_family_spouse.ai_honor < low_positive_honor
|
|
scope:my_family_relative_1.ai_honor >= low_positive_honor
|
|
}
|
|
desc = ep2_wedding.3500.dishonorable
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_family_spouse.age <= scope:other_family_spouse.age_minus_10
|
|
ep2_wedding_3500_active_bedroom_trigger = yes
|
|
}
|
|
desc = ep2_wedding.3500.old
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_family_spouse.age >= scope:other_family_spouse.age_plus_10
|
|
ep2_wedding_3500_active_bedroom_trigger = yes
|
|
}
|
|
desc = ep2_wedding.3500.young
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
ep2_wedding_3500_active_bedroom_trigger = yes
|
|
scope:other_family_spouse = { has_trait = beauty_bad }
|
|
NOR = {
|
|
scope:my_family_spouse = { has_trait = beauty_bad }
|
|
scope:my_family_relative_1 = { has_trait = beauty_bad }
|
|
}
|
|
}
|
|
desc = ep2_wedding.3500.beauty
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
NOR = {
|
|
AND = {
|
|
scope:other_family_spouse = { is_healthy = no }
|
|
scope:my_family_spouse = { is_healthy = yes }
|
|
scope:my_family_relative_1 = { is_healthy = yes }
|
|
}
|
|
AND = {
|
|
scope:other_family_spouse.ai_boldness > low_positive_boldness
|
|
scope:my_family_spouse.ai_boldness < low_negative_boldness
|
|
scope:my_family_relative_1.ai_boldness < low_negative_boldness
|
|
}
|
|
AND = {
|
|
scope:other_family_spouse.ai_boldness < low_negative_boldness
|
|
scope:my_family_spouse.ai_boldness > low_positive_boldness
|
|
scope:my_family_relative_1.ai_boldness > low_positive_boldness
|
|
}
|
|
AND = {
|
|
scope:other_family_spouse.ai_honor < low_positive_honor
|
|
scope:my_family_relative_1.ai_honor >= low_positive_honor
|
|
}
|
|
AND = {
|
|
ep2_wedding_3500_active_bedroom_trigger = yes
|
|
OR = {
|
|
scope:my_family_spouse.age <= scope:other_family_spouse.age_plus_10
|
|
scope:my_family_spouse.age >= scope:other_family_spouse.age_minus_10
|
|
AND = {
|
|
scope:other_family_spouse = { has_trait = beauty_bad }
|
|
NOR = {
|
|
scope:my_family_spouse = { has_trait = beauty_bad }
|
|
scope:my_family_relative_1 = { has_trait = beauty_bad }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
desc = ep2_wedding.3500.fallback
|
|
}
|
|
}
|
|
}
|
|
}
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:my_family_relative_2 = {
|
|
ep2_wedding_3500_dislikes_fornicators_trigger = yes
|
|
has_imprisonment_reason = scope:other_family_spouse
|
|
has_relation_rival = scope:other_family_spouse
|
|
opinion = {
|
|
target = scope:other_family_spouse
|
|
value <= -25
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3500.agree
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
exists = scope:my_family_spouse
|
|
scope:other_family_spouse.house.house_head = { is_allied_to = scope:my_family_spouse.house.house_head }
|
|
}
|
|
desc = ep2_wedding.3500.alliance
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = {
|
|
AND = {
|
|
scope:other_family_spouse = { has_trait = beauty_bad }
|
|
scope:my_family_spouse = {
|
|
NOT = { has_trait = beauty_bad }
|
|
}
|
|
}
|
|
AND = {
|
|
scope:other_family_spouse = { is_healthy = no }
|
|
scope:my_family_spouse = { is_healthy = yes }
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.3500.compromise
|
|
}
|
|
desc = ep2_wedding.3500.time
|
|
}
|
|
}
|
|
theme = marriage
|
|
override_background = { reference = feast }
|
|
left_portrait = {
|
|
character = scope:my_family_relative_1
|
|
animation = worry
|
|
}
|
|
center_portrait = {
|
|
character = root
|
|
animation = personality_rational
|
|
}
|
|
right_portrait = {
|
|
character = scope:my_family_relative_2
|
|
animation = thinking
|
|
}
|
|
lower_right_portrait = scope:activity.special_guest:spouse_1
|
|
lower_left_portrait = scope:activity.special_guest:spouse_2
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
is_adult = yes
|
|
# Spouse 1 and 2 are not root
|
|
NOR = {
|
|
scope:activity.special_guest:spouse_1 ?= root
|
|
scope:activity.special_guest:spouse_2 ?= root
|
|
}
|
|
# More relatives of your family's spouse are about
|
|
trigger_if = {
|
|
limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 }
|
|
NOR = {
|
|
has_relation_rival = scope:activity.special_guest:spouse_1
|
|
opinion = {
|
|
target = scope:activity.special_guest:spouse_1
|
|
value <= -25
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_1 = {
|
|
any_close_or_extended_family_member = {
|
|
count >= 2
|
|
wedding_3500_shared_trigger = yes
|
|
NOR = {
|
|
has_relation_rival = scope:activity.special_guest:spouse_2
|
|
opinion = {
|
|
target = scope:activity.special_guest:spouse_2
|
|
value <= -25
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
trigger_else_if = {
|
|
limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_2 }
|
|
NOR = {
|
|
has_relation_rival = scope:activity.special_guest:spouse_2
|
|
opinion = {
|
|
target = scope:activity.special_guest:spouse_2
|
|
value <= -25
|
|
}
|
|
}
|
|
scope:activity.special_guest:spouse_2 = {
|
|
any_close_or_extended_family_member = {
|
|
count >= 2
|
|
wedding_3500_shared_trigger = yes
|
|
NOR = {
|
|
has_relation_rival = scope:activity.special_guest:spouse_2
|
|
opinion = {
|
|
target = scope:activity.special_guest:spouse_2
|
|
value <= -25
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# No dice
|
|
trigger_else = { always = no }
|
|
}
|
|
|
|
immediate = {
|
|
save_scope_as = my_family_relative
|
|
# Save family members related to spouse
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { is_close_or_extended_family_of = scope:activity.special_guest:spouse_1 }
|
|
wedding_3500_save_family_effect = { SPOUSE = spouse_1 }
|
|
}
|
|
else = {
|
|
wedding_3500_save_family_effect = { SPOUSE = spouse_2 }
|
|
}
|
|
}
|
|
}
|
|
|
|
# Agree
|
|
option = {
|
|
name = ep2_wedding.3500.a
|
|
trigger = { exists = scope:my_family_relative_1 }
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_wedding_relation_bond
|
|
CHARACTER = scope:my_family_relative_1
|
|
OPINION = default_friend_opinion
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_boldness = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
# Rebuff
|
|
option = {
|
|
name = ep2_wedding.3500.b
|
|
trigger = {
|
|
scope:my_family_relative_2 ?= {
|
|
NOR = {
|
|
ep2_wedding_3500_dislikes_fornicators_trigger = yes
|
|
has_imprisonment_reason = scope:other_family_spouse
|
|
has_relation_rival = scope:other_family_spouse
|
|
opinion = {
|
|
target = scope:other_family_spouse
|
|
value <= -25
|
|
}
|
|
}
|
|
}
|
|
}
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_wedding_relation_bond
|
|
CHARACTER = scope:my_family_relative_2
|
|
OPINION = default_friend_opinion
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_boldness = -0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
#It matters not
|
|
option = {
|
|
name = ep2_wedding.3500.d
|
|
add_prestige = minor_prestige_gain
|
|
stress_impact = {
|
|
compassionate = miniscule_stress_impact_gain
|
|
content = miniscule_stress_impact_gain
|
|
callous = minor_stress_impact_loss
|
|
ambitious = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_compassion = -0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
#It is in god's hands now
|
|
option = {
|
|
name = ep2_wedding.3500.e
|
|
add_piety = minor_prestige_gain
|
|
stress_impact = {
|
|
cynical = miniscule_stress_impact_gain
|
|
diligent = miniscule_stress_impact_gain
|
|
zealous = minor_stress_impact_loss
|
|
lazy = minor_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
ai_value_modifier = {
|
|
ai_zeal = 0.5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
############################
|
|
## Wedding Ceremony Events
|
|
## 4000-4999
|
|
## by Veronica Pazos
|
|
############################
|
|
|
|
scripted_trigger ep2_wedding_4000_valid_betrothed = {
|
|
feast_default_adult_participant_trigger = yes #includes is_ai = yes
|
|
can_marry_character_trigger = { CHARACTER = root.intent_target }
|
|
NOR = {
|
|
age < root.intent_target.age_minus_10
|
|
age > root.intent_target.age_plus_10
|
|
}
|
|
}
|
|
|
|
# Non-spouse: Matchmaking Intent - This wedding is so cool, you guys should also get married
|
|
|
|
ep2_wedding.4000 = {
|
|
type = activity_event
|
|
title = ep2_wedding.4000.t
|
|
desc = {
|
|
desc = ep2_wedding.4000.desc.intro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:matchmaked_scope = {
|
|
exists = var:wedding_good_match
|
|
var:wedding_good_match = scope:objective_scope
|
|
}
|
|
}
|
|
desc = ep2_wedding.4000.desc.good_match
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:matchmaked_scope = {
|
|
exists = var:wedding_no_match
|
|
var:wedding_no_match = scope:objective_scope
|
|
}
|
|
}
|
|
desc = ep2_wedding.4000.desc.no_match
|
|
}
|
|
}
|
|
}
|
|
theme = wedding_ceremony_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = scheme
|
|
}
|
|
right_portrait = {
|
|
character = scope:matchmaked_scope
|
|
animation = personality_rational
|
|
}
|
|
lower_center_portrait = scope:objective_scope
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
NOT = { has_variable = had_ep2_wedding_matchmaking_event_var }
|
|
NOR = { #you are not one of the spouses
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
has_activity_intent = matchmaking_intent #you're trying to matchmake someone
|
|
intent_target = { is_alive = yes } #they're not dead yet
|
|
scope:activity = { #there's someone to pair them with
|
|
any_attending_character = {
|
|
ep2_wedding_4000_valid_betrothed = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
}
|
|
|
|
immediate = {
|
|
intent_target = { save_scope_as = matchmaked_scope }
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = { ep2_wedding_4000_valid_betrothed = yes }
|
|
save_scope_as = objective_scope
|
|
}
|
|
}
|
|
set_variable = {
|
|
name = had_ep2_wedding_matchmaking_event_var
|
|
days = 90 #enough to not affect this wedding
|
|
}
|
|
}
|
|
|
|
#Go for it
|
|
option = {
|
|
name = ep2_wedding.4000.a
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:matchmaked_scope
|
|
50 = { # success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
add = 20
|
|
attraction >= medium_positive_attraction
|
|
}
|
|
modifier = {
|
|
add = 30
|
|
attraction >= high_positive_attraction
|
|
}
|
|
desc = ep2_wedding.4000.a.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.4000.a.success
|
|
left_icon = scope:matchmaked_scope
|
|
right_icon = scope:objective_scope
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = ep2_wedding_4000_log_success
|
|
character = root
|
|
target = scope:matchmaked_scope
|
|
|
|
# Effect
|
|
root = { custom_tooltip = ep2_wedding.wedding_intent.success.tt }
|
|
scope:matchmaked_scope = { create_betrothal = scope:objective_scope }
|
|
}
|
|
}
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
50 = { # fail
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.4000.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.4000.a.failure
|
|
left_icon = scope:matchmaked_scope
|
|
add_prestige = minor_prestige_loss
|
|
scope:matchmaked_scope = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = annoyed_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
craven = medium_stress_impact_gain
|
|
patient = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = craven
|
|
has_trait = patient
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Be subtle
|
|
option = {
|
|
name = ep2_wedding.4000.b
|
|
duel = {
|
|
skill = intrigue
|
|
target = scope:matchmaked_scope
|
|
30 = { # success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.4000.b.success
|
|
send_interface_toast = {
|
|
title = ep2_wedding.4000.b.success
|
|
left_icon = scope:matchmaked_scope
|
|
right_icon = scope:objective_scope
|
|
scope:activity = {
|
|
add_activity_log_entry = {
|
|
key = ep2_wedding_4000_log_success
|
|
character = root
|
|
target = scope:matchmaked_scope
|
|
|
|
# Effect
|
|
custom_tooltip = ep2_wedding.wedding_intent.success.tt
|
|
scope:matchmaked_scope = { create_betrothal = scope:objective_scope }
|
|
}
|
|
}
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
70 = { # fail
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.4000.a.failure
|
|
send_interface_toast = {
|
|
title = ep2_wedding.4000.a.failure
|
|
left_icon = scope:matchmaked_scope
|
|
scope:matchmaked_scope = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = annoyed_opinion
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
brave = medium_stress_impact_gain
|
|
impatient = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = brave
|
|
has_trait = impatient
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Nahhh
|
|
option = {
|
|
name = ep2_wedding.4000.c
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 1.25
|
|
OR = {
|
|
has_trait = callous
|
|
has_trait = sadistic
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 0
|
|
scope:matchmaked_scope = {
|
|
trait_compatibility = {
|
|
target = scope:objective_scope
|
|
value >= high_positive_trait_compatibility
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Host: Gain Renown Intent - Bring a white animal to the Banquet to flex (it's painted)
|
|
|
|
scripted_trigger ep2_wedding_2010_impressed = {
|
|
OR = { #what kind of people would be impressed by a legendary animal?
|
|
has_trait = gregarious
|
|
has_trait = brave
|
|
has_trait = lifestyle_reveler
|
|
has_trait = lifestyle_hunter
|
|
has_trait = drunkard
|
|
has_trait = gallant #white animals were a pretty chivalrous thing to find/hunt
|
|
}
|
|
}
|
|
|
|
ep2_wedding.2010 = {
|
|
type = activity_event
|
|
title = ep2_wedding.2010.t
|
|
desc = {
|
|
desc = ep2_wedding.2010.desc.intro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
OR = { #you are one of the spouses
|
|
root = scope:activity.special_guest:spouse_1
|
|
root = scope:activity.special_guest:spouse_2
|
|
}
|
|
}
|
|
desc = ep2_wedding.2010.desc_spouse
|
|
}
|
|
}
|
|
}
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
animation = personality_rational
|
|
}
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
this = scope:host #you're the host
|
|
has_activity_intent = diplomatic_intent
|
|
intent_target = { ep2_wedding_2010_impressed = yes }
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = deceitful
|
|
}
|
|
modifier = {
|
|
factor = 0.5
|
|
has_trait = honest
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
select_local_animal_effect = { TYPE = big } # Save scope to limit possible animals: any/big/small/dangerous/harmless/prowling
|
|
intent_target = {
|
|
add_to_list = ep2_wedding_2010_impressed_list
|
|
save_scope_as = diplo_target
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:activity = { #there's someone else to impress
|
|
any_attending_character = {
|
|
feast_default_adult_participant_trigger = yes
|
|
NOR = {
|
|
this = root
|
|
this = root.intent_target
|
|
}
|
|
ep2_wedding_2010_impressed = yes
|
|
}
|
|
}
|
|
}
|
|
scope:activity = {
|
|
every_attending_character = {
|
|
limit = {
|
|
feast_default_adult_participant_trigger = yes
|
|
NOR = {
|
|
this = root
|
|
this = root.intent_target
|
|
}
|
|
ep2_wedding_2010_impressed = yes
|
|
}
|
|
add_to_list = ep2_wedding_2010_impressed_list
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Yeah
|
|
option = {
|
|
name = ep2_wedding.2010.a
|
|
custom_tooltip = ep2_wedding.2010.a.tt
|
|
every_in_list = {
|
|
list = ep2_wedding_2010_impressed_list
|
|
custom = ep2_wedding.2010.impressed_list
|
|
add_opinion = {
|
|
modifier = wbanquet_white_animal_opinion
|
|
target = root
|
|
opinion = 20
|
|
}
|
|
}
|
|
#Does anyone suspect?
|
|
hidden_effect = {
|
|
if = {
|
|
limit = {
|
|
scope:diplo_target = {
|
|
feast_default_adult_participant_trigger = yes
|
|
OR = {
|
|
has_trait = cynical
|
|
has_trait = callous
|
|
}
|
|
has_any_good_relationship_with_root_trigger = no
|
|
}
|
|
}
|
|
random_list = {
|
|
50 = { #they don't notice
|
|
remove_variable = animal_type
|
|
if = {
|
|
limit = {
|
|
scope:diplo_target = { activity_wedding_diplomatic_intent_impressible_target = yes }
|
|
}
|
|
send_interface_toast = {
|
|
title = ep2_wedding.2000.after.subjugate
|
|
left_icon = scope:diplo_target
|
|
custom_tooltip = {
|
|
text = ep2_wedding.2000.after.subjugate.tt
|
|
complete_activity_intent = yes
|
|
create_title_and_vassal_change = {
|
|
type = swear_fealty
|
|
save_scope_as = title_change
|
|
add_claim_on_loss = no
|
|
}
|
|
scope:diplo_target = {
|
|
change_liege = {
|
|
liege = root
|
|
change = scope:title_change
|
|
}
|
|
}
|
|
resolve_title_and_vassal_change = scope:title_change
|
|
}
|
|
}
|
|
}
|
|
}
|
|
50 = { #they do
|
|
trigger_event = ep2_wedding.2011
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
feast_default_adult_participant_trigger = yes
|
|
OR = {
|
|
has_trait = cynical
|
|
has_trait = callous
|
|
}
|
|
has_any_good_relationship_with_root_trigger = no
|
|
}
|
|
}
|
|
}
|
|
random_list = {
|
|
50 = { #they don't notice
|
|
remove_variable = animal_type
|
|
}
|
|
50 = { #they do
|
|
trigger_event = ep2_wedding.2011
|
|
}
|
|
}
|
|
}
|
|
}
|
|
remove_short_term_gold = minor_gold_value
|
|
stress_impact = {
|
|
greedy = medium_stress_impact_gain
|
|
honest = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
short_term_gold <= minor_gold_value
|
|
}
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = greedy
|
|
has_trait = honest
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Nah
|
|
option = {
|
|
name = ep2_wedding.2010.b
|
|
remove_variable = animal_type
|
|
stress_impact = {
|
|
gallant = medium_stress_impact_gain
|
|
gregarious = medium_stress_impact_gain
|
|
lifestyle_reveler = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = gallant
|
|
has_trait = gregarious
|
|
has_trait = lifestyle_reveler
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 1.25
|
|
has_trait = deceitful
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Follow up: You get called out
|
|
|
|
ep2_wedding.2011 = {
|
|
type = activity_event
|
|
title = ep2_wedding.2011.t
|
|
desc = ep2_wedding.2011.desc
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = arrogant
|
|
has_trait = wrathful
|
|
has_trait = vengeful
|
|
has_trait = callous
|
|
has_trait = brave
|
|
}
|
|
}
|
|
animation = anger
|
|
}
|
|
animation = stress
|
|
}
|
|
right_portrait = {
|
|
character = scope:doubting_guest
|
|
animation = schadenfreude
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
random_attending_character = {
|
|
limit = {
|
|
feast_default_adult_participant_trigger = yes
|
|
OR = {
|
|
has_trait = cynical
|
|
has_trait = callous
|
|
}
|
|
has_any_good_relationship_with_root_trigger = no
|
|
}
|
|
save_scope_as = doubting_guest
|
|
}
|
|
}
|
|
}
|
|
|
|
#Confess
|
|
option = {
|
|
name = ep2_wedding.2011.a
|
|
add_prestige = minor_prestige_loss
|
|
add_piety = minor_piety_gain
|
|
scope:doubting_guest = {
|
|
add_opinion = {
|
|
target = root
|
|
opinion = 10
|
|
modifier = pleased_opinion
|
|
}
|
|
}
|
|
stress_impact = {
|
|
arrogant = medium_stress_impact_gain
|
|
ambitious = medium_stress_impact_gain
|
|
deceitful = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = greedy
|
|
has_trait = honest
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Double down
|
|
option = {
|
|
name = ep2_wedding.2011.b
|
|
duel = { #they believe you
|
|
skill = intrigue
|
|
target = scope:doubting_guest
|
|
50 = {
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
scope:doubting_guest = {
|
|
OR = {
|
|
has_trait = trusting
|
|
has_trait = loyal
|
|
}
|
|
}
|
|
}
|
|
desc = ep2_wedding.2011.b.success
|
|
send_interface_toast = {
|
|
left_icon = scope:doubting_guest
|
|
title = ep2_wedding.2011.b.success
|
|
custom_tooltip = ep2_wedding.wedding_intent.success.tt
|
|
complete_activity_intent = yes
|
|
}
|
|
}
|
|
50 = { #they don't
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.2011.b.failure
|
|
send_interface_toast = {
|
|
left_icon = scope:doubting_guest
|
|
title = ep2_wedding.2011.b.failure
|
|
scope:doubting_guest = {
|
|
add_opinion = {
|
|
target = root
|
|
opinion = -10
|
|
modifier = annoyed_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
trusting = medium_stress_impact_gain
|
|
just = medium_stress_impact_gain
|
|
honest = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = honest
|
|
has_trait = trusting
|
|
has_trait = just
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
after = {
|
|
remove_variable = animal_type
|
|
}
|
|
}
|
|
|
|
# Spouse/Non-spouse: Someone is dangerously close to a well of wine
|
|
|
|
scripted_trigger ep2_wedding_2020_would_fall_trigger = {
|
|
is_adult = yes
|
|
is_alive = yes
|
|
feast_default_adult_participant_trigger = yes
|
|
drinks_alcohol_trigger = yes
|
|
OR = {
|
|
has_trait = lifestyle_reveler
|
|
has_trait = drunkard
|
|
has_trait = gregarious
|
|
has_trait = arbitrary
|
|
}
|
|
}
|
|
|
|
ep2_wedding.2020 = {
|
|
type = activity_event
|
|
title = ep2_wedding.2020.t
|
|
desc = ep2_wedding.2020.desc
|
|
theme = wedding_banquet_activity
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
has_trait = callous
|
|
has_trait = sadistic
|
|
has_trait = deceitful
|
|
}
|
|
}
|
|
animation = scheme
|
|
}
|
|
animation = worry
|
|
}
|
|
right_portrait = {
|
|
character = scope:drunk_guest
|
|
animation = drink_goblet
|
|
}
|
|
|
|
cooldown = { years = 5 }
|
|
|
|
trigger = {
|
|
#DLC check.
|
|
has_ep2_dlc_trigger = yes
|
|
this != scope:host
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
ep2_wedding_2020_would_fall_trigger = yes
|
|
}
|
|
has_activity_option = {
|
|
category = wedding_option_food
|
|
option = wedding_food_good
|
|
}
|
|
NOT = {
|
|
has_variable = has_had_2020_event
|
|
}
|
|
}
|
|
scope:activity = { NOT = { has_variable = ep2_wedding_2020_well_var } }
|
|
}
|
|
|
|
weight_multiplier = {
|
|
base = 1
|
|
modifier = {
|
|
factor = 2
|
|
has_activity_intent = banquet_mischief_intent
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
scope:activity = {
|
|
any_attending_character = {
|
|
has_trait = drunkard
|
|
}
|
|
}
|
|
}
|
|
modifier = {
|
|
is_ai = yes
|
|
factor = 0.1
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
scope:activity = {
|
|
set_variable = ep2_wedding_2020_well_var
|
|
random_attending_character = {
|
|
limit = {
|
|
ep2_wedding_2020_would_fall_trigger = yes
|
|
}
|
|
weight = {
|
|
base = 1
|
|
modifier = {
|
|
add = 50
|
|
has_trait = drunkard
|
|
}
|
|
}
|
|
save_scope_as = drunk_guest
|
|
}
|
|
set_variable = has_had_2020_event
|
|
}
|
|
}
|
|
|
|
#Tell them
|
|
option = {
|
|
name = ep2_wedding.2020.a
|
|
duel = {
|
|
skill = diplomacy
|
|
target = scope:drunk_guest
|
|
50 = { #they listen to you
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.2020.a.success
|
|
send_interface_toast = {
|
|
left_icon = scope:drunk_guest
|
|
title = ep2_wedding.2020.a.success
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_wbanquet_saved_from_well
|
|
CHARACTER = scope:drunk_guest
|
|
OPINION = 20
|
|
}
|
|
add_piety = minor_piety_gain
|
|
}
|
|
}
|
|
50 = { #they fall down
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.2020.a.failure
|
|
send_interface_toast = {
|
|
left_icon = scope:drunk_guest
|
|
title = ep2_wedding.2020.a.failure
|
|
scope:drunk_guest = {
|
|
add_prestige = minor_prestige_loss
|
|
increase_wounds_effect = { REASON = fall }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
deceitful = medium_stress_impact_gain
|
|
callous = medium_stress_impact_gain
|
|
sadistic = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = deceitful
|
|
has_trait = callous
|
|
has_trait = sadistic
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#Don't
|
|
option = {
|
|
name = ep2_wedding.2020.b
|
|
random_list = {
|
|
50 = { #they don't fall
|
|
desc = ep2_wedding.2020.b.success
|
|
send_interface_toast = {
|
|
left_icon = scope:drunk_guest
|
|
title = ep2_wedding.2020.b.success
|
|
#nothing happens
|
|
}
|
|
}
|
|
50 = { #they fall down
|
|
modifier = {
|
|
factor = 2
|
|
scope:drunk_guest = { has_trait = drunkard }
|
|
}
|
|
desc = ep2_wedding.2020.a.failure
|
|
send_interface_toast = {
|
|
left_icon = scope:drunk_guest
|
|
title = ep2_wedding.2020.a.failure
|
|
add_stress = major_stress_impact_loss
|
|
scope:drunk_guest = {
|
|
add_prestige = minor_prestige_loss
|
|
increase_wounds_effect = { REASON = fall }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
compassionate = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
has_trait = compassionate
|
|
}
|
|
}
|
|
}
|
|
|
|
#Crash Wedding Intent - Push them
|
|
option = {
|
|
name = ep2_wedding.2020.c
|
|
trigger = {
|
|
OR = {
|
|
has_activity_intent = banquet_mischief_intent
|
|
AND = {
|
|
has_activity_intent = murder_attendee_intent
|
|
intent_target = scope:drunk_guest
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = available_because_intent_tt
|
|
duel = {
|
|
skill = prowess
|
|
target = scope:drunk_guest
|
|
50 = { #you push them
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.2020.c.success
|
|
send_interface_toast = {
|
|
left_icon = scope:drunk_guest
|
|
title = ep2_wedding.2020.c.success
|
|
custom_tooltip = ep2_wedding.wedding_intent.success.tt
|
|
add_stress = major_stress_impact_loss
|
|
scope:drunk_guest = {
|
|
add_prestige = minor_prestige_loss
|
|
increase_wounds_effect = { REASON = fall }
|
|
}
|
|
complete_activity_intent = yes
|
|
}
|
|
}
|
|
50 = { #they kick you back
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.2020.c.failure
|
|
send_interface_toast = {
|
|
left_icon = root
|
|
right_icon = scope:drunk_guest
|
|
title = ep2_wedding.2020.c.failure
|
|
increase_wounds_effect = { REASON = fight }
|
|
}
|
|
}
|
|
10 = { #they die
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
min = -49
|
|
}
|
|
desc = ep2_wedding.2020.c.death
|
|
send_interface_toast = {
|
|
left_icon = root
|
|
right_icon = scope:drunk_guest
|
|
title = ep2_wedding.2020.c.death
|
|
scope:drunk_guest = {
|
|
death = { death_reason = death_accident }
|
|
}
|
|
known_murder_effect = {
|
|
VICTIM = scope:drunk_guest
|
|
MURDERER = root
|
|
EXPOSER = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
calm = medium_stress_impact_gain
|
|
forgiving = medium_stress_impact_gain
|
|
compassionate = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = calm
|
|
has_trait = forgiving
|
|
has_trait = compassionate
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|