N3OW/common/scripted_effects/01_ep1_court_artifact_creation_effects.txt

7109 lines
173 KiB
Text

##########################################
# Court Artifact Creation and Decoration #
##########################################
###############
# CHEST
create_artifact_chest_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$CARPENTER$ = { save_scope_as = carpenter }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
# Create the artifact
create_artifact = {
name = artifact_chest_name
creator = scope:carpenter
description = placeholder # Will be regenerated in the post-creation effects
visuals = chest
type = chest
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
get_artifact_feature_references_effect = yes
set_artifact_description = artifact_chest_description
set_variable = {
name = big_chest
value = yes
}
add_scaled_artifact_modifier_grandeur_small_effect = yes
add_scaled_artifact_modifier_piety_effect = yes
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
}
}
}
create_artifact_cabinet_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$CARPENTER$ = { save_scope_as = carpenter }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
# Create the artifact
# Indian cabinets are actually diwans!
if = {
limit = {
scope:carpenter = { artifact_use_indian_building_visuals_trigger = yes }
}
scope:owner = {
create_artifact = {
name = artifact_diwan_name
creator = scope:carpenter
description = placeholder # Will be regenerated in the post-creation effects
visuals = diwan
type = cabinet
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
#Mena cabinets are actually tables!
else_if = {
limit = {
scope:carpenter = {
OR = {
artifact_use_mena_building_visuals_trigger = yes
artifact_use_iranian_building_visuals_trigger = yes
artifact_use_steppe_building_visuals_trigger = yes
}
}
}
scope:owner = {
create_artifact = {
name = artifact_table_name
creator = scope:carpenter
description = placeholder # Will be regenerated in the post-creation effects
visuals = table
type = cabinet
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
else = {
scope:owner = {
create_artifact = {
name = artifact_cabinet_name
creator = scope:carpenter
description = placeholder # Will be regenerated in the post-creation effects
visuals = cabinet
type = cabinet
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
scope:newly_created_artifact = {
get_artifact_feature_references_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
add_scaled_artifact_modifier_piety_effect = yes
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
# Indian cabinets are actually diwans!
if = {
limit = {
scope:carpenter = { artifact_use_indian_building_visuals_trigger = yes }
}
set_artifact_description = artifact_diwan_description
}
else_if = {
limit = {
scope:carpenter = {
OR = {
artifact_use_mena_building_visuals_trigger = yes
artifact_use_iranian_building_visuals_trigger = yes
artifact_use_steppe_building_visuals_trigger = yes
}
}
}
set_artifact_description = artifact_table_description
}
else = {
set_variable = {
name = cabinet
value = yes
}
set_artifact_description = artifact_cabinet_description
}
}
}
}
create_artifact_throne_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$MAKER$ = { save_scope_as = maker }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
# Create the artifact
scope:owner = {
create_artifact = {
name = artifact_throne_name
description = placeholder # Will be regenerated in the post-creation effects
creator = scope:maker
visuals = throne
type = throne
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
set_artifact_description = artifact_throne_description
#Let's add modifiers!
add_scaled_artifact_modifier_prestige_effect = yes
if = {
limit = { rarity = illustrious }
add_scaled_artifact_modifier_majesty_effect = yes
add_scaled_artifact_modifier_rulership_effect = yes
}
else_if = {
limit = { rarity = famed }
add_scaled_artifact_modifier_majesty_effect = yes
}
# All thrones have a chance to get some extra Grandeur
add_scaled_artifact_modifier_grandeur_big_effect = yes
remove_artifact_modifier = artifact_placeholder_modifier
}
}
}
###############
# TAPESTRY
create_artifact_tapestry_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$WEAVER$ = { save_scope_as = weaver }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
if = { #If the scene has been set in events we save it on the owner here so we can access it when choosing features
limit = { exists = scope:tapestry_scene }
scope:owner = {
set_variable = {
name = artifact_tapestry_scene
value = scope:tapestry_scene
days = 1
}
}
}
# Fallback
else = {
random_list = {
10 = {
scope:owner = {
set_variable = {
name = artifact_tapestry_scene
value = flag:geometric_patterns
days = 1
}
}
}
10 = {
scope:owner = {
set_variable = {
name = artifact_tapestry_scene
value = flag:garden
days = 1
}
}
}
10 = {
scope:owner = {
set_variable = {
name = artifact_tapestry_scene
value = flag:bucolic
days = 1
}
}
}
}
}
# Create the artifact
scope:owner = {
if = {
limit = {
exists = scope:inspiration_owner
}
create_artifact = {
name = artifact_wall_tapestry_name
description = placeholder # Will be regenerated in the post-creation effects
creator = scope:weaver
visuals = tapestry
type = tapestry
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
else_if = {
limit = {
exists = scope:adventurer
}
create_artifact = {
name = artifact_wall_tapestry_name
description = placeholder # Will be regenerated in the post-creation effects
creator = scope:adventurer
visuals = tapestry
type = tapestry
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
history = {
location = scope:location
actor = scope:adventurer
recipient = root
type = discovered
}
}
}
else = {
create_artifact = {
name = artifact_wall_tapestry_name
description = placeholder # Will be regenerated in the post-creation effects
creator = scope:weaver
visuals = tapestry
type = tapestry
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
scope:newly_created_artifact = {
set_artifact_description = artifact_wall_tapestry_description
# Set grandeur
add_scaled_artifact_modifier_grandeur_big_effect = yes
if = {
limit = {
has_artifact_feature = tapestry_scene_religious
}
add_scaled_artifact_modifier_piety_effect = yes
}
else = {
add_scaled_artifact_modifier_majesty_effect = yes
}
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
}
}
}
###############
# HIDE
#If the animal has been hunted we need to provide a location
get_animal_hunt_location_effect = {
if = {
limit = {
NOT = { exists = scope:location }
}
if = {
limit = {
exists = scope:owner.involved_activity
scope:owner.involved_activity = { has_activity_type = activity_hunt }
}
scope:owner.involved_activity.activity_location = { save_scope_as = location }
}
else = {
scope:owner = {
random_list = {
30 = { #It's hunted in your own realm
trigger = {
any_sub_realm_county = {
exists = this
}
}
random_sub_realm_county = {
random_county_province = { save_scope_as = location }
}
}
30 = { #It's hunted in a neighbors realm
trigger = {
highest_held_title_tier >= tier_county
any_neighboring_realm_same_rank_owner = {
exists = capital_county
}
}
random_neighboring_realm_same_rank_owner = {
limit = {
exists = capital_county
}
capital_county = {
random_county_province = { save_scope_as = location }
}
}
}
1 = { # It's hunted in our current location (as a fallback if we're unlanded or only a baron).
trigger = {
OR = {
highest_held_title_tier < tier_county
is_landed = no
}
}
location.county = {
random_county_province = { save_scope_as = location }
}
}
}
}
}
}
scope:owner = {
if = {
limit = {
NOT = { has_variable = adventure_artifact_location }
}
set_variable = {
name = adventure_artifact_location
value = scope:location
days = 1
}
}
if = {
limit = {
NOT = { has_variable = adventure_artifact_hunter }
exists = scope:creator
}
set_variable = {
name = adventure_artifact_hunter
value = scope:creator
days = 1
}
}
else_if = {
limit = {
NOT = { has_variable = adventure_artifact_hunter }
}
set_variable = {
name = adventure_artifact_hunter
value = scope:owner
days = 1
}
}
}
}
create_artifact_animal_hide_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$HUNTER$ = { save_scope_as = hunter }
save_scope_value_as = { name = legendary value = $LEGENDARY$ }
scope:owner = {
set_variable = { name = animal_type value = $ANIMAL$ days = 5 }
if = {
limit = {
OR = {
NOT = { exists = var:animal_type }
var:animal_type ?= flag:none
}
}
random_list = {
8 = {
hunt_activity_standard_game_effect = { PROVINCE = scope:hunter.location HUNTER = scope:hunter }
}
2 = {
hunt_activity_dangerous_game_effect = { PROVINCE = scope:hunter.location }
}
}
}
}
if = {
limit = { exists = scope:adventurer }
scope:adventurer = { save_scope_as = creator }
}
else = {
scope:hunter = { save_scope_as = creator }
}
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
animal_artifact_wealth_quality_effect = yes
get_animal_hunt_location_effect = yes
scope:location = { add_to_list = artifact_material_sources }
if = {
limit = {
OR = {
hunt_hide_big_trigger = { VARIABLE = scope:owner.var:animal_type }
AND = {
exists = scope:animal_hide_size
scope:animal_hide_size = flag:big
}
}
}
if = {
limit = {
NOT = { exists = scope:animal_hide_size }
}
save_scope_value_as = { name = animal_hide_size value = flag:big }
}
scope:owner = {
create_artifact = {
name = artifact_animal_hide_big_name
creator = scope:creator
description = placeholder
visuals = large_animal_hide
type = animal_hide_big
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
scope:newly_created_artifact = {
# Set grandeur
add_scaled_artifact_modifier_grandeur_big_effect = yes
# Set prestige
add_scaled_artifact_modifier_prestige_effect = yes
}
}
}
else = {
if = {
limit = {
NOT = { exists = scope:animal_hide_size }
}
save_scope_value_as = { name = animal_hide_size value = flag:small }
}
scope:owner = {
create_artifact = {
name = artifact_small_hide_name
creator = scope:creator
description = placeholder
visuals = small_animal_hide
type = animal_hide
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
scope:newly_created_artifact = {
if = {
limit = {
has_artifact_feature = animal_hide_type_cat
exists = scope:owner.var:story_cycle_cat_name
}
set_variable = {
name = pet_name
value = scope:owner.var:story_cycle_cat_name
}
}
else_if = {
limit = {
has_artifact_feature = animal_hide_type_dog
exists = scope:owner.var:story_cycle_dog_name
}
set_variable = {
name = pet_name
value = scope:owner.var:story_cycle_dog_name
}
}
# Set grandeur
add_scaled_artifact_modifier_grandeur_small_effect = yes
# Set prestige
add_scaled_artifact_modifier_minor_prestige_effect = yes
}
}
}
scope:newly_created_artifact = {
set_max_durability = 60
set_variable = {
name = adventure_artifact_location
value = scope:owner.var:adventure_artifact_location
}
set_variable = {
name = adventure_artifact_hunter
value = scope:owner.var:adventure_artifact_hunter
}
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
set_variable = {
name = animal_type
value = scope:owner.var:animal_type
}
set_variable = {
name = quality
value = scope:quality
}
set_variable = {
name = wealth
value = scope:wealth
}
hunt_animal_artifact_modifier_selection_effect = yes
if = {
limit = { scope:legendary = yes }
set_artifact_name = artifact_animal_hide_name_legendary
set_variable = { name = legendary }
add_scaled_artifact_modifier_majesty_effect = yes
add_scaled_artifact_modifier_combat_effect = yes
}
else_if = {
limit = { exists = scope:adventurer }
set_artifact_name = artifact_animal_hide_name_adventurer
}
else_if = {
limit = { exists = var:pet_name }
if = {
limit = { has_artifact_feature = animal_hide_type_cat }
set_artifact_name = artifact_animal_hide_name_cat
}
else_if = {
limit = { has_artifact_feature = animal_hide_type_dog }
set_artifact_name = artifact_animal_hide_name_dog
}
}
else_if = {
limit = { artifact_type = animal_hide_big }
set_artifact_name = artifact_animal_hide_big_name
}
else = { set_artifact_name = artifact_small_hide_name }
set_artifact_description = artifact_small_hide_description
}
scope:owner = {
remove_variable = adventure_artifact_location
remove_variable = adventure_artifact_hunter
}
}
}
##################
# SKULL
create_artifact_wall_skull_effect = {
$OWNER$ = { save_scope_as = owner }
$HUNTER$ = { save_scope_as = hunter }
save_scope_value_as = { name = legendary value = $LEGENDARY$ }
scope:owner = {
set_variable = { name = animal_type value = $ANIMAL$ days = 5 }
if = {
limit = {
OR = {
NOT = { exists = var:animal_type }
var:animal_type ?= flag:none
}
}
random_list = {
8 = {
hunt_activity_standard_game_effect = { PROVINCE = scope:hunter.location HUNTER = scope:hunter }
}
2 = {
hunt_activity_dangerous_game_effect = { PROVINCE = scope:hunter.location }
}
}
}
}
if = {
limit = { exists = scope:adventurer }
scope:adventurer = { save_scope_as = creator }
}
else = {
scope:hunter = { save_scope_as = creator }
}
hidden_effect_new_object = {
# Get artifact quality, location, and animal
animal_artifact_wealth_quality_effect = yes
get_animal_hunt_location_effect = yes
scope:location = { add_to_list = artifact_material_sources }
scope:owner = {
create_artifact = {
name = artifact_wall_skull_name
description = placeholder
creator = scope:creator
visuals = animal_trophy
type = animal_skull
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
scope:newly_created_artifact = {
set_max_durability = 60
# Set grandeur
add_scaled_artifact_modifier_grandeur_small_effect = yes
# Set prestige
add_scaled_artifact_modifier_minor_prestige_effect = yes
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
set_variable = {
name = animal_type
value = scope:owner.var:animal_type
}
set_variable = {
name = quality
value = scope:quality
}
set_variable = {
name = wealth
value = scope:wealth
}
hunt_animal_artifact_modifier_selection_effect = yes
if = {
limit = { scope:legendary = yes }
set_artifact_name = artifact_wall_skull_name_legendary
set_variable = { name = legendary }
add_scaled_artifact_modifier_majesty_effect = yes
add_scaled_artifact_modifier_combat_effect = yes
}
else_if = {
limit = { exists = scope:adventurer }
set_artifact_name = artifact_wall_skull_name_adventurer
}
else = { set_artifact_name = artifact_wall_skull_name }
set_artifact_description = artifact_wall_skull_description
}
scope:owner = {
remove_variable = adventure_artifact_location
remove_variable = adventure_artifact_hunter
}
}
}
create_artifact_wall_narwhal_horn_effect = {
$OWNER$ = { save_scope_as = owner }
$HUNTER$ = { save_scope_as = hunter }
hidden_effect_new_object = {
# Get artifact quality and wealth
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
set_variable = {
name = animal_type
value = flag:unicorn
days = 1
}
if = {
limit = { exists = scope:adventurer }
scope:adventurer = { save_scope_as = creator }
}
else = { save_scope_as = creator }
}
scope:owner = {
if = {
limit = {
exists = scope:adventurer
}
create_artifact = {
name = artifact_wall_narwhal_horn_name
description = artifact_wall_narwhal_horn
visuals = animal_trophy
type = animal_skull
modifier = artifact_monthly_prestige_3_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
history = {
location = scope:location
actor = scope:adventurer
recipient = root
type = discovered
}
}
}
else = {
create_artifact = {
name = artifact_wall_narwhal_horn_name
description = artifact_wall_narwhal_horn
creator = scope:hunter
visuals = animal_trophy
type = animal_skull
modifier = artifact_monthly_prestige_3_modifier
wealth = scope:wealth
quality = scope:quality
#decaying = no
save_scope_as = newly_created_artifact
}
}
}
scope:newly_created_artifact = {
# Set grandeur
add_scaled_artifact_modifier_grandeur_big_effect = yes
# Set prestige
add_scaled_artifact_modifier_prestige_effect = yes
add_scaled_artifact_modifier_piety_effect = yes
# Extra for really good stuff
if = {
limit = {
OR = {
rarity = illustrious
rarity = famed
}
}
add_scaled_artifact_modifier_majesty_effect = yes
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
save_scope_as = epic
}
}
scope:newly_created_artifact = {
if = {
limit = { scope:quality >= 66 }
add_artifact_modifier = artifact_court_grandeur_baseline_add_2_modifier
}
else_if = {
limit = { scope:quality >= 33 }
add_artifact_modifier = artifact_court_grandeur_baseline_add_1_modifier
}
# Wealth determines prestige
if = {
limit = { scope:wealth >= 66 }
add_artifact_modifier = artifact_monthly_prestige_2_modifier
}
else_if = {
limit = { scope:wealth >= 33 }
add_artifact_modifier = artifact_placeholder_modifier
}
save_scope_as = epic
}
}
###############
# ANIMAL TRINKET
create_artifact_animal_trinket_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$HUNTER$ = { save_scope_as = hunter }
save_scope_value_as = { name = legendary value = $LEGENDARY$ }
scope:owner = {
set_variable = { name = animal_type value = $ANIMAL$ days = 5 }
if = {
limit = {
OR = {
NOT = { exists = var:animal_type }
var:animal_type ?= flag:none
}
}
random_list = {
8 = {
hunt_activity_standard_game_effect = { PROVINCE = scope:hunter.location HUNTER = scope:hunter }
}
2 = {
hunt_activity_dangerous_game_effect = { PROVINCE = scope:hunter.location }
}
}
}
}
if = {
limit = { exists = scope:adventurer }
scope:adventurer = { save_scope_as = creator }
}
else = {
scope:hunter = { save_scope_as = creator }
}
hidden_effect_new_object = {
# Get artifact quality, wealth, materials, and decorations
animal_artifact_wealth_quality_effect = yes
get_animal_hunt_location_effect = yes
scope:location = { add_to_list = artifact_material_sources }
scope:owner = {
if = {
limit = {
OR = {
scope:owner.var:animal_type ?= flag:fox
scope:owner.var:animal_type ?= flag:cat
}
}
create_artifact = {
name = artifact_animal_trinket_name
creator = scope:hunter
description = placeholder
visuals = fox_tail
type = animal_trinket
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
else_if = {
limit = {
OR = {
scope:owner.var:animal_type ?= flag:bear
scope:owner.var:animal_type ?= flag:leopard
scope:owner.var:animal_type ?= flag:lion
scope:owner.var:animal_type ?= flag:tiger
scope:owner.var:animal_type ?= flag:wolf
scope:owner.var:animal_type ?= flag:lynx
scope:owner.var:animal_type ?= flag:wolf
scope:owner.var:animal_type ?= flag:dog
scope:owner.var:animal_type ?= flag:hyena
}
}
create_artifact = {
name = artifact_animal_trinket_name
creator = scope:hunter
description = placeholder
visuals = bear_paw
type = animal_trinket
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
else_if = {
limit = {
OR = {
scope:owner.var:animal_type ?= flag:aurochs
scope:owner.var:animal_type ?= flag:bison
scope:owner.var:animal_type ?= flag:boar
}
}
create_artifact = {
name = artifact_animal_trinket_name
creator = scope:hunter
description = placeholder
visuals = tusk
type = animal_trinket
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
else_if = {
limit = {
OR = {
scope:owner.var:animal_type ?= flag:hare
scope:owner.var:animal_type ?= flag:horse
scope:owner.var:animal_type ?= flag:unicorn
}
}
create_artifact = {
name = artifact_animal_trinket_name
creator = scope:hunter
description = placeholder
visuals = pouch
type = animal_trinket
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
else = {
create_artifact = {
name = artifact_animal_trinket_name
creator = scope:hunter
description = placeholder
visuals = animal_trinket
type = animal_trinket
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
}
scope:newly_created_artifact = {
set_max_durability = 60
# Set prestige
add_scaled_artifact_modifier_minor_prestige_effect = yes
# Set stress loss
add_scaled_artifact_modifier_stress_gain_effect = yes
remove_artifact_modifier = artifact_placeholder_modifier
set_variable = {
name = animal_type
value = scope:owner.var:animal_type
}
set_variable = {
name = quality
value = scope:quality
}
set_variable = {
name = wealth
value = scope:wealth
}
hunt_animal_artifact_modifier_selection_effect = yes
if = {
limit = { scope:legendary = yes }
set_variable = { name = legendary }
add_scaled_artifact_modifier_majesty_effect = yes
add_scaled_artifact_modifier_combat_effect = yes
}
set_artifact_description = artifact_animal_trinket_description
}
scope:owner = {
remove_variable = adventure_artifact_location
remove_variable = adventure_artifact_hunter
}
}
}
###############
# ANIMAL FEATHER
create_artifact_bird_feather_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$HUNTER$ = { save_scope_as = hunter }
scope:owner = {
set_variable = { name = animal_type value = $ANIMAL$ }
if = {
limit = {
OR = {
NOT = { exists = var:animal_type }
var:animal_type ?= flag:none
}
}
hunt_activity_falconry_game_effect = { PROVINCE = scope:hunter.location }
}
}
if = {
limit = { exists = scope:adventurer }
scope:adventurer = { save_scope_as = creator }
}
else = {
scope:hunter = { save_scope_as = creator }
}
hidden_effect_new_object = {
# Get artifact quality, wealth, materials, and decorations
animal_artifact_wealth_quality_effect = yes
get_animal_hunt_location_effect = yes
scope:location = { add_to_list = artifact_material_sources }
scope:owner = {
create_artifact = {
name = artifact_bird_feather_name
creator = scope:hunter
description = placeholder
visuals = bird_feather
type = bird_feather
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
scope:newly_created_artifact = {
if = {
limit = {
scope:owner.var:animal_type ?= flag:eagle
exists = scope:owner.var:story_cycle_eagle_name
}
set_variable = {
name = pet_name
value = scope:owner.var:story_cycle_eagle_name
}
set_artifact_name = artifact_animal_feather_name_eagle
set_artifact_description = artifact_bird_feather_pet_description
}
else = {
set_artifact_description = artifact_bird_feather_description
}
set_max_durability = 60
# Set prestige
add_scaled_artifact_modifier_minor_prestige_effect = yes
# Set stress loss
add_scaled_artifact_modifier_stress_gain_effect = yes
remove_artifact_modifier = artifact_placeholder_modifier
set_variable = {
name = animal_type
value = scope:owner.var:animal_type
}
set_variable = {
name = quality
value = scope:quality
}
set_variable = {
name = wealth
value = scope:wealth
}
}
scope:owner = {
remove_variable = adventure_artifact_location
remove_variable = adventure_artifact_hunter
remove_variable = animal_type
}
}
}
###############
# BOX
# Small box
create_artifact_box_small_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$CARPENTER$ = { save_scope_as = carpenter }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
if = { #IF we have set the location we use it for the materials
limit = { exists = scope:location }
scope:location = { add_to_list = artifact_material_sources }
}
# Create the artifact
scope:owner = {
if = {
limit = {
exists = scope:adventurer
}
create_artifact = {
name = artifact_box_small_name
creator = scope:adventurer
description = placeholder
visuals = small_box
type = box
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
history = {
location = scope:location
actor = scope:adventurer
recipient = root
type = discovered
}
}
}
else = {
create_artifact = {
name = artifact_box_small_name
creator = scope:carpenter
description = placeholder
visuals = small_box
type = box
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
scope:newly_created_artifact = {
get_artifact_feature_references_effect = yes
set_artifact_description = artifact_box_small_description
# Set grandeur
add_scaled_artifact_modifier_grandeur_small_effect = yes
add_scaled_artifact_modifier_piety_effect = yes
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
}
}
}
# Medium box
create_artifact_box_medium_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$CARPENTER$ = { save_scope_as = carpenter }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
if = { #IF we have set the location we use it for the materials
limit = { exists = scope:location }
scope:location = { add_to_list = artifact_material_sources }
}
# Create the artifact
scope:owner = {
if = {
limit = {
exists = scope:adventurer
}
create_artifact = {
name = artifact_box_medium_name
creator = scope:adventurer
description = placeholder
visuals = medium_box
type = box
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
history = {
location = scope:location
actor = scope:adventurer
recipient = root
type = discovered
}
}
}
else = {
create_artifact = {
name = artifact_box_medium_name
creator = scope:carpenter
description = placeholder
visuals = medium_box
type = box
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
scope:newly_created_artifact = {
get_artifact_feature_references_effect = yes
set_artifact_description = artifact_box_medium_description
# Set grandeur
add_scaled_artifact_modifier_grandeur_small_effect = yes
add_scaled_artifact_modifier_piety_effect = yes
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
}
}
}
###############
# GOBLET
create_artifact_goblet_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$SMITH$ = { save_scope_as = goldsmith }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
if = { #Any existing dummy character gets turned into the goldsmith
limit = {
exists = scope:dummy_gender
scope:goldsmith = scope:dummy_gender
}
clear_saved_scope = goldsmith
clear_saved_scope = dummy_gender
}
# Create the artifact
scope:owner = {
if = {
limit = { exists = scope:adventurer }
create_artifact = {
name = artifact_goblet_name
description = placeholder
visuals = goblet
type = goblet
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
#decaying = no
save_scope_as = newly_created_artifact
history = {
location = scope:location
actor = scope:adventurer
recipient = root
type = discovered
}
}
}
else_if = {
limit = {
scope:host ?= $OWNER$
scope:activity ?= { has_activity_type = activity_tournament }
}
create_artifact = {
name = artifact_goblet_name
creator = scope:host
description = placeholder # Will be updated in the post-creation effects after decorations are assigned.
visuals = goblet
type = goblet
modifier = artifact_placeholder_modifier
wealth = scope:wealth
quality = scope:quality
history = {
type = prize_created
recipient = scope:host
}
save_scope_as = newly_created_artifact
}
}
else_if = {
limit = { exists = scope:goldsmith }
create_artifact = {
name = artifact_goblet_name
creator = scope:goldsmith
description = placeholder
visuals = goblet
type = goblet
wealth = scope:wealth
quality = scope:quality
#decaying = no
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
}
}
else = {
create_artifact = {
name = artifact_goblet_name
description = placeholder
visuals = goblet
type = goblet
wealth = scope:wealth
quality = scope:quality
#decaying = no
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
history = { type = created_before_history }
}
}
}
scope:newly_created_artifact = {
set_artifact_description = artifact_goblet_description
# Set grandeur
add_scaled_artifact_modifier_grandeur_small_effect = yes
# Let's add another random effect to keep goblets interesting!
random_list = {
10 = {
add_scaled_artifact_modifier_minor_prestige_effect = yes
}
10 = {
add_scaled_artifact_modifier_majesty_effect = yes
}
30 = {
trigger = { rarity = common }
# Common goblets have a chance to not get any extra modifiers
}
}
remove_artifact_modifier = artifact_placeholder_modifier
}
}
}
create_artifact_wall_banner_effect = {
$OWNER$ = { save_scope_as = owner }
$CREATOR$ = { save_scope_as = creator }
$TARGET$ = { save_scope_as = target } #Can be a title, a house or a dynasty
#This effect can be used to generate banners - either from battle or a character.
#For battle banners the variables epic_battle_location and epic_loser must be set.
#To generate a dynasty banner the variable banner_from_dynasty must be set
#To generate a house banner the variable banner_from_house must be set
#To generate a banner for a title no special variables need to be set
hidden_effect_new_object = {
if = {
limit = { has_variable = epic_battle_location }
var:epic_battle_location = { save_scope_as = epic_battle_location }
remove_variable = epic_battle_location
}
if = {
limit = { has_variable = epic_loser }
var:epic_loser = { save_scope_as = epic_loser }
remove_variable = epic_loser
}
# Dynasty banner rarity determined by Dynasty Splendor
if = {
limit = {
scope:owner = { has_variable = banner_from_dynasty }
}
if = {
limit = { scope:owner.dynasty.dynasty_prestige_level = max_dynasty_prestige_level }
set_artifact_rarity_illustrious = yes
}
else_if = {
limit = { scope:owner.dynasty.dynasty_prestige_level >= high_dynasty_prestige_level }
set_artifact_rarity_famed = yes
}
else_if = {
limit = { scope:owner.dynasty.dynasty_prestige_level >= medium_dynasty_prestige_level }
set_artifact_rarity_masterwork = yes
}
else = { set_artifact_rarity_common = yes }
}
# Other banners use default rarity script
else = {
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
}
scope:owner = {
if = { #Dynasty Banner
limit = { has_variable = banner_from_dynasty }
if = { #Startup Banner
limit = { has_variable = startup_banner }
create_artifact = {
name = artifact_wall_banner_dynasty_name
description = artifact_wall_banner_dynasty_description
visuals = banner
visuals_source = scope:target
template = dynasty_banner_template
type = wall_big
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
history = {
type = created
recipient = scope:owner
location = scope:owner.capital_province
}
}
remove_variable = startup_banner
}
else = { #Created Banner
create_artifact = {
name = artifact_wall_banner_dynasty_name
creator = scope:creator
description = artifact_wall_banner_dynasty_description
visuals = banner
visuals_source = scope:target
template = dynasty_banner_template
type = wall_big
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
scope:newly_created_artifact = {
set_variable = { # Tracks house
name = banner_dynasty
value = scope:target
}
set_variable = { # Tracks first owner
name = banner_commissioner
value = scope:owner
}
grant_banner_house_claim_effect = yes
set_artifact_description = artifact_wall_banner_dynasty_description # For commissioner flavor
}
remove_variable = banner_from_dynasty
}
else_if = { #House Banner
limit = { has_variable = banner_from_house }
if = { #Startup Banner
limit = { has_variable = startup_banner }
create_artifact = {
name = artifact_wall_banner_house_name
description = artifact_wall_banner_house_description
visuals = banner
visuals_source = scope:target
template = house_banner_template
type = wall_big
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
history = {
type = created
recipient = scope:owner
location = scope:owner.capital_province
}
}
remove_variable = startup_banner
}
else = { #Created Banner
create_artifact = {
name = artifact_wall_banner_house_name
creator = scope:creator
description = artifact_wall_banner_house_description
visuals = banner
visuals_source = scope:target
template = house_banner_template
type = wall_big
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
scope:newly_created_artifact = {
set_variable = { # Tracks house
name = banner_house
value = scope:target
}
}
remove_variable = banner_from_house
}
else_if = { # For banners looted after a battle
limit = {
exists = scope:epic_battle_location
exists = scope:epic_loser
}
create_artifact = {
name = artifact_wall_banner_battle_name
creator = scope:creator
description = artifact_wall_banner_battle_description
visuals = banner
visuals_source = scope:target
type = wall_big
modifier = artifact_placeholder_modifier
quality = conquered_banner_value
wealth = conquered_banner_value
decaying = no
save_scope_as = newly_created_artifact
history = {
location = scope:epic_battle_location
actor = scope:epic_loser
recipient = scope:owner
type = conquest
}
}
}
else = { #Royal Banner
create_artifact = {
name = artifact_wall_banner_royal_name
creator = scope:creator
description = artifact_wall_banner_royal_description
visuals = banner
visuals_source = scope:target
type = wall_big
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
}
# Modifiers are completely randomized - Possible modifiers are based on the battle
scope:newly_created_artifact = {
add_scaled_artifact_modifier_grandeur_small_effect = yes
if = {
limit = {
exists = scope:epic_loser
}
random_list = {
pick = 2
unique = yes
10 = { # Knight Limit
random_list = {
10 = {
add_artifact_modifier = artifact_knight_limit_1_modifier
}
5 = {
add_artifact_modifier = artifact_knight_limit_2_modifier
}
}
}
10 = { # Knight Effectiveness
random_list = {
15 = {
add_artifact_modifier = artifact_knight_effectiveness_1_modifier
}
10 = {
add_artifact_modifier = artifact_knight_effectiveness_2_modifier
}
5 = {
add_artifact_modifier = artifact_knight_effectiveness_3_modifier
}
}
}
10 = { # Levy Reinforcement Rate
random_list = {
15 = {
add_artifact_modifier = artifact_levy_reinforcement_rate_1_modifier
}
5 = {
add_artifact_modifier = artifact_levy_reinforcement_rate_2_modifier
}
}
}
10 = { # Dread Gain
random_list = {
15 = {
add_artifact_modifier = artifact_dread_gain_mult_1_modifier
}
5 = {
add_artifact_modifier = artifact_dread_gain_mult_2_modifier
}
}
}
10 = { # Dread Baseline
random_list = {
20 = {
add_artifact_modifier = artifact_dread_baseline_add_1_modifier
}
5 = {
add_artifact_modifier = artifact_dread_baseline_add_2_modifier
}
}
}
10 = { # Prestige Bonus - You only get one, as we don't want these to stack too much
random_list = {
10 = { # Monthly Prestige
random_list = {
10 = {
add_artifact_modifier = artifact_monthly_prestige_1_modifier
}
5 = {
add_artifact_modifier = artifact_monthly_prestige_2_modifier
}
}
}
10 = { # Prestige per Knight
random_list = {
10 = {
add_artifact_modifier = artifact_monthly_prestige_gain_per_knight_add_1_modifier
}
5 = {
add_artifact_modifier = artifact_monthly_prestige_gain_per_knight_add_2_modifier
}
}
}
10 = { # Prestige per Dread
random_list = {
10 = {
add_artifact_modifier = artifact_monthly_prestige_gain_per_dread_add_1_modifier
}
5 = {
add_artifact_modifier = artifact_monthly_prestige_gain_per_dread_add_2_modifier
}
}
}
}
}
10 = { # Advantage vs other Faiths
trigger = {
exists = scope:epic_loser
exists = scope:owner
scope:epic_loser = {
faith != scope:owner.faith
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_tolerance_advantage_mod_2_modifier
}
10 = {
add_artifact_modifier = artifact_tolerance_advantage_mod_3_modifier
}
5 = {
add_artifact_modifier = artifact_tolerance_advantage_mod_4_modifier
}
}
}
10 = { # Controlled Province Advantage
trigger = {
exists = scope:owner
exists = scope:epic_loser
exists = scope:epic_battle_location
scope:owner = {
any_character_war = {
is_defender = scope:owner
is_attacker = scope:epic_loser
}
any_realm_province = {
this = scope:epic_battle_location
}
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_controlled_province_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_controlled_province_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_controlled_province_advantage_3_modifier
}
}
}
# Chance to acquire an advantage bonus for the terrain the battle was fought in
10 = { # Plains Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = plains
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_plains_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_plains_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_plains_advantage_3_modifier
}
}
}
10 = { # Farmlands Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = farmlands
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_farmlands_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_farmlands_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_farmlands_advantage_3_modifier
}
}
}
10 = { # Hills Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = hills
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_hills_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_hills_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_hills_advantage_3_modifier
}
}
}
10 = { # Mountains Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = mountains
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_mountains_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_mountains_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_mountains_advantage_3_modifier
}
}
}
10 = { # Desert Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = desert
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_desert_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_desert_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_desert_advantage_3_modifier
}
}
}
10 = { # Desert Mountains Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = desert_mountains
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_desert_mountains_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_desert_mountains_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_desert_mountains_advantage_3_modifier
}
}
}
10 = { # Oasis Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = oasis
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_oasis_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_oasis_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_oasis_advantage_3_modifier
}
}
}
10 = { # Jungle Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = jungle
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_jungle_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_jungle_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_jungle_advantage_3_modifier
}
}
}
10 = { # Forest Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = forest
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_forest_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_forest_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_forest_advantage_3_modifier
}
}
}
10 = { # Taiga Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = taiga
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_taiga_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_taiga_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_taiga_advantage_3_modifier
}
}
}
10 = { # Wetlands Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = wetlands
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_wetlands_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_wetlands_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_wetlands_advantage_3_modifier
}
}
}
10 = { # Steppe Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = steppe
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_steppe_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_steppe_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_steppe_advantage_3_modifier
}
}
}
10 = { # Floodplains Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = floodplains
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_floodplains_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_floodplains_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_floodplains_advantage_3_modifier
}
}
}
10 = { # Drylands Advantage
trigger = {
exists = scope:epic_battle_location
scope:epic_battle_location = {
terrain = drylands
}
}
random_list = {
15 = {
add_artifact_modifier = artifact_drylands_advantage_1_modifier
}
10 = {
add_artifact_modifier = artifact_drylands_advantage_2_modifier
}
5 = {
add_artifact_modifier = artifact_drylands_advantage_3_modifier
}
}
}
# glory_hound_opinion
10 = {
if = {
limit = { rarity = common }
add_artifact_modifier = artifact_glory_hound_vassal_opinion_1_modifier
}
else_if = {
limit = { rarity = masterwork }
add_artifact_modifier = artifact_glory_hound_vassal_opinion_2_modifier
}
else_if = {
limit = { rarity = famed }
add_artifact_modifier = artifact_glory_hound_vassal_opinion_3_modifier
}
else_if = {
limit = { rarity = illustrious }
add_artifact_modifier = artifact_glory_hound_vassal_opinion_4_modifier
}
}
# glory_hound_levy_mult
10 = {
if = {
limit = { rarity = common }
add_artifact_modifier = artifact_glory_hound_levy_contribution_mult_1_modifier
}
else_if = {
limit = { rarity = masterwork }
add_artifact_modifier = artifact_glory_hound_levy_contribution_mult_2_modifier
}
else_if = {
limit = { rarity = famed }
add_artifact_modifier = artifact_glory_hound_levy_contribution_mult_3_modifier
}
else_if = {
limit = { rarity = illustrious }
add_artifact_modifier = artifact_glory_hound_levy_contribution_mult_4_modifier
}
}
# belligerent_opinion
10 = {
if = {
limit = { rarity = common }
add_artifact_modifier = artifact_belligerent_vassal_opinion_1_modifier
}
else_if = {
limit = { rarity = masterwork }
add_artifact_modifier = artifact_belligerent_vassal_opinion_2_modifier
}
else_if = {
limit = { rarity = famed }
add_artifact_modifier = artifact_belligerent_vassal_opinion_3_modifier
}
else_if = {
limit = { rarity = illustrious }
add_artifact_modifier = artifact_belligerent_vassal_opinion_4_modifier
}
}
# belligerent_levy_mult
10 = {
if = {
limit = { rarity = common }
add_artifact_modifier = artifact_belligerent_levy_contribution_mult_1_modifier
}
else_if = {
limit = { rarity = masterwork }
add_artifact_modifier = artifact_belligerent_levy_contribution_mult_2_modifier
}
else_if = {
limit = { rarity = famed }
add_artifact_modifier = artifact_belligerent_levy_contribution_mult_3_modifier
}
else_if = {
limit = { rarity = illustrious }
add_artifact_modifier = artifact_belligerent_levy_contribution_mult_4_modifier
}
}
}
}
else = {
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
add_scaled_artifact_modifier_prestige_effect = yes
add_scaled_artifact_modifier_rulership_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
}
}
}
create_artifact_wall_shield_effect = {
$OWNER$ = { save_scope_as = owner }
$TARGET$ = { save_scope_as = target }
$CREATOR$ = { save_scope_as = smith }
hidden_effect_new_object = {
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
if = {
limit = {
scope:smith = { artifact_use_mediterranean_building_visuals_trigger = yes }
}
scope:owner = {
create_artifact = {
name = artifact_wall_shield_name
creator = scope:smith
description = artifact_wall_shield_description
visuals = wall_shield_medi
visuals_source = scope:target
type = wall_shield_special
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
else = {
scope:owner = {
create_artifact = {
name = artifact_wall_shield_name
creator = scope:smith
description = artifact_wall_shield_description
visuals = wall_shield
visuals_source = scope:target
type = wall_shield
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_grandeur_small_effect = yes
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_minor_prestige_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
}
}
}
create_artifact_sculpture_effect = {
$OWNER$ = { save_scope_as = owner }
$SCULPTER$ = { save_scope_as = sculpter }
hidden_effect_new_object = {
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
if = {
limit = {
scope:owner = { is_female = yes }
}
save_scope_value_as = {
name = owner_fm
value = flag:female
}
}
else = {
save_scope_value_as = {
name = owner_fm
value = flag:male
}
}
if = {
limit = {
OR = {
scope:sculpter = {
OR = {
artifact_use_mena_building_visuals_trigger = yes
artifact_use_iranian_building_visuals_trigger = yes
artifact_use_steppe_building_visuals_trigger = yes
}
}
scope:owner = {
faith = {
OR = {
has_doctrine = tenet_aniconism
religion = religion:islam_religion
}
}
}
}
}
scope:owner = {
create_artifact = {
name = artifact_sculpture_name
creator = scope:sculpter
description = placeholder
visuals = statue_mena
type = sculpture
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
else = {
scope:owner = {
create_artifact = {
name = artifact_sculpture_name
creator = scope:sculpter
description = placeholder
visuals = statue
type = sculpture
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
scope:newly_created_artifact = {
if = {
limit = {
has_artifact_feature = sculpture_material_wood
}
set_artifact_feature_group = generic_material_wood
}
#Description
if = {
limit = {
OR = {
scope:sculpter = {
OR = {
artifact_use_mena_building_visuals_trigger = yes
artifact_use_iranian_building_visuals_trigger = yes
artifact_use_steppe_building_visuals_trigger = yes
}
}
scope:owner = { #An owner who follows an aniconic faith will never want a statue that portrays a human
faith = {
OR = {
has_doctrine = tenet_aniconism
religion = religion:islam_religion
}
}
}
}
}
set_artifact_description = artifact_sculpture_animal_description #backup description if anti icons
}
else = {
set_artifact_description = artifact_sculpture_description #default description of person
}
add_scaled_artifact_modifier_grandeur_small_effect = yes
add_scaled_artifact_modifier_prestige_effect = yes
add_scaled_artifact_modifier_majesty_effect = yes
remove_artifact_modifier = artifact_placeholder_modifier
}
}
}
create_artifact_pedestal_rock_effect = {
$OWNER$ = { save_scope_as = owner }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_rock_name
creator = scope:owner
description = artifact_pedestal_rock_description
visuals = rock
type = pedestal
modifier = artifact_monthly_piety_4_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
decaying = no
}
}
scope:newly_created_artifact = {
add_artifact_modifier = artifact_monthly_piety_gain_mult_2_modifier
add_artifact_modifier = artifact_stress_gain_1_modifier
}
}
create_artifact_pedestal_pouch_effect = {
$OWNER$ = { save_scope_as = owner }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_pouch_name
creator = scope:owner
description = artifact_pedestal_pouch_description
visuals = pouch
type = pedestal
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
create_artifact_pedestal_scroll_effect = {
$OWNER$ = { save_scope_as = owner }
$WRITER$ = { save_scope_as = writer }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_scroll_name
creator = scope:writer
description = artifact_pedestal_scroll_description
visuals = scroll
type = pedestal
modifier = artifact_monthly_prestige_4_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
add_artifact_modifier = artifact_stewardship_per_stress_level_2_modifier
add_artifact_modifier = artifact_parochial_vassal_opinion_3_modifier
}
}
create_artifact_pedestal_religious_head_letter_effect = {
$OWNER$ = { save_scope_as = owner }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_religious_head_letter_name
creator = scope:owner
description = artifact_pedestal_religious_head_letter_description
visuals = scroll
type = pedestal
modifier = religious_head_letter_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_grandeur_small_effect = yes
add_scaled_artifact_modifier_piety_effect = yes
}
}
#The crucifix should be preferred by non-aniconic Christian faiths
create_artifact_pedestal_crucifix_effect = {
$OWNER$ = { save_scope_as = owner }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_crucifix_name
creator = scope:owner
description = artifact_pedestal_crucifix_description
visuals = cross
type = pedestal
template = cross_template
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_devotion_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_piety_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
}
}
#The cross is for aniconic Christian faiths
create_artifact_pedestal_cross_effect = {
$OWNER$ = { save_scope_as = owner }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_cross_name
description = artifact_pedestal_cross_description
visuals = cross
type = pedestal
template = cross_template
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_devotion_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
if = {
limit = {
OR = {
rarity = famed
rarity = illustrious
}
}
add_scaled_artifact_modifier_piety_effect = yes
}
remove_artifact_modifier = artifact_placeholder_modifier
}
}
create_artifact_pedestal_human_skull_effect = {
$OWNER$ = { save_scope_as = owner }
$CREATOR$ = { save_scope_as = creator }
$DESKULLED$ = { save_scope_as = killed }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_human_skull_name
creator = scope:creator
description = artifact_pedestal_human_skull_description
visuals = human_skull
type = pedestal
modifier = artifact_dread_gain_mult_1_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_grandeur_small_effect = yes
add_scaled_artifact_modifier_minor_prestige_effect = yes
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_dread_baseline_add_2_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_dread_baseline_add_1_modifier
}
}
}
create_artifact_pedestal_human_skull_specific_effect = {
$OWNER$ = { save_scope_as = owner }
$DESKULLED$ = { save_scope_as = killed }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_human_skull_name
creator = scope:owner
description = artifact_pedestal_human_skull_specific_description
visuals = human_skull
type = miscellaneous
modifier = artifact_dread_baseline_add_1_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
}
create_artifact_pedestal_diamond_effect = {
$OWNER$ = { save_scope_as = owner }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_massive_diamond_name
creator = scope:owner
description = artifact_pedestal_massive_diamond
visuals = diamond
type = pedestal
modifier = artifact_monthly_prestige_2_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_grandeur_big_effect = yes
add_scaled_artifact_modifier_prestige_effect = yes
}
}
create_artifact_pedestal_gold_effect = {
$OWNER$ = { save_scope_as = owner }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_gold_nugget_name
description = artifact_pedestal_gold_nugget
creator = scope:owner
visuals = pouch
type = pedestal
#icon = pile of gold
modifier = artifact_monthly_prestige_2_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_grandeur_small_effect = yes
add_2_scaled_artifact_modifier_majesty_effect = yes
}
}
##################
# Books
#Effect used to influence a book-artifact's content quality
change_artifact_book_content_quality_effect = {
if = {
limit = {
$AMOUNT$ > 0
}
custom_tooltip = change_artifact_book_content_quality_effect_gain
}
else_if = {
limit = {
$AMOUNT$ < 0
}
custom_tooltip = change_artifact_book_content_quality_effect_loss
}
hidden_effect = {
if = {
limit = {
NOT = {
exists = var:book_content_quality
}
}
set_variable = {
name = book_content_quality
value = $AMOUNT$
}
}
else = {
change_variable = {
name = book_content_quality
add = $AMOUNT$
}
}
}
}
# Effect used when a character becomes inspired to write a book
set_book_subject_effect = {
save_temporary_scope_value_as = {
name = allow_no_subject_option
value = $NO_SUBJECT$
}
hidden_effect = { #If they haven't specified what they're gonna write about we decide it here (might still leave it up to the sponsor if allow_no_subject_option = yes!)
$BASE_SCOPE$ = {
if = {
limit = {
NOT = { exists = var:book_subject }
}
random_list = { #What do they want to write about?
1 = {
modifier = {
add = 60
has_education_martial_trigger = yes
}
modifier = {
add = 40
book_subject_martial_trigger = yes
}
modifier = {
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = martial
multiply = -5
}
}
set_variable = {
name = book_subject
value = flag:martial
}
}
1 = {
modifier = {
add = 60
has_education_diplomacy_trigger = yes
}
modifier = {
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = diplomacy
multiply = -5
}
}
set_variable = {
name = book_subject
value = flag:diplomacy
}
}
1 = {
modifier = {
add = 60
has_education_stewardship_trigger = yes
}
modifier = {
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = stewardship
multiply = -5
}
}
set_variable = {
name = book_subject
value = flag:stewardship
}
}
1 = {
modifier = {
add = 60
has_education_intrigue_trigger = yes
}
modifier = {
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = intrigue
multiply = -5
}
}
set_variable = {
name = book_subject
value = flag:intrigue
}
}
1 = {
modifier = {
add = 60
has_education_learning_trigger = yes
}
modifier = {
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = learning
multiply = -5
}
}
set_variable = {
name = book_subject
value = flag:learning
}
}
1 = {
modifier = {
add = 50
book_subject_medicine_trigger = yes
}
modifier = {
add = 20
is_witch_trigger = yes
}
modifier = {
add = {
value = learning
multiply = 2
}
}
ai_value_modifier = {
ai_rationality = 0.25
}
set_variable = {
name = book_subject
value = flag:medicine
}
}
1 = {
trigger = {
is_witch_trigger = yes
}
modifier = {
add = 20
book_subject_witch_trigger = yes
}
ai_value_modifier = {
ai_boldness = 0.75
}
set_variable = {
name = book_subject
value = flag:witch
}
set_variable = {
name = book_subject_witch_scope
value = this
}
}
40 = {
trigger = {
has_trait = lifestyle_reveler
}
ai_value_modifier = {
ai_compassion = 0.25
}
set_variable = {
name = book_subject
value = flag:reveler
}
}
40 = {
trigger = {
has_trait = lifestyle_blademaster
}
modifier = {
add = {
value = martial
multiply = 2
}
}
set_variable = {
name = book_subject
value = flag:blademaster
}
}
40 = {
trigger = {
has_trait = lifestyle_hunter
}
set_variable = {
name = book_subject
value = flag:hunter
}
}
40 = {
trigger = {
has_trait = lifestyle_mystic
}
modifier = {
add = {
value = learning
multiply = 2
}
}
set_variable = {
name = book_subject
value = flag:mystic
}
}
40 = {
trigger = {
has_trait = lifestyle_herbalist
}
modifier = {
add = {
value = learning
multiply = 2
}
}
set_variable = {
name = book_subject
value = flag:herbalist
}
}
40 = {
trigger = {
has_trait = legend
}
modifier = {
add = {
value = martial
multiply = 2
}
}
set_variable = {
name = book_subject
value = flag:legend
}
}
1 = {
trigger = {
is_cannibal_trigger = yes
}
modifier = {
add = 30
book_subject_cannibal_trigger = yes
}
ai_value_modifier = {
ai_boldness = 0.75
}
set_variable = {
name = book_subject
value = flag:cannibal
}
}
1 = {
modifier = {
add = 50
book_subject_torturer_trigger = yes
}
compare_modifier = {
value = intrigue
multiplier = 0.5
}
set_variable = {
name = book_subject
value = flag:torturer
}
}
1 = {
trigger = {
is_deviant_trigger = yes
}
modifier = {
add = 30
OR = {
has_trait = arrogant
has_trait = deviant
}
}
ai_value_modifier = {
ai_boldness = 0.75
}
set_variable = {
name = book_subject
value = flag:deviant
}
}
50 = {
trigger = {
has_trait = lunatic
}
ai_value_modifier = {
ai_boldness = 0.75
}
set_variable = {
name = book_subject
value = flag:lunatic
}
}
400 = {
trigger = { #Why are you sponsoring a kid to write??
is_adult = no
}
set_variable = {
name = book_subject
value = flag:childhood
}
set_favorite_toy_effect = yes
}
50 = {
trigger = {
book_subject_animals_trigger = yes
}
modifier = { #If a kid has a pet they're gonna wanna to write about it
add = 800
is_adult = no
}
modifier = {
add = 75
has_trait = lunatic
}
modifier = {
add = 50
has_trait = intellect_bad
}
set_variable = {
name = book_subject
value = flag:animals
}
}
50 = { #They don't care and you can decide!
trigger = {
scope:allow_no_subject_option = yes
}
modifier = {
add = 30
has_personality_submissive_trigger = yes
}
ai_value_modifier = {
ai_boldness = -0.25
ai_energy = -0.25
}
}
}
# FALLBACK: The previous list can return nothing if you're bad at all skills and have nothing special going on
if = {
limit = {
NOT = { exists = var:book_subject }
scope:allow_no_subject_option = no
}
random_list = {
1 = {
modifier = {
add = 60
has_education_martial_trigger = yes
}
modifier = {
add = 40
OR = {
prowess >= high_skill_rating
has_trait = faith_warrior
has_trait = crusader_king
has_trait = viking
number_of_commander_traits >= 1
}
}
modifier = {
add = {
value = martial
multiply = 2
}
}
set_variable = {
name = book_subject
value = flag:martial
}
}
1 = {
modifier = {
add = 60
has_education_diplomacy_trigger = yes
}
modifier = {
add = {
value = diplomacy
multiply = 2
}
}
set_variable = {
name = book_subject
value = flag:diplomacy
}
}
1 = {
modifier = {
add = 60
has_education_stewardship_trigger = yes
}
modifier = {
add = {
value = stewardship
multiply = 2
}
}
set_variable = {
name = book_subject
value = flag:stewardship
}
}
1 = {
modifier = {
add = 60
has_education_intrigue_trigger = yes
}
modifier = {
add = {
value = intrigue
multiply = 2
}
}
set_variable = {
name = book_subject
value = flag:intrigue
}
}
1 = {
modifier = {
add = 60
has_education_learning_trigger = yes
}
modifier = {
add = {
value = learning
multiply = 2
}
}
set_variable = {
name = book_subject
value = flag:learning
}
}
}
}
}
}
}
}
# Get variables needed for the book
get_book_variables_effect = {
scope:owner = {
# If we have a subject we save it as a variable on the owner so that we can access it when setting the subject-feature
if = {
limit = {
NOT = { scope:subject_is_set = flag:no }
}
set_variable = {
name = book_artifact_subject
value = scope:subject_is_set
days = 1
}
}
else_if = {
limit = {
exists = scope:author
exists = scope:author.var:book_subject
}
set_variable = {
name = book_artifact_subject
value = scope:author.var:book_subject
days = 1
}
}
#If we have a topic we save it as a variable on the owner so that we can access it when setting the topic-feature
if = {
limit = {
NOT = { scope:topic_is_set = flag:no }
}
set_variable = {
name = book_artifact_topic
value = scope:topic_is_set
days = 1
}
}
else_if = {
limit = {
exists = scope:author
exists = scope:author.var:book_topic
}
set_variable = {
name = book_artifact_topic
value = scope:author.var:book_topic
days = 1
}
}
# If subject or topic is "no" we do nothing and let the feature system handle it
# To save the topic category if it has been set in events
if = {
limit = {
exists = scope:author
exists = scope:author.var:book_topic_category
}
set_variable = {
name = book_topic_category
value = scope:author.var:book_topic_category
days = 1
}
}
# Save toy for childhood book loc (if it's a kid writing it will be the author who is a kid)
if = {
limit = {
exists = var:book_artifact_subject
var:book_artifact_subject = flag:childhood
}
if = {
limit = {
NOT = { exists = scope:author.var:child_toy_variable }
}
scope:author = { set_favorite_toy_effect = yes }
}
}
if = { #Is the book about a mystical animal you hunted? Then we need to save the animal as a variable so we can use the custom loc key in the loc
limit = {
exists = var:book_artifact_subject
var:book_artifact_subject = flag:mystical_animal
}
set_variable = {
name = animal_type
value = scope:owner.var:hunted_mystical_animal
days = 1
}
}
# Witch
if = {
limit = {
exists = var:book_artifact_subject
var:book_artifact_subject = flag:witch
exists = scope:author.var:book_subject_witch_scope
}
set_variable = {
name = book_subject_witch_scope
value = scope:author.var:book_subject_witch_scope
days = 1
}
}
# Soulmate
if = {
limit = {
exists = var:book_artifact_topic
var:book_artifact_topic = flag:soulmate #Check for relationship variable
}
if = {
limit = {
exists = scope:author
exists = scope:author.var:book_topic_relationship
}
set_variable = {
name = book_topic_relationship
value = scope:author.var:book_topic_relationship
days = 1
}
}
else_if = {
limit = {
exists = var:book_topic_relationship
}
var:book_topic_relationship = {
save_scope_as = soulmate # We still save the scope here for use in events
}
}
}
# Relationship
if = {
limit = {
exists = var:book_artifact_topic
var:book_artifact_topic = flag:nemesis #Check for relationship variable
}
if = {
limit = {
exists = scope:author
exists = scope:author.var:book_topic_relationship
}
set_variable = {
name = book_topic_relationship
value = scope:author.var:book_topic_relationship
days = 1
}
scope:author.var:book_topic_relationship = {
save_scope_as = nemesis # We still save the scope here for use in events
}
}
else_if = {
limit = {
exists = var:book_topic_relationship
}
set_variable = {
name = book_topic_relationship
value = scope:owner.var:book_topic_relationship
days = 1
}
var:book_topic_relationship = {
save_scope_as = nemesis # We still save the scope here for use in events
}
}
}
# Unification
if = {
limit = {
exists = var:book_artifact_topic
var:book_artifact_topic = flag:unification
}
#Check for title variable
if = {
limit = {
exists = scope:author
exists = scope:author.var:book_topic_united_title
}
set_variable = {
name = relevant_title
value = scope:author.var:book_topic_united_title
days = 1
}
}
else_if = {
limit = {
exists = var:book_topic_united_title
}
set_variable = {
name = relevant_title
value = scope:owner.var:book_topic_united_title
days = 1
}
var:book_topic_united_title = {
save_scope_as = relevant_title
}
}
}
# Creation
if = {
limit = {
exists = var:book_artifact_topic
var:book_artifact_topic = flag:creation
}
#Check for title variable
if = {
limit = {
exists = scope:author
exists = scope:author.var:book_topic_created_title
}
set_variable = {
name = relevant_title
value = scope:author.var:book_topic_created_title
days = 1
}
scope:author.var:book_topic_created_title = {
save_scope_as = relevant_title
}
}
else_if = {
limit = {
exists = var:book_topic_created_title
}
set_variable = {
name = relevant_title
value = scope:owner.var:book_topic_created_title
days = 1
}
var:book_topic_created_title = {
save_scope_as = relevant_title
}
}
}
# Restoration
if = {
limit = {
exists = var:book_artifact_topic
var:book_artifact_topic = flag:restoration
}
#Check for title variable
if = {
limit = {
exists = scope:author
exists = scope:author.var:book_topic_restored_title
}
set_variable = {
name = relevant_title
value = scope:author.var:book_topic_restored_title
days = 1
}
scope:author.var:book_topic_restored_title = {
save_scope_as = relevant_title
}
}
else_if = {
limit = {
exists = var:book_topic_restored_title
}
set_variable = {
name = relevant_title
value = scope:owner.var:book_topic_restored_title
days = 1
}
var:book_topic_restored_title = {
save_scope_as = relevant_title
}
}
}
}
}
# Here we save the content quality of the book; how well does the author understand/know the subject? This is separate from the artifact quality value since that's about the quality of the artifact itself, not the content of the text
get_book_content_quality_effect = {
$SKILL_BASE$ = { save_scope_as = skill_base }
save_scope_value_as = {
name = book_content_quality
value = {
# Choices in events etc. will affect the quality of the artifact you get
if = {
limit = {
exists = scope:skill_base.var:book_content_quality
}
add = {
value = scope:skill_base.var:book_content_quality
multiply = 10
}
}
# Is it a lifestyle subject? Then it's good if the inspiration owner shares the lifestyle
if = { # medicine
limit = {
has_artifact_feature = book_subject_medicine
}
if = {
limit = {
scope:skill_base = {
has_trait = lifestyle_physician
}
}
add = 30
}
if = {
limit = {
scope:skill_base = {
has_trait = lifestyle_mystic
}
}
add = 20
}
if = {
limit = {
scope:skill_base = {
has_trait = lifestyle_herbalist
}
}
add = 20
}
if = {
limit = {
scope:skill_base = {
is_witch_trigger = yes
}
}
add = 10
}
}
if = { # reveler
limit = {
has_artifact_feature = book_subject_reveler
scope:skill_base = {
has_trait = lifestyle_reveler
}
}
add = 30
}
if = { # blademaster
limit = {
has_artifact_feature = book_subject_blademaster
scope:skill_base = {
has_trait = lifestyle_blademaster
}
}
add = 30
}
if = { # hunter
limit = {
has_artifact_feature = book_subject_hunter
scope:skill_base = {
has_trait = lifestyle_hunter
}
}
add = 30
}
if = { # mystic
limit = {
has_artifact_feature = book_subject_mystic
scope:skill_base = {
has_trait = lifestyle_mystic
}
}
add = 30
}
if = { # herbalist
limit = {
has_artifact_feature = book_subject_herbalist
scope:skill_base = {
has_trait = lifestyle_herbalist
}
}
add = 30
}
if = { # cannibal
limit = {
has_artifact_feature = book_subject_cannibal
scope:skill_base = {
is_cannibal_trigger = yes
}
}
add = 30
}
if = { # witch
limit = {
has_artifact_feature = book_subject_witch
scope:skill_base = {
is_witch_trigger = yes
}
}
add = 30
}
if = { # deviant
limit = {
has_artifact_feature = book_subject_deviant
scope:skill_base = {
is_deviant_trigger = yes
}
}
add = 30
}
if = { # lunatic
limit = {
has_artifact_feature = book_subject_lunatic
scope:skill_base = {
has_trait = lunatic
}
}
add = 30
}
if = { # relationship - score based on the authors opinion of the subject
limit = {
has_artifact_feature = book_subject_relationship
scope:skill_base = {
save_temporary_opinion_value_as = {
name = opinion_of_subject
target = scope:owner.var:book_topic_relationship
}
}
}
add = {
value = scope:opinion_of_subject
min = 0
max = 75
}
}
if = { # relationship - boost if you're socially savvy
limit = {
has_artifact_feature = book_subject_relationship
scope:skill_base = { has_trait = gregarious }
}
add = 10
}
# If it's about your actions related to unification/creation/restoration of a title then it's just naturally easier to make you look good
if = {
limit = {
OR = {
has_artifact_feature = book_subject_kingdom
has_artifact_feature = book_subject_empire
}
}
add = 50
}
# The owner and inspiration owner's skills in the relevant subject, and education trait, affects the outcome
if = {
limit = {
has_artifact_feature = book_subject_martial
}
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = scope:skill_base.martial
multiply = -6
}
add = scope:owner.martial
scope:skill_base = {
if = {
limit = {
has_trait = education_martial_1
}
add = 20
}
else_if = {
limit = {
has_trait = education_martial_2
}
add = 40
}
else_if = {
limit = {
has_trait = education_martial_3
}
add = 60
}
else_if = {
limit = {
has_trait = education_martial_4
}
add = 80
}
else_if = {
limit = {
has_trait = education_martial_5
}
add = 100
}
}
}
else_if = {
limit = {
has_artifact_feature = book_subject_diplomacy
}
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = scope:skill_base.diplomacy
multiply = -6
}
add = scope:owner.diplomacy
scope:skill_base = {
if = {
limit = {
has_trait = education_diplomacy_1
}
add = 20
}
else_if = {
limit = {
has_trait = education_diplomacy_2
}
add = 40
}
else_if = {
limit = {
has_trait = education_diplomacy_3
}
add = 60
}
else_if = {
limit = {
has_trait = education_diplomacy_4
}
add = 80
}
else_if = {
limit = {
has_trait = education_diplomacy_5
}
add = 100
}
}
}
else_if = {
limit = {
has_artifact_feature = book_subject_stewardship
}
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = scope:skill_base.stewardship
multiply = -6
}
add = scope:owner.stewardship
scope:skill_base = {
if = {
limit = {
has_trait = education_stewardship_1
}
add = 20
}
else_if = {
limit = {
has_trait = education_stewardship_2
}
add = 40
}
else_if = {
limit = {
has_trait = education_stewardship_3
}
add = 60
}
else_if = {
limit = {
has_trait = education_stewardship_4
}
add = 80
}
else_if = {
limit = {
has_trait = education_stewardship_5
}
add = 100
}
}
}
else_if = {
limit = {
OR = {
has_artifact_feature = book_subject_intrigue
has_artifact_feature = book_subject_torturer
}
}
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = scope:skill_base.intrigue
multiply = -6
}
add = scope:owner.intrigue
scope:skill_base = {
if = {
limit = {
has_trait = education_intrigue_1
}
add = 20
}
else_if = {
limit = {
has_trait = education_intrigue_2
}
add = 40
}
else_if = {
limit = {
has_trait = education_intrigue_3
}
add = 60
}
else_if = {
limit = {
has_trait = education_intrigue_4
}
add = 80
}
else_if = {
limit = {
has_trait = education_intrigue_5
}
add = 100
}
}
}
else_if = {
limit = {
has_artifact_feature = book_subject_learning
}
add = { #If they're good you get +, if they're shit you get -
value = average_skill_rating
subtract = scope:skill_base.learning
multiply = -6
}
add = scope:owner.learning
scope:skill_base = {
if = {
limit = {
has_trait = education_learning_1
}
add = 20
}
else_if = {
limit = {
has_trait = education_learning_2
}
add = 40
}
else_if = {
limit = {
has_trait = education_learning_3
}
add = 60
}
else_if = {
limit = {
has_trait = education_learning_4
}
add = 80
}
else_if = {
limit = {
has_trait = education_learning_5
}
add = 100
}
}
}
# The overall quality has an impact as well
add = {
value = scope:quality
multiply = 0.25
}
}
}
}
# CREATE A BOOK
# -OWNER is always needed
# -CREATOR needs a scope, if you want no author specified you can use "random_dummy_gender_effect = yes" before the book effect and then scope:dummy_gender for author
# -SET_SUBJECT has to be a flag, and has to be one of the subjects defined as a "book_subject" feature. If you want no subject specified (it will then be set in the effect itself) use "flag:no"
# -SET_TOPIC has to be a flag, and has to be one of the topics defined as a "book_topic" feature. If you want no topic specified (it will then be set in the effect itself) use "flag:no". You have to also set the subject if you set the topic!
# Example:
#random_dummy_gender_effect = yes
#create_artifact_book_effect = {
# OWNER = root
# CREATOR = scope:dummy_gender
# SET_SUBJECT = flag:intrigue
# SET_TOPIC = flag:no
#}
# This will give you a book with no known author about intrigue with a random topic.
create_artifact_book_effect = {
$OWNER$ = { save_scope_as = owner } #Will always exist!
$CREATOR$ = { #Doesn't always exist
save_scope_as = author
}
save_temporary_scope_value_as = {
name = subject_is_set
value = $SET_SUBJECT$
}
save_temporary_scope_value_as = {
name = topic_is_set
value = $SET_TOPIC$
}
if = {
limit = {
exists = scope:dummy_gender
scope:author = scope:dummy_gender
}
clear_saved_scope = author
clear_saved_scope = dummy_gender
}
else = { #If we have an author we save them as a variable on the owner so that we can access them later on when setting the subject etc.
scope:owner = {
set_variable = {
name = book_artifact_author
value = scope:author
days = 1
}
}
}
hidden_effect_new_object = {
# Get artifact quality and wealth
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
# To save the subject, topic, and other variables we'll need if it has been set in events or in the effect
get_book_variables_effect = yes
if = { #Should this be a court artifact?
limit = {
has_royal_court = yes
has_dlc_feature = court_artifacts
NOT = { exists = scope:should_be_trinket }
}
if = { #Do we have an author?
limit = {
exists = scope:author
}
if = { #Is this author using Palm Leaf (indian) books?
limit = {
scope:author = { artifacts_use_indian_books_trigger = yes }
}
scope:owner = {
create_artifact = {
name = placeholder # Will be regenerated in the post-creation effects
creator = scope:author
description = placeholder # Will be regenerated in the post-creation effects
visuals = indian_book
type = book
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
else = { #Codices/Non-Indian books
scope:owner = {
create_artifact = {
name = placeholder # Will be regenerated in the post-creation effects
creator = scope:author
description = placeholder # Will be regenerated in the post-creation effects
visuals = book
type = book
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
}
else = { #We don't have an author
if = {
limit = { #Is this a palm leaf/indian book?
scope:owner = { artifacts_use_indian_books_trigger = yes }
}
scope:owner = {
create_artifact = {
name = placeholder # Will be regenerated in the post-creation effects
description = placeholder # Will be regenerated in the post-creation effects
visuals = indian_book
type = book
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
else = { #This is a codex/non-indian book:
scope:owner = {
create_artifact = {
name = placeholder # Will be regenerated in the post-creation effects
description = placeholder # Will be regenerated in the post-creation effects
visuals = book
type = book
history = { type = created_before_history } # We don't know who wrote it
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
}
}
}
else = { #This is a court artifact
if = {
limit = {
exists = scope:author #We have an author
}
if = {
limit = {
scope:author = { artifacts_use_indian_books_trigger = yes }
}
scope:owner = {
create_artifact = {
name = placeholder # Will be regenerated in the post-creation effects
creator = scope:author
description = placeholder # Will be regenerated in the post-creation effects
visuals = indian_book
type = journal
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
# Subject and cover material is set as a required feature for a book-type artifact, but for a miscellaneous-type it's an optional feature, so we need to set it here
scope:newly_created_artifact = {
set_artifact_feature_group = book_subject
set_artifact_feature_group = book_cover_material
}
}
else = { #This is a codex/non-indian book
scope:owner = {
create_artifact = {
name = placeholder # Will be regenerated in the post-creation effects
creator = scope:author
description = placeholder # Will be regenerated in the post-creation effects
visuals = book
type = journal
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
# Subject and cover material is set as a required feature for a book-type artifact, but for a miscellaneous-type it's an optional feature, so we need to set it here
scope:newly_created_artifact = {
set_artifact_feature_group = book_subject
set_artifact_feature_group = book_cover_material
}
}
}
else = { #We don't have an author
if = {
limit = { #Is this a palm-leaf/indian book?
scope:owner = { artifacts_use_indian_books_trigger = yes }
}
scope:owner = {
create_artifact = {
name = placeholder # Will be regenerated in the post-creation effects
description = placeholder # Will be regenerated in the post-creation effects
visuals = indian_book
type = journal
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
# Subject and cover material is set as a required feature for a book-type artifact, but for a miscellaneous-type it's an optional feature, so we need to set it here
scope:newly_created_artifact = {
set_artifact_feature_group = book_subject
set_artifact_feature_group = book_cover_material
}
}
else = { #This isn't a palm leaf/indian book
scope:owner = {
create_artifact = {
name = placeholder # Will be regenerated in the post-creation effects
description = placeholder # Will be regenerated in the post-creation effects
visuals = book
type = journal
history = { type = created_before_history } # We don't know who wrote it
modifier = artifact_placeholder_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
# Subject and cover material is set as a required feature for a book-type artifact, but for a miscellaneous-type it's an optional feature, so we need to set it here
scope:newly_created_artifact = {
set_artifact_feature_group = book_subject
set_artifact_feature_group = book_cover_material
}
}
}
}
scope:newly_created_artifact = {
set_artifact_feature_group = book_topic
set_artifact_feature_group = book_title
set_artifact_feature_group = book_decoration
set_artifact_feature_group = decoration_pattern
get_artifact_feature_references_effect = yes
# Get quality of written content
if = {
limit = {
NOT = { exists = scope:author }
}
get_book_content_quality_effect = { SKILL_BASE = scope:owner }
}
else = {
get_book_content_quality_effect = { SKILL_BASE = scope:author }
}
# We save these values as variables on the owner so that we can access them deep in scopes in the desc-loc later on
scope:owner = {
set_variable = {
name = quality
value = scope:quality
}
set_variable = {
name = wealth
value = scope:wealth
}
set_variable = {
name = book_content_quality
value = scope:book_content_quality
}
}
# Generate the updated - final description for the book
set_artifact_description = artifact_book_description
# Generate the updated title - final title for the book
set_artifact_name = artifact_book_title
# Is the subject a lifestyle?
if = {
limit = {
has_artifact_feature = book_topic_stewardship_old_ledger
}
#add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier
remove_artifact_modifier = artifact_placeholder_modifier
flag_as_trash_artifact = yes
}
else_if = {
limit = { has_artifact_feature = book_subject_martial }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_1_modifier
}
}
else_if = {
limit = { has_artifact_feature = book_subject_diplomacy }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier
}
}
else_if = {
limit = { has_artifact_feature = book_subject_stewardship }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier
}
}
else_if = {
limit = { has_artifact_feature = book_subject_learning }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_1_modifier
}
}
else_if = {
limit = {
OR = {
has_artifact_feature = book_subject_intrigue
has_artifact_feature = book_subject_torturer
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_1_modifier
}
}
else_if = {
limit = { has_artifact_feature = book_subject_empire }
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_short_reign_duration_mult_7_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_short_reign_duration_mult_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_short_reign_duration_mult_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_short_reign_duration_mult_1_modifier
}
add_artifact_modifier = artifact_dynasty_opinion_2_modifier
add_artifact_modifier = artifact_court_grandeur_baseline_add_1_modifier
}
else_if = {
limit = { has_artifact_feature = book_subject_kingdom }
add_scaled_artifact_modifier_dynasty_prestige_effect = yes
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_short_reign_duration_mult_7_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_short_reign_duration_mult_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_short_reign_duration_mult_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_short_reign_duration_mult_1_modifier
}
add_artifact_modifier = artifact_dynasty_opinion_2_modifier
add_artifact_modifier = artifact_court_grandeur_baseline_add_1_modifier
}
else_if = {
limit = {
OR = {
has_artifact_feature = book_subject_medicine
has_artifact_feature = book_subject_herbalist
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_health_gain_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_health_gain_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_health_gain_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_health_gain_1_modifier
}
}
else_if = {
limit = { has_artifact_feature = book_subject_reveler }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_courtly_vassal_opinion_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_courtly_vassal_opinion_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_courtly_vassal_opinion_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_courtly_vassal_opinion_2_modifier
}
}
else_if = {
limit = { has_artifact_feature = book_subject_blademaster }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_prowess_5_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_prowess_4_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_prowess_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_prowess_2_modifier
}
}
else_if = {
limit = { has_artifact_feature = book_subject_hunter }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_prowess_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_prowess_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_prowess_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_prowess_1_modifier
}
add_artifact_modifier = artifact_stress_gain_1_modifier
}
else_if = {
limit = { has_artifact_feature = book_subject_mystic }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_1_modifier
}
if = {
limit = {
NOT = { scope:owner.faith = { has_doctrine_parameter = witchcraft_accepted } }
}
add_artifact_modifier = artifact_clergy_opinion_penalty_2_modifier
}
}
else_if = {
limit = { has_artifact_feature = book_subject_lunatic }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_stress_gain_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_stress_gain_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_stress_gain_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_stress_gain_1_modifier
}
}
else_if = {
limit = { has_artifact_feature = book_subject_relationship }
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_personal_scheme_phase_duration_add_10_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_personal_scheme_phase_duration_add_7_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_personal_scheme_phase_duration_add_5_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_personal_scheme_phase_duration_add_2_modifier
}
}
else_if = {
limit = { #Only for the controversial subjects if they're accepted
OR = {
AND = {
has_artifact_feature = book_subject_cannibal
NOT = {
trait_is_criminal_in_faith_trigger = { TRAIT = trait:cannibal FAITH = scope:owner.faith GENDER_CHARACTER = scope:owner }
}
}
AND = {
has_artifact_feature = book_subject_witch
NOT = {
trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = scope:owner.faith GENDER_CHARACTER = scope:owner }
}
}
AND = {
has_artifact_feature = book_subject_deviant
NOT = {
trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = scope:owner.faith GENDER_CHARACTER = scope:owner }
}
}
}
}
add_scaled_artifact_modifier_prestige_effect = yes
}
if = {
limit = {
OR = {
has_artifact_feature = book_subject_family_epic
has_artifact_feature = book_subject_family_epic_great
}
}
remove_artifact_modifier = artifact_placeholder_modifier
add_artifact_modifier = artifact_monthly_prestige_add_2_modifier
if = {
limit = {
artifact_type = book
}
add_artifact_modifier = artifact_court_grandeur_baseline_add_1_modifier
}
else = {
add_artifact_modifier = artifact_monthly_prestige_2_modifier
}
if = { # Vassal Opinion
limit = {
scope:story = { has_variable = opinion_artifact }
}
if = {
limit = { rarity = illustrious }
add_artifact_modifier = artifact_parochial_vassal_opinion_3_modifier
add_artifact_modifier = artifact_courtly_vassal_opinion_4_modifier
}
else_if = {
limit = { rarity = famed }
add_artifact_modifier = artifact_parochial_vassal_opinion_3_modifier
add_artifact_modifier = artifact_courtly_vassal_opinion_3_modifier
add_artifact_modifier = artifact_parochial_vassal_opinion_3_modifier
}
else_if = {
limit = { rarity = masterwork }
add_artifact_modifier = artifact_courtly_vassal_opinion_3_modifier
add_artifact_modifier = artifact_parochial_vassal_opinion_3_modifier
}
else_if = {
limit = { rarity = common }
add_artifact_modifier = artifact_courtly_vassal_opinion_1_modifier
add_artifact_modifier = artifact_parochial_vassal_opinion_1_modifier
add_artifact_modifier = artifact_courtly_vassal_opinion_1_modifier
add_artifact_modifier = artifact_parochial_vassal_opinion_1_modifier
}
}
if = { # Scheme Resistance
limit = {
scope:story = { has_variable = scheme_artifact }
}
if = { # 8
limit = { rarity = illustrious }
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
}
else_if = { # 6
limit = { rarity = famed }
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
}
else_if = { # 4
limit = { rarity = masterwork }
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
}
else_if = { # 2
limit = { rarity = common }
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
}
}
if = { # Controlled Province Advantage
limit = {
scope:story = { has_variable = advantage_artifact }
}
if = { # 10
limit = { rarity = illustrious }
add_artifact_modifier = artifact_controlled_province_advantage_8_modifier
add_artifact_modifier = artifact_controlled_province_advantage_2_modifier
}
else_if = { # 8
limit = { rarity = famed }
add_artifact_modifier = artifact_controlled_province_advantage_8_modifier
}
else_if = { # 6
limit = { rarity = masterwork }
add_artifact_modifier = artifact_controlled_province_advantage_6_modifier
}
else_if = { # 4
limit = { rarity = common }
add_artifact_modifier = artifact_controlled_province_advantage_4_modifier
}
}
if = { # Personal Scheme Success Chance
limit = {
scope:story = { has_variable = sway_artifact }
}
if = { # 10
limit = { rarity = illustrious }
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_12_modifier # 20
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_8_modifier
}
else_if = {
limit = { rarity = famed }
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_8_modifier # 16
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_8_modifier
}
else_if = {
limit = { rarity = masterwork }
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_12_modifier # 12
}
else_if = {
limit = { rarity = common }
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_8_modifier # 8
}
}
if = { # Monthly Piety + Same Faith Domain Tax
limit = {
scope:story = { has_variable = piety_artifact }
}
if = { # 0.4 + 1
limit = { rarity = illustrious }
add_artifact_modifier = artifact_monthly_piety_4_modifier # 0.4
add_artifact_modifier = artifact_domain_tax_same_faith_mult_4_modifier # 1
add_artifact_modifier = artifact_domain_tax_same_faith_mult_4_modifier
add_artifact_modifier = artifact_domain_tax_same_faith_mult_2_modifier
}
else_if = { # 0.3 + 0.8
limit = { rarity = famed }
add_artifact_modifier = artifact_monthly_piety_3_modifier
add_artifact_modifier = artifact_domain_tax_same_faith_mult_4_modifier
add_artifact_modifier = artifact_domain_tax_same_faith_mult_4_modifier
}
else_if = { # 0.2 + 0.6
limit = { rarity = masterwork }
add_artifact_modifier = artifact_monthly_piety_2_modifier
add_artifact_modifier = artifact_domain_tax_same_faith_mult_4_modifier
add_artifact_modifier = artifact_domain_tax_same_faith_mult_2_modifier
}
else_if = { # 0.1 + 0.4
limit = { rarity = common }
add_artifact_modifier = artifact_monthly_piety_1_modifier
add_artifact_modifier = artifact_domain_tax_same_faith_mult_4_modifier
}
}
if = {
limit = { has_artifact_feature = book_subject_family_epic_great }
add_artifact_modifier = artifact_monthly_prestige_add_2_modifier #This is renown, can be combined with the renown option during making and adds up with the base renown added to all chronicles
}
#Small boost from perspectives:
}
# Modifiers applied based on topic
if = {
limit = {
has_artifact_feature = book_topic_stewardship_old_ledger
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier
remove_artifact_modifier = artifact_placeholder_modifier
}
if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
OR = {
scope:topic = flag:curse_sorcery
scope:topic = flag:poisons
}
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_witch_curse_sorcery
has_artifact_feature = book_topic_intrigue_poisons
}
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_1_modifier
}
add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_2_modifier
add_artifact_modifier = artifact_dread_gain_mult_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
OR = {
scope:topic = flag:love_sorcery
scope:topic = flag:seduction
}
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_witch_love_sorcery
has_artifact_feature = book_topic_intrigue_seduction
}
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_1_modifier
}
add_artifact_modifier = artifact_scheme_resistance_add_2_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:fertility
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_intrigue_fertility
has_artifact_feature = book_topic_intrigue_the_art_of_love
}
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_fertility_gain_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_fertility_gain_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_fertility_gain_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_fertility_gain_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:punishment
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_intrigue_punishment
has_artifact_feature = book_topic_intrigue_punishment_not_torturer
}
}
}
add_artifact_modifier = artifact_monthly_intrigue_lifestyle_xp_2_modifier
add_artifact_modifier = artifact_stress_gain_2_modifier
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_dread_baseline_add_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_dread_baseline_add_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_dread_baseline_add_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_dread_baseline_add_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
OR = {
scope:topic = flag:digest
scope:topic = flag:admin
}
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_stewardship_digest
has_artifact_feature = book_topic_stewardship_admin
}
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:architect
}
trigger_else = {
has_artifact_feature = book_topic_stewardship_architect
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_build_time_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_build_time_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_build_time_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_build_time_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
OR = {
scope:topic = flag:edda
scope:topic = flag:orkneyinga
}
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_diplomacy_edda
has_artifact_feature = book_topic_diplomacy_orkneyinga
}
}
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_1_modifier
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_raid_speed_8_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_raid_speed_6_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_raid_speed_4_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_raid_speed_2_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:poetry
}
trigger_else = {
has_artifact_feature = book_topic_diplomacy_poetry
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_8_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_6_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_4_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_owned_personal_scheme_success_chance_add_2_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:jokes
}
trigger_else = {
has_artifact_feature = book_topic_diplomacy_jokes
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_7_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_1_modifier
}
add_artifact_modifier = artifact_monthly_tyranny_2_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
OR = {
scope:topic = flag:kalila
scope:topic = flag:hitopadesa
scope:topic = flag:speculum
}
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_diplomacy_kalila
has_artifact_feature = book_topic_diplomacy_hitopadesa
has_artifact_feature = book_topic_stewardship_speculum
}
}
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:cicero
}
trigger_else = {
has_artifact_feature = book_topic_diplomacy_cicero
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier
}
add_artifact_modifier = artifact_diplomacy_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:dynasty
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_diplomacy_dynasty
has_artifact_feature = book_topic_diplomacy_dynasty_big
}
}
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_dynasty_opinion_7_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_dynasty_opinion_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_dynasty_opinion_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_dynasty_opinion_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_prestige_add_8_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_prestige_add_6_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_prestige_add_4_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_prestige_add_2_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:duels
}
trigger_else = {
has_artifact_feature = book_topic_martial_duels
}
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_1_modifier
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_prowess_8_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_prowess_6_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_prowess_4_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_prowess_2_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:chivalry
}
trigger_else = {
has_artifact_feature = book_topic_martial_chivalry
}
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_1_modifier
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_attraction_opinion_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_attraction_opinion_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_attraction_opinion_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_attraction_opinion_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:military
}
trigger_else = {
has_artifact_feature = book_topic_martial_military
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_controlled_province_advantage_7_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_controlled_province_advantage_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_controlled_province_advantage_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_controlled_province_advantage_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
OR = {
scope:topic = flag:science
scope:topic = flag:aristotle
}
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_medicine_science
has_artifact_feature = book_topic_medicine_science_big
has_artifact_feature = book_topic_learning_aristotle
has_artifact_feature = book_topic_learning_metaphysical_conundrums
has_artifact_feature = book_topic_learning_tome_collections
}
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_1_modifier
}
add_artifact_modifier = artifact_learning_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:artifact_book_topic_anatomy
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_learning_anatomy
has_artifact_feature = book_topic_medicine_medicine
has_artifact_feature = book_topic_medicine_herbs
has_artifact_feature = book_topic_medicine_galen
}
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_health_gain_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_health_gain_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_health_gain_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_health_gain_1_modifier
}
add_artifact_modifier = artifact_learning_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
OR = {
scope:topic = flag:religious
scope:topic = flag:prayers
scope:topic = flag:golden_legend
scope:topic = flag:hours
}
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_learning_religious
has_artifact_feature = book_topic_learning_religious_big
has_artifact_feature = book_topic_learning_prayers
has_artifact_feature = book_topic_learning_hours
has_artifact_feature = book_topic_learning_golden_legend
has_artifact_feature = book_topic_learning_theological_treaties
}
}
}
add_scaled_artifact_modifier_devotion_effect = yes
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_piety_gain_mult_8_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_piety_gain_mult_6_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_piety_gain_mult_4_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_piety_gain_mult_2_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
OR = {
scope:topic = flag:iliad
scope:topic = flag:mahabharata
scope:topic = flag:mufaddaliyat
}
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_learning_iliad
has_artifact_feature = book_topic_learning_mahabharata
has_artifact_feature = book_topic_learning_mufaddaliyat
}
}
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_1_modifier
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_tyranny_7_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_tyranny_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_tyranny_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_tyranny_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:soulmate
}
trigger_else = {
has_artifact_feature = book_topic_soulmate
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_attraction_opinion_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_attraction_opinion_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_attraction_opinion_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_attraction_opinion_1_modifier
}
add_artifact_modifier = artifact_stress_gain_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:nemesis
}
trigger_else = {
has_artifact_feature = book_topic_nemesis
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_dread_gain_mult_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_dread_gain_mult_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_dread_gain_mult_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_dread_gain_mult_1_modifier
}
add_artifact_modifier = artifact_stress_gain_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
OR = {
scope:topic = flag:animals_your_cat
scope:topic = flag:animals_your_dog
}
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_animals_your_cat
has_artifact_feature = book_topic_animals_your_cat_no_name
has_artifact_feature = book_topic_animals_your_dog
has_artifact_feature = book_topic_animals_your_dog_no_name
has_artifact_feature = book_topic_animals_animals
}
}
}
add_scaled_artifact_modifier_prestige_effect = yes
add_artifact_modifier = artifact_stress_gain_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:childhood
}
trigger_else = {
OR = {
has_artifact_feature = book_topic_childhood_one
has_artifact_feature = book_topic_childhood_two
}
}
}
add_artifact_modifier = artifact_stress_gain_1_modifier
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_6_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:mercury
}
trigger_else = {
has_artifact_feature = book_topic_alchemy_mercury
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_clergy_opinion_7_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_clergy_opinion_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_clergy_opinion_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_clergy_opinion_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_1_modifier
}
add_artifact_modifier = artifact_monthly_prestige_2_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:arsenic
}
trigger_else = {
has_artifact_feature = book_topic_alchemy_arsenic
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_7_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_owned_hostile_scheme_success_chance_add_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_dread_gain_mult_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_dread_gain_mult_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_dread_gain_mult_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_dread_gain_mult_1_modifier
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:gold
}
trigger_else = {
has_artifact_feature = book_topic_alchemy_gold
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_income_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_income_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_income_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_income_1_modifier
}
add_scaled_artifact_modifier_prestige_effect = yes
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:silver
}
trigger_else = {
has_artifact_feature = book_topic_alchemy_silver
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_income_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_income_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_income_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_income_1_modifier
}
add_scaled_artifact_modifier_prestige_effect = yes
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier
}
}
else_if = {
limit = {
has_artifact_feature = book_subject_alchemy
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_1_modifier
}
add_scaled_artifact_modifier_prestige_effect = yes
add_artifact_modifier = artifact_learning_1_modifier
}
else_if = {
limit = {
has_artifact_feature = book_subject_language_manual
}
add_artifact_modifier = artifact_learn_language_scheme_phase_duration_add_1_modifier
remove_artifact_modifier = artifact_placeholder_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:martial_military_strategies
}
trigger_else = {
has_artifact_feature = book_topic_martial_military_strategies
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_hard_casualty_modifier_3_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_hard_casualty_modifier_2_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_hard_casualty_modifier_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:martial_troop_compositions
}
trigger_else = {
has_artifact_feature = book_topic_martial_troop_compositions
}
}
if = {
limit = {
rarity = illustrious
}
random_list = {
50 = { add_artifact_modifier = artifact_heavy_cavalry_toughness_3_modifier }
50 = { add_artifact_modifier = artifact_heavy_infantry_toughness_3_modifier }
}
}
else_if = {
limit = {
rarity = famed
}
random_list = {
50 = { add_artifact_modifier = artifact_heavy_cavalry_toughness_2_modifier }
50 = { add_artifact_modifier = artifact_heavy_infantry_toughness_2_modifier }
}
}
else_if = {
limit = {
rarity = masterwork
}
random_list = {
50 = { add_artifact_modifier = artifact_heavy_cavalry_toughness_1_modifier }
50 = { add_artifact_modifier = artifact_heavy_infantry_toughness_1_modifier }
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_martial_lifestyle_xp_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:diplomacy_court_alliances
}
trigger_else = {
has_artifact_feature = book_topic_diplomacy_court_alliances
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier
}
add_artifact_modifier = artifact_diplomacy_1_modifier
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:diplomacy_court_politics
}
trigger_else = {
has_artifact_feature = book_topic_diplomacy_court_politics
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_diplomacy_lifestyle_xp_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_3_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_2_modifier
}
else_if = {
limit = {
OR = {
rarity = common
rarity = masterwork
}
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:stewardship_trade_routes
}
trigger_else = {
has_artifact_feature = book_topic_stewardship_trade_routes
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_development_growth_3_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_development_growth_2_modifier
}
else_if = {
limit = {
OR = {
rarity = common
rarity = masterwork
}
}
add_artifact_modifier = artifact_development_growth_1_modifier
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_monthly_stewardship_lifestyle_xp_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:stewardship_best_practices_tax_collectors
}
trigger_else = {
has_artifact_feature = book_topic_stewardship_best_practices_tax_collectors
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_domain_tax_mult_3_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_domain_tax_mult_2_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:diplomacy_art_of_feasting
}
trigger_else = {
has_artifact_feature = book_topic_diplomacy_art_of_feasting
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_7_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_5_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_3_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_courtier_and_guest_opinion_1_modifier
}
}
else_if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:stewardship_lawmaking
}
trigger_else = {
has_artifact_feature = book_topic_stewardship_lawmaking
}
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_vassal_limit_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_vassal_limit_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_vassal_limit_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_vassal_limit_1_modifier
}
}
# Is the subject something weird? Then you'll get a penalty
if = {
limit = {
has_artifact_feature = book_subject_cannibal
}
if = { #We give a bigger boost here if it's illegal since they get nothing else
limit = {
trait_is_criminal_in_faith_trigger = { TRAIT = trait:cannibal FAITH = root.faith GENDER_CHARACTER = root }
}
add_artifact_modifier = artifact_dread_baseline_add_2_modifier
add_artifact_modifier = artifact_vassal_opinion_penalty_1_modifier
}
else = {
add_artifact_modifier = artifact_dread_baseline_add_1_modifier
}
if = {
limit = {
trigger_if = {
limit = {
exists = scope:topic
}
scope:topic = flag:cannibal_recipes
}
trigger_else = {
has_artifact_feature = book_topic_cannibal_recipes
}
}
add_artifact_modifier = artifact_health_gain_1_modifier
}
else = {
add_artifact_modifier = artifact_stress_gain_1_modifier
}
}
if = {
limit = {
has_artifact_feature = book_subject_witch
}
if = { #We give a bigger boost here if it's illegal since they get nothing else
limit = {
trait_is_criminal_in_faith_trigger = { TRAIT = trait:witch FAITH = root.faith GENDER_CHARACTER = root }
}
add_artifact_modifier = artifact_dread_gain_mult_2_modifier
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_2_modifier
add_artifact_modifier = artifact_clergy_opinion_penalty_2_modifier
}
else = {
add_artifact_modifier = artifact_monthly_learning_lifestyle_xp_1_modifier
}
}
if = {
limit = {
has_artifact_feature = book_subject_deviant
}
if = { #We give a bigger boost here if it's illegal since they get nothing else
limit = {
trait_is_criminal_in_faith_trigger = { TRAIT = trait:deviant FAITH = root.faith GENDER_CHARACTER = root }
}
add_artifact_modifier = artifact_vassal_opinion_penalty_1_modifier
add_artifact_modifier = artifact_stress_gain_2_modifier
add_artifact_modifier = artifact_seduce_scheme_phase_duration_mult_1_modifier
}
else = {
add_artifact_modifier = artifact_stress_gain_1_modifier
add_artifact_modifier = artifact_seduce_scheme_phase_duration_mult_1_modifier
}
}
set_variable = {
name = quality
value = scope:quality
}
set_variable = {
name = wealth
value = scope:wealth
}
set_variable = {
name = book_content_quality
value = scope:book_content_quality
}
}
}
#To clean out variables
if = {
limit = {
exists = scope:author
}
scope:author = {
if = {
limit = {
has_variable = book_subject
}
remove_variable = book_subject
}
if = {
limit = {
has_variable = book_topic
}
remove_variable = book_topic
}
if = {
limit = {
has_variable = book_topic_category
}
remove_variable = book_topic_category
}
if = {
limit = {
has_variable = book_content_quality
}
remove_variable = book_content_quality
}
}
}
scope:owner = {
if = {
limit = { has_variable = book_artifact_subject }
remove_variable = book_artifact_subject
}
if = {
limit = { has_variable = book_artifact_topic }
remove_variable = book_artifact_topic
}
if = {
limit = { has_variable = book_topic_category }
remove_variable = book_topic_category
}
if = {
limit = {
has_variable = book_topic_category
}
remove_variable = book_topic_category
}
if = {
limit = {
has_variable = book_content_quality
}
remove_variable = book_content_quality
}
}
if = {
limit = {
exists = scope:should_be_trinket
}
clear_saved_scope = should_be_trinket
}
}
create_artifact_pedestal_reliquary_christian_effect = {
$OWNER$ = { save_scope_as = owner }
random_list = {
20 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:nail
}
}
15 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:thorn
}
}
5 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:sandals
}
}
5 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:girdle
}
}
10 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:skull
}
}
10 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:arm
}
}
5 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:loincloth
}
}
20 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:cross
}
}
5 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:crown
}
}
5 = {
save_scope_value_as = {
name = christian_relic_name
value = flag:veronica
}
}
}
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_reliquary_christian_name
creator = scope:owner
description = artifact_pedestal_reliquary_christian_description
visuals = reliquary
type = pedestal
template = christian_relic_template
modifier = artifact_monthly_piety_3_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_piety_effect = yes
add_scaled_artifact_modifier_devotion_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
set_variable = {
name = relic
value = flag:christian
}
}
}
create_artifact_pedestal_reliquary_islam_effect = {
$OWNER$ = { save_scope_as = owner }
random_list = {
20 = {
save_scope_value_as = {
name = islam_relic_name
value = flag:hair
}
}
5 = {
save_scope_value_as = {
name = islam_relic_name
value = flag:cloak
}
}
10 = {
save_scope_value_as = {
name = islam_relic_name
value = flag:hand
}
}
5 = {
save_scope_value_as = {
name = islam_relic_name
value = flag:keys
}
}
15 = {
save_scope_value_as = {
name = islam_relic_name
value = flag:tooth
}
}
10 = {
save_scope_value_as = {
name = islam_relic_name
value = flag:seal
}
}
5 = {
save_scope_value_as = {
name = islam_relic_name
value = flag:banner
}
}
}
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_reliquary_islam_name
creator = scope:owner
description = artifact_pedestal_reliquary_islam_description
visuals = reliquary
type = pedestal
template = islam_relic_template
modifier = artifact_monthly_piety_3_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_piety_effect = yes
add_scaled_artifact_modifier_devotion_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
set_variable = {
name = relic
value = flag:islamic
}
}
}
create_artifact_pedestal_reliquary_buddhism_effect = {
$OWNER$ = { save_scope_as = owner }
random_list = {
15 = {
save_scope_value_as = {
name = buddhism_relic_name
value = flag:tooth
}
}
15 = {
save_scope_value_as = {
name = buddhism_relic_name
value = flag:bone
}
}
10 = {
save_scope_value_as = {
name = buddhism_relic_name
value = flag:robe
}
}
5 = {
save_scope_value_as = {
name = buddhism_relic_name
value = flag:bowl
}
}
5 = {
save_scope_value_as = {
name = buddhism_relic_name
value = flag:tongue
}
}
10 = {
save_scope_value_as = {
name = buddhism_relic_name
value = flag:hair
}
}
25 = {
save_scope_value_as = {
name = buddhism_relic_name
value = flag:sarira
}
}
15 = {
save_scope_value_as = {
name = buddhism_relic_name
value = flag:bo
}
}
}
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_reliquary_buddhism_name
creator = scope:owner
description = artifact_pedestal_reliquary_buddhism_description
visuals = reliquary
type = pedestal
template = buddhism_relic_template
modifier = artifact_monthly_piety_3_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_piety_effect = yes
add_scaled_artifact_modifier_devotion_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
set_variable = {
name = relic
value = flag:buddhism
}
}
}
create_artifact_pedestal_reliquary_judaism_effect = {
$OWNER$ = { save_scope_as = owner }
random_list = {
15 = {
save_scope_value_as = {
name = judaism_relic_name
value = flag:menorah
}
}
}
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_reliquary_judaism_name
creator = scope:owner
description = artifact_pedestal_reliquary_judaism_description
visuals = reliquary
type = pedestal
template = judaism_relic_template
modifier = artifact_monthly_piety_3_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_piety_effect = yes
add_scaled_artifact_modifier_devotion_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
save_scope_as = epic
set_variable = {
name = relic
value = flag:judaism
}
}
}
create_artifact_pedestal_reliquary_fracture_effect = {
$OWNER$ = { save_scope_as = owner }
random_list = {
15 = {
save_scope_value_as = {
name = fracture_relic_name
value = flag:amethyst
}
}
}
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_pedestal_reliquary_fracture_name
creator = scope:owner
description = artifact_pedestal_reliquary_fracture_description
visuals = reliquary
type = pedestal
template = fracture_relic_template
modifier = artifact_monthly_piety_3_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
#decaying = no
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_piety_effect = yes
add_scaled_artifact_modifier_devotion_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
save_scope_as = epic
set_variable = {
name = relic
value = flag:fracture
}
}
}
create_artifact_sculpture_religious_effect = {
$OWNER$ = { save_scope_as = owner }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_sculpture_religious_name
description = artifact_sculpture_religious_description
creator = scope:owner
visuals = statue
type = sculpture
template = religious_statue_template
modifier = artifact_monthly_piety_3_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
scope:newly_created_artifact = {
set_variable = { # required to track equipability in template (based on dynamic religion)
name = statue_religion
value = scope:owner.religion
}
add_scaled_artifact_modifier_piety_effect = yes
add_scaled_artifact_modifier_devotion_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
}
}
create_artifact_sculpture_religious_christian_effect = {
$OWNER$ = { save_scope_as = owner }
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_sculpture_religious_christian_name
description = artifact_sculpture_religious_christian_description
visuals = statue
creator = scope:owner
type = sculpture
template = christian_relic_template
modifier = artifact_monthly_piety_3_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_piety_effect = yes
add_scaled_artifact_modifier_devotion_effect = yes
add_scaled_artifact_modifier_grandeur_small_effect = yes
}
}
# ALCHEMY
# Panacea
create_artifact_panacea_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$ALCHEMIST$ = { save_scope_as = alchemist }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
if = { #If we have set the location we use it for the materials
limit = { exists = scope:location }
scope:location = { add_to_list = artifact_material_sources }
}
scope:owner = {
# Create the artifact
create_artifact = {
name = artifact_panacea_name
description = placeholder
creator = scope:alchemist
visuals = small_box
type = panacea
modifier = artifact_negate_health_penalty_add_1_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
scope:newly_created_artifact = {
get_artifact_feature_references_effect = yes
set_artifact_description = artifact_panacea_description
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_negate_health_penalty_add_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_negate_health_penalty_add_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_negate_health_penalty_add_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_negate_health_penalty_add_1_modifier
}
add_scaled_artifact_modifier_prestige_effect = yes
}
}
}
# Elixir
create_artifact_elixir_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
$ALCHEMIST$ = { save_scope_as = alchemist }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = placeholder
description = placeholder
creator = scope:alchemist
visuals = flask
type = elixir
modifier = artifact_monthly_learning_lifestyle_xp_1_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
scope:newly_created_artifact = {
get_artifact_feature_references_effect = yes
set_artifact_feature_group = elixir_type
set_artifact_name = artifact_elixir_name
set_artifact_description = artifact_elixir_description
if = { # Strong health bonus for elixir of immortality
limit = {
has_artifact_feature = elixir_immortality
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_health_gain_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_health_gain_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_health_gain_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_health_penalty_1_modifier
}
}
else_if = { # Fertility bonus for elixir of youth
limit = {
has_artifact_feature = elixir_youth
}
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_fertility_gain_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_fertility_gain_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_fertility_gain_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_fertility_negative_modifier
}
}
else = { # Otherwise you get a small health boost
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_health_gain_2_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_health_gain_2_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_health_gain_1_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_health_gain_1_modifier
}
}
# Rarity determines prestige
add_scaled_artifact_modifier_minor_prestige_effect = yes
set_variable = {
name = quality
value = scope:quality
}
set_variable = {
name = wealth
value = scope:wealth
}
}
}
}
# Philosopher's Stone
create_artifact_philosophers_stone_effect = {
# Get the character the artifact is being made for.
$OWNER$ = { save_scope_as = owner }
hidden_effect_new_object = {
# Get artifact quality, wealth, and materials
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
if = { #If we have set the location we use it for the materials
limit = { exists = scope:location }
scope:location = { add_to_list = artifact_material_sources }
}
scope:owner = {
# Create the artifact
create_artifact = {
name = artifact_philosophers_stone_name
creator = scope:owner
description = placeholder
visuals = small_box
type = philosophers_stone
modifier = artifact_health_gain_1_modifier
wealth = scope:wealth
quality = scope:quality
save_scope_as = newly_created_artifact
}
}
scope:newly_created_artifact = {
get_artifact_feature_references_effect = yes
set_artifact_description = artifact_philosophers_stone_description
if = {
limit = {
rarity = illustrious
}
add_artifact_modifier = artifact_health_gain_4_modifier
}
else_if = {
limit = {
rarity = famed
}
add_artifact_modifier = artifact_health_gain_3_modifier
}
else_if = {
limit = {
rarity = masterwork
}
add_artifact_modifier = artifact_health_gain_2_modifier
}
else_if = {
limit = {
rarity = common
}
add_artifact_modifier = artifact_health_gain_1_modifier
}
add_scaled_artifact_modifier_scholarship_effect = yes
add_scaled_artifact_modifier_prestige_effect = yes
}
}
}
create_artifact_poetry_effect = {
$OWNER$ = { save_scope_as = owner }
hidden_effect_new_object = {
get_artifact_quality_effect = yes
get_artifact_wealth_effect = yes
scope:owner = {
create_artifact = {
name = artifact_poetry_name
creator = scope:owner
description = artifact_poetry_description
visuals = scroll
type = miscellaneous
modifier = artifact_monthly_minor_prestige_1_modifier
save_scope_as = newly_created_artifact
wealth = scope:wealth
quality = scope:quality
}
}
scope:newly_created_artifact = {
add_scaled_artifact_modifier_minor_prestige_effect = yes
add_scaled_artifact_modifier_majesty_effect = yes
}
}
}