CK3 DatabaseCrusader Kings III · 1.20.1.2 “Crozier” · unofficial
Silk & Silverout Tue, Nov 17What's free, what needs the DLC, price →

Scripted effect · By God Alone files

sell_claim_interaction_effect

sell_claim_interaction_effect = yes

game/common/scripted_effects/pam_effects.txt, line 3723 (84 lines). No parameters.

sell_claim_interaction_effect is a scripted effect in Crusader Kings III, in the By God Alone files, written at line 3723 of its file. It takes no parameters: sell_claim_interaction_effect = yes. The game's script calls it in 1 place, among them Sell Claim (interaction). Its body carries 1 text of the game's own for the player. Patch 1.20.1.2, from game/common/scripted_effects/pam_effects.txt.

What it does

  • scope:recipient:
    • add_unpressed_claim = scope:target
  • If

    • scope:is_puppet_action ?= yes

    Then

    • scope:puppet_or_actor:
      • add_piety = { … }
  • If

    • scope:sell_claim_gold_and_hook = yes

    Then

    • scope:recipient:
      • pay_short_term_gold = { target = scope:puppet_or_actor gold = minor_gold_value }
    • scope:puppet_or_actor:
      • If

        • has_hook = scope:recipient

        Then

        • … already has a Hook on …
      • add_hook = { type = favor_hook target = scope:recipient }

    Otherwise

    • scope:puppet_or_actor › scope:recipient:
      • pay_short_term_gold = { target = scope:puppet_or_actor gold = pam_sell_claim_gold_cost_value }
  • If

    Then

• the game's own tooltip text · ◦ our reading of the script line · code the script where neither exists

“They” is whatever it runs on (the scope it is called in). The scripted triggers and effects it calls link to their own pages; $PARAMETERS$ stay as written: each call fills them in.

The script as written (84 lines of game script)
sell_claim_interaction_effect = {
	scope:recipient = { add_unpressed_claim = scope:target }
	# cost = { piety } is only charged to scope:actor, so a puppeteer's cleric pays here instead
	if = {
		limit = { scope:is_puppet_action ?= yes }
		scope:puppet_or_actor = {
			add_piety = {
				value = {
					add = pam_sell_claim_piety_cost_value
					max = piety
					multiply = -1
				}
			}
		}
	}
	if = {
		limit = { scope:sell_claim_gold_and_hook = yes }
		send_interface_toast = {
			title = sell_claim_interaction_effect_tt
			left_icon = scope:target
			right_icon = scope:recipient
			scope:recipient = {
				pay_short_term_gold = {
					target = scope:puppet_or_actor
					gold = minor_gold_value
				}
			}
		}
		scope:puppet_or_actor = { # Generates its own toast
			if = {
				limit = { has_hook = scope:recipient }
				custom_tooltip = already_has_hook_on_recipient
			}
			add_hook = {
				type = favor_hook
				target = scope:recipient
			}
		}
	}
	else = {
		scope:puppet_or_actor = {
			send_interface_toast = {
				title = sell_claim_interaction_effect_tt
				left_icon = scope:target
				right_icon = scope:recipient
				scope:recipient = {
					pay_short_term_gold = {
						target = scope:puppet_or_actor
						gold = pam_sell_claim_gold_cost_value
					}
				}
			}
		}
	}
	if = {
		limit = {
			scope:is_puppet_action ?= yes
			scope:actor != scope:recipient
		}
		scope:actor = {
			send_interface_toast = {
				title = sell_claim_interaction_effect_tt_puppeteer
				left_icon = scope:puppet_or_actor
				right_icon = scope:recipient
			}
		}
	}
	if = {
		limit = {
			scope:puppet_or_actor = { has_pam_dlc_trigger = yes }
			situation:the_christian_church ?= {
				situation_top_has_catalyst = catalyst_clergy_sold_claim
			}
			scope:puppet_or_actor = {
				any_character_situation = {
					this = situation:the_christian_church
				}
			}
		}
		situation:the_christian_church = {
			trigger_situation_catalyst = catalyst_clergy_sold_claim
		}
	}
}

As written in game/common/scripted_effects/pam_effects.txt.

Where it is used

Every place in common/, events/ and history/ that calls sell_claim_interaction_effect.

Character interactions (1)

Source: game/common/scripted_effects/pam_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.

Spotted a mistake on this page?