1528 lines
30 KiB
Text
1528 lines
30 KiB
Text
namespace = ep3_camp_temperament
|
|
|
|
####
|
|
# ep3_camp_temperament.0001-0009 - To Feed a Friend
|
|
# ep3_camp_temperament.0010-0019 - In Every Corner
|
|
# ep3_camp_temperament.0020-0029 - Hearsay
|
|
# ep3_camp_temperament.0030-0039 - Mutiny
|
|
# ep3_camp_temperament.0040-0049 - A Devoted Follower
|
|
####
|
|
|
|
##################################################
|
|
# To Feed a Friend
|
|
# by Veronica Pazos
|
|
##################################################
|
|
|
|
# Your followers chip in with some Provisions if you're low
|
|
ep3_camp_temperament.0001 = {
|
|
type = character_event
|
|
title = ep3_camp_temperament.0001.t
|
|
desc = ep3_camp_temperament.0001.desc
|
|
theme = laamp
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_trait = paranoid
|
|
}
|
|
animation = paranoia
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_trait = callous
|
|
}
|
|
animation = dismissal
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = trusting
|
|
has_trait = gregarious
|
|
}
|
|
}
|
|
animation = wedding_happy_cry
|
|
}
|
|
animation = happiness
|
|
}
|
|
right_portrait = {
|
|
character = scope:potential_friend
|
|
animation = toast_goblet
|
|
}
|
|
lower_center_portrait = scope:friend_2
|
|
lower_right_portrait = scope:friend_3
|
|
cooldown = { years = 10 }
|
|
override_background = { reference = corridor_day }
|
|
|
|
trigger = {
|
|
has_domicile_temperament_high = yes
|
|
domicile = { provisions <= provisions_privation_threshold_start }
|
|
any_courtier = {
|
|
is_available_healthy_ai_adult = yes
|
|
has_good_opinion_of_root_trigger = yes
|
|
count >= 3
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
random_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
has_good_opinion_of_root_trigger = yes
|
|
}
|
|
weight = {
|
|
base = 1
|
|
modifier = {
|
|
add = 5
|
|
has_relation_potential_friend = root
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
has_relation_friend = root
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
is_knight_of = root
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
has_any_court_position = yes
|
|
}
|
|
}
|
|
save_scope_as = potential_friend
|
|
}
|
|
random_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
this != scope:potential_friend
|
|
has_good_opinion_of_root_trigger = yes
|
|
}
|
|
save_scope_as = friend_2
|
|
}
|
|
random_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
this != scope:potential_friend
|
|
this != scope:friend_2
|
|
has_good_opinion_of_root_trigger = yes
|
|
}
|
|
save_scope_as = friend_3
|
|
}
|
|
}
|
|
|
|
option = { # Let's eat all together!
|
|
name = ep3_camp_temperament.0001.a
|
|
trigger = {
|
|
has_trait = gregarious
|
|
NOR = {
|
|
has_trait = paranoid
|
|
has_trait = callous
|
|
}
|
|
}
|
|
every_courtier = {
|
|
add_opinion = {
|
|
target = root
|
|
opinion = 20
|
|
modifier = grateful_opinion
|
|
}
|
|
}
|
|
|
|
stress_impact = {
|
|
gregarious = minor_stress_impact_loss
|
|
disloyal = major_stress_impact_gain
|
|
shy = major_stress_impact_gain
|
|
gluttonous = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = shy
|
|
has_trait = gluttonous
|
|
has_trait = disloyal
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = gregarious
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # You're out to get me
|
|
name = ep3_camp_temperament.0001.b
|
|
trigger = {
|
|
OR = {
|
|
has_trait = paranoid
|
|
has_trait = callous
|
|
}
|
|
}
|
|
rightfully_imprison_character_less_verbose_effect = {
|
|
TARGET = scope:potential_friend
|
|
IMPRISONER = root
|
|
}
|
|
add_dread = medium_dread_gain
|
|
|
|
stress_impact = {
|
|
paranoid = major_stress_impact_loss
|
|
callous = major_stress_impact_loss
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = paranoid
|
|
has_trait = callous
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Can we just sell them for some gold pls
|
|
name = ep3_camp_temperament.0001.c
|
|
add_gold = {
|
|
value = medium_provisions_gain
|
|
multiply = 0.1
|
|
}
|
|
|
|
stress_impact = {
|
|
greedy = medium_stress_impact_loss
|
|
gregarious = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = callous
|
|
has_trait = paranoid
|
|
has_trait = gregarious
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = greedy
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # I treasure _you_ the most
|
|
name = ep3_camp_temperament.0001.d
|
|
trigger = {
|
|
NOR = {
|
|
has_trait = paranoid
|
|
has_trait = callous
|
|
}
|
|
}
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_treasured_more_than_food
|
|
CHARACTER = scope:potential_friend
|
|
OPINION = default_friend_opinion
|
|
}
|
|
|
|
stress_impact = {
|
|
trusting = medium_stress_impact_loss
|
|
compassionate = medium_stress_impact_loss
|
|
callous = medium_stress_impact_gain
|
|
paranoid = medium_stress_impact_gain
|
|
deceitful = medium_stress_impact_gain
|
|
shy = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = callous
|
|
has_trait = paranoid
|
|
has_trait = deceitful
|
|
has_trait = shy
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = deceitful
|
|
has_trait = shy
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Thank you, amigos
|
|
name = ep3_camp_temperament.0001.e
|
|
domicile ?= {
|
|
change_provisions = medium_provisions_gain
|
|
}
|
|
|
|
stress_impact = {
|
|
callous = medium_stress_impact_gain
|
|
paranoid = medium_stress_impact_gain
|
|
gregarious = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
add = -50
|
|
OR = {
|
|
has_trait = callous
|
|
has_trait = paranoid
|
|
has_trait = gregarious
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 3
|
|
domicile = {
|
|
provisions <= provisions_privation_threshold_low
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# In Every Corner
|
|
# by Veronica Pazos
|
|
##################################################
|
|
|
|
# You suspect your enemies come from within your own camp
|
|
ep3_camp_temperament.0010 = {
|
|
type = character_event
|
|
title = ep3_camp_temperament.0010.t
|
|
desc = {
|
|
desc = ep3_camp_temperament.0010.desc.intro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:enemy = { is_spouse_of = root }
|
|
}
|
|
desc = ep3_camp_temperament.0010.desc.spouse
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:enemy = { is_child_of = root }
|
|
}
|
|
desc = ep3_camp_temperament.0010.desc.child
|
|
}
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:enemy = { has_relation_friend = root }
|
|
}
|
|
desc = ep3_camp_temperament.0010.desc.friend
|
|
}
|
|
}
|
|
}
|
|
|
|
theme = laamp
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_trait = paranoid
|
|
}
|
|
animation = paranoia
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = callous
|
|
has_trait = disloyal
|
|
has_trait = wrathful
|
|
has_trait = vengeful
|
|
}
|
|
}
|
|
animation = anger
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = trusting
|
|
has_trait = gregarious
|
|
}
|
|
}
|
|
animation = crying
|
|
}
|
|
animation = stress
|
|
}
|
|
right_portrait = {
|
|
character = scope:enemy
|
|
animation = go_to_your_room
|
|
}
|
|
cooldown = { years = 10 }
|
|
override_background = { reference = corridor_night }
|
|
override_effect_2d = {
|
|
reference = rain
|
|
}
|
|
|
|
trigger = {
|
|
has_domicile_temperament_low = yes
|
|
any_courtier = {
|
|
is_available_healthy_ai_adult = yes
|
|
has_bad_opinion_of_root_trigger = yes
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
random_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
has_bad_opinion_of_root_trigger = yes
|
|
}
|
|
weight = { # Let's grab someone interesting
|
|
base = 1
|
|
modifier = {
|
|
add = 5
|
|
is_spouse_of = root
|
|
}
|
|
modifier = {
|
|
add = 5
|
|
is_child_of = root
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
has_relation_friend = root
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
has_really_bad_opinion_of_root_trigger = yes
|
|
}
|
|
}
|
|
save_scope_as = enemy
|
|
}
|
|
}
|
|
|
|
option = { # Et tu, Brute?
|
|
name = ep3_camp_temperament.0010.a
|
|
flavor = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = { # These people would know Latin
|
|
location = { geographical_region = world_europe }
|
|
}
|
|
desc = ep3_camp_temperament.0010.a.flavor
|
|
}
|
|
}
|
|
}
|
|
trigger = {
|
|
scope:enemy = {
|
|
OR = {
|
|
is_spouse_of = root
|
|
is_child_of = root
|
|
}
|
|
}
|
|
}
|
|
add_internal_flag = special
|
|
custom_tooltip = ep3_camp_temperament_0010_tt
|
|
set_variable = {
|
|
name = et_tu_brute_var
|
|
value = scope:enemy
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ep3_heartbreak_modifier
|
|
years = 15
|
|
}
|
|
stress_impact = {
|
|
base = minor_stress_impact_gain # Always stressful to be betrayed by a close family member
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = forgiving
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = vengeful
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # I'll pay you and shut up
|
|
name = ep3_camp_temperament.0010.b
|
|
trigger = {
|
|
has_trait = ambitious
|
|
NOT = { has_trait = vengeful }
|
|
}
|
|
pay_short_term_gold = {
|
|
target = scope:enemy
|
|
gold = minor_gold_value
|
|
}
|
|
scope:enemy = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = bribed_opinion
|
|
opinion = 15
|
|
}
|
|
}
|
|
every_courtier = {
|
|
limit = {
|
|
this != scope:enemy
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
modifier = reputation_opinion
|
|
opinion = 10
|
|
}
|
|
}
|
|
stress_impact = {
|
|
ambitious = minor_stress_impact_loss
|
|
greedy = medium_stress_impact_gain
|
|
vengeful = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = generous
|
|
has_trait = callous
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = greedy
|
|
has_trait = vengeful
|
|
gold <= medium_gold_value
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # It's a PLOT
|
|
name = ep3_camp_temperament.0010.c
|
|
trigger = {
|
|
has_trait = vengeful
|
|
NOT = { has_trait = ambitious }
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ep3_determined_modifier
|
|
years = 5
|
|
}
|
|
stress_impact = {
|
|
calm = medium_stress_impact_gain
|
|
compassionate = medium_stress_impact_gain
|
|
forgiving = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = calm
|
|
has_trait = compassionate
|
|
has_trait = forgiving
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = vengeful
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # I'll give them some food to placate them
|
|
name = ep3_camp_temperament.0010.d
|
|
trigger = {
|
|
NOT = { has_trait = vengeful }
|
|
}
|
|
domicile ?= {
|
|
change_provisions = minor_provisions_loss
|
|
}
|
|
every_courtier = {
|
|
add_opinion = {
|
|
target = root
|
|
modifier = grateful_opinion
|
|
opinion = 10
|
|
}
|
|
}
|
|
|
|
stress_impact = {
|
|
vengeful = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = vengeful
|
|
has_trait = greedy
|
|
has_trait = wrathful
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = forgiving
|
|
domicile ?= { provisions <= provisions_privation_threshold_start }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Opt out
|
|
name = ep3_camp_temperament.0010.e
|
|
|
|
stress_impact = {
|
|
vengeful = medium_stress_impact_gain
|
|
wrathful = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Hearsay
|
|
# by Veronica Pazos
|
|
##################################################
|
|
|
|
scripted_effect ep3_camp_temperament_0020_secret_effect = {
|
|
custom_tooltip = ep3_camp_temperament_0020_d_tt
|
|
hidden_effect = {
|
|
send_interface_toast = {
|
|
title = ep3_camp_temperament_0020_d_tt
|
|
left_icon = scope:secret_owner
|
|
scope:secret = {
|
|
reveal_to = root
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Follower reveals secret from province holder or holder's liege
|
|
ep3_camp_temperament.0020 = {
|
|
type = character_event
|
|
title = ep3_camp_temperament.0020.t
|
|
desc = ep3_camp_temperament.0020.desc
|
|
theme = laamp
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_trait = deceitful
|
|
}
|
|
animation = schadenfreude
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = journaller
|
|
has_trait = lifestyle_poet
|
|
has_trait = violet_poet
|
|
}
|
|
}
|
|
animation = happiness
|
|
}
|
|
animation = interested
|
|
}
|
|
right_portrait = {
|
|
character = scope:secret_giver
|
|
animation = throne_room_bow_1
|
|
}
|
|
lower_right_portrait = scope:secret_owner
|
|
cooldown = { years = 10 }
|
|
|
|
trigger = {
|
|
has_domicile_temperament_high = yes
|
|
any_courtier = {
|
|
is_available_healthy_ai_adult = yes
|
|
}
|
|
OR = { # Holder or holder's liege have a secret
|
|
domicile.domicile_location.county.holder ?= {
|
|
any_secret = {
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
domicile.domicile_location.county.holder.top_liege ?= {
|
|
any_secret = {
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
random_list = {
|
|
1 = {
|
|
trigger = {
|
|
domicile.domicile_location.county.holder ?= {
|
|
any_secret = {
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
domicile.domicile_location.county.holder = {
|
|
save_scope_as = secret_owner
|
|
random_secret = {
|
|
limit = {
|
|
NOT = { is_known_by = root }
|
|
}
|
|
save_scope_as = secret
|
|
}
|
|
}
|
|
}
|
|
1 = {
|
|
trigger = {
|
|
domicile.domicile_location.county.holder.top_liege ?= {
|
|
any_secret = {
|
|
NOT = { is_known_by = root }
|
|
}
|
|
}
|
|
}
|
|
domicile.domicile_location.county.holder.top_liege = {
|
|
save_scope_as = secret_owner
|
|
random_secret = {
|
|
limit = {
|
|
NOT = { is_known_by = root }
|
|
}
|
|
save_scope_as = secret
|
|
}
|
|
}
|
|
}
|
|
}
|
|
random_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
}
|
|
weight = { # Find someone relevant
|
|
base = 1
|
|
modifier = {
|
|
add = 2
|
|
intrigue > medium_skill_rating
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
has_any_court_position = yes
|
|
}
|
|
modifier = {
|
|
add = 1
|
|
OR = {
|
|
has_trait = lustful
|
|
has_trait = rakish
|
|
}
|
|
}
|
|
}
|
|
save_scope_as = secret_giver
|
|
}
|
|
}
|
|
|
|
option = { # I need to write this down
|
|
name = ep3_camp_temperament.0020.a
|
|
trigger = {
|
|
OR = {
|
|
has_trait = journaller
|
|
has_trait = lifestyle_poet
|
|
has_trait = violet_poet
|
|
}
|
|
}
|
|
ep3_camp_temperament_0020_secret_effect = yes
|
|
add_character_modifier = {
|
|
modifier = ep3_inspired_by_life
|
|
years = 15
|
|
}
|
|
stress_impact = {
|
|
journaller = medium_stress_impact_loss
|
|
lifestyle_poet = medium_stress_impact_loss
|
|
violet_poet = medium_stress_impact_loss
|
|
deceitful = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
has_trait = deceitful
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = journaller
|
|
has_trait = lifestyle_poet
|
|
has_trait = violet_poet
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Yummy yummy tasty gossip
|
|
name = ep3_camp_temperament.0020.b
|
|
trigger = {
|
|
has_trait = deceitful
|
|
}
|
|
ep3_camp_temperament_0020_secret_effect = yes
|
|
random_list = {
|
|
1 = {
|
|
scope:secret_giver = {
|
|
add_intrigue_skill = 1
|
|
}
|
|
}
|
|
1 = {
|
|
scope:secret_giver = {
|
|
add_intrigue_skill = 2
|
|
}
|
|
}
|
|
1 = {
|
|
scope:secret_giver = {
|
|
add_intrigue_skill = 3
|
|
}
|
|
}
|
|
}
|
|
|
|
stress_impact = {
|
|
callous = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
has_trait = callous
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # What were you doing slacking around huh
|
|
name = ep3_camp_temperament.0020.c
|
|
trigger = {
|
|
can_add_hook = {
|
|
target = scope:secret_giver
|
|
type = strong_prostitute_blackmail_hook
|
|
}
|
|
}
|
|
add_hook = {
|
|
target = scope:secret_giver
|
|
type = strong_prostitute_blackmail_hook
|
|
}
|
|
|
|
stress_impact = {
|
|
diligent = medium_stress_impact_loss
|
|
lustful = medium_stress_impact_gain
|
|
rakish = medium_stress_impact_gain
|
|
trusting = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = lustful
|
|
has_trait = rakish
|
|
has_trait = trusting
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = diligent
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Tell me at once!
|
|
name = ep3_camp_temperament.0020.d
|
|
trigger = { # You have access to a better version of this option
|
|
NOR = {
|
|
has_trait = journaller
|
|
has_trait = lifestyle_poet
|
|
has_trait = violet_poet
|
|
has_trait = deceitful
|
|
}
|
|
}
|
|
ep3_camp_temperament_0020_secret_effect = yes
|
|
|
|
stress_impact = {
|
|
compassionate = medium_stress_impact_loss
|
|
patient = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
has_trait = patient
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = compassionate
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Secrets are evil
|
|
name = ep3_camp_temperament.0020.e
|
|
add_piety = minor_piety_gain
|
|
|
|
stress_impact = {
|
|
zealous = medium_stress_impact_loss
|
|
deceitful = medium_stress_impact_gain
|
|
callous = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = deceitful
|
|
has_trait = callous
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = zealous
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# Mutiny!
|
|
# by Veronica Pazos
|
|
##################################################
|
|
|
|
# A follower tries to lead a mutiny against you
|
|
ep3_camp_temperament.0030 = {
|
|
type = character_event
|
|
title = ep3_camp_temperament.0030.t
|
|
desc = {
|
|
desc = ep3_camp_temperament.0030.desc.intro
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
domicile ?= {
|
|
provisions <= provisions_privation_threshold_low
|
|
}
|
|
}
|
|
desc = ep3_camp_temperament.0030.desc.no_food
|
|
}
|
|
desc = ep3_camp_temperament.0030.desc.other
|
|
}
|
|
desc = ep3_camp_temperament.0030.desc.outro
|
|
}
|
|
theme = laamp
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = compassionate
|
|
has_trait = craven
|
|
}
|
|
}
|
|
animation = worry
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
has_trait = arrogant
|
|
has_trait = wrathful
|
|
has_trait = vengeful
|
|
has_trait = callous
|
|
}
|
|
}
|
|
animation = anger
|
|
}
|
|
animation = stress
|
|
}
|
|
right_portrait = {
|
|
character = scope:cocky_follower
|
|
animation = chess_cocky
|
|
}
|
|
lower_left_portrait = {
|
|
trigger = {
|
|
has_trait = craven
|
|
NOR = {
|
|
has_trait = vengeful
|
|
has_trait = wrathful
|
|
has_trait = callous
|
|
}
|
|
exists = scope:bus_follower
|
|
}
|
|
character = scope:bus_follower
|
|
}
|
|
cooldown = { years = 10 }
|
|
override_background = { reference = bp1_bonfire }
|
|
|
|
trigger = {
|
|
has_domicile_temperament_low = yes
|
|
any_courtier = {
|
|
is_available_healthy_ai_adult = yes
|
|
has_bad_opinion_of_root_trigger = yes
|
|
}
|
|
}
|
|
|
|
weight_multiplier = { #More likely to happen if they're starving
|
|
base = 1
|
|
modifier = {
|
|
factor = 2
|
|
domicile ?= {
|
|
provisions <= provisions_privation_threshold_low
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
random_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
has_bad_opinion_of_root_trigger = yes
|
|
}
|
|
weight = { # Let's grab someone interesting
|
|
base = 1
|
|
modifier = {
|
|
add = 5
|
|
OR = {
|
|
has_trait = gluttonous
|
|
has_trait = comfort_eater
|
|
}
|
|
root.domicile ?= {
|
|
provisions <= provisions_privation_threshold_low
|
|
}
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
is_spouse_of = root
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
is_child_of = root
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
has_really_bad_opinion_of_root_trigger = yes
|
|
}
|
|
}
|
|
save_scope_as = cocky_follower
|
|
}
|
|
every_courtier = {
|
|
limit = { # Including the cocky guy
|
|
is_available_healthy_ai_adult = yes
|
|
has_bad_opinion_of_root_trigger = yes
|
|
}
|
|
add_to_list = mutiniers
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_courtier = {
|
|
is_available_healthy_ai_adult = yes
|
|
this != scope:cocky_follower
|
|
}
|
|
}
|
|
random_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
this != scope:cocky_follower
|
|
}
|
|
weight = {
|
|
base = 1
|
|
modifier = {
|
|
add = 5
|
|
has_court_position = second_camp_officer
|
|
}
|
|
modifier = {
|
|
add = 2
|
|
has_any_court_position = yes
|
|
}
|
|
}
|
|
save_scope_as = bus_follower
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # It was actually this guy's fault
|
|
name = ep3_camp_temperament.0030.a
|
|
trigger = {
|
|
has_trait = craven
|
|
NOR = {
|
|
has_trait = vengeful
|
|
has_trait = wrathful
|
|
has_trait = callous
|
|
}
|
|
exists = scope:bus_follower # If there's someone to actually throw under the bus
|
|
}
|
|
scope:bus_follower = {
|
|
increase_wounds_effect = { REASON = beaten }
|
|
}
|
|
stress_impact = {
|
|
craven = minor_stress_impact_loss
|
|
deceitful = minor_stress_impact_loss
|
|
brave = major_stress_impact_gain
|
|
wrathful = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 0 # Don't get people beaten up for no reason
|
|
modifier = {
|
|
add = 200
|
|
has_trait = craven
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # I'm gonna beat you up
|
|
name = ep3_camp_temperament.0030.b
|
|
trigger = {
|
|
has_trait = wrathful
|
|
NOR = {
|
|
has_trait = craven
|
|
has_trait = calm
|
|
has_trait = temperate
|
|
}
|
|
}
|
|
duel = {
|
|
skill = prowess
|
|
target = scope:cocky_follower
|
|
50 = {
|
|
desc = ep3_camp_temperament.0030.b.success
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = 3.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep3_camp_temperament.0030.b.success
|
|
left_icon = root
|
|
right_icon = scope:cocky_follower
|
|
scope:cocky_follower = {
|
|
death = { death_reason = death_beaten }
|
|
}
|
|
}
|
|
}
|
|
50 = {
|
|
desc = ep3_camp_temperament.0030.b.failure
|
|
compare_modifier = {
|
|
value = scope:duel_value
|
|
multiplier = -3.5
|
|
}
|
|
send_interface_toast = {
|
|
title = ep3_camp_temperament.0030.b.failure
|
|
left_icon = root
|
|
right_icon = scope:cocky_follower
|
|
increase_wounds_no_death_effect = { REASON = beaten }
|
|
}
|
|
}
|
|
}
|
|
stress_impact = {
|
|
base = medium_stress_impact_gain
|
|
wrathful = major_stress_impact_loss
|
|
compassionate = major_stress_impact_gain
|
|
calm = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 0
|
|
modifier = {
|
|
add = 200
|
|
has_trait = wrathful
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # You said what
|
|
name = ep3_camp_temperament.0030.c
|
|
reason = dread
|
|
trigger = {
|
|
dread >= 75
|
|
NOT = { has_trait = craven }
|
|
}
|
|
# This should be enough reward
|
|
scope:cocky_follower = {
|
|
give_nickname = nick_brown_cheeks
|
|
add_character_modifier = { #Forever
|
|
modifier = ep3_poopy_pants
|
|
}
|
|
}
|
|
# But we'll give you something else, I guess
|
|
every_courtier = {
|
|
limit = {
|
|
this != scope:cocky_follower
|
|
NOR = {
|
|
has_trait = brave
|
|
has_trait = callous
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
opinion = 5
|
|
modifier = respect_opinion
|
|
}
|
|
}
|
|
add_dread = minor_dread_gain
|
|
stress_impact = {
|
|
vengeful = medium_stress_impact_loss
|
|
calm = major_stress_impact_gain
|
|
compassionate = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = calm
|
|
has_trait = compassionate
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
has_trait = vengeful
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # You can go if you want to
|
|
name = ep3_camp_temperament.0030.d
|
|
every_in_list = {
|
|
list = mutiniers
|
|
save_temporary_scope_as = followers_to_leave
|
|
root = { remove_courtier_or_guest = scope:followers_to_leave }
|
|
}
|
|
every_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
NOT = { is_in_list = mutiniers }
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
opinion = 10
|
|
modifier = benevolent_to_mutiniers_opinion
|
|
}
|
|
}
|
|
stress_impact = {
|
|
calm = medium_stress_impact_loss
|
|
temperate = medium_stress_impact_loss
|
|
compassionate = medium_stress_impact_loss
|
|
trusting = medium_stress_impact_loss
|
|
callous = medium_stress_impact_gain
|
|
wrathful = medium_stress_impact_gain
|
|
vengeful = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = wrathful
|
|
has_trait = vengeful
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = calm
|
|
has_trait = temperate
|
|
has_trait = compassionate
|
|
has_trait = trusting
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Take the money and shut up
|
|
name = ep3_camp_temperament.0030.e
|
|
pay_short_term_gold = {
|
|
target = scope:cocky_follower
|
|
gold = medium_gold_value
|
|
}
|
|
every_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
has_bad_opinion_of_root_trigger = yes
|
|
}
|
|
add_opinion = {
|
|
target = root
|
|
opinion = 10
|
|
modifier = pleased_opinion
|
|
}
|
|
}
|
|
stress_impact = {
|
|
greedy = medium_stress_impact_gain
|
|
wrathful = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
add = -50
|
|
OR = {
|
|
has_trait = greedy
|
|
has_trait = wrathful
|
|
gold <= medium_gold_value
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
##################################################
|
|
# A Devoted Follower
|
|
# by Veronica Pazos
|
|
##################################################
|
|
|
|
scripted_trigger ep3_camp_temperament_0040_valid_scheme_trigger = {
|
|
scheme_owner = root
|
|
exists = scheme_target_character
|
|
any_scheme_agent_slot = { }
|
|
NOR = {
|
|
scheme_target_character = $FOLLOWER$
|
|
any_scheme_agent_character = { this = $FOLLOWER$ }
|
|
}
|
|
}
|
|
|
|
# Your follower offers themselves as an agent for your scheme
|
|
ep3_camp_temperament.0040 = {
|
|
type = character_event
|
|
title = ep3_camp_temperament.0040.t
|
|
desc = ep3_camp_temperament.0040.desc
|
|
theme = laamp
|
|
left_portrait = {
|
|
character = root
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_trait = arrogant
|
|
}
|
|
animation = hero_flex
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
has_trait = humble
|
|
}
|
|
animation = shame
|
|
}
|
|
triggered_animation = {
|
|
trigger = {
|
|
OR = {
|
|
intrigue >= high_skill_rating
|
|
has_focus = intrigue_skulduggery_focus
|
|
has_trait = deceitful
|
|
}
|
|
}
|
|
animation = scheme
|
|
}
|
|
animation = interested
|
|
}
|
|
right_portrait = {
|
|
character = scope:follower
|
|
animation = admiration
|
|
}
|
|
lower_right_portrait = scope:target
|
|
cooldown = { years = 10 }
|
|
override_background = { reference = corridor_day }
|
|
|
|
trigger = {
|
|
has_domicile_temperament_high = yes
|
|
any_courtier = {
|
|
is_available_healthy_ai_adult = yes
|
|
has_good_opinion_of_root_trigger = yes
|
|
save_temporary_scope_as = follower_temp
|
|
root = {
|
|
any_scheme = {
|
|
ep3_camp_temperament_0040_valid_scheme_trigger = { FOLLOWER = scope:follower_temp }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
immediate = {
|
|
random_dummy_gender_soldier_effect = { SCOPE_NAME = dummy_gender }
|
|
random_courtier = {
|
|
limit = {
|
|
is_available_healthy_ai_adult = yes
|
|
has_good_opinion_of_root_trigger = yes
|
|
save_temporary_scope_as = follower_temp
|
|
root = {
|
|
any_scheme = {
|
|
ep3_camp_temperament_0040_valid_scheme_trigger = { FOLLOWER = scope:follower_temp }
|
|
save_temporary_scope_as = scheme_temp
|
|
}
|
|
}
|
|
}
|
|
weight = {
|
|
base = 2
|
|
modifier = {
|
|
add = 2
|
|
has_trait = eccentric
|
|
}
|
|
modifier = {
|
|
add = 1
|
|
has_trait = gregarious
|
|
}
|
|
modifier = {
|
|
add = 1
|
|
diplomacy >= medium_skill_rating
|
|
}
|
|
modifier = {
|
|
add = -1
|
|
is_close_family_of = root
|
|
}
|
|
}
|
|
save_scope_as = follower
|
|
assign_quirk_effect = yes
|
|
set_variable = {
|
|
name = devotee_agent_var
|
|
value = root
|
|
}
|
|
}
|
|
scope:scheme_temp = {
|
|
save_scope_as = my_scheme
|
|
scheme_target_character = { save_scope_as = target }
|
|
}
|
|
}
|
|
|
|
option = { # You're right, I'm great
|
|
name = ep3_camp_temperament.0040.a
|
|
trigger = {
|
|
prestige_level >= 3
|
|
NOR = {
|
|
intrigue >= high_skill_rating
|
|
has_focus = intrigue_skulduggery_focus
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ep3_arrogant_schemer_modifier
|
|
years = 15
|
|
}
|
|
stress_impact = {
|
|
arrogant = major_stress_impact_loss
|
|
gregarious = medium_stress_impact_loss
|
|
humble = major_stress_impact_gain
|
|
shy = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = arrogant
|
|
has_trait = gregarious
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = humble
|
|
has_trait = shy
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # I'll do the job myself
|
|
name = ep3_camp_temperament.0040.b
|
|
trigger = {
|
|
OR = {
|
|
intrigue >= high_skill_rating
|
|
has_focus = intrigue_skulduggery_focus
|
|
}
|
|
}
|
|
scope:my_scheme = {
|
|
if = {
|
|
limit = { scheme_agent_charges < opportunity_cap_value }
|
|
change_opportunities = 1
|
|
}
|
|
add_scheme_modifier = {
|
|
type = ep3_self_employed_scheme_modifier
|
|
}
|
|
}
|
|
|
|
stress_impact = {
|
|
arrogant = major_stress_impact_loss
|
|
deceitful = medium_stress_impact_loss
|
|
calm = medium_stress_impact_gain
|
|
temperate = medium_stress_impact_gain
|
|
humble = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = calm
|
|
has_trait = temperate
|
|
has_trait = humble
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = arrogant
|
|
has_trait = deceitful
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # What a great friend you are
|
|
name = ep3_camp_temperament.0040.c
|
|
progress_towards_friend_effect = {
|
|
REASON = friend_my_biggest_fan
|
|
CHARACTER = scope:follower
|
|
OPINION = default_friend_opinion
|
|
}
|
|
|
|
stress_impact = {
|
|
gregarious = medium_stress_impact_loss
|
|
trusting = medium_stress_impact_loss
|
|
callous = medium_stress_impact_gain
|
|
shy = medium_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
OR = {
|
|
has_trait = callous
|
|
has_trait = shy
|
|
}
|
|
}
|
|
modifier = {
|
|
factor = 2
|
|
OR = {
|
|
has_trait = gregarious
|
|
has_trait = trusting
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
option = { # Sure, join in!
|
|
name = ep3_camp_temperament.0040.d
|
|
custom_tooltip = {
|
|
text = ep3_camp_temperament.0040.d.tt
|
|
scope:my_scheme = {
|
|
add_agent_slot = agent_devotee
|
|
random_scheme_agent_slot = {
|
|
limit = {
|
|
is_agent_slot_type = agent_devotee
|
|
is_filled = no
|
|
}
|
|
save_scope_as = slot
|
|
scope:follower = { add_to_agent_slot = scope:slot }
|
|
}
|
|
}
|
|
}
|
|
ai_chance = {
|
|
base = 200 # Best option for the AI
|
|
}
|
|
}
|
|
|
|
option = { # Just stay there and admire me
|
|
name = ep3_camp_temperament.0040.e
|
|
add_prestige = minor_prestige_gain
|
|
|
|
stress_impact = {
|
|
arrogant = major_stress_impact_loss
|
|
humble = major_stress_impact_gain
|
|
}
|
|
ai_chance = {
|
|
base = 100
|
|
modifier = {
|
|
factor = 0
|
|
has_trait = humble
|
|
}
|
|
modifier = { # If AI is running low on Prestige
|
|
factor = 2
|
|
prestige <= medium_prestige_value
|
|
}
|
|
}
|
|
}
|
|
}
|