From eebbb7d32cd76ab6755ebe5d3fce961f0a050ebd Mon Sep 17 00:00:00 2001 From: Magpie490 Date: Mon, 3 Nov 2025 17:48:51 +0000 Subject: [PATCH] improved --- .../governments/00_government_types.txt | 17 +- .../subject_contracts/contracts/republic.txt | 249 ++++++++++++------ ...pt_celestial_industrial_administration.dds | 3 + ..._celestial_metropolitan_administration.dds | 3 + ...cept_celestial_military_administration.dds | 3 + ..._celestial_protectorate_administration.dds | 3 + ...cept_celestial_standard_administration.dds | 3 + .../icon_industrial_administration.dds | 3 + ...con_industrial_republic_administration.dds | 3 + .../icon_metropolitan_administration.dds | 3 + .../icon_military_administration.dds | 3 + .../icon_military_republic_administration.dds | 3 + .../icon_protectorate_administration.dds | 3 + .../icon_standard_administration.dds | 3 + .../icon_standard_republic_administration.dds | 3 + .../NEOW_religious_decisions_l_english.yml | 16 +- 16 files changed, 222 insertions(+), 99 deletions(-) create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_industrial_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_metropolitan_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_military_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_protectorate_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_standard_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_industrial_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_industrial_republic_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_metropolitan_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_military_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_military_republic_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_protectorate_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_standard_administration.dds create mode 100644 N3OW/gfx/interface/icons/celestial_administration_types/icon_standard_republic_administration.dds diff --git a/N3OW/common/governments/00_government_types.txt b/N3OW/common/governments/00_government_types.txt index c0215529..614d4d20 100644 --- a/N3OW/common/governments/00_government_types.txt +++ b/N3OW/common/governments/00_government_types.txt @@ -58,14 +58,7 @@ republic_government = { replace_gold_cost_by_treasury = yes admin_allows_holding_multiple_primary_tier_titles = yes } - - ai = { - arrange_marriage = no - use_goals = no - use_scripted_guis = no - perform_religious_reformation = no - use_legends = no - } + main_administrative_tier = county vassal_contract_group = republic_vassal @@ -77,6 +70,7 @@ republic_government = { government_is_settled government_uses_domain_limit government_uses_domicile_but_not_adventurer + government_has_house_blocs } mechanic_type = administrative @@ -427,9 +421,9 @@ administrative_government = { royal_court = top_liege domicile_type = estate - main_administrative_tier = duchy - min_appointment_tier = duchy - minimum_provincial_maa_tier = duchy + main_administrative_tier = county + min_appointment_tier = county + minimum_provincial_maa_tier = county fallback = 3 @@ -479,6 +473,7 @@ administrative_government = { government_uses_domicile_but_not_adventurer government_uses_domain_limit government_uses_admin_province_obligations + government_has_house_blocs } mechanic_type = administrative diff --git a/N3OW/common/subject_contracts/contracts/republic.txt b/N3OW/common/subject_contracts/contracts/republic.txt index 47f44a12..db498e1b 100644 --- a/N3OW/common/subject_contracts/contracts/republic.txt +++ b/N3OW/common/subject_contracts/contracts/republic.txt @@ -1,123 +1,198 @@ republic_government_obligations = { + display_mode = radiobutton + is_shown = { + scope:subject.primary_title.tier >= tier_county + } obligation_levels = { - default = { - levies = { - scope:liege = { + republic_administrative_province_standard = { + default = yes + position = { 0 0 } + icon = "gfx/interface/icons/celestial_administration_types/icon_standard_republic_administration.dds" + gui_tags = { civilian } + + ai_liege_desire = { + value = 0 + if = { + limit = { + scope:subject = { is_ai = yes } + } + add = 1 + + # Cautious AI should tend to have a minor bias towards the default if = { limit = { - scope:vassal = { - primary_title.tier >= tier_county - } - culture = { - has_cultural_parameter = republican_vassals_pay_more - } + scope:liege = { ai_has_cautious_personality = yes } } - value = { - add = 0.15 - # Add an extra with the right perk - if = { - limit = { - dynasty ?= { - has_dynasty_perk = fp2_urbanism_legacy_3 - } - } - add = 0.15 + add = 1 + } + } + } + ai_subject_desire = 0 + + score = 0 + color = { 0.7 0.7 0.7 1.0 } + + enable_title_maa = no + + flag = japan_administrative_province_standard + } + republic_administrative_province_trade = { + position = { 1 0 } + icon = "gfx/interface/icons/celestial_administration_types/icon_industrial_republic_administration.dds" + gui_tags = { civilian } + + ai_liege_desire = { + value = 0 + if = { + limit = { + scope:subject = { + is_ai = yes + OR = { + has_trait = education_stewardship + stewardship >= very_high_skill_rating } } } - else = { - value = { - add = 0.1 - # Add an extra with the right perk - if = { - limit = { - dynasty ?= { - has_dynasty_perk = fp2_urbanism_legacy_3 - } - } - add = 0.15 + add = 2 + + # Economical AI wants more of civic vassals + if = { + limit = { + scope:liege = { ai_has_builder_or_pious_builder_personality = yes } + } + add = 1 + } + } + } + ai_subject_desire = 0 + + score = 0 + color = { 0.2 0.2 0.7 1.0 } + + is_valid = { + trigger_if = { + limit = { exists = this } + # Only for direct vassals of the top liege + scope:liege.top_liege = this + } + # There can only be a limited number of industries at a time + custom_tooltip = { + text = japan_administrative_province_trade_amount_desc + OR = { + scope:liege = { + any_vassal = { + count < japan_administrative_province_trade_max_value + vassal_contract_has_flag = japan_administrative_province_trade + } + } + scope:subject = { + OR = { + vassal_contract_has_flag = japan_administrative_province_trade + any_sub_realm_county = { is_coastal_county = yes } # Is a coastal province } } } } } - tax = { - scope:liege = { - if = { - limit = { government_has_flag = government_is_tribal } - value = { - add = 0.05 - # Add an extra with the right perk - if = { - limit = { - dynasty ?= { - has_dynasty_perk = fp2_urbanism_legacy_3 - } + tax_factor = 0.25 + enable_title_maa = no + + subject_modifier = { + development_growth_factor = 0.15 + build_gold_cost = -0.1 + build_speed = -0.2 + } + + flag = admin_ai_is_builder + flag = japan_administrative_province_trade + flag = obligation_high_taxes + } + republic_administrative_province_military = { + position = { 0 1 } + icon = "gfx/interface/icons/celestial_administration_types/icon_military_republic_administration.dds" + gui_tags = { military } + + ai_liege_desire = { + value = 0 + if = { + limit = { + scope:subject = { + is_ai = yes + OR = { + has_trait = education_martial + martial >= very_high_skill_rating + primary_title = { + any_owned_title_maa_regiment = { count >= 3 } + } + any_sub_realm_county = { # Is a border province + any_neighboring_county = { holder.top_liege != scope:subject.top_liege } } - add = 0.15 } } } - else_if = { + add = 2 + + # Preference for vassals along the border + if = { limit = { scope:subject = { - primary_title.tier >= tier_county - } - culture = { - has_cultural_parameter = republican_vassals_pay_more - } - } - value = { - add = 0.3 - # Add an extra with the right perk - - if = { - limit = { - dynasty ?= { - has_dynasty_perk = fp2_urbanism_legacy_3 - } + any_sub_realm_county = { + any_neighboring_county = { holder.top_liege != scope:subject.top_liege } } - add = 0.15 } } + add = 3 } - else = { - value = { - add = 0.2 - # Add an extra with the right perk - - if = { - limit = { - dynasty ?= { - has_dynasty_perk = fp2_urbanism_legacy_3 - } - } - add = 0.15 - } + + # Warlike AI wants more military vassals + if = { + limit = { + scope:liege = { ai_has_warlike_personality = yes } } + add = 1 } } } - contribution_desc = { - first_valid = { - triggered_desc = { - trigger = { scope:liege = { government_has_flag = government_is_tribal } } - desc = "tribal_liege_inefficiency" - } - triggered_desc = { - trigger = { - scope:subject = { - primary_title.tier >= tier_county - } - scope:liege.culture = { - has_cultural_parameter = republican_vassals_pay_more + ai_subject_desire = 0 + + score = 0 + color = { 0.7 0.2 0.2 1.0 } + + is_valid = { + trigger_if = { + limit = { exists = this } + # Only for direct vassals of the top liege + scope:liege.top_liege = this + } + # There can only be a limited number of militaries at a time + custom_tooltip = { + text = japan_administrative_province_military_amount_desc + OR = { + scope:liege = { + any_vassal = { + count < japan_administrative_province_military_max_value + vassal_contract_has_flag = japan_administrative_province_military } } - desc = "republican_vassals_pay_more_parameter" + scope:subject = { vassal_contract_has_flag = japan_administrative_province_military } } } } + + levies_factor = 0.5 + + subject_modifier = { + development_growth_factor = -0.2 + monthly_county_control_growth_factor = 0.1 + fort_level = 1 + defender_advantage = 2 + men_at_arms_maintenance = -0.15 + } + + flag = japan_administrative_province_military + flag = japan_administrative_military_appointment + flag = obligation_high_levies } } } diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_industrial_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_industrial_administration.dds new file mode 100644 index 00000000..20a018f8 --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_industrial_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:806fbd4370af6953a5847cbe1e111194770e960670a936f7991a6d19041af202 +size 16512 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_metropolitan_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_metropolitan_administration.dds new file mode 100644 index 00000000..cd782f4f --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_metropolitan_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:217ec9c54a204b34956598d802bf09bdc0d2b22f33e5643934826dd30edc090a +size 16512 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_military_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_military_administration.dds new file mode 100644 index 00000000..fc3b9827 --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_military_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56b063fb09246e49686cc8b24c909c3c2e86a939b60eb4c9eeeb930056be68fc +size 16512 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_protectorate_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_protectorate_administration.dds new file mode 100644 index 00000000..dff4aee8 --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_protectorate_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:965427ef65ca6a13589b6a325354806401816e9776a4b10c3ee8e819817bb8d4 +size 16512 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_standard_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_standard_administration.dds new file mode 100644 index 00000000..91ea7e83 --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_game_concept_celestial_standard_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbc411470613d364c38ed1e09b98dabcac219e5c4e0422616d888fa6f2062330 +size 16512 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_industrial_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_industrial_administration.dds new file mode 100644 index 00000000..efc36f65 --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_industrial_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26f485bc5a013191e49a00a6debb9da9d58f18a1fa09c6456a26b5cef73e350c +size 360128 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_industrial_republic_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_industrial_republic_administration.dds new file mode 100644 index 00000000..3ac4bc10 --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_industrial_republic_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc826e4306dc14be970bcda65d70905dad5e7a05800f7f38fa6ac83251f0c47c +size 360128 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_metropolitan_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_metropolitan_administration.dds new file mode 100644 index 00000000..8b30010f --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_metropolitan_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cdb0140a9d0242956019407fe2e221f8eef6a2f9c560ad65adc015a3296390a +size 360128 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_military_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_military_administration.dds new file mode 100644 index 00000000..cfbdd1bd --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_military_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16e2cffae95db5f7848933cd006dfbc7c17ff1dcb195a4056ea4311ad592ca2c +size 360128 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_military_republic_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_military_republic_administration.dds new file mode 100644 index 00000000..40cb066a --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_military_republic_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98e616a298ed4c9a6885af311955e4dbd9fbd21291601d55981d62480c345cdd +size 360128 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_protectorate_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_protectorate_administration.dds new file mode 100644 index 00000000..20afad8e --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_protectorate_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0c1c68ee89b5427bdc0f64581d186c8115f78dbd111ce0989de808621b2ddcb +size 360128 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_standard_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_standard_administration.dds new file mode 100644 index 00000000..3c05182d --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_standard_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34ceffad9a8a515276c747622905174b6335c1b98b2d9e3af66c2be86229ceec +size 360128 diff --git a/N3OW/gfx/interface/icons/celestial_administration_types/icon_standard_republic_administration.dds b/N3OW/gfx/interface/icons/celestial_administration_types/icon_standard_republic_administration.dds new file mode 100644 index 00000000..695d034c --- /dev/null +++ b/N3OW/gfx/interface/icons/celestial_administration_types/icon_standard_republic_administration.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37512293d1074787b6bf741e132edd29b30dc49bd14c4fa36578ba7dd8dd5080 +size 360128 diff --git a/N3OW/localization/english/replace/event_localization/religion_events/NEOW_religious_decisions_l_english.yml b/N3OW/localization/english/replace/event_localization/religion_events/NEOW_religious_decisions_l_english.yml index 45187305..fcdf7376 100644 --- a/N3OW/localization/english/replace/event_localization/religion_events/NEOW_religious_decisions_l_english.yml +++ b/N3OW/localization/english/replace/event_localization/religion_events/NEOW_religious_decisions_l_english.yml @@ -10,4 +10,18 @@ NEOW_religious_decision.0001.nautiluses:0 "Nautiluses, Masters of the Seas!" NEOW_religious_decision.0001.aerosaurs:0 "Aerosaurs, Catchers of Stars!" NEOW_religious_decision.0001.optout:0 "$religious_decision.0101.flavor$" - NEOW_religious_decision.0001.flavor:0 "$religious_decision.0101.flavor$" \ No newline at end of file + NEOW_religious_decision.0001.flavor:0 "$religious_decision.0101.flavor$" + republic_administrative_province_standard: "@government_type_republic! Standard Administration" + republic_administrative_province_standard_short: "Standard" + republic_administrative_province_standard_text_icon: "@government_type_republic!" + republic_administrative_province_standard_desc: "#low A civil type that attends to the everyday needs of the government and the local inhabitants#!" + republic_administrative_province_trade: "@government_type_republic! Industrial Administration" + republic_administrative_province_trade_short: "Industrial" + republic_administrative_province_trade_text_icon: "@government_type_republic!" + republic_administrative_province_trade_desc: "#low A civil administration that focuses on maritime commerce and long-term development.#!" + republic_administrative_province_trade_amount_desc: "$republic_administrative_province_trade_short$ limit reached" + republic_administrative_province_military: "@government_type_republic! Military Administration" + republic_administrative_province_military_short: "Military" + republic_administrative_province_military_text_icon: "@government_type_republic!" + republic_administrative_province_military_desc: "#low A military administration focused on fortification and recruitment. Providing the realm with the means of protecting itself, or expanding its borders when necessary.#!" + republic_administrative_province_military_amount_desc: "$republic_administrative_province_military_short$ limit reached" \ No newline at end of file