Skip to content

Commit a04727c

Browse files
authored
Merge pull request #468 from quietust/updates
Identify feature irritation, and a bunch more
2 parents 1595cc1 + e2c1490 commit a04727c

File tree

7 files changed

+23
-32
lines changed

7 files changed

+23
-32
lines changed

changelog.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,24 @@ that repo.
1616

1717
## Structures
1818
- Eliminate all "anon_X" names from structure fields
19+
- ``army``: change ``squads`` vector type to ``world_site_inhabitant``, identify ``min_smell_trigger``+``max_odor_level``+``max_low_light_vision``+``sense_creature_classes``
1920
- ``cave_column``: identify Z coordinates
2021
- ``cave_column_rectangle``: identify coordinates
2122
- ``embark_profile``: identify reclaim fields, add missing pet_count vector
22-
- ``feature``: identify "shiftCoords" vmethod
23+
- ``entity_population``: identify ``layer_id``
24+
- ``feature``: identify "shiftCoords" vmethod, ``irritation_level`` and ``irritation_attacks`` fields
2325
- ``flow_guide``: identify "shiftCoords" vmethod
2426
- ``general_refst``: name parameters on ``getLocation`` and ``setLocation`` vmethods
2527
- ``general_ref_locationst``: name member fields
28+
- ``historical_entity``: confirm ``hostility_level`` and ``siege_tier``
2629
- ``language_name_type``: identify ``ElfTree`` and ``SymbolArtifice`` thru ``SymbolFood``
30+
- ``timed_event``: identify ``layer_id``
2731
- ``ui``: identify actual contents of ``unk5b88`` field
2832
- ``ui_advmode``: identify several fields as containing coordinates
2933
- ``unitst``: identify ``histeventcol_id`` field inside status2
3034
- ``viewscreen_tradegoodsst``: rename trade_reply ``OffendedAnimal``+``OffendedAnimalAlt`` to ``OffendedBoth``+``OffendedAnimal``
3135
- ``viewscreen_barterst``: name member fields
36+
- ``world_site_inhabitant``: rename ``outcast_id`` and ``founder_outcast_entity_id``, identify ``interaction_id`` and ``interaction_effect_idx``
3237

3338
# 0.47.05-r6
3439

df.entities.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -710,9 +710,9 @@
710710
<int32_t name='offerings_from'/>
711711
<int32_t name='offerings_recent' comment='since the last migrant wave or diplomat visit'/>
712712
<static-array name='offerings_history' count='10' type-name='int32_t' comment='rotated yearly at 15th of Timber'/>
713-
<int32_t name='unk49e' comment='in 0.23, hostility level - determined siege size, had a chance to reset to 1'/>
714-
<int32_t name='unk49f' comment='in 0.23, determined siege size'/>
715-
<int32_t name='unk_1' since='v0.40.01'/>
713+
<int32_t name='hostility_level'/>
714+
<int32_t name='siege_tier'/>
715+
<int32_t name='unk_1' since='v0.40.01' comment='siege cooldown?'/>
716716
<int32_t name='unk_2' since='v0.47.01'/>
717717
<int32_t name='unk_3' since='v0.47.01'/>
718718
</compound>

df.legends.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,9 @@
6262
<pointer type-name='entity_population_unk4'/>
6363
</stl-vector>
6464
<int32_t name='unk5'/>
65-
<int32_t name='unk6'/>
65+
<int32_t name='layer_id' ref-target='world_underground_region'/>
6666
<int32_t name='id'/>
67-
<int32_t name='flags' comment='?; unk6 == -1'/>
67+
<int32_t name='flags' comment='?; layer_id == -1'/>
6868
<int32_t name='civ_id' ref-target='historical_entity'/>
6969
</struct-type>
7070

df.map.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -581,8 +581,8 @@
581581
<class-type type-name='feature' original-name='featurest'>
582582
<stl-vector name='population' pointer-type='world_population'/>
583583

584-
<int32_t name='unk_1'/>
585-
<int16_t name='unk_2'/>
584+
<int32_t name='irritation_level' comment='divide by 10k for attack chance, max 100k'/>
585+
<int16_t name='irritation_attacks' comment='maxes at 10?'/>
586586

587587
<compound name='embark_pos' type-name='coord2d_path'/>
588588
<stl-vector name='min_map_z' type-name='int16_t'/>

df.military.xml

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -676,21 +676,7 @@
676676
<int32_t name='unk_3' since='v0.47.01'/>
677677
</pointer>
678678
</stl-vector>
679-
<stl-vector name='squads'>
680-
<pointer>
681-
<int32_t name='count'/> next five checks out in created units
682-
<int32_t name='race'/>
683-
<int32_t name='population_id'/>
684-
<int32_t name='entity_id' ref-target='historical_entity'/>
685-
<int32_t name='unk_10' init-value='-1'/> same as unk_c0 in unit
686-
<int32_t name='cultural_identity'/>
687-
<int32_t name='unk_18' init-value='-1' comment="in range for nemesis id, but probably something else"/> made creatures undead, so not sure maybe affliction?
688-
<int32_t name='unk_1c' init-value='-1' comment="also seen 0"/> crashed df...
689-
<int32_t name='subordinate_entity_id' ref-target='historical_entity' comment="usually None, sometimes same as entity_id, sometimes subordinate of entity_id (like site government to civ)"/>
690-
<int32_t name='unk_24' init-value='-1' comment="0/1 seen"/>
691-
<int32_t name='unk_28' init-value='-1'/>
692-
</pointer>
693-
</stl-vector>
679+
<stl-vector name='squads' pointer-type='world_site_inhabitant'/>
694680
<int32_t name='unk_3c'/>
695681
<int32_t name='unk_1' since='v0.44.01'/>
696682
<int32_t name='unk_2' since='v0.47.03' comment="16 only value seen"/>
@@ -704,10 +690,10 @@
704690
<int32_t name='unk_90' init-value='-1'/>
705691
<int32_t name='unk_94' init-value='-1' comment="Number counting down. In examined save starts at 80 for id 38 counting down to 0 at 113, obviously with missing numbers somewhere"/>
706692
<int32_t name='unk_98' init-value='-1'/>
707-
<int32_t name='unk_9c' comment="10, 50, 90, 100 seen"/>
708-
<int32_t name='unk_a0' comment='0, 50, 90, 1000 seen'/>
709-
<int32_t name='unk_a4' comment="0, 100, 10000 seen"/>
710-
<stl-vector name='unk_a8' pointer-type='stl-string' comment='also creature class?'/>
693+
<int32_t name='min_smell_trigger'/>
694+
<int32_t name='max_odor_level' comment='1000 if undead are present'/>
695+
<int32_t name='max_low_light_vision'/>
696+
<stl-vector name='sense_creature_classes' pointer-type='stl-string'/>
711697
<stl-vector name='creature_class' pointer-type='stl-string' comment="Usually 'GENERAL_POISON' and 'MAMMAL'. Seen something else for undead"/>
712698
<enum type-name='item_type' base-type='int16_t' name='item_type'/>
713699
<int16_t name='item_subtype' refers-to='(item-subtype-target $$._parent.item_type $)'/>

df.ui.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -702,7 +702,7 @@
702702
<int16_t name='season_ticks' comment='1 tick = 10 frames'/>
703703
<pointer name='entity' type-name='historical_entity'/>
704704
<int16_t name='unk_1'/>
705-
<int32_t name='unk_2'/>
705+
<int32_t name='layer_id' ref-target='world_underground_region'/>
706706
<int16_t name='unk_3'/>
707707
<int16_t name='unk_4'/>
708708
</struct-type>

df.world-site.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -681,12 +681,12 @@
681681
<int32_t name="count"/>
682682
<int32_t name="race" ref-target='creature_raw'/>
683683
<int32_t name='population_id' ref-target='entity_population'/>
684-
<int32_t name="outcast_id" ref-target='historical_entity' comment="can be Religion, Civilization, and SiteGovernment as well as Outcast"/>
684+
<int32_t name="entity_id" ref-target='historical_entity' comment="can be Religion, Civilization, and SiteGovernment as well as Outcast"/>
685685
<int32_t name="unk_10" init-value='-1' since='v0.40.01'/>
686686
<int32_t name='cultural_identity_id' ref-target='cultural_identity' since='v0.40.01'/>
687-
<int32_t name="unk_18" init-value='-1' since='v0.40.01'/>
688-
<int32_t name="unk_1c" init-value='-1' since='v0.40.01' comment="0 only other value seen"/>
689-
<int32_t name='founder_outcast_entity_id' ref-target='historical_entity' since='v0.40.01' comment="Founder if outcast_id=-1, else Outcast and equal to outcast_id"/>
687+
<int32_t name="interaction_id" ref-target='interaction' since='v0.40.01'/>
688+
<int32_t name="interaction_effect_idx" init-value='-1' since='v0.40.01' comment="index into the above interaction, usually refers to an ANIMATE effect"/>
689+
<int32_t name='related_entity_id' ref-target='historical_entity' since='v0.40.01' comment="Founder if outcast_id=-1, else Outcast and equal to outcast_id"/>
690690
<int32_t name="unk_24" init-value='-1' since='v0.40.01' comment="0 and 1 seen"/>
691691
<int32_t name="unk_28" init-value='-1' since='v0.40.01'/>
692692
</struct-type>

0 commit comments

Comments
 (0)