part 2
This commit is contained in:
parent
bbd44e2a61
commit
b92cc3ab2d
19 changed files with 29483 additions and 166 deletions
969
common/task_contracts/laamp_nm_contracts.txt
Normal file
969
common/task_contracts/laamp_nm_contracts.txt
Normal file
|
|
@ -0,0 +1,969 @@
|
|||
##################################################
|
||||
# INFO
|
||||
# Extra contracts for laamps.
|
||||
##################################################
|
||||
|
||||
laamp_boost_legitimacy_contract = {
|
||||
group = laamp_contracts_diplomacy_group
|
||||
icon = "gfx/interface/icons/scheme_types/diplomacy.dds"
|
||||
travel = yes
|
||||
use_diplomatic_range = yes
|
||||
|
||||
valid_to_create = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
employer_has_treasury_to_offer_job_trigger = yes
|
||||
valid_laamp_sensible_start_trigger = yes
|
||||
scope:employer = {
|
||||
legitimacy_level <= 2
|
||||
top_liege = this
|
||||
is_landed = yes
|
||||
is_ai = yes
|
||||
NOR = {
|
||||
location = root.location
|
||||
government_has_flag = government_is_theocracy
|
||||
}
|
||||
highest_held_title_tier > tier_county
|
||||
location = {
|
||||
squared_distance = {
|
||||
target = root.location
|
||||
value <= squared_distance_large
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_accept = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_accept_only_trigger = yes
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_continue = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = root.task_contract_employer
|
||||
LAAMP = root.task_contract_taker
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_keep = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = root.task_contract_employer
|
||||
LAAMP = root.task_contract_taker
|
||||
}
|
||||
}
|
||||
|
||||
weight = {
|
||||
# Standard weights.
|
||||
value = task_contract_weight_interesting_somewhat_rare_value
|
||||
add = laamp_contracts_weight_up_diplomacy_value
|
||||
add = laamp_contracts_weight_up_diplomacy_slight_value
|
||||
add = task_contract_weight_employer_contact_list_value
|
||||
scope:employer = { multiply = task_contract_weight_by_tier_value }
|
||||
}
|
||||
|
||||
on_create = {
|
||||
scope:contract = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_employer = {
|
||||
save_scope_as = task_contract_employer
|
||||
capital_province = {
|
||||
save_scope_as = task_contract_destination
|
||||
}
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_employer
|
||||
value = scope:task_contract_employer
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_destination
|
||||
value = scope:task_contract_destination
|
||||
}
|
||||
# Make our gold rewards static.
|
||||
grab_gold_fuzz_number_effect = yes
|
||||
save_scope_as = task_contract
|
||||
set_variable = {
|
||||
name = gold_success_standard
|
||||
value = task_contract_taker.task_contract_success_gold_gain_full_value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
on_accepted = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_taker = {
|
||||
trigger_event = {
|
||||
id = ep3_contract_event.0510
|
||||
delayed = yes
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
task_contract_reward = {
|
||||
success_standard = {
|
||||
should_print_on_complete = yes
|
||||
effect = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_success_on_contract" }
|
||||
save_scope_value_as = { name = extra_reward value = flag:no }
|
||||
task_contract_taker = {
|
||||
send_interface_toast = {
|
||||
title = laamp_transport_contract.success #Re-using
|
||||
left_icon = scope:task_contract.task_contract_taker
|
||||
right_icon = scope:task_contract.task_contract_employer
|
||||
scope:task_contract = {
|
||||
# Standard Rewards.
|
||||
laamp_rewards_disburse_ordinary_currency_effect = {
|
||||
GOLD = scope:task_contract.var:gold_success_standard
|
||||
PRESTIGE = task_contract_success_prestige_gain_full_value
|
||||
PIETY = 0
|
||||
PROVISIONS = 0
|
||||
OPINION = task_contract_opinion_standard_reward_value
|
||||
OPINION_TYPE = succeeded_task_contract_opinion
|
||||
CONTACT = yes
|
||||
CONTACT_HOOK = no
|
||||
EXTRA_REWARD = scope:extra_reward
|
||||
}
|
||||
task_contract_employer = {
|
||||
add_legitimacy = minor_legitimacy_gain
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
failure_standard = {
|
||||
positive = no
|
||||
effect = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_taker = { play_sound_effect = "event:/DLC/EP3/SFX/UI/Contracts/ep3_ui_contracts_failure_on_contract" }
|
||||
save_scope_value_as = { name = extra_reward value = flag:no }
|
||||
# Standard Penalties.
|
||||
laamp_rewards_disburse_ordinary_currency_effect = {
|
||||
GOLD = 0
|
||||
PRESTIGE = task_contract_failure_prestige_loss_full_value
|
||||
PIETY = 0
|
||||
PROVISIONS = task_contract_failure_provisions_gain_minor_value
|
||||
OPINION = task_contract_opinion_standard_failure_value
|
||||
OPINION_TYPE = failed_task_contract_opinion
|
||||
CONTACT = no
|
||||
CONTACT_HOOK = no
|
||||
EXTRA_REWARD = scope:extra_reward
|
||||
}
|
||||
task_contract_employer = {
|
||||
add_legitimacy = miniscule_legitimacy_loss
|
||||
}
|
||||
}
|
||||
}
|
||||
failure_critical = {
|
||||
positive = no
|
||||
effect = {
|
||||
save_scope_as = task_contract
|
||||
# Standard Penalties.
|
||||
laamp_rewards_disburse_ordinary_currency_effect = {
|
||||
GOLD = 0
|
||||
PRESTIGE = task_contract_failure_prestige_loss_double_value
|
||||
PIETY = 0
|
||||
PROVISIONS = task_contract_failure_provisions_gain_minor_value
|
||||
OPINION = task_contract_opinion_critical_failure_value
|
||||
OPINION_TYPE = failed_task_contract_opinion
|
||||
CONTACT = no
|
||||
CONTACT_HOOK = no
|
||||
EXTRA_REWARD = scope:extra_reward
|
||||
}
|
||||
task_contract_employer = {
|
||||
add_legitimacy = medium_legitimacy_loss
|
||||
add_prestige = task_contract_failure_prestige_loss_double_value
|
||||
add_stress = medium_stress_gain
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
laamp_rid_councillor_contract = {
|
||||
group = laamp_contracts_martial_group
|
||||
icon = "gfx/interface/icons/scheme_types/martial.dds"
|
||||
travel = yes
|
||||
use_diplomatic_range = yes
|
||||
is_criminal = yes
|
||||
|
||||
valid_to_create = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
employer_has_treasury_to_offer_job_trigger = yes
|
||||
valid_laamp_sensible_start_trigger = yes
|
||||
scope:employer = {
|
||||
top_liege = this
|
||||
is_landed = yes
|
||||
is_ai = yes
|
||||
NOT = {
|
||||
government_has_flag = government_is_theocracy
|
||||
}
|
||||
highest_held_title_tier > tier_county #Requires a council
|
||||
location = { #Not too far away
|
||||
squared_distance = {
|
||||
target = root.location
|
||||
value <= squared_distance_large
|
||||
}
|
||||
}
|
||||
any_councillor = { #Has a councillor who they hate
|
||||
count > 1
|
||||
is_ai = yes
|
||||
reverse_opinion = {
|
||||
target = scope:employer
|
||||
value <= high_negative_opinion
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_accept = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_accept_only_trigger = yes
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_continue = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = root.task_contract_employer
|
||||
LAAMP = root.task_contract_taker
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_keep = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = root.task_contract_employer
|
||||
LAAMP = root.task_contract_taker
|
||||
}
|
||||
}
|
||||
|
||||
weight = {
|
||||
# Standard weights.
|
||||
value = task_contract_weight_interesting_somewhat_rare_value
|
||||
add = laamp_contracts_weight_up_martial_value
|
||||
add = laamp_contracts_weight_up_martial_slight_value
|
||||
add = task_contract_weight_employer_contact_list_value
|
||||
scope:employer = { multiply = task_contract_weight_by_tier_value }
|
||||
}
|
||||
|
||||
on_create = {
|
||||
scope:contract = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_employer = {
|
||||
save_scope_as = task_contract_employer
|
||||
capital_province = {
|
||||
save_scope_as = task_contract_destination
|
||||
}
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_employer
|
||||
value = scope:task_contract_employer
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_destination
|
||||
value = scope:task_contract_destination
|
||||
}
|
||||
# Make our gold rewards static.
|
||||
grab_gold_fuzz_number_effect = yes
|
||||
save_scope_as = task_contract
|
||||
set_variable = {
|
||||
name = gold_success_critical
|
||||
value = task_contract_success_gold_gain_full_value
|
||||
}
|
||||
set_variable = {
|
||||
name = gold_success_standard
|
||||
value = task_contract_success_gold_gain_half_value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
on_accepted = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_taker = {
|
||||
trigger_event = {
|
||||
id = ep3_contract_event.0550
|
||||
delayed = no
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
task_contract_reward = {
|
||||
success_critical = {
|
||||
should_print_on_complete = yes
|
||||
effect = {
|
||||
save_scope_value_as = { name = extra_reward value = flag:no }
|
||||
save_scope_as = task_contract
|
||||
laamp_rewards_disburse_ordinary_currency_effect = {
|
||||
GOLD = scope:task_contract.var:gold_success_critical
|
||||
PRESTIGE = task_contract_success_prestige_gain_full_value
|
||||
PIETY = 0
|
||||
PROVISIONS = task_contract_success_provisions_gain_major_value
|
||||
OPINION = task_contract_opinion_excelled_reward_value
|
||||
OPINION_TYPE = critically_succeeded_task_contract_opinion
|
||||
CONTACT = yes
|
||||
CONTACT_HOOK = yes
|
||||
EXTRA_REWARD = scope:extra_reward
|
||||
}
|
||||
}
|
||||
}
|
||||
success_standard = {
|
||||
should_print_on_complete = yes
|
||||
effect = {
|
||||
save_scope_value_as = { name = extra_reward value = flag:no }
|
||||
save_scope_as = task_contract
|
||||
laamp_rewards_disburse_ordinary_currency_effect = {
|
||||
GOLD = scope:task_contract.var:gold_success_standard
|
||||
PRESTIGE = task_contract_success_prestige_gain_half_value
|
||||
PIETY = 0
|
||||
PROVISIONS = task_contract_success_provisions_gain_minor_value
|
||||
OPINION = task_contract_opinion_standard_reward_value
|
||||
OPINION_TYPE = succeeded_task_contract_opinion
|
||||
CONTACT = yes
|
||||
CONTACT_HOOK = no
|
||||
EXTRA_REWARD = scope:extra_reward
|
||||
}
|
||||
task_contract_taker = {
|
||||
# Update gallowsbait score.
|
||||
laamp_rewards_apply_criminal_xp_effect = {
|
||||
TRACK = marauder
|
||||
XP_MIN = gallowsbait_xp_medium_gain
|
||||
XP_MAX = gallowsbait_xp_medium_gain
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
failure_standard = {
|
||||
positive = no
|
||||
effect = {
|
||||
save_scope_value_as = { name = extra_reward value = flag:no }
|
||||
save_scope_as = task_contract
|
||||
task_contract_taker = {
|
||||
add_prestige = task_contract_failure_prestige_loss_full_value
|
||||
add_piety = minor_piety_loss
|
||||
reverse_add_opinion = {
|
||||
opinion = -35
|
||||
modifier = failed_task_contract_opinion
|
||||
target = scope:task_contract.task_contract_employer
|
||||
}
|
||||
# Update gallowsbait score.
|
||||
laamp_rewards_apply_criminal_xp_effect = {
|
||||
TRACK = marauder
|
||||
XP_MIN = gallowsbait_xp_medium_gain
|
||||
XP_MAX = gallowsbait_xp_medium_gain
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
failure_critical = {
|
||||
positive = no
|
||||
effect = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_taker = {
|
||||
add_prestige = task_contract_failure_prestige_loss_double_value
|
||||
add_piety = medium_piety_loss
|
||||
add_stress = minor_stress_gain
|
||||
reverse_add_opinion = {
|
||||
opinion = -65
|
||||
modifier = failed_task_contract_opinion
|
||||
target = scope:task_contract.task_contract_employer
|
||||
}
|
||||
# Update gallowsbait score.
|
||||
laamp_rewards_apply_criminal_xp_effect = {
|
||||
TRACK = marauder
|
||||
XP_MIN = gallowsbait_xp_major_gain
|
||||
XP_MAX = gallowsbait_xp_major_gain
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
laamp_gain_wanderer_contract = {
|
||||
group = laamp_contracts_martial_group
|
||||
icon = "gfx/interface/icons/scheme_types/martial.dds"
|
||||
travel = yes
|
||||
use_diplomatic_range = yes
|
||||
|
||||
valid_to_create = {
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
valid_laamp_sensible_start_trigger = yes
|
||||
prestige_level >= 2
|
||||
scope:employer = {
|
||||
is_landed = no
|
||||
is_ai = yes
|
||||
in_diplomatic_range = root
|
||||
prestige_level < root.prestige_level
|
||||
location = { #Not too far away
|
||||
squared_distance = {
|
||||
target = root.location
|
||||
value <= squared_distance_large
|
||||
}
|
||||
}
|
||||
primary_title = {
|
||||
is_mercenary_company = no
|
||||
}
|
||||
NOR = {
|
||||
government_has_flag = government_is_theocracy
|
||||
government_allows = administrative
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_accept = {
|
||||
valid_laamp_basic_accept_only_trigger = yes
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
is_available = yes
|
||||
prestige_level >= 2
|
||||
scope:employer = {
|
||||
is_landed = no
|
||||
is_ai = yes
|
||||
in_diplomatic_range = root
|
||||
prestige_level < root.prestige_level
|
||||
location = { #Not too far away
|
||||
squared_distance = {
|
||||
target = root.location
|
||||
value <= squared_distance_large
|
||||
}
|
||||
}
|
||||
primary_title = {
|
||||
is_mercenary_company = no
|
||||
}
|
||||
NOR = {
|
||||
government_has_flag = government_is_theocracy
|
||||
government_allows = administrative
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
weight = {
|
||||
# Keep it rare and use it to fill in gaps between other contracts
|
||||
value = task_contract_weight_interesting_very_rare_value
|
||||
}
|
||||
|
||||
on_create = {
|
||||
scope:contract = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_employer = {
|
||||
save_scope_as = task_contract_employer
|
||||
capital_province = {
|
||||
save_scope_as = task_contract_destination
|
||||
}
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_employer
|
||||
value = scope:task_contract_employer
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_destination
|
||||
value = scope:task_contract_destination
|
||||
}
|
||||
# Make our gold rewards static.
|
||||
grab_gold_fuzz_number_effect = yes
|
||||
save_scope_as = task_contract
|
||||
set_variable = {
|
||||
name = gold_success_standard
|
||||
value = task_contract_success_gold_gain_half_value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
on_accepted = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_employer = {
|
||||
save_scope_as = task_contract_employer
|
||||
capital_province = {
|
||||
save_scope_as = task_contract_destination
|
||||
}
|
||||
}
|
||||
task_contract_taker = {
|
||||
trigger_event = {
|
||||
id = ep3_contract_event.0570
|
||||
delayed = no
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
task_contract_reward = {
|
||||
success_standard = {
|
||||
should_print_on_complete = yes
|
||||
effect = {
|
||||
save_scope_value_as = { name = extra_reward value = flag:no }
|
||||
save_scope_as = task_contract
|
||||
laamp_rewards_disburse_ordinary_currency_effect = {
|
||||
GOLD = scope:task_contract.var:gold_success_standard
|
||||
PRESTIGE = task_contract_success_prestige_gain_half_value
|
||||
PIETY = 0
|
||||
PROVISIONS = 0
|
||||
OPINION = task_contract_opinion_standard_reward_value
|
||||
OPINION_TYPE = succeeded_task_contract_opinion
|
||||
CONTACT = no
|
||||
CONTACT_HOOK = no
|
||||
EXTRA_REWARD = scope:extra_reward
|
||||
}
|
||||
task_contract_taker = {
|
||||
add_intrigue_lifestyle_xp = medium_lifestyle_xp
|
||||
add_courtier = scope:task_contract.task_contract_employer
|
||||
}
|
||||
}
|
||||
}
|
||||
failure_standard = {
|
||||
positive = no
|
||||
effect = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_taker = {
|
||||
add_stress = medium_stress_gain
|
||||
add_character_modifier = {
|
||||
modifier = ep3_clumsy_rescuer_modifier
|
||||
years = 5
|
||||
}
|
||||
reverse_add_opinion = {
|
||||
opinion = -50
|
||||
modifier = failed_task_contract_opinion
|
||||
target = scope:task_contract.task_contract_employer
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
laamp_find_secret_contract = {
|
||||
group = laamp_contracts_intrigue_group
|
||||
icon = "gfx/interface/icons/scheme_types/intrigue.dds"
|
||||
travel = yes
|
||||
use_diplomatic_range = yes
|
||||
|
||||
valid_to_create = {
|
||||
valid_laamp_basic_accept_only_trigger = yes
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
valid_laamp_sensible_start_trigger = yes
|
||||
scope:employer = {
|
||||
is_ai = yes
|
||||
location = { #Not too far away
|
||||
squared_distance = {
|
||||
target = root.location
|
||||
value <= squared_distance_large
|
||||
}
|
||||
}
|
||||
NOT = {
|
||||
government_has_flag = government_is_theocracy
|
||||
}
|
||||
OR = {
|
||||
any_courtier_or_guest = {
|
||||
any_secret = {
|
||||
count > 0
|
||||
NOT = { is_known_by = scope:employer }
|
||||
}
|
||||
}
|
||||
any_vassal = {
|
||||
any_secret = {
|
||||
count > 0
|
||||
NOT = { is_known_by = scope:employer }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_accept = {
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
scope:employer = {
|
||||
is_ai = yes
|
||||
location = { #Not too far away
|
||||
squared_distance = {
|
||||
target = root.location
|
||||
value <= squared_distance_large
|
||||
}
|
||||
}
|
||||
NOT = {
|
||||
government_has_flag = government_is_theocracy
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_continue = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = root.task_contract_employer
|
||||
LAAMP = root.task_contract_taker
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_keep = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = root.task_contract_employer
|
||||
LAAMP = root.task_contract_taker
|
||||
}
|
||||
scope:employer = {
|
||||
OR = {
|
||||
any_courtier_or_guest = {
|
||||
any_secret = {
|
||||
count > 0
|
||||
NOT = { is_known_by = scope:employer }
|
||||
}
|
||||
}
|
||||
any_vassal = {
|
||||
any_secret = {
|
||||
count > 0
|
||||
NOT = { is_known_by = scope:employer }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
weight = {
|
||||
value = task_contract_weight_default_value
|
||||
add = laamp_contracts_weight_up_intrigue_value
|
||||
add = task_contract_weight_employer_contact_list_value
|
||||
scope:employer = { multiply = task_contract_weight_by_tier_value }
|
||||
}
|
||||
|
||||
on_create = {
|
||||
scope:contract = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_employer = {
|
||||
save_scope_as = task_contract_employer
|
||||
if = {
|
||||
limit = {
|
||||
any_vassal = {
|
||||
any_secret = {
|
||||
count > 0
|
||||
NOT = { is_known_by = scope:task_contract_employer }
|
||||
}
|
||||
}
|
||||
}
|
||||
random_vassal = {
|
||||
limit = {
|
||||
any_secret = {
|
||||
count > 0
|
||||
NOT = { is_known_by = scope:task_contract_employer }
|
||||
}
|
||||
}
|
||||
save_scope_as = secret_haver
|
||||
}
|
||||
}
|
||||
else = {
|
||||
random_courtier_or_guest = {
|
||||
save_scope_as = secret_haver
|
||||
}
|
||||
}
|
||||
scope:secret_haver.location = {
|
||||
save_scope_as = task_contract_destination
|
||||
}
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_employer
|
||||
value = scope:task_contract_employer
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_destination
|
||||
value = scope:task_contract_destination
|
||||
}
|
||||
}
|
||||
scope:contract = {
|
||||
# Make our gold rewards static.
|
||||
grab_gold_fuzz_number_effect = yes
|
||||
save_scope_as = task_contract
|
||||
set_variable = {
|
||||
name = gold_success_standard
|
||||
value = task_contract_success_gold_gain_half_value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
on_accepted = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_employer = {
|
||||
save_scope_as = task_contract_employer
|
||||
if = {
|
||||
limit = {
|
||||
any_vassal = {
|
||||
any_secret = {
|
||||
count > 0
|
||||
NOT = { is_known_by = scope:task_contract_employer }
|
||||
}
|
||||
}
|
||||
}
|
||||
random_vassal = {
|
||||
limit = {
|
||||
any_secret = {
|
||||
count > 0
|
||||
NOT = { is_known_by = scope:task_contract_employer }
|
||||
}
|
||||
}
|
||||
save_scope_as = secret_haver
|
||||
}
|
||||
}
|
||||
else = {
|
||||
random_courtier_or_guest = {
|
||||
save_scope_as = secret_haver
|
||||
}
|
||||
}
|
||||
scope:secret_haver.location = {
|
||||
save_scope_as = task_contract_destination
|
||||
}
|
||||
}
|
||||
task_contract_taker = {
|
||||
trigger_event = {
|
||||
id = ep3_contract_event.0580
|
||||
delayed = no
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
task_contract_reward = {
|
||||
success_standard = {
|
||||
should_print_on_complete = yes
|
||||
effect = {
|
||||
save_scope_value_as = { name = extra_reward value = flag:no }
|
||||
save_scope_as = task_contract
|
||||
laamp_rewards_disburse_ordinary_currency_effect = {
|
||||
GOLD = scope:task_contract.var:gold_success_standard
|
||||
PRESTIGE = task_contract_success_prestige_gain_half_value
|
||||
PIETY = 0
|
||||
PROVISIONS = task_contract_success_provisions_gain_minor_value
|
||||
OPINION = task_contract_opinion_standard_reward_value
|
||||
OPINION_TYPE = succeeded_task_contract_opinion
|
||||
CONTACT = no
|
||||
CONTACT_HOOK = no
|
||||
EXTRA_REWARD = scope:extra_reward
|
||||
}
|
||||
}
|
||||
}
|
||||
failure_standard = {
|
||||
positive = no
|
||||
effect = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_taker = {
|
||||
add_stress = minor_stress_gain
|
||||
add_prestige = task_contract_failure_prestige_loss_full_value
|
||||
reverse_add_opinion = {
|
||||
opinion = -50
|
||||
modifier = failed_task_contract_opinion
|
||||
target = scope:task_contract.task_contract_employer
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
laamp_eliminate_heir_contract = {
|
||||
group = laamp_contracts_intrigue_group
|
||||
icon = "gfx/interface/icons/scheme_types/intrigue.dds"
|
||||
travel = yes
|
||||
use_diplomatic_range = yes
|
||||
is_criminal = yes
|
||||
|
||||
valid_to_create = {
|
||||
valid_laamp_basic_accept_only_trigger = yes
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
valid_laamp_sensible_start_trigger = yes
|
||||
scope:employer = {
|
||||
is_ai = yes
|
||||
in_diplomatic_range = root
|
||||
is_landed = yes
|
||||
location = { #Not too far away
|
||||
squared_distance = {
|
||||
target = root.location
|
||||
value <= squared_distance_large
|
||||
}
|
||||
}
|
||||
NOR = {
|
||||
government_has_flag = government_is_theocracy
|
||||
government_allows = administrative
|
||||
}
|
||||
AND = { #They have a primary heir they dislike, and another one they like
|
||||
primary_heir ?= {
|
||||
reverse_opinion = {
|
||||
target = scope:employer
|
||||
value <= high_negative_opinion
|
||||
}
|
||||
age > 16 #No murderin' babies
|
||||
}
|
||||
any_heir = {
|
||||
count > 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_accept = {
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = scope:employer
|
||||
LAAMP = root
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_continue = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = root.task_contract_employer
|
||||
LAAMP = root.task_contract_taker
|
||||
}
|
||||
}
|
||||
|
||||
valid_to_keep = {
|
||||
# Standard triggers.
|
||||
valid_laamp_basic_trigger = {
|
||||
EMPLOYER = root.task_contract_employer
|
||||
LAAMP = root.task_contract_taker
|
||||
}
|
||||
}
|
||||
|
||||
weight = { #Let's not have this happen too often
|
||||
value = task_contract_weight_interesting_very_rare_value
|
||||
add = task_contract_weight_employer_contact_list_value
|
||||
}
|
||||
|
||||
on_create = {
|
||||
scope:contract = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_employer = {
|
||||
save_scope_as = task_contract_employer
|
||||
random_heir = {
|
||||
limit = {
|
||||
is_primary_heir_of = scope:task_contract_employer
|
||||
reverse_opinion = {
|
||||
target = scope:task_contract_employer
|
||||
value <= high_negative_opinion
|
||||
}
|
||||
age > 16 #No murderin' babies
|
||||
}
|
||||
save_scope_as = heir
|
||||
}
|
||||
scope:heir.location = {
|
||||
save_scope_as = task_contract_destination
|
||||
}
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_employer
|
||||
value = scope:task_contract_employer
|
||||
}
|
||||
set_variable = {
|
||||
name = task_contract_destination
|
||||
value = scope:task_contract_destination
|
||||
}
|
||||
# Make our gold rewards static.
|
||||
grab_gold_fuzz_number_effect = yes
|
||||
save_scope_as = task_contract
|
||||
set_variable = {
|
||||
name = gold_success_standard
|
||||
value = task_contract_success_gold_gain_full_value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
on_accepted = {
|
||||
save_scope_as = task_contract
|
||||
task_contract_employer = {
|
||||
save_scope_as = task_contract_employer
|
||||
random_heir = {
|
||||
limit = {
|
||||
is_primary_heir_of = scope:task_contract_employer
|
||||
reverse_opinion = {
|
||||
target = scope:task_contract_employer
|
||||
value <= high_negative_opinion
|
||||
}
|
||||
age > 16 #No murderin' babies
|
||||
}
|
||||
save_scope_as = heir
|
||||
}
|
||||
random_heir = {
|
||||
limit = {
|
||||
NOT = {
|
||||
is_primary_heir_of = scope:task_contract_employer
|
||||
}
|
||||
reverse_opinion = {
|
||||
target = scope:task_contract_employer
|
||||
value >= low_positive_opinion
|
||||
}
|
||||
}
|
||||
save_scope_as = favoured_heir
|
||||
}
|
||||
scope:heir.location = {
|
||||
save_scope_as = task_contract_destination
|
||||
}
|
||||
}
|
||||
task_contract_taker = {
|
||||
trigger_event = {
|
||||
id = ep3_contract_event.0590
|
||||
delayed = no
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
task_contract_reward = {
|
||||
success_standard = {
|
||||
should_print_on_complete = yes
|
||||
effect = {
|
||||
save_scope_value_as = { name = extra_reward value = flag:no }
|
||||
save_scope_as = task_contract
|
||||
laamp_rewards_disburse_ordinary_currency_effect = {
|
||||
GOLD = scope:task_contract.var:gold_success_standard
|
||||
PRESTIGE = task_contract_success_prestige_gain_full_value
|
||||
PIETY = 0
|
||||
PROVISIONS = task_contract_success_provisions_gain_major_value
|
||||
OPINION = task_contract_opinion_excelled_reward_value
|
||||
OPINION_TYPE = succeeded_task_contract_opinion
|
||||
CONTACT = yes
|
||||
CONTACT_HOOK = yes
|
||||
EXTRA_REWARD = scope:extra_reward
|
||||
}
|
||||
}
|
||||
}
|
||||
failure_standard = {
|
||||
positive = no
|
||||
effect = {
|
||||
save_scope_value_as = { name = extra_reward value = flag:no }
|
||||
save_scope_as = task_contract
|
||||
laamp_rewards_disburse_ordinary_currency_effect = {
|
||||
GOLD = 0
|
||||
PRESTIGE = task_contract_failure_prestige_loss_full_value
|
||||
PIETY = 0
|
||||
PROVISIONS = task_contract_failure_provisions_gain_minor_value
|
||||
OPINION = task_contract_opinion_standard_failure_value
|
||||
OPINION_TYPE = failed_task_contract_opinion
|
||||
CONTACT = no
|
||||
CONTACT_HOOK = no
|
||||
EXTRA_REWARD = scope:extra_reward
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue