Here are my first results, using an old saved game with ai+ and some other mods :
- I set all terrains def to -20/-17 (insane values) to check if it works, well it works on damage but on a one turn basis, AI doesnt attack my units more
- I pushed it to -60/-57 (insaner^^), well everything is one shot, BUT AI doesnt attack more
It might be that AI has already "plans" for its units and it need some turns or a new game to make their plans change according to this new change.
I say that because the AI does the exact same thing on this turn, whatever values I change.
No need to "modify damage calculation" to compensate as long as we can't confirm it would change AI behavior.
My "insane" changes for tests : Sid Meier's Civilization VI\Base\Assets\Gameplay\Data\Terrains.xml
<Terrains>
<Row TerrainType="TERRAIN_GRASS" Name="LOC_TERRAIN_GRASS_NAME" MovementCost="1" InfluenceCost="1" DefenseModifier="-60" AntiquityPriority="2"/>
<Row TerrainType="TERRAIN_GRASS_HILLS" Name="LOC_TERRAIN_GRASS_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="1" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="2"/>
<Row TerrainType="TERRAIN_GRASS_MOUNTAIN" Name="LOC_TERRAIN_GRASS_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_PLAINS" Name="LOC_TERRAIN_PLAINS_NAME" MovementCost="1" InfluenceCost="1" DefenseModifier="-60" AntiquityPriority="2"/>
<Row TerrainType="TERRAIN_PLAINS_HILLS" Name="LOC_TERRAIN_PLAINS_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="1" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="2"/>
<Row TerrainType="TERRAIN_PLAINS_MOUNTAIN" Name="LOC_TERRAIN_PLAINS_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_DESERT" Name="LOC_TERRAIN_DESERT_NAME" MovementCost="1" InfluenceCost="2" DefenseModifier="-60" AntiquityPriority="5"/>
<Row TerrainType="TERRAIN_DESERT_HILLS" Name="LOC_TERRAIN_DESERT_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="2" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="5"/>
<Row TerrainType="TERRAIN_DESERT_MOUNTAIN" Name="LOC_TERRAIN_DESERT_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_TUNDRA" Name="LOC_TERRAIN_TUNDRA_NAME" MovementCost="1" InfluenceCost="2" AntiquityPriority="3" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_TUNDRA_HILLS" Name="LOC_TERRAIN_TUNDRA_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="2" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="3"/>
<Row TerrainType="TERRAIN_TUNDRA_MOUNTAIN" Name="LOC_TERRAIN_TUNDRA_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_SNOW" Name="LOC_TERRAIN_SNOW_NAME" MovementCost="1" InfluenceCost="2" AntiquityPriority="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_SNOW_HILLS" Name="LOC_TERRAIN_SNOW_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="2" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="1"/>
<Row TerrainType="TERRAIN_SNOW_MOUNTAIN" Name="LOC_TERRAIN_SNOW_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_COAST" Name="LOC_TERRAIN_COAST_NAME" Water="true" ShallowWater="true" MovementCost="1" InfluenceCost="2" AntiquityPriority="2" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_OCEAN" Name="LOC_TERRAIN_OCEAN_NAME" Water="true" MovementCost="1" InfluenceCost="1" DefenseModifier="-60"/>
</Terrains>
- I set all terrains def to -20/-17 (insane values) to check if it works, well it works on damage but on a one turn basis, AI doesnt attack my units more
- I pushed it to -60/-57 (insaner^^), well everything is one shot, BUT AI doesnt attack more
It might be that AI has already "plans" for its units and it need some turns or a new game to make their plans change according to this new change.
I say that because the AI does the exact same thing on this turn, whatever values I change.
No need to "modify damage calculation" to compensate as long as we can't confirm it would change AI behavior.
My "insane" changes for tests : Sid Meier's Civilization VI\Base\Assets\Gameplay\Data\Terrains.xml
<Terrains>
<Row TerrainType="TERRAIN_GRASS" Name="LOC_TERRAIN_GRASS_NAME" MovementCost="1" InfluenceCost="1" DefenseModifier="-60" AntiquityPriority="2"/>
<Row TerrainType="TERRAIN_GRASS_HILLS" Name="LOC_TERRAIN_GRASS_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="1" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="2"/>
<Row TerrainType="TERRAIN_GRASS_MOUNTAIN" Name="LOC_TERRAIN_GRASS_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_PLAINS" Name="LOC_TERRAIN_PLAINS_NAME" MovementCost="1" InfluenceCost="1" DefenseModifier="-60" AntiquityPriority="2"/>
<Row TerrainType="TERRAIN_PLAINS_HILLS" Name="LOC_TERRAIN_PLAINS_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="1" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="2"/>
<Row TerrainType="TERRAIN_PLAINS_MOUNTAIN" Name="LOC_TERRAIN_PLAINS_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_DESERT" Name="LOC_TERRAIN_DESERT_NAME" MovementCost="1" InfluenceCost="2" DefenseModifier="-60" AntiquityPriority="5"/>
<Row TerrainType="TERRAIN_DESERT_HILLS" Name="LOC_TERRAIN_DESERT_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="2" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="5"/>
<Row TerrainType="TERRAIN_DESERT_MOUNTAIN" Name="LOC_TERRAIN_DESERT_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_TUNDRA" Name="LOC_TERRAIN_TUNDRA_NAME" MovementCost="1" InfluenceCost="2" AntiquityPriority="3" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_TUNDRA_HILLS" Name="LOC_TERRAIN_TUNDRA_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="2" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="3"/>
<Row TerrainType="TERRAIN_TUNDRA_MOUNTAIN" Name="LOC_TERRAIN_TUNDRA_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_SNOW" Name="LOC_TERRAIN_SNOW_NAME" MovementCost="1" InfluenceCost="2" AntiquityPriority="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_SNOW_HILLS" Name="LOC_TERRAIN_SNOW_HILLS_NAME" Hills="true" MovementCost="2" InfluenceCost="2" SightModifier="1" SightThroughModifier="1" DefenseModifier="-57" AntiquityPriority="1"/>
<Row TerrainType="TERRAIN_SNOW_MOUNTAIN" Name="LOC_TERRAIN_SNOW_MOUNTAIN_NAME" Mountain="true" MovementCost="1" InfluenceCost="3" SightModifier="2" SightThroughModifier="2" Impassable="1" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_COAST" Name="LOC_TERRAIN_COAST_NAME" Water="true" ShallowWater="true" MovementCost="1" InfluenceCost="2" AntiquityPriority="2" Appeal="1" DefenseModifier="-60"/>
<Row TerrainType="TERRAIN_OCEAN" Name="LOC_TERRAIN_OCEAN_NAME" Water="true" MovementCost="1" InfluenceCost="1" DefenseModifier="-60"/>
</Terrains>