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

Send Missionary

No costThe AI weighs it

A devoted missionary from your realm arrives at the court of the recipient, who may convert your Tributary to your Faith or generate Piety for you from dealings with your tributary's court

What you need

You

To send it

  • None of these

    • You: Is at war with the target

To see it in the menu

The character you target

  • Is landed
  • Their faith is the same as that of actor
  • Is a tributary of you

Which character you can pick

  • The character you target: Is a tributary of you

Send Missionary is a vassal character interaction in Crusader Kings III. The AI weighs it. Reasons the AI weighs include Zealous (-50), They is your Friend (+25) and They is your Rival (-50). Patch 1.20.1.2, from game/common/character_interactions/10_tgp_interactions.txt.

for a guide, post or blog
Quick answers (1)
How do I get the AI to accept Send Missionary?
The AI weighs it. Its reasons: … Opinion of …, Zealous -50, They is your Friend +25, They is your Rival -50 and Rank Difference.

Will they accept?

The AI adds these up and accepts above zero. Reasons in italics are the script's, with no label in the game.

ReasonAmount
Base0
… Opinion of …varies
Zealous
when
-50
A scripted reason
when
  • Your faith:
    • faith_hostility_level = { target = scope:actor.faith value > faith_astray_level }
-25
They is your Friend
when
  • Has the target as friend
+25
They is your Rival
when
  • Has the target as rival
  • Does not have the target as nemesis
-50
Rank Difference
when
  • The character you target:
varies
Acceptance (ai_accept) (82 lines of game script)
base = 0
opinion_modifier = {
	who = scope:recipient
	opinion_target = scope:actor
	multiplier = 0.5
	desc = AI_OPINION_REASON
}
modifier = {
	add = -50
	has_trait = zealous
	desc = INTERACTION_ZEALOUS
}
modifier = {
	faith = {
		faith_hostility_level = {
			target = scope:actor.faith
			value > faith_astray_level
		}
	}
	add = -25
}
modifier = {
	scope:actor = {
		has_relation_friend = scope:recipient
	}
	add = 25
	desc = AI_YOUR_FRIEND
}
modifier = {
	scope:actor = {
		has_relation_rival = scope:recipient
		NOT = {
			has_relation_nemesis = scope:recipient
		}
	}
	add = -50
	desc = AI_YOUR_RIVAL
}
modifier = {
	desc = AI_REFUSAL_RANK_DIFFERENCE
	scope:recipient = {
		is_ruler = yes
		is_landed = yes
		highest_held_title_tier < tier_kingdom
	}
	add = {
		value = -10
		if = {
			limit = {
				scope:actor = {
					tier_difference = {
						target = scope:recipient
						value >= 2
					}
				}
			}
			add = 10
		}
		if = {
			limit = {
				scope:actor = {
					tier_difference = {
						target = scope:recipient
						value >= 3
					}
				}
			}
			add = 5
		}
		if = {
			limit = {
				scope:actor = {
					tier_difference = {
						target = scope:recipient
						value >= 4
					}
				}
			}
			add = 5
		}
	}
}

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

What happens

If they accept

  • Gain +50 Piety
  • The target gains the opinion “Respect” (+20) of them
  • Fervor increases by 1
  • The character you target:
    • A … ⟨faith⟩ missionary will appear at the court of …
    • It will be cheaper to convert to the Suzerain's Faith as long as the missionary is present at the Tributary's court
    • create_character = { … }

If they refuse

  • Gain -75 Prestige
  • Opinion: Insulted (-20)
  • The target gains the opinion “Disrespect” (-20) of them
  • Fervor decreases by 1

• 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) (13 lines of game script)
is_available = government_has_flag = government_is_mandala
trigger_if = {
	limit = {
		is_ai = yes
	}
	is_adult = yes
}
is_shown = scope:actor != scope:recipient
scope:recipient = {
	is_landed = yes
	faith != scope:actor.faith
	is_tributary_of = scope:actor
}

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

Can be sent when (is_valid…) (5 lines of game script)
NOT = {
	scope:actor = {
		is_at_war_with = scope:recipient
	}
}

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

Effects (on_send, on_accept, on_decline) (83 lines of game script)
on_accept = scope:actor = {
	hidden_effect = {
		add_opinion = {
			modifier = pleased_opinion
			target = scope:recipient
			opinion = 20
		}
		faith = {
			change_fervor = {
				value = trivial_fervor_gain
				desc = fervor_gain_suzerain_missionaries
			}
		}
	}
	send_interface_toast = {
		type = event_toast_effect_good
		title = tgp_mandala_send_missionary.success
		left_icon = scope:new_missionary
		right_icon = scope:recipient
		add_piety = minor_piety_gain
		reverse_add_opinion = {
			modifier = respect_opinion
			target = scope:recipient
			opinion = 20
		}
		custom_tooltip = tgp_mandala_send_missionary_interaction_fervor_gain_tt
	}
}
scope:recipient = {
	custom_tooltip = tgp_mandala_send_missionary_interaction_tt
	custom_tooltip = tgp_mandala_send_missionary_interaction_cheaper_conversion_tt
	create_character = {
		age = { 25 60 }
		dynasty = none
		random_traits_list = {
			count = 1
			education_learning_2 = { }
			education_learning_3 = { }
			education_learning_4 = { }
		}
		trait = devoted
		random_traits = yes
		culture = scope:actor.culture
		faith = scope:actor.faith
		rite = scope:actor.rite
		gender_female_chance = scope_actor_faith_clergy_gender_female_chance
		learning = { min_template_high_skill max_template_high_skill }
		employer = scope:recipient
		save_scope_as = new_missionary
		after_creation = {
			add_character_flag = suzerains_missionary
			add_character_flag = blocked_from_leaving
		}
	}
}
on_decline = scope:actor = {
	hidden_effect = {
		faith = {
			change_fervor = {
				value = trivial_fervor_loss
				desc = fervor_loss_suzerain_missionaries
			}
		}
	}
	send_interface_toast = {
		type = event_toast_effect_bad
		title = tgp_mandala_send_missionary.failure
		left_icon = scope:actor
		right_icon = scope:recipient
		add_prestige = minor_prestige_loss
		add_opinion = {
			modifier = insult_opinion
			target = scope:recipient
			opinion = -20
		}
		reverse_add_opinion = {
			modifier = disrespect_opinion
			target = scope:recipient
			opinion = -20
		}
		custom_tooltip = tgp_mandala_send_missionary_interaction_fervor_loss_tt
	}
}

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

Category
Vassal actions
Cooldown
3 years
Again on the same character
after 5 years
In the menu
main list
ID
tgp_mandala_send_missionary_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?