NOTE: The Community Patch Only version of the mod does not work in this release.
Hey all,
The long-awaited new version is finally here. This will likely be the penultimate 2UC release, not the final one, as a lot of work remains to be done on 4UC integration. But substantial progress has been made, and we're continuing to get through the immense amount of work required.
This one will be a beta for now. The database in the (1) mod has been completely reorganized, and there will very likely be bugs. Also, in preparation for the final release, we added a lot of garbage cleaning checks which will cause a crash when unexpected behavior occurs. Many of these have been fixed already, but I would be surprised if we got them all. To help us debug these crashes, please report them on GitHub. Playing with minimal other mods is recommended if you want to help us make this release stable faster.
An immense thanks to @azum4roll for his enormous contributions to 4UC integration and for completely reorganizing the (1) Community Patch mod. I am appointing him a Project Overseer in recognition of his contributions and repeated showings of good judgement when coding.
Special thanks also to JohnsterID on GitHub, who helped us set up several useful tools for better debugging in the future and fixed the WorldBuilder crashes; @axatin for a lot of thorough 4UC integration work; @KungCheops for extensive Worker AI improvements as well as thorough integration of new 4UC improvement code; @L. Vern for a very handy new keyboard shortcut, and @ilteroi (who informs us that he is now retired, but came out of retirement temporarily to drop a bunch of tactical AI improvements).
If @ilteroi does remain retired going forward, the far superior state of VP's tactical AI compared to vanilla is almost entirely due to his contributions, so he deserves extra-special recognition as well. Thank you for everything!
Per the outcome of special votes (8-44) and (8-45) in the last VP Congress Session, the amended version of @azum4roll's Unit Supply Rework is now integrated into base VP (so you can delete that mod now if you have it downloaded) and events are now disabled by default, but can be reenabled in Advanced Options prior to starting the game.
To restore the previous functionality, you'll need to check all five Event options.
Changelog:
Link: https://github.com/LoneGazebo/Commu...download/Release-4.17.8/Vox.Populi.4.17.8.exe
Online as of 11:53 PM CDT on December 7. Not savegame compatible.
---
Version 4.17.1 has been released. Link above has been updated.
Changelog:
Online as of 10:39 AM CDT on December 8. Savegame compatible with 4.17.
---
Version 4.17.2 has been released. Link above has been updated.
Changelog:
Online as of 5:57 PM CDT on December 8. Savegame compatible with 4.17 versions.
---
Version 4.17.3 has been released. Link above has been updated.
Changelog:
Online as of 1:52 PM CDT on December 9. Savegame compatible with 4.17 versions.
---
Version 4.17.4 has been released. Link above has been updated.
Changelog:
Online as of 8:56 AM CDT on December 10. Savegame compatible with 4.17 versions.
---
Version 4.17.5 has been released. Link above has been updated.
Changelog:
Online as of 10:39 AM CDT on December 11. Savegame compatible with 4.17 versions.
---
Version 4.17.6 has been released. Link above has been updated.
Changelog:
Online as of 2:53 PM CDT on December 13. Should be savegame compatible with 4.17 versions.
---
Version 4.17.7 has been released. Link above has been updated.
Changelog:
Online as of 3:10 PM CDT on December 15. Should be savegame compatible with 4.17 versions.
---
Version 4.17.8 has been released. Link above has been updated.
Changelog:
Online as of 12:47 PM CDT on December 16. Savegame compatible with 4.17 versions.
Hey all,
The long-awaited new version is finally here. This will likely be the penultimate 2UC release, not the final one, as a lot of work remains to be done on 4UC integration. But substantial progress has been made, and we're continuing to get through the immense amount of work required.
This one will be a beta for now. The database in the (1) mod has been completely reorganized, and there will very likely be bugs. Also, in preparation for the final release, we added a lot of garbage cleaning checks which will cause a crash when unexpected behavior occurs. Many of these have been fixed already, but I would be surprised if we got them all. To help us debug these crashes, please report them on GitHub. Playing with minimal other mods is recommended if you want to help us make this release stable faster.
An immense thanks to @azum4roll for his enormous contributions to 4UC integration and for completely reorganizing the (1) Community Patch mod. I am appointing him a Project Overseer in recognition of his contributions and repeated showings of good judgement when coding.
Spoiler What is a Project Overseer? :
Project Overseers
@Gazebo, @ilteroi, @Recursive, @axatin, @azum4roll
- Have the reserve power to veto any VP Congress proposal for any good reason
- Can approve balance changes outside of the VP Congress
- Can approve the addition of new game options to the Advanced Options menu
- Can approve the sponsorship of proposals which require a supermajority vote to pass
- New Project Overseers may be added by the current lead developer
Special thanks also to JohnsterID on GitHub, who helped us set up several useful tools for better debugging in the future and fixed the WorldBuilder crashes; @axatin for a lot of thorough 4UC integration work; @KungCheops for extensive Worker AI improvements as well as thorough integration of new 4UC improvement code; @L. Vern for a very handy new keyboard shortcut, and @ilteroi (who informs us that he is now retired, but came out of retirement temporarily to drop a bunch of tactical AI improvements).
If @ilteroi does remain retired going forward, the far superior state of VP's tactical AI compared to vanilla is almost entirely due to his contributions, so he deserves extra-special recognition as well. Thank you for everything!
Per the outcome of special votes (8-44) and (8-45) in the last VP Congress Session, the amended version of @azum4roll's Unit Supply Rework is now integrated into base VP (so you can delete that mod now if you have it downloaded) and events are now disabled by default, but can be reenabled in Advanced Options prior to starting the game.
To restore the previous functionality, you'll need to check all five Event options.
Spoiler Event Options :
Changelog:
Code:
General
- The (1) Community Patch mod has been completely reorganized by azum4roll, in the same vein as (2) Vox Populi's Complete Merge
- Performance improvements, particularly for Tactical and Diplomacy AI
- Reworked handling of danger plots cache, hopefully fixing desync issues in multiplayer
- Reduced the amount of memory used by the combat simulator, and optimized some other places
- Added extra debugging tools (thank you JohnsterID!)
Clang builds can now be compiled through Visual Studio
The CvMiniDump file generated when the game crashes is now more useful for debugging
Added a useful debugging tool for managing assertions in the code
Added new automated verification checks to GitHub repository
- Added many columns and tables to the database in preparation for 4UC integration, although not all are functional (see "Modding Tools" section for functional ones)
- Massive code cleanups
Made the (1) mod database file structure less modular and more organized by game components like (2)
- Mod options already enables the game to be modular, and the logic is in the DLL, not database
- A side note to the above point, the DLL has been edited so much that some mod options actually have been fully integrated and can't be turned off (the old Pick'N'Mix ones)
Mostly removed the need of using CustomModDbUpdates to guard mod options
- It's used to prevent mod options from being activated in case of database errors causing partial update
- But database.log and xml.log will show any database errors anyway
Removed database changes that only take effect when certain mod options are on (but default off in Community Patch)
- These belong in their own mod, not Community Patch, and are probably defunct by now anyway
- Mod list: CARGO_SHIPS, PROMOTIONS_UNIT_NAMING
Added references to text columns
Changed some columns from default values to not null, if the row doesn't make sense without the column value
Updated a lot of new VP columns to be non-nullable
Removed unused columns:
- Policies.IsOpener
- Units.CoastalFireOnly (was non-functional)
Removed unused tables:
- SpecialistFlavors
- CitySpecialization_TargetYields
- Yield_Flavors
- Resource_Flavors
- BattleTypes
- BattleRoles
- TacticalMoves
- Improvement_YieldAdjacentSameType
- Improvement_YieldAdjacentTwoSameType
- Improvement_AdjacentImprovementYieldChanges
- The last three have been replaced by Improvement_YieldPerXAdjacentImprovement
Changed some legacy Community Patch columns from integer to boolean
Removed database indices that are not used on demand (mostly UI)
- The small amount of update/delete statements when loading the mods doesn't warrant creating an index
- Most tables are cached in the DLL
Removed a bunch of (new or updated) unused text
Moved UI and lua files to correct folders
- UI files that are overridden by EUI are in the LUA folder, to be deleted if the EUI version is installed
- New UI files are in the New UI folder
- New lua scripts are in the New Lua folder
- UI files and lua scripts that override base game versions but do not have an EUI version are in the Overrides folder
-- note that WorldView.lua, MiniMapPanel.lua, and MiniMapPanel.xml are in the Overrides folder, as we have our own modifications yet to be merged with EUI
- Moved new combat simulator text from (2) to (1) since EnemyUnitPanel.lua is there
- Moved Randomized Victory game option to (2) since the required UI files are there
- Moved a lot of new UI/notification text from (2) to (1)
These are referenced in DLL and it is possible for Community Patch modmods to get them to show up
Only the ones with MOD_BALANCE_VP check should stay at (2)
Only a small part has been moved; will work on the rest later
Removed horrible Firaxis implementation for public declarations log
Could consume up to ~80 KB of memory without good reason
Plus the code for it was disgusting to look at and inefficient
Replaced with a few loops of code that send the declaration when appropriate (i.e., when protection is made/revoked or a new player is met)
There's no need to store this in memory at all
Removed atrocious Firaxis implementation for diplomacy message log
Was VERY slow and inefficient, looping through every sent message (up to 60) to see how long it's been since a specific message was sent
And it would do this for many types of message the AI can send, and repeat for every other player
And then, at the end of its turn, it would go through all of the messages it's sent to each player, increment the "turns since sent" by 1 (which wouldn't update while dead)
And then go through them all AGAIN to write data from each message to a logfile, despite already logging the message on sending
Replaced this horror show with a simple two-dimensional C array that stores the turn number for each type of message and does [game turn minus turn sent] to figure out how long it's been
The mind boggles as to why this was not done originally, I cannot overstate how badly this was coded
Also, with this terrible code removed and azum4roll's reorganization, reworking the leader dialogue system in the future will be a lot easier
Modding Tools
Accomplishments Table
- Accomplishments are like in-game achievements that can be completed by each player, and various components may give benefits based on the number of specific accomplishments completed
- Accomplishments can stack if repeatedly completed, with exceptions
- Accomplishments can NEVER be undone - once completed, they stay completed
- This system can effectively replace many tables and help with AI evaluation, once devs get to it
Other New Tables
- Building_UnitClassTrainingAllowed: allows the player to train the specified unit class, overriding tech restrictions
- Building_ResourceClaim: On construction, claim all unowned tiles within working range with specified resources
If IncludeOwnedByOtherPlayer is true, tiles owned by other players are also claimed and a diplomatic penalty is applied
- Building_LakePlotYieldChangesGlobal: yield boost to all lakes in empire
- Building_YieldFromGoldenAgeStart: instant yields to the city when empire starts a golden age
- Building_YieldChangesPerGoldenAge: yield boost to the city when empire starts a golden age, capping at YieldCap if not NULL
- Building_YieldFromPurchaseGlobal: instant yields to the city when investing or purchasing buildings or units in any city
- Improvement_YieldPerXAdjacentTerrain: yields that an adjacent terrain type provides to this improvement
Fractional bonuses work, and stack with those from Improvement_YieldPerXAdjacentImprovement
- Improvement_DomainProductionModifier: gives a production bonus to the city owning the tile for a particular unit domain
- Improvement_DomainFreeExperience: gives bonus experience for units of a particular domain constructed in the city owning the tile
- Improvement_AccomplishmentYieldChanges: gain yields from accomplishments
Other New Columns
- Buildings.GPRateModifierPerMarriage: modifier to GP rate per active marriage with city-state (not at war)
- Building_YieldFromVictoryGlobal.GoldenAgeOnly: only gives the instant yields if the empire is currently in a Golden Age
- Buildings.GPPOnCitizenBirth: instant GPP for the great person with the most points when a citizen is born, scaling with era
- Buildings.GPRateModifierPerLocalTheme: modifier to GP rate per completed great work theme
- Buildings.GlobalHappinessPerMajorWar: global happiness per major civ currently at war with the player
- Buildings.GlobalMilitaryProductionModPerMajorWar: global modifier to military unit production per major civ currently at war with the player
- Buildings.NoStarvationNonSpecialist: non-specialists cannot consume more than the city's food per turn
- Improvements.GreatPersonRateModifier: improvement grants a Great Person Point generation percentage bonus to the city when worked
- Improvements.BlockTileSteal: the tile cannot be stolen by any means (disabled when pillaged)
- UnitPromotions.AdjacentCityDefenseMod: when a unit with this promotion is adjacent to a city, city strength value is boosted by X%.
- Leaders.WorkWithWillingness and Leaders.WorkAgainstWillingness: see Diplomacy AI section below
Recently added IgnoreTerrainCost column (UnitPromotions_Terrains & UnitPromotions_Features)
- Now separated into IgnoreTerrainCostIn and IgnoreTerrainCostFrom
- IgnoreTerrainCostIn: Unit ignores terrain costs in any tile containing the specified terrain/feature
- IgnoreTerrainCostFrom: Unit ignores extra terrain cost from the specified terrain/feature, but not others on the same tile
- A unit entering a Forest+Hill tile with IgnoreTerrainCostFrom forests would only ignore the Forest's cost, not the Hill's cost
- All existing specific terrain promotions in VP are IgnoreTerrainCostIn, but modders/players can now change this
AI
City Governor
- Now prioritizes Food a lot more in small cities, unless the focus is set to something else
- Added AI support for new Buildings.NoStarvationNonSpecialist column
Diplomacy AI
- All leaders have been given two additional personality flavors: WorkWithWillingness and WorkAgainstWillingness
These were originally base game (pre-BNW) unused columns in the Leaders table
WorkWithWillingness measures a leader's tendency to make strategic alliances WITH others
WorkAgainstWillingness measures a leader's tendency to make strategic alliances AGAINST others
Default value is 5, so it will not break custom civs that don't have it specified
For now they have been set to the same value as the leader's DoFWillingness and DenounceWillingness, respectively
Mainly added these because I didn't want to have two empty columns in the Leaders table (but also didn't want to break civ compatibility unnecessarily), and because I wanted to decouple alliance-making from friendship/denouncing, especially for the World Congress AI
This kills two birds with one stone
See the end of this section for more notes
- Added a lot of assertions to make the game crash if Diplo AI memory is accessed or modified incorrectly (to identify bugs and prevent undefined behavior)
- AI now has logic to determine when they're okay with being bribed to go to war with a City-State
- Humans are now treated equally by the AI in promises
If the AI breaks a promise to them - the human is released from the same type of promise with the AI, if they made one
Previously only AI-AI relations and AI promises to humans (if humans broke them) would do this, although AI very rarely breaks promises so this was a minor issue
- AI can now use the "Impossible. You go too far." option when their friend asks them for a coop war against a human
Humans will receive a message from the AI warning them of the attempt
AI could already do this towards other AI, the dialogue was the obstacle
- If a master willingly gives their vassal independence or liberates them, the vassal now forgives capturing their original capital / Holy City *IF* they have it back
This can be done in the opposite order too: giving independence and then returning the capital / Holy City
Returning the Holy City only counts if it's still the Holy City
- Resurrecting a player now removes the diplo penalty for capturing the original capital / Holy City from every player on that player's team
- Added a separate memory value to track if a player has EVER captured the original capital / Holy City, to prevent a "returned key city" diplo bonus from being given by either of the two above methods
However, returning the key city can still reduce the capture penalty
- Diplo bonus for liberating a city is now permanent for certain calculations, including approach
There are several points in the code where the AI compares the number of cities liberated to the number of cities ever captured to determine how benevolent a player is towards them
However, with the bonus for liberating a city being temporary, this would cause the calculation to become incorrect once the bonus expires
Liberation bonus to approach no longer stacks with the bonus for liberating the capital / Holy City (you get the key city bonus for key cities, and the regular bonus for regular cities)
Liberation bonus to opinion is still temporary, but the bonus reduction if player has captured more than they've liberated now uses the permanent value for comparison
- AI now accounts for the fact that stealing another civ's City-State Embassy with a Citadel (or America's UA, or America's upcoming UB) will provoke the other civ, and may avoid doing so
AI vassals will not steal their master's Embassies if Content or Disagreeing, but might if treated worse
- AI slightly less likely to steal from previous friends if they parted on good terms with them
- Compatibility for new Buildings columns: AI will favor the WAR approach more and want to make peace less if they get a global military production bonus from being at war, or get a global happiness bonus (and are currently unhappy)
- Blocked the ability to ask AI teammates to move their troops from your borders
- Unhardcoded "your recent diplomatic actions" modifier from being +/- the same value - the maximum bonus and penalty can now be different numbers
- Unhardcoded Random Personalities doubling random % shift to all approach scores each evaluation from 5 to 10 (now a separate define, APPROACH_RANDOM_PERSONALITIES_PERCENT)
- Changed various calculations to use WorkWithWillingness
Modifies duration of diplo bonuses for AI liking the human's proposal, supporting the AI's proposal or hosting, and unsuccessfully unsanctioning the AI
Modifies weight of "We have made Declarations of Friendship with the same leaders" bonuses
Increases FRIENDLY approach if AI is going for Diplomatic Victory
Increases FRIENDLY approach boost from gifts and trade routes
Increases FRIENDLY and reduces DECEPTIVE approaches if player is aligned with AI's World Congress interests
Increases the AI's desire to vote for World Congress proposals that help their friends and allies
- Changed various calculations to use WorkAgainstWillingness
Modifies duration of diplo penalties for AI disliking the human's proposal, foiling the AI's proposal, and unsuccessfully sanctioning the AI
Modifies weight of "Your friends found reason to denounce you", "Other civs that they like more than you have denounced you" and "We have Denounced the same leaders" modifiers
Increases WAR, HOSTILE and sometimes DECEPTIVE weight if player is not aligned with AI's World Congress interests
Modifies AI's desire to dogpile on a player who's currently getting attacked
AI will look at friends' estimated WorkAgainstWillingness as a factor to determine how cautious they should be around certain enemies
Increases the AI's desire to vote for World Congress proposals that screw over their enemies and competitors
Great People AI
- Unique Great Admirals are now able to build any improvements they have
- Consolidated Great General / Great Admiral improvement logic with Worker AI
- AI should be more sensible with not keeping too many generals and admirals sitting around doing nothing, or appointing excess field commanders
Tactical AI
- AI aggression in combat has been increased
If a unit can't flee somewhere safe, attacks are now more preferred over retreating
Enemy units which were killed in the combat sim are subtracted from the danger estimate for future iterations
AI scouts are more likely to employ hit-and-run tactics
AI better able to remember enemy units that attacked them last turn, and can now launch attacks against them even if they aren't visible
- AI will prioritize withdrawing ranged units from combat over melee units
- AI more efficient with its movement points when retreating
- AI better at excluding bad units/moves from the combat simulator
- AI will not bring in additional ranged reinforcements when it has no melee units and needs to capture a city it's dominant over
- Other general improvements, including to target selection
World Congress AI
- AI now uses the permanent value for # of cities another player has liberated when determining World Congress alignment with the AI's interests (see Diplomacy AI section)
- Threshold for AI viewing their resurrector positively and giving them significantly more support has been reduced
Added an exception: If AI is teamed up with a human they will probably see a resurrector as an ally, but won't apply the same extra-special boost
- AI factors in how a proposal affects other leaders less when determining voting or proposal-picking choices
Reduced penalty from VictoryDisputeLevel/VictoryBlockLevel by 67%
Reduced total bonus/penalty by 50%, and that's when WorkWithWillingness or WorkAgainstWillingness are 10 (respectively)
When they're less than 10, the impact of a proposal helping an ally or harming an enemy (respectively) are lowered even further
There is an unconditional exception for teammates and a conditional exception for resurrectors which makes WorkWithWillingness an automatic 10
This value was out of control so a sharp cut was necessary
It does not address all the structural problems with the World Congress but it should hopefully help with the AI dogpiling
This was another motivation for adding the two new personality flavors
Worker AI
- Taught Worker AI to use all new improvement abilities added in this version
- Changed AI worker distance to value calculation
Should now be better at prioritizing better improvements further away but also not running around too much
- Fixed some minor issues with Citadel defense evaluation
(didn't properly account for the fact that nearby tiles are claimed in some aspects)
- AI now has rudimentary code to evaluate the likelihood of another civ stealing a tile from them
- AI should now be much better at not planting GPTIs in dangerous places
- AI now properly evaluates how much happiness it will get from connecting a city
It will no longer assume it gives happiness if the city is already unhappiness capped from other sources
- Downprioritized connecting cities that can't be connected to the capital
- Downprioritized improvements which are unlikely to be worked by any city
- XAdjacentMakesValid improvement planning now takes unowned (but possibly workable) tiles into account
- Fixed missing recommendations for Work Boats
- Stopped blocking AI from considering using citadels as canals, although they should only be doing it if it's also a good citadel spot
- Various other small fixes
- Tweaked AI evaluation of improvement yields:
Food: 180 (unchanged)
Production: 180 (unchanged)
Gold: 80 -> 90
Science: 200 -> 240
Culture: 200 -> 240
Faith: 200 -> 240
Tourism: 200 -> 240
Border Growth Points: 100 -> 80
Golden Age Points: 200 (unchanged)
Other
- AI and automated scouts are now a bit better at exploring the map
Balance
Barbarians
- If a Barbarian unit spawns from e.g., plundering a Trade Route, and by chance one of the possible spawning plots is an undefended Barbarian encampment or city, the unit will now spawn there
- Encampments may now spawn on 1-tile islands again
This was originally removed because they would all spawn there when Barbarians couldn't spawn in visible lands
- Ranged units will not be spawned to garrison an empty encampment, to make Barbarians less trivial to deal with
Except on 1-tile islands, where they are preferred defenders
This includes if they spawn in an undefended camp due to luck (see above)
Buildings
Arsenal
- Unit supply from population nerfed to 5% (was 10)
Bastion Fort / Krepost
- Added 1 flat unit supply
- Unit supply from population nerfed to 5% (was 10)
Castle
- Unit supply from population nerfed to 5% (was 10)
Harbor
- Flat unit supply nerfed to 1 (was 2)
Lighthouse / Runestone
- Removed 1 flat unit supply
Military Base
- Unit supply from population nerfed to 5% (was 20)
Seaport
- Unit supply from population nerfed to 5% (was 10)
Stable
- Added 1 flat unit supply
- Removed 10% unit supply from population
Walls / Walls of Babylon
- City HP boost nerfed to 100 (was 125) for regular Walls
- City HP boost nerfed to 125 (was 150) for Walls of Babylon
- Unit supply from population nerfed to 5% (was 10)
Cities
Hit Points
- Base HP nerfed to 250 (was 300)
- HP added per citizen nerfed to 8 (was 10)
City Connections
- Can no longer provide negative Gold if city population is low
This also applies to Community Patch Only
City-States
- When liberating a City-State, only the 105 Influence bonus over either the current Influence or the contender is scaled with era
- The contender Influence is *not* scaled with era anymore, as this would cause e.g., 18000 Influence to be awarded under extreme circumstances
- Note that the 105 bonus is halved if the liberation is from Barbarians, although you are still guaranteed to be made the ally
- If City-States get a Great General somehow, they now cannot use it to Citadel-steal tiles from their friends, allies, or protectors
Civilizations
France
- UA Nerf: Reduced unit supply from population boost in all cities to 15% (was 25)
Germany
- UA Buff: Gifted units continue to give Influence each turn after being upgraded
Bonus now only expires after the unit is killed
Difficulty
- Starting unit supply from population in all cities is now 20% regardless of difficulty (including for AI and City-States)
- Removed +1 unit supply per city from all difficulties, AI and City-States
- Increased base unit supply by 4 on all difficulties
Settler: 10 -> 14
Chieftain: 9 -> 13
Warlord / Prince / King: 8 -> 12
Emperor / Immortal: 7 -> 11
Deity: 6 -> 10
AI: 8 -> 12
City-States: 8 -> 12
Values are increased by 1 per era if game starts in a later era (was 2)
Events
- The Enable Events option has been deleted, they are instead always enabled, although the code for non-spy events won't be run unless at least one of the game event options are enabled
- All game event options are now e.g., "Enable Events (Good)" instead of "No Good Events"
- All game event options are now disabled by default
- Thus, events are now turned off by default
Ideologies
Autocracy
United Front
- Reduced unit supply from population boost in all cities to 25% (was 50)
Improvements
Manufactory
- Now counts as every type of improvement for adjacency bonuses
Farm receives +1 Food for every two adjacent Manufactories
Lumber Mill receives +1 Production and Gold for every two adjacent Manufactories
Terrace Farm receives +1 Food for every adjacent Manufactory
Moai receives +1 Culture for every adjacent Manufactory
Eki receives +1 Gold and Production for every two adjacent Manufactories
Fractional bonuses stack - e.g., a Farm adjacent to another Farm and a Manufactory will receive +1 Food
This means you can safely plop down a Manufactory without disrupting your Farm or Lumber Mill triangles
Improvements which GIVE yields *TO* adjacent improvements (e.g., Kasbah) don't also boost the Manufactory
Policies
Authority
Dominance
- Added 5 flat unit supply
- Removed 10% unit supply from population in all cities
Tradition
Justice
- Added 10% unit supply from population in all cities
- Removed 20% unit supply from population in capital
Unit Spawning
- Logic for spawning units near a city has been improved
Instead of spawning all units on the same best tile and teleporting some, each unit now finds the best tile to spawn on individually
If the units belong to the city owner, they always spawn in the city first
This notably affects the unit spawned when a City-State is liberated; it'll immediately be garrisoned
Naval units will not be picked if the city isn't coastal
As a side effect of this, City-States cannot spawn on turn 0 with naval units
Unit Supply (aka Military Supply)
Tech Reduction
- Flat tech reduction multiplier is now 100% (was 83)
- Population tech reduction multiplier is now 100% (was 700)
- With the values being saner, it is easier to balance unit supply
- However, it necessitated many nerfs elsewhere
Empire Size Reduction
- Newly added to balance Unit Supply between Tall and Wide empires
- Similar to Tech and Policy modifiers, you need +5% of supply per non-puppet city to reach the same supply count
- If you have 4 non-puppet cities, every 1.2 Flat Supply and Supply from Population will count as 1 Supply
- Stacks multiplicatively with Tech Reduction and War Weariness
War Score
- Tiles which are out of city working range are now worth half when stolen, except:
Luxury Resources
Strategic Resources
Chokepoints
GPTIs that were built by the player
Wonders
Parthenon
- Removed 10% unit supply from population
UI
- Compatibility changes for new modding tools
- New keyboard shortcut: SHIFT+LCLICK on a city focus to set all cities in empire to that focus
- Added new logic for unused dialogue when AI offers peace while losing (warscore <= -10)
- Added a select few unused greeting messages as well, some civ-specific
- Made Genesis (Great Work of Writing) archaeology only due to lacking voiceover
- Text fixes
Bugfixes
- Fixed a crash when selecting a unit for vassal levy on era advance
- Fixed crashes when loading custom scenarios
- Fixed AI handicap bonus being given for already-settled cities in custom scenarios
- Fixed another crash
- Added a missing ENW file, hopefully fixing the missing ship animations
- Fixed a very nasty and hard-to-catch bug where undefined behavior was corrupting Diplomacy AI memory, causing AI to be randomly aggressive or passive towards human players
- Fixed a longstanding bug where the "please accept my offer of fealty" statement was sent as a message, not as a deal offer
- Fixed Songhai and Iroquois UAs ignoring the presence of railroads when calculating movement bonuses through the tiles they boost
- Fixed an issue where certain liberation bonuses would stack improperly and zero out a reduction to "bad" approaches
- Fixed Diplo AI not competing for victory in Medieval Era if going for Domination Victory
- Fixed 1 turn delay in Diplo AI updating its approach to WAR when asking for a coop war that another AI agreed to
- Fixed "broken coop war promise" penalty not expiring properly
- Fixed lua bugs in City View and Civilopedia
- Fixed Espionage AI counting teammates as competitors for City-State alliances
- Fixed B17 range being 5 more than Bomber instead of the intended 2
- Fixed players being at peace with Barbarians after being killed and resurrected
- Fixed city:SetPopulation() and city:ChangePopulation() lua functions not defaulting to true for reassigning citizens
- Fixed improvement planner not properly accounting for pillaged improvements when planning improvements with adjacency bonuses
- Fixed City-State allies' influence still dropping while Cold War resolution is active, in extremely rare cases
- Fixed a bug making it impossible to bribe the AI to declare war on City-States
- Fixed Barbarian Horseman having no sound when selected
- Fixed hostile dialogue unintentionally being used by non-hostile AI
- Fixed co-op war sometimes not being included as intrigue
- Fixed PLEDGE_BROKEN_MINIMUM_TURNS_BULLYING being 0 in VP, causing bullying to not block future pledges
- Fixed Improvements.WonderProductionModifier column not working correctly when multiple types of boosting improvements exist in the same city
- Fixed Trait_NumPledgeDomainProdMod table
- Fixed incomplete Traits.CombatBonusVsHigherPop column
- Fixed type of UnitPromotions.CombatBonusFromNearbyUnitClass column (supposed to be text, was integer)
- Fixed type of UnitPromotions.CombatBonusImprovement column (supposed to be text, was integer)
- Fixed a rare bug where the AI wouldn't correctly recognize that a City-State was in possession of its capital or Holy City
- Fixed minor bug in Diplo AI calculation of player with highest approach value
- Many other miscellaneous bugfixes
Link: https://github.com/LoneGazebo/Commu...download/Release-4.17.8/Vox.Populi.4.17.8.exe
Online as of 11:53 PM CDT on December 7. Not savegame compatible.
Spoiler Versions 4.17.1 - 4.17.7 :
---
Version 4.17.1 has been released. Link above has been updated.
Changelog:
Code:
- Fixed crashes from failed assertions
Fixed a crash when leaving observer mode
Fixed a crash when making a trade deal
Fixed a crash when making a trade route
Fixed a crash when Barbarians capture a city
Online as of 10:39 AM CDT on December 8. Savegame compatible with 4.17.
---
Version 4.17.2 has been released. Link above has been updated.
Changelog:
Code:
- Fixed crashes from failed assertions
Fixed a crash when evaluating the warmonger amount obtained from capturing a city
Fixed a crash when evaluating which player is an AI's biggest competitor in the World Congress
Fixed a crash when a City-State is killed
Fixed a false positive assertion in pathfinding code
- Small improvements to AI evaluation of their biggest World Congress competitor
Online as of 5:57 PM CDT on December 8. Savegame compatible with 4.17 versions.
---
Version 4.17.3 has been released. Link above has been updated.
Changelog:
Code:
- Fixed crashes from failed assertions
Fixed a crash when a player dies
Fixed a crash when plundering a trade route leading to your own city
- Fixed a division by zero crash
Online as of 1:52 PM CDT on December 9. Savegame compatible with 4.17 versions.
---
Version 4.17.4 has been released. Link above has been updated.
Changelog:
Code:
- Fixed crashes from failed assertions
Fixed a crash when a City-State liberates a city
Fixed a crash when liberating a city from Barbarians
Fixed a crash when liberating a City-State
Fixed another crash when a player dies
- Exposed CvUnit::IsNoMaintenance() and CvUnit::SetNoMaintenance() to lua
Online as of 8:56 AM CDT on December 10. Savegame compatible with 4.17 versions.
---
Version 4.17.5 has been released. Link above has been updated.
Changelog:
Code:
- Fixed crashes from failed assertions
Fixed a crash when stealing land from Barbarians
Fixed various crashes when a player dies (revamped the function which resets memory)
- Fixed unique embassies not being counted as an embassy by City-States
Online as of 10:39 AM CDT on December 11. Savegame compatible with 4.17 versions.
---
Version 4.17.6 has been released. Link above has been updated.
Changelog:
Code:
- Fixed crashes from failed assertions
Fixed a crash when building a Landmark in your own territory
Fixed another crash when eliminating a major civ - hopefully we got them all now
- Fixed missing code for building resource requirements
- Fixed the wrong flavors being used in one section of the opinion modifier code for passing/foiling the AI's World Congress proposals
- Added MINIMUM_TOURISM_MODIFIER global define, which can be used to set the cap on Tourism penalties to a value above -100% (the current value)
- AI now uses the permanent value for # of cities liberated when determining its willingness to denounce a friend
- Small performance improvement
- Tweaked "league alignment" calculation in World Congress AI
Removed approach factor entirely, since alignment feeds into Approach directly, and Approach feeds into alignment indirectly (reduces that feedback loop)
Doubled the effect of alignment on Approach
Removed -2 penalty for the AI denouncing you (kept -2 penalty if you denounced them, but removing this penalty makes the AI more adaptable)
Replaced victory dispute/block factor with a -2 penalty for the AI's biggest competitor only (AIs who are behind could get pissy at everyone, which doesn't help them, and it's now one less than the -3 for Fierce dispute/block level)
If you aren't at war, haven't liberated any cities, but do have the bonus for returning the AI's capital or Holy City, a +1 bonus is applied, but no longer stacks with the # of cities ever liberated bonus (previously it would stack but would require at least one city to be liberated)
Boosted bonus for Content voluntary vassals to +5 from +4
Boosted bonus for Content capitulated vassals to +3 from +2
Changed modifier for Disagreeing capitulated vassals to +1 from -1
Combined, these changes should make it easier to make friends with the AI in the World Congress, especially if they're not going for Diplomatic Victory
And it should also make it easier for masters and liberators to get favorable relations with an AI, but not to the point of being effortless
The voting history modifier is less diluted by other modifiers, and the AI is more likely to form blocs with the removal of the penalty to everyone who is a victory competitor
- Other tweaks to World Congress AI
AI bonus or penalty to proposal score based on alignment with the proposer now scales based on WorkWithWillingness flavor (if positive) or WorkAgainstWillingness flavor (if negative)
Increased the maximum values slightly as well
When AI applies the permanent diplo penalty for ever successfully sanctioning them, it now cancels any previous permanent bonus for unsanctioning them
AI will no longer apply a diplo bonus to players who propose sanctions against them but then change their minds and vote against
However, voting against will still avoid worse diplo penalties with that AI
Online as of 2:53 PM CDT on December 13. Should be savegame compatible with 4.17 versions.
---
Version 4.17.7 has been released. Link above has been updated.
Changelog:
Code:
- Fixed crashes from failed assertions
Fixed a crash when a City-State tries to evaluate the diplomatic implications of creating a dig site for an artifact
Fixed two crashes involving vassal taxes
- Fixed masters receiving negative taxes if a vassal's income goes into the red
- Fixed some issues with the backstabber flag in Diplomacy AI
- Fixed an issue that's been bothering me for 5.5 years: AI not disbanding diplomatic units if there are no City-States in the game
(Also City-States will now disband them too if they have them somehow)
- When vassals refuse a demand from another civ because of their master's protection, they now have unique text for this
It now also awards a diplomatic bonus to the master for protecting them, scaling with how strong the demander is relative to the vassal
This bonus cannot make the value exceed 50% of maximum vassal protection bonus
AI will now avoid making demands of vassals if they think the vassal will refuse due to the master's protection, but their estimate has some deliberate inaccuracy to allow it to still happen (no cheating)
- Made further tweaks to the "league alignment" calculation in World Congress AI, mainly for vassals
Each mutual friend, mutual DP or denounced enemy now adds 1 to alignment (maxing out at 2 to 4 depending on WorkWithWillingness)
Each DoF with an enemy, DP with an enemy or denounced friend now subtracts 1 from alignment (maxing out at 2 to 4 depending on WorkAgainstWillingness)
Vassals now don't care about their master's religion or ideology
DoF bonus for *capitulated* vassals with their master is now +1 (not +1 to +3) and doesn't apply if untrustworthy
DP bonus now doesn't apply if untrustworthy
Vassals will now apply an extra penalty to alignment (-2) if you stole from them, if you denounced them, or if you declared war on them while they were your vassal previously
If any of these extra penalties apply, or if you're untrustworthy, voluntary vassals will now treat the master (for their treatment assessment factor) as if they were capitulated
Protecting a vassal now adds 1 to alignment if it's at least 20% of the max bonus, and +2 if it's over 50%
Not protecting a vassal now subtracts 1 from alignment if it's at least 20% of the max penalty, and -2 if it's over 50% (this also counts as an extra penalty for bad treatment)
Content vassals that have a positive opinion modifier for good treatment now add an extra +1 to alignment with their master
Mistreated voluntary vassals now have a -2 penalty to alignment (was 0)
Unhappy voluntary vassals now have a -4 penalty to alignment (was -2)
Enslaved voluntary vassals now have a -6 penalty to alignment (was -4)
Mistreated capitulated vassals now have a -3 penalty to alignment (was -2)
Unhappy capitulated vassals now have a -5 penalty to alignment (was -3)
Enslaved capitulated vassals now have a -7 penalty to alignment (was -5)
The aim here is to make how much a vassal likes you primarily reflective of how you're treating them
- The diplomacy bonus for creating a Trade Route is now equivalent to the bonus for giving the same amount of GPT to the AI
Culture and Science are valued as giving 4 GPT in Ancient, 3 GPT in Classical, 2 GPT in Medieval and 1 GPT thereafter
Online as of 3:10 PM CDT on December 15. Should be savegame compatible with 4.17 versions.
---
Version 4.17.8 has been released. Link above has been updated.
Changelog:
Code:
- Fixed a crash from a failed assertion when attempting to convert your own city
- Fixed an issue where vassals wouldn't apply the opinion penalty for taxing them
- Units that can't build anything (or that only have instant builds, like Great People) can no longer receive the Prisoners of War promotion
- Vassals of the same master now get +4 to "league alignment" with each other if they're both voluntary or both capitulated, and +2 otherwise
- Vassals will apply the same religion bonus to "league alignment" with their master if the master has adopted the religion that the vassal controls (as an exception to the new rule)
Online as of 12:47 PM CDT on December 16. Savegame compatible with 4.17 versions.
Last edited: