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

Scripted effect · Khans of the Steppe files

upgrade_random_yurt_external_building_effect

upgrade_random_yurt_external_building_effect = yes

game/common/scripted_effects/09_dlc_mpo_scripted_effects.txt, line 5228 (82 lines). No parameters.

upgrade_random_yurt_external_building_effect is a scripted effect in Crusader Kings III, in the Khans of the Steppe files, written at line 5228 of its file. It takes no parameters: upgrade_random_yurt_external_building_effect = yes. The game's script calls it in 4 places, among them Chaotic Succession: Tributary Usurpation (event mpo_chaotic_kurultai_succession.0002), on_game_start_after_lobby (on action) and on_title_gain (on action). Patch 1.20.1.2, from game/common/scripted_effects/09_dlc_mpo_scripted_effects.txt.

The comment above it in the file

Called from game start on action
Limited to lvl 3 to offer more variety and prevent startup errors
inside domicile scope

What it does

  • 1 of 6 things will happen:
    • 67% › Depending on has domicile building:
      • When has domicile building is herd welfare yurt 01:
        • add_domicile_building = herd_welfare_yurt_02
      • When has domicile building is herd welfare yurt 02:
        • add_domicile_building = herd_welfare_yurt_03
    • 7% › Depending on has domicile building:
      • When has domicile building is character warfare yurt 01:
        • add_domicile_building = character_warfare_yurt_02
      • When has domicile building is character warfare yurt 02:
        • add_domicile_building = character_warfare_yurt_03
    • 7% › Depending on has domicile building:
      • When has domicile building is mass warfare yurt 01:
        • add_domicile_building = mass_warfare_yurt_02
      • When has domicile building is mass warfare yurt 02:
        • add_domicile_building = mass_warfare_yurt_03
    • 7% › Depending on has domicile building:
      • When has domicile building is court yurt 01:
        • add_domicile_building = court_yurt_02
      • When has domicile building is court yurt 02:
        • add_domicile_building = court_yurt_03
    • 7% › Depending on has domicile building:
      • When has domicile building is family yurt 01:
        • add_domicile_building = family_yurt_02
      • When has domicile building is family yurt 02:
        • add_domicile_building = family_yurt_03
    • 7% › Depending on has domicile building:
      • When has domicile building is mystical yurt 01:
        • add_domicile_building = mystical_yurt_02
      • When has domicile building is mystical yurt 02:
        • add_domicile_building = mystical_yurt_03

• 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 (82 lines of game script)
upgrade_random_yurt_external_building_effect = {
	random_list = {
		10 = {
			trigger = {
				has_domicile_building_or_higher = herd_welfare_yurt_01
				NOT = {
					has_domicile_building_or_higher = herd_welfare_yurt_03
				}
			}
			switch = {
				trigger = has_domicile_building
				herd_welfare_yurt_01 = { add_domicile_building = herd_welfare_yurt_02 }
				herd_welfare_yurt_02 = { add_domicile_building = herd_welfare_yurt_03 }
			}
		}
		1 = {
			trigger = {
				has_domicile_building_or_higher = character_warfare_yurt_01
				NOT = {
					has_domicile_building_or_higher = character_warfare_yurt_03
				}
			}
			switch = {
				trigger = has_domicile_building
				character_warfare_yurt_01 = { add_domicile_building = character_warfare_yurt_02 }
				character_warfare_yurt_02 = { add_domicile_building = character_warfare_yurt_03 }
			}
		}
		1 = {
			trigger = {
				has_domicile_building_or_higher = mass_warfare_yurt_01
				NOT = {
					has_domicile_building_or_higher = mass_warfare_yurt_03
				}
			}
			switch = {
				trigger = has_domicile_building
				mass_warfare_yurt_01 = { add_domicile_building = mass_warfare_yurt_02 }
				mass_warfare_yurt_02 = { add_domicile_building = mass_warfare_yurt_03 }
			}
		}
		1 = {
			trigger = {
				has_domicile_building_or_higher = court_yurt_01
				NOT = {
					has_domicile_building_or_higher = court_yurt_03
				}
			}
			switch = {
				trigger = has_domicile_building
				court_yurt_01 = { add_domicile_building = court_yurt_02 }
				court_yurt_02 = { add_domicile_building = court_yurt_03 }
			}
		}
		1 = {
			trigger = {
				has_domicile_building_or_higher = family_yurt_01
				NOT = {
					has_domicile_building_or_higher = family_yurt_03
				}
			}
			switch = {
				trigger = has_domicile_building
				family_yurt_01 = { add_domicile_building = family_yurt_02 }
				family_yurt_02 = { add_domicile_building = family_yurt_03 }
			}
		}
		1 = {
			trigger = {
				has_domicile_building_or_higher = mystical_yurt_01
				NOT = {
					has_domicile_building_or_higher = mystical_yurt_03
				}
			}
			switch = {
				trigger = has_domicile_building
				mystical_yurt_01 = { add_domicile_building = mystical_yurt_02 }
				mystical_yurt_02 = { add_domicile_building = mystical_yurt_03 }
			}
		}
	}
}

As written in game/common/scripted_effects/09_dlc_mpo_scripted_effects.txt.

Where it is used

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

Events (1)

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

  • on_game_start_after_lobby
  • on_title_gain
  • three_year_playable_pulse

Source: game/common/scripted_effects/09_dlc_mpo_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?