• 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.

Anniversary Maintenance Patch - 2.0.4 (Open Beta)

ImperatorSocial.png

Avē!

First, I’d like to introduce myself, I am not one of the previous Game Directors, Johan or Peter, but I am Niels Uiterwijk, the original tech lead on the project. Today my role at paradox has changed as I am the Technical Director in studio green (studio working Stellaris). But still, from outer space I look back at earth and think of Imperator sometimes and decided to make a small maintenance patch, fixing some of the issues that modders & other people ran into.

Without further ado, the patch notes:

#######################
# Bugfixes
######################

# Notes
- This patch should be save compatible, however not all fixes might be applied to your current save.

# Stablity & Performance
- Improved overall memory consumption & performance
- Improved monthly tick performance by performing some more calculations in parallel (state modifiers)
- Portrait editor no longer crashes on open
- Updated SDL to 2.0.20 from 2.0.10
- Updated Nakama to 2.4.1 from 2.2.4

# Game Mechanic
- Upped the maximum number of tags (countries) from 2048 to 8192
- Fixed levy calculations being inversed
- Fixed a bug where when annexing a country, their abroad prisoners, that were in your prison, would also be counted as an abroad prisoners for you, even though they are local prisoners.
- default pop right is now correctly working & added proper logging of pop rights
- Fixed bug where unused modifiers were still being rewarded for specific missions (local & global cohort recruitment speed)
- Fixed bug where integrated cultures were still treated differently when they were converting to your primary religion
- Raised levies will select the best tactic for it's composition.
- Civil Wars will no longer just pick 1 character, but instead take far more disloyal characters.
- Fixed bug where released nations during a peace deal would have no proper pantheon.
- Fixed bug where you would never see battle results from battles against pirates, barbarians or rebels.
- Diplomatic range is now calculated between border territories. This should make it easier to hire mercenaries as a large empire. Default diplo range has been tweaked based on this change.
- Fixed bug where pops could be promoted above what they were allowed to.

# Other
- Updated default message settings
- Enabled script profiling (available with -debug_mode startup command, 'print_event_timings` is the console command)
- Added option to run multiple commands at the same time (ExecuteConsoleCommands & ExecuteConsoleCommandsForced)
- Achievements now only require that the game is in ironman mode and you achieve them within the timelimit (ingame years)
Note: This means that mods that are affecting the checksums, no longer will prohibit you from getting the achievements, neither does multiplayer.
- Added four new defines to balance the game (2 related to combat overruns, 2 related to civil war & dissenters)



Integrated fixes from the "Unofficial Patch" mod.
(Thanks Umgssda!)

# Fixes

## Missions

- Fixed mission trigger to ignore city territories in generic mission "Growth of ..." or "Pearl of .." step "Fruits of ..."
- Fix check for mission goal in Seleucid mission "Syrian Ambition" step "A Mediterranean capital" to really check for the building number as shown in the tooltip
- Fix mission availability for Cartage mission "Iberian Investments" to be selectable after finishing "The Iberian Struggle" with "Hispanic Overlord"

## Events

- Fix "There are other options..." option to actually show other territories for "Babarian Bartering" event for greek Missions in western Mediterranean and Pontus areas
- Fix party approval target in event for pop integration agenda for roman boni party
- Fix "No confidence" random event to target three distinct characters
- Fix "Demodamas the Explorer" event to select a sea harbor with enough population according to the existing check
- Fix "Fall of the [Family]" event to select the family to remove with lowest instead of highest prestige

## Gameplay

- Fix Governors selecting religious conversion policy when it is pointless (thanks to Lewa263)

## Texts

- Fixed reference from Argos to Korinthos in tooltip for spartan mission "The Second Peloponnesian League" step "Eastern Capitals"
- Corrected event text for the time passed since Alexanders death in initial Alexander the Great event. (english only)
- Fix territory names in event Options for Roman Mission "The pillars of Hercules"


- New Update 11/4/2024


#######################
# Bugfixes
######################

# Game Mechanic
- Fixed bug where temp modifiers were removed when provinces are annexed as part of a civil war
- Fix a bug when using add_to_war effect, adding a defender would always make it the war leader

# Effects
- Added set_player_country effect to allow modders to swtich the player's country
- Added add_deity_to_pantheon effect to allow deities outside of the allowed pool to a country's pantheon
- Added set_automated_trading effect to enable/disable state automated trading
- Added set_governor_policy effect to change governor policy
- Added unlock_invention effect to directly unlock a invention for free (without checking preconditions)
- Added add_trade_route and remove_trade_route effects to add and remove trade routes, respectively

# Triggers
- Added is_automated_trading trigger to check if a state has automated trading set
- Added distance_from trigger to check the distance between a province and another province, state (capital) or country (capital)
- Added can_unlock_invention to check if an invention can be unlocked by country (optionally ignoring cost, dependencies and potential trigger)
- Added can_add_trade_route to check if a trade route can be added.

# Other
- Added a modifier cultural_assimilation_speed_modifier, which changes the assimilation speed. Assimilation speed less than 0 prevents assimilation.
- Added a property for subject types to allow them to bypass usual subject diplomatic limitations for declaring war (allowed_to_declare_war_against_others). This is not enabled by default for the base game. To fully enable this to work you'll also need to change the allow triggers for wargoals


Integrated fixes provided by the Invictus team:
Thank you Imperator: Invictus Mod Development team with highlight to Robbe Vander Kerken (aka Snowlet) & Nathaniel Van Drei (aka Dementive)


# Achievements:
- Fixed the Great Destroyer achievement being impossible to obtain
- Fixed Cincinattus achievement being impossible to obtain

# Governor policy:
- Switched to more efficient iterator: any_integrated_culture
- AI will no longer attempt the religious conversion governor policy when they have major syncretism

# Inventions:
- Switched to more efficient iterator: any_integrated_culture

# Missions:
- Fixed broken tooltip in Strategic Fastness Antigonid task
- Fixed broken AI triggers in Carthaginian missions
- Fixed Hannid character not being put into the Hannid family
- Fixed AI carthage not paying for the city in Cypriot Opportunities task
- Fixed Experienced Shipwrights being impossible to complete as it requires impassable territories
- Added missing ai_mission_back_out_trigger and start_mission_ai_effect in missions
- Macedonian missions now account for Imperial Cult government type
- Fixed province investment checks not account for Spartan investments
- Addex extra sanity checks to Macedonian missions
- Fixed several Macedonian task triggers not working
- Fixed Roman AI not getting claims upon Aquitania
- Fixed Protector of the Aegean Sea not highligting subjects correctly

# Character interactions:
- Fixed still being able to bribe mercenaries from countries with the Mercenary Benefits invention

# Unit Abilities:
- Optimized check for Barca Legion from Forced march

# Events:
- Fixed released countries not having a primary culture
- Fixed missing 'equals' characters in the scripts
- Fixed wrongly set global variable for the parthian invasion
- Fixed Antigonid capital being incorrectly set upon collapsing
- Fixed Mithradaic events not properly unlocking Pontus content
- Fixed Arsaces being able to spawn twice
- Fixed ruler not appearing in Carthaginian Iberian events
- Deleted extra dot from opinion modifier in Roman Greece missions
- Fixed Eastern Empire mission not triggering if you only have land in Macedonia
- Fixed duplicated ai_chance blocks in Western Greek missions
- Added sanity checks to ports being built through effect
- Fixed league of Korinthos not properly annexing subjects
- Fixed Serapis sanctuary taking 36 and not 360 days to be built
- Added failsafe in Egyptian character creation for events
- Fixed wrong tooltip for opinion modifier in Cities of Greece task
- Fixed Epirus subjugating themselves in the Magna Graecian missions
- Fixed Pax Epirum potentially spamming the error log
- Fixed characters befriending themselves
- Fixed desecration event opinion tooltip showing the wrong country
- Fixed broken modifier duration in Armenian events
- Fixed politics events using incorrect syntax to check countries in diplomatic range
- Fixed Republic event incorrectly checking for party scopes
- Fixed Cretan event occasionally annexing the world
- Fixed Co-Consuls being deposed by going to the olympics
- Fixed most prestigious family fading into obscurity
- Fixed startup events not pointing to your country
- Fixed error log spam from a dead character losing health

# GUI:
- Removed unused GUI types from GUI files making the GUI editor more stable
- select_import_destination.gui changed the y size of a scrollarea to remain within the window
- Replaced 4 buttons in console.gui that crash the game with useful buttons for modding
- portrait_editor_window made it possible to move the window and made all features usable

# Shaders:
- Changed gfx/FX/coat_of_arms/coat_of_arms_textured_emblem.shader so textured emblems actually work, re-added their red channel which was accidentally removed.

# Localization:
- Fixed loads of spelling errors
- Fixed various grammatical errors
- Fixed Agriana being called Agrianaa
- Fixed Ati Muwer being referred to as a male
- Fixed missing apostrophe in 'Attar
- Fixed capitalization issues
- Fixed loyalty icon not appearing
- Removed extra spaces after names

# Various fixes:
- Commented out lines triggering non-existent events
- Fixed AI Rome not getting claims on Central Gaul
- Fixed Anoint heir checking for a commented out law
- Fixed Forced March checking for a non-existent terrain type
- Added many missing equal signs
- Replaced errorous 7 character with "{"
- Fixed missions checking for "mountains" instead of "mountain"
- Fixed "[" being used instead of "{" in effect syntax
- Fixed Elephantina being unobtainable due to checking for "warelephants" instead of "warelephant" unit
- Fixed Ferrata being unobtainable due to checking for "heavy_infrantry" instead of "heavy_infantry" unit
- Fixed Antigonid events in rare cases triggering a non-existent event
- Fixed League of Korinthos forming while the player is a subject of Macedon in Greece triggering the wrong event
- Fixed non-existent Rhodes sacking event being triggered
- Fixed Carthaginian naval dominance missions checking for non-existent region
- Fixed Thracian and Roman events improperly checking for Galatia region
- Fixed Oinoandia coat of arms having a wrongly defined colour
- Fixed cancelling the Death to Tyrants mission potentially finding a wrong character to put as ruler
- Fixed edge-case where recruiting a character could raise an error
- Fixed using the omen effect on Daniel having wrong syntax
- Fixed Apotheosis manpower and money effects not having a minimum setup properly
- Fixed several wrongly defined minimum and maximums
- Fixed Daring trait not increasing likelihood of injuries
- Fixed "Forced Smiles" event where Commander demands an office for a friend not triggering and not being updated to account for Governors
- Fixed wrong areas being selected in for loyalty hit in event where Governor demands they adapt to local mannerisms
- Fixed "Learning from experience" event potentially selecting a party leader and being impossible for non-republics to trigger
- Fixed several minor edge-case and syntax issues in generic infrastructure mission events
- Fixed Carthaginian trade mission events showing the wrong character
- Fixed unneeded if's in monarchy events
- Fixed "Crisis in X" event attempting to show too many characters
- Fixed Rapax and Improba distinctions never triggering
- Fixed broken edge-case tooltip in Install Philokles decision
- Fixed Egyptian marriage event potentialyl failing to find a Thracian bride
- Ensured else_if was properly used instead of using else, if
- In common\loyalty\00_events.txt line 2876 was `ymonths`, it has been changed to `months`
- In events\storms.txt there were 2 checks for `is_in_region = areas`, the areas region does not exist so these lines were removed
- In common\modifiers\00_from_events_province.txt there were a few modifiers with like `local_population_happiness = -0.1.0` that I removed the extra decimal point from.
- The monthly_tarentum_war_pulse on_action incorrectly used is_in_region = carthage_area which is an area not a region, I changed it to africa_region.
- Fix great_work_template_06 being used in gw_ai_build even though it was removed
- Fix italia_region being used instead of central_italy_region in greek missions 4
- Fix missing = in make_subject effect in 01_seleukid_missions_03_anatolia.txt and in events/me_seleukid_03_anatolia.txt
- Fix missing closing bracket in script_values/00_army_values.txt
- Fix missing = on line 578 of script_values/00_mission_egypt.txt
- Fix is_in_region = tripolitania_occidentalis_area in script_values/00_missions.txt, changed to is_in_area.
- Fix bugged is_in_area = carthage_area check in dhe_dde_pyrhus.txt events file
- Fix block of code incorrectly placed inside of a random_list effect in events/governor_policies.txt line 657
- Fix incorrectly spelled colors in coat_of_arms/00_pre_scripted_countries.txt
- Remove change_country_color = "median_color" line from form_media decisions because median_color does not exist
- Remove duplicate modifier = {} blocks from military traditions in 00_latin, 00_persian, and 00_persian_2
- Fix ai_build_city_pay_price_effect being used in area scope instead of country scope in 01_spartan_missions_02_peloponnesus.txt
- Fix incorrect use of is_culture trigger in modifiers/00_triggered_character_modifiers.txt
- Remove duplicate script values in 00_mission_antigonid, 00_mission_carthage, and 00_mission_epirus
- Fix incorrect scope for fam:40 used in scripted_effects/00_dde_pyrrhus_effects
- Fix incorrect scope for has_same_family trigger in scripted_effects/00_on_action_effects
- Fix incorrect usage of unit_owner scope in scripted_guis/desecrate_holy_site.txt
- Remove duplicate map = yes field in civilian_road_building.txt
- Change floor = 1 to proper use with floor = yes in unit_abilities/pillage.txt
- Fix incorrect scope for owns_or_subject_owns on line 624 of dhe_macedon.txt
- Fix usage of has_culture_group instead of country_culture_group in dhe_judea.txt
- Fix incorrect use of country scope in right_portrait fields of events in country_diplomacy.txt
- Fix left_portrait = yes in me_roman_2_provincia.txt
- Fix use of [ instead of { in me_greek_2_greece.txt
- Fix use of has_province_modifier instead of has_character_modifier on line 547 of rel_flavor_buddhist
- Fix incorrect scoping to head_of_family in royal_marriage.txt
- Fix missing = on line 279 of characterwindow.gui
- Fix missing = on line 246 of messages.gui
- Fix missing = on line 189 of multi_unit_window.gui
- Fix missing bracket in culture_view.gui and government_view.gui for the top level base_window block
- Fix too many decimals in debug_menus.gui line 649
- Fix too many decimals in multiplayer_lobby.gui
- Fix broken block of brackets at the bottom of game_configuration.gui
- Remove extra } at the end of overview_view.gui
- Fix missing bracket in select_fabricate_claim.gui line 77
- Remove extra bracket from the end of select_target_character.gui and create_social_profile_window.gui
- Fix missing bracket errors in gw_tower_03_bottom.asset and female_clothes_iberian_3.asset asset files
- Fix missing = in frontend_mainview, frontend_singleplayer, loadscreen, and progressbar_idler
- Fix incorrect spelling of GetNameWithNoTooltip function in shared/cooltip.gui



- New Update 12/4/2024

# Effects
- Added play_sound_effect which allows you to play a sound effect, targeting a country (ported from ck3)
- Added set_antagonist = yes/no effect.

# Triggers
- Added has_capital_surplus to check for the existance of any capital bonuses from the state's owner
- Added has_capital_bonus_for_trade_good to check for the existance of any captial bonuses for the specific trade good

# Other
- Added a property for subject types to allow them to bypass usual subject diplomatic limitations for declaring war (allowed_to_declare_war_against_others). This is not enabled by default for the base game. To fully enable this to work you'll also need to change the allow triggers for wargoals
- Added modifiers for local_happiness_for_wrong_religion_modifier and happiness_for_wrong_religion_modifier which is applied on top of regular happiness for the same religion modifiers. Also fixed a typo with define for WRONG_RELIGION_HAPPINESS which applies always regardless of modifiers (currently set to )
- Made all hardcoded values related to civil wars moddable through define & added documentation on what they mean


- New Update 16/4/2024

# Bugfixes
- Fix release as client state crash in the UI



As you can see, this is a minor patch, and for now it will be released as an open beta on steam & windows only. The plan is to release this on all platforms at some point in the undetermined future. Please leave feedback (or links to bug reports that you want to see fixed) in the comments section, I am quite bad at replying, but I will read them.

Thanks to all the people that helped me with this!


Available now on the steam beta branch: 2.0.4 - open beta

I also have to stress that this is not a revival of Imperator: Rome! Do not expect new content or patches going forward.
 
Last edited by a moderator:
  • 260Love
  • 120Like
  • 6
  • 2Haha
  • 1
  • 1
Reactions:
sorry, that was just me testing different spellings on the off chance I could guess the right one
Yes, I've used allowed_to_declare_war_against_others = yes first and got the error claiming it's an unexpected token

and yes, I am on the new beta. I have access to new effects and triggers. But this parameter doesn't work.
Seems like we got too eager and jumped the gun on this feature :p. It'll be released soon with the next batch of changes.
 
  • 9Like
  • 8
Reactions:
Amazing to see this come closer to release.

Any chance at all the code can be updated to allow achievements when playing modded/not iron man like in Victoria 3? I would play so much of this game if I could get achievements without Ironman!
 
  • 1Like
Reactions:
Something I believe very strongly needs updating is the mercenary system, specifically, the UI. As it stands hiring mercenaries is an abominably difficult task that shouldn't have anywhere near the amount of hassle it does. I think that having the mercenary tab be divided into folders, one for each region, would go nicely to narrowing down the search for mercenaries. As it stands it's a singular gigantic list of one mercenary after the other and you have no idea where they really are until you hover over the eye icon and find them. And oftentimes the mercenary army you want is just too far away! What if you need to find the best mercenary army in your region right now?

I think a simple solution to this would be to have all mercenary armies on the map be divided into folders, with each folder representing the region they're in. This would very nicely smooth out the UI and make looking for mercenaries less of a hassle, especially if the folders can be arranged to start out with your capital region, and go outward from there.

Another idea I've had for a while is to add more options to the "ah shit! I need some money, now!" options. The Pentarchy of "Cut Military Supplies" "Emergency Tax" "Strongarm" "Neglect Infrastructure" and "Neglect Research." All of those are excellent options, what I'm asking for is the reverse of those: "Increase Military Supplies" "Donate to the Poor" "Support the Priesthood" "Infrastructure Investment" and "Increase Scientific Investment"
 
Last edited:
  • 1
Reactions:
There are several things holding this game back from greatness in my opinion:
  1. Introduce legion templates so that the AI is competent and competitive. There is this weird dynamic where once an AI nation starts making legions, it actually becomes far weaker... Mainly because the legion compositions are absolutely awful. Easiest fix would be to introduce AI legion templates similar to the levy templates. Otherwise it is a complete and utter clown fiesta, especially with a mod like Invictus. It is not the fault of the mod. The AI just has no idea how to handle legion compositions, especially if a mod goes a step further to introduce new units.
  2. Get rid of this dull feature where Legions are gaining negative traits upon losing battles. It is one of the worst and most poorly-thought out functionalities in the whole game. A small mistake and an unfortunate dice roll leaves your legion branded with no possible redemption and even if there is such, no such information is conveyed back to the player. This feature ruins warfare to such an extent that I have had players opt-out of having legions completely and relying on levies instead.
  3. Do something so that barbarians are more of a threat. They are absolutely pathetic. The buffs they get when it comes to levy multiplier are negligible and do not compensate their shortcomings. Barbarians are suffering from so many issues it is not even funny:
    1. The way levies work and how supply wagons are distributed means that a tiny fraction of the army gets all the supplies, leaving the rest to starve.
    2. Once barbarians advance to a more "civilised" government, they actually become even weaker... They lose their levy multiplier bonus, yet they are behind on research and then they start pumping out legions with nonsensical compositions. A triple whammy of AI incompetence, poorly designed game features and imbalance coming together.
I am aware it is a long shot to work on any of this. But I still thought it is worth pointing out. There are some serious flaws in foundational mechanics of the game, which ruin the whole experience, at least for me. Especially when it comes to warfare and how good of a fight the AI can put up.

This goes beyond a fix here or there. Fundamental features of the game need to be looked at and adjusted. No amount of modding is going to fix the AI sabotaging itself by spamming legions made up of 2 unit types only (often ones which make absolutely no sense). No amount of modding is going to fix barbarians being a laughing stock - nothing but a place-holder of territories. No amount of modding is going to fix the awful legion distinction system. Introducing supply wagons as its own unit was one of the worst mistakes ever made. It made warfare so much worse. It absolutely crippled the AI, especially barbarians. The whole game is riddled with issues, mainly because of poorly thought-out systems which do not gel well together and they often come at the expense of the AI's competence and ability to handle those new features.
 
Last edited:
  • 1Like
  • 1
  • 1
  • 1
Reactions:
There are several things holding this game back from greatness in my opinion:
  1. Introduce legion templates so that the AI is competent and competitive. There is this weird dynamic where once an AI nation starts making legions, it actually becomes far weaker... Mainly because the legion compositions are absolutely awful. Easiest fix would be to introduce AI legion templates similar to the levy templates. Otherwise it is a complete and utter clown fiesta, especially with a mod like Invictus. It is not the fault of the mod. The AI just has no idea how to handle legion compositions, especially if a mod goes a step further to introduce new units.
  2. Get rid of this dull feature where Legions are gaining negative traits upon losing battles. It is one of the worst and most poorly-thought out functionalities in the whole game. A small mistake and an unfortunate dice roll leaves your legion branded with no possible redemption and even if there is such, no such information is conveyed back to the player. This feature ruins warfare to such an extent that I have had players opt-out of having legions completely and relying on levies instead.
  3. Do something so that barbarians are more of a threat. They are absolutely pathetic. The buffs they get when it comes to levy multiplier are negligible and do not compensate their shortcomings. Barbarians are suffering from so many issues it is not even funny:
    1. The way levies work and how supply wagons are distributed means that a tiny fraction of the army gets all the supplies, leaving the rest to starve.
    2. Once barbarians advance to a more "civilised" government, they actually become even weaker... They lose their levy multiplier bonus, yet they are behind on research and then they start pumping out legions with nonsensical compositions. A triple whammy of AI incompetence, poorly designed game features and imbalance coming together.
I am aware it is a long shot to work on any of this. But I still thought it is worth pointing out. There are some serious flaws in foundational mechanics of the game, which ruin the whole experience, at least for me. Especially when it comes to warfare and how good of a fight the AI can put up.

This goes beyond a fix here or there. Fundamental features of the game need to be looked at and adjusted. No amount of modding is going to fix the AI sabotaging itself by spamming legions made up of 2 unit types only (often ones which make absolutely no sense). No amount of modding is going to fix barbarians being a laughing stock - nothing but a place-holder of territories. No amount of modding is going to fix the awful legion distinction system. Introducing supply wagons as its own unit was one of the worst mistakes ever made. It made warfare so much worse. It absolutely crippled the AI, especially barbarians. The whole game is riddled with issues, mainly because of poorly thought-out systems which do not gel well together and they often come at the expense of the AI's competence and ability to handle those new features.

Same here, man. I actually pointed out the infuriating issue of a single barbarian army getting ALL of the region's supply wagons. As for the Legion Dishonors, I generally agree, with the main exception being the one for a Legion fighting on the losing end of a civil war, and the one for desecrating your own holy sites. Whilst Rapax should be reworked to be "rewarded" for razing your own cities, including during a civil war, other than that, I think all Legion Dishonors should be "rewarded" via a 3 strike system. If said legion, say, loses 3 battles in a row within the span of a decade.

One thing I'd really love is for Tribesmen to remain relevant to civilized factions, I think it'd be super awesome if there was a checkbox next to all minor settlements that gives the option for said settlement to have its desired pop ration adjusted to the level it'd be if the faction owner were tribal, and that it'd provide +15% Tribesmen happiness. Naturally, this checkbox should only be available to civilized factions. Beyond this though, there should absolutely be things done to rework tribes, which they desperately need.
 
I have suggestions for games auto trade script:

My thoughts on Automatic Trade Script:

Automatic Trade script should be able to take in count food production modifiers in a province, and calculate how much food it need to;

1st: Not starve in winter (priority is this)
2nd: Fill the Food Storage (if there's enough trade slots and food trade good production in world) (might need to enable this after a few months in order to make sure every state in world will not starve)

Also Food Trade Goods may need adjusting of their food production, late game there might be lack of them, which could cause starvation.


Script should start at 1st Capital States of Countries, then Capital Region, and Other Regions at last.

Food must calculated and imported or removed first before other trade goods.

Excess Food Trade Goods Routes must be removed. No need to waste Trade Slots.

Script also should not try to import food if target for export state will starve if that food trade good is exported to you (Maybe storing state variables which includes how many food trade goods are reserved for state in order to not starve)

It might be best to create multiple versions of trade scripts that become activated with related decisions and global variables.

For example one version which prioritizes subject trades, one version that is more performance heavy (calculating which trade good to trade based on, e.g. preffering slave happiness trade goods if slaves are unhappy), a version that is super efficient (for slow computers), a version where script prioritizes filling food storage to max for food surplus bonuses (for 0.20% pop growth bonus)

Hell, with global or country variables, it's actually possible for players to configure a trade script to their liking via events if script is made modular.


Maybe this script structure would be best:

In Order of Priority:
1- Monthly Food Calculation script for all provinces:
This is converted to which and how much food trade goods province can export or needs to import (food equivalent), taking into count food modifiers, and writing results into state variables.
e.g. set_variable = {
name = food_requirement
value = **value in required food is (+), surplus food is (-)
}

2- Capital Province Script (Called a few days after 1st Script):
This one 1st reads Capitals food_requirement variable and if it's positive, imports food trade goods, then if there's empty trade slots, fill them with other trade goods to get capital surplus.

3- Food Import script for all provinces except capital provinces (Called a few days after 2nd Script):
Checks 1st Capital Region provinces, then other provinces.
Checks food_requirement state variables of scoped provinces;
A- If value is bigger than 0, starts checking other provinces which their food_requirement variable is below 0, and import food trade goods if they have excess trade good to export to our starving province.
If all trade routes are filled, and there's still not enough food, check if there's active non-food trade routes, and cancel them (low value 1st) one by one while importing food.
B- If value is below 0 (or -100 etc), check if there's any food being imported, if there's, calculate and delete trade route if necessary. This will free trade slots in event of excess food import.

4- Generic Non-Food script for all provinces except capital provinces (Called a few days after 3rd Script):
If there's empty trade slots, Import trade goods with high value priority 1st (maybe import from specific categories to increase happiness of low happiness pops)
If there's no empty trade slots, skip target province

5- Capital Surplus fixer script for Capital Province (Called a few days after 4th Script):
Recheck Capital Surpluses and remove export trade routes if goods produced in Capital Province doesn't give Surplus bonus because they get exported. This should be last script.

These scripts need a way of detecting differences, e.g. not activated if pop food consumption is same as last month, in order to improve performance via only running scripts for target provinces only if necessary.

Can start scripts via delayed hidden events, with each one getting called by previous script.
1st script can start via monthly pulse.

Also script can notify players and AI if food storage isn't enough or there isn't enough trade slots. (current starvation / low food pop up usually appears too late to do anything about it) (edited)
 
Last edited:
  • 2
  • 1
Reactions:
Something I believe very strongly needs updating is the mercenary system, specifically, the UI. As it stands hiring mercenaries is an abominably difficult task that shouldn't have anywhere near the amount of hassle it does. I think that having the mercenary tab be divided into folders, one for each region, would go nicely to narrowing down the search for mercenaries. As it stands it's a singular gigantic list of one mercenary after the other and you have no idea where they really are until you hover over the eye icon and find them. And oftentimes the mercenary army you want is just too far away! What if you need to find the best mercenary army in your region right now?
Don't you look at your region on the map, hover over the various mercenaries, and then click on the one you want to hire?
This goes beyond a fix here or there. Fundamental features of the game need to be looked at and adjusted.
Therefore everything you have written is off-topic for a thread about "a small maintenance patch" made in their (paid) personal dev time. You should start a new thread.
 
  • 2Like
Reactions:
Great to see another update! :cool::D

I'd like to suggest one small improvement for any future patch you might make, to the way supply wagons work. As someone above pointed out, the way things work with levies is that usually one of the mini stacks gets the supply wagons, whilst the rest are left without any, and there's no way to combine them. My suggestion is to allow all units to draw food from any owned supply wagon in the same territory as them, regardless of whether they are in the same stack.

Actually, one other suggestion, again related to the levies and their mini stacks. It would be nice if we could group stacks together. Sometimes you find that all the cavalry went into one of the mini stacks, and it's then much faster than the others, so you have to constaly micro to make sure everyone arrives together. If they could be grouped together so that all stacks in the group move at the speed of the slowest, that would make life a lot easier!
 
  • 1
Reactions:
New Update to Open Beta

# Effects
- Added play_sound_effect which allows you to play a sound effect, targeting a country (ported from ck3)
- Added set_antagonist = yes/no effect.

# Triggers
- Added has_capital_surplus to check for the existance of any capital bonuses from the state's owner
- Added has_capital_bonus_for_trade_good to check for the existance of any captial bonuses for the specific trade good

# Other
- Added a property for subject types to allow them to bypass usual subject diplomatic limitations for declaring war (allowed_to_declare_war_against_others). This is not enabled by default for the base game. To fully enable this to work you'll also need to change the allow triggers for wargoals
- Added modifiers for local_happiness_for_wrong_religion_modifier and happiness_for_wrong_religion_modifier which is applied on top of regular happiness for the same religion modifiers. Also fixed a typo with define for WRONG_RELIGION_HAPPINESS which applies always regardless of modifiers (currently set to )
- Made all hardcoded values related to civil wars moddable through define & added documentation on what they mean
 
Modders going berserk!

What are they going to do with all these new tools?
 
Last edited:
  • 13Love
  • 3Haha
Reactions:
The new civil war modifications are massive!
 
Modders going berserk!

What are they going to do with all these new tools?
probably more mission trees with "UNIFY BYZANTION" branchs

the usual in short
 
  • 10Haha
Reactions:
- Made all hardcoded values related to civil wars moddable through define & added documentation on what they mean
Are you sure you want us to interact with the civil war code ? It might destroy the very fabric of the universe
 
  • 11Haha
  • 4Like
Reactions: