Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 72 73 [74] 75 76 ... 87

Author Topic: Dwarf Therapist v42.1.7 | DF 50.14  (Read 422735 times)

Maul_Junior

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1095 on: December 15, 2022, 09:47:13 pm »

I will say that I would love to have Dwarf Therapist for Premium for Livestock/War/Hunter breeding programs. Being able to see the base value and who to cull/geld is incredibly useful
Logged
Quote from: Meph
I didn't actually say this.

Quote from: smurfingtonthethird
there is nothing funnier than watching a goblin army get assaulted by hundreds of war chickens.

Any new discovery, sufficiently weaponize, is indistinguishable from !!FUN!!

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1096 on: December 16, 2022, 05:00:59 am »

Y'all don't need specialized shearers no matter what you think ANYWAY

Unit labors are still functional just as they were. They're overwritten any time any work details change at all, including adding new ones or unrelated changes to them. Work details live in what DFHack calls ui.hauling.work_details, which in 0.50.03 is at 0x141da1670. It's a vector. You can delete all of them by just resizing the vector to 0 and it'll cause no issues that I can see, besides the obvious "you will never be able to assign miners/woodcutters/hunters without utilities on this save again", and after doing so you can manually reassign labors at will, as long as you set unit->military.pickup_flags.update for woodcutters/miners. With all this info, I think Therapist's labor stuff should be doable this very moment?
« Last Edit: December 16, 2022, 06:35:51 am by Putnam »
Logged

ab9rf

  • Bay Watcher
    • View Profile
    • ab9rf@github
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1097 on: December 16, 2022, 06:08:54 am »

Y'all don't need specialized shearers no matter what you think ANYWAY

Unit labors are still functional just as they were. They're overwritten any time any work details change at all, including adding new ones or unrelated changes to them. Work details live in what DFHack calls ui.hauling.work_details, which in 0.50.03 is at 141E283F. It's a vector. You can delete all of them by just resizing the vector to 0 and it'll cause no issues that I can see and after doing so you can manually reassign labors at will, as long as you set unit->military.pickup_flags.update for woodcutters/miners. With all this info, I think Therapist should be doable this very moment?
no way that address is correct, first of all it's too short (DF addresses on Win64 are always _9_ hex digits starting with 0x14) and second it ends with F and MSVC always aligns vectors on 8-byte boundaries so it has to be either 0 or 8.
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1098 on: December 16, 2022, 06:09:50 am »

Yeah, you're right, and I should probably just include it in the ini, haha.

Code: [Select]
[info]
checksum=0x639777b1
version_name=v0.50.03-steam SDL win64
complete=true

[addresses]
cur_year_tick=0x141d84818
current_year=0x141d84824
dwarf_civ_index=0x141da1670
dwarf_race_index=0x141da1670
fortress_entity=0x141da1670
historical_entities_vector=0x141deb270
creature_vector=0x141deb270
active_creature_vector=0x141deb270
weapons_vector=0x141deb270
shields_vector=0x141deb270
quivers_vector=0x141deb270
crutches_vector=0x141deb270
backpacks_vector=0x141deb270
ammo_vector=0x141deb270
flasks_vector=0x141deb270
pants_vector=0x141deb270
armor_vector=0x141deb270
shoes_vector=0x141deb270
helms_vector=0x141deb270
gloves_vector=0x141deb270
artifacts_vector=0x141deb270
squad_vector=0x141deb270
activities_vector=0x141deb270
fake_identities_vector=0x141deb270
poetic_forms_vector=0x141deb270
musical_forms_vector=0x141deb270
dance_forms_vector=0x141deb270
occupations_vector=0x141deb270
world_data=0x141deb270
material_templates_vector=0x141deb270
inorganics_vector=0x141deb270
plants_vector=0x141deb270
races_vector=0x141deb270
itemdef_weapons_vector=0x141deb270
itemdef_trap_vector=0x141deb270
itemdef_toy_vector=0x141deb270
itemdef_tool_vector=0x141deb270
itemdef_instrument_vector=0x141deb270
itemdef_armor_vector=0x141deb270
itemdef_ammo_vector=0x141deb270
itemdef_siegeammo_vector=0x141deb270
itemdef_glove_vector=0x141deb270
itemdef_shoe_vector=0x141deb270
itemdef_shield_vector=0x141deb270
itemdef_helm_vector=0x141deb270
itemdef_pant_vector=0x141deb270
itemdef_food_vector=0x141deb270
language_vector=0x141deb270
translation_vector=0x141deb270
colors_vector=0x141deb270
shapes_vector=0x141deb270
reactions_vector=0x141deb270
base_materials=0x141deb270
all_syndromes_vector=0x141deb270
events_vector=0x141deb270
historical_figures_vector=0x141deb270
world_site_type=0x0080
active_sites_vector=0x00048390
gview=0x1412ab910
work_details=0x141da1670
viewscreen_setupdwarfgame_vtable=0x1411b9e08

[offsets]
word_table=0x0050

[word_offsets]
base=0x0000
noun_singular=0x0020
noun_plural=0x0020
adjective=0x0020
verb=0x0020
present_simple_verb=0x0020
past_simple_verb=0x0020
past_participle_verb=0x0020
present_participle_verb=0x0020
first_name=0x0000
nickname=0x0020
words=0x0040
word_type=0x005c
language_id=0x006c

[general_ref_offsets]
ref_type=0x0010

[race_offsets]
name_singular=0x0020
name_plural=0x0020
adjective=0x0020
baby_name_singular=0x0080
baby_name_plural=0x0080
child_name_singular=0x00c0
child_name_plural=0x00c0
pref_string_vector=0x0148
castes_vector=0x0178
pop_ratio_vector=0x0190
materials_vector=0x01f0
flags=0x01a8
tissues_vector=0x0208

[caste_offsets]
caste_name=0x0020
caste_descr=0x0220
caste_trait_ranges=0x057c
caste_phys_att_ranges=0x11f0
baby_age=0x0474
child_age=0x0474
adult_size=0x0474
flags=0x06a8
body_info=0x06c0
skill_rates=0x08c0
caste_att_rates=0x11f0
caste_att_caps=0x11f0
shearable_tissues_vector=0x16c0
extracts=0x39a8

[hist_entity_offsets]
histfigs=0x00e0
beliefs=0x0128
squads=0x11b8
positions=0x10b0
assignments=0x10b0
assign_hist_id=0x0004
assign_position_id=0x000c
position_id=0x0020
position_name=0x0098
position_female_name=0x00d8
position_male_name=0x0118

[hist_figure_offsets]
hist_race=0x0002
hist_name=0x0038
id=0x00e0
hist_fig_info=0x0130
reputation=0x0058
current_ident=0x0030
fake_name=0x0008
fake_birth_year=0x0094
fake_birth_time=0x0098
kills=0x0030
killed_race_vector=0x0018
killed_undead_vector=0x0090
killed_counts_vector=0x00a8

[hist_event_offsets]

[item_offsets]
artifact_id=0x0000
artifact_name=0x0008

[item_subtype_offsets]

[item_filter_offsets]
item_subtype=0x0002
mat_class=0x0004
mat_type=0x0006
mat_index=0x0008

[weapon_subtype_offsets]

[armor_subtype_offsets]
layer=0x0010

[material_offsets]
solid_name=0x00b8
liquid_name=0x00b8
gas_name=0x00b8
powder_name=0x00b8
paste_name=0x00b8
pressed_name=0x00b8
flags=0x0290
reaction_class=0x04a8
prefix=0x0548
inorganic_materials_vector=0x01a8
inorganic_flags=0x0038

[plant_offsets]
name=0x0050
name_plural=0x0070
name_leaf_plural=0x0110
name_seed_plural=0x00d0
materials_vector=0x0298
flags=0x0040

[descriptor_offsets]
color_name=0x0050
shape_name_plural=0x0070

[health_offsets]
parent_id=0x0040
body_part_flags=0x0048
layers_vector=0x0058
number=0x0084
names_vector=0x0090
names_plural_vector=0x00a8
layer_tissue=0x0020
layer_global_id=0x0068
tissue_name=0x0030
tissue_flags=0x0020

[dwarf_offsets]
syn_sick_flag=0x004c
layer_status_vector=0x0048
affection_level=0x000c
inventory_item_mode=0x0008
inventory_item_bodypart=0x000a

[syndrome_offsets]
cie_effects=0x0020
syn_classes_vector=0x00c8

[unit_wound_offsets]
parts=0x0008
id=0x0004
layer=0x0006
general_flags=0x002c
flags1=0x0064
flags2=0x0068
effects_vector=0x0048
bleeding=0x006c
pain=0x0070
cur_pen=0x0098
max_pen=0x009a

[soul_details]
name=0x0008
orientation=0x0088
mental_attrs=0x00ac
skills=0x0218
preferences=0x0230
personality=0x0248
beliefs=0x0000
emotions=0x0030
goals=0x0048
goal_realized=0x0028
traits=0x0080
stress_level=0x0120
needs=0x0138
current_focus=0x0180
undistracted_focus=0x0184
combat_hardened=0x0130
likes_outdoors=0x012c

[need_offsets]
id=0x0000
deity_id=0x0004
focus_level=0x0008
need_level=0x000c

[emotion_offsets]
emotion_type=0x0000
strength=0x0008
thought_id=0x000c
sub_id=0x0010
level=0x0014
year=0x0020
year_tick=0x0024

[job_details]
id=0x0014
mat_type=0x0030
mat_index=0x0034
mat_category=0x0048
sub_job_id=0x0050
reaction=0x0020
reaction_skill=0x0080

[squad_offsets]
id=0x0000
name=0x0008
alias=0x0080
members=0x00a0
orders=0x00b8
schedules=0x00d0
sched_size=0x0058
sched_orders=0x0028
sched_assign=0x0040
alert=0x00e8
carry_food=0x01b8
carry_water=0x01ba
ammunition=0x0140
ammunition_qty=0x000c
quiver=0x0168
backpack=0x016c
flask=0x0170
armor_vector=0x0080
helm_vector=0x0080
pants_vector=0x0080
gloves_vector=0x0080
shoes_vector=0x0080
shield_vector=0x0080
weapon_vector=0x0080
uniform_item_filter=0x0004
uniform_indiv_choice=0x0030

[activity_offsets]
activity_type=0x0004
events=0x0008
perf_histfig=0x000c

[art_offsets]
name=0x0008

[viewscreen_offsets]
view=0x0008

[valid_flags_2]
size=0

[invalid_flags_1]
size=9
1\name="a skeleton"
1\value=0x00002000
2\name="a merchant"
2\value=0x00000040
3\name="outpost liaison, diplomat, or artifact requesting visitor"
3\value=0x00000800
4\name="an invader or hostile"
4\value=0x00020000
5\name="an invader or hostile"
5\value=0x00080000
6\name="resident, invader or ambusher"
6\value=0x00600000
7\name="part of a merchant caravan"
7\value=0x00000080
8\name="inactive, currently not in play"
8\value=0x00000002
9\name="marauder"
9\value=0x00000010

[invalid_flags_2]
size=5
1\name="killed, Jim."
1\value=0x00000080
2\name="from the Underworld. SPOOKY!"
2\value=0x00040000
3\name="resident"
3\value=0x00080000
4\name="uninvited visitor"
4\value=0x00400000
5\name="visitor"
5\value=0x00800000

[invalid_flags_3]
size=1
1\name="a ghost"
1\value=0x00001000

It currently doesn't attach for some reason or another, I'm really not quite sure (the logging isn't terribly thorough).
« Last Edit: December 16, 2022, 06:14:10 am by Putnam »
Logged

Clément

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1099 on: December 16, 2022, 08:26:04 am »

I don't know how you made it, but your memory layout is obviously wrong, most of the vectors have the same address. Here is one that partially works.
Logged

ab9rf

  • Bay Watcher
    • View Profile
    • ab9rf@github
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1100 on: December 16, 2022, 02:50:21 pm »

I don't know how you made it, but your memory layout is obviously wrong, most of the vectors have the same address. Here is one that partially works.
my guess is it's from dfhack's export-dt-ini script. Since dfhack only barely runs with 50.03, I'm not the least bit surprised that this script doesn't produce meaningful results yet.
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1101 on: December 17, 2022, 12:15:21 am »

Yeah, I was a bit manic last night and neglected to mention that I'm mostly posting that because it has just enough info to get a barebones version working if you tear out a bunch of the non-labor-management stuff.

Calcharger

  • Escaped Lunatic
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1102 on: December 19, 2022, 03:14:39 pm »

Figured I'd pop in and offer assistance to the steam version project. I'm a novice python programmer and I've been working on something similar for the steam version, which you can find my post here:

http://www.bay12forums.com/smf/index.php?topic=180875.0

Not sure if Python code is helpful, but if it is I'd gladly stop working on my script and help you with yours. I'm self taught, fairly novice, but I'm willing to put in hours on learning so long as you are patient with me.
Logged

Clément

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1103 on: December 19, 2022, 04:30:09 pm »

A large part of the internal structures is already known. You don't need to start from scratch. You should check df-structures and its documentation.

If you want to write scripts for manipulating DF memory, DFHack (forum thread) is the perfect tool. Although I'm not sure how easy it is to build it right now for 0.50 (but certainly easier than starting from scratch on your own).
Logged

TDE

  • Escaped Lunatic
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1104 on: December 19, 2022, 05:34:11 pm »

Just want to throw in my two cents.

For me, one primary use of Dwarf Therapist has always been its organized attribute list and citizen sorting capability.

With the Steam release, being able to assign roles may not be as important, but being able to sort through all the available information is still very valuable.
Logged

AriRashkae

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1105 on: December 20, 2022, 07:52:18 pm »

Just want to throw in my two cents.

For me, one primary use of Dwarf Therapist has always been its organized attribute list and citizen sorting capability.

With the Steam release, being able to assign roles may not be as important, but being able to sort through all the available information is still very valuable.

Agreed, even if it was limited to the animals, being able to sort through and nickname (or geld or butcher) them at a glance would make my livestock management so much simpler
Logged

IronEleven

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1106 on: December 20, 2022, 11:35:03 pm »

Yeah, even a read-only version of Dwarf Therapist would be nice, I miss seeing who's missing what clothes.
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1107 on: December 21, 2022, 03:52:32 am »

Yeah, even a read-only version of Dwarf Therapist would be nice, I miss seeing who's missing what clothes.

You can see that on the preview sprites now

chris_v

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1108 on: December 21, 2022, 02:22:09 pm »

OK I just had to go through 62 dwarves one by one to figure out who is suitable for the military. And that was with the DF menus which have no nested windows and no back button, so that every time you are finished looking at one dwarf you have to start through the sequence of menus from the beginning to reach the next one. Oh, and you'd better remember your place!

I do not want to nag people that do things for me on volunteer basis, but it would be so great if someone could get dwarf therapist working.
Logged

Clément

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist v41.2.4 | DF 0.47.05
« Reply #1109 on: December 21, 2022, 02:55:57 pm »

If you cannot wait, you may try this memory layout (save in data/memory_layouts/windows) and this game_data.ini (save in data directory). Some data may be correct (skills, attributes, personality facets, ...) but don't trust too much in it. Also existing gridviews may be incorrect (e.g. skill not matching the column title).
Logged
Pages: 1 ... 72 73 [74] 75 76 ... 87