namespace = old_age

# Note: all old age checks should be replaced by has_character_modifier = old_age

################################################
# Main events
################################################
# Become old
character_event = {
	id = old_age.1
	desc = EVTDESCold_age.1
	picture = GFX_evt_pale_rider
	
	min_age = 50
	
	trigger = {
		NOT = { trait = wilderness_race }
		NOT = { has_character_modifier = old_age }
		OR = {
			AND = {
				age = 50
				NOT = { trait = elf_race }
				NOT = { trait = dryad_race }
				NOT = { trait = dwarf_race }
				NOT = { trait = halfling_race }
				NOT = { trait = gnome_race }
				NOT = { trait = witcher }
				NOT = { trait = sorcerer }
				NOT = { trait = dragon_race }
			}
			AND = {
				age = 75
				OR = {
					trait = halfling_race
					trait = gnome_race
				}
			}
			AND = {
				age = 100
				trait = dwarf_race
			}
			AND = {
				age = 300
				OR = {
					trait = elf_race
					trait = dryad_race
					trait = sorcerer
					trait = witcher
				}
			}
		}
	}
	mean_time_to_happen = {
		years = 6
		modifier = { is_strong_trigger = yes factor = 1.5 }
		modifier = { is_weak_trigger = yes factor = 0.8 }
		modifier = { trait = inbred factor = 0.8 }
		modifier = { trait = stressed factor = 0.9 }
		modifier = { trait = depressed factor = 0.9 }
		modifier = { trait = infirm factor = 0.1 }
		modifier = { trait = incapable factor = 0.1 }
		modifier = { trait = gluttonous factor = 0.95 }
		modifier = { trait = drunkard factor = 0.95 }
		modifier = { trait = hedonist factor = 0.9 }
		modifier = { trait = diligent factor = 1.05 }
		modifier = { trait = paranoid factor = 1.05 }
		modifier = { trait = lunatic factor = 0.9 }
		modifier = { trait = possessed factor = 1.1 }
		modifier = { is_ill = yes factor = 0.75 }
		modifier = { is_maimed_trigger = yes factor = 0.75 }
		modifier = { trait = celibate factor = 1.05 }
		modifier = { trait = duelist factor = 1.05 }
		modifier = { trait = falconer factor = 1.05 }
		modifier = { trait = hunter factor = 1.05 }
		modifier = { factor = 5 trait = dwarf_race }
		modifier = { factor = 5 trait = halfling_race }
		modifier = { factor = 5 trait = gnome_race }
		modifier = { factor = 10 trait = witcher }
		modifier = { factor = 10 trait = sorcerer }
	}
	option = {
		name = EVTOPTAold_age.1
		add_character_modifier = { name = old_age duration = -1 }
	}
}
# Elf and dryad old age culling
character_event = {
	id = old_age.2
	
	hide_window = yes
	
	min_age = 300
	
	trigger = {
		NOT = { trait = sorcerer }
		OR = {
			trait = elf_race
			trait = dryad_race
		}	
		has_character_modifier = old_age
	}
	mean_time_to_happen = {
		months = 1200
		modifier = { factor = 0.9 age = 300 NOT = { age = 325 } }
		modifier = { factor = 0.8 age = 325 NOT = { age = 350 } }
		modifier = { factor = 0.65 age = 350 NOT = { age = 375 } }
		modifier = { factor = 0.4 age = 375 NOT = { age = 400 } }
		modifier = { factor = 0.1 age = 400 }
		modifier = { factor = 0.01 trait = incapable }
	}
	immediate = {
		log="(Immortality) Old age culling for [Root.GetBestName] at age [Root.GetAgeYears]."
	}
	option = {
		name = OK
		trigger = { NOT = { trait = incapable } }
		death = { death_reason = death_natural }
	}
	option = {
		name = OK
		trigger = { trait = incapable }
		death = { death_reason = death_trait }
	}
}
# Dwarf old age culling
character_event = {
	id = old_age.3
	
	hide_window = yes
	
	min_age = 100
	
	trigger = {
		trait = dwarf_race
		has_character_modifier = old_age
	}
	mean_time_to_happen = {
		months = 600
		modifier = { factor = 0.65 age = 100 NOT = { age = 125 } }
		modifier = { factor = 0.4 age = 125 NOT = { age = 150 } }
		modifier = { factor = 0.1 age = 150 }
		modifier = { factor = 0.01 trait = incapable }
	}
	immediate = {
		log="(Immortality) Old age culling for [Root.GetBestName] at age [Root.GetAgeYears]."
	}
	option = {
		name = OK
		trigger = { NOT = { trait = incapable } }
		death = { death_reason = death_natural }
	}
	option = {
		name = OK
		trigger = { trait = incapable }
		death = { death_reason = death_trait }
	}
}
# Halfling old age culling
character_event = {
	id = old_age.4
	
	hide_window = yes
	
	min_age = 75
	
	trigger = {
		trait = halfling_race
		has_character_modifier = old_age
	}
	
	mean_time_to_happen = {
		months = 600
		modifier = { factor = 0.65 age = 75 NOT = { age = 100 } }
		modifier = { factor = 0.4 age = 100 NOT = { age = 125 } }
		modifier = { factor = 0.1 age = 125 }
		modifier = { factor = 0.01 trait = incapable }
	}
	immediate = {
		log="(Immortality) Old age culling for [Root.GetBestName] at age [Root.GetAgeYears]."
	}
	option = {
		name = OK
		trigger = { NOT = { trait = incapable } }
		death = { death_reason = death_natural }
	}
	option = {
		name = OK
		trigger = { trait = incapable }
		death = { death_reason = death_trait }
	}
}
# Gnomish old age culling
character_event = {
	id = old_age.5
	
	hide_window = yes
	
	min_age = 75
	
	trigger = {
		trait = gnome_race
		has_character_modifier = old_age
	}
	
	mean_time_to_happen = {
		months = 600
		modifier = { factor = 0.65 age = 75 NOT = { age = 100 } }
		modifier = { factor = 0.4 age = 100 NOT = { age = 125 } }
		modifier = { factor = 0.1 age = 125 }
		modifier = { factor = 0.01 trait = incapable }
	}
	immediate = {
		log="(Immortality) Old age culling for [Root.GetBestName] at age [Root.GetAgeYears]."
	}
	option = {
		name = OK
		trigger = { NOT = { trait = incapable } }
		death = { death_reason = death_natural }
	}
	option = {
		name = OK
		trigger = { trait = incapable }
		death = { death_reason = death_trait }
	}
}
# Incapable dwarf, halfling, and gnome culling
character_event = {
	id = old_age.6
	
	hide_window = yes
	
	trigger = {
		trait = incapable
		OR = {
			trait = dwarf_race
			trait = halfling_race
			trait = gnome_race
		}
	}
	
	mean_time_to_happen = {
		months = 300
		modifier = { factor = 0.1 has_character_modifier = old_age }
	}
	immediate = {
		log="(Immortality) Old age culling for [Root.GetBestName] at age [Root.GetAgeYears]."
	}
	option = {
		name = OK
		death = { death_reason = death_trait }
	}
}
# Incapable elf, dryad and sorcerer culling
character_event = {
	id = old_age.7
	
	hide_window = yes
	
	trigger = {
		OR = {
			trait = elf_race
			trait = dryad_race
			trait = sorcerer
		}
		trait = incapable
	}
	
	mean_time_to_happen = {
		months = 600
		modifier = { factor = 0.1 has_character_modifier = old_age }
	}
	immediate = {
		log="(Immortality) Old age culling for [Root.GetBestName] at age [Root.GetAgeYears]."
	}
	option = {
		name = OK
		death = { death_reason = death_trait }
	}
}

# [on_five_year_pulse] Menopause hidden modifier
# In vanilla this is handled via NDefines.NCharacter.MAX_CHILD_BIRTH_AGE = 45
character_event = {
	id = old_age.8
	
	hide_window = yes
	is_triggered_only = yes
	
	min_age = 45
	only_women = yes
	
	trigger = {
		NOT = { has_character_modifier = menopause }
		OR = {
			AND = {
				OR = {
					trait = human_race
					trait = halfelf_race
					trait = halfdwarf_race
					trait = halfhalfling_race
					trait = halfgnome_race
				}
				age = 45
			}
			AND = {
				trait = dwarf_race
				age = 50
			}
			AND = {
				trait = halfling_race
				age = 50
			}
			AND = {
				trait = gnome_race
				age = 50
			}
		}
	}
	
	option = {
		name = OK
		add_character_modifier = { name = menopause duration = -1 hidden = yes }
	}
}


################################################
# Old age flavor events from VIET
################################################
# Hunting in old age
character_event = {
	id = old_age.10
	desc = EVTDESCold_age.10
	picture = GFX_evt_hunt
	
	is_triggered_only = yes
	
	min_age = 55
	capable_only = yes
	prisoner = no
	only_rulers = yes
	
	trigger = {
		war = no
		in_command = no
		has_character_modifier = old_age
	}
	
	weight_multiplier = {
		days = 1
		modifier = {
			factor = 2
			is_weak_trigger = yes
		}
		modifier = {
			factor = 2
			is_ill = yes
		}
		modifier = {
			factor = 1.2
			trait = brave
		}
		modifier = {
			factor = 1.2
			trait = proud
		}
		modifier = {
			factor = 0.5
			is_strong_trigger = yes
		}
		modifier = {
			factor = 0.8
			trait = humble
		}
		modifier = {
			factor = 0.8
			trait = craven
		}
		modifier = {
			factor = 0.8
			trait = content
		}
		modifier = {
			factor = 3
			has_character_flag = holding_grand_hunt
		}
	}
	
	option = { #I'll be fine
		name = EVTOPTAold_age.10
		prestige = 10
		random_list = {
			75 = {}
			20 = {
				add_trait = wounded
				hidden_tooltip = { character_event = { id = 38280 } }
			}
			4 = {
				add_maimed_trait_effect = yes
				hidden_tooltip = { character_event = { id = 38281 } }
			}
			1 = {
				if = {
					limit = { NOT = { has_character_modifier = protection_spell } }
					death = {
						death_reason = death_accident_boar
					}
				}
			}
		}
	}
	option = { #Watch old age
		name = EVTOPTBold_age.10
		piety = 5
		random_list = {
			75 = { }
			25 = { add_trait = humble }
		}
	}
	option = { #Don't participate as much
		name = EVTOPTCold_age.10
		prestige = 5
		random_list = {
			40 = {}
			30 = { add_trait = gregarious }
			20 = { add_trait = humble }
			9 = {
				add_trait = wounded
				hidden_tooltip = { character_event = { id = 38280 } }
			}
			1 = {
				add_maimed_trait_effect = yes
				hidden_tooltip = { character_event = { id = 38281 } }
			}
		}
	}
	option = { #God will protect
		name = EVTOPTDold_age.10
		tooltip_info = zealous
		trigger = {
			trait = zealous
		}
		piety = 15
		random_list = {
			85 = {}
			12 = {
				add_trait = wounded
				hidden_tooltip = { character_event = { id = 38280 } }
			}
			2 = {
				add_maimed_trait_effect = yes
				hidden_tooltip = { character_event = { id = 38281 } }
			}
			1 = {
				if = {
					limit = { NOT = { has_character_modifier = protection_spell } }
					death = {
						death_reason = death_accident_boar
					}
				}
			}
		}
	}
}
# Character complains about youth
character_event = {
	id = old_age.11
	desc = EVTDESCold_age.11
	picture = GFX_evt_courtiers_talking
	
	is_triggered_only = yes
	
	min_age = 55
	capable_only = yes
	prisoner = no
	only_rulers = yes
	
	trigger = {
		in_command = no
		has_character_modifier = old_age
	}
	
	weight_multiplier = {
		days = 1
		modifier = {
			factor = 1.5
			trait = envious
		}
		modifier = {
			factor = 1.5
			trait = proud
		}
		modifier = {
			factor = 1.2
			trait = cynical
		}
		modifier = {
			factor = 1.2
			trait = wroth
		}
		modifier = {
			factor = 0.6
			trait = humble
		}
		modifier = {
			factor = 0.8
			trait = patient
		}
		modifier = {
			factor = 0.8
			trait = content
		}
		modifier = {
			factor = 0.8
			trait = kind
		}
	}
	
	option = { #I was like that once
		name = EVTOPTAold_age.11
		random_list = {
			80 = { }
			10 = { add_trait = humble }
			10 = { add_trait = patient }
		}
		add_character_modifier = { name = reminiscing duration = 100 }
	}
	option = { #Kids don't understand hardship
		name = EVTOPTBold_age.11
		prestige = 10
	}
	option = { #Pray God gives strength to young folks
		name = EVTOPTCold_age.11
		prestige = 5
		random_list = {
			70 = {}
			15 = { add_trait = zealous }
			15 = { add_trait = temperate }
		}
	}
	option = { #Kids are useless crud these days
		name = EVTOPTDold_age.11
		random_list = {
			70 = { prestige = 5 }
			20 = { add_trait = proud }
			10 = { add_trait = wroth }
		}
	}
}
# Character worrying about the afterlife
character_event = {
	id = old_age.12
	desc = EVTDESCold_age.12
	picture = GFX_evt_knight_kneeling
	
	is_triggered_only = yes
	
	min_age = 55
	capable_only = yes
	prisoner = no
	
	trigger = {
		has_character_modifier = old_age
	}
	
	weight_multiplier = {
		days = 1
		modifier = {
			factor = 1.5
			trait = zealous
		}
		modifier = {
			factor = 1.5
			trait = ambitious
		}
		modifier = {
			factor = 1.2
			trait = diligent
		}
		modifier = {
			factor = 1.2
			trait = paranoid
		}
		modifier = {
			factor = 1.2
			trait = envious
		}
		modifier = {
			factor = 1.2
			trait = craven
		}
		modifier = {
			factor = 0.7
			trait = slothful
		}
		modifier = {
			factor = 0.7
			trait = cynical
		}
		modifier = {
			factor = 0.7
			trait = content
		}
		modifier = {
			factor = 0.6
			trait = brave
		}
	}
	
	option = { #Pray
		name = EVTOPTAold_age.12
		piety = 10
	}
	option = { #Don't care
		name = EVTOPTBold_age.12
		ai_chance = {
			factor = 5
		}
		tooltip_info = cynical
		trigger = { 
			trait = cynical
		}
		prestige = 10
	}
	option = { #Lived a good life
		name = EVTOPTCold_age.12
		trigger = {
			OR = {
				trait = kind
				trait = chaste
				trait = charitable
				trait = patient
				trait = temperate
				trait = humble
				trait = diligent
				trait = zealous
				trait = just
			}
			NOT = {
				trait = cruel
				trait = arbitrary
				trait = impaler
			}
		}
		prestige = 5
		piety = 5
	}
}
# Character feels weaker and weaker as they get older and older
character_event = {
	id = old_age.13
	desc = EVTDESCold_age.13
	picture = GFX_evt_illness
	
	is_triggered_only = yes
	
	min_age = 55
	capable_only = yes
	prisoner = no
	
	trigger = {
		has_character_modifier = old_age
	}
	
	weight_multiplier = {
		days = 1
		modifier = {
			factor = 1.5
			is_weak_trigger = yes
		}
		modifier = {
			factor = 1.3
			NOT = { health = 3 }
		}
		modifier = {
			factor = 1.1
			NOT = { health = 6 }
			health = 3
		}
		modifier = {
			factor = 1.2
			trait = gluttonous
		}
		modifier = {
			factor = 1.1
			trait = slothful
		}
		modifier = {
			factor = 0.6
			health = 6
		}
		modifier = {
			factor = 0.8
			trait = temperate
		}
		modifier = {
			factor = 0.8
			trait = content
		}
		modifier = {
			factor = 0.3
			is_strong_trigger = yes
		}
	}
	
	option = { #It's nothing
		name = EVTOPTAold_age.13
		ai_chance = {
			factor = 100
		}
		tooltip_info = strong
		trigger = { 
			is_strong_trigger = yes
		}
		prestige = 10
	}
	option = { #Can't work much
		name = EVTOPTBold_age.13
		prestige = -5
		random_list = {
			10 = { 
				if = {
					limit = { NOT = { has_dlc = "Reapers" } }
					add_trait = ill
				}
				if = { 
					limit = { has_dlc = "Reapers" }
					add_symptom_effect = yes
				}
			}
			90 = { }
		}
	}
	option = { #Work harder
		name = EVTOPTCold_age.13
		prestige = 10
		random_list = {
			15 = { add_trait = stressed }
			10 = { add_trait = stressed add_trait = diligent }
			15 = { 
				if = {
					limit = { NOT = { has_dlc = "Reapers" } }
					add_trait = ill
				}
				if = { 
					limit = { has_dlc = "Reapers" }
					add_symptom_effect = yes
				}
			}
			10 = { add_trait = ill add_trait = diligent }
			50 = { }
		}
	}
	option = { #Get help from others
		name = EVTOPTDold_age.13
		prestige = -25
		random_list = {
			25 = { }
			15 = { add_trait = gregarious }
			15 = { add_trait = diligent }
			15 = { add_trait = slothful }
			15 = { add_trait = trusting }
			15 = { add_trait = humble }
		}
	}
}
# Old age is sad
character_event = {
	id = old_age.14 
	desc = EVTDESCold_age.14
	picture = GFX_evt_illness
	
	is_triggered_only = yes
	
	min_age = 55
	capable_only = yes
	prisoner = no
	only_rulers = yes
	
	trigger = {
		war = no
		in_command = no
		has_character_modifier = old_age
	}
	
	weight_multiplier = {
		days = 1
		
		modifier = {
			factor = 2
			trait = wroth
		}
		modifier = {
			factor = 0.5
			trait = patient
		}
		modifier = {
			factor = 2
			trait = cynical
		}
		modifier = {
			factor = 0.5
			trait = zealous
		}
		modifier = {
			factor = 2
			trait = envious
		}
		modifier = {
			factor = 0.5
			trait = kind
		}
		modifier = {
			factor = 2
			trait = depressed
		}
		modifier = {
			factor = 0.5
			trait = humble
		}
	}
	
	option = {
		name = EVTOPTAold_age.14  #will join the rest in heaven
		ai_chance = {
			factor = 1
			modifier = {
				factor = 2
				trait = zealous
			}
			modifier = {
				factor = 0.5
				trait = cynical
			}
			modifier = {
				factor = 2
				trait = patient
			}
			modifier = {
				factor = 0.5
				trait = wroth
			}
		}
		piety = 4	
	}
	option = {
		name = EVTOPTBold_age.14  #enjoy life while I can
		trigger = {
			NOT = { trait = depressed }
			NOT = { trait = stressed }
		}
		ai_chance = {
			factor = 1
			modifier = {
				factor = 2
				trait = gregarious
			}
			modifier = {
				factor = 0.5
				trait = shy
			}
			modifier = {
				factor = 2
				trait = gluttonous
			}
			modifier = {
				factor = 0.5
				trait = temperate
			}
		}
		prestige = 4
		gain_weight_small_effect = yes
		weight_trait_check_effect = yes
	}
	option = {
		name = EVTOPTCold_age.14  #no longer fear death
		ai_chance = {
			factor = 1
			modifier = {
				factor = 2
				trait = brave
			}
			modifier = {
				factor = 0.5
				trait = craven
			}
			modifier = {
				factor = 2
				trait = humble
			}
			modifier = {
				factor = 0.5
				trait = proud
			}
		}
		prestige = 2
		piety = 2
	}
}

################################################
# Misc. events
################################################
# Combat trait demotion
character_event = {
	id = old_age.20
	desc = EVTDESCold_age.20
	picture = GFX_evt_illness
	
	min_age = 45
	
	trigger = {
		OR = {
			trait = poor_warrior
			trait = trained_warrior
			trait = skilled_warrior
			trait = master_warrior
		}
		has_character_modifier = old_age
		NOT = { has_character_flag = demoted }
	}
	
	mean_time_to_happen = {
		months = 120
		# Personality traits
		modifier = { factor = 1.2 trait = diligent }
		modifier = { factor = 1.2 trait = brave }
		modifier = { factor = 0.7 trait = slothful }
		# Congenital traits
		modifier = { factor = 1.5 is_strong_trigger = yes }
		modifier = { factor = 1.2 trait = tall }
		modifier = { factor = 1.2 trait = agile }
		modifier = { factor = 1.2 trait = ambidextrous }
		modifier = { factor = 0.7 is_weak_trigger = yes }
		# Other traits
		modifier = { factor = 2 trait = dwarf_race }
		modifier = { factor = 5 trait = witcher }
		modifier = { factor = 1.2 guardian = { trait = duelist } }
		modifier = { factor = 1.4 guardian = { trait = veteran } }
		modifier = { factor = 1.2 guardian = { trait = raider } }
		modifier = { factor = 1.2 guardian = { trait = military_officer } }
	}
	
	option = {
		name = EVTOPTAold_age.20
		if = {
			limit = { trait = poor_warrior }
			remove_trait = poor_warrior
			set_character_flag = demoted
		}
		if = {
			limit = { trait = trained_warrior }
			remove_trait = trained_warrior
			add_trait = poor_warrior
		}
		if = {
			limit = { trait = skilled_warrior }
			remove_trait = skilled_warrior
			add_trait = trained_warrior
			set_character_flag = demoted
		}
		if = {
			limit = { trait = master_warrior }
			remove_trait = master_warrior
			add_trait = skilled_warrior
			set_character_flag = demoted
		}
	}
}

################################################
# Immortality
################################################

# Workaround portrait bug for immortal races [on_adulthood]
# Since 2.8.2 children with an immortal trait never get their adult portrait.
character_event = {
	id = old_age.90
	
	is_triggered_only = yes
	hide_window = yes
	
	trigger = {
		OR = {
			trait = elf_race
			trait = dwarf_race
			trait = halfling_race
			trait = gnome_race
			trait = dryad_race
		}
	}
	
	option = {
		name = OK
		
		# Temporarily remove the immortal traits, they will be added back by event racial.1
		remove_trait = elf_race
		remove_trait = dwarf_race
		remove_trait = halfling_race
		remove_trait = gnome_race
		remove_trait = dryad_race
	}
}

# Manual court pruning of unimportant immortals [on_yearly_pulse]
character_event = {
	id = old_age.97
	
	is_triggered_only = yes
	hide_window = yes
	
	only_rulers = yes
	
	trigger = {
		any_courtier = {
			count = 10 # NDefines.NEngine.COURT_PRUNE_SIZE
		}
		any_courtier = {
			immortal = yes
			prisoner = no
			is_landed = no
		}
	}
	
	immediate = {
		log="(Immortality) Pruning at court of [Root.GetBestName] in [Root.Location.GetName]."
		any_courtier = {
			limit = {	
				immortal = yes
				prisoner = no
				is_ruler = no
				is_unimportant_trigger = yes
				age = 40 # NDefines.NEngine.PRUNE_MINIMAL_AGE
			}
			log="(Immortality) Pruning [This.GetBestName] as unimportant"
			death = { death_reason = death_missing }
		}
	}
}

# Move important immortal characters manually to new holder's court, so they do not die of 'natural death' during court pruning.
# Manually prune 80% of the court, to avoid court bloating.
# ROOT is the character
# FROM is the title
# FROMFROM is the old holder
character_event = {
	id = old_age.98
	
	is_triggered_only = yes
	hide_window = yes
	
	trigger = {
		FROMFROM = {
			any_courtier = {
				immortal = yes
				prisoner = no
				is_landed = no
				NOT = { trait = wilderness_race } # Don't move wilderness characters
			}
		}
	}
	
	immediate = {
		log="(Immortality) Preventing pruning at court of [Root.GetBestName] in [Root.Location.GetName]."
		
		FROMFROM = {
			any_courtier = {
				limit = {
					immortal = yes
					prisoner = no
					is_ruler = no
					NOT = { trait = wilderness_race }
				}
				random_list = {
					80 = {
						modifier = {
							factor = 0
							NOT = { is_unimportant_trigger = yes } # Keep important characters
						}
						log="(Immortality) Pruning [This.GetBestName] as unimportant"
						death = { death_reason = death_missing } 
					}
					20 = {
						log="(Immortality) Moving [This.GetBestName] to the court of [Root.GetBestName]"
						move_character = ROOT
					}
				}
			}
		}
	}
	
}

character_event = {
	id = old_age.99
	
	is_triggered_only = yes
	hide_window = yes
	
	trigger = {
		immortal = yes
	}
	
	immediate = {
		if = {
			limit = {
				trait = sorcerer
			}
			log="(Immortality) The sorcerer [Root.GetBestName] [Root.GetDeathReason] at age [Root.GetAgeYears] in [Root.Location.GetName]."
		}
		if = {
			limit = {
				trait = witcher
			}
			log="(Immortality) The witcher [Root.GetBestName] [Root.GetDeathReason] at age [Root.GetAgeYears] in [Root.Location.GetName]."
		}
		if = {
			limit = {
				trait = elf_race
			}
			log="(Immortality) The elf [Root.GetBestName] [Root.GetDeathReason] at age [Root.GetAgeYears] in [Root.Location.GetName]."
		}
		if = {
			limit = {
				trait = dwarf_race
			}
			log="(Immortality) The dwarf [Root.GetBestName] [Root.GetDeathReason] at age [Root.GetAgeYears] in [Root.Location.GetName]."
		}
		if = {
			limit = {
				trait = gnome_race
			}
			log="(Immortality) The gnome [Root.GetBestName] [Root.GetDeathReason] at age [Root.GetAgeYears] in [Root.Location.GetName]."
		}
		if = {
			limit = {
				trait = dryad_race
			}
			log="(Immortality) The dryad [Root.GetBestName] [Root.GetDeathReason] at age [Root.GetAgeYears] in [Root.Location.GetName]."
		}
		if = {
			limit = {
				trait = halfling_race
			}
			log="(Immortality) The halfling [Root.GetBestName] [Root.GetDeathReason] at age [Root.GetAgeYears] in [Root.Location.GetName]."
		}
	}
}