diff --git a/changelog.txt b/changelog.txt index 56b00106e..90e0b8297 100644 --- a/changelog.txt +++ b/changelog.txt @@ -39,6 +39,7 @@ that repo. - ``breed``: new struct type - ``creature_handler``: identified vmethods - ``crime``: removed fields of ``reports`` that are no longer present +- ``dance_form``: identified most fields - ``history_event_context``: identified fields - ``image_set``: new struct type - ``itemdef_flags``: new enum, with ``GENERATED`` flag @@ -47,6 +48,7 @@ that repo. - ``interrogation_report``: new struct type - ``justification``: new enum - ``lever_target_type``: identified ``LeverMechanism`` and ``TargetMechanism`` values +- ``musical_form``: identified fields, including some renames. Also identified fields in ``scale`` and ``rhythm`` - ``region_weather``: new struct type - ``squad_order_cause_trouble_for_entityst``: identified fields - ``unit_thought_type``: added several new thought types diff --git a/df.art.xml b/df.art.xml index d41ce0fdc..a58ac390f 100644 --- a/df.art.xml +++ b/df.art.xml @@ -482,19 +482,19 @@ - - - - - - - + + -- 10 + + + + + - + -- 20 -- dynamic styles @@ -506,7 +506,7 @@ - + -- 30 -- more tempo styles @@ -519,7 +519,7 @@ - + -- 40 @@ -531,7 +531,7 @@ - + -- 50 @@ -542,7 +542,7 @@ - + -- 60 @@ -553,7 +553,7 @@ - + -- 70 @@ -587,15 +587,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + @@ -604,9 +719,9 @@ - - - + + + @@ -616,71 +731,226 @@ - - - - - - - - - - - - - - - 0: melody, 1: counterpoint, 2: harmony, 3: rhythm - 0: short, 1: mid-length, 2: long, 3: varied length - - - - - - - - - - - + + + + + + + + - - - - - - - - - - - - - + + + + + - - 0: rising, 1: falling, 2: rising-falling, 3: falling-rising - 0: always, 1: often, 2: sometimes - - - + + + + + + + + - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- 10 + + + + + + + + + + + -- 20 + + + + + + + + + + + -- 30 + + + + + + + + + -- 0 + + + + + + + + + + + -- 10 + + + + + + + + + + + -- 20 + + + + + + + + + + + -- 30 + + + + + + + + + + + -- 40 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -688,79 +958,74 @@ - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + - - - - - - - + + + + + - - - - - + + + + + + + + - - - - - - - - + + + + + + + + + + @@ -768,47 +1033,49 @@ - - - - - + + + + + - - - - - - - - + + + + + + + + + + + + + - - - - - + + - + - + - + - - - + + + - + - - - + + + @@ -832,8 +1099,8 @@ - - + + diff --git a/df.entities.xml b/df.entities.xml index 1cf295776..09f9fcdca 100644 --- a/df.entities.xml +++ b/df.entities.xml @@ -392,12 +392,12 @@ at that level (Some exterminated kobolds have it set, while most do not, for instance. Embark culled dwarven civs may or may not have it set). - + - + @@ -1343,7 +1343,7 @@ - + diff --git a/df.history.xml b/df.history.xml index 591ae481e..a8e72a8e5 100644 --- a/df.history.xml +++ b/df.history.xml @@ -69,6 +69,7 @@ + @@ -241,48 +242,48 @@ - + - + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - + + - - - + + + - + @@ -304,9 +305,9 @@ - - - + + + @@ -314,22 +315,22 @@ - + - + - - - - - - + + + + + + - + @@ -354,50 +355,50 @@ - - - + + + - - - - - - + + + + + + - - + + - - - - + + + + - - - + + + - - + + - + @@ -413,9 +414,9 @@ there's an unused dword here on 64-bit - - - + + + different from above - this might be wanted.unk @@ -434,28 +435,28 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - + + + + + + - + @@ -476,19 +477,19 @@ - - + + all 0xfff0bdc0 = -1000000 - + - + - - + + @@ -575,7 +576,7 @@ - + @@ -597,12 +598,12 @@ - + - - + + @@ -717,6 +718,7 @@ + -- 10 @@ -727,6 +729,7 @@ + -- 20 @@ -737,6 +740,7 @@ + -- 30 @@ -747,6 +751,7 @@ + -- 40 @@ -757,6 +762,7 @@ + -- 50 @@ -767,11 +773,20 @@ + -- 60 + + + + + + -- 70 + + @@ -799,7 +814,8 @@ - + + @@ -867,38 +883,42 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + + + + + - - + + @@ -909,8 +929,8 @@ - - + + @@ -923,7 +943,7 @@ dtor 0x8C17FA0 - + (describe-obj $.name) @@ -934,7 +954,7 @@ - + @@ -948,19 +968,19 @@ - + - - - - - - + + + + + + @@ -989,53 +1009,53 @@ - - + + - - - - + + + + - - - + + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + @@ -1059,15 +1079,15 @@ - + - + - + @@ -1250,6 +1270,8 @@ + -- 10 + @@ -1281,6 +1303,8 @@ + -- 20 + @@ -1312,6 +1336,8 @@ + -- 30 + @@ -1343,6 +1369,8 @@ + -- 40 + @@ -1374,6 +1402,8 @@ + -- 50 + @@ -1405,6 +1435,8 @@ + -- 60 + @@ -1436,6 +1468,8 @@ + -- 70 + @@ -1467,6 +1501,8 @@ + -- 80 + @@ -1498,6 +1534,8 @@ + -- 90 + @@ -1619,6 +1657,11 @@ + + + + + @@ -1761,11 +1804,7 @@ - - - - - + @@ -1856,13 +1895,13 @@ - + - + @@ -1871,7 +1910,7 @@ - + @@ -1897,33 +1936,33 @@ - + - + - + - + - + @@ -1991,7 +2030,7 @@ - + @@ -2000,8 +2039,8 @@ - - + + @@ -2072,7 +2111,7 @@ - + @@ -2080,7 +2119,7 @@ - + @@ -2105,7 +2144,7 @@ - + @@ -2113,19 +2152,19 @@ - + - + - + @@ -2142,24 +2181,24 @@ - + - + - + - + - + @@ -2167,24 +2206,24 @@ - - + + - + - - + + - - + + @@ -2200,7 +2239,7 @@ - @@ -2219,7 +2258,7 @@ - + @@ -2232,7 +2271,7 @@ - + @@ -2241,8 +2280,8 @@ - - + + @@ -2258,7 +2297,7 @@ - + @@ -2266,7 +2305,7 @@ - + @@ -2305,7 +2344,7 @@ - + @@ -2313,7 +2352,7 @@ - + @@ -2323,7 +2362,7 @@ - + @@ -2345,9 +2384,9 @@ - - - + + + @@ -2361,8 +2400,15 @@ + + + + + + + - + @@ -2378,10 +2424,10 @@ - + - + @@ -2511,12 +2557,20 @@ + + + + + + + + historical_entity.position - + @@ -2539,7 +2593,7 @@ - + @@ -2562,7 +2616,7 @@ - + @@ -2594,7 +2648,7 @@ - murder, not aging + @@ -2615,10 +2669,10 @@ - - - - + + + + @@ -2630,7 +2684,7 @@ - + @@ -2652,9 +2706,9 @@ - + - + @@ -2698,8 +2752,8 @@ - - + + @@ -2728,7 +2782,7 @@ - + @@ -2744,8 +2798,8 @@ - - + + @@ -2803,8 +2857,8 @@ - - + + @@ -2816,7 +2870,7 @@ - + @@ -2846,7 +2900,7 @@ - + @@ -2857,8 +2911,8 @@ - - + + @@ -2906,9 +2960,19 @@ + + + + + + + + + + - + @@ -2942,7 +3006,7 @@ - + @@ -3028,7 +3092,7 @@ - always 12? + always 12? @@ -3042,9 +3106,9 @@ - + - + @@ -3118,8 +3182,8 @@ - ? 6 = plots and schemes, 11 = agent - ? 4 = plots and schemes, 21 = agent + + @@ -3250,23 +3314,25 @@ - + - + - - - - + + + + + - - - - + + + + + @@ -3285,28 +3351,25 @@ - - - - - - + - - + + + - + + - + @@ -3320,7 +3383,7 @@ - + @@ -3329,7 +3392,7 @@ - + @@ -3345,7 +3408,7 @@ - + @@ -3366,14 +3429,14 @@ - most likely the same format as above - - - - - + most likely the same format as above + + + + + - + @@ -3409,32 +3472,32 @@ - - + + - - + + - - + + - - + + @@ -3551,7 +3614,7 @@ - + unsure but 16-bit values make more sense than 32-bit @@ -3574,22 +3637,22 @@ - - - - - - + + + + + + - - - + + + - - + + @@ -3598,9 +3661,9 @@ - - - + + + @@ -3612,15 +3675,15 @@ - - + + - + - + @@ -3630,15 +3693,15 @@ - - + + - + diff --git a/df.items.xml b/df.items.xml index 870fcdd8d..13fc5b5b4 100644 --- a/df.items.xml +++ b/df.items.xml @@ -1017,7 +1017,7 @@ - + diff --git a/df.military.xml b/df.military.xml index c5596fa7a..c1212816c 100644 --- a/df.military.xml +++ b/df.military.xml @@ -346,44 +346,44 @@ Some army_controller research notes: - A number of attacks on the player fortress have been studied. In all cases an army_controller with a type = t2 and a site_id = player fortress were generated - at the start of a new season (for some reason old ones can remain lingering. They can be distinguished from the new one by their old time stamp). The master_hf was - the boss/master/leader of the goblin civ (not site) or necro site (they don't have civs), and that character was not seen in the later invasion. The general_hf was - the general leading the attack. At that stage, i.e. before the attack actually happened, unk_64.t2.army_id referenced an army found in the armies.all vector, but - that army wasn't present any longer when the attack was underway. The army nemesis vector contained characters, probably squad leaders, present in the attack. - The army controller field pointed to an army_controller with type = t4 that wasn't present in the army_controllers.all vector, with the original army_controller's - general_hf (t2) taking the role of master_hf, with a subordinate (present in the army nemesis vector) taking the general_hf role. - Legends Mode reports of the attacks showed the original army_controller's (t2) general_hf as the leader of the attack. - pos_x/pos_y has some kind of relation unk_64.t2.unk_x_a, unk_x_b/unk_y_a, unk_y_b and the army.pos/last_pos x/y fields. Seem to be members of a pair of sets with - the numbers gradually increasing. - - SentToTributary (t12) appears in the army_controller vector only very briefly. It might possibly be related to legitimate visitors. - - Quester army controller (t17) doesn't seem to contain any useful info except the site_id, time, and the artifact_id, in particular not anything that looks like - references to the questers themselves or their employer. - - t24: Looks like villainous visitors. Legitimate ones don't seem to use army controllers. + t1: All seen NomadicGroup. master = group boss, general = leader of army (with troops) referencing controller. Purpose and action unknown. + + An InvasionOrder (2) is generated at the start of the season, shortly followed by an army that references an Invasion controller. The army disappears from the armies.all + vector once it enters the embark. + + Invasion (4) has been seen via InvasionOrder army_controllers' armies, but only player fortress attacks have been studied. Prior to the army appears in the armies.all vector this controller + seems to be available via the army_controllers.all vector referencing the the InvasionOrder via unk_34. + + t5: unk_34 seen referencing Invasion (4) and unk_38 referencing t5 (player fortress) or t7, disappearing when an army is generated (at least for player fortress). + + Visit (12) appears in the army_controller vector only very briefly before legitimate visitors arrive, and is also used for exiled residents. + + Quest (17) doesn't seem to contain any useful info except the site_id, time, and the artifact_id, in particular not anything that looks like + references to the questers themselves or their employer. However, prior to arriving at the site, armies in armies.all can reference the controller, and the army members + seem to match the questers that show up shortly thereafter, looking for the indicated artifact. As with InvasionOrder armies, quester armies disappear on embark arrival. + + VillainousVisit (24): Villainous visitors. Legitimate ones use Visit army controllers, but only until they arrive, while villainous ones linger. - + - + - + - - - - + + + + - - + + @@ -391,34 +391,34 @@ - + - - + + - + - + - + - + - + @@ -426,19 +426,19 @@ - + - + - + @@ -448,7 +448,7 @@ - + @@ -470,22 +470,22 @@ - + - + - + - - - - - + + + + + @@ -501,9 +501,9 @@ - - - + + + @@ -513,34 +513,34 @@ - - - - - - - + + + + + + + - - + + - - - - - - - + + + + + + + - + - + @@ -553,8 +553,8 @@ - - + + @@ -618,11 +618,11 @@ - + - - - + + + @@ -630,11 +630,11 @@ - + - - + + @@ -643,68 +643,68 @@ - - - guess - - - - + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - + + - + - next five checks out in created units - - - - same as unk_c0 in unit - - made creatures undead, so not sure maybe affliction? - crashed df... - - - + next five checks out in created units + + + + same as unk_c0 in unit + + made creatures undead, so not sure maybe affliction? + crashed df... + + + - - - - - - - probably path - - - - - - - - - + + + + + + + + + + + + + + + + - + diff --git a/df.ui.xml b/df.ui.xml index 0fa88d713..62e91d405 100644 --- a/df.ui.xml +++ b/df.ui.xml @@ -175,14 +175,14 @@ - + noble bookkeeper precision: 10/100/1000/10000/all_accurate - + outpost/hamlet/village/town/city/metropolis (unles that's what the above is) @@ -194,8 +194,8 @@ - - + + @@ -205,7 +205,7 @@ - + @@ -530,11 +530,11 @@ - + - + - + @@ -571,9 +571,9 @@ - - - + + + diff --git a/df.units.xml b/df.units.xml index 7cbafad7a..abec1c4e7 100644 --- a/df.units.xml +++ b/df.units.xml @@ -2251,6 +2251,7 @@ + -- 30 @@ -2261,6 +2262,7 @@ + -- 40 @@ -2270,6 +2272,55 @@ + + -- 50 + + + + + + + + + + + -- 60 + + + + + + + + + + + -- 70 + + + + + + + + + + + -- 80 + + + + + + + + + + + -- 90 + + + diff --git a/df.world-data.xml b/df.world-data.xml index a90112005..1960c41f2 100644 --- a/df.world-data.xml +++ b/df.world-data.xml @@ -66,7 +66,7 @@ - + @@ -574,7 +574,7 @@ - + @@ -661,7 +661,7 @@ - + @@ -691,7 +691,7 @@ - + @@ -702,19 +702,21 @@ - -- v0.40.14: - - - - - - - - -- v0.43.01 - - - - + + + + + + + + + + + + + + + @@ -1017,21 +1019,28 @@ - + + + + + + + + - + - - - - - - - - - - + + + + + + + + + + diff --git a/df.world-site.xml b/df.world-site.xml index 61b12c7b8..c1ed160e8 100644 --- a/df.world-site.xml +++ b/df.world-site.xml @@ -476,8 +476,8 @@ - - + + @@ -560,22 +560,22 @@ - + - - - - + + + + - - + + - + - - + + diff --git a/df.world.xml b/df.world.xml index 091a85f0f..82d31d19b 100644 --- a/df.world.xml +++ b/df.world.xml @@ -300,7 +300,8 @@ - + + @@ -1566,36 +1567,36 @@ The first value in a pair is always less/equal to the higher one, and the first value of the corresponding pair in the next vector element is always greater/equal to the second one of the previous entry. Looks like first/last values for something. - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + DWARF ELF GOBLIN HUMAN - - + + @@ -1604,15 +1605,15 @@ - + - + - - + +