XML dump
XML dump истории мира можно создать, нажав x в режиме легенд. Файл будет в корневой папке Dwarf Fortress.
Данная статья помечена как не оконченная. Вы можете прочитать эту статью на английском или помочь проекту её переводом. |
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.
Entityies 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.