Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .known_errors/script_values_database_exceptions.txt
Original file line number Diff line number Diff line change
Expand Up @@ -383,6 +383,8 @@ hybridization_threshold_value
number_of_owned_gothic_counties_percent
promote_culture_early_slav_bonus_value
major_migration_prestige_level_easier
bp_migration_depopulation_faith
bp_migration_depopulation_culture
ce_date_value
conversion_culture_harder_to_convert_BP_value
conversion_culture_harder_to_convert_default_value
Expand Down Expand Up @@ -448,6 +450,21 @@ number_of_counties_of_ruler_culture
convert_tribal_to_subroman_government_decision_realm_size
number_of_counties_that_are_held_by_you_or_a_subroman_ratio
###########
#Laws
percent_of_subroman_dynastic_dukes_with_subroman_dynastic_aristocracy_law_level_0
percent_of_subroman_dynastic_dukes_with_subroman_dynastic_aristocracy_law_level_1
percent_of_subroman_dynastic_dukes_with_subroman_dynastic_aristocracy_law_level_2
percent_of_subroman_dynastic_dukes_with_subroman_dynastic_aristocracy_law_level_3
percent_of_subroman_dynastic_dukes_with_subroman_dynastic_aristocracy_law_level_4
percent_of_subroman_administrative_dukes_with_subroman_administrative_aristocracy_law_level_0
percent_of_subroman_administrative_dukes_with_subroman_administrative_aristocracy_law_level_1
percent_of_subroman_administrative_dukes_with_subroman_administrative_aristocracy_law_level_2
percent_of_subroman_administrative_dukes_with_subroman_administrative_aristocracy_law_level_3
percent_of_subroman_administrative_dukes_with_subroman_administrative_aristocracy_law_level_4
###########
# Council Tasks
task_accept_culture_base_progress
###########
#Religion
bp_faith_changed_doctrine_cost_mult_four_step
bp_faith_changed_doctrine_cost_mult_three_step
Expand Down
3 changes: 3 additions & 0 deletions .known_errors/scripted_triggers_database_exceptions.txt
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,9 @@ valid_to_be_senator_trigger_roman_empires_trigger
##BP self-triggers (i.e., in the same file)
holds_a_non_titular_empire_trigger
the_culture_or_parent_is_with_heritage_trigger
#BP GUI Triggers
holder_or_above_is_migration_target_trigger
holder_or_above_is_migration_range_trigger
#Vanilla overwrites
byzantine_governor_close_family_trigger
east_asian_governor_close_family_trigger
Expand Down
2 changes: 2 additions & 0 deletions .known_errors/trigger_localization_database_exceptions.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ development_level_greater_or_equal
is_primary_title
the_culture_or_parent_is_with_heritage
must_consider_the_chars_faith_to_be_righteous_or_astray
has_subroman_administrative_aristocracy_law_cooldown
has_subroman_dynastic_aristocracy_law_cooldown
#These are templated over
you_are_part_of_the_city_holders_realm_east
you_are_part_of_the_city_holders_realm_west
Expand Down
152 changes: 152 additions & 0 deletions ChangeLog.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,155 @@
2026-09-26 v0.3.1
-----------

Major Tweaks:
- "Promote Cultural Acceptance" Council Task base progress increased by 25% to adapt to our lower baseline culture acceptance growth rates
- Added a "Chronicle" Situation that tracks events in the mod, inspired by the CK2 Chronicle
- Also tracks some Mod-specific features and events

Migration Situation:
- Migrators, Tribals get a +15% bonus to raid speed, -20% Development Growth, and +20% Development Decline

Casus Belli:
- Roman Wars:
- Roman wars now cost treasury, or gold if no treasury available
- Cost is dependent on yearly income, but is at a minimum 100 for counties, 300 for duchies, 750 for kingdoms
- Migration Wars:
- Major Migration Wars can only target Kingdoms or realms with at least 8 counties
- Revamped title logic so that one can migrate to non-adjacent kingdoms
- Reworked fame levels; migration wars no longer require fame levels to launch
- Title selection is dependent on fame level; further titles require higher fame
- "Legendary Leader" trait is effectively one fame level for this purpose
- Traditions which reduce fame level CB requirements are effectively one fame level for this purpose
- All migration wars may always target neighboring kingdoms and duchies
- Successful migrations unlock the ability to move your capital, if the automatically chosen one is not to your liking
- "Recent Immigration" modifiers add county opinion, preventing immediate populist uprisings
- Modified the army spawning for migration wars
- Counties of either the attacker's faith or culture will spawn troops
- Troops include some Men-At-Arms, depending on culture and innovations, and size dependent on development
- Development decline is dependent on the county culture or faith (logical or)
- Nomad Invasions:
- Nomadic Invasions will not trigger "A New Culture?" event if the defender was either Tribal, High Tribal, or Nomadic

Decisions:
- "Change State Faith" decision is 95% cheaper, both in influence and piety, if the state faith is unreformed and the top liege faith is reformed
- Consolidated the expel minorities decision into a single decision
- Made Ask for WRE decisions visible only to those who can possibly achieve it
- Regrouped certain decisions to prevent too many decisions in the "Major" Category
- Added a decision for Augustulus to repudiate the "Augustulus" nickname
- Valid if he is an adult, ruling a Roman Empire, has a weak diarchy (if there is one), and is crowned (if playing with Coronations DLC)
- Added decision to Proclaim the 2000th Anniversary of the Gothic Kingdom
- Visible for Gothic Heritage, Gothic-derived cultures
- Is valid if you are the dynast, have some Tribal Innovations, are at least an Empire, have at least 150 counties, and sufficient Prestige and Legitimacy
- Costs 1000 Prestige, 100 Piety, and a variable amount of Gold or Treasury
- Gold/Treasury costs scale with realm size and inversely with dynasty fame level
- Gives the ruler 2000 Renown, Increases Dynasty Fame Level enough to be Well-Known or better, Gives the "Gothic Hero" Modifier, and reduces Roman Minority Rule by 1 level if applicable
- "Gothic Hero" modifier increases Legitimacy gain, grants 0.05 Monthly Renown, and 0.5 Monthly Prestige, and most Vassal Stance Opinion while reducing Minority Vassal Stance Opinion

Culture:
- "Stratocratic Elite" reduces culture acceptance required for hybridization by 20
- Sarmatian cultures changes:
- Iazyges start with "Writing" and "Oral Law" Innovations
- Consolidated Iazyges and Sarmatian name lists
- Converted 'd' to 'l' for Sarmatian name list in line with reconstruction of Pontic Steppe pronunciations
- This does not extend to the Alan name list, which did not undergo the same evolution
- Roman Politics, Eastern Roman Politics, and Hellenic Culture allow for dynastic elevation to the Senate

Governments:
- High Tribal Government:
- Moderate High Tribal Organization blocks creating and joining Confederations
- Moderate High Tribal Organization blocks raiding, unless non-governmental aspects allow it

History:
- Romance culture tribals in Pannonia are High Tribal, in line with mechanics
- Hyspiratis is now a castle holding to sidestep potential issues with the conquest of the Tzani

Map:
- Splatum made the capital of its county as it was the most important settlement historically

Memories:
- Added a special memory type for the Fall of Rome
- Added memories relating to becoming a Senator and being elected Consul

GFX:
- Fixed Faction GUI so primary titular titles did not cause overlapping display problems
- Updated county view to better accommodate large minority selections
- Tweaked several innovation icons
- Added new icon for Aristocratic Governments
- Updated Realm GUI to show what the Aristocracy Law of your vassals is for Sub-Roman governments, to help players find a path to reducing the Feudalization of their realm laws
- Updated Migration Situation GUI to provide a map mode showing range for major Migration Wars
- Updated Migration Situation GUI to provide a map mode showing what polities can target you for major Migration Wars
- Updated Classical and Late Antiquity Era images to better fit CK3 images schemes
- Updated interface image for Migration Period in the Situation selection GUI

Localization:
- Thorciling Dynasty gets a custom motto
- Clarified some inapplicable rules
- Fixed some missing localizations

Tweaks:
- The "A New Administration?" Event
- Will always show the Roman option if available, and list the reasons it is not selectable
- Tweaked migration gold and treasury:
- If adopting a government without treasury, gain 160 gold times your rank less one (so Dukes get 160 and Kings get 320)
- If adopting a government with treasury, gain 40 gold times your rank less one and 120 treasury times your rank less one
- In either case, this value is the maximum; you only gain enough of either to hit that limit
- "A New Culture?" Event
- Only fires if your government is *not* tribal after migration
- Picks regional name based on whatever custom naming region has the most counties
- Added a third option to diverge culture for Tribal governments without adding the other Traditions
- The "Keep Culture" option is only valid if you don't migrate too far away from the rest of your culture
- Raised the threshold to avoid negative effects for keeping Sub-Roman Military and Taxation policies
- Blocked AI Roman Admin/Sub-Roman Admin from handing out titles to federates like candy
- Halved "Non-Roman Rule" Law Culture Acceptance malus
- "Barbarian Settlement" Dynasty perk makes "De Jure Landing Decisions" group decisions cheaper
- Turned down odds that AI will make an immediate beeline for maximum Aristocratic Laws
- Increased odds that AI will flee overly large confederations
- Syagrius starts with a rivalry with Euric, Gundobad, Alaric, and Gundomar, because they too frequently ally
- Diocletian's Palace is enabled for Greco-Roman cultures, Roman Political Cultures, or Roman Governments
- Culture Hybridization requires a minimum of 10 acceptance to hybridize
- Hegemonies and Empires can no longer use border raids (they are too large to bother with such minimalist wars)
- If Augustulus wins the war with Odoacer, he imprisons all the Federates and all the Federate titles dissolve (instead of just Odoacer's)
- Nepos starts with more troops in February 476
- Got Tributary interactions to revert to base types if not the Chinese, Indian, or Islamic Hegemony
- Added "Legendary Leader" trait to ruler designer for a cost of 160 (It's like Intelligent, but better but also not inheritable)
- Clarified various kingdom and empire landing decisions so people aren't confused when their primary title is titular and they possess a non-titular title

Bug Fixes:
- Fixed Brachilla's contract not being military when the war ends
- Fixed issues with triggers making the Sub-Roman decay events much less rare than intended
- Fixed a bug leading to the accumulation in Noble Families in some instances
- Removed Tradition cooldown application for "A New Culture?" and "Intransigent Martial Practices" events
- Fixed a bug where minorities would not flip during migration culture change events
- Fixed a bug where Federate Government would spread via some edge inheritance cases
- Fixed a bug where the "Non-Roman Rule" Laws set to "Oppressing Romans" when flipping from Sub-Roman Admin to Sub-Roman Dynastic (and vice-versa)
- Fixed a bug leading to out-of-realm capitals during migration wars
- Fixed a bug causing some crashes because of Roman Ministry grant edge cases
- Fixed some HOF titles being destroyed in edge cases
- Fixed the Manichean Church getting destroyed at game start
- Because of how titles interact with mechanics in administrative realms, non-primary, non-noble family titular titles get destroyed upon converting to (Sub-)Roman Administrative government(s)
- Fixed bug leading to Romulus being still landed when loosing the war with Odoacer
- Reduced tendency of AI to engage in stupid migrations
- Tweaked language/heritage drift to not fire quite as often
- Fixed an edge case leading to a lack of NF titles in newly minted Sub-Roman Admin realms
- Fixed some edge cases leading to Tribal rulers having noble family titles
- Ended tributary status when successfully migrating
- Fixed bug causing Slavic culture traditions to be removed early
- Fall of Rome informational event fire failure fixed
- Blocked an edge case where Coronations could spawn Holy Orders before the necessary innovation
- Fix an edge case leading to occasional negative influence at start for some rulers
- Roman Federates are no longer transferable to vassals
- Fixed a bug where Characters turning 25 weren't added to the Senate Situation
- Fixed incorrect gold/treasury from "A New Administration?" Event
- When the Senate is disestablished, all the Senators will be properly removed from the situation
- Fixed council tasks not continuing automatically until full conversion for human rulers
- Blocked Premierships being available when not being a hegemony
- Properly clean up religion traits upon conversion, like "Enarei" or "House of David"
- The "Intransigent Marital Practices" event now will only check to make sure you control at least half of your culture if you have any cultures on the map
- Added a check for completely landless administrative realms so that them implode when reaching this state
- Fixed title creation bugs for the empires of Italy, Spain, and Gaul
- Fixed migration wars not being available in some edge cases
- Fixed issue with migrating vassals not returning their titles to their liege properly

2026-09-05 v0.3.0
-----------

Expand Down
2 changes: 1 addition & 1 deletion WtWSMS.mod
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ tags={
"Religion"
"Total Conversion"
}
version = "0.3.0"
version = "0.3.1"
supported_version="1.19.*"
path = "mod/WtWSMS"
replace_path="history/characters"
Expand Down
2 changes: 1 addition & 1 deletion WtWSMS/common/bookmarks/bookmarks/BP_bookmarks.txt
Original file line number Diff line number Diff line change
Expand Up @@ -265,7 +265,7 @@ bm_476_goths = {
dynasty_splendor_level = 2
type = male
birth = 454.1.1
title = k_ostrogoths
title = d_ostrogoths
government = roman_federate_government
fallback_government = tribal_government
culture = gothic
Expand Down
5 changes: 3 additions & 2 deletions WtWSMS/common/buildings/BP_special_buildings.txt
Original file line number Diff line number Diff line change
Expand Up @@ -376,8 +376,9 @@ diocletian_palace = {

is_enabled = {
OR = {
scope:holder.culture = { has_cultural_pillar = heritage_latin }
scope:holder.culture = { has_cultural_pillar = heritage_byzantine }
scope:holder.culture = { has_cultural_parameter = greco_roman_social_tradition }
scope:holder.culture = { has_cultural_parameter = can_restore_roman_empire }
scope:holder = { government_has_flag = is_a_roman_government }
}
}

Expand Down
60 changes: 46 additions & 14 deletions WtWSMS/common/casus_belli_types/09_mpo_wars_BP_overwrite.txt
Original file line number Diff line number Diff line change
Expand Up @@ -472,6 +472,19 @@ mpo_nomad_invasion_cb = {

##### Changed from Vanilla vvvvv
on_victory = {
##### Changed from Vanilla vvvvv
if = {
limit = {
NOR = {
scope:defender = { government_has_flag = government_is_tribal }
scope:defender = { government_has_flag = government_is_nomadic }
}
}
save_scope_value_as = { name = advanced_gov value = yes }
}
else = { save_scope_value_as = { name = advanced_gov value = no } }
##### Changed from Vanilla ^^^^^

#GoK stops really being GoK
scope:attacker = {
gok_government_change_story_end_effect = yes
Expand Down Expand Up @@ -1183,14 +1196,17 @@ mpo_nomad_invasion_cb = {
}
}
##### Changed from Vanilla vvvvv
custom_description = {
text = may_have_option_to_diverge_culture
scope:attacker = { add_character_flag = nomadic_invader }
if = {
limit = { scope:attacker.culture.culture_head = scope:attacker }
scope:attacker = { add_character_flag = was_culture_head }
if = {
limit = { always = scope:advanced_gov }
custom_description = {
text = may_have_option_to_diverge_culture
scope:attacker = { add_character_flag = nomadic_invader }
if = {
limit = { scope:attacker.culture.culture_head = scope:attacker }
scope:attacker = { add_character_flag = was_culture_head }
}
scope:attacker = { trigger_event = { id = migration_situation_war.0200 days = { 7 14 } } }
}
scope:attacker = { trigger_event = { id = migration_situation_war.0200 days = { 7 14 } } }
}
##### Changed from Vanilla ^^^^^
}
Expand Down Expand Up @@ -1725,6 +1741,19 @@ mpo_nomad_duchy_invasion_cb = {

##### Changed from Vanilla vvvvv
on_victory = {
##### Changed from Vanilla vvvvv
if = {
limit = {
NOR = {
scope:defender = { government_has_flag = government_is_tribal }
scope:defender = { government_has_flag = government_is_nomadic }
}
}
save_scope_value_as = { name = advanced_gov value = yes }
}
else = { save_scope_value_as = { name = advanced_gov value = no } }
##### Changed from Vanilla ^^^^^

#GoK stops really being GoK
scope:attacker = {
gok_government_change_story_end_effect = yes
Expand Down Expand Up @@ -2247,14 +2276,17 @@ mpo_nomad_duchy_invasion_cb = {
}

##### Changed from Vanilla vvvvv
custom_description = {
text = may_have_option_to_diverge_culture
scope:attacker = { add_character_flag = nomadic_invader }
if = {
limit = { scope:attacker.culture.culture_head = scope:attacker }
scope:attacker = { add_character_flag = was_culture_head }
if = {
limit = { always = scope:advanced_gov }
custom_description = {
text = may_have_option_to_diverge_culture
scope:attacker = { add_character_flag = nomadic_invader }
if = {
limit = { scope:attacker.culture.culture_head = scope:attacker }
scope:attacker = { add_character_flag = was_culture_head }
}
scope:attacker = { trigger_event = { id = migration_situation_war.0200 days = { 7 14 } } }
}
scope:attacker = { trigger_event = { id = migration_situation_war.0200 days = { 7 14 } } }
}
##### Changed from Vanilla ^^^^^
}
Expand Down
9 changes: 1 addition & 8 deletions WtWSMS/common/casus_belli_types/BP_border_raids.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ wtwsms_general_border_raid = {
NOT = { this.culture = { has_innovation = innovation_casus_belli } }
NOT = { government_has_flag = government_is_landless_adventurer }
NOT = { government_has_flag = government_is_nomadic }
NOT = { primary_title.tier >= tier_empire }
}

allowed_for_character_display_regardless = {
Expand All @@ -39,14 +40,6 @@ wtwsms_general_border_raid = {
}
#Limited by the size of your own title; no Emperors bashing counties with raids
trigger_if = {
limit = { scope:attacker.primary_title.tier = tier_hegemony }
this.primary_title.tier >= tier_empire
}
trigger_else_if = {
limit = { scope:attacker.primary_title.tier = tier_empire }
this.primary_title.tier >= tier_kingdom
}
trigger_else_if = {
limit = { scope:attacker.primary_title.tier = tier_kingdom }
this.primary_title.tier >= tier_duchy
}
Expand Down
Loading
Loading