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

Scripted effect

diarch_changed_own_contract_effect

diarch_changed_own_contract_effect = yes

game/common/scripted_effects/00_diarchy_scripted_effects.txt, line 262 (45 lines). No parameters.

diarch_changed_own_contract_effect is a scripted effect in Crusader Kings III, written at line 262 of its file. It takes no parameters: diarch_changed_own_contract_effect = yes. The game's script calls it in 4 places, among them Modify … Administration (interaction), Modify Vassal Contract (interaction) and Request Contract Change (interaction). Its body carries 1 text of the game's own for the player. Patch 1.20.1.2, from game/common/scripted_effects/00_diarchy_scripted_effects.txt.

What it does

  • If never:
    • If

      a check the game hides

      Then

      • scope:diarch:
        • … use your status as Diarch to countersign some of … own changes
        • If

          • diarch ?= scope:liege
          • has_diarchy_active_parameter = diarchy_is_co_rulership

          Then

          • Opinion: Abused Position of Trust (-10)

          Otherwise

          • Opinion: Abused Position of Trust (-40)

• 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 (45 lines of game script)
diarch_changed_own_contract_effect = {
	if = {
		limit = { always = scope:diarch }
		if = {
			limit = { scope:recipient = { is_diarch_of_target = scope:puppet_or_actor } }
			scope:puppet_or_actor = { save_scope_as = liege }
			scope:recipient = { save_scope_as = diarch }
		}
		else_if = {
			limit = { scope:puppet_or_actor = { is_diarch_of_target = scope:recipient } }
			scope:recipient = { save_scope_as = liege }
			scope:puppet_or_actor = { save_scope_as = diarch }
		}
		if = {
			limit = { exists = scope:diarch }
			scope:diarch = {
				custom_tooltip = liege_modify_vassal_contract_interaction.tt.diarch_powers_used
				# Co-rulers lose a fair bit less & can change multiple times.
				if = {
					limit = {
						diarch ?= scope:liege
						has_diarchy_active_parameter = diarchy_is_co_rulership
					}
					add_opinion = {
						target = scope:liege
						modifier = abused_position_of_trust_opinion
						opinion = -10
					}
				}
				# Everyone else loses much more.
				else = {
					add_to_variable_list = {
						name = diarch_contract_rights_used_list
						target = scope:liege
					}
					add_opinion = {
						target = scope:liege
						modifier = abused_position_of_trust_opinion
						opinion = -40
					}
				}
			}
		}
	}
}

As written in game/common/scripted_effects/00_diarchy_scripted_effects.txt.

Where it is used

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

Source: game/common/scripted_effects/00_diarchy_scripted_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?