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

Negotiate Obedience

from 150PrestigeThe AI weighs it

Offer Gold or Herd, or utilise a Hook to make a Character Obedient

What you need

You

To send it

  • Is not at war with the target
  • If

    Then

    • The character you target: Is a vassal (or below) of you

    Else if

    Then

  • Also needed: not imprisoned

To see it in the menu

  • Government allows: obedience
  • If played by the AI:
    • You have 350
    • primary_title.tier >= tier_duchy

The character you target

  • Is played by the AI
  • obedience_target ?= scope:actor
  • is_obedient = no

Negotiate Obedience is a vassal character interaction in Crusader Kings III. You need: Is not imprisoned and Is not at war with the target. The AI weighs it. Reasons the AI weighs include Hook used (+100), Gold sent (+100), Herd sent (+100) and 18 more. It costs Prestige (from 150). Patch 1.20.1.2, from game/common/character_interactions/09_mpo_interactions.txt.

for a guide, post or blog
Quick answers (3)
What are the requirements for Negotiate Obedience in CK3?
You: Is not imprisoned and Is not at war with the target. (patch 1.20.1.2)
How do I get the AI to accept Negotiate Obedience?
The AI weighs it. Its reasons: Hook used +100, Gold sent +100, Herd sent +100, Your Dominance +5, Your Dominance +10, Your Dominance +20, Your Dominance +100, Your Legitimacy -30, Your Legitimacy -20, Your Legitimacy +5, Your Legitimacy +15, Your Legitimacy +30, The recipient's Boldness, The recipient's Greed, The recipient's Honor, They is Brave -20, They is Arrogant -50, They is Trusting +25, They is Disloyal -50, They has a larger Herd than you -500, They has a more powerful Army than you -500, They is Craven +10, They is Content +10, The current Steppe Season forces characters to stick together +25, Intimidated by you and Terrified of you.
How much does Negotiate Obedience cost?
Prestige (from 150) (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.

ReasonAmount
Base-95
Hook used
when
+100
Gold sent
when
  • The option “gold” is chosen
+100
Herd sent
when
  • The option “herd” is chosen
+100
Your Dominance
when
+5
Your Dominance
when
+10
Your Dominance
when
+20
Your Dominance
when
+100
Your Legitimacy
when
-30
Your Legitimacy
when
-20
Your Legitimacy
when
+5
Your Legitimacy
when
+15
Your Legitimacy
when
+30
The recipient's Boldness
when
  • NOT = { ai_boldness = 0 }
varies
The recipient's Greed
when
  • Ai greed more than 0
varies
The recipient's Honor
when
  • NOT = { ai_honor = 0 }
varies
They is Brave
when
-20
They is Arrogant
when
-50
They is Trusting
when
+25
They is Disloyal
when
-50
They has a larger Herd than you
when
  • Your Government is Nomadic
  • The character you target:
    • domicile.herd >= 100
    • domicile.herd > scope:actor.domicile.herd
-500
They has a more powerful Army than you
when
  • The character you target:
    • Current military strength at least 100
    • current_military_strength > scope:actor.current_military_strength
-500
They is Craven
when
+10
They is Content
when
+10
The current Steppe Season forces characters to stick together
when
  • Any character situation › Any situation sub region:
    • has_sub_region_phase_parameter = the_great_steppe_easier_obedience
    • Any situation sub region participant group:
      • participant_group_type = nomad_rulers_capital
      • participant_group_has_character = scope:actor
+25
Intimidated by you
when
  • The character you target:
    • has_dread_level_towards = { target = scope:actor level = 1 }
intimidated_halved_reason_value
Terrified of you
when
  • The character you target:
    • has_dread_level_towards = { target = scope:actor level = 2 }
cowed_halved_reason_value
Acceptance (ai_accept) (200 lines of game script)
base = -95
modifier = {
	trigger = {
		scope:hook ?= yes
	}
	add = 100
	desc = MIGRATION_HOOK_USED
}
modifier = {
	trigger = {
		scope:gold ?= yes
	}
	add = 100
	desc = TRADE_GOLD_FOR_BETTER_AI_ACCEPTANCE_TT
}
modifier = {
	trigger = {
		scope:herd ?= yes
	}
	add = 100
	desc = TRADE_HERD_FOR_BETTER_AI_ACCEPTANCE_TT
}
modifier = {
	add = 5
	scope:actor = {
		OR = {
			has_realm_law = nomadic_authority_2
			has_realm_law = meritocratic_bureaucracy_1
		}
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_DOMINANCE_ACCEPTANCE
}
modifier = {
	add = 10
	scope:actor = {
		OR = {
			has_realm_law = nomadic_authority_3
			has_realm_law = meritocratic_bureaucracy_2
		}
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_DOMINANCE_ACCEPTANCE
}
modifier = {
	add = 20
	scope:actor = {
		OR = {
			has_realm_law = nomadic_authority_4
			has_realm_law = meritocratic_bureaucracy_3
		}
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_DOMINANCE_ACCEPTANCE
}
modifier = {
	add = 100
	scope:actor = {
		has_realm_law = nomadic_authority_5
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_DOMINANCE_ACCEPTANCE
}
modifier = {
	add = -30
	scope:actor = {
		legitimacy_level = 1
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_LEGITIMACY_ACCEPTANCE
}
modifier = {
	add = -20
	scope:actor = {
		legitimacy_level = 2
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_LEGITIMACY_ACCEPTANCE
}
modifier = {
	add = 5
	scope:actor = {
		legitimacy_level = 3
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_LEGITIMACY_ACCEPTANCE
}
modifier = {
	add = 15
	scope:actor = {
		legitimacy_level = 4
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_LEGITIMACY_ACCEPTANCE
}
modifier = {
	add = 30
	scope:actor = {
		legitimacy_level = 5
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_LEGITIMACY_ACCEPTANCE
}
modifier = {
	add = {
		value = ai_boldness
		multiply = -1
		divide = 2
	}
	NOT = {
		ai_boldness = 0
	}
	desc = ARTIFACT_BOLDNESS_REASON
}
modifier = {
	add = {
		value = ai_greed
		multiply = -1
		divide = 2
	}
	ai_greed > 0
	desc = ARTIFACT_GREED_REASON
}
modifier = {
	add = {
		value = ai_honor
		divide = 4
	}
	NOT = {
		ai_honor = 0
	}
	desc = ARTIFACT_HONOR_REASON
}
modifier = {
	add = -20
	scope:recipient = {
		has_trait = brave
	}
	desc = BLACKMAIL_INTERACTION_BRAVE_ACCEPTANCE
}
modifier = {
	add = -50
	scope:recipient = {
		has_trait = arrogant
	}
	desc = BLACKMAIL_INTERACTION_ARROGANT_ACCEPTANCE
}
modifier = {
	add = 25
	scope:recipient = {
		has_trait = trusting
	}
	desc = BLACKMAIL_INTERACTION_TRUSTING_ACCEPTANCE
}
modifier = {
	add = -50
	scope:recipient = {
		has_trait = disloyal
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_DISLOYAL_ACCEPTANCE
}
modifier = {
	add = -500
	scope:actor = {
		government_has_flag = government_is_nomadic
	}
	scope:recipient = {
		exists = domicile
		domicile.herd >= 100
		domicile.herd > scope:actor.domicile.herd
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_HERD_ACCEPTANCE
}
modifier = {
	add = -500
	scope:recipient = {
		current_military_strength >= 100
		current_military_strength > scope:actor.current_military_strength
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_MILITARY_MIGHT_ACCEPTANCE
}
modifier = {
	add = 10
	scope:recipient = {
		has_trait = craven
	}
	desc = BLACKMAIL_INTERACTION_CRAVEN_ACCEPTANCE
}
modifier = {
	add = 10
	scope:recipient = {
		has_trait = content
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_CONTENT_ACCEPTANCE
}
modifier = {
	add = 25
	any_character_situation = {
		any_situation_sub_region = {
			has_sub_region_phase_parameter = the_great_steppe_easier_obedience
			any_situation_sub_region_participant_group = {
				participant_group_type = nomad_rulers_capital
				participant_group_has_character = scope:actor
			}
		}
	}
	desc = DEMAND_OBEDIENCE_INTERACTION_ZUD_ACCEPTANCE
}
bp2_hostage_dread_modifier = yes

As written in game/common/character_interactions/09_mpo_interactions.txt.

What happens

If they accept

  • If

    • You use a Hook
    • Has a usable Hook on the target

    Then

    • Use a Hook on the target
  • If

    • The option “gold” is chosen

    Then

    • Pay gold to the target
  • If

    • The option “herd” is chosen

    Then

    • If a check the game hides passes: the same again (1 line)
      • pay_herd = { target = scope:recipient value = domicile.medium_herd_value }

      Otherwise

      • pay_herd = { target = scope:recipient value = domicile.medium_herd_value }
  • The character you target: Opinion: Sworn Obedience

Options when sending

  • Use a Hook
  • Bribe with … Gold
  • Bribe with … Herd

• 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_allows = obedience
trigger_if = {
	limit = {
		is_ai = yes
	}
	prestige >= major_prestige_value
	primary_title.tier >= tier_duchy
}
is_shown = scope:recipient = {
	is_ai = yes
	obedience_target ?= scope:actor
	is_obedient = no
}

As written in game/common/character_interactions/09_mpo_interactions.txt.

Can be sent when (is_valid…) (33 lines of game script)
scope:actor = {
	is_imprisoned = no
	NOT = {
		is_at_war_with = scope:recipient
	}
}
trigger_if = {
	limit = {
		scope:recipient = {
			is_landed = yes
			is_independent_ruler = no
		}
	}
	scope:recipient = {
		is_vassal_or_below_of = scope:actor
	}
}
trigger_else_if = {
	limit = {
		scope:recipient = {
			is_independent_ruler = yes
		}
	}
	scope:actor = {
		custom_tooltip = {
			text = mpo_interaction_not_neighbouring_tt
			any_land_neighboring_realm_with_tributaries_owner = {
				this = scope:recipient
			}
		}
	}
}
trigger_else = { }

As written in game/common/character_interactions/09_mpo_interactions.txt.

Effects (on_send, on_accept, on_decline) (56 lines of game script)
on_accept = scope:actor = {
	send_interface_toast = {
		type = event_toast_effect_good
		title = mpo_demand_obedience_interaction_toast
		left_icon = scope:recipient
		if = {
			limit = {
				scope:hook = yes
				has_usable_hook = scope:recipient
			}
			use_hook = scope:recipient
		}
		if = {
			limit = {
				scope:gold = yes
			}
			pay_short_term_gold = {
				target = scope:recipient
				gold = medium_gold_value
			}
		}
		if = {
			limit = {
				scope:herd = yes
			}
			if = {
				limit = {
					exists = scope:recipient.domicile
				}
				pay_herd = {
					target = scope:recipient
					value = domicile.medium_herd_value
				}
			}
			else = {
				show_as_tooltip = {
					pay_herd = {
						target = scope:recipient
						value = domicile.medium_herd_value
					}
				}
				hidden_effect = {
					domicile = {
						change_herd = medium_herd_loss
					}
				}
			}
		}
		scope:recipient = {
			add_opinion = {
				target = scope:actor
				modifier = obedience_opinion
			}
		}
	}
}

As written in game/common/character_interactions/09_mpo_interactions.txt.

Category
Vassal actions
Cost: Prestige
from 150
Again on the same character
after 10 years
In the menu
main list
ID
mpo_negotiate_obedience_interaction

Source: game/common/character_interactions/09_mpo_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?