• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Europa Universalis IV - Development Diary 21st of March 2023 - Balance Changes and Usermodding Additions

Greetings! Today we will take a final look at some of the balance changes and the additions for usermodding coming with 1.35. So without further ado let’s get started!

First thing to present are the changes to the Age Abilities. As some Great Powers have received changes to their power level, it was only fitting to adjust their Age Abilities too. The following balance changes have been made:

  • “Guns of Urban” has been renamed to “Ottoman Siegecraft” and now gives +1 Leader Siege instead of +33% Siege Ability
  • “Spanish Tercios” has been replaced by “Spanish Field Marshals” and now gives +1 Leader Land Shock instead of -30% Shock Damage Received
  • “Mughal Artillery” has been changed from -50% Artillery Cost to +15% Artillery Combat Ability
  • “Persian Reinforcement” has been replaced by “Persian Enlightenment” and now gives -20% Development Cost instead of -30% Reinforce cost
  • “French Musketeers” has been replaced by “French Absolutism” and now gives +30% Max Effect of Absolutism instead of +20% Land Fire Damage
  • “Dutch Officials” has been replaced by “Dutch Commercialization” and now gives +33% Trade Steering instead of -0.2 Yearly Corruption
  • “British Fleet” now gives +1 Max Admiral Fire instead of -33% Naval Maintenance Modifier
  • “Russian Empire” now gives -10% Minimum Autonomy in Territories instead of +33% Governing Capacity Modifier
  • “Austrian Diplomacy” has been replaced by “Austrian Tenacity” and now gives -20% Morale Damage Received
Some other noteworthy balance changes:
  • Ramparts can now only be placed on terrain which is seen as “Flatland” in the game. This means it is only possible to build ramparts on farmlands, grasslands, steppes, savannahs, drylands, (coastal) deserts and coastlines.
    Note: we are aware that this change is a bit against the nature of what ramparts actually are. The reason behind this change is that mountains with ramparts can lead to oppressive situations where neither side wants to commit to an attack due to the threat which are -3 on rolls.
  • The cooldown for changing rivals has been reduced from 25 years to 5 years
  • Iberian Trade Goods have been adjusted
    iberian_tradegoods.png

    Related to this, the event "A new Spanish Capital" now changes the trade good of Madrid to glass if you decide to make it to your new capital.
  • Celestial Reforms now cost 80 Mandate instead of 70
  • The mandate growth has been adjusted:
    • Every point of stability gives now +0.4 instead of +0.24 Yearly Mandate
    • Every state with prosperity now gives +0.04 instead of +0.03 Yearly Mandate
    • Every 100 development with 100% devastation now gives -12.0 instead of -10.0 Yearly Mandate, scaling with degree of devastation
    • Every 5 loans now gives -0.6 Yearly Mandate instead of -0.36
  • Piety has seen some changes in order to have an easier time reaching Mysticism while having it a bit harder to reach Legalism
    • Piety always resets to 0 when a new ruler ascends
    • Piety no longer gets increased or decreased when you declare a war
    • All decisions but “Denouncement of Secret Practices” now push you into the piety direction you are directing for. So this means, “Enforce Religious Unity” now gives -15 Piety if you are below 0. Otherwise it gives +15 Piety. Denouncement of Secret Practices gives +10 Piety.
    • Added a new privilege for the Clergy which gives -0.1 Monthly Piety. It cannot be combined with “Clerical Ministers” which gives +0.1 Monthly Piety.
    • Mysticism now gives -10% Idea Cost instead of 20% Fort Defense
  • The Special Units have seen some rebalancing:
    • Janissaries:
      • Start now with 10% of their Regiment strength instead of 100%
      • Start now with 10% of their Morale instead of 100%
      • Cost now 3 Military Power instead of 10
      • Janissaries have now +50% Assault Fort Ability
      • Janissaries have now 50% Army Drill Gain Modifier instead of 100%
    • Cawa:
      • Start now with 50% of their Regiment strength instead of 10%
      • Start now with 10% of their Morale instead of 50%
      • Cost now 2 Military Power instead of 5
      • Cawa have now -0.05 Shock Damage Received instead of -15%
      • Cawa have now -50% Land Attrition instead of -25%
      • Cawa have now +50% Reinforce Speed instead of -25%
      • The reinforce cost of Cawas has been removed
    • Streltsy:
      • Are no longer spawned through the government abilities
      • They are now recruited like regular troops
      • Stretsy are available for Russian Principalities, Veche Republics, Tsardoms and Great Veche Republics. You can recruit 10% of your force limit as streltsy as a Principality / Veche Republic. This is further increased by another 10% if you upgrade your government reform by forming Russia.
      • The “Raise Streltsy” government ability has been changed to “Equip Streltsy” which decreases War Exhaustion by 2, grants you a low amount of yearly manpower (5% as Principality, 10% as Tsardom) and increases the Infantry Combat Ability of your Streltsy by 5% / 10% for 10 years.
      • Streltsy have now -10% Fire Damage Received additionally to their Fire Damage dealt
      • Reliance on Streltsy no longer increases stability cost
    • Cossacks:
      • Reliance on Cossacks no longer increases stability cost
      • Cossacks have now +15% Shock Damage instead of 10%
  • Blockaded provinces now gain -100% Trade Power Modifier
  • Local Base Tax now has some additional province modifiers which give base tax a bit of an identity. Every point of base tax has the following effects:
    • -1% Local Construction Time
    • -2% Local Recruitment Time
    • +2% Institution Spread
    • -1% Local Great Project Upgrade Time
  • Pashas have seen some changes
pashas.png
  • Note: Local Tolerance of Heathens makes the province behave as if you would have the amount of Tolerance (or less if your Max Tolerance is below the Local Tolerance value). So in our example here: the Ottomans have +1.5 Tolerance of Heathens while a Max Tolerance of Heathens of 3. A province which is in the hands of the Pasha behaves as if the Ottomans have 3 Tolerance of Heathens due to the +10 Local Tolerance but only a +3 Max Tolerance.
    You might also notice that it gives Monthly Autonomy Change while also increasing the Minimum Local Autonomy. This is intended as it raises the base Autonomy, but makes it easier for the province to reach this base.
  • The negative effects of devastation (with the exception of local movement speed and supply limit modifiers) have been doubled
  • Inflation now increase Missionary Maintenance, Colony Maintenance, Great Project Upgrade Cost, Embracement Cost, Colonial Subject Upgrade/Change Cost and State Maintenance by 1% for each 1% of Inflation
  • Call for Peace now increases War Exhaustion with a rate of 0.005 instead of 0.008
  • Expand Infrastructure now decreases local development cost by 15% instead of 25%
Last week we presented the toggle function of Slack Recruiting Standards. We did some number adjustment to it so it provides 100% Manpower Recovery Speed instead of 50%.

This is by far not the entire list of changes to game balance, but the most important parts should now be covered. Before we continue, I would like to showcase you three new map modes which we will add with 1.35 too!

Razing Map Mode:
razing_mapmode.png

Scorched Earth Map Mode:
scorched_earth_mapmode.png

Expanded Infrastructure Map Mode:
expanded_infrastructure_mapmode.png

And last but not least, special state effects such as Pashas or Holy Orders are now visible in the Metropolitan map mode:
better_metropolitan.png

Let’s move on to the additions for modders. One of the most frequent questions were about the moddability of the government mechanics. Fortunately enough, the programmers have created a very handy readme.txt file which goes into detail of what is possible with the government mechanics:
Code:
#<government_mechanic_id> = { #The ID of the government mechanic which is used by the government_abilities in the gov reform files
# alert_icon_gfx = <icon> #defines which GFX icon strip the alert icon to use for this mechanic is in
# alert_icon_index = <int> #the index of the icon for this mechanic in the above strip
# available = <trigger> #criteria for the mechanic to be available
#
# powers = {} #1..n of
#  <government_power_type_id> = {
#   gui = <string> #link to the gui that will be used to display this power. By default, it will be government_shared_power if it's not a power only associated with one action, or if it is a unique power for one interaction, this will be ignored and the bar from the interaction's gui will be used. New versions of this will need to contain the same elements so they can be filled in.
#   min = <int> #min power value - usually just leave this at 0.
#   max = <int> #Defines how much progress you can save up for the progress bar.
#   default = <int> #default power when resetting, usually leave as 0
#   reset_on_new_ruler = yes/no #Defines if a new ruler resets the progress bar. It does so if set to yes, otherwise the progress remains saved even if you get a new ruler.
#   base_monthly_growth = <float> #Defines the base amount of progress growing. At default, it is 0.
#   development_scaled_monthly_growth = <float> #defines the amount of monthly growth you get from development scaled by Development/COUNTRY_DEVELOPMENT_SCALE (i.e. was in country_development)
#   monarch_power = <adm/mil/dip> #specify if the power also gains from the ruler's skill value. Don't specify if you don't want this feature
#   scaled_modifier = <conditional modifier> #optional country modifier that scales with the percentage of power. You can have n of them in the power.
#   reverse_scaled_modifier = <conditional modifier> #optional country modifier that scales with ( 1 - percentage of power ). You can have n of them in the power.
#   on_max_reached = <effect> #effect when you get to full power
#   on_min_reached = <effect> #effect when you get to the least available power
#   is_good = <yes/no> #is this power....desirable?
#  }
#
# Modifiers will be generated for the power types like this:
#  monthly_<government_power_type_id> = <float> #a monthly amount of this power given to the country
#  <government_power_type_id>_gain_modifier = <float> #Modifies the gain from the add_government_power effect
# for each of these, you'll need to add a string for the generated modifier id and an icon.
#
# There are effects for all government powers:
#  add_government_power = { mechanic_type = <government_mechanic_id> power_type = <government_power_type_id> value = <float> } #adds government power
#  add_government_power_scaled_to_seats = { mechanic_type = <government_mechanic_id> power_type = <government_power_type_id> value = <float> } #adds government power, scaled to the number of seats in parliament
#  set_government_power = { mechanic_type = <government_mechanic_id> power_type = <government_power_type_id> value = <float> } #sets government power
#  freeze_government_power = { mechanic_type = <government_mechanic_id> power_type = <government_power_type_id> } #government power no longer changes
#  unfreeze_government_power = { mechanic_type = <government_mechanic_id> power_type = <government_power_type_id> } #government power can change again
#
# ...and triggers:
#  has_government_power = { mechanic_type = <government_mechanic_id> power_type = <government_power_type_id> value = <float> } #tests if government power is at least value
#  government_power_frozen = { mechanic_type = <government_mechanic_id> power_type = <government_power_type_id> } #tests if government power is frozen
#
# interactions = {} #1..n of
#  <government_power_interaction_id> = {
#   gui = <string> #link to the gui that will be used to display this power. By default, it will be government_interaction_type if not specified. New versions of this will need to contain the same elements so they can be filled in.
#   icon = <gfx icon name> #Defines how the icon of the button should look like.
#   cost_type = <progress_type_id> # which progress type we're spending (if any)
#   cost = <int> #Defines how much progress you need to press the button. If pressed, it drains <int> amount of progress from the progress bar.
#   trigger = { <country triggers> } #Defines the triggers needed for the button to be used. At default, it is empty which means there are no triggers greying the button out
#   effect = { <country effects> } #Defines the effects happening when you press the button
#   cooldown_years = <int> #Defines the cooldown years for this one button.
#   cooldown_token = <any token> #defines the cooldown to use. If not specified, it will use the id of the action, so the cooldown will be unique to the action. This is useful if actions are to be mutually exclusive
#   cooldown_desc = <string key> #defines the string to use for the name of the cooldown. If not specified, it will use the name of the interaction.
#   ai_chance = <mtth> #mean time to happen, used to test to see how interested the AI is in doing this interaction
#  }
# }
# in theory, you can have as many interactions and powers as you like, but you'll need to make sure the UI script can handle them.
You can then assign the government mechanic in the reform like this:
Code:
example_gov_reform = {
    icon = "mercenaries"
    allow_normal_conversion = yes
    potential = {}
    trigger = {}
    modifiers = {
        diplomatic_reputation = 1
    }
    government_abilities = {
        government_ability_1
        government_ability_2
        government_ability_3
        #You can have n government abilities in the same reform. UI can be a bit clunky though as you will have to rely on a scrollbar
    }
    ai = {
        factor = 1
    }
}
Here are a few example government mechanics:
Code:
tribal_federation_mechanic = {
    alert_icon_gfx = GFX_alerticons_government_mechanics
    alert_icon_index = 5
    available = {
        has_dlc = "Cradle of Civilization"
    }

    powers = {
        tribal_allegiance = {
            max = 100
            reset_on_new_ruler = no
            base_monthly_growth = 0
            development_scaled_monthly_growth = -0.25
           
            scaled_modifier = {
                modifier = {
                    manpower_recovery_speed = 0.33
                    global_unrest = -3
                }
            }
        }
    }
   
    interactions = {
        enlist_general = {
            icon = GFX_enlist_general_button
            cost_type = tribal_allegiance
            cost = 30
            trigger = {
            }
            effect = {
                create_general = {
                    tradition = 40
                }
            }
            cooldown_years = 0
            ai_chance = {
                factor = 10
                modifier = {
                    factor = 100
                    is_in_important_war = yes
                    has_government_power = {
                        mechanic_type = tribal_federation_mechanic
                        power_type = tribal_allegiance
                        value = 95
                    }
                }
                modifier = {
                    factor = 20
                    not = {
                        has_leaders = {
                            value = 1
                            type = general
                            include_monarch = no
                            include_heir = no
                        }
                    }
                }
                modifier = {
                    factor = 20
                    not = {
                        has_leaders = {
                            value = 2
                            type = general
                            include_monarch = no
                            include_heir = no
                        }
                    }
                }
                modifier = {
                    factor = 20
                    not = {
                        has_leader_with = {
                            general = yes
                            total_pips = 6
                        }
                    }
                }
                modifier = {
                    factor = 0.1
                    has_leader_with = {
                        general = yes
                        total_pips = 11
                    }
                }
                modifier = {
                    factor = 0
                    is_at_war = no
                }
            }
        }
       
        train_horsemanship = {
            icon = GFX_train_horsemanship_button
            cost_type = tribal_allegiance
            cost = 30
            trigger = {
            }
            effect = {
                add_country_modifier = {
                    name = train_horsemanship_modifier
                    duration = 3650
                }
            }
            cooldown_years = 10
            ai_chance = {
                factor = 100
                modifier = {
                    factor = 100
                    is_in_important_war = yes
                    has_government_power = {
                        mechanic_type = tribal_federation_mechanic
                        power_type = tribal_allegiance
                        value = 95
                    }
                }
                modifier = {
                    factor = 0
                    not = { cavalry_fraction = 0.1 }
                }
                modifier = {
                    factor = 0.1
                    not = { cavalry_fraction = 0.2 }
                }
                modifier = {
                    factor = 0
                    is_at_war = no
                }
                modifier = {
                    factor = 0
                    NOT = { manpower_percentage = 0.8 }
                }
            }
        }
       
        conscript_from_tribes = {
            icon = GFX_conscript_from_tribes_button
            cost_type = tribal_allegiance
            cost = 30
            trigger = {
                capital_scope = {
                    controller = {
                        tag = ROOT
                    }
                    has_siege = no
                }
            }
            effect = {
                capital_scope = {
                    add_unit_construction = {
                        type = cavalry
                        amount = 6
                        speed = 0.25
                        cost = 0
                    }
                }
            }
            cooldown_years = 0
            ai_chance = {
                factor = 0    #Just no
            }
        }
    }
}
Code:
mamluk_mechanic = {
    alert_icon_gfx = GFX_alerticons_government_mechanics
    alert_icon_index = 3
    available = {
        has_dlc = "Cradle of Civilization"
    }
   
    powers = {
        mamluk_adm_power = {
            max = 150
            monarch_power = ADM
            reset_on_new_ruler = yes
            base_monthly_growth = 0.25
        }
        mamluk_dip_power = {
            max = 150
            monarch_power = DIP
            reset_on_new_ruler = yes
            base_monthly_growth = 0.25
        }
        mamluk_mil_power = {
            max = 150
            monarch_power = MIL
            reset_on_new_ruler = yes
            base_monthly_growth = 0.25
        }
    }
   
    interactions = {
        promote_culture_in_government = {
            icon = GFX_promote_culture_in_government_button
            cost_type = mamluk_adm_power
            cost = 100
            trigger = {
            }
            effect = {
                add_country_modifier = {
                    name = promote_culture_in_government_modifier
                    duration = 365
                }
            }
            cooldown_years = 1
            ai_chance = {
                factor = 100    #Never a reason to say no to this either
            }
        }
        sell_off_culture_slaves = {
            icon = GFX_sell_off_culture_slaves_button
            cost_type = mamluk_dip_power
            cost = 100
            trigger = {
                custom_trigger_tooltip = {
                    tooltip = ANY_OWNED_PROVINCE_OF_RULER_CULTURE
                    any_owned_province = {
                        owner = {
                            ruler_culture = PREV
                        }
                    }
                }
            }
            effect = {
                add_owned_provinces_development_ducats = {
                    custom_tooltip = FROM_PROVINCES_OF_RULER_CULTURE
                    trigger = {
                        owner = {
                            ruler_culture = PREV
                        }
                    }
                    multiplier = 2
                    age_multiplier = 1
                }
            }
            cooldown_years = 1
            ai_chance = {
                factor = 100    #There is never a reason to say no to money
                modifier = {
                    factor = 20
                    num_of_loans = 1
                }
                modifier = {
                    factor = 20
                    num_of_loans = 3
                }
                modifier = {
                    factor = 20
                    num_of_loans = 5
                }
                modifier = {
                    factor = 20
                    num_of_loans = 7
                }
            }
        }
        recruit_from_culture_lands = {
            icon = GFX_recruit_from_culture_lands_button
            cost_type = mamluk_mil_power
            cost = 100
            trigger = {
                custom_trigger_tooltip = {
                    tooltip = ANY_OWNED_PROVINCE_OF_RULER_CULTURE
                    any_owned_province = {
                        owner = {
                            ruler_culture = PREV
                        }
                    }
                }
            }
            effect = {
                add_owned_provinces_development_manpower = {
                    custom_tooltip = FROM_PROVINCES_OF_RULER_CULTURE
                    trigger = {
                        owner = {
                            ruler_culture = PREV
                        }
                    }
                    multiplier = 0.05
                    age_multiplier = 1
                }
            }
            cooldown_years = 1
            ai_chance = {
                factor = 100    #Say yes to manpower
                modifier = {
                    factor = 20
                    not = { manpower_percentage = 0.3 }
                }
                modifier = {
                    factor = 20
                    not = { manpower_percentage = 0.2 }
                }
                modifier = {
                    factor = 20
                    not = { manpower_percentage = 0.1 }
                }
            }
        }
    }
}
Code:
iqta_mechanic = {
    alert_icon_gfx = GFX_alerticons_government_mechanics
    alert_icon_index = 2
    available = {
        has_dlc = "Cradle of Civilization"
    }
   
    interactions = {
        efficient_tax_farming = {
            icon = GFX_efficient_tax_farming_button
            trigger = {
            }
            effect = {
                add_country_modifier = {
                    name = efficient_tax_farming_modifier
                    duration = 7300
                }
                add_subjects_development_ducats = {
                    multiplier = 2
                }
            }
            cooldown_years = 20
            cooldown_token = iqta_mechanic
            cooldown_desc = AN_IQTA_TAXATION_POLICY
            ai_chance = {
                factor = 20
                modifier = {
                    factor = 0
                    NOT = { num_of_loans = 1 }
                }
                modifier = {
                    factor = 0.5
                    is_in_deficit = no
                }
                modifier = {
                    factor = 1.25
                    has_any_disaster = yes
                }
                modifier = {
                    factor = 1.5
                    num_of_loans = 2
                    is_in_deficit = yes
                }
                modifier = {
                    factor = 20
                    num_of_loans = 1
                }
                modifier = {
                    factor = 100
                    num_of_loans = 3
                }
                modifier = {
                    factor = 100
                    num_of_loans = 5
                }
                modifier = {
                    factor = 100
                    num_of_loans = 7
                }

            }
        }
        land_acquisition = {
            icon = GFX_land_acquisition_button
            trigger = {
            }
            effect = {
                add_country_modifier = {
                    name = land_acquisition_modifier
                    duration = 7300
                }
                add_subjects_development_manpower = {
                    multiplier = 0.05
                }
            }
            cooldown_years = 20
            cooldown_token = iqta_mechanic
            cooldown_desc = AN_IQTA_TAXATION_POLICY
            ai_chance = {
                factor = 20
                modifier = {
                    factor = 20
                    not = { manpower_percentage = 0.3 }
                }
                modifier = {
                    factor = 20
                    not = { manpower_percentage = 0.2 }
                }
                modifier = {
                    factor = 20
                    not = { manpower_percentage = 0.1 }
                }
                modifier = {
                    factor = 100
                    is_in_important_war = yes
                }
                modifier = {
                    factor = 30
                    is_at_war = yes
                    is_in_deficit = no
                }
                modifier = {
                    factor = 0
                    is_at_war = no
                    OR = {
                        NOT = {
                            any_neighbor_country = {
                                NOT = { truce_with = ROOT }
                            }
                        }
                        manpower_percentage = 0.9
                    }
                }
            }
        }
        lenient_taxation = {
            icon = GFX_lenient_taxation_button
            trigger = {
            }
            effect = {
                add_country_modifier = {
                    name = lenient_taxation_modifier
                    duration = 7300
                }
            }
            cooldown_years = 20
            cooldown_token = iqta_mechanic
            cooldown_desc = AN_IQTA_TAXATION_POLICY
            ai_chance = {
                factor = 10
                modifier = {
                    factor = 0
                    NOT = {
                        any_subject_country = {
                            liberty_desire = 40
                        }
                    }
                }
                modifier = {
                    factor = 20
                    any_subject_country = {
                        liberty_desire = 45
                    }
                }
                modifier = {
                    factor = 50
                    any_subject_country = {
                        liberty_desire = 50
                    }
                }
                modifier = {
                    factor = 100
                    any_subject_country = {
                        liberty_desire = 60
                    }
                }
            }
        }
    }
}
But that is by far not everything! Here are a few of my personal highlights as a content designer which get added for 1.35:
  • Guibounds command for the console, allowing you to debug the UI
    guibounds.png

  • Change_country_color = { country = <country scope> / color = { r g b } } If the former argument is used then the country will adapt the color of the specified country scope. If the latter is used then a defined color will be used instead. Of course it comes with a restore_country_color = yes
  • Decisions (and parliament issues) can be recolored. Here is an example of the decisions activated by estate privileges:
    recolored_decisions.png

  • Bunch of new on_actions such as on_parliament_debate_reset, on_parliament_seat_given, on_parliament_seat_lost, on_hre_reform_passed, on_mandate_reform_passed, on_slacken_start, on_slacken_stop, on_colony_finished, on_advisor_hired, on_adm_advisor_hired, on_dip_advisor_hired, on_mil_advisor_hired, on_core, on_tech_taken, on_adm_tech_taken, on_dip_tech_taken, on_mil_tech_taken, on_barrage, on_naval_barrage, on_scorch_earth, on_war_ended, on_alliance_broken, on_royal_marriage_broken, on_alliance_created and on_royal_marriage
  • Bunch of new static modifiers such as under_governing_capacity_modifier, mandate, imperial_authority_emperor, imperial_authority_member, positive_imperial_authority_emperor, positive_imperial_authority_member, negative_imperial_authority_emperor, negative_imperial_authority_member, average_overseas_subject_liberty_desire, reverse_average_overseas_subject_liberty_desire, average_subject_liberty_desire, reverse_average_subject_liberty_desire, average_global_autonomy and reverse_average_global_autonomy
  • Potentials (conditions which hide this object if they are not fulfilled) and trigger/allowed (conditions which are required to interact with this object) for Decrees, Fervor aspects, Golden Bulls. Personal Deities and Trading Policies
  • The amount of soldiers killed / lost are now automatically exported to the variables “land_units_killed”, “land_units_lost”, “naval_units_killed” and “naval_units_lost”. Note: they do not count together into a variable of the total amount of units you have killed over the campaign. Every battle sets the variable to the new value.
  • Added “effect” and “removed_effect” for the following mechanics:
    • Diwan mechanic (so if you assimilate a culture group the effect fires, if you lose the assimilation bonus, the removed_effect fires)
    • Naval Doctrines
    • Personal Deities
    • Policies
    • Decrees
  • Additions to modding Parliaments:
    • Issues have now the following arguments:
      • backing_percentage = <int> #Determines how many seats will back up the issue. backing_percentage = 100 would mean all seats would back it up, backing_percentage = 0 means no seat backs it up. If undefined then the game uses the PARLIAMENT_BACKING_PERCENTAGE from Defines
      • effect_duration = <int> #Determines how long the effects of a passed debate last, and also the amount of time before you can debate the next issue after passing one. If undefined then the game uses the PARLIAMENT_EFFECT_DURATION from the Defines.
      • debate_duration = <int> #Determines how long the debate will go before it gets into the phase where it can be randomly closed. If undefined then the game uses the PARLIAMENT_DEBATE_DURATION from the Defines.
      • chance_of_decision = <float> #Determines the chance debate is ended after debate_duration / PARLIAMENT_DEBATE_DURATION. Defaults to PARLIAMENT_CHANCE_OF_DECISION
    • Bribes have now a chance = {} argument which defines how likely a bribe is to appear
  • New attributes for Mercenaries
    • counts_towards_force_limit = no (a merc company with this trait would not occupy any force limit)
    • max_size = <int> #Limits the size of this mercenary company. If a merc company would be larger than the max size allowed then every additional "would be" regiment will be transferred to the company's manpower pool. If not set or if "-1" then it is the default setting.
    • min_size = <int> #Limits the minimum size of this mercenary company. So if you hire a merc company it will ALWAYS have at least as many regiments as min_size demands it to be. If it's bigger than "max_size" then it should throw an error in the error log and be deactivated. If not set or if "-1" then it is the default setting.
    • no_additional_manpower_from_max_size = yes #A flag for the merc company which disallows the behavior that every single additional "would be" regiment over max_size will be turned into company manpower. "no" is the default.
    • manpower_pool = <double> #Defines how large the manpower pool of the merc company is. Merc Manpower modifier use this as the base to modify. At default, it is -1 which means it just uses the normal way of calculating the available manpower for the merc company
    • So in script a merc company could look like this then:
    • Code:
      merc__local_free_company = {
           regiments_per_development = 0.025
           cavalry_weight = 0.1
           artillery_weight = 0.1
           cavalry_cap = 2
           cost_modifier = 0.75
           trigger = {
               total_development = 150
               is_allowed_to_recruit_mercenaries = yes
           }
           # No home province means local mercenary company
           max_size = 12
           min_size = 4
           no_additional_manpower_from_max_size = yes
           manpower_pool = 50
      }
      This free company would have 4 regiments minimum and cannot have more than 12 regiments max. Every single regiment which would be part of this company gets lost as "no_additional_manpower_from_max_size = yes" is set. It also has a manpower pool of exactly 50k troops as "manpower_pool = 50" is defined.
  • And last but not least: new modifiers. This is the complete list of ALL modifiers in the game. Be warned though: unit, province and country modifiers have been put all in the same place. This list serves first and foremost as a source of information that a certain modifier exists in the first place.

    [*]
    Code:
    #test_modifier = {
    #    can_not_build_colonies = yes
    #    can_not_build_buildings = yes
    #    can_not_build_missionaries = yes
    #    can_not_declare_war = yes
    #    can_not_send_merchants = yes
    #    capped_by_forcelimit = yes
    #    can_claim_states = yes
    #    free_concentrate_development = yes
    #    build_cost = -0.1
    #    local_build_cost = -0.1
    #    build_time = -0.1
    #    local_build_time = -0.1
    #    local_unrest = -1
    #    global_unrest = -1
    #    development_cost = -0.1
    #    development_cost_modifier = -0.1
    #    local_development_cost = -0.1
    #    local_development_cost_modifier = -0.1
    #    trade_efficiency = 0.1
    #    province_trade_power_value = 0.1
    #    province_trade_power_modifier = 0.1
    #    global_prov_trade_power_modifier = 0.1
    #    production_efficiency = 0.1
    #    local_production_efficiency = 0.1
    #    trade_goods_size = 1
    #    trade_goods_size_modifier = 0.1
    #    raze_power_gain = 0.1
    #    monarch_power_tribute = 1
    #    tributary_conversion_cost_modifier = -1
    #    expand_infrastructure_cost_modifier = -1
    #    max_absolutism_effect = 0.1
    #    centralize_state_cost = -0.1
    #    local_centralize_state_cost = -0.1
    #    land_morale_constant = 1
    #    naval_morale_constant = 1
    #    max_general_shock = 1
    #    max_general_fire = 1
    #    max_general_maneuver = 1
    #    max_general_siege = 1
    #    max_admiral_shock = 1
    #    max_admiral_fire = 1
    #    max_admiral_maneuver = 1
    #    max_admiral_siege = 1
    #    coast_raid_range = 1
    #    development_cost_in_primary_culture = -0.1
    #    reduced_trade_penalty_on_non_main_tradenode = -0.1
    #    colony_cost_modifier = -0.1
    #    local_colony_cost_modifier = -0.1
    #    spy_action_cost_modifier = -0.1
    #    placed_merchant_power_modifier = 1
    #    reduced_liberty_desire_on_other_continent = -1
    #    overextension_impact_modifier = -0.1
    #    artillery_level_modifier = 1
    #    local_tolerance_of_heretics = 1
    #    local_tolerance_of_heathens = 1
    #    tax_income = 1
    #    global_tax_income = 1
    #    local_tax_modifier = 0.1
    #    global_tax_modifier = 0.1
    #    stability_cost_modifier = -0.1
    #    inflation_reduction = 0.1
    #    inflation_reduction_local = 0.1
    #    interest = -0.1
    #    colonists = 1
    #    missionaries = 1
    #    merchants = 1
    #    diplomats = 1
    #    global_trade_power = 0.1
    #    global_foreign_trade_power = 0.1
    #    global_own_trade_power = 0.1
    #    colonist_placement_chance = 0.1
    #    local_colonist_placement_chance = 0.1
    #    global_missionary_strength = 0.01
    #    local_missionary_strength = 0.01
    #    land_morale = 0.1
    #    naval_morale = 0.1
    #    local_manpower = 1
    #    global_manpower = 1
    #    local_manpower_modifier = 0.1
    #    global_manpower_modifier = 0.1
    #    manpower_recovery_speed = 0.1
    #    morale_damage_received = -0.1
    #    morale_damage = 0.1
    #    military_tactics = 1
    #    local_sailors = 1
    #    global_sailors = 1
    #    local_sailors_modifier = 0.1
    #    global_sailors_modifier = 0.1
    #    sailors_recovery_speed = 0.1
    #    land_forcelimit = 1
    #    naval_forcelimit = 1
    #    overlord_naval_forcelimit = 1
    #    overlord_naval_forcelimit_modifier = 0.1
    #    land_forcelimit_modifier = 0.1
    #    naval_forcelimit_modifier = 0.1
    #    land_maintenance_modifier = -0.1
    #    naval_maintenance_modifier = -0.1
    #    merc_maintenance_modifier = -0.1
    #    fort_maintenance_modifier = -0.1
    #    local_fort_maintenance_modifier = -0.1
    #    mercenary_cost = -0.1
    #    infantry_cost = -0.1
    #    cavalry_cost = -0.1
    #    artillery_cost = -0.1
    #    heavy_ship_cost = -0.1
    #    light_ship_cost = -0.1
    #    galley_cost = -0.1
    #    transport_cost = -0.1
    #    infantry_power = 0.1
    #    cavalry_power = 0.1
    #    artillery_power = 0.1
    #    heavy_ship_power = 0.1
    #    light_ship_power = 0.1
    #    galley_power = 0.1
    #    transport_power = 0.1
    #    attrition = 1
    #    hostile_attrition = 1
    #    artillery_barrage_cost = -0.1
    #    transport_attrition = -0.1
    #    land_attrition = -0.1
    #    naval_attrition = -0.1
    #    max_attrition = 1
    #    max_hostile_attrition = 1
    #    supply_limit = 0.1
    #    war_exhaustion = 0.1
    #    war_exhaustion_cost = -0.1
    #    local_hostile_attrition = 1
    #    army_tradition = 0.1
    #    navy_tradition = 0.1
    #    army_tradition_decay = -0.01
    #    navy_tradition_decay = -0.01
    #    leader_land_fire = 1
    #    leader_land_shock = 1
    #    leader_naval_fire = 1
    #    leader_naval_shock = 1
    #    leader_siege = 1
    #    leader_naval_manuever = 1
    #    leader_land_manuever = 1
    #    state_maintenance_modifier = -0.1
    #    local_state_maintenance_modifier = -0.1
    #    global_spy_defence = 0.1
    #    spy_offence = 0.1
    #    trade_value = 0.1
    #    fort_level = 1
    #    blockade_efficiency = 0.1
    #    ship_recruit_speed = -0.1
    #    regiment_recruit_speed = -0.1
    #    global_ship_recruit_speed = -0.1
    #    global_regiment_recruit_speed = -0.1
    #    prestige = 0.1
    #    prestige_decay = -0.01
    #    prestige_from_land = 0.1
    #    prestige_from_naval = 0.1
    #    trade_value_modifier = 0.1
    #    garrison_growth = 0.1
    #    global_garrison_growth = 0.1
    #    advisor_cost = -0.1
    #    advisor_pool = 1
    #    female_advisor_chance = 0.1
    #    technology_cost = -0.1
    #    discipline = 0.1
    #    reinforce_speed = -0.1
    #    range = 0.1
    #    global_colonial_growth = 1
    #    local_colonial_growth = 1
    #    tolerance_own = 1
    #    tolerance_heretic = 1
    #    tolerance_heathen = 1
    #    defensiveness = 0.1
    #    local_defensiveness = 0.1
    #    global_ship_cost = -0.1
    #    global_ship_repair = 0.1
    #    global_regiment_cost = -0.1
    #    global_tariffs = 0.1
    #    diplomatic_reputation = 1
    #    papal_influence = 0.1
    #    devotion = 0.1
    #    legitimacy = 0.1
    #    horde_unity = 0.1
    #    republican_tradition = 0.1
    #    monthly_splendor = 1
    #    local_ship_cost = -0.1
    #    local_ship_repair = 0.1
    #    local_regiment_cost = -0.1
    #    local_friendly_movement_speed = 0.1
    #    local_hostile_movement_speed = -0.1
    #    trade_range_modifier = 0.1
    #    global_heretic_missionary_strength = -0.01
    #    global_heathen_missionary_strength = -0.01
    #    improve_relation_modifier = 0.1
    #    trade_steering = 0.1
    #    all_power_cost = -0.1
    #    core_creation = -0.1
    #    enemy_core_creation = 0.1
    #    free_leader_pool = 1
    #    idea_cost = -0.1
    #    heir_chance = 0.1
    #    embargo_efficiency = 0.1
    #    recover_army_morale_speed = 0.1
    #    recover_navy_morale_speed = 0.1
    #    diplomatic_upkeep = 1
    #    unjustified_demands = -0.1
    #    mercenary_manpower = 0.1
    #    fabricate_claims_cost = -0.1
    #    claim_duration = 0.1
    #    regiment_manpower_usage = -0.1
    #    all_estate_influence_modifier = -0.1
    #    justify_trade_conflict_cost = -0.1
    #    rebel_support_efficiency = 0.1
    #    discovered_relations_impact = -0.1
    #    annexation_relations_impact = -0.1
    #    vassal_income = 0.1
    #    religious_unity = 0.1
    #    inflation_action_cost = -0.1
    #    migration_cost = -0.1
    #    add_tribal_land_cost = -0.1
    #    settle_cost = -0.1
    #    monthly_fervor_increase = 0.1
    #    monthly_piety = 0.001
    #    monthly_piety_accelerator = 0.001
    #    monthly_karma = 0.01
    #    monthly_karma_accelerator = -0.01
    #    global_rebel_suppression_efficiency = 0.1
    #    caravan_power = 0.1
    #    yearly_corruption = -0.1
    #    min_autonomy = -1
    #    global_autonomy = -0.1
    #    min_local_autonomy = -1
    #    local_autonomy = -0.1
    #    siege_ability = 0.1
    #    privateer_efficiency = 0.1
    #    global_trade_goods_size_modifier = 0.1
    #    global_trade_goods_size = 0.1
    #    envoy_travel_time = -0.1
    #    imperial_authority = 0.1
    #    imperial_authority_value = 0.1
    #    imperial_mandate = 0.1
    #    ae_impact = -0.1
    #    province_warscore_cost = -0.1
    #    supply_limit_modifier = 0.1
    #    global_supply_limit_modifier = 0.1
    #    national_focus_years = -1
    #    vassal_forcelimit_bonus = 0.1
    #    vassal_naval_forcelimit_bonus = 0.1
    #    vassal_manpower_bonus = 0.1
    #    vassal_sailors_bonus = 1
    #    years_of_nationalism = 1
    #    local_years_of_nationalism = 1
    #    num_accepted_cultures = 1
    #    culture_conversion_cost = 1
    #    local_culture_conversion_cost = 1
    #    culture_conversion_time = 1
    #    local_culture_conversion_time = 1
    #    diplomatic_annexation_cost = 1
    #    chance_to_inherit = 1
    #    ship_durability = 1
    #    liberty_desire = 1
    #    reduced_liberty_desire = 1
    #    allowed_num_of_buildings = 1
    #    global_allowed_num_of_buildings = 1
    #    allowed_num_of_manufactories = 1
    #    global_allowed_num_of_manufactories = 1
    #    church_power_modifier = 1
    #    monthly_church_power = 1
    #    garrison_size = 1
    #    local_garrison_size = 1
    #    loot_amount = 1
    #    embracement_cost = 1
    #    local_institution_spread = 1
    #    global_institution_spread = 1
    #    native_uprising_chance = 1
    #    native_assimilation = 1
    #    may_recruit_female_generals = yes
    #    block_introduce_heir = yes
    #    can_transfer_vassal_wargoal = yes
    #    can_chain_claim = yes
    #    free_maintenance_on_expl_conq = yes
    #    colony_development_boost = 1
    #    attack_bonus_in_capital_terrain = 1
    #    can_bypass_forts = yes
    #    ignore_coring_distance = yes
    #    force_march_free = yes
    #    possible_condottieri = 1
    #    global_ship_trade_power = 1
    #    local_naval_engagement_modifier = 1
    #    global_naval_engagement_modifier = 1
    #    global_naval_engagement = 1
    #    block_slave_raid = yes
    #    may_perform_slave_raid = yes
    #    may_perform_slave_raid_on_same_religion = yes
    #    cavalry_flanking = 1
    #    movement_speed = 1
    #    capture_ship_chance = 1
    #    sunk_ship_morale_hit_recieved = 1
    #    naval_tradition_from_battle = 1
    #    army_tradition_from_battle = 1
    #    local_core_creation = 1
    #    immortal = yes #Dummy, doesn't do anything but has a cool icon I guess
    #    amount_of_banners = 1
    #    local_amount_of_banners = 1
    #    has_banners = yes
    #    local_has_banners = yes
    #    has_carolean = yes
    #    local_has_carolean = yes
    #    amount_of_carolean = 1
    #    local_amount_of_carolean = 1
    #    can_recruit_hussars = yes
    #    amount_of_hussars = 1
    #    local_amount_of_hussars = 1
    #    hussars_cost_modifier = 1
    #    free_land_leader_pool = 1
    #    free_navy_leader_pool = 1
    #    amount_of_cawa = 1
    #    local_amount_of_cawa = 1
    #    fire_damage = 1
    #    shock_damage = 1
    #    fire_damage_received = 1
    #    shock_damage_received = 1
    #    reinforce_cost_modifier = 1
    #    garrison_damage = 1
    #    local_garrison_damage = 1
    #    assault_fort_cost_modifier = 1
    #    local_assault_fort_cost_modifier = 1
    #    assault_fort_ability = 1
    #    local_assault_fort_ability = 1
    #    local_religious_conversion_resistance = 1
    #    global_religious_conversion_resistance = 1
    #    placed_merchant_power = 1
    #    ship_power_propagation = 1
    #    institution_spread_from_true_faith = 1
    #    prestige_per_development_from_conversion = 1
    #    administrative_efficiency = 1
    #    yearly_absolutism = 1
    #    max_absolutism = 1
    #    core_decay_on_your_own = 1
    #    autonomy_change_time = 1
    #    expand_administration_cost = 1
    #    rival_change_cost = 1
    #    rival_border_fort_maintenance = 1
    #    harsh_treatment_cost = 1
    #    reduced_liberty_desire_on_same_continent = 1
    #    backrow_artillery_damage = 1
    #    enforce_religion_cost = 1
    #    liberty_desire_from_subject_development = 1
    #    monarch_admin_power = 1
    #    monarch_diplomatic_power = 1
    #    monarch_military_power = 1
    #    local_heir_adm = 1
    #    local_heir_dip = 1
    #    local_heir_mil = 1
    #    artillery_levels_available_vs_fort = 1
    #    country_admin_power = 1
    #    country_diplomatic_power = 1
    #    country_military_power = 1
    #    meritocracy = 1
    #    yearly_harmony = 1
    #    harmonization_speed = 1
    #    cav_to_inf_ratio = 1
    #    local_monthly_devastation = 1
    #    global_monthly_devastation = 1
    #    global_prosperity_growth = 1
    #    local_prosperity_growth = 1
    #    monthly_favor_modifier = 1
    #    monthly_gold_inflation_modifier = 1
    #    gold_depletion_chance_modifier = 1
    #    local_gold_depletion_chance_modifier = 1
    #    tolerance_of_heretics_capacity = 1
    #    tolerance_of_heathens_capacity = 1
    #    move_capital_cost_modifier = 1
    #    war_taxes_cost_modifier = 1
    #    siege_blockade_progress = 1
    #    warscore_cost_vs_other_religion = 1
    #    mercenary_discipline = 1
    #    sailor_maintenance_modifer = 1
    #    yearly_army_professionalism = 1
    #    general_cost = 1
    #    reserves_organisation = 1
    #    drill_gain_modifier = 1
    #    drill_decay_modifier = 1
    #    same_culture_advisor_cost = 1
    #    same_religion_advisor_cost = 1
    #    promote_culture_cost = 1
    #    own_coast_naval_combat_bonus = 1
    #    local_own_coast_naval_combat_bonus = 1
    #    global_defender_dice_roll_bonus = 1
    #    local_defender_dice_roll_bonus = 1
    #    global_attacker_dice_roll_bonus = 1
    #    local_attacker_dice_roll_bonus = 1
    #    own_territory_dice_roll_bonus = 1
    #    can_revoke_parliament_seats = yes
    #    parliament_backing_chance = 1
    #    parliament_effect_duration = 1
    #    parliament_debate_duration = 1
    #    parliament_chance_of_decision = 1
    #    num_of_parliament_issues = 1
    #    max_possible_parliament_seats = 1
    #    institution_growth = 1
    #    innovativeness_gain = 1
    #    possible_policy = 1
    #    free_policy = 1
    #    possible_adm_policy = 1
    #    possible_dip_policy = 1
    #    possible_mil_policy = 1
    #    free_adm_policy = 1
    #    free_dip_policy = 1
    #    free_mil_policy = 1
    #    adm_advisor_cost = 1
    #    dip_advisor_cost = 1
    #    mil_advisor_cost = 1
    #    reform_progress_growth = 1
    #    reform_progress_growth_building = 1
    #    monthly_reform_progress = 1
    #    monthly_reform_progress_modifier = 1
    #    monthly_reform_progress_building = 1
    #    min_autonomy_in_territories = 1
    #    reelection_cost = 1
    #    leader_cost = 1
    #    candidate_random_bonus = 1
    #    election_cycle = 1
    #    monthly_support_heir_gain = 1
    #    power_projection_from_insults = 1
    #    local_religious_unity_contribution = 1
    #    trade_company_investment_cost = 1
    #    cawa_cost_modifier = 1
    #    janissary_cost_modifier = 1
    #    blockade_force_required = 1
    #    hostile_disembark_speed = 1
    #    hostile_fleet_attrition = 1
    #    regiment_disembark_speed = 1
    #    allowed_tercio_fraction = 1
    #    amount_of_tercio = 1
    #    local_has_tercio = yes
    #    allowed_musketeer_fraction = 1
    #    amount_of_musketeers = 1
    #    local_has_musketeers = yes
    #    allowed_samurai_fraction = 1
    #    amount_of_samurai = 1
    #    local_has_samurai = yes
    #    allowed_geobukseon_fraction = 1
    #    amount_of_geobukseon = 1
    #    local_has_geobukseon = yes
    #    allowed_man_of_war_fraction = 1
    #    amount_of_man_of_war = 1
    #    local_has_man_of_war = yes
    #    allowed_galleon_fraction = 1
    #    amount_of_galleon = 1
    #    local_has_galleon = yes
    #    allowed_galleass_fraction = 1
    #    amount_of_galleass = 1
    #    local_has_galleass = yes
    #    allowed_caravel_fraction = 1
    #    amount_of_caravel = 1
    #    local_has_caravel = yes
    #    allowed_voc_indiamen_fraction = 1
    #    amount_of_voc_indiamen = 1
    #    local_has_voc_indiamen = yes
    #    allowed_marine_fraction = 1
    #    can_recruit_janissaries = yes
    #    can_recruit_cawa = yes
    #    can_recruit_cossacks = yes
    #    can_recruit_rajputs = yes
    #    can_recruit_revolutionary_guards = yes
    #    allow_janissaries_from_own_faith = yes
    #    allow_mercenary_drill = yes
    #    merc_leader_army_tradition = 1
    #    merc_independent_from_trade_range = yes
    #    allow_mercenaries_to_split = yes
    #    may_explore = yes
    #    sea_repair = yes
    #    cb_on_government_enemies = yes
    #    cb_on_primitives = yes
    #    no_religion_penalty = yes
    #    auto_explore_adjacent_to_colony = yes
    #    reduced_stab_impacts = yes
    #    extra_manpower_at_religious_war = yes
    #    idea_claim_colonies = yes
    #    may_establish_frontier = yes
    #    can_fabricate_for_vassals = yes
    #    cb_on_overseas = yes
    #    reduced_native_attacks = yes
    #    may_not_reduce_inflation = yes
    #    no_cost_for_reinforcing = yes
    #    may_build_supply_depot = yes
    #    may_refill_garrison = yes
    #    may_return_manpower_on_disband = yes
    #    may_not_convert_territories = yes
    #    allow_client_states = yes
    #    enable_forced_march = yes
    #    number_of_cannons_modifier = 1
    #    heavy_ship_number_of_cannons_modifier = 1
    #    light_ship_number_of_cannons_modifier = 1
    #    galley_number_of_cannons_modifier = 1
    #    transport_number_of_cannons_modifier = 1
    #    hull_size = 1
    #    hull_size_modifier = 1
    #    heavy_ship_hull_size_modifier = 1
    #    light_ship_hull_size_modifier = 1
    #    galley_hull_size_modifier = 1
    #    transport_hull_size_modifier = 1
    #    engagement_cost = 1
    #    engagement_cost_modifier = 1
    #    special_unit_cost_modifier = 1
    #    special_unit_manpower_cost_modifier = 1
    #    number_of_cannons_flagship_modifier = 1
    #    number_of_cannons_flagship = 1
    #    number_of_cannons = 1
    #    max_flagships = 1
    #    flagship_morale = 1
    #    naval_maintenance_flagship_modifier = 1
    #    trade_power_in_fleet_modifier = 1
    #    ship_trade_power = 1
    #    ship_trade_power_modifier = 1
    #    can_transport_units = yes
    #    flagship_naval_engagement_modifier = 1
    #    blockade_impact_on_siege_in_fleet_modifier = 1
    #    movement_speed_in_fleet_modifier = 1
    #    flagship_durability = 1
    #    morale_in_fleet_modifier = 1
    #    exploration_mission_range_in_fleet_modifier = 1
    #    barrage_cost_in_fleet_modifier = 1
    #    naval_attrition_in_fleet_modifier = 1
    #    cannons_for_hunting_pirates_in_fleet = 1
    #    movement_speed_onto_off_boat_modifier = 1
    #    admiral_skill_gain_modifier = 1
    #    privateering_efficiency_in_fleet_modifier = 1
    #    prestige_from_battles_in_fleet_modifier = 1
    #    naval_tradition_in_fleet_modifier = 1
    #    landing_penalty = 1
    #    establish_order_cost = 1
    #    treasure_fleet_income = 1
    #    global_naval_barrage_cost = 1
    #    center_of_trade_upgrade_cost = 1
    #    local_center_of_trade_upgrade_cost = 1
    #    missionary_maintenance_cost = 1
    #    local_missionary_maintenance_cost = 1
    #    naval_tradition_from_trade = 1
    #    admiral_cost = 1
    #    expel_minorities_cost = 1
    #    infantry_fire = 1
    #    cavalry_fire = 1
    #    artillery_fire = 1
    #    infantry_shock = 1
    #    cavalry_shock = 1
    #    artillery_shock = 1
    #    curia_treasury_contribution = 1
    #    cb_on_religious_enemies = yes
    #    yearly_patriarch_authority = 1
    #    yearly_authority = 1
    #    yearly_karma_decay = 1
    #    available_province_loot = 1
    #    relation_with_heretics = 1
    #    relation_with_heathens = 1
    #    relation_with_same_religion = 1
    #    reverse_relation_with_same_religion = 1
    #    relation_with_same_culture = 1
    #    relation_with_same_culture_group = 1
    #    relation_with_accepted_culture = 1
    #    relation_with_other_culture = 1
    #    stability_cost_to_declare_war = 1
    #    special_unit_forcelimit = 1
    #    curia_powers_cost = 1
    #    appoint_cardinal_cost = 1
    #    papal_influence_from_cardinals = 1
    #    unrest_catholic_provinces = 1
    #    imperial_reform_catholic_approval = 1
    #    disengagement_chance = 1
    #    manpower_in_true_faith_provinces = 1
    #    manpower_in_own_culture_provinces = 1
    #    manpower_in_culture_group_provinces = 1
    #    manpower_in_accepted_culture_provinces = 1
    #    free_city_imperial_authority = 1
    #    imperial_mercenary_cost = 1
    #    max_free_cities = 1
    #    max_electors = 1
    #    manpower_against_imperial_enemies = 1
    #    monarch_lifespan = 1
    #    max_revolutionary_zeal = 1
    #    yearly_revolutionary_zeal = 1
    #    flagship_cost = 1
    #    governing_capacity = 1
    #    governing_capacity_modifier = 1
    #    governing_cost = 1
    #    trade_company_governing_cost = 1
    #    state_governing_cost = 1
    #    territories_governing_cost = 1
    #    local_governing_cost = 1
    #    local_governing_cost_increase = 1
    #    state_governing_cost_increase = 1
    #    statewide_governing_cost = 1
    #    reasons_to_elect = 1
    #    years_to_integrate_personal_union = 1
    #    legitimate_subject_elector = 1
    #    accept_vassalization_reasons = 1
    #    transfer_trade_power_reasons = 1
    #    local_warscore_cost_modifier = 1
    #    mercantilism_cost = 1
    #    tribal_development_growth = 1
    #    monthly_federation_favor_growth = 1
    #    monthly_heir_claim_increase = 1
    #    monthly_heir_claim_increase_modifier = 1
    #    great_project_upgrade_cost = 1
    #    local_great_project_upgrade_cost = 1
    #    great_project_upgrade_time = 1
    #    local_great_project_upgrade_time = 1
    #    colonial_type_change_cost_modifier = 1
    #    colonial_subject_type_upgrade_cost_modifier = 1
    #    yearly_doom_reduction = 1
    #    all_estate_loyalty_equilibrium = 1
    #    loyalty_change_on_revoked = 1
    #    estate_interaction_cooldown_modifier = 1
    #    all_estate_possible_privileges = 1
    #    no_stability_loss_on_monarch_death = yes
    #    allow_free_estate_privilege_revocation = yes
    #    warscore_from_battles_modifier = 1
    #    yearly_innovativeness = 1
    #    yearly_government_power = 1
    #    no_claim_cost_increasement = yes
    #    naval_morale_damage = 1
    #    naval_morale_damage_received = 1
    #    has_tercio = yes
    #    has_musketeer = yes
    #    has_samurai = yes
    #    has_geobukseon = yes
    #    has_man_of_war = yes
    #    has_galleon = yes
    #    has_galleass = yes
    #    has_caravel = yes
    #    has_voc_indiamen = yes
    #    has_streltsy = yes
    #    allowed_streltsy_fraction = 1
    #    amount_of_streltsy = 1
    #    local_has_streltsy = 1
    #}

You can see the file in the game where it is called “02_test_modifiers.txt”. It is commented out, so it has absolutely no effect in the game.

This was it for this week! Next week @SaintDaveUK will talk about the art of Domination. Until then I wish you all a great week!
dd_modding_chapel.png
 
  • 97Like
  • 24Love
  • 15
  • 13
  • 6
Reactions:
  • Ramparts can now only be placed on terrain which is seen as “Flatland” in the game. This means it is only possible to build ramparts on farmlands, grasslands, steppes, savannahs, drylands, (coastal) deserts and coastlines.
    Note: we are aware that this change is a bit against the nature of what ramparts actually are. The reason behind this change is that mountains with ramparts can lead to oppressive situations where neither side wants to commit to an attack due to the threat which are -3 on rolls.

You know when the dev points out themselves that the change doesn't make sense, it's probably a bad change. I'm sorry, but either I do not understand the reasoning, or this is simply not a good idea. Personally, I would not describe the above scenario as "oppressive;" if anything the system is functioning realistically, and as designed. Like Ogele points out, due to the nature of ramparts it makes the most historical and in-game sense to build them in mountains/hills. This could be a problem, but what keeps the situation from being "oppressive" is the fact that late game siege ability (especially stacked with idea groups/national ideas) is well balanced against the stacked defensiveness. And this is a great tool for small nations to leverage against much more powerful neighbors. Ultimately, again, if AI/players are avoiding attacking stacks in mountains with forts/ramparts, I'd say the system is working; and I personally never observed a particular hesitancy on the part of the AI to attack fortified mountains if they had the numbers/quality. I encourage the dev team to rethink/remove this change. Like at least one other person already pointed out, this pretty much nullifies the need to ever use ramparts which were already very situational buildings (i.e. the only situation you build them is in non-flat provinces!)
 
  • 16
  • 2Like
Reactions:
the Rampart change will very much mean ramparts will never be worth building , Flat land is being deved and getting a manufactory to stack a rampart on that aswell is not cost effective, the only provinces people would think to build one was hills and mountains esp for smaller nations like northern forts of Korea, Garhwal or Switzerland
 
  • 13Like
Reactions:
I totally agree with you. Personally I also like the general concept of as Italy or Switzerland being able face off much stronger enemies from behind your ring of mountain-rampart fortresses. Which actually is something that is encouraged through their mission trees. I understand that this is a MP-focused change, but I would say to just add it as a "no ramparts on rough terrain" rule for MP that you can turn off for SP.

For the same reason it would be good to move the restrictive rule of “can’t sell ships to a country at war” to diplomatic_actions.txt or game rule instead of hardcoded.
It used to be possible in a really old version of the game and was removed from the game due to player exploits in MP, but both singleplayers and modders are affected by that
 
  • 2
Reactions:
I love everything, except:

Ramparts can now only be placed on terrain which is seen as “Flatland” in the game. This means it is only possible to build ramparts on farmlands, grasslands, steppes, savannahs, drylands, (coastal) deserts and coastlines.

Da fuq? I know you explained your reasoning, but I disagree so whole-heartedly with that reasoning. Building them on mountain forts is the main reason to build ramparts! It's one of the few ways that geography actually matter in this game and you go out of your way to prevent it?!
 
  • 9Like
  • 7
Reactions:
can we PLEASE get a balance fix to expand administration. the flat gov cost hit isnt reduced by percentage based gov cost modifiers on the province. every state can have its governing cost modifier capped at 99% quite easily with current implementation. a flat 10 gov cost hit means that you are actually giving up the possibility of 1000 development each. dev at minimum providing a .01 hit to gov capacity at 99% reduction. a similar issue is found in attrition calculation where the attrition is capped at the cap then reduced by the nations anti attrition modifiers thus anti attrition modifiers actually reduce the total possible attrition directly instead of competing with the opponents attempts to cause attrition.

edit: also the ramparts change is silly and poorly thought out if the mountains are in the way go around or bring overwhelming numbers there is a reason nations have historically been able to retreat into the mountains and outlast vastly stronger opponents. switzerland, skanderberg, scotland, ethiopia and miriad other nations im sure ive forgotten have retreated into the mountains and held them inflicting incredible losses on all those who try. if you think the combat penalty is too much at -3 consider instead an increase to the attrition instead so that hiding behind mountain forts actually causes a devastating amount of manpower pool damage to a nation attempting to siege.
 
Last edited:
  • 5
Reactions:
Furthermore , ive not seen a single MP ballance mod do anything to weaken Ramparts, if anything ive seen Mods Buff them because the're not that prevalent of a stratagy or meta, so i dont know were the idea of them being oppressive is coming from, ive played allota Multiplayers and ive never seen anyone complain about them
 
  • 9Like
  • 4
  • 2
  • 1Love
Reactions:
I really appreciate the continue balance changes.

  • “Russian Empire” now gives -10% Minimum Autonomy in Territories instead of +33% Governing Capacity Modifier
  • “Austrian Diplomacy” has been replaced by “Austrian Tenacity” and now gives -20% Morale Damage Received

However I am a bit confused about these two, I suppose the Austrian one is done to making the ability more worthwhile in the late-game, while the Russian one wants us to focus more on using trade companies rather than full-coring everything, isn't it?
 
  • 2Like
Reactions:
Some thoughts on the age bonuses:
  • “Guns of Urban” has been renamed to “Ottoman Siegecraft” and now gives +1 Leader Siege instead of +33% Siege Ability
    • I dislike this change 1+ leader siege seems a bit generic. Ottomans simply cycling faster was pretty unique.
  • “Spanish Tercios” has been replaced by “Spanish Field Marshals” and now gives +1 Leader Land Shock instead of -30% Shock Damage Received
    • I know you put the old modifier on the unique units, but don't you think 1 land leader shock is a bit lame as an age bonus?
  • “Mughal Artillery” has been changed from -50% Artillery Cost to +15% Artillery Combat Ability
    • Combat ability maybe better, but i felt like the half priced cannons was decently unique, im torn on this one.
  • “Persian Reinforcement” has been replaced by “Persian Enlightenment” and now gives -20% Development Cost instead of -30% Reinforce cost
    • This is just straight up a good change, if there is one modifier i wouldn't even notice it would be reinforcement cost, and most of the non-europeans do usually need some extra help with deving.
  • “French Musketeers” has been replaced by “French Absolutism” and now gives +30% Max Effect of Absolutism instead of +20% Land Fire Damage
    • We knew this from the france dev diary. It's going to be interesting to see how this plays out, love that it is unique.
  • “Dutch Officials” has been replaced by “Dutch Commercialization” and now gives +33% Trade Steering instead of -0.2 Yearly Corruption
    • Trade steering fits and would probably have a more noticeable effect, the old one just made you do free corruption loans every time you got corruption close to 0.
  • “British Fleet” now gives +1 Max Admiral Fire instead of -33% Naval Maintenance Modifier
    • Honestly back to the same thing as spain, +1 pip doesn't really do anything for me, but paying 1/3rd less for my armada can add up to a lot and is on point for british naval play.
  • “Russian Empire” now gives -10% Minimum Autonomy in Territories instead of +33% Governing Capacity Modifier
    • This along with other stacking modifiers could make siberia feel like states without taking up the government capacity. Not sure if it's a buff or nerf though. Gotta see it in game.
  • “Austrian Diplomacy” has been replaced by “Austrian Tenacity” and now gives -20% Morale Damage Received
    • I like the diplo rep boost, it was "very austrian". Not sure every nation has to have direct combat strengths, especially austria which to me makes more sense having it's subjects do a lot of the extra lifting instead austria itself beating other majors with quality.
Most of the other balance changes look great and/or make good sense.
Love the new mapmodes and changes to the metropolitan map mode, always felt weird having it saved on my bar when it was only really "for russia".
 
  • 2Like
  • 1Haha
  • 1
Reactions:
I have already said that under 1.34 dev diary, but:
1. EXPAND DEBUG_MODE COMMAND, things like:
you hover over a religion name - the debug religion name pops out ( 'cause how am I supposed to figure out tengri_pagan_reformed), you hover over a culture - it shows you the debug culture name, etc.
2. Add a way to see & change global flags in-game
3. Make spawning units with commands easier, please
4. That one is optional, but you could add mercenary fleets like in CK2 (I know, balance n' stuff but it could help)
(edit) 5. i forgot but talking about boats a fun (in my opinion) feature is blocking a strait with your fleet so enemy fleet can't pass through. I think it would add a lot of strategic point in owning straits like the Bosphorus or the Danish straits and also canals




Debug mode pls pls pls
 
Last edited:
  • 1
Reactions:
I'm not a big fan of the Rampart and Janissary nerfs. The Janissary nerf seems like it came out of nowhere. So now it stills eats up MP (though less), but it's going to tank my manpower as well (which is already nerfed from slacken changes)? I'll need to see how it interacts with the other changes. The Rampart change guarantees I'll probably build it 95% less.
 
  • 2Like
Reactions:
I'm really not sure about the ramparts change... I think I'd prefer it as either an multiplayer-only rule or just capping the attacking roll penalty to -2, even in mountains. In single-player ramparts are a godsend for dealing with much larger nations, I'm not sure it'll be possible to hold out against them anymore.

Do you mind if I ask what the logic behind the special unit balancing was? I don't think it looks bad or anything, just curious. I do like making Streltsy easier to use now.
 
  • 1Like
Reactions:
Tax "features" are... mostly stupid in my opinion. Yeah, they (kinda) fit the history, but in my opinion, its strait up kill for tax meta, which was already worth using only on France, and then, only after you invest in monument over 8500 ducats and another 8500 or 350000 recruits, or 70 years of waiting (thats insane!) and now, even there it`s became arguable. Better, in my opinion, not add this feature, and leave it where it is now.
It's just a straight buff to base tax. How does it kill the meta?
 
  • 4Like
Reactions:
Just throwing my hat in for reversing the rampart change. If the devs are set in nerfing ramparts, then some other changes that would be acceptable:
  1. Gold upkeep cost similar to forts
  2. Changing defensive ideas to reverse the nerf
  3. A mission or decision for some nations that are more known for mountainous forts like Savoy, Switzerland, Italy and the Italian minors, other alpine nations etc..
 
  • 9Like
Reactions:
I feel like unless you give Ramparts something extra or make them cheaper, this will just make them essentially useless? Siege Ability is so easy to stack that hill and mountain forts are the only things that last a while under siege, it's simply a waste of money and slots to put Ramparts on flat lands. And it's not like Remparts were a popular building before this, they're already super niche.
yeah Ramparts were already never used in my games, now I have even less reason. I might make that a setting for multiplayer, as that is really what that change was made for.
 
  • 3Like
Reactions:
Just throwing my hat in for reversing the rampart change. If the devs are set in nerfing ramparts, then some other changes that would be acceptable:
  1. Gold upkeep cost similar to forts
  2. Changing defensive ideas to reverse the nerf
  3. A mission or decision for some nations that are more known for mountainous forts like Savoy, Switzerland, Italy and the Italian minors, other alpine nations etc..
Agreed