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

Scripted effect · Wandering Nobles files

hire_for_two_court_position_journey_laamp_replacement_effect

hire_for_two_court_position_journey_laamp_replacement_effect = { CHARACTER = … COURT_POSITION = … COURT_POSITION_2 = … CURRENT_HOLDER = … LAAMP_POSITION = … }

game/common/scripted_effects/08_bp3_effects.txt, line 1147 (110 lines). Parameters: $CHARACTER$, $COURT_POSITION$, $COURT_POSITION_2$, $CURRENT_HOLDER$, $LAAMP_POSITION$.

hire_for_two_court_position_journey_laamp_replacement_effect is a scripted effect in Crusader Kings III, in the Wandering Nobles files, written at line 1147 of its file. A call passes 5 parameters: CHARACTER, COURT_POSITION, COURT_POSITION_2, CURRENT_HOLDER and LAAMP_POSITION. The game's script calls it in 2 places, among them Learned Locals (event bp3_journey.1500) and The … of … (event bp3_journey.2200). Its body carries 1 text of the game's own for the player. Patch 1.20.1.2, from game/common/scripted_effects/08_bp3_effects.txt.

What it does

  • If

    Then

    Else if

    Then

    Else if

    Then

    Else if

    • can_appoint_char_to_court_position = { CHAR = $CHARACTER$ COURT_POS = $COURT_POSITION$_court_position }
    • $CHARACTER$.aptitude:$COURT_POSITION$_court_position > $CURRENT_HOLDER$.aptitude:$COURT_POSITION$_court_position

    Then

    • replace_court_position = { recipient = $CHARACTER$ holder = $CURRENT_HOLDER$ court_position = $COURT_POSITION$_court_position }
    • clear_saved_scope = candidate
    • clear_saved_scope = old_holder

    Else if

    • can_appoint_char_to_court_position = { CHAR = $CHARACTER$ COURT_POS = $COURT_POSITION_2$_court_position }
    • $CHARACTER$.aptitude:$COURT_POSITION_2$_court_position > $CURRENT_HOLDER$.aptitude:$COURT_POSITION_2$_court_position

    Then

    • replace_court_position = { recipient = $CHARACTER$ holder = $CURRENT_HOLDER$ court_position = $COURT_POSITION_2$_court_position }
    • clear_saved_scope = candidate
    • clear_saved_scope = old_holder

    Else if

    • can_appoint_char_to_court_position = { CHAR = $CHARACTER$ COURT_POS = $LAAMP_POSITION$_camp_officer }
    • $CHARACTER$.aptitude:$LAAMP_POSITION$_camp_officer > $CURRENT_HOLDER$.aptitude:$LAAMP_POSITION$_camp_officer

    Then

    • replace_court_position = { recipient = $CHARACTER$ holder = $CURRENT_HOLDER$ court_position = $LAAMP_POSITION$_camp_officer }
    • clear_saved_scope = candidate
    • clear_saved_scope = old_holder

    Otherwise

    • add_courtier = $CHARACTER$
  • If

    • has_activity_intent = journey_curiosity_intent

    Then

    • add_hook = { type = strong_obligation_hook target = $CHARACTER$ }
    • Obligation Hooks reduce Court Position salaries by -50%

• 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 (110 lines of game script)
hire_for_two_court_position_journey_laamp_replacement_effect = {
	hidden_effect = {
		$CHARACTER$ = {
			add_to_court_and_entourage_effect = yes
		}
	}
	if = {
		limit = {
			can_appoint_char_to_court_position = { CHAR = $CHARACTER$ COURT_POS = $COURT_POSITION$_court_position }
			NOT = { exists = $CURRENT_HOLDER$ }
		}
		employ_character_as_position_in_current_scope_court_effect = {
			CHARACTER = $CHARACTER$
			POSITION = $COURT_POSITION$
		}
	}
	else_if = {
		limit = {
			can_appoint_char_to_court_position = { CHAR = $CHARACTER$ COURT_POS = $COURT_POSITION_2$_court_position }
			NOT = { exists = $CURRENT_HOLDER$ }
		}
		employ_character_as_position_in_current_scope_court_effect = {
			CHARACTER = $CHARACTER$
			POSITION = $COURT_POSITION_2$
		}
	}
	else_if = {
		limit = {
			can_appoint_char_to_court_position = { CHAR = $CHARACTER$ COURT_POS = $LAAMP_POSITION$_camp_officer }
			NOT = { exists = $CURRENT_HOLDER$ }
		}
		employ_character_as_position_in_current_scope_camp_effect = {
			CHARACTER = $CHARACTER$
			POSITION = $LAAMP_POSITION$
		}
	}
	else_if = {
		limit = {
			can_appoint_char_to_court_position = { CHAR = $CHARACTER$ COURT_POS = $COURT_POSITION$_court_position }
			exists = $CURRENT_HOLDER$
			$CHARACTER$.aptitude:$COURT_POSITION$_court_position > $CURRENT_HOLDER$.aptitude:$COURT_POSITION$_court_position
		}
		add_character_flag = temporary_court_position_cost_removal
		replace_court_position = {
			recipient = $CHARACTER$
			holder = $CURRENT_HOLDER$
			court_position = $COURT_POSITION$_court_position
		}
		$CHARACTER$ = { save_scope_as = candidate }
		$CURRENT_HOLDER$ = { save_scope_as = old_holder }
		custom_tooltip = $COURT_POSITION$_old_holder_aptitude_tooltip
		clear_saved_scope = candidate
		clear_saved_scope = old_holder
		remove_character_flag = temporary_court_position_cost_removal
	}
	else_if = {
		limit = {
			can_appoint_char_to_court_position = { CHAR = $CHARACTER$ COURT_POS = $COURT_POSITION_2$_court_position }
			exists = $CURRENT_HOLDER$
			$CHARACTER$.aptitude:$COURT_POSITION_2$_court_position > $CURRENT_HOLDER$.aptitude:$COURT_POSITION_2$_court_position
		}
		add_character_flag = temporary_court_position_cost_removal
		replace_court_position = {
			recipient = $CHARACTER$
			holder = $CURRENT_HOLDER$
			court_position = $COURT_POSITION_2$_court_position
		}		
		$CHARACTER$ = { save_scope_as = candidate }
		$CURRENT_HOLDER$ = { save_scope_as = old_holder }
		custom_tooltip = $COURT_POSITION$_old_holder_aptitude_tooltip
		clear_saved_scope = candidate
		clear_saved_scope = old_holder
		remove_character_flag = temporary_court_position_cost_removal
	}
	else_if = {
		limit = {
			can_appoint_char_to_court_position = { CHAR = $CHARACTER$ COURT_POS = $LAAMP_POSITION$_camp_officer }
			exists = $CURRENT_HOLDER$
			$CHARACTER$.aptitude:$LAAMP_POSITION$_camp_officer > $CURRENT_HOLDER$.aptitude:$LAAMP_POSITION$_camp_officer
		}
		add_character_flag = temporary_court_position_cost_removal
		replace_court_position = {
			recipient = $CHARACTER$
			holder = $CURRENT_HOLDER$
			court_position = $LAAMP_POSITION$_camp_officer
		}
		$CHARACTER$ = { save_scope_as = candidate }
		$CURRENT_HOLDER$ = { save_scope_as = old_holder }
		custom_tooltip = $COURT_POSITION$_old_holder_aptitude_tooltip
		clear_saved_scope = candidate
		clear_saved_scope = old_holder
		remove_character_flag = temporary_court_position_cost_removal
	}
	else = {
		show_as_tooltip = {
			add_courtier = $CHARACTER$
		}
	}
	
	if = {
		limit = {
			has_activity_intent = journey_curiosity_intent
		}
		add_hook = {
			type = strong_obligation_hook
			target = $CHARACTER$
		}
		custom_tooltip = obligation_hook_tt
	}
}

As written in game/common/scripted_effects/08_bp3_effects.txt.

Where it is used

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

Events (2)

Source: game/common/scripted_effects/08_bp3_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?