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

Transfer County

No costAccepted automatically

Transfer a County to a Governor

What you need

You

To send it

  • Is at not War
  • You have no valid County to assign

To see it in the menu

The character you target

To send it

  • Is an Adult
  • Is at not War
  • is_hostage = no
  • … is traveling to become a Hostage
  • Already under negotiation to become someone's Ward
  • Already under negotiation to become someone's Guardian

To see it in the menu

Which title you can pick

Transfer County is a vassal character interaction in Crusader Kings III. You need: Is at not War and You have no valid County to assign. The character you target needs: Is an Adult, Is at not War, Already under negotiation to become someone's Ward and 1 more. Accepted automatically. Patch 1.20.1.2, from game/common/character_interactions/06_ep3_interactions.txt.

for a guide, post or blog
Quick answers (2)
What are the requirements for Transfer County in CK3?
You: Is at not War and You have no valid County to assign. The character you target: Is an Adult, Is at not War, Already under negotiation to become someone's Ward and Already under negotiation to become someone's Guardian. (patch 1.20.1.2)
Will the AI accept Transfer County?
Yes: it is accepted automatically.

Will they accept?

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

What happens

Effects

  • If

    • The character you target: Highest held Title is at least Duchy Rank
    • You › Any patroned holy order:
      • leader.capital_county ?= { save_temporary_scope_as = ho_capital_temp this = scope:target }

    Then

  • If

    • You: Was promised title is scope:recipient

    Then

    • If

      • scope:landed_title = scope:recipient.var:promised_title

      Then

  • The character you target › If a faction member:
    • add_joined_faction_discontent = grant_title_opinion_sum_discontent_calc
    • The Faction … belongs to loses some Discontent
  • … gains … Opinion of … for 50 years (Received County)
  • If

    • The character you target:
      • One of these

        • All of these

          • exists = dynasty
          • Is not of the same dynasty as you
        • or

          All of these

          • exists = scope:target.var:stele_container
          • exists = scope:target.var:stele_scope_type
          • scope:target.var:stele_scope_type = flag:character
          • this = scope:target.var:stele_container

    Then

    • The runestone in … will be destroyed since … isn't of … Dynasty!

    Else if

    • The target: The county has the modifier “Runestone”
    • NOT = { scope:recipient.dynasty = var:ancestor_to_bury.dynasty }

    Then

    • The runestone in … will be destroyed since … isn't of … Dynasty!
  • If

    • The target: The county has the modifier “Ancestral Khachkar”
    • NOT = { scope:recipient.dynasty = scope:target.var:pam_khachkar_ancestor.dynasty }

    Then

    • The Khachkar in … will be destroyed since … isn't of your Dynasty!
  • If

    • Your dynasty: The Dynasty has the Shared Ideas Legacy
    • The character you target:
      • Not all of these

        • Is a ruler
        • One of these

          • Cannot play landless rulers without having an Estate
          • or

            If

            • One of these

              • Is landed
              • or

                Government is a Theocratic-type Government

            Then

          • or

            All of these

            • Their liege:
              • All of these

                • Holds China
                • Government is Celestial
                • Their government has the government uses ministry budget flag
            • One of these

          • or

            Has “laamp transition” (a variable the game's script sets)
      • Their culture is the same as that of actor
      • Any in list:
        • One of these

        • Their culture is the same as that of recipient

    Then

    • You:
      • If

        • can_add_hook = { target = scope:recipient type = favor_hook }

        Then

        • Gain a Favor on the target
  • Every in list: Gains the … Title (recipient)

When it is accepted automatically

Events it fires: vassal.2910, bp1_yearly.8070, char_interaction.0111

• 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) (11 lines of game script)
is_available = highest_held_title_tier >= tier_empire
top_liege ?= this
government_has_mechanic = administrative
is_shown = scope:actor != scope:recipient
scope:recipient = {
	target_is_liege_or_above = scope:actor
	highest_held_title_tier >= tier_duchy
	is_governor = yes
	government_has_mechanic = administrative
	tgp_is_ceremonial_liege_trigger = no
}

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

Can be sent when (is_valid…) (21 lines of game script)
scope:actor = {
	is_at_war = no
}
scope:recipient = {
	is_adult = yes
	is_at_war = no
	bp2_valid_for_standard_interactions_trigger = yes
}
custom_tooltip = {
	text = have_no_valid_county_to_assign_trigger
	scope:actor = {
		any_held_title = {
			count >= 1
			title_tier = county
			this != scope:actor.primary_title.title_capital_county
			duchy ?= {
				this != scope:actor.primary_title.title_capital_county.duchy
			}
		}
	}
}

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

Effects (on_send, on_accept, on_decline) (249 lines of game script)
on_accept = if = {
	limit = {
		scope:recipient = {
			highest_held_title_tier >= tier_duchy
		}
		scope:actor = {
			any_patroned_holy_order = {
				leader.capital_county ?= {
					save_temporary_scope_as = ho_capital_temp
					this = scope:target
				}
			}
		}
	}
	if = {
		limit = {
			scope:recipient = {
				highest_held_title_tier >= tier_duchy
			}
		}
		custom_tooltip = holy_order_control_loss_warning_tt
	}
	else = {
		custom_tooltip = potential_holy_order_control_loss_warning_tt
	}
}
hidden_effect = {
	scope:recipient = {
		add_opinion = {
			target = scope:actor
			modifier = received_title_county
		}
	}
	scope:target = {
		add_to_temporary_list = titles_to_grant
	}
}
if = {
	limit = {
		scope:actor = {
			exists = var:was_promised_title
			var:was_promised_title = scope:recipient
		}
	}
	if = {
		limit = {
			scope:recipient = {
				exists = var:promised_title
			}
			scope:landed_title = scope:recipient.var:promised_title
		}
		scope:actor = {
			trigger_event = {
				id = vassal.2910
				days = { 7 14 }
			}
		}
	}
}
scope:recipient = {
	if = {
		limit = {
			is_a_faction_member = yes
		}
		add_joined_faction_discontent = grant_title_opinion_sum_discontent_calc
		custom_tooltip = grant_title_modifier_stack_discontent
	}
}
custom_tooltip = grant_title_modifier_stack_counties
if = {
	limit = {
		any_in_list = {
			list = titles_to_grant
			any_claimant = {
				grant_title_rivalry_trigger = yes
			}
		}
	}
	hidden_effect = {
		random = {
			chance = 25
			ordered_in_list = {
				list = titles_to_grant
				limit = {
					any_claimant = {
						grant_title_rivalry_trigger = yes
					}
				}
				order_by = tier
				save_scope_as = claim_title
				ordered_claimant = {
					limit = {
						grant_title_rivalry_trigger = yes
					}
					order_by = primary_title.tier
					save_scope_as = claim_vassal
					if = {
						limit = {
							scope:recipient = {
								is_lowborn = yes
							}
						}
						scope:recipient = {
							save_scope_as = lowborn_scope
						}
					}
					else_if = {
						limit = {
							scope:recipient = {
								has_claim_on = scope:claim_title
							}
						}
						scope:recipient = {
							save_scope_as = claimant_scope
						}
					}
					scope:actor = {
						trigger_event = {
							id = bp1_yearly.8070
							days = 5
						}
					}
				}
			}
		}
	}
}
scope:actor = {
	if = {
		limit = {
			has_fp1_dlc_trigger = yes
			fp1_remove_stele_new_holder_trigger = {
				TITLE = scope:target
				PREVIOUS_HOLDER = scope:actor
				NEW_HOLDER = scope:recipient
			}
		}
		custom_tooltip = runestone_grant_title_warning
	}
	else_if = {
		limit = {
			scope:target = {
				exists = var:ancestor_to_bury
				has_county_modifier = county_raised_runestone_modifier
			}
			NOT = {
				scope:recipient.dynasty = var:ancestor_to_bury.dynasty
			}
		}
		custom_tooltip = runestone_grant_title_warning
	}
	if = {
		limit = {
			has_pam_dlc_trigger = yes
			scope:target = {
				exists = var:pam_khachkar_ancestor
				has_county_modifier = pam_khachkar_ancestral_county
			}
			NOT = {
				scope:recipient.dynasty = scope:target.var:pam_khachkar_ancestor.dynasty
			}
		}
		custom_tooltip = pam_khachkar_grant_title_warning
	}
	if = {
		limit = {
			exists = scope:actor.dynasty
			scope:actor.dynasty = {
				has_dynasty_perk = ep1_culture_legacy_3
			}
			scope:recipient = {
				is_playable_character = no
				culture != scope:actor.culture
				any_in_list = {
					list = target_titles
					OR = {
						tier = tier_county
						tier = tier_barony
					}
					culture = scope:recipient.culture
				}
			}
		}
		scope:actor = {
			if = {
				limit = {
					can_add_hook = {
						target = scope:recipient
						type = favor_hook
					}
				}
				add_hook = {
					type = favor_hook
					target = scope:recipient
				}
			}
		}
	}
	hidden_effect = {
		scope:target = {
			save_scope_as = loc_title
		}
		scope:actor = {
			send_interface_toast = {
				type = event_toast_effect_good
				title = transfer_county_interaction_notification
				left_icon = scope:actor
				right_icon = scope:recipient
				custom_tooltip = grant_titles_interaction_notification_effect_2
				if = {
					limit = {
						exists = dynasty
						is_diff_faith_or_culture_trigger = {
							CHAR = scope:recipient
							STATUS = involved
						}
						any_character_struggle = {
							involvement = involved
							has_struggle_phase_parameter = struggle_grant_titles_diff_faith_culture_gives_prestige
						}
					}
					dynasty = {
						add_dynasty_prestige = minor_dynasty_prestige_gain
					}
				}
			}
		}
	}
}
hidden_effect = {
	if = {
		limit = {
			scope:actor = {
				is_diff_faith_or_culture_trigger = {
					CHAR = scope:recipient
					STATUS = involved
				}
				any_character_struggle = {
					involvement = involved
					activate_struggle_catalyst_secondary_character_involvement_involved_trigger = {
						CATALYST = catalyst_grant_privilege_to_diff_faith_culture_vassal
						CHAR = scope:recipient
					}
				}
			}
		}
		scope:actor = {
			every
# … (cut here; the rest is in the file)

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

Category
Vassal actions
In the menu
under More…
ID
transfer_county_interaction

Source: game/common/character_interactions/06_ep3_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?