756 lines
13 KiB
Text
756 lines
13 KiB
Text
# Dependencies:
|
|
# _basic_values.txt
|
|
|
|
# When their health drop too low and they're slated for death, a character will die within 15-50 days (based on DEATH_MAXIMUM_DELAY , DEATH_MINIMUM_DELAY and DEATH_CHECK_INTERVAL in defines)
|
|
|
|
######################
|
|
# Diseases
|
|
######################
|
|
|
|
#### TREATMENT PROCESS SPEED ###
|
|
#The speed should most likely be under the minimum delay between health check and death DEATH_MINIMUM_DELAY (15)
|
|
|
|
court_physician_search_min = 7
|
|
court_physician_search_max = 10
|
|
|
|
physician_treatment_delay_ruler_min = 2
|
|
physician_treatment_delay_ruler_max = 4
|
|
physician_treatment_delay_subject_min = 6 #Subject span should be after ruler span so ruler's own treatment is always first
|
|
physician_treatment_delay_subject_max = 15
|
|
|
|
|
|
### RECOVERY TIMES ###
|
|
minimum_recovery_time = 51 #Needs to be higher than 50 (the longest amount of days between health change and death, so that a character can't recover before they're slated to be checked for death)
|
|
|
|
ill_recovery_min = minimum_recovery_time
|
|
ill_recovery_max = 365
|
|
|
|
pneumonic_recovery_min = minimum_recovery_time
|
|
pneumonic_recovery_max = 250
|
|
|
|
gout_ridden_recovery_min = { #1 year
|
|
value = minimum_recovery_time
|
|
add = 314
|
|
}
|
|
gout_ridden_recovery_max = 10950 #30 years
|
|
|
|
smallpox_min_recovery_time = minimum_recovery_time
|
|
smallpox_max_recovery_time = 150
|
|
|
|
bubonic_plague_min_recovery_time = minimum_recovery_time
|
|
bubonic_plague_max_recovery_time = 150
|
|
|
|
measles_min_recovery_time = minimum_recovery_time
|
|
measles_max_recovery_time = 100
|
|
|
|
dysentery_min_recovery_time = minimum_recovery_time
|
|
dysentery_max_recovery_time = 100
|
|
|
|
ergotism_min_recovery_time = minimum_recovery_time
|
|
ergotism_max_recovery_time = 150
|
|
|
|
### CONTAGION ###
|
|
smallpox_contagion_min = 15 #If there is a physician, the character should be likely to meet them before first spread
|
|
smallpox_contagion_max = 65
|
|
|
|
bubonic_plague_contagion_min = 15 #If there is a physician, the character should be likely to meet them before first spread
|
|
bubonic_plague_contagion_max = 45 #Shorter than smallpox because you die faster
|
|
|
|
|
|
|
|
physician_contagion_prevention_value = {
|
|
add = physician_base_skill_factor #Between 1 for average skill and 3 for high skill
|
|
if = {
|
|
limit = {
|
|
AND = {
|
|
has_trait = lifestyle_physician
|
|
has_trait_xp = {
|
|
trait = lifestyle_physician
|
|
value >= 100
|
|
}
|
|
}
|
|
}
|
|
multiply = 2
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
AND = {
|
|
has_trait = lifestyle_physician
|
|
has_trait_xp = {
|
|
trait = lifestyle_physician
|
|
value >= 50
|
|
}
|
|
}
|
|
AND = {
|
|
has_trait = lifestyle_mystic
|
|
has_trait_xp = {
|
|
trait = lifestyle_mystic
|
|
value >= 100
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multiply = 1.5
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
has_trait = lifestyle_physician
|
|
AND = {
|
|
has_trait = lifestyle_mystic
|
|
has_trait_xp = {
|
|
trait = lifestyle_mystic
|
|
value >= 50
|
|
}
|
|
}
|
|
has_trait = lifestyle_herbalist
|
|
}
|
|
}
|
|
multiply = 1.3
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_trait = lifestyle_mystic
|
|
}
|
|
multiply = 1.1
|
|
}
|
|
max = 7.5
|
|
}
|
|
|
|
|
|
|
|
#####################
|
|
# Treatments
|
|
#####################
|
|
|
|
|
|
|
|
|
|
######################
|
|
# Court Physician
|
|
######################
|
|
|
|
high_skill_court_physician_cost = {
|
|
value = medium_gold_value
|
|
if = {
|
|
limit = {
|
|
has_perk = anatomical_studies_perk
|
|
}
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
|
|
low_skill_court_physician_cost = {
|
|
value = minor_gold_value
|
|
if = {
|
|
limit = {
|
|
has_perk = anatomical_studies_perk
|
|
}
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
|
|
physician_base_skill_factor = {
|
|
# 1 for an average learning skill character without traits
|
|
# 0.2 min for low learning
|
|
# ~3 for high skill character without traits
|
|
add = learning
|
|
divide = average_skill_rating #At average skill rating, we have a factor of 1
|
|
if = {
|
|
limit = { learning >= high_skill_rating } #At high skill rating, they become 30% better
|
|
multiply = 1.3
|
|
}
|
|
min = 0.2
|
|
}
|
|
|
|
|
|
|
|
physician_safe_treatment_skill_factor = {
|
|
# 1 for an average learning skill character without traits
|
|
# 0.2 min for low learning
|
|
# ~3 for high skill character without traits
|
|
# ~12 for high skill character with best trait (physician_3)
|
|
|
|
value = physician_base_skill_factor
|
|
|
|
if = {
|
|
limit = {
|
|
AND = {
|
|
has_trait = lifestyle_physician
|
|
has_trait_xp = {
|
|
trait = lifestyle_physician
|
|
value >= 100
|
|
}
|
|
}
|
|
}
|
|
multiply = 4
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
AND = {
|
|
has_trait = lifestyle_physician
|
|
has_trait_xp = {
|
|
trait = lifestyle_physician
|
|
value >= 50
|
|
}
|
|
}
|
|
AND = {
|
|
has_trait = lifestyle_mystic
|
|
has_trait_xp = {
|
|
trait = lifestyle_mystic
|
|
value >= 100
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multiply = 2
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
has_trait = lifestyle_physician
|
|
AND = {
|
|
has_trait = lifestyle_mystic
|
|
has_trait_xp = {
|
|
trait = lifestyle_mystic
|
|
value >= 50
|
|
}
|
|
}
|
|
has_trait = lifestyle_herbalist
|
|
}
|
|
}
|
|
multiply = 1.5
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_trait = lifestyle_mystic
|
|
}
|
|
multiply = 1.2
|
|
}
|
|
if = {
|
|
limit = {
|
|
liege ?= {
|
|
domicile ?= {
|
|
has_domicile_building_or_higher = bath_04
|
|
}
|
|
}
|
|
}
|
|
multiply = 1.4
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
liege ?= {
|
|
domicile ?= {
|
|
has_domicile_building_or_higher = bath_01
|
|
}
|
|
}
|
|
}
|
|
multiply = 1.2
|
|
}
|
|
if = {
|
|
limit = {
|
|
exists = liege
|
|
liege = { has_perk = anatomical_studies_perk }
|
|
}
|
|
multiply = 2
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
#################
|
|
# Weight
|
|
################
|
|
#These values are used to calculate the target weight that characters will trend towards once every three years
|
|
|
|
underweight_threshold = 0
|
|
overweight_threshold = 0
|
|
|
|
feast_weight_modifier_value = {
|
|
add = 5
|
|
# You have a lot of very desirable food
|
|
if = {
|
|
limit = {
|
|
scope:activity.activity_host = {
|
|
has_royal_court = yes
|
|
has_dlc_feature = royal_court
|
|
amenity_level = {
|
|
type = court_food_quality
|
|
value >= 5
|
|
}
|
|
}
|
|
}
|
|
add = 3
|
|
}
|
|
# You have a lot of food in general
|
|
else_if = {
|
|
limit = {
|
|
scope:activity.activity_host = {
|
|
has_royal_court = yes
|
|
has_dlc_feature = royal_court
|
|
amenity_level = {
|
|
type = court_food_quality
|
|
value >= 3
|
|
}
|
|
}
|
|
}
|
|
add = 2
|
|
}
|
|
# It's a smaller amount of food, but it's still a feast
|
|
else_if = {
|
|
limit = {
|
|
scope:activity.activity_host = {
|
|
has_royal_court = yes
|
|
has_dlc_feature = royal_court
|
|
amenity_level = {
|
|
type = court_food_quality
|
|
value <= 1
|
|
}
|
|
}
|
|
}
|
|
add = -1
|
|
}
|
|
}
|
|
hunt_weight_modifier_value = -4
|
|
cake_shaft_modifier_value = 4
|
|
|
|
character_weight_base_value = {
|
|
add = 0
|
|
#Any modifiers that will affect weight?
|
|
if = {
|
|
limit = {
|
|
is_ai = yes # Players gaining weight is handled through health.5004
|
|
has_character_modifier = gaining_weight_modifier
|
|
}
|
|
add = 35
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes # Players losing weight is handled through health.5005
|
|
has_character_modifier = losing_weight_modifier
|
|
}
|
|
add = -35
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_character_modifier = fasting_bad_modifier
|
|
}
|
|
add = -10
|
|
}
|
|
|
|
#Do you have a food taster? For some reason your plate is always weirdly empty since you employed them...
|
|
if = {
|
|
limit = {
|
|
employs_court_position = food_taster_court_position
|
|
}
|
|
add = -5
|
|
}
|
|
|
|
#Any activities attended/other things that will affect weight?
|
|
if = {
|
|
limit = {
|
|
has_variable = character_weight_variable
|
|
}
|
|
add = var:character_weight_variable
|
|
}
|
|
|
|
# PRISON/STARVATION
|
|
if = {
|
|
limit = {
|
|
is_imprisoned = yes
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_in_prison_type = dungeon
|
|
}
|
|
add = -75
|
|
}
|
|
else = {
|
|
add = -30
|
|
}
|
|
}
|
|
|
|
# DISEASE
|
|
if = {
|
|
limit = {
|
|
has_trait = consumption
|
|
}
|
|
add = -75
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = cancer
|
|
}
|
|
add = -50
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = great_pox
|
|
}
|
|
add = -35
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = leper
|
|
}
|
|
add = -15
|
|
}
|
|
|
|
# Court amenities, weight gain from court_food_quality
|
|
if = {
|
|
limit = {
|
|
has_royal_court = yes
|
|
has_dlc_feature = royal_court
|
|
court_owner = {
|
|
amenity_level = { type = court_food_quality value = 3 }
|
|
}
|
|
}
|
|
add = 3
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_royal_court = yes
|
|
has_dlc_feature = royal_court
|
|
court_owner = {
|
|
amenity_level = { type = court_food_quality value = 4 }
|
|
}
|
|
}
|
|
add = 5
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_royal_court = yes
|
|
has_dlc_feature = royal_court
|
|
court_owner = {
|
|
amenity_level = { type = court_food_quality value = 5 }
|
|
}
|
|
}
|
|
add = 7
|
|
}
|
|
|
|
########
|
|
#Trait check
|
|
########
|
|
#ADD
|
|
if = {
|
|
limit = { has_trait = gluttonous }
|
|
add = 50
|
|
}
|
|
if = {
|
|
limit = { has_trait = comfort_eater }
|
|
add = 25
|
|
}
|
|
if = {
|
|
limit = { has_trait = drunkard }
|
|
add = 20
|
|
}
|
|
if = {
|
|
limit = { has_trait = hashishiyah }
|
|
add = 20
|
|
}
|
|
if = {
|
|
limit = { has_trait = lazy }
|
|
add = 10
|
|
}
|
|
if = {
|
|
limit = { has_trait = greedy }
|
|
add = 10
|
|
}
|
|
if = {
|
|
limit = { has_trait = calm }
|
|
add = 10
|
|
}
|
|
if = {
|
|
limit = { has_trait = trusting }
|
|
add = 10
|
|
}
|
|
if = {
|
|
limit = { has_trait = gregarious }
|
|
add = 10
|
|
}
|
|
if = {
|
|
limit = { has_trait = patient }
|
|
add = 5
|
|
}
|
|
if = {
|
|
limit = { has_trait = arrogant }
|
|
add = 5
|
|
}
|
|
if = {
|
|
limit = { has_trait = ambitious }
|
|
add = 5
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
has_trait = lifestyle_reveler
|
|
}
|
|
add = 5
|
|
if = {
|
|
limit = {
|
|
has_trait_xp = {
|
|
trait = lifestyle_reveler
|
|
value >= 100
|
|
}
|
|
}
|
|
add = 15
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_trait_xp = {
|
|
trait = lifestyle_reveler
|
|
value >= 50
|
|
}
|
|
}
|
|
add = 10
|
|
}
|
|
}
|
|
|
|
#SUBTRACT
|
|
if = {
|
|
limit = { has_trait = shy }
|
|
add = -5
|
|
}
|
|
if = {
|
|
limit = { has_trait = zealous }
|
|
add = -5
|
|
}
|
|
if = {
|
|
limit = { has_trait = craven }
|
|
add = -5
|
|
}
|
|
if = {
|
|
limit = { has_trait = impatient }
|
|
add = -10
|
|
}
|
|
if = {
|
|
limit = { has_trait = fickle}
|
|
add = -10
|
|
}
|
|
if = {
|
|
limit = { has_trait = vengeful }
|
|
add = -10
|
|
}
|
|
if = {
|
|
limit = { has_trait = wrathful }
|
|
add = -10
|
|
}
|
|
if = {
|
|
limit = { has_trait = humble }
|
|
add = -10
|
|
}
|
|
if = {
|
|
limit = { has_trait = content }
|
|
add = -15
|
|
}
|
|
if = {
|
|
limit = { has_trait = generous }
|
|
add = -15
|
|
}
|
|
if = {
|
|
limit = { has_trait = diligent }
|
|
add = -15 # Further 'moderation' impact below.
|
|
}
|
|
if = {
|
|
limit = { has_trait = temperate }
|
|
add = -20 # Further 'moderation' impact below.
|
|
}
|
|
if = {
|
|
limit = { has_trait = reclusive }
|
|
add = -20
|
|
}
|
|
if = {
|
|
limit = { has_trait = paranoid }
|
|
add = -25
|
|
}
|
|
if = {
|
|
limit = { has_trait = inappetetic }
|
|
add = -50
|
|
}
|
|
|
|
# MODERATION - reduces weight if overweight, and increases it if underweight
|
|
if = {
|
|
limit = {
|
|
has_trait = athletic
|
|
}
|
|
multiply = 0.8
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = whole_of_body
|
|
}
|
|
multiply = 0.75
|
|
}
|
|
if = {
|
|
limit = { is_very_young_character = yes }
|
|
multiply = 0.33
|
|
}
|
|
if = {
|
|
limit = { is_young_character = yes }
|
|
multiply = 0.66
|
|
}
|
|
if = {
|
|
limit = { is_aging_character = yes }
|
|
multiply = 1.5
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = physique_good_1
|
|
}
|
|
multiply = 0.9
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = physique_good_2
|
|
}
|
|
multiply = 0.8
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = physique_good_3
|
|
}
|
|
multiply = 0.7
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = temperate
|
|
}
|
|
multiply = 0.9
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = diligent
|
|
}
|
|
multiply = 0.9
|
|
}
|
|
|
|
#Bad physique has the opposite effect, making you skew even further towards extremes
|
|
if = {
|
|
limit = {
|
|
has_trait = physique_bad_1
|
|
}
|
|
multiply = 1.1
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = physique_bad_2
|
|
}
|
|
multiply = 1.2
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait = physique_bad_3
|
|
}
|
|
multiply = 1.3
|
|
}
|
|
}
|
|
|
|
base_weight_plus = {
|
|
add = base_weight
|
|
add = 10
|
|
}
|
|
|
|
base_weight_minus = {
|
|
add = base_weight
|
|
add = -10
|
|
}
|
|
|
|
#The actual value that will be looked at
|
|
character_weight_target_value = {
|
|
add = character_weight_base_value
|
|
|
|
#To even the numbers out some if you have "good" and/or active traits
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
character_weight_base_value < base_weight_minus
|
|
character_weight_base_value > base_weight_plus
|
|
}
|
|
}
|
|
if = {
|
|
limit = { #You weigh too little
|
|
character_weight_base_value < base_weight_minus
|
|
}
|
|
if = {
|
|
limit = { has_trait = lifestyle_hunter }
|
|
add = 2
|
|
if = {
|
|
limit = {
|
|
hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 50 }
|
|
}
|
|
add = 2
|
|
}
|
|
if = {
|
|
limit = {
|
|
hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 100 }
|
|
}
|
|
add = 2
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_lifestyle = martial_lifestyle
|
|
}
|
|
add = 10
|
|
}
|
|
}
|
|
else = { #You weigh too much
|
|
if = {
|
|
limit = { has_trait = lifestyle_hunter }
|
|
if = {
|
|
limit = {
|
|
hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 50 }
|
|
}
|
|
add = -2
|
|
}
|
|
if = {
|
|
limit = {
|
|
hunt_lifestyle_track_greater_equal_trigger = { TRACK = hunter GREATER_EQUAL = 100 }
|
|
}
|
|
add = -2
|
|
}
|
|
else = {
|
|
add = -2
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_lifestyle = martial_lifestyle
|
|
}
|
|
add = -10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Pregnancy
|
|
pregnancy_month = {
|
|
value = pregnancy_days
|
|
divide = 30
|
|
floor = yes
|
|
min = 1
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
vigorous_sex_age_difference_value = {
|
|
value = age
|
|
subtract = 25
|
|
}
|
|
|
|
harm_event_random_list_low_odd_success_value = 40
|
|
harm_event_random_list_low_odd_failure_value = 60
|
|
harm_event_random_list_medium_odd_success_value = 60
|
|
harm_event_random_list_medium_odd_failure_value = 40
|
|
harm_event_random_list_high_odd_success_value = 70
|
|
harm_event_random_list_high_odd_failure_value = 30
|