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

Scripted effect

execute_prisoner_effect

execute_prisoner_effect = { EXECUTIONER = … VICTIM = … }

game/common/scripted_effects/00_prison_effects.txt, line 413 (926 lines). Parameters: $EXECUTIONER$, $VICTIM$.

execute_prisoner_effect is a scripted effect in Crusader Kings III, written at line 413 of its file. A call passes 2 parameters: EXECUTIONER and VICTIM. The game's script calls it in 23 places, among them Execute (interaction), A Difficult Time (event char_interaction.0170) and A Difficult Time (event char_interaction.0171). Its body carries 10 texts of the game's own for the player. Patch 1.20.1.2, from game/common/scripted_effects/00_prison_effects.txt.

The comment above it in the file

Used for all executions, except Extinguish Noble Family in China, which uses family_purge_execute_prisoner_effect

What it does

  • If

    • scope:execution_devour = yes

    Then

    • $VICTIM$ = { … }

    Otherwise

    • $VICTIM$ = { … }
  • scope:executioner:
    • Else, if all of these hold:
      • Conditions › scope:victim:
        • One of these

          • Highest held Title is at least Empire Rank
          • or

            scope:executioner.faith.religious_head = scope:victim
      • Then: Dread +30
    • Else, if all of these hold:
    • Else, if all of these hold:
    • Else, if all of these hold:
      • Conditions › scope:victim:
        • One of these

          • Highest held Title is at least County Rank
          • or

            tier_or_related_liege_tier_greater_or_equal_trigger = { TIER = tier_duchy }
          • or

            is_vassal_of = scope:executioner
          • or

            is_close_or_extended_family_of = scope:executioner
          • or

            scope:executioner › Any vassal:
            • is_close_family_of = scope:victim
          • or

            scope:executioner › Any liege or above:
            • is_close_family_of = scope:victim
      • Then: Dread +5
    • If

      Then

      • scope:victim:
        • If

          Then

          • scope:executioner: Gain +500 Piety

          Else if

          Then

          • scope:executioner: Gain +250 Piety

          Else if

          Then

          • scope:executioner: Gain +100 Piety

          Else if

          • One of these

            • Is a ruler
            • or

              Not: Is Lowborn
            • or

              Any close family member: Is a ruler

          Then

          • scope:executioner: Gain +50 Piety

          Otherwise

          • scope:executioner: Gain +25 Piety

      Else if

      • faith.religious_head = scope:victim
      • Does not have the Divine Retribution Perk
      • NOT = { has_execute_reason = scope:victim }

      Then

      Else if

      Then

      Else if

      Then

      Else if

      Then

    • If

      • None of these

      Then

      • … (more in the script below)
    • … (more in the script below)
  • … (more in the script below)

• 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 (120 lines of game script)
execute_prisoner_effect = {

	$VICTIM$ = {
		save_scope_as = victim
	}

	$EXECUTIONER$ = {
		save_scope_as = executioner
		save_scope_as = imprisoner #Save this scope to show correct tyranny tooltip
	}

	show_as_tooltip = {
		if = {
			limit = {
				exists = scope:execution_devour
				scope:execution_devour = yes
			}
			$VICTIM$ = {
				death = {
					death_reason = death_eaten
					killer = $EXECUTIONER$
				}
			}
		}
		else = {
			$VICTIM$ = {
				death = {
					death_reason = death_execution
					killer = $EXECUTIONER$
				}
			}
		}
	}

	scope:executioner = {
		# Dread gain
		if = {
			limit = {
				scope:victim = {
					time_in_prison = { years > 15 } # No one even remembers who they are anymore
				}
			}
			# No dread for you
		}
		else_if = { # Executing Emperors/HoF is quite dreadful
			limit = {
				scope:victim = {
					OR = {
						highest_held_title_tier >= tier_empire
						scope:executioner.faith.religious_head = scope:victim # Your head of faith
					}
				}
			}
			add_dread = execute_interaction_massive_dread_gain
		}
		else_if = {
			limit = {
				scope:victim = {
					OR = {
						highest_held_title_tier >= tier_kingdom
						tier_or_related_liege_tier_greater_or_equal_trigger = { TIER = tier_empire }
						is_powerful_vassal_of = scope:executioner # Is your powerful vassal
						target_is_vassal_or_below = scope:executioner # Your liege/s
						is_close_family_of = scope:executioner
					}
				}
			}
			add_dread = execute_interaction_major_dread_gain
		}
		else_if = {
			limit = {
				scope:victim = {
					OR = {
						highest_held_title_tier >= tier_duchy
						tier_or_related_liege_tier_greater_or_equal_trigger = { TIER = tier_kingdom }
						AND = { # Is your vassal, and higher than Baron
							is_vassal_of = scope:executioner
							primary_title.tier > tier_barony
						}
						AND = { # Peer Vassals
							exists = primary_title
							primary_title.tier > tier_barony
							liege ?= scope:executioner.liege
						}
						has_trait = peasant_leader
					}
				}
			}
			add_dread = execute_interaction_medium_dread_gain
		}
		else_if = {
			limit = {
				scope:victim = {
					OR = {
						highest_held_title_tier >= tier_county
						tier_or_related_liege_tier_greater_or_equal_trigger = { TIER = tier_duchy }
						is_vassal_of = scope:executioner # Is your Baron vassal
						is_close_or_extended_family_of = scope:executioner
						
						scope:executioner = { # Executing close family of your vassals is dreadful...
							any_vassal = {
								is_close_family_of = scope:victim
							}
						}
						scope:executioner = { # Executing close family of your liege/s is the same...
							any_liege_or_above = {
								is_close_family_of = scope:victim
							}
						}
					}
				}
			}
			add_dread = execute_interaction_minor_dread_gain
		}
		
		# Piety loss (or gain) from executions
		if = {
			limit = {
				rite = {
					rite_has_parameter = human_sacrifice_active

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

The first 120 of its 926 lines; the rest is in game/common/scripted_effects/00_prison_effects.txt from line 413.

Where it is used

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

Character interactions (1)

Events (21)

15 more

Scripted effects (1)

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