forked from DFHack/df-structures
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdf.legends.xml
148 lines (129 loc) · 6.06 KB
/
df.legends.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<data-definition>
<struct-type type-name='invasion_info'
instance-vector='$global.ui.invasions.list' key-field='id'>
<int32_t name='id'/>
<int32_t name='civ_id' ref-target='historical_entity'/>
<int32_t name='active_size1' comment='0 unless active'/>
<int32_t name='active_size2'/>
<int32_t name='size'/>
<int32_t name='duration_counter'/>
<bitfield base-type='uint16_t' name='flags'>
<flag-bit name='active'/>
<flag-bit name='siege'/>
<flag-bit/>
<flag-bit/>
<flag-bit/>
<flag-bit name='parley'/>
</bitfield>
<int16_t name='unk4b'/>
<int32_t since='v0.44.01'/>
<int32_t since='v0.44.01'/>
<int32_t since='v0.44.01'/>
<int32_t since='v0.44.01'/>
<int32_t since='v0.44.01'/>
</struct-type>
<struct-type type-name='entity_population_unk4'>
<stl-vector comment="all 3 vectors share a single index series, with the third being interleaved with at least the second one">
<pointer>
<int32_t name='idx'/>
<int32_t name='unk1'/>
<int32_t name='unk2'/>
</pointer>
</stl-vector>
<stl-vector>
<pointer>
<int32_t name='idx'/>
<int32_t name='unk1'/>
<int32_t name='unk2'/>
</pointer>
</stl-vector>
<stl-vector>
<pointer>
<int32_t name='idx'/>
<int32_t name='unk1'/>
</pointer>
</stl-vector>
</struct-type>
<struct-type type-name='entity_population' key-field='id' instance-vector='$global.world.entity_populations'>
<compound name='name' type-name='language_name'/>
<code-helper name='describe'>
(describe-obj $.name)
</code-helper>
<stl-vector name='races' comment="all the 3 vectors are always the same length, and thus coupled">
<int16_t ref-target='creature_raw'/>
</stl-vector>
<stl-vector name='counts' type-name='int32_t'/>
<stl-vector name='unk3' type-name='int32_t' init-value='-1' comment="Set only for cave civs. When set, >= counts. Pre first embark all those are equal"/>
<stl-vector name='unk4'>
<pointer type-name='entity_population_unk4'/>
</stl-vector>
<int32_t name='unk5'/>
<int32_t name='unk6'/>
<int32_t name='id'/>
<int32_t name='flags' comment='?; unk6 == -1'/>
<int32_t name='civ_id' ref-target='historical_entity'/>
</struct-type>
<enum-type type-name='nemesis_flags'>
<enum-item name='ACTIVE_ADVENTURER' comment='used when loading save'/>
<enum-item name='RETIRED_ADVENTURER' comment='allows resuming play'/>
<enum-item name='ADVENTURER' comment='blue color in legends'/>
</enum-type>
<struct-type type-name='nemesis_record' key-field='id' instance-vector='$global.world.nemesis.all'>
<int32_t name='id' comment='sequential index in the array'/>
<int32_t name='unit_id' ref-target='unit'/>
<int32_t name='save_file_id' ref-target='unit_chunk' comment='unit-*.dat'/>
<int16_t name='member_idx' comment='index in the file'/>
<pointer name='figure' type-name='historical_figure'/>
<pointer name='unit' type-name='unit'/>
<code-helper name='describe'>
(describe-obj $.figure)
</code-helper>
<int32_t name='group_leader_id' ref-target='nemesis_record'/>
<stl-vector name='companions'>
<int32_t ref-target='nemesis_record'/>
</stl-vector>
<int16_t name='unk10' init-value='-1'/>
<int32_t name='unk11' init-value='-1'/>
<int32_t name='unk12' init-value='-1'/>
<int32_t name='unk_v47_1'/>
<int32_t name='unk_v47_2'/>
<df-flagarray name='flags' index-enum='nemesis_flags'/>
</struct-type>
<struct-type type-name='artifact_record' key-field='id'
instance-vector='$global.world.artifacts.all'>
<int32_t name='id'/>
<code-helper name='describe'>
(describe-obj $.name)
</code-helper>
<compound name='name' type-name='language_name'/>
<df-flagarray name='flags'/>
<pointer name='item' type-name='item'/>
<int32_t name='abs_tile_x'/>
<int32_t name='abs_tile_y'/>
<int32_t name='abs_tile_z'/>
<int32_t since='v0.44.01'/>
<int32_t name='site' ref-target='world_site'/>
<int32_t name='structure_local' ref-target='abstract_building'/>
<int32_t init-value='-1' since='v0.47.01'/>
<int32_t name='subregion' ref-target='world_region'/>
<int32_t name='feature_layer' ref-target='world_underground_region'/>
<int32_t name='owner_hf' ref-target='historical_figure' comment="namer/creator does not seem to require a claim to be shown"/>
<stl-vector name='remote_claims' type-name='int32_t' ref-target='historical_figure' since='v0.44.01' comment="all afar, heirloom from afar seen"/>
<stl-vector name='entity_claims' type-name='int32_t' ref-target='historical_entity' since='v0.44.01'/>
<stl-vector name='direct_claims' type-name='int32_t' ref-target='historical_figure' since='v0.44.01'/>
<int32_t name='storage_site' ref-target='world_site' since='v0.44.01'/>
<int32_t name='storage_structure_local' ref-target='abstract_building' since='v0.44.01'/>
<int32_t name='loss_region' ref-target='world_region' since='v0.44.01'/>
<int32_t since='v0.44.01' init-value='-1'/>
<int32_t name='holder_hf' since='v0.44.01' ref-target='historical_figure' comment="doesn't seem to require a claim"/>
<int32_t name='year' since='v0.44.01' init-value='-1' comment="seems to be current year or -1"/>
<int32_t since='v0.44.01' init-value='-1'/>
<int32_t init-value='0' comment="Small set of non zero fairly small numbers seen?"/>
</struct-type>
</data-definition>
<!--
Local Variables:
indent-tabs-mode: nil
nxml-child-indent: 4
End:
-->