• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Tom Morrison

Sergeant
Aug 15, 2020
50
10
Hi! This is my first post in the Paradox forums. I apologize in advance if this would be better posted elsewhere. or if someone else addressed this issue previously.

I modified my Militia units for the game for realism, utility, and playability. This is what I changed, why I changed it, and how:

1. WHAT: I allowed Militia to have Police brigades. WHY: Many, if not most, combatant nations used militia as internal security forces, as is already reflected in HOI2 militia unit names: French gendarmes, Italian MVSN and carabinieri, US State Guards, etc. Such units often were seconded to and/or augmented by actual police. (After WWII, many US State Guards were reorganized into state police.)

2. WHAT: I reduced Militia default Morale and Organization to a base of 20% vice 30% for regular forces. WHY: I have 20 years of military experience and 35 years of studying military history. I have seen first-hand and studied others' first-hand accounts dealing with my own country's and other countries' regular, reserve, and militia forces. Part-time, second-line, and/or irregular forces that have poor training and poor equipment are second-rate and they know it. They have lower morale and organization compared to regular forces.

3. WHAT: I renamed the original Militia I unit "Militia '18" vice "Militia '36". WHY: Militia I is available when Infantry I "Infantry '18" is available. It made no sense to me for a nation to have more modern militia than regular infantry.

4. WHAT: I made each improvement in regular infantry correspond to an improvement in the quality of Militia. Infantry '18 -> Militia '18, Infantry '36 -> Militia '36, Infantry '39 -> Militia '39, etc. I made it a linear progression anchored between the original Militia I ("Militia '36", which I renamed "Militia '18") and the original Militia III ("Militia '43"). WHY: If Militia represents reservists and partially-trained soldiers, then they would have the cast-off second-line equipment of the modernizing regular troops. The guns don't just disappear.

HOW: Here is the code for the militia changes described above (file is Units > militia):

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

# Great War Militia (1918) - 1
model = {
cost = 4
buildtime = 50
manpower = 5
maxspeed = 4
defaultorganisation = 20
morale = 20
defensiveness = 6
toughness = 1
softness = 100
suppression = 1
airdefence = 2
softattack = 2
hardattack = 0
airattack = 1
transportweight = 5
supplyconsumption = 0.2
fuelconsumption = 0
speed_cap_art = 4
speed_cap_eng = 6
speed_cap_at = 4
speed_cap_aa = 4
upgrade_time_factor = 0.5
upgrade_cost_factor = 1.0
}

# Early Militia (1936) - 2
model = {
cost = 4
buildtime = 50
manpower = 5
maxspeed = 4
defaultorganisation = 20
morale = 20
defensiveness = 7
toughness = 3
softness = 100
suppression = 1
airdefence = 2
softattack = 4
hardattack = 0
airattack = 1
transportweight = 5
supplyconsumption = 0.3
fuelconsumption = 0
speed_cap_art = 4
speed_cap_eng = 6
speed_cap_at = 4
speed_cap_aa = 4
upgrade_time_factor = 0.5
upgrade_cost_factor = 1.0
}

# Basic Militia Division (1939) - 3
model = {
cost = 4
buildtime = 50
manpower = 5
maxspeed = 4
defaultorganisation = 20
morale = 20
defensiveness = 8
toughness = 5
softness = 100
suppression = 1
airdefence = 2
softattack = 5
hardattack = 1
airattack = 1
transportweight = 8
supplyconsumption = 0.3
fuelconsumption = 0
speed_cap_art = 4
speed_cap_eng = 6
speed_cap_at = 4
speed_cap_aa = 4
upgrade_time_factor = 0.5
upgrade_cost_factor = 1.0
}

# Improved Militia (1941) - 4
model = {
cost = 4
buildtime = 50
manpower = 5
maxspeed = 4
defaultorganisation = 20
morale = 20
defensiveness = 10
toughness = 7
softness = 100
suppression = 1
airdefence = 3
softattack = 6
hardattack = 2
airattack = 1
transportweight = 5
supplyconsumption = 0.5
fuelconsumption = 0
speed_cap_art = 4
speed_cap_eng = 6
speed_cap_at = 4
speed_cap_aa = 4
upgrade_time_factor = 0.5
upgrade_cost_factor = 1.0
}

# Advanced Militia (1943) - 5
model = {
cost = 4
buildtime = 50
manpower = 5
maxspeed = 4
defaultorganisation = 20
morale = 20
defensiveness = 15
toughness = 9
softness = 100
suppression = 1
airdefence = 3
softattack = 7
hardattack = 2
airattack = 1
transportweight = 5
supplyconsumption = 0.5
fuelconsumption = 0
speed_cap_art = 4
speed_cap_eng = 6
speed_cap_at = 4
speed_cap_aa = 4
upgrade_time_factor = 0.5
upgrade_cost_factor = 1.0
}

# Semimodern Militia (1945) - 6
model = {
cost = 4
buildtime = 50
manpower = 5
maxspeed = 4
defaultorganisation = 20
morale = 20
defensiveness = 17
toughness = 11
softness = 100
suppression = 1
airdefence = 3
softattack = 8
hardattack = 3
airattack = 1
transportweight = 5
supplyconsumption = 0.5
fuelconsumption = 0
speed_cap_art = 4
speed_cap_eng = 6
speed_cap_at = 4
speed_cap_aa = 4
upgrade_time_factor = 0.5
upgrade_cost_factor = 1.0
}

To correlate the changes in regular infantry to those in militia, I had to modify the regular infantry portion of the infantry tech tree as follows (file tech > infantry):

application = { # Great War Infantry Division
id = 1010
name = TECH_APP_INFANTRY_1_NAME
desc = TECH_APP_INFANTRY_1_DESC

position = { x = 24 y = 24 }
year = 1918

component = { # Bolt-Action Service Rifle
id = 1011
name = TECH_CMP_INFANTRY_1_1_NAME
type = general_equipment
difficulty = 6
}

component = { # Infantry Gun 37mm
id = 1012
name = TECH_CMP_INFANTRY_1_2_NAME
type = artillery
difficulty = 6
}

component = { # Regimental-Level HF Truck-Mounted Radios
id = 1013
name = TECH_CMP_INFANTRY_1_3_NAME
type = electronics
difficulty = 6
}

component = { # Grenades and Mines
id = 1014
name = TECH_CMP_INFANTRY_1_4_NAME
type = chemistry
difficulty = 6
}

component = { # Mass Assault Training
id = 1015
name = TECH_CMP_INFANTRY_1_5_NAME
type = training
difficulty = 6
}

required = { }
effects = {

command = { type = activate_unit_type which = infantry }
command = { type = new_model which = infantry value = 0 }
command = { type = activate_unit_type which = garrison }
command = { type = new_model which = garrison value = 0 }
command = { type = enable_task which = amphibious_assault }
}
}

application = { # Early Infantry Division
id = 1020
name = TECH_APP_INFANTRY_2_NAME
desc = TECH_APP_INFANTRY_2_DESC

position = { x = 24 y = 48 }
year = 1936



component = { # Mass-Produced Submachinegun
id = 1021
name = TECH_CMP_INFANTRY_2_1_NAME
type = general_equipment
difficulty = 6
}

component = { # Infantry Gun 50mm
id = 1022
name = TECH_CMP_INFANTRY_2_2_NAME
type = artillery
difficulty = 6
}

component = { # Battalion-Level Man-Portable VHF Radios
id = 1023
name = TECH_CMP_INFANTRY_2_3_NAME
type = electronics
difficulty = 6
}

component = { # Light Mortar 50mm
id = 1024
name = TECH_CMP_INFANTRY_2_4_NAME
type = artillery
difficulty = 6
}

component = { # Small Unit Combat Training
id = 1025
name = TECH_CMP_INFANTRY_2_5_NAME
type = training
difficulty = 6
}

required = { 1010 }
effects = {

command = { type = new_model which = infantry value = 1 }
command = { type = scrap_model which = infantry value = 0 }
command = { type = activate_unit_type which = police }
command = { type = new_model which = militia value = 1 }
command = { type = scrap_model which = militia value = 0 }

}
}

application = { # Basic Infantry Division
id = 1030
name = TECH_APP_INFANTRY_3_NAME
desc = TECH_APP_INFANTRY_3_DESC

position = { x = 24 y = 72 }
year = 1939

component = { # Squad Light Machinegun
id = 1031
name = TECH_CMP_INFANTRY_3_1_NAME
type = general_equipment
difficulty = 6
}

component = { # Infantry Gun 75mm
id = 1032
name = TECH_CMP_INFANTRY_3_2_NAME
type = artillery
difficulty = 6
}

component = { # Company-Level Man-Portable VHF Radios
id = 1033
name = TECH_CMP_INFANTRY_3_3_NAME
type = electronics
difficulty = 6
}

component = { # Medium Mortar 81mm
id = 1034
name = TECH_CMP_INFANTRY_3_4_NAME
type = artillery
difficulty = 6
}

component = { # Specialist Support Training
id = 1035
name = TECH_CMP_INFANTRY_3_5_NAME
type = training
difficulty = 6
}

required = { 1020 }
effects = {

command = { type = new_model which = infantry value = 2 }
command = { type = scrap_model which = infantry value = 1 }
command = { type = new_model which = garrison value = 1 }
command = { type = scrap_model which = garrison value = 0 }
command = { type = new_model which = militia value = 2 }
command = { type = scrap_model which = militia value = 1 }

}
}

application = { # Improved Infantry Division
id = 1040
name = TECH_APP_INFANTRY_4_NAME
desc = TECH_APP_INFANTRY_4_DESC

position = { x = 24 y = 96 }
year = 1941



component = { # Semi-Automatic Service Rifle
id = 1041
name = TECH_CMP_INFANTRY_4_1_NAME
type = general_equipment
difficulty = 6
}

component = { # Infantry Gun 105mm
id = 1042
name = TECH_CMP_INFANTRY_4_2_NAME
type = artillery
difficulty = 6
}

component = { # Platoon-Level Man-Portable VHF Radios
id = 1043
name = TECH_CMP_INFANTRY_4_3_NAME
type = electronics
difficulty = 6
}

component = { # Heavy Mortar 120mm
id = 1044
name = TECH_CMP_INFANTRY_4_4_NAME
type = artillery
difficulty = 6
}

component = { # Combined Arms Initiative Training
id = 1045
name = TECH_CMP_INFANTRY_4_5_NAME
type = training
difficulty = 6
}

required = { 1030 }
effects = {

command = { type = new_model which = infantry value = 3 }
command = { type = scrap_model which = infantry value = 2 }
command = { type = new_model which = militia value = 3 }
command = { type = scrap_model which = militia value = 2 }

}
}

application = { # Advanced Infantry Division
id = 1050
name = TECH_APP_INFANTRY_5_NAME
desc = TECH_APP_INFANTRY_5_DESC

position = { x = 24 y = 120 }
year = 1943

component = { # Basic Assault Rifle
id = 1051
name = TECH_CMP_INFANTRY_5_1_NAME
type = general_equipment
difficulty = 6
}

component = { # Infantry Gun 150mm
id = 1052
name = TECH_CMP_INFANTRY_5_2_NAME
type = artillery
difficulty = 6
}

component = { # Integral Recon and SIGINT assets
id = 1053
name = TECH_CMP_INFANTRY_5_3_NAME
type = electronics
difficulty = 6
}

component = { # Tube-launched Rocket
id = 1054
name = TECH_CMP_INFANTRY_5_4_NAME
type = rocketry
difficulty = 6
}

component = { # Task Force Training
id = 1055
name = TECH_CMP_INFANTRY_5_5_NAME
type = training
difficulty = 6
}

required = { 1040 }
effects = {

command = { type = new_model which = infantry value = 4 }
command = { type = scrap_model which = infantry value = 3 }
command = { type = new_model which = garrison value = 2 }
command = { type = scrap_model which = garrison value = 1 }
command = { type = new_model which = militia value = 4 }
command = { type = scrap_model which = militia value = 3 }
}
}

application = { # Semimodern Infantry Division
id = 1060
name = TECH_APP_INFANTRY_6_NAME
desc = TECH_APP_INFANTRY_6_DESC

position = { x = 24 y = 144 }
year = 1945

component = { # Improved Assault Rifle
id = 1061
name = TECH_CMP_INFANTRY_6_1_NAME
type = general_equipment
difficulty = 6
}

component = { # Infantry Gun 120mm Quick-Fire
id = 1062
name = TECH_CMP_INFANTRY_6_2_NAME
type = artillery
difficulty = 6
}

component = { # Improved Recon and SIGINT assets
id = 1063
name = TECH_CMP_INFANTRY_6_3_NAME
type = electronics
difficulty = 6
}

component = { # AT Recoilless Rocket Launcher
id = 1064
name = TECH_CMP_INFANTRY_6_4_NAME
type = rocketry
difficulty = 6
}

component = { # Integrated Combined Arms Training
id = 1065
name = TECH_CMP_INFANTRY_6_5_NAME
type = training
difficulty = 6
}

required = { 1050 }
effects = {

command = { type = new_model which = infantry value = 5 }
command = { type = scrap_model which = infantry value = 4 }
command = { type = new_model which = militia value = 5 }
command = { type = scrap_model which = militia value = 4 }

}
}
 
  • 1Like
Reactions: