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

Scripted effect

run_setup_tests_effect

run_setup_tests_effect = yes

game/common/scripted_effects/00_setup_tests_effect.txt, line 3 (74 lines). No parameters.

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

What it does

  • Every living character:
    • If

      • Is married
      • Is a child

      Then

      • error_log = [THIS.Char.GetLogName] is married but not an adult!
  • Every ruler:
    • If

      Then

      • error_log = [THIS.Char.GetLogName] is a landed herder marked as a vassal of a nomadic ruler!
    • If

      • suzerain != this

      Then

      • If

        • Does not have a Nomadic Government
        • Does not have a Herder Government
        • One of these

          • has_subject_contract_group = tributary_nomadic
          • or

            has_subject_contract_group = tributary_steppe

        Then

        • error_log = [THIS.Char.GetLogName] is not a herder or nomad tributary but has a nomadic or steppe subject contract!

        Else if

        • One of these

        • NOT = { has_subject_contract_group = tributary_nomadic }
        • NOT = { has_subject_contract_group = tributary_steppe }
        • One of these

          • suzerain = { has_government = nomad_government }
          • or

            suzerain = { has_government = steppe_admin_government }

        Then

        • error_log = [THIS.Char.GetLogName] is a herder or nomad tributary under a nomad/steppe suzerain but does not have a nomadic/steppe subject contract!

        Else if

        • One of these

        • One of these

          • has_subject_contract_group = tributary_nomadic
          • or

            has_subject_contract_group = tributary_steppe
        • NOT = { suzerain = { has_government = nomad_government } }
        • NOT = { suzerain = { has_government = steppe_admin_government } }

        Then

        • error_log = [THIS.Char.GetLogName] is a herder or nomad tributary under a non-nomad/steppe suzerain but has a nomadic/steppe subject contract!

• 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 (74 lines of game script)
run_setup_tests_effect = {
	every_living_character = {
		if = {
			limit = {
				is_married = yes
				is_adult = no
			}
			error_log = "[THIS.Char.GetLogName] is married but not an adult!"
		}
	}
	every_ruler = {
		if = {
			limit = {
				has_government = herder_government
				holds_landed_title = yes
				liege = {
					this != prev
					has_government = nomad_government
				}
			}
			error_log = "[THIS.Char.GetLogName] is a landed herder marked as a vassal of a nomadic ruler!"
		}
		if = {
			limit = { suzerain != this }
			if = {
				limit = {
					NOR = {
						has_government = nomad_government
						has_government = herder_government
					}
					OR = {
						has_subject_contract_group = tributary_nomadic
						has_subject_contract_group = tributary_steppe
					}
				}
				error_log = "[THIS.Char.GetLogName] is not a herder or nomad tributary but has a nomadic or steppe subject contract!"
			}
			else_if = {
				limit = {
					OR = {
						has_government = nomad_government
						has_government = herder_government
					}
					NOR = {
						has_subject_contract_group = tributary_nomadic
						has_subject_contract_group = tributary_steppe
					}
					OR = {
						suzerain = { has_government = nomad_government }
						suzerain = { has_government = steppe_admin_government }
					}
				}
				error_log = "[THIS.Char.GetLogName] is a herder or nomad tributary under a nomad/steppe suzerain but does not have a nomadic/steppe subject contract!"
			}
			else_if = {
				limit = {
					OR = {
						has_government = nomad_government
						has_government = herder_government
					}
					OR = {
						has_subject_contract_group = tributary_nomadic
						has_subject_contract_group = tributary_steppe
					}
					NOR = {
						suzerain = { has_government = nomad_government }
						suzerain = { has_government = steppe_admin_government }
					}
				}
				error_log = "[THIS.Char.GetLogName] is a herder or nomad tributary under a non-nomad/steppe suzerain but has a nomadic/steppe subject contract!"
			}
		}
	}
}

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

Where it is used

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

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

  • on_game_start_after_lobby

Source: game/common/scripted_effects/00_setup_tests_effect.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?