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

Scripted trigger

pool_character_is_pruneable_trigger

pool_character_is_pruneable_trigger = yes

game/common/scripted_triggers/00_courtier_guest_management_triggers.txt, line 778 (52 lines). No parameters.

pool_character_is_pruneable_trigger is a scripted trigger in Crusader Kings III, written at line 778 of its file. It takes no parameters: pool_character_is_pruneable_trigger = yes (or no). The game's script calls it in 2 places, among them courtier_guest_management.2001 (event) and courtier_guest_management.4001 (event). Patch 1.20.1.2, from game/common/scripted_triggers/00_courtier_guest_management_triggers.txt.

What it checks

  • Is an Adult
  • None of these

    • Has the Trait: Heresiarch
    • Has the Trait: Populist Leader
    • Has the Trait: Follower
    • Has the Trait: Veteran Adventurer
    • Has the Trait: Historical Character
    • has_character_flag = ai_will_not_convert
    • Is married
    • Any claim:
    • Any child: Is a child
    • Any relation: Is a ruler
    • Any relation: Is a ruler
    • Any close or extended family member: Is a ruler
    • Any relation: Is played by a person
    • has_character_flag = easteregg
    • Has “merchant var” (a variable the game's script sets)
  • If not: Is Lowborn:
    • None of these

      • Diplomacy at least 15
      • Martial at least 15
      • Stewardship at least 15
      • Intrigue at least 15
      • Learning at least 15
      • Prowess at least 15
      • Their dynasty › Any dynasty member:
        • this != scope:pool_prune_check
      • Any relation: Is a ruler
      • Their culture: The culture has the tradition Diasporic

• 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 (52 lines of game script)
pool_character_is_pruneable_trigger = {
	save_temporary_scope_as = pool_prune_check
	is_adult = yes
	NOR = {
		has_trait = heresiarch
		has_trait = populist_leader
		has_trait = adventurer_follower
		has_trait = adventurer
		has_trait = historical_character
		has_character_flag = ai_will_not_convert
		is_married = yes
		any_claim = { }
		any_child = { is_adult = no }
		any_relation = {
			type = lover
			is_ruler = yes
		}
		any_relation = {
			type = friend
			is_ruler = yes
		}
		any_close_or_extended_family_member = { is_ruler = yes }
		#Belongs to a dynasty with more than 1 member
		any_relation = {
			type = rival
			is_ai = no
		}
		has_character_flag = easteregg
		has_variable = merchant_var
	}
	trigger_if = {
		limit = {
			is_lowborn = no
		}
		NOR = {
			diplomacy >= high_skill_rating
			martial >= high_skill_rating
			stewardship >= high_skill_rating
			intrigue >= high_skill_rating
			learning >= high_skill_rating
			prowess >= high_skill_rating
			dynasty ?= { any_dynasty_member = { this != scope:pool_prune_check } }
			any_relation = {
				type = rival
				is_ruler = yes
			}
			culture = {
				has_cultural_tradition = tradition_diasporic
			}
		}
	}
}

As written in game/common/scripted_triggers/00_courtier_guest_management_triggers.txt.

Where it is used

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

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