Fixes
This commit is contained in:
parent
ce70fe752e
commit
734d526ca9
41 changed files with 17594 additions and 1069 deletions
537
common/story_cycles/story_cycle_mongol_invasion.txt
Normal file
537
common/story_cycles/story_cycle_mongol_invasion.txt
Normal file
|
|
@ -0,0 +1,537 @@
|
|||
story_mongol_invasion = {
|
||||
# by Petter Vilberg
|
||||
|
||||
on_setup = {
|
||||
story_owner = { # Start conquest of all of Mongolia
|
||||
start_wars_for_mongolia_effect = yes
|
||||
}
|
||||
set_variable = {
|
||||
name = succession_counter
|
||||
value = 0
|
||||
}
|
||||
}
|
||||
#
|
||||
on_end = {
|
||||
debug_log = "Mongol story ended on:"
|
||||
debug_log_date = yes
|
||||
set_global_variable = {
|
||||
name = mongol_story_has_ended
|
||||
value = yes
|
||||
}
|
||||
}
|
||||
#
|
||||
on_owner_death = {
|
||||
story_owner = {
|
||||
set_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_1_alpha_var
|
||||
value = 0
|
||||
}
|
||||
set_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_1_var
|
||||
value = 0
|
||||
}
|
||||
set_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_2_var
|
||||
value = 0
|
||||
}
|
||||
set_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_3_var
|
||||
value = 0
|
||||
}
|
||||
set_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_4_var
|
||||
value = 0
|
||||
}
|
||||
set_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_5_var
|
||||
value = 0
|
||||
}
|
||||
set_variable = {
|
||||
name = outside_conquest_region_var
|
||||
value = 0
|
||||
}
|
||||
every_realm_county = {
|
||||
if = {
|
||||
limit = {
|
||||
title_province = {
|
||||
geographical_region = special_mongol_empire_conquest_region_prio_5
|
||||
}
|
||||
}
|
||||
root.story_owner = {
|
||||
change_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_5_var
|
||||
add = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
else_if = {
|
||||
limit = {
|
||||
title_province = {
|
||||
geographical_region = special_mongol_empire_conquest_region_prio_4
|
||||
}
|
||||
}
|
||||
root.story_owner = {
|
||||
change_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_4_var
|
||||
add = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
else_if = {
|
||||
limit = {
|
||||
title_province = {
|
||||
geographical_region = special_mongol_empire_conquest_region_prio_3
|
||||
}
|
||||
}
|
||||
root.story_owner = {
|
||||
change_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_3_var
|
||||
add = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
else_if = {
|
||||
limit = {
|
||||
title_province = {
|
||||
geographical_region = special_mongol_empire_conquest_region_prio_2
|
||||
}
|
||||
}
|
||||
root.story_owner = {
|
||||
change_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_2_var
|
||||
add = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
else_if = {
|
||||
limit = {
|
||||
title_province = {
|
||||
geographical_region = special_mongol_empire_conquest_region_prio_1
|
||||
}
|
||||
}
|
||||
root.story_owner = {
|
||||
change_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_1_var
|
||||
add = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
else_if = {
|
||||
limit = {
|
||||
title_province = {
|
||||
geographical_region = special_mongol_empire_conquest_region_prio_1_alpha
|
||||
}
|
||||
}
|
||||
root.story_owner = {
|
||||
change_variable = {
|
||||
name = special_mongol_empire_conquest_region_prio_1_alpha_var
|
||||
add = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
else = {
|
||||
root.story_owner = {
|
||||
change_variable = {
|
||||
name = outside_conquest_region_var
|
||||
add = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
# Weighted random chance to end the story/break up the Empire
|
||||
random = {
|
||||
chance = 0
|
||||
#Pure realm size - Mongol empire is historical breakup size
|
||||
modifier = {
|
||||
add = 20
|
||||
story_owner = {
|
||||
realm_size >= 1087
|
||||
}
|
||||
}
|
||||
#Pure realm size - Mongol empire is max extent size
|
||||
modifier = {
|
||||
add = 20
|
||||
story_owner = {
|
||||
realm_size >= 1474
|
||||
}
|
||||
}
|
||||
#Pure realm size - Mongol empire is at total bonus size
|
||||
modifier = {
|
||||
add = 30
|
||||
story_owner = {
|
||||
realm_size >= 1725
|
||||
}
|
||||
}
|
||||
modifier = { # If the empire is very successful, increase the chance
|
||||
add = 10
|
||||
story_owner = {
|
||||
#Half of total county count
|
||||
var:special_mongol_empire_conquest_region_prio_1_alpha_var >= 80
|
||||
var:special_mongol_empire_conquest_region_prio_1_var >= 60
|
||||
var:special_mongol_empire_conquest_region_prio_2_var >= 100
|
||||
#Just a third
|
||||
var:special_mongol_empire_conquest_region_prio_3_var >= 30
|
||||
var:special_mongol_empire_conquest_region_prio_4_var >= 100
|
||||
var:special_mongol_empire_conquest_region_prio_5_var >= 120
|
||||
}
|
||||
}
|
||||
modifier = { # If the empire is EXTREMELY successful, increase the chance
|
||||
add = 20
|
||||
story_owner = {
|
||||
#Three quarters of total county count
|
||||
var:special_mongol_empire_conquest_region_prio_1_alpha_var >= 120
|
||||
var:special_mongol_empire_conquest_region_prio_1_var >= 75
|
||||
var:special_mongol_empire_conquest_region_prio_2_var >= 200
|
||||
#Just half
|
||||
var:special_mongol_empire_conquest_region_prio_3_var >= 45
|
||||
var:special_mongol_empire_conquest_region_prio_4_var >= 150
|
||||
var:special_mongol_empire_conquest_region_prio_5_var >= 180
|
||||
var:outside_conquest_region_var >= 100
|
||||
}
|
||||
}
|
||||
modifier = {
|
||||
add = 20
|
||||
var:succession_counter > 1
|
||||
}
|
||||
modifier = {
|
||||
add = 30
|
||||
var:succession_counter > 2
|
||||
}
|
||||
modifier = { # Historical point
|
||||
add = 30
|
||||
var:succession_counter > 3
|
||||
}
|
||||
modifier = { # Guaranteed if there have been five successions
|
||||
add = 20
|
||||
var:succession_counter > 4
|
||||
}
|
||||
set_variable = {
|
||||
name = end_of_story
|
||||
value = yes
|
||||
}
|
||||
}
|
||||
if = {
|
||||
limit = {
|
||||
exists = var:end_of_story
|
||||
}
|
||||
# Do the breakup of the empire if possible
|
||||
story_owner = {
|
||||
if = {
|
||||
limit = {
|
||||
realm_size >= 50
|
||||
}
|
||||
debug_log = "Trying to break up the Mongol Empire"
|
||||
break_up_mongol_empire_effect = yes
|
||||
}
|
||||
else = {
|
||||
save_scope_as = old_khan
|
||||
player_heir = {
|
||||
save_scope_as = new_khan
|
||||
}
|
||||
every_player = {
|
||||
trigger_event = mongol_invasion.1005 # Small end to story
|
||||
}
|
||||
}
|
||||
}
|
||||
end_story = yes
|
||||
}
|
||||
else = {
|
||||
change_variable = {
|
||||
name = succession_counter
|
||||
add = 1
|
||||
}
|
||||
# Handle story succession
|
||||
story_owner = {
|
||||
save_scope_as = old_khan # for news events
|
||||
if = {
|
||||
limit = {
|
||||
any_child = { # if the Khan has a reasonable heir...
|
||||
is_primary_heir_of = scope:story.story_owner
|
||||
}
|
||||
}
|
||||
random_child = {
|
||||
limit = {
|
||||
is_primary_heir_of = scope:story.story_owner
|
||||
}
|
||||
save_scope_as = new_khan # for news events
|
||||
save_scope_as = new_story_owner # pass chain to appropriate target
|
||||
add_character_flag = {
|
||||
flag = gain_mongol_succession_dread
|
||||
days = 2
|
||||
}
|
||||
add_character_modifier = {
|
||||
modifier = the_great_khan_modifier
|
||||
}
|
||||
}
|
||||
every_player = {
|
||||
trigger_event = {
|
||||
id = mongol_invasion.1001
|
||||
days = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
else_if = {
|
||||
limit = {
|
||||
dynasty = {
|
||||
any_dynasty_member = { # if the Khan has some other heir (not family?)
|
||||
is_primary_heir_of = scope:story.story_owner
|
||||
}
|
||||
}
|
||||
}
|
||||
dynasty = {
|
||||
random_dynasty_member = {
|
||||
limit = {
|
||||
is_primary_heir_of = scope:story.story_owner
|
||||
}
|
||||
save_scope_as = new_khan # for news events
|
||||
save_scope_as = new_story_owner # pass chain to appropriate target
|
||||
add_character_flag = {
|
||||
flag = gain_mongol_succession_dread
|
||||
days = 2
|
||||
}
|
||||
add_character_modifier = {
|
||||
modifier = the_great_khan_modifier
|
||||
}
|
||||
}
|
||||
}
|
||||
every_player = {
|
||||
trigger_event = {
|
||||
id = mongol_invasion.1001
|
||||
days = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
else_if = { # If the empire passes out of the original dynasty, the story will automatically end
|
||||
limit = {
|
||||
NOT = {
|
||||
dynasty = {
|
||||
any_dynasty_member = { # if the Khan has some other heir (not family?)
|
||||
is_primary_heir_of = scope:story.story_owner
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
scope:story.story_owner.primary_heir = {
|
||||
save_scope_as = new_khan
|
||||
}
|
||||
every_player = {
|
||||
trigger_event = {
|
||||
id = mongol_invasion.1001
|
||||
days = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if = {
|
||||
limit = { exists = scope:new_story_owner }
|
||||
make_story_owner = scope:new_story_owner
|
||||
scope:new_story_owner = {
|
||||
# Delayed firing of spawning new event troops
|
||||
trigger_event = {
|
||||
id = mongol_invasion.0100
|
||||
days = 1
|
||||
}
|
||||
}
|
||||
debug_log = "Successfully replaced the Mongol Khan"
|
||||
debug_log_date = yes
|
||||
debug_log_scopes = yes
|
||||
}
|
||||
else = {
|
||||
# Make sure the empire breaks up as best as possible
|
||||
story_owner = {
|
||||
if = {
|
||||
limit = {
|
||||
realm_size >= 50
|
||||
}
|
||||
}
|
||||
debug_log = "Due to failing to replace the Khan with a Temujin successor, now trying to break up the empire"
|
||||
break_up_mongol_empire_effect = yes
|
||||
}
|
||||
|
||||
end_story = yes
|
||||
debug_log = "Failed to replace the Mongol Khan"
|
||||
debug_log_date = yes
|
||||
debug_log_scopes = yes
|
||||
}
|
||||
}
|
||||
story_owner = {
|
||||
clear_variable_list = special_mongol_empire_conquest_region_prio_1_alpha_var
|
||||
clear_variable_list = special_mongol_empire_conquest_region_prio_1_var
|
||||
clear_variable_list = special_mongol_empire_conquest_region_prio_2_var
|
||||
clear_variable_list = special_mongol_empire_conquest_region_prio_3_var
|
||||
clear_variable_list = special_mongol_empire_conquest_region_prio_4_var
|
||||
clear_variable_list = special_mongol_empire_conquest_region_prio_5_var
|
||||
clear_variable_list = outside_conquest_region_var
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
#Start a new war if none is ongoing
|
||||
effect_group = {
|
||||
days = { 30 50 }
|
||||
|
||||
trigger = {
|
||||
story_owner = {
|
||||
is_at_war = no
|
||||
gold > 0
|
||||
any_held_title = {
|
||||
this = title:e_mongol_empire
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
triggered_effect = {
|
||||
trigger = {
|
||||
story_owner = {
|
||||
is_ai = yes
|
||||
}
|
||||
}
|
||||
effect = {
|
||||
if = {
|
||||
limit = {
|
||||
has_mpo_dlc_trigger = yes
|
||||
}
|
||||
story_owner = {
|
||||
gok_war_target_evaluation_and_declaration_effect = yes
|
||||
}
|
||||
}
|
||||
else = {
|
||||
story_owner = {
|
||||
mongol_war_target_evaluation_and_declaration_effect = yes
|
||||
}
|
||||
}
|
||||
debug_log = "The story started a new war for the Mongols"
|
||||
debug_log_date = yes
|
||||
story_owner = {
|
||||
save_scope_as = owner
|
||||
}
|
||||
debug_log_scopes = yes
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Story handling in case of succession weirdness
|
||||
effect_group = {
|
||||
days = 180
|
||||
|
||||
trigger = {
|
||||
story_owner = {
|
||||
NOT = {
|
||||
any_held_title = {
|
||||
this = title:e_mongol_empire
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
triggered_effect = {
|
||||
trigger = { exists = title:e_mongol_empire }
|
||||
effect = {
|
||||
if = {
|
||||
limit = {
|
||||
title:e_mongol_empire.holder = {
|
||||
culture = culture:mongol
|
||||
}
|
||||
}
|
||||
make_story_owner = title:e_mongol_empire.holder
|
||||
}
|
||||
else = {
|
||||
end_story = yes
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
triggered_effect = {
|
||||
trigger = { NOT = { exists = title:e_mongol_empire } }
|
||||
effect = {
|
||||
end_story = yes
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Set up Mongol Empire de jure stuff
|
||||
effect_group = {
|
||||
days = 180
|
||||
|
||||
trigger = {
|
||||
NOT = { exists = var:has_updated_mongolia_de_jure }
|
||||
trigger_if = {
|
||||
limit = {
|
||||
title:e_mongolia = {
|
||||
any_de_jure_county = {
|
||||
count >= 3
|
||||
}
|
||||
}
|
||||
}
|
||||
title:e_mongolia = {
|
||||
any_in_de_jure_hierarchy = {
|
||||
continue = { tier > tier_county }
|
||||
tier = tier_county
|
||||
holder.top_liege = scope:story.story_owner
|
||||
count > 3
|
||||
}
|
||||
}
|
||||
}
|
||||
story_owner.capital_county.empire = {
|
||||
any_in_de_jure_hierarchy = {
|
||||
continue = { tier > tier_county }
|
||||
tier = tier_county
|
||||
holder.top_liege = scope:story.story_owner
|
||||
count > 5
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
triggered_effect = {
|
||||
trigger = {
|
||||
always = yes
|
||||
}
|
||||
|
||||
effect = {
|
||||
title:e_mongolia = {
|
||||
every_in_de_jure_hierarchy = {
|
||||
limit = {
|
||||
tier = tier_kingdom
|
||||
}
|
||||
set_de_jure_liege_title = title:e_mongol_empire
|
||||
}
|
||||
}
|
||||
if = {
|
||||
limit = {
|
||||
exists = title:e_mongolia.holder
|
||||
}
|
||||
title:e_mongolia.holder = {
|
||||
destroy_title = title:e_mongolia
|
||||
}
|
||||
}
|
||||
if = {
|
||||
limit = {
|
||||
story_owner.capital_county.empire = {
|
||||
NOT = {
|
||||
this = title:e_mongol_empire
|
||||
}
|
||||
}
|
||||
}
|
||||
story_owner.capital_county.empire = {
|
||||
save_scope_as = new_de_jure
|
||||
}
|
||||
scope:new_de_jure = {
|
||||
every_in_de_jure_hierarchy = {
|
||||
limit = {
|
||||
tier = tier_kingdom
|
||||
}
|
||||
set_de_jure_liege_title = title:e_mongol_empire
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
set_variable = {
|
||||
name = has_updated_mongolia_de_jure
|
||||
value = yes
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue