Interaction · Landless adventurer actions
Purchase Land
Bargain your Gold for a Title to establish yourself as a Landed Ruler
What you need
You
To send it
- Is an Independent Ruler
- Prestige level at least 2
- Does not have the Trait: Gallowsbait
- Does not have the Trait: Gallivanter
- … Capital is in range of their Camp.
- Exiled
To see it in the menu
- Your Government is Adventurer
- The target is not you
The character you target
To send it
is_contact_of = scope:actor- Is at not War
- Does not have a Strong Hook on you
To see it in the menu
- Is landed
- Government does not allow: noble families
Which title you can pick
Purchase Land is a landless adventurer character interaction in Crusader Kings III. You need: Is an Independent Ruler, Prestige level at least 2, Does not have the Trait: Gallowsbait and 2 more. The character you target needs: Is at not War and Does not have a Strong Hook on you. The AI weighs it. Reasons the AI weighs include The target is within De Jure Duchy of my Capital (-50), The target is not my Culture (…) (+10), You are married to a … noble (+40) and 8 more. It costs Gold (varies). It needs Roads to Power. Patch 1.20.1.2, from game/common/character_interactions/06_ep3_laamp_interactions.txt.
Quick answers (3)
- What are the requirements for Purchase Land in CK3?
- You: Is an Independent Ruler, Prestige level at least 2, Does not have the Trait: Gallowsbait, Does not have the Trait: Gallivanter and Exiled. The character you target: Is at not War and Does not have a Strong Hook on you. (patch 1.20.1.2)
- How do I get the AI to accept Purchase Land?
- The AI weighs it. Its reasons: … Opinion of …, Number and Tier of purchased Titles, The target is within De Jure Duchy of my Capital -50, Development and Buildings of the target, The target is not my Culture (…) +10, The target is not my Faith (…), Giving land of my Culture (…) to foreigner, Giving land of my Faith (…) to …, Distance of … from my Capital, … Opinion of …, High Level of Fame, You are married to a … noble +40, You are married to a member of … House +80, You speak the recipient's Language (…) +20, You do not speak the recipient's Language (…) -40, The recipient is in Debt, You have a positive Special Relation with the target +60, You have offered twice as much gold +80, You have a hook on the recipient's +160, You have offered a Hook on yourself +60 and You have offered increased Subject Obligations +80.
- How much does Purchase Land cost?
- Gold (varies) (patch 1.20.1.2).
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.
| Reason | Amount |
|---|---|
| Base | 0 |
| … Opinion of … | varies |
| Number and Tier of purchased Titles | varies |
The target is within De Jure Duchy of my Capitalwhen
| -50 |
| Development and Buildings of the target | varies |
The target is not my Culture (…)when
| +10 |
The target is not my Faith (…)when
| varies |
Giving land of my Culture (…) to foreignerwhen
| varies |
Giving land of my Faith (…) to …when
| varies |
Distance of … from my Capitalwhen
| varies |
… Opinion of …when
| varies |
High Level of Famewhen
| your prestige level × 20 |
You are married to a … noblewhen
| +40 |
A scripted reasonwhen
| +40 |
You are married to a member of … Housewhen
| +80 |
You speak the recipient's Language (…)when
| +20 |
You do not speak the recipient's Language (…)when
| -40 |
The recipient is in Debtwhen
| varies |
You have a positive Special Relation with the targetwhen
| +60 |
You have offered twice as much goldwhen
| +80 |
You have a hook on the recipient'swhen
| +160 |
You have offered a Hook on yourselfwhen
| +60 |
You have offered increased Subject Obligationswhen
| +80 |
Acceptance (ai_accept) (286 lines of game script)
base = 0
opinion_modifier = {
who = scope:recipient
opinion_target = scope:actor
multiplier = 1
desc = AI_OPINION_REASON
}
modifier = {
add = {
value = 0
scope:target = {
if = {
limit = {
tier = tier_county
}
add = -30
}
else = {
add = -60
every_de_jure_county = {
limit = {
ep3_purchase_land_valid_county_trigger = yes
}
add = -30
}
}
}
}
desc = PURCHASE_LAND_NUM_TITLES_REASON
}
modifier = {
add = -50
desc = PURCHASE_LAND_DE_JURE_DUCHY_REASON
scope:target.duchy = scope:recipient.capital_county.duchy
}
modifier = {
add = {
value = 0
if = {
limit = {
scope:target.tier = tier_county
}
add = scope:target.development_level
scope:target = {
every_county_province = {
add = num_buildings
}
}
}
else = {
scope:target = {
every_de_jure_county = {
limit = {
ep3_purchase_land_valid_county_trigger = yes
}
add = development_level
every_county_province = {
add = num_buildings
}
}
}
}
multiply = -2
}
desc = PURCHASE_LAND_VALUE_REASON
}
modifier = {
add = 10
add = {
value = 0
if = {
limit = {
scope:target.tier = tier_county
}
add = 10
}
else = {
scope:target = {
every_de_jure_county = {
limit = {
ep3_purchase_land_valid_county_trigger = yes
culture != scope:recipient.culture
}
add = 10
}
}
}
max = 30
}
desc = PURCHASE_LAND_FOREIGN_CULTURE_REASON
trigger_if = {
limit = {
scope:target.tier = tier_county
}
scope:target.culture != scope:recipient.culture
}
trigger_else = {
scope:target = {
any_de_jure_county = {
ep3_purchase_land_valid_county_trigger = yes
culture != scope:recipient.culture
}
}
}
}
modifier = {
add = {
value = 0
if = {
limit = {
scope:target.tier = tier_county
}
add = 10
}
else = {
scope:target = {
every_de_jure_county = {
limit = {
ep3_purchase_land_valid_county_trigger = yes
faith != scope:recipient.faith
}
add = 10
}
}
}
max = 30
}
desc = PURCHASE_LAND_DIFFERENT_FAITH_REASON
trigger_if = {
limit = {
scope:target.tier = tier_county
}
scope:target.faith != scope:recipient.faith
}
trigger_else = {
scope:target = {
any_de_jure_county = {
ep3_purchase_land_valid_county_trigger = yes
faith != scope:recipient.faith
}
}
}
}
modifier = {
add = {
value = 0
if = {
limit = {
scope:target.tier = tier_county
}
add = -40
}
else = {
scope:target = {
every_de_jure_county = {
limit = {
ep3_purchase_land_valid_county_trigger = yes
culture != scope:recipient.culture
}
add = -40
}
}
}
if = {
limit = {
scope:acceptance != 0
}
divide = scope:acceptance
}
multiply = 2
min = -200
}
desc = PURCHASE_LAND_MY_CULTURE_REASON
scope:actor.culture != scope:recipient.culture
trigger_if = {
limit = {
scope:target.tier = tier_county
}
scope:target.culture = scope:recipient.culture
}
trigger_else = {
scope:target = {
any_de_jure_county = {
ep3_purchase_land_valid_county_trigger = yes
culture = scope:recipient.culture
}
}
}
scope:recipient.culture = {
save_temporary_scope_value_as = {
name = acceptance
value = {
value = cultural_acceptance(scope:actor.culture)
divide = 25
ceiling = yes
}
}
}
}
modifier = {
add = {
value = 0
if = {
limit = {
scope:target.tier = tier_county
}
add = -40
}
else = {
scope:target = {
every_de_jure_county = {
limit = {
ep3_purchase_land_valid_county_trigger = yes
faith != scope:recipient.faith
}
add = -40
}
}
}
if = {
limit = {
scope:hostility != 0
}
multiply = scope:hostility
}
multiply = 2
min = -200
}
desc = PURCHASE_LAND_MY_FAITH_REASON
scope:actor.faith != scope:recipient.faith
trigger_if = {
limit = {
scope:target.tier = tier_county
}
scope:target.faith = scope:recipient.faith
}
trigger_else = {
scope:target = {
any_de_jure_county = {
ep3_purchase_land_valid_county_trigger = yes
faith = scope:recipient.faith
}
}
}
scope:recipient.faith = {
save_temporary_scope_value_as = {
name = hostility
value = faith_hostility_level(scope:actor.faith)
}
}
}
modifier = {
add = {
value = 0
add = scope:distance
divide = scope:recipient.highest_held_title_tier
if = {
limit = {
scope:distance <= squared_distance_medium
}
multiply = -0.01
}
else = {
multiply = 0.0005
}
min = -25
max = 50
}
desc = PURCHASE_LAND_DISTANCE_REASON
trigger_if = {
limit = {
scope:target.tier = tier_county
}
scope:target = {
save_temporary_scope_as = distance_target
}
}
trigger_else = {
scope:target.title_capital_county = {
save_temporary_scope_as = distance_target
}
}
scope:recipient.capital_county = {
save_temporary_scope_value_as = {
name = dista
# … (cut here; the rest is in the file)As written in game/common/character_interactions/06_ep3_laamp_interactions.txt.
What happens
If they accept
- You:
- You: Pay gold to the target
- You:
If
character:90028 ?= this
Then
- This will end your opposition to Normans and participation in the Harrying of the North!
- You › Otherwise › The new primary title:
change_title_holder_include_vassals = { holder = scope:actor change = scope:title_change take_baronies = no }
If
NOT = { scope:ascended_throne_value = flag:purchased }
Then
- The new primary title › Every de jure county:
- Where:
If
a check the game hides
Then
holder.top_liege ?= scope:defender.top_liege
If
a check the game hides
Then
holder.top_liege ?= scope:new_liege.top_liege
change_title_holder_include_vassals = { holder = scope:actor change = scope:title_change take_baronies = no }
- Where:
- Every in list:
- Where:
is_leased_out = no
change_title_holder_include_vassals = { holder = scope:actor change = scope:title_change take_baronies = no }
- Where:
If they refuse
- Event ep3_laamps.0102
Options when sending
- Pay DoubleOffer the recipient twice as much for the target
- Use a Hook
- Offer a Hook on yourselfThe recipient will have a hook on you to use as they pleases.
- Offer increased Subject ObligationsYour Vassal Contract will gain Extortionate Taxes and Massive Levy Contribution
Events it fires: ep3_laamps.0102
• 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) (9 lines of game script)
is_available = government_has_flag = government_is_landless_adventurer
is_shown = has_ep3_dlc_trigger = yes
scope:recipient = {
is_landed = yes
NOT = {
government_allows = noble_families
}
}
scope:recipient != scope:actorAs written in game/common/character_interactions/06_ep3_laamp_interactions.txt.
Can be sent when (is_valid…) (97 lines of game script)
scope:actor = {
top_liege = this
prestige_level >= 2
NOR = {
has_trait = gallowsbait
has_trait = gallivanter
}
}
scope:recipient = {
is_contact_of = scope:actor
is_at_war = no
NOT = {
has_strong_hook = scope:actor
}
}
trigger_if = {
limit = {
scope:target ?= {
tier = tier_barony
}
}
custom_description = {
text = purchase_land_barony_tt
always = no
}
}
trigger_if = {
limit = {
scope:target ?= {
tier >= tier_kingdom
}
}
custom_description = {
text = purchase_land_kingdom_tt
always = no
}
}
trigger_if = {
limit = {
scope:target ?= {
is_head_of_faith = yes
}
}
custom_description = {
text = purchase_land_religious_tt
always = no
}
}
trigger_if = {
limit = {
scope:target ?= {
is_noble_family_title = yes
}
}
custom_description = {
text = purchase_land_noble_family_tt
always = no
}
}
trigger_if = {
limit = {
scope:target ?= {
has_variable = adventurer_creation_reason
}
}
custom_description = {
text = purchase_land_landless_adventurer_tt
always = no
}
}
trigger_if = {
limit = {
scope:recipient = {
any_held_county = {
count < 2
}
}
}
custom_description = {
text = purchase_land_minimum_county_tt
object = scope:recipient
always = no
}
}
ep3_laamp_diplo_range_trigger = {
TARGET = scope:recipient
LAAMP = scope:actor
}
custom_tooltip = {
text = the_wake_1
NOT = {
is_laamp_exiled_from_province_trigger = {
PROVINCE = scope:recipient.capital_province
LAAMP = scope:actor
}
}
}As written in game/common/character_interactions/06_ep3_laamp_interactions.txt.
Effects (on_send, on_accept, on_decline) (141 lines of game script)
on_accept = scope:actor = {
save_scope_as = adventurer
}
scope:target = {
save_scope_as = purchase_land_target
add_to_list = purchased_titles
if = {
limit = {
tier = tier_duchy
}
every_de_jure_county = {
limit = {
holder ?= {
OR = {
this = scope:recipient
target_is_liege_or_above = scope:recipient
}
}
}
if = {
limit = {
holder = scope:recipient
}
add_to_list = purchased_titles
}
else_if = {
limit = {
holder ?= {
highest_held_title_tier < scope:purchase_land_target.tier
NOT = {
government_has_flag = government_is_administrative
}
target_is_liege_or_above = scope:recipient
}
}
holder = {
if = {
limit = {
NOT = {
is_in_list = purchase_land_vassals_taken
}
}
add_to_list = purchase_land_vassals_taken
}
}
}
else = {
add_to_list = purchased_titles
}
}
}
}
ordered_in_list = {
list = purchased_titles
order_by = tier
save_scope_as = new_primary_title
}
save_scope_value_as = {
name = purchase_land_cost
value = {
if = {
limit = {
scope:target.tier = tier_county
}
add = purchase_land_county_cost_value
}
else = {
add = purchase_land_duchy_cost_value
scope:target = {
every_de_jure_county = {
limit = {
ep3_purchase_land_valid_county_trigger = yes
}
add = purchase_land_county_cost_value
}
}
}
if = {
limit = {
scope:actor = {
has_variable = ep3_grace_to_the_family_var
}
}
multiply = 0.5
}
if = {
limit = {
scope:offer_gold = yes
}
multiply = 2
}
}
}
save_scope_value_as = {
name = purchase_land_legitimacy_cost
value = {
value = 0
if = {
limit = {
scope:target.holder != scope:recipient
}
every_in_list = {
list = purchased_titles
if = {
limit = {
tier = tier_county
}
add = minor_legitimacy_loss
}
else = {
add = medium_legitimacy_loss
}
}
}
}
}
show_as_tooltip = {
scope:actor = {
purchase_land_interaction_effect = yes
}
}
if = {
limit = {
always = scope:hook
}
scope:actor = {
use_hook = scope:recipient
}
}
hidden_effect = {
scope:actor = {
add_gold = scope:purchase_land_cost
}
}
scope:actor = {
trigger_event = ep3_laamps.0100
}
on_decline = scope:actor = {
save_scope_as = adventurer
trigger_event = ep3_laamps.0102
}As written in game/common/character_interactions/06_ep3_laamp_interactions.txt.
- Category
- Landless adventurer actions
- Cost: Gold
- varies
- Again on the same character
- after 10 years
- DLC
- Roads to Power
- In the menu
- under More…
- ID
purchase_land_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.