more files shot and killed

This commit is contained in:
trashmasteruni 2026-10-19 22:42:28 +02:00
parent 2db14ca9bc
commit 2e91ed4877
4 changed files with 50 additions and 542 deletions

View file

@ -1,289 +0,0 @@
default_tax_collector = {
tax_factor = 0.2
levies_factor = 0.2
ai_will_do = {
value = default_tax_obligation_ai_will_do
# Always take at least one default tax collector slot
if = {
limit = { scope:num_slots_with_obligation = 0 }
add = 100
}
if = {
limit = { scope:liege.culture ?= { has_cultural_parameter = unlock_tax_obligation_deqhan } }
add = -1000
}
}
}
strict_taxation_tax_collector = {
tax_factor = 0.4
levies_factor = 0.2
liege_modifier = {
domain_tax_mult = 0.01
}
subject_modifier = {
opinion_of_liege = -30
monthly_piety_gain_mult = 0.1
}
ai_will_do = {
value = tax_obligation_base_ai_will_do
if = {
limit = {
scope:liege = {
ai_greed >= 75 # The AI has to be very greedy
ai_compassion <= 0 # And not kind enough to have qualms about it
}
}
add = 2
}
if = {
limit = { scope:liege.culture ?= { has_cultural_parameter = unlock_tax_obligation_deqhan } }
add = -1
}
}
}
jizya_special_rights_tax_collector = {
is_valid = {
scope:liege.faith = {
has_doctrine_parameter = unlock_jizya_contract
}
}
is_vassal_valid = {
custom_description = {
text = vassal_has_the_wrong_religion
subject = scope:vassal
scope:vassal.religion != scope:liege.religion
}
}
tax_factor = 1
levies_factor = -0.75
subject_modifier = {
monthly_prestige = -0.2
}
flag = vassal_contract_cannot_revoke_titles
flag = religiously_protected
ai_will_do = {
value = tax_obligation_base_ai_will_do
if = {
limit = {
scope:num_slots_with_obligation = 0 # And only if we don't have Jizya already
scope:liege = {
OR = {
# The AI has at least this many vassals to warrant Jizya being used
any_vassal = {
count >= tax_obligation_half_of_slot
government_has_flag = government_is_clan
religion != scope:liege.religion
}
# Or a large enough portion of their vassals are of another religion
any_vassal = {
percent >= 0.25
government_has_flag = government_is_clan
religion != scope:liege.religion
}
}
}
}
add = 5
}
}
}
iqta_special_rights_tax_collector = {
levies_factor = 0.1
liege_modifier = {
#men_at_arms_maintenance = -0.01
#men_at_arms_recruitment_cost = -0.01
maa_damage_mult = 0.01
}
subject_modifier = {
men_at_arms_maintenance = -0.1
men_at_arms_recruitment_cost = -0.1
opinion_of_liege = 15
}
ai_will_do = {
value = tax_obligation_base_ai_will_do
scope:liege = {
if = {
limit = {
AND = {
ai_greed <= 0 # The AI shouldn't be greedy, since they won't care in that case
ai_compassion >= 0 # The AI has to the somewhat compassionate to consider being nice to their vassals
}
}
if = {
limit = { # Increase the score a lot if there are several vassal who REALLY doesn't like their liege
any_vassal = {
count >= tax_obligation_half_of_slot
opinion = {
target = scope:liege
value <= -80
}
}
}
add = 4
}
else_if = {
limit = { # Increase it only slightly if the vassals only somewhat dislike their liege
any_vassal = {
count >= tax_obligation_half_of_slot
opinion = {
target = scope:liege
value <= -40
}
}
}
add = 2
}
}
}
}
}
ghazi_special_rights_tax_collector = {
tax_factor = 0.1
is_vassal_valid = {
custom_description = {
text = vassal_has_the_wrong_faith
subject = scope:vassal
scope:vassal.faith = scope:liege.faith
}
}
liege_modifier = {
monthly_piety_gain_mult = 0.02
zealot_opinion = 1
}
subject_modifier = {
monthly_piety = 0.5
monthly_war_income_mult = 0.1
monthly_county_control_growth_add = 0.25
army_siege_value_mult = 0.15
raid_speed = 0.15
ai_war_cooldown = -0.5
ai_war_chance = 1
ai_zeal = 50
ai_energy = 25
}
flag = vassal_contract_cheaper_religious_war
flag = vassal_contract_increase_prestige_cb_cost
flag = vassal_contract_allow_raiding
ai_will_do = {
value = tax_obligation_base_ai_will_do
if = {
limit = {
scope:liege = {
ai_has_warlike_personality = yes # AI should like wars to use Ghazi
ai_zeal >= 0
any_vassal = {
count >= {
value = scope:num_vassal_slots
divide = 100
multiply = 90
}
faith = scope:liege.faith
}
}
}
add = 2
}
}
}
### FP3 Tax Decrees
deqhan_special_rights_tax_collector = {
is_shown = {
has_fp3_dlc_trigger = yes
}
is_valid = {
scope:liege.culture = { has_cultural_parameter = unlock_tax_obligation_deqhan }
}
tax_factor = 0.35
levies_factor = 0.35
liege_modifier = {
legitimacy_gain_mult = 0.01
}
subject_modifier = {
monthly_prestige_gain_mult = 0.2
}
ai_will_do = {
value = tax_obligation_base_ai_will_do
add = 3
}
}
maguh_special_rights_tax_collector = {
is_shown = {
has_fp3_dlc_trigger = yes
}
is_valid = {
scope:liege = {
dynasty ?= {
has_dynasty_perk = fp3_khvarenah_legacy_4
}
}
}
liege_modifier = {
development_growth_factor = 0.01
}
subject_modifier = {
character_capital_county_monthly_development_growth_add = 0.1
holding_build_gold_cost = -0.1
build_gold_cost = -0.1
opinion_of_liege = 15
}
ai_will_do = {
value = tax_obligation_base_ai_will_do
add = 1
}
}
muqata_special_rights_tax_collector = {
is_shown = {
has_fp3_dlc_trigger = yes
}
liege_modifier = {
monthly_prestige = 0.1
}
subject_modifier = {
development_growth_factor = 0.1
county_opinion_add = 10
opinion_of_liege = 30
epidemic_resistance = 10
travel_danger = -5
}
ai_will_do = {
value = tax_obligation_base_ai_will_do
}
}

View file

@ -1,86 +0,0 @@
# Tax Slot Types
clan_tax_slot = {
default_obligation = default_tax_collector
obligations = {
strict_taxation_tax_collector
iqta_special_rights_tax_collector
ghazi_special_rights_tax_collector
muqata_special_rights_tax_collector
jizya_special_rights_tax_collector
deqhan_special_rights_tax_collector
maguh_special_rights_tax_collector
}
tax_slot_vassal_limit = {
add = {
value = 12
desc = tax_slot_vassal_level_base_desc
}
}
is_valid_tax_collector = {
liege ?= scope:liege
scope:liege != this
is_imprisoned = no
is_adult = yes
is_incapable = no
NOT = { has_character_modifier = fp3_incapable_tax_collector_modifier }
# Gender has to be allowed to be granted titles to be eligible
trigger_if = {
limit = {
scope:liege.rite ?= {
rite_has_doctrine = doctrine_gender_male_dominated
}
}
is_male = yes
}
trigger_if = {
limit = {
scope:liege.rite ?= {
rite_has_doctrine = doctrine_gender_female_dominated
}
}
is_female = yes
}
}
aptitude_level_breakpoints = { 20 45 75 110 }
tax_collector_aptitude = tax_collector_aptitude_score
on_tax_collector_hired = {
scope:tax_collector = {
add_character_flag = is_tax_collector
if = {
limit = {
has_opinion_modifier = {
target = scope:liege
modifier = fired_from_tax_collector_position_opinion
}
}
remove_opinion = {
target = scope:liege
modifier = fired_from_tax_collector_position_opinion
}
}
}
}
on_tax_collector_fired = {
scope:tax_collector = {
remove_character_flag = is_tax_collector
if = {
limit = {
this != scope:liege
}
add_opinion = {
target = scope:liege
modifier = fired_from_tax_collector_position_opinion
}
}
}
}
}

View file

@ -1,61 +0,0 @@
Structure:
# Travel Option
key = {
# Trigger which has to be true to be shown while planning travel. Scope is the travel owner.
is_shown = {}
# Trigger which has to be true to be able to be picked while planning travel. Scope is the travel owner.
is_valid = {}
# Scripted cost which will be applied to the travel owner once the travel start, if the option is picked. Scope is the travel owner character.
# We have chosen to remove the gold cost and have the player choose what options they want to apply for a limited number of slots. Still maintaining it for special options.
cost = {}
# Travel modifier which gets applied to the travels safety/speed if the option is picked.
travel_modifier = {
travel_speed = number
travel_safety = number
}
# Character modifier that gets applied to the travel owner character
owner_modifier = {}
# Effect that gets triggered once the travel starts, or once the option is gained mid-travel.
# Root - Travel Owner.
# scope:travel_speed - Travel Speed (percentage points above 100%)
# scope:travel_safety - Travel Safety
on_applied_effect = {}
# Effect that gets triggered once the travel ends.
# Root - Travel Owner.
# scope:travel_speed - Travel Speed (percentage points above 100%)
# scope:travel_safety - Travel Safety
on_travel_end_effect = {}
### Brief: ai_will_do (scripted value int32)
# How likely is the AI to pick this option if valid? Options will be selected using weighted random.
# Options will be re-evaluated after each option is added.
#
# Root - Travel Plan.
# Extra scopes:
# scope:highest_future_danger_value - highest danger value on route; to compare with `travel_safety`
ai_will_do = {}
# Select which court characters are added to the travel entourage when this option is added.
# Weighted list is evaluated until all values are negative, or `max` is reached.
travel_entourage_selection = {
# List is all court characters.
# root = character in the travel plan owners' court
# scope:owner = character owning the travel plan
weight = {
value = 10
}
# Up to how many characters to select for a player
max = 2
# Up to how many characters to select for an AI
ai_max = 2
}
}

View file

@ -33,7 +33,7 @@
} }
if = { if = {
limit = { limit = {
culture ?= { has_cultural_pillar = ethos_courtly } culture = { has_cultural_pillar = ethos_courtly }
} }
add = 50 add = 50
} }
@ -59,7 +59,7 @@
} }
if = { if = {
limit = { limit = {
culture ?= { culture = {
has_innovation = innovation_royal_prerogative has_innovation = innovation_royal_prerogative
} }
} }
@ -67,7 +67,7 @@
} }
if = { if = {
limit = { limit = {
culture ?= { culture = {
has_innovation = innovation_heraldry has_innovation = innovation_heraldry
} }
} }
@ -75,7 +75,7 @@
} }
if = { if = {
limit = { limit = {
culture ?= { culture = {
has_innovation = innovation_court_officials has_innovation = innovation_court_officials
} }
} }
@ -215,30 +215,24 @@ glory_hound = {
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_baliffs
limit = { exists = culture }
culture ?= { has_innovation = innovation_baliffs }
} }
} }
multiply = 1.2 multiply = 1.2
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_knighthood
limit = { exists = culture }
culture ?= { has_innovation = innovation_knighthood }
} }
} }
multiply = 1.2 multiply = 1.2
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_rightful_ownership
limit = { exists = culture }
culture ?= { has_innovation = innovation_rightful_ownership }
} }
} }
multiply = 1.2 multiply = 1.2
@ -280,7 +274,7 @@ glory_hound = {
} }
if = { if = {
limit = { limit = {
culture ?= { has_cultural_pillar = ethos_bellicose } culture = { has_cultural_pillar = ethos_bellicose }
} }
add = 25 add = 25
} }
@ -360,11 +354,7 @@ parochial = {
} }
if = { if = {
limit = { limit = {
exists = culture culture = { has_cultural_pillar = ethos_communal }
trigger_if = {
limit = { exists = culture }
culture ?= { has_cultural_pillar = ethos_communal }
}
} }
add = 25 add = 25
} }
@ -376,11 +366,7 @@ parochial = {
} }
if = { if = {
limit = { limit = {
exists = culture culture = { has_cultural_tradition = tradition_isolationist }
trigger_if = {
limit = { exists = culture }
culture ?= { has_cultural_tradition = tradition_isolationist }
}
} }
add = 50 add = 50
} }
@ -400,50 +386,40 @@ parochial = {
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_manorialism
limit = { exists = culture }
culture ?= { has_innovation = innovation_manorialism }
} }
} }
multiply = 1.2 multiply = 1.2
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_land_grants
limit = { exists = culture }
culture ?= { has_innovation = innovation_land_grants }
} }
} }
multiply = 1.2 multiply = 1.2
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_development_04
limit = { exists = culture }
culture ?= { has_innovation = innovation_development_04 }
} }
} }
multiply = 1.2 multiply = 1.2
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_double_entry_bookkeeping
limit = { exists = culture }
culture ?= { has_innovation = innovation_double_entry_bookkeeping }
} }
} }
multiply = 1.2 multiply = 1.2
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_cultural_parameter = more_parochial_vassals
limit = { exists = culture }
culture ?= { has_cultural_parameter = more_parochial_vassals }
} }
} }
multiply = 1.2 multiply = 1.2
@ -604,21 +580,13 @@ zealot = {
} }
if = { if = {
limit = { limit = {
exists = culture culture = { has_cultural_tradition = tradition_zealous_people }
trigger_if = {
limit = { exists = culture }
culture ?= { has_cultural_tradition = tradition_zealous_people }
}
} }
add = 50 add = 50
} }
if = { if = {
limit = { limit = {
exists = culture culture = { has_cultural_pillar = ethos_spiritual }
trigger_if = {
limit = { exists = culture }
culture ?= { has_cultural_pillar = ethos_spiritual }
}
} }
add = 25 add = 25
} }
@ -631,50 +599,38 @@ zealot = {
if = { if = {
limit = { limit = {
num_sinful_traits <= 0 num_sinful_traits <= 0
exists = rite rite = { rite_has_parameter = more_often_zealots }
trigger_if = {
limit = { exists = rite }
rite ?= { rite_has_parameter = more_often_zealots }
}
} }
add = 150 add = 150
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_chronicle_writing
limit = { exists = culture }
culture ?= { has_innovation = innovation_chronicle_writing }
} }
} }
multiply = 1.2 multiply = 1.2
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_reconquista
limit = { exists = culture }
culture ?= { has_innovation = innovation_reconquista }
} }
} }
multiply = 1.2 multiply = 1.2
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_divine_right
limit = { exists = culture }
culture ?= { has_innovation = innovation_divine_right }
} }
} }
multiply = 1.2 multiply = 1.2
} }
if = { if = {
limit = { limit = {
exists = culture culture = {
trigger_if = { has_innovation = innovation_primogeniture
limit = { exists = culture }
culture ?= { has_innovation = innovation_primogeniture }
} }
} }
multiply = 1.2 multiply = 1.2
@ -690,7 +646,7 @@ zealot = {
limit = { limit = {
NOR = { NOR = {
faith = scope:liege.faith faith = scope:liege.faith
faith ?= { faith = {
faith_hostility_level = { faith_hostility_level = {
target = scope:liege.faith target = scope:liege.faith
value = faith_fully_accepted_level value = faith_fully_accepted_level
@ -740,7 +696,7 @@ zealot = {
limit = { limit = {
NOR = { NOR = {
faith = scope:liege.faith faith = scope:liege.faith
faith ?= { faith = {
faith_hostility_level = { faith_hostility_level = {
target = scope:liege.faith target = scope:liege.faith
value > faith_astray_level value > faith_astray_level
@ -800,7 +756,7 @@ zealot = {
is_valid = { is_valid = {
OR = { OR = {
faith = scope:liege.faith faith = scope:liege.faith
faith ?= { faith = {
faith_hostility_level = { faith_hostility_level = {
target = scope:liege.faith target = scope:liege.faith
value = faith_fully_accepted_level value = faith_fully_accepted_level
@ -823,18 +779,18 @@ minority = {
OR = { OR = {
AND = { AND = {
faith != scope:liege.faith faith != scope:liege.faith
faith ?= { faith = {
faith_hostility_level = { faith_hostility_level = {
target = scope:liege.faith target = scope:liege.faith
value > faith_astray_level value > faith_astray_level
} }
} }
NOT = { rite ?= { rite_is_syncretic_with = { RITE = scope:liege.rite } } } NOT = { rite = { rite_is_syncretic_with = { RITE = scope:liege.rite } } }
} }
AND = { AND = {
culture != scope:liege.culture culture != scope:liege.culture
OR = { OR = {
culture ?= { culture = {
cultural_acceptance = { target = scope:liege.culture value < 30 } cultural_acceptance = { target = scope:liege.culture value < 30 }
} }
# AND = { # AND = {
@ -904,31 +860,19 @@ minority = {
faith = scope:liege.faith faith = scope:liege.faith
} }
NOR = { NOR = {
AND = { culture = { has_cultural_tradition = tradition_loyal_soldiers }
exists = culture culture = { has_cultural_tradition = tradition_fp2_malleable_subjects }
trigger_if = {
limit = { exists = culture }
culture ?= { has_cultural_tradition = tradition_loyal_soldiers }
}
}
AND = {
exists = culture
trigger_if = {
limit = { exists = culture }
culture ?= { has_cultural_tradition = tradition_fp2_malleable_subjects }
}
}
} }
OR = { OR = {
AND = { AND = {
faith != scope:liege.faith faith != scope:liege.faith
faith ?= { faith = {
faith_hostility_level = { faith_hostility_level = {
target = scope:liege.faith target = scope:liege.faith
value > faith_astray_level value > faith_astray_level
} }
} }
NOT = { rite ?= { rite_is_syncretic_with = { RITE = scope:liege.rite } } } NOT = { rite = { rite_is_syncretic_with = { RITE = scope:liege.rite } } }
} }
AND = { AND = {
scope:liege = { scope:liege = {
@ -936,7 +880,7 @@ minority = {
} }
culture != scope:liege.culture culture != scope:liege.culture
OR = { OR = {
culture ?= { culture = {
cultural_acceptance = { target = scope:liege.culture value < 30 } cultural_acceptance = { target = scope:liege.culture value < 30 }
} }
# AND = { # AND = {
@ -978,7 +922,7 @@ barons_and_minor_landholders = {
OR = { OR = {
NOR = { NOR = {
faith = scope:liege.faith faith = scope:liege.faith
faith ?= { faith = {
faith_hostility_level = { faith_hostility_level = {
target = scope:liege.faith target = scope:liege.faith
value >= faith_astray_level value >= faith_astray_level
@ -987,7 +931,7 @@ barons_and_minor_landholders = {
} }
NOR = { NOR = {
culture = scope:liege.culture culture = scope:liege.culture
culture ?= { culture = {
cultural_acceptance = { target = scope:liege.culture value >= 30 } cultural_acceptance = { target = scope:liege.culture value >= 30 }
} }
} }
@ -1084,7 +1028,7 @@ belligerent = {
} }
if = { if = {
limit = { limit = {
culture ?= { has_cultural_pillar = ethos_bellicose } culture = { has_cultural_pillar = ethos_bellicose }
} }
add = 50 add = 50
} }
@ -1116,7 +1060,7 @@ belligerent = {
} }
if = { if = {
limit = { limit = {
culture ?= { culture = {
has_innovation = innovation_standing_armies has_innovation = innovation_standing_armies
} }
} }
@ -1124,7 +1068,7 @@ belligerent = {
} }
if = { if = {
limit = { limit = {
culture ?= { culture = {
has_innovation = innovation_all_things has_innovation = innovation_all_things
} }
} }