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

Request Treasury Funds

60InfluenceThe AI weighs it

Send a request to the recipient to secure additional funds for your Treasury

What you need

You

To send it

  • Is not at War with their Liege
  • Is not at war with the target

To see it in the menu

  • Your Government is Celestial
  • One of these

    • is_councillor_of = top_liege
    • or

      Is a Governor
  • If played by the AI:
    • Is at not War
    • treasury <= minor_treasury_value
    • Does not have “celestial request treasury cooldown” (a variable the game's script sets)
  • root.top_liege ?= scope:recipient.top_liege

The character you target

To send it

  • treasury >= request_treasury_value

To see it in the menu

  • Government is Celestial
  • One of these

    • this = scope:actor.top_liege
    • or

      One of these

      • All of these

      • or

        All of these

        • Holds Ministry of Revenue
        • Their liege:
        • You:
          • NOT = { vassal_contract_has_flag = celestial_military_appointment }
  • If

    • You: Is played by the AI

    Then

    • Does not have “celestial request treasury ai cooldown” (a variable the game's script sets)

Request Treasury Funds is a vassal character interaction in Crusader Kings III. You need: Is not at War with their Liege and Is not at war with the target. The AI weighs it. Reasons the AI weighs include Weak Hook used (+40), You … the recipient's Movement Leader (+20), Generous (+20) and 11 more. It costs 60 Influence. Patch 1.20.1.2, from game/common/character_interactions/10_tgp_interactions.txt.

for a guide, post or blog
Quick answers (3)
What are the requirements for Request Treasury Funds in CK3?
You: Is not at War with their Liege and Is not at war with the target. (patch 1.20.1.2)
How do I get the AI to accept Request Treasury Funds?
The AI weighs it. Its reasons: Weak Hook used +40, You and the recipient are members of the same Movement, You … the recipient's Movement Leader +20, Generous +20, Greedy -20, Accepting would deplete the recipient's Treasury -40, Accepting would deplete the recipient's Treasury -20, The recipient's Treasury has a lot of funds +20, Your Treasury has a lot of funds -30, Your Treasury has a lot of funds -60, They is your Friend +20, They is your Lover +10, They is your Rival -50, They is your Disciple +20 and They is your Elder +5.
How much does Request Treasury Funds cost?
60 Influence (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-20
Weak Hook used
when
+40
Their opinion of you × 0.5varies
You and the recipient are members of the same Movement
when
  • One of these

    • top_participant_group:dynastic_cycle ?= scope:actor.top_participant_group:dynastic_cycle
    • or

      All of these

varies
You … the recipient's Movement Leader
when
  • One of these

    • top_participant_group:dynastic_cycle ?= scope:actor.top_participant_group:dynastic_cycle
    • or

      All of these

  • You are a Movement Leader
+20
Generous
when
+20
Greedy
when
-20
Accepting would deplete the recipient's Treasury
when
  • treasury < { value = request_treasury_value multiply = 2 }
-40
Accepting would deplete the recipient's Treasury
when
  • treasury < { value = request_treasury_value multiply = 4 }
  • treasury >= { value = request_treasury_value multiply = 2 }
-20
The recipient's Treasury has a lot of funds
when
  • treasury > { value = request_treasury_value multiply = 8 }
+20
Your Treasury has a lot of funds
when
  • root.treasury > { value = request_treasury_value multiply = 3 }
  • root.treasury <= { value = request_treasury_value multiply = 6 }
-30
Your Treasury has a lot of funds
when
  • root.treasury > { value = request_treasury_value multiply = 6 }
-60
They is your Friend
when
  • Has you as friend
+20
They is your Lover
when
  • Has you as lover
+10
They is your Rival
when
  • Has you as rival
-50
They is your Disciple
when
  • Has you as elder
+20
They is your Elder
when
  • Has you as disciple
+5
A scripted reason
when
  • Any character war: The war’s casus belli is … China's Grand Campaign
+30
Acceptance (ai_accept) (125 lines of game script)
base = -20
modifier = {
	add = 40
	scope:hook = yes
	desc = SCHEME_WEAK_HOOK_USED
}
opinion_modifier = {
	opinion_target = scope:actor
	who = scope:recipient
	multiplier = 0.5
}
modifier = {
	add = {
		value = 20
		if = {
			limit = {
				is_in_pro_hegemon_or_hegemon_movement = yes
			}
			multiply = 1.5
		}
	}
	is_in_same_movement_as = {
		TARGET = scope:actor
	}
	desc = actor_and_recipient_in_same_movement
}
modifier = {
	add = 20
	is_in_same_movement_as = {
		TARGET = scope:actor
	}
	scope:actor = {
		is_any_movement_leader = yes
	}
	desc = actor_is_recipients_movement_leader
}
modifier = {
	add = 20
	has_trait = generous
	desc = INTERACTION_GENEROUS
}
modifier = {
	add = -20
	has_trait = greedy
	desc = INTERACTION_GREEDY
}
modifier = {
	add = -40
	treasury < {
		value = request_treasury_value
		multiply = 2
	}
	desc = INTERACTION_RECIPIENT_WOULD_GET_LOW_TREASURY
}
modifier = {
	add = -20
	treasury < {
		value = request_treasury_value
		multiply = 4
	}
	treasury >= {
		value = request_treasury_value
		multiply = 2
	}
	desc = INTERACTION_RECIPIENT_WOULD_GET_LOW_TREASURY
}
modifier = {
	add = 20
	treasury > {
		value = request_treasury_value
		multiply = 8
	}
	desc = INTERACTION_RECIPIENT_HIGH_TREASURY
}
modifier = {
	add = -30
	scope:actor.treasury > {
		value = request_treasury_value
		multiply = 3
	}
	scope:actor.treasury <= {
		value = request_treasury_value
		multiply = 6
	}
	desc = INTERACTION_ACTOR_HIGH_TREASURY
}
modifier = {
	add = -60
	scope:actor.treasury > {
		value = request_treasury_value
		multiply = 6
	}
	desc = INTERACTION_ACTOR_HIGH_TREASURY
}
modifier = {
	has_relation_friend = scope:actor
	add = 20
	desc = AI_YOUR_FRIEND
}
modifier = {
	has_relation_lover = scope:actor
	add = 10
	desc = AI_YOUR_LOVER
}
modifier = {
	has_relation_rival = scope:actor
	add = -50
	desc = AI_YOUR_RIVAL
}
modifier = {
	has_relation_elder = scope:actor
	add = 20
	desc = AI_YOUR_DISCIPLE
}
modifier = {
	has_relation_disciple = scope:actor
	add = 5
	desc = AI_YOUR_ELDER
}
modifier = {
	add = 30
	any_character_war = {
		using_cb = grand_campaign_kingdom_invasion_cb
	}
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

What happens

If they accept

  • If played by the AI: Opinion: Grateful (+10)
  • If

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

    Then

    • Use a Hook on the target
  • If

    • title:h_china.holder ?= scope:recipient
    • Any character situation:

    Then

  • The character you target:
    • Influence +100
    • If

      • The option “clear debt” is chosen

      Then

      Otherwise

      • pay_short_term_treasury = { target = scope:actor treasury = request_treasury_value }

If they refuse

  • If played by the AI: Opinion: Disappointed (-20)
  • The character you target:
    • If

      • The option “dominant family” is chosen

      Then

      • Influence -60

Options when sending

  • Use a Hook
  • Leverage position of Dominant Family
  • Clear Treasury Debt

• 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) (60 lines of game script)
is_available = government_has_flag = government_is_celestial
OR = {
	is_councillor_of = top_liege
	is_governor = yes
}
trigger_if = {
	limit = {
		is_ai = yes
	}
	is_at_war = no
	treasury <= minor_treasury_value
	NOT = {
		has_variable = celestial_request_treasury_cooldown
	}
}
this != top_liege
is_shown = scope:actor = {
	this != scope:recipient
}
scope:actor.top_liege ?= scope:recipient.top_liege
scope:recipient = {
	government_has_flag = government_is_celestial
	OR = {
		this = scope:actor.top_liege
		OR = {
			AND = {
				has_title = title:e_minister_of_war
				liege ?= {
					highest_held_title_tier >= tier_hegemony
					government_has_flag = government_is_celestial
				}
				scope:actor = {
					vassal_contract_has_flag = celestial_military_appointment
				}
			}
			AND = {
				has_title = title:e_minister_of_revenue
				liege ?= {
					highest_held_title_tier >= tier_hegemony
					government_has_flag = government_is_celestial
				}
				scope:actor = {
					NOT = {
						vassal_contract_has_flag = celestial_military_appointment
					}
				}
			}
		}
	}
	trigger_if = {
		limit = {
			scope:actor = {
				is_ai = yes
			}
		}
		NOT = {
			has_variable = celestial_request_treasury_ai_cooldown
		}
	}
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

Can be sent when (is_valid…) (10 lines of game script)
scope:actor = {
	is_at_war_with_liege = no
	NOT = {
		is_at_war_with = scope:recipient
	}
}
scope:recipient = {
	treasury >= request_treasury_value
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

Effects (on_send, on_accept, on_decline) (112 lines of game script)
on_send = 
on_accept = scope:actor = {
	if = {
		limit = {
			is_ai = yes
		}
		add_opinion = {
			target = scope:recipient
			modifier = grateful_opinion
			opinion = 10
		}
	}
	if = {
		limit = {
			scope:hook = yes
			has_usable_hook = scope:recipient
		}
		use_hook = scope:recipient
	}
	tgp_activate_catalyst_against_hegemon_effect = {
		HEGEMON = scope:recipient
		CATALYST = catalyst_hegemon_influenced_by_interaction
	}
}
scope:recipient = {
	change_influence = major_influence_value
	if = {
		limit = {
			scope:clear_debt = yes
		}
		pay_short_term_treasury = {
			target = scope:actor
			treasury = {
				value = scope:actor.treasury
				multiply = -1
			}
		}
		add_hook = {
			type = strong_indebted_hook
			target = scope:actor
		}
		situation:dynastic_cycle ?= {
			if = {
				limit = {
					situation_top_has_catalyst = catalyst_cleared_treasury_debt
					any_situation_participant = {
						this = scope:actor
					}
				}
				trigger_situation_catalyst = {
					catalyst = catalyst_cleared_treasury_debt
					character = scope:actor
				}
			}
		}
	}
	else = {
		pay_short_term_treasury = {
			target = scope:actor
			treasury = request_treasury_value
		}
	}
	if = {
		limit = {
			is_ai = no
		}
		set_variable = {
			name = celestial_request_treasury_ai_cooldown
			years = 3
		}
	}
}
on_decline = scope:actor = {
	if = {
		limit = {
			is_ai = yes
		}
		add_opinion = {
			target = scope:recipient
			modifier = disappointed_opinion
			opinion = -20
		}
		if = {
			limit = {
				NOT = {
					has_variable = celestial_request_treasury_cooldown
				}
			}
			set_variable = {
				name = celestial_request_treasury_cooldown
				years = 10
			}
		}
	}
}
scope:recipient = {
	if = {
		limit = {
			scope:dominant_family = yes
		}
		change_influence = medium_influence_loss
	}
	if = {
		limit = {
			is_ai = no
		}
		set_variable = {
			name = celestial_request_treasury_ai_cooldown
			years = 3
		}
	}
}

As written in game/common/character_interactions/10_tgp_interactions.txt.

Category
Vassal actions
Cost: Influence
60
Cooldown
5 years
In the menu
under More…
ID
celestial_request_treasury_interaction

Source: game/common/character_interactions/10_tgp_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?