This guide describes the steps to make a mod compatible with patch 2.7.X from patch 2.6.3.
Note that this does not replace the usual step of merging files, in case the mod modifies some vanilla files.
In case of issues, run the latest version of The Validator, and try activating debug launch options, which will now report failed asserts in log files.
\common\custom_localisation\ is moved to \localisation\customizable_localisation, so that custom localization commands don't impact the checksum.\interface\portrait_properties.txt is now folderized into \interface\portrait_properties\\interface, are now only in \interface\portraitsNew operators ==, >, >=, <, and <= have been introduced:
AND = {
society_rank > 1
ROOT = { society_rank == 1 }
}
However as of patch 2.7 they only work for new triggers (ex: society_rank) and the old triggers don't support this new syntax.[1]
secretly_catholic = {
opposites = {
#Other religions
}
is_visible = {
OR = {
character = FROM
society_member_of = secret_religious_society_catholic
AND = {
is_close_relative = FROM
trait = secretly_catholic
}
}
}
same_opinion = 15
random = no
customizer = no
ai_zeal = -50
}
NOT = { religion_group = jewish_group }
NOT = { trait = secretly_jewish }
Items previously managed as character modifiers, dynasty flags or traits should be migrated to artifacts.
For instance:
add_character_modifier = {
name = the_necronomicon
duration = -1
}
has_character_modifier = the_necronomicon
may become:
add_artifact = necronomicon
new_artifact = {
set_creation_date = 1.1.1
}
has_artifact = necronomicon
destroy_artifact = necronomicon
ai_target_filter = self for decisions taken on the character itself).filter = self ai_target_filter = self
group = "TEXT_KEY_FOR_GROUP"OR = {
primary_title = { temporary = no }
NOT = {
primary_title = {
always = yes
}
}
}
is replaced by:
NOT = {
primary_title = { temporary = yes }
}
common\modifier_definitions\:<religion_group>_opinion = {
show_as_percent = no
is_good = yes
is_monthly = no
is_hidden = no
max_decimals = 0
}
They also need to be localized.
OR = {
trait = monk
trait = nun
}
is replaced by:
is_ascetic_trigger = yes
ROOT = {
NOR = {
obedient = PREV
non_interference = PREV
}
}
\localisation\customizable_localisation\00_customizable_localisation_FR.txt. For more info: Traduction remaniée - Crusader Kings II 2.7.x (in French)map/geographical_region.txt are now interpreted differently. Duchy references now equate to their de jure countries at the start_date defined in common/defines.txt, not their de jure counties in common/landed_titles before history is executed. This change has no effect if no counties change de_jure_liege before the start_date.NDefines.NGraphics.NUMBER_OF_PROPERTIES is now determined automatically from portrait_properties file, and can be removed.1000.1.1 = {
birth = yes
effect = { dynasty = none }
}
Artifact moddingGame rulesLocalizationMerging guidePatch 2.4 mod compatibility guidePatch 2.5 mod compatibility guidePatch 2.6 mod compatibility guidePatch 2.6.3Patch 2.7Patch 2.7.XPatch 2.8 mod compatibility guidePatch 3.0 mod compatibility guidePatch 3.1 mod compatibility guideScriptingSociety moddingThe ValidatorTroubleshooting创建模组合并指南彻底转换指南模组安装程序创建指南游戏存档兼容性