N3OW/common/script_values/00_men_at_arms_values.txt

1094 lines
34 KiB
Text
Raw Normal View History

2026-02-13 16:56:50 +00:00
######################
# Men-at-Arms Values #
######################
#########
# Costs #
#########
@high_maint_mult = 3
### Base Cost Values
@skirmisher_recruitment_cost = 45
@skirmisher_low_maint_cost = 0.15
@skirmisher_high_maint_cost = @[skirmisher_low_maint_cost * high_maint_mult]
2026-02-22 15:33:46 +00:00
@chemical_weapons_recruitment_cost = 100
@chemical_weapons_low_maint_cost = 0.4
@chemical_weapons_high_maint_cost = @[chemical_weapons_low_maint_cost * high_maint_mult]
2026-02-13 16:56:50 +00:00
@militia_recruitment_cost = 30
@militia_low_maint_cost = 0.15
@militia_high_maint_cost = @[militia_low_maint_cost * high_maint_mult]
@archers_recruitment_cost = 55
@archers_low_maint_cost = 0.2
@archers_high_maint_cost = @[archers_low_maint_cost * high_maint_mult]
@pikemen_recruitment_cost = 75
@pikemen_low_maint_cost = 0.3
@pikemen_high_maint_cost = @[pikemen_low_maint_cost * high_maint_mult]
@heavy_infantry_recruitment_cost = 90
@heavy_infantry_low_maint_cost = 0.4
@heavy_infantry_high_maint_cost = @[heavy_infantry_low_maint_cost * high_maint_mult]
2026-02-22 15:33:46 +00:00
@super_heavy_infantry_recruitment_cost = 200
@super_heavy_infantry_low_maint_cost = 0.8
@super_heavy_infantry_high_maint_cost = @[super_heavy_infantry_low_maint_cost * high_maint_mult]
2026-02-13 16:56:50 +00:00
@light_cavalry_recruitment_cost = 85
@light_cavalry_low_maint_cost = 0.35
@light_cavalry_high_maint_cost = @[light_cavalry_low_maint_cost * high_maint_mult]
@heavy_cavalry_recruitment_cost = 200
@heavy_cavalry_low_maint_cost = 0.7
@heavy_cavalry_high_maint_cost = @[heavy_cavalry_low_maint_cost * high_maint_mult]
@siege_weapons_recruitment_cost = 60
@siege_weapons_low_maint_cost = 0.1
@siege_weapons_high_maint_cost = @[siege_weapons_low_maint_cost * high_maint_mult]
@gunpowder_recruitment_cost = 76
@gunpowder_low_maint_cost = 0.35
@gunpowder_high_maint_cost = @[gunpowder_low_maint_cost * high_maint_mult]
### Base MAA
skirmisher_recruitment_cost = @[skirmisher_recruitment_cost]
skirmisher_low_maint_cost = @[skirmisher_low_maint_cost]
skirmisher_high_maint_cost = @[skirmisher_high_maint_cost]
2026-02-22 15:33:46 +00:00
chemical_weapons_recruitment_cost = @[chemical_weapons_recruitment_cost]
chemical_weapons_low_maint_cost = @[chemical_weapons_low_maint_cost]
chemical_weapons_high_maint_cost = @[chemical_weapons_high_maint_cost]
2026-02-13 16:56:50 +00:00
militia_recruitment_cost = @[militia_recruitment_cost]
militia_low_maint_cost = @[militia_low_maint_cost]
militia_high_maint_cost = @[militia_high_maint_cost]
bowmen_recruitment_cost = @[archers_recruitment_cost]
bowmen_low_maint_cost = @[archers_low_maint_cost]
bowmen_high_maint_cost = @[archers_high_maint_cost]
crossbowmen_recruitment_cost = @[archers_recruitment_cost * 1.6]
crossbowmen_low_maint_cost = @[archers_low_maint_cost * 1.5]
crossbowmen_high_maint_cost = @[archers_high_maint_cost * 1.5]
pikemen_recruitment_cost = @[pikemen_recruitment_cost]
pikemen_low_maint_cost = @[pikemen_low_maint_cost]
pikemen_high_maint_cost = @[pikemen_high_maint_cost]
heavy_infantry_recruitment_cost = @[heavy_infantry_recruitment_cost]
heavy_infantry_low_maint_cost = @[heavy_infantry_low_maint_cost]
heavy_infantry_high_maint_cost = @[heavy_infantry_high_maint_cost]
2026-02-22 15:33:46 +00:00
super_heavy_infantry_recruitment_cost = @[super_heavy_infantry_recruitment_cost]
super_heavy_infantry_low_maint_cost = @[super_heavy_infantry_low_maint_cost]
super_heavy_infantry_high_maint_cost = @[super_heavy_infantry_high_maint_cost]
2026-02-13 16:56:50 +00:00
light_cavalry_recruitment_cost = @[light_cavalry_recruitment_cost]
light_cavalry_low_maint_cost = @[light_cavalry_low_maint_cost]
light_cavalry_high_maint_cost = @[light_cavalry_high_maint_cost]
heavy_cavalry_recruitment_cost = @[heavy_cavalry_recruitment_cost]
heavy_cavalry_low_maint_cost = @[heavy_cavalry_low_maint_cost]
heavy_cavalry_high_maint_cost = @[heavy_cavalry_high_maint_cost]
handgunner_recruitment_cost = @[gunpowder_recruitment_cost]
handgunner_low_maint_cost = @[gunpowder_low_maint_cost]
handgunner_high_maint_cost = @[gunpowder_high_maint_cost]
### Siege Weapons MAA
torch_bearers_recruitment_cost = @[siege_weapons_recruitment_cost * 0.5]
torch_bearers_low_maint_cost = @[siege_weapons_low_maint_cost * 0.5]
torch_bearers_high_maint_cost = @[siege_weapons_high_maint_cost * 0.5]
onager_recruitment_cost = @[siege_weapons_recruitment_cost]
onager_low_maint_cost = @[siege_weapons_low_maint_cost]
onager_high_maint_cost = @[siege_weapons_high_maint_cost]
mangonel_recruitment_cost = @[siege_weapons_recruitment_cost * 1.1]
mangonel_low_maint_cost = @[siege_weapons_low_maint_cost * 1.1]
mangonel_high_maint_cost = @[siege_weapons_high_maint_cost * 1.1]
trebuchet_recruitment_cost = @[siege_weapons_recruitment_cost * 1.3]
trebuchet_low_maint_cost = @[siege_weapons_low_maint_cost * 1.3]
trebuchet_high_maint_cost = @[siege_weapons_high_maint_cost * 1.3]
bombard_recruitment_cost = @[siege_weapons_recruitment_cost * 1.6]
bombard_low_maint_cost = @[siege_weapons_low_maint_cost * 1.6]
bombard_high_maint_cost = @[siege_weapons_high_maint_cost * 1.6]
ballista_recruitment_cost = @[siege_weapons_recruitment_cost]
ballista_low_maint_cost = @[siege_weapons_low_maint_cost]
ballista_high_maint_cost = @[siege_weapons_high_maint_cost]
cloud_ladder_recruitment_cost = @[siege_weapons_recruitment_cost * 1.1]
cloud_ladder_low_maint_cost = @[siege_weapons_low_maint_cost * 1.1]
cloud_ladder_high_maint_cost = @[siege_weapons_high_maint_cost * 1.1]
siege_tower_recruitment_cost = @[siege_weapons_recruitment_cost * 1.3]
siege_tower_low_maint_cost = @[siege_weapons_low_maint_cost * 1.3]
siege_tower_high_maint_cost = @[siege_weapons_high_maint_cost * 1.3]
cannon_recruitment_cost = @[gunpowder_recruitment_cost * 1.6]
cannon_low_maint_cost = @[gunpowder_low_maint_cost * 1.6]
cannon_high_maint_cost = @[gunpowder_high_maint_cost * 1.6]
### Cultural MAA
huscarls_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.28]
huscarls_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.28]
huscarls_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.28]
landsknecht_recruitment_cost = @[pikemen_recruitment_cost * 1.2]
landsknecht_low_maint_cost = @[pikemen_low_maint_cost * 1.2]
landsknecht_high_maint_cost = @[pikemen_high_maint_cost * 1.2]
longbowmen_recruitment_cost = @[archers_recruitment_cost * 1.2]
longbowmen_low_maint_cost = @[archers_low_maint_cost * 1.2]
longbowmen_high_maint_cost = @[archers_high_maint_cost * 1.2]
goedendag_recruitment_cost = @[skirmisher_recruitment_cost + 0]
goedendag_low_maint_cost = @[skirmisher_low_maint_cost + 0]
goedendag_high_maint_cost = @[skirmisher_high_maint_cost + 0]
gendarme_recruitment_cost = @[heavy_cavalry_recruitment_cost * 1.2]
gendarme_low_maint_cost = @[heavy_cavalry_low_maint_cost * 1.2]
gendarme_high_maint_cost = @[heavy_cavalry_high_maint_cost * 1.2]
chasseur_recruitment_cost = @[light_cavalry_recruitment_cost * 1.3]
chasseur_low_maint_cost = @[light_cavalry_low_maint_cost * 1.3]
chasseur_high_maint_cost = @[light_cavalry_high_maint_cost * 1.3]
picchieri_recruitment_cost = @[pikemen_recruitment_cost * 1.3]
picchieri_low_maint_cost = @[pikemen_low_maint_cost * 1.3]
picchieri_high_maint_cost = @[pikemen_high_maint_cost * 1.3]
praetorian_recruitment_cost = @[heavy_infantry_recruitment_cost * 2]
praetorian_low_maint_cost = @[heavy_infantry_low_maint_cost * 2]
praetorian_high_maint_cost = @[heavy_infantry_high_maint_cost * 2]
caballero_recruitment_cost = @[light_cavalry_recruitment_cost + 0]
caballero_low_maint_cost = @[light_cavalry_low_maint_cost * 1.1]
caballero_high_maint_cost = @[light_cavalry_high_maint_cost * 1.1]
mulaththamun_recruitment_cost = @[light_cavalry_recruitment_cost + 0]
mulaththamun_low_maint_cost = @[light_cavalry_low_maint_cost * 1.1]
mulaththamun_high_maint_cost = @[light_cavalry_high_maint_cost * 1.1]
paiks_recruitment_cost = @[archers_recruitment_cost * 1.1]
paiks_low_maint_cost = @[archers_low_maint_cost * 1.1]
paiks_high_maint_cost = @[archers_high_maint_cost * 1.1]
archers_of_the_nile_recruitment_cost = @[archers_recruitment_cost * 1.1]
archers_of_the_nile_low_maint_cost = @[archers_low_maint_cost * 1.1]
archers_of_the_nile_high_maint_cost = @[archers_high_maint_cost * 1.1]
sahel_rider_recruitment_cost = @[light_cavalry_recruitment_cost + 5]
sahel_rider_low_maint_cost = @[light_cavalry_low_maint_cost * 1.1]
sahel_rider_high_maint_cost = @[light_cavalry_high_maint_cost * 1.1]
cataphract_recruitment_cost = @[heavy_cavalry_recruitment_cost * 1.3]
cataphract_low_maint_cost = @[heavy_cavalry_low_maint_cost * 1.3]
cataphract_high_maint_cost = @[heavy_cavalry_high_maint_cost * 1.3]
monaspa_recruitment_cost = @[heavy_cavalry_recruitment_cost * 1.25]
monaspa_low_maint_cost = @[heavy_cavalry_low_maint_cost * 1.25]
monaspa_high_maint_cost = @[heavy_cavalry_high_maint_cost * 1.25]
hobelar_recruitment_cost = @[light_cavalry_recruitment_cost * 1.1]
hobelar_low_maint_cost = @[light_cavalry_low_maint_cost * 1.1]
hobelar_high_maint_cost = @[light_cavalry_high_maint_cost * 1.1]
schiltron_recruitment_cost = @[pikemen_recruitment_cost * 1.5]
schiltron_low_maint_cost = @[pikemen_low_maint_cost * 1.5]
schiltron_high_maint_cost = @[pikemen_high_maint_cost * 1.5]
metsanvartija_recruitment_cost = @[archers_recruitment_cost * 1.1]
metsanvartija_low_maint_cost = @[archers_low_maint_cost * 1.1]
metsanvartija_high_maint_cost = @[archers_high_maint_cost * 1.1]
horse_archers_recruitment_cost = @[skirmisher_recruitment_cost * 3]
horse_archers_low_maint_cost = @[skirmisher_low_maint_cost * 3]
horse_archers_high_maint_cost = @[skirmisher_high_maint_cost * 3]
warrior_monks_gold_recruitment_cost = 45
warrior_monks_piety_recruitment_cost = 200
warrior_monks_gold_low_maint_cost = 0.1
warrior_monks_gold_high_maint_cost = 0.3
warrior_monks_piety_low_maint_cost = 0.2
warrior_monks_piety_high_maint_cost = 0.6
ayyar_recruitment_cost = @[heavy_infantry_recruitment_cost - 15]
ayyar_low_maint_cost = @[heavy_infantry_low_maint_cost * 0.9]
ayyar_high_maint_cost = @[heavy_infantry_high_maint_cost * 0.9]
mubarizun_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.2]
mubarizun_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.2]
mubarizun_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.2]
druzhina_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.3]
druzhina_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.3]
druzhina_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.3]
hussar_recruitment_cost = @[light_cavalry_recruitment_cost * 1.3]
hussar_low_maint_cost = @[light_cavalry_low_maint_cost * 1.3]
hussar_high_maint_cost = @[light_cavalry_high_maint_cost * 1.3]
horn_warrior_recruitment_cost = @[skirmisher_recruitment_cost + 0]
horn_warrior_low_maint_cost = @[skirmisher_low_maint_cost + 0]
horn_warrior_high_maint_cost = @[skirmisher_high_maint_cost + 0]
bush_hunter_recruitment_cost = @[archers_recruitment_cost + 0]
bush_hunter_low_maint_cost = @[archers_low_maint_cost * 1.1]
bush_hunter_high_maint_cost = @[archers_high_maint_cost * 1.1]
shomer_recruitment_cost = @[skirmisher_recruitment_cost + 0]
shomer_low_maint_cost = @[skirmisher_low_maint_cost + 0]
shomer_high_maint_cost = @[skirmisher_high_maint_cost + 0]
khandayat_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.2]
khandayat_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.2]
khandayat_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.2]
garudas_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.28]
garudas_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.28]
garudas_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.28]
mountaineer_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.2]
mountaineer_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.2]
mountaineer_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.2]
guinea_warrior_recruitment_cost = @[skirmisher_recruitment_cost * 1.2]
guinea_warrior_low_maint_cost = @[skirmisher_low_maint_cost * 1.2]
guinea_warrior_high_maint_cost = @[skirmisher_high_maint_cost * 1.2]
sarawit_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.2]
sarawit_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.2]
sarawit_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.2]
abudrar_recruitment_cost = @[skirmisher_recruitment_cost * 1.8]
abudrar_low_maint_cost = @[skirmisher_low_maint_cost * 1.8]
abudrar_high_maint_cost = @[skirmisher_high_maint_cost * 1.8]
zbrojnosh_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.1]
zbrojnosh_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.1]
zbrojnosh_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.1]
palace_guards_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.2]
palace_guards_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.2]
palace_guards_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.2]
shenbigong_recruitment_cost = @[archers_recruitment_cost * 1.75]
shenbigong_low_maint_cost = @[archers_low_maint_cost * 1.75]
shenbigong_high_maint_cost = @[archers_high_maint_cost * 1.75]
bondi_recruitment_cost = @[pikemen_recruitment_cost * 0.67]
bondi_low_maint_cost = @[pikemen_low_maint_cost * 0.67]
bondi_high_maint_cost = @[pikemen_high_maint_cost * 0.67]
vigmen_recruitment_cost = @[archers_recruitment_cost * 1.1]
vigmen_low_maint_cost = @[archers_low_maint_cost * 1.1]
vigmen_high_maint_cost = @[archers_high_maint_cost * 1.1]
varangian_veterans_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.67]
varangian_veterans_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.67]
varangian_veterans_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.67]
jomsviking_pirates_recruitment_cost = @[skirmisher_recruitment_cost * 1.4]
jomsviking_pirates_low_maint_cost = @[skirmisher_low_maint_cost * 1.4]
jomsviking_pirates_high_maint_cost = @[skirmisher_high_maint_cost * 1.4]
tawashi_recruitment_cost = @[light_cavalry_recruitment_cost * 1.1]
tawashi_low_maint_cost = @[light_cavalry_low_maint_cost * 1.1]
tawashi_high_maint_cost = @[light_cavalry_high_maint_cost * 1.1]
ayrudzi_recruitment_cost = @[light_cavalry_recruitment_cost]
ayrudzi_low_maint_cost = @[light_cavalry_low_maint_cost]
ayrudzi_high_maint_cost = @[light_cavalry_high_maint_cost]
conrois_recruitment_cost = @[heavy_cavalry_recruitment_cost * 0.85]
conrois_low_maint_cost = @[heavy_cavalry_low_maint_cost * 0.85]
conrois_high_maint_cost = @[heavy_cavalry_high_maint_cost * 0.85]
akritai_recruitment_cost = @[skirmisher_recruitment_cost * 0.9]
akritai_low_maint_cost = @[skirmisher_low_maint_cost * 0.9]
akritai_high_maint_cost = @[skirmisher_high_maint_cost * 0.9]
skoutatoi_recruitment_cost = @[pikemen_recruitment_cost * 1.1]
skoutatoi_low_maint_cost = @[pikemen_low_maint_cost * 1.1]
skoutatoi_high_maint_cost = @[pikemen_high_maint_cost * 1.1]
ballistrai_recruitment_cost = @[archers_recruitment_cost * 1.15]
ballistrai_low_maint_cost = @[archers_low_maint_cost * 0.75]
ballistrai_high_maint_cost = @[archers_high_maint_cost * 0.75]
asawira_recruitment_cost = 300
asawira_low_maint_cost = 1
asawira_high_maint_cost = 3
fire_lancers_recruitment_cost = @[gunpowder_recruitment_cost]
fire_lancers_low_maint_cost = @[gunpowder_low_maint_cost]
fire_lancers_high_maint_cost = @[gunpowder_high_maint_cost]
gakgung_archers_recruitment_cost = @[archers_recruitment_cost * 1.2]
gakgung_archers_low_maint_cost = @[archers_low_maint_cost * 1.2]
gakgung_archers_high_maint_cost = @[archers_high_maint_cost * 1.2]
ballista_elephant_recruitment_cost = @[heavy_cavalry_recruitment_cost * 2.2]
ballista_elephant_low_maint_cost = @[heavy_cavalry_low_maint_cost * 1.4]
ballista_elephant_high_maint_cost = @[heavy_cavalry_high_maint_cost * 1.6]
pesilat_warriors_recruitment_cost = @[skirmisher_recruitment_cost * 0.9]
pesilat_warriors_low_maint_cost = @[skirmisher_low_maint_cost * 0.9]
pesilat_warriors_high_maint_cost = @[skirmisher_high_maint_cost * 0.9]
samurai_recruitment_cost = @[heavy_infantry_recruitment_cost * 1.67]
samurai_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.67]
samurai_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.67]
zhanmadao_infantry_recruitment_cost = @[heavy_infantry_recruitment_cost * 0.95]
zhanmadao_infantry_low_maint_cost = @[heavy_infantry_low_maint_cost * 1.05]
zhanmadao_infantry_high_maint_cost = @[heavy_infantry_high_maint_cost * 1.05]
burenjia_recruitment_cost = @[heavy_infantry_recruitment_cost - 15]
burenjia_low_maint_cost = @[heavy_infantry_low_maint_cost * 0.9]
burenjia_high_maint_cost = @[heavy_infantry_high_maint_cost * 0.75]
tiefutu_recruitment_cost = @[heavy_cavalry_recruitment_cost * 1.3]
tiefutu_low_maint_cost = @[heavy_cavalry_low_maint_cost * 1.3]
tiefutu_high_maint_cost = @[heavy_cavalry_high_maint_cost * 1.3]
black_armor_cavalry_recruitment_cost = @[heavy_cavalry_recruitment_cost * 1.3]
black_armor_cavalry_low_maint_cost = @[heavy_cavalry_low_maint_cost * 1.3]
black_armor_cavalry_high_maint_cost = @[heavy_cavalry_high_maint_cost * 1.3]
rocket_carts_recruitment_cost = @[archers_recruitment_cost * 1.25]
rocket_carts_low_maint_cost = @[archers_low_maint_cost * 0.9] # uses gunpowder, but also uses less men than archers would
rocket_carts_high_maint_cost = @[archers_high_maint_cost * 0.9]
### Regional MAA
camel_rider_recruitment_cost = @[light_cavalry_recruitment_cost + 0]
camel_rider_low_maint_cost = @[light_cavalry_low_maint_cost * 0.8]
camel_rider_high_maint_cost = @[light_cavalry_high_maint_cost * 0.8]
war_elephant_recruitment_cost = @[heavy_cavalry_recruitment_cost * 2]
war_elephant_low_maint_cost = @[heavy_cavalry_low_maint_cost * 1.2]
war_elephant_high_maint_cost = @[heavy_cavalry_high_maint_cost * 1.4]
2026-02-22 15:33:46 +00:00
airship_recruitment_cost = @[heavy_cavalry_recruitment_cost * 3]
airship_low_maint_cost = @[heavy_cavalry_low_maint_cost * 1.6]
airship_high_maint_cost = @[heavy_cavalry_high_maint_cost * 1.8]
2026-02-13 16:56:50 +00:00
guanch_vaulter_recruitment_cost = @[skirmisher_recruitment_cost * 1.2]
guanch_vaulter_low_maint_cost = @[skirmisher_low_maint_cost * 1.2]
guanch_vaulter_high_maint_cost = @[skirmisher_high_maint_cost * 1.2]
###Accolade MaA
accolade_skirmisher_recruitment_cost = @[skirmisher_recruitment_cost * 2]
accolade_bowmen_recruitment_cost = @[archers_recruitment_cost * 2]
accolade_crossbowmen_recruitment_cost = @[archers_recruitment_cost * 1.6 * 2]
accolade_pikemen_recruitment_cost = @[pikemen_recruitment_cost * 2]
accolade_heavy_infantry_recruitment_cost = @[heavy_infantry_recruitment_cost * 2]
accolade_light_cavalry_recruitment_cost = @[light_cavalry_recruitment_cost * 2]
accolade_heavy_cavalry_recruitment_cost = @[heavy_cavalry_recruitment_cost * 2]
accolade_camel_rider_recruitment_cost = @[light_cavalry_recruitment_cost * 2]
accolade_siege_weapons_recruitment_cost = @[siege_weapons_recruitment_cost * 2]
accolade_war_elephant_recruitment_cost = @[heavy_cavalry_recruitment_cost * 4]
accolade_horse_archers_recruitment_cost = @[skirmisher_recruitment_cost * 3 * 2]
varangian_guards_recruitment_cost = @[heavy_infantry_recruitment_cost * 0.8]
varangian_guards_low_maint_cost = @[heavy_infantry_low_maint_cost * 0.8]
varangian_guards_high_maint_cost = @[heavy_infantry_high_maint_cost * 0.8]
handpicked_faithful_recruitment_cost = @[heavy_infantry_recruitment_cost * 0.75]
handpicked_faithful_low_maint_cost = @[heavy_infantry_low_maint_cost * 0.75]
handpicked_faithful_high_maint_cost = @[heavy_infantry_high_maint_cost * 0.75]
#MPO
steppe_raiders_recruitment_cost = @[light_cavalry_recruitment_cost * 0.9]
steppe_raiders_low_maint_cost = @[light_cavalry_low_maint_cost * 0.9]
steppe_raiders_high_maint_cost = @[light_cavalry_high_maint_cost * 0.9]
heavy_horse_archers_recruitment_cost = @[skirmisher_recruitment_cost * 3.5]
heavy_horse_archers_low_maint_cost = @[skirmisher_low_maint_cost * 3.5]
heavy_horse_archers_high_maint_cost = @[skirmisher_high_maint_cost * 3.5]
nomad_lancers_recruitment_cost = @[heavy_cavalry_recruitment_cost * 0.95]
nomad_lancers_low_maint_cost = @[heavy_cavalry_low_maint_cost * 0.95]
nomad_lancers_high_maint_cost = @[heavy_cavalry_high_maint_cost * 0.95]
kheshig_recruitment_cost = @[skirmisher_recruitment_cost * 5]
kheshig_veterans_low_maint_cost = @[skirmisher_low_maint_cost * 5]
kheshig_veterans_high_maint_cost = @[skirmisher_high_maint_cost * 5]
mangudai_recruitment_cost = @[skirmisher_recruitment_cost * 2.2]
mangudai_low_maint_cost = @[skirmisher_low_maint_cost * 2.2]
mangudai_high_maint_cost = @[skirmisher_high_maint_cost * 2.2]
cataphract_archers_recruitment_cost = @[heavy_cavalry_recruitment_cost * 1.3]
cataphract_archers_low_maint_cost = @[heavy_cavalry_low_maint_cost * 1.3]
cataphract_archers_high_maint_cost = @[heavy_cavalry_high_maint_cost * 1.3]
maturkan_warriors_recruitment_cost = @[archers_recruitment_cost * 1.05]
maturkan_warriors_low_maint_cost = @[archers_low_maint_cost * 1.05]
maturkan_warriors_high_maint_cost = @[archers_high_maint_cost * 1.05]
##############
# AI Weights #
##############
culture_ai_weight_skirmishers = {
value = -10
if = { # Cultures that favours skirmishers
limit = {
culture = {
OR = {
has_cultural_pillar = heritage_baltic
has_cultural_pillar = heritage_ugro_permian
has_cultural_pillar = heritage_balto_finnic
}
}
}
add = 20
}
if = { # Cultures that dislike skirmishers
limit = {
culture = {
OR = {
has_cultural_pillar = heritage_central_germanic
has_cultural_pillar = heritage_frankish
has_cultural_pillar = heritage_iberian
has_cultural_pillar = heritage_latin
}
}
}
add = -60
}
if = { # Cultures with a special MaA of that type should avoid the base version of the unit
limit = {
culture = {
culture_has_skirmisher_maa = yes
}
}
add = -500
}
}
culture_ai_weight_archers = {
value = 0
if = { # Cultures that favours archers
limit = {
culture = {
OR = {
has_cultural_pillar = heritage_west_germanic
has_cultural_pillar = heritage_brythonic
has_cultural_pillar = heritage_east_african
has_cultural_pillar = heritage_indo_aryan
has_cultural_pillar = heritage_dravidian
has_cultural_pillar = heritage_burman
has_cultural_pillar = heritage_chinese
}
}
}
add = 40
}
if = { # Cultures that dislike archers
limit = {
OR = {
culture = { has_cultural_pillar = heritage_central_germanic }
culture = { has_cultural_pillar = heritage_frankish }
}
}
add = -60
}
if = { # Cultures with a special MaA of that type should avoid the base version of the unit
limit = {
culture = {
culture_has_archer_maa = yes
}
}
add = -500
}
}
culture_ai_weight_heavy_infantry = {
value = 0
if = { # Cultures that favours heavy infantry
limit = {
culture = {
OR = {
has_cultural_pillar = heritage_central_germanic
has_cultural_pillar = heritage_north_germanic
has_cultural_pillar = heritage_west_germanic
has_cultural_pillar = heritage_east_slavic
}
}
}
add = 40
}
if = { # Cultures with a special MaA of that type should avoid the base version of the unit
limit = {
OR = {
culture = {
culture_has_heavy_infantry_maa = yes
}
# Zhanmadao (China)
vassal_contract_has_flag = celestial_province_military
vassal_contract_has_flag = celestial_province_protectorate
}
}
add = -500
}
}
culture_ai_weight_pikemen = {
value = 0
if = { # Cultures that favours spearmen
limit = {
OR = {
culture = { has_cultural_pillar = heritage_central_germanic }
culture = { has_cultural_pillar = heritage_latin }
}
}
add = 40
}
if = { # Cultures with a special MaA of that type should avoid the base version of the unit
limit = {
culture = {
culture_has_pikemen_maa = yes
}
}
add = -500
}
}
culture_ai_weight_light_cavalry = {
value = 20
if = { # Cultures that REALLY like light cavalry
limit = {
mpo_can_recruit_nomad_maa_trigger = no
OR = {
culture = { has_cultural_pillar = heritage_iranian }
}
}
add = 80
}
if = { # Cultures that favours light cavalry
limit = {
mpo_can_recruit_nomad_maa_trigger = no
culture = {
OR = {
has_cultural_pillar = heritage_arabic
has_cultural_pillar = heritage_berber
has_cultural_pillar = heritage_iberian
has_cultural_pillar = heritage_indo_aryan
has_cultural_pillar = heritage_turkic
has_cultural_pillar = heritage_mongolic
}
}
}
add = 40
}
if = { # Cultures that dislike light cavalry
limit = {
OR = {
culture = { has_cultural_pillar = heritage_central_germanic }
culture = { has_cultural_pillar = heritage_tibetan }
culture = { has_cultural_pillar = heritage_baltic }
culture = { has_cultural_pillar = heritage_burman }
culture = { has_cultural_pillar = heritage_somalian }
}
}
add = -60
}
if = { # Cultures with a special MaA of that type should avoid the base version of the unit
limit = {
culture = {
culture_has_light_cavalry_maa = yes
}
}
add = -500
}
if = { # Cultures with a preference for Camel Riders should buy those over normal light cavalry
limit = {
culture = {
has_innovation = innovation_war_camels
}
OR = {
culture = { has_cultural_pillar = heritage_arabic }
culture = { has_cultural_pillar = heritage_berber }
}
}
add = -200
}
}
culture_ai_weight_heavy_cavalry = {
value = 0
if = { # Cultures that REALLY like heavy cavalry
limit = {
mpo_can_recruit_nomad_maa_trigger = no
OR = {
culture = { has_cultural_pillar = heritage_iranian }
# Steppe cultures
culture = { has_cultural_pillar = heritage_turkic }
culture = { has_cultural_pillar = heritage_mongolic }
}
}
add = 80
}
if = { # Cultures that favours heavy cavalry
limit = {
mpo_can_recruit_nomad_maa_trigger = no
OR = {
culture = { has_cultural_pillar = heritage_central_germanic }
culture = { has_cultural_pillar = heritage_frankish }
culture = { has_cultural_pillar = heritage_indo_aryan }
}
}
add = 40
}
if = { # Cultures that dislike heavy cavalry
limit = {
culture = {
OR = {
has_cultural_pillar = heritage_tibetan
has_cultural_pillar = heritage_baltic
has_cultural_pillar = heritage_south_slavic
has_cultural_pillar = heritage_sahelian
has_cultural_pillar = heritage_senegambian
has_cultural_pillar = heritage_west_african
has_cultural_pillar = heritage_yoruba
has_cultural_pillar = heritage_somalian
has_cultural_pillar = heritage_east_african
has_cultural_pillar = heritage_burman
}
}
}
add = -60
}
if = { # Cultures with a special MaA of that type should avoid the base version of the unit
limit = {
culture = {
culture_has_heavy_cavalry_maa = yes
}
}
add = -500
}
}
culture_ai_weight_camels = {
value = 20
if = { # Cultures that favours camel riders
limit = {
OR = {
culture = { has_cultural_pillar = heritage_arabic }
culture = { has_cultural_pillar = heritage_berber }
}
}
add = 80
}
}
culture_ai_weight_elephants = {
value = 0
if = { # Cultures that favours war elephants
limit = {
OR = {
culture = { has_cultural_pillar = heritage_dravidian }
culture = { has_cultural_pillar = heritage_indo_aryan }
culture = { has_cultural_pillar = heritage_burman }
}
}
add = 60
}
}
culture_ai_weight_vigmen = {
value = 60
if = { # Cultures that favours heavy infantry
limit = {
any_sub_realm_county = { is_coastal_county = yes }
}
add = 20
}
}
counter_synergy_ai_weight_archers = {
value = 0
if = {
limit = {
number_maa_regiments_of_base_type = {
type = heavy_infantry
value >= 3
}
NOT = { #no need to add more if i.e. regional or inherited maa of that type already exists
number_maa_regiments_of_base_type = {
type = archers
value >= 1
}
}
}
add = 60
}
}
counter_synergy_ai_weight_pikemen = {
value = 0
if = {
limit = {
number_maa_regiments_of_base_type = {
type = archers
value >= 3
}
NOT = { #no need to add more if i.e. regional or inherited maa of that type already exists
number_maa_regiments_of_base_type = {
type = pikemen
value >= 1
}
}
}
add = 60
}
}
counter_synergy_ai_weight_heavy_infantry = {
value = 0
if = {
limit = {
OR = {
number_maa_regiments_of_base_type = {
type = heavy_cavalry
value >= 3
}
number_maa_regiments_of_base_type = {
type = light_cavalry
value >= 3
}
}
NOT = { #no need to add more if i.e. regional or inherited maa of that type already exists
number_maa_regiments_of_base_type = {
type = heavy_infantry
value >= 1
}
}
}
add = 60
}
}
counter_synergy_ai_weight_gunpowder = {
value = 200 # Since these are hard-limited elsewhere, prefer them highly
if = {
limit = {
culture = { has_cultural_era_or_later = culture_era_late_medieval }
number_maa_regiments_of_base_type = {
type = pikemen
value >= 3
}
NOT = {
number_maa_regiments_of_base_type = {
type = gunpowder
value >= 1
}
}
}
add = 60
}
if = {
limit = {
culture = { has_cultural_pillar = heritage_chinese }
}
add = 10 # more gun
}
}
counter_synergy_ai_weight_light_cavalry = {
value = 0
if = {
limit = {
number_maa_regiments_of_base_type = {
type = skirmishers
value >= 3
}
NOT = { #no need to add more if i.e. regional or inherited maa of that type already exists
number_maa_regiments_of_base_type = {
type = light_cavalry
value >= 1
}
}
}
add = 60
}
}
culture_ai_weight_crossbowmen = {
value = counter_synergy_ai_weight_crossbowmen
if = { # Cultures with a special MaA of that type should avoid the base version of the unit
limit = {
culture = {
culture_has_improved_crossbowmen = yes
}
}
add = -500
}
}
counter_synergy_ai_weight_crossbowmen = {
value = counter_synergy_ai_weight_archers
if = { # They counter heavy cavalry, so less interesting early on
limit = {
current_date < 1150.1.1
}
add = -100
}
}
###################
# Provisions Costs #
###################
provisions_cost_infantry_cheap = 3
provisions_cost_infantry_moderate = 7
provisions_cost_infantry_expensive = 12
provisions_cost_infantry_bankrupting = 15
provisions_cost_cavalry_cheap = 7
provisions_cost_cavalry_moderate = 15
provisions_cost_cavalry_expensive = 21
provisions_cost_cavalry_bankrupting = 30
# Generally used for siege weapons & adjacent similar stuff.
## Cheaper than cavalry, as they need less support infrastructure than mounted troops, but more expensive than infantry — tools may not eat but heavy supplies still need transporting, proofing against the elements, etc, whilst hard-to-find engineers may not put up with common grub.
provisions_cost_special_cheap = 6
provisions_cost_special_moderate = 12
provisions_cost_special_expensive = 18
provisions_cost_special_bankrupting = 24
############
# GUN MATH #
############
2026-02-22 15:33:46 +00:00
airships_raise_limit_existing_airships_units = {
2026-02-13 16:56:50 +00:00
value = 0
every_maa_regiment = {
limit = {
2026-02-22 15:56:55 +00:00
is_personal_maa_regiment = yes
2026-02-22 15:33:46 +00:00
is_maa_type = airships
2026-02-13 16:56:50 +00:00
}
add = 1
}
}
2026-02-22 15:33:46 +00:00
airships_raise_limit_existing_airships_buildings = {
2026-02-13 16:56:50 +00:00
value = 0
every_realm_province = {
limit = {
2026-02-22 15:33:46 +00:00
has_building_or_higher = air_dock_01
2026-02-13 16:56:50 +00:00
}
if = {
limit = {
2026-02-22 15:33:46 +00:00
has_building_or_higher = air_dock_04
2026-02-13 16:56:50 +00:00
}
2026-02-22 15:33:46 +00:00
add = airships_building_limit_bonus_4
2026-02-13 16:56:50 +00:00
}
else_if = {
limit = {
2026-02-22 15:33:46 +00:00
has_building_or_higher = air_dock_03
2026-02-13 16:56:50 +00:00
}
2026-02-22 15:33:46 +00:00
add = airships_building_limit_bonus_3
2026-02-13 16:56:50 +00:00
}
else_if = {
limit = {
2026-02-22 15:33:46 +00:00
has_building_or_higher = air_dock_02
}
add = airships_building_limit_bonus_2
}
else = {
add = airships_building_limit_bonus_1
}
}
}
airships_building_limit_bonus_1 = 1
airships_building_limit_bonus_2 = 2
airships_building_limit_bonus_3 = 3
airships_building_limit_bonus_4 = 4
toxic_gas_slingers_raise_limit_existing_toxic_gas_slingers_units = {
value = 0
every_maa_regiment = {
limit = {
2026-02-22 15:56:55 +00:00
is_personal_maa_regiment = yes
2026-02-22 15:33:46 +00:00
is_maa_type = toxic_gas_slingers
}
add = 1
}
}
toxic_gas_slingers_raise_limit_existing_toxic_gas_slingers_buildings = {
value = 0
every_realm_province = {
limit = {
has_building_or_higher = chemistry_workshop_01
}
if = {
limit = {
has_building_or_higher = chemistry_workshop_04
}
add = toxic_gas_slingers_building_limit_bonus_4
}
else_if = {
limit = {
has_building_or_higher = chemistry_workshop_03
}
add = toxic_gas_slingers_building_limit_bonus_3
}
else_if = {
limit = {
has_building_or_higher = chemistry_workshop_02
}
add = toxic_gas_slingers_building_limit_bonus_2
}
else = {
add = toxic_gas_slingers_building_limit_bonus_1
}
}
}
toxic_gas_slingers_building_limit_bonus_1 = 1
toxic_gas_slingers_building_limit_bonus_2 = 2
toxic_gas_slingers_building_limit_bonus_3 = 3
toxic_gas_slingers_building_limit_bonus_4 = 4
militia_raise_limit_existing_militia_units = {
value = 0
every_maa_regiment = {
limit = {
2026-02-22 15:56:55 +00:00
is_personal_maa_regiment = yes
2026-02-22 15:33:46 +00:00
is_maa_type = NEOW_militia
}
add = 1
}
}
militia_raise_limit_existing_militia_buildings = {
value = 0
every_realm_province = {
limit = {
has_building_or_higher = city_01
}
2026-02-22 15:56:55 +00:00
if = {
2026-02-22 15:33:46 +00:00
limit = {
has_building_or_higher = city_03
2026-02-13 16:56:50 +00:00
}
add = militia_building_limit_bonus_2
}
else = {
add = militia_building_limit_bonus_1
}
}
}
militia_building_limit_bonus_1 = 1
militia_building_limit_bonus_2 = 2
militia_building_limit_bonus_3 = 3
militia_building_limit_bonus_4 = 4
2026-02-13 16:56:50 +00:00
gunpowder_raise_limit_existing_gunpowder_units = {
value = 0
every_maa_regiment = {
limit = {
is_personal_maa_regiment = yes
OR = {
is_maa_type = handgunners
is_maa_type = fire_lancers
2026-02-22 15:33:46 +00:00
is_maa_type = carabineers
is_maa_type = cowboys
is_maa_type = redcoats
2026-02-13 16:56:50 +00:00
}
}
add = 1
}
}
gunpowder_raise_limit_existing_gunpowder_buildings = {
value = 0
2026-02-22 15:56:55 +00:00
every_realm_province = {
2026-02-13 16:56:50 +00:00
limit = {
has_building_or_higher = powder_magazine_01
}
if = {
limit = {
has_building_or_higher = powder_magazine_07
}
add = gunpowder_building_limit_bonus_3
}
else_if = {
limit = {
has_building_or_higher = powder_magazine_04
}
add = gunpowder_building_limit_bonus_2
}
else = {
add = gunpowder_building_limit_bonus_1
}
}
if = {
limit = {
exists = domicile
}
domicile = {
if = {
limit = {
has_domicile_building_or_higher = east_asian_estate_gunpowder_storage_03
}
add = gunpowder_building_limit_bonus_2
}
else_if = {
limit = {
has_domicile_building_or_higher = east_asian_estate_gunpowder_storage_01
}
add = gunpowder_building_limit_bonus_1
}
}
}
}
gunpowder_building_limit_bonus_1 = 1
gunpowder_building_limit_bonus_2 = 2
gunpowder_building_limit_bonus_3 = 3