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

Scripted trigger

are_characters_sensible_and_appropriate_open_lovers_trigger

are_characters_sensible_and_appropriate_open_lovers_trigger = { INSTIGATING_LOVER = … TARGET_OF_LOVE = … }

game/common/scripted_triggers/00_generic_event_sensibility_triggers.txt, line 276 (33 lines). Parameters: $INSTIGATING_LOVER$, $TARGET_OF_LOVE$.

are_characters_sensible_and_appropriate_open_lovers_trigger is a scripted trigger in Crusader Kings III, written at line 276 of its file. A call passes 2 parameters: INSTIGATING_LOVER and TARGET_OF_LOVE. The game's script calls it in 2 places, among them A Foreign Treat (event travel_events.3030) and courtier_guest_management.3001 (event). Patch 1.20.1.2, from game/common/scripted_triggers/00_generic_event_sensibility_triggers.txt.

The comment above it in the file

Would the characters make sense as lovers within the context of their social situation

What it checks

  • $INSTIGATING_LOVER$ = { save_temporary_scope_as = instigating_character }
  • $TARGET_OF_LOVE$ = { save_temporary_scope_as = target_of_love }
  • scope:instigating_character:
    • If

      • NOT = { is_consort_of = scope:target_of_love }

      Then

  • scope:target_of_love:
    • If

      • NOT = { is_consort_of = scope:instigating_character }

      Then

  • are_characters_sensible_and_appropriate_lovers_trigger = { INSTIGATING_LOVER = scope:instigating_character TARGET_OF_LOVE = scope:target_of_love }

• 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 (33 lines of game script)
are_characters_sensible_and_appropriate_open_lovers_trigger = {
	$INSTIGATING_LOVER$ = { save_temporary_scope_as = instigating_character }
	$TARGET_OF_LOVE$ = { save_temporary_scope_as = target_of_love }
	
	scope:instigating_character = {
		trigger_if = {
			limit = {
				NOT = {
					is_consort_of = scope:target_of_love
				}
			}
			is_married = no
			is_concubine = no
		}
	}
	
	scope:target_of_love = {
		trigger_if = {
			limit = {
				NOT = {
					is_consort_of = scope:instigating_character
				}
			}
			is_married = no
			is_concubine = no
		}
	}
	
	are_characters_sensible_and_appropriate_lovers_trigger = {
		INSTIGATING_LOVER = scope:instigating_character
		TARGET_OF_LOVE = scope:target_of_love
	}
}

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

Where it is used

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

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