N3OW/common/buildings/00_monotown_buildings.txt
2026-03-12 22:44:06 +00:00

1940 lines
63 KiB
Text

@holding_illustration_western = "gfx/interface/illustrations/holding_types/city_western.dds"
@holding_illustration_india = "gfx/interface/illustrations/holding_types/city_india.dds"
@holding_illustration_seasia = "gfx/interface/illustrations/holding_types/tgp_tgp_city_se_asia.dds"
@holding_illustration_china = "gfx/interface/illustrations/holding_types/tgp_city_china.dds"
@holding_illustration_japan = "gfx/interface/illustrations/holding_types/tgp_city_japan.dds"
@holding_illustration_mediterranean = "gfx/interface/illustrations/holding_types/city_mediterranean.dds"
@holding_illustration_mena = "gfx/interface/illustrations/holding_types/city_mena.dds"
@holding_illustration_norse = "gfx/interface/illustrations/holding_types/fp1_city_norse.dds"
@holding_illustration_iberian = "gfx/interface/illustrations/holding_types/fp2_city_iberian.dds"
@holding_illustration_iranian = "gfx/interface/illustrations/holding_types/fp3_city_iranian.dds"
@holding_illustration_byzantine = "gfx/interface/illustrations/holding_types/ep3_city_byzantine.dds"
monotown_01 = {
construction_time = slow_construction_time
effect_desc = city_1_effect_desc
#Meshes (Indented for readability)
asset = {
type = pdxmesh
names = {
"western_city_01_a_mesh"
"western_city_01_b_mesh"
"western_city_01_c_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
}
asset = {
type = pdxmesh
names = {
"western_city_01_mena_a_mesh"
"western_city_01_mena_b_mesh"
"western_city_01_mena_c_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"western_city_01_indian_a_mesh"
"western_city_01_indian_b_mesh"
"western_city_01_indian_c_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"western_city_01_mediterranean_a_mesh"
"western_city_01_mediterranean_b_mesh"
"western_city_01_mediterranean_c_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_indian_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mediterranean_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mena_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mediterranean_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mena_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_indian_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_mediterranean }
}
### FP1 Norse ###
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_a_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" }
graphical_cultures = { norse_building_gfx }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_mena_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_mediterranean_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_indian_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_india }
}
### FP2 Iberian ###
asset = {
type = pdxmesh
name = "fp2_building_iberian_city_01_mesh"
requires_dlc_flag = the_fate_of_iberia
illustration = @holding_illustration_iberian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/iberian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iberian_building_gfx }
graphical_regions = { graphical_mediterranean }
}
### FP3 Iranian ###
asset = {
type = pdxmesh
name = "fp3_building_persian_city_01_a_01_mesh"
requires_dlc_flag = legacy_of_persia
illustration = @holding_illustration_iranian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iranian_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
name = "fp3_building_persian_city_01_a_01_mesh"
requires_dlc_flag = legacy_of_persia
illustration = @holding_illustration_iranian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iranian_building_gfx }
graphical_regions = { graphical_india }
}
### EP3 Byzantine ###
asset = {
type = pdxmesh
name = "ep3_byzantine_city_01_mesh"
requires_dlc_flag = roads_to_power
illustration = @holding_illustration_byzantine
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { byzantine_building_gfx caucasian_building_gfx }
graphical_regions = { graphical_mediterranean }
}
#Steppe fallbacks
#In steppe
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_steppe }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_siberia }
}
#Elsewhere
asset = {
type = pdxmesh
names = {
"western_city_01_a_mesh"
"western_city_01_b_mesh"
"western_city_01_c_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_western }
graphical_cultures = { steppe_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
name = "tgp_building_chinese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_china
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/chinese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_east_asia }
}
# TGP China
asset = {
type = pdxmesh
name = "tgp_building_chinese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_china
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/chinese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { chinese_building_gfx }
graphical_regions = { graphical_east_asia graphical_india }
}
# TGP Southeast Asia
asset = {
type = pdxmesh
name = "tgp_building_se_asia_city_01_a_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_seasia
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/sea_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { southeast_asian_building_gfx }
graphical_regions = { graphical_east_asia graphical_india }
}
# TGP Japan
asset = {
type = pdxmesh
name = "tgp_building_japanese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_japan
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/japanese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { japanese_building_gfx }
graphical_regions = { graphical_east_asia }
}
can_construct_potential = {
barony_cannot_construct_holding = no
}
can_construct = {
culture = {
has_innovation = innovation_city_planning
}
government has_flag = government_is_urepublic
}
can_construct_showing_failures_only = {
building_requirement_tribal = no
building_requirement_tribal_holding_in_county = yes
building_requirement_nomad = no
building_requirement_nomad_holding_in_county = yes
building_requirement_herder = no
building_requirement_herder_holding_in_county = yes
}
cost_gold = main_building_tier_1_cost
levy = poor_building_levy_tier_1
max_garrison = normal_building_max_garrison_tier_1
garrison_reinforcement_factor = building_garrison_reinforcement_factor_tier_1
province_modifier = {
monthly_income = good_building_tax_tier_5
travel_danger = -10
monthly_barter_goods = 1
}
county_modifier = {
development_growth_factor = 0.05
}
province_terrain_modifier = {
parameter = maritime_mercantilism_coastal_holdings
is_coastal = yes
tax_mult = maritime_mercantilism_coastal_holdings_value
}
character_modifier = {
men_at_arms_cap = 1
}
province_terrain_modifier = {
parameter = coastal_holding_bonuses
is_coastal = yes
build_speed = -0.1
}
county_dynasty_modifier = {
county_holder_dynasty_perk = fp2_urbanism_legacy_1 # check if the dynasty of the county holder has a specific perk
development_growth_factor = fp2_urbanism_legacy_1_bonus_value
}
character_modifier = {
men_at_arms_cap = 1
}
county_culture_modifier = {
parameter = use_farmer_republics
county_fertility_decline_add = -1
}
flag = city
next_building = monotown_02
type_icon = "icon_building_blacksmiths.dds"
on_complete = {
county.holder = {
if = {
limit = {
any_vassal = {
vassal_stance = parochial
}
save_temporary_scope_as = holder_scope
}
custom_tooltip = parochial_vassal_approves_holding_construction
hidden_effect = {
every_vassal = {
vassal_stance = parochial
add_opinion = {
target = prev
modifier = parochial_approves_holding_construction_opinion
}
}
}
}
}
#Mandala Creator Aspect
creator_mandala_built_regular_holding_piety_effect = yes
# Building Oath
hidden_effect = {
if = {
limit = {
county.holder = {
has_character_modifier = oath_of_buildings
}
}
county.holder = { save_scope_as = holder }
add_random_economic_building_effect = yes
add_random_military_building_effect = yes
add_random_fortification_building_effect = yes
}
}
}
ai_value = {
base = 0
modifier = {
add = 100
scope:holder = {
domain_limit_available < 1
}
}
modifier = {
factor = 0
scope:holder = {
government_has_flag = government_is_theocracy
}
}
modifier = {
add = 50
county = {
NOT = {
any_county_province = {
has_building_or_higher = monotown_01
}
}
}
}
modifier = {
factor = 5
scope:holder.culture = { has_cultural_parameter = ai_more_likely_to_city }
}
}
}
monotown_02 = {
construction_time = slow_construction_time
#Meshes (Indented for readability)
asset = {
type = pdxmesh
names = {
"western_city_01_a_mesh"
"western_city_01_b_mesh"
"western_city_01_c_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
}
asset = {
type = pdxmesh
names = {
"western_city_01_mena_a_mesh"
"western_city_01_mena_b_mesh"
"western_city_01_mena_c_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"western_city_01_indian_a_mesh"
"western_city_01_indian_b_mesh"
"western_city_01_indian_c_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"western_city_01_mediterranean_a_mesh"
"western_city_01_mediterranean_b_mesh"
"western_city_01_mediterranean_c_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_indian_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mediterranean_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mena_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mediterranean_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mena_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_indian_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_mediterranean }
}
### FP1 Norse ###
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_a_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" }
graphical_cultures = { norse_building_gfx }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_mena_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_mediterranean_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_indian_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_india }
}
### FP2 Iberian ###
asset = {
type = pdxmesh
name = "fp2_building_iberian_city_01_mesh"
requires_dlc_flag = the_fate_of_iberia
illustration = @holding_illustration_iberian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/iberian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iberian_building_gfx }
graphical_regions = { graphical_mediterranean }
}
### FP3 Iranian ###
asset = {
type = pdxmesh
name = "fp3_building_persian_city_01_a_01_mesh"
requires_dlc_flag = legacy_of_persia
illustration = @holding_illustration_iranian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iranian_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
name = "fp3_building_persian_city_01_a_01_mesh"
requires_dlc_flag = legacy_of_persia
illustration = @holding_illustration_iranian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iranian_building_gfx }
graphical_regions = { graphical_india }
}
### EP3 Byzantine ###
asset = {
type = pdxmesh
name = "ep3_byzantine_city_01_mesh"
requires_dlc_flag = roads_to_power
illustration = @holding_illustration_byzantine
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { byzantine_building_gfx caucasian_building_gfx }
graphical_regions = { graphical_mediterranean }
}
#Steppe fallbacks
#In steppe
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_steppe }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_siberia }
}
#Elsewhere
asset = {
type = pdxmesh
names = {
"western_city_01_a_mesh"
"western_city_01_b_mesh"
"western_city_01_c_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_western }
graphical_cultures = { steppe_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
name = "tgp_building_chinese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_china
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/chinese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_east_asia }
}
# TGP China
asset = {
type = pdxmesh
name = "tgp_building_chinese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_china
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/chinese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { chinese_building_gfx }
graphical_regions = { graphical_east_asia graphical_india }
}
# TGP Southeast Asia
asset = {
type = pdxmesh
name = "tgp_building_se_asia_city_01_a_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_seasia
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/sea_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { southeast_asian_building_gfx }
graphical_regions = { graphical_east_asia graphical_india }
}
# TGP Japan
asset = {
type = pdxmesh
name = "tgp_building_japanese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_japan
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/japanese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { japanese_building_gfx }
graphical_regions = { graphical_east_asia }
}
can_construct_potential = {
building_requirement_tribal = no
}
can_construct = {
trigger_if = {
limit = {
NOT = {
culture = {
has_cultural_parameter = next_level_cities
}
}
}
culture = {
has_innovation = innovation_manorialism
}
}
trigger_else = {
culture = {
has_cultural_parameter = next_level_cities
}
}
government has_flag = government_is_urepublic
}
cost_gold = main_building_tier_2_cost
levy = poor_building_levy_tier_1
max_garrison = normal_building_max_garrison_tier_1
garrison_reinforcement_factor = building_garrison_reinforcement_factor_tier_1
province_modifier = {
monthly_income = good_building_tax_tier_6
travel_danger = -12
monthly_barter_goods = 2
}
province_terrain_modifier = {
parameter = maritime_mercantilism_coastal_holdings
is_coastal = yes
tax_mult = maritime_mercantilism_coastal_holdings_value
}
county_modifier = {
development_growth_factor = 0.1
}
province_terrain_modifier = {
parameter = coastal_holding_bonuses
is_coastal = yes
build_speed = -0.1
}
county_dynasty_modifier = {
county_holder_dynasty_perk = fp2_urbanism_legacy_1 # check if the dynasty of the county holder has a specific perk
development_growth_factor = fp2_urbanism_legacy_1_bonus_value
}
character_modifier = {
men_at_arms_cap = 1
}
county_culture_modifier = {
parameter = use_farmer_republics
county_fertility_decline_add = -2
}
flag = city
next_building = monotown_03
on_complete = {
barony.holder = {
if = {
limit = {
any_vassal = {
vassal_stance = parochial
}
save_temporary_scope_as = holder_scope
}
custom_tooltip = parochial_vassal_approves_holding_upgrade
hidden_effect = {
every_vassal = {
vassal_stance = parochial
add_opinion = {
target = prev
modifier = parochial_approves_holding_upgrade_opinion
}
}
}
}
}
#Mandala Creator Aspect
creator_mandala_upgraded_regular_holding_piety_effect = yes
}
ai_value = {
base = 6
modifier = {
add = 1
scope:holder.culture = { has_cultural_parameter = ai_more_likely_to_city }
}
modifier = {
factor = 2
scope:holder.capital_province = this
}
modifier = {
factor = 0.1
free_building_slots >= 1
}
modifier = {
factor = 0.3
years_from_game_start <= 0.01
}
}
}
monotown_03 = {
construction_time = slow_construction_time
effect_desc = city_2_effect_desc
#Meshes (Indented for readability)
asset = {
type = pdxmesh
names = {
"western_city_01_a_mesh"
"western_city_01_b_mesh"
"western_city_01_c_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
}
asset = {
type = pdxmesh
names = {
"western_city_01_mena_a_mesh"
"western_city_01_mena_b_mesh"
"western_city_01_mena_c_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"western_city_01_indian_a_mesh"
"western_city_01_indian_b_mesh"
"western_city_01_indian_c_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"western_city_01_mediterranean_a_mesh"
"western_city_01_mediterranean_b_mesh"
"western_city_01_mediterranean_c_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_indian_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mediterranean_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mena_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mediterranean_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mena_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_indian_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_mediterranean }
}
### FP1 Norse ###
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_a_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" }
graphical_cultures = { norse_building_gfx }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_mena_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_mediterranean_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_indian_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_india }
}
### FP2 Iberian ###
asset = {
type = pdxmesh
name = "fp2_building_iberian_city_01_mesh"
requires_dlc_flag = the_fate_of_iberia
illustration = @holding_illustration_iberian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/iberian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iberian_building_gfx }
graphical_regions = { graphical_mediterranean }
}
### FP3 Iranian ###
asset = {
type = pdxmesh
name = "fp3_building_persian_city_01_a_01_mesh"
requires_dlc_flag = legacy_of_persia
illustration = @holding_illustration_iranian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iranian_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
name = "fp3_building_persian_city_01_a_01_mesh"
requires_dlc_flag = legacy_of_persia
illustration = @holding_illustration_iranian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iranian_building_gfx }
graphical_regions = { graphical_india }
}
### EP3 Byzantine ###
asset = {
type = pdxmesh
name = "ep3_byzantine_city_01_mesh"
requires_dlc_flag = roads_to_power
illustration = @holding_illustration_byzantine
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { byzantine_building_gfx caucasian_building_gfx }
graphical_regions = { graphical_mediterranean }
}
#Steppe fallbacks
#In steppe
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_steppe }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_siberia }
}
#Elsewhere
asset = {
type = pdxmesh
names = {
"western_city_01_a_mesh"
"western_city_01_b_mesh"
"western_city_01_c_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_western }
graphical_cultures = { steppe_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
name = "tgp_building_chinese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_china
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/chinese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_east_asia }
}
# TGP China
asset = {
type = pdxmesh
name = "tgp_building_chinese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_china
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/chinese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { chinese_building_gfx }
graphical_regions = { graphical_east_asia graphical_india }
}
# TGP Southeast Asia
asset = {
type = pdxmesh
name = "tgp_building_se_asia_city_01_a_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_seasia
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/sea_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { southeast_asian_building_gfx }
graphical_regions = { graphical_east_asia graphical_india }
}
# TGP Japan
asset = {
type = pdxmesh
name = "tgp_building_japanese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_japan
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/japanese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { japanese_building_gfx }
graphical_regions = { graphical_east_asia }
}
can_construct_potential = {
building_requirement_tribal = no
}
can_construct = {
trigger_if = {
limit = {
NOT = {
culture = {
has_cultural_parameter = next_level_cities
}
}
}
culture = {
has_innovation = innovation_windmills
}
}
trigger_else = {
culture = {
has_cultural_parameter = next_level_cities
}
culture = {
has_innovation = innovation_manorialism
}
}
government has_flag = government_is_urepublic
}
cost_gold = main_building_tier_3_cost
next_building = monotown_04
levy = poor_building_levy_tier_1
max_garrison = normal_building_max_garrison_tier_1
garrison_reinforcement_factor = building_garrison_reinforcement_factor_tier_1
province_modifier = {
monthly_income = good_building_tax_tier_7
travel_danger = -14
monthly_barter_goods = 3
}
province_terrain_modifier = {
parameter = maritime_mercantilism_coastal_holdings
is_coastal = yes
tax_mult = maritime_mercantilism_coastal_holdings_value
}
county_modifier = {
development_growth_factor = 0.15
}
county_culture_modifier = {
parameter = city_buildings_less_control
monthly_county_control_growth_factor = -0.25
}
province_terrain_modifier = {
parameter = coastal_holding_bonuses
is_coastal = yes
build_speed = -0.1
}
county_dynasty_modifier = {
county_holder_dynasty_perk = fp2_urbanism_legacy_1 # check if the dynasty of the county holder has a specific perk
development_growth_factor = fp2_urbanism_legacy_1_bonus_value
}
character_modifier = {
men_at_arms_cap = 1
}
county_culture_modifier = {
parameter = use_farmer_republics
county_fertility_decline_add = -3
}
flag = city
on_complete = {
barony.holder = {
if = {
limit = {
any_vassal = {
vassal_stance = parochial
}
save_temporary_scope_as = holder_scope
}
custom_tooltip = parochial_vassal_approves_holding_upgrade
hidden_effect = {
every_vassal = {
vassal_stance = parochial
add_opinion = {
target = prev
modifier = parochial_approves_holding_upgrade_opinion
}
}
}
}
}
#Mandala Creator Aspect
creator_mandala_upgraded_regular_holding_piety_effect = yes
}
ai_value = {
base = 5
modifier = {
add = 1
scope:holder.culture = { has_cultural_parameter = ai_more_likely_to_city }
}
modifier = {
factor = 2
scope:holder.capital_province = this
}
}
}
monotown_04 = {
construction_time = slow_construction_time
#Meshes (Indented for readability)
#Meshes (Indented for readability)
asset = {
type = pdxmesh
names = {
"western_city_01_a_mesh"
"western_city_01_b_mesh"
"western_city_01_c_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
}
asset = {
type = pdxmesh
names = {
"western_city_01_mena_a_mesh"
"western_city_01_mena_b_mesh"
"western_city_01_mena_c_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"western_city_01_indian_a_mesh"
"western_city_01_indian_b_mesh"
"western_city_01_indian_c_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"western_city_01_mediterranean_a_mesh"
"western_city_01_mediterranean_b_mesh"
"western_city_01_mediterranean_c_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_indian_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mediterranean_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mena_building_gfx arabic_group_building_gfx berber_group_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mena_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mediterranean_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { indian_building_gfx tibetan_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_western_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mena_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_indian_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { mediterranean_building_gfx }
graphical_regions = { graphical_mediterranean }
}
### FP1 Norse ###
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_a_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" }
graphical_cultures = { norse_building_gfx }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_mena_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_mediterranean_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
names = {
"fp1_building_norse_city_01_indian_mesh"
}
requires_dlc_flag = the_northern_lords
illustration = @holding_illustration_norse
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/nordic_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { norse_building_gfx }
graphical_regions = { graphical_india }
}
### FP2 Iberian ###
asset = {
type = pdxmesh
name = "fp2_building_iberian_city_01_mesh"
requires_dlc_flag = the_fate_of_iberia
illustration = @holding_illustration_iberian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/iberian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iberian_building_gfx }
graphical_regions = { graphical_mediterranean }
}
### FP3 Iranian ###
asset = {
type = pdxmesh
name = "fp3_building_persian_city_01_a_01_mesh"
requires_dlc_flag = legacy_of_persia
illustration = @holding_illustration_iranian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iranian_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
name = "fp3_building_persian_city_01_a_01_mesh"
requires_dlc_flag = legacy_of_persia
illustration = @holding_illustration_iranian
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { iranian_building_gfx }
graphical_regions = { graphical_india }
}
### EP3 Byzantine ###
asset = {
type = pdxmesh
name = "ep3_byzantine_city_01_mesh"
requires_dlc_flag = roads_to_power
illustration = @holding_illustration_byzantine
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { byzantine_building_gfx caucasian_building_gfx }
graphical_regions = { graphical_mediterranean }
}
#Steppe fallbacks
#In steppe
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_steppe }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_siberia }
}
#Elsewhere
asset = {
type = pdxmesh
names = {
"western_city_01_a_mesh"
"western_city_01_b_mesh"
"western_city_01_c_mesh"
}
illustration = @holding_illustration_western
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/western_city" soundparameter = { "Tier" = 0 } }
graphical_regions = { graphical_western }
graphical_cultures = { steppe_building_gfx }
}
asset = {
type = pdxmesh
names = {
"building_mena_city_01_mesh"
}
illustration = @holding_illustration_mena
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mena_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_mena }
}
asset = {
type = pdxmesh
names = {
"building_india_city_01_mesh"
}
illustration = @holding_illustration_india
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/indian_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_india }
}
asset = {
type = pdxmesh
names = {
"building_mediterranean_city_01_mesh"
}
illustration = @holding_illustration_mediterranean
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/mediterranean_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_mediterranean }
}
asset = {
type = pdxmesh
name = "tgp_building_chinese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_china
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/chinese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { steppe_building_gfx }
graphical_regions = { graphical_east_asia }
}
# TGP China
asset = {
type = pdxmesh
name = "tgp_building_chinese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_china
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/chinese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { chinese_building_gfx }
graphical_regions = { graphical_east_asia graphical_india }
}
# TGP Southeast Asia
asset = {
type = pdxmesh
name = "tgp_building_se_asia_city_01_a_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_seasia
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/sea_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { southeast_asian_building_gfx }
graphical_regions = { graphical_east_asia graphical_india }
}
# TGP Japan
asset = {
type = pdxmesh
name = "tgp_building_japanese_city_01_mesh"
requires_dlc_flag = all_under_heaven
illustration = @holding_illustration_japan
soundeffect = { soundeffect = "event:/SFX/Ambience/3DMapEmitters/Holdings/City/japanese_city" soundparameter = { "Tier" = 0 } }
graphical_cultures = { japanese_building_gfx }
graphical_regions = { graphical_east_asia }
}
can_construct_potential = {
building_requirement_tribal = no
}
can_construct = {
trigger_if = {
limit = {
NOT = {
culture = {
has_cultural_parameter = next_level_cities
}
}
}
culture = {
has_innovation = innovation_cranes
}
}
trigger_else = {
culture = {
has_cultural_parameter = next_level_cities
}
culture = {
has_innovation = innovation_windmills
}
}
government has_flag = government_is_urepublic
}
cost_gold = main_building_tier_4_cost
levy = poor_building_levy_tier_1
max_garrison = normal_building_max_garrison_tier_1
garrison_reinforcement_factor = building_garrison_reinforcement_factor_tier_1
province_modifier = {
monthly_income = good_building_tax_tier_8
travel_danger = -16
monthly_barter_goods = 4
}
province_terrain_modifier = {
parameter = maritime_mercantilism_coastal_holdings
is_coastal = yes
tax_mult = maritime_mercantilism_coastal_holdings_value
}
county_modifier = {
development_growth_factor = 0.2
}
province_terrain_modifier = {
parameter = coastal_holding_bonuses
is_coastal = yes
build_speed = -0.1
}
county_dynasty_modifier = {
county_holder_dynasty_perk = fp2_urbanism_legacy_1 # check if the dynasty of the county holder has a specific perk
development_growth_factor = fp2_urbanism_legacy_1_bonus_value
}
character_modifier = {
men_at_arms_cap = 1
}
county_culture_modifier = {
parameter = use_farmer_republics
county_fertility_decline_add = -4
}
flag = city
on_complete = {
barony.holder = {
if = {
limit = {
any_vassal = {
vassal_stance = parochial
}
save_temporary_scope_as = holder_scope
}
custom_tooltip = parochial_vassal_approves_holding_upgrade
hidden_effect = {
every_vassal = {
vassal_stance = parochial
add_opinion = {
target = prev
modifier = parochial_approves_holding_upgrade_opinion
}
}
}
}
}
#Mandala Creator Aspect
creator_mandala_upgraded_regular_holding_piety_effect = yes
}
ai_value = {
base = 4
modifier = {
add = 1
scope:holder.culture = { has_cultural_parameter = ai_more_likely_to_city }
}
modifier = {
factor = 2
scope:holder.capital_province = this
}
}
}