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

Scripted trigger

is_blackmailable_secret_trigger

is_blackmailable_secret_trigger = { BLACKMAILER = … PARTICIPANT = … }

game/common/scripted_triggers/00_secret_triggers.txt, line 36 (107 lines). Parameters: $BLACKMAILER$, $PARTICIPANT$.

is_blackmailable_secret_trigger is a scripted trigger in Crusader Kings III, written at line 36 of its file. A call passes 2 parameters: BLACKMAILER and PARTICIPANT. The game's script calls it in 23 places, among them Blackmail (interaction), Fabricate Hook (scheme) and A Heavy Crown (event learning_medicine.2030). Patch 1.20.1.2, from game/common/scripted_triggers/00_secret_triggers.txt.

What it checks

Every line of it is script with no tooltip text: the script is below.

The script as written (107 lines of game script)
is_blackmailable_secret_trigger = { #Should not include is known
	$PARTICIPANT$ = { save_temporary_scope_as = is_blackmailable_secret_participant }
	$BLACKMAILER$ = { save_temporary_scope_as = is_blackmailable_secret_blackmailer }
	is_shunned_or_criminal_for = scope:is_blackmailable_secret_participant
	can_be_exposed_by = scope:is_blackmailable_secret_blackmailer
	#Can we actually add a hook of the correct type
	trigger_if = {
		limit = { is_shunned_for = scope:is_blackmailable_secret_participant }
		custom_description = {
			text = "already_has_a_superior_hook"
			subject = scope:is_blackmailable_secret_blackmailer
			object = scope:is_blackmailable_secret_participant
			scope:is_blackmailable_secret_blackmailer = {
				can_add_hook = {
					type = weak_blackmail_hook
					target = scope:is_blackmailable_secret_participant
				}
			}
		}
	}
	trigger_if = {
		limit = { is_criminal_for = scope:is_blackmailable_secret_participant }
		custom_description = {
			text = "already_has_a_superior_hook"
			subject = scope:is_blackmailable_secret_blackmailer
			object = scope:is_blackmailable_secret_participant
			scope:is_blackmailable_secret_blackmailer = {
				can_add_hook = {
					type = strong_blackmail_hook
					target = scope:is_blackmailable_secret_participant
				}
			}
		}
	}
	#If an AI promised not to reveal a secret they have to be very dishonest to do it
	trigger_if = {
		limit = { exists = var:promised_not_to_reveal}
		custom_description = {
			text = "promised_not_to_reveal_secret"
			var:promised_not_to_reveal = scope:is_blackmailable_secret_blackmailer
			scope:is_blackmailable_secret_blackmailer = {
				is_ai = yes
				ai_honor <= medium_negative_ai_value
			}
		}
	}
	
	#Some things you can't blackmail others about
	custom_description = {
		text = "cant_blackmail_another_witch"
		subject = scope:is_blackmailable_secret_blackmailer
		NAND = {
			secret_type = secret_witch
			scope:is_blackmailable_secret_blackmailer = { is_witch_trigger = yes }
		}
	}
	# Can't blackmail a crypto-religionist of the same faith
	trigger_if = {
		limit = { secret_type = secret_crypto_religionist }
		custom_description = {
			text = cannot_blackmail_crypto_religionist_of_same_faith
			scope:is_blackmailable_secret_blackmailer = {
				NOR = {
					exists = secret_faith
					secret_faith ?= scope:is_blackmailable_secret_participant.secret_faith
				}
			}
		}
	}
	trigger_if = {
		limit = { secret_type = secret_lover }
		custom_description = {
			text = cannot_blackmail_own_lover_secret
			secret_target != scope:is_blackmailable_secret_blackmailer
		}
	}
	trigger_if = {
		limit = {
			secret_type = secret_unmarried_illegitimate_child
		}
		custom_description = {
			text = cannot_blackmail_over_own_bastard
			secret_target = {
				NOR = {
					mother = scope:is_blackmailable_secret_blackmailer
					real_father = scope:is_blackmailable_secret_blackmailer
				}
			}
		}
	}
	trigger_if = {
		limit = {
			secret_type = secret_disputed_heritage
		}
		custom_description = {
			text = cannot_blackmail_over_own_bastard
			NOT = {
				secret_target = {
					OR = {
						mother = scope:is_blackmailable_secret_blackmailer
						real_father = scope:is_blackmailable_secret_blackmailer
					}
				}
			}
		}
	}
}

As written in game/common/scripted_triggers/00_secret_triggers.txt.

Where it is used

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

Character interactions (1)

Schemes (1)

  • Fabricate Hook

Events (9)

3 more

Scripted triggers inside an event file (7)

  • appropriate_interesting_secret
  • councillor_spouse_intrigue_1004_secret_trigger
  • feast_default_2008_homosexual_trigger
  • feast_lifestyle_2002_secret_trigger
  • intrigue_scheming_3001_relevant_secret_trigger
  • valid_secret_befriend_outcome_8007_trigger
1 more
  • yearly_1080_secret_trigger

On actions (the game's own hooks) (1)

  • on_travel_plan_movement

Scripted rules (1)

  • is_secret_available_for_blackmail

Source: game/common/scripted_triggers/00_secret_triggers.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?