Modding unit statistics

Introduction

Don't think that tank is fast enough for you? Want carriers with more range? Then as with just about every other part of Hearts of Iron, Change it!. In order to get started first you want to head to Paradox Interactive\Hearts of Iron 2\db\units\ divisions and pick which divison you want to edit.

Allowed brigades

Once you pick a file, You should see something like this.

Example:

#allowed_brigades = artillery allowed_brigades = anti_tank        allowed_brigades = anti_air         #allowed_brigades = rocket_artillery allowed_brigades = sp_artillery    allowed_brigades = sp_rct_artillery allowed_brigades = tank_destroyer   allowed_brigades = light_armor_brigade allowed_brigades = heavy_armor   #allowed_brigades = super_heavy_armor allowed_brigades = armored_car allowed_brigades = engineer            #allowed_brigades = police 

This decides which brigades the unit can or can't use. In order to deny units certain brigades you can either comment them out with a #. Or remove the line completely. If you want to allow a unit a brigade it can't use normally, remove the # or add the line as needed.

Note that there is also a cag brigade type that is used for carriers.

Changing the units stats

Alright, Here's the meat. After you have set which brigades you want, it's time to edit the actual unit. You should see something like this

Example:

# 0 - Great War Tank model = {     cost                    = 16    buildtime               = 180   manpower                = 7     maxspeed                = 8     defaultorganisation     = 30    morale                  = 30    defensiveness           = 5     toughness               = 7     softness                = 30    suppression             = 1     airdefence              = 1     softattack              = 9     hardattack              = 2     airattack               = 1     transportweight         = 30    supplyconsumption       = 2     fuelconsumption         = 4     speed_cap_art           = 8     speed_cap_eng           = 8     speed_cap_at            = 8     speed_cap_aa            = 8     upgrade_time_factor = 1.0   upgrade_cost_factor = 1.0 } 

Now, I will run down what each function does.


Cost: This is the IC cost of the unit

Buildtime: This is how long it takes the unit to build

Manpower: This is how much manpower the unit requires to build

Maxspeed: This is how fast the unit can go in optimal conditions(IE Good terrain, Infra, Non-enemy land, etc.)

Defualtorganisation: This is the units default organization without the org bonus gained from researching doctrines

Morale: This is the units default morale, like organization, this is without the bonus from research

Defensiveness: This is the units defense against attacks

Toughness: This is the units defense while on the attack

Softness: This is the units defense from "Soft Attacks" like infantry fire

Suppression: This is the units ability to suppress paritisans

Airdefence: This is the units defense against air attacks

Softattack: This is how much "Soft" damage the unit does. Units like infantry and calvary will take this type of damage

Hardattack: This is how much "Hard" damage the unit does. This damage effects tanks and mechanized infantry

Airattack: This is how much damage the units can do against planes. This is usually used against tactical bombers

Transportweight: This is the units drain on TC

Supplyconsumption: This is how many supplies the unit drains daily

Fuelconsumption: This is how much oil the unit drains daily

Speed_cap_art: This is the units maximum speed while an artillery brigade is attached

Speed_cap_eng: This is the units maximum speed while an engineer brigade is attached

Speed_cap_at: This is the units maximum speed while an anti-tank brigade is attached

Speed_cap_aa: This is the units maximum speed while an anti-air brigade is attached

Upgrade_time_factor: This is amount of time it takes to upgrade a unit. I believe the actual time is based on half the amount of time it took to build the unit. By changing this you can make it half the normal half value by making it 0.5, Or make it twice the normal half value by making it 2.0

Upgrade_cost_factor: This is ic cost it takes to upgrade the unit. I think it's similar to the upgrade time system. I don't know what the actual amount is(I'm going to ballpark 1/3 the normal cost) but changing this will work the same way as changing the time. You can double, triple, or halve the normal amount of time(which I'm guessing is 1/3). Hope this wasn't too confusing :P


Editing Naval units

Changing Naval unit attributes is pretty much the same as editing land units, except they have a few different values.

Example:

# 0 - Great War Carrier model = {  cost                        = 5     buildtime                   = 547   defaultorganisation         = 30    morale                      = 30    manpower                    = 1     maxspeed                    = 18    surfacedetectioncapability  = 1     airdetectioncapability      = 2     subdetectioncapability      = 1     visibility                  = 100   seadefence                  = 8     airdefence                  = 1     seaattack                   = 1     subattack                   = 1     airattack                   = 1     shorebombardment            = 0     transportcapability         = 0     range                       = 2000  supplyconsumption           = 0.9   fuelconsumption             = 1     distance                    = 0.14 } 

I'll now go over the different values


Surfacedetectioncapability: This is the units ability to detect enemy ships in an adjacent sea province

Airdetectioncapability: This is the units ability to detect enemy planes in an adjacent province

Subdetectioncapability: This is the units ability to detect enemy submarines in an adjacent sea province

Visibility: This is the units ability to remain unseen by an enemy naval unit in an adjacent sea province

Seadefence: This is the units defense against attacks from enemy ships

Seaattack: This is the units attack power against enemy ships

Subattack: This is the units attack power against enemy subs

Shorebombardment: This is the units shore bombardment attack strenght, the higher it is, the more they can help units that are making amphibious attacks, or just plain attacking the land province your ships are next to.

Range: This is the units range

Distance: This is the distance the unit can try to close or keep away from enemy ships(This is without bonuses from doctrines or a good admiral)


Also note that if you want the sea unit you are editing to be able to use CAGs, Add allowed_brigades = cag to the top of the file.

Editing Air Units

Much like Naval units, Air units have some different values from land units.

Example:

# 0 - Interwar Bomber model = {  cost                        = 11    buildtime                   = 160   defaultorganisation         = 30    morale                      = 30    manpower                    = 2     maxspeed                    = 180   surfacedetectioncapability  = 1     airdetectioncapability      = 0     surfacedefence              = 3     airdefence                  = 1     airattack                   = 1     strategicattack             = 3     softattack                  = 6     hardattack                  = 2     navalattack                 = 1     range                       = 400   supplyconsumption           = 1.5   fuelconsumption             = 3     upgrade_time_factor = 1.0   upgrade_cost_factor = 1.0 } 

As usual, Here are what each value means


Surfacedetectioncapability: This is the air units ability to detect ships

Airdetectioncapability: This is the air units ability to detect other air units

Surfacedefence: This is the air units ability to defend against attacks from ships(Think Naval Bombers)

Airdefence: This is the air units ability to defend against attacks from other air units or land units

Airattack: This is the air units attack power against other air units

Strategicattack: This is the air units attack power when using strategic bombing attacks

Softattack: This is the air units attack power when bombing infantry and other soft units

Hardattack: This is the air units attack power when bombing tanks and other hard units

Navalattack: This is the air units attack power when bombing ships

Range: This is the air units range


Editing Brigades

In order to edit Brigades you want to head to Interactive\Hearts of Iron 2\db\units\ Brigades . Editing Brigades is alot more simpler then editing units, as there's alot less values to edit.

Example:

model = {    cost                = 10    buildtime           = 120   manpower            = 2     defensiveness       = 8     toughness           = 2     maxspeed            = -4    softness            = -20   hardattack          = 8     softattack          = 7     supplyconsumption   = 1.5   fuelconsumption     = 5     upgrade_time_factor = 0.5   upgrade_cost_factor = 1.0 } 

As you can see, alot of these are the same values as land units. When attaching a brigade, these values are added to the original unit as a sort of "bonus". You may be wondering about the negative modifiers. Those are used in cases where the brigade would hinder the unit. In this case it would be the Heavy Tanks slowing down the rest of the unit.

However, not all negative values are bad. For example, having a negative modifier on the softness value would make the unit take less damage from "Soft" attacks. Also, Be careful when assigning negative values, not every value can be negative, supplyconsumption and cost are some good examples of these values.

The CAG brigades (which are limited to carriers only) also have some extra values that are the same as naval unit values. These are:

  • Sea attack
  • Sub attack
  • Shorebombardment
  • Distance
  • Airdetection
  • Subdetection
  • Airdefense
  • Surfacedetection

All of these work in the same way as their Naval counterparts.