CK3 DatabaseCrusader Kings III · 1.20.0.3 “Crozier” · unofficial

Decision · Follower/Courtier Decisions

Recruit for a Court Position

No cost

A well-functioning … requires the work of many hands. I shall dispatch my servants far and wide to find suitable candidates for the empty positions within my court.

Requirements

The game shows no text of its own for these conditions; the script is below.

Shown to a character when (is_shown) (1 line of game script)
is_landed_or_landless_administrative_or_theocratic = yes

As written in game/common/decisions/90_minor_decisions.txt.

Can be taken when (is_valid) (1 line of game script)
is_imprisoned = no

As written in game/common/decisions/90_minor_decisions.txt.

Effects

  • You will receive two suitable candidates from which to choose for the selected Court Position
  • Search for a character to fill a Court Position or other necessary role in your Court for a fee For example, you may hire a Court Physician Court Position
  • … joined your court!
  • You will search for someone to teach …, your Court Language
  • You will search for someone to teach …, the Court Language of your Liege, …
Effect (303 lines of game script)
custom_tooltip = recruit_court_position_decision_tt
hidden_effect = {
	custom_tooltip = recruit_court_position_decision_tooltip
	if = {
		limit = {
			scope:hire_physician_decision = yes
		}
		hidden_effect = {
			add_character_flag = {
				flag = health_3001_hire_physician_decision_text
				days = 20
			}
		}
		set_variable = {
			name = recruit_court_physician_cooldown
			years = 1
		}
		trigger_event = {
			id = health.3001
			days = { 7 14 }
		}
	}
	else_if = {
		limit = {
			scope:hire_travel_leader_decision = yes
		}
		add_character_flag = {
			flag = recruit_travel_leader_cooldown
			years = 1
		}
		trigger_event = {
			id = travel_events.1010
			days = { 7 14 }
		}
	}
	else_if = {
		limit = {
			scope:find_wet_nurse_decision = yes
		}
		add_character_flag = {
			flag = recruit_wet_nurse_cooldown
			years = 1
		}
		trigger_event = {
			id = bp2_decision.0001
			days = { 7 14 }
		}
	}
	else_if = {
		limit = {
			scope:hire_charioteer_decision = yes
		}
		add_character_flag = {
			flag = recruit_charioteer_cooldown
			years = 1
		}
		trigger_event = {
			id = ep3_decisions_event.1000
			days = { 7 14 }
		}
	}
	else_if = {
		limit = {
			scope:hire_bookmaker_decision = yes
		}
		add_character_flag = {
			flag = recruit_bookmaker_cooldown
			years = 1
		}
		trigger_event = {
			id = ep3_decisions_event.1010
		}
	}
	else_if = {
		limit = {
			scope:hire_eunuch_decision = yes
		}
		add_character_flag = {
			flag = recruit_eunuch_cooldown
			years = 1
		}
		trigger_event = {
			id = ep3_decisions_event.5010
			days = { 7 14 }
		}
	}
	else_if = {
		limit = {
			scope:recruit_gardener_decision = yes
		}
		hidden_effect = {
			if = {
				limit = {
					exists = root.capital_province
					any_pool_character = {
						province = root.capital_province
						stewardship >= medium_skill_rating
						culture = root.culture
						opinion = {
							value >= -30
							target = root
						}
					}
				}
				random_pool_character = {
					province = root.capital_province
					limit = {
						stewardship >= medium_skill_rating
						culture = root.culture
						opinion = {
							value >= -30
							target = root
						}
					}
					if = {
						limit = {
							NOT = {
								has_trait = lifestyle_gardener
							}
						}
						add_trait = lifestyle_gardener
					}
					save_scope_as = new_commander
				}
			}
			else = {
				create_character = {
					employer = root
					template = pool_repopulate_stewardship
					faith = root.faith
					rite = root.rite
					culture = root.culture
					save_scope_as = new_commander
				}
			}
			if = {
				limit = {
					exists = scope:new_commander
				}
				scope:new_commander = {
					force_character_skill_recalculation = yes
					add_character_flag = {
						flag = blocked_from_leaving
						years = 25
					}
					if = {
						limit = {
							NOT = {
								has_trait = lifestyle_gardener
							}
						}
						add_trait = lifestyle_gardener
					}
				}
				if = {
					limit = {
						scope:new_commander = {
							NOT = {
								is_courtier_of = root
							}
						}
					}
					add_courtier = scope:new_commander
				}
				send_interface_toast = {
					type = event_toast_effect_neutral
					title = gardener_recruited.t
					left_icon = scope:new_commander
					custom_tooltip = commander_recruited.desc
				}
			}
		}
		add_character_flag = {
			flag = recruit_court_gardener_cooldown
			years = 1
		}
	}
	else_if = {
		limit = {
			scope:invite_a_linguist_self = yes
		}
		save_scope_as = target_court_language
		custom_tooltip = {
			text = invite_a_linguist_tt_self
			trigger_event = ep1_decision.0201
		}
		if = {
			limit = {
				NOT = {
					knows_court_language_of = root.liege
				}
				any_scheme = {
					is_hostile = no
				}
			}
			custom_description_no_bullet = {
				text = learn_language_will_cancel_ongoing_schemes_tt
			}
		}
		add_character_flag = {
			flag = recruit_linguist_self_cooldown
			years = 1
		}
	}
	else_if = {
		limit = {
			scope:invite_a_linguist_liege = yes
		}
		liege = {
			save_scope_as = target_court_language
		}
		save_scope_value_as = {
			name = language_scheme_type
			value = flag:liege
		}
		custom_tooltip = {
			text = invite_a_linguist_tt_liege
			trigger_event = ep1_decision.0201
		}
		if = {
			limit = {
				NOT = {
					knows_court_language_of = root.liege
				}
				any_scheme = {
					is_hostile = no
				}
			}
			custom_description_no_bullet = {
				text = learn_language_will_cancel_ongoing_schemes_tt
			}
		}
		add_character_flag = {
			flag = recruit_linguist_liege_cooldown
			years = 1
		}
	}
	else_if = {
		limit = {
			scope:invite_a_stargazer_decision = yes
		}
		add_character_flag = {
			flag = recruit_court_astrologer_cooldown
			years = 1
		}
		trigger_event = {
			id = mpo_decisions_events.0070
			days = { 7 14 }
		}
	}
	else_if = {
		limit = {
			scope:invite_a_siege_engineer_decision = yes
		}
		add_character_flag = {
			flag = recruit_siege_engineer_cooldown
			years = 1
		}
		trigger_event = {
			id = mpo_decisions_events.0080
			days = { 7 14 }
		}
	}
	else_if = {
		limit = {
			scope:invite_a_foreign_emissary_decision = yes
		}
		add_character_flag = {
			flag = recruit_foreign_emissary_cooldown
			years = 1
		}
		trigger_event = {
			id = mpo_decisions_events.0090
			days = { 7 14 }
		}
	}
	else_if = {
		limit = {
			scope:invite_a_court_brahmin_decision = yes
		}
		add_character_flag = {
			flag = recruit_court_brahmin_cooldown
			years = 1
		}
		trigger_event = {
			id = tgp_east_asia_decision_events.0200
			days = { 7 14 }
		}
	}
	else_if = {
		limit = {
			scope:invite_a_khlon_glan_decision = yes
		}
		add_character_flag = {
			flag = recruit_khlon_glan_cooldown
			years = 1
		}
		trigger_event = {
			id = tgp_east_asia_decision_events.0210
			days = { 7 14 }
		}
	}
}

As written in game/common/decisions/90_minor_decisions.txt.

Source: game/common/decisions/90_minor_decisions.txt and the English localisation, Crusader Kings III 1.20.0.3. “…” marks words the game fills in at play time (a name, a faith, a title).