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

Interaction · Diplomatic actions

Legitimize Bastard (House)

from 150PrestigeAccepted automatically in some cases; otherwise the AI weighs it

Request that the recipient acknowledges your Bastard as Legitimate (the recipient is the Head of your House)

What you need

You

The other character

  • Their rite: The rite has Bastards can be legitimized if their House Head or Dynasty Head approves
  • Has the Trait: Bastard
  • One of these

    • father ?= scope:actor
    • or

      mother ?= scope:actor
    • or

      root.house.house_head ?= scope:actor
  • One of these

    • Is of the same house as you
    • or

      All of these

      • One of these

        • father.house ?= scope:actor.house
        • or

          mother.house ?= scope:actor.house
      • Not: Is a member of a Dynasty
    • or

      All of these

      • Your rite: The rite has The Legitimize Bastard Interaction can be used on your own Children of another House, where your Faith permits it
      • One of these

        • father ?= scope:actor
        • or

          mother ?= scope:actor

Legitimize Bastard (House) is a diplomatic character interaction in Crusader Kings III. Accepted automatically in some cases; otherwise the AI weighs it. Reasons the AI weighs include Weak Hook used (+100). It costs Prestige (from 150). Patch 1.20.1.2, from game/common/character_interactions/00_house_head_interactions.txt.

for a guide, post or blog
Quick answers (2)
How do I get the AI to accept Legitimize Bastard (House)?
Accepted automatically in some cases; otherwise the AI weighs it. Its reasons: Level of Fame, Weak Hook used +100, Intimidated by you, Terrified of you, Intimidated by you, Terrified of you and Wants to decrease House Unity.
How much does Legitimize Bastard (House) cost?
Prestige (from 150) (patch 1.20.1.2).

Will they accept?

Accepted automatically when:

  • One of these

    • root = scope:actor.house.house_head
    • or

      All of these

Otherwise the AI adds these up and accepts above zero. Reasons in italics are the script's, with no label in the game.

ReasonAmount
Base-50
Level of Fameyour prestige level × 20
Weak Hook used
when
+100
Their opinion of youvaries
Their opinion of the other character × 0.25varies
Intimidated by you
when
  • The character you target:
    • Is a vassal (or below) of you
    • has_dread_level_towards = { target = scope:actor level = 1 }
intimidated_reason_value
Terrified of you
when
  • The character you target:
    • Is a vassal (or below) of you
    • has_dread_level_towards = { target = scope:actor level = 2 }
cowed_reason_value
Intimidated by you
when
  • The character you target:
    • Is not a vassal (or below) of you
    • has_dread_level_towards = { target = scope:actor level = 1 }
intimidated_external_reason_value
Terrified of you
when
  • The character you target:
    • Is not a vassal (or below) of you
    • has_dread_level_towards = { target = scope:actor level = 2 }
cowed_external_reason_value
Wants to decrease House Unity
when
varies
Acceptance (ai_accept) (85 lines of game script)
base = -50
modifier = {
	trigger = {
		scope:actor != scope:actor.house.house_head
	}
	add = {
		value = scope:actor.prestige_level
		multiply = 20
	}
	desc = PRESTIGOUS_IN_OUR_HOUSE
}
modifier = {
	trigger = {
		always = scope:hook
	}
	add = 100
	desc = SCHEME_WEAK_HOOK_USED
}
opinion_modifier = {
	trigger = {
		scope:actor != scope:actor.house.house_head
	}
	who = scope:recipient
	opinion_target = scope:actor
	multiplier = 1
}
opinion_modifier = {
	trigger = {
		scope:actor != scope:actor.house.house_head
	}
	who = scope:recipient
	opinion_target = scope:secondary_recipient
	multiplier = 0.25
}
modifier = {
	add = intimidated_reason_value
	scope:recipient = {
		target_is_liege_or_above = scope:actor
		has_dread_level_towards = {
			target = scope:actor
			level = 1
		}
	}
	desc = INTIMIDATED_REASON
}
modifier = {
	add = cowed_reason_value
	scope:recipient = {
		target_is_liege_or_above = scope:actor
		has_dread_level_towards = {
			target = scope:actor
			level = 2
		}
	}
	desc = COWED_REASON
}
modifier = {
	add = intimidated_external_reason_value
	scope:recipient = {
		NOT = {
			target_is_liege_or_above = scope:actor
		}
		has_dread_level_towards = {
			target = scope:actor
			level = 1
		}
	}
	desc = INTIMIDATED_REASON
}
modifier = {
	add = cowed_external_reason_value
	scope:recipient = {
		NOT = {
			target_is_liege_or_above = scope:actor
		}
		has_dread_level_towards = {
			target = scope:actor
			level = 2
		}
	}
	desc = COWED_REASON
}
evaluate_action_decreasing_house_unity = {
	VALUE = 100
}

As written in game/common/character_interactions/00_house_head_interactions.txt.

What happens

If they accept

  • Stress and fulfillment impact: by trait: Arrogant +20
  • If

    • Any secret:
      • secret_target = { … }

    Then

    • One random secret:
      • Where:
        • secret_target = { … }
      • expose_secret = scope:actor
  • The other character:
    • add_trait_force_tooltip = legitimized_bastard
    • Opinion: Legitimized Me
    • You:
      • If

        • Is a parent of the other character

        Then

        • The other character › Random Parent: Opinion: Legitimized My Child
        • Every spouse:
          • Where: Is not a parent of the other character
          • Opinion: Legitimized a Bastard
        • If

          Then

          • All of my non-bastard, adult children who dislike the bastard:
  • If

    Then

    • You: Use a Hook on the target
  • If

    • You: Government is Clan
    • The character you target: Government is Clan
    • Your house is the target’s
    • If

      • You are not the target

      Then

      • You are not the target

    Then

    • Your house:
      • add_unity_value = { … }

    Else if

    • No
    • You: Government is Clan
    • Your house: Has you as house head
    • One of these

      • All of these

        • exists = scope:recipient.house
        • Your house is not the target’s
      • or

        The character you target: Is Lowborn

    Then

    • Your house:
      • add_unity_value = { … }

If they refuse

  • If

    • You: Government is Clan
    • The character you target: Government is Clan
    • Your house is the target’s
    • If

      • You are not the target

      Then

      • You are not the target

    Then

    • Your house:
      • add_unity_value = { … }

    Else if

    • No
    • You: Government is Clan
    • Your house: Has you as house head
    • One of these

      • All of these

        • exists = scope:recipient.house
        • Your house is not the target’s
      • or

        The character you target: Is Lowborn

    Then

    • Your house:
      • add_unity_value = { … }

Options when sending

  • Use a Hook

Events it fires: bastard_interaction.0001, bastard_interaction.0003, bastard_interaction.0002, bastard_interaction.0004, bastard_interaction.0005, bastard_interaction.0006, bastard_interaction.0007, bastard_interaction.0008

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

Who can use it and sees it (is_available, is_shown) (39 lines of game script)
is_available = is_lowborn = no
is_concubine = no
is_shown = scope:actor.rite ?= {
	rite_has_parameter = bastards_legitimize
}
scope:actor.house.house_head.rite ?= {
	rite_has_parameter = bastards_legitimize
}
scope:secondary_recipient ?= {
	rite ?= {
		rite_has_parameter = bastards_legitimize
	}
	this != scope:actor
	has_trait = bastard
	OR = {
		father ?= scope:actor
		mother ?= scope:actor
		scope:actor.house.house_head ?= scope:actor
	}
	OR = {
		house ?= scope:actor.house
		AND = {
			OR = {
				father.house ?= scope:actor.house
				mother.house ?= scope:actor.house
			}
			has_dynasty = no
		}
		AND = {
			scope:actor.rite ?= {
				rite_has_parameter = tenet_adoptionism_legitimize_own_children
			}
			OR = {
				father ?= scope:actor
				mother ?= scope:actor
			}
		}
	}
}

As written in game/common/character_interactions/00_house_head_interactions.txt.

Effects (on_send, on_accept, on_decline) (53 lines of game script)
on_accept = scope:actor = {
	stress_and_fulfillment_impact = {
		arrogant = minor_stress_impact_gain
	}
	legitimize_bastard_interaction_opinions_effect = {
		BASTARD = scope:secondary_recipient
		HOUSE_HEAD = scope:actor.house.house_head
		LEGITIMIZER = scope:actor
	}
	if = {
		limit = {
			always = scope:hook
		}
		scope:actor = {
			use_hook = scope:recipient
		}
	}
}
add_clan_unity_interaction_effect = {
	CHARACTER = scope:actor
	TARGET = scope:recipient
	VALUE = miniscule_unity_loss
	DESC = clan_unity_bastardry.desc
	REVERSE_NON_HOUSE_TARGET = no
}
hidden_effect = {
	scope:actor = {
		if = {
			limit = {
				has_character_modifier = oath_of_children
			}
			hidden_effect = {
				remove_character_modifier = oath_of_children
				add_character_modifier = oath_of_children
			}
		}
	}
}
on_decline = scope:actor = {
	send_interface_toast = {
		type = event_toast_effect_bad
		title = legitimize_bastard_interaction_decline_notification
		left_icon = scope:actor.house.house_head
		right_icon = scope:secondary_recipient
	}
}
add_clan_unity_interaction_effect = {
	CHARACTER = scope:actor
	TARGET = scope:recipient
	VALUE = miniscule_unity_gain
	DESC = clan_unity_bastardry_refusal.desc
	REVERSE_NON_HOUSE_TARGET = no
}

As written in game/common/character_interactions/00_house_head_interactions.txt.

Category
Diplomatic actions
Cost: Prestige
from 150
In the menu
under More…
ID
legitimize_bastard_interaction

Source: game/common/character_interactions/00_house_head_interactions.txt and the English localisation, Crusader Kings III 1.20.1.2. “You” is the character who sends it (scope:actor, or a puppet acting for you); “the character you target” is the recipient.

Spotted a mistake on this page?