This page is intended to assist with editing the CKII Save File. Before editing save files, it is highly recommended that you create a copy of the files in question. Simple mistakes made while editing can make a save file unplayable. Save-game editing is IMPOSSIBLE on ironman.
File locations
- Mac:
~/Documents/Paradox Interactive/Crusader Kings II/save games/ - Linux:
~/.paradoxinteractive/Crusader Kings II/save games/ - Windows:
C:\Users\YOURNAME\Documents\Paradox Interactive\Crusader Kings II\save games
Save files will be compressed (ZIP format) unless you uncheck the box when saving. Autosaves and quick saves are not compressed. The encoding of the save file is Windows-1252.
Editing Characters
Any character in the game can be edited very easily. Any aspect of a character including stats, traits and prestige/piety can be changed. You can open save files in Notepad, but they will take several minutes to load. A more advanced text editor such as Notepad++ is therefore recommended.
In order to edit a character you must first locate them within the file. The Character ID of the player character can be found at the very top of the save file. Other Character IDs can be found in a non-ironman game by using the charinfo console command. When you have the character ID, search the document using Ctrl+F and type in the Character ID followed by =.
(EXAMPLE: 31443=)
If you do not know this number, then simply run a search for the name of the character and cross reference information like birth dates, parent names, or traits (this requires knowing the trait codes). This becomes a lot easier if the character has an uncommon name.
(EXAMPLE: bn="charactername")
The section below, Save File Contents, can help you identify if you are in the right spot.
Once you find the character you are looking for, you can edit any of their features. Numerical values such as health, base stats and fertility are very easy to alter. Traits must be added using their numerical ID as opposed to actual name.
If your character has moved capitals already and you wish to allow them to do it again, change the "moved_capital" variable to "yes" instead of "no", then choose your new capital from within the game. This is very helpful if your landed son inherits from you, as the inheritance causes them to change capitals. Given that rulers normally suffer a prestige penalty for having unlanded sons, most players opt to give them land, only to discover they're stuck with their current capital when the father dies.
Marriage
In order to create a marriage you need both Character IDs. You must search for each character and add the line:
spouse = ID
where the ID is the other characters ID. This will marry the two characters in game. For a free divorce from a non-matrilineal marriage, simply remove this section. In order to divorce a matrilineal marriage, you will also need to remove the section outlined below.
Matrilineal marriage
If you want a matrilineal marriage you will need to add to the relation={} section of the save file. As an example, let's take 1500 as the husband's ID, and 2800 as the wife's ID. Add this to the relation section:
relation=
{
...
diplo_1500=
{
2800=
{
succession=yes
}
}
...
If you wish to turn a matrilineal marriage into a normal one, simply find and delete those lines.
Save File Contents
This is the order of content within the Save File. This can help the user navigate the areas of the file that they are trying to access.
Player information
version # game's patch when saved date # game’s date when saved player= # brackets containing player’s information { id # player’s character’s ID type # } player_realm # player’s main province title ID # Following information duplicate those found in player's character information player_name # player’s name (<=> Character’s name + nickname) player_age # character’s age player_portrait= # list infos on player’s character { fem # no: male, yes: female dna # charater’s DNA properties # religion # religion culture # culture government # government type dynasty # dynasty ID } is_zeus_save # game_rules= # { alternate_start # } game_speed # game’s speed (0: Paused, 4: Max) mapmode # playthrough_id #
Dynamic titles
dyn_title # information on titles that are dynamic (for rebels, nomad, etc.)
{
title # Province title ID (dynamic)
base_title # title associated with this dynamic title (e.g. if duke of “X” rebels, here will be written “X”)
is_custom # only appear if yes. yes: title specifically created for this game
is_dynamic # yes: is dynamic
}
Game information
Unit #
sub_unit #
start_date # game’s start date
flags= # list of global events and date at which they were triggered
{
[…]
}
vars= # list of specific variables, with self-explanatory titles
{
global_amount_of_times_china_civil_war
global_amount_of_times_china_expansionist_policy
global_amount_of_times_china_famine
global_amount_of_times_china_jurchen_invasion
global_amount_of_times_china_mongol_invasion
global_amount_of_times_china_plague
global_amount_of_times_china_stable
global_amount_of_times_china_unrest
global_children_of_destiny_bloodlines_founded
global_children_of_destiny_on_birth
global_china_change_to_expansionist_count
global_deaths_in_battle
global_miracle
global_raiding_adventurer_recruit_troops
global_raiding_adventurer_spawn_by_courtier_MTTH
global_raiding_adventurer_spawn_by_displacement
global_raiding_adventurer_spawn_by_jurchen_invasion
global_saint_number
global_temp_policy_years
global_temp_status_years
}
saved_event_target= #
{
#
}
Dynasties
For more information: dynasty modding.
dynasties=
{
# == Non historical (created for this particulier game) dynasties ==
10290905= # dynasty’s ID
{
name # name of dynasty (i.e. character’s last name
culture # original culture of dynasty. Useless in-game as used to determine if it will appear as a random name in the Ruler Designer
religion # original religion of dynasty. Useless
is_modified=yes #only appear if yes. yes: name of dynasty was modified by player
coat_of_arms= # For more information: coats of arms modding
{
data= # appearance of coat of arms
{
3 1 0 6 14 5 5 1 0 6 14 5 5 1 0 6 14 5 5 1 0 6 14 5 5
}
religion # type of coat of arms
}
set_coat_of_arms=yes # only appear if yes. yes: coat of arms was set manually by player
}
# Note on Historical dynasties ("de Valois", etc.)
25= # dynasty’s ID
{
coat_of_arms= # only coat of arms is available
{
data=
{
0 0 0 21 6 13 13
}
religion
}
}
}
Characters
For more information: character modding.
character=
{
987898= # character’s ID
{
bn # birth name
name # current name (for instance Papal name)
nick # nickname
fem # only appear if yes. yes: character is a woman
pi # only appear if yes
b_d # birth date
d_d # death date – if appear, then character is considered in game as dead
c_d # cause of death
fat # character’s father’s ID – only appear if applicable
rfat # character ID of real father – only appear if applicable
mot # character’s mother’s ID – only appear if applicable
spouse # spouse or husband character’s ID. If multiple, then character has had multiple spouse, in the order which they appear
kill_list # list information on all character’s kill
{
{ # one set of brackets per kill
id # killed character’s id
type # killed character’s type
}
}
att # attributes
tr # traits
rel # religion – does not appear if government make it unnecessary, e.g. if muslim_government and religion is sunni
secret_religion # secret religion – only appear if applicable
cul # culture – does not appear if unnecessary
g_cul # graphic culture (character’s appearance) – does not systematically appear
dnt # dynasty’s ID – appear only if applicable
dna # DNA
prp # properties
gov # government type – only appear if character has a title
fer # fertility
health # health
lover # ID of character that is a lover of current character
prs # prestige
piety # piety
bstd=yes # only appear if yes. yes: character is a bastard
player=yes # only appear if yes. yes: is player’s character
player_name=MrHuman # only appear if player’s character. Name of player (MrHuman by default for single player)
claim # information on one of character’s claims – only appear if applicable
{
title # Claimed title’s ID
pressed=yes # only appear if yes. yes: pressed claim
weak=yes # only appear if yes. yes: weak claim
}
job # character’s job (marshal, spymaster, etc.) – only appear if applicable
title # specific title (commander, consort, etc.) – only appear if applicable
wealth # money
emp # liege’s character ID
host # character ID of host (i.e. for which current character is a courtier) or jailer
imprisoned # date since which character is imprisoned
guardian # character ID of guardian
in_hiding=yes # only appear if yes. yes: character is in hiding
known_plots # list ID of characters whose plots are known but current character
{
}
emi #
eme #
eyi #
eypi #
lgr= #leger – only appear if character has a title
{
lastmonthincometable # income over the last months
lastmonthexpensetable # expenses over the last months
lastmonthincome # last month income
lastmonthexpense # last month expense
}
flags= # list of character’s events and date at which they were triggered
{
recieved_royal_marriage_aid_duty=1441.2.3
}
vars= #list of specific variable
{
physique_variable=-2.000
}
md= # modifier
{
modifier # name of modifier
hidden=yes # only appear if yes. yes: is not displayed
}
action # action as member of council (train troops, etc.)
acdate # action start date
acloc #
ambition_date # date at which ambition was set
focus_date # date at which focus was set
plot_date # date at which plot was set
cpos # council position (loyalist, etc.)
cpos_start # date at which council position was set
score # character’s score
war_target # ID of character with which current character is at war
society # ID of the society character is part of – only appear if applicable
dmn= # domain information – only appear if character has a title
{
army
{
}
navy
{
}
capital # capital of domain
liege_troops= # troops by type
{
li={18.850 25.375}
hi={15.950 39.875}
pi={2.150 5.375}
lc={1.050 2.625}
ar=1.750
}
raised_liege_troops= # raised levy
{
504504
}
my_liegelevy_contribution=75 #
}
character_player_data # player’s chronicle
{
chronicle_collection
{
chronicle # chronicle for one character
{
chronicle_chapter # chronicle for one year
{
chronicle_entry # chronicle on one entry
{
text # text
picture # picture from a predetermined set
portrait # ID of portraited character
portrait_culture # type of portrait depending on culture
portrait_title_tier # type of portrait depending on tier of title
portrait_government # type of portrait depending on government type
}
year # year of entry
}
character # character’s ID
}
chronicle_position
chapter_position
entry_position
chronicle_icon_lit
}
}
retrat #
}
}
Delayed events
delayed_event=
{
event= # events ID
days= # number of days before events happen
scope= # scope information
{
seed #
char # character ID
from=
{
seed #
char # character ID
root=
{
# delayed events can be recursive
}
}
}
}
Relations
relation=
{
rel_987898= # relations of character 987898
{
959480= # relation of character 987898 with character 959480
{
opinion_decreased_council_power= # modifier
{
d # end date
}
ry=4 # reigned years, determining the short or long reign opinion modifier
}
}
}
ID
id=
{
id #
type #
}
Religion
religion=
{
catholic=
{
last_crusade # date of last crusade
parent # parent religion. If none, "noreligion"
was_heresy=no # religion was an heresy or not
authority= # modifier on religion’s authority
{
modifier # ID of modifier
d # end date
}
authority=
{
}
holy_sites= # list of baronies that are regarded as holy site by religion
{
b_koln b_sutri b_sansebastian b_santiago b_jerusalem b_canterbury
}
bloodline=
{
1 2 8 9 10 11 12 14 #
}
}
Religion Group
religion_group=
{
}
Culture
culture=
{
}
Culture Group
culture_group=
{
}
Provinces
For more information: province modding.
provinces=
{
1= # province id
{
vars= # list of specific variables
{
prosperity_value=243.000
}
name="Vesturland" # name of provinces as displayed in-game
culture=Norwegian # province culture
religion=catholic # province religion
max_settlements # max number of holdings
modifier= # modifier – one by set of brackets
{
modifier # name of modifier
date # end date
}
b_reykjavik= # name of holding
{
type=castle # type of holding
date # date of creation
build_time #
# You find here the list of buildings and there level, e.g.:
ca_shipyard_1=yes # shipyard, level 1
levy= # amounts for levy
{
li=503.000
hi=1019.000
pi=132.000
lc=397.000
ar=159.000
ga=27.000
}
}
technology=
{
tech_levels # tech levels
}
loot # amount that can be looted
primary_settlement="b_reykjavik" # primary holdings, i.e. the one that is held when holding the province
}
}
Bloodline
bloodline=
{
0= # ID of bloodline
{
type # type of blood line
name # name of bloodline (not name of dynasty)
desc # description of bloodline
owner # founder bloodline
flags= # list of flags relating to this bloodline, and the date at which they happen
{
}
created # date of creation
member # character ID of member
inheritance # type of inheritance (matrilineal, etc.)
allow_bastards=yes # only appear if yes. yes: bastards inherit bloodline
}
}
Title
For more information: title modding.
title=
{
e_rebels= # province title ID
{
# == FOR LIEGE ==
# Either:
liege # province title ID for liege
# Or:
liege=
{
title # Province title ID (dynamic)
base_title # title associated with this dynamic title (e.g. if duke of “X” rebels, here will be written “X”)
is_custom # only appear if yes. yes: title specifically created for this game
is_dynamic # yes: is dynamic
}
religion #
holder # character ID of current holder
name # custom name, only appear if applicable
custom_name=yes # only appear if yes. yes: name was changed by player
adjective # adjective related to the province
succession # type of succession
gender # authorized gender for succession
# == Hereafter are listed the laws, and there level ==
law="agnatic_succession"
law="succ_open_elective"
law="centralization_0"
law="law_voting_power_0"
law="war_voting_power_0"
law="revoke_title_voting_power_0"
law="imprison_voting_power_0"
law="grant_title_voting_power_0"
law="banish_voting_power_0"
law="execution_voting_power_0"
law="out_of_realm_inheritance_law_0"
law="revoke_title_law_0"
law="ze_administration_laws_0"
law="tax_levy_law_feudal_4"
law="tax_levy_law_republic_4"
law="tax_levy_law_theocracy_4"
law="tax_levy_law_tribal_4"
law="status_of_women_0"
law="vice_royalty_0"
law="succession_voting_power_0"
law="vassal_wars_law_0"
coat_of_arms= # coat of arms of province, only customable for holdings
{
data= # appearance of coat of arms
{
0 0 0 1 7 1 9
}
religion # type of coat of arms
}
de_jure_law_changer # ID of character who changed de jure law
de_jure_law_change # date at which de jure law was changed
de_jure_law_changes # number of changes of de jure law
normal_law_changer # ID of character who changed normal law
normal_law_change # date at which normal law was changed
last_change # date of last event (change of owner)
previous= # previous owners: list of character IDs
{
}
set_allow_title_revokation #
set_investiture #
history= #history of province
{
769.1.1= # date of event
{
# EITHER:
holder # character ID of holder during event
# OR:
holder=
{
who # character ID of holder during event
type # type of event (election, etc.)
}
}
}
de_jure_liege # de jure liege, applicable to all except holdings and empire
de_jure_ass_years # number of years since province started to be assimilated by another province (assimilated when it reaches 100)
assimilating_liege # province assimilating (future de jure liege)
law_vote_date # date at which a vote for change of law happened
law_change_timeout # date where law can again be changed
infamy=
{
total_infamy # current total of infamy
history=
{
name # description of cause of infamy
value # amount of infamy
}
}
}
'# == SPECIFICITIES OF DYNAMIC PROVINCES ==
k_dyn_reb_968442=
{
dynamic=yes # only appear if yes. yes: is dynamic, i.e. is specific to that game
landless=yes # only appear if yes. yes: title is not associated with a county
title # character’s title when holding province
title_female # character’s title when holding province (female)
foa # Gives localization key for holder's form of address if non-standard (e.g. "My Captain")
capital=472 # capital of the province
color={90 24 36 } # color of the province
holding_dynasty=7215 # dynasty holding that title
temporary=yes # only appear if yes. yes: is only temporary
major_revolt=yes # only appear if yes. yes: province is rebelling
base_title # title on which is based the province
}
}
Active ambition / Active focus
active_ambition= / active_focus=
{
type # type of ambition or focus
scope=
{
seed #
char # character ID
from=
{
seed #
char # character ID
}
}
parent_scope=
{
seed
char # character ID
}
backer # character ID of backer
auto_invite=yes # only appear if yes. yes: auto invite character to these ambition
}
Nomad
nomad=
{
k_dyn_925429= # dynamic province title
{
population # amount of population
manpower # manpower
technology=
{
tech_levels= # tech levels
}
}
}
Combat
combat=
{
}
War
war=
{
name=""
history=
{
}
}
Active war
active_war=
{
name=""
history=
{
}
}
Coalition
coalition=
{
coalition_target_title # province title ID of target
coalition_target # character ID of target
coalition_member=
{
# list of character IDs of members of coalition
}
}
Previous wars
previous_war=
{
# list of IDs of previous wars
}
Outbreak
next_outbreak_id # ID of disease where next disease will outbreak
dont_break_out_again_entity= # information on disease which should not happen next
{
disease # disease ID
timeperiod # [years?] before this disease can again happen
}
disease_outbreak= # information on disease that already started
{
start_date # outbreak date
outbreak_id # disease id
origins_province # province id where the outbreak happened
disease_period=
{
#
}
provinces=
{
# list of provinces where there is currently an outbreak
}
past_provinces=
{
# list of provinces where there was an outbreak
}
active #if yes, is currently active. If no, is a past outbeak
}
Disease
disease=
{
disease_tuberculosis= #type of desease
{
active=yes # is disease active or not
}
}
Character history
character_history={ # list of characters played by player, as they appear on score panel
{
identity # character ID
date # date where they started their reign
score # score
}
}
Nomad relation
nomad_relation=
{
k_dyn_947877 # relations of title k_dyn_947877
{
k_dyn_947877= # relation of title k_dyn_947877 with title k_dyn_947877
{
clan_opinion_created= # modifier
{
d # end date of event
}
}
}
}
Other information
playthrough_duration # number of in-game days since game started character_action #
Society
society=
{
0= # ID of society
{
member= # information on one member of society
{
character # character ID
society_rank # rank in society
society_currency #
days_in_society # days since joining society
days_at_current_society_rank # days since reach this rank in society
}
modifier= # modifier – one by set of brackets
{
modifier # name of modifier
date # end date
}
society_leader #character ID of society leader
type # type of society
}
}
Artifacts
artifacts=
{
33554432= # artifact id
{
type # type of artifact
name # name of artifact
desc # description of artifact
owner # character ID of current owner
org_owner # character ID of original owner
flags= # list of flags and date at which they were triggered
{
trophy=1078.5.27
}
created # date of creation
obtained # date at which it was obtained by current holder
equipped # is equipped by character or not
active # is active or not
history=
{
860636=1322.3.28 # character ID and date of obtention
}
}
Offmap Powers
offmap_powers=
{
0= # ID of offmap power
{
type # type of offmap power
holder # character ID of current holder
prev_holder # character ID of previous holder
prev_policy # previous policy
cur_policy # current policy
policy_change # date of change of policy
prev_status # previous status
cur_status # current status
status_change # date of change of status
flags= # list of flags and date at which they were triggered
{
china_had_plague=1386.6.4
}
names= #
{
china_china shu_china yuan_china
}
likes # what does the current power likes currently
dislikes # what does the current power dilikes currently
temple_list #
temple_name #
temple_indices=
{
}
history= #history of offmap power
{
769.1.1= # date of event
{
# EITHER:
holder # character ID of holder during event
# OR:
holder=
{
who # character ID of holder during event
type # type of event (election, etc.)
}
}
}
}
}
Wonder Upgrade
wonder_upgrade=
{
0= # ID of wonder’s upgrade
{
type # type of wonder’s upgrade
completed # is wonder’s upgrade built or not
active=yes # is wonder’s upgrade active or not
progress # [completion?]
wonder # ID of wonder related to that upgrade
construction_paused=no # is construction posed
name # name of wonder’s upgrade
desc # description of wonder’s upgrade
flags= # list of flags and date at which they were triggered
{
}
}
}
Wonder
wonder=
{
16777216= # ID of wonder
{
type # type of wonder
province # ID of province where wonder is located
name # name of wonder
desc # description of wonder
wonder_upgrade=
{
# List of IDs of wonder upgrade
}
construction_history= # List of EVENTS relating to the wonder
{
{
type # type of construction
wonder_historical_event_character # ID of character that started the events
wonder_historical_event_date #
province # province where the event happened
new_name # name after event – in case of change of name
old_name # name before event – in case of change of name
custom_history #
wonder_stage # stage of wonder at the time
wonder_upgrade # type of upgrade – in case of construction of an update
}
}
upgrade_slots #
stage=1 # current stage
progress # progress until next stage
construction_paused=no # is construction paused
is_damaged=no # is wonder damaged
is_being_looted=no # is wonder being looted
is_being_restored=no # is wonder being restored
restoration_paused=no # is restoration paused
historical=no # is the wonder historical
active=yes # is it currently active
is_constructing # is it construction
looting_progress # progress of looting
restore_progress # progress of restoration
custom_name=yes # yes: name was changed by player
custom_desc=no # yes: description was changed by player
background # background image (depends on province)
background_frame_number # type of background frame
model # model on image
update_model=no #
flags= # list of flags and date at which they were triggered
{
}
}
}
Quests
quests=
{
quest=
{
id # type of quests
holder # character ID of holder of quest
society # type of society
target=
{
char_target # character ID of target of quest
}
}
}
Final information
generated_societies=yes # are societies activated
generated_artifacts=yes # are artefacts activated
trade_route=
{
silk_road=
{
multiplier #
wealth_change #
}
}
vc_data #
| 历史 | 角色 • 家族 • 省份 • 头衔 • 剧本 |
| 脚本 | 指令 • 条件 • 作用域 • 修正 • 事件 • 决议 |
| 常规 | 定义 • 游戏规则 • 另类开局 • 宗教 • 文化 • 政体 • 特质 • 血脉 • 科技 • 法律 • 建筑 • 宣战理由 • 朝贡国 • 单位 • 目标 • 疾病 • 死亡 • 荣誉头衔 • 社团 • 宝物 • 地图外政权 • 内阁成员 • 贸易路线 • 继承 • 奇观 • 称号 |
| 图像/音效/本地化 | 地图 • 图形 • 盾徽 • 肖像 • 界面 • 小地图 • 音乐 • 本地化 |
| 其他 | 故障排除 • 验证器 • 控制台指令 • 编辑游戏存档 • Steam创意工坊 • EU4转档器模组制作 |