Skip to content

Commit

Permalink
ref #622, move all *King's Peace* law enforcement to soft-code
Browse files Browse the repository at this point in the history
  • Loading branch information
zijistark committed Feb 16, 2019
1 parent 368f24a commit dd58185
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 9 deletions.
7 changes: 6 additions & 1 deletion EMF/EMF_changelog.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
EMF 9.01 [BETA]
*CHANGES:*
The AI will now never declare war, unless it's a forced-by-script war, when it is already involved in any other type of war, even as an ally.
The AI will now never declare war, unless forced to do so by script, when it is already involved in any other war, even as an ally.
*King's Peace:*
We no longer use the hard-coded king's peace mechanic to implement *Internal King's Peace* and *External King's Peace* for more flexibility (and in the future, more fine-grained control of the laws). We already started this process by blocking vassal kings from external realm wars with *Complete King's Peace*; with vanilla and the hard-coded mechanic, vassal kings are exempt from the ban on external wars.
The behavior of *Internal King's Peace* has changed slightly:
Vassals, direct or indirect, will not be able to declare war upon other vassals, direct or indirect, of the crown law title holder unless they're rebelling against their de facto liege OR the defender is subject to a different crown law title which lacks either the *Internal King's Peace* or *Complete King's Peace* laws. The latter case can occur when you're holding multiple crown law titles or simply when you have some vassals which are not de jure subjects of any of your crown law titles. Vassals which aren't subject to your crown laws will be valid targets of those whom are, and vassals subject to a different crown law title with insufficient legal authority to block the war are also valid targets.
In the future, we plan to add more law settings to the *King's Peace* law group as well as supporting events and decisions in order to add much more fine-grained strategic control, challenge, and dynamic interactions regarding vassal wars.
The Varangian Guard's title culture (controls the culture of characters which spawn in its court) is no longer forced to be the same as the first holder in a campaign.
Holy War (Religious Subjugation):
It is now permitted for emperor-tier rulers to convert and bend the knee. It's highly unlikely that they'll not have a county within their realm outside of the target duchy, which would make them refuse automatically, but if they indeed do not, emperor-tier attackers can subjugate them (and their empire titles will be destroyed, as in all of the same-tier attacker-defender cases).
Expand Down
6 changes: 3 additions & 3 deletions EMF/common/laws/emf_crown_laws.txt
Original file line number Diff line number Diff line change
Expand Up @@ -896,7 +896,7 @@ de_jure_laws = {
revoke_law = king_peace_1
revoke_law = king_peace_2
}
set_the_kings_peace = yes
set_the_kings_peace = no # Handled in soft-code
set_the_kings_full_peace = no
}
}
Expand Down Expand Up @@ -955,8 +955,8 @@ de_jure_laws = {
revoke_law = king_peace_1
revoke_law = king_peace_2
}
set_the_kings_peace = yes
set_the_kings_full_peace = yes
set_the_kings_peace = no # Handled in soft-code
set_the_kings_full_peace = no # Handled in soft-code
}
}

Expand Down
27 changes: 24 additions & 3 deletions EMF/events/emf_startup.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ character_event = {
break = yes
}

set_global_flag = emf_v9_0_at_game_start # FIXME / TODO: CHANGE UPON RELEASE
set_global_flag = emf_v9_01_beta2_at_game_start # FIXME / TODO: CHANGE UPON RELEASE

# Global EMF config pre-startup settings (great for easy tweaking of EMF behavior in your submod):
character_event = { id = emf_config.0 }
Expand Down Expand Up @@ -1433,8 +1433,29 @@ character_event = {

immediate = {
if = {
limit = { NOT = { has_global_flag = emf_v9_0 } }
set_global_flag = emf_v9_0 # TODO / FIXME : CHANGE UPON RELEASE OR SAVE-COMPATIBILITY CHANGE
limit = { NOT = { has_global_flag = emf_v9_01_beta2 } }
set_global_flag = emf_v9_01_beta2 # TODO / FIXME : CHANGE UPON RELEASE OR SAVE-COMPATIBILITY CHANGE
}
# TMP-SAVE-COMPAT: un-hard-code the King's Peace laws:
any_landed_title = {
limit = {
higher_tier_than = DUKE
has_law = king_peace_1
}
owner = { set_flag = emf_no_law_penalties }
add_law = { law = king_peace_0 cooldown = no opinion_effect = no }
add_law = { law = king_peace_1 cooldown = no opinion_effect = no }
owner = { clr_flag = emf_no_law_penalties }
}
any_landed_title = {
limit = {
higher_tier_than = DUKE
has_law = king_peace_2
}
owner = { set_flag = emf_no_law_penalties }
add_law = { law = king_peace_0 cooldown = no opinion_effect = no }
add_law = { law = king_peace_2 cooldown = no opinion_effect = no }
owner = { clr_flag = emf_no_law_penalties }
}
}
}
4 changes: 2 additions & 2 deletions EMF/localisation/1_emf_laws.csv
Original file line number Diff line number Diff line change
Expand Up @@ -132,10 +132,10 @@ king_peace_0_option;None;;;;Ninguna;;;;;;;;;x
king_peace_0_desc;The King's Peace dictates who vassals can declare war upon. At this level they will be able to declare war upon anyone as long as they have a valid casus belli.;;;;La Paz del Rey dicta a qui�n pueden declarar la guerra tus vasallos. A este nivel tus vasallos pueden declarar la guerra a cualquiera con un casus belli v�lido.;;;;;;;;;x
king_peace_1;Internal King's Peace;;;;Paz del Rey limitada;;;;;;;;;x
king_peace_1_option;Internal;;;;Limitada;;;;;;;;;x
king_peace_1_desc;The King's Peace dictates who vassals can declare war upon. At this level they will not be able to declare war upon other vassals unless they're rebelling against them.;;;;La Paz del Rey dicta a qui�n pueden declarar la guerra tus vasallos. A este nivel tus vasallos no pueden declarar la guerra a otros vasallos del reino a menos que sean vasallos suyos en rebeli�n.;;;;;;;;;x
king_peace_1_desc;The King's Peace dictates upon whom vassals subject to this crown law title can declare war. At this level, they will not be able to declare war upon other vassals, direct or indirect, of the crown law title holder unless they're rebelling against their de facto liege or the defender is subject to a different crown law title which lacks either Internal King's Peace or Complete King's Peace.;;;;;;;;;;;;;x
king_peace_2;Complete King's Peace;;;;Paz del Rey;;;;;;;;;x
king_peace_2_option;Total;;;;;;;;;;;;;x
king_peace_2_desc;The King's Peace dictates who vassals can declare war upon. At this level they will not be able to declare war upon anyone unless they're rebelling against them.;;;;La Paz del Rey dicta a qui�n pueden declarar la guerra tus vasallos. A este nivel tus vasallos s�lo pueden declarar la guerra a vasallos suyos en rebeli�n.;;;;;;;;;x
king_peace_2_desc;The King's Peace dictates upon whom vassals subject to this crown law title can declare war. At this level they will not be able to declare war upon anyone but their de facto liege.;;;;;;;;;;;;;x
## Protected Council Appointments ##
protected_appointment;Protected Council Appointments;;;;;;;;;;;;;x
protected_appointment_desc;Protected Council Appointments determines whether powerful vassals may be dismissed from the council at will.;;;;;;;;;;;;;x
Expand Down

0 comments on commit dd58185

Please sign in to comment.