N3OW/common/defines/00_defines.txt
2026-05-08 15:13:19 -04:00

1829 lines
115 KiB
Text

NGame = {
END_DATE = "3155.1.1"
GAME_SPEED_TICKS = { # how many seconds should a day take in every game speed
2
1
0.5
0.2
0.0
}
LAG_DECREASE_SPEED_DAYS = 15 # how many days of client lag will cause a speed decrease
LAG_PAUSE_DAYS = 30 # how many days should pass will cause a pause
MULTIPLAYER_EVENT_TIME_OUT = 90 # how many days an event in multiplayer will be around before auto-selecting an option
COURT_EVENT_TIME_OUT = 180 # how many days a court event will be around before auto-selecting an option, applies to single and multi player
BENCHMARK_VIEWS_TEST_DURATION = 135 # How long, in seconds, should the benchmark test using "-benchmark" iterate over views before starting to test royal courts?
BENCHMARK_INTERFACE_INTERVAL = 5.0 # How long, in seconds, should the benchmark wait before changing the open UI window?
BENCHMARK_OBSERVE_CHARACTER = k_england # Which character should be observed?
# Where should we pan the camera?
BENCHMARK_WAYPOINTS = {
# First number is x
# Second is y
# Third is zoom level
# Fourth is how much time to spend traveling between the waypoint and the next
700 3000 2 5
1000 2500 7 5
1000 2300 2 5
700 2000 5 1
1200 2000 30 1
1500 1800 7 5
1900 2200 5 5
1500 2400 7 5
2200 2700 7 5
2500 3500 2 4
1850 3700 2 4
1650 3200 2 1
}
MERIT_GUI_UPDATE_INTERVAL = 60 # How often the Merit Pool GUI is updated in frames
}
NSetup = {
# chance that a courtless character is sent to a court as a guest instead of a regular courtier on game start (0..1)
COURTLESS_CHARACTER_GUEST_CHANCE = 0
# Random range for number of characters per pool (duchy) generated at the start of the game
GENERATED_POOL_CHARACTERS = { 2 6 }
# Templates used for the pool character. The weights correspond to the template names at the same index.
# The scope of the template is a random ruler whose capital is in that pool.
GENERATED_POOL_CHARACTER_TEMPLATES = {
"pool_repopulate_spouse"
"pool_repopulate_prowess"
"pool_repopulate_diplomacy"
"pool_repopulate_martial"
"pool_repopulate_stewardship"
"pool_repopulate_intrigue"
"pool_repopulate_learning"
"pool_repopulate_local_flavor"
}
GENERATED_POOL_CHARACTER_TEMPLATE_WEIGHTS = {
2
5
1
1
1
1
1
5
}
DESIRED_NEIGHBOR_POOLS = 4 # How many pools should we try to consider bordering? Pools bordering the sea will consider pools further removed by sea neighboring until this number is hit, or MAX_POOL_NEIGHBOR_DISTANCE is hit
MAX_POOL_NEIGHBOR_DISTANCE = 3 # How many sea zones away can we search at most?
}
NJominiMap = {
WORLD_EXTENTS_X = 9215
WORLD_EXTENTS_Y = 50
WORLD_EXTENTS_Z = 4607
WATERLEVEL = 3 ### 0.06 in 0-1, 19 in 0-255, use 11% HSB in Photoshop
}
NSkills = {
MAX_DIPLOMACY = 100 # Maximum possible diplomacy skill points per character
MAX_MARTIAL = 100 # Maximum possible martial skill points per character
MAX_STEWARDSHIP = 100 # Maximum possible stewardship skill points per character
MAX_INTRIGUE = 100 # Maximum possible intrigue skill points per character
MAX_LEARNING = 100 # Maximum possible learning skill points per character
MAX_PROWESS = 100 # Maximum possible prowess skill points per character
}
NCharacter = {
# values for randomly generated characters they'll be set to BASE + random within SPAN
MALE_RANDOM_AGE_BASE = 16
MALE_RANDOM_AGE_SPAN = 20
FEMALE_RANDOM_AGE_BASE = 16
FEMALE_RANDOM_AGE_SPAN = 16
RANDOM_PERSONALITY_TRAITS_BASE = 3
RANDOM_PERSONALITY_TRAITS_SPAN = 0
RANDOM_CHARACTER_DIPLOMACY_MIN = 0
RANDOM_CHARACTER_DIPLOMACY_MAX = 10
RANDOM_CHARACTER_MARTIAL_MIN = 0
RANDOM_CHARACTER_MARTIAL_MAX = 10
RANDOM_CHARACTER_STEWARDSHIP_MIN = 0
RANDOM_CHARACTER_STEWARDSHIP_MAX = 10
RANDOM_CHARACTER_INTRIGUE_MIN = 0
RANDOM_CHARACTER_INTRIGUE_MAX = 10
RANDOM_CHARACTER_LEARNING_MIN = 0
RANDOM_CHARACTER_LEARNING_MAX = 10
RANDOM_CHARACTER_PROWESS_MIN = 0
RANDOM_CHARACTER_PROWESS_MAX = 10
RANDOM_CHARACTER_MIN_FERTILITY = 0.5
RANDOM_CHARACTER_MAX_FERTILITY = 0.6
RANDOM_CHARACTER_MIN_HEALTH = 4.0
RANDOM_CHARACTER_MAX_HEALTH = 5.0
RANDOM_CHARACTER_AGE_MIN_HEALTH = 2.5 # This is the minimum starting base health characters get after adjustments for age
MAX_STRESS_LEVEL = 3 # The maximum stress level
STRESS_PER_LEVEL = 100 # Stress per level
MAX_DREAD = 100
BASE_DREAD = 0
DREAD_MONTHLY_CHANGE = 0.5 # dread is drifiting changing by this value towards character's base dread value each month
BOLD_LEVEL_COWED = 45 # A boldness level above this value will be considered as cowed.
BOLD_LEVEL_INTIMIDATED = 20 # A boldness level above this value will be considered as intimidated.
MAX_TYRANNY = 1000 # maximum tyranny value a character can have
TYRANNY_MONTHLY_CHANGE = -0.25 # tyranny is changing by this value each month
MAX_PROVISIONS = 2500 # maximum provisions value a character can have
PROVISIONS_LOW_WARNING = 500 # when travel planner should warn about provisions running low
BASE_HERD_CONVERSION_RATE = 0.08 # base herd conversion rate
BASE_HERD_CAPACITY = { # base herd capacity for different title tiers
0 # Unlanded
500 # Barony
3000 # County
5000 # Duchy
15000 # Kingdom
20000 # Empire
20000 # Hegemony
}
GOLD_FROM_HERD_FACTOR = 0.0005 # The amount of herd that provides monthly gold income
BASE_HERDER_GAIN_PER_COUNTY = 1.0 # Base monthly herd gain for herders | ( NCountyData::MAX_COUNTY_FERTILITY / CountyFertility) * BASE_HERDER_GAIN_PER_COUNTY
MAX_STRIFE_OPINION = 100 # maximum strife opinion value a character can have
STRIFE_OPINION_MONTHLY_CHANGE = -0.2 # strife opinion is changing by this value each month
BASE_FERTILITY = 0.5
BASE_HEALTH = 5.0
# experience needed for piety/prestige/influence levels - first/negative level requires 1000, then 350 etc.
# evety character by default starts at respective ZERO_LEVEL with enough experience for it
LEVELS_PIETY = { 1000 1500 2500 4500 8500 13000 17000 22500 }
LEVELS_PRESTIGE = { 1000 2000 5000 10000 25000 }
LEVELS_INFLUENCE = { 1000 2000 4000 8000 16000 }
LEVELS_MERIT = { 100 1000 2000 3500 5500 8500 12000 17000 23000 }
# default max level index (0-based) for governments. Can be overridden with field currency_levels_cap in the government type
DEFAULT_PIETY_LEVEL_CAP = 5
DEFAULT_PRESTIGE_LEVEL_CAP = 5
DEFAULT_INFLUENCE_LEVEL_CAP = 5
DEFAULT_MERIT_LEVEL_CAP = 1
# when characters drop a level in piety/prestige/influence, they retain progress toward new level, capped by these values
LEVEL_DROP_MAX_RETAINED_PROGRESS_PIETY = 0.5
LEVEL_DROP_MAX_RETAINED_PROGRESS_PRESTIGE = 0.5
LEVEL_DROP_MAX_RETAINED_PROGRESS_INFLUENCE = 0.5
LEVEL_DROP_MAX_RETAINED_PROGRESS_MERIT = 0.5
# how many steps for the graphical level changes
LEVELS_PIETY_GRAPHICAL_STEP = 1
LEVELS_PRESTIGE_GRAPHICAL_STEP = 1
LEVELS_INFLUENCE_GRAPHICAL_STEP = 1
LEVELS_MERIT_GRAPHICAL_STEP = 1
# what level is considered to be the "zero" level
PIETY_ZERO_LEVEL = 1
PRESTIGE_ZERO_LEVEL = 1
INFLUENCE_ZERO_LEVEL = 1
MERIT_ZERO_LEVEL = 0
TODDLER_AGE = 3
CHILDHOOD_AGE = 6
ADOLESCENCE_AGE = 12
MALE_ADULT_AGE = 16
FEMALE_ADULT_AGE = 16
MALE_ELDERLY_AGE = 50
FEMALE_ELDERLY_AGE = 50
BETROTHAL_TIMEOUT_AGE = 17
MALE_ATTRACTION_CUTOFF_AGE = 65 # After this age, the attraction of traits no longer have any effect
FEMALE_ATTRACTION_CUTOFF_AGE = 50 # After this age, the attraction of traits no longer have any effect
#Health levels and descriptions for every level
HEALTH_STATE_LEVELS_VALUES = {
0.0
1.0
3.0
5.0
7.0
}
HEALTH_STATE_LEVELS_TEXTS = {
"HEALTH_DYING"
"HEALTH_NEAR_DEATH"
"HEALTH_POOR"
"HEALTH_FINE"
"HEALTH_GOOD"
"HEALTH_EXCELLENT"
}
#Skill levels and descriptions for every level
#Skill levels in loc are defined in 00_basic_values.txt, due to current script limitations. DO NOT UPDATE THESE WITHOUT CHANGING THOSE, and vice versa.
SKILL_LEVELS_VALUES = {
4 #poor
8 #avg
12 #good
16 #exc
68 #nice
69 #exc
99 #godlike
}
SKILL_LEVELS_TEXTS = {
"SKILL_TERRIBLE"
"SKILL_POOR"
"SKILL_AVERAGE"
"SKILL_GOOD"
"SKILL_EXCELLENT"
"SKILL_NICE"
"SKILL_EXCELLENT"
"SKILL_GODLIKE"
}
SKILL_MODIFIER_OFFSET = -8 # skill modifiers with offset add this from skill value (see common/modifiers/00_basic_modifiers.txt)
# Standard RelationTo number of relations to show
MAX_RELATIONS_TO_SHOW = 3
# Standard RelationToShort number of relations to show
MAX_RELATIONS_TO_SHOW_SHORT = 2
MARRIAGE_TIER_DIFF_PRESTIGE_MULT = 100
# Multiplied with distance
FOCUS_CHILD_MIN_AGE = 6
FOCUS_CHILD_MAX_CHANGES = 1
FOCUS_ADULT_COOLDOWN_MONTHS = 60
SKILL_SCALE_AGE = 16
MAX_HEIR_TO_SHOWN = 4 # How many "Heir To" titles should we show?
MAX_PARENT_STEPS_FOR_HEIR = 6 # If we can't find enough descendants, how many steps upwards can we try to search?
MIN_HEIR_TO_FIND = 20 # How many heirs should we find before we stop finding more? Note that a higher number here can worsen performance
MAX_HEIRS_IN_LINE_OF_SUCCESSION_TOOLTIP = 5 # How many heirs should we show in [LandedTitle.GetLineOfSuccessionDesc]
MAX_APPOINTMENT_BY_LEVEL = 5 # Desired number of heirs in leveled appointment (meritocratic). Above that number it will discard people of lower level
MAX_POTENTIAL_SPOUSES = 100000 #Number of entries shown in the marry off-interaction
MONTHS_OF_INCOME_AT_START = 36 # Rulers will start with this many months worth of income
# Note that when mixing prestige and gold MaA, it'll stop buying more once one reaches the goal
# By spending, we mean that it'll try to match the maintenance when unraised and fully reinforced to this portion of their monthly balance
# Newly landed rulers (except those that should inherit MaA if they're landed by inheritance) also get MaA based on this
MAA_STARTING_EXPENSE_MIN = 0.2 # Rulers at game start will start out spending this much (or a bit more, as it'll overshoot) on men at arms
MAA_STARTING_EXPENSE_MAX = 0.35 # Rulers will never start out spending more than this on men at arms. For poor rulers this can mean they end up under MAA_STARTING_EXPENSE_MIN if one more MaA would put them above the max
MAA_STARTING_PRESTIGE_EXPENSE_MIN = 0.4 # Rulers at game start will start out spending this much prestige (or a bit more, as it'll overshoot) on men at arms
MAA_STARTING_PRESTIGE_EXPENSE_MAX = 0.55 # Rulers will never start out spending more than this much prestige on men at arms. For prestige-poor rulers this can mean they end up under MAA_STARTING_PRESTIGE_EXPENSE_MIN if one more MaA would put them above the max
MAA_STARTING_TREASURY_EXPENSE_MIN = 0.2 # Rulers at game start will start out spending this much treasury (or a bit more, as it'll overshoot) on men at arms
MAA_STARTING_TREASURY_EXPENSE_MAX = 0.35 # Rulers will never start out spending more than this treasury on men at arms. For treasury-poor rulers this can mean they end up under MAA_STARTING_TREASURY_EXPENSE_MIN if one more MaA would put them above the max
MAA_STARTING_BARTER_GOODS_EXPENSE_MIN = 0.1 # Rulers at game start will start out spending this much barter goods (or a bit more, as it'll overshoot) on men at arms
MAA_STARTING_BARTER_GOODS_EXPENSE_MAX = 0.2 # Rulers will never start out spending more than this much barter goods on men at arms. For barter goods-poor rulers this can mean they end up under MAA_STARTING_BARTER_GOODS_EXPENSE_MIN if one more MaA would put them above the max
MAA_STARTING_HERD_EXPENSE_MIN = 0.7 # Rulers at game start will start out spending this much herd (or a bit more, as it'll overshoot) on men at arms
MAA_STARTING_HERD_EXPENSE_MAX = 0.9 # Rulers will never start out spending more than this much herd on men at arms. For herd-poor rulers this can mean they end up under MAA_STARTING_HERD_EXPENSE_MIN if one more MaA would put them above the max
MAXIMUM_DIPLOMATIC_RANGE = 1000
MAXIMUM_DIPLOMATIC_RANGE_RESTRICTED = 750 # Used if a game rule with the restricted_diplomatic_range flag is used
HOOK_COOLDOWN_DURATION_YEARS = 5 # How many years do strong hooks go on cooldown when used?
MAX_COUNTIES_IN_REALM_AS_DUKE = 30 # As a duke or below, the player (but not the AI) will suffer penalties when they go beyond this # of counties in their realm. They can form a kingdom to get the penalties to go away
INCOME_PENALTY_PER_COUNTY_ABOVE_LIMIT = 0.05 # For each county above MAX_COUNTIES_IN_REALM_AS_DUKE, you get 10% less income
FORCED_SUCCESSION_ELECTION_YEARS = 100 # For how long someone is forced to vote with another elector when using the force_vote_in_succession_election interaction
MINIMUM_VALUE_FOR_PERSONALITY_DESCRIPTION = 25 # AI personality values ( ai_greed, etc) less than this are ignored when trying to build personality descriptions
STRONG_VALUE_FOR_PERSONALITY_DESCRIPTION = 75 # AI personality values with higher values than this are getting the strong version in the personality descriptions
MINIMUM_TIER_FOR_REGNAL_NUMBERING = 2 # What tier does someone have to be in order to use regnal numbering? 1 is baron, 5 is emperor
PERCENTAGE_HOMOSEXUAL = 5.0 # chance (0-100%) of a randomly created character being homosexual
PERCENTAGE_BISEXUAL = 5.0 # chance (0-100%) of a randomly created character being bisexual
PERCENTAGE_ASEXUAL = 1.0 # chance (0-100%) of a randomly created character being asexual
DESIGNATE_HEIR_DISPLAY_COST = 1000 # Prestige cost for designating heir. Actual cost is handled by the scripter interaction 'designate_heir'
PRETENDERS_TO_TITLE = 5 # Max number of character stored to be the pretenders of a title (includes heir)
PARTITION_SCORE_PER_OWN_COUNTY = 2 # How much score does a county you own contribute in Partition when selecting a title? The higher this is, the more we encourage getting a title you've already got land in
PARTITION_SCORE_PER_OTHER_COUNTY = 1 # How much score does a county another heir owns take away in Partition when selecting a title? The higher this is, the more we encourage getting a title that other heirs don't have land in
# How many concubines does a ruler of a given tier desire if their faith allows concubines
DESIRED_CONCUBINES_PER_TIER = { 0 0 0 1 2 3 3 }
PRESTIGE_LOSS_PER_MISSING_CONCUBINE = 0.1 # Monthly prestige loss per missing (fertile) concubine
DEBT_MODIFIER_THRESHOLDS = { # When do the debt modifiers kick in, by months of income of debt
# Match to the modifier debt_level_i and combat_debt_level_i. Starts with 0
0 12 24 36 48 60 120 300 600 1200
}
TREASURY_DEBT_MODIFIER_THRESHOLDS = { # When do the debt modifiers kick in, by months of income of treasury debt
# Match to the modifier treasury_debt_level_i and treasury_combat_debt_level_i. Starts with 0
0 12 24 36 48 60 120 300 600 1200
}
COURT_GRANDEUR_MONTHLY_CHANGE = 0.2
GENDER_PREFERENCE_PROBABILITY = 0.75 # chance (0-1) of a character created from pool being from prefered gender of gender preference law
OBESE_WEIGHT_VALUE = 50 # Greater than or equal to this and a character is considered obese
MALNOURISHED_WEIGHT_VALUE = -50 # Less than or equal to this and a character is considered malnourished
# On succession how much of the old ruler's legitimacy should be applied to their heir
# Only applied if the title they inherit is a greater tier than their old title, a king inheriting
# a duchy has their own legitimacy they already care about
LEGITIMACY_INHERITED = 0.25
MONTHLY_INFLUENCE_GAIN_ALLIED_TO_TOP_LIEGE = 1.5 # Monthly influence gained for admin rulers in admin realm if you are allied to your top liege
MONTHLY_INFLUENCE_GAIN_ALLIED_TO_HOUSE_HEAD = 1 # Monthly influence gained for admin rulers when are allied to admin ruler house head
MONTHLY_INFLUENCE_GAIN_BEING_GOVERNOR = 1 # Monthly influence gained in admin realm from being a governor
}
NOldAge = {
LOWER_HEALTH_START_AGE = 25 # At this age characters start getting the chance to lose health each year
LOWER_HEALTH_BASE_CHANCE = 0.075 # This is the base chance of losing health at the START_AGE
LOWER_HEALTH_YEARLY_INCREASE = 0.022 # This is the yearly increase of the chance to lose health
LOWER_HEALTH_AMOUNT = -0.125 # This is the health change on each failed yearly health roll
HEALTH_PENALTY_PER_YEAR_IN_POOL = 0.1 # For each year in the pool, your effective health is this much lower. This disappears entirely when you leave the pool
ELDERLY_POOL_HEALTH_PENALTY = 2.0 # Elderly characters in the pool will have their effective health reduced by this amount for death checks
# This DIE values are used with a quadratic chance.
DIE_HEALTH_TRESHOLD = 3.0 # Characters have a chance to die each month they have less health than this
DIE_HEALTH_CHANCE_ZERO = 0.25 # This is the month chance that a character dies at zero health (or lower)
DEATH_MINIMUM_DELAY = 15 # If marked for death, they will die at least this many days after the check
DEATH_MAXIMUM_DELAY = 20 # If marked for death, they will die no more than this many days after the check. With these numbers, that means if someone becomes deathly ill, they have a high chance of dying between 7 and 40 days (30 days from the death check) after contracting the health penalty
LOWER_PROWESS_START_AGE = 45 # At this age characters start getting the chance to lose prowess each year
LOWER_PROWESS_BASE_CHANCE = 0.1 # This is the base chance of losing prowess at the START_AGE
LOWER_PROWESS_YEARLY_INCREASE = 0.015 # This is the yearly increase of the chance to lose prowess
LOWER_PROWESS_MAX_CHANCE = 0.75 # This is the maximum chance to lose prowess
LOWER_PROWESS_FACTOR = 0.1 # This is the prowess change mutliplier on each failed yearly roll
}
NRulerObjective = {
ADVICE_RELEVANCE_LIMIT = 0 # Lower advice relevance value where the advice will still show.
MAX_NUMBER_OF_ADVICE = 10 # Number of different advice to show in the Ruler Objective view.
}
NChildbirth = {
MIN_REPRODUCTION_AGE_IN_HISTORY_DB = 12 # If a historical parent is younger than this when their child is born, we log an error
MIN_FEMALE_REPRODUCTION_AGE = 16
MAX_FEMALE_REPRODUCTION_AGE = 45
MIN_MALE_REPRODUCTION_AGE = 16
BASE_NR_OF_CHILDREN_PER_COUPLE = { 1 1 2 3 5 5 8 } # Based on tier of character or parents; whichever is higher Unlanded, Baron, Count, ..., Emperor, Hegemon
CHANCE_OF_LOWERED_CHILD_LIMIT = 0.5 # Chance that the child limit is lowered by 1
EXTRA_CHILDREN_FOR_RULERS = 2 # If either character is a ruler, they get extra children
CHARACTER_IN_POOL_CHILD_LIMIT = -1 # If in the pool, child limit is modified by this
CHILD_BIRTH_TO_PREGNANCY_WAIT = 3
MALE_FERTILITY_MULTIPLIER_LIMITS = { 70 60 50 40 35 } # Ages where fertility multiplier is applied 25 means up to 25, needs to be sorted in descending order
MALE_FERTILITY_MULTIPLIER = { 0.5 0.6 0.7 0.8 0.9 1.0 } # Multiplier values based on age limits from FERTILITY_MULTIPLIER_LIMITS should have an extra value at the beginning for characters older than first limit
FEMALE_FERTILITY_MULTIPLIER_LIMITS = { 45 40 35 30 25 } # Ages where fertility multiplier is applied 25 means up to 25, needs to be sorted in descending order
FEMALE_FERTILITY_MULTIPLIER = { 0.1 0.33 0.5 0.7 0.9 1.0 } # Multiplier values based on age limits from FERTILITY_MULTIPLIER_LIMITS should have an extra value at the beginning for characters older than first limit
MOTHER_FERTILITY_REDUCTION_PER_PREVIOUS_CHILD = 0.05
LOW_FERTILITY = 0.1
PRIMARY_SPOUSE_FERTILITY_MULTIPLIER = 1
SECONDARY_SPOUSE_FERTILITY_MULTIPLIER = 0.5
CONCUBINE_FERTILITY_MULTIPLIER = 0.5
NOT_SPOUSE_FERTILITY_MULTIPLIER = 1
NON_RULER_FERTILITY_MULTIPLIER = 0.85 # If neither parent is a ruler, resulting fertility gets multiplied by this
FERTILITY_CHANCE_MULTIPLIER = 4.75 # Fertility is an average between the father and the mother (if the mother has 0.3 and the father 0.5, the average is 0.4), this number is then multiplied by this multiplier to produce the percentage chance of impregnation. Impregnation is checked every month.
MIN_FERTILITY_CHANCE = 1
MAX_FERTILITY_CHANCE = 25
TWIN_BASE_CHANCE = 0.02
TWIN_BONUS_MAX_AGE = 35
TWIN_BONUS_MIN_AGE = 25
TWIN_BONUS_CHANCE = 0.02
TWIN_MOTHER_HAD_TWINS_BONUS = 0.05
TWIN_GRANDMOTHER_HAD_TWINS_BONUS = 0.03
IDENTICAL_TWIN_CHANCE = 0.013
PREGNANCY_DAYS = 280
DAYS_TO_PREGNANCY_REVEAL = 60
FEMALE_CHANCE = 49
NEWBORN_HEALTH_BASE = 4.5
NEWBORN_HEALTH_SPAN = 0.5
NEWBORN_HEALTH_FEMALE_BONUS = 0.5
INHERIT_RECESSIVE_GENE_CHANCE = 0.25 # Probability of a recessive gene being picked as a child's dominant/recessive gene. Only used for portraits
# Note that the recessive chance is checked only if inheriting it outright fails
# Chances are in %. Values above 100% work and can make sense if there's modifiers that might reduce the chance
ACTIVE_TRAIT_CHANCE_ACTIVE_ACTIVE = 80 # Chance of outright inheriting a genetic trait if both parents have it
ACTIVE_TRAIT_CHANCE_ACTIVE_INACTIVE = 50 # Chance of outright inheriting a genetic trait if one parent has it, and one is carrying it recessively
ACTIVE_TRAIT_CHANCE_ACTIVE_NONE = 25 # Chance of outright inheriting a genetic trait if one parent has it
ACTIVE_TRAIT_CHANCE_INACTIVE_INACTIVE = 10 # Chance of outright inheriting a genetic trait if both parents are carrying it
ACTIVE_TRAIT_CHANCE_INACTIVE_NONE = 2 # Chance of outright inheriting a genetic trait if one parent is carrying it
INACTIVE_TRAIT_CHANCE_ACTIVE_ACTIVE = 150 # Chance of recessively inheriting a genetic trait if both parents have it. Deliberately over 100% so even if it is a bad trait, the modifiers to inheritance won't let you avoid it
INACTIVE_TRAIT_CHANCE_ACTIVE_INACTIVE = 100 # Chance of recessively inheriting a genetic trait if one parent has it, and one is carrying it recessively
INACTIVE_TRAIT_CHANCE_ACTIVE_NONE = 75 # Chance of recessively inheriting a genetic trait if one parent has it
INACTIVE_TRAIT_CHANCE_INACTIVE_INACTIVE = 50 # Chance of recessively inheriting a genetic trait if both parents are carrying it
INACTIVE_TRAIT_CHANCE_INACTIVE_NONE = 25 # Chance of recessively inheriting a genetic trait if one parent is carrying it
# General logic for tiered trait inheritance:
# 1. Start from highest trait
# 2. Calc active chance. Lower tiers ( including inactive ) count as inactive of the tier. Each level down beyond the first multiplies chance by a define
# 3. If active, use it; DONE
# 4. Otherwise, go down a tier, if inactive pretend 1 more parent has that tier active, otherwise 1 more parent has it inactive.GOTO 2
MATCHED_TRAIT_DIFFERENCE_MULT = 0.2 # When trying to inherit a tiered genetic trait, and the other person has one of lower tier, we pretend that means they've got the higher tier one recessively, and reduce the chance of inheritance by this much per tier further down than 1 the other parent's trait is
TIER_TRAIT_REDUCTION_MULT = 0.4 # When going down a tier, add this chance
FERTILITY_LEVELS = {
0.0
0.2
0.6
0.8 } # The thresholds for each fertility level
INBREEDING_ANCESTOR_GENERATIONS = 4 # How many generations are checked for common ancestors of the both parents (including the parents) for the purposes of getting the inbreeding trait and the pure-blooded trait
INBRED_RELATEDNESS_MULT = 0.3 # How much relatedness factors into the inbred chance. Relatedness specifies how much DNA is shared between two characters (See: https://relatednesscalculator.nolanlawson.com/ )
PUREBLOODED_INBRED_RELATEDNESS_MULT = 0.03 # Same as INBRED_RELATEDNESS_MULT, but for the "pure-blooded" trait.
TRAIT_REINFORCEMENT_CHANCE = 0.5 # The chance that a trait that gets inherited from both parents will get reinforced to a higher level.
EXTRA_CHILDREN_FOR_PLAYERS = 2 # Num of extra children players can have before reaching living child limit
EXTRA_CHILDREN_PER_EXTRA_SPOUSE = 2 # Num of extra children per spouse above one before reaching living child limit
EXTRA_CHILDREN_PER_EXTRA_CONCUBINE = 2 # Num of extra children per concubine above one before reaching living child limit
EXTRA_FERTILITY_FOR_FIRST_CHILD = 0.0 # Extra fertility if the couple are primary spouses and have no children together
EXTRA_FERTILITY_FOR_FIRST_RULER_CHILD = 0.3 # Extra fertility if the couple are primary spouses and have no children together, and at least one of them is a ruler
DIVINE_MARRIAGE_FERTILITY_MULTIPLIER = 1 # Multiplier if the couple is close or extended family and their faith allows divine marriage
CLOSE_FAMILY_FERTILITY_MULTIPLIER = 0.9 # Multiplier if the couple is close family and their faith does not allow divine marriage
EXTENDED_FAMILY_FERTILITY_MULTIPLIER = 1 # Multiplier if the couple is extended family and their faith does not allow divine marriage
FERTILITY_IN_POOL_MULTIPLIER = 0.25 # Characters in the pool will have their fertility multiplied by this
}
NMarriage = {
AGE_OF_MARRIAGE_MALE = 16
AGE_OF_MARRIAGE_FEMALE = 16
MAX_ALLIANCE_FAMILY_DISTANCE_SUM = 4 # How far can the married characters be related (a sum of both distances) to the arrangers in order for the arrangers to get alliances.
LANDED_AI_DESCENDANTS_CANT_MARRY_YEARS = 10 # For how many years can't same-subrealm players' children and grandchildren marry after when they're landed
SPOUSE_FINDER_RELEVANCE_PRESTIGE_GAIN_MULTIPLIER = 1 # How much the prestige gain is valued for the relevance sorting of a marriage
SPOUSE_FINDER_RELEVANCE_ALLIANCE_POWER_MULTIPLIER = 1.3 # How much the alliance power is valued for the relevance sorting of a marriage
SPOUSE_FINDER_RELEVANCE_GENERAL_SKILL_MULTIPLIER = 1.3 # How much the total general skill is valued for the relevance sorting of a marriage
SPOUSE_FINDER_RELEVANCE_INFERTILE_MODIFIER = -50000 # Modifier applied to relevance sorting of a marriage if they are visibly infertile
SPOUSE_FINDER_RELEVANCE_INFERTILE_MODIFIER_FEMALE_AGE = 35 # At this age females will be considered old enough for the infertile modifier even if they are younger than the actual too old for children define, so we sort out those close to that define earlier
SPOUSE_FINDER_RELEVANCE_AGE_DIFFERENCE_MULTIPLIER = -10 # Multiplier on age difference applied to relevance sorting of a marriage if the age difference is greater than or equal to the below
SPOUSE_FINDER_RELEVANCE_AGE_DIFFERENCE_CUTOFF = 5 # The age difference between the two parties for the above modifier to be applied per year of difference
}
NCharacterOpinion = {
CONVERGENCE_DELAY = 31 # opinion modifiers will start to decay/grow after this many days
MAX_OPINION = 100
MIN_OPINION = -100
MOTHER = 50
FATHER = 50
SIBLING = 25
CHILD = 50
SPOUSE = 25
CONCUBINE = 0
CONCUBINIST = 0
# What penalty to give when at zero culture acceptance. Scales down to 0 at 100% acceptance. So -10 would be -10 at 0%, -5 at 50%, 0 at 100%
ZERO_CULTURE_ACCEPTANCE_SAME_REALM = -30
ZERO_CULTURE_ACCEPTANCE = -15
CULTURE_ACCEPTANCE_MULT_KNOWS_LANGUAGE = 0.5 # The penalty is multiplied by this amount if the target knows the lanauge of the opinion haver's culture
SAME_TRAIT = 5
OPPOSITE_TRAIT = -5
SAME_DYNASTY = 5
PIOUS = { -10 0 5 10 20 30 40 55 75 }
PRESTIGIOUS = { -10 0 5 10 20 30 }
PIOUS_MAGNIFICENCE = { -5 0 3 5 10 15 20 25 35 }
SKILL_DIPLOMACY_MULT = 1 # opinion = round( ( <diplo skill> - SKILL_MODIFIER_OFFSET ) * SKILL_DIPLOMACY_MULT )
# _MAX/_MIN is checked after all multipliers
SHORT_REIGN_OPINION_MIN = -10000
SHORT_REIGN_OPINION_MAX = 0 # We don't allow positive short reign opinion - mods can tweak this if they want
LONG_REIGN_OPINION_MIN = 0 # We don't allow negative long reign opinion - mods can tweak this if they want
LONG_REIGN_OPINION_MAX = 10000
SHORT_REIGN_YEARS = 10
LONG_REIGN_YEARS = 10
SHORT_REIGN_MULTIPLIER = -2
LONG_REIGN_MULTIPLIER = 1
# The offensive war opinion penalty is applied to all direct vassals
# It ticks up if you lead an offensive war that isn't a Great Holy War or a civil war
OFFENSIVE_WAR_PENALTY_GRACE_PERIOD = 6 # How many months do you need to be at war before you start getting the offensive war opinion penalty? If you've already got the penalty, the grace period is ignored (E.G., if you go to war for a few years, are at peace for a few months, then go to war again it will immediately start ticking up)
OFFENSIVE_WAR_PENALTY_PER_MONTH = 0.5 # How much of a penalty gets added each month?
OFFENSIVE_WAR_PENALTY_DECAY_PER_MONTH = 0.5 # How much of a penalty decays each month when no longer gaining it?
AT_PEACE_PENALTY_GRACE_PERIOD = 6 # How many months do you need to be at peace before you start getting the at peace opinion penalty? If you've already got the penalty, the grace period is ignored
AT_PEACE_PENALTY_PER_MONTH = 0.5 # How much of a penalty gets added each month?
AT_PEACE_PENALTY_CAP = 30 # The penalty will be capped to this value (the opinion will be at worst -AT_PEACE_PENALTY_CAP)
TYRANNY_MULTIPLIER = -1
HOLDS_CLAIMED_TITLE = -20
DEFENDING_ME_IN_CLAIM_WAR = 100
POWERFUL_VASSAL_WITHOUT_COUNCIL_POSITION = -40
IS_ON_THE_COUNCIL = 10
DOMAIN_OVERRUN = 10
VIRTUOUS_TRAIT = 10
SINFUL_TRAIT = -10
DE_JURE_COUNTY = -25
DE_JURE_DUCHY = -25
DE_JURE_KINGDOM = -30
ENABLE_RIGHTFUL_LIEGE_EXCEPTIONS = yes # Dukes won't be upset as the vassal of their dejure emperor
PARTIALLY_NON_RIGHTFUL_LIEGE_TAX_MULT = 0.75 # Tax mult when partially non-rightful liege (liege doesn't hold dejure liege title of the vassal's primary, or empire for a duke if ENABLE_RIGHTFUL_LIEGE_EXCEPTIONS)
PARTIALLY_NON_RIGHTFUL_LIEGE_LEVY_MULT = 0.75 # Tax mult when partially non-rightful liege
PARTIALLY_NON_RIGHTFUL_LIEGE_HERD_MULT = 1 # Herd mult when partially non-rightful liege
PARTIALLY_NON_RIGHTFUL_LIEGE_BARTER_GOODS_MULT = 1 # Barter Goods mult when partially non-rightful liege
NON_RIGHTFUL_LIEGE_TAX_MULT = 0.5 # Tax mult when non-rightful liege (liege doesn't hold *any* dejure liege title)
NON_RIGHTFUL_LIEGE_LEVY_MULT = 0.5 # Tax mult when non-rightful liege
NON_RIGHTFUL_LIEGE_HERD_MULT = 0.5 # Herd mult when non-rightful liege
NON_RIGHTFUL_LIEGE_BARTER_GOODS_MULT = 0.5 # Barter Goods mult when non-rightful liege
PARTIALLY_NON_RIGHTFUL_LIEGE_OPINION = -5 # Opinion penalty for being non-rightful liege
NON_RIGHTFUL_LIEGE_OPINION = -5 # Opinion penalty for being partially non-rightful liege
MAX_DUCHIES_BEFORE_PENALTY = 2 # How many duchies are vassals fine with you having? If you're a duke, they don't care; only if you're king or above
TOO_MANY_DUCHIES_OPINION = -15 # Penalty per duchy too many
COUNT_LIEGE_HOLDS_MY_DUCHY = -25 # Penalty with count vassals for whom you hold their dejure duchy (and you're above duchy tier)
VASSAL_SIZE_ANGER_THRESHOLD = 0.3 # Ratio of counties in vassal's realm (duke or above) compared to liege's full realm in order for the vassal to get angry at liege
VASSAL_SIZE_ANGER_MIN = -5 # Opinion penalty applied at exact threshold
VASSAL_SIZE_ANGER_MULT = -100 # Opinion penalty applied for going 100 percentage points over the threshold (impossible unless the threshold is 0, but makes for simple math)
PREDECESSOR_OPINION_SCALE_POSITIVE = 0.25 # How we scale the current opinion if positive for calculating predecessor opinion
PREDECESSOR_OPINION_SCALE_NEGATIVE = 0.5 # How we scale the current opinion if negative for calculating predecessor opinion
ACTIVE_ACCLAIMED_KNIGHT = 15 # Opinion bonus for making someone the Acclaimed Knight of an active Accolade
}
NCharacterInteraction = {
CHARACTER_INTERACTION_EXPIRATION_DAYS = 60 # non-answered interactions expire after this time
RECENT_TITLE_FILTER_MONTHS = 12 # if the checkbox is selected only titles adquired during the defines months are shown
NEARBY_DOMICILE_RANGE = 500 # How close does a domicile have to be for it to be considered "nearby". Uses same distance units as diplomatic range.
}
NGovernment = {
GOVERNMENT_TYPES = {
"feudal_government"
"republic_government"
"theocracy_government"
"clan_government"
"tribal_government"
"mercenary_government"
"holy_order_government"
"administrative_government"
"landless_adventurer_government"
"landless_minority_government"
"nomad_government"
"herder_government"
"peasantrepublic_government"
"urbanrepublic_government"
"celestial_government"
"japan_administrative_government"
"japan_feudal_government"
"mandala_government"
"wanua_government"
"meritocratic_government"
"steppe_admin_government"
}
}
NActionPoints = {
MONTHLY_GAIN_THRESHOLD = 999
BASE_MONTHLY_GAIN = 3
MONTHLY_GAIN_FACTOR = 0.5
}
NCombat = {
UNRAISED_LEVY_REGIMENTS_SPEED = 40.0 # How many distance units do unraised regiments travel per day when gathering
COMBAT_ROLL_DAYS = 3 # How many days are there between rolls?
COMBAT_EVENT_DAYS = 5 # How many days are there between knight events?
WAR_ATTACKER_COMBAT_SCORE_SCALE = 50 # Scale factor for how much war score battles give to the war attacker. Can be overriden by CB
WAR_DEFENDER_COMBAT_SCORE_SCALE = 50 # Scale factor for how much war score battles give to the war defender. Can be overriden by CB
WAR_ATTACKER_COMBAT_MAX_SCORE = 50 # The maximum amount of warscore gained from a single battle by the war attacker
WAR_DEFENDER_COMBAT_MAX_SCORE = 50 # The maximum amount of warscore gained from a single battle by the war attacker
MANEUVER_PHASE_DAYS = 3 # How many days should the maneuver phase last
LEVY_TOUGHNESS = 12 # How much toughness does each levy soldier have
LEVY_ATTACK = 12 # How much attack does each levy soldier have
LEVY_SIEGE = 0 # How much siege bonus does each levy soldier have
LEVY_PURSUIT = 1 # How much pursuit does each levy soldier have
LEVY_SCREEN = 0 # How much screen does each levy soldier have
DAMAGE_SCALING_FACTOR = 0.03 # Scaling factor for dealing damage in combat
BASE_RATIO_CASUALTIES_CONVERSION = 0.3 # How many of the soft casualties should be converted to hard casualties during the main phase
PURSUIT_PHASE_DAYS = 3 # How many days should the pursuit phase be
ADVANTAGE_DAMAGE_SCALING_FACTOR = 5 # How much should the advantage affect damage given
BASE_WIDTH_RATIO = 1 # The base combat width is set by multiplying the size of the defender by this ratio
COMMANDER_MIN_ROLL = 0
COMMANDER_MAX_ROLL = 10
MEN_AT_ARMS_MAX_COUNTER = 0.9 # When RATIO_FOR_MAX_COUNTER is hit, the damage output for the MaA will be reduced by this much. For values lower, it'll be linear between 0 and this value
RATIO_FOR_MAX_COUNTER = 2.0 # You need this many effective regiment chunks to counter a single regiment chunk. Modified by counter effectiveness (E.G., = 2.0 in the MaA's counter section means twice as effective countering). So if stack size is 100, 50 men from a regiment with 2x counter will produce one point of countering. Thus if the ratio for max counter is 1.0, they'd fully counter a full-strength MaA chunk, or halfway counter two, etc.
MIN_DAYS_BEFORE_MANUAL_RETREAT = 14 # Number of days before a retreat can be ordered
MINIMUM_COMBAT_WIDTH = 100 # Combat width cannot be smaller than this
BASE_RATIO_CASUALTIES_CONVERSION_PURSUIT = 1 # How many of the hard casualties inflicted on the retreating side should be converted to hard casualties during retreat. Interacts with BASE_TOUGHNESS_TO_PURSUIT and such
PURSUIT_STAT_TO_PURSUIT_DAMAGE = 0.5 # The pursuit stat is multiplied by this before being turned into actual damage
BASE_TOUGHNESS_TO_PURSUIT = 0.05 # This many % of the toughness of the retreater's soft casualties will turn into pursuit (during the full pursuit, not per day). Essentially, this means if neither side has screen or pursuit, 5% of the soft casualties will become hard casualties. More if the pursuer has more pursuit than the defender has screen, and vice versa
MINIMUM_PURSUIT_DAMAGE = 0.01 # High screen can't bring casualties below 1% in the pursuit phase
DISEMBARK_PENALTY_DAYS = 30 # How long does an army have a penalty after disembarking?
KNIGHT_DAMAGE_PER_PROWESS = 30 # How much "Damage" stat does a knight get per prowess?
KNIGHT_TOUGHNESS_PER_PROWESS = 6 # How much "Toughness" stat does a knight get per prowess?
### Brief: KNIGHT_AVERAGE_PROWESS_FOR_AI_POWER_CALCULATION ( int32 )
# How much prowess do we assume a knight to have for the purpose
# of simple base power calculations. Base power is what the AI uses
# to estimate a ruler's military might, where Power is the sum of
# a Regiment's Power and Toughness, in case of knights
# KNIGHT_DAMAGE_PER_PROWESS and KNIGHT_TOUGHNESS_PER_PROWESS,
# multiplied by the number of troops.
#
# With game defaults this means an AI will evaluate a ruler's
# knight's military power at 1100 per knight.
#
KNIGHT_AVERAGE_PROWESS_FOR_AI_POWER_CALCULATION = 8
COMBAT_RESULT_MONTHS_TO_TIMEOUT = 12 # Combat results timeout after this many months
}
NArmy = {
MOVEMENT_SPEED_RETREAT = 4.5 # Movement speed while retreating
MOVEMENT_SPEED = 3 # Normal movement speed
MOVEMENT_SPEED_BONUS_FRIENDLY_AREA = 0.2 # In friendly areas you get a 20% speed bonus
REGIMENT_MONTHLY_REINFORCE_SPEED = 0.03 # Monthly reinforcement percentage of unraised chunks [0-1]
REGIMENT_MONTHLY_MAA_REINFORCE_SPEED = 0.1 # Monthly reinforcement percentage of unraised MAA chunks [0-1]
GOLD_COST_PER_SOLDIER = 0.003 # Gold maintenance cost per soldier
RAID_ARMY_COST_MULT = 0.5 # Maintenance of raid armies is multiplied by this
BARTER_ARMY_COST_MULT = 0.5 # Maintenance of barter armies is multiplied by this
MOVEMENT_LOCKED = 0.5 # Percentage after which movement is locked
COUNTY_MOVEMENT_ATTRITION_PERCENTAGE = 0.05
MINIMUM_COUNTY_MOVEMENT_ATTRITION = 100
REGIMENT_DEFAULT_STACK_SIZE = 100
REGIMENT_DEFAULT_MAX_SIZE = 3 # Number of regiment chunks
REGIMENT_MAA_CAP_BY_TIER = { 0 2 2 2 2 2 2 }
REGIMENT_MAA_EXTRA_BY_CAP = 0.2 # Percentage [0-1] applied to each MAA regiment by each regiment above the cap
REGIMENT_MAA_SHOW_INFO_PERCENTAGE = 0.3
REGIMENT_MAA_STARTING_COUNT = 5
FULL_SUPPLY = 100 # Fully supplied units' supply value
SUPPLY_LOSS_AT_SEA = 8 # This is the supply loss at sea after the ATTRITION_AFTER_DAYS grace period
SUPPLY_LOSS_PER_SOLDIER_ABOVE_LIMIT = 0.001 # Each check's supply loss per every soldier over the province's supply limit
SUPPLY_LOSS_MINIMUM = 5 # This is the minimum supply limit loss (before commander effects)
SUPPLY_LOSS_MAXIMUM = 10 # This is the maximum supply limit loss (after commander effects)
SUPPLY_GAIN_BELOW_LIMIT = 20 # Each check's supply gain under or at the province's supply limit
SUPPLY_OWN_REALM = 0.15 # Extra supply within top realm
SUPPLY_OWN_SUB_REALM = 0.3 # Extra supply within subrealm
MINIMUM_SUPPLY_LIMIT = 1000 # Supply limit will never ever be lower than this
NO_SUPPLY_LOSS_DAYS = 30 # After gathering, armies won't lose supplies for this number of days
SUPPLY_STATE_LEVELS = {
60
10
0
}
SUPPLY_STATE_NAMES = {
"SUPPLY_STATE_0"
"SUPPLY_STATE_1"
"SUPPLY_STATE_2"
}
SUPPLY_STATE_ATTRITION = {
0.0
0.0
0.05
}
MAA_PRESTIGE_BUY_COST_MULT = 2 # If using prestige as gold for MaA, multiply buy cost by this
MAA_PRESTIGE_LOW_COST_MULT = 0.7 # If using prestige as gold for MaA, multiply basic maintenance cost by this
MAA_PRESTIGE_HIGH_COST_MULT = 0.7 # If using prestige as gold for MaA, multiply raised/reinforce cost by this
MAA_HERD_LOW_COST_MULT = 0.7 # If using herd as gold for MaA, multiply basic maintenance cost by this
MAA_HERD_HIGH_COST_MULT = 0.7 # If using herd as gold for MaA, multiply raised/reinforce cost by this
MAA_TREASURY_BUY_COST_MULT = 2 # If using treasury as gold for MaA, multiply buy cost by this
MAA_TREASURY_LOW_COST_MULT = 0.7 # If using treasury as gold for MaA, multiply basic maintenance cost by this
MAA_TREASURY_HIGH_COST_MULT = 0.7 # If using treasury as gold for MaA, multiply raised/reinforce cost by this
MAA_BARTER_GOODS_LOW_COST_MULT = 0.8 # If using barter goods as gold for MaA, multiply basic maintenance cost by this
MAA_BARTER_GOODS_HIGH_COST_MULT = 0.8 # If using barter goods as gold for MaA, multiply raised/reinforce cost by this
REGIMENT_MAX_SIZE = 1000 # The game will avoid making regiments larger than this. Can still happen if a province provides more levies than the cap
REGIMENT_MAX_SIZE_PERCENT = 0.2 # The game will avoid making regiments larger than this compared to the max troops you can raise
MINIMUM_HIRING_COST_MULTIPLIER = 0.1 # The cost of hiring after modifiers are applied can't go below this multiplier of the original value. To prevent negative costs, and therefore getting paid for hiring.
LANDLESS_RAISE_TROOPS_MAX_DISTANCE = 500 # Max distance for landless rulers to raise their troops if their capital location is blocked by hostilities
NOMADIC_HORDE_CONVERSION_BASE_DISCOUNT = 0.5 # Base discount rate applied to MaA cost when converting Horde regiments into permanent MaA as a Nomad
NOMADIC_RIDERS_MAX_SIZE = 500 # Max size of Horde Riders when they are raised
}
NFleet = {
FLEET_SPEED = 15 # Fleet speed
EMBARK_GOLD_COST_PER_HUNDRED = 1 # Embark cost for every hundred units
GOLD_COST_MAINTENANCE_MULT = 0.25 # Increase in the gold maintenance for armies that are embarked
ATTRITION_AFTER_DAYS = 30 # After embarking the army can expend this time without getting attrition
}
NRetreat = {
SHATTERED_RETREAT_PREFERRED_PROVINCES = 7
SHATTERED_RETREAT_MAX_PREFERRED_OFFSET_PENALTY = 7
SHATTERED_RETREAT_OWN_REALM = 340
SHATTERED_RETREAT_OWN_SUBREALM = 60
SHATTERED_RETREAT_OWN_CAPITAL = 100
SHATTERED_RETREAT_WAR_FRIEND = 200
SHATTERED_RETREAT_ENEMY = -250
SHATTERED_RETREAT_SAME_RELIGION = 30
SHATTERED_RETREAT_SAME_CULTURE = 10
SHATTERED_RETREAT_COASTAL = 10
SHATTERED_RETREAT_OCCUPIED = -60
SHATTERED_RETREAT_DISTANCE_MULTIPLIER = -50
SHATTERED_RETREAT_MAX_PROVINCES = 15
SHATTERED_RETREAT_NEIGHBOUR_UNIT_MULTIPLIER = 0.5
SHATTERED_RETREAT_OWN_UNIT_MULTIPLIER = 0.05
SHATTERED_RETREAT_ENEMY_UNIT_MULTIPLIER = -0.2
SHATTERED_RETREAT_DISTANCE_FROM_CAPITAL = -0.01
}
NWar = {
ATTACKER_TICKING_WAR_SCORE = 0.055 # Default ticking war score per day for attackers. Can be overwritten by CB. Set to 0 to disable
ATTACKER_TICKING_WAR_SCORE_DELAY_DAYS = 0 # Default delay in days before applying ticking war score for attackers. Can be overwritten by CB
DEFENDER_TICKING_WAR_SCORE = 0.055 # Default ticking war score per day for defenders. Can be overwritten by CB. Set to 0 to disable
DEFENDER_TICKING_WAR_SCORE_DELAY_DAYS = 365 # Default delay in days before applying ticking war score for defenders. Can be overwritten by CB
ATTACKER_OCCUPATION_SCORE_SCALE = 90 # War score from occupation by the attacker is given by occupied territory ratio (0.0 ... 1.0) multiplied by this value. Can be overriden by CB
DEFENDER_OCCUPATION_SCORE_SCALE = 90 # War score from occupation by the defender is given by occupied territory ratio (0.0 ... 1.0) multiplied by this value. Can be overriden by CB
MAX_ATTACKER_BATTLES_WAR_SCORE = 50 # How much war score is it possible for the attacker to get from battles. Can be overriden by CB
MAX_DEFENDER_BATTLES_WAR_SCORE = 100 # How much war score is it possible for the defender to get from battles. Can be overriden by CB
MILITARY_RATIO_LEVELS = 5 # How many military ratio levels are there
OCCUPIED_CAPITAL_WAR_SCORE = 10 # Bonus war score from occupying the enemy capital
CAPTURED_VASSAL_WAR_SCORE = 0 # War Score for each direct vassal of the war leader
CAPTURED_SPOUSE_WAR_SCORE = 0 # War Score from capturing one or more spouses
CAPTURED_HEIR_WAR_SCORE = { 50 25 10 } # War Score in order of succession
BATTLE_WAR_CONTRIBUTION_MULTIPLIER = 0.2 # War contribution from battles are multiplied with this value
SIEGE_WAR_CONTRIBUTION_MULTIPLIER = 10 # War contribution from sieges are multiplied with this value
OCCUPATION_WAR_CONTRIBUTION_MONTHLY = 2 # War contribution from monthly occupation of provinces
OCCUPATION_SCORE_PER_BARONY_SCALE = 0.04 # Extra occupation score (before scaling) from each individual barony. 0.01 is equivalent to 1% per barony. So 10 baronies occupied out of 20 total, would mean 50% + 10% = 60% occupation score (before scaling)
MINIMUM_CONTRIBUTION_FOR_REWARD = 100 # You need at least this amount of contribution points in order to get a reward
WAR_RESULT_MONTHS_TO_TIMEOUT = 12 # War results time out after this many months
AI_USE_VASSAL_OF_VASSAL_CLAIMS = no # If this is set to "no", the AI will never push the claims of vassals of vassals
AI_WAR_STANCE_WEIGHT_CUTOFF = 10 # War stances with less than this weight will not be considered by the AI.
}
NScheme = {
SCHEMES_PER_TYPE = 1 # How many simultaneous schemes per type are allowed for a character
SCHEME_AGENT_INVITE_MAX_PROPOSAL_OPTIONS = 3 # The maximum number of options (tested bottom up) to use when checking from the UI if a potential agent "Can be convinced"
DAYS_BETWEEN_MONTHLY_CHECK = 30 # Schemes get their "monthly" update this often
DAYS_BETWEEN_SEMIYEARLY_CHECK = 180 # Schemes get this update twoice every year
SECRECY_REVEAL_CHANCE = 0.1 # The reveal chance is computed by multiplying the secrecy by this value
DEFAULT_OWNER_DISCOVERY_CHANCE = 0.5 # Default chance of the scheme owner being discovered (vs. one of the agents) unless scripted otherwise in the scheme type
SCHEME_MIN_SUCCESS_GROWTH = 1 # The absolut minimum growth of success chance
HOSTILE_SCHEME_MAX_SUCCESS_CHANCE = 95 # The absolute max success chance a hostile scheme can have
PERSONAL_SCHEME_MAX_SUCCESS_CHANCE = 95 # The absolute max success chance a personal scheme can have
POLITICAL_SCHEME_MAX_SUCCESS_CHANCE = 95 # The absolute max success chance a political scheme can have
CONTRACT_SCHEME_MAX_SUCCESS_CHANCE = 100 # The absolute max success chance a contract scheme can have
SCHEME_MAX_OPPORTUNITIES = 20 # The maximum number of saved opportunities a schmeme can have
SCHEME_PHASE_DURATION_MINIMUM = 10 # The minimum amount of days per scheme speed
SCHEME_PHASE_DURATION_TIER_BARONY = 5 # Characters whose highest title is a barony title adds this amount of speed to schemes targeting them
SCHEME_PHASE_DURATION_TIER_COUNTY = 10 # Characters whose highest title is a county title adds this amount of speed to schemes targeting them
SCHEME_PHASE_DURATION_TIER_DUCHY = 20 # Characters whose highest title is a duchy title adds this amount of speed to schemes targeting them
SCHEME_PHASE_DURATION_TIER_KINGDOM = 40 # Characters whose highest title is a kingdom title adds this amount of speed to schemes targeting them
SCHEME_PHASE_DURATION_TIER_EMPIRE = 80 # Characters whose highest title is an empire title adds this amount of speed to schemes targeting them
SCHEME_PHASE_DURATION_TIER_HEGEMONY = 160 # Characters whose highest title is an hegemony title adds this amount of speed to schemes targeting them
DEFAULT_ODDS_PREDICTION_LEVEL_BREAKPOINTS = { 10 20 30 40 } # Breakpoints between odds descriptions presented to the player when starting a scheme.
AGENT_SPEED_RELATION_MULTIPLIER_SPYMASTER = 2.0 # The agents relation to the target
AGENT_SPEED_RELATION_MULTIPLIER_SPOUSE = 2.0 # The agents relation to the target
AGENT_SPEED_RELATION_MULTIPLIER_COUNCILLOR = 2.0 # The agents relation to the target
AGENT_SPEED_RELATION_MULTIPLIER_REGENT = 2.0 # The agents relation to the target
AGENT_SPEED_RELATION_MULTIPLIER_GUARDIAN = 2.0 # The agents relation to the target
AGENT_SPEED_RELATION_MULTIPLIER_LOVER = 2.0 # The agents relation to the target
AGENT_SPEED_RELATION_MULTIPLIER_FRIEND = 2.0 # The agents relation to the target
}
NPowerfulVassal = {
# The number of vassals that are considered 'powerful' depending on the primary title tier (unlanded, baron, count, duke, king, emperor)
NUM_PER_TIER = { 0 0 3 4 5 5 5 }
# To calculate the value (rank):
VALUE_FACTOR = 1.25 # Rubber banding value for current powerful vassals
VALUE_MILITARY_MULT = 1 # Multiplier applied to the military strength of the vassal
VALUE_TIER_MULT = 100 # Multiplier applied to the tier of the vassal
VALUE_INCOME_MULT = 50 # Multiplier applied to the income of the vassal
}
NFaith = {
BASE_FERVOR = 50.0 # Default fervor
MAX_FERVOR = 100.0 # Max amount of fervor
YEARLY_FERVOR_GROWTH = 3.5 # Fervor yearly change, can be negative
MINIMUM_FAITH_SIZE_FERVOR_MODIFIER = 10 # Adjusts the size modifier for monthly fervor gain for a faith according to the following formula: 1/squareroot(max(define_value, faith_size)/define_value) where define value is the value of MINIMUM_FAITH_SIZE_FERVOR_MODIFIER and faith_size is the current amount of provinces that follows the faith.
FERVOR_CHANGELOG_DURATION = 10 # After how many years do fervor changelog entries get deleted?
FAITH_CREATION_FERVOR_DISCOUNT_PER_MISSING_FERVOR = 1 # How much cheaper does creating a faith get per fervor below 100%? 1 means 1% per point
FAITH_CREATION_FERVOR_DISCOUNT_MAX = 50 # What percentage does the discount cap out at? With these numbers, 0-50 fervor means a 50% discount. Above 50 means between 0% and 50% discount
}
NReligion = {
TIME_AT_PEACE_FOR_PIETY = 730 # For faiths with a doctrine with piety_from_long_peace, how long do they need to be at peace (in days)
# Hostility levels start at 0 (same faith or equivalent to same faith)
HOSTILITY_OPINION_EFFECTS = { # The opinion effects of each hostility level
0
-10
-20
-30
}
HOSTILITY_COUNTY_OPINION_EFFECTS = { # The opinion effects of each hostility level on counties. Modified by fervor of the county's faith divided by 100
0
-15
-30
-45
}
HOSTILITY_COMBAT_MOD_MULT = { # Multiplier to how big of an effect tolerance_advantage_mod has. The higher it is, the greater the effect
0
0
0.5
1
}
HOSTILITY_LEVEL_NAMES = { # Localization for each hostility level. See _doctrines.info for more info
"FAITH_HOSTILITY_RIGHTEOUS"
"FAITH_HOSTILITY_ASTRAY"
"FAITH_HOSTILITY_HOSTILE"
"FAITH_HOSTILITY_EVIL"
}
PIETY_LOSS_PER_MISSING_SPOUSE = 0.5 # If you have fewer spouses than expected in a polygamous faith, you'll lose this much piety for each spouse you fall short.
DESIRED_SPOUSES_PER_TIER = { 0 1 1 2 3 4 4 } # Number of spouses you are expected to have per tier, starging with unlanded, then baron and ending with hegemon
FAITH_CONVERSION_PIETY_MINIMUM = 250 # The minimum amount of piety converting faith costs
PART_OF_GHW_POT_DESIGNATED_FOR_KINGDOM_RECIPIENT = 10 # How many percent of the pot will be reserved for the person receiving the kingdom?
GHW_HOSTILITY_MIN_LEVEL = 2 # Any independent ruler within the target kingdom at least this hostile to the caller faith will be a forced defender
PREFERRED_GENDER_CHANCE = 3 # When deciding if clergy characters should be male or female a 3 here means that the preferred gender will be three times as likely
GHW_DAYS_LIMIT_CAN_CHANGE_TARGET = 30 # is GHW starts sooner than this number, you can no longer change target
GHW_COST_PIETY_CHANGE_TARGET = 250 # cost to chagne GHW target. Grows linearly with each change
HEAD_OF_FAITH_PIETY_GAIN = 1.0 # Monthly piety gain for heads of faith
FAITH_COLOR_DEVIATION = { 0.25 0.35 } # How much should generated colors differ from the faith they're based on? Distance within the HSV colorspace
}
NTitle = {
CREATE_TITLE_OR_TIER_HEGEMONY = { -1 -1 -1 -1 -1 2 1 }
CREATE_TITLE_OR_TIER_EMPIRE = { -1 -1 -1 -1 2 1 1 }
CREATE_TITLE_OR_TIER_KINGDOM = { -1 -1 -1 2 1 1 1 }
CREATE_TITLE_PRESTIGE_GAIN = { 0 0 0 300 400 500 600 }
CREATE_TITLE_LEGITIMACY_GAIN = { 0 0 0 25 50 75 100 }
CREATE_TITLE_GOLD_COST = { 0 0 0 250 500 1000 2000 } # remember to update values in create_duchy_title_value etc. in 01_dynamic_values.txt!
CREATE_TITLE_MIN_COST_FACTOR = 0.2 # creating a title will always cost at least this much in percent of the base cost, ex. 20% of 250 for a duchy
CREATE_TITLE_MIN_PIETY_COST_FACTOR = 0.2 # creating a title will always cost at least this much in percent of the base cost, ex. 20% of 250 for a duchy
DESTROY_TITLE_PRESTIGE_COST = { 0 0 0 400 800 1200 2200 }
DESTROY_TITLE_LEGITIMACY_LOSS = { 0 0 0 25 50 75 100 } # Legitimacy lost when destroying titles of certain ranks (still allowed if you do not have enough legitimacy)
DESTROY_TITLE_CLEAR_LAW_MULT = 1 # when destroying a title with title-specifc laws, the cost for clearing laws must be payed, multiplied by this value
USURP_TITLE_GOLD_COST = { 0 0 0 250 500 1000 2000 } # remember to update action_can_usurp_title in 00_title_actions.txt!
USURP_TITLE_PRESTIGE_GAIN = { 0 0 0 300 400 500 600 }
USURP_FAITH_HOSTILITY = 2 # If at or above this level of faith hostility, usurpation can only be done if the holder has no land in the title
TAKE_TITLE_PRESTIGE_MULT = { 0 0.5 1 5 15 50 100 }
VASSALIZE_PRESTIGE_MULT = { 0 0.5 1 5 15 50 100 }
DRIFT_MONTHLY_PROGRESS_INCREASE = 1
DRIFT_MONTHLY_PROGRESS_DECREASE = 0.5
DRIFT_PROGRESS_LIMIT = 1200
DRIFT_ADJACENT_ACROSS_WATER_DISTANCE = 2
REVOKE_LAWS_COST_SCALE = { 0 0 0.1 0.25 0.5 1 2 }
DYNAMIC_TITLE_MAP_COLOR_S_V = { 0.8 1.0 } # What is the Saturation and Value of dynamic title map colors? (via HSV color - Hue is fully randomized)
CREATE_TITLE_PIETY_LEVEL = { 0 0 0 2 3 5 5 } # not a global requirement, it is used only for government with rule considers_piety_for_title_creation
CREATE_TITLE_PIETY_COST = { 0 0 0 500 2500 5000 10000 }
# Default desired titles to keep for AI - per current primary title tier. (-1 = keep all)
# Government types can define overrides via `ai_ruler_desired_kingdom_titles` and `ai_ruler_desired_empire_titles`.
# You cannot define less than 1 for the primary tier title.
# (Note that values below the primary title tier don't make much sense to configure)
AI_RULER_DESIRED_KINGDOM_TITLES_DEFAULT = { -1 -1 -1 -1 -1 -1 3 } # First 4 values not used
AI_RULER_DESIRED_EMPIRE_TITLES_DEFAULT = { -1 -1 -1 -1 -1 -1 1 } # First 5 values not used
}
NSiege = {
ACTIONS_TO_REMEMBER = 4 # How many previous siege actions are remembered
ACTION_WEIGHTS = { # How likely are the the actions to be picked. The probability is given by the ratio of the weights.
30 # breach
15 # starvation
15 # disease
20 # desertion
20 # stalemate
}
BASE_DEFENDER_MORALE = 100 # Defender morale with no buildings, garrison etc
DEFENDER_MORALE_PER_FORT_LEVEL = 75 # Defender morale added to the base per for level
BASE_DAILY_MORALE_LOSS = 1 # How much morale is lost every day of the siege
MIN_DAILY_MORALE_LOSS = 0.5 # Minimum daily morale loss for the defenders
DAILY_MORALE_LOSS_FROM_RELATIVE_ATTACKER_MEN = 0.01 # How much morale is lost every day of the siege for extra stack of men defined in RELATIVE_ATTACKER_MEN_STACK_SIZE
RELATIVE_ATTACKER_MEN_STACK_SIZE = 200 # Extra stack size of men to start getting daily morale loss
MONTHLY_ATTRITION = 0.01 # Monthly attrition during siege
BASE_SIEGE_PHASE_LENGTH = 20 # Base length of a siege phase (time between picking new actions) in days
BREACH_PHASE_TIMER_LEVELS = { # How many levels of breach are there and how much (as percentage) is the phase timer reduced by these levels.
-0.1
-0.3
}
BREACH_WEIGHT_PER_FORT_TIER = 2.0 # How much breach weight does each level of fort remove? Siege weight is the ACTION_WEIGHT, times the max siege tier in the attacking army, minus fort level * BREACH_WEIGHT_PER_FORT_TIER
BREACH_ASSAULT_TICK_PERCENTAGE_CASULATIES = { # How many casualties will the assaultin armies receive based on the breach level
2.5
1
}
BREACH_ASSAULT_PROGRESS_CHUNK = 100 # How many mens take an impact in the assault (rounds up)
BREACH_ASSAULT_PROGRESS_PER_CHUNK = 0.2 # How much impact in assault will have every chunk
STARVATION_MORALE_LEVELS = { # How many levels of starvation are there, and how much morale does the defender lose (as a percentage of total morale)
0.05
0.15
}
DISEASE_MORALE_LOSS_LEVELS = { # How many levels of disease are there and how much (as percentage) is the defender morale loss increased by these levels.
0.1
0.2
}
DESERTION_MORALE_LOSS = 5 # How much defender morale is lost on desertion
SIEGE_FORT_THRESHOLDS = { # At what levels is another level of siege tier needed to avoid reduced siege speed?
4
6
11
16
31
}
SIEGE_FORT_THRESHOLD_IMPACT = 0.7 # What is the impact of not having enough siege tier? Siege speed is multiplied for this for each missing tier. E.G., if siege tier is 0, and fort level is 4, siege speed is multiplied by 0.5 * 0.5
DEFENDER_OVERESTIMATION_FOR_SPLIT = 1.5 # Multiply number of defenders with this when splitting of a siege army to account for troops lost by the attacker to attrition during the remainder of the siege
SIEGE_ASSAULT_SPEED_MULT_WITH_ZERO_GARRISON_SIZE = 5 # How fast siege is speeding up when holding has min garrison size. The assault speed is multiplied by a value between 1 and N depending on the ratio of the garrison
}
NChild = {
ADOLESCENCE_SKILL_BASE_CHANCE = 15
CHILDHOOD_SKILL_BASE_CHANCE = 3
UNKNOWN_PARENT_SKILL = 5
BASE_MAX_SKILL = 10
INHERITED_SKILL_CHANCE = 1.3
LOWER_THAN_PARENT_BONUS = 20
MIN_SKILL_CHANCE = 10
EDUCATION_FOCUS_PROGRESS_YEAR = 1.0
HISTORY_CHILD_PERSONALITY_TRAITS = { 9 11 13 } # Ages where the children will gain each of the historical traits
}
NImprisonment = {
RANSOM_COST_BY_TIER = {
20 # Unlanded
30 # Baron
50 # Count
100 # Duke
200 # King
500 # Emperor
1000 # Hegemon
}
RANSOM_MIN_COST = 10
RANSOM_MULTIPLIER_PRIMARY_HEIR = 1.0
RANSOM_MULTIPLIER_SPOUSE = 0.5
RANSOM_MULTIPLIER_CLOSE_FAMILY = 0.25
RANSOM_MULTIPLIER_OTHER = 0.1
RANSOM_ROUNDED_TO = 5
}
NCounty = {
DEVELOPMENT_SPREAD_NEIGHBOUR_FACTOR = 0.1
DEVELOPMENT_SPREAD_USES_HIGHEST_NEIGHBOUR = yes # "yes" means only the difference from the highest dev neighbor will be used. "no" means that all higher-dev neighbors will be used
LEVELS_DEVELOPMENT = { 100 200 300 400 500 600 700 800 900 }
LEVEL_DROP_MAX_RETAINED_PROGRESS_DEVELOPMENT = 0.5
DEFAULT_COUNTY_CONTROL = 100
DEFAULT_COUNTY_DEVELOPMENT = 0
# What penalty to give when at zero culture acceptance. Scales down to 0 at 100% acceptance. So -10 would be -10 at 0%, -5 at 50%, 0 at 100%
COUNTY_OPINION_ZERO_ACCEPTANCE = -15
COUNTY_CONTROL_LOSS_ON_HOSTILE_OWNER_CHANGE = 75 # County control is reduced by this amount when the county changes hands due to conquest
ABSOLUTE_COUNTRY_CONTROL = 110
CULTURAL_ACCEPTANCE_AUTO_GRANT_COUNTY_SCRIPT_VALUE = "auto_grant_county_cultural_acceptance_impact"
COUNTY_FERTILITY_GROWTH_HERDER = 0 # For clearer tooltips, moved to holdings
CAPITAL_COUNTY_FERTILITY_DECLINE_NOMAD = 0 # For clearer tooltips, moved to holdings
CAPITAL_COUNTY_FERTILITY_DECLINE_NOMAD_CAPITAL = 0 # For clearer tooltips, moved to holdings
COUNTY_FERTILITY_GROWTH_FACTOR = 0.125 # Makes all county fertility growth modifiers give out more adjusted growth. 1.1 = 10% stronger growth. Moves equilibriums
COUNTY_FERTILITY_DECLINE_FACTOR = 0.125 # Makes all county fertility decline modifiers give out more adjusted growth. 1.1 = 10% stronger decline. Moves equilibriums
COUNTY_FERTILITY_EQUILIBRIUM_FACTOR = 0.09 # 0.007 # Factor value for how sensitive the fertility equilibrium is towards small changes. Inverted in calculations: the lower the value the more sensitive the behavior. Set to 100 to have a clear curve.
COUNTY_FERTILITY_MONTHLY_CHANGE_LEVELS = { -20 -0.01 0.01 20 }
COUNTY_FERTILITY_NON_NOMAD_HOLDING_MALUS = -0.75 # Negative mult malus applied to the amount of Herd gained from the county fertility in a county that does not have a Nomad or Herder Holding
HERD_GAIN_FROM_COUNTY_MULTIPLIER = 0.5 # Direct multiplier on the base Herd gained from County ( Base Gain = CountyFertility * HERD_GAIN_FROM_COUNTY_MULTIPLIER )
}
NProvince = {
BASE_SUPPLY_LIMIT = 2000 # The unmodified base supply limit of a province
BARONY_BUILDING_SLOTS = 2
COUNTY_BUILDING_SLOTS = 3
SUPPLY_PER_DEVELOPMENT = 150 # Each development adds this much sto the supply limit
ACROSS_WATER_PROVINCE_MAX_DISTANCE = 2 # Maximum number of (traversable) water provinces between provinces to be considered "connected across water"
WINTER_LEVEL_THRESHOLD_MILD = 0.2 # Determines when the mild winter level takes effect, should be a value between 0.0 .. 1.0
WINTER_LEVEL_THRESHOLD_NORMAL = 0.5 # Determines when the normal winter level takes effect, which ranges between WINTER_LEVEL_THRESHOLD_MILD .. 1.0
WINTER_LEVEL_THRESHOLD_HARSH = 0.9 # Determines when the harsh winter level takes effect, which ranges between WINTER_LEVEL_THRESHOLD_NORMAL .. 1.0
WINTER_EFFECTS_MINIMAL_DAY_COUNT = 10 # The target effects of winter are determined on a monthly basis, it will take a number of days to reach this target between this minimum and 27 (days in February - 1)
WINTER_EFFECTS_FACTOR_MILD = 0.45 # Bias that offsets the newly added value for winter (on a monthly basis) while a province has no or mild winter
WINTER_EFFECTS_FACTOR_NORMAL = 0.3 # Bias that offsets the newly added value for winter (on a monthly basis) while a province has normal winter
WINTER_EFFECTS_FACTOR_HARSH = 0.15 # Bias that offsets the newly added value for winter (on a monthly basis) while a province has harsh winter
WINTER_SEVERITY_DEFAULT_BIAS = 0.1 # Default bias used when determining winter on a province that doesn't have a bias set explicitely
WINTER_SEVERITY_RANDOM_MIN = 0.5 # Sets the lower bound of the random value that is used when determining the next winter severity
WINTER_SEVERITY_RANDOM_MAX = 1.0 # Sets the upper bound of the random value that is used when determining the next winter severity
RAZE_HOLDING_COOLDOWN_YEARS = 5 # Sets the cooldown perid in years for nomads razing holdings that they completely control
MAX_BUILDINGS = 7 # Maximum number of building slots that a province can have
}
NText = {
DURATION_SHOW_YEARS_THRESHOLD = 24 # Duration will show as years if it's at least this many months
DURATION_SHOW_MONTHS_THRESHOLD = 60 # Duration will show as months if it's at least this many days
}
NDynasty = {
MONTHLY_PRESTIGE_GAIN_PER_MEMBER = 0.02 # Was 0.2 per year, should be then 0.016 recurring but that is ugly so round to 0.015
MAX_MONTHLY_PRESTIGE_GAIN_FROM_ALIVE_MEMBERS = 2 # Cap the above number
MONTHLY_PRESTIGE_GAIN_PER_TITLE_TIER = { 0 0.125 0.25 0.5 1 2 4 } # When per year was { 0 2 4 6 8 10 }
MONTHLY_PRESTIGE_GAIN_MULT_FOR_VASSALS_OF_SAME_DYNASTY = 0 # Dynasty members who are vassal of below of someone of the same dynasty have their prestige contribution multiplied with this. 0 disables their prestige contribution entirely
MONTHLY_PRESTIGE_GAIN_PER_TITLE_TIER_SPOUSE = { 0 0.1 0.2 0.4 0.8 1.6 3.2 } # When per year was { 0 2 4 6 8 10 }
MONTHLY_PRESTIGE_GAIN_MULT_FOR_VASSALS_OF_SAME_DYNASTY_SPOUSE = 0 # Dynasty members whose spouse are vassal of below of someone of the same dynasty have their prestige contribution multiplied with this. 0 disables their prestige contribution entirely
LEVELS_PRESTIGE = { 300 1000 2000 4000 7000 11000 16000 22000 29000 37000 }
LEVEL_DROP_MAX_RETAINED_PROGRESS_PRESTIGE = 0.5
LEVELS_PRESTIGE_GRAPHICAL_STEP = 2
PRESTIGE_ZERO_LEVEL = 0
MARRIAGE_PRESTIGE = { -100 0 100 200 300 400 500 600 700 800 900 }
BIRTH_PRESTIGE = { 0 100 200 300 400 500 600 700 800 900 1000 }
MAX_LONG_REIGN = { 5 10 15 20 25 30 35 40 45 50 55 }
HEAD_MONTHLY_PRESTIGE_GAIN_PER_TITLE_TIER = { 0 0.01 0.02 0.03 0.04 0.05 0.06 }
HEAD_MONTHLY_PRESTIGE_GAIN_PER_MEMBER = 0.01
HEAD_MONTHLY_PRESTIGE_GAIN_CAP = 3
CURRENT_DYNAST_EXTRA_POWER = 0.1 # For determining who should by dynast, the current dynast is considered to be this much more powerful than reality so that it doesn't bounce back and forth. 0.1 means 10%
NAMING_CHANCE_CULTURE = 25
NAMING_CHANCE_TITLE = 50
CADET_COA_BASE_PATTERN = "pattern_solid.dds" # Pattern used for in the background of a tiled cadet branch CoA
PERK_COST_BASE = 250 # Used to determine what the cost of the next legacy perk is going to be. It's calculated as: COST = PERK_COST_BASE + (Number of Unlocked Perks * PERK_COST_MULTIPLIER)
PERK_COST_MULTIPLIER = 500 # Used to determine what the cost of the next legacy perk is going to be. It's calculated as: COST = PERK_COST_BASE + (Number of Unlocked Perks * PERK_COST_MULTIPLIER)
}
NHouse = {
HEAD_MONTHLY_PRESTIGE_GAIN_PER_TITLE_TIER = { 0 0.02 0.04 0.06 0.08 0.1 0.12 }
HEAD_MONTHLY_PRESTIGE_GAIN_PER_MEMBER = 0.02
HEAD_MONTHLY_PRESTIGE_GAIN_CAP = 5
RENAME_MOTTO_MAX_LENGTH = 120 # How long can a motto be when custom renaming
POWERFUL_HOUSE_MINIMUM_POWER = 40 # Miminum house power values for the house to be considered powerful
POWERFUL_HOUSE_MAX_COUNT = 5 # Max number of powerful houses in an admin realm (not counting the top liege house)
HOUSE_POWER_BONUS_COOLDOWN_DAYS = 9125 # Cooldown days beforechanges or upgrades to house powers
}
NHouseRelation = {
MAX_CHANGES_TO_REMEMBER = 100 # How many changes to house relations are remembered before the oldest are removed.
DECAY_TOWARDS_NEUTRAL_AFTER_YEARS = 50 # Years without change before house relation moves one level towards neutral.
CEASE_FROM_NEUTRAL_AFTER_YEARS = 75 # Years without change at neutral level before house relation is removed.
IMPROVEMENT_FROM_MARRIAGE = 0.1 # How much a house relation will change from a single marriage.
}
NDreadEffectOnBoldness = {
# values below stack
MULT_BASE = 1 # base multiplier for dread (0..inf). Set to 0 to disable dread effect on boldness
MULT_OUTSIDE_REALM = 0.5 # reduce dread if I am not in the same realm as the dreaded character (0..1)
MULT_NOT_DIRECT_LIEGE = 0.7 # reduce dread if the dreaded character is not my direct liege (0..1)
MULT_DIPLOMATIC_DISTANCE_FALLOFF = 1 # reduce dread with diplomatic distance: dread *= 1 - ( distance * MULT_DIPLOMATIC_DISTANCE_FALLOFF ) / NAI::MAX_DIPLO_DISTANCE
}
NDomain = {
ABOVE_LIMIT_LEVY_PENALTY = 0.2 # How much levies are reduced per holding over the limit
ABOVE_LIMIT_MAX_LEVY_PENALTY = 1 # How much levies can be reduced at most
ABOVE_LIMIT_TAX_INCOME_PENALTY = 0.2 # How much tax income from domain is reduced per holding over the limit
ABOVE_LIMIT_MAX_TAX_INCOME_PENALTY = 1 # How much tax income from domain can be reduced at most
ABOVE_LIMIT_HERD_INCOME_PENALTY = 0.5 # How much herd income from domain is reduced per holding over the limit
ABOVE_LIMIT_MAX_HERD_INCOME_PENALTY = 1 # How much herd income from domain can be reduced at most
HOLDING_GRACE_PERIOD = 365 # How many days do newly gained holdings not count towards the domain size for the purposes of penalties (but also not produce any levies)
STEWARDSHIP_SKILL_FOR_DOMAIN_LIMIT_INCREASE = 200 # domain limit += floor( <stewardship skill> / STEWARDSHIP_SKILL_FOR_DOMAIN_LIMIT_INCREASE )
LEVIES_AT_ZERO_COUNTY_CONTROL = 0.5 # How many % levies do you get at 0 county control? Interpolated between this value and 100% when between 0 and 100
TAX_AT_ZERO_COUNTY_CONTROL = 0.0 # How much % tax do you get at 0 county control? Interpolated between this value and 100% when between 0 and 100
LEVIES_AT_MAX_COUNTY_DEVELOPMENT = 0.5 # How many % levies bonus do you get at 100 county development? Interpolated between this value and 0% when between 0 and 100
TAX_AT_MAX_COUNTY_DEVELOPMENT = 0.5 # How much % tax bonus do you get at 100 county development? Interpolated between this value and 0% when between 0 and 100
HOLDING_MIN_GARRISON_COUNT = 25 # The minimal amount of garrisons a holding should have if it should have garrisons
ABOVE_LIMIT_BARTER_GOODS_INCOME_PENALTY = 0.2 # How much Barter Goods are reduced per holding over the limit
ABOVE_LIMIT_MAX_BARTER_GOODS_INCOME_PENALTY = 1 # How much Barter Goods can be reduced at most
}
NFaction =
{
COUNTY_CREATE_MIN_SCORE = 10 # Minimum score to necessary to even consider create a faction
COUNTY_JOIN_MIN_SCORE = 15 # Minimum score to necessary to even consider join a faction
COUNTY_LEAVE_SCORE_THRESHOLD = 5 # If the join score goes below this value the member leaves the faction
MONTHS_IDLE_DEMAND = 12 # After accepting or losing a war the faction will stay this time without enforcing any demands
COUNTY_INCOME_POWER_FACTOR = 100 # Strength per income for the counties
DISCONTENT_THRESHOLD = 100 # The discontent threshold at which the faction can send demands.
DEFAULT_POWER_THRESHOLD = 80 # The default power threshold if there no one defined.
MAX_DEMAND_DELAY_DAYS = 90 # The faction is guaranteed to send demands on the next update after this number of days has passed since it started being able to send demands.
POTENTIAL_FORCE_JOIN_HOOK_TYPE = "strong" # The type of hook that means the UI will show a member as potentially joining
# the minimum warscore a defender in a faction war must have to win the war when the faction is destroyed due to other reasons.
# If below this warscore the war will just be invalidated.
MIN_WARSCORE_FOR_VICTORY_ON_FACTION_INVALIDATION = 75
}
NPathFinding = {
EMBARK_COST = 30 # This value will be set as pathfinding cost if it goes from land to sea
DISEMBARK_COST = 10 # This value will be set as pathfinding cost if it goes from sea to land
}
NCulture = {
MINIMUM_INNOVATIONS_TO_NEXT_ERA = 8 # Raw number of innovations needed to be able to go to the next era. If an era has less innovations than this number, the lowest is used.
ERA_PROGRESS_GAIN_BASE_MONTHLY = 0.1 # Base percentage gain every month for era spread
FIRST_ERA_START_YEAR = 2300 # When did the first era start?
ERA_PROGRESS_GAIN_MONTHLY_PER_AVERAGE_DEVELOPMENT_LEVEL = 0.05 # How much extra per average development level
# Regional spread will start with the minimum number of regions from any of the next percentages
INNOVATION_REGIONAL_PERCENTAGE = 0.1 # Minimum percentage of region for regional innovations to get regional spread
INNOVATION_CULTURE_PERCENTAGE_IN_REGION = 0.4 # Minimum percentage for a culture in a region to be exposed to get regional spread
INNOVATION_CULTURE_ACCEPTANCE_THRESHOLD_FOR_SPREAD = 5 # Minimum Cultural Acceptance for selecting spread innovation (0-100). Cultures with an acceptance level below this threshold won't be considered when choosing innovation spread.
# Chance (0..100) to advance with the innovation each month:
# base + from spread + from fascination
INNOVATION_PROGRESS_CHANCE_BASE = 5
INNOVATION_PROGRESS_CHANCE_FROM_SPREAD = 40 # chance bonus to innovation if there is any spread by nearby cultures
INNOVATION_PROGRESS_CHANCE_SPREAD_AND_FASCINATION_MULTIPLIER = 2 # multiply Cultural Acceptance (100-based) by this as bonus multiplier if the current spread innovation is ALSO a fascination
# from fascination = base + SKILL_LEVEL_BONUS( max( 0, head relevant skill - HEAD_SKILL_BASE ) )
# SKILL_LEVEL_BONUS( SKILL_MOD ) is computed as a sum of contributions that get smaller the higher the skill modifier.
# The first 10 (SECTION_SIZE) points may give +1 each, the second 10 may give +0.8 and so on. With these numbers:
# Skill mod 15 -> 1 * 10 + 0.9 * 5 = 14.5% bonus from skill.
# Skill mod 37 -> 1 * 10 + 0.9 * 10 + 0.8 * 10 + 0.7 * 7 = 27.4
# trailing points after the highest section take the last multiplier of the PER_SKILL_SECTION array, which should have at minimum 2 entries
# this skill level bonus will not exceed the SKILL_CAP, so a Skill 100 character will still get at most (for example) 30% progress chance from their skill.
INNOVATION_PROGRESS_CHANCE_FROM_FASCINATION_BASE = 10 # base progress chance bonus if fascination
INNOVATION_PROGRESS_CHANCE_FROM_FASCINATION_HEAD_SKILL_BASE = 0 # skill level below which no bonus is given
INNOVATION_PROGRESS_CHANCE_FROM_FASCINATION_SKILL_LEVEL_SECTION_SIZE = 10 # size of each multiplier chunk. with 10, the first 10 bonus point will get the first multiplier and so on
INNOVATION_PROGRESS_CHANCE_FROM_FASCINATION_SKILL_CAP = 45 # how high can the skill bonus be at most (BASE included)
INNOVATION_PROGRESS_CHANCE_FROM_FASCINATION_PER_SKILL_SECTION = { 1 0.9 0.8 0.7 0.6 }
INNOVATION_PROGRESS_CHANCE_FROM_FASCINATION_NO_HEAD_SKILL = 10 # used as the skill value if there is no cultural head
INNOVATION_PROGRESS_GAIN_FROM_BONUS_FASCINATION = 1.5 # Additional progress rate if the innovation is current fascination AND was selected as bonus_fascination_innovation
# If the random roll succeeds, the innovation will progress by:
# base + from development + from eras ahead
INNOVATION_PROGRESS_GAIN_BASE = 0.3
INNOVATION_PROGRESS_GAIN_PER_AVERAGE_DEVELOPMENT_LEVEL = 0.02
INNOVATION_PROGRESS_GAIN_PER_ERA_AHEAD = 0.2
INNOVATION_PROGRESS_DIVIDE_FACTOR_IF_ERA_BEHIND = 5 # the overall progress is divided by this number to achieve a way slower progress for future innovations. 10 would divide the total progress by 10, and this is further divided by the number of eras the culture is behind - so the progress may end up being divided by 30 at most. Set to 0 to disable this behavior.
INNOVATION_PROGRESS_MIN_MULTIPLIER_IF_ERA_BEHIND = 0.01 # the division from the define above may not go lower than this. Ranges between 0 and 1.
INNOVATION_PROGRESS_DIVIDE_FACTOR_PER_AHEAD_OF_TIME_TECH = 2 # divide the progress gain by this number for each ahead-of-time innovation the culture has. Scales exponentially, so 2 would halve the gain when 1 innovation is discovered, divide by 4 after the second is discovered etc. Set to 0 to disable this behavior.
INNOVATION_PROGRESS_MIN_MULTIPLIER_PER_AHEAD_OF_TIME_TECH = 0.01 # The division from the system above won't go below this multiplier. Ranges between 0 and 1.
INNOVATION_MIN_PROGRESS_TO_SHOW_IN_UI = 0.01 # Progress rates below this number will show as "stale" in the UI - this doesn't mean that the culture is not discovering it though
MINIMUM_DYNASTY_NAMES = 2 # We'll log an error for any culture with less dynasty names than this. Dynasty names from the culture group will count
# This counts the # of border counties. So if culture A has a county that borders a single county of culture B, that's 2 border counties. If it bordered 2, it'd be 3 border counties, as each individual county can only get counted once
YEARLY_ACCEPTANCE_PER_BORDER_COUNTY = 0.05
MAX_YEARLY_ACCEPTANCE_PER_BORDER_COUNTY = 1
MAX_ACCEPTANCE_FROM_SHARED_REALMS = 0.5 # If 100% of both cultures are in the same realm, acceptance will increase by this much each year. For each realm with both cultures we take the % of each culture that's present in the realm and multiply them with one another. E.G., if a realm has 50% of all Norwegian counties and 40% of all Swedish cultures, that'll contribute 50% * 40% * MAX_ACCEPTANCE_FROM_SHARED_REALMS to acceptance each year
# Acceptance per year per vassal of each tier
# This is then divided by the size of the smaller of the two cultures, or by MIN_CULTURE_SIZE_FOR_VASSAL_ACCEPTANCE if that's bigger
# So a king vassal gives the same gain for a small culture as two king vassals for one that's twice as big
# We don't support baron vassals for this
YEARLY_ACCEPTANCE_FROM_TIER = { 0 0 1 3 10 0 0 }
MAX_YEARLY_ACCEPTANCE_FROM_VASSALS = 0.5 # We don't give more than this from vassalage
MIN_CULTURE_SIZE_FOR_VASSAL_ACCEPTANCE = 5 # We pretend neither culture involved is smaller than this
ACCEPTANCE_REDUCTION_FROM_NO_INTERACTION = 0.5 # If two cultures gain no acceptance at all from bordering, vassals, or shared realm, their acceptance will go down by this amount each year. Cultures with the same heritage are exempt
ACCEPTANCE_REGRESSION_TOWARDS_BASELINE = 1 # At 100% past the baseline it ticks down at this rate per year. Scaled from 0 to 100%, so at 50% it'd be half this value
MIN_ACCEPTANCE_REGRESSION_TOWARDS_BASELINE = 0.1 # Regression towards zero can't go below this (except to avoid overshooting the baseline)
ACCEPTANCE_DIMINISHING_RETURNS = 0.5 # At 100%, increases are reduced by this much. Scaled from 0 to 100%, ignores baseline
CULTURE_ACCEPTANCE_CHANGELOG_DURATION = 10 # After how many years do fervor changelog entries get deleted?
DEFAULT_MAX_TRADITIONS = 5 # How many traditions can a culture have by default?
CULTURE_COLOR_DEVIATION = { 0.1 0.15 } # How much should generated colors differ from the culture they're based on? Distance within the HSV colorspace
HYBRID_GFX_CHANCE = 0.666 # What's the chance that a GFX culture that can be made into a hybrid will be? Used for the AI, the default selection, and when making a culture through script
HYBRID_NAMING_CHANCE = 0.666 # What's the chance hybrid name lists will be used? Used for the AI, the default selection, and when making a culture through script
REFORMATION_PROGRESS_GAIN_BASE = 1.66 # The base monthly progress gain when reforming. Finished at 100. Base speed at 1.66 results in minimum 5 years.
REFORMATION_PROGRESS_SLOWDOWN_PER_COUNTY_WITH_CULTURE = 0.2 # How much slower is the reformation per county with the culture. The final progress is calculated: (TotalGain) / (NrCounties * SlowdownFactor)
REFORMATION_PROGRESS_REPLACE_TRADITION_MULT = 0.75 # A multiplier to the total progress when replacing traditions.
REFORMATION_MAX_YEARS = 30 # The slowdown per county will be capped at a value that limits the max years a reformation can take to this value. Replacing traditions will go over this limit.
MILITARY_STRENGTH_IMPORTANCE_FOR_CULTURE_HEAD_FROM_HERD = 0.1 # A rulers max military strength is multiplied by this as a factor of the determination of the culture head from herd - to avoid scenarios where there is no culture head in herd cultures that no longer use herd for some reason
}
NMercenary = {
LEVELS = { 0 7 14 } # Defines how many different sizes of mercenary companies are there and how many are spawned for a given culture
# The numbers correspond to numbers of counties of the culture. No company exists if the number is lower than the first value specified here.
HIRE_RANGE = 500 # The maximum distance of mercenaries that can be hired (capital to mercenary location)
HIRE_RANGE_SAME_CULTURE = 1500 # The maximum distance of mercenaries with the same culture that can be hired (capital to mercenary location)
LEVIES = { 400 800 1200 } # The base numbers of levies for levels of mercenary bands
MAA_REGIMENTS = { 1 2 3 } # The number of MAA regiments for levels of mercenary bands
NUM_KNIGHTS = { 2 3 4 } # The number of knights for levels of mercenary bands
MAA_REGIMENT_SIZES = { 3 3 3 } # The base sizes of MAA regiments for levels of mercenary bands, in number of sub-regiments
SIZE_INNOVATIONS_RATIO = 1.0 # How much are mercenary companies growing with the ratio of discovered to all cultural innovations of the culture. 1.0 means +100%
# if SIZE_INNOVATIONS_RATIO = 2, the mercenaries will be 3x their original size if all innovations are discovered
BASE_HIRE_MONTHS = 36 # The base length of the period mercenaries are hired for in months
MIN_HIRE_MONTHS = 11 # Minimum length of time mercenaries can be hired for in months
MAX_HIRE_MONTHS = 108 # Maximum length of time mercenaries can be hired for in months
LEVY_COST_PER_100_SOLDIERS = 12.0 # The cost of the levy regiment part of mercenary companies, per 100 soldiers for better precision
MAA_COST_RATIO = 0.5 # The cost of the MAA regiments of mercenary companies as a fraction of what those regiments cost when buying them
REALM_SIZE_MULT = 0.05 # The cost will increase by this many percent multiplied by the square root of the hirer's realm size (# of counties)
ALLOWED_DEBT_MONTHS = 24 # How many months of monthly income in dept are characters allowed to have before being blocked from hiring mercenaries
REINFORCEMENT_FACTOR = 3.0 # How much faster do mercenary regiments reinforce than regular regiments
COUNTY_REMOVAL_FACTOR = 1.2 # When removing mercenaries from shrinking cultures, first multiply culture size with this
}
NHolyOrder = {
# In addition to the holding levies, a holy order has levies according to this formula:
# NUM_LEVIES_BASE + <num holdings> * NUM_LEVIES_PER_HOLDING
NUM_LEVIES_BASE = 500
NUM_LEVIES_PER_HOLDING = 200
# The holy order starts out with NUM_MAA_BASE Men-At-Arms sub-regiments. These will always try to use the holy_order_maa defined in the religion, if any are available.
NUM_MAA_BASE = 2
# The holy order also gets NUM_MAA_PER_HOLDING additional Men-At-Arms sub-regiments for each holding leased to it.
NUM_MAA_PER_HOLDING = 1
# The MaA from this many holdings will all go into the same regiment
NUM_HOLDINGS_PER_MAA_REGIMENT = 3
# The regiment type of these additional Men-At-Arms has a chance of RELIGION_MAA_RATIO % (multiplied by 100) to use a religious type, like NUM_MAA_BASE.
# Otherwise it will use a random type with the holy_order_fallback = yes flag.
RELIGION_MAA_RATIO = 0.7
PATRON_MIN_TIER = 4 # minimum tier for a ruler to be a patron of a holy order
LEVY_COST_PER_100_SOLDIERS = 5.0 # The piety cost of the levy regiment part of holy orders, per 100 soldiers for better precision
MAA_COST_RATIO = 0.2 # The piety cost of the MAA regiments of holy orders as a fraction of what those regiments cost when buying them
REALM_SIZE_MULT = 0.05 # The cost will increase by this many percent multiplied by the square root of the hirer's realm size (# of counties)
PATRON_HIRE_COST_MULT = 0 # The patron pays only a fraction for hiring a holy order. Set to 0 to make it free.
PATRON_STEAL_COST_MULT = 1 # But if someone's already hired it, they do have to pay still
# One character can hire up to this many holy orders. Set to -1 to disable the limit.
HIRE_LIMIT = 1
# Must be at war with someone with at least this hostility level to be able to hire holy orders. Once hired hey can be used against all enemies, though.
ENEMY_MIN_HOSTILITY_LEVEL = 2
BASE_NUM_KNIGHTS = 2 # How many knights do holy orders have?
EXTRA_KNIGHTS_PER_HOLDING = 0.5 # How many knights do holy orders get for each holding? Rounds down
COAT_OF_ARMS_LIST = "religious_title"
}
NCourt = {
# Number of spouses that should be available in a court.
# Spouses will be spawned at game start and on succession, if no matching characters are available.
GENERATED_SPOUSES_BARONY_PER_HOLDING_KEYS = {}
GENERATED_SPOUSES_BARONY_PER_HOLDING_VALUES = {}
GENERATED_SPOUSES_COUNTY = 0
GENERATED_SPOUSES_DUCHY = 0
GENERATED_SPOUSES_KINGDOM = 0
GENERATED_SPOUSES_EMPIRE = 0
GENERATED_SPOUSES_HEGEMONY = 0
# Number of commanders that should be available in a court.
# Commanders will be spawned at game start and on succession, if no matching characters are available.
GENERATED_COMMANDERS_BARONY_PER_HOLDING_KEYS = {}
GENERATED_COMMANDERS_BARONY_PER_HOLDING_VALUES = {}
GENERATED_COMMANDERS_COUNTY = 0
GENERATED_COMMANDERS_DUCHY = 0
GENERATED_COMMANDERS_KINGDOM = 0
GENERATED_COMMANDERS_EMPIRE = 0
GENERATED_COMMANDERS_HEGEMONY = 0
GENERATED_COMMANDERS_MERCENARY_COMPANY = 1
GENERATED_COMMANDERS_HOLY_ORDER = 1
# When a courtier has decided to leave, they will stay this much longer to give the liege the opportunity to make them stay
COURTIER_MOVE_TO_POOL_DELAY_MONTHS = 2
# Guests stay this long before they consider leaving. From then on there is a monthly chance they will decide to leave (monthly_leave_chance_x10).
GUEST_STAY_DURATION_MONTHS = 36
SETUP_GUEST_MIN_STAY_DURATION_MONTHS = 6 # guests filled into courts at game start will stay between SETUP_GUEST_MIN_STAY_DURATION_MONTHS and GUEST_STAY_DURATION_MONTHS
# Same as COURTIER_MOVE_TO_POOL_DELAY_MONTHS, but for guests
GUEST_MOVE_TO_POOL_DELAY_MONTHS = 2
# Maximum number of adult courtiers and guests, per ruler tier. While it won't throw anyone out if the limit is exceeded, no new guests will arrive while at or above the cap. See also: MIN_GUESTS_PER_TIER.
MAX_COURTIERS_AND_GUESTS_PER_TIER = { 0 0 6 8 12 20 36 }
# Minimum number of adult guests, per ruler tier. Overrides MAX_COURTIERS_AND_GUESTS_PER_TIER to make sure there are always some guests even if the courtiers have reached the cap.
MIN_GUESTS_PER_TIER = { 0 0 0 1 2 3 4 }
# If the pools are empty and guests need to be generated, generate at most this many per month
MAX_GUESTS_TO_GENERATE = 0
}
NSubjectContract = {
# Only count vassals and above count towards the limit
ABOVE_LIMIT_LEVY_PENALTY = 0.05 # How much levies are reduced per vassal over the limit
ABOVE_LIMIT_MAX_LEVY_PENALTY = 0.95 # How much levies can be reduced at most
ABOVE_LIMIT_TAX_INCOME_PENALTY = 0.05 # How much tax income from domain is reduced per vassal over the limit
ABOVE_LIMIT_MAX_TAX_INCOME_PENALTY = 0.95 # How much tax income from domain can be reduced at most
ABOVE_LIMIT_HERD_INCOME_PENALTY = 0.05 # How much herd income from domain is reduced per vassal over the limit
ABOVE_LIMIT_MAX_HERD_INCOME_PENALTY = 0.95 # How much herd income from domain can be reduced at most
CEASE_PAYING_TRIBUTE_LABEL_LEVELS = { 10 25 100 }
MEN_AT_ARMS_RECRUITMENT_COST_MULT = 0.5 # How much greater the cost is when recruiting MaAs from tributaries rather than directly
LIKELY_TO_ACCEPT_TRIBUTE_THRESHOLD = 70 # acceptance scores this level or above will be considered "likely" when building tooltips
MAX_SUBJECT_STANDING = 100 # max amount Subject Standing can reach before being capped
}
NGUI = {
REALM_VIEW_NUM_HEIRS = 5
REALM_VIEW_CONTROL_THRESHOLD = 35
CHARACTER_LIST_TEXT_SEARCH_MIN_LENGTH = 2 # min text string length to start matching
CHARACTER_LIST_MATCH_CUTOFF = 25 # lowest match score for text filter
CHARACTER_LIST_MATCH_COUNT = 15 # text filter options limit
CHARACTER_LIST_NAME_MATCH_COUNT = 100 # match by name character limit
CHARACTER_LIST_PARALLEL_JOB_CHUNK = 1000 # internal option for parallel character processign
HEALTH_FINE_LEVEL = 3 # value for health filter
VALUE_LIMIT_SHOW_K = 100000 # army values greater that this will be shown as 50K
WAR_OVERVIEW_MAIN_PARTICIPANTS = 2 # how many participants show as separate portraits
TUTORIAL_STEP_INSTRUCTION_BUTTON_ID = "next"
RENAME_MAX_LENGTH = 40 # How long can names and such be when renaming things (E.G., characters, titles, dynasties)
EXIT_SAVE_NAME = "autosave_exit"
MAX_BREAKDOWN_ENTRIES = 10 # Used to limit the number of entries in some breakdowns (E.G., tax from vassals)
BATTLE_SUMMARY_MINOR_BATTLE = 1000 # max soldiers for a battle to be skirmish
BATTLE_SUMMARY_BIG_LOSSES = 0.6 # ration of survivors when a battle is a slaughter
DEFAULT_FRONT_END_BACKGROUND = "main_menu/frontend_west.dds" # relative to the illustrations folder
DYNASTY_TREE_MAX_SIZE = 200 # Limit initial number of character in single dynasty tree
PRISONER_MASS_ACTION_REASONS = 5 # maximum number of reasons why a mass prisoner action cannot be done that we want to show in tooltips
DECISION_LIST_UPDATE_TIME = 0.25 # Time between decision list window updates, in seconds
}
NSuggestions = {
NUM_OF_SUGGESTIONS = 0 # How many suggestions should show up maximum in the interface (currently disabled until suggestion definitions are reworked for better quality)
GLOBAL_SPAN_MONTHS = 6 # How frequently new suggestions should be created
PLAYER_SUGGESTION_MONTHS_UPDATE = 2 # How frequently existing updates should be checked if they're still valid
}
NModifier = {
HEALTH_VALUE_FORMAT_THRESHOLDS = { -6 -4.5 -3 -1 -0.75 -0.5 -0.25 0 0.09 0.25 0.5 0.75 1 2 } # Thresholds to select the key in HEALTH_VALUE_FORMAT_KEYS
HEALTH_VALUE_FORMAT_KEYS = {
"HEALTH_VALUE_FORMAT_ALREADY_DEAD"
"HEALTH_VALUE_FORMAT_CATASTROPHIC_PENALTY"
"HEALTH_VALUE_FORMAT_CRITICAL_PENALTY"
"HEALTH_VALUE_FORMAT_SEVERE_PENALTY"
"HEALTH_VALUE_FORMAT_MAJOR_PENALTY"
"HEALTH_VALUE_FORMAT_MODERATE_PENALTY"
"HEALTH_VALUE_FORMAT_MINOR_PENALTY"
"HEALTH_VALUE_FORMAT_TINY_PENALTY"
"HEALTH_VALUE_FORMAT_TINY_BOOST"
"HEALTH_VALUE_FORMAT_SMALL_BOOST"
"HEALTH_VALUE_FORMAT_MEDIUM_BOOST"
"HEALTH_VALUE_FORMAT_SIGNIFICANT_BOOST"
"HEALTH_VALUE_FORMAT_HUGE_BOOST"
"HEALTH_VALUE_FORMAT_MASSIVE_BOOST"
"HEALTH_VALUE_FORMAT_GODLIKE_BOOST"
}
STANDARD_MINIMUM_VALUE = 0.1 # Some modifiers are not allowed to reduce whatever they're affecting to below 10%
AVERAGE_PROWESS_VALUE = 10 # Used by character_opinion_from_high_prowess_add and character_opinion_from_low_prowess_add modifiers to determine what's high and low
}
NPortrait = {
GENE_DATABASE_VERSION = 5 # If the version saved in a file does not match this number, the portrait DNAs will get regenerated. Increase this number when making gene database changed that would break old portraits.
GRACEFUL_AGING_START = 25 # After this age, added life expectancy will make a character look younger than they are; the effect grows the further past this point one goes
GRACEFUL_AGING_END = 70 # This is the apparent age at which life expectancy stops slowing down visual aging (each year onwards ages you visually 1 year)
MAX_AGE = 100.0 # At this age portraits will use the special age gene at full strength
PORTRAIT_MALE_ADULT_AGE = 18 # The boy -> male portrait change happens at this age
PORTRAIT_FEMALE_ADULT_AGE = 18 # The girl -> female portrait change happens at this age
CUSTOM_HAIR_COLORS_RGB = { # Hair colors available for use in the barber shop
0.949 0.900 0.867
0.886 0.725 0.584
0.827 0.592 0.423
0.741 0.474 0.302
0.592 0.314 0.176
0.329 0.263 0.196
0.341 0.227 0.149
0.286 0.137 0.066
0.145 0.086 0.050
0.086 0.059 0.035
}
DEFAULT_ANIMATION = "idle" # Default portrait animation, used as a fallback in places where portrait animations can be specified
SAVE_GAME_ANIMATION_GROUP_MAIN = "frontend_center_idle" # Which animation group to use for the main menu main character taken from saves
SAVE_GAME_ANIMATION_GROUP_HEIR = "frontend_right_idle" # Which animation group to use for the main menu heir character taken from saves
SAVE_GAME_ANIMATION_GROUP_SECONDARY = "frontend_left_idle" # Which animation group to use for the main menu secondary character taken from saves
BOOKMARK_ANIMATION_GROUP = "idle" # Which animation group to use for the bookmark character
HYBRIDIZATION_ANIMATION_GROUP = "idle" # Which animation group to use for culture hybridization previews
WEIGHT_UPDATE_YEAR_INTERVAL = 3 # Years in between portrait updating their current weight towards their target weight
WEIGHT_UPDATE_YEAR_INTERVAL_PLAYER = 1 # Years in between portrait updating their current weight towards their target weight (for player characters)
WEIGHT_UPDATE_PLAYER_LERP_SCALAR = 0.30 # Scalar for the liner interoplation of the weight update to trend current weight towards target weight, for the player
WEIGHT_UPDATE_LERP_SCALAR = 0.40 # Scalar for the liner interoplation of the weight update to trend current weight towards target weight
DEFAULT_BASE_WEIGHT_MIN = -35 # Min for starting random base weight inclusive
DEFAULT_BASE_WEIGHT_MAX = 35 # Max for starting random base weight inclusive
IGNORED_WEIGHT_DEVIATION_FOR_DEAD_WITHOUT_DNA = 10 # Characters that die at between -10 and 10 weight, and have no DNA generated, will get their weight set to 0 to save storage in the save game
MAX_PORTRAIT_GENERATION_DEPTH = 8 # When generating someone's portrait, generate up to this many generations of missing portraits
}
NPlayer = {
RALLY_POINT_LIMIT = 10 # Rally point number limit for players
MIN_PATH_COST_SAVINGS_TO_CONSIDER_WATER_PATH = 45 # Number of travel days saved before right-clicking considers going through water instead
}
NRaid = {
RAID_LOOT_PER_SOLDIER = 0.1 # How much loot can a single soldier carry? Minimum increment is 0.001
MIN_SOLDIERS_TO_RAID = 200 # How small can a raid army be and still be able to loot?
MONTHLY_ATTRITION = 0.01 # How much attrition do you take while looting a province? 0.01 = 1% per month
MONTHS_OF_RAID_LOOT = 12 # How many months of holding income (with owner effects discounted) does raiding provide?
LESS_MONTHS_OF_RAID_LOOT = 6 # This is subtracted from MONTHS_OF_RAID_LOOT if you have the government 'barter = yes'
# Progress cannot be lower than 1/day (except when interrupted by combat)
BASE_PROGRESS = 20 # How much base raid action progress do you get per day?
PROGRESS_PER_SOLDIER = 0.01 # How much raid action progress do you get per day per soldier? Minimum resolution is 0.001
BASE_DIFFICULTY = 350 # How much base progress is needed?
DIFFICULTY_PER_FORT_LEVEL = 350 # How much progress is needed per fort level in the holding?
DIFFICULTY_PER_COUNTY_FORT_LEVEL = 250 # How much progress is needed per fort level in the county *outside* the holding?
DAYS_OF_HOSTILITY = 180 # How long after raiding do hostilities last?
DAYS_OF_IMMUNITY = 1825 # How long does raid immunity after defeating a raid army last?
RAID_REALM_AI_COOLDOWN = 1 # How many years the AI should wait before considering raiding again, after any AI raiders have been defeated previously
RAID_MINIMUM_ATTRITION = 0 # How low can the attrition go for raiders in particular?
RAID_NOMAD_FACTOR = 100 # How much to divide nomad raid loot value with ((herd/countycapitals)/RAID_NOMAD_FACTOR)
}
NBarter = {
BASE_DURATION = 400
BASE_PROGRESS = 15
PROGRESS_PER_SOLDIER = 0.005
LOOT_PER_SOLDIER = 0.1 # How much loot can a single soldier carry? Minimum increment is 0.001
BARTER_GOODS_TO_LOOT_MULT = 0.5 # Used to convert Barter Goods to Loot. A value of 0.5 means that 2 Barter Goods are worth 1 Loot
}
NCharacterGlow = {
TINT_COLOR_DEFAULT = { 0.9 0.8 0.6 0.6 }
TINT_COLOR_PLAYER_CHARACTER = { 0.9 0.8 0.6 0.6 }
TINT_COLOR_PLAYER_HEIR = { 0.9 0.8 0.6 0.6 }
TINT_COLOR_ALLY = { 0.9 0.8 0.6 0.6 }
TINT_COLOR_ENEMY_IN_WAR = { 0.9 0.8 0.6 0.6 }
TINT_COLOR_OTHER_PLAYER_MULTI = { 0.9 0.8 0.6 0.6 }
}
NGraphics = {
# At how much VRAM (in MB) and physical cpu core count should the setting presets kick in?
QUALITY_SETTING_NAMES = { "low" "medium" "high" }
VRAM_FOR_QUALITY_SETTING_DEFAULT = { 0 6000 8000 }
CPU_CORES_FOR_QUALITY_SETTINGS_DEFAULT = { 0 10 16 }
# When to enable a graphics setting by default
VRAM_FOR_ADVANCED_SHADERS_DEFAULT_ON = 6000
VRAM_FOR_LOW_PRIO_COURT_SCENE_CHARACTERS_DEFAULT_ON = 6000
# If we can't find how much VRAM is available then
QUALITY_SETTING_DEFAULT_IF_VRAM_UNKNOWN_DISCRETE = "medium" # Use this setting if the GPU is from AMD or nVIDIA
QUALITY_SETTING_DEFAULT_IF_VRAM_UNKNOWN_INTEGRATED = "low" # Use this setting if the GPU *isn't* from AMD or nVIDIA
ADVANCED_SHADERS_DEFAULT_ON_IF_VRAM_UNKNOWN_INTEGRATED = no # Set the use of advanced shaders to this if the GPU *isn't* from AMD or nVIDIA
LOW_PRIO_COURT_SCENE_CHARACTERS_DEFAULT_ON_IF_VRAM_UNKNOWN_INTEGRATED = no # Set use of low priority court scene characters if the he GPU *isn't* from AMD or nVIDIA
# How many layers exist, and where are they found?
CULTURE_TRADITION_LAYER_PATHS = {
"gfx/interface/icons/culture_tradition/0-background"
"gfx/interface/icons/culture_tradition/1-pattern"
"gfx/interface/icons/culture_tradition/2-support"
"gfx/interface/icons/culture_tradition/3-stroke"
"gfx/interface/icons/culture_tradition/4-items"
}
CULTURE_TRADITION_LAYER_DIFFERENCES = 2 # How different do we want each icon to be. 2 means we'll try to ensure that all icons have at least 2 layers that are different. If you don't have enough assets, it mimght be reduced to 1 or even 0. debug.log will have a note if that happens
# Daily Tick Duration for picking a framerate when adaptive framerate bloom_enabled
ADAPTIVE_FRAMERATE_DURATION = {
0.03 # default framerate below this rate (seconds)
0.05 # 60 fps
0.09 # 30 fps
0.14 # 20 fps
0.18 # 15 fps, 10 fps if higher
}
}
NRulerDesigner = {
IRONMAN_POINT_MAX = 400 # Above this value achievements are not allowed
AGE_LEVELS = { 10 16 18 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 60 70 } # Index into below if <= age
AGE_LEVEL_MULTIPLIERS = { 2 2.25 2.5 2.7 2.9 3 2.9 2.8 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2 1.9 1.8 1.7 1.6 1.5 1.4 1.3 1.2 1.1 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 } # Multiplier on age for points used
DEFAULT_SKILL_VALUE = 5
GENERATED_SONS_MULTIPLIER = 10
GENERATED_DAUGHTERS_MULTIPLIER = 10
GENERATED_SPOUSE = 0
DEFAULT_EDUCATION_TRAIT = "education_intrigue_1"
BASE_HEALTH = 5.0
}
NInventory = {
ARTIFACT_DEFAULT_MAX_DURABILITY = 60.0
ARTIFACT_DEFAULT_MAX_DURABILITY_MASTERWORK = 75.0
ARTIFACT_DEFAULT_MAX_DURABILITY_FAMED = 100.0
ARTIFACT_DEFAULT_MAX_DURABILITY_ILLUSTRIOUS = 150.0
ARTIFACT_LOW_DURABILITY = 20.0
ARTIFACT_VERY_LOW_DURABILITY = 5.0
# The below are the base durability; this is further modified by owner modifiers (artifact_decay_reduction_mult)
ARTIFACT_DURABILITY_DECAY_STORAGE = 1.0 # yearly decay, unequipped
ARTIFACT_DURABILITY_DECAY_EQUIPPED = 1.0 # yearly decay, equipped to person
ARTIFACT_DURABILITY_DECAY_DISPLAY = 0.0 # yearly decay, on display in court
ARTIFACT_HOUSE_CLAIM_YEARS = 50 # Number of years a house member must hold an artifact before a house artifact claim is generated
ARTIFACT_COLOR_COMMON = { 0.745 0.458 0.192 0.8 }
ARTIFACT_COLOR_MASTERWORK = { 0.184 0.615 0.027 0.8 }
ARTIFACT_COLOR_FAMED = { 0.125 0.454 0.894 0.8 }
ARTIFACT_COLOR_ILLUSTRIOUS = { 0.721 0.321 0.894 0.8 }
ARTIFACT_RARITY_AI_SCORE_MULT = 10 # factor by which an artifacts rarity is multiplied when scoring the artifact for the AI to use
# combined quality and wealth ( 0 - 100 each ) scores determine rarity based on these thresholds
ARTIFACT_THRESHOLD_MASTERWORK = 50
ARTIFACT_THRESHOLD_FAMED = 130
ARTIFACT_THRESHOLD_ILLUSTRIOUS = 180
ARTIFACT_IMMINENT_CLAIM_THRESHOLD = 5 # a house is considered to have an "imminent claim" on an artifact if there is no more than this many years left until one is generated
}
NRoyalCourt = {
MIN_ROYAL_COURT_TIER = "kingdom" # Min tier for a character to have a royal court if their government allows it
COURT_GRANDEUR_MIN = 0 # Minimum court grandeur value
COURT_GRANDEUR_MAX = 100 # Maximum court grandeur value
COURT_GRANDEUR_STARTING_DEFAULT = 25 # Default starting current grandeur
COURT_GRANDEUR_LEVELS = { 10 15 20 30 40 50 60 70 80 90 }
LEVEL_CHANGE_GRACE_PERIOD_MONTHS = 6 # Number of months your old court grandeur level will remain in effect in terms of modifiers when going down a level
COURT_LANGUAGE_ADOPTION_COOLDOWN = 1825 # Number of days in between able to adopt a new court language
GRANDEST_COURT_LANGUAGE_MULTIPLIER = 0.5 # We are the grandest court using our language, multiplier on number of other courts using our language eg: 25 other courts * 0.4 = 10
COURT_LANGUAGE_COUNTY_SHARES_MULTIPLIER = 0.05 # Court language is known personally to us, multiplier for every county in realm that's culture speaks that language
SHARES_COURT_LANGUAGE_WITH_GRANDEST_DIFF_MULTIPLIER = 0.2 # We share court language with the grandest court using it, multiplier on difference between our grandeur and theirs eg: ( 75 grandest - 25 us ) * 0.4 = 20, so at 100 - 0 you get 40
SHARES_COURT_LANGUAGE_WITH_GRANDEST_DIFFERENT_RELIGION_MULTIPLIER = -0.5 # Reduce by 50% if grandest court and us are of different religions
SHARES_COURT_LANGUAGE_WITH_GRANDEST_DIFFERENT_GOVERNMENT_MULTIPLIER = -0.25 # Reduce by 25% if grandest court and us are of different governments
COURT_LANGUAGE_NATIVELY_KNOWN_MULTIPLIER = 0.25 # If your court language is natively known then multipliy the impact of the above with this
MIN_MONTHS_BETWEEN_COURT_EVENTS = 48 # How many months must pass at a minimum before a new court can be triggered/added as pending
RANDOM_MONTHS_BETWEEN_COURT_EVENTS = 16 # Random extra months that must pass before a new court event can be triggered/added as pending
MAX_NUM_PENDING_COURT_EVENTS = 3 # How many court events can be added and pending to be triggered
MONTHS_FOR_ABSENT_FROM_COURT = 100 # How many months must you have not visited your court to be considered absent
}
NInspiration = {
MAX_PROGRESS = 10 # Max amount of progress an inspiration can hit, once hit it is completed and deleted, must be >= 1
}
NCourtPositions = {
COURT_POSITION_ANIMATION_FREEZE = yes # If court position characters should animate in the UI or not
COURT_POSITION_DEFAULT_ANIMATION = "idle" # Default court portrait animation, used as a fallback if missing court_position_asset animation in Court Position or Court Task
COURT_POSITION_DEFAULT_BACKGROUND = "gfx/interface/illustrations/event_scenes/corridor.dds" # Default court background, used as a fallback if missing court_position_asset background in Court Position or Court Task
COURT_POSITION_BACKGROUND_ALPHA = 0.1 # How much grayscale to use for the court position backgrounds. Value between 0 to 1
MAX_NUMBER_IN_COURT_POSITION = 5 # Max number of positions that a court position can have.
DEFAULT_APTITUDE_LEVEL_BREAKPOINTS = { 20 40 60 80 } # Breakpoints to increase aptitude by 1.
# Stargazer
COURT_ASTRONOMER_SUCCESS_CHANCE = { 0.0 0.14 0.33 0.6 0.85 } # Percent chance correctly predicting next Situation Phase based on level of Aptitude
COURT_ASTRONOMER_MAX_CERTAINTY = { 0.9 0.7 0.65 0.7 0.9 } # Max certainty percent they are in their first pick being the correct one in their HOME region based on level of Aptitude
COURT_ASTRONOMER_MIN_CERTAINTY = { 0.6 0.5 0.55 0.6 0.7 } # Min certainty percent they are in their first pick being the correct one in their HOME region based on level of Aptitude
COURT_ASTRONOMER_SUCCESS_CHANCE_HOME = { 0.1 0.22 0.46 0.8 0.99 } # Percent chance correctly predicting next Situation Phase in their HOME region based on level of Aptitude
COURT_ASTRONOMER_MAX_CERTAINTY_HOME = { 0.9 0.7 0.81 0.9 1.0 } # Max certainty percent they are in their first pick being the correct one in their HOME region based on level of Aptitude
COURT_ASTRONOMER_MIN_CERTAINTY_HOME = { 0.6 0.45 0.55 0.8 0.9 } # Min certainty percent they are in their first pick being the correct one in their HOME region based on level of Aptitude
}
NStruggle = {
# How much points need to be accumulated during point-based phase in order to trigger the transition to a new phase
POINT_BASED_PHASE_DEFAULT_DURATION = 1000
# Sound effect played when change animation for struggle button
PHASE_TRANSITION_SOUND_EFFECT_PATH = "event:/DLC/FP2/SFX/UI/fp2_struggle_button_state_change"
YEARLY_DEFAULT_PHASE_POINTS = 0 # How many points are given to the default phase every year
PHASE_TRANSITION_DURATION = 90 # How many days before the new phase starts once the threshold is reached
NUM_CATALYST_HISTORIES_DISPLAYED = 5 # How many catalyst histories that should be shown in the struggle tooltip
NOTIFICATION_MESSAGE_RELATIONS = { "friend", "rival", "nemesis" }
}
NHouseUnity = {
CHANGELOG_DURATION = 5 # After how many years do changelog entries get deleted?
}
NMemories = {
DEFAULT_MEMORY_DURATION_YEARS = 10 # Default nr of years until a memory expires
DEATH_MEMORY_RETENTION_YEARS_PER_TIER = { -1 -1 -1 -1 0 0 0 } # We can keep or extend memories of dead characters by tier. (-1 forgets characters' memories on death, 0 keeps, and X positive adds X years)
DEATH_MEMORY_RETENTION_YEARS_PLAYED_CHARACTER = 1000 # Any character that was played by a player retains their memories, adding X years
}
# Settings for character based travel (not army travel)
NTravel = {
TRAVEL_SPEED_BASE = 0 # Travel speed base score value
TRAVEL_SPEED_BASE_LEADERLESS = 15 # Travel speed base score for characters that cannot have a travel leader
TRAVEL_SAFETY_BASE = 0
TRAVEL_SAFETY_BASE_LEADERLESS = 30 # Travel safety base score for characters that cannot have a travel leader (usually not needed because they don't get events)
BASE_TRAVEL_SPEED_LAND = 5 # The base speed used when traveling from a land province
BASE_TRAVEL_SPEED_WATER = 7 # The base speed used when traveling from a water province
TRAVEL_EMBARK_COST = 15 # The cost in days added to traveling from a land province to a water province
TRAVEL_DISEMBARK_COST = 5 # The cost in days added to traveling from a water province to a land province
MIN_PATH_COST_SAVINGS_TO_CONSIDER_WATER_PATH = 45 # Number of travel days saved before before considering a water route
MAX_SELECTABLE_TRAVEL_OPTIONS = 2
COUNTY_CONTROL_DANGER_MULTIPLIER = 0.6 # Multiplier for each point of county control below 100
COUNTY_OPINION_DANGER_MULTIPLIER = 0.5 # Multiplier for each point of county opinion above/below 0, -10 opinion -> 5 danger, 10 opinion -> -5 danger
PROVINCE_OWNER_OPINION_DANGER_MULTIPLIER = 0.5 # Multiplier for each point of province owner opinion abive/below 0, -10 opinion -> 5 danger, 10 opinion -> -5 danger
TRAVEL_DANGER_MINIMUM = 1 # The minimum chance of danger happening in any province
# How high to priorities the danger type as being the one set in a given province
# Terrain types also give a score which if higher will be picked
# For tied values in this define the definition order breaks the tie
DANGER_TYPE_SCORES = {
1 # Default - some bandits
85 # Ongoing battle
70 # Raid
60 # Siege
50 # Army in province
50 # Occupied
70 # Epidemic
40 # Country control
40 # County opinion
30 # Province owner opinion
}
}
NDiarchy = {
DIARCHY_SUCCESSION_SIZE = 5 # How many people are in diarchy line of succession. Active or designated diarch takes 1st spot there
DIARCHY_MONTHLY_POWER_CHANGE = 0.25 # How much scales of power level changes each months towards balance value
DIARCH_APTITUDE_LEVELS = { 20 40 60 80 } # diarchy aptitude value cutoff points
DESIGNATE_DIARCH_INTERVAL_DAYS = 3650 # Length of the cooldown after designating a diarch
}
NActivity = {
# Number of days until a completed activity involving a player is destroyed, will be destroyed earlier if all players involved close the activity window, must be greater than or equal to MULTIPLAYER_EVENT_TIME_OUT
ACTIVITY_DESTROY_AFTER_COMPLETE_WAIT_DAYS = 90
MAX_PHASE_YEARS_ACTIVE = 1 # Maximum amount of years allowed in an active phase state until the phase gets invalidated
MAX_PHASE_YEARS_PASSIVE = 10 # Maximum amount of years allowed in passive phase state until the phase gets invalidated
MAX_PHASE_DELAY_DAYS = 90 # Max number of days to delay starting a phase by for not-required special guests (we delay forever for hosts and required special guests )
SPECIAL_BAR_SEGMENTS = { 0 25 50 75 100 } # Display segments for the activity special bar
INVITE_RESPOND_RATE = 4 # Every X days we will handle a portion of invited guests responding
INVITE_RESPOND_BATCH_SIZE = 0.25 # What % of invited guests should respond each day
INVITE_RESPOND_BATCH_MINIMUM = 25 # Minimum number of guests that respond each day, ensures we always have everyone respond before activity starts
MAX_ROUTE_DEVIATION_MULTIPLIER_DEFAULT = 2.0 # Default max route deviation - see _activity_type.info `max_route_deviation_mult`
PLAYER_ACTIVITY_INVITE_GRACE_TIME = 14 # Number of extra days a player invited to an activity is allowed arrive in (so players always have at least this nr of days to consider accepting an invite)
}
NVassalStance = {
NUM_HEIRS_TO_SCORE = 5 # How many heirs in the line of succession to check the heir score for
PREFERRED_HEIR_LEGITIMACY_EXPECTATION_YEARS = 10 # How many years the preferred heir status lasts
}
NAccolade = {
SUCCESSION_GLORY_LOSS_SMALL = 0.15 # how much glory is lost, in percent, upon accolade succession
SUCCESSION_GLORY_LOSS_LARGE = 0.30 # how much glory is lost, in percent, upon accolade succession if the successor only fulfils the requirement of one attribute
ACCOLADE_BADGE_COLORS = {
"badge_color1.dds"
"badge_color2.dds"
"badge_color3.dds"
"badge_color4.dds"
"badge_color5.dds"
"badge_color6.dds"
"badge_color7.dds"
"badge_color8.dds"
"badge_color9.dds"
}
ACCOLADE_GLORY_LEVELS = {
100
300
600
1000
1500
2100
}
ACCOLADE_SQUIRE_LEVELS = {
20
40
60
80
}
ACCOLADE_MAX_TYPES = 3 # maximum number of accolade attributes (types) an acclaimed knight can have
STARTING_GLORY = 100 # how much glory does each created accolade start out with? 100 is default to unlock rank 1
POTENTIAL_ACCLAIMED_KNIGHT_UPDATE_TIME = 0.5 # Time between potential acclaimed knights window updates, in seconds
}
NHostage = {
PRESTIGE_LEVEL = { 0 20 50 } # Threshold values that determine how much prestige is given per hostage
PRESTIGE_GAIN_PER_LEVEL = { 0.1 0.5 1 } # Prestige gain per hostage level
PIETY_LEVEL = { 0 20 50 } # Threshold values that determine how much piety is given per hostage
PIETY_GAIN_PER_LEVEL = { 0.1 0.5 1} # Piety gain per hostage level
RENOWN_LEVEL = { 0 20 50 } # Threshold values that determine how much renown is given per hostage
RENOWN_GAIN_PER_LEVEL = { 0.0 0.25 0.5 } # Renown gain per hostage level. Only hostages from other dynasty give renown
GAIN_REDUCTION_PER_HOSTAGE = 0.2 # Income from every subsequent hostage is relatively reduced by this value. More valuable hostages are evaluated first
MIN_GAIN_PER_HOSTAGE = 0.05 # Minimum possible fraction of income the hostage can give
}
NTaxSlot = {
TAX_DECREE_COOLDOWN = 5 # number of years you have to wait before changing a jurisdictions tax decree again
}
NEpidemic = {
# How many steps from a province should we search for having an infection to apply the reduction muliplier
# Be careful raising this number too high, it will have performance impacts
OUTBREAK_NEIGBHOR_CHECK_STEPS = 12
# Multiplier on outbreak chance in a province which an existing epidemic could have spread into
OUTBREAK_NEIGBHOR_INFECTED_MULTIPLIER = 0.02
# If a county has less provinces than this when infected we multiply the infection as if the county had this number
# of provinces so that counties with low number of provinces don't get much reduced impact applied
# eg: 1 province in a county, will act as if it being infected is the same as 3 provinces in a 3 province county
# eg: 2 province county, each province infected will act as if it is 1.5 provinces in a 3 province county
# >= 3 will be clamped to just acting like 1 infected province
MIN_COUNTY_SIZE_TO_MULTIPLY_TO = 3
# Default message to run when a player province is infected, from minor to apocalyptic
DEFAULT_HOLDER_INFECTION_NOTIFICATION = { "" "" "" }
DEFAULT_LIEGE_INFECTION_NOTIFICATION = { "msg_epidemic_infection" "" "" }
DEFAULT_REALM_INFECTION_NOTIFICATION = { "msg_epidemic_infection" "msg_epidemic_infection" "msg_epidemic_infection" }
# Default event to run when a player province is infected, from minor to apocalyptic
DEFAULT_HOLDER_INFECTION_EVENT = { "epidemic_events.1100" "epidemic_events.1100" "epidemic_events.1101" }
DEFAULT_LIEGE_INFECTION_EVENT = { "" "epidemic_events.1100" "epidemic_events.1101" }
DEFAULT_REALM_INFECTION_EVENT = { "" "" "" }
}
NLegend = {
UNOWNED_DECLINE_MINIMUM = 2 # Minimum number of provinces to be removed from the legend spread if it is unowned
UNOWNED_DECLINE_PERCENTAGE = 0 # Percentage of total nr of provinces that should decline per month (0.0 - 1.0). Minimum is determined by UNOWNED_DECLINE_MINIMUM.
DAYS_UNTIL_CAN_COMPLETE = 1825 # Minimum number of days until you get the option to complete your legend
DURATION_UNTIL_DOWNGRADE = { 25 years } # How long before an unmaintained legend loses a quality level
DURATION_UNTIL_DELETION = { 100 years } # How long until a legend is deleted after being completed
AI_TAKE_UNOWNED_GRACE_PERIOD = 180 # Minimum number of days before AI will take over an unowned legend
}
NDomicile = {
NEARBY_HIREABLE_RULERS = 500 # Allowed distance domicile owners can be hired from
TEMPERAMENT_THRESHOLD_LOW = -30 # Follower opinion of domicile owner is less than or equal to x, resulting in a negative domicile effect
TEMPERAMENT_THRESHOLD_HIGH = 60 # Follower opinion of domicile owner is greater than or equal to x, resulting in a positive domicile effect
}
NTaskContract = {
LOW_TASK_CONTRACT_TIER = 0
MEDIUM_TASK_CONTRACT_TIER = 3
HIGH_TASK_CONTRACT_TIER = 4
UI_LOW_TASK_CONTRACT_TIER = 1
UI_MEDIUM_TASK_CONTRACT_TIER = 2
UI_HIGH_TASK_CONTRACT_TIER = 3
ADVENTURER_DISTANCE_RESTRICTION = 22500 # Squared radius distance from adventurer camp to contract location (rough illustrations can be found in 00_distance_values.txt)
}
NAdministrative = {
AI_MIN_INFLUENCE_FOR_APPOINTMENT = 100 # AI ruler needs to have at least this much influence to start using appointment interactions
AI_MAX_AGE_FOR_APPOINTMENT = 50 # AI won't support candidates above this age for new appointments
AI_MAX_TITLES_FOR_APPOINTMENT = 10 # This many titles are considered for new appointment support per attempt. Randomized each time
AI_MAX_NEW_HOUSE_MEMBERS_FOR_APPOINTMENT = 30 # This many new house mmebers are considered for new appointment support per attempt. Randomized each time
BASE_REASSIGN_COST = 150 # Base value used in the scripted cost for reassigning title troops
DISCOUNTED_THRESHOLD_FACTOR = 0.9 # If the final reassign cost <= BASE_REASSIGN_COST * DISCOUNTED_THRESHOLD_FACTOR, we consider the title "discounted"
APPOINTMENT_MERIT_TIER = { 0 1 1 3 5 7 9 } # This and following defines set currency level required for a character to be valid
APPOINTMENT_PRESTIGE_TIER = { 0 1 2 3 6 7 8 } # appointment candidate per title tier
APPOINTMENT_PIETY_TIER = { 0 1 2 3 6 7 8 }
APPOINTMENT_INFLUENCE_TIER = { 0 1 2 3 6 7 8 }
APPOINTMENT_UNLIMITED_TIER = { 0 0 0 0 0 0 0 } # Fallback used when appointment doesn't use currency levels
RECENT_APPOINTMENT_COOLDOWN = 1825 # Ruler must hold previous appointment this many days (five years) before considering another appointment
MERIT_POOL_CANDIDATE_SCORE_POTENTIAL_HINT = 0.5 # Percentage of total gainable spots in candidate list to be considered an opportunity when looking just at candidate score (interface only)
}
NCouncilTasks = {
# Which files are used as the default/backup assets when creating council task icons in the GUI
COUNCIL_TASK_DEFAULT_ICON_ASSET = "gfx/interface/_invalid_icon_debug.dds"
COUNCIL_TASK_DEFAULT_BACKGROUND_ASSET = "gfx/interface/buttons/button_round_bg.dds"
COUNCIL_TASK_DEFAULT_FRAME_ASSET = "gfx/interface/buttons/button_round_frame.dds"
COUNCIL_TASK_DEFAULT_GLOW_ASSET = "gfx/particles/halo.dds"
}
NConfederation = {
DEFAULT_TYPE = "nomadic_confederation" # Maintain backwards compatibility with "Khans of the Steppe" (in saves and script)
MAX_COHESION = 100 # Maximum cohesion value for a confederation (minimum is always 0)
COHESION_FROM_LEADER_HOUSE_RELATION_MULT = 0.25 # Applied to the accumulated cohesion contribution of the relations for the leading house
COHESION_FROM_MEMBER_HOUSE_RELATION_MULT = 0.10 # Applied to the accumulated cohesion contribution of the relations for other member houses
COHESION_SOFT_CAP_TAX = 0.5 # Cohesion tax for any gained monthly gained cohesion over the soft cap
}
NKurultai = {
KURULTAI_SUCCESSION_CHILD_MINIMUM_AGE = 12 # Minimum age when a child gets to vote in the Kurultai Succession
KURULTAI_SUCCESSION_CHILD_ELECTORS_DOMINANCE_1 = 2 # 'has_realm_law = nomadic_authority_1' means total 4 Kurultai members + X children votes during succession
KURULTAI_SUCCESSION_CHILD_ELECTORS_DOMINANCE_2 = 2 # 'has_realm_law = nomadic_authority_2' means total 4 Kurultai members + X children votes during succession
KURULTAI_SUCCESSION_CHILD_ELECTORS_DOMINANCE_3 = 2 # 'has_realm_law = nomadic_authority_3' means total 4 Kurultai members + X children votes during succession
KURULTAI_SUCCESSION_CHILD_ELECTORS_DOMINANCE_4 = 4 # 'has_realm_law = nomadic_authority_4' means total 4 Kurultai members + X children votes during succession
KURULTAI_SUCCESSION_CHILD_ELECTORS_DOMINANCE_5 = 6 # 'has_realm_law = nomadic_authority_5' means total 4 Kurultai members + X children votes during succession
}
NBloodBrother = {
PRESTIGE_GAIN_PER_TIER = { 0.0 0.5 1 1.5 2 2 2 } # Prestige gain per tier higher your blood brother is than you
PIETY_GAIN_PER_TIER = { 0.1 0.5 1 1.5 2 2.5 2.5 } # Piety gain per tier of blood brother title
RENOWN_GAIN_PER_TIER = { 0.0 0.25 0.5 0.75 1 1.25 1.25 } # Renown gain per tier of blood brother title
}
NMigration = {
MAX_MIGRATION_SQUARED_DISTANCE = 300000 # base squared migration range before modifiers
}
NSilkRoad = {
INNOVATION_TRAVEL_DURATION = 12 # How many years, it's gonna take for innovation to travel from bazaar to bazaar. Tied into innovation_travel_countdown scrited variable, please update this value
NUM_SITUATION_CATALYST_HISTORIES_DISPLAYED = 3
}
NGreatProject = {
DEFAULT_CONTRIBUTION_THRESHOLD = 50 # Default progress percentage over which the Great Project will no longer accept optional Contributions
GREAT_PROJECT_CONTRIBUTION_MAX_INVITE_OPTIONS = 3 # The maximum number of options (tested bottom up) to use when checking from the UI if a potential contributor "Can be convinced"
GREAT_PROJECT_REBUILD_CONSTRUCTION_TIME = 365 # The number of days a Great Building is under construction when being rebuilt
}
NMandala = {
MAX_RADIANCE = 100 # max number for radiance value
TRIBUTARY_LEGITIMACY_GAIN = 0.05 # Value for being tributary to mandala ruler. Gains legitimacy per suzerain radiance value.
}
NTreasuryBudgeting = {
BASE_RATE_CHANGE_OPINION_LEVELS = { -0.8 -0.2 -0.05 0.05 0.2 0.8 10000000.0 } # Percentage budget base rate change levels (selected if smaller)
BASE_RATE_CHANGE_OPINION_MODIFIERS = { "reduction_large" "reduction_medium" "reduction_small" "" "increase_small" "increase_medium" "increase_large" } # What opinion modifier name to look for (defined `this_name` in `treasury_budget_<category>_<this_name>`
}