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

Scripted effect

personality_check_opposing_bad_ruler_traits_effect

personality_check_opposing_bad_ruler_traits_effect = { CHAR1 = … CHAR2 = … STRICT = … }

game/common/scripted_effects/00_personality_trait_effects.txt, line 98 (481 lines). Parameters: $CHAR1$, $CHAR2$, $STRICT$.

personality_check_opposing_bad_ruler_traits_effect is a scripted effect in Crusader Kings III, written at line 98 of its file. A call passes 3 parameters: CHAR1, CHAR2 and STRICT. The game's script calls it in 1 place, among them Successor's Squabble (event diplomacy_family_special.2200). Patch 1.20.1.2, from game/common/scripted_effects/00_personality_trait_effects.txt.

What it does

• 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 (120 lines of game script)
personality_check_opposing_bad_ruler_traits_effect = {
	save_scope_value_as = {
		name = opposing_trait_flag_applied
		value = no
	}
	save_scope_value_as = {
		name = has_opposing_trait
		value = flag:none
	}
	#The first 11 trait pairings are selected from "Bad Ruler" traits, which vassals either dislike more than other traits or directly hurt diplomacy.
	if = {
		limit = { NOT = { scope:opposing_trait_flag_applied = yes } }
		personality_check_if_chars_have_opposing_traits_effect = {
			CHAR1 = $CHAR1$
			CHAR2 = $CHAR2$
			TRAIT1 = arbitrary
			TRAIT2 = just
			FLAG_PREFIX = has_opposing_trait
			FLAG_POSTFIX = arbitrary
			FLAG_SUCCESS = opposing_trait_flag_applied
			STRICT = $STRICT$
		}
	}
	if = {
		limit = { NOT = { scope:opposing_trait_flag_applied = yes } }
		personality_check_if_chars_have_opposing_traits_effect = {
			CHAR1 = $CHAR1$
			CHAR2 = $CHAR2$
			TRAIT1 = craven
			TRAIT2 = brave
			FLAG_PREFIX = has_opposing_trait
			FLAG_POSTFIX = craven
			FLAG_SUCCESS = opposing_trait_flag_applied
			STRICT = $STRICT$
		}
	}
	if = {
		limit = { NOT = { scope:opposing_trait_flag_applied = yes } }
		personality_check_if_chars_have_opposing_traits_effect = {
			CHAR1 = $CHAR1$
			CHAR2 = $CHAR2$
			TRAIT1 = sadistic
			TRAIT2 = compassionate
			FLAG_PREFIX = has_opposing_trait
			FLAG_POSTFIX = sadistic
			FLAG_SUCCESS = opposing_trait_flag_applied
			STRICT = $STRICT$
		}
	}
	if = {
		limit = { NOT = { scope:opposing_trait_flag_applied = yes } }
		personality_check_if_chars_have_opposing_traits_effect = {
			CHAR1 = $CHAR1$
			CHAR2 = $CHAR2$
			TRAIT1 = lazy
			TRAIT2 = diligent
			FLAG_PREFIX = has_opposing_trait
			FLAG_POSTFIX = lazy
			FLAG_SUCCESS = opposing_trait_flag_applied
			STRICT = $STRICT$
		}
	}
	if = {
		limit = { NOT = { scope:opposing_trait_flag_applied = yes } }
		personality_check_if_chars_have_opposing_traits_effect = {
			CHAR1 = $CHAR1$
			CHAR2 = $CHAR2$
			TRAIT1 = stubborn
			TRAIT2 = fickle
			FLAG_PREFIX = has_opposing_trait
			FLAG_POSTFIX = stubborn
			FLAG_SUCCESS = opposing_trait_flag_applied
			STRICT = $STRICT$
		}
	}
	if = {
		limit = { NOT = { scope:opposing_trait_flag_applied = yes } }
		personality_check_if_chars_have_opposing_traits_effect = {
			CHAR1 = $CHAR1$
			CHAR2 = $CHAR2$
			TRAIT1 = paranoid
			TRAIT2 = trusting
			FLAG_PREFIX = has_opposing_trait
			FLAG_POSTFIX = paranoid
			FLAG_SUCCESS = opposing_trait_flag_applied
			STRICT = $STRICT$
		}
	}
	if = {
		limit = { NOT = { scope:opposing_trait_flag_applied = yes } }
		personality_check_if_chars_have_opposing_traits_effect = {
			CHAR1 = $CHAR1$
			CHAR2 = $CHAR2$
			TRAIT1 = vengeful
			TRAIT2 = forgiving
			FLAG_PREFIX = has_opposing_trait
			FLAG_POSTFIX = vengeful
			FLAG_SUCCESS = opposing_trait_flag_applied
			STRICT = $STRICT$
		}
	}
	if = {
		limit = { NOT = { scope:opposing_trait_flag_applied = yes } }
		personality_check_if_chars_have_opposing_traits_effect = {
			CHAR1 = $CHAR1$
			CHAR2 = $CHAR2$
			TRAIT1 = callous
			TRAIT2 = compassionate
			FLAG_PREFIX = has_opposing_trait
			FLAG_POSTFIX = callous
			FLAG_SUCCESS = opposing_trait_flag_applied
			STRICT = $STRICT$
		}
	}
	if = {
		limit = { NOT = { scope:opposing_trait_flag_applied = yes } }
		personality_check_if_chars_have_opposing_traits_effect = {
			CHAR1 = $CHAR1$
			CHAR2 = $CHAR2$
			TRAIT1 = wrathful

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

The first 120 of its 481 lines; the rest is in game/common/scripted_effects/00_personality_trait_effects.txt from line 98.

Where it is used

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

Events (1)

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