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

Scripted effect

discover_new_commander_trait_to_teach

discover_new_commander_trait_to_teach = yes

game/common/scripted_effects/00_martial_lifestyle_effects.txt, line 360 (160 lines). No parameters.

discover_new_commander_trait_to_teach is a scripted effect in Crusader Kings III, written at line 360 of its file. It takes no parameters: discover_new_commander_trait_to_teach = yes. The game's script calls it in 1 place, among them marshal_task.0302 (event). Patch 1.20.1.2, from game/common/scripted_effects/00_martial_lifestyle_effects.txt.

What it does

  • 1 of 17 things will happen:
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens
    • 6%: Nothing else happens

• 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)
discover_new_commander_trait_to_teach = {
	random_list = {
		1 = {
			trigger = { NOT = { has_trait = logistician } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:logistician
			}
		}
		1 = {
			trigger = { NOT = { has_trait = military_engineer } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:military_engineer
			}
		}
		1 = {
			trigger = { NOT = { has_trait = aggressive_attacker } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:aggressive_attacker
			}
		}
		1 = {
			trigger = { NOT = { has_trait = unyielding_defender } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:unyielding_defender
			}
		}
		1 = {
			trigger = { NOT = { has_trait = forder } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:forder
			}
		}
		1 = {
			trigger = { NOT = { has_trait = flexible_leader } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:flexible_leader
			}
		}
		1 = {
			trigger = {
				exists = scope:teacher.location
				scope:teacher.location = {
					OR = {
						terrain = oasis
						terrain = desert
						terrain = desert_mountains
					}
				}
				NOT = { has_trait = desert_warrior }
			}
			set_variable = {
				name = commander_trait_being_taught
				value = flag:desert_warrior
			}
		}
		1 = {
			trigger = {
				exists = scope:teacher.location
				scope:teacher.location = {
					terrain = jungle
				}
				NOT = { has_trait = jungle_stalker }
			}
			set_variable = {
				name = commander_trait_being_taught
				value = flag:jungle_stalker
			}
		}
		1 = {
			trigger = {
				exists = scope:teacher.location
				scope:teacher.location = {
					OR = {
						terrain = taiga
						geographical_region = world_tibet
						geographical_region = world_europe_north
						geographical_region = world_europe_east
						geographical_region = world_steppe
					}
				}
				NOT = { has_trait = winter_soldier }
			}
			set_variable = {
				name = commander_trait_being_taught
				value = flag:winter_soldier
			}
		}
		1 = {
			trigger = { NOT = { has_trait = reaver } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:reaver
			}
		}
		1 = {
			trigger = { NOT = { has_trait = reckless } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:reckless
			}
		}
		1 = {
			trigger = { NOT = { has_trait = holy_warrior } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:holy_warrior
			}
		}
		1 = {
			trigger = { NOT = { has_trait = open_terrain_expert } }
			set_variable = {
				name = commander_trait_being_taught
				value = flag:open_terrain_expert
			}

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

The first 120 of its 160 lines; the rest is in game/common/scripted_effects/00_martial_lifestyle_effects.txt from line 360.

Where it is used

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

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