- v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
- Use this page to report any issues related to the migration.
v0.31:XML dump
This article is about an older version of DF. |
An XML dump of a world's history can be generated from Legends mode by pressing [x], and will be placed in Dwarf Fortress' root folder.
The XML dump consists of the following elements:
regions
Each dump contains one <regions> element, which contains a large number of <region> elements. Each <region> element has the following attributes stored as elements within it:
- id - a reference number used to identify the region elsewhere
- name - the name of the region (eg, "the colorless desert" or "the perplexing forests"). The names are all lower-case.
- type - the type of region. Types include:
- Ocean
- Hills
- Desert
- Forest
- Mountains
- Glacier
- Wetland
- Grassland
- Lake
- Tundra
underground_regions
Similar to the <regions> element. The <underground_region> elements contain the following:
- id - reference number used to identify the region
- type - can be:
- cavern
- magma
- underworld
- depth
Note that underground regions don't have names.
sites
Each <site> element contains the following:
- id - reference number
- name
- type
- city
- tree city
- cave
- dwarf fortress
- mountain halls
- hamlet
- dark fortress
- forest retreat
- town
- fortress
- camp
- lair
- labyrinth
- shrine
- coords - an X, Y coordinate giving the location of the site on the world map.
structures
Each site may contain a <structures> tag.
world_constructions
artifacts
historical_figures
The <historical_figure> elements contain the following information:
- id - reference number used to identify the historical figure elsewhere
- name - the name of the historical figure
- race - the race of the figure, the following have been seen (not present if the figure is a force)
- alligator
- bat_giant
- bear_black
- bear_grizzly
- bird_eagle_giant
- bird_swallow_cave
- bird_vulture
- blind_cave_bear
- blind_cave_ogre
- cave_dragon
- camel_1_hump
- camel_2_hump
- cheetah
- cheetah_giant
- colossus_bronze
- cougar
- crocodile_saltwater
- cyclops
- demon_x where x is a number
- dog
- dragon
- draltha
- dwarf
- elf
- ettin
- forgotten_beast_x where x is a number
- giant
- goblin
- gorlak
- human
- hungry_head
- hydra
- imp_fire
- jabberer
- jaguar
- jaguar_giant
- kobold
- leopard
- leopard_giant
- lion
- lion_giant
- llama
- minotaur
- molemarian
- night_creature_x where x is a number
- rat
- sasquatch
- scorpion_desert_giant
- spider_cave_giant
- tiger
- tiger_giant
- titan_x where x is a number
- troglodyte
- troll
- voracious_cave_crawler
- wolf
- yeti
- caste - the gender of the figure, can be one of the following (not present if the figure is a force)
- default
- female
- male
- appeared - unknown, seems to be related to apperance in the world, sometimes appeared and birth_year are different, mostly (~80%) the same.
- birth_year - the year of the figure's birth, can be negative value (to indicate figure existing before the beginning of the world?)
- birth_seconds72 - unknown
- death_year - the year of the figure's death, -1 means the figure is still alive
- death_seconds72 - unknown
- associated_type - seems to be the job of the figure, the following have been seen
- administrator
- animal_caretaker
- animal_dissector
- animal_trainer
- architect
- armorer
- axeman
- baby
- blacksmith
- bone_carver
- bone_setter
- bowman
- bowyer
- brewer
- butcher
- carpenter
- cheese_maker
- child
- clerk
- clothier
- cook
- craftsman
- crossbowman
- diagnoser
- drunk
- dyer
- engraver
- farmer
- fish_cleaner
- fish_dissector
- fisherman
- fishery_worker
- furnace_operator
- gem_cutter
- gem_setter
- glassmaker
- hammerman
- herbalist
- hunter
- jeweler
- lasher
- leatherworker
- lye_maker
- maceman
- mason
- master_bowman
- master_crossbowman
- master_hammerman
- master_lasher
- master_maceman
- master_pikeman
- master_spearman
- master_swordsman
- master_thief
- mechanic
- metalcrafter
- metalsmith
- milker
- miller
- miner
- none
- pikeman
- planter
- potash_maker
- pump_operator
- ranger
- recruit
- siege_engineer
- siege_operator
- soap_maker
- spearman
- standard
- stonecrafter
- surgeon
- suturer
- swordsman
- tanner
- thief
- thresher
- trader
- trained war
- weaponsmith
- weaver
- wood_burner
- woodcrafter
- woodcutter
- wrestler
- deity - indicator (does not contain any value) to show if the figure is a deity or not.
- skeleton - indicator (does not contain any value) to show if the figure is a skeleton or not.
- zombie - indicator (does not contain any value) to show if the figure is a zombie or not.
- force - indicator (does not contain any value) to show if the figure is a force. If this node is present, this figure will lack the race and caste nodes.
Other information such as marriages are stored in the historical_events element.
entity_populations
Each <entity_population> element contains only a single tag, giving an id number.
entities
Each <entity> element contains an id tag, and may also contain a name tag.
Entities are civilizations, groups (which can found sites/religions/attack/defend), or religions.
historical_events
The <historical_event> element is the most complex. Each contains:
- id - a reference number
- year - the year in which the event took place
- seconds72 - the point in the year when it took place. There are 403200 seconds in a year, so a value of 394800 would be a week before the end of the year
- type - a label indicating what sort of event this is.
The other elements of the historical_event will depend on the contents of the type element. Types include:
add hf entity link
Some historical figure (unlisted) linked to an entity. Observed link types from legends: became position in the entity(general/queen/etc) / enemy / member / imprisoned
- civ_id
add hf hf link
This is an event that links two historical figures (hf) together. Observed link types from legends: marriage / worship / imprisonment
- hfid
- hfid_target
add hf site link
Prior to .31.18 This event shows that some (unexported) HF took up residence in some site (site_id)
- site_id
artifact created
(artifact_id) was created in (site_id) by (hist_figure_id)
- artifact_id
- unit_id (not sure what this is)
- hist_figure_id
- site_id
attacked site
This is an event that marks when a group (attacker_civ_id) attacked another group (site_civ_id) at a site (site_id) owned by a civ (defender_civ_id). The attack was led by a HF (attacker_general_hfid) and the defense was led by another hfid (defender_general_hfid).
- attacker_civ_id
- defender_civ_id
- site_civ_id
- site_id
- attacker_general_hfid
- defender_general_hfid
body abused
After a historical figure (can be multiple / unlisted) is killed, the body is abused. Observed abuses from legends: horribly mutilated / hung from tree / impaled on pikes
- site_id
- subregion_id (always -1?)
- feature_layer_id (always -1?)
- coords
change hf job
This event shows that some HF (hfid) took up a different job (unexported) at some site (site_id)
- hfid
- site_id
- subregion_id (always -1?)
- feature_layer_id (always -1?)
change hf state
This event shows that some HF (hfid) changed state (to state) at site_id, in subregion_id, or in feature_layer_id, located at coords.
- state - tells what state the historical figure is changing to.
- settled (site,coords given)
- scouting (site,coords given)
- thief (site,coords given)
- snatcher (site,coords given)
- wandering (feature_layer given)
- refugee (subregion_id,coords given)
- hunting (subregion_id,coords given)
- hfid - ID number of the historical figure whose state is changing
- site_id
- subregion_id
- feature_layer_id
- coords
changed creature type
(changer) turns some (changee) into (new race/caste). Seen to happen in legends after changer (always a demon?) imprisons then turns changee into same demon as changer.
- changee_hfid
- changer_hfid
- old_race
- old_caste
- new_race
- new_caste
create entity position
Explanation needed No Parts
created site
The founding of a site by site_civ_id, which is a group that is a member of civ_id.
- civ_id
- site_civ_id
- site_id
created structure
Prior to 31.18
Some entity (site_civ_id) of entity/civ (civ_id) built structure (structure_id) at some site (site_id)
- civ_id - identifies an entity that makes up the second part of the Civ name (i.e. the 'X' in "Y of X")
- site_civ_id - identifies an entity that makes up the first part of the Civ name (i.e. the 'Y' in "Y of X")
- site_id - the site where the structure was created - town, fortress, whatever
- structure_id - An ID identifying the structure. Uncertain if there is a way to find out what type of structure this is.
created world construction
Some entity (site_civ_id) of some civ/entity (civ_id) completed component wcid of master_wcid, which is a road between site_id1 and site_id2. The final completion of the road has master_wcid being -1.
- civ_id
- site_civ_id
- wcid
- master_wcid
- site_id1
- site_id2
creature devoured
This event shows that some HF (unexported) devoured another HF (unexported) at some site/region (site_id or subregion_id)
- site_id
- subregion_id
- feature_layer_id
destroyed site
This event shows that some entity (attacker_civ_id) destroyed some site (site_id) defended by some entity (defender_civ_id) which is a member of some entity (site_civ_id).
- site_id
- site_civ_id
- attacker_civ_id
- defender_civ_id
diplomat lost
(unknown entity) lost a diplomat at (unknown site). They suspected the involvement of (unknown entity);
- No details exported.
entity created
.31.18 Appears as an event in the xml file relating to the player founding a site in dwarf fortress mode. Showing your embark group entity_id being created at your fortress site - site_id
Prior to .31.18 This event makrs the creation of an entity (entity_id) at some site (site_id). This could be either a group which leaves and possibly founds another site, or this could be a religion being founded.
field battle
This event shows that some entity (attacker_civ_id) attacked some entity (defender_civ_id) at some region (subregion_id) led by a HF (attacker_general_hfid), the defenders are led by another HF (defender_general_hfid).
- attacker_civ_id
- defender_civ_id
- subregion_id
- feature_layer_id
- coords
- attacker_general_hfid
- defender_general_hfid
hf abducted
This event shows that some HF (target_hfid) was abducted by a snatcher (snatcher_hfid) from some site (site_id)
subregion_id/feature_layer_id always -1?
- target_hfid
- snatcher_hfid
- site_id
- subregion_id
- feature_layer_id
hf died
This event shows that some HF (hfid) was killed by some HF (slayer_hfid) at site/region (site_id or subregion_id)
- hfid - the historical figure who died
- slayer_hfid - the historical figure who slew him
- slayer_item_id - -1 if no notable item was used
- slayer_shooter_item_id - -1 if no notable item was used
- site_id - -1 if not killed at a site
- subregion_id
- feature_layer_id
- cause - causes include:
- air (suffocated)
- blood (bled to death)
- crushed bridge (atom smasher?)
- dragonfire
- drown
- exec burned alive
- exec crucified
- exec fet to beasts
- exec hacked to pieces
- fire
- murdered
- obstacle (being thrown into a wall?)
- old age
- shot
- struck
- thirst
- trap
hf new pet
This event shows that some HF (group_hfid) tamed some animal in sub_region_id at coords.
- group_hfid
- site_id (always -1?)
- subregion_id
- feature_layer_id (always -1?)
- coords
hf razed structure
Prior to 31.18
Some HF (hist_fig_id) razed a structure (structure_id) at some site (site_id)
- hist_fig_id
- site_id
- structure_id
hf reunion
2 or more (only 2 listed) historical figures reunited.
- group_1_hfid
- group_2_hfid
- site_id
- subregion_id
- feature_layer_id
hf revived
(hfid) comes back from the dead as a (ghost) in (site_id)
- hfid
- ghost
- site_id
- subregion_id
- feature_layer_id
hf simple battle event
This shows that some HF (group_1_hfid) did something (subtype) to another HF (group_2_hfid) at some site/region (site_id or subregion_id)
- subtype
- attacked
- scuffle
- happen upon
- confront
- ambushed
- 2 lost after receiving wounds
- 2 lost after giving wounds
- 2 lost after mutual wounds
- group_1_hfid
- group_2_hfid
- site_id
- subregion_id
- feature_layer_id
hf travel
This event shows that some HF (group_hfid):
- escaped from the underworld (has <escape/> and feature_layer_id given)
- returned to a site (has "<return/>" listed and a site)
- left a site to go to a region (has subregion_id,coords and site_id)
- group_hfid
- site_id
- subregion_id
- feature_layer_id
- coords
hf wounded
This event shows that some HF (woundee_hfid) was wounded at site/region (site_id or subregion_id) by some HF (wounder_hfid). Unlisted body part and attack type (smashed/slashed/etc)
- woundee_hfid
- wounder_hfid
- site_id
- subregion_id
- feature_layer_id
impersonate hf
This event that some HF (trickster_hfid) began impersonating another HF (cover_hfid / always a deity?) within an entity (target_enid)
- trickster_hfid
- cover_hfid
- target_enid
item stolen
Explanation needed No Parts
masterpiece arch constructed
(hfid) constructed a masterpiece (unknown) architecture for (entity_id) at (site_id)
- hfid
- entity_id
- site_id
- skill_at_time
masterpiece arch design
(hfid) designed a masterpiece (unknown) architecture for (entity_id) at (site_id)
- hfid
- entity_id
- site_id
- skill_at_time
masterpiece engraving
(hfid) created a masterful engraving for (entity_id) in (site_id)
- hfid
- entity_id
- site_id
- skill_at_time
masterpiece food
(hfid) prepared a masterful (UNKNOWN) for (entity_id) in (site_id)
- hfid
- entity_id
- site_id
- skill_at_time
masterpiece item
(hfid) created a masterful (UNKNOWN) for (entity_id) in (site_id)
- hfid
- entity_id
- site_id
- skill_at_time
masterpiece item improvement
(hfid) added masterful (UNKNOWN) to a (UNKNOWN) for (entity_id) in (site_id)
- hfid
- entity_id
- site_id
- skill_at_time
masterpiece lost
Details Needed
- Nothing Exported
merchant
Details Needed
- Nothing exported
new site leader
This event shows that an attacking entity (attacker_civ_id) attacked another entity (defender_civ_id) which was part of an entity (site_civ_id). The attackers won and took over the site (site_id), instituting a new government (new_site_civ_id) ran by a new leader (new_leader_hfid).
peace accepted
This event ends a war. The info about which entity initiated the negotiations is missing.
- site_id (always -1?)
peace rejected
Explanation needed
- site_id (always -1?)
razed structure
No longer used in 31.18
Explanation needed
Parts needed
reclaim site
This event shows an entity (site_civ_id), a member of another entity (civ_id) reclaimed a site (site_id).
- civ_id
- site_civ_id
- site_id
remove hf site link
Prior to 31.18
This event shows that some HF (unexported) moved out of site_id.
- site_id
remove hf entity link
Some historical figure (unlisted) removes link with entity. Observed link removals in legends: ceased to position / escaped from prison
- civ_id
replaced structure
This event shows that an entity (site_civ_id) a member of another entity (civ_id) replaced a structure type (old_ab_id) with another structure type (new_ab_id) at a site (site_id). This normally (only?) happens when a civ replaces buildings (homes) with larger buildings
site abandoned
(site_civ_id) of (civ_id) abandoned the settlement at (site_id)
- civ_id
- site_civ_id
- site_id
site died
(site_civ_id) and (civ_id) settlement of (site_id) withered.
- civ_id
- site_civ_id
- site_id
site taken over
- attacker_civ_id
- new_site_civ_id
- defender_civ_id
- site_civ_id
- site_id
historical_event_collections
As of .31.13 these have been added and contain a massive amount of information. Please help to add details below
Each historical event collection contains the following items, as well as additional items depending on it's type:
- id - a reference number
- start_year - the year in which the event collection started
- start_seconds72 - the date of the year, in seconds. There are 403200 seconds in a year, 1200 seconds in a day, 28 days in a month, and 12 months in a year.
- end_year - the year in which the event collection ended
- start_seconds72 - the date of the year, in seconds. There are 403200 seconds in a year, 1200 seconds in a day, 28 days in a month, and 12 months in a year.
- event - one or more events which are part of this collection
- type - the type of event collection this is (the different types are listed below)
- parent_eventcol - Is this event collection part of another event collection? If so the id of that parent is listed here, otherwise it will be -1
- ordinal - How many times has this happened ("The Third Siege of Ironhand" would have <ordinal>3</ordinal>)
The different types of event collections along with a description and their components are listed below. It's likely there are more event collections then those listed below:
abduction
An abduction by a member of (attacking_enid) of a member of (defending_enid). They were abducted from (site_id) located at (coords).
- subregion_id
- feature_layer_id
- site_id
- coords
- attacking_enid
- defending_enid
battle
This describes a battle between multiple sides. The battle is part of the war event collection war_eventcol. The events that make up this collection are individual simple battle events or assaults. They involve an attacking_hfid and/or a defending_hfid. It occurred at site_id which is located at coords.
There can be multiple attacking and defending squads made up of non-notable units, their civ they belong to is *_squad_entity_pop. They contain *_squad_number units of race *_squad_race, of which *_squad_deaths died.
Also some or all of the important people (attacking_hfid and defending_hfid) may have died.
The outcome is either "defender won" or "attacker won".
- eventcol (multiple?)
- event (multiple)
- name
- war_eventcol
- subregion_id
- feature_layer_id
- site_id
- coords
- attacking_hfid (multiple)
- defending_hfid (multiple)
- noncom_hfid (multiple) (?)
- Multiple different "attacking squads" each with these parts
- attacking_squad_race
- attacking_squad_entity_pop
- attacking_squad_number
- attacking_squad_deaths
- attacking_squad_site (?)
- Multiple different "defending squads" each with these parts
- defending_squad_race
- defending_squad_entity_pop
- defending_squad_number
- defending_squad_deaths
- defending_squad_site
- outcome
Does not have an "ordinal" part
beast attack
A beast attacked a member of defending_enid at site_id, located at coords.
- subregion_id
- feature_layer_id
- site_id
- coords
- defending_enid
duel
This describes a duel between attacking_hfid and defending_hfid at site_id, located at coords.
- subregion_id
- feature_layer_id
- site_id
- coords
- attacking_hfid
- defending_hfid
journey
This describes a journey of a HF, normally when they leave a site to go tame an animal in a nearby region, then return.
No additional parts
site conquered
As part of war_eventcol, attacking_enid conquered site_id from defending_enid.
- war_eventcol
- site_id
- attacking_enid
- defending_enid
theft
A member of attacking_enid stole something from a member of defending_enid at site_id located at coords. Can include multiple different thefts by different theives from the same location
- subregion_id
- feature_layer_id
- site_id
- coords
- attacking_enid
- defending_enid
war
A war, as named, where aggressor_ent_id battled defender_ent_id. It contains the battles, sieges, and pillaging events listed in eventcol.
- eventcol (multiple)
- name
- aggressor_ent_id
- defender_ent_id
historical_eras
Each <historical_era> element contains a name and a start_year element.