PYITE
Prince
- Joined
- Dec 14, 2016
- Messages
- 396
Basic DIY AI tuning and tips to create a more challenging and flavored AI
It's a lot like tuning the picture on your TV, there is no setting that will suit all personal preferences, game setups, maps, difficulty, etc...but for me these changes have allowed me to reach a higher level of challenge and enjoyment playing the game. I have been beaten by the AI a lot more in the past month then the 10 previous months combined (Nubia is an outright nightmare of a neighbor). Major credit to @Siesta Guru whose forum posts and AI+ files are where I learned about these values. Any mod code that I give is from AI+ . I have done a good amount of autoplay testing and my opinions on values and settings are based off of watching the AI play.
This is mostly about creating a more challenging AI, so all testing that I have done has been deity. The major change that I will highlight is forcing the AI to build larger militaries, this will require a larger gold income from the AI to support the upkeep. The 80% gold bonus on deity is huge and as you decrease this bonus the less likely it is for the AI to be able to pay upkeep. Similarly the 80% production bonus allows the AI to build more units while still being able to build other essential things. I will also go into how to make changes to the global parameters of the base game so that the AI isn't negatively effected by your changes.
I'm suggesting you make changes to your base game; a few notes on this. Copy the file before you make changes and keep in separate folder for reference or to overwrite your changes back to vanilla. If you are a Steam user and you make a typo in your files or just want to be able to go back to vanilla the following steps will allow this; 2nd click on Civ 6, click on properties, click local files tab, then click "verify integrity of local files" to have Steam reset your game files. I will also include the mod code for making these changes, but not a complete downloadable mod. If anyone cares to make mod and post, I'm all for it.
XML document Yields: C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data\Yields
In this file there are 2 types of tools:
Yields - These effect both the human and AI, and include preferences towards the basic units of the game: food, production, science, faith, gold, and culture. The Yield values have significant effect on worker, citizen, and settler behavior. I don't make changes to these values, but you can see in the AI+ files how you can use these values to create civ and era specific preferences.
Pseudoyields - These are basic values for AI preferences that get put into a formula that tells the AI what to build. I will go over the most significant values to change and how sensitive they are. These values are relative to each other, so if you increase one value you are in turn slightly decreasing all others. If you have the AI build more military units, they will not build as many non military items.
In the agendas xml document you can see how these are used to assign flavors to civs based on agendas and how the values are adjusted.
Some of the changes that I will suggest are based on my views of what build preferences will help the AI the most. I think the AI should build larger militaries, focus more on science, have citizens working improved tiles, build more districts, and settle new cities as quickly as possible.
Unique units, districts, and buildings always have a high building preference. Therefore if you increase military preference, AI's with UUs will produce extra large militaries.
<Row PseudoYieldType="PSEUDOYIELD_UNIT_COMBAT" DefaultValue="1.0"/>
Land military unit and encampment district preference . Recommended range 1.5 - 3.0
This number is the most sensitive of all the pseudoyields by far. You can easily go too high with this number and they will do nothing but spam units, which will in turn be disbanded by a negative gold balance. To go as high as 3.0 you will need to make the map as fertile as possible (highly recommend abundant resources).
Here is an example of how to mod the change:
<Update>
< Set DefaultValue="1.5"></Set>
< Where PseudoYieldType="PSEUDOYIELD_UNIT_COMBAT"></Where>
< /Update>
<Row PseudoYieldType="PSEUDOYIELD_UNIT_NAVAL_COMBAT" DefaultValue="1.0"/>
Naval military and harbor district preference. I've done a little testing on this and it is not nearly as sensitive as land combat. The last Viking King agenda value is 100. So Norway always has this set at 100. If you like island maps with lots of water and coast go for 50 and see how it plays. Sadly the AI hasn't gotten proper naval training yet and tend to leave ships in neutral territory waiting to heal, so I would go into global parameters and increase naval healing in neutral territory above 0 to alleviate this issue.
<Row PseudoYieldType="PSEUDOYIELD_IMPROVEMENT" DefaultValue="0.5"/>
Builders and the improvements that they create. Range 5.0 - 10.0
Big help in getting the AI to improve hexes in it's territory. You can't really overdue this one because the amount of tiles available to improve will limit the amount of builders created. The more hills and resources you have on the map, the higher I would go with this value.
<Row PseudoYieldType="PSEUDOYIELD_UNIT_SETTLER" DefaultValue="1.0"/>
Preference to build settlers. Range 10.0 - infinity
Not sensitive at all. I think it is limited by how many settling operations the AI can perform at once. I keep this one at 1000. I've tested many different values but deity AI can't seem to settle much faster than 6 cities by turn 100 (including the 3 starter settlers) and 1 more every 25-35 turns.
<Row PseudoYieldType="PSEUDOYIELD_DISTRICT" DefaultValue="3.5"/>
Preference for building districts. Range 7-12.
This number is moderately sensitive and definitely needs to be increased relative to the increases in other values or the AI will neglect district building.
<Row PseudoYieldType="PSEUDOYIELD_TECHNOLOGY" DefaultValue="5"/>
preference for increasing science output. Will help getting the AI to build campus districts and focus on getting technologies. Not sensitive. I've been using 100, but I've tried larger numbers but they don't seem to change much.
<Row PseudoYieldType="PSEUDOYIELD_GPP_SCIENTIST" DefaultValue="0.5"/>
More science preference help. Not sensitive. Range 10-100
<!-- The following are used to determine which cities to attack, and how high to rate that attack in comparison to all other production or uses -->
<Row PseudoYieldType="PSEUDOYIELD_CITY_BASE" DefaultValue="300"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_DEFENSES" DefaultValue="300"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_DEFENDING_UNITS" DefaultValue="80"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_ORIGINAL_CAPITAL" DefaultValue="200"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_POPULATION" DefaultValue="125"/>
I have done a little testing with these numbers and have found that increasing City_Base ( I'm using 1500) will cause the AI to have city envy and declare war much more frequently. They are less choosey about which city to attack and will less frequently try to march past small cities to get to your capitol.
There are other less significant pseudoyields available that you can experiment with changing the values for as well.
I highly suggest a few changes to global parameters to help the AI with the changes we have made.
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data\GlobalParameters
I would suggest decreasing war weariness. The values for per unit killed and combat in foreign and allied lands needs to be decreased or the AI will crumble do to it having so many more units KIA.
<Replace Name="WAR_WEARINESS_PER_COMBAT_IN_ALLIED_LANDS" Value="1" />
<Replace Name="WAR_WEARINESS_PER_COMBAT_IN_FOREIGN_LANDS" Value="2" />
<Replace Name="WAR_WEARINESS_PER_UNIT_KILLED" Value="3" />
There is a mod for this as well : https://forums.civfanatics.com/reso...armongering-raze-penalty-war-weariness.25482/
A few other global parameter changes that I suggest.
These changes effect the human and AI. I haven't found a way to have different global parameter values for Human and AI, if anyone knows how, please let me know.
The idea of the first 2 is to decrease rebels and military disbanding from negative gold for the AI and have the human play honest and not abuse these changes.
Decrease the chances and repeat occurrences of rebels with these values.
<Replace Name="REBELLION_CHANCE_PER_POINT" Value="2.0" />
<Replace Name="REBELLION_COOLDOWN_TURNS" Value="20" />
Decrease these numbers to slow down the disbanding of military units and loss of amenity due to negative gold
<Replace Name="GOLD_NEGATIVE_BALANCE_AMENITY_LOSS_LINE" Value="0" />
<Replace Name="GOLD_NEGATIVE_BALANCE_DISBAND_UNIT_LINE" Value="-10" />
<Replace Name="GOLD_NEGATIVE_BALANCE_SUBSEQUENT_AMENITY_LOSS" Value="-10" />
<Replace Name="GOLD_NEGATIVE_BALANCE_SUBSEQUENT_DISBAND_UNIT" Value="-10" />
10 turns of war/peace is to short for the AI to accomplish much and to easily exploitable by the human player. I've been playing 20/20, which helps the AI to capture cities before peace is declared and makes you think twice about accepting a peace deal for gold and amenities because in 20 turns there is a good chance another civ has swooped in and captured their cities that you made vulnerable. Caution vanilla war weariness can become an issue with longer minimum wars.
<Replace Name="DIPLOMACY_PEACE_MIN_TURNS" Value="10" />
<Replace Name="DIPLOMACY_WAR_MIN_TURNS" Value="10" />
Map Settings:
Increasing map fertility will obviously help the human as well as AI, but the AI is not good at getting the most out of less fertile lands. They end up working way to many farms while the human efficiently maximizes tile output.
Abundant resources is a huge help to the happiness and gold output of the AI. It also helps the AI to settle in a tighter area because they don't have to venture further out (like 4 hexes from your capitol) to settle in desirable spots. The increase in strategic resources is another huge benefit to the AI.
New world is another huge help for the AI, it gets so hilly in certain areas that it forces the AI to build and work a large number of mines.
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Maps\Utility\TerrainGenerator
In this file you can adjust the percent of desert (vanilla is 25% - I use 10-15%)
the latitude at which tundra and snow form (vanilla tundra/snow is .65/.8 - I use .80/.95)
These changes will create maps with a lot more fertile land. In a standard game there is on average 3 of 8 civs that start in desert/tundra and basically have zero chance of being a threat. Tundra is double trouble because the AI is going to settle away from the tundra and leave an area of fogged tundra that will spew out barbarians for ages.
City States
The point of many of these changes is to make it hard to capture any cities before turn 50, which will seriously slow down standard vanilla advancement via city capture. Here is a great solution to early CS abuse.
http://steamcommunity.com/sharedfiles/filedetails/?id=1130568132&searchtext=tcs
Free ancient walls for city states! Thanks @thecrazyscot
Usually the first CS doesn't fall until about turn 50
CS bonuses are extremely powerful and I think 1.5 x #number of major civs is to many. If you have a more limited selection you are forced to adjust your district choices accordingly. I find increasing the number of major civs and reducing CS creates a far more challenging game. My standard setup now for a huge map is 18 major and 12 CS (standard map 12/8).
Diplomacy:
Currently very buggy, but here is a change I have made because I didn't make the AI create larger armies so they could sit around and become outdated. Lets stop being so friendly and have some war. The vanilla values don't make sense to me and these values seem to work out more evenly with each civ having a varied relationship standing with other civs.
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data/DiplomaticActions
Here are the changes I made to the ranges of diplomatic standing
<Row BaseState="DIPLO_STATE_FRIENDLY" TransitionState="DIPLO_STATE_DECLARED_FRIEND" AllowTransitionMin="15" RequireTransitionMax="40" AllowTransitionCheck="CanDeclareFriendship" OnTransitionAction="OnDeclareFriendship"/>
<Row BaseState="DIPLO_STATE_FRIENDLY" TransitionState="DIPLO_STATE_NEUTRAL" RequireTransitionMin="-10" AllowTransitionMax="15"/>
<Row BaseState="DIPLO_STATE_NEUTRAL" TransitionState="DIPLO_STATE_FRIENDLY" RequireTransitionMax="40" AllowTransitionMin="15"/>
<Row BaseState="DIPLO_STATE_NEUTRAL" TransitionState="DIPLO_STATE_UNFRIENDLY" RequireTransitionMin="-10" AllowTransitionMax="15"/>
<Row BaseState="DIPLO_STATE_UNFRIENDLY" TransitionState="DIPLO_STATE_NEUTRAL" RequireTransitionMax="15" AllowTransitionMin="-10"/>
<Row BaseState="DIPLO_STATE_UNFRIENDLY" TransitionState="DIPLO_STATE_DENOUNCED" AllowTransitionCheck="CanDenounce" RequireTransitionMin="-35" AllowTransitionMax="-10" OnTransitionAction="OnDenouncePlayer"/>
<Row BaseState="DIPLO_STATE_DENOUNCED" TransitionState="DIPLO_STATE_WAR" AllowTransitionCheck="CanGoToWar" RequireTransitionMin="-5" OnTransitionAction="GoToWar"/>
Mods:
https://forums.civfanatics.com/resources/settlers-retreat.25732/
Settlers retreat is a required mod for a challenge. My estimate is that for every 1 human settler that is captured, a million AI settlers are captured.
Here is a personal mod that I gleaned from AI+ that I use to makes campus and commercial districts favored by AI and HolySite non favored. It also makes declaring formal war favored by the AI and declaring peace non favored so they will all negotiate peace similar to Gorgo.
<AiListTypes>
<Row ListType="DistrictForcer"/>
<Row ListType="WAR"/>
</AiListTypes>
<AiLists>
<Row ListType="DistrictForcer" LeaderType="TRAIT_LEADER_MAJOR_CIV" System="Districts"/>
<Row ListType="WAR" LeaderType="TRAIT_LEADER_MAJOR_CIV" System="DiplomaticActions"/>
</AiLists>
<AiFavoredItems>
<Row ListType="DistrictForcer" Item="DISTRICT_CAMPUS" Favored="true"/>
<Row ListType="DistrictForcer" Item="DISTRICT_COMMERCIAL_HUB" Favored="true"/>
<Row ListType="DistrictForcer" Item="DISTRICT_HOLY_SITE" Favored="false"/>
<Row ListType="WAR" Item="DIPLOACTION_DECLARE_FORMAL_WAR" Favored="true"/>
<Row ListType="WAR" Item="DIPLOACTION_MAKE_PEACE" Favored="false"/>
</AiFavoredItems>
A small but very significant change to the Tech Tree.
I really dislike the spam of holy sites along with intense competition to found a religion. The solution I have found to this is to do a slight rearranging of the ancient tech tree to have Astrology be a leaf tech that requires writing and archery as a prerequisite. I also move stonehenge to masonry to push civs towards having earlier access to building walls. This has tremendous effects on district choices for the AI. It varies with agendas but no longer does every AI build a holy site in each of their first 3 districts. They will spend the first 20 turns churning out military units with archers coming early and often. Greece for example will build an acropolis as it's first district in most cities, England goes straight for RNDY, a lot more early campus builds from everyone. It's a huge help to allowing civs to express their agendas and flavors. If you want a religion you can get one, it's still a significant early investment but one that might be worth it because you have a lot more time to found a religion before they are all gone. With standard civ numbers rarely does the max number of religions get founded. I haven't had a chance to make it into a mod (anyone interested is welcome to make it and post) pretty easy to make the changes in
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data\technologies
Astrology increased from 50 to 55 beakers (so it will go to the right of archery and writing)
Astrology new prerequisites are writing and archery
Astrology moved to UITreeRow="-1" (for positioning)
Remove astrology prerequisite from Celestial Navigation
Celestial Navigation moved to UITreeRow="-3" (for positioning)
Changed ship building prerequisite from sailing to Celestial Navigation .
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data
Changed Stonehenge prerequisite tech from astrology to masonry
House Rule: You must pay the Iron price for obtaining cities
I don't play with any city trading as a house rule because it is an exploit that will nullify any efforts that you have made to create a challenging game. You can't prevent many of the AI's mistakes, this one you can, so take advantage and stop abusing the AI and then complaining that the game is not challenging. I sometimes play without allowing myself to take anything from a peace deal in order to up the challenge a bit more. A good rule of thumb is to ask yourself if roles were reversed would you still except the deal.
It's a lot like tuning the picture on your TV, there is no setting that will suit all personal preferences, game setups, maps, difficulty, etc...but for me these changes have allowed me to reach a higher level of challenge and enjoyment playing the game. I have been beaten by the AI a lot more in the past month then the 10 previous months combined (Nubia is an outright nightmare of a neighbor). Major credit to @Siesta Guru whose forum posts and AI+ files are where I learned about these values. Any mod code that I give is from AI+ . I have done a good amount of autoplay testing and my opinions on values and settings are based off of watching the AI play.
This is mostly about creating a more challenging AI, so all testing that I have done has been deity. The major change that I will highlight is forcing the AI to build larger militaries, this will require a larger gold income from the AI to support the upkeep. The 80% gold bonus on deity is huge and as you decrease this bonus the less likely it is for the AI to be able to pay upkeep. Similarly the 80% production bonus allows the AI to build more units while still being able to build other essential things. I will also go into how to make changes to the global parameters of the base game so that the AI isn't negatively effected by your changes.
I'm suggesting you make changes to your base game; a few notes on this. Copy the file before you make changes and keep in separate folder for reference or to overwrite your changes back to vanilla. If you are a Steam user and you make a typo in your files or just want to be able to go back to vanilla the following steps will allow this; 2nd click on Civ 6, click on properties, click local files tab, then click "verify integrity of local files" to have Steam reset your game files. I will also include the mod code for making these changes, but not a complete downloadable mod. If anyone cares to make mod and post, I'm all for it.
XML document Yields: C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data\Yields
In this file there are 2 types of tools:
Yields - These effect both the human and AI, and include preferences towards the basic units of the game: food, production, science, faith, gold, and culture. The Yield values have significant effect on worker, citizen, and settler behavior. I don't make changes to these values, but you can see in the AI+ files how you can use these values to create civ and era specific preferences.
Pseudoyields - These are basic values for AI preferences that get put into a formula that tells the AI what to build. I will go over the most significant values to change and how sensitive they are. These values are relative to each other, so if you increase one value you are in turn slightly decreasing all others. If you have the AI build more military units, they will not build as many non military items.
In the agendas xml document you can see how these are used to assign flavors to civs based on agendas and how the values are adjusted.
Some of the changes that I will suggest are based on my views of what build preferences will help the AI the most. I think the AI should build larger militaries, focus more on science, have citizens working improved tiles, build more districts, and settle new cities as quickly as possible.
Unique units, districts, and buildings always have a high building preference. Therefore if you increase military preference, AI's with UUs will produce extra large militaries.
<Row PseudoYieldType="PSEUDOYIELD_UNIT_COMBAT" DefaultValue="1.0"/>
Land military unit and encampment district preference . Recommended range 1.5 - 3.0
This number is the most sensitive of all the pseudoyields by far. You can easily go too high with this number and they will do nothing but spam units, which will in turn be disbanded by a negative gold balance. To go as high as 3.0 you will need to make the map as fertile as possible (highly recommend abundant resources).
Here is an example of how to mod the change:
<Update>
< Set DefaultValue="1.5"></Set>
< Where PseudoYieldType="PSEUDOYIELD_UNIT_COMBAT"></Where>
< /Update>
<Row PseudoYieldType="PSEUDOYIELD_UNIT_NAVAL_COMBAT" DefaultValue="1.0"/>
Naval military and harbor district preference. I've done a little testing on this and it is not nearly as sensitive as land combat. The last Viking King agenda value is 100. So Norway always has this set at 100. If you like island maps with lots of water and coast go for 50 and see how it plays. Sadly the AI hasn't gotten proper naval training yet and tend to leave ships in neutral territory waiting to heal, so I would go into global parameters and increase naval healing in neutral territory above 0 to alleviate this issue.
<Row PseudoYieldType="PSEUDOYIELD_IMPROVEMENT" DefaultValue="0.5"/>
Builders and the improvements that they create. Range 5.0 - 10.0
Big help in getting the AI to improve hexes in it's territory. You can't really overdue this one because the amount of tiles available to improve will limit the amount of builders created. The more hills and resources you have on the map, the higher I would go with this value.
<Row PseudoYieldType="PSEUDOYIELD_UNIT_SETTLER" DefaultValue="1.0"/>
Preference to build settlers. Range 10.0 - infinity
Not sensitive at all. I think it is limited by how many settling operations the AI can perform at once. I keep this one at 1000. I've tested many different values but deity AI can't seem to settle much faster than 6 cities by turn 100 (including the 3 starter settlers) and 1 more every 25-35 turns.
<Row PseudoYieldType="PSEUDOYIELD_DISTRICT" DefaultValue="3.5"/>
Preference for building districts. Range 7-12.
This number is moderately sensitive and definitely needs to be increased relative to the increases in other values or the AI will neglect district building.
<Row PseudoYieldType="PSEUDOYIELD_TECHNOLOGY" DefaultValue="5"/>
preference for increasing science output. Will help getting the AI to build campus districts and focus on getting technologies. Not sensitive. I've been using 100, but I've tried larger numbers but they don't seem to change much.
<Row PseudoYieldType="PSEUDOYIELD_GPP_SCIENTIST" DefaultValue="0.5"/>
More science preference help. Not sensitive. Range 10-100
<!-- The following are used to determine which cities to attack, and how high to rate that attack in comparison to all other production or uses -->
<Row PseudoYieldType="PSEUDOYIELD_CITY_BASE" DefaultValue="300"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_DEFENSES" DefaultValue="300"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_DEFENDING_UNITS" DefaultValue="80"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_ORIGINAL_CAPITAL" DefaultValue="200"/>
<Row PseudoYieldType="PSEUDOYIELD_CITY_POPULATION" DefaultValue="125"/>
I have done a little testing with these numbers and have found that increasing City_Base ( I'm using 1500) will cause the AI to have city envy and declare war much more frequently. They are less choosey about which city to attack and will less frequently try to march past small cities to get to your capitol.
There are other less significant pseudoyields available that you can experiment with changing the values for as well.
I highly suggest a few changes to global parameters to help the AI with the changes we have made.
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data\GlobalParameters
I would suggest decreasing war weariness. The values for per unit killed and combat in foreign and allied lands needs to be decreased or the AI will crumble do to it having so many more units KIA.
<Replace Name="WAR_WEARINESS_PER_COMBAT_IN_ALLIED_LANDS" Value="1" />
<Replace Name="WAR_WEARINESS_PER_COMBAT_IN_FOREIGN_LANDS" Value="2" />
<Replace Name="WAR_WEARINESS_PER_UNIT_KILLED" Value="3" />
There is a mod for this as well : https://forums.civfanatics.com/reso...armongering-raze-penalty-war-weariness.25482/
A few other global parameter changes that I suggest.
These changes effect the human and AI. I haven't found a way to have different global parameter values for Human and AI, if anyone knows how, please let me know.
The idea of the first 2 is to decrease rebels and military disbanding from negative gold for the AI and have the human play honest and not abuse these changes.
Decrease the chances and repeat occurrences of rebels with these values.
<Replace Name="REBELLION_CHANCE_PER_POINT" Value="2.0" />
<Replace Name="REBELLION_COOLDOWN_TURNS" Value="20" />
Decrease these numbers to slow down the disbanding of military units and loss of amenity due to negative gold
<Replace Name="GOLD_NEGATIVE_BALANCE_AMENITY_LOSS_LINE" Value="0" />
<Replace Name="GOLD_NEGATIVE_BALANCE_DISBAND_UNIT_LINE" Value="-10" />
<Replace Name="GOLD_NEGATIVE_BALANCE_SUBSEQUENT_AMENITY_LOSS" Value="-10" />
<Replace Name="GOLD_NEGATIVE_BALANCE_SUBSEQUENT_DISBAND_UNIT" Value="-10" />
10 turns of war/peace is to short for the AI to accomplish much and to easily exploitable by the human player. I've been playing 20/20, which helps the AI to capture cities before peace is declared and makes you think twice about accepting a peace deal for gold and amenities because in 20 turns there is a good chance another civ has swooped in and captured their cities that you made vulnerable. Caution vanilla war weariness can become an issue with longer minimum wars.
<Replace Name="DIPLOMACY_PEACE_MIN_TURNS" Value="10" />
<Replace Name="DIPLOMACY_WAR_MIN_TURNS" Value="10" />
Map Settings:
Increasing map fertility will obviously help the human as well as AI, but the AI is not good at getting the most out of less fertile lands. They end up working way to many farms while the human efficiently maximizes tile output.
Abundant resources is a huge help to the happiness and gold output of the AI. It also helps the AI to settle in a tighter area because they don't have to venture further out (like 4 hexes from your capitol) to settle in desirable spots. The increase in strategic resources is another huge benefit to the AI.
New world is another huge help for the AI, it gets so hilly in certain areas that it forces the AI to build and work a large number of mines.
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Maps\Utility\TerrainGenerator
In this file you can adjust the percent of desert (vanilla is 25% - I use 10-15%)
the latitude at which tundra and snow form (vanilla tundra/snow is .65/.8 - I use .80/.95)
These changes will create maps with a lot more fertile land. In a standard game there is on average 3 of 8 civs that start in desert/tundra and basically have zero chance of being a threat. Tundra is double trouble because the AI is going to settle away from the tundra and leave an area of fogged tundra that will spew out barbarians for ages.
City States
The point of many of these changes is to make it hard to capture any cities before turn 50, which will seriously slow down standard vanilla advancement via city capture. Here is a great solution to early CS abuse.
http://steamcommunity.com/sharedfiles/filedetails/?id=1130568132&searchtext=tcs
Free ancient walls for city states! Thanks @thecrazyscot
Usually the first CS doesn't fall until about turn 50
CS bonuses are extremely powerful and I think 1.5 x #number of major civs is to many. If you have a more limited selection you are forced to adjust your district choices accordingly. I find increasing the number of major civs and reducing CS creates a far more challenging game. My standard setup now for a huge map is 18 major and 12 CS (standard map 12/8).
Diplomacy:
Currently very buggy, but here is a change I have made because I didn't make the AI create larger armies so they could sit around and become outdated. Lets stop being so friendly and have some war. The vanilla values don't make sense to me and these values seem to work out more evenly with each civ having a varied relationship standing with other civs.
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data/DiplomaticActions
Here are the changes I made to the ranges of diplomatic standing
<Row BaseState="DIPLO_STATE_FRIENDLY" TransitionState="DIPLO_STATE_DECLARED_FRIEND" AllowTransitionMin="15" RequireTransitionMax="40" AllowTransitionCheck="CanDeclareFriendship" OnTransitionAction="OnDeclareFriendship"/>
<Row BaseState="DIPLO_STATE_FRIENDLY" TransitionState="DIPLO_STATE_NEUTRAL" RequireTransitionMin="-10" AllowTransitionMax="15"/>
<Row BaseState="DIPLO_STATE_NEUTRAL" TransitionState="DIPLO_STATE_FRIENDLY" RequireTransitionMax="40" AllowTransitionMin="15"/>
<Row BaseState="DIPLO_STATE_NEUTRAL" TransitionState="DIPLO_STATE_UNFRIENDLY" RequireTransitionMin="-10" AllowTransitionMax="15"/>
<Row BaseState="DIPLO_STATE_UNFRIENDLY" TransitionState="DIPLO_STATE_NEUTRAL" RequireTransitionMax="15" AllowTransitionMin="-10"/>
<Row BaseState="DIPLO_STATE_UNFRIENDLY" TransitionState="DIPLO_STATE_DENOUNCED" AllowTransitionCheck="CanDenounce" RequireTransitionMin="-35" AllowTransitionMax="-10" OnTransitionAction="OnDenouncePlayer"/>
<Row BaseState="DIPLO_STATE_DENOUNCED" TransitionState="DIPLO_STATE_WAR" AllowTransitionCheck="CanGoToWar" RequireTransitionMin="-5" OnTransitionAction="GoToWar"/>
Mods:
https://forums.civfanatics.com/resources/settlers-retreat.25732/
Settlers retreat is a required mod for a challenge. My estimate is that for every 1 human settler that is captured, a million AI settlers are captured.
Here is a personal mod that I gleaned from AI+ that I use to makes campus and commercial districts favored by AI and HolySite non favored. It also makes declaring formal war favored by the AI and declaring peace non favored so they will all negotiate peace similar to Gorgo.
<AiListTypes>
<Row ListType="DistrictForcer"/>
<Row ListType="WAR"/>
</AiListTypes>
<AiLists>
<Row ListType="DistrictForcer" LeaderType="TRAIT_LEADER_MAJOR_CIV" System="Districts"/>
<Row ListType="WAR" LeaderType="TRAIT_LEADER_MAJOR_CIV" System="DiplomaticActions"/>
</AiLists>
<AiFavoredItems>
<Row ListType="DistrictForcer" Item="DISTRICT_CAMPUS" Favored="true"/>
<Row ListType="DistrictForcer" Item="DISTRICT_COMMERCIAL_HUB" Favored="true"/>
<Row ListType="DistrictForcer" Item="DISTRICT_HOLY_SITE" Favored="false"/>
<Row ListType="WAR" Item="DIPLOACTION_DECLARE_FORMAL_WAR" Favored="true"/>
<Row ListType="WAR" Item="DIPLOACTION_MAKE_PEACE" Favored="false"/>
</AiFavoredItems>
A small but very significant change to the Tech Tree.
I really dislike the spam of holy sites along with intense competition to found a religion. The solution I have found to this is to do a slight rearranging of the ancient tech tree to have Astrology be a leaf tech that requires writing and archery as a prerequisite. I also move stonehenge to masonry to push civs towards having earlier access to building walls. This has tremendous effects on district choices for the AI. It varies with agendas but no longer does every AI build a holy site in each of their first 3 districts. They will spend the first 20 turns churning out military units with archers coming early and often. Greece for example will build an acropolis as it's first district in most cities, England goes straight for RNDY, a lot more early campus builds from everyone. It's a huge help to allowing civs to express their agendas and flavors. If you want a religion you can get one, it's still a significant early investment but one that might be worth it because you have a lot more time to found a religion before they are all gone. With standard civ numbers rarely does the max number of religions get founded. I haven't had a chance to make it into a mod (anyone interested is welcome to make it and post) pretty easy to make the changes in
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data\technologies
Astrology increased from 50 to 55 beakers (so it will go to the right of archery and writing)
Astrology new prerequisites are writing and archery
Astrology moved to UITreeRow="-1" (for positioning)
Remove astrology prerequisite from Celestial Navigation
Celestial Navigation moved to UITreeRow="-3" (for positioning)
Changed ship building prerequisite from sailing to Celestial Navigation .
C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data
Changed Stonehenge prerequisite tech from astrology to masonry
House Rule: You must pay the Iron price for obtaining cities
I don't play with any city trading as a house rule because it is an exploit that will nullify any efforts that you have made to create a challenging game. You can't prevent many of the AI's mistakes, this one you can, so take advantage and stop abusing the AI and then complaining that the game is not challenging. I sometimes play without allowing myself to take anything from a peace deal in order to up the challenge a bit more. A good rule of thumb is to ask yourself if roles were reversed would you still except the deal.