forked from DFHack/df-structures
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchangelog.txt
424 lines (327 loc) · 17.8 KB
/
changelog.txt
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
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
===[[[
This file contains changes specific to the df-structures repo. See
docs/changelog.txt in the dfhack repo for a full description, or
https://docs.dfhack.org/en/latest/docs/Compile.html#build-changelog
NOTE: currently, gen_changelog.txt expects a "Future" section to exist at the
top of this file (even if no changes are listed under it), or you will get a
"Entry without section" error. Also, to maintain proper sorting in the generated
changelogs when making a new release, docs/changelog.txt in the dfhack repo must
have the new release listed in the right place, even if no changes were made in
that repo.
Template for new versions:
## Structures
]]]
# Future
## Structures
- ``plant_flags``: rename ``is_burning``, ``is_drowning``, ``is_dead`` to Bay12 names ``unused_01``, ``season_dead``, ``dead``
- ``job.item_category`` is now ``job.specflag``, contains a union of flag fields, and depends on the job type
- ``slab_engraving_type``: correct order of items (last two were swapped)
- ``world_data``: identify many fields and substructures
# 50.13-r2
# 50.13-r1.1
# 50.13-r1
## Structures
- ``biome_type``: add enum attrs for ``caption`` and ``plant_raw_flags``
# 50.12-r3
## Structures
- name many previously-unknown map-related fields and flag bits
- ``unit_action_data_attack`` (``unit_move_attackst``): identify flags
- ``job_type``: new job class type: "Carving" (for smoothing and detailing)
# 50.12-r2.1
# 50.12-r2
## Structures
- ``plotinfo.hauling``: name fields related to the hauling route panel
- ``plant_tree_info``: define tree body and branch flags
- ``unit``: identify and define many previously unknown fields, types, and enums
- ``activity_event``: identify fields and type values
# 50.12-r1
# 50.11-r7
## Structures
- ``job_skill``: correct ``moodable`` property for several professions
- ``buildings_other``: add correct types for civzone building vectors
# 50.11-r6
## Structures
- ``soundst``: fix alignment
# 50.11-r5
## Structures
- ``occupation``: realigned
- ``service_order_type``: enum defined
- ``service_orderst``: type defined
- ``markup_text_boxst``: updated based on information from Bay12
- ``markup_text_linkst``, ``markup_text_wordst``, ``script_environmentst``: defined
- ``plotinfost``: ``unk23c8_flags`` renamed to ``flags``, updated based on information from Bay12
- ``world_raws``: ``unk_v50_1``, ``unk_v50_2``, ``unk_v50_3`` renamed to ``text_set``, ``music``, ``sound``
- ``soundst``: defined
- ``announcement_alertst``: defined
- ``announcement_alert_type``: enum defined
- ``announcement_type``: added ``alert_type`` enum attribute
- ``alert_button_announcement_id``: now int32_t vector (contains report ids)
- ``viewscreen_choose_start_sitest``: fix structure of warning flags -- convert series of bools to a proper bitmask
- ``feature_init_flags``: more enum values defined
# 50.11-r4
# 50.11-r3
## Structures
- ``burrow``: add new graphics mode texture and color fields
- ``job_item_flags3``: identify additional flags
# 50.11-r2
## Structures
- add new globals: ``translate_name``, ``buildingst_completebuild``
- ``artifact_rumor_locationst``: defined
- ``world_view_mode_type``: defined
- ``viewscreen_worldst``: defined types for ``view_mode`` and ``artifacts_arl`` fields
# 50.11-r1
## Structures
- add new global: ``start_dwarf_count``
# 50.10-r1
# 50.09-r4
## Structures
- Identified a number of previously anonymous virtual methods in ``itemst``
# 50.09-r3
## Structures
- Added ``global_table`` global and corresponding ``global_table_entry`` type
- ``viewscreen_legendsst``: realign structure
- ``viewscreen_new_arenast``: added (first appeared in 50.06)
- ``plotinfo``: name the fields related to tutorial popups
- ``help_context_type``: fix typo in enum name: ``EMBARK_TUTORIAL_CHICE`` -> ``EMBARK_TUTORIAL_CHOICE``
# 50.09-r2
## Structures
- ``build_req_choicest``: realign structure and fix vmethods
- ``squad_orderst``: fix vmethods
# 50.09-r1
## Structures
- ``tiletype_shape``: changed RAMP_TOP and ENDLESS_PIT to not walkable to reflect how scripts actually need these types to be treated
# 50.08-r4
## Structures
- ``abstract_building_libraryst``: initialize unknown variables as DF does
- ``misc_trait_type``: realign
# 50.08-r3
# 50.08-r2
## Structures
- Removed ``steam_mod_manager`` and ``game_extra`` globals. Their contents have been merged back into ``game``.
- ``mod_headerst``: rename ``non_vanilla`` flag to ``vanilla`` to reflect its actual usage
- ``arena_unit``: identify fields related to unit creation
- ``arena_tree``: identify fields related to tree creation
- ``abstract_building_contents``: identify fields and flags related to location item counts
- ``profession``: renamed captions ``Cheese Maker`` to ``Cheesemaker``, ``Bee Keeper`` to ``Beekeeper``, and ``Bone Setter`` to ``Bone Doctor``
# 50.08-r1
## Structures
- convert ``mod_manager`` fields to pointers
# 50.07-r1
## Structures
- identified ``divine_treasure`` and ``encased_horror`` map events
- identified fields in ``deep_vein_hollow``, ``glowing_barrier``, and ``cursed_tomb`` map events
- correct bit size of tree body data
# 50.07-beta2
## Structures
- realigned ``stockpile_settings`` for new "corpses" vector
- realigned ``furniture_type`` enum (added BAG)
# 50.07-beta1
## Structures
- identified two fields related to saves/autosaves to facilitate quicksave implementation
# 50.07-alpha3
## Structures
- ``plot_infost``.``unk_8``: renamed to ``theft_intrigues``. Fields ``unk_1`` thru ``unk_8`` renamed to ``target_item``, ``mastermind_hf``, ``mastermind_plot_id``, ``corruptor_hf``, ``corruptor``, ``corruptee_hf``, ``corruptee``, and ``theft_agreement``. ``unk_1`` renamed to ``item_known_pos``.
- ``specific_ref_type``: Removed ``BUILDING_PARTY``, ``PETINFO_PET``, and ``PETINFO_OWNER`` enum values to fix alignment.
- ``history_eventst``: Removed ``history_event_masterpiece_created_arch_designst`` and related enum value
# 50.07-alpha2
## Structures
- corrected alignment in ``world.status``
- ``dipscript_popup``: ``meeting_holder`` converted from unit pointer into two unit refs ``meeting_holder_actor`` and ``meeting_holder_noble``.
- ``activity_info``: ``unit_actor``, ``unit_noble``, and ``place`` converted from pointers to integer references.
- ``plotinfost``.``equipment``: Converted ``items_unmanifested``, ``items_unassigned``, and ``items_assigned`` vectors from pointers to item refs
- split ``gamest`` into ``gamest`` and ``gamest_extra`` to accommodate steam-specific data in ``gamest.mod_manager``
- identify item vmethod 213 (applies a thread improvements to appropriate items based on an RNG)
- identify various data types related to job completion/cancellation
- identify two anons in ``difficultyst``
# 50.07-alpha1
## Structures
- added missing tiletypes and corrected a few old ones based on a list supplied by Toady
# 50.05-alpha3.1
# 50.05-alpha3
## Structures
- corrected misalignment in ``unitst`` (affecting ``occupation`` and ``adjective``)
- identified some anons in ``unitst`` related to textures (thanks, putnam)
- realigned and fleshed out ``entity_site_link`` (again, thanks, putnam)
- add "hospital" language name category
- remove some no-longer-valid reputation types
- identify a table of daily events scheduled to take place inthe current year
- ``occupation_type``: add enum values for new occupations related to hospitals
- ``item.setSharpness()``: more info about params
- ``building_design``: corrected misalignments
- ``creature_raw_graphics``: corrected misalignments
- identified fields for squads and other military structures
# 50.05-alpha2
## Structures
- corrected misalignment in ``historical_entity``
- partially identified squad-related structures in ``plotinfo`` and corrected position of ``civ_alert_idx`` (does not affect alignment)
- identified two old and one new language name groups
# 50.05-alpha1
## Structures
- Renamed globals to match DF:
- ``ui``: renamed to ``plotinfo``
- ``ui_advmode``: renamed to ``adventure``
- ``ui_build_selector``: renamed to ``buildreq``
- ``ui_sidebar_menus``: renamed to ``game``
- ``building_civzonest``: identify two variables, ``dir_x`` and ``dir_y``, that handle archery range direction.
# 0.47.05-r8
## Structures
- ``unit_action_type_group``: added enum and tagged ``unit_action_type`` entries with its groups for DFHack's new action timer API.
- ``general_refst``: type virtual union member for ``ITEM_GENERAL``
- ``historical_figure_info.T_reputation.unk_2c``: identify ``year`` + ``year_ticks``
- ``itemst``: identify two vmethods related to adding thread improvements to items made of cloth, and label several previously unknown return types
- ``proj_magicst``: correct structure fields (to match 40d)
- ``world``: identify type of a vector (still not known what it's for, but it's definitely an item vector)
# 0.47.05-r7
## Structures
- Eliminate all "anon_X" names from structure fields
- ``army``: change ``squads`` vector type to ``world_site_inhabitant``, identify ``min_smell_trigger``+``max_odor_level``+``max_low_light_vision``+``sense_creature_classes``
- ``cave_column``: identify Z coordinates
- ``cave_column_rectangle``: identify coordinates
- ``embark_profile``: identify reclaim fields, add missing pet_count vector
- ``entity_population``: identify ``layer_id``
- ``feature``: identify "shiftCoords" vmethod, ``irritation_level`` and ``irritation_attacks`` fields
- ``flow_guide``: identify "shiftCoords" vmethod
- ``general_refst``: name parameters on ``getLocation`` and ``setLocation`` vmethods
- ``general_ref_locationst``: name member fields
- ``historical_entity``: confirm ``hostility_level`` and ``siege_tier``
- ``language_name_type``: identify ``ElfTree`` and ``SymbolArtifice`` thru ``SymbolFood``
- ``misc_trait_type``: update auto-decrement markers, remove obsolete references
- ``timed_event``: identify ``layer_id``
- ``ui``: identify actual contents of ``unk5b88`` field, identify infiltrator references
- ``ui_advmode``: identify several fields as containing coordinates
- ``ui_build_selector``: identify ``cur_walk_tag`` and ``min_weight_races``+``max_weight_races``
- ``unitst``: identify ``histeventcol_id`` field inside status2
- ``viewscreen_tradegoodsst``: rename trade_reply ``OffendedAnimal``+``OffendedAnimalAlt`` to ``OffendedBoth``+``OffendedAnimal``
- ``viewscreen_barterst``: name member fields
- ``world_site_inhabitant``: rename ``outcast_id`` and ``founder_outcast_entity_id``, identify ``interaction_id`` and ``interaction_effect_idx``
- ``item``: identify method ``notifyCreatedMasterwork`` that is called when a masterwork is created.
# 0.47.05-r6
## Structures
- ``art_image_elementst``: identify vmethod ``markDiscovered`` and second parameter for ``getName2``
- ``art_image_propertyst``: identify parameters for ``getName``
- ``building_handler``: fix vmethod ``get_machine_hookup_list`` parameters
- ``world.unk_26a9a8``: rename to ``allow_announcements``
- ``vermin``: identify ``category`` field as new enum
# 0.47.05-r5
## Structures
- ``adventure_optionst``: add missing ``getUnitContainer`` vmethod
- ``historical_figure.T_skills``: add ``account_balance`` field
- ``job``: add ``improvement`` field (union with ``hist_figure_id`` and ``race``)
- ``report_init.flags``: rename ``sparring`` flag to ``hostile_combat``
- ``viewscreen_loadgamest``: add missing ``LoadingImageSets`` and ``LoadingDivinationSets`` enum values to ``cur_step`` field
# 0.47.05-r4
## Structures
- ``unit.enemy``: fix definition of ``enemy_status_slot`` and add ``combat_side_id``
- ``historical_figure_info.spheres``: give spheres vector a usable name
# 0.47.05-r3
## Structures
- ``job_item``: identified several fields
- ``worldgen_parms``: moved to new struct type
- ``cursed_tomb``: new struct type
- ``ocean_wave_maker``: new struct type
# 0.47.05-r2
## Structures
- Identified remaining rhythm beat enum values
- ``ui_advmode.interactions``: identified some fields related to party members
- ``ui_advmode_menu``: identified several enum items
- ``ui_advmode``: identified several fields
- ``ui_advmode``: renamed ``wait`` to ``rest_mode`` and changed to an enum with correct values
- ``viewscreen_legendsst.cur_page``: added missing ``Books`` enum item, which fixes some other values
# 0.47.05-r1
## Structures
- ``viewscreen_loadgamest``: renamed ``cur_step`` enumeration to match style of ``viewscreen_adopt_regionst`` and ``viewscreen_savegamest``
- ``viewscreen_savegamest``: identified ``cur_step`` enumeration
- Identified scattered enum values (some rhythm beats, a couple of corruption unit thoughts, and a few language name categories)
# 0.47.05-beta1
## Structures
- Dropped support for 0.47.03-0.47.04
# 0.47.04-r5
## Structures
- ``job``: identified ``order_id`` field
# 0.47.04-r4
## Structures
- ``building_extents_type``: new enum, used for ``building_extents.extents``
- ``world_mountain_peak``: new struct (was previously inline) - used in ``world_data.mountain_peaks``
# 0.47.04-r3
## Structures
- ``history_event_masterpiece_createdst``: fixed alignment, including subclasses, and identified ``skill_at_time``
- ``item_body_component``: fixed some alignment issues and identified some fields (also applies to subclasses like ``item_corpsest``)
- ``stockpile_settings``: removed ``furniture.sand_bags`` (no longer present)
# 0.47.04-r2
## Fixes
- `embark-skills`: fixed an issue with structures causing the ``points`` option to do nothing
## Structures
- Added a new ``<df-other-vectors-type>``, which allows ``world.*.other`` collections of vectors to use the correct subtypes for items
- ``crime``: identified ``witnesses``, which contains the data held by the old field named ``reports``
- ``job_type``: added job types new to 0.47
- ``ui_advmode_menu``: identified some new enum items
- ``plant_raw``: material_defs now contains arrays rather than loose fields
- ``pronoun_type``: new enum (previously documented in field comments)
- ``creature_raw``: renamed ``gender`` to ``sex`` to match the field in ``unit``, which is more frequently used
- ``intrigue``: new type (split out from ``historical_figure_relationships``)
- ``setup_character_info``: fixed a couple alignment issues (needed by `embark-skills`)
- ``items_other_id``: removed ``BAD``, and by extension, ``world.items.other.BAD``, which was overlapping with ``world.items.bad``
# 0.47.04-r1
## Structures
- Added globals: ``cur_rain``, ``cur_rain_counter``, ``cur_snow``, ``cur_snow_counter``, ``weathertimer``, ``jobvalue``, ``jobvalue_setter``, ``interactitem``, ``interactinvslot``, ``handleannounce``, ``preserveannounce``, ``updatelightstate``
- ``agreement_details_data_plot_sabotage``: new struct type, along with related ``agreement_details_type.PlotSabotage``
- ``architectural_element``: new enum
- ``battlefield``: new struct type
- ``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
- ``identity``: renamed ``civ`` to ``entity_id``, identified ``type``
- ``identity_type``: new enum
- ``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
- ``viewscreen_workquota_detailsst``: identified fields
# 0.47.04-beta1
## Structures
- Added an XML schema for validating df-structures syntax
- Added ``divination_set_next_id`` and ``image_set_next_id`` globals
- ``activity_entry_type``: new enum type
- ``adventure_optionst``: identified many vmethods
- ``agreement_details``: identified most fields of most sub-structs
- ``artifact_claim``: identified several fields
- ``artifact_record``: identified several fields
- ``caste_raw_flags``: renamed and identified many flags to match information from Toady
- ``creature_raw_flags``: renamed and identified many flags to match information from Toady
- ``crime_type``: new enum type
- ``dfhack_room_quality_level``: added enum attributes for names of rooms of each quality
- ``entity_site_link_type``: new enum type
- ``export_map_type``: new enum type
- ``historical_entity.flags``: identified several flags
- ``historical_entity.relations``: renamed from ``unknown1b`` and identified several fields
- ``historical_figure.vague_relationships``: identified
- ``historical_figure_info.known_info``: renamed from ``secret``, identified some fields
- ``historical_figure``: renamed ``unit_id2`` to ``nemesis_id``
- ``history_event_circumstance_info``: new struct type (and changed several ``history_event`` subclasses to use this)
- ``history_event_reason_info``: new struct type (and changed several ``history_event`` subclasses to use this)
- ``honors_type``: identified several fields
- ``interaction_effect_create_itemst``: new struct type
- ``interaction_effect_summon_unitst``: new struct type
- ``item``: identified several vmethods
- ``layer_type``: new enum type
- ``plant.damage_flags``: added ``is_dead``
- ``plot_role_type``: new enum type
- ``plot_strategy_type``: new enum type
- ``relationship_event_supplement``: new struct type
- ``relationship_event``: new struct type
- ``specific_ref``: moved union data to ``data`` field
- ``ui_look_list``: moved union fields to ``data`` and renamed to match ``type`` enum
- ``ui_sidebar_menus.location``: added new profession-related fields, renamed and fixed types of deity-related fields
- ``ui_sidebar_mode``: added ``ZonesLocationInfo``
- ``unit_action``: rearranged as tagged union with new sub-types; existing code should be compatible
- ``vague_relationship_type``: new enum type
- ``vermin_flags``: identified ``is_roaming_colony``
- ``viewscreen_justicest``: identified interrogation-related fields
- ``world_data.field_battles``: identified and named several fields