CK3 DatabaseCrusader Kings III · 1.20.0.3 “Crozier” · unofficial

Casus belli · Invasions

Invasion

Invasion is a casus belli in Crusader Kings III (invasions). If the attacker wins: The attacker seizes all titles within the defender's realm belonging De Jure to the target title, and all occupied counties outside it. If the defender wins: The defender keeps their titles. Declaring it costs piety and prestige. The war goal is worth 80% war score. Patch 1.20.0.3, from game/common/casus_belli_types/00_invasion_war.txt.

Quick answers (3)
What do you get for winning a Invasion war in CK3?
The attacker seizes all titles within the defender's realm belonging De Jure to the target title, and all occupied counties outside it (patch 1.20.0.3).
What happens on a white peace?
The defender keeps their titles.
What does the Invasion casus belli cost?
piety and prestige; the amount depends on the titles, claims and distance, worked out when you declare.

How the war ends

Attacker wins

The attacker seizes all titles within the defender's realm belonging De Jure to the target title, and all occupied counties outside it.

White peace

The defender keeps their titles.

Defender wins

The defender keeps their titles.

If the war becomes invalid

The … has ended: the defender no longer … any land in the target region.

Who can declare it

The game shows no text of its own for these conditions; the script is below.

Every invasions war (the group's allowed_for_character) (7 lines of game script)
herders_and_tributary_constraints = yes
pam_personal_pacifism_offensive_war_ban_trigger = yes
tgp_dynastic_cycle_offensive_wars_ban_trigger = yes
tgp_war_ban_all_ministers_trigger = yes
NOT = {
	government_has_flag = government_is_theocracy
}

As written in game/common/casus_belli_groups/00_casus_belli_groups.txt.

Attacker (allowed_for_character) (27 lines of game script)
OR = {
	government_has_flag = government_is_tribal
	government_has_flag = government_is_nomadic
	rite = {
		rite_has_parameter = invasion_cb_enabled
	}
	has_character_flag = bp2_inspired_culture_for_conquest
	has_variable = mpo_desperate_stance_invasion_cb_enable_var
	ai_should_get_extreme_conqueror_bonuses = yes
	AND = {
		house ?= {
			has_house_head_parameter = has_mandala_invasion_cb
		}
		is_house_head = yes
	}
}
trigger_if = {
	limit = {
		ai_should_get_extreme_conqueror_bonuses = no
	}
	NOT = {
		has_character_flag = used_lifetime_invasion
	}
}
NOT = {
	government_has_flag = government_is_landless_adventurer
}

As written in game/common/casus_belli_types/00_invasion_war.txt.

Defender (allowed_against_character) (6 lines of game script)
scope:attacker = {
	ALL_FALSE = {
		top_liege = scope:defender.top_liege
		liege = scope:defender
	}
}

As written in game/common/casus_belli_types/00_invasion_war.txt.

When it can start (valid_to_start) (30 lines of game script)
scope:target = {
	any_in_de_jure_hierarchy = {
		tier = tier_county
		neighboring_county_or_viking_conquest_trigger = {
			CHARACTER = root
		}
	}
}
scope:target = {
	trigger_if = {
		limit = {
			scope:attacker = {
				is_ai = yes
			}
		}
		any_in_de_jure_hierarchy = {
			continue = {
				tier > tier_county
			}
			count >= 4
			tier = tier_county
			holder ?= {
				OR = {
					this = scope:defender
					is_vassal_or_below_of = scope:defender
				}
			}
		}
	}
}

As written in game/common/casus_belli_types/00_invasion_war.txt.

Cost to declare

Costs piety and prestige. The amount is worked out when you declare (by the titles targeted, claims, distance and more), so the script is shown as written:

Cost (44 lines of game script)
piety = {
	if = {
		limit = {
			scope:attacker = {
				NOT = {
					government_has_flag = government_is_mandala
					house ?= {
						has_house_head_parameter = has_mandala_invasion_cb
					}
					is_house_head = yes
				}
			}
		}
		value = common_cb_impious_piety_cost
	}
	else = {
		value = {
			value = 2000
			desc = CB_BASE_COST
		}
		multiply = common_cb_piety_cost_multiplier
	}
}
prestige = {
	if = {
		limit = {
			scope:attacker = {
				government_has_flag = government_is_mandala
				house ?= {
					has_house_head_parameter = has_mandala_invasion_cb
				}
				is_house_head = yes
			}
		}
		value = 0
	}
	else = {
		value = {
			value = 2000
			desc = CB_BASE_COST
		}
		multiply = common_cb_prestige_cost_multiplier
	}
}

As written in game/common/casus_belli_types/00_invasion_war.txt.

Source: game/common/casus_belli_types/00_invasion_war.txt and the English localisation, Crusader Kings III 1.20.0.3. “The attacker”, “the defender” stand where the game names the character; “…” marks other words it fills in during play.