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

Scripted effect

release_prisoners_of_war_effect

release_prisoners_of_war_effect = yes

game/common/scripted_effects/00_war_effects.txt, line 1650 (50 lines). No parameters.

release_prisoners_of_war_effect is a scripted effect in Crusader Kings III, written at line 1650 of its file. It takes no parameters: release_prisoners_of_war_effect = yes. The game's script calls it in 5 places, among them Offer of Peace (interaction), Offer of Peace (interaction) and Offer of Peace (interaction). Patch 1.20.1.2, from game/common/scripted_effects/00_war_effects.txt.

The comment above it in the file

To release the winners prisoners when the war ends
Needs the arguments ATTACKER and WINNER. ATTACKER is weather the attacker won or not (y/n) and WINNER is the scope of the winner.

What it does

  • Every war defender › Every prisoner:
    • Where:
      • One of these

        • this = scope:war.primary_attacker
        • or

          scope:war.primary_attacker.primary_title:
          • place_in_line_of_succession = { target = prev value <= 3 }
    • release_from_prison = yes
  • Every war attacker › Every prisoner:
    • Where:
      • One of these

        • this = scope:war.primary_defender
        • or

          scope:war.primary_defender.primary_title:
          • place_in_line_of_succession = { target = prev value <= 3 }
    • release_from_prison = yes

• 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 (50 lines of game script)
release_prisoners_of_war_effect = {
	#Prisoners of defenders
	every_war_defender = {
		every_prisoner = {
			limit = {
				OR = {
					this = scope:war.primary_attacker
					scope:war.primary_attacker.primary_title = {
						place_in_line_of_succession = {
							target = prev
							value <= 3
						}
					}
				}
			}
			add_to_list = defender_valuable_prisoners_list
			release_from_prison = yes
		}
		scope:war.primary_defender = {
			set_variable = {
				name = valuable_prisoners
				value = list_size:defender_valuable_prisoners_list
			}
		}
	}
	#Prisoners of attackers
	every_war_attacker = {
		every_prisoner = {
			limit = {
				OR = {
					this = scope:war.primary_defender
					scope:war.primary_defender.primary_title = {
						place_in_line_of_succession = {
							target = prev
							value <= 3
						}
					}
				}
			}
			add_to_list = attacker_valuable_prisoners_list
			release_from_prison = yes
		}
		scope:war.primary_attacker = {
			set_variable = {
				name = valuable_prisoners
				value = list_size:attacker_valuable_prisoners_list
			}
		}
	}
}

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

Where it is used

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

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