Sid Meier's Civilization VI

Sid Meier's Civilization VI

Units Improvements Mod (UIM)
Swiss Halberdier  [developer] 24 Feb, 2017 @ 5:56am
Tutorial - How to customize UIM
Tutorial - How to customize UIM

I created a tutorial which you can use to customize these changes to your wishes.

Unfortunately it is not possible to add mods to an ongoing game. If you edit these values with the tutorial during your new started game, then these changes will be also recognized by the game.

Please note your changes. If I will update UIM again, then your changes will be overwritten with the new version.

How to customize UIM

1. Open the Steam Mods Installation Folder of UIM

C:\Program Files (x86)\Steam\steamapps\workshop\content\289070\871029057

2. Open the file UIM_Units.xml or UIM_Gameplay.xml with a text editor. The files can be edited with the normal Windows Text Editor.

I recommend to use "Notepad ++"[notepad-plus-plus.org] as it displays the code extensively.

3. Below are some examples how you can change these values and add new entries to the related sections.

4. Save the file

5. Launch CIVILIZATION 6 and activate Units Improvements Mod (UIM)


Example how to change the movement points, build charges and spread charges

<Update>
<Where UnitType="UNIT_BUILDER"/>
<Set BaseMoves="4" BuildCharges="6"/>
</Update>

<Update>
<Where UnitType="UNIT_MISSIONARY"/>
<Set BaseMoves="4" SpreadCharges="3"/>
</Update>

Example how to change the cost, maintenance, base sight range and the airslots of the Aircraft Carrier

<Update>
<Where UnitType="UNIT_AIRCRAFT_CARRIER"/>
<Set Cost="540" BaseMoves="4" BaseSightRange="3" AirSlots="4" Maintenance="7"/>
</Update>

Example how to change the combat strength of the Modern Armor

<Update>
<Where UnitType="UNIT_MODERN_ARMOR"/>
<Set Combat="90" BaseMoves="5"/>
</Update>

Example how to change the combat strength, ranged combat strength and attack distance range of the Archer

<Update>
<Where UnitType="UNIT_ARCHER"/>
<Set Combat="15" RangedCombat="25" Range="2"/>
</Update>

Example how to change the strength of the Corps

<Update>
<Where Name="COMBAT_CORPS_STRENGTH_MODIFIER"/>
<Set Value="12"/>
</Update>

Example how to change the strength of the Army

<Update>
<Where Name="COMBAT_ARMY_STRENGTH_MODIFIER"/>
<Set Value="20"/>
</Update>

Example how to change the upgrade costs of the own units and the levy costs of the City States units

<Update>
<Where Name="UPGRADE_NET_PRODUCTION_PERCENT_COST"/>
<Set Value="60"/>
</Update>

<Update>
<Where Name="LEVY_MILITARY_PERCENT_OF_UNIT_PURCHASE_COST"/>
<Set Value="20"/>
</Update>

Example how to change the amount of the slots of the Aerodrome city district

<Update>
<Where DistrictType="DISTRICT_AERODROME"/>
<Set AirSlots="6"/>
</Update>

Example how to change the amount of the slots of the Airstrip improvement

<Update>
<Where ImprovementType="IMPROVEMENT_AIRSTRIP"/>
<Set AirSlots="4"/>
</Update>

Example how to change the flanking bonus of the units

<Update>
<Where Name="COMBAT_FLANKING_BONUS_MODIFIER"/>
<Set Value="3"/>
</Update>

Example how to change the fortify bonus of the units

<Update>
<Where Name="FORTIFY_BONUS_PER_TURN"/>
<Set Value="4"/>
</Update>

Examples how to change the defense bonus of the forts

<Update>
<Where ImprovementType="IMPROVEMENT_ROMAN_FORT"/>
<Set DefenseModifier="5"/>
</Update>

<Update>
<Where ImprovementType="IMPROVEMENT_FORT"/>
<Set DefenseModifier="6"/>
</Update>

Examples how to change the Anti-Cavalry bonus for Anti-Cavarly units and the healing rate of the Medic

<Update>
<Where ModifierId="ANTI_CAVALRY_COMBAT_BONUS" Name="Amount"/>
<Set Value="12"/>
</Update>

<Update>
<Where ModifierId="MEDIC_INCREASE_HEAL_RATE" Name="Amount"/>
<Set Value="25"/>
</Update>

Example how to change the movement points of the roads

<Update>
<Where RouteType="ROUTE_ANCIENT_ROAD"/>
<Set MovementCost="1"/>
</Update>

<Update>
<Where RouteType="ROUTE_MEDIEVAL_ROAD"/>
<Set MovementCost="1"/>
</Update>

<Update>
<Where RouteType="ROUTE_INDUSTRIAL_ROAD"/>
<Set MovementCost="0.75"/>
</Update>

<Update>
<Where RouteType="ROUTE_MODERN_ROAD"/>
<Set MovementCost="0.50"/>
</Update>


The vanilla files are located in this folder which you can use for further reference:

C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data

The file "Units.xml" contains the values of the units. The entries are located in the block <Units>...</Units>.

The file "WMDs.xml" contains the values of the nuclear weapons. The entries are located in the block <WMDs>...</WMDs>.

The file "GlobalParameters.xml" contains several gameplay values. The entries are located in the block <GlobalParameters>...</GlobalParameters.

The file "Districts.xml" contains the values of the city districts. The entries are located in the block <Districts>...</Districts>.

The file "Improvements.xml" contains the values of the terrain improvements. The entries are located in the block <Improvements>...</Improvements>.

The file "Eras.xml" contains the values of the starting units. The entries are located in the block <MajorStartingUnits>...</MajorStartingUnits>.

The file "Routes.xml" contains the values of the roads. The entries are located in the block <Routes>...</Routes>.

The file "UnitAbilities.xml" contains the values of the unit abilities. The entries are located in the block <ModifierArguments>...</ModifierArguments>.
Last edited by Swiss Halberdier; 13 Sep, 2017 @ 6:32am
< >
Showing 1-15 of 25 comments
DuckiDeva 24 Feb, 2017 @ 8:29pm 
This looks awesome. Thanks for all the work, and the time to document it.
Swiss Halberdier  [developer] 24 Feb, 2017 @ 9:09pm 
Thanks a lot DuckiDeva!

Yes I think it's good for the players that they can customize UIM to their wishes if they want. :-)


Additional information for players who customize UIM to their wishes:

Please note your changes. If I will update UIM again, then your changes will be overwritten with the new version.
Last edited by Swiss Halberdier; 24 Feb, 2017 @ 9:09pm
Gubler 14 Mar, 2017 @ 7:12pm 
Your mod looks very impressive, and I appreciate you showing us how to edit it.

I wanted to get your advice on coding, and I hope this is the best way to reach you.

My question is this: How would difficult would it be for one to code a Hard Limit for Military and Religious Units, similar to Traders.

My reason for wanting to code this: I like to play the game with Very High Science/Culture Cost, and Very Low Production Costs. However, the AI eventually covers the map with units.

If there was a Hard Cap on Military/Religious Units ( My initial plan would be City# + Encampment#/Holy Site# ), then the AI would keep a moderate number of units, and I could enjoy the different Eras.

Thank you.
Swiss Halberdier  [developer] 15 Mar, 2017 @ 11:32am 
@dylan_gubler

Thanks a lot for your nice words and good that it's appreciated that I showed how all can easily customize UIM to their own wishes. :-)

Basically there is no value which we can set in the related vanilla "Units.xml" database table which would work as a limit. Unfortunately I don't know how to code this.

Here are some links to the very popular English Civilization forum:

https://forums.civfanatics.com/forums/civ6-creation-customization.541/

https://forums.civfanatics.com/forums/civ6-released-mods.557/

https://forums.civfanatics.com/forums/civ6-individual-components.560/

I would suggest that you ask this question somewhere there, as probably another modder solved this problem already.
Last edited by Swiss Halberdier; 15 Mar, 2017 @ 11:56am
Swiss Halberdier  [developer] 19 Feb, 2018 @ 1:31am 
Additional information after a question in the comments:


As it is written in my little tutorial here on the Steam thread, you can easily modify UIM to your wishes.

UIM_Units.xml and UIM_Gameplay.xml are located here:

C:\Program Files (x86)\Steam\steamapps\workshop\content\289070\871029057

At the start of the file UIM_Units.xml you will see this:

<GameInfo>
<Units>

In this block <Units> </Units> you can add new updates or change my existing ones to your wishes.

Just add these lines to my file as an example how to update the range of an artillery unit:

<Update>
<Where UnitType="UNIT_ARTILLERY"/>
<Set Range="3"/>
</Update>

You will find all units in the vanilla file Units.xml within the block <Units> </Units> here:

C:\Program Files (x86)\Steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data

UNIT_CATAPULT
UNIT_BOMBARD
UNIT_FIELD_CANNON
UNIT_ARTILLERY
UNIT_ROCKET_ARTILLERY
wesley 12 Sep, 2018 @ 11:48am 
Thank you i have been struggling to improve the warrior combat strength and could not figure out the needed code till i read your tuturial. Does it matter what part of the file it goes in as long as it is under the <units> tag?
Last edited by wesley; 12 Sep, 2018 @ 1:15pm
Swiss Halberdier  [developer] 22 Sep, 2018 @ 4:55am 
@wesley
Nice that my little tutorial did help you. No the order of the related entries doesn't matter as long as it is within the <Units> </Units> section.
wesley 23 Sep, 2018 @ 5:34pm 
@Swiss Halberdier
reason i ask is i was also trying to increase the archer stats but it didnt change them and dont know why. i didnt see any reference in your mod for them
Swiss Halberdier  [developer] 4 Oct, 2018 @ 7:47am 
@wesley
Yes I didn't changed the archer stats itself in my mod. But you can enhance of course your personal UIM version with additional entries.
BLÀde 18 Feb, 2019 @ 5:40am 
how would i edit the rock band so they don't cause loyalty loss?
Swiss Halberdier  [developer] 18 Feb, 2019 @ 1:30pm 
@Blade
Sorry I don't know how to edit this.
Angelhearth 16 May, 2019 @ 1:18pm 
How exactly does CostProgressionParam1 work?
Swiss Halberdier  [developer] 18 May, 2019 @ 4:52am 
@Angelhearth
Basically the higher the number is, the more will the next unit of the same type cost.
Angelhearth 18 May, 2019 @ 4:55am 
Originally posted by Swiss Halberdier:
@Angelhearth
Basically the higher the number is, the more will the next unit of the same type cost.

You don't know the "formula" behind it?
Swiss Halberdier  [developer] 18 May, 2019 @ 5:01am 
For example the Settler has the vanilla value of 30. This means that each new settler will be 30% more costly. I set this value to 15.
< >
Showing 1-15 of 25 comments
Per page: 1530 50