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

Interaction · Diplomatic actions

Expel Adventurer

No costRoads to PowerAccepted automatically

Demand that the recipient and their Camp leave your …

What you need

You

To send it

  • Is at not War
  • Is not the target’s spouse
  • Does not have the target as friend
  • Does not have the target as lover
  • If

    • You: Is played by the AI

    Then

    • You: Opinion of recipient less than 25
    • None of these

      • The character you target › Any character active contract:
        • task_contract_employer = scope:puppet_or_actor
  • If

    • scope:recipient = character:90028

    Then

    • Owns a story
  • If

    • scope:recipient = character:41702

    Then

    • Owns a story

To see it in the menu

  • If played by the AI:
    • Is at not War
    • Is not imprisoned
    • Is not incapable
  • Is landed
  • The target is not you

The character you target

To send it

  • domicile.domicile_location.county.holder ?= { target_is_same_character_or_above = scope:puppet_or_actor }
  • Does not have a Strong Hook on you

To see it in the menu

Expel Adventurer is a diplomatic character interaction in Crusader Kings III. You need: Is at not War, Is not the target’s spouse, Does not have the target as friend and 1 more. The character you target needs: Does not have a Strong Hook on you. Accepted automatically. It needs Roads to Power. Patch 1.20.1.2, from game/common/character_interactions/06_ep3_laamp_interactions.txt.

for a guide, post or blog
Quick answers (2)
What are the requirements for Expel Adventurer in CK3?
You: Is at not War, Is not the target’s spouse, Does not have the target as friend and Does not have the target as lover. The character you target: Does not have a Strong Hook on you. (patch 1.20.1.2)
Will the AI accept Expel Adventurer?
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

  • The character you target: … edict of expulsion cancels and nullifies any and all Contracts you were taking, or might have taken, in …

Effects

If they refuse

  • The character you target:
    • start_war = { cb = ep3_laamp_apprehend_adventurer_cb target = scope:puppet_or_actor }

Events it fires: ep3_interactions_events.0500, ep3_interactions_events.0501

• 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) (17 lines of game script)
is_available = trigger_if = {
	limit = {
		is_ai = yes
	}
	is_at_war = no
	is_imprisoned = no
	is_incapable = no
}
is_shown = scope:puppet_or_actor ?= {
	is_landed = yes
}
has_ep3_dlc_trigger = yes
scope:recipient != scope:puppet_or_actor
scope:recipient = {
	government_has_flag = government_is_landless_adventurer
	is_landed = no
}

As written in game/common/character_interactions/06_ep3_laamp_interactions.txt.

Can be sent when (is_valid…) (40 lines of game script)
scope:puppet_or_actor = {
	is_at_war = no
	NOR = {
		is_spouse_of = scope:recipient
		has_relation_friend = scope:recipient
		has_relation_lover = scope:recipient
	}
}
scope:recipient = {
	domicile.domicile_location.county.holder ?= {
		target_is_same_character_or_above = scope:puppet_or_actor
	}
}
trigger_if = {
	limit = {
		scope:actor = {
			is_ai = yes
		}
	}
	scope:puppet_or_actor = {
		opinion = {
			target = scope:recipient
			value < 25
		}
	}
	NOT = {
		scope:recipient = {
			any_character_active_contract = {
				task_contract_employer = scope:puppet_or_actor
			}
		}
	}
}
scope:recipient = {
	NOT = {
		has_strong_hook = scope:puppet_or_actor
	}
}
disable_interaction_for_hereward_trigger = yes
disable_interaction_for_hasan_trigger = yes

As written in game/common/character_interactions/06_ep3_laamp_interactions.txt.

Effects (on_send, on_accept, on_decline) (67 lines of game script)
on_send = scope:recipient = {
	send_interface_toast = {
		type = diplo_contract_scheme_invalidated_message
		title = evict_adventurer_interaction.tt.contracts_invalidated.t
		right_icon = scope:puppet_or_actor
		custom_tooltip = {
			text = evict_adventurer_interaction.tt.contracts_invalidated
			every_character_task_contract = {
				limit = {
					task_contract_location.county.holder = {
						target_is_same_character_or_above = scope:puppet_or_actor
					}
				}
				invalidate_contract = yes
			}
			every_character_active_contract = {
				invalidate_contract = yes
			}
		}
	}
}
on_accept = scope:puppet_or_actor = {
	save_scope_as = expeller
}
scope:recipient = {
	save_scope_as = adventurer
	add_opinion = {
		target = scope:puppet_or_actor
		modifier = demanded_eviction_opinion
	}
	custom_tooltip = evict_adventurer_contracts_tt
	custom_description_no_bullet = {
		text = evict_adventurer_consequences_tt
		object = scope:puppet_or_actor
		subject = scope:recipient
	}
	custom_tooltip = evict_adventurer_casus_belli_tt
}
scope:puppet_or_actor = {
	show_as_tooltip = {
		add_opinion = {
			target = scope:recipient
			modifier = eviction_ignored_opinion
		}
	}
}
scope:recipient = {
	set_variable = {
		name = adventurer_expeller
		value = scope:puppet_or_actor
		months = 4
	}
	trigger_event = {
		id = ep3_interactions_events.0500
		days = 1
	}
	trigger_event = {
		id = ep3_interactions_events.0501
		months = 3
	}
}
on_decline = scope:recipient = {
	start_war = {
		cb = ep3_laamp_apprehend_adventurer_cb
		target = scope:puppet_or_actor
	}
}

As written in game/common/character_interactions/06_ep3_laamp_interactions.txt.

Category
Diplomatic actions
Again on the same character
after 5 years
DLC
Roads to Power
In the menu
main list
ID
evict_adventurer_interaction

Source: game/common/character_interactions/06_ep3_laamp_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. “…” marks words the game fills in at play time (a name, a title).

Spotted a mistake on this page?