CK3 DatabaseCrusader Kings III · 1.20.1.2 “Crozier” · unofficial
Silk & Silverout Tue, Nov 17What's free, what needs the DLC, price →

Scripted effect

spawn_historical_characters_effect

spawn_historical_characters_effect = yes

game/common/scripted_effects/00_historical_characters_scripted_effects.txt, line 1 (8880 lines). No parameters.

spawn_historical_characters_effect is a scripted effect in Crusader Kings III, written at line 1 of its file. It takes no parameters: spawn_historical_characters_effect = yes. The game's script calls it in 1 place, among them yearly_global_pulse (on action). Patch 1.20.1.2, from game/common/scripted_effects/00_historical_characters_scripted_effects.txt.

What it does

• the game's own tooltip text · ◦ our reading of the script line · code the script where neither exists

“They” is whatever it runs on (the scope it is called in). The scripted triggers and effects it calls link to their own pages; $PARAMETERS$ stay as written: each call fills them in.

The script as written (120 lines of game script)
spawn_historical_characters_effect = {
	
	if = { # Karunakara Tondaiman 
		limit = {
			current_year >= 1067
			current_year <= 1070
			NOT = { exists = global_var:hchar_karunakara }
		}
		set_global_variable = { name = hchar_karunakara value = yes }
		title:b_nagapattinam = {
			save_scope_as = birth_location
			create_character = {
				age = 20
				name = Karunakara
				dynasty_house = house:house_tondaiman
				gender_female_chance = 0
				random_traits = no
				location = scope:birth_location.title_province
				faith = faith:vaishnava_faith
				culture = scope:birth_location.title_province.culture
				trait = education_martial_4
				trait = loyal
				random_traits_list = {
					count = 3
					brave = {}
					vengeful = {}
					ambitious = {}
					wrathful = {}
					zealous = {}
				}
				diplomacy = { min_template_high_skill max_template_high_skill }
				martial = { min_template_high_skill max_template_high_skill }
				stewardship = { min_template_decent_skill max_template_decent_skill }
				intrigue = { min_template_decent_skill max_template_decent_skill }
				learning = { min_template_low_skill max_template_low_skill }
				prowess = { min_template_high_skill max_template_high_skill }
				save_scope_as = historical_character
			}
			scope:historical_character ?= {
				historical_character_finalization_effect = yes
				set_variable = karunakara
				add_character_flag = ai_will_not_convert
			}
			if = { limit = { has_variable = karunakara 	 } } # Error suppression
			spawn_historical_characters_boilerplate_effect = yes
		}
	}

	if = { # Sekkilhar 
		limit = {
			current_year >= 1140
			current_year <= 1150
			NOT = { exists = global_var:hchar_sekkilhar }
		}
		set_global_variable = { name = hchar_sekkilhar value = yes }
		title:b_kanchipuram = {
			save_scope_as = birth_location
			create_character = {
				age = 20
				name = Sekkilhar
				dynasty = none
				gender_female_chance = 0
				random_traits = no
				location = scope:birth_location.title_province
				faith = faith:shaiva_faith
				culture = scope:birth_location.title_province.culture
				trait = education_learning_5
				trait = theologian
				trait = intellect_good_3
				random_traits_list = {
					count = 3
					lustful = {}
					zealous = {}
					diligent = {}
					humble = {}
				}
				diplomacy = { min_template_high_skill max_template_high_skill }
				martial = { min_template_low_skill max_template_low_skill }
				stewardship = { min_template_decent_skill max_template_high_skill }
				intrigue = { min_template_decent_skill max_template_high_skill }
				learning = { min_template_high_skill max_template_high_skill }
				prowess = { min_template_low_skill max_template_low_skill }
				save_scope_as = historical_character
			}
			scope:historical_character ?= {
				historical_character_finalization_effect = yes
				set_variable = sekkilhar
				set_variable = legendary_author
				create_inspiration = book_inspiration
				add_character_flag = ai_will_not_convert
				save_scope_as = major
			}
			if = { limit = { has_variable = sekkilhar 	 } } # Error suppression
			spawn_historical_characters_boilerplate_effect = yes
		}
	}

	if = { # Omar Khayyam 
		limit = {
			current_year >= 1068
			current_year <= 1070
			NOT = { exists = global_var:hchar_omar_khayyam }
		}
		set_global_variable = { name = hchar_omar_khayyam value = yes }
		title:b_nishapur = {
			save_scope_as = birth_location
			create_character = {
				age = 20
				name = Omar
				dynasty_house = house:house_khayyam
				gender_female_chance = 0
				random_traits = no
				location = scope:birth_location.title_province
				faith = faith:sunni
				rite = rite:hanafi
				culture = scope:birth_location.title_province.culture
				trait = education_learning_5
				trait = lifestyle_poet
				trait = lifestyle_reveler
				trait = shrewd

As written in game/common/scripted_effects/00_historical_characters_scripted_effects.txt.

The first 120 of its 8880 lines; the rest is in game/common/scripted_effects/00_historical_characters_scripted_effects.txt from line 1.

Where it is used

Every place in common/, events/ and history/ that calls spawn_historical_characters_effect.

On actions (the game's own hooks) (1)

  • yearly_global_pulse

Source: game/common/scripted_effects/00_historical_characters_scripted_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.

Spotted a mistake on this page?