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

Interaction · Vassal actions

Start Ceremonial Claimant Faction

No costAccepted automatically

Found a Ceremonial Claimant Faction against the character you send

What you need

You

To send it

  • root.top_liege.primary_title.var:administrative_ui_special_title = { … }
  • The heir temp:
    • NOT = { has_truce = scope:actor }
    • Is not at war with you
    • Does not have the Trait: Incapable
    • Does not have a Strong Hook on you
  • can_create_faction = { type = ceremonial_claimant_faction target = scope:actor.top_liege }
  • If

    a check the game hides

    Then

    • The character you target:
      • … is a member of the Ceremonial House (…)
      • If

        • The title temp:
          • Their holder’s rite: Has the Male Dominated Doctrine
          • Any claimant:
            • is_male = yes

        Then

        • is_male = yes

        Else if

        • The title temp:
          • Their holder’s rite: Has the Female Dominated Doctrine
          • Any claimant:
            • is_female = yes

        Then

        • is_female = yes

        Otherwise

        • always = yes

To see it in the menu

  • Highest held Title is more than Barony Rank
  • … has a Ceremonial Monarch
  • scope:recipient.top_liege ?= scope:actor.top_liege
  • NOT = { scope:secondary_actor ?= this }
  • scope:secondary_actor.top_liege ?= top_liege
  • The character you send: … is the Ceremonial Monarch

Start Ceremonial Claimant Faction is a vassal character interaction in Crusader Kings III. Accepted automatically. Patch 1.20.1.2, from game/common/character_interactions/10_tgp_interactions.txt.

for a guide, post or blog
Quick answers (1)
Will the AI accept Start Ceremonial Claimant Faction?
Yes: it is accepted automatically.

Will they accept?

The other character has no choice: the game accepts it automatically.

What happens

When you send it

  • create_faction = { type = ceremonial_claimant_faction target = scope:actor.top_liege }
  • joined_faction = { set_special_character = scope:recipient set_special_title = scope:landed_title }
  • If

    a check the game hides

    Then

Events it fires: faction_invitation.0001

• the game's own tooltip text · ◦ our reading of the script line · code the script where neither exists

Who can use it and sees it (is_available, is_shown) (16 lines of game script)
is_available = highest_held_title_tier > tier_barony
tgp_realm_has_ceremonial_liege_trigger = yes
custom_description = {
	text = faction_can_join_create_in_another_faction
	is_a_faction_member = no
}
is_shown = scope:recipient.top_liege ?= scope:actor.top_liege
scope:actor = {
	NOT = {
		scope:secondary_actor ?= this
	}
	scope:secondary_actor.top_liege ?= top_liege
	scope:secondary_actor ?= {
		tgp_is_ceremonial_liege_trigger = yes
	}
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

Can be sent when (is_valid…) (76 lines of game script)
scope:actor.top_liege.primary_title.var:administrative_ui_special_title = {
	save_temporary_scope_as = title_temp
	any_claimant = {
		save_temporary_scope_as = heir_temp
	}
}
scope:heir_temp ?= {
	NOR = {
		has_truce = scope:actor
		is_at_war_with = scope:actor
		has_trait = incapable
		has_strong_hook = scope:actor
	}
}
trigger_if = {
	limit = {
		exists = scope:landed_title
	}
	custom_description = {
		text = claimant_faction_already_exists
		subject = scope:landed_title
		object = scope:heir_temp
		scope:actor.top_liege = {
			NOT = {
				any_targeting_faction = {
					faction_type = ceremonial_claimant_faction
					special_character = scope:heir_temp
					special_title = scope:landed_title
				}
			}
		}
	}
}
scope:actor = {
	can_create_faction = {
		type = ceremonial_claimant_faction
		target = scope:actor.top_liege
	}
}
trigger_if = {
	limit = {
		exists = scope:recipient
	}
	scope:recipient = {
		tgp_is_in_ceremonial_house_trigger = yes
		trigger_if = {
			limit = {
				scope:title_temp = {
					holder.rite = {
						rite_has_doctrine = doctrine_gender_male_dominated
					}
					any_claimant = {
						is_male = yes
					}
				}
			}
			is_male = yes
		}
		trigger_else_if = {
			limit = {
				scope:title_temp = {
					holder.rite = {
						rite_has_doctrine = doctrine_gender_female_dominated
					}
					any_claimant = {
						is_female = yes
					}
				}
			}
			is_female = yes
		}
		trigger_else = {
			always = yes
		}
	}
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

Effects (on_send, on_accept, on_decline) (39 lines of game script)
on_send = scope:actor = {
	top_liege.primary_title.var:administrative_ui_special_title = {
		save_scope_as = landed_title
	}
	set_variable = {
		name = claiming_title
		value = scope:landed_title
	}
	create_faction = {
		type = ceremonial_claimant_faction
		target = scope:actor.top_liege
	}
	joined_faction = {
		set_special_character = scope:recipient
		set_special_title = scope:landed_title
	}
	scope:recipient = {
		add_to_variable_list = {
			name = ceremonial_claimant_factions
			target = scope:actor.joined_faction
		}
	}
	if = {
		limit = {
			this != scope:recipient
		}
		save_scope_as = faction_invite_from
		joined_faction = {
			save_scope_as = faction
		}
		scope:secondary_actor = {
			save_scope_as = faction_target
		}
		scope:recipient = {
			trigger_event = faction_invitation.0001
		}
	}
	remove_variable = claiming_title
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

Category
Vassal actions
In the menu
under More…
ID
create_ceremonial_claimant_faction_against_interaction

Source: game/common/character_interactions/10_tgp_interactions.txt and the English localisation, Crusader Kings III 1.20.1.2. “You” is the character who sends it (scope:actor, or a puppet acting for you); “the character you target” is the recipient.

Spotted a mistake on this page?