Bay 12 Games Forum

Dwarf Fortress => DF Modding => Utilities and 3rd Party Applications => Topic started by: Clément on November 27, 2017, 09:05:52 am

Title: Dwarf Therapist v42.1.6 | DF 50.13
Post by: Clément on November 27, 2017, 09:05:52 am
Dwarf Therapist – 42.1.6/b]

Home page (https://github.com/Dwarf-Therapist/Dwarf-Therapist/) – Releases (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases) – Changelog (https://raw.githubusercontent.com/Dwarf-Therapist/Dwarf-Therapist/master/CHANGELOG.txt)

Compatible with Dwarf Fortress from 50.04 to 50.13 (some versions may be missing memory layout depending on the operating system).

Download the latest release here (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/latest)

DFFD Alternative Downloads

Linux packages and repositories

Dwarf Therapist Guide: Github Repository (https://github.com/Dwarf-Therapist/Manual) – Latest Release (https://github.com/Dwarf-Therapist/Manual/releases/latest)



About labor management

If you don't want to use work details and set labors manually instead, there is a "Allow labor changes" button in the tool bar. It disables the in-game work details so you can keep your manual labor assignments. But it is not saved. You may lose your labor assignments if you don't re-enable it after restarting the game. I recommend using DFHack to set it on startup: save this file (https://raw.githubusercontent.com/Dwarf-Therapist/Dwarf-Therapist/master/dist/dfhack-config/init/dfhack-dwarftherapist-labors.init) in DFHack init config directory (dfhack-config/init (https://docs.dfhack.org/en/latest/docs/Core.html#init-files)).



For Dwarf Fortress 0.42.06 to 0.47.05, use Dwarf Therapist 41.2.5 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.2.5).
Spoiler (click to show/hide)



Older versions can be found in Splinterz's topic (http://www.bay12forums.com/smf/index.php?topic=122968.0).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on November 27, 2017, 10:29:51 am
New version released: 39.0.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.0.0)

Add support for DF 0.44.02.

Changelog:
Notes:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: zakarum on November 27, 2017, 11:00:11 am
Cheers and thanks a lot for this.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Boogeyman on November 27, 2017, 11:59:16 am
Praise the gods!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Seleucian on November 27, 2017, 12:01:59 pm
many thanks for the update!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: SQman on November 27, 2017, 02:08:43 pm
Wow, already? Didn't expect to see this updated this soon.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: eldeifo on November 27, 2017, 03:11:19 pm
ohhhh thank you, the therapist arrived just in time. i started to go nuts without it and without dfhack 8).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Buttery_Mess on November 27, 2017, 04:57:32 pm
Cheers, thanks for this.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Ggobs on November 27, 2017, 05:46:46 pm
ptw also to grab download when I get home
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PeridexisErrant on November 27, 2017, 06:00:16 pm
Just hours after I updated my pack with the last memory layout!

Thanks, Clément - many of us appreciate your work on Therapist  :D
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PatrikLundell on November 27, 2017, 06:29:03 pm
Just hours after I updated my pack with the last memory layout!

Thanks, Clément - many of us appreciate your work on Therapist  :D
It's because you didn't do your release incantation correctly: You just mentioned Toady, but not Clément or other tool maintainers ;)
And I'm happy for the efforts provided by all involved!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Alpaq on November 27, 2017, 07:16:10 pm
Good job with quick going official and new stuff!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Cloudless on November 27, 2017, 07:41:55 pm
Is there any way to filter out petitioners who are not citizens yet (monster slayers in 'u' screen).  They show as citizens in DF but I don't think they're supposed to be.  The wiki says they can become citizens in 2 years.  You can't change their jobs or put them in squads in-game, but therapist appears to allow this.  I haven't tried it, in case it is game breaking.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on November 28, 2017, 04:13:41 am
Just hours after I updated my pack with the last memory layout!

Thanks, Clément - many of us appreciate your work on Therapist  :D
You are not missing much. The only changes from 38.1 that would affect your pack are cosmetic (otherwise it is mostly mixed architecture or linux changes). This was a fast release with not much testing, they may be need for fixes soon.

Is there any way to filter out petitioners who are not citizens yet (monster slayers in 'u' screen).  They show as citizens in DF but I don't think they're supposed to be.  The wiki says they can become citizens in 2 years.  You can't change their jobs or put them in squads in-game, but therapist appears to allow this.  I haven't tried it, in case it is game breaking.

Doesn't the "Don't Display Visitors/Guests" option (general tab) take care of that? Jobs should not be allowed if you do not have enable the cheat option "Allow Labor Setting on Anyone" (general tab too). Maybe 0.44.02 broke the test for citizenship. I did not check that.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on November 28, 2017, 09:26:37 am
Does anyone know the meaning of the "item_type" value in the "[item_offsets]" section of memory layouts? In DFHack script, it is hard coded to 1 for all OS except OSX where it is 4. I cannot find any use of it in DT source code.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Amostubal on November 28, 2017, 09:27:51 am
PTW!  good job Clement!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: billybobfred on November 28, 2017, 11:31:03 am
"Could not check for new releases due to network inaccessibility"

I'm like, 80% sure that this is just Windows 10 being paranoid about letting unknown apps have network access, but I don't recall off hand how to fix it.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Bumber on November 28, 2017, 01:18:13 pm
I don't remember if this is a known bug, but naming two sets the same thing in the grid view editor causes issues. They become the same entry and contain the same info and get deleted together.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: nathanbibb on November 28, 2017, 04:03:33 pm
I've been out of the game for a while, but I don't think I've seen memory layouts for Linux since before 43.05.

DT 39.0 compiled and built fine on my Fedora box, but I'm stumped on getting it connected to DF.  Any pointers?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: LexJackle on November 28, 2017, 05:54:15 pm
How do I get this working on OSX? When I download the source and go into osx--> Templates and try to launch the Dwarf therapist from there, I get 'you can't open the application 'dwarf thereapist' because it may be damaged or incomplete.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Kobold6 on November 28, 2017, 06:11:09 pm
Running in Windows 7 64bit, but rather not running. The process launches and doesn't bring up an interface, and sits in the background as a 4,040k process.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Button on November 28, 2017, 10:56:06 pm
PTW
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Cloudless on November 29, 2017, 06:36:04 pm

Is there any way to filter out petitioners who are not citizens yet (monster slayers in 'u' screen).  They show as citizens in DF but I don't think they're supposed to be.  The wiki says they can become citizens in 2 years.  You can't change their jobs or put them in squads in-game, but therapist appears to allow this.  I haven't tried it, in case it is game breaking.

Doesn't the "Don't Display Visitors/Guests" option (general tab) take care of that? Jobs should not be allowed if you do not have enable the cheat option "Allow Labor Setting on Anyone" (general tab too). Maybe 0.44.02 broke the test for citizenship. I did not check that.

At least in my save, checking off "Don't Display Visitors/Guests" doesn't take anyone off the list.  Accepted petitioners are in the "citizen" list in-game, but clearly aren't citizens as you can't do anything with them.  I think you can edit them in dwarf therapist even without checking the cheat option?  It looks like there is a bug or a missing category for them.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Icefire2314 on November 30, 2017, 12:46:24 am
oh my god i can play df again
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on November 30, 2017, 12:23:32 pm
I don't remember if this is a known bug, but naming two sets the same thing in the grid view editor causes issues. They become the same entry and contain the same info and get deleted together.
I did not know it at least, so thanks for reporting. More generally, feel free to report old bugs that still exists even if they were reported in the old thread (but lost in the discussion) or splintermind repo issues (I can't clone this as easily as the code, and I don't know what is still relevant anyway).

I've been out of the game for a while, but I don't think I've seen memory layouts for Linux since before 43.05.

DT 39.0 compiled and built fine on my Fedora box, but I'm stumped on getting it connected to DF.  Any pointers?
Running which version of DF? 0.44.02 does not have a memory layout yet. 0.43.05 should work, post the output of DT in this case.

How do I get this working on OSX? When I download the source and go into osx--> Templates and try to launch the Dwarf therapist from there, I get 'you can't open the application 'dwarf thereapist' because it may be damaged or incomplete.
Sorry, I don't have builds for OSX, nor specific instructions on how to make them. I did not update any of distribution script, and I expect them to be currently broken (build system changed since splinterz from qmake to cmake).

Running in Windows 7 64bit, but rather not running. The process launches and doesn't bring up an interface, and sits in the background as a 4,040k process.
No error message? Does it create a log/run.log file in DT directory? If so, post its content.

At least in my save, checking off "Don't Display Visitors/Guests" doesn't take anyone off the list.  Accepted petitioners are in the "citizen" list in-game, but clearly aren't citizens as you can't do anything with them.  I think you can edit them in dwarf therapist even without checking the cheat option?  It looks like there is a bug or a missing category for them.
Could you upload your save somewhere (DFFD (http://dffd.bay12games.com/), for example)? I don't have a 0.44.02 fortress advanced enough to test all the features.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Silverwing on November 30, 2017, 12:36:24 pm
Do we know if there's any way to ping a mod and close the old thread so that no one mistakingly necros it and this one can stay the top one?


Also, thank you SO much it is nigh impossible to play this game without DT so I'm really looking forward to testing out the new shit.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Kobold6 on November 30, 2017, 07:07:07 pm
Running in Windows 7 64bit, but rather not running. The process launches and doesn't bring up an interface, and sits in the background as a 4,040k process.
No error message? Does it create a log/run.log file in DT directory? If so, post its content.

Not even a log file. Are there more diagnostics I can do for you?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: lethosor on November 30, 2017, 11:59:03 pm
Does anyone know the meaning of the "item_type" value in the "[item_offsets]" section of memory layouts? In DFHack script, it is hard coded to 1 for all OS except OSX where it is 4. I cannot find any use of it in DT source code.
That dates back to https://github.com/DFHack/scripts/commit/27967e59424db5fea75d874cbf0b362cf526ac5f. I don't know anything about it, but if removing it doesn't break DT, it's probably fine to remove. I can't imagine that that works everywhere, because Linux and OS X should have the same offset for that.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Moonstone_Flower on December 01, 2017, 05:02:10 pm
What are the direct dependencies for building?  Debian Jessie here(with backports).  Saying only "Qt5"(as on the git repo) is, unfortunately, unhelpful, and cmake continues to complain about QML.  I've been reduced to trying random packages in the hopes that I'll find whatever your cmake scripts want, but have had no success thus far.

P.S.  qtbase5-dev and qtbase5-dev-tools are already installed, along with the Widgets and QML module packages.


Edit:
Found the answer, finally, two days after starting(and, as it turns out, immediately after posting this... sigh):  qtdeclarative5-dev.  Please mention the dependencies in either the readme or a 'COMPILING' file.

Edit2:  Fun...  Build error.
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 01, 2017, 07:36:01 pm
The readme says "Qt5 (with Widgets and QML modules)". There was a BUILDING.rst, but I removed it since it was outdated, I need to rewrite it.

You need to have gcc 5 or newer to compile DT. Either find a way to install it on debian jessie or compile from another distribution. I am currently experimenting with making AppImage packages for DT. If I build them from ubuntu trusty (it has a ppa (https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test?field.series_filter=trusty) for more recent compilers), I think it should work on debian jessie: both use glibc 2.19.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Moonstone_Flower on December 01, 2017, 10:46:04 pm
The readme says "Qt5 (with Widgets and QML modules)".

With no mention of "qtdeclarative5-dev" whatsoever, which is necessary, but not pulled in by the other packages as a dep nor as a recommend.

You need to have gcc 5 or newer to compile DT.

Ah, bugger.  Unfortunately, it isn't in backports.  Guess I'll take a stab at it from Gentoo, assuming I can map out the differences in DEB->EBUILD names.

P.S.  If any of this comes across as harsh, please know that it isn't intended as such.  I just have no idea how to not sound like that.  :(
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: feelotraveller on December 02, 2017, 12:18:31 am
The readme says "Qt5 (with Widgets and QML modules)".

With no mention of "qtdeclarative5-dev" whatsoever, which is necessary, but not pulled in by the other packages as a dep nor as a recommend.

It took me a little while (certainly not 2 days!) to figure this out recently.  Fortunately my distro subtitled "qt5-declarative" with "Classes for QML and JavaScript languages" so searching yielded good results quickly.  That said it is probably worth mentioning since that's two of us now.  :)

You need to have gcc 5 or newer to compile DT.

Ah, bugger.  Unfortunately, it isn't in backports.  Guess I'll take a stab at it from Gentoo, assuming I can map out the differences in DEB->EBUILD names.

P.S.  If any of this comes across as harsh, please know that it isn't intended as such.  I just have no idea how to not sound like that.  :(

A quick search revealed that gcc 5 used to be in testing for jessie but has been moved back to unstable a while ago.  No experience with Debian but could pulling gcc 6.1 (i think) from Debian Stretch be another possibility (or even bite the bullet and migrate to stretch)?

As for build instructions I have been using those posted by Hello71 in the previous thread.  I reproduce them here in case they might help someone in the meantime:

Code: [Select]
git clone https://github.com/Dwarf-Therapist/Dwarf-Therapist.git
mkdir Dwarf-Therapist-build
cd Dwarf-Therapist-build
cmake ../Dwarf-Therapist
ln -s ../Dwarf-Therapist/share .
make -j$(nproc)
make install

The "make install" is optional since you can run the 'shared library' directly from a terminal. 

You may well need an additional step, depending on your distribution, to allow DT to interact with DF:

Code: [Select]
sudo setcap cap_sys_ptrace=ep /path/to/DwarfTherapist
p.s. Thankyou Clément for herding us cats.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Moonstone_Flower on December 02, 2017, 02:00:12 am
It took me a little while (certainly not 2 days!) to figure this out recently.  Fortunately my distro subtitled "qt5-declarative" with "Classes for QML and JavaScript languages" so searching yielded good results quickly.  That said it is probably worth mentioning since that's two of us now.  :)

I feel the need to point out that it was two days since beginning to work on it, not two full days of effort.

For me, the summary string for the package is completely different, and the full descriptions are stripped.  I only found the package name by the grace of the old thread.

A quick search revealed that gcc 5 used to be in testing for jessie but has been moved back to unstable a while ago.  No experience with Debian but could pulling gcc 6.1 (i think) from Debian Stretch be another possibility (or even bite the bullet and migrate to stretch)?

Unfortunately, no.  I'm actually using Devuan for reasons, so migrating to pure Debian is a no-go.  For debian itself, both are viable and easy options.

As for build instructions I have been using those posted by Hello71 in the previous thread.  I reproduce them here in case they might help someone in the meantime:

Code: [Select]
git clone https://github.com/Dwarf-Therapist/Dwarf-Therapist.git
mkdir Dwarf-Therapist-build
cd Dwarf-Therapist-build
cmake ../Dwarf-Therapist
ln -s ../Dwarf-Therapist/share .
make -j$(nproc)
makeinstall

The makeinstall is optional since you can run the 'shared library' directly from a terminal. 

You may well need an additional step, depending on your distribution, to allow DT to interact with DF:

Code: [Select]
sudo setcap cap_sys_ptrace=ep /path/to/DwarfTherapist
p.s. Thankyou Clément for herding us cats.

I second that.  Thank you for your work and patience, Clément!  Miauuu  * Sits on Clément's keyboard

P.S.  I should point out that the command is "make install", not "makeinstall", unless you have "makeinstall" aliased.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: feelotraveller on December 02, 2017, 02:25:59 am
P.S.  I should point out that the command is "make install", not "makeinstall", unless you have "makeinstall" aliased.

Fixed.  Thank you.

Is 'ascii' not a possibility?  (Which is my OT way of saying, tell me more about this Devuan thing.  ;))
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 02, 2017, 04:54:37 am
Package names change across distros. So I am being generic and I use the name from Qt: Qt QML Module (http://doc.qt.io/qt-5/qtqml-index.html) (not to be confused with with QML Modules (http://doc.qt.io/qt-5/qtqml-modules-topic.html) ???). Qt Declarative (http://doc.qt.io/qt-4.8/qtdeclarative-module.html) was the old Qt4 name.

In the same manner, I say "C++ compiler with C++14 support", that means gcc 5 or newer (https://gcc.gnu.org/projects/cxx-status.html#cxx14) if you use gcc, but that could be another compiler. By the way, I did not think about it yesterday, but clang 3.5 (https://packages.debian.org/jessie/clang-3.5) is in Debian repo, it should support C++14 since 3.4 (https://clang.llvm.org/cxx_status.html) (I don't know if that is necessary for you: with travis (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/.travis.yml#L24), I had to install the libc++-dev package and export CXXFLAGS="-stdlib=libc++ $CXXFLAGS" for compiling with clang++).

A BUILDING.rst should contains more detailed instructions but that requires work. I'll add the most used distributions I know (debian, ubuntu, fedora), other systems will have to come from other contributors. You chose to use an exotic distribution, expect to have to solve problems on you own (and if you succeed, consider explaining what you did, that could help others).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 02, 2017, 09:34:38 am
Try this AppImage (https://framadrop.org/r/XnuIsGlU4A#n2di0P55X++wdV+5ZWXYFeLB57+wBc2HVLCZhFFjYe4=), built with ubuntu trusty (14.04) and gcc 6. Download the file, add the execute permission and run it.

setcap does not seem to work well with AppImage, so you will have to run "sudo sysctl kernel.yama.ptrace_scope=0" before starting DT (or make it permanent in sysctl.conf).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: salajander on December 02, 2017, 01:29:52 pm
I've compiled and uploaded a build of 39.0.0 for macOS to DFFD: http://dffd.bay12games.com/file.php?id=13265
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Moonstone_Flower on December 02, 2017, 03:54:58 pm
P.S.  I should point out that the command is "make install", not "makeinstall", unless you have "makeinstall" aliased.

Fixed.  Thank you.

Is 'ascii' not a possibility?  (Which is my OT way of saying, tell me more about this Devuan thing.  ;))

No clue.  I'm still relatively new to Devuan's release system beyond Jessie.

Package names change across distros. So I am being generic and I use the name from Qt: Qt QML Module (http://doc.qt.io/qt-5/qtqml-index.html) (not to be confused with with QML Modules (http://doc.qt.io/qt-5/qtqml-modules-topic.html) ???). Qt Declarative (http://doc.qt.io/qt-4.8/qtdeclarative-module.html) was the old Qt4 name.

*Screams incoherently*

In the same manner, I say "C++ compiler with C++14 support", that means gcc 5 or newer (https://gcc.gnu.org/projects/cxx-status.html#cxx14) if you use gcc, but that could be another compiler. By the way, I did not think about it yesterday, but clang 3.5 (https://packages.debian.org/jessie/clang-3.5) is in Debian repo, it should support C++14 since 3.4 (https://clang.llvm.org/cxx_status.html) (I don't know if that is necessary for you: with travis (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/.travis.yml#L24), I had to install the libc++-dev package and export CXXFLAGS="-stdlib=libc++ $CXXFLAGS" for compiling with clang++).

I came back today wondering about clang! (I'm completely unfamiliar with it)  I'll give that a stab later, thanks for the heads-up.

You chose to use an exotic distribution [...]

Debian's exotic now?  The difference between Debian and Devuan is that Devuan has systemd ripped out.  Gentoo and Arch are more exotic(and if we're using the logic of "changes == exotic", Ubuntu is even more so, using a Debian base and doing extreme modifications to it).  I'd expect issues in Gentoo, not so much in Debian(and, by extension, Devuan).
You know what, I'm not getting into the init war, and especially not here(this and the following are why I don't mention Devuan unless it is unavoidable).  For all practical purposes beyond init system configuration, Devuan Jessie == Debian Jessie.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 03, 2017, 05:08:51 am
Experimental memory layouts for 0.44.02 on linux are available: 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02_i386.ini), 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02.ini).

Edit: also osx 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/osx/v0.44.02_osx32.ini) (untested).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: feelotraveller on December 03, 2017, 07:50:46 am
Just for clarity - the linux32 ini should be saved as "v0.44.02_i386.ini" ?

I'll try to find some time to build/test in next day.  Still catching up from a week and half away...  :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 03, 2017, 10:23:27 am
The file name can be anything as long as it has a .ini extension.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: LexJackle on December 03, 2017, 01:30:19 pm
I've compiled and uploaded a build of 39.0.0 for macOS to DFFD: http://dffd.bay12games.com/file.php?id=13265
Thank you so much. I can't play DF without therapist.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: rothen on December 03, 2017, 02:44:07 pm
Experimental memory layouts for 0.44.02 on linux are available: 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02_i386.ini), 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02.ini).
Praise Armok! Thank you so much; I've been avoiding playing 44.02 until DT is out for it. I can live without DFHack, but without Therapist the game is unplayable.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: feelotraveller on December 03, 2017, 03:48:10 pm
Got caught up with some other stuff, and haven't got past the embark screen yet but...

Something is going on with the cell size/padding that I don't like.  In a way I'm hoping it's a bug or something strange just happening at my end.  But I suspect not.  The most obvious symptom is that the columns are now much fatter.  I had my custom roles gridview tuned so that it just fitted on my screen (23" at 1920x1080) and had quite a ways to go with reducing the cell size (if my eyes were able to still read ;)) but now it goes way over.  In two parts:


(https://s2.postimg.org/c9mvpyqc9/Screenshot_2017-12-04_06-48-59.png) (https://postimages.org/)

(https://s2.postimg.org/bk43dm589/Screenshot_2017-12-04_06-49-14.png) (https://postimages.org/)


At a quick guesstimate the columns are 1 1/3 to 1 1/2 as wide as they used to be with moderate settings however this is with Cell Size 4px and Cell Padding 1px - as small as it can be gotten.  (For some reason Cell Padding 0px increases size slightly.)  It seems like increasing cell size might be affecting the entire screen/gridview rather than each cell?  Anyway it increases trivially whereas it used to make a significant size difference.

I also experience a glitch if I reduce the cell size after scrolling the screen to the right.  It is graphical only and disappears after changing gridviews or scrolling completely left.  It redraws even smaller if reduced sizes are again entered, and enlarges somewhat if they are increased but still stays markedly squashed.


(https://s2.postimg.org/9sb4ipe5l/Screenshot_2017-12-04_06-53-01.png) (https://postimages.org/)


The aim used to be to keep the full labours gridview on one screen at default cell size for a moderate size screen (these days that's probably a big laptop screen).  Basically to be able to see all the columns in a gridview without scrolling. The columns should be as skinny as reasonably possible (or at least modifiable through cell size to achieve that aim given screen size and eyesight).  Similarly the rows (that aren't affected nearly as badly right now) are best kept as small as possible for later game ability to see more dwarfs at one glance. 

Apologies if I'm preaching to the converted.  If it was a conscious decision let's (all) discuss it.

Quick edit: I forgot to mention that I noticed multiple repeats of
Code: [Select]
QPainter::begin: Paint device returned engine == 0, type: 3
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted
in the terminal.  Not sure if it's related.  Oh and the report is from a linux 64 build from a few hours ago, in case it matters.

Not so quick edit: sorry for third bite of the cherry but the spacers between columns are problematic too.

(https://s2.postimg.org/y2k6nkv2h/Screenshot_2017-12-04_08-01-59.png) (https://postimg.org/image/vl8fgbb5x/)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: jecowa on December 03, 2017, 08:49:18 pm
I was wondering if someone could help me. I would appreciate a 32-bit OSX layout for use with DF v0.44.02. Or do you think that's possible to generate?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: lethosor on December 03, 2017, 09:02:57 pm
It's definitely possible to generate. DFHack should work on 32-bit OS X now thanks to Quietust and Mifki finding offsets there, but I haven't built a 32-bit version myself, let alone generated a DT layout yet. I can probably do that tomorrow if nobody beats me to it.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Vitellus on December 04, 2017, 12:55:17 am
it's saying that it cannot locate a copy of df running, but I am running it with a fort loaded?

using the therapist 39 for win32 with df44.02 x32
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 04, 2017, 04:14:46 am
I was wondering if someone could help me. I would appreciate a 32-bit OSX layout for use with DF v0.44.02. Or do you think that's possible to generate?
Try the one in this post (http://www.bay12forums.com/smf/index.php?topic=168411.msg7633700#msg7633700). It is completely untested since I don't use OSX. But the method I used to compute the offsets seems to work well with other platforms.

@feelotraveller The bug is already reported on github. (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/28) It is a bug happening with Qt 5.9.3, not a design decision. I don't know yet whose fault it is.

It's definitely possible to generate. DFHack should work on 32-bit OS X now thanks to Quietust and Mifki finding offsets there, but I haven't built a 32-bit version myself, let alone generated a DT layout yet. I can probably do that tomorrow if nobody beats me to it.
Although I already posted one, it would be nice if you could generate one from the dfhack script and compare with mine to check if I am doing this the right way.

it's saying that it cannot locate a copy of df running, but I am running it with a fort loaded?

using the therapist 39 for win32 with df44.02 x32
Can you post the content of the log/run.log file?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Vitellus on December 04, 2017, 10:57:43 am
Here you go:

2017-Dec-03 23:53:34.059 INFO   core   Dwarf Therapist "39.0.0" starting normally. [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:186] (setup_logging)
2017-Dec-03 23:53:34.060 INFO   core   Runtime QT Version 5.9.2 [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:187] (setup_logging)
2017-Dec-03 23:53:35.935 INFO   core   beginning to read settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:213] (read_settings)
2017-Dec-03 23:53:35.962 INFO   core   finished reading settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:264] (read_settings)
2017-Dec-03 23:53:36.043 INFO   core   attempting connection to running DF game [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:405] (connect_to_df)
2017-Dec-03 23:53:36.046 INFO   core   adding valid layout "v0.44.02 win64" checksum: "0x5a176770" SHA: "a61b176e5d6ba2cb0f72dd18007230ad0845310c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.048 INFO   core   adding valid layout "v0.44.02 win32" checksum: "0x5a175fbd" SHA: "d4651dfb7ab1dc4c6261fa1cf635fc74b322b05b" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.050 INFO   core   adding valid layout "v0.43.05 win64" checksum: "0x577b5e93" SHA: "c59557598bc06b32d3f3102b550229ce404e4f9e" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.052 INFO   core   adding valid layout "v0.43.05 win32" checksum: "0x577b57ff" SHA: "2d0601ef59b79bfb4eb717ab8d20bbdc6a58825c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.054 INFO   core   adding valid layout "v0.43.03 (graphics)" checksum: "0x57420c94" SHA: "0d3b6a608f7191669208e67034dab2bc788a02d7" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.055 INFO   core   adding valid layout "v0.43.02 (graphics)" checksum: "0x5733848a" SHA: "829e84ddc0faa76be804a31ed61886088ac542a1" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.057 INFO   core   adding valid layout "v0.42.06 (graphics)" checksum: "0x56bba192" SHA: "9734f21b29a670125f1d5f4ea8b3a3b7fc6b0ca2" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.059 INFO   core   adding valid layout "v0.42.05 (graphics)" checksum: "0x569bf3df" SHA: "d1f7cf3a8905f4089d683f670f1056ad91529a83" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.060 INFO   core   adding valid layout "v0.42.04 (graphics)" checksum: "0x567ef345" SHA: "f37a015884e7986db44574431e456a7c36769696" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.062 INFO   core   adding valid layout "v0.42.03 (graphics)" checksum: "0x566c7776" SHA: "1d7915745e7d1be82eb861e08ac24e7226b3a563" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.063 INFO   core   adding valid layout "v0.42.02 (graphics)" checksum: "0x56633788" SHA: "6ec444e3eae49bfa7ace26a0970eb201c2e29524" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.065 INFO   core   adding valid layout "v0.42.01 (graphics)" checksum: "0x565ca0e6" SHA: "f4a3586c2bc8f86963318d6489207f5fcc045831" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-03 23:53:36.065 INFO   core   attempting to find running copy of DF [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:236] (find_running_copy)
2017-Dec-03 23:53:36.068 INFO   core   PID of process is:  6516 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:242] (find_running_copy)
2017-Dec-03 23:53:36.068 INFO   core   PROC HANDLE: 0x270 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:248] (find_running_copy)
2017-Dec-03 23:53:36.069 ERROR   core   Error creating toolhelp32 snapshot! "Only part of a ReadProcessMemory or WriteProcessMemory request was completed." [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:257] (find_running_copy)
2017-Dec-03 23:53:36.069 WARNING   core   lost connection to DF [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:466] (lost_df_connection)
2017-Dec-03 23:53:36.071 ERROR   core   ("Not Running", "Unable to locate a running copy of Dwarf Fortress, are you sure it's running?", "", "") [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:488] (lost_df_connection)
2017-Dec-04 00:10:10.337 INFO   core   attempting connection to running DF game [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:405] (connect_to_df)
2017-Dec-04 00:10:10.340 INFO   core   adding valid layout "v0.44.02 win64" checksum: "0x5a176770" SHA: "a61b176e5d6ba2cb0f72dd18007230ad0845310c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.342 INFO   core   adding valid layout "v0.44.02 win32" checksum: "0x5a175fbd" SHA: "d4651dfb7ab1dc4c6261fa1cf635fc74b322b05b" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.344 INFO   core   adding valid layout "v0.43.05 win64" checksum: "0x577b5e93" SHA: "c59557598bc06b32d3f3102b550229ce404e4f9e" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.346 INFO   core   adding valid layout "v0.43.05 win32" checksum: "0x577b57ff" SHA: "2d0601ef59b79bfb4eb717ab8d20bbdc6a58825c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.348 INFO   core   adding valid layout "v0.43.03 (graphics)" checksum: "0x57420c94" SHA: "0d3b6a608f7191669208e67034dab2bc788a02d7" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.350 INFO   core   adding valid layout "v0.43.02 (graphics)" checksum: "0x5733848a" SHA: "829e84ddc0faa76be804a31ed61886088ac542a1" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.352 INFO   core   adding valid layout "v0.42.06 (graphics)" checksum: "0x56bba192" SHA: "9734f21b29a670125f1d5f4ea8b3a3b7fc6b0ca2" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.354 INFO   core   adding valid layout "v0.42.05 (graphics)" checksum: "0x569bf3df" SHA: "d1f7cf3a8905f4089d683f670f1056ad91529a83" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.356 INFO   core   adding valid layout "v0.42.04 (graphics)" checksum: "0x567ef345" SHA: "f37a015884e7986db44574431e456a7c36769696" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.358 INFO   core   adding valid layout "v0.42.03 (graphics)" checksum: "0x566c7776" SHA: "1d7915745e7d1be82eb861e08ac24e7226b3a563" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.360 INFO   core   adding valid layout "v0.42.02 (graphics)" checksum: "0x56633788" SHA: "6ec444e3eae49bfa7ace26a0970eb201c2e29524" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.362 INFO   core   adding valid layout "v0.42.01 (graphics)" checksum: "0x565ca0e6" SHA: "f4a3586c2bc8f86963318d6489207f5fcc045831" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:10.362 INFO   core   attempting to find running copy of DF [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:236] (find_running_copy)
2017-Dec-04 00:10:10.364 INFO   core   PID of process is:  6516 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:242] (find_running_copy)
2017-Dec-04 00:10:10.364 INFO   core   PROC HANDLE: 0x260 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:248] (find_running_copy)
2017-Dec-04 00:10:10.365 ERROR   core   Error creating toolhelp32 snapshot! "Only part of a ReadProcessMemory or WriteProcessMemory request was completed." [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:257] (find_running_copy)
2017-Dec-04 00:10:10.365 WARNING   core   lost connection to DF [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:466] (lost_df_connection)
2017-Dec-04 00:10:10.368 ERROR   core   ("Not Running", "Unable to locate a running copy of Dwarf Fortress, are you sure it's running?", "", "") [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:488] (lost_df_connection)
2017-Dec-04 00:10:19.449 INFO   core   beginning to read settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:213] (read_settings)
2017-Dec-04 00:10:19.451 INFO   core   finished reading settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:264] (read_settings)
2017-Dec-04 00:10:20.585 INFO   core   attempting connection to running DF game [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:405] (connect_to_df)
2017-Dec-04 00:10:20.588 INFO   core   adding valid layout "v0.44.02 win64" checksum: "0x5a176770" SHA: "a61b176e5d6ba2cb0f72dd18007230ad0845310c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.589 INFO   core   adding valid layout "v0.44.02 win32" checksum: "0x5a175fbd" SHA: "d4651dfb7ab1dc4c6261fa1cf635fc74b322b05b" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.591 INFO   core   adding valid layout "v0.43.05 win64" checksum: "0x577b5e93" SHA: "c59557598bc06b32d3f3102b550229ce404e4f9e" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.593 INFO   core   adding valid layout "v0.43.05 win32" checksum: "0x577b57ff" SHA: "2d0601ef59b79bfb4eb717ab8d20bbdc6a58825c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.595 INFO   core   adding valid layout "v0.43.03 (graphics)" checksum: "0x57420c94" SHA: "0d3b6a608f7191669208e67034dab2bc788a02d7" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.596 INFO   core   adding valid layout "v0.43.02 (graphics)" checksum: "0x5733848a" SHA: "829e84ddc0faa76be804a31ed61886088ac542a1" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.598 INFO   core   adding valid layout "v0.42.06 (graphics)" checksum: "0x56bba192" SHA: "9734f21b29a670125f1d5f4ea8b3a3b7fc6b0ca2" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.600 INFO   core   adding valid layout "v0.42.05 (graphics)" checksum: "0x569bf3df" SHA: "d1f7cf3a8905f4089d683f670f1056ad91529a83" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.601 INFO   core   adding valid layout "v0.42.04 (graphics)" checksum: "0x567ef345" SHA: "f37a015884e7986db44574431e456a7c36769696" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.603 INFO   core   adding valid layout "v0.42.03 (graphics)" checksum: "0x566c7776" SHA: "1d7915745e7d1be82eb861e08ac24e7226b3a563" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.605 INFO   core   adding valid layout "v0.42.02 (graphics)" checksum: "0x56633788" SHA: "6ec444e3eae49bfa7ace26a0970eb201c2e29524" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.606 INFO   core   adding valid layout "v0.42.01 (graphics)" checksum: "0x565ca0e6" SHA: "f4a3586c2bc8f86963318d6489207f5fcc045831" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:20.606 INFO   core   attempting to find running copy of DF [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:236] (find_running_copy)
2017-Dec-04 00:10:20.609 INFO   core   PID of process is:  6516 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:242] (find_running_copy)
2017-Dec-04 00:10:20.609 INFO   core   PROC HANDLE: 0x25c [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:248] (find_running_copy)
2017-Dec-04 00:10:20.609 ERROR   core   Error creating toolhelp32 snapshot! "Only part of a ReadProcessMemory or WriteProcessMemory request was completed." [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:257] (find_running_copy)
2017-Dec-04 00:10:20.609 WARNING   core   lost connection to DF [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:466] (lost_df_connection)
2017-Dec-04 00:10:20.612 ERROR   core   ("Not Running", "Unable to locate a running copy of Dwarf Fortress, are you sure it's running?", "", "") [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:488] (lost_df_connection)
2017-Dec-04 00:10:24.098 INFO   core   beginning to read settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:213] (read_settings)
2017-Dec-04 00:10:24.100 INFO   core   finished reading settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:264] (read_settings)
2017-Dec-04 00:10:26.313 INFO   core   beginning to read settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:213] (read_settings)
2017-Dec-04 00:10:26.315 INFO   core   finished reading settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:264] (read_settings)
2017-Dec-04 00:10:27.296 INFO   core   attempting connection to running DF game [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:405] (connect_to_df)
2017-Dec-04 00:10:27.299 INFO   core   adding valid layout "v0.44.02 win64" checksum: "0x5a176770" SHA: "a61b176e5d6ba2cb0f72dd18007230ad0845310c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.300 INFO   core   adding valid layout "v0.44.02 win32" checksum: "0x5a175fbd" SHA: "d4651dfb7ab1dc4c6261fa1cf635fc74b322b05b" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.302 INFO   core   adding valid layout "v0.43.05 win64" checksum: "0x577b5e93" SHA: "c59557598bc06b32d3f3102b550229ce404e4f9e" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.304 INFO   core   adding valid layout "v0.43.05 win32" checksum: "0x577b57ff" SHA: "2d0601ef59b79bfb4eb717ab8d20bbdc6a58825c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.306 INFO   core   adding valid layout "v0.43.03 (graphics)" checksum: "0x57420c94" SHA: "0d3b6a608f7191669208e67034dab2bc788a02d7" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.307 INFO   core   adding valid layout "v0.43.02 (graphics)" checksum: "0x5733848a" SHA: "829e84ddc0faa76be804a31ed61886088ac542a1" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.309 INFO   core   adding valid layout "v0.42.06 (graphics)" checksum: "0x56bba192" SHA: "9734f21b29a670125f1d5f4ea8b3a3b7fc6b0ca2" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.311 INFO   core   adding valid layout "v0.42.05 (graphics)" checksum: "0x569bf3df" SHA: "d1f7cf3a8905f4089d683f670f1056ad91529a83" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.313 INFO   core   adding valid layout "v0.42.04 (graphics)" checksum: "0x567ef345" SHA: "f37a015884e7986db44574431e456a7c36769696" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.314 INFO   core   adding valid layout "v0.42.03 (graphics)" checksum: "0x566c7776" SHA: "1d7915745e7d1be82eb861e08ac24e7226b3a563" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.316 INFO   core   adding valid layout "v0.42.02 (graphics)" checksum: "0x56633788" SHA: "6ec444e3eae49bfa7ace26a0970eb201c2e29524" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.317 INFO   core   adding valid layout "v0.42.01 (graphics)" checksum: "0x565ca0e6" SHA: "f4a3586c2bc8f86963318d6489207f5fcc045831" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-04 00:10:27.317 INFO   core   attempting to find running copy of DF [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:236] (find_running_copy)
2017-Dec-04 00:10:27.320 INFO   core   PID of process is:  6516 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:242] (find_running_copy)
2017-Dec-04 00:10:27.320 INFO   core   PROC HANDLE: 0x258 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:248] (find_running_copy)
2017-Dec-04 00:10:27.320 ERROR   core   Error creating toolhelp32 snapshot! "Only part of a ReadProcessMemory or WriteProcessMemory request was completed." [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:257] (find_running_copy)
2017-Dec-04 00:10:27.320 WARNING   core   lost connection to DF [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:466] (lost_df_connection)
2017-Dec-04 00:10:27.323 ERROR   core   ("Not Running", "Unable to locate a running copy of Dwarf Fortress, are you sure it's running?", "", "") [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:488] (lost_df_connection)
2017-Dec-04 00:11:37.235 INFO   core   Beginning shutdown [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:380] (closeEvent)
2017-Dec-04 00:11:37.236 INFO   core   beginning to write settings [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:357] (write_settings)
2017-Dec-04 00:11:37.237 INFO   core   finished writing settings [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:375] (write_settings)
2017-Dec-04 00:11:37.255 INFO   core   Closing Dwarf Therapist normally [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:386] (closeEvent)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 04, 2017, 12:20:30 pm
The only reason for this error that I see in the documentation (https://msdn.microsoft.com/fr-fr/library/windows/desktop/ms682489(v=vs.85).aspx) is:
Quote
If the specified process is a 64-bit process and the caller is a 32-bit process, this function fails and the last error code is ERROR_PARTIAL_COPY (299).
That would mean you were trying to open DF 64 bits from DT 32 bits. Are you sure you have the 32 bits version of DF?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Vitellus on December 04, 2017, 12:50:21 pm
Nvm

I'm just an idiot

i got it resolved

Thanks!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 04, 2017, 01:03:37 pm
This is not the correct timestamp. It is a little earlier than the known timestamp, it may be the legacy version. You must use the SDL version. There is no memory layout for the legacy version, and DFHack cannot make those.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Vitellus on December 04, 2017, 01:04:44 pm
yeah, i realized i had the wrong version when I couldn't resize the window, but I got the right version now and everything connects, thanks again for your help!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: nathanbibb on December 04, 2017, 01:20:54 pm
Experimental memory layouts for 0.44.02 on linux are available: 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02_i386.ini), 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02.ini).

I can confirm the experimental 64-bit layout worked for my Fedora build.  Thanks!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: lethosor on December 04, 2017, 02:29:54 pm
I was wondering if someone could help me. I would appreciate a 32-bit OSX layout for use with DF v0.44.02. Or do you think that's possible to generate?
Try the one in this post (http://www.bay12forums.com/smf/index.php?topic=168411.msg7633700#msg7633700). It is completely untested since I don't use OSX. But the method I used to compute the offsets seems to work well with other platforms.
Well, whatever you did, it worked - my therapist.ini generated in 32-bit OS X DF is identical. (What are you doing, by the way?)\

Now, I don't know for sure that it will work, but I don't see anything obviously wrong with it.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 04, 2017, 05:01:06 pm
I am computing the offsets directly from df-structures xml (df.*.xml and symbols.xml) using simplified rules, and primitive and stl types size and alignment for the targeted ABI. I used the same ABI data for OSX and Linux, since it is the same compiler and gave the correct offsets for other versions. The simplified layout rules should work fine as long as Toady keeps his C++ simple (no multiple inheritance or other weird classes). I still don't trust it as well as memory layouts generated by DFHack.

This should help me if I add new requirements for the memory layouts. I will be able to get new offsets without having to run every version of DFHack.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: jecowa on December 04, 2017, 06:01:07 pm
The 32-bit OSX layout seems to be working now. Thank you!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: feelotraveller on December 05, 2017, 10:45:36 am
@feelotraveller The bug is already reported on github. (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/28) It is a bug happening with Qt 5.9.3, not a design decision. I don't know yet whose fault it is.

It hadn't been when I looked earlier that day.

Quickish tests with 32 and 64 bit linux memory layouts didn't reveal any problems.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: mangregnor on December 05, 2017, 05:26:37 pm
Experimental memory layouts for 0.44.02 on linux are available: 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02_i386.ini), 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02.ini).

Edit: also osx 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/osx/v0.44.02_osx32.ini) (untested).

Hi, I'm getting a 404: Not Found for both of the Linux links.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 05, 2017, 05:32:38 pm
Sorry, I renamed the files. Here are the new links: linux32 (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02_linux32.ini), linux64 (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02_linux64.ini).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: mangregnor on December 05, 2017, 05:53:24 pm
Sorry, I renamed the files. Here are the new links: linux32 (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02_linux32.ini), linux64 (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.02_linux/share/memory_layouts/linux/v0.44.02_linux64.ini).

Thank you!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Rekov on December 08, 2017, 10:21:57 pm
Unicorns are showing up under the labors tab for me, not the animal tab. The only mod I am using is All Races Playable, playing as elves, who can start with unicorns. Is this possibly a bug with DT?

(https://i.imgur.com/QyqiNsN.png)

EDIT: Nvm this is something else, as Unicorns also aren't showing up as animals in DF itself.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PatrikLundell on December 10, 2017, 04:16:18 am
Would it be possible to use different logic for the animal versus civilized creatures sexuality displays to match the DF bug fix made in the last arc? For animals we don't care whether the marriage commitment is present or not, only whether they're willing to procreate or not (although it should still show asexual, homo, hetero, and bi, but each part being based on either of the lover or commitment flags is set [as they're still used for animals]).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 10, 2017, 05:40:07 am
I think what you want to do can be done by modifying Dwarf::get_gender_icon_suffix (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/src/dwarf.cpp#L485).

If I understand correctly, you would want to bypass completely the commitment checks for animals while currently only commitment is checked (interest is ignored for animals). The logic for non-animals should stay the same: check commitment, then interest if no commitment for either sex?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PatrikLundell on December 10, 2017, 07:30:58 am
No, it's a DF is a bit messier than that, unfortunately. For whatever reason Toady still generates animal sexuality flags the same way as "civilized" flags are, so you'd either get a commitment or a romance flag for all critters (or none, but not both).
Thus what I'd like to see for animals is:
Male and no flags -> asexual male
Male and (romance or commit to male) and not (romance or commit to female) -> homo male
Male and (romance or commit to male) and (romance or commit to female) -> bi male
Male and not (romance or commit to male) and (romance or commit to female) -> hetero male
and the corresponding set for females, of course.

While in the wishing department, I'd like to see the whole set displayed for sapients, although it gets tricky:

Sex I m f M F
M   - - - - - : Male icon, empty
M   X - - - - : Male icon, black (adventurers only)
M   - X - - - : Double male icon, light blue
M   - - X - - : Male icon, light blue
M   - - - X - : Double male icon, dark blue
M   - - - - X : Male icon, dark blue
M   - X - X - : Bi icon, light blue
M   - X - - X : Bi icon, dark blue
M   - - X X - : Bi icon, light green
M   - - X - X : Bi icon, dark green
F   - - - - - : Female icon, empty
F   X - - - - : Female icon, black (adventurer only)
F   - X - - - : Female icon, (light) pink
F   - - X - - : Female icon, dark pink (or light red)
F   - - - X - : Double female icon, (light) pink
F   - - - - X : Double female icon, dark pink (or light red)
F   - X - X - : Bi icon, (light) pink
F   - X - - X : Bi icon, light orange
F   - - X X - : Bi icon, dark pink (or light red)
F   - - X - X : Bi icon, dark orange

I = indeterminate
m = romance male
f = romance female
M = marry male
F = marry female
 

Marriage would be indicated by darker colors, with the exception of the "odd" ones, where light means homo marriage only and dark odd colors means marriage both ways. Green is sort of a version of blue, while orange is sort of a version of pink to indicate physical gender.
This is inspired by the work Fleeting Frames did to enhance the manipulator, but DT isn't constrained to the 15 color DF palette.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 10, 2017, 08:24:44 am
I don't know this "indeterminate flag", but if it is adventurers only, DT don't care, right?

I think there is something wrong with your table, you have bi people that only like one gender. You are also missing cases where there is both m and f or M and F.

Current code is (with commitment_asexual = not M and not F):

I see bisexual icons with the current version, so I am sure this combination happens.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PatrikLundell on December 10, 2017, 10:38:38 am
Sorry for causing you headaches trying to untangled non existent logic.

The "Indeterminate" flag is the first flag in the array of flags and is set on adventurers, but this flag remains set when they retire and appear in a fortress (and causes some players grief when they want to breed them in fortress mode), so it can actually make an appearance in DT (whether it's worth the trouble to handle that case separately is a different issue).

You're correct: I mentally scrambled my logic so after the male section the heading would have changed to "Sex I m M f F", so both issues are caused by the same error.

Corrected table (I hope...):

Sex I m f M F
M   - - - - - : Male icon, empty/white
M   X - - - - : Male icon, black (adventurers only)
M   - X - - - : Double male icon, light blue
M   - - X - - : Male icon, light blue
M   - - - X - : Double male icon, dark blue
M   - - - - X : Male icon, dark blue
M   - X X - - : Bi icon, light blue
M   - X - - X : Bi icon, dark blue
M   - - X X - : Bi icon, light green
M   - - - X X : Bi icon, dark green
F   - - - - - : Female icon, empty/white
F   X - - - - : Female icon, black (adventurer only)
F   - X - - - : Female icon, (light) pink
F   - - X - - : Double female icon, (light) pink
F   - - - X - : Female icon, dark pink (or light red)
F   - - - - X : Double female icon, dark pink (or light red)
F   - X X - - : Bi icon, (light) pink
F   - X - - X : Bi icon, light orange
F   - - X X - : Bi icon, dark pink (or light red)
F   - - - X X : Bi icon, dark orange

I = indeterminate
m = romance male
f = romance female
M = marry male
F = marry female
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 10, 2017, 11:15:34 am
Thanks, that is more coherent. I still don't understand everything.

If I ignore the colors in the table, that give the same cases you gave for animals: OR'ing the commitment and interest flags and consider the two remaining flags: f or m = heterosexual or homosexual depending on the creature sex, mf = bisexual, nothing = asexual. But in your first post, you said to ignore commitment flags for animals.

What happens when commitment and interest contradict? A male mF is a bisexual in your table, but wouldn't that be some kind of closet homosexual (marrying a female but interested in males)? Are there consequences on the couple fertility or thoughts?

Your table is also far from listing every combinations. Are there the only possible ones? No more than two flags and no fF or mM?

Is an adventurer any different from other asexuals?

I guess there was already a lot of discussion about all this somewhere in the forum. Do you know where? It would be simpler to reread that than ask so many questions.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PatrikLundell on December 10, 2017, 12:21:33 pm
If the table is implemented, it would work for animals as well, although it would provide redundant info (we don't really care whether the animals only want sex or if they're supposed to want marriage as well, only that they're prepared to engage in sex).

If I said commitment flags should be ignored that's incorrect. DF uses two booleans to sort of create a tri state set of (not interested, interested, commitment) versus each gender where commitment implies interest as well, but both flags aren't set at the same time. Thus, we're interested in whether one of the interest/commitment flags is set => sexual interest, or none (no interest), but we don't care which one.

All combinations in the table exist in DF. I've for instance had a case there DT reported one dorf as homo and one as hetero, but they formed a lover pair. gui/gm-editor examination showed that the "hetero" one was actually commitment level hetero and interest level homo.

As far as I know "side interests" do not have any effects, but I don't know if it's been investigated, so my current assumption is that there are no effects apart from the possibility to "get derailed" by a minor level attraction before encountering a suitable major level option, which results in a lover relation that will never progress to marriage, but also blocks marriage in the other direction as the lover position is already filled.

fF and mM are not possible, as per the above, unless I'm wrong (which is always possible).

Adventurers are unique in having the Indeterminate flag set. Asexuals do not have any flags set, and I assume that goes for gender less creatures as well.

I've very bad at remembering references (and have sub par forum search skill), but there have been various discussions in various places, although I think it was some time since it happened last, so they're not trivial to find. The best would probably be to have one of the gurus chime in.

I think it's encouraging and healthy to ask questions rather than just go along with what people claim.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 10, 2017, 02:37:05 pm
I understand better with a tri-state value.

Ignoring the indeterminate adventurer case, we can cover everything with:

S O
- - Asexual (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-asexual.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-asexual.png)
- I Heterosexual no commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female.png)
- C Heterosexual with commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female.png) with deeper colors (♂ ♀)
I - Homosexual no commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-male.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-female.png)
I I Bisexual no commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-bi.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-bi.png)
I C Bisexual with commitment with other sex (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-bi.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-bi.png) other sex half with deeper colors (or ⚥ ⚥ with your colors)
C - Homosexual with commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-male.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-female.png) with deeper colors (⚣ ⚢)
C I Bisexual with commitment with same sex (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-bi.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-bi.png) same sex half with deeper colors (or ⚥ ⚥ with your colors)
C C Bisexual with commitment  (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-bi.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-bi.png) with deeper colors (⚥ ⚥ or ⚥ ⚥ with your colors)

S: Same sex
O: Other sex
I: Interest
C: Commitment


For animals, Interest and Commitment should be considered equivalent. Only the current icons are used.

Is that all good?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Starver on December 10, 2017, 03:02:59 pm
I'm just poking in here to ask if it's a thing that XP cannot run Therapist. I've been looking into another program (failing differently) and decided to check DT and other things. For this, I get the message "The procedure entry point CancelIoEx could not be located in the dynamic link library KERNEL32.dll.", which seems to mostly crop up as a complaint in QT developer forums (and other random software that may or may not be developed within a similar Framework).

Tried on multiple XP machines (yes, there are some... yes, I appreciate what the foremost reply about this will be) and all fail in this manner. DF itself, meanwhile, perks worfectly.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PatrikLundell on December 10, 2017, 03:21:04 pm
That would be perfect in my view. Of course, no other voices have been heard yet...

@Starver: If I understand it correctly DT is produced using QT, so if there's an underlying QT compatibility issue it's not surprising if it would hit DT as well.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 10, 2017, 03:51:58 pm
Windows XP is very old. Qt 5.9 does not support Windows XP (http://doc.qt.io/qt-5.9/supported-platforms.html), but Qt 5.6 does (http://doc.qt.io/qt-5.6/supported-platforms.html).

I did not check every function, but I think the system calls that DT requires are all available on Windows XP. It is possible that with the right compiler and the right version of Qt, Dwarf Therapist could run on Windows XP. I could try a MSVC 2015 + Qt 5.6 build, but is it really worth the effort?

Edit: try this build (https://framadrop.org/r/iuZ-ViiXJ_#vXtFpYOW2ae6KqEVz+DX6V4XJHqu/lWlw0rLp3LXp00=). If you don't already have it, you will need to install Visual C++ Redistributable for Visual Studio 2015 (https://www.microsoft.com/download/details.aspx?id=48145).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: feelotraveller on December 11, 2017, 04:17:49 am
That would be perfect in my view. Of course, no other voices have been heard yet...

That looks like a good change to me.  I imagine that there will be some people who might not want this extra information though, so perhaps there could be a show more gender information toggle in grid options?  [Edit: actually the simplified version should probably just show male and female.]

Also I would suggest making the colours a little different - bisexual with same sex, yellow and light green, bisexual with double commitment orange and mid teal/aqua - or other as long as there will be no confusion at a glance.  :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 11, 2017, 05:16:54 am
First try: (https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/female-bi-nocommit.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/female-bi-mcommit.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/female-bi-fcommit.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/female-bi-mfcommit.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/male-bi-nocommit.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/male-bi-fcommit.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/male-bi-mcommit.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/male-bi-mfcommit.png) (this link directly to my github branch so it may change in the future).

There could be three level of information: sex only, simple orientation (like animals), full orientation (distinguishing interest and commitment).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: feelotraveller on December 11, 2017, 05:52:59 am
Not sure if anyone will want the simple orientation other than for animals?

I like the colours but perhaps the dark ones (2 and 6 in order) could be a bit darker - we won't always have them side by side, particularly when first embarking - and personally I find 7 and 8 a bit hard to distiguish.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PatrikLundell on December 11, 2017, 08:30:03 am
I think Feelotraveller has a point in that they need to be sufficiently distinct to be recognized without nearby reference. 2, 6, and 8 probably need to be darker. 3 and 4 should be easy to tell apart from everything else without references.
(This part is what I don't like about UI design: everybody and their dogs have opinions, so whatever you do you're inviting criticism...).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Starver on December 11, 2017, 01:14:50 pm
Windows XP is very old.
Yes, but it is still the best version of Windows, for many people who aren't looking for unnecessary bells and whistles and virtualisation and hardware-over-abstraction and upgrading/replacing hardware that otherwise does not need upgrading/replacing. (I've also got prior versions of the NT stream running, in various places...) And have already long sorted out all the original issues of Creator Interference by MS and haven't the time to gut 7 or 10 (never mind Vista/8) of all the stupid new and unncecessary stuff.

When I get back to the various XP machines (with a USB - they aren't networked, never mind Internetted, which already made me worried about this (http://www.bay12forums.com/smf/index.php?topic=168411.msg7629492#msg7629492) being a problem) I'll give the provided build a go and report back.


Spoiler: Aside (click to show/hide)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: jecowa on December 11, 2017, 02:08:08 pm
I'd like to get 64-bit Dearf Therapist working on Leopard or Snow Leopard. The only builds I can find require High Sierra. I have a Leopard and Snow Leopard machine, but I'm not very good at compiling stuff. It's kind of complicated.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Fleeting Frames on December 11, 2017, 04:46:32 pm
Regarding the committed colours: I may suggest using vice-versa (darker for unwillingness to commit, brighter for willingness), mainly to match the colours with what I did with relations-indicator. (And also it makes more sense to me that brighter/less pastel = more intense. Though the white centre is most intense after colours like yellow, I think?)

Though that's not the only difference, hm...I view DT's female colour as light magenta rather than light red, so I ended up using (dark) red for lesbian dwarves, purple for straight ones unwilling to commit, green for pregnant ones (matching tweak eggs-fertile) and yellow for gay ones. (There is no orange or double male symbol in DF itself.)

...Yeah, that last one is plain incompatible with DT, so this is just an idea.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 11, 2017, 05:17:21 pm
@Starver, you may like Windows XP but for developers, it is very annoying to continue to support old systems and WinXP is officially dead. I perfectly understand the decision from Qt devs to drop support for WinXP and you must understand that if DT works on WinXP, it is accidental, and if an improvement requires a syscall not available on WinXP, I will still use it. If you like old operating system, at one point, you will have to use old applications (old Qt and old DT).

@jecowa You should read this issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/23) (there are instructions to follow at the end) and this pull request (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/27). If there is anything you don't understand please comment (on github or here if you don't have a github account) so the instructions can be improved.

@Fleeting Frames Current DT icons use a very light and desaturated colors, I tried to make them more saturated with medium brightness, but, as people commented, there is not enough contrast (the border is too thin). I may get better results if I try to also modify the white in the center instead of just applying color filters to the whole image in gimp. I tried redrawing them in Inkscape using unicode characters, but it is hard to get sharp borders with a 16x16 icon. I may need to redraw the symbols so they align properly on the pixel grid.

Edit: I found this post about sexual orientation from someone of authority.
Quote from: Putnam
Can you confirm what the numbers in the ORIENTATION token mean? Research tells me they're probably female_chance:bisexual_chance:male_chance, but I could be wrong (especially in the middle).

It's a by-caste tag, so you'd use it twice for each caste if you want to set all the numbers.  <male/female>:<disinterested chance>:<lover-possible chance>:<commitment-possible chance>  It uses the chances to put an individual critter into any of the 9 possible configurations.  Defaults are, if I remember, 75:20:5 for the same gender, and 5:20:75 for the opposite.  That leads to a 3x3 grid, with numbers in it.  I'm not invested in the current ones if there are better ideas, but it's probably not all that easy to make a good selection when the categorization is ad hoc anyway.  I would have used caste instead of gender to allow more interesting outcomes for many-casted critters, but the optimizations would be a nightmare (already had to jump from 2 to 6 relationship pools...).  Of course, all relationships are still eternal, so the lover thing is kind of broken now (sometimes it won't advance beyond lover because one of the parties is not interested in committing, but still neither ever breaks it off, ever...  not unrealistic in individual cases, but strange overall).

Oddly enough, we thought retired adventurers would start forming relationships with 0.40.01+, so we wanted to have a better spectrum available, but then we didn't get around to the gen/pre-retirement specification menu, so all adventurers are still tagged with the special "undetermined" flag...
If Toady describe sexual orientation as a pair of tri-state (disinterested/lover-possible/commitment-possible) values, I think I should do the same. I checked with dfhack on a fortress, and I did not see anyone with both lover+commitment flags for the same target sex. I may not be enough checking, but that hints toward two-bit values (00, 01, 10) instead of independent flags as current DT and DFHack see it.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: maltelau on December 12, 2017, 08:27:55 am
Great! I've had it running on 64bit linux with the ptrace trick for a few days (build & install was smooth).
But now I've encountered a reproducible crash :(
When renaming a specific dwarf in the therapist, therapist freezes (with ~60% cpu usage). Force quit leads to df crashing a few seconds later with "Segmentation Fault".

64bit ubuntu 17.10
df 0.44.02
dfhack 0.44.02-alpha1
twbt v6.23 (installed both into the raws and into the save in question)
Dwarf Therapist 39.0.0 (built & installed with sudo make install)
save: http://dffd.bay12games.com/file.php?id=13303

Steps to reproduce:
- Load the fort
- Open up DwarfTherapist and connect to df.
- Give "Meng Melbilîton" a new nickname (happens both with "Scholar" and "test")
- Commit

Tail of DwarfTherapist's terminal output: (I clicked commit at 14:00:45 I think)
Code: [Select]
2017-Dec-12 14:00:37.947 INFO core "IGNORING Baby Llama name:Llama id:15987 reason:Dead, Jim. flags:67125250" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/dwarf.cpp:382] (set_validation)
2017-Dec-12 14:00:37.953 INFO core read 45 units in 210 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/dfinstance.cpp:399] (load_dwarves)
2017-Dec-12 14:00:37.985 INFO core calculated roles in 32 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/dfinstance.cpp:411] (load_dwarves)
2017-Dec-12 14:00:37.986 INFO core loaded population data in 1 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/dfinstance.cpp:416] (load_dwarves)
2017-Dec-12 14:00:37.989 INFO core found 45 units out of 104 creatures [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/dfinstance.cpp:430] (load_dwarves)
2017-Dec-12 14:00:38.007 INFO core group_by now set to 0  for view  "Labors Full" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/dwarfmodel.cpp:779] (set_group_by)
2017-Dec-12 14:00:38.072 INFO core loaded rows for "Labors Full" 65 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/dwarfmodel.cpp:785] (set_group_by)
2017-Dec-12 14:00:39.088 INFO core completed read in 1367 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/mainwindow.cpp:628] (read_dwarves)
2017-Dec-12 14:00:45.430 INFO core FOUND 16 squads [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/dfinstance.cpp:875] (load_squads)
2017-Dec-12 14:00:45.434 INFO core FOUND ACTIVE SQUAD "0x00007fffa6cac2b0" "The Inky Beaks"  member count:  2  id:  15 [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist-39.0.0/src/dfinstance.cpp:889] (load_squads)
Killed
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 12, 2017, 09:54:46 am
Thank you for the nice report.

There are actually two problems:
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: TheKaspa on December 13, 2017, 07:42:24 am
PTW

I would be open for testing if needed
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: maltelau on December 13, 2017, 11:45:55 am
Wow, quick patches!

I can rename Meng now, but I'm encountering a new crash. Dwarf Therapist doesn't crash, but df segfaults, and then of course therapist complains df isn't running any more.
Same save, same pc, same setup, except I pulled the latest source from github (1156e780ed83de299b74574146b7c9245696c899)

It's a little bit less consistant this time, but basically if I load up the save and start nicknaming dwarves one by one in dwarftherapist, it crashes after renaming (and comitting) between 1 and 10 dwarves (tried 5 times, crashed at a different dwarf each time).

I caught some errors in the output which I figure you'll want to see

Running as my normal user after sudo setcap cap_sys_ptrace=eip /usr/local/bin/DwarfTherapist

Code: [Select]
2017-Dec-13 17:34:27.599 INFO core "IGNORING Turkey name:Turkey id:15973 reason:part of a merchant caravan flags:75497600" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)
2017-Dec-13 17:34:27.599 INFO core "IGNORING Duck name:Duck id:15974 reason:part of a merchant caravan flags:75497600" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)
2017-Dec-13 17:34:27.600 INFO core "IGNORING Rabbit name:Rabbit id:15975 reason:part of a merchant caravan flags:75497600" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)
2017-Dec-13 17:34:27.603 INFO core "FOUND Duck (0x00007fffa4578b20) name:Duck (Urvad Rulushdoren) id:15985 histfig_id:29194" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarf.cpp:307] (read_data)
2017-Dec-13 17:34:27.604 INFO core "IGNORING Horse name:Horse id:15986 reason:Dead, Jim. flags:67125250" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)
2017-Dec-13 17:34:27.604 INFO core "IGNORING Llama name:Llama id:15987 reason:Dead, Jim. flags:67125250" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)
2017-Dec-13 17:34:27.608 INFO core read 45 units in 164 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstance.cpp:399] (load_dwarves)
2017-Dec-13 17:34:27.642 INFO core calculated roles in 34 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstance.cpp:411] (load_dwarves)
2017-Dec-13 17:34:27.643 INFO core loaded population data in 1 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstance.cpp:416] (load_dwarves)
2017-Dec-13 17:34:27.646 INFO core found 45 units out of 104 creatures [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstance.cpp:430] (load_dwarves)
2017-Dec-13 17:34:27.657 INFO core group_by now set to 8  for view  "Labors Full" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2017-Dec-13 17:34:27.727 INFO core loaded rows for "Labors Full" 70 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarfmodel.cpp:785] (set_group_by)
2017-Dec-13 17:34:29.192 ERROR core READ_RAW: "No such process" READING 8 BYTES FROM "0x018fd578" TO 0x7ffd3fdad960 [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstancelinux.cpp:115] (read_raw)
2017-Dec-13 17:34:29.192 ERROR core READ_RAW: "No such process" READING 8 BYTES FROM "0x018fd580" TO 0x7ffd3fdad960 [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstancelinux.cpp:115] (read_raw)
2017-Dec-13 17:34:29.192 ERROR core READ_RAW: "No such process" READING 8 BYTES FROM "0x018fd560" TO 0x7ffd3fdad960 [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstancelinux.cpp:115] (read_raw)
2017-Dec-13 17:34:29.192 ERROR core READ_RAW: "No such process" READING 8 BYTES FROM "0x018fd568" TO 0x7ffd3fdad960 [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstancelinux.cpp:115] (read_raw)

Running with sudo DwarfTherapist

Code: [Select]
2017-Dec-13 17:42:04.034 INFO core found 45 units out of 104 creatures [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstance.cpp:430] (load_dwarves)
2017-Dec-13 17:42:04.044 INFO core group_by now set to 8  for view  "Labors Full" [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2017-Dec-13 17:42:04.118 INFO core loaded rows for "Labors Full" 73 ms [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dwarfmodel.cpp:785] (set_group_by)
2017-Dec-13 17:42:08.525 INFO core FOUND 16 squads [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstance.cpp:875] (load_squads)
2017-Dec-13 17:42:08.531 INFO core FOUND ACTIVE SQUAD "0x00007fffa6ca8f50" "The Inky Beaks"  member count:  2  id:  15 [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstance.cpp:889] (load_squads)
wait inside attach(): No child processes
2017-Dec-13 17:42:10.064 ERROR core child died? [/home/maltelau/Documents/My Games/Dwarf Fortress/Dwarf-Therapist/src/dfinstancelinux.cpp:66] (wait_for_stopped)


Not sure if it's just random that I got different error messages or what.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 13, 2017, 11:59:28 am
I'll try to reproduce the bug later.

I cannot see what is a happening with only the end of the log (it must be a consequence of something happening earlier). Send the full log with debug logging: "DwarfTherapist -debug |& tee log.txt".
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: BaronVonClop on December 13, 2017, 05:15:49 pm
I've found a reproducible bug. DT just immediately crashes, and then fails to load, closing itself whenever I attempt to open it while running a fort in which you have rescued people on a raid, bring them back to your fort, and then allow them to reside in the fort due for the purposes of "sanctuary".

Notably, two of these people are elves, so that may be part of the issue. I'm unsure.

DF 0.44.02.
Dwarf Therapist 39.0.0-win64.
Windows 10, latest updates.
DFHack 44.02-alpha1.
No mods.

Steps:

Assemble an army.

Launch the army on a mission to raid the fort of a hostile race. In my case, I raided a ~10 population goblin fortress.

Have the raid be successful, with people rescued.

Wait for the army to return with the people.

After a few moments, the rescued people will petition to reside in your fort with the reason being "sanctuary".

Accept these petitions.

Dwarf Therapist then immediately crashes with no error. Loading Dwarf Therapist again causes it to immediately crash and close itself with no error.

Full log:

Code: [Select]
2017-Dec-13 17:10:38.749 INFO core Dwarf Therapist "39.0.0" starting normally. [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:186] (setup_logging)
2017-Dec-13 17:10:38.749 INFO core Runtime QT Version 5.9.2 [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:187] (setup_logging)
2017-Dec-13 17:10:39.063 INFO core beginning to read settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:213] (read_settings)
2017-Dec-13 17:10:39.075 INFO core finished reading settings [E:/projects/Dwarf-Therapist/src/dwarftherapist.cpp:264] (read_settings)
2017-Dec-13 17:10:39.113 INFO core attempting connection to running DF game [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:405] (connect_to_df)
2017-Dec-13 17:10:39.114 INFO core adding valid layout "v0.44.02 win64" checksum: "0x5a176770" SHA: "a61b176e5d6ba2cb0f72dd18007230ad0845310c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.115 INFO core adding valid layout "v0.44.02 win32" checksum: "0x5a175fbd" SHA: "d4651dfb7ab1dc4c6261fa1cf635fc74b322b05b" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.116 INFO core adding valid layout "v0.43.05 win64" checksum: "0x577b5e93" SHA: "c59557598bc06b32d3f3102b550229ce404e4f9e" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.116 INFO core adding valid layout "v0.43.05 win32" checksum: "0x577b57ff" SHA: "2d0601ef59b79bfb4eb717ab8d20bbdc6a58825c" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.117 INFO core adding valid layout "v0.43.03 (graphics)" checksum: "0x57420c94" SHA: "0d3b6a608f7191669208e67034dab2bc788a02d7" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.118 INFO core adding valid layout "v0.43.02 (graphics)" checksum: "0x5733848a" SHA: "829e84ddc0faa76be804a31ed61886088ac542a1" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.119 INFO core adding valid layout "v0.42.06 (graphics)" checksum: "0x56bba192" SHA: "9734f21b29a670125f1d5f4ea8b3a3b7fc6b0ca2" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.120 INFO core adding valid layout "v0.42.05 (graphics)" checksum: "0x569bf3df" SHA: "d1f7cf3a8905f4089d683f670f1056ad91529a83" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.121 INFO core adding valid layout "v0.42.04 (graphics)" checksum: "0x567ef345" SHA: "f37a015884e7986db44574431e456a7c36769696" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.121 INFO core adding valid layout "v0.42.03 (graphics)" checksum: "0x566c7776" SHA: "1d7915745e7d1be82eb861e08ac24e7226b3a563" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.122 INFO core adding valid layout "v0.42.02 (graphics)" checksum: "0x56633788" SHA: "6ec444e3eae49bfa7ace26a0970eb201c2e29524" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.123 INFO core adding valid layout "v0.42.01 (graphics)" checksum: "0x565ca0e6" SHA: "f4a3586c2bc8f86963318d6489207f5fcc045831" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2017-Dec-13 17:10:39.123 INFO core attempting to find running copy of DF [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:236] (find_running_copy)
2017-Dec-13 17:10:39.126 INFO core PID of process is:  2368 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:242] (find_running_copy)
2017-Dec-13 17:10:39.126 INFO core PROC HANDLE: 0x448 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:248] (find_running_copy)
2017-Dec-13 17:10:39.127 INFO core RAW BASE ADDRESS: 140700417327104 [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:283] (find_running_copy)
2017-Dec-13 17:10:39.127 INFO core Target EXE was compiled at  "2017-11-23T19:27:28" [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:78] (calculate_checksum)
2017-Dec-13 17:10:39.127 INFO core Setting memory layout for DF checksum "0x5a176770" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:1081] (set_memory_layout)
2017-Dec-13 17:10:39.127 INFO core Detected Dwarf Fortress version "v0.44.02 win64" using MemoryLayout from "H:/Dwarf Fortress/Dwarf-Therapist-39.0.0-win64/share/memory_layouts/windows/v0.44.02_x64_graphics.ini" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:1086] (set_memory_layout)
2017-Dec-13 17:10:39.127 INFO core GetModuleFileNameEx returned:  "H:\\DWARFF~1\\Dwarf Fortress 0.44.02\\Dwarf Fortress.exe" [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:316] (find_running_copy)
2017-Dec-13 17:10:39.127 INFO core Dwarf Fortress path: "H:/DWARFF~1/Dwarf Fortress 0.44.02" [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:319] (find_running_copy)
2017-Dec-13 17:10:39.127 INFO core Checking for layout for checksum:  "0x5a176770" [E:/projects/Dwarf-Therapist/src/updater.cpp:133] (check_layouts)
2017-Dec-13 17:10:39.138 INFO core Setting memory layout for DF checksum "0x5a176770" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:1081] (set_memory_layout)
2017-Dec-13 17:10:39.139 INFO core Detected Dwarf Fortress version "v0.44.02 win64" using MemoryLayout from "H:/Dwarf Fortress/Dwarf-Therapist-39.0.0-win64/share/memory_layouts/windows/v0.44.02_x64_graphics.ini" [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:1086] (set_memory_layout)
2017-Dec-13 17:10:39.139 INFO core Connection to DF version "v0.44.02 win64" established. [E:/projects/Dwarf-Therapist/src/mainwindow.cpp:429] (connect_to_df)
2017-Dec-13 17:10:39.364 INFO core Loaded 12 views from disk [E:/projects/Dwarf-Therapist/src/viewmanager.cpp:170] (reload_views)
2017-Dec-13 17:10:39.366 INFO core group_by now set to 10  for view  "Labors Full" [E:/projects/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2017-Dec-13 17:10:39.368 INFO core group_by now set to 10  for view  "Military" [E:/projects/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2017-Dec-13 17:10:39.370 INFO core group_by now set to 10  for view  "Attributes" [E:/projects/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2017-Dec-13 17:10:39.371 INFO core group_by now set to 10  for view  "Roles" [E:/projects/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2017-Dec-13 17:10:39.373 INFO core group_by now set to 10  for view  "Animals" [E:/projects/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2017-Dec-13 17:10:39.373 INFO core group_by now set to 10  for view  "Labors Full" [E:/projects/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2017-Dec-13 17:10:39.373 INFO core "redrew views in 9ms" [E:/projects/Dwarf-Therapist/src/viewmanager.cpp:317] (draw_views)
2017-Dec-13 17:10:39.373 INFO core current year: 251 [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:784] (refresh_data)
2017-Dec-13 17:10:39.397 INFO core FOUND 38 squads [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:875] (load_squads)
2017-Dec-13 17:10:39.401 INFO core FOUND ACTIVE SQUAD "0x0000022c93c6ef00" "The Inky Kindnesses"  member count:  6  id:  34 [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:889] (load_squads)
2017-Dec-13 17:10:39.401 INFO core using active units [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:951] (get_creatures)
2017-Dec-13 17:10:39.401 INFO core no active units with our civ (reclaim), using full unit list [E:/projects/Dwarf-Therapist/src/dfinstance.cpp:957] (get_creatures)
2017-Dec-13 17:10:39.402 INFO core "IGNORING Dwarf name:Uvash Nefeksodel id:696 reason:visitor flags:312475760" [E:/projects/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)
2017-Dec-13 17:10:39.402 INFO core "IGNORING Dwarf name:Edem Kolnikuz id:750 reason:visitor flags:312475760" [E:/projects/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)
2017-Dec-13 17:10:39.560 INFO core "FOUND Dwarf (0x0000022ce9035690) name:Aban Basennil id:1026 histfig_id:5113" [E:/projects/Dwarf-Therapist/src/dwarf.cpp:307] (read_data)
2017-Dec-13 17:10:39.563 INFO core "FOUND Dwarf (0x0000022c932e63c0) name:Tekkud Dastotkutam id:1353 histfig_id:20105" [E:/projects/Dwarf-Therapist/src/dwarf.cpp:307] (read_data)
2017-Dec-13 17:10:39.567 INFO core "FOUND Dwarf (0x0000022c932e7750) name:Led Athelfeb id:1369 histfig_id:19912" [E:/projects/Dwarf-Therapist/src/dwarf.cpp:307] (read_data)
2017-Dec-13 17:10:39.570 INFO core "FOUND Dwarf (0x0000022c93859020) name:Nish Sakrithfeb id:1606 histfig_id:7674" [E:/projects/Dwarf-Therapist/src/dwarf.cpp:307] (read_data)
2017-Dec-13 17:10:39.572 INFO core "FOUND Dwarf (0x0000022c9385a3b0) name:Sodel Otilmosus id:1617 histfig_id:8081" [E:/projects/Dwarf-Therapist/src/dwarf.cpp:307] (read_data)
2017-Dec-13 17:10:39.572 INFO core "IGNORING Dwarf name:Minkot Losisdeler id:1619 reason:visitor flags:312475760" [E:/projects/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)
2017-Dec-13 17:10:39.572 INFO core "IGNORING Dwarf name:Libash Itebtomus id:1624 reason:visitor flags:312475760" [E:/projects/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 13, 2017, 06:35:04 pm
These steps could take some time to reproduce, the save could help.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: BaronVonClop on December 13, 2017, 07:17:55 pm
Didn't even think of that. Here's the .rar of the save. (https://drive.google.com/file/d/1f0MEgBJPtiQhj99BA__YukBV8gvrddw1/view?usp=sharing)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Taom on December 13, 2017, 11:49:32 pm
Hello Clément.
Seems Therapist "doesn't see" dwarf prophets.
df 44.02, vanilla+phoebus
Some screenshots

The Prophet:
Spoiler (click to show/hide)

In citizens list:
Spoiler (click to show/hide)

Therapist (alphabetized/names):
Spoiler (click to show/hide)

He is not vampire or something like that, so maybe therapist just has no info about "new religious activity" staff.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 14, 2017, 05:19:42 am
Search his name in DT logs. Look for a line like that:
Code: [Select]
INFO core "IGNORING Dwarf name:Ubbul Oshurdomas id:7000 reason:visitor flags:310378608" [/home/clement/projects/Dwarf-Therapist/src/dwarf.cpp:382] (set_validation)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 14, 2017, 07:24:21 am
@maltelau I could not reproduce it on fedora, I'll try with ubuntu in a vm. I may need more information:
@BaronVonClop It crashed because of an unknown profession. I fixed the crash but I still need to add the new professions.

Speaking of professions, a lot of profession icons are missing (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/35).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Meph on December 14, 2017, 09:17:53 am
I understand better with a tri-state value.

Ignoring the indeterminate adventurer case, we can cover everything with:

S O
- - Asexual (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-asexual.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-asexual.png)
- I Heterosexual no commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female.png)
- C Heterosexual with commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female.png) with deeper colors (♂ ♀)
I - Homosexual no commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-male.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-female.png)
I I Bisexual no commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-bi.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-bi.png)
I C Bisexual with commitment with other sex (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-bi.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-bi.png) other sex half with deeper colors (or ⚥ ⚥ with your colors)
C - Homosexual with commitment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-male.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-female.png) with deeper colors (⚣ ⚢)
C I Bisexual with commitment with same sex (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-bi.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-bi.png) same sex half with deeper colors (or ⚥ ⚥ with your colors)
C C Bisexual with commitment  (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/male-bi.png) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/raw/master/resources/img/female-bi.png) with deeper colors (⚥ ⚥ or ⚥ ⚥ with your colors)

S: Same sex
O: Other sex
I: Interest
C: Commitment


For animals, Interest and Commitment should be considered equivalent. Only the current icons are used.

Is that all good?

How about no background for "no commitment", and a background color for "with commitment"? Do any of these look ok to you?

(https://i.imgur.com/m2xsWFj.png)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PatrikLundell on December 14, 2017, 10:34:44 am
That's a clever way to go about it (I didn't realize you could play with the background, but would probably not have thought of it if I did)!

I find the 2:nd of each group to be the clearest one. That would cover the hetero and homo cases, but the messy bi ones still remain.
However, bi no commitment, bi hetero commitment, and bi homo commitment would nicely fall into the same scheme, leaving the bi commitment case as the remaining trouble maker.
I'd try an orange or yellow background for the bi commit. Unfortunately I find it hard to find common ground with Fleeting Frames' work with Dwarf Manipulator given the differing constraints. If it's any consolation, my original thought about deeper color for commitment was "more saturated = more of it", as opposed to Fleeting Frames' "lighter = burning brighter".

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Meph on December 14, 2017, 10:58:55 am
Download icon pack (http://dffd.bay12games.com/file.php?id=13307)

(https://i.imgur.com/zhGsquU.png)
(icons are all 16x16px)

Hope they help. :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 14, 2017, 12:46:24 pm
Nice icons. Could you use this shape (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/resources/img/profession%20icons/prof_2.png) as background for consistency with other professions? And maybe the background color should match the in-game color.

For sexual orientation, background could be used for target sex (with split background for bixsexual), and the symbol color for own sex?
(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/df-sex-orient-f-bi-ii.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/df-sex-orient-f-bi-ic.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/df-sex-orient-f-bi-ci.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/df-sex-orient-f-bi-cc.png)
(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/df-sex-orient-m-bi-ii.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/df-sex-orient-m-bi-ci.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/df-sex-orient-m-bi-ic.png)(https://github.com/cvuchener/Dwarf-Therapist/raw/sex-icons/resources/img/df-sex-orient-m-bi-cc.png)
The symbols are not visible enough. The color palette needs improvement (less saturated and darker for commited backgrounds?).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Meph on December 14, 2017, 01:11:00 pm
Sure, although I did get the shape from prof_99. It's already used somewhere...

No idea about the colors though. The wiki only has this page: http://dwarffortresswiki.org/index.php/DF2014:Unit_type_token and I don't know which professions use which colors. Can't check ingame either, because I can't just embark with dancers and bards and mathematicians, these professions have no skill I could select on embark.



Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: maltelau on December 14, 2017, 02:24:01 pm
@maltelau I could not reproduce it on fedora, I'll try with ubuntu in a vm. I may need more information:
  • Is DF using the system libstdc++.so or its own, dfhack launcher delete the one included with DF I think, use "grep -F libstdc++.so /proc/$(pidof Dwarf_Fortress)/maps" while DF is running to be sure.
  • What is the state of the game when you are editing nicknames (paused/unpaused/in a menu/...)? I did get DT to crash when editing nickname with a unpaused game, but not the other way.

While paused and unpaused. Just tried again, still happens after running the fort a few years.

Code: [Select]
maltelau@maltelau-X556UQK:~$ grep -F libstdc++.so /proc/$(pidof Dwarf_Fortress)/maps
7ffff6661000-7ffff67d9000 r-xp 00000000 fd:01 20055940                   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.24
7ffff67d9000-7ffff69d8000 ---p 00178000 fd:01 20055940                   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.24
7ffff69d8000-7ffff69e2000 r--p 00177000 fd:01 20055940                   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.24
7ffff69e2000-7ffff69e4000 rw-p 00181000 fd:01 20055940                   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.24


Oh and just in case you didn't see the pm: http://dffd.bay12games.com/file.php?id=13304 (http://dffd.bay12games.com/file.php?id=13304)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: PatrikLundell on December 14, 2017, 03:23:47 pm
The split background improves things even further, and removes the need for wonky colors. I agree there is room for improvement in the "legibility" department, though.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Meph on December 15, 2017, 05:58:13 am
Turns out that most of your missing professions don't actually exist ingame. They are only skills, which doesn't necessarily mean that they have an associated profession or labor.

The bookbinder and papermaker are fine, but for example all the soft skills like dancer, bard, geographer etc. show as "peasant" both ingame and in the DT.

(https://i.imgur.com/PDuACiW.png)

I guess the missing profession sprites will never actually show up anywhere, except if you make it show the highest skill instead.

I redid them anyway with the other background you wanted, and made the papermaker and bookbinder blue, like they are ingame. The others don't have an ingame color as far as I'm aware (since they are skills, not professions).

I made the mercenary, snatcher, scout and monster hunter red, the soft skills purple (since these guys are as useless as nobles) and the scholars brown.

File is here: http://dffd.bay12games.com/file.php?id=13307 (http://dffd.bay12games.com/file.php?id=13307)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 15, 2017, 07:02:33 am
Not all professions depends on highest skills. Administration and military professions need an assignment. Tavern Keeper and Performers can be created by assigning dwarves to a tavern, scholar and scribe by assigning to a library. I guess you can get the specialized performer/scholar professions with an assignment + high skill (think recruit vs. <weapon>dwarf vs. master <weapon>dwarf). BaronVonClop problematic petitioner was a Criminal IIRC. And Taom reported a missing Prophet.

Some profession don't need as much care as others. I have only seen Beast hunter as visitors and I don't know if you can get a Snatcher as citizen in the vanilla game. I did not actually expect all of them to be done at once, so thanks for your very fast work.

For a color list, you can check DFHack's df-structures (https://github.com/DFHack/df-structures/blob/master/df.skills.xml#L653) (+ color code reference (http://dwarffortresswiki.org/index.php/DF2014:Color#Color_values) if you don't already know them), but it does not have the details for the new professions yet. And I don't mind using different colors for performers/scholars, using strictly in-game colors could use too much magenta.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Meph on December 15, 2017, 07:04:31 am
Ah, thanks for the detailed answer. I stand corrected.

Let me know if the second version of the icons I uploaded is fine for you. :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 16, 2017, 05:25:44 am
@maltelau I saw your log, but there is no error until DF crashes. I tried with Ubuntu 17.10 in a vm and could not reproduce the bug. You could still try this patch (https://github.com/cvuchener/Dwarf-Therapist/commit/73ece1425f2ff331ba653769860eb88b36b45287), it is a random attempt, but it might help (or make the crash less frequent, it is hard to say with random bugs).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Epigene on December 16, 2017, 06:05:42 am
Hi!

I am having trouble with labour list headers - they show up garbled.
(https://s2.postimg.org/jvn4b2ap5/Labors_Full.png)

I am running on Windows7 64bit DF v0.44.02 and Dwarf-Therapist-39.0.0-win64
My screen resolution is 2560x1440.

I have tried, without success:
1) changing screen resolution,
2) changing fonts used by DT
3) changing cell padding and size
4) chaging header options like gradient shading and text direction

I have also opened an issue in the github repo. https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/37 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/37)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 16, 2017, 08:49:17 am
I made a mistake with profession icon names: I was off by one. I renamed every thing but I am missing Monster Slayer (prof_107.png) (issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/35) was updated.

I checked in game and criminals are gray (dark gray? I am never sure). But you don't have to update now, it may be better to wait to know more about the new professions before remaking them.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 17, 2017, 01:02:15 pm
I am trying to automate release builds for Linux and macOS with travis. I finally got it to upload files, the linux AppImage need more work, but I have no idea if the macOS dmg works (the file size looks ok and there is no obvious error in the log). You can download it here (https://github.com/cvuchener/Dwarf-Therapist/releases/tag/travis-test) to test it.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: lethosor on December 17, 2017, 01:41:30 pm
It might be nice to include the platform in the filenames. I'll be able to test the Mac build tomorrow, probably, if nobody else gets to it first.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: jecowa on December 17, 2017, 03:08:13 pm
It requires Mac OS X 10.12 Sierra or later. It crashes when trying to connect to 32-bit Dwarf Fortress v0.44.02. But it's the best 64-bit Mac version of Dwarf Therapist that I've ever seen, and I really appreciate it. I'm glad you are able to make this. :D

I'm not too concerned about it not working with 32-bit Dwarf Fortress. Having Dwarf Therapist for 64-bit Dwarf Fortress removes the only reason for running 32-bit Dwarf Fortress, imo. (I only used 32-bit Dwarf Fortress because I hadn't been able to use Dwarf Therapist with the 64-bit version of Dwarf Fortress before now.) If you really care about this issue, the included 32-bit memory layout looks fine,though, and is the same as the one that's working in the old 32-bit Dwarf Therapist build from Fricy.

It'd be kind of cool if you could make it work on Mac OS X 10.11 El Capitan. Apple raised the system requirements with Sierra, so users with older computers are stuck on El Capitan. Your Sierra+ build brings support to 66% of Mac Users. The previous High Sierra+ build from salajander only supported 37% of Mac users. So your build is a big improvement. If you somehow got it working on El Capitan, that would allow 88% of Mac users to run 64-bit Dwarf Therapist.

Thank you very much!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 17, 2017, 04:18:57 pm
The 32/64 bits issue is known for OS X, but I forgot to say it. I created a related issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/38), so it is not forgotten.

I can choose other OS X versions (https://docs.travis-ci.com/user/reference/osx/#OS-X-Version). If I understand correctly, C++14 requires Xcode 6.3/Apple LLVM 6.1 (https://developer.apple.com/library/content/releasenotes/DeveloperTools/RN-Xcode/Chapters/Introduction.html#//apple_ref/doc/uid/TP40001051-CH1-SW378) or newer. Should I try the xcode6.4 image or is xcode8 enough? I don't know how OS X updates work, can everyone with OS X 10.10 update to 10.11?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: jecowa on December 17, 2017, 05:04:11 pm
Unless they are doing something weird, everyone with OS X 10.10 (Xcode 6.4) should be able to upgrade to 10.11 (Xcode 8). Apple has made a special webpage for users to download 10.10 El Capitan (normally you can only update to the latest version of OSX). According to a recent survey, only 2% of Mac players used v10.10 for Dwarf Fortress. So Xcode8 sounds great. Thank you!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: lethosor on December 17, 2017, 05:45:45 pm
If you're just referring to the table here (https://docs.travis-ci.com/user/reference/osx/#OS-X-Version), I'm pretty sure that's the OS X version running on Travis, which isn't necessarily the minimum that builds made on it will support. If that does end up also being the minimum version of OS X that DT builds can run on, you probably need the "-mmacosx-version-min=10.something" flag. If that doesn't work, I would honestly go with the oldest version of Xcode/clang/etc. that supports whatever features DT needs.

Also, if you're referring to this survey (https://esurv.org/results-overview.php?surveyID=MHOOKF_5e045b64&mode=4), that's not enough responses to be accurate.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: jecowa on December 17, 2017, 06:27:08 pm
Also, if you're referring to this survey (https://esurv.org/results-overview.php?surveyID=MHOOKF_5e045b64&mode=4), that's not enough responses to be accurate.
Yeah, that's the one I was using.

Here's another chart based on some other people's numbers for November 2017 (http://gs.statcounter.com/macos-version-market-share/desktop/worldwide):
Versions of OSXUsersNotes
OSX 10.13 High Sierra+14.95%(salajander's DT build)
OSX 10.12 Sierra+54.98%(Clément's DT test build)
OSX 10.11 El Capitan+75.73%
OSX 10.10 Yosemite+89.56%
OSX 10.9 Mavericks+94.75%
OSX 10.8 Mountain Lion+96.35%
OSX 10.7 Lion+97.70%
OSX 10.6 Snow Leopard+99.64%
OSX 10.5 Leopard+99.92%(Toady's Mac mini OS)
OSX 10.4 Tiger+99.99%(Dwarf Fortress doesn't run on Tiger.)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 17, 2017, 06:50:18 pm
The compile option seems a better solution, I'll use that. I still have to decide what minimum version it should be. Looking a few random functions that DT call, it requires at least 10.6+. Qt 5.6 requires 10.7 (http://doc.qt.io/qt-5.6/supported-platforms.html), Qt 5.9 requires 10.10 (http://doc.qt.io/qt-5.9/supported-platforms.html), Qt 5.10 requires 10.11 (http://doc.qt.io/qt-5.10/supported-platforms.html). The oldest version of this page I find in the internet archive is for Qt 5.4 (https://web.archive.org/web/20141226053257/http://doc.qt.io/qt-5/supported-platforms.html/) and it stills requires 10.7. I'll try with 10.7 first (and Qt 5.6) and go up if I have issues.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: jecowa on December 17, 2017, 08:50:19 pm
I'm not an expert at this stuff, but maybe Qt 4.8 supports OSX 10.6 Snow Leopard? 
http://doc.qt.io/archives/qt-4.8/supported-platforms.html

Also Splinterz recommended Qt 4.8 (http://www.bay12forums.com/smf/index.php?topic=122968.msg7016572;topicseen#msg7016572) to me earlier.

Mac OS X 10.6 Snow Leopard is also the earliest Mac version that the Lazy Newb Pack supports. Mac OS X 10.7 would still be super awesome, though.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 18, 2017, 04:56:01 am
DT requires Qt 5 now. Splinterz's post is interesting about the Qt 5 bugs until 5.4.1, Ubuntu Trusty (which travis uses) default Qt version is 5.2, I should try to avoid that and aim for Qt 5.6 too.

Edit: -mmacosx-version-min=10.7 seems to disable C++11 support, so I won't be able to use a min version so old. Also, how to I get Qt 5.6? "homebrew install qt" installs the latest version (Qt 5.10), "homebrew install qt@5.5" install Qt 5.5 but "homebrew install qt@5.6" does not work. I would prefer to use 5.6, as a LTS it received more bug fixes.

Edit2: OS X 10.9 is the minimum version I can support, 10.7 and 10.8 breaks C++11 support. For Linux, Ubuntu Trusty's Qt 5.2 works, Stephan Binner's Qt 5.6.3 (https://launchpad.net/~beineri/+archive/ubuntu/opt-qt563-trusty) segfaults during application initialization, and Stephan Binner's Qt 5.9.3 (https://launchpad.net/~beineri/+archive/ubuntu/opt-qt593-trusty) works. Test builds are still on the same page (https://github.com/cvuchener/Dwarf-Therapist/releases/tag/travis-test).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Starver on December 18, 2017, 08:19:19 am
Edit: try this build (https://framadrop.org/r/iuZ-ViiXJ_#vXtFpYOW2ae6KqEVz+DX6V4XJHqu/lWlw0rLp3LXp00=). If you don't already have it, you will need to install Visual C++ Redistributable for Visual Studio 2015 (https://www.microsoft.com/download/details.aspx?id=48145).
Reporting back on this: On one of the machines I found so affected (the only one I've tried) complains with the above (pre-redistributabled) "not a valid Win32 application", as per the other problem software that sparked off this little investigation.

Can't personally do much of anything else on this platform issue before the New Year, even if it was useful to do more. Which it probably isn't! But at least it is so noted. (...that I'm the only person in the world who seems to still have access to XP! :P)

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: jecowa on December 18, 2017, 08:23:11 am
Edit2: OS X 10.9 is the minimum version I can support, 10.7 and 10.8 breaks C++11 support. For Linux, Ubuntu Trusty's Qt 5.2 works, Stephan Binner's Qt 5.6.3 (https://launchpad.net/~beineri/+archive/ubuntu/opt-qt563-trusty) segfaults during application initialization, and Stephan Binner's Qt 5.9.3 (https://launchpad.net/~beineri/+archive/ubuntu/opt-qt593-trusty) works. Test builds are still on the same page (https://github.com/cvuchener/Dwarf-Therapist/releases/tag/travis-test).
Thank you! Mac OS X 10.9 is the minimum that most apps support now days. It worked fine on my 10.12 Sierra partition, but it's showing little dots instead of numbers on my 10.10 Yosemite partition. It's probably just a setting, though. It's working fine other than that.


Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 18, 2017, 09:18:42 am
If Options > Grid Options > Skill Drawing Method is set to "Growing Center Box", that's normal.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.0 | DF 44.02
Post by: Clément on December 18, 2017, 12:55:09 pm
New version released: 39.1.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.1.0)

Mostly bug fixes and updated memory layouts for those who did not already got them with the auto-updater.

Changelog:
Notes:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jecowa on December 18, 2017, 06:16:28 pm
Thank you! Your automatic Mac build works in OSX 10.10 Yosemite. Also you were right about that growing center box setting.

If anyone is running Mac OS X 10.9 Mavericks, I'd be curious to know if this build works for you. I'm also kind of curious what it looks like on a Retina Display.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jobywalker on December 19, 2017, 09:13:28 pm
I'm also kind of curious what it looks like on a Retina Display.

Looks fine on a 15" Retina MBP (https://imgur.com/gallery/vC5mC). There is a bit of graininess to the font at 1280x800, but not sure who would zoom in that much.  The only "issue" I've seen after a cursory look is when scrolling horizontally (such as on the Labors Full view), the column headers can scroll at a different speed than the data rows.


Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jecowa on December 20, 2017, 02:26:01 am
I'm also kind of curious what it looks like on a Retina Display.

Looks fine on a 15" Retina MBP (https://imgur.com/gallery/vC5mC). There is a bit of graininess to the font at 1280x800, but not sure who would zoom in that much.  The only "issue" I've seen after a cursory look is when scrolling horizontally (such as on the Labors Full view), the column headers can scroll at a different speed than the data rows.

Thanks for testing and the screenshots. I'm not getting the scrolling issue in non-Retina Yosemite. Do the column headers and data rows re-synchronize when you stop scrolling?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jobywalker on December 20, 2017, 03:09:12 am
I'm also kind of curious what it looks like on a Retina Display.
The only "issue" I've seen after a cursory look is when scrolling horizontally (such as on the Labors Full view), the column headers can scroll at a different speed than the data rows.

Thanks for testing and the screenshots. I'm not getting the scrolling issue in non-Retina Yosemite. Do the column headers and data rows re-synchronize when you stop scrolling?

Yes, they do sync back up so at rest all the columns line up appropriately. To be clear the difference isn't huge -- just enough to be noticeable while scrolling. After a bit more experimentation, this difference is also only expressed when the mouse cursor is over the column headers or the blank area under the data rows. If I try horizontal scrolling with the cursor over the data rows, they scroll in sync.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 20, 2017, 05:05:15 am
Qt supports high dpi (http://doc.qt.io/qt-5/highdpi.html) since Qt 5.6 and I built with Qt 5.5. I don't know why homebrew chose to keep 5.5 and 5.7 instead of the LTS versions (5.6 and 5.9). Maybe Qt 5.7 would work since I had to rise the minimum version because of C++11.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jecowa on December 20, 2017, 01:02:29 pm
Qt 5.7 might be nice.

Spoiler (click to show/hide)

I tried drawing some higher-rez versions of the icons.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: unknown zombie on December 20, 2017, 03:01:20 pm
It seems like something happened to the QT themes with the 39.1 release. On windows 10 the theme has reverted to some kind of strange Windows 95 look, and I'm really not trying to be picky, but it feels a lot busier and is not as easy to visually parse (for me at least).

I took screen shots of one of the option window pages just as an example.

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Starver on December 20, 2017, 03:53:20 pm
(So, basically without the 3d effect.  ;)  Don't get me wrong, I do very much like the slightly cleaner look of 10, regardless of being utterly identical in every functional way, but one does sort of expect something more annoyingly up-to-date after two decades, or more if you look back to preWin95 Windowses and ignore the times Macs/etc have previously looked like this. Though you'll appreciate that I do quite dislike a lot of the intermediate fancying-ups that have cropped up along the way, just for the sake of "looking new", only to age quicker than the things they tried to break away from.  The same applies to sports clothing, but that's a grumble for a different forum. :P )
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 20, 2017, 05:00:24 pm
I can confirm the Windows 10 issue. Although it worked fine when I tested it on Windows 7. Until I decide to try a new build (or wait for msys to fix it), you can try replacing the Qt dlls and the platform folder with ones from the previous version, it seems to work (with a very quick test).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: unknown zombie on December 20, 2017, 05:05:31 pm
Got it, thank you for the work-around.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 23, 2017, 11:08:51 am
I made a not-really-a-new-release: 39.1.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.1.1). No source code change, only the builds changed:
Hopefully, the OS X version will work better on retina display.

I checked the win64 build and the style works fine on Windows 10. The Visual C++ Runtime installer (vcredist_*.exe) is included is the archive, so it is a little bigger than previously but you'll know what to install if you get missing dll errors. I may remove it later to get smaller files.

I also moved the manual to a separate repository (https://github.com/Dwarf-Therapist/Manual), so it has its own releases.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jobywalker on December 23, 2017, 11:59:30 am
I made a not-really-a-new-release: 39.1.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.1.1). No source code change, only the builds changed:
  • use Qt 5.7 for OS X build

Hopefully, the OS X version will work better on retina display.


The Qt library isn't linked in correctly.  I reported this in Issue 41 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/41)

Termination Reason:    DYLD, [0x1] Library missing

Application Specific Information:
dyld: launch, loading dependent libraries

Dyld Error Message:
  Library not loaded: /usr/local/Cellar/qt@5.7/5.7.1/lib/QtGui.framework/Versions/5/QtGui
  Referenced from: /Applications/Lazy Mac Pack v0.44.02-barebones-alpha-a/LNP/Utilities/DwarfTherapist.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets
  Reason: image not found

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jecowa on December 23, 2017, 12:13:52 pm
It didn't work for me in OSX 10.10 Yosemite either.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Chief10 on December 25, 2017, 05:52:57 pm
Hi,

Will the the 44.02 version of this work with DF version 44.03 (released today)?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 25, 2017, 06:08:26 pm
No, it requires new memory layouts for each version. I am relying on DFHack to create memory layouts. As soon as df-structures (https://github.com/DFHack/df-structures) is updated, I should be able to create the new layout files. (it is a bug fix update, I don't think it will take long to update with the hints that Toady added to find the addresses)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Chief10 on December 25, 2017, 06:09:47 pm
No, it requires new memory layouts for each version. I am relying on DFHack to create memory layouts. As soon as df-structures (https://github.com/DFHack/df-structures) is updated, I should be able to create the new layout files. (it is a bug fix update, I don't think it will take long to update with the hints that Toady added to find the addresses)

Ok, thanks!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: lethosor on December 25, 2017, 11:10:56 pm
OS X 64-bit 0.44.03, untested as usual:
Code: [Select]
[info]
checksum=0x771377ee
version_name=v0.44.03 osx64
complete=true

[addresses]
cur_year_tick=0x101b73894
current_year=0x101b7388c
dwarf_civ_index=0x101b76028
dwarf_race_index=0x101b76034
fortress_entity=0x101b7c4f0
historical_entities_vector=0x101b85f08
creature_vector=0x101b997c0
active_creature_vector=0x101b997d8
weapons_vector=0x101b99918
shields_vector=0x101b999a8
quivers_vector=0x101b999f0
crutches_vector=0x101b99a38
backpacks_vector=0x101b99a50
ammo_vector=0x101b99a68
flasks_vector=0x101b99d20
pants_vector=0x101b9a428
armor_vector=0x101b9a488
shoes_vector=0x101b9a4a0
helms_vector=0x101b9a4b8
gloves_vector=0x101b9a4d0
artifacts_vector=0x101b9a578
squad_vector=0x101c97288
activities_vector=0x101c972e8
fake_identities_vector=0x101c99118
poetic_forms_vector=0x101c992e0
musical_forms_vector=0x101c99310
dance_forms_vector=0x101c99340
occupations_vector=0x101c993d0
world_data=0x101c9cee0
material_templates_vector=0x101c9da30
inorganics_vector=0x101c9da48
plants_vector=0x101c9da78
races_vector=0x101c9dbb0
itemdef_weapons_vector=0x101c9dc30
itemdef_trap_vector=0x101c9dc48
itemdef_toy_vector=0x101c9dc60
itemdef_tool_vector=0x101c9dc78
itemdef_instrument_vector=0x101c9deb8
itemdef_armor_vector=0x101c9ded0
itemdef_ammo_vector=0x101c9dee8
itemdef_siegeammo_vector=0x101c9df00
itemdef_glove_vector=0x101c9df18
itemdef_shoe_vector=0x101c9df30
itemdef_shield_vector=0x101c9df48
itemdef_helm_vector=0x101c9df60
itemdef_pant_vector=0x101c9df78
itemdef_food_vector=0x101c9df90
language_vector=0x101c9dfc0
translation_vector=0x101c9dff0
colors_vector=0x101ca6b88
shapes_vector=0x101ca6ba0
reactions_vector=0x101ca6bd0
base_materials=0x101ca7760
all_syndromes_vector=0x101ca8c40
events_vector=0x101ca9220
historical_figures_vector=0x101ca9250
world_site_type=0x0050
active_sites_vector=0x00048360

[offsets]
word_table=0x0038

[word_offsets]
base=0x0000
noun_singular=0x0008
noun_plural=0x0010
adjective=0x0018
verb=0x0028
present_simple_verb=0x0030
past_simple_verb=0x0038
past_participle_verb=0x0040
present_participle_verb=0x0048
words=0x0010
word_type=0x002c
language_id=0x003c

[general_ref_offsets]
ref_type=0x0010
artifact_id=0x0008
item_id=0x0008

[race_offsets]
name_singular=0x0008
name_plural=0x0010
adjective=0x0018
baby_name_singular=0x0020
baby_name_plural=0x0028
child_name_singular=0x0030
child_name_plural=0x0038
pref_string_vector=0x0070
castes_vector=0x00a0
pop_ratio_vector=0x00b8
materials_vector=0x2338
flags=0x00d0
tissues_vector=0x2350

[caste_offsets]
caste_name=0x0008
caste_descr=0x0088
caste_trait_ranges=0x0234
caste_phys_att_ranges=0x0de8
baby_age=0x0178
child_age=0x017c
adult_size=0x0190
flags=0x0360
body_info=0x0378
skill_rates=0x0578
caste_att_rates=0x0ffc
caste_att_caps=0x112c
shearable_tissues_vector=0x12b8
extracts=0x1c58

[hist_entity_offsets]
histfigs=0x0098
beliefs=0x0cc8
squads=0x1168
positions=0x1060
assignments=0x10b0
assign_hist_id=0x0004
assign_position_id=0x000c
position_id=0x0008
position_name=0x0080
position_female_name=0x0090
position_male_name=0x00a0

[hist_figure_offsets]
hist_race=0x0002
hist_name=0x0038
id=0x00b0
hist_fig_info=0x0100
reputation=0x0058
current_ident=0x0030
fake_name=0x0008
fake_birth_year=0x0060
fake_birth_time=0x0064
kills=0x0030
killed_race_vector=0x0018
killed_undead_vector=0x0090
killed_counts_vector=0x00a8

[hist_event_offsets]
event_year=0x0008
id=0x0020
killed_hist_id=0x0024

[item_offsets]
item_def=0x00e0
id=0x001c
general_refs=0x0038
stack_size=0x0078
wear=0x009c
mat_type=0x00ac
mat_index=0x00b0
maker_race=0x00b4
quality=0x00b6

[item_subtype_offsets]
sub_type=0x0010
name=0x0048
name_plural=0x0050
adjective=0x0058

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

[weapon_subtype_offsets]
single_size=0x0078
multi_size=0x007c
ammo=0x0070
melee_skill=0x0068
ranged_skill=0x006a

[armor_subtype_offsets]
layer=0x0010
mat_name=0x0060
other_armor_level=0x0064
armor_adjective=0x0068
armor_level=0x0074
chest_armor_properties=0x0080
pants_armor_properties=0x0090
other_armor_properties=0x0080

[material_offsets]
solid_name=0x0058
liquid_name=0x0060
gas_name=0x0068
powder_name=0x0070
paste_name=0x0078
pressed_name=0x0080
flags=0x0110
reaction_class=0x0260
prefix=0x02c8
inorganic_materials_vector=0x0190
inorganic_flags=0x0020

[plant_offsets]
name=0x0038
name_plural=0x0040
name_leaf_plural=0x0068
name_seed_plural=0x0058
materials_vector=0x0190
flags=0x0028

[descriptor_offsets]
color_name=0x0038
shape_name_plural=0x0040

[health_offsets]
parent_id=0x0010
body_part_flags=0x0018
layers_vector=0x0028
number=0x0054
names_vector=0x0060
names_plural_vector=0x0078
layer_tissue=0x0008
layer_global_id=0x0050
tissue_name=0x0018
tissue_flags=0x0008

[dwarf_offsets]
first_name=0x0008
nick_name=0x0010
last_name=0x0018
custom_profession=0x0050
profession=0x0058
race=0x005c
flags1=0x00c8
flags2=0x00cc
flags3=0x00d0
meeting=0x00d8
caste=0x00e4
sex=0x00e6
id=0x00e8
animal_type=0x00f0
civ=0x00f8
specific_refs=0x0160
squad_id=0x0190
squad_position=0x0194
recheck_equipment=0x0220
mood=0x0300
birth_year=0x032c
birth_time=0x0330
pet_owner_id=0x035c
current_job=0x0470
physical_attrs=0x059c
body_size=0x0680
size_info=0x0644
curse=0x07d8
curse_add_flags1=0x07c4
turn_count=0x0890
souls=0x09a0
states=0x08f8
labors=0x09d8
hist_id=0x0b18
artifact_name=0x0958
active_syndrome_vector=0x0b88
syn_sick_flag=0x004c
unit_health_info=0x0c30
temp_mood=0x07b0
counters1=0x0798
counters2=0x07b4
counters3=0x08c8
limb_counters=0x0b20
blood=0x065c
body_component_info=0x0488
layer_status_vector=0x0048
wounds_vector=0x0548
mood_skill=0x0478
used_items_vector=0x0c38
affection_level=0x000c
inventory=0x03b0
inventory_item_mode=0x0008
inventory_item_bodypart=0x000a

[syndrome_offsets]
cie_effects=0x0008
cie_end=0x0018
cie_first_perc=0x0098
cie_phys=0x00b0
cie_ment=0x00cc
syn_classes_vector=0x00b0
trans_race_id=0x00b0

[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=0x0058
mental_attrs=0x007c
skills=0x01e8
preferences=0x0200
personality=0x0218
beliefs=0x0000
emotions=0x0030
goals=0x0048
goal_realized=0x0028
traits=0x0080
stress_level=0x0120

[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
on_break_flag=0x0011
sub_job_id=0x0050
reaction=0x0008
reaction_skill=0x0050

[squad_offsets]
id=0x0000
name=0x0008
alias=0x0050
members=0x0058
orders=0x0070
schedules=0x0088
sched_size=0x0040
sched_orders=0x0010
sched_assign=0x0028
alert=0x00a0
carry_food=0x0170
carry_water=0x0172
ammunition=0x00f8
ammunition_qty=0x000c
quiver=0x0150
backpack=0x0154
flask=0x0158
armor_vector=0x0080
helm_vector=0x0098
pants_vector=0x00b0
gloves_vector=0x00c8
shoes_vector=0x00e0
shield_vector=0x00f8
weapon_vector=0x0110
uniform_item_filter=0x0004
uniform_indiv_choice=0x0030

[activity_offsets]
activity_type=0x0004
events=0x0008
participants=0x0048
sq_lead=0x00b4
sq_skill=0x00bc
sq_train_rounds=0x00c8
pray_deity=0x00b0
pray_sphere=0x00b4
knowledge_category=0x00c0
knowledge_flag=0x00c4
perf_type=0x00b0
perf_participants=0x00e0
perf_histfig=0x000c

[art_offsets]
name=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 or diplomat"
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="Dead, Jim."
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
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 26, 2017, 08:49:12 am
Experimental memory layouts for 0.44.03:
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: oliverosky95 on December 26, 2017, 11:02:30 am
Experimental memory layouts for 0.44.03:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/linux/v0.44.03_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/linux/v0.44.03_linux64.ini)
  • OS X 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/osx/v0.44.03_osx32.ini)
  • OS X 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/osx/v0.44.03_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/windows/v0.44.03_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/windows/v0.44.03_graphics_win64.ini)

If i replace the contents of v0.44.02_graphics_win64 with this, will it work with 44.03?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 26, 2017, 11:14:22 am
Don't replace, save the linked file in the same directory (share/memory_layouts/<your platform>), it should be a new file.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Maul_Junior on December 26, 2017, 06:54:00 pm
eagerly awaiting 44.03 DT (with the caveat to take your time and get things right, I can be patient), to fix the pedestal bug. I fortunately never had the visitor bug.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jecowa on December 26, 2017, 08:06:34 pm
Dwarf Therapist is working for me in both the 32-bit and 64-bit Mac versions!

eagerly awaiting 44.03 DT (with the caveat to take your time and get things right, I can be patient), to fix the pedestal bug. I fortunately never had the visitor bug.

Clément's 64-bit builds of Dwarf Therapist have auto-update. If you try to run the 44.02 Dwarf Therapist with Dwarf Fortress v0.44.03, then your copy of Dwarf Therapist should try to connect to the internet and download a tiny init file so you don't have to re-download the entire Dwarf Therapist.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: unknown zombie on December 26, 2017, 11:10:59 pm
DwarfTherapist always shows an error when starting up about being unable to do version check, so mine won't auto-update.

(https://i.imgur.com/XMxrp78.png)

The "Version Check Error" is always there, the "Memory Layout Error" is new (since DF executable got updated).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jecowa on December 26, 2017, 11:48:29 pm
DwarfTherapist always shows an error when starting up about being unable to do version check, so mine won't auto-update.

Spoiler (click to show/hide)

The "Version Check Error" is always there, the "Memory Layout Error" is new (since DF executable got updated).

You could also try a manual installation of the update:

First download the appropriate ini memory layouts for your platform from the list that Clément posted:

Experimental memory layouts for 0.44.03:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/linux/v0.44.03_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/linux/v0.44.03_linux64.ini)
  • OS X 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/osx/v0.44.03_osx32.ini)
  • OS X 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/osx/v0.44.03_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/windows/v0.44.03_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/windows/v0.44.03_graphics_win64.ini)

Then install them into your copy of Dwarf Therapist. (If you are using the Lazy Newb Pack, then your copy of Dwarf Therapist is located in basically something like "/Lazy Newb Pack/LNP/Utilities/Dwarf Therapist/".) Once you find your copy of Dwarf Therapist, here are the instructions for where to place those memory layouts:

Windows:
Stick those memory layout files in your \Dwarf Therapist\share\memory-layouts\windows\ folder.

Linux:
Stick those memory layout files in your /dwarf_therapist/share/dwarftherapist/memory_layouts/linux/ folder

Mac:
Right-click your copy of Dwarf Therapist and select "Show Package Contents." Then stick those memory layouts into the /Contents/MacOS/share/osx/ of the newly-opened window.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: unknown zombie on December 27, 2017, 03:17:55 am
Yeah, thanks, I already did. I just wanted to report that the auto-update wasn't working in the Windows version. I looked at the log file, but it didn't have anything helpful in regards to this problem, so I didn't bother pasting it.

Edit -- Here it is anyway:
Code: [Select]
2017-Dec-27 02:29:21.340 INFO core Dwarf Therapist "39.1.0" starting normally. [E:\projects\Dwarf-Therapist\src\dwarftherapist.cpp:186] (DwarfTherapist::setup_logging)
2017-Dec-27 02:29:21.340 INFO core Runtime QT Version 5.9.3 [E:\projects\Dwarf-Therapist\src\dwarftherapist.cpp:187] (DwarfTherapist::setup_logging)
2017-Dec-27 02:29:21.932 INFO core beginning to read settings [E:\projects\Dwarf-Therapist\src\dwarftherapist.cpp:213] (DwarfTherapist::read_settings)
2017-Dec-27 02:29:21.958 INFO core finished reading settings [E:\projects\Dwarf-Therapist\src\dwarftherapist.cpp:264] (DwarfTherapist::read_settings)
2017-Dec-27 02:29:22.010 INFO core attempting connection to running DF game [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:405] (MainWindow::connect_to_df)
2017-Dec-27 02:29:22.013 INFO core adding valid layout "v0.44.03 (graphics) win64" checksum: "0x5a40c6db" SHA: "1076e9d7389a4ea6d9b0e7e1108ac3b42a6566ce" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.015 INFO core adding valid layout "v0.44.03 (graphics) win32" checksum: "0x5a40bfbf" SHA: "03847d573c51de37464127b961513a872eef7097" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.017 INFO core adding valid layout "v0.44.02 (graphics) win64" checksum: "0x5a176770" SHA: "69dc0ddc768d6bf8cb1a02edb30c074668097215" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.018 INFO core adding valid layout "v0.44.02 (graphics) win32" checksum: "0x5a175fbd" SHA: "359124ebe1ff7cd6f34be0294d18119e355828ea" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.019 INFO core adding valid layout "v0.43.05 (graphics) win64" checksum: "0x577b5e93" SHA: "0701b88d6a3a859fb34f01760477a07703ec3efc" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.020 INFO core adding valid layout "v0.43.05 (graphics) win32" checksum: "0x577b57ff" SHA: "c7d0c12cdac3888c5b94474e18129ad33d6f09f6" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.020 INFO core adding valid layout "v0.43.03 (graphics) win" checksum: "0x57420c94" SHA: "e59e189883b73eaa5b78bdb300c8a8e8c03af411" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.021 INFO core adding valid layout "v0.43.02 (graphics) win" checksum: "0x5733848a" SHA: "80235020e8ebbd68cf9d44bc9a29f75ff47d8ad9" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.023 INFO core adding valid layout "v0.42.06 (graphics) win" checksum: "0x56bba192" SHA: "0471f4ffce54e1d2b62ab4edc3e0a904b6fb21e1" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.024 INFO core adding valid layout "v0.42.05 (graphics) win" checksum: "0x569bf3df" SHA: "8821e8b6d6aeb3d42f99d07191d6d11c1e0cfee6" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.026 INFO core adding valid layout "v0.42.04 (graphics) win" checksum: "0x567ef345" SHA: "679f317918f845ccb393657d7f1483649c12036d" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.027 INFO core adding valid layout "v0.42.03 (graphics) win" checksum: "0x566c7776" SHA: "09a24597d76fb995541d821b8fdaf2bfd640b34c" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.029 INFO core adding valid layout "v0.42.02 (graphics) win" checksum: "0x56633788" SHA: "d327a66eeafa92c396300062527966a037560271" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.031 INFO core adding valid layout "v0.42.01 (graphics) win" checksum: "0x565ca0e6" SHA: "1a14a8585cadfe6db9a90698c9b34437a48ff6ae" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2017-Dec-27 02:29:22.031 INFO core attempting to find running copy of DF [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:236] (DFInstanceWindows::find_running_copy)
2017-Dec-27 02:29:22.041 INFO core PID of process is:  11140 [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:242] (DFInstanceWindows::find_running_copy)
2017-Dec-27 02:29:22.041 INFO core PROC HANDLE: 0x518 [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:248] (DFInstanceWindows::find_running_copy)
2017-Dec-27 02:29:22.041 INFO core RAW BASE ADDRESS: 140695184998400 [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:283] (DFInstanceWindows::find_running_copy)
2017-Dec-27 02:29:22.041 INFO core Target EXE was compiled at  "2017-12-25T03:37:31" [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:78] (DFInstanceWindows::calculate_checksum)
2017-Dec-27 02:29:22.041 INFO core Setting memory layout for DF checksum "0x5a40c6db" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1081] (DFInstance::set_memory_layout)
2017-Dec-27 02:29:22.041 INFO core Detected Dwarf Fortress version "v0.44.03 (graphics) win64" using MemoryLayout from "C:/Users/james/dwarfTherapist/share/memory_layouts/windows/v0.44.03_graphics_win64.ini" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1086] (DFInstance::set_memory_layout)
2017-Dec-27 02:29:22.041 INFO core GetModuleFileNameEx returned:  "C:\\Users\\james\\dwarfFortress\\Dwarf Fortress.exe" [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:316] (DFInstanceWindows::find_running_copy)
2017-Dec-27 02:29:22.042 INFO core Dwarf Fortress path: "C:/Users/james/dwarfFortress" [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:319] (DFInstanceWindows::find_running_copy)
2017-Dec-27 02:29:22.042 INFO core Checking for layout for checksum:  "0x5a40c6db" [E:\projects\Dwarf-Therapist\src\updater.cpp:133] (Updater::check_layouts)
2017-Dec-27 02:29:22.511 INFO core Setting memory layout for DF checksum "0x5a40c6db" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1081] (DFInstance::set_memory_layout)
2017-Dec-27 02:29:22.512 INFO core Detected Dwarf Fortress version "v0.44.03 (graphics) win64" using MemoryLayout from "C:/Users/james/dwarfTherapist/share/memory_layouts/windows/v0.44.03_graphics_win64.ini" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1086] (DFInstance::set_memory_layout)
2017-Dec-27 02:29:22.512 INFO core Connection to DF version "v0.44.03 (graphics) win64" established. [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:429] (MainWindow::connect_to_df)
2017-Dec-27 02:29:22.769 INFO core Loaded 12 views from disk [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:170] (ViewManager::reload_views)
2017-Dec-27 02:29:22.772 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-27 02:29:22.775 INFO core group_by now set to 0  for view  "Military" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-27 02:29:22.777 INFO core group_by now set to 0  for view  "Attributes" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-27 02:29:22.780 INFO core group_by now set to 0  for view  "Roles" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-27 02:29:22.783 INFO core group_by now set to 0  for view  "Animals" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-27 02:29:22.787 INFO core group_by now set to 0  for view  "Weapons" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-27 02:29:22.788 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-27 02:29:22.788 INFO core "redrew views in 18ms" [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:317] (ViewManager::draw_views)
2017-Dec-27 02:29:22.788 INFO core current year: 1050 [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:784] (DFInstance::refresh_data)
2017-Dec-27 02:29:22.794 INFO core FOUND 3 squads [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:875] (DFInstance::load_squads)
2017-Dec-27 02:29:22.810 INFO core FOUND ACTIVE SQUAD "0x0000017731bee320" "The Arenas of Autonomy"  member count:  9  id:  1 [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:889] (DFInstance::load_squads)
2017-Dec-27 02:29:22.819 INFO core using active units [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:951] (DFInstance::get_creatures)
2017-Dec-27 02:29:22.819 INFO core no active units with our civ (reclaim), using full unit list [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:957] (DFInstance::get_creatures)
2017-Dec-27 02:29:22.888 INFO core "FOUND Dwarf (0x0000017731ef9230) name:Ilral ?rithish id:1372 histfig_id:36416" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.893 INFO core "FOUND Dwarf (0x0000017731f258b0) name:Tun Dumatuthmik id:2241 histfig_id:36012" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.898 INFO core "FOUND Dwarf (0x0000017731eed010) name:L?r Ekurlikot id:2368 histfig_id:33903" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.903 INFO core "FOUND Dwarf (0x0000017731eee3a0) name:Udib Amithadil id:2407 histfig_id:36013" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.908 INFO core "FOUND Dwarf (0x000001773284ab10) name:Tirist K?bukducim id:6132 histfig_id:37780" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.915 INFO core "FOUND Dwarf (0x000001773284bea0) name:Onol Fikodildom id:6133 histfig_id:37781" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.919 INFO core "FOUND Dwarf (0x000001773284d230) name:Shem Ular?nul id:6134 histfig_id:37782" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.923 INFO core "FOUND Dwarf (0x000001773284e5c0) name:Erush Litastnitig id:6135 histfig_id:37783" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.930 INFO core "FOUND Dwarf (0x000001773284f950) name:Likot M?rulshar id:6136 histfig_id:37784" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.934 INFO core "FOUND Dwarf (0x0000017732850ce0) name:Al?th R?tholon id:6137 histfig_id:37785" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.937 INFO core "FOUND Dwarf (0x0000017732852070) name:Zan Oltarnakuth id:6138 histfig_id:37786" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.938 INFO core "FOUND Dog (0x0000017732853400) name:Dog id:6139 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.939 INFO core "FOUND Dog (0x0000017732854790) name:Dog id:6140 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.940 INFO core "FOUND Cat (0x0000017732855b20) name:Cat id:6141 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.940 INFO core "FOUND Cat (0x0000017732856eb0) name:Cat id:6142 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.941 INFO core "FOUND Horse (0x0000017732858240) name:Horse id:6143 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.942 INFO core "FOUND Two-humped camel (0x00000177328595d0) name:Two-humped Camel id:6144 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.947 INFO core "FOUND Alpaca (0x00000177306e54b0) name:Alpaca id:6237 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.948 INFO core "FOUND Rabbit (0x00000177306eb900) name:Bunny id:6238 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.948 INFO core "IGNORING Cavy name:Cavy id:6270 reason:part of a merchant caravan flags:75497600" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:382] (Dwarf::set_validation)
2017-Dec-27 02:29:22.949 INFO core "IGNORING Cow name:Cow id:6271 reason:part of a merchant caravan flags:75497600" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:382] (Dwarf::set_validation)
2017-Dec-27 02:29:22.949 INFO core "IGNORING Cavy name:Cavy id:6272 reason:part of a merchant caravan flags:75497600" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:382] (Dwarf::set_validation)
2017-Dec-27 02:29:22.950 INFO core "IGNORING Reindeer name:Reindeer id:6273 reason:part of a merchant caravan flags:75497600" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:382] (Dwarf::set_validation)
2017-Dec-27 02:29:22.950 INFO core "IGNORING Pig name:Pig id:6274 reason:part of a merchant caravan flags:75497600" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:382] (Dwarf::set_validation)
2017-Dec-27 02:29:22.951 INFO core "FOUND Goat (0x000001773063d480) name:Nanny Goat id:6281 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.952 INFO core "FOUND Goat (0x000001773063e890) name:Goat Kid (Zunt?r Thibaminod) id:6282 histfig_id:37794" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.953 INFO core "FOUND Guineafowl (0x000001773063fca0) name:Guineacock (Zuglar Ottemducim) id:6283 histfig_id:37795" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-27 02:29:22.956 INFO core read 22 units in 124 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:399] (DFInstance::load_dwarves)
2017-Dec-27 02:29:22.965 INFO core calculated roles in 9 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:411] (DFInstance::load_dwarves)
2017-Dec-27 02:29:22.966 INFO core loaded population data in 1 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:416] (DFInstance::load_dwarves)
2017-Dec-27 02:29:22.975 INFO core found 22 units out of 39 creatures [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:430] (DFInstance::load_dwarves)
2017-Dec-27 02:29:23.041 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-27 02:29:23.081 INFO core loaded rows for "Labors Full" 40 ms [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:785] (DwarfModel::set_group_by)
2017-Dec-27 02:29:23.970 INFO core completed read in 1182 ms [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:628] (MainWindow::read_dwarves)
2017-Dec-27 02:29:27.754 INFO core Beginning shutdown [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:380] (MainWindow::closeEvent)
2017-Dec-27 02:29:27.754 INFO core beginning to write settings [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:357] (MainWindow::write_settings)
2017-Dec-27 02:29:27.755 INFO core finished writing settings [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:375] (MainWindow::write_settings)
2017-Dec-27 02:29:27.755 INFO core Closing Dwarf Therapist normally [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:386] (MainWindow::closeEvent)

I've only got this problem on the Windows version. The Linux version can check for updates just fine.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jecowa on December 27, 2017, 04:21:46 am
DwarfTherapist always shows an error when starting up about being unable to do version check, so mine won't auto-update.

(https://i.imgur.com/XMxrp78.png)

The "Version Check Error" is always there, the "Memory Layout Error" is new (since DF executable got updated).

The version check worked for me in the Mac version. I wonder if that version check error could be from your network. Are you using the wifi of a place that might be doing some stuff to restrict your internet? My school's student wifi network does stuff that messes up anything that uses SSL. I suspect that they are doing some kind of man-in-the-middle attack. (They are trying to sign the SSL certificates for every page themself. Google.com refuses to load in Chrome because it says the connection is compromised or something.)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: unknown zombie on December 27, 2017, 04:39:10 am
I'm using my home internet. The Linux version can connect just fine, Windows version chokes (both run from the same computer, on same network, just booting into different OS). I was figuring it might have something to do with the windows version of one of the library files.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 27, 2017, 05:18:02 am
Check your firewall settings, and check the auto-updater settings (owner and repository should be "Dwarf-Therapist", click "Restore Default" if it is not).

Anyway, the auto updater won't download the new memory layout until I merge them in the main repository. And I prefer to not rely too much on it, so I will make a new release soon with support for 0.44.03.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Rose on December 27, 2017, 05:19:14 am
Just curious, after a new maintainer comes in, what will the new thread be called?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 27, 2017, 06:01:19 am
The new maintainer will have to find something stronger (if I keep the title that way). But I hope I will be able to pass on the github organization.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: jecowa on December 27, 2017, 06:06:52 am
Dwarf Therapist 4.0 Re-re-reboot (Now with Extra Maintenance!)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: PatrikLundell on December 27, 2017, 07:03:16 am
The thread name can probably be changed into just "Dwarf Therapist v.* | DF 44.*" where * is the latest DT version / DF version number supported, as the old thread is sinking down in the board history and the DF version should indicate that you're looking at the currently active thread, in particular if Clément continues to bundle up DT versions with fresh layouts so the DF version ticks up.
A successor maintainer could then reuse the "(Really Maintained Branch)" indication if the hand over is unplanned (with a planned hand over this thread's name could be suffixed with (obsolete) as the finishing part of the hand over).
Given Clément's contributions, I'm in no hurry to see a successor, though :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Bumber on December 27, 2017, 06:14:19 pm
Extremely Really Very Maintained Branch
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: g2knee on December 27, 2017, 10:11:21 pm
the old thread is sinking down in the board history

The problem is the #1 results of Google search still pull up the old threads.  I wish we could take care of those somehow...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Button on December 28, 2017, 01:42:52 am
PTW
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: PatrikLundell on December 28, 2017, 04:32:56 am
the old thread is sinking down in the board history

The problem is the #1 results of Google search still pull up the old threads.  I wish we could take care of those somehow...
You could ask the moderators (which I think means Toady and Threetoe) to lock the old thread. That should be an indication that "this is not the tread you're looking for". For people to look for recent threads in the sub fora it's not an issue until such a time DT is honed to such perfection that there is no need for any changes, nor any questions (and I don't think the last part will ever happen).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: lethosor on December 28, 2017, 09:28:52 am
I believe they could also edit the title and/or first post to direct users to this thread.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Kat on December 28, 2017, 09:28:03 pm
I umm, seem to be having an issue with the latest version of dwarf therapist.

Some of the unit names don't match, which means something funny is going on.

I have two citizens who ingame are called one thing, but are called something else by dwarf therapist.

One of them is a Pilgrim, the other is a Monster Slayer. So, I'm wondering if they are using this new assumed identity thing, and dwarf therapist isn't picking that up.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: PatrikLundell on December 29, 2017, 04:31:03 am
DT used to have that issue with vampires, so it wouldn't be too far fetched. You could look them up with Legends Mode to see if the DT name exists while the DF displayed one does not (and with some luck the Legends info might even tell you what they're up to).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: AikonCWD on December 29, 2017, 04:48:13 am
I tried to use Dwarf Therapist with the new DF 0.44.03, I've downloaded this (https://github.com/splintermind/Dwarf-Therapist/releases/tag/v37.0.0)
Also added the following layout: (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/v0.44.03/share/memory_layouts/windows/v0.44.03_graphics_win64.ini)

But DT crash, I am using the wrong DT version or the wrong memory_layout?

EDIT: SOLVED! The right version is: https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases

Memory layout runs ok on my PC.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 29, 2017, 05:35:33 am
I umm, seem to be having an issue with the latest version of dwarf therapist.

Some of the unit names don't match, which means something funny is going on.

I have two citizens who ingame are called one thing, but are called something else by dwarf therapist.

One of them is a Pilgrim, the other is a Monster Slayer. So, I'm wondering if they are using this new assumed identity thing, and dwarf therapist isn't picking that up.
If the new assumed identity thing is different from vampires' fake identity, I am quite sure Dwarf Therapist does not pick it up.

If there is something weird with your save, it would be easier for me to debug if you uploaded it.

Also Monster Slayer are currently considered like mercenaries in DT: assignable to squad and not hidden when you don't display visitors (but the names I checked were correct in my fortress).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Clément on December 29, 2017, 07:22:54 am
New version released: 39.1.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.1.2)

Just updating the memory layouts for 0.44.03.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).

I also created a COPR repository (https://copr.fedorainfracloud.org/coprs/cvuchener/Dwarf-Therapist/) for Fedora users. The doc package won't build and I don't know how to fix it yet, but the main package is available.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: jecowa on December 29, 2017, 08:15:08 am
Thank you! It's working in OSX 10.10 Yosemite!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: Kat on December 29, 2017, 09:17:15 am
I umm, seem to be having an issue with the latest version of dwarf therapist.
Some of the unit names don't match, which means something funny is going on.
I have two citizens who ingame are called one thing, but are called something else by dwarf therapist.
One of them is a Pilgrim, the other is a Monster Slayer. So, I'm wondering if they are using this new assumed identity thing, and dwarf therapist isn't picking that up.
If the new assumed identity thing is different from vampires' fake identity, I am quite sure Dwarf Therapist does not pick it up.
If there is something weird with your save, it would be easier for me to debug if you uploaded it.
Also Monster Slayer are currently considered like mercenaries in DT: assignable to squad and not hidden when you don't display visitors (but the names I checked were correct in my fortress).

Okay, here's my save game: https://drive.google.com/open?id=1U9zwAlBehX2uXWCZh-LhynAn5YL89cZx

It's playing a modified civilisation of drows.

There are two citizens, and having used legendsviewer to look, Dwarf Therapist is reporting them under their real names.

Rel Anoeslik, "Rel Loverblocks", Pilgrim, is actually Vemini Matchedmurk.
Nique Gujegwuspin, "Nique Tunnelcradled", Monster Slayer, is actually Rafovi Wisdomhexes.

Oddly, they're both married, and looking at their spouses, shows their real name there as well, but the spouse's relationship screen shows the false name.

Confusing !
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.02
Post by: AikonCWD on December 29, 2017, 09:36:32 am
New version released: 39.1.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.1.2)

Just updating the memory layouts for 0.44.03.

Changelog:
  • added memory layouts for DF 44.03 (all platforms)
  • added support for retina display in osx

Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).

I also created a COPR repository (https://copr.fedorainfracloud.org/coprs/cvuchener/Dwarf-Therapist/) for Fedora users. The doc package won't build and I don't know how to fix it yet, but the main package is available.

Thanks!

I have two different errors, firts is a memory-layout error when I click "connect", the other is an SSL error while checking the auto-update. Can't add images since imgur.com is unavailable today ??, here is the logfile:

Code: [Select]
2017-dic.-29 15:30:28.085 INFO core attempting to find running copy of DF [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:236] (DFInstanceWindows::find_running_copy)
2017-dic.-29 15:30:28.088 INFO core PID of process is:  3588 [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:242] (DFInstanceWindows::find_running_copy)
2017-dic.-29 15:30:28.088 INFO core PROC HANDLE: 0x65c [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:248] (DFInstanceWindows::find_running_copy)
2017-dic.-29 15:30:28.089 INFO core RAW BASE ADDRESS: 140700535619584 [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:283] (DFInstanceWindows::find_running_copy)
2017-dic.-29 15:30:28.089 INFO core Target EXE was compiled at  "2017-12-25T10:37:31" [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:78] (DFInstanceWindows::calculate_checksum)
2017-dic.-29 15:30:28.089 INFO core Setting memory layout for DF checksum "0x5a40c6db" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1081] (DFInstance::set_memory_layout)
2017-dic.-29 15:30:28.089 INFO core Detected Dwarf Fortress version "v0.44.03 (graphics) win64" using MemoryLayout from "C:/Users/jgonzalez/Desktop/DwarfTherapist-v39.1.2-win64/share/memory_layouts/windows/v0.44.03_graphics_win64.ini" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1086] (DFInstance::set_memory_layout)
2017-dic.-29 15:30:28.089 INFO core GetModuleFileNameEx returned:  "C:\\Users\\jgonzalez\\Desktop\\df_44_03_win\\Dwarf Fortress.exe" [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:316] (DFInstanceWindows::find_running_copy)
2017-dic.-29 15:30:28.089 INFO core Dwarf Fortress path: "C:/Users/jgonzalez/Desktop/df_44_03_win" [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:319] (DFInstanceWindows::find_running_copy)
2017-dic.-29 15:30:28.089 INFO core Checking for layout for checksum:  "0x5a40c6db" [E:\projects\Dwarf-Therapist\src\updater.cpp:133] (Updater::check_layouts)
2017-dic.-29 15:30:28.255 INFO core Setting memory layout for DF checksum "0x5a40c6db" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1081] (DFInstance::set_memory_layout)
2017-dic.-29 15:30:28.255 INFO core Detected Dwarf Fortress version "v0.44.03 (graphics) win64" using MemoryLayout from "C:/Users/jgonzalez/Desktop/DwarfTherapist-v39.1.2-win64/share/memory_layouts/windows/v0.44.03_graphics_win64.ini" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1086] (DFInstance::set_memory_layout)
2017-dic.-29 15:30:28.255 INFO core Connection to DF version "v0.44.03 (graphics) win64" established. [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:429] (MainWindow::connect_to_df)
2017-dic.-29 15:30:28.550 INFO core Loaded 12 views from disk [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:170] (ViewManager::reload_views)
2017-dic.-29 15:30:28.554 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-dic.-29 15:30:28.557 INFO core group_by now set to 0  for view  "Military" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-dic.-29 15:30:28.560 INFO core group_by now set to 0  for view  "Attributes" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-dic.-29 15:30:28.563 INFO core group_by now set to 0  for view  "Roles" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-dic.-29 15:30:28.566 INFO core group_by now set to 0  for view  "Animals" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-dic.-29 15:30:28.566 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-dic.-29 15:30:28.566 INFO core "redrew views in 15ms" [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:317] (ViewManager::draw_views)
2017-dic.-29 15:30:53.980 INFO core current year: 83 [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:784] (DFInstance::refresh_data)
2017-dic.-29 15:30:53.987 INFO core FOUND 22 squads [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:875] (DFInstance::load_squads)
2017-dic.-29 15:30:54.004 INFO core using active units [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:951] (DFInstance::get_creatures)
2017-dic.-29 15:30:54.004 INFO core no active units with our civ (reclaim), using full unit list [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:957] (DFInstance::get_creatures)
2017-dic.-29 15:30:54.028 INFO core "FOUND Dwarf (0x000001ce4e5ad7d0) name:Ushat Inethraluk id:9016 histfig_id:11655" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.031 INFO core "FOUND Dwarf (0x000001ce5150ffb0) name:Ingish Erithabir id:9017 histfig_id:11656" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.035 INFO core "FOUND Dwarf (0x000001ce51c4b010) name:Ilral Delethshorast id:9018 histfig_id:11657" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.038 INFO core "FOUND Dwarf (0x000001ce5151cb30) name:Rakust Onulrigoth id:9019 histfig_id:11658" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.041 INFO core "FOUND Dwarf (0x000001ce52819020) name:Zuglar Ethaddastot id:9020 histfig_id:11659" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.044 INFO core "FOUND Dwarf (0x000001ce5281a3b0) name:Sarvesh Itonoshur id:9021 histfig_id:11660" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.047 INFO core "FOUND Dwarf (0x000001ce518fe010) name:Reg Bungekkubuk id:9022 histfig_id:11661" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.047 INFO core "FOUND Dog (0x000001ce518ff3a0) name:Dog id:9023 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.048 INFO core "FOUND Dog (0x000001ce30aae010) name:Dog id:9024 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.049 INFO core "FOUND Cat (0x000001ce30aaf3a0) name:Cat id:9025 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.050 INFO core "FOUND Cat (0x000001ce30ab0730) name:Cat id:9026 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.051 INFO core "FOUND Chicken (0x000001ce52246010) name:Hen id:9027 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.052 INFO core "FOUND Chicken (0x000001ce522473a0) name:Rooster id:9028 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.053 INFO core "FOUND Guineafowl (0x000001ce52248730) name:Guineahen id:9029 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.053 INFO core "FOUND Guineafowl (0x000001ce52249ac0) name:Guineacock id:9030 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.054 INFO core "FOUND Turkey (0x000001ce520a1220) name:Turkey Hen id:9031 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.055 INFO core "FOUND Turkey (0x000001ce521110b0) name:Turkey Gobbler id:9032 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.056 INFO core "FOUND Horse (0x000001ce5210d480) name:Horse id:9033 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.057 INFO core "FOUND Horse (0x000001ce5210c070) name:Horse id:9034 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-dic.-29 15:30:54.058 INFO core read 19 units in 51 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:399] (DFInstance::load_dwarves)
2017-dic.-29 15:30:54.063 INFO core calculated roles in 5 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:411] (DFInstance::load_dwarves)
2017-dic.-29 15:30:54.063 INFO core loaded population data in 0 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:416] (DFInstance::load_dwarves)
2017-dic.-29 15:30:54.074 INFO core found 19 units out of 20 creatures [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:430] (DFInstance::load_dwarves)
2017-dic.-29 15:30:54.103 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-dic.-29 15:30:54.131 INFO core loaded rows for "Labors Full" 28 ms [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:785] (DwarfModel::set_group_by)
2017-dic.-29 15:30:55.217 INFO core completed read in 1237 ms [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:628] (MainWindow::read_dwarves)
2017-dic.-29 15:30:57.308 INFO core Beginning shutdown [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:380] (MainWindow::closeEvent)
2017-dic.-29 15:30:57.308 INFO core beginning to write settings [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:357] (MainWindow::write_settings)
2017-dic.-29 15:30:57.310 INFO core finished writing settings [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:375] (MainWindow::write_settings)
2017-dic.-29 15:30:57.310 INFO core Closing Dwarf Therapist normally [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:386] (MainWindow::closeEvent)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on December 30, 2017, 05:29:25 am
@Kat, it is a simple bug actually: DT only use fake identity for vampires. I could just move the code so it is applied to everyone. Are there cases where we would not want to use the fake identity if it exists? (edit: related pull request (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/49))

@AikonCWD, what is this memory layout error? Everything looks fine in your log.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Kat on December 30, 2017, 09:27:04 am
@Kat, it is a simple bug actually: DT only use fake identity for vampires. I could just move the code so it is applied to everyone. Are there cases where we would not want to use the fake identity if it exists?

I'm not sure.
In my game, those citizens appeared to be members of my own civilisation in the legends, so I figure they could be agents of my civ's monarch, just keeping an eye on what I am doing. But... other citizens could be members of other civilisations, spying on my artifacts and so on, plotting raids and the like.
Maybe in future it'll be more important ? Perhaps it should be an option in the same section that allows highlighting of cursed citizens & vampires ? Showing the real names of potential spies tells the player something that they wouldn't otherwise know.

for example: a citizen that was raised in a different culture, would have a real name from that culture. Long-term players would recognise if a migrant has a human, goblin, or elvish real name. Which would be rather suspicious.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: martinuzz on December 31, 2017, 09:17:36 am
Can DT and DFHack run at the same time?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: lethosor on December 31, 2017, 09:25:50 am
Can DT and DFHack run at the same time?
Yeah. I think most pack users do that.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Saintpepsi on December 31, 2017, 06:50:59 pm
Whenever I try to use the latest release it doesn't connect to Dwarf Fortress, and crashes when it does. This is what I found in the log:

Code: [Select]
2017-Dec-30 19:28:01.106 INFO core Connection to DF version "v0.44.03 (graphics) win64" established. [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:429] (MainWindow::connect_to_df)
2017-Dec-30 19:28:01.532 INFO core Loaded 12 views from disk [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:170] (ViewManager::reload_views)
2017-Dec-30 19:28:01.535 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.538 INFO core group_by now set to 0  for view  "Military" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.541 INFO core group_by now set to 0  for view  "Attributes" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.543 INFO core group_by now set to 0  for view  "Roles" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.545 INFO core group_by now set to 0  for view  "Animals" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.546 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.546 INFO core "redrew views in 13ms" [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:317] (ViewManager::draw_views)
2017-Dec-30 19:28:01.546 INFO core current year: 250 [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:784] (DFInstance::refresh_data)
2017-Dec-30 19:28:01.548 INFO core FOUND 49 squads [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:875] (DFInstance::load_squads)
2017-Dec-30 19:28:01.549 INFO core no active units (embark) using full unit list [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:942] (DFInstance::get_creatures)
2017-Dec-30 19:28:01.612 INFO core "FOUND Dwarf (0x000001af69e828e0) name:Udib Asobirid id:24342 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.613 INFO core "FOUND Dwarf (0x000001af69e814d0) name:Dumed Akrelbim id:24343 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.615 INFO core "FOUND Dwarf (0x000001af69e83cf0) name:Nish Vucarostath id:24344 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.616 INFO core "FOUND Dwarf (0x000001af69e88d30) name:Cerol Nethrimtar id:24345 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.617 INFO core "FOUND Dwarf (0x000001af69e86510) name:Kumil Idashreg id:24346 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.617 INFO core "FOUND Dwarf (0x000001af69e8dd70) name:Cerol D?shmabrabed id:24347 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.619 INFO core "FOUND Dwarf (0x000001af69e8a140) name:Th?kut Avuzber id:24348 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.619 INFO core read 7 units in 70 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:399] (DFInstance::load_dwarves)
2017-Dec-30 19:28:01.623 INFO core calculated roles in 4 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:411] (DFInstance::load_dwarves)
2017-Dec-30 19:28:01.623 INFO core loaded population data in 0 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:416] (DFInstance::load_dwarves)
2017-Dec-30 19:28:01.629 INFO core found 7 units out of 7 creatures [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:430] (DFInstance::load_dwarves)
2017-Dec-30 19:28:01.652 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.670 INFO core loaded rows for "Labors Full" 18 ms [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:785] (DwarfModel::set_group_by)
2017-Dec-30 19:28:03.002 INFO core completed read in 1456 ms [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:628] (MainWindow::read_dwarves)
2017-Dec-30 19:28:03.011 WARNING core "illegal value" [E:\projects\Dwarf-Therapist\src\updater.cpp:181] (Updater::load_manifest)
2017-Dec-30 19:28:03.012 INFO core Setting memory layout for DF checksum "0x5a40c6db" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1081] (DFInstance::set_memory_layout)
2017-Dec-30 19:28:03.012 INFO core Detected Dwarf Fortress version "v0.44.03 (graphics) win64" using MemoryLayout from "C:/Users/jon/DwarfTherapist-v39.1.2-win64/share/memory_layouts/windows/v0.44.03_graphics_win64.ini" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1086] (DFInstance::set_memory_layout)
2017-Dec-30 19:28:03.012 INFO core Connection to DF version "v0.44.03 (graphics) win64" established. [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:429] (MainWindow::connect_to_df)
2017-Dec-30 19:28:03.340 INFO core Loaded 12 views from disk [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:170] (ViewManager::reload_views)
2017-Dec-30 19:28:03.344 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)

The log says it has connected, but it doesn't display anything and says "disconnected" in the bottom right corner. Here's a screenshot of a crash.

https://imgur.com/a/6d6Ya

Not sure what's going on.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: martinuzz on December 31, 2017, 10:14:53 pm
How do I open a Dwarf Details dock? The manual tells me they exist but I cannot find how to actually get them. I tried double clicking a dwarf name, didn't work, tried rightclicking, menu doesn't have the option.

EDIT: nvm, found it, windows tab


EDIT: Oh -  I am slightly this a point.

You can't edit trait values with DT? I suspect my duchess' low dutifullness (finds obligations confining) is preventing her from getting married to her lover. Wanted to tweak that, but apparently DT isn't capable of that?

What utility do I need to manage that, or is it not possible?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: PatrikLundell on January 01, 2018, 05:05:26 am
@martinuzz: Hacking is usually done with DFHack, with gui/gm-editor the go to tool if there isn't a script that does what you want to do (and don't want to write that script yourself, in which case gui/gm-editor is very handy to find what you need to change).
-I think there are some DFHack scripts for modifying various attributes, but I've never used any of them.
- Are you sure both the duchess and her lover are prepared to marry the people of the other one's gender? That's the most common stumbling block (prepared to engage in a love affair, but not to marry). I believe the "gaydar" script can alter there things.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 01, 2018, 05:31:14 am
Whenever I try to use the latest release it doesn't connect to Dwarf Fortress, and crashes when it does. This is what I found in the log:

Code: [Select]
2017-Dec-30 19:28:01.106 INFO core Connection to DF version "v0.44.03 (graphics) win64" established. [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:429] (MainWindow::connect_to_df)
2017-Dec-30 19:28:01.532 INFO core Loaded 12 views from disk [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:170] (ViewManager::reload_views)
2017-Dec-30 19:28:01.535 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.538 INFO core group_by now set to 0  for view  "Military" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.541 INFO core group_by now set to 0  for view  "Attributes" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.543 INFO core group_by now set to 0  for view  "Roles" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.545 INFO core group_by now set to 0  for view  "Animals" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.546 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.546 INFO core "redrew views in 13ms" [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:317] (ViewManager::draw_views)
2017-Dec-30 19:28:01.546 INFO core current year: 250 [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:784] (DFInstance::refresh_data)
2017-Dec-30 19:28:01.548 INFO core FOUND 49 squads [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:875] (DFInstance::load_squads)
2017-Dec-30 19:28:01.549 INFO core no active units (embark) using full unit list [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:942] (DFInstance::get_creatures)
2017-Dec-30 19:28:01.612 INFO core "FOUND Dwarf (0x000001af69e828e0) name:Udib Asobirid id:24342 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.613 INFO core "FOUND Dwarf (0x000001af69e814d0) name:Dumed Akrelbim id:24343 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.615 INFO core "FOUND Dwarf (0x000001af69e83cf0) name:Nish Vucarostath id:24344 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.616 INFO core "FOUND Dwarf (0x000001af69e88d30) name:Cerol Nethrimtar id:24345 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.617 INFO core "FOUND Dwarf (0x000001af69e86510) name:Kumil Idashreg id:24346 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.617 INFO core "FOUND Dwarf (0x000001af69e8dd70) name:Cerol D?shmabrabed id:24347 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.619 INFO core "FOUND Dwarf (0x000001af69e8a140) name:Th?kut Avuzber id:24348 histfig_id:-1" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:307] (Dwarf::read_data)
2017-Dec-30 19:28:01.619 INFO core read 7 units in 70 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:399] (DFInstance::load_dwarves)
2017-Dec-30 19:28:01.623 INFO core calculated roles in 4 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:411] (DFInstance::load_dwarves)
2017-Dec-30 19:28:01.623 INFO core loaded population data in 0 ms [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:416] (DFInstance::load_dwarves)
2017-Dec-30 19:28:01.629 INFO core found 7 units out of 7 creatures [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:430] (DFInstance::load_dwarves)
2017-Dec-30 19:28:01.652 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)
2017-Dec-30 19:28:01.670 INFO core loaded rows for "Labors Full" 18 ms [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:785] (DwarfModel::set_group_by)
2017-Dec-30 19:28:03.002 INFO core completed read in 1456 ms [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:628] (MainWindow::read_dwarves)
2017-Dec-30 19:28:03.011 WARNING core "illegal value" [E:\projects\Dwarf-Therapist\src\updater.cpp:181] (Updater::load_manifest)
2017-Dec-30 19:28:03.012 INFO core Setting memory layout for DF checksum "0x5a40c6db" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1081] (DFInstance::set_memory_layout)
2017-Dec-30 19:28:03.012 INFO core Detected Dwarf Fortress version "v0.44.03 (graphics) win64" using MemoryLayout from "C:/Users/jon/DwarfTherapist-v39.1.2-win64/share/memory_layouts/windows/v0.44.03_graphics_win64.ini" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:1086] (DFInstance::set_memory_layout)
2017-Dec-30 19:28:03.012 INFO core Connection to DF version "v0.44.03 (graphics) win64" established. [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:429] (MainWindow::connect_to_df)
2017-Dec-30 19:28:03.340 INFO core Loaded 12 views from disk [E:\projects\Dwarf-Therapist\src\viewmanager.cpp:170] (ViewManager::reload_views)
2017-Dec-30 19:28:03.344 INFO core group_by now set to 0  for view  "Labors Full" [E:\projects\Dwarf-Therapist\src\dwarfmodel.cpp:779] (DwarfModel::set_group_by)

The log says it has connected, but it doesn't display anything and says "disconnected" in the bottom right corner. Here's a screenshot of a crash.

https://imgur.com/a/6d6Ya

Not sure what's going on.
From your log, DT connect correctly one first time, then there is an error with the updater and it try to reconnect and crash. What happens if you disable the updater (Options > General > Updates > uncheck "Automatically Check for Updater")?

What do you mean by "doesn't display anything"? On your screenshot, I can see the list of dwarves.

@martinuzz, DFHack is what you need. DT is not a cheating tool (although it has a few options), it is meant to edit values (enabled labors, nicknames, squads) that you can already edit in game but displayed differently with more statistics. Currently DT does not show the difference between romance and commitment, but it is work in progress. The value you may want to edit is unit.current_soul.orientation_flags (https://github.com/DFHack/df-structures/blob/f713075c4dab5e3d8af475a8cf0f3be026f94d53/df.units.xml#L1690).

An old quote from Toady (http://www.bay12forums.com/smf/index.php?topic=140544.msg5471494#msg5471494), but I don't think it has changed.
Quote
Of course, all relationships are still eternal, so the lover thing is kind of broken now (sometimes it won't advance beyond lover because one of the parties is not interested in committing, but still neither ever breaks it off, ever...  not unrealistic in individual cases, but strange overall).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Saintpepsi on January 01, 2018, 07:17:27 am
From your log, DT connect correctly one first time, then there is an error with the updater and it try to reconnect and crash. What happens if you disable the updater (Options > General > Updates > uncheck "Automatically Check for Updater")?

That appears to fix it.

Quote
What do you mean by "doesn't display anything"? On your screenshot, I can see the list of dwarves.

Until the updater times out it doesn't display anything, and then it briefly displays the dwarfs before crashing.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: martinuzz on January 01, 2018, 07:38:55 am
Used gaydar on the lovers
She likes males
He likes females

Does this mean they won't marry, because gaydar does not say 'will marry' ?

@clément: I looked at this soul orientation flag, but I am not a coder, it's all gibberish to me. How would I go about editing values?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: PatrikLundell on January 01, 2018, 11:08:42 am
@martinuzz: Neither of them will marry anyone. Both are purely hetero, but neither will commit to marriage.
I believe there are options for gaydar to change the orientation. Try "help gaydar" in the DFHack console.
Otherwise, the soul orientation flags are boolean (true/false) flags:
The first one is Indeterminate, which is True only on adventurers. Then you have romance_male, romance_female, marry_male, marry_female (probably with slightly different names and order (this is written from memory), and your characters have the romance_male and romance_female flags set, respectively. You want the marry_male and marry_female flags to be set instead, so the romance_ flags should be set to toggled to False, while the marry_ flags should be toggled to True.
None of the flags in a gender pair True: Uninterested in that gender.
Romance_ and Marry_ for the same gender will not be set at the same time.
A flag set for both genders means the character is some version of bi-sexual, while a flag only for the own gender means it's a case of some flavor of homo sexual.

Boolean values are toggled in gui/gm-editor by moving the cursor on top of them and then hitting <ENTER>. Values of other types instead bring up a dialog box asking you to enter a value.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: martinuzz on January 01, 2018, 11:13:26 am
Thx will have a look at that gui/gm editor once my brain had some post-new year rest and recuperation  :D

(as far as I can tell from the online manual, gaydar is read only, and has no options for alteration. Help gaydar only tells you what basic gaydar does, ls gaydar tells me it's not a plugin)
 
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 02, 2018, 08:40:03 am
Speaking of sexual orientation, I have redone my icon set with new background colors. I also changed the size from 16×16 to 15×15 so I could center the female symbol, and removed the background border.
(https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-asexual.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-hetero-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-hetero-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-homo-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-homo-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ii.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ic.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ci.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-cc.png)
(https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-asexual.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-hetero-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-hetero-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-homo-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-homo-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ii.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ic.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ci.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-cc.png)

And double resolution (30×30) for high DPI display (it's vector graphics, it's cheap to make):
(https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-asexual@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-hetero-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-hetero-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-homo-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-homo-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ii@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ic@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ci@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-cc@2x.png)
(https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-asexual@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-hetero-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-hetero-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-homo-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-homo-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ii@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ic@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ci@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-cc@2x.png)

I am still not happy with the result. Maybe I should simplify by using gray background for not committed and uniform backgrounds for bisexuals except when committed to both.

edit: alternative with less background variety:
(https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-asexual.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-hetero-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-hetero-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-homo-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-homo-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ii.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ic.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ci.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-cc.png)
(https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-asexual.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-hetero-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-hetero-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-homo-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-homo-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ii.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ic.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ci.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-cc.png)

(https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-asexual@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-hetero-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-hetero-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-homo-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-homo-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ii@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ic@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ci@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-cc@2x.png)
(https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-asexual@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-hetero-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-hetero-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-homo-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-homo-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ii@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ic@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ci@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-cc@2x.png)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: PatrikLundell on January 02, 2018, 11:21:49 am
Thanks for your work, Clément!
Personally I'd vote for the first set, but either is more than good enough.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: jecowa on January 02, 2018, 03:58:55 pm
Speaking of sexual orientation, I have redone my icon set with new background colors. I also changed the size from 16×16 to 15×15 so I could center the female symbol, and removed the background border.
(https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-asexual.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-hetero-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-hetero-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-homo-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-homo-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ii.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ic.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ci.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-cc.png)
(https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-asexual.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-hetero-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-hetero-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-homo-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-homo-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ii.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ic.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ci.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-cc.png)

And double resolution (30×30) for high DPI display (it's vector graphics, it's cheap to make):
(https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-asexual@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-hetero-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-hetero-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-homo-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-homo-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ii@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ic@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-ci@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-f-bi-cc@2x.png)
(https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-asexual@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-hetero-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-hetero-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-homo-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-homo-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ii@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ic@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-ci@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/7a2146aaca94aeb997dd09ae96dc476677feba0c/resources/img/df-sex-orient-m-bi-cc@2x.png)

I am still not happy with the result. Maybe I should simplify by using gray background for not committed and uniform backgrounds for bisexuals except when committed to both.

edit: alternative with less background variety:
(https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-asexual.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-hetero-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-hetero-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-homo-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-homo-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ii.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ic.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ci.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-cc.png)
(https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-asexual.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-hetero-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-hetero-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-homo-i.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-homo-c.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ii.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ic.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ci.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-cc.png)

(https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-asexual@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-hetero-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-hetero-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-homo-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-homo-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ii@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ic@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-ci@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-f-bi-cc@2x.png)
(https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-asexual@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-hetero-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-hetero-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-homo-i@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-homo-c@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ii@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ic@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-ci@2x.png) (https://github.com/cvuchener/Dwarf-Therapist/raw/ff123cbbeb938fe8e5c4423061aa8fe227216a47/resources/img/df-sex-orient-m-bi-cc@2x.png)

Those look great! Do you want to use the upscaled icons I was working on?
(https://i.imgur.com/S3rMyyb.png)(https://i.imgur.com/w15d5ua.png)(https://i.imgur.com/jpRepk9.png)(https://i.imgur.com/bqGDXy0.png)
(https://i.imgur.com/zhLtX3v.png)(https://i.imgur.com/kZ2CTPG.png)(https://i.imgur.com/qqZSTpn.png)(https://i.imgur.com/2fZvcTz.png)
If you don't, that's fine. I just didn't know if I should bother making more or not.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 02, 2018, 04:54:27 pm
Wait until I add the support for that.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 03, 2018, 10:55:11 am
Do I need to split the "Gender & Orientation" groups? I don't think so, that would create too many bisexual groups.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: PatrikLundell on January 03, 2018, 11:56:38 am
That looks nice!

I think 3 groups is enough. On the other hand, when looking for (potential) mates I sort on age, and for that purpose I wouldn't mind having the non hetero marrying ones being somewhere else, but that would be a combination of several groups, and that's probably out of the scope.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 03, 2018, 12:56:21 pm
I have never used them, but I think that is was filter scripts are for. I should make the commitment available from them.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 05, 2018, 08:02:30 am
Before trying any high DPI change, I would like to check that I can replicate a high DPI environment on my 1080p display.

Here is the result using Gnome scaling at 2.00 and double grid view cell size (32px):
(https://tof.cx/images/2018/01/05/087b69b26950ad2cc4c7b40dab8f80a2.md.png) (https://tof.cx/images/2018/01/05/087b69b26950ad2cc4c7b40dab8f80a2.png)

Ignoring the fact the interface being squeezed because of the low resolution, does it look like what you get on real high dpi display? Are the display bugs, real bug from DT or an issue with Gnome scaling:
Edit: Or I should use the QT_SCALE_FACTOR env var?
(https://tof.cx/images/2018/01/05/648a6078b3ec9a74cf83b54dd46f3e65.md.png) (https://tof.cx/images/2018/01/05/648a6078b3ec9a74cf83b54dd46f3e65.png)
A more coherent scaling but the close button for docks uses a low resolution icon, unlike the previous scaling.

Edit2: Sexual orientation branch (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/51) is ready for testing.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: HammerHand on January 08, 2018, 03:17:00 am
Oh.  I've apparently been gone a long time.  Whole new DT thread and all.  So uh... don't mind me.  Just posting to watch for whenever I get back into this.  :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: buuface on January 11, 2018, 09:09:28 pm
Hi guys this may be a dumb question but can i play the latest version of DF  (44/4) with the latest current version of therapist?

 
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: jecowa on January 11, 2018, 09:27:37 pm
Hi guys this may be a dumb question but can i play the latest version of DF  (44/4) with the latest current version of therapist?

Not yet. We need an updated memory map to use it with the latest version. Keep watching the thread for the next update. It will look something like this (http://www.bay12forums.com/smf/index.php?topic=168411.msg7652805#msg7652805) or this (http://www.bay12forums.com/smf/index.php?topic=168411.msg7652992#msg7652992).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: buuface on January 11, 2018, 09:31:01 pm
thanks will keep an eye open!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: buuface on January 12, 2018, 01:49:01 am
Hi I doubt this is a bug but i can't work out why its happening;

All my dwarves keep changing their active labors as they choose -  for example my one of my two miners went to drink and the carpenter came along and picked up his pick and started mining instead.

I have set them specific labors in the therapist but they keep changing on their own and each time i 'read' the dwarves again he labors have changed and don't seem locked to the ones i specify. All dwarves can do anything they like apparently.

This never happened in previous versions of the game afaik

m using Py Starter Pack (.44.03.-r2 ) and manually added the latest version of therapist from this forum.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: feelotraveller on January 12, 2018, 02:16:22 am
Do you have autolabor or labormanager enabled in DFHack?  Either of them would do this.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: buuface on January 12, 2018, 02:21:34 am
Aha thankyou. I knew about autolabor but not labormanager
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 12, 2018, 04:35:36 am
Here are the experimental (untested) memory layouts for 0.44.04:
edit: fixed links
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Rose on January 12, 2018, 04:44:17 am
Your post has no links.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: feelotraveller on January 12, 2018, 05:07:31 am
You can find them here: https://github.com/cvuchener/Dwarf-Therapist/tree/memory-layouts-0.44.04/share/memory_layouts (https://github.com/cvuchener/Dwarf-Therapist/tree/memory-layouts-0.44.04/share/memory_layouts)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: feelotraveller on January 12, 2018, 05:31:52 am
Memory layout for linux64 loads fine but is showing a bunch of strange matches for preferences for Parchments and Paper Plants.

[Edit: got back for a proper look and Parchment and Paper Plants are matching all material preferences.  (And in the case of Tanners any Leather preferences are matching twice... once for Leather and repeated for Parchment.)]
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: clinodev on January 12, 2018, 06:22:03 am
Looks good on Windows 64, all the preferences seem fine, but no paper preferences so far.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 12, 2018, 08:40:19 am
Memory layout for linux64 loads fine but is showing a bunch of strange matches for preferences for Parchments and Paper Plants.

[Edit: got back for a proper look and Parchment and Paper Plants are matching all material preferences.  (And in the case of Tanners any Leather preferences are matching twice... once for Leather and repeated for Parchment.)]

I don't have that issue. Can you post the "[custom_roles]" section of your config file (~/.config/UDP Software/Dwarf Therapist.ini)? Does re-creating the custom role help?

My working preferences look like that:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: feelotraveller on January 12, 2018, 09:41:37 am
Full thing, beware the length and very much a wip...
Spoiler (click to show/hide)

Recreating my Tanner+
Code: [Select]
25\attributes\1\id=agility
25\attributes\2\id=kinesthetic sense
25\attributes\size=2
25\name=Tanner+
25\preferences\1\exact=false
25\preferences\1\flags\1\flag=29
25\preferences\1\flags\size=1
25\preferences\1\name=Leather
25\preferences\1\pref_category=0
25\preferences\2\exact=false
25\preferences\2\name=Parchments
25\preferences\2\pref_category=0
25\preferences\size=2
25\skills\1\id=12
25\skills\size=1

as Tanner ++
Code: [Select]
4\attributes\1\id=agility
4\attributes\2\id=kinesthetic sense
4\attributes\size=2
4\name=Tanner ++
4\preferences\1\exact=false
4\preferences\1\flags\1\flag=29
4\preferences\1\flags\size=1
4\preferences\1\name=Leather
4\preferences\1\pref_category=0
4\preferences\2\exact=false
4\preferences\2\mat_reaction=PARCHMENT
4\preferences\2\mat_state=5
4\preferences\2\name=Parchments
4\preferences\2\pref_category=0
4\preferences\size=2
4\skills\1\id=12
4\skills\size=1

by specifying exactly the same values in the role dialogue fixed the issue.  Merely copying it to a new name using the gui did not.

With Papermaker and Bookbinder I copied them then deleted the Paper Plants preference and readded.  This fixed the issue.  :)

[Quick edit: the Paper Plants and Parchment preferences were missing the mat_state and mat_reaction tags on my end.]
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 12, 2018, 10:51:42 am
But I have no idea why they were not saved correctly. When was the last time you saw these preferences working correctly? Any idea of what could have caused this?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Encrtia on January 12, 2018, 11:02:51 am
Can I just get a confirmation on the below images please?

(https://image.ibb.co/kLoOK6/Hetero.png) = Heterosexual Female/Male
(https://image.ibb.co/mjQERm/Bi.png) = Bisexual Female/Male
(https://image.ibb.co/dUKkXR/Gay.png) = Homosexual Male (didn't have a female...)
(https://image.ibb.co/ju5sCR/Asexual.png) = Asexual/Infertile Female/Male (denoted by being grey) [the one I am unsure about]

I only ask because my (https://image.ibb.co/ju5sCR/Asexual.png) bird laid some fertile eggs, but am unsure if this was my ignorance, a bug or rape.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 12, 2018, 11:36:53 am
You understood correctly the icons. It was already reported that DT does not interpret the sexual preference correctly. It is being worked on. I can provide an experimental windows build if you want to test it.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Encrtia on January 12, 2018, 11:41:19 am
You understood correctly the icons. It was already reported that DT does not interpret the sexual preference correctly. It is being worked on. I can provide an experimental windows build if you want to test it.

I see. Apologies for not knowing that, & thank you for explaining it to me. I don't mind living with it, so no need for you to go out of your way. If it'd help you though, what would I be doing? Just running a fort getting every animal to breed in controlled environments?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 12, 2018, 12:00:04 pm
Test this version (https://framadrop.org/r/WLEFzIq-8q#g2gmG9Jl5zAxHL0Rf03TivEgHRsNZoOzrZm+5HYko6M=), and see if the sexual orientation is more coherent. If you have DFHack, you can also check what the gaydar command (http://dfhack.readthedocs.io/en/stable/docs/_auto/base.html#gaydar) reports.

The discussion happened several pages ago (see PatrikLundell posts) (http://www.bay12forums.com/smf/index.php?topic=168411.60), it is normal that you missed it.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Encrtia on January 12, 2018, 12:27:27 pm
Test this version (https://framadrop.org/r/WLEFzIq-8q#g2gmG9Jl5zAxHL0Rf03TivEgHRsNZoOzrZm+5HYko6M=), and see if the sexual orientation is more coherent. If you have DFHack, you can also check what the gaydar command (http://dfhack.readthedocs.io/en/stable/docs/_auto/base.html#gaydar) reports.

The discussion happened several pages ago (see PatrikLundell posts) (http://www.bay12forums.com/smf/index.php?topic=168411.60), it is normal that you missed it.

So I did have a lesbian after-all! The Giant Bat that I thought was asexual (old DF Therapist's Diagnosis), finally admitted to her Giant Bat roommates that she was just into girls instead of being asexual (Confirmed by the DF Therapist Test Build & Gaydar. Also when Olivia the new Giant Bat arrived...)

So far things look fine from cross-referencing Gaydar with this test build. My pool was 40 animals (dwarfs are biologically incapable, presumed Pop Cap taking effect) & all matched up correctly. This batch included male/female bisexuals, male/female heterosexuals, 1 female asexual & 1 female homosexual. Miss the old icons though  :-[

Query, Giant Cave Swallow (male) likes males & will marry females (Gaydar). In English, bisexual? - DF Therapist agrees. Though what's the difference between the key terms Like & Marry for animals?

Also, unrelated, I have some "Phantoms of Brine" in my Gaydar that are asexual... who, or what, are they?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: PatrikLundell on January 12, 2018, 06:01:19 pm
Your cave swallow is a minor bi-sexual, i.e. likes to play around with males, but will go the whole distance only with females. Since lover relationships and marriages are exclusive affairs in DF that would mean a homo relation that would stall at Lover OR a hetero relation that would go all the way to marriage (as far as he's concerned: the female might want to go only up to Lover). This relation discussion isn't actually relevant for animals (like this one), however, since Toady has fixed animals so they'll reproduce as long as they're willing to go at least to the Lover stage. Thus, Like and Marry makes no difference for animals: they'll get down to it regardless (but obviously there'd be no results from homo business). The other difference between animals and "civilized" critters is that animals are promiscuous and also won't shy away from incest (although the latter is rampant in Legends...).

Phantoms of Brine are probably procedurally generated critters of the shrine or vault guardian type.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: feelotraveller on January 12, 2018, 06:16:42 pm
But I have no idea why they were not saved correctly. When was the last time you saw these preferences working correctly? Any idea of what could have caused this?

I am surprised too.  These preferences were working correctly with DF44.03 + DT39.1.2 a day earlier.  Using the same build of DT39.1.2 with DF44.04 (added memory layout you provided for 44.04) - and the same save - showed this problem.  Behaviour was the same for DT-sex-icons (sic) built from your branch.  So I suspect that either the memory layout or DF44.04 caused the change.  Can't say whether the correct tags existed previously and got deleted on load or if they were not needed to produce the correct preference display on screen before, although I suspect the former and no idea what might trigger this.  (Might want to advise users to redo their custom roles for parchments and paper plants with the release?)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Encrtia on January 12, 2018, 06:22:54 pm
Your cave swallow is a minor bi-sexual, i.e. likes to play around with males, but will go the whole distance only with females. Since lover relationships and marriages are exclusive affairs in DF that would mean a homo relation that would stall at Lover OR a hetero relation that would go all the way to marriage (as far as he's concerned: the female might want to go only up to Lover). This relation discussion isn't actually relevant for animals (like this one), however, since Toady has fixed animals so they'll reproduce as long as they're willing to go at least to the Lover stage. Thus, Like and Marry makes no difference for animals: they'll get down to it regardless (but obviously there'd be no results from homo business). The other difference between animals and "civilized" critters is that animals are promiscuous and also won't shy away from incest (although the latter is rampant in Legends...).

Phantoms of Brine are probably procedurally generated critters of the shrine or vault guardian type.

Thanks! Nicely summed up! My next question would be "shine/vault guardians?" But, I don't know if that's a spoiler or not in a way... so.. can I just ask if that's something I'll come across in my Fortress Mode? Thanks again in advance!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Encrtia on January 12, 2018, 06:23:20 pm
(Double Post)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: feelotraveller on January 12, 2018, 09:56:21 pm
Can't say whether the correct tags existed previously and got deleted [snip]

Actually I can.  I made a backup of my custom roles on 6 Dec '17 and in that file all three roles have both mat_state and mat_reaction properly specified.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Saintpepsi on January 13, 2018, 01:01:33 am
Something I have noticed is that Dwarf Therapist isn't displaying attributes correctly. I hit my dwarfs with Armok's blessing so all of their attributes should display as maxed out and DF shows them as maxed, but DT shows their starting attribute values.

One dwarf's attributes: https://i.imgur.com/GPVMpUD.png

What Dwarf Therapist shows: https://i.imgur.com/veEe3fH.png

Prior versions of Dwarf Therapist (43.5.1 is the prior version I have) displayed these values properly.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: PatrikLundell on January 13, 2018, 02:51:06 am
@Encrtia: Non DT questions are probably better asked in the game play or fortress mode sub forum rather than cluttering the DT thread.
Unless you've embarked on top of a vault or shrine you shouldn't encounter their inhabitants in fortress mode, and I think DF blocks you from embarking on top of those unless you use the DFHack embark anywhere option.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 13, 2018, 04:46:08 am
And how can I get the Armok's blessing for myself? Does it require prayers? I don't know the words.

Values in the grid are transformed by dark statistics magic. A low value may mean a dwarf is the worse than other dwarves but not absolutely bad. Look at the absolute values in the dwarf details window.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: PatrikLundell on January 13, 2018, 07:30:46 am
armoks-blessing.lua is a DFHack script which I think increases stats (I've never used it). To apply it to yourself you'd presumably have to inject yourself into a DF fortress, get someone else to invoke the script, and then extract yourself from DF. There are no guarantees you wouldn't crash on extraction, though...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: jecowa on January 13, 2018, 07:52:33 am
That sounds really complicated and possibly dangerous.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 13, 2018, 08:02:32 am
By "myself", I meant my own fortress (I don't want to live in DF world, seems dangerous). I tested the script, and it does maximize the attributes (value = max in the dwarf detail window). But dwarves have different max attributes so it is expected that some have low normalized values. Actually some blessed dwarves even have lower maximum attributes than the unchanged values of visitors.

So, it is not a bug. I will take that as a complaint against normalized values. What would be the solution? Adding columns displaying raw values instead of normalized (attributes are 3 or 4 digits values, that would require wide columns)? That also remind me of a suggestion to restrict role normalization to a smaller user-configured set.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Novaris on January 14, 2018, 11:59:16 am
Any chance to see this updated for 0.44.04? Seems the memory layout isn't the same or at least the programm complains about the definition files is missing.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 14, 2018, 12:11:11 pm
Try there (http://www.bay12forums.com/smf/index.php?topic=168411.msg7665590#msg7665590). I will make a release soon.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: verderuso on January 14, 2018, 01:39:05 pm
Should I just save that to the memory_layouts folder and remove the .txt ending and that's it? Thank you by the way!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Novaris on January 14, 2018, 02:02:05 pm
Thanks! :D DF just wouldn't be the same without DT :D
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Encrtia on January 14, 2018, 02:53:45 pm
Dwarf Therapist doesn't allow players to butcher Ravens. (Or at least the test build you sent doesn't)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: lethosor on January 14, 2018, 07:28:10 pm
Probably not significantly useful, but while I'm waiting for DFHack to upload, here are some 0.44.05 OS X layouts:

Spoiler: 0.44.05 osx64 (click to show/hide)
Spoiler: 0.44.05 osx32 (click to show/hide)

Edit: fixed checksums
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: jecowa on January 14, 2018, 09:04:26 pm
Wow, I didn't even realize 44.05 was out!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 15, 2018, 04:18:35 am
Here are the experimental (untested) memory layouts for 0.44.05:
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Novaris on January 15, 2018, 04:20:29 am
Thanks :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Achanei on January 16, 2018, 12:09:57 pm
Hi there!
I'm trying to get a playable DF going on my laptop, which runs ubuntu 16.04.
I've managed to sort out most of the issues that came up, and both DF with a tileset and DT are running, however DT doesn't manage to communicate with DF:
"I'm sorry but I don't know how to talk to this version of Dwarf Fortress!

Checksum: 0xcfe90090"

I tried to update the 44.05 memory layout, but it seems I've done something wrong, what I did was go into Dwarf-Therapist-Taster/share/memory_layouts/linux and put in the v0.44.05_linux64.ini file that was posted yesterday.

Is there a way for me to check if DT has successfully loaded the manually added memory file? After getting that error, the console lists a bunch of supported versions, but all of those are significantly older, 0.40.x versions. Or could it have something to do with the fact that I manually updated some RAWs of my DF with tilesets? some checksum issue or whatever?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 16, 2018, 12:41:32 pm
Modified raws don't change the checksum (it's the DF binary checksum). How did you install DT? Latest version should come with memory layouts from 0.42.01 to 0.44.03. 0.40.x is no longer supported.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: MangoGold on January 16, 2018, 01:52:23 pm
One of my dwarves has a different name in game and in therapist: https://i.imgur.com/Bz5pAzo.png
Bug?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 16, 2018, 02:02:08 pm
It should be fixed in the next release.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Achanei on January 16, 2018, 04:15:21 pm
Modified raws don't change the checksum (it's the DF binary checksum). How did you install DT? Latest version should come with memory layouts from 0.42.01 to 0.44.03. 0.40.x is no longer supported.

I downloaded the main repository ("Home Page" link at the beginning of the thread) and followed the build instructions. The 'About' says its version 39.1.2, and the linux memory layouts that came with it go up to 0.44.03 so it seemed fairly up-to-date to me. Its just when I actually run it in the console, it fails to connect and lists those very old compatibilities. There are also some other memory layout messages, this is the full console output:

Spoiler (click to show/hide)

As best as I can tell, there is some issue with loading either the manually added memory layout or all the more recent ones, but I'm far from an expert on all this, I just barely managed to get things working. Thanks for taking the time to help out!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: lethosor on January 16, 2018, 04:53:02 pm
What build instructions (link)? Maybe you accidentally got Splinterz's fork.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Achanei on January 16, 2018, 06:00:07 pm
What build instructions (link)? Maybe you accidentally got Splinterz's fork.

Uhm, I mean, the one in the opening post of this thread: https://github.com/Dwarf-Therapist/Dwarf-Therapist/

there's a readme.rst in there, with instructions to build the application and thats what I went with. required some fiddling with permissions, but other than that, its all from that repository right there.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: feelotraveller on January 17, 2018, 12:15:54 am
Open up Dwarf Therapist, go to options -> general  and make sure that your updates (down the bottom) are set to owner: Dwarf-Therapist and  repository: Dwarf-Therapist.  If owner was set to splintermind then it is understandable that the old memory layouts were downloaded from there, and it seems that might have caused problems.  After this I would suggest closing normally and then reinstalling Dwarf Therapist.  Then add the memory layout for 0.44.05.  Hoepfully it will now update memory layouts from the right repository and all will be well.  :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 17, 2018, 05:09:59 am
DT try to find a "memory_layouts/linux" folder in several locations. But I think it stops when the first one is found. You may have a old memory_layouts folder that is found before the one you want. DT should look in these locations (<appdir> is the location of the DwarfTherapist binary, <workdir> is where you start it from):
Code: [Select]
<appdir>/share
<appdir>/../share
~/.local/share/dwarftherapist
/usr/local/share/dwarftherapist
/usr/share/dwarftherapist
<workdir>
<workdir>/share
XDG_DATA_HOME and XDG_DATA_DIRS are environment variable that may change where the applications looks for files. Usually they are unset, I gave the paths for the default values. You can check if they have a value with "env | grep XDG_DATA".
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Achanei on January 17, 2018, 06:04:29 am
Open up Dwarf Therapist, go to options -> general  and make sure that your updates (down the bottom) are set to owner: Dwarf-Therapist and  repository: Dwarf-Therapist.  If owner was set to splintermind then it is understandable that the old memory layouts were downloaded from there, and it seems that might have caused problems.  After this I would suggest closing normally and then reinstalling Dwarf Therapist.  Then add the memory layout for 0.44.05.  Hoepfully it will now update memory layouts from the right repository and all will be well.  :)

Both owner and repository were set to Dwarf-Therapist by default, so I don't believe that is the issue. Still, it was worth checking, thank you!

DT try to find a "memory_layouts/linux" folder in several locations. But I think it stops when the first one is found. You may have a old memory_layouts folder that is found before the one you want. DT should look in these locations (<appdir> is the location of the DwarfTherapist binary, <workdir> is where you start it from):
Code: [Select]
<appdir>/share
<appdir>/../share
~/.local/share/dwarftherapist
/usr/local/share/dwarftherapist
/usr/share/dwarftherapist
<workdir>
<workdir>/share
XDG_DATA_HOME and XDG_DATA_DIRS are environment variable that may change where the applications looks for files. Usually they are unset, I gave the paths for the default values. You can check if they have a value with "env | grep XDG_DATA".


Ah, this is certainly the case, upon running locate I found the old linux memory layouts in usr/local/share. However, the new memory layouts are also in there (up to .44.03) and I tried simply pasting the .44.05 file, that didn't work. Should I try to delete the old memory layouts? I'm not going to go back to DF 0.40.x anytime soon...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 17, 2018, 06:22:03 am
You can delete the old memory layouts they won't work with the current DT anyway. But I don't see why it would stop reading the directory after the old ones. You should check the other paths in the list: the <appdir>/<workdir> ones may not be in locate search paths.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Achanei on January 17, 2018, 06:49:50 am
You can delete the old memory layouts they won't work with the current DT anyway. But I don't see why it would stop reading the directory after the old ones. You should check the other paths in the list: the <appdir>/<workdir> ones may not be in locate search paths.

so I fiddled around with it a bit, deleting the entire folder in /usr/local/share certainly got noticed and DT wouldn't start anymore. I put it back in with only the new files (0.44.02 to .05) and, well, this happened:

Spoiler (click to show/hide)

So yeah, you are right, those files are coming from somewhere else, they certainly aren't back in the usr/local/share directory. Guess i'll run find, see what turns up :)

EDIT:
Got it! home/$user/.local/share was the culprit, find turned up a dwarftherapist memory layouts folder there, and replacing the 0.40.x files there with the current one made it work. Awesome!

Pretty sure the problem was indeed the multiple old versions of DT I had used years ago, combined with the fact that DT stops looking after finding one set of memory layouts. The perils of playing the same game over and over again as new versions come out, I suppose.
Thank you and everyone else for the help, I really appreciate it - fort mode is basically unplayble without DT. Happy to know it is possible to get the game going on a linux machine!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.1 | DF 44.03
Post by: Clément on January 17, 2018, 09:03:44 am
There are several issues with the way DT looks for files.
The first one should be easy to fix.

The second one requires to use QStandardPaths to find a writable location and the first fix, since it may add updated layouts in a different location from the initial ones. It also requires to change the search paths order so the writable location (XDG_DATA_HOME on Linux, AppData on Windows) is checked first. (There is also the issue of the over-zealous updater than download older memory layouts than the ones you already have.)

The simplest solution would to rely completely on QStandardPaths (http://doc.qt.io/qt-5/qstandardpaths.html) and not adding extra search path. But on Linux, it does not use any path relative to <APPDIR> for AppDataLocation. That would force Linux users that have DT in a non-standard prefix (and I think that is a lot of users, LNP packagers would be affected too) to change the value of XDG_DATA_HOME or XDG_DATA_DIRS (ideal search order would be XDG_DATA_HOME, DT prefix, other data dirs).

Other issues with QStandardPaths are that there is no paths for documentation and it disagrees with QSettings on the config dir (<CONFIGDIR>/<organizationName> for QSettings vs. <CONFIGDIR>/<applicationName> for QStandardPaths).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on January 17, 2018, 10:13:41 am
New version released: 39.2.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.2.0)

Add support for latest DF (0.44.04 and 0.44.05), a few bug fixes and the sexual orientation changes.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: jecowa on January 17, 2018, 11:11:30 am
Will there still be Mac builds?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on January 17, 2018, 11:14:44 am
I don't know what is happening with Travis, the OSX build is not starting: https://travis-ci.org/Dwarf-Therapist/Dwarf-Therapist/jobs/329890384
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: jecowa on January 17, 2018, 11:39:20 am
Thank you. It looks like they are having problems and have a backlog for some reason. https://mobile.twitter.com/traviscistatus
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: lethosor on January 17, 2018, 12:18:17 pm
Looks like a known issue that should have been resolved a few hours ago: https://www.traviscistatus.com/incidents/c1s4dlyxd4lf

Edit: didn't see the post above. There's a contact email at that link, or you could try cancelling and restarting that build on Travis.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: jecowa on January 17, 2018, 12:25:16 pm
I think he tried doing a new build already. He did 163 and then 164. https://travis-ci.org/Dwarf-Therapist/Dwarf-Therapist/builds
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on January 18, 2018, 04:30:51 am
Actually, I posted the wrong link, there was two job for the same commit (163 for the current HEAD and 164 for the tag). 164 did fail too, but I restarted the job (later) and it passed and the mac build was uploaded.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: jecowa on January 18, 2018, 10:26:21 am
Thank you! I just tested it on Mac OS X 10.12 Sierra and it worked.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Lesurous on January 18, 2018, 10:00:17 pm
DT crashes everytime I open it, have the latest version, using it for the OldGenesis mod. It gives me the two SSL errors, but I can't find the solution.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on January 19, 2018, 04:24:45 am
Tell me what OS and architecture you are using. Also give the exact version of DF and the mod. Check the log (log/run.log) for any error or warning.

The SSL errors may be caused by your firewall, but it should only prevents the auto-updater from working, not crashing DT.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: i2amroy on January 19, 2018, 03:24:16 pm
Quote
added commitment details for sexual orientation (lover vs. marriage, only for citizens, not for animals)
This is great! (Once I found where the setting was hidden that was). It certainly explains why my planned generation fortress wasn't having any progress; turns out that basically everyone was unwilling to marry members of the opposite sex. Time to abandon and roll up a new fortress I guess.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: PatrikLundell on January 19, 2018, 04:38:50 pm
Quote
added commitment details for sexual orientation (lover vs. marriage, only for citizens, not for animals)
This is great! (Once I found where the setting was hidden that was). It certainly explains why my planned generation fortress wasn't having any progress; turns out that basically everyone was unwilling to marry members of the opposite sex. Time to abandon and roll up a new fortress I guess.
Or hack the buggers to stop shying away from their duties to procreate using DFHack (well, they may still need encouragement to actually produce offspring).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: i2amroy on January 26, 2018, 09:55:40 pm
Question, is there any way to view the Length/Height/Broadness attributes of animals or just the total size? I'm trying to breed bigger animals and it can be difficult to estimate the exact size modifiers for a particular one when exact age can make a huge difference on their current size.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on January 27, 2018, 05:02:45 am
DT read the body_size_info.size_cur value here (https://github.com/DFHack/df-structures/blob/c1e116acc0cb6f4a968503215237310d29947502/df.items.xml#L782). There are area and length values but, from the comments, I guess all creatures are cubes so that won't give more information.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: MiguelT on January 27, 2018, 02:16:00 pm
Ptw.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Ulfarr on February 02, 2018, 04:13:17 pm
Hello, I'm using DT 38.1 (via PeridexisErrant's DF starter pack v.43.05-r11) and whenever I try to use the "export current grid view to csv" function, DT will just crash. The csv file is being created every time and it, usualy, contains only the first few lines of the grid.

Is it a known issue and if yes, is there a solution?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: feelotraveller on February 02, 2018, 05:44:33 pm
I am unable to replicate this on linux 43.05 with 38.1.0.  Is it specific to a certain gridview or savegame?  Have you tried with a vanilla DF (non-lnp/starter pack)?  Also what operating system are you using?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Ulfarr on February 03, 2018, 03:18:00 am
Win 7 prof, 64-bit.

It happens regardless of the which gridview I try to export, in different saves (within LNP) and unless I screwed up somewhere, it happens with a fresh  DF45.03-64bit (sdl) and and standalone DT 38.01 too.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 03, 2018, 04:00:54 am
I can replicate the bug, on both linux and windows, with the latest DT.

PR 57 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/57) should fix that.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Ulfarr on February 04, 2018, 02:20:29 am
Nice  :)

Pardon my question, but how can I implement that fix?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 04, 2018, 04:21:05 am
Either use git to get the branch and compile it, or wait for a new release. Since there is not much activity these days, I may make a release just for you ;).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Ulfarr on February 04, 2018, 05:04:23 am
My programming skills are non existent, so no compiling for me.  I've been able to bypass the issue by taking screenshots, so I can certainly wait until the new release, whenever it might get ready.

I'm grateful for your offer, but please don't go out of your way to release one just for me :)

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 04, 2018, 05:27:15 am
Actually, there is a workaround. Add a filter script "!d.is_animal()" (use "d.is_animal()", if you want to export an animal gridview). Apply the filter, you should not actually see any changes to the creature list, but the export should not crash any more.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Ulfarr on February 04, 2018, 09:28:14 am
Works like a charm!

Thanks : D
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: PFunk on February 08, 2018, 08:14:22 am
My Dwarf Therapist  v.39.3 64 bit keeps crashing on start up with this error: The application was unable to start correctly (0xc000007b). Click OK to close the application.

The 32 bit version works. The older v.39.0 64 bit version works. Using Win 7 x64.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 08, 2018, 08:39:33 am
39.3 does not exist (or I am not aware if someone made a sneaky fork), I'll assume you are using 39.2.

Make sure you have the Visual C++ runtime installed correctly, you can install it by running vcredist_x64.exe included with Dwarf Therapist, or download it from Microsoft website (https://www.microsoft.com/download/details.aspx?id=48145).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: PFunk on February 08, 2018, 08:46:36 am
Yea, its .2, not .3. I have gone through installing it, restarting, and it still hasn't started working.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 08, 2018, 09:27:52 am
Based on this page (https://blogs.msdn.microsoft.com/dsvc/2017/09/20/diagnosing-status_invalid_image_format-c000007b-errors/), you could try the Dependency Walker Utility (http://www.dependencywalker.com/). Open DwarfTherapist.exe with it and check that the "CPU" column only contains "x64".
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: PFunk on February 08, 2018, 11:31:24 am
According to that program when I load DT I have several entries that are x86 and not x64.

EDIT. Interesting. I've used that program to isolate the problem now to a number of APIs from an old version of Skype I don't use anymore. If I remove them (temporarily) DT tells me I can't run it. Restore them and it gives me the error code again. They're all like this: API-MS-WIN-CORE-FILE-L1-2-0.DLL

EDIT2. And I solved it. Apparently I needed to install the "Update for Universal C Runtime in Windows" to make my version compatible with the modern SDK.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 09, 2018, 05:20:29 pm
v39.2.0 crashes for me on OS X today. It was working before, but now it just crashes on read
Code: [Select]
libc++abi.dylib: terminating with uncaught exception of type std::bad_alloc: std::bad_allochttps://pastebin.com/YM6twfxK

Did memory layouts change? I noticed that Dwarf Therapist downloads it before crashing.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 09, 2018, 06:13:02 pm
The was no memory layout change. Does it happen with other saves?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 10, 2018, 06:14:13 am
The was no memory layout change. Does it happen with other saves?
Can't believe I didn't think of that. No, the other saves are fine.
I made a copy of the current save in case you want to take a look on it. I'll play for some time to see if the issue will resolve itself.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 10, 2018, 07:40:20 am
Upload the save, please. Even if it solves itself, there is still a bug that may happen again.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 10, 2018, 10:19:52 am
Upload the save, please. Even if it solves itself, there is still a bug that may happen again.

Ok, dffd link (http://dffd.bay12games.com/file.php?id=13506)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 10, 2018, 01:03:23 pm
Just FYI: I've played for one in-game month on this save and I'm able to use Therapist again.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 11, 2018, 05:12:51 am
It does not crash for me. :( I checked with valgrind since this looked like a memory corruption and it can have random effects. I found uninitialized values related to wounds, although it looks harmless. Could the crash be related to the wounds of Asën Delerlolum (Farmer) or Unib Teshkadmistêm (Mechanic)? It is the permanent severed part/nerve damage that cause it, I don't think it would go away with time.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 11, 2018, 06:45:02 am
It does not crash for me. :(

Are you using OS X?

I checked with valgrind since this looked like a memory corruption and it can have random effects. I found uninitialized values related to wounds, although it looks harmless. Could the crash be related to the wounds of Asën Delerlolum (Farmer) or Unib Teshkadmistêm (Mechanic)? It is the permanent severed part/nerve damage that cause it, I don't think it would go away with time.
Running "full-heal" on those two doesn't fix the crash.

Letting the game advance 1 day fixes the crash (no notable notifications in the game log).
Killing all non-dwarves on the map doesn't fix the crash, but killing all dwarves does.

I think it's related to someone's job or state. I'll try to narrow down the issue by killing individual dwarves.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 11, 2018, 07:08:40 am
The dwarf who crashes therapist is "Barman", Tavern keeper, with a job "Serve Dwarven Rum!". Killing him fixes the crash instantly. Breaking his job by forbidding the cup and advancing few ticks works too.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 11, 2018, 08:38:13 am
No, I don't use OS X. I tested with Linux. I don't own a apple computer and last time I checked, I could not find a free download on apple web site to install it in a vm, only upgrades (if someone know where to find that, it could help).

Linux and OSX have almost the same memory layouts (they use the same compiler), so that seemed the best platform for testing that bug.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 11, 2018, 11:06:51 am
I'm pretty sure you can't legally run OS X on non-apple hardware. Of course it is possible (VM or Hackintosh), and I can help you with that, but it is against the TOS.

Looks like this crash it platform-specific. It affects only small subsection of players (OS X users), and it is easily avoidable (just don't assign a tavern keeper, or wait while he finishes serving drinks before reading memory). I'd say the juice is not worth the squeeze.

By the way, there are two features/changes that could be really nice to have:

1) player should not be able to assign Monster Slayers to squads (you can't do that through DF interface). Dwarf Therapist currently allows it

2) option to hide Monster Slayers (similar to hiding children) since we can't do anything with them anyway. Currently, having a lot of them makes assigning your own dwarves to squads in Dwarf Therapist a pain in the ass, because Monster Slayers look exactly like your own dwarves, with no way to discern them, and, having high military skills, they come on top of your own dwarves in any sorting mode.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 11, 2018, 11:21:19 am
The assignable monster slayers bug is known (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/48). Currently DT consider any visitor with a military profession to be a mercenary. I think the test (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/src/dwarf.cpp#L1192) should be based on the occupation instead of the profession.

The second bug is actually the same: mercenary are not filtered like other visitors.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: HellaJeff7312 on February 13, 2018, 10:28:29 am
This may be a simple/known problem and I'm just not seeing it in the thread, but i'm running v39.2.0 with DF v44.05 on Win 10 and DT isn't able to locate Dwarf Fortress for some reason. Started it while DF was running in my current fort, just get 'can't connect' popup.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: lethosor on February 13, 2018, 10:52:27 am
Are you using the SDL version of DF?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 13, 2018, 11:05:45 am
I think using legacy DF would get you a missing memory layout error.

Can you post the content of the log/run.log file?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: HellaJeff7312 on February 13, 2018, 01:33:26 pm
Are you using the SDL version of DF?

I believe so, since there are SDL folders and files in the DF directory, but I honestly know nothing about that sort of thing.

I think using legacy DF would get you a missing memory layout error.

Can you post the content of the log/run.log file?

There was an enormous amount of information in that file - too much to put in one post - but here is the most recent instance of my attempts to connect DT to DF:

Code: [Select]
2018-Feb-13 10:24:13.093 INFO core attempting connection to running DF game [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:406] (MainWindow::connect_to_df)
2018-Feb-13 10:24:13.095 INFO core adding valid layout "v0.44.05 (graphics) win64" checksum: "0x5a5bbc62" SHA: "56d3e713f01606ebafd1d9a19206076fe01e5e1e" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.096 INFO core adding valid layout "v0.44.05 (graphics) win32" checksum: "0x5a5bb383" SHA: "a0c18579181ae5f245fbfb512013076bd5fb654c" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.097 INFO core adding valid layout "v0.44.04 (graphics) win64" checksum: "0x5a568f07" SHA: "cf5b103cfa8e1504eb86a028e67d430ec1e1328d" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.098 INFO core adding valid layout "v0.44.04 (graphics) win32" checksum: "0x5a5687e6" SHA: "7ab86d32eb2c5adb1a71edb6854e57a7fb116f91" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.099 INFO core adding valid layout "v0.44.03 (graphics) win64" checksum: "0x5a40c6db" SHA: "21e3debe6634dda0a254491c9c60efc0e82876df" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.100 INFO core adding valid layout "v0.44.03 (graphics) win32" checksum: "0x5a40bfbf" SHA: "4ea302a365d2d3b08e368bac3ae84597f69029c4" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.101 INFO core adding valid layout "v0.44.02 (graphics) win64" checksum: "0x5a176770" SHA: "9e831bd40c8229de10a952d9ce382dcb3181b40c" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.103 INFO core adding valid layout "v0.44.02 (graphics) win32" checksum: "0x5a175fbd" SHA: "e5738d69fc608669759934e077de17ce5869fd53" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.104 INFO core adding valid layout "v0.43.05 (graphics) win64" checksum: "0x577b5e93" SHA: "5218ec4e1e6c5f3dbc63f8ce46ad7e6e218c796a" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.105 INFO core adding valid layout "v0.43.05 (graphics) win32" checksum: "0x577b57ff" SHA: "29eb9fbdba3efc4abbc08d49431621f937697b12" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.106 INFO core adding valid layout "v0.43.03 (graphics) win" checksum: "0x57420c94" SHA: "f58253a32c8a719959d5c55096614f80c34b7d00" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.107 INFO core adding valid layout "v0.43.02 (graphics) win" checksum: "0x5733848a" SHA: "97a9222673f762f1acc5e4cfe737e380b4a1108a" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.108 INFO core adding valid layout "v0.43.01 (graphics) win" checksum: "0x5731022d" SHA: "c17c0f62c50a4ac91360271fe7317433a4fb56a9" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.109 INFO core adding valid layout "v0.42.06 (graphics) win" checksum: "0x56bba192" SHA: "7d778155de6ecdaa5c2933af7f14e69601069477" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.110 INFO core adding valid layout "v0.42.05 (graphics) win" checksum: "0x569bf3df" SHA: "2c38c07aa67947bc4fa52f0c7086e5cf608cb0cc" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.111 INFO core adding valid layout "v0.42.04 (graphics) win" checksum: "0x567ef345" SHA: "0fa1a009508d9b271ae86cfde75f35741ddbc3c3" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.113 INFO core adding valid layout "v0.42.03 (graphics) win" checksum: "0x566c7776" SHA: "747ead87b43be1b5b70f3a838113a63cee6ebd6f" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.114 INFO core adding valid layout "v0.42.02 (graphics) win" checksum: "0x56633788" SHA: "3b1b62e68a16963767243a37e362b7eaeaad1a3a" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.115 INFO core adding valid layout "v0.42.01 (graphics) win" checksum: "0x565ca0e6" SHA: "d359ca9347936d47f1d536e303fc3b902303e0a0" [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:106] (DFInstance::DFInstance)
2018-Feb-13 10:24:13.115 INFO core attempting to find running copy of DF [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:236] (DFInstanceWindows::find_running_copy)
2018-Feb-13 10:24:13.121 INFO core PID of process is:  3120 [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:242] (DFInstanceWindows::find_running_copy)
2018-Feb-13 10:24:13.121 INFO core PROC HANDLE: 0x0 [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:248] (DFInstanceWindows::find_running_copy)
2018-Feb-13 10:24:13.121 ERROR core Error opening process! "The operation completed successfully." [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:251] (DFInstanceWindows::find_running_copy)
2018-Feb-13 10:24:13.121 ERROR core Error creating toolhelp32 snapshot! "Access is denied." [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:257] (DFInstanceWindows::find_running_copy)
2018-Feb-13 10:24:13.121 WARNING core lost connection to DF [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:467] (MainWindow::lost_df_connection)
2018-Feb-13 10:24:13.124 ERROR core ("Not Running", "Unable to locate a running copy of Dwarf Fortress, are you sure it's running?", "", "") [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:489] (MainWindow::lost_df_connection)
2018-Feb-13 10:24:16.375 INFO core Beginning shutdown [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:381] (MainWindow::closeEvent)
2018-Feb-13 10:24:16.375 INFO core beginning to write settings [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:358] (MainWindow::write_settings)
2018-Feb-13 10:24:16.376 INFO core finished writing settings [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:376] (MainWindow::write_settings)
2018-Feb-13 10:24:16.376 INFO core Closing Dwarf Therapist normally [E:\projects\Dwarf-Therapist\src\mainwindow.cpp:387] (MainWindow::closeEvent)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 13, 2018, 02:02:46 pm
Try running Dwarf Therapist as an administrator.

Note to myself: fix OpenProcess error message.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: HellaJeff7312 on February 13, 2018, 02:13:12 pm
Try running Dwarf Therapist as an administrator.

Note to myself: fix OpenProcess error message.

Well, I ran it as administrator and it is working. I feel kinda silly now. Thank you for the assistance!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 16, 2018, 09:42:11 pm
Is Dwarf Therapist supposed to save user settings? Is it normal that it doesn't? (Mac build)

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 17, 2018, 04:30:20 am
It is supposed to save user settings. If I am reading Qt doc correctly, it should be in "$HOME/.config/UDP Software/Dwarf Therapist.ini" (same as linux).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 17, 2018, 06:38:53 am
File was owned by root, which is my fault: I was using sudo to start Therapist when I was killing dwarves to determine which one causes the crash.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on February 20, 2018, 07:30:39 am
New version released: 39.2.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.2.1)

A few bug fixes.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: jecowa on February 23, 2018, 03:19:56 am
Just tested it in Mac OS X 10.10 Yosemite and 10.12 Sierra, and it still works. Thanks!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on February 23, 2018, 01:04:40 pm
It is supposed to save user settings. If I am reading Qt doc correctly, it should be in "$HOME/.config/UDP Software/Dwarf Therapist.ini" (same as linux).

I still had troubles saving user settings, until I did

sudo chmod go+w .config/UDP\ Software/Dwarf\ Therapist.ini

Before that, I tried to change ownership a few times, but DT would change it back to root every time.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Pvt. Pirate on March 01, 2018, 05:47:11 am
i got no clue as of why, but DT cannot be executed on my win7-64bit.
i got this problem since DF switched to 64 bit. DF runs fine though, but DT just gives an error message:
Quote
Die Anwendung konnte nicht korrekt gestartet werden (0xc000007b). Klicken sie auf "OK", um die Anwendung zu schließen.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 01, 2018, 05:55:53 am
Same error as PFunk (http://www.bay12forums.com/smf/index.php?topic=168411.msg7687449#msg7687449)?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: falcn on March 01, 2018, 08:28:27 am
...and the OS X build still crashes on load if there is a "Serve Dwarven Wine" job in the list.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Pvt. Pirate on March 01, 2018, 08:35:34 am
Same error as PFunk (http://www.bay12forums.com/smf/index.php?topic=168411.msg7687449#msg7687449)?
yes, same error.
the 32 bit version works.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 02, 2018, 08:38:20 am
...and the OS X build still crashes on load if there is a "Serve Dwarven Wine" job in the list.
Does "Serve Dwarven Rum" crashes DT too? DT does not look the details of the service order, it should be the same, but it does not crash for me.

The stack trace in the crash report shows it happens in Qt or OSX functions. It could be a bug specific to Qt on OS X, in which case I cannot help you (maybe check this bug report (https://bugreports.qt.io/browse/QTBUG-49964), it has a similar stack trace). Or it could be a memory corruption that crashes later, I did no see anything with valgrind on linux.

You could try making you own debug build of DT (add -DCMAKE_BUILD_TYPE=Debug to cmake options) and run it with valgrind or gdb.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: thistleknot on March 03, 2018, 01:03:12 pm
Feature request

Any way to get a gridview for preferences?  I can create grid views for skills and beliefs, but if I want to view preferences (yes/no) in a matrix, not possible
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 03, 2018, 05:32:12 pm
I'll see what I can do. I created an issue on github (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/63), so I don't forget.

I should not be to difficult to reuse the role preferences without a role. Do you want only the generic preference matches (the one you see in the role editor when you did not connect to a fortress), or all the exact preferences? There are really a lot of them, it would not fit the current grid view editor UI.

Until I add that, you can create custom roles using only preferences. It will mess with the role score normalization but you will be able to add them in grid views.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Weirdsound on March 04, 2018, 07:15:12 pm
Hey guys. For some reason, Dwarf Therapist has started crashing every time I try to connect to a fortress. Something about memory issues. I've updated to the most recent version, and the problem remains.

If anybody wishes to help, Here is a screen cap of the error messages, which can be found at the bottom right of the image: (http://i.imgur.com/OPbZd25.png) (https://imgur.com/OPbZd25)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 05, 2018, 04:05:25 am
Does it happen with any fortress or just this one? Check log/run.log for errors or warnings.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: jecowa on March 05, 2018, 08:13:55 pm
This guy has been asking about this problem in the past few DF questions threads on Reddit. It looks like a complicated problem.
Quote from: Luca____
Quote from Luca____ on Reddit's /r/dwarffortress: (https://www.reddit.com/r/dwarffortress/comments/81u523/biweekly_df_questions_thread/dv8lq6i/)

I am running the LNP( LinuxLNP-0.43.05-r07) on Linux (xfce 4.10, Xubuntu) and whenever I try and open Dwarf Therapist, it gives me a screen telling me that it needs to run as root. I accept it, enter my password, then nothing happens. What could be wrong?

I also get the problem when opening that it is missing a file (setcap). When I update it, DT still doesn't recognize that I have it now. When I open the terminal and run the program, it says that "[the command for root access] line 124: getcap: command not found".

I am a newbie at Linux, what should I do to fix this?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Weirdsound on March 05, 2018, 11:28:06 pm
Does it happen with any fortress or just this one? Check log/run.log for errors or warnings.

The issue persisted even after deleting the entire world and starting fresh. Luckily for me, it just started working again for reasons I can neither understand nor explain. I guess the issue is resolved for now.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: PatrikLundell on March 10, 2018, 09:36:23 am
A couple of notes:
- I happened to browse around the tabs and found a "donate" option under help. Out of curiosity I checked who'd it would donate to, and it refers to Splintermind, which I think it's obsolete given that he's no longer active.
- The latest DF update makes use of some previously disused military skills (or at least Tactics). I couldn't find it in any of the tabs (but I can't discount poor search abilities), so that might be a candidate for being added.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 10, 2018, 09:57:03 am
- I happened to browse around the tabs and found a "donate" option under help. Out of curiosity I checked who'd it would donate to, and it refers to Splintermind, which I think it's obsolete given that he's no longer active.
I never checked those. The forum link is wrong too.

- The latest DF update makes use of some previously disused military skills (or at least Tactics). I couldn't find it in any of the tabs (but I can't discount poor search abilities), so that might be a candidate for being added.
It is available for custom grid views and custom roles (as "Military Tactician"). Suggestions for changing/adding default grid views and roles are always welcome. I am not the most informed person about gameplay changes.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: PatrikLundell on March 10, 2018, 10:40:36 am
Thanks, it's good to know where to find it.

I think we need help from someone who know these skills and which ones might be available in order to come up with a suggested update to include reactivated skills. Military Tactician is the one Toady mentions in the release notes, but I think I've seen mentions of other skills by others earlier.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Lossanity on March 10, 2018, 04:48:06 pm
Has anyone had a chance to find a memory layout for the latest version? I'm looking forward to playing 44.06 but find it practically impossible without dwarf therapist haha.
Please and thank you!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: lethosor on March 10, 2018, 05:07:16 pm
DFHack research is still in progress. I can get an OS X one up soon, but no guarantees that it's right.

Edit:
Spoiler: 0.44.06 osx64 (click to show/hide)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Lossanity on March 11, 2018, 12:49:31 am
I'm using windows (and I'm guessing the memory layouts are completely different?), but thank you anyway!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: lethosor on March 11, 2018, 02:20:38 am
Yeah, the Windows one is different. Linux is pretty similar to OS X. I think DFHack is to the point where Clement or others could generate a layout that (at least mostly) works.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 11, 2018, 03:20:39 am
Experimental memory layouts for 0.44.06 (untested):
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Lossanity on March 11, 2018, 04:25:04 am
Experimental memory layouts for 0.44.06 (untested):
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.06/share/memory_layouts/linux/v0.44.06_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.06/share/memory_layouts/linux/v0.44.06_linux64.ini)
  • OS X 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.06/share/memory_layouts/osx/v0.44.06_osx32.ini)
  • OS X 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.06/share/memory_layouts/osx/v0.44.06_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.06/share/memory_layouts/windows/v0.44.06_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.06/share/memory_layouts/windows/v0.44.06_graphics_win64.ini)
Windows 64 bits seems to be working just fine! Thank you!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Leonidas on March 12, 2018, 12:09:15 am
Is there a column for the Military Tactics skill?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: PatrikLundell on March 12, 2018, 02:19:03 am
Is there a column for the Military Tactics skill?
See Clément's answer to my comment a few posts up...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 13, 2018, 04:06:29 am
Experimental memory layouts for 0.44.07 (untested):
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: MantisMan on March 15, 2018, 03:29:02 am
This shows up exactly the day I come back to see whether the game updated.

Thanks a bunch! The memory layout for Win64 seems to work fine so far!
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: thistleknot on March 16, 2018, 02:04:07 am
I'll see what I can do. I created an issue on github (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/63), so I don't forget.

I should not be to difficult to reuse the role preferences without a role. Do you want only the generic preference matches (the one you see in the role editor when you did not connect to a fortress), or all the exact preferences? There are really a lot of them, it would not fit the current grid view editor UI.

Until I add that, you can create custom roles using only preferences. It will mess with the role score normalization but you will be able to add them in grid views.

I was hoping for a way to list all preferences by category then specifics and scroll left to right to see them all, maybe expand them using a +/- box dialog.

I've been working on some normalization methods that I think would greatly improve the score rankings.

https://imgur.com/a/ExW9M

file with data (using 5000 generated dwarfs to generate monte carlo of 50 dwarf's)
https://drive.google.com/open?id=1buZ5TivdMW-JpyisES3pC8ZaCTRG_abB

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 16, 2018, 07:45:07 am
I was hoping for a way to list all preferences by category then specifics and scroll left to right to see them all, maybe expand them using a +/- box dialog.

I am not sure what you are describing. Scrolling won't do it: some categories have hundreds of items (see the custom role editor dialog). The grid view editor will need to be redone to be usable with preferences, using a filter search like the custom role editor. The current nested context menus cannot contains the hundreds of creature and material preferences.

Spreadsheet Berserker

Indeed. Sorry, I cannot comment your data, I have no idea what is going on here.

If you are the statistics expert, do you any idea what could be causing this issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/55).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: thistleknot on March 16, 2018, 09:31:15 am
I was hoping for a way to list all preferences by category then specifics and scroll left to right to see them all, maybe expand them using a +/- box dialog.

I am not sure what you are describing. Scrolling won't do it: some categories have hundreds of items (see the custom role editor dialog). The grid view editor will need to be redone to be usable with preferences, using a filter search like the custom role editor. The current nested context menus cannot contains the hundreds of creature and material preferences.

Spreadsheet Berserker

Indeed. Sorry, I cannot comment your data, I have no idea what is going on here.

If you are the statistics expert, do you any idea what could be causing this issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/55).

I apologize for the lack of context.  I worked with Splinterz back with v13 of Dwarf Therapist to help derive scores based on attributes, traits, skills, preferences, etc.  I have intimate knowledge of how the role ratings are derived (at least up till v34).  I was unaware the project was transferred to a new lead until yesterday.

Either way.  The current way raw values are converted to %'s I believe use a transformation from min/max around the average, then from min/max around the median, then combined with an empirical cumulative distribution function to get a %.  These %'s are then fed into a weighted sum algorithm to get role ratings.

I was proposing a new method that uses a simpler weighted standard deviation approach around the median (similar to a median/median absolute deviation approach) that allows for allowance for skewed distributions (i.e. extremely large values in a data set, i.e. outlier's).

The new proposed method doesn't do any weird transforms around the average/median that would leave the rest of the dataset not proportionally accurate (i.e. when transforming around different centers, the areas around the center get shifted to varying degrees, so the distances around the center are not the same on either side of the center).  With this new proposed method, the distances would be equal always, plus the added benefit that there is only one center now (the median)

I could code it directly myself.  I'm a bit slow though, I created the first prototype for the labor optimizer in v17 (took me two weeks and Splinterz said it was more or less a superfunction of spaghetti code).  I generally make mockups in excel for review.  That file I recently uploaded is a bit messy as I was trying a lot of things, but I could pair it down.

Alternatively, I was looking at using Kernel Density Estimates (and maybe integrating R) to derive probability distributions.  Scratch that, KDE's are basically Empirical Cumulative Distribution Functions and do not measure the distance between values.  However, this method is much much much easier.

And yes, I am somewhat of a stats expert, I'm currently in a masters for Data Science, but the issue with that is, most methods for normalizing assume a NORMAL DISTRIBUTION, and the data that Dwarf Fortress produces isn't normal.  So parametric methods have to be used.  This I guess is a novel/hackey parametric method by using a weighted sum algorithm for the standard deviation which in turn allows for capturing the larger values appropriately while maintaining a ~0 (min) to 50 (median) to ~100% spread (max).

I could create a complete mockup of roles in excel so you can get a better idea.  I could do a comparison with old vs new.  Or I could just scratch that and attempt at coding a prototype.  It's been a while, and if I do, it will probably take me a minute (a month?)

Edit:

As to the bug... not sure.  I noticed a bug a while ago in the way roles were calculated that I would also like to address (especially if I'm proposing a new method to calculate roles).

I would love to work with you if you are willing.  I can do qa testing and work on developing a newer version.  I can even deliver mockups before [if] we go that route.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 16, 2018, 12:35:16 pm
Either way.  The current way raw values are converted to %'s I believe use a transformation from min/max around the average, then from min/max around the median, then combined with an empirical cumulative distribution function to get a %.  These %'s are then fed into a weighted sum algorithm to get role ratings.

If I am reading the code correctly, there is actually different methods applied depending on the distribution. This started with this commit (https://github.com/Dwarf-Therapist/Dwarf-Therapist/commit/ec6a34f9dc9baa3875c9cdc4b619c02d04a2b579) from v28 (and there is your name in the commit message). The one you are describing is RoleCalcRecenter, right?

DT first check if the data is "skewed" (the first and second quartiles are equal). For non skewed distributions, it applies RoleCalcRecenter. For skewed distributions, it applies RoleCalcBase if there is less than 25% unique values in the data set, else it applies RoleCalcMinMax.

I can understand the base_rating (ECDF?) and range_transform, but I am not sure about the linear combinations:
RoleCalcBase's rating is the average of ECDF and 1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/src/rolecalcbase.cpp#L42).
RoleCalcMinMax is the average of ECDF, MinMax (similar to range_transform but without a middle) and 1 (with double weight) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/src/rolecalcminmax.h#L20).
RoleCalcRecenter is the average of ECDF and range transformed value (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/src/rolecalcrecenter.h#L20) (around average then median).

RoleCalcBase and RoleCalcMinMax are producing ratings in the 50%-100% range (actually the minimum may be even higher than 50% because of how base_rating work), I guess they are meant for data set with a lot of zeros (e.g. rare skills and preferences) where the median and the minimum are the same value (0), so the minimum is considered average.

I was proposing a new method that uses a simpler weighted standard deviation approach around the median (similar to a median/median absolute deviation approach) that allows for allowance for skewed distributions (i.e. extremely large values in a data set, i.e. outlier's).

The new proposed method doesn't do any weird transforms around the average/median that would leave the rest of the dataset not proportionally accurate (i.e. when transforming around different centers, the areas around the center get shifted to varying degrees, so the distances around the center are not the same on either side of the center).  With this new proposed method, the distances would be equal always, plus the added benefit that there is only one center now (the median)

I could code it directly myself.  I'm a bit slow though, I created the first prototype for the labor optimizer in v17 (took me two weeks and Splinterz said it was more or less a superfunction of spaghetti code).  I generally make mockups in excel for review.  That file I recently uploaded is a bit messy as I was trying a lot of things, but I could pair it down.

Alternatively, I was looking at using Kernel Density Estimates (and maybe integrating R) to derive probability distributions.  Scratch that, KDE's are basically Empirical Cumulative Distribution Functions and do not measure the distance between values.  However, this method is much much much easier.

And yes, I am somewhat of a stats expert, I'm currently in a masters for Data Science, but the issue with that is, most methods for normalizing assume a NORMAL DISTRIBUTION, and the data that Dwarf Fortress produces isn't normal.  So parametric methods have to be used.  This I guess is a novel/hackey parametric method by using a weighted sum algorithm for the standard deviation which in turn allows for capturing the larger values appropriately while maintaining a ~0 (min) to 50 (median) to ~100% spread (max).

I could create a complete mockup of roles in excel so you can get a better idea.  I could do a comparison with old vs new.  Or I could just scratch that and attempt at coding a prototype.  It's been a while, and if I do, it will probably take me a minute (a month?)

If you don't want to write the code, you could give the formulae and explain how they should be used. Even if you write a patch ready to merge, I would not mind a detailed explanation. This kind of work would deserve an article.

As to the bug... not sure.  I noticed a bug a while ago in the way roles were calculated that I would also like to address (especially if I'm proposing a new method to calculate roles).

Rereading the code, I think RoleCalcBase::find_median is incorrect for even sized vectors (and overkill for sorted vectors). The result may be random (but always lower than the actual median) depending on how is implemented std::nth_element.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: thistleknot on March 16, 2018, 01:12:32 pm
ECDF stands for empirical cumulative distribution function.  With any distribution [especially if it's not normal], what is being measured is the FREQUENCY of times a value occurs (simple countif), not the difference between values.  Hence why we use ECDF with a min/max conversion.  The min/max does the opposite.  Doesn't care for frequency, but only scores DISTANCE between values.  The averaging of the two methods results in a score that accounts for BOTH DISTANCE AND FREQUENCY.

In hindsight, it may not be necessary to use ECDF (because the data will be present in the form of duplicates/frequency already?).  I liked it because ECDF had the property of 0-50-100% respectively, and always averaged to 50%, which helped when merging other distribution methods to achieve a near 50% mean.  In other words, if all values are unique, ECDF is literally a flat distribution of equal width.

I would propose still utilizing ECDF along with a new transform method that would replace the linear transform (i.e. min/max around mean/median's).

If you are willing to write the algorithm, I'll just do a mockup then.

A special method handles datasets with a large proportion of nulls (I believe a check of Quartiles determines this).  That is something I would like to keep in place.  I could draw out the if structures to how I think it actually does the if checks and maybe we can model/remodel it and go from there?  I mean, I can also mock it all up in excel so it makes more sense with a separate tab for each transformation method.

The bug I mentioned I wrote up in here, it's one of my earlier posts under splinterz thread: http://www.bay12forums.com/smf/index.php?topic=122968.msg7305942#msg7305942

Edit:

As to preferences.  Can't it just limit itself to the preferences that are found amongst the population and discard the rest?

Edit: [Heavily reduced/cleaned up] latest version of proposed labor calculations.  Currently just calculated Attributes. (fixed the way ECDF values were averaged back in).

Sheet: MCZNewMAD, Cells P4 and P5 are what are fed into an excel norm.dist() function using the raw attribute values

the weighted sdev is calculated in cells l5:m11 which is based on the  68–95–99.7 rule.  I basically derive the percentile score of the z-score percent value at z-scores min, -3, -2, -1, 0, 1, 2, 3, max respectively with min as 0% and max as 100% for purposes of deriving a weight for that portion that contributes to the deviation which is a weighted sum algorithm where the weights are the differences between the cumulative distribution of these z-scores.  I then derive the differences between these percents (e6:e11) to derive weights. The quantile position of the z-scores is utilized by a percentile() function (f5:f11).  The difference between values (l5:l9) is treated as a pre-defined width (single deviation) as defined earlier up to min/max as all values beyond 2 deviations to derive weighted (m6:m11) deviations which are summed together (weighted sum) to derive a new deviation (m3).

https://en.wikipedia.org/wiki/68%E2%80%9395%E2%80%9399.7_rule

https://drive.google.com/file/d/17XyRkO0Ljm0v50ZVDTEHlJyxY44KNJB0/view?usp=sharing
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 17, 2018, 05:17:53 am
I think I get most of it, but what do you do with this WSMAD value once you have it?

Also shouldn't the [min, -2] and [+2, max] bands be ignored when averaging WSMAD? Their width is not the standard deviation in the theoretical normal distribution. You should add the -3 and +3 z-scores (and use the 97.7 from the 68-95-97.7 rule), if you need more values.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: thistleknot on March 17, 2018, 10:11:51 am
The min and max is precisely what I aim to acquire. the data ISNT normal. If you use normal scores then the data will output to normal. By using min/max we allow for skew to be incoproated into the weighted sdev.

I think min,-2,-1,0,1,2,max is probably best practice. I have a few other ideas (such as -3), or trimming x,y outtliers or chebyshev theorem vs empirical rule or use a skewed (https://math.stackexchange.com/questions/829627/excel-version-of-skewed-normal-cumulative-distribution-function) cumulative distribution function

If you use normal distribution assumptions, it will result in more high end values cappining at 100% (loss in values)

I have a stat exam this morning and while studying I reviewed a lot of other options. Using a weighted sdev isn't unheard of

Edit:

Fyi, I updated the spreadsheet (https://drive.google.com/open?id=17XyRkO0Ljm0v50ZVDTEHlJyxY44KNJB0) I've uploaded a few times.  You may want to check it out from time to time.  I came up with 3 different methods to derive the standard deviation using the median (P5:P7).  I fixed a few bugs and the values are not capping out at 1 like they were before. If I see them, I see maybe 1 or 2 or 3, not like 10-15+ for 50*19 attributes.  One is similar to this function MAD (http://www.real-statistics.com/descriptive-statistics/measures-variability/)

array formula

Code: [Select]
={sqrt(sum((R-MEDIAN(R))^2)/count(r))}

the entire formula given any x of say dataset attributes that contained a conjoined set of all columns of attributes

Code: [Select]

medianSDEV={sqrt(sum((attributeRange-MEDIAN(attributeRange))^2)/count(attributeRange))}

tempMadScore = (x-median(attributeRange))/medianSDVE

//explanation of excel function normdist:
//(x, mean, sdev, cumulative?)

tempMadScore = normdist(tempMadScore, 0, 1, 1)

ECDFscore = (countif(attributeRange,"<="&x) + countif(attributeRange,"<"&x))/2/count(attributeRange)

score = (tempMadScore + ECDFScore)/2



which gives a median based population standard deviation that approximates what I was doing

Alternatively, instead of min, -2, -1, 0, 1, 2 I used the formula here for uniform distributions for variance: https://en.wikibooks.org/wiki/Statistics/Distributions/Uniform which is (max-min)^2/12, in this case since I had min mapped to 0 and max to 1, the result was 28.8% standard deviation (O12), which I used to derive uniform percentiles (t4:x11).

My opinion is that the original method seemed adequate enough.  However, for simplicity and thoroughness sake, I think the array formula listed would be the easiest method to implement.

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: thistleknot on March 18, 2018, 09:56:51 am

Code: [Select]
={sqrt(sum((R-MEDIAN(R))^2)/count(r))}

scratch that.  I noticed my calculations were off (missing column) and this method results in standard deviations that are too high and result in the minimum being much higher from 0% than the max is from 100%. 

I did find a better method.

It basically is a two pass table lookup (averages two methods to find sdev), p11.  It seems to produce values from within 2% of max.  I tried merging the two tables, which also seemed to work and produced much lower sdev's, but I felt the values weren't dispersed enough.  They tended to hug the center of the distribution (high peak).

https://drive.google.com/open?id=17XyRkO0Ljm0v50ZVDTEHlJyxY44KNJB0

boxplots (https://imgur.com/a/o7XmB) of before and after
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: TheDorf on March 18, 2018, 11:51:53 am
Is there any way to get this to work with the latest version? Or will I have to wait for a 44.07 release?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: PatrikLundell on March 18, 2018, 12:00:37 pm
Look further up in this thread...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Clément on March 19, 2018, 06:21:38 am
New version released: 39.3.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.3.0)

Memory layouts for the new versions and some cosmetic changes.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Pvt. Pirate on March 19, 2018, 07:13:41 am
downloading - awaiting the result of the avast-lab... but at least it didn't crash right away.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on March 24, 2018, 09:17:47 am
For solving an issue with where the updater saves the downloaded memory layouts. I need to change how DT look up for data files. The simplest solution is to rely only QStandardPaths (http://doc.qt.io/qt-5/qstandardpaths.html#StandardLocation-enum) to get the directories to search (and write to).

On Windows and MacOS, QStandardPaths contains directories relative to the application directory. Some directory name may change, but it should continue to work as before. But on Linux, QStandardPaths only contains the standard prefixes (/usr, /usr/local, ~/.local), this will prevent DT from finding the data files (memory layouts or grid views) if it is installed in a non-standard prefix, unless the XDG_* environment variables (https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html) are set.

I can also add a portable mode (through a run-time command line parameter or a build time option) where all the files (including the settings?) will be looked up relatively to the application directory. The application would need to be writable so the settings and updated memory layouts can be written.

The current updater behavior is to write it in the working directory which can be anywhere depending on how you launched DT. Only changing the directory where the memory layout is written won't work, since it will not be in the first priority directory and may be shadowed by another file when it needs to be read later. And I don't think I can find a directory order that can fit every use case at once. That is why I want to propose two distinct mode: one where it uses standard paths (user files are stored in APPDATA on Windows, XDG_*_HOME on Linux), the other fully portable where all is contained in the same (writable) directory. Am I missing some use cases?

I am also not sure how it affects MacOS (the example paths given in the doc look fine). Actually I have no idea where the memory layouts currently are. They are not copied in the deployment scripts. Are they downloaded by the updater on the first run? Where are they written?

I may use the opportunity of breaking all file paths to change where the settings file is stored. I find the current "UDP Software" hard to guess and I am thinking about removing the organization name and storing it in QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation) + "/settings.ini" instead of the default path (e.g. ~/.config/dwarftherapist/settings.ini instead of ~/.config/UDP Software/Dwarf Therapist.ini).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: feelotraveller on March 24, 2018, 09:42:44 pm
Like the proposed changes but would it be better to use 'dtsettings.ini' or similar to aid in searching when a user does not know where the file is located?  ('settings.ini' will likely result in many hits)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: jecowa on March 25, 2018, 01:24:00 am
I am also not sure how it affects MacOS (the example paths given in the doc look fine). Actually I have no idea where the memory layouts currently are. They are not copied in the deployment scripts. Are they downloaded by the updater on the first run? Where are they written?

Yes, the memory layouts get downloaded by the auto updater just fine on Mac last time I checked. Applications on MacOS are actually folders called packages. This package contains the executable, the icon file, some libraries, and maybe UI graphics, and other stuff. The Mac version of Dwarf Therapist stores the memory layouts in a folder inside of its application package.  If you need to know the exact location, it's /DwarfTherapist.app/Contents/MacOS/share/memory_layouts/osx/
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on March 25, 2018, 03:34:03 am
Like the proposed changes but would it be better to use 'dtsettings.ini' or similar to aid in searching when a user does not know where the file is located?  ('settings.ini' will likely result in many hits)

dwarftherapist.ini then, dtsettings.ini is not very good for search either. Maybe I should use different application names on different platforms. Linux prefers "dwarftherapist" (all lower case, no space), but Windows (and MacOS?) may prefer "Dwarf Therapist".

Yes, the memory layouts get downloaded by the auto updater just fine on Mac last time I checked. Applications on MacOS are actually folders called packages. This package contains the executable, the icon file, some libraries, and maybe UI graphics, and other stuff. The Mac version of Dwarf Therapist stores the memory layouts in a folder inside of its application package.  If you need to know the exact location, it's /DwarfTherapist.app/Contents/MacOS/share/memory_layouts/osx/

So the bundle is writable. You still need internet access on the first run to get the memory layout.

If I understand the paths correctly, the new standard path would be /DwarfTherapist.app/Contents/Resources/memory_layouts inside the bundle and new memory layouts would downloaded to ~/Library/Application Support/dwarftherapist/memory_layouts.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: feelotraveller on March 25, 2018, 03:57:17 pm
Maybe DwarfTherapist.ini, just for the advantage of keeping the same name across different systems? 

Linux won't allow spaces (more precisely the NUL '\0' character) in filenames but does not have a problem with upper case - in fact it is consistently case sensitive whereas windows is case insensitive on the gui (dwarf.txt is regarded as the same file as DWARF.TXT and as dWarf.txt, and so on) but case sensitive on the command line. If I remember correctly windows from the command line needs escaping of nul characters in filenames.  I can't comment on Mac, its been so long...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on March 25, 2018, 05:03:21 pm
Linux (and MacOS too, I guess) allows spaces and any weird characters (including control characters) except null and /. It is more about conventions than what is legal. And "dwarftherapist" has been used for a very long time for data files. I wanted to be coherent and use the same name for configuration files.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: jecowa on March 25, 2018, 05:21:30 pm
Yes, the memory layouts get downloaded by the auto updater just fine on Mac last time I checked. Applications on MacOS are actually folders called packages. This package contains the executable, the icon file, some libraries, and maybe UI graphics, and other stuff. The Mac version of Dwarf Therapist stores the memory layouts in a folder inside of its application package.  If you need to know the exact location, it's /DwarfTherapist.app/Contents/MacOS/share/memory_layouts/osx/

So the bundle is writable. You still need internet access on the first run to get the memory layout.

If I understand the paths correctly, the new standard path would be /DwarfTherapist.app/Contents/Resources/memory_layouts inside the bundle and new memory layouts would downloaded to ~/Library/Application Support/dwarftherapist/memory_layouts.

I just checked Dwarf Therapist v39.3.0 on macOS 10.12 Sierra. It does not include the memory layouts in the download, but after connecting to Dwarf Fortress, the memory layouts downloaded just fine to the share folder in the application package. Dwarf Therapist didn't create a folder in either application folder. I like memory layouts in the bundle. I think it's nice having it all together and makes it easy to copy to other computers without losing the layouts.

Maybe DwarfTherapist.ini, just for the advantage of keeping the same name across different systems? 

Linux won't allow spaces (more precisely the NUL '\0' character) in filenames but does not have a problem with upper case - in fact it is consistently case sensitive whereas windows is case insensitive on the gui (dwarf.txt is regarded as the same file as DWARF.TXT and as dWarf.txt, and so on) but case sensitive on the command line. If I remember correctly windows from the command line needs escaping of nul characters in filenames.  I can't comment on Mac, its been so long...

Mac allows spaces in filenames. Colons ":" are kind of weird on Mac and could cause confusion. Case sensitivity on Mac depends on the file system. It is a user-configurable option. It's not necessarily the same for everyone.

dwarftherapist.ini then, dtsettings.ini is not very good for search either. Maybe I should use different application names on different platforms. Linux prefers "dwarftherapist" (all lower case, no space), but Windows (and MacOS?) may prefer "Dwarf Therapist".
Yes, if you are cool with them being different, I think Mac would prefer changing it to "Dwarf Therapist.app".

Or are you talking about the executable? The executable is currently called "DwarfTherapist" on Mac. I'm not sure if you can have a space in the executable. My attempts at adding a space to it have failed, and this file is hidden from the user anyway.

Edit: I can't even get a renamed executable to launch, so I must be doing it wrong.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: feelotraveller on March 25, 2018, 07:43:29 pm
dwarftherapist.ini sounds perfect to me, but I thought you had some reservation about using it for windows?

Regardless my suggestion about not including a space in the filename is in terms of best practice.  So for example while Dwarf Therapist.ini works fine on my current linux system for reading to and writing from DT (presumably because QT?) there are some oddities if I try to open it with different text editors.  1) Geany which I usually use opens it fine no matter what.  2) After cd to correct directory, nano Dwarf Therapist.ini opens a new file Dwarf.  But nano *.* opens it (the only file in the diectory) fine.  3) Again after cd, mousepad Dwarf Therapist.ini opens two files Dwarf and Therapist.ini.  But using 'open with mousepad' from the gui opens it correctly.  4) Although my knowledge is provisionally outdated here it used to be that using the command line in windows to for example copy the file to a new location required escaping the name, i.e., "Dwarf Therapist.ini" rather than merely Dwarf Therapist.ini.  Just seemed like the perfert time to change to the most robust form.  8)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: jecowa on March 25, 2018, 07:52:08 pm
Yeah, it might help to escape. Try these out:
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: feelotraveller on March 25, 2018, 08:18:09 pm
Oh yeah, it can be worked around, and although I haven't tried those specifically here I expect that they would work - at least in general they will.  But not everyone will be in the position to know to try, thinking new users.  Also downstream it might add just a smidgeon more convenience.  Just thought a call for filename sanity might be appropriate here.

(Slightly off-topic: for linux there are only filenames, not extensions.)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on March 26, 2018, 05:16:15 am
Like jecowa said, you need to escape or quote the spaces. It is not a editor issue but the command line. It's annoying (but auto-completion can help) and that is why command line users dislike spaces.

I like memory layouts in the bundle. I think it's nice having it all together and makes it easy to copy to other computers without losing the layouts.

Personally, I think this kind of bundle should be immutable. But I know some like portable software, that why I am proposing this mode. It would store updated memory layout and configuration file inside the bundle. Currently if you copy the bundle to another computer, you lose the configuration, and custom roles or grid views can be more difficult to recreate than downloading memory layouts. Anyway the bundle should contain the memory layouts and not require an internet access on the first run, this is a bug.

Case sensitivity on Mac depends on the file system. It is a user-configurable option. It's not necessarily the same for everyone.
Weird, I thought case sensitivity was mandatory for POSIX systems.

Yes, if you are cool with them being different, I think Mac would prefer changing it to "Dwarf Therapist.app".
I see a lot spaces in standard paths but bundle names are usually "MyApp.app" (see doc (https://developer.apple.com/library/content/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html#//apple_ref/doc/uid/10000123i-CH101-SW13)). I think the bundle name is generated by cmake from the executable name.

Or are you talking about the executable? The executable is currently called "DwarfTherapist" on Mac. I'm not sure if you can have a space in the executable. My attempts at adding a space to it have failed, and this file is hidden from the user anyway.

I am talking about Qt's application name (http://doc.qt.io/qt-5/qcoreapplication.html#applicationName-prop), it is a string that is used for creating paths for settings or standard paths. The current value is "Dwarf Therapist" and it is only used for QSettings. But if I use QStandardPaths, it will also be used there. That is why I wanted to change it on linux to keep the data in "dwarftherapist".

On MacOS, Qt also need an organization domain or name, for creating path like ~/Library/Application Support/com.example.MyApp/ (https://developer.apple.com/library/content/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/MacOSXDirectories/MacOSXDirectories.html#//apple_ref/doc/uid/TP40010672-CH10-SW1). If the bundle identifier is used, it may also be best to configure it in cmake. I don't how cmake is generating it (if you have a look in Info.plist, check the value of CFBundleIdentifier).

Edit: I can't even get a renamed executable to launch, so I must be doing it wrong.
You may need to edit a file to change the executable name, Contents/Info.plist I think.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: jecowa on March 26, 2018, 06:52:39 am
Weird, I thought case sensitivity was mandatory for POSIX systems.
I think they only need to have case sensitivity as an option. I used to use case sensitivity, but it cause problems in some apps.

On MacOS, Qt also need an organization domain or name, for creating path like ~/Library/Application Support/com.example.MyApp/ (https://developer.apple.com/library/content/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/MacOSXDirectories/MacOSXDirectories.html#//apple_ref/doc/uid/TP40010672-CH10-SW1). If the bundle identifier is used, it may also be best to configure it in cmake. I don't how cmake is generating it (if you have a look in Info.plist, check the value of CFBundleIdentifier).
Your builds of Dwarf Therapist include a blank BundleIdentifier, but Fricy used "com.yourcompany.DwarfTherapist" as the BundleIdentifier in his builds. I've been adding this to it just in case it's important.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Starver on March 26, 2018, 08:02:35 am
(...) windows is case insensitive on the gui but case sensitive on the command line.
I had to look this up, before replying. DOS, both as OS in its own right and later as a shell under the Windows OS, has always been case-insensitive as far as I've known it, though case-preserving under all LFN iterations which also support whitespace.

It seems that NTFS may support case-differentiation (POSIX-related low-level calls create them, only one of which would be accessible from the usual Windows-and-maybe-DOS references) but sounds like something I should have seen being deliberately being exploited for good or ill, similar to ADS, yet it has clearly passed me by. I now know what I'm trying, next time I'm on a newer Windows box...  ;)

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: feelotraveller on March 26, 2018, 08:56:13 pm
Thanks for the correction.  :)  (In explanation I can only say that I have experienced case sensitivity from the windows command line...)  But a bit of research makes clear that it is a characteristic of the underlying filesystem, which then may be enabled or not by the system.  The clearest and most comprehensive exposition of it for windows that I found was: http://www.nicklowe.org/2012/02/understanding-case-sensitivity-in-windows-obcaseinsensitive-file_case_sensitive_search/ (http://www.nicklowe.org/2012/02/understanding-case-sensitivity-in-windows-obcaseinsensitive-file_case_sensitive_search/).  That should give you some ideas if you want to play around.  ;)  Oh, and there is always Cygwin...

p.s. Apologies to Clément for muddying up the discussion.  :-[
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: strainer on March 27, 2018, 09:34:10 pm
Seems bEst all rounD heRe to aVoid case Sensitivity and_spaces_in_CrossPlatformFilenames.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Starver on March 28, 2018, 03:31:11 am
How about sticking to 8POINTTH.REE format?

:P
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on March 29, 2018, 04:08:28 am
Experimental memory layouts for 0.44.08 (untested):
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on March 30, 2018, 08:28:50 am
I started trying to make preference columns. (PR #74 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/74)).

With text and box modes
(https://user-images.githubusercontent.com/3874173/38139076-29d41cd0-342e-11e8-825b-2337608b2025.png) (https://user-images.githubusercontent.com/3874173/38139079-2bd3bd2e-342e-11e8-8101-9d3e2fc586d5.png)

The tool-tip gives the list of matched preferences.

Is this what you had in mind?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on April 01, 2018, 02:52:24 am
Experimental memory layouts for 0.44.09 (untested):
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: se5a on April 01, 2018, 02:50:16 pm
Experimental memory layouts for 0.44.09 (untested):
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.08/share/memory_layouts/linux/v0.44.09_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.08/share/memory_layouts/linux/v0.44.09_linux64.ini)
  • OS X 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.08/share/memory_layouts/osx/v0.44.09_osx32.ini)
  • OS X 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.08/share/memory_layouts/osx/v0.44.09_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.08/share/memory_layouts/windows/v0.44.09_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.44.08/share/memory_layouts/windows/v0.44.09_graphics_win64.ini)

how do I use that with the linux AppImage?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on April 01, 2018, 06:28:19 pm
I think ~/.local/share/dwarftherapist/memory_layouts/linux should work. In the current version, it has a lower priority than the memory layouts inside the appimage (I will change that with the next major version), but it should work for adding a new memory layout.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: falcn on April 02, 2018, 03:19:44 pm
Thanks for keeping DT updated. Just wanted to add that writing anything into app bundle on MacOS is a terrible idea, it is against all guidelines, and it's very likely to cause problems.

I've being using macOS as my main os for 12 years and I never encountered any app that did that. MacOS is kind of a mess right now because there are several places where an app can store its settings, but app bundle is not one of them. No one would expect something like that.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: lethosor on April 02, 2018, 03:36:38 pm
It hasn't caused any problems with DT whatsoever, besides possibly making it harder to find the memory layouts folder. That said, using more typical paths would be good.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: se5a on April 02, 2018, 05:26:11 pm
I think ~/.local/share/dwarftherapist/memory_layouts/linux should work. In the current version, it has a lower priority than the memory layouts inside the appimage (I will change that with the next major version), but it should work for adding a new memory layout.

DT doesn't seem to be finding it...
the appimage hasn't created that directory, so I did it myself, which ofc could lead to human input error, esp with linux caring about capitalization.
Having the appimage create a folder and put the layouts in there on first run might be a good hint for users trying to update. also a "Go to MemLayouts Folder" button/menu item somewhere. 
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: jecowa on April 02, 2018, 05:37:32 pm
I might be missing part of the convo, but I think you can get layouts to work on Linux like this: In the same directory as the DwarfTherapist, place a /share/memory_layouts/linux/v0.44.09_linux64.ini

Edit: Sorry, I'm not sure about AppImage, I was just noting what I've seen in the LinuxLNP. You might try placing that share folder next to the executable within the AppImage. That's how it works on Mac which I think uses sort-of-similar app bundles.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on April 02, 2018, 06:43:02 pm
DT doesn't seem to be finding it...
the appimage hasn't created that directory, so I did it myself, which ofc could lead to human input error, esp with linux caring about capitalization.
Works for me. Here is my log, so you can check the exact path:
Code: [Select]
INFO core Detected Dwarf Fortress version "v0.44.09 linux64" using MemoryLayout from "/home/clement/.local/share/dwarftherapist/memory_layouts/linux/v0.44.09_linux64.ini" [src/dfinstance.cpp:1091] (set_memory_layout)
Having the appimage create a folder and put the layouts in there on first run might be a good hint for users trying to update. also a "Go to MemLayouts Folder" button/menu item somewhere.
Good idea, and it should copy the readmes too (here (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/share/README.rst) and here (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/share/memory_layouts/README.rst), and now I see the second one has out-dated links).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: se5a on April 02, 2018, 06:55:00 pm
yeah that's working now. thanks.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: falcn on April 03, 2018, 02:27:52 am
It hasn't caused any problems with DT whatsoever
That's because DT uses elevated privileges to begin with. /Applications is read-only for any normal app. Besides, it is a common practice to run an app from a read-only medium like a DMG container.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on April 03, 2018, 04:04:01 am
Speaking of elevated privileges, is there any way to make it more fine grained? Something like linux's setcap? This root access to the filesystem is causing issues (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/72) with the settings file.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: lethosor on April 03, 2018, 08:47:51 am
I'm confused... DT runs as root, so it can write to /Applications (although I've never installed DT there), but it can't write to its own config file, created as root, even when it's always running as root?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Pvt. Pirate on April 03, 2018, 11:09:40 am
I'm confused... DT runs as root, so it can write to /Applications (although I've never installed DT there), but it can't write to its own config file, created as root, even when it's always running as root?
DT doesn't run at all for me. win7 64bit. giving the same error as starbound64bit - 32bit versions run fine.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: lethosor on April 03, 2018, 12:16:51 pm
We're not talking about Windows! Also, what exactly is the error? Are you on 32-bit Windows?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.2 | DF 44.05
Post by: Pvt. Pirate on April 04, 2018, 04:36:20 am
but i am using win7 64bit on hardware capable of 64bit and 64bit versions should run - but they don't.
Same error as PFunk (http://www.bay12forums.com/smf/index.php?topic=168411.msg7687449#msg7687449)?
yes, same error.
the 32 bit version works.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on April 04, 2018, 05:50:51 am
Did you try the proposed solution: (re)installing Visual C++ runtime or "Update for Universal C Runtime in Windows"? If this does not work the Dependency Walker utility will give you more details (because Windows cannot give a proper error message with the name of the dll that failed to load :().
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Pvt. Pirate on April 04, 2018, 06:41:08 am
vcredist in all its variations is installed with every steamgame. there's no version i don't have installed.
i never heard of the "Dependency Walker utility" will look for that. if that fails, my OS might have some serious problems or maybe microsoft just found a new way to force their users to buy a shittier, newer OS version.

i ran it and scanned DT:
Spoiler (click to show/hide)
those dlls gave this: "Error opening file. file not found."
so: how do i fix it?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on April 04, 2018, 10:14:58 am
Make sure you have the 64 bits version installed too. This error happens when an 64 bits application tries to open a 32 bits dll. In Dependency Walker, look for 32 bits dlls:
Quote
It's quite likely that you will see some warnings about some missing DLLs.  Some of these can be ignored, and the FAQ for Dependency Walker will discuss some of these.  In the top left, there will be a tree view with the dependency hierarchy. In the middle section below that, there will be a list of the dependency modules identified.  Right click on one of the file names in that list, and ensure that "Full Paths" is selected.  In one of the columns to the right, labeled "CPU", you should see the architecture that matches your main executable.  In my customer's case, we saw "x64" for almost all of the modules, but "x86" in red on the row for the mfc140ud.dll that was wrong.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Pvt. Pirate on April 04, 2018, 11:43:45 am
Make sure you have the 64 bits version installed too. This error happens when an 64 bits application tries to open a 32 bits dll. In Dependency Walker, look for 32 bits dlls:
Quote
It's quite likely that you will see some warnings about some missing DLLs.  Some of these can be ignored, and the FAQ for Dependency Walker will discuss some of these.  In the top left, there will be a tree view with the dependency hierarchy. In the middle section below that, there will be a list of the dependency modules identified.  Right click on one of the file names in that list, and ensure that "Full Paths" is selected.  In one of the columns to the right, labeled "CPU", you should see the architecture that matches your main executable.  In my customer's case, we saw "x64" for almost all of the modules, but "x86" in red on the row for the mfc140ud.dll that was wrong.
i installed the 64 bit versions, but some 32 bit games already installed the 32 bit versions aswell.
but even when i only install the 64bit versions, it still doesnt work.
Spoiler (click to show/hide)
every single one of those dlls is on x86. now what do i do to fix that?
(i just checked and the same dlls are detected on starbound - cant check on armaIII as i already deinstalled some months ago.)
all i can imagine is deinstalling all vcredist packages and installing them again - not that i had enough hazzle installing them in the first place.

edit: uninstalled all vcredist i could find and installed all versions i could find at microsofts page.
still doesnt work :(
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Clément on April 04, 2018, 01:15:15 pm
Where are the dlls? The 64 bits dlls should be in C:\Windows\System32, the 32 bits ones should be in C:\Windows\SysWOW64. I don't know why DT (or the other applications) would fail to find them if they are in the right place. But you could copy them in DT folder (beside DwarfTherapist.exe) to make sure it find them.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: se5a on April 04, 2018, 01:54:46 pm
Note that the dll's can be in the executable folder, and it'll look there first:
https://msdn.microsoft.com/en-us/library/7d83bc18.aspx

also don't get confused with 64bit dlls being in system32 and 32 bit being in SysWOW64 - that is correct. MS was being a bit dense with the naming there, one reason is compatibility wrt system32, WOW means ”Windows on Windows 64-bit” (can be read as "Windows 32-bit on Windows 64-bit"). It's a emulator that allows 32-bit Windows-based applications to run seamlessly on 64-bit Windows.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.07
Post by: Pvt. Pirate on April 04, 2018, 02:58:44 pm
ah, okay... just found that the files are from skype :O yet another reason to uninstall that little shitty program.
after uninstalling, the error files are these. all but the last were not found.
Spoiler (click to show/hide)
that last one uses x86 the others seem to be vcredist (which i just deinstalled - again) now trying to install only the version coming with DT.
wow, that didn't change a thing. guess i'll format and reinstall win7 and hope it works this time.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 05, 2018, 06:44:23 am
New version released: 39.3.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v39.3.1)

A small release including the new memory layouts.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Pvt. Pirate on April 05, 2018, 08:50:12 am
O.o would that even work to just use the 32bit version of DT while using mephs pack with a 64 bit DF?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 05, 2018, 10:51:27 am
No. 64 bits DT can be used with 32 bits DF (except on MacOS), but not the other way. It is impossible to pass 64 bits addresses to 32 bits system calls.

PS: try with the dlls from DF, it is compiled with msvc2015 like my builds of DT.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Pvt. Pirate on April 05, 2018, 12:59:40 pm
i installed the vcredist64 that came with DT a lot of times by now - at the moment not even TS3-32bit will work :(
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: mobucks on April 05, 2018, 08:14:08 pm
When trying to open the .exe I get the following error on Visa x64:

DwarfTherapist.exe - Entry Point Not Found

The procedure entry point K32GetModuleFileNameExW could not be
located in the dynamic link library KERNEL32.ddl.

Previous versions of DT have worked fine on my hardware in the past. Any ideas?

EDIT: Doing some googling it looks like this means the end of this program supporting XP/Vista. What a shame.

EDIT2: Looks like the last version that works on my rig is 39.0.0_x64. Adding the memory layouts from 44.09 seems to work, so I at least have some basic functionality.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 06, 2018, 03:54:18 am
XP was expected, but I did not realize MSVC2015 was incompatible with Vista (regarding system calls Vista and 7 are usually very close). 39.1.0 was built with GCC like 39.0.0, does it work for you?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: mobucks on April 06, 2018, 10:31:38 am
I tried that version and it's error was the only one unique compared to all the others following it which give the error I posted above.

Quote
This application failed to start because it could not find or load the Qt
platform plugin "windows"
in "".

Available platform plugins are: windows.

Reinstalling the application may fix this problem.

Click ok
Quote
Microsoft Visual C++ Runtime Library

This application has requested the Runtime to terminate it in an
unusual way.
Please contact the application's support team for more information.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 07, 2018, 05:07:22 am
Yes, I did not deploy 39.1.0 correctly and that is why I switched to MSVC builds after that one.

Try this build (https://framadrop.org/r/YOP_5cMxUt#dFxC8K8PgIK0PVjP16fNduHEHT+sbnCAVNtPAvWtA8E=). The Qt version (5.10) may be too new for Vista, but I don't have a choice with MSYS2 and there is no official gcc build of Qt for windows 64 bits. Hopefully, it is properly deployed this time.

It may also help Pvt. Pirate since it does not depend on visual runtime.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Pvt. Pirate on April 07, 2018, 05:42:41 am
Yes, I did not deploy 39.1.0 correctly and that is why I switched to MSVC builds after that one.

Try this build (https://framadrop.org/r/YOP_5cMxUt#dFxC8K8PgIK0PVjP16fNduHEHT+sbnCAVNtPAvWtA8E=). The Qt version (5.10) may be too new for Vista, but I don't have a choice with MSYS2 and there is no official gcc build of Qt for windows 64 bits. Hopefully, it is properly deployed this time.

It may also help Pvt. Pirate since it does not depend on visual runtime.
thanks, but i'll reinstall win7 nontheless, as i would also like to play Starbound as 64bit.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 15, 2018, 10:02:08 am
I need to fix this code (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/05efe3cf02c2bdee415ff488d4b5a8afb83c0461/src/races.cpp#L141). Hello71 removed it when porting to 64 bits (https://github.com/Dwarf-Therapist/Dwarf-Therapist/commit/3201a1ad650cc8d211110d6fdb628ec25a571a09). I am not sure what is wrong with it. If I understand it correctly, it is supposed to enable extra features when the player race has more than 2 (common?) castes. No one complained about them missing, but it is generating an error (https://travis-ci.org/Dwarf-Therapist/Dwarf-Therapist/jobs/366790825#L2412) because of some other change.

I am usually playing vanilla DF and I don't know mods very well. Any mod recommendation for having 3 or more castes for the player race?

Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: feelotraveller on April 15, 2018, 12:05:16 pm
Masterwork - not that I play it - by Meph. 

I'm pretty sure compatibility with this mod was the reason for the introduction in DT of the code for extra castes.

p.s. A search of the Masterwork thread http://www.bay12forums.com/smf/index.php?topic=125638.0 (http://www.bay12forums.com/smf/index.php?topic=125638.0) reveals a few mentions of it (castes) being broken in Hello71's versions.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 16, 2018, 04:59:27 am
Thanks, it seems easy to fix. I guess Hello71 did not have the proper df-structures at the time.

I finally added the possibility to add preference columns in this PR (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/74), so it can be tested. It requires some more tweaks but the core features are implemented and feedback would be welcome.

There is some issues with preferences (for both roles and columns): melee or ranged weapons don't work at all, and Masterwork had quilted/padded (fabrics) in the paper category: I think papers should be based on the PAPER_SLURRY reaction class instead of the plant thread flag.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: feelotraveller on April 17, 2018, 04:01:26 pm
Some quick feedback.  I've not been playing recently and am time/concentration limited, but since you asked.  ;)

A couple of things I noted that might be able to be improved:
1) While the numerical display works well the other 3 drawing methods currently make no distinction when there is more than one relevant match.
2) In the numerical display I found the red zeroes a bit much.  It might look better if the non-matches were black and the numbers red? (Given that there will likely be more non-matches than matches.) Edit: a second thought is that the digits are displayed too bold/fat.
3) Would it be possible to add the capacity to select the categories straight from the list?  While some can be selected when they are subsidiary items of other categories (e.g. Weapons Ranged from under General Equipment) others like General Trade Goods (one I personally might want rather than a column for each type of trade good) I was not able to select.
4) Trivial but I did not know what the "1" was doing in the 'Choose a Preference' window (on the bar where the list can be sorted ascending or descending).

Like it.  :)  Regardless of shortcomings it adds welcome options.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: PlumpHelmetMan on April 17, 2018, 04:11:58 pm
Have to say I'm quite interested to see how DT will address the updated stress system in the next release. :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 17, 2018, 04:49:46 pm
Thanks, feelotraveller

1) That's because I don't know the maximum number of matched preferences. Thus the rating is either 0% (no preference) or 100% (any number of preference matched). Only the text mode displays the raw value.
2) Every cell type is drawn with the same method: values below the median are red. There is also an ignored range where the value is not displayed. Zeros could be red or black or invisible. But positive values should be black. Bold can be removed (it is there because I copied the kill column, but I did not really think about it).
3) Possible but maybe not easy, I'll think about it. "Trade Goods" already exists in "General Items".
4) A column header that I need to either hide or name. It was hidden in the previous widget, but showing it allows to change the sort order.

@PlumpHelmetMan, You mean displaying "memories"? It make take some time to figure the structures. The rest looks mostly like rebalancing, I don't think it will require changes in DT. We'll see when it is released.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: feelotraveller on April 18, 2018, 12:13:15 am
It's all good.  8)

1) Noticed the quote in the pull request and even displaying the numerical values is going beyond that.  :)
2) Actually came back to suggest that blank cells for non-matches would be my preference.
3) Ah, so it is.  As is 'Instruments' another that occurred to me. 

Thank you for your continued development.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 18, 2018, 11:10:29 am
If you want to try my first (broken) attempt at creating a preference tree where every node is a preference, you can try this branch (https://github.com/cvuchener/Dwarf-Therapist/tree/new_pref_tree).
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Pvt. Pirate on April 19, 2018, 10:22:24 am
in linux it can't find the running game and can't connect.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: lethosor on April 19, 2018, 10:31:00 am
You need to be more specific. What version of DF and DT, and 32-bit or 64-bit?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Pvt. Pirate on April 19, 2018, 10:46:19 am
You need to be more specific. What version of DF and DT, and 32-bit or 64-bit?
oh, sry. linux LNP http://www.bay12forums.com/smf/index.php?topic=163211.msg7738396#msg7738396
so 64 bit on linuxmint18.3 amd64

DF 0.44.09
TWBT 6.41
DFHack 0.44.09-r1
Dwarf Therapist 39.3.1
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 19, 2018, 11:12:18 am
Try setting the cap_sys_ptrace capability (https://github.com/Dwarf-Therapist/Dwarf-Therapist#running-the-program) on the DT executable.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Pvt. Pirate on April 19, 2018, 11:50:06 am
Try setting the cap_sys_ptrace capability (https://github.com/Dwarf-Therapist/Dwarf-Therapist#running-the-program) on the DT executable.
thanks, now it does :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 19, 2018, 01:23:37 pm
If you want to try my first (broken) attempt at creating a preference tree where every node is a preference, you can try this branch (https://github.com/cvuchener/Dwarf-Therapist/tree/new_pref_tree).
  • Most of the top preferences are too generic to be useful.
  • I am adding too many preferences (impossible ones) that clutter the tree.
  • The search filter is weirdly broken.
  • Some displayed names are weirdly broken (but the preference seems to work when selected).
  • The "Items" part is a mess (more than the others).

I fixed the worst issues. I removed impossible materials and items. I still need to add filters for creatures (I need to add prefstring support for that), and instrument component are added with the full instruments. Also there is still some preferences (instruments, tools, ...) that won't go into their category.

I am using  the wiki (http://dwarffortresswiki.org/index.php/DF2014:Preferences) for the list of possible materials and items. It may not be complete, it is missing papers and parchments. The dyes were added in the previous DT preference list, do they actually occurs?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: PatrikLundell on April 19, 2018, 03:17:45 pm
If you want to try my first (broken) attempt at creating a preference tree where every node is a preference, you can try this branch (https://github.com/cvuchener/Dwarf-Therapist/tree/new_pref_tree).
  • Most of the top preferences are too generic to be useful.
  • I am adding too many preferences (impossible ones) that clutter the tree.
  • The search filter is weirdly broken.
  • Some displayed names are weirdly broken (but the preference seems to work when selected).
  • The "Items" part is a mess (more than the others).

I fixed the worst issues. I removed impossible materials and items. I still need to add filters for creatures (I need to add prefstring support for that), and instrument component are added with the full instruments. Also there is still some preferences (instruments, tools, ...) that won't go into their category.

I am using  the wiki (http://dwarffortresswiki.org/index.php/DF2014:Preferences) for the list of possible materials and items. It may not be complete, it is missing papers and parchments. The dyes were added in the previous DT preference list, do they actually occurs?
There are preferences for colors I believe, but I haven't seen them for dyes.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 20, 2018, 03:34:58 am
Instrument components are "TOOL"s. I need to check some flag, I am guessing INCOMPLETE_ITEM (https://github.com/DFHack/df-structures/blob/master/df.item-raws.xml#L823). In addition to instrument components, that would also exclude:
Code: [Select]
scroll rollers
book binding
quire
helve
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Rose on April 20, 2018, 03:52:12 am
Every instrument component's token starts with ENT###_IN$, where ### is an entity number, and $ is either W, S, or K, depending on the instrument type.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Kaos on April 21, 2018, 05:52:50 am
I downloaded the win32 build but it says it's not a valid win32 app when trying to run on a winXP(*) PC, older versions still work fine...

(*) actually I'm running a Windows Embedded POS Ready 2009 install, it's basically WinXP with extended support until 2019...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Starver on April 21, 2018, 07:36:07 am
That's not Clement's fault, or anything he can do about it, it's the nature of the compiler/etc dropping XP support.

Discovered that myself, a little while ago. Never got around to developing a way round it myself (I have a faithful XP machine, kept offline, that I do things on like DF alongside well things that I find more awkward on other platforms at my fingertips), though I keep on intending to do my own porting.

I tried back-pedalling various versions of DT distributables myself, and it went a bit further back than I found useful for 0.44.x DF. What worked for you?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 21, 2018, 08:53:11 am
As I said before, it is a matter of using an older version of Qt (5.6 works with XP), and the right compiler. And I've just discovered there is an optional MSVC2015 component for XP support.

MSVC2015 (v140_xp) 32bits build with Qt 5.6 (https://framadrop.org/r/MEw-LwrCXa#i3iWuEPQxdyazh0ZZqrwFhRui9UchxxmDaw8Oimk5jg=)

Tested in a WinXP VM.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Llamageddon on April 21, 2018, 03:46:13 pm
I get these I get a 'creating SSL' Memory Layout Error and Version Check Error. I'm using a lightly modded DF 44.09 install. Everything seems to be working fine. Any ideas why and if it is a problem?
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Kaos on April 21, 2018, 03:57:42 pm
That's not Clement's fault, or anything he can do about it, it's the nature of the compiler/etc dropping XP support.

Discovered that myself, a little while ago. Never got around to developing a way round it myself (I have a faithful XP machine, kept offline, that I do things on like DF alongside well things that I find more awkward on other platforms at my fingertips), though I keep on intending to do my own porting.

I tried back-pedalling various versions of DT distributables myself, and it went a bit further back than I found useful for 0.44.x DF. What worked for you?
yes, I realize it's not the current mantainer's fault, from my own research it seems to be some libraries that Visual Studio includes by default which are no longer XP compatible...

I was using an old version of the LNP...  40.19... not sure what DT version it had...

so far with the latest Starter Pack I had to make sure to download the win32 version of the pack and then download the win32 version of DF from the main site and substitute it for the one in the package which didn't seem to work... I got DF running from the pack, now trying to get DT to work too...


As I said before, it is a matter of using an older version of Qt (5.6 works with XP), and the right compiler. And I've just discovered there is an optional MSVC2015 component for XP support.MSVC2015 (v140_xp) 32bits build with Qt 5.6 (https://framadrop.org/r/MEw-LwrCXa#i3iWuEPQxdyazh0ZZqrwFhRui9UchxxmDaw8Oimk5jg=)Tested in a WinXP VM.
thanks Clément!! this one works on XP, but it gives an error that I'm running mulltiple DF processes, which I'm not... asks me to select an instance: 5636 or 4564, selecting neither does anything the later gives some memory layout errors... I'm running DF 44.09

I get these I get a 'creating SSL' Memory Layout Error and Version Check Error. I'm using a lightly modded DF 44.09 install. Everything seems to be working fine. Any ideas why and if it is a problem?
me too...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Pvt. Pirate on April 21, 2018, 04:04:18 pm
yes, I realize it's not the current mantainer's fault, from my own research it seems to be some libraries that Visual Studio includes by default the are no longer XP compatible...
some even fuck up on win7 rediriecting to 32bit, even when called by a 64bit process, causing it to crash.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 21, 2018, 04:15:32 pm
I get these I get a 'creating SSL' Memory Layout Error and Version Check Error. I'm using a lightly modded DF 44.09 install. Everything seems to be working fine. Any ideas why and if it is a problem?
A firewall issue? You can disable the updates in the options if it annoys you. I am publishing new releases for memory layouts anyway.

thanks Clément!! this one works on XP, but it gives an error that I'm running mulltiple DF processes, which I'm not... asks me to select an instance: 5636 or 4564, selecting neither does anything the later gives some memory layout errors... I'm running DF 44.09
Do you have another window whose title is "Dwarf Fortress" (e.g. a file explorer window with your DF directory)? I remember having this issue with win7 when I started fixing the 64bits support but it supposed to be fixed.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Kaos on April 21, 2018, 11:27:57 pm
I get these I get a 'creating SSL' Memory Layout Error and Version Check Error. I'm using a lightly modded DF 44.09 install. Everything seems to be working fine. Any ideas why and if it is a problem?
A firewall issue? You can disable the updates in the options if it annoys you. I am publishing new releases for memory layouts anyway.

thanks Clément!! this one works on XP, but it gives an error that I'm running mulltiple DF processes, which I'm not... asks me to select an instance: 5636 or 4564, selecting neither does anything the later gives some memory layout errors... I'm running DF 44.09
Do you have another window whose title is "Dwarf Fortress" (e.g. a file explorer window with your DF directory)? I remember having this issue with win7 when I started fixing the 64bits support but it supposed to be fixed.
no, I'm also getting the ssl and version check errors...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 22, 2018, 06:08:15 am
Use the tasklist command to find what the processes are.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Kaos on April 22, 2018, 09:39:59 am
Use the tasklist command to find what the processes are.
just in case someone else run into this: winXP's task manager by default doesn't show the column PID, you have to enable the extra column on view->select columns...

after doing that I was able to check for the PID that DT was throwing, and indeed I had two "Dwarf Fortress.exe" processes running, the other one wasn't visible on a windows, I must have missed it when I checked the list by name... as how it got there, probably when I was attempting to get a win32 version to load, probably a memory remnant from the win32 non-XP version I tried to run...?

DT is working like a charm now! thanks Clément! =D

although it still throws the "memory layout" and "version check" errors when first loading the app... they do disappear after a while and do not show when "reading" again...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on April 22, 2018, 02:10:31 pm
For solving ptrace_scope issue on Linux, I thought about making DF ptraceable by anyone instead of adding a capability to DT. It allows for making DT works when ptrace_scope is set to 1 without needing root access. The required syscall is available since Linux 3.4. I see two way of implementing that.

1) A DFHack plugin:
Code: [Select]
#include "PluginManager.h"

extern "C" {
#include <sys/prctl.h>
}

using namespace DFHack;

DFHACK_PLUGIN("set_ptracer")

DFhackCExport command_result plugin_init(color_ostream &out, std::vector<PluginCommand> &)
{
if (-1 == prctl(PR_SET_PTRACER, PR_SET_PTRACER_ANY, 0, 0, 0))
out.printerr("Failed to set ptracer: %s.\n", strerror(errno));
}

DFhackCExport command_result plugin_shutdown(color_ostream &out)
{
if (-1 == prctl(PR_SET_PTRACER, 0, 0, 0, 0))
out.printerr("Failed to reset ptracer: %s.\n", strerror(errno));
}
Loading the plugin will allow any one to ptrace DF. Unloading restore to default.

2) A library preloaded when running DF:
Code: [Select]
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/prctl.h>

void set_ptracer_any() __attribute__((constructor));

void set_ptracer_any()
{
if (-1 == prctl(PR_SET_PTRACER, PR_SET_PTRACER_ANY, 0, 0, 0))
perror("prctl");
}
Compile with "gcc set_ptracer_any.c -fPIC -shared -o set_ptracer_any.so", then run DF with "LD_PRELOAD=set_ptracer_any.so ./df" (or add "export LD_PRELOAD=set_ptracer_any.so" in the df script). It does not require dfhack, but it does require to modify the way DF is started. Maybe it can be used in LinuxLNP.

Now, I wonder if something similar is possible for macOS.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on May 01, 2018, 11:09:43 am
I'd like to check if everything works for everyone before merging the new file paths (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/77). I have made test builds for OSX (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-658d4d7f8e09195bb612/DwarfTherapist--osx64.dmg) and Linux (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-a456683bab381d8c1d9b/DwarfTherapist--linux-x86_64.AppImage) (maybe Windows later, but it is the least impacted platform). I especially need testing for OS X, and any kind of installations from source on Linux (the ones I did not think about).

Note about Linux, if you install it in a non-standard prefix you need to set XDG_DATA_DIRS accordingly.

What should be tested:
The linked builds also have the preference columns patches, so they can be tested at the same time. I'd like feedback on the new preference list in the custom role dialog or gridview editor: improvements to the categories, any preference that should not be here or is missing, ...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: strainer on May 01, 2018, 12:58:52 pm
Its working nicely here saved into the latest LinuxLNP 44.09 on Debian Jessie, where it wasnt working before.
I dont know what paths its using but I for one will prefer the portable option and expect that will be a bit popular.
Thanks for fixing it up, I might try to use it to sort out some military.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on May 01, 2018, 02:00:56 pm
Was your issue with libstdc++? It was fixed in 39.3.0.

Portable builds cannot work with appimage, since it requires the application directory to be writable. But you can achieve something similar by tweaking the XDG_* vars.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: strainer on May 01, 2018, 03:55:31 pm
Yes it was the issue with libstdc++.
All the directories in the LinuxLNP are writable here, dfhack plugins can create their own directories, so Im missing something about DTs writing issue... No problem ill tweak the XDG_ if a need arises.

I couldnt use DT last year because of very poor eyesight but had treatment a while ago so its great to see it in good shape :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on May 02, 2018, 05:52:47 am
Appimage and apple bundle are actually disk images. In this case the application directory is actually inside the appimage (it will be mounted in a temp directory), not in LinuxLNP directory.

More test builds:
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on May 06, 2018, 02:18:10 am
Experimental memory layouts for 0.44.10:
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Saiko Kila on May 07, 2018, 12:33:30 pm
What is the latest version which would work with Vista x64? Version 39.0.0 works (with DF 0.44.10), while version 39.3.1 doesn't (it requires a kernel function implemented in Win7). I suppose a compiler was changed in meantime. It would be nice to get the latest version before this change...
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on May 07, 2018, 12:41:35 pm
Yes the compiler was changed from GCC to MSVC2015.

As I said before, it is a matter of using an older version of Qt (5.6 works with XP), and the right compiler. And I've just discovered there is an optional MSVC2015 component for XP support.

MSVC2015 (v140_xp) 32bits build with Qt 5.6 (https://framadrop.org/r/MEw-LwrCXa#i3iWuEPQxdyazh0ZZqrwFhRui9UchxxmDaw8Oimk5jg=)

Tested in a WinXP VM.

I expect this should work with vista too, but it is 32 bits.

I don't know what I should do for vista 64, I did not see any "vista support" package in MSVC. And it is not a Qt version issue since 39.0.0 was already using Qt 5.9.

Edit: Try this (https://framadrop.org/r/5tEN5oxcSk#qN+K2J3Jg0Moy6nL+YaAelydcinhXzhXuUKMhkby56Y=). I used the same parameter than the xp build but with 64 bits. I don't know what are the disadvantages of this kind of build. Or why Microsoft make it so hard to find it if there are none.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Saiko Kila on May 07, 2018, 03:19:22 pm
Yes the compiler was changed from GCC to MSVC2015.

As I said before, it is a matter of using an older version of Qt (5.6 works with XP), and the right compiler. And I've just discovered there is an optional MSVC2015 component for XP support.

MSVC2015 (v140_xp) 32bits build with Qt 5.6 (https://framadrop.org/r/MEw-LwrCXa#i3iWuEPQxdyazh0ZZqrwFhRui9UchxxmDaw8Oimk5jg=)

Tested in a WinXP VM.

I expect this should work with vista too, but it is 32 bits.

I don't know what I should do for vista 64, I did not see any "vista support" package in MSVC. And it is not a Qt version issue since 39.0.0 was already using Qt 5.9.

Thank you! Yes, this version does indeed works in Vista x64 (so it should also work in native x86 too). And you are right, the reason the new versions of DT do not work in Vista is apparently not related to Qt, at least not directly. The "offender" is one function used by DwarfTherapist.exe (both 32-bot and 64-bit), which is imported from KERNEL32.DLL, and named "K32GetModuleFileNameExW". Your modified for XP DwarfTherapist.exe doesn't use that function (it uses GetModuleFileNameExW from PSAPI.DLL instead).

So in summary:
DT 39.0.0 doesn't use this function, and uses Qt v5.9.2.0 (and works for me)
DT 39.3.1 does use this function, and uses Qt v5.9.4.0 (doesn't run on Vista)
DT 39.3.1 XP doesn't use this function, and uses Qt v5.6.3.0 (and works for me)

I've found this on Microsoft's site:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms683198(v=vs.85).aspx

"Programs that must run on earlier versions of Windows as well as Windows 7 and later versions should always call this function as GetModuleFileNameEx. To ensure correct resolution of symbols, add Psapi.lib to the TARGETLIBS macro and compile the program with -DPSAPI_VERSION=1. To use run-time dynamic linking, load Psapi.dll."

I can speculate, that by enabling the XP compatibility for QT5.6, the one setting quoted above was also set, to ensure that the function is called "GetModuleFileNameExW" instead of "K32GetModuleFileNameExW" (the "W" at the end means it's Unicode variant, I don't think it's important).

If you feel like it and have some time, could you maybe make the changes mentioned in MSDN article, so I would check if it is enough to run it on Vista? After all Dwarf Fortress is made with MSVC2015 (or so I've heard) and it works with older Windows versions, so it could be theoretically possible.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on May 07, 2018, 04:04:45 pm
DT already uses the GetModuleFileNameExW (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/src/dfinstancewindows.cpp#L313). But thanks for the tip, I'll try forcing the PSAPI version.

While you were writing all this, I edited my message and added a link. I may just use that in the future so DT would also be compatible with Windows XP x64.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Saiko Kila on May 08, 2018, 04:00:06 am
DT already uses the GetModuleFileNameExW (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/src/dfinstancewindows.cpp#L313). But thanks for the tip, I'll try forcing the PSAPI version.

While you were writing all this, I edited my message and added a link. I may just use that in the future so DT would also be compatible with Windows XP x64.

Thank you very much. This x64 version works in Vista x64, for both 32-bit and 64-bit versions of DF.

As for GetModuleFileNameExW function, although you use this name in your code, apparently MSVC2015 forces the kernel32 version instead, unless explicitly told not to do so. That's probably because of MS policy and assumption that you want to compile for Win7+ (in future this assumption will change to Win10+, I'm sure).

I've noticed other difference. The programs store settings (Dwarf Therapist.ini) in different places. XP 32-bit version and older versions (like 39.0.0 or 37.0.0) store it in "\AppData\Roaming\UDP Software\", while XP 64-bit in "\AppData\Roaming\Dwarf Therapist\". At first I was baffled why the different settings, because until now they were preserved across the years. Incidentally, I like the new settings better than my old ones :)
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Clément on May 08, 2018, 04:20:22 am
As for GetModuleFileNameExW function, although you use this name in your code, apparently MSVC2015 forces the kernel32 version instead, unless explicitly told not to do so. That's probably because of MS policy and assumption that you want to compile for Win7+ (in future this assumption will change to Win10+, I'm sure).
I could not find what changed with PSAPI v2, it seems to be an ABI-only change. It is not clear if there was a technical justification, or if it is just a way to push users to update Windows (older application working on newer Windows is important to Microsoft but not the other way). I wonder the same about the optional winxp compatility, all the differences I read was about debugging. But I only make release versions with MSVC, I am more used to GDB for debugging.

I've noticed other difference. The programs store settings (Dwarf Therapist.ini) in different places. XP 32-bit version and older versions (like 39.0.0 or 37.0.0) store it in "\AppData\Roaming\UDP Software\", while XP 64-bit in "\AppData\Roaming\Dwarf Therapist\". At first I was baffled why the different settings, because until now they were preserved across the years. Incidentally, I like the new settings better than my old ones :)
This is not DT 39.3.1, it is an almost 40.0.0 version with the file paths changes (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/77) and preference columns (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/74) merged (like the links above). The settings file format did not change, you can move the old file if you want to keep your previous settings.
Title: Re: Dwarf Therapist (Really Maintained Branch) v.39.3 | DF 44.09
Post by: Saiko Kila on May 08, 2018, 11:26:08 am
I could not find what changed with PSAPI v2, it seems to be an ABI-only change. It is not clear if there was a technical justification, or if it is just a way to push users to update Windows (older application working on newer Windows is important to Microsoft but not the other way). I wonder the same about the optional winxp compatility, all the differences I read was about debugging. But I only make release versions with MSVC, I am more used to GDB for debugging.

That's mostly to help convince people to update. I've found that formally the reason stated in SDK for Windows 7 was that moving these functions to kernel32 was to fix performance bug... Hardly believable IMO.

If you compile/link with PSAPI version 1 then when you run your executable on never systems a wrapper uses the same function as it would with PSAPI version 2 anyway.

This is not DT 39.3.1, it is an almost 40.0.0 version with the file paths changes (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/77) and preference columns (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/74) merged (like the links above). The settings file format did not change, you can move the old file if you want to keep your previous settings.

Oh, so that's why this looked different. Great!
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on May 10, 2018, 03:46:52 am
New version released: 40.0.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v40.0.0)

The main new feature is the possibility to add preference columns in gridviews (similar to role preferences). The data and settings file organization has changed so it more standard and consistent and to make sure DT saves downloaded memory layouts in a proper location.

Thanks to ifreund for the macOS patches.

Changelog:
The configuration file location has changed, you need to move it if you want to keep your old settings:
Custom roles using "Pots" preference require updating to use "Large Pots" instead.

Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: jecowa on May 12, 2018, 11:11:11 pm
Oh, nice! Mac fixes!
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Camstantine on May 18, 2018, 08:51:52 pm
I downloaded the .40.0 version of Dwarf Therapist, but I keep getting an error message:

The program can't start because api-ms-win-crt-math-l1-1-0.ddl is missing from your computer. Try reinstalling the program to fix this problem.

I've tried reinstalling Dwarf Therapist, tried downloading separate copies of the .dll file, tried googling every and any solution, until I figured I might as well bother someone here.  :D

Perhaps a solution could be found?
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: lethosor on May 18, 2018, 10:59:16 pm
Does the message really refer to "api-ms-win-crt-math-l1-1-0.ddl"? It should be "dll". Also, is that the file you downloaded? Make sure you downloaded the right architecture - 64-bit for 64-bit DT (regardless of DF), etc.. Where did you put the DLL?
Reinstalling DT is likely pointless - that's a dumb system error message that assumes the program in question has an installer that's supposed to install DLLs, which is not the case with DT.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Camstantine on May 18, 2018, 11:33:59 pm
Does the message really refer to "api-ms-win-crt-math-l1-1-0.ddl"? It should be "dll". Also, is that the file you downloaded? Make sure you downloaded the right architecture - 64-bit for 64-bit DT (regardless of DF), etc.. Where did you put the DLL?
Reinstalling DT is likely pointless - that's a dumb system error message that assumes the program in question has an installer that's supposed to install DLLs, which is not the case with DT.

My apologies, the message does in fact read api-ms-win-crt-math-l1-1-0.dll. The architecture I downloaded is the 64 bit for my 64 bit computer. The DLL file is in the folder that DT is in, or at least that's what my armature digging around found out. I've tried downloading the "api-ms-win-crt-math-l1-1-0.dll" by itself, but to no avail.

I've only downloaded the most recent version a day or two ago. I figured it was just a bug, perhaps?
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on May 19, 2018, 03:43:24 am
Try running the vcredist installer included in DT archive, it should install the required dlls.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Pvt. Pirate on May 19, 2018, 09:38:34 am
Try running the vcredist installer included in DT archive, it should install the required dlls.
i thought so too, but all vcredist installers i were able to get hands on installed 32bit dlls instead of 64bit ones (on win7 pro 64bit) and caused many 64bit programs to crash.
it was the reason i changed my OS.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Camstantine on May 19, 2018, 12:15:02 pm
Try running the vcredist installer included in DT archive, it should install the required dlls.

Uninstalled the vcredist I had already installed, reinstalled it, got an error message that reads the following:
"Setup Failed - One or more issues caused the setup to fail. Please fix the issues and then retry setup.
0x80070bc9 - The requested operation failed. A system reboot is required to roll back changes made."


The vcredist installer says it's a x64.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on May 19, 2018, 12:38:20 pm
https://support.microsoft.com/en-us/help/3024471/hresult-0x80070bc9-error-message-while-you-are-installing-an-msi-packa

Quote
To resolve this issue, restart the system, and then run the MSI installation manually after the Setup program is complete.

It looks like you have made some change that requires a reboot before you can install anything again.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Camstantine on May 19, 2018, 02:29:29 pm
https://support.microsoft.com/en-us/help/3024471/hresult-0x80070bc9-error-message-while-you-are-installing-an-msi-packa

Quote
To resolve this issue, restart the system, and then run the MSI installation manually after the Setup program is complete.

It looks like you have made some change that requires a reboot before you can install anything again.

I've restarted my computer multiple times, reinstalled and uninstalled numerous times, etc. I do not know how running the operation manually would fix anything if the installation setup won't finish to begin with. Maybe I'm missing something?
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Pvt. Pirate on May 19, 2018, 03:40:30 pm
https://support.microsoft.com/en-us/help/3024471/hresult-0x80070bc9-error-message-while-you-are-installing-an-msi-packa

Quote
To resolve this issue, restart the system, and then run the MSI installation manually after the Setup program is complete.

It looks like you have made some change that requires a reboot before you can install anything again.

I've restarted my computer multiple times, reinstalled and uninstalled numerous times, etc. I do not know how running the operation manually would fix anything if the installation setup won't finish to begin with. Maybe I'm missing something?
and exactly that was the moment i abandoned win7. (well, actually after 3 days of trying to get an actually working win7 vcredist64bit.)
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Spectre Incarnate on May 31, 2018, 06:59:54 pm
Getting back into DF cause I need something to get my mind off my mom's failing health. What better way than send dwarfy mothers charging into battle with a weapon in one hand and a baby in the other, right!?

Got into the same snag as last year with Therapist not working on Win7 OS and some system dlls missing and it looks like others are having this problem too, so I contacted a friend for help. It turns out I have the correct x64 architecture for my system as I thought, but I did not have Service Pack 1 which is absolutely required for Visual C++ Redist 2015 to install correctly. That pack has the proper dlls for everything to work and once this was taken care of, Therapist finally started working like a dream.

Service Pack1: https://www.microsoft.com/en-us/download/details.aspx?id=5842
Visual C++ Redist 2015: https://www.microsoft.com/en-us/download/details.aspx?id=48145

(Note: If you have an unofficial Win7 version, turn off automatic Windows Update in your control panel settings immediately after installing Service Pack 1 and everything should be peachy.)
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Dutchling on June 05, 2018, 10:41:30 am
I sent a squad to raid a site, when they returned one of them turned out to have died. DT shows him still being in the squad. It does show the warning: "The count may be different as Dwarf Fortress keeps missing, dead dwarves in squads until they're found", but they are clearly not in the actual squad.

Is there a bug tracker or something for DT? Forum posts tend not to be a great medium for this in my experience.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on June 05, 2018, 10:53:18 am
The bug tracker is on github: https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues

Upload your save somewhere (DFFD (http://dffd.bay12games.com/) for example) and give the name of the squad and dwarf.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: PatrikLundell on June 05, 2018, 11:20:23 am
@Clément:
There's a DFHack lua script called devel/export-dt-ini.lua that generates addresses for DT. I'm currently looking at the usages of the <unit>.flags1.dead flag, as it's mistakenly been named "dead" when its actual function is "inactive", and a number of scripts and plugin uses the flag incorrectly. In most cases the <unit>.flags2.killed flag should be used instead.
Towards the end of the script the unit flags are processed, creating an output string for named flags of interest.
There are two questions:
1. Is the string produced significant, i.e. is it read by a program, or is it for human consumption only?
2. Does DT have a need for <unit>.flags1."dead" at all, given that <unit>.flags2.killed is known to it as well?

The reason for 1. is that I'd like to change the text for the <unit>.flags1.diplomat to "outpost liaison, diplomat, or quester who intends to or has ever requested an artifact" and for <unit>.flags1."dead" to "currently not active".

The reason for 2. is rather obvious. The "dead" flag is set on critters, merchants, visitors, and invaders that are inbound but haven't yet entered the map, and I suspect this can happen with returning raiding party members as well, although I haven't investigated that (they trickle in on return, but I don't know if the whole squad is added to the "active" unit list at once, setting all but the first one to "dead", or if they get entered into the "active" list one at a time as they enter the map). I think the "dead" flag is set on units that have left the map, but the group hasn't left yet (such as a caravan and possibly a raiding squad), but that's a guess, as I haven't checked that either).
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: strainer on June 05, 2018, 11:58:24 am
Its a bit complicating that flag is used for inactive units, but Ive used it to list units status details, and every unit in the games 'dead/missing' listing has had it, and ive not noticed a unit in the citizens, pets or others listing with it. Maybe better to leave the naming and just have to be aware dealing with offscreen units, it has been used as a bodge to deactivate them.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on June 05, 2018, 12:11:42 pm
The "invalid_flags" are used for ignoring units that should not be shown in DT. The string is only used for logging the reason the unit was ignored, it can be anything.

Leave the dead/inactive flag, it still looks like a good reason for ignoring the units. You can freely improve the descriptions for the flags.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: PatrikLundell on June 05, 2018, 01:14:28 pm
@strainer: Yes, every dead unit is rather inactive, but every unit in the units.active list that has the inactive flag set isn't dead.
The reason you don't see the inactive living units in any of the lists is because DF doesn't display them in the list, not because they're not in the data structures. Inbound units entering the embark are inactive until they enter, and this goes at least for sieges, merchants, visitor groups (performance troupes and quester groups), and critter groups. I don't know how returning raid parties are handled, and I don't know how leaving groups are handled either, although I suspect they're treated the same as arriving ones.

Leaving the name of the flag as is will probably result in additional cases of bugs such as those generated by fix/dead-units before it was fixed. However, the current phase is an investigation of where the flag is used to see if it's used correctly, in particular that it doesn't do horrible things to innocent inactive units believing they are dead.

It's still not completely certain every dead unit has the flags2.killed flag set, but it would be strange if that wasn't the case. After all, the issue is not that Toady does something strange with the flags, but that the community didn't manage to identify the flags correctly (which is understandable, given the correlation dead-> inactive flag set).

@Clément: Thanks for the answers. Being inactive is a very good reason for a unit not to be of interest to DT, so a check for that purpose is a good one.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Dutchling on June 06, 2018, 07:13:14 am
Is it possible to split the age category of "10-19" between children (10-11) and adults (12+)? I want to see how many people are about to grow up, and them being grouped together is not very useful.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on June 06, 2018, 07:24:39 am
Use a filter script. Something like:
Code: [Select]
d.get_age() >= 10 && d.get_age() < 12
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Dutchling on June 06, 2018, 08:09:47 am
Thanks!
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Jazz Cat on June 09, 2018, 03:52:29 pm
Got a bug report. Within the last week, my blacksmith "felt horrified this is an unknown thought, please report it!" The actual thought was that he was horrified reliving seeing a goblin's dead body.

However, there's a bigger bug I'd also like to report: Said blacksmith has also become haggard and drawn and has slipped into depression. According to DT, his stress level is 25.2k... but he's listed as "fine" in his description and his happiness grid square is colored in as "fine." In fact, all of my dwarves are listed as "fine," from my 25.2k blacksmith down to a -41k child who by all rights should be skipping through the hallways singing "hiho, hiho" at this point.

If it helps, Dwarfmonitor tells me I have nothing but the happiest two categories of dwarf, and CavernKeeper confirms that Urist McDepression's at ~25k stress.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: PatrikLundell on June 09, 2018, 04:54:14 pm
The reason for the unknown thought is that Toady has split "seeing X die" and "seeing X's dead body" into two different thoughts, with the new one (dead body) added to the end of the type (https://github.com/DFHack/df-structures/issues/255 (https://github.com/DFHack/df-structures/issues/255)).
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on June 09, 2018, 05:18:48 pm
Got a bug report. Within the last week, my blacksmith "felt horrified this is an unknown thought, please report it!" The actual thought was that he was horrified reliving seeing a goblin's dead body.
Already reported (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/90) and partially fixed (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/93).

However, there's a bigger bug I'd also like to report: Said blacksmith has also become haggard and drawn and has slipped into depression. According to DT, his stress level is 25.2k... but he's listed as "fine" in his description and his happiness grid square is colored in as "fine." In fact, all of my dwarves are listed as "fine," from my 25.2k blacksmith down to a -41k child who by all rights should be skipping through the hallways singing "hiho, hiho" at this point.

If it helps, Dwarfmonitor tells me I have nothing but the happiest two categories of dwarf, and CavernKeeper confirms that Urist McDepression's at ~25k stress.
I have noticed that too. Stress values looks good but the happiness thresholds are wrong:The stress values changed?
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Jazz Cat on June 09, 2018, 06:40:03 pm
Stress values looks good but the happiness thresholds are wrong:
  • > 500000: miserable
  • 250000 - 500000: very unhappy
  • 100000 - 250000: unhappy
  • -100000 - 100000: fine
  • -250000 - -100000: content
  • -500000 - -250000 : happy
  • < -500000: ecstatic
The stress values changed?

Are those the current thresholds in DT? Because that would explain it--there's an extra 0 in every number on that list, it looks like. Those range from -500k to 500k, but the numbers I'm seeing in my dwarves fit more in the -50k to 50k range.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on June 10, 2018, 03:05:31 am
Yes, this is the current thresholds. And I found the same values in an old Quietust's post (http://www.bay12forums.com/smf/index.php?topic=145761.msg5813448#msg5813448).

I checked with this save (http://dffd.bay12games.com/file.php?id=13808) (because it mentioned stressed dwarves). Stress goes from -100k (exactly, it must be the limit) to 48.9k. Lowest stress with a red arrow is 14.1k and highest stress without it is 6.3k. Is 50k stress the point when they become permanently insane? Dividing by ten looks right.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: strainer on June 10, 2018, 10:45:15 am
Phew the polarity here confuses me:
Quote
Lowest stress with a red arrow is 14.1k
14k happy but has a red arrow?
Quote
highest stress without it is 6.3k
Everyone less than 6.3k happy had red arrow ?

I guess that's wrong but cant figure out the implied signage.

I did do some torture testing to feel out the limits of the value, and got someone down to 100k stressed, but I got the creeps from all the dark stuff going down, and wiped the save before concluding that was the hard limit.

An idea is to divide the description ranges at 0. Since new arrivals start at 0 you can get indication immediately of which way they are trending. Otherwise if it takes till say +/-10k to leave the initial range, they can have picked up some momentum by the time they are noticed. Could have -9 to 0 = "not great", 1 to 10 = "not bad", and then the progressively warning descriptions beyond them.

With the latest complications to this stress mechanism, a review of the language seems appropriate. It could be confusing that the stress/happiness score puts a dorf in a "content" range at the same time as it can be "very unfocused by unmet needs".  "Psyche" might be a suitable theme for Therapist. I'm thinking of going with something like 'story' to indicate extreme values involve a special story in the units thoughts/memory to look into... *edit* or fresh from a thesaurus: "Muse"
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: lethosor on June 10, 2018, 11:00:50 am
Phew the polarity here confuses me:
Quote
Lowest stress with a red arrow is 14.1k
14k happy but has a red arrow?
Quote
highest stress without it is 6.3k
Everyone less than 6.3k happy had red arrow ?

I guess that's wrong but cant figure out the implied signage.
Stress is the opposite of happiness. A higher stress value is more stressed and less happy. The numbers are stress, not happiness.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: strainer on June 10, 2018, 11:42:42 am
Quote
Stress is the opposite of happiness
I dont think so, linguistically but regardless, those quotes arent consistent. "highest stress without (red arrow) is 6.3k" so 6.4k and higher can have a red arrow...
Quote
Lowest stress with a red arrow is 14.1k
There are potentially red arrows from 6.4k thats *lower* than 14.1k
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Starver on June 10, 2018, 12:37:12 pm
I read it (admittedly skimming it) as there are no red arrows on/below 6.3k stress (so <=6.3k is not sufficiently stressed), there are only red arrows on/above 14.1k stress (so >14.1k is sufficiently stressed, at least to 1DP) but that there were absolutely no data for values between, so the singular threshhold might be 6.3k<threshhold<=14.1k.  The exact value needs to be established through more checking/observation to find the state of a dwarf who progresses (either way) throughsome or all of that stress range.

(Or, if it's a range of tipping points (because the threshold isn't pure stress, but maybe stress - happiness) the odds are reasonable that the typical stress range for any given typical modification value lies wholly/mostly inside that range (extreme outlier non-stress modifiers might shift it below 6.3k for an arrow, or above 14.1k above for no arrow, but more data is needed) where there's an overlap of maybe/maybe not flipping into the danger zone.)



Basically, ‼science‼ is needed. By anyone with time and a suitably stress-inducing gamespace to play in.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: lethosor on June 10, 2018, 02:02:59 pm
Quote
Stress is the opposite of happiness
I dont think so, linguistically
What? They are definitely not synonyms. They may not be exact opposites, but one certainly does not come with the other.
Quote
but regardless, those quotes arent consistent. "highest stress without (red arrow) is 6.3k" so 6.4k and higher can have a red arrow...
Quote
Lowest stress with a red arrow is 14.1k
There are potentially red arrows from 6.4k thats *lower* than 14.1k

The full quote:
Quote
Lowest stress with a red arrow is 14.1k and highest stress without it is 6.3k
I interpret this to mean that a dwarf without a red arrow has 6.3k stress, a dwarf with a red arrow has 14.1k, and there are no dwarves in between. The data is just from one save, so it's not unlikely that there would be big gaps like that.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on June 10, 2018, 02:05:56 pm
Stress (http://dwarffortresswiki.org/index.php/DF2014:Stress) replaced happiness (http://dwarffortresswiki.org/index.php/v0.34:Thought). But DT kept calling it "Happiness" and using the old adjectives.­

I should have checked the message before the thought list instead of the status icon. Here are the most stressed dwarves from the previous save and a few more.
48.9k, 37.1k, 35.4k, 29.7k, 29.6k, 28.6k: <name> has become haggard and drawn due to the tremendous stresses placed on her/him.
21.8k, 14.8k, 14.4k, 14.1k, 13.6k, 13.3k, 13.2k, 12.9k, 11.3k, 10.7k: Over the long term, <name> has been under a great deal of stress.
9.8k (x2), 9.5k, 8.8k, 7.1k, 6.9k, 6.3k, ...: no message

This is consistent with 10k and 25k thresholds. I don't have a save with a dwarf above 50k.

Least stressed dwarves don't have special messages.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: strainer on June 10, 2018, 03:19:43 pm
To be sure do none of these have red arrows?
Quote
9.8k (x2), 9.5k, 8.8k, 7.1k, 6.9k, 6.3k
Perhaps arrows can take into account stress_vulnerability ?
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Jazz Cat on June 10, 2018, 03:41:48 pm
Is there a config file somewhere we (the users) can go in and set to the more accurate threshold, or do we wait until the next release comes out?
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on June 10, 2018, 05:09:08 pm
No it is hard-coded. You can modify the values here (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/v40.0.0/src/dwarf.cpp#L1873-L1890) and recompile. I am hesitating between doing the quick patch and moving the threshold (and strings) in game_data.ini (it would allow to keep DT working with older DF versions).
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Saiko Kila on June 11, 2018, 12:47:17 pm
The limits for stress are:
10000 (and above) stressed
25000 (and above) haggard
50000  (and above) harrowed
Negatives don't have particular checks, and thus associated descriptions, as far as I can see. The max is 100000 and the min is -100000 (DF uses simple max() and min() routines to keep them in these margins).
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: strainer on June 11, 2018, 05:56:07 pm
Good to know the bounds for sure. I also ran the save linked earlier and got a few stressed to 1000k with maniacal mistreatment. The red arrows appear solidly at 10k.

The 'Focus' counters have changed in 44.10 I dont know if DT is interested in that.
Title: Re: Dwarf Therapist v.40.0 | DF 44.10
Post by: Clément on June 12, 2018, 03:12:25 am
DT does not currently show the focus, but I am interested in what you know. I think I understand the needs but I don't understand the global focus values.

https://github.com/DFHack/df-structures/blob/c3025feb80c6f8e7441ea5dcf4f463a9cf89cbbd/df.units.xml#L1817-L1818
Code: [Select]
<int32_t name="current_focus" comment='weighted sum of needs focus_level-s'/>
<int32_t name="undistracted_focus" comment='usually number of needs multiplied by 4'/>

If current_focus is a weighted sum, I don't know what are the weights (not the need_levels apparently) and undistracted_focus is not the number of needs multiplied by 4. DFHack's comments may need to be updated.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 12, 2018, 11:15:39 am
New version released: 40.0.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v40.0.1)

Minor bug fixes release.

Changelog:
This release fixes the happiness thresholds for 0.44.10 but break them for older versions. When playing with DF 0.44.09 or older, you need to add a modified game_data.ini (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/resources/game_data.ini) in DT's data folder (use "Open data directory" in the "File" menu, if you don't know where it is). Replace the happiness_levels section with (add a zero in each threshold):
Code: [Select]
[happiness_levels]
miserable/threshold = 500000
miserable/desc = "is utterly harrowed by the nightmare that is their tragic life"
very_unhappy/trhreshold = 250000
very_unhappy/desc = "is haggard and drawn due to the tremendous stresses placed on them"
unhappy/threshold = 100000
unhappy/desc = "is under a great deal of stress"
fine/threshold = -100000
content/threshold = -250000
happy/threshold = -500000
ecstatic/threshold = -1000000
Remember to delete your modified game_data.ini, when you want to go back to the latest version.

Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).

PS: (edit: fixed now) macOS deployment failed for unknown reason although it was not changed since the last release. Is there a macOS expert that can check the deploy script (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/3ea7af5f02153eaaf4238df26688727cb8d215fb/.travis/osx/deploy.sh)?
Code: [Select]
$ .travis/$TRAVIS_OS_NAME/deploy.sh
Reading whole disk (Apple_HFS : 0)…
Elapsed Time:  39.304ms
Speed: 40.8Mbytes/sec
Savings: 95.9%
created: /Users/travis/build/Dwarf-Therapist/Dwarf-Therapist/DwarfTherapist.sparseimage
/dev/disk1                                          /Volumes/Dwarf Therapist
hdiutil: couldn't unmount "disk1" - Resource busy
hdiutil: convert failed - Resource temporarily unavailable
The command ".travis/$TRAVIS_OS_NAME/deploy.sh" failed and exited with 1 during .
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: strainer on June 12, 2018, 11:53:30 am
Just a comment typo? "Haggard and dr(a)wn"
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: lethosor on June 12, 2018, 12:02:58 pm
Is it possible that something else was writing to the disk image? If not, maybe macdeployqt finished before the disk write was actually finished. I would just add a retry loop of some kind around the "hdiutil eject" step and see if that helps.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 13, 2018, 03:46:21 am
OSX deployment fixed itself when I restarted the job today. I don't know if a retry loop will help. I still added it just in case.

Sorry for the typo, but with osx deployment fixed, I don't think worth making a new release right now. Your dwarves will be drowning in unhappiness for a little longer.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: strainer on June 15, 2018, 02:06:16 pm
Quote from: Clément
DT does not currently show the focus, but I am interested in what you know.
In 44.10 the old counters are both set to zero, Im guessing the structure finder has just lost them as the description text for focus and distraction doesn't seem to have changed.

`current_focus` seemed to track focus level (higher=more focused) and `undistracted_focus` seemed to track "current_distraction" (higher=more distracted). Keeper displayed a 1 digit signed score based on current_focus-current_distraction that indicated the jist of the description text for units focus and distraction. When I made the score I thought they were components of the same 'focus' thing, but maybe focus affects job quality, and distraction affects punctuality.

A signed percentage might work for happiness/gladness/unstress now that its bounds are known, then percentage for focus and undistraction could be shown along side. I never resolved the proper bounds of current_focus and undistracted_focus|current_distraction as I calibrated adhoc the combined logarithmic score and it worked alright, they were around 0 to 100 each I think.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 16, 2018, 03:18:38 am
They seem to have moved (unit_soul.unk_4410_1 and unit_soul.unk_4410_2 in DFHack 0.44.10-r1).

The current_focus thresholds for "Overall, <name> is [...] with satisfied needs/by unmet needs, are relative to undistracted_focus:
This is based on only two different values for undistracted_focus.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 20, 2018, 05:08:33 am
Here is how need columns could look like:
(https://framapic.org/aNdaIYmdtnJZ/MoIuINW59bob.png)

The number is the need level (if I understand correctly, the speed at which focus goes down), the color is the need focus. There is an issue with the "Pray/Meditate" column: a dwarf can have several of these kind of need for different deities. I am currently displaying the sum of need levels and the worst focus (for example "Kol Athelineth" is actually 10 + 5).
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 23, 2018, 07:16:28 pm
Experimental memory layouts for 0.44.11:
Edit: They should be working now.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: hagger on June 24, 2018, 09:16:08 am
Experimental memory layouts for 0.44.11:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/linux/v0.44.11_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/linux/v0.44.11_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/osx/v0.44.11_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/osx/v0.44.11_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/windows/v0.44.11_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/windows/v0.44.11_graphics_win64.ini)

Currently unable to get this working - Logs are giving a few warnings of this form:
2018-Jun-24 14:54:30.241 WARNING   core   string at 1695402092016 is length 1599361861 which is larger than cap 18 [E:\projects\Dwarf-Therapist\src\dfinstancewindows.cpp:100] (DFInstanceWindows::read_string)

Then a whole lot of errors about pointers that are as follows:
2018-Jun-24 14:54:30.244 ERROR   core   POINTER VECTOR SIZE IS NOT A MULTIPLE OF POINTER SIZE [E:\projects\Dwarf-Therapist\src\dfinstance.cpp:268] (DFInstance::enum_vec)

It seems like I'm doing something stupid, like saving the new memory layout file incorrectly or missing out part of the file, but I've tried a few times and with a few different methods (creating file using Atom and notepad, and ANSI/UTF-8 encoding). It's definitely saved as an ini file.

Anyone got any tips? :)

windows 10, running against 44.11 64bit, with the new R40.0.1 DT version. Don't have DFHack installed or any other utilities
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: lethosor on June 24, 2018, 10:41:50 am
It's possible that some structure layouts changed. As far as I know, nobody has done much work on df-structures/DFHack yet, so those wouldn't have been identified and corrected for the layouts if that's the case. There's a reason they're experimental - sometimes they just don't work.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 24, 2018, 10:56:07 am
I generated those from BenLubar's automatic update (https://github.com/DFHack/df-structures/pull/269), just before going to sleep. I did not test anything. It can work if the structures (at least the ones used by DT) did not change, this time it did not. Just wait for the fixed version.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: hagger on June 24, 2018, 11:11:11 am
no worries, just was checking since I haven't manually copied in the memory layouts before. I'll wait a bit longer :)

Cheers for the answers.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 24, 2018, 11:44:50 am
I've just tested the layout for linux64 and it crashes on the first thing it reads (languages). DFHack crash on init, too.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Insert_Gnome_Here on June 24, 2018, 04:25:48 pm
Yeah. Linux 64 bit segfaults after a second or so. 
Most of the messages look like:
Code: [Select]
2018-Jun-24 22:22:55.310 ERROR core READ_RAW: "Bad address" READING 8 BYTES FROM "0xffffffffffffffff" TO 0x7ffe9c922368 [/home/insert_gnome_here/Dwarf-Therapist/src/dfinstancelinux.cpp:115] (read_raw)
2018-Jun-24 22:22:55.310 ERROR core Invalid string at "0xffffffffffffffff" [/home/insert_gnome_here/Dwarf-Therapist/src/dfinstancelinux.cpp:397] (read_string)
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Maul_Junior on June 25, 2018, 06:12:10 am
*breathes heavily while waiting for 44.11 update **while understanding that it has been only 2 days, and those 2 days were the weekend, and it will probably take a week or two to finish***

*also PTW, because I don't think I have yet*
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: strainer on June 25, 2018, 07:11:40 am
The needs view (http://www.bay12forums.com/smf/index.php?topic=168411.msg7789833#msg7789833) is excellent. The crafting object need stood out as particularly important for most dwarves. A summary/score column should be useful for browsing and sorting the view.

A similar format for stress info seems desirable, but I expect there is more variation in stress and memory types than with focus needs.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 25, 2018, 08:30:24 am
A summary/score column should be useful for browsing and sorting the view.
Do you mean a general focus column? It will be done as a clone of the happiness column (based on current_focus instead of stress_level), there is not much design questions about it. Or do you mean something else? Please detail your idea.

A similar format for stress info seems desirable, but I expect there is more variation in stress and memory types than with focus needs.
Stress is only one value, or do you mean a column for each thought? There is currently 241 thoughts (some are unknown) in game_data.ini, not counting sub-thoughts. That's a lot. And what would be displayed in each column? The number of thoughts, the type of emotion, strength, severity? There is already an "Emotions" dock window, improvement could be done there instead of adding more columns.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Insert_Gnome_Here on June 25, 2018, 12:57:46 pm
*breathes heavily while waiting for 44.11 update **while understanding that it has been only 2 days, and those 2 days were the weekend, and it will probably take a week or two to finish***

*also PTW, because I don't think I have yet*



The above but playing drunk fortress at the same time, while listening to Albert Ayler.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: strainer on June 25, 2018, 02:30:13 pm
It will be done as a clone of the happiness column (based on current_focus instead of stress_level)
Yes thats the column I was expecting to see near those individual details of focus, current_focus/undistracted_focus - which you revealed earlier.

Quote
There is currently 241 thoughts (some are unknown) in game_data.ini, not counting sub-thoughts. That's a lot.
I see thanks, that surely is too much to lay out in the same fashion.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 25, 2018, 03:53:34 pm
I tried building DFHack on windows 64 with suokko's patch (https://github.com/DFHack/df-structures/commit/2d31879f817731c4e2a1f17966900b67089ed32d). DFHack still crashes when loading a fortress but it generates a memory layout (https://pastebin.com/cdtA6fYW) that is mostly working (a few remaining warnings but I managed to assign a labor with it). Be careful with it, reads are safe but bad writes can crash DF or corrupt data. I'll try updating for all platforms tomorrow.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: lethosor on June 25, 2018, 03:56:44 pm
If you clear onLoad.init (or -example) does it still crash? I was seeing an exception caused by warn-starving, which is run from there.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 25, 2018, 05:15:05 pm
My bad, I did not read the message on startup saying that dfhack.init-example is loaded when dfhack.init is missing. I should have added an empty dfhack.init.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: lethosor on June 25, 2018, 07:00:39 pm
I was talking about onLoad.init, actually, since that's where I saw the warn-starving issue. But making a blank dfhack.init would avoid loading onLoad.init-example when a world loads, so that might have fixed the issue for you too.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 26, 2018, 02:39:31 am
Experimental memory layouts for 0.44.11:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/linux/v0.44.11_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/linux/v0.44.11_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/osx/v0.44.11_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/osx/v0.44.11_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/windows/v0.44.11_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/windows/v0.44.11_graphics_win64.ini)

Updated based on the latest df-structures (fc2bda2). It works without errors or warnings using fresh embarks on linux 64 and 32 (tested labor, nickname and squad assignment).

I was talking about onLoad.init, actually, since that's where I saw the warn-starving issue. But making a blank dfhack.init would avoid loading onLoad.init-example when a world loads, so that might have fixed the issue for you too.
Commenting the line in onLoad.init-example was enough to fix the crash (no new bug for you). But I only wanted to look at the structures so it was safer with an empty dfhack.init (or are the plugins still loaded?).
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: lethosor on June 26, 2018, 09:33:14 am
Plugins are always loaded if they exist. They're not enabled unless the "enable" command is run, e.g. in dfhack.init (with a few exceptions, like steam-engine, which try to detect whether they should enable themselves). An empty dfhack.init should keep them from doing much.
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: feelotraveller on June 27, 2018, 12:47:06 pm
The needs view (http://www.bay12forums.com/smf/index.php?topic=168411.msg7789833#msg7789833) is excellent.
+1
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Fleeting Frames on June 28, 2018, 01:01:50 am
It'd be neat to check for need when assigning jobs as well (in particular, thinking about need to wander for herbalists/fisherdwarves/hunters).
Title: Re: Dwarf Therapist v40.0.1 | DF 44.10
Post by: Clément on June 29, 2018, 03:56:00 am
Experimental memory layouts for 0.44.11:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/linux/v0.44.11_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/linux/v0.44.11_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/osx/v0.44.11_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/osx/v0.44.11_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/windows/v0.44.11_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layout-0.44.11/share/memory_layouts/windows/v0.44.11_graphics_win64.ini)
Updated again. Only the creature extracts offset was changed this time. I think it only affects the "creatures (extracts)" role preference (used in dissector roles).
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Clément on June 29, 2018, 09:34:47 am
New version released: 40.1.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v40.1.0)

Support for 0.44.11 and other minor changes and bug fixes.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Clément on June 30, 2018, 03:52:39 am
Quick poll: Need columns can be sorted by need level or focus, which one should be the default?

The need level is how fast the focus goes down (a dwarf with a higher need level will be distracted faster).
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Fleeting Frames on June 30, 2018, 06:47:00 am
I'm thinking focus, because players will more often want to check for and take care of red in needs rather than more needy needs.

High-maintenance dwarves would generally except a more permanent solution once.
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Maul_Junior on June 30, 2018, 12:19:35 pm
*plays Flight of The Valkyries as DT downloads*
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Clément on July 08, 2018, 03:21:36 am
Experimental memory layouts for 0.44.12:
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Saiko Kila on July 09, 2018, 03:28:17 am
Any chance for WinXP build for next windows release? Current versions need Win7+.
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Clément on July 09, 2018, 11:02:17 am
It should already work. What error do you get exactly?

Edit: I've just tested with my virtual machine, it crashes when connecting to DF, but run fine otherwise, is that your issue?
Edit: It does not crash when I disable the auto updates. Never mind, now it works with auto updates on.
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Saiko Kila on July 09, 2018, 12:25:55 pm
It should already work. What error do you get exactly?

Edit: I've just tested with my virtual machine, it crashes when connecting to DF, but run fine otherwise, is that your issue?
Edit: It does not crash when I disable the auto updates. Never mind, now it works with auto updates on.

It's the same issue as here http://www.bay12forums.com/smf/index.php?topic=168411.msg7754518#msg7754518
I'm still using the version which you gave a link there (this pre-v.40 build), because newer don't work, lacking the needed function in kernel.

I'm talking about the x64 bit version, just to be clear.
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Clément on July 09, 2018, 12:54:18 pm
Both 32 and 64 bits versions are now compiled with Qt 5.6 and the xp compatibility option. I don't have windows xp 64 bits to test it though.
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Saiko Kila on July 10, 2018, 03:34:38 am
The 32-bit version is made correctly. It's the 64-bit version which is Win7+ only, even though it uses Qt5.6.
I suppose whatever compatibility options are used in the compiler (MSVC2015?) they are bugged for x64 platform.

If this is VS 2015, then the solution would be adding the required library (Psapi.lib) to the dependencies in Linker options of the project.

And either define this in the code:
#define PSAPI_VERSION 1
or use the compiler line option ("/DPSAPI_VERSION=1").

This would change nothing for Win7+ platforms, they will work the same. Apparently, this or something similar is used by your compatibility options for XP, but only when compiling for 32-bit.

Anyway, I'm willing to try it myself. Only I would have to create a virtual machine with Win7 and install MSVC2015 first.
If you are using virtual machine, and installed MSVC2015 could you tell me what size it takes (I mean the file/partition of the whole virtual machine)? Because I'd need to install another hard drive to make room for it. Alternatively, how much space takes MSVC2015 if you installed it natively? 
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Clément on July 10, 2018, 04:26:33 am
It worked with Vista64 when I checked. And I think the PSAPI version is same as Xp. And if the old worked, I don't see what I am doing different now.

My MSVC2015 dir is 3.7GB, you will have to install Qt too, Qt 5.6.3 for msvc2015_64 is 974MB, but there will be other tools and doc beside so it will take more (my whole Qt dir is 28.5GB but I have a lot of Qt versions installed).

The commands I use are (you need to set or replace CMAKE_PATH and QT_PATH, VS140COMNTOOLS should be set by MSVC2015 installer):
Code: [Select]
call "%VS140COMNTOOLS%VsDevCmd.bat"
mkdir build
cd build
"%CMAKE_PATH%\bin\cmake.exe" .. "-DCMAKE_PREFIX_PATH=%QT_PATH%" -T v140_xp -G "Visual Studio 14 2015 Win64"
msbuild DwarfTherapist.sln /p:Configuration=Release
Then manually copying the required files (I really need to add an install target for other platforms) and running
Code: [Select]
"%QT_PATH%\bin\windeployqt.exe" "%DEST%\DwarfTherapist.exe"
This is simplified, if you want to check the actual script I use, I copied it here (https://pastebin.com/B88qxy77).
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Saiko Kila on July 10, 2018, 11:41:23 am
It worked with Vista64 when I checked. And I think the PSAPI version is same as Xp. And if the old worked, I don't see what I am doing different now.

You mean the build linked to on the first page, version 40.1.0, or any 40.x?
Well, I looked at dependencies (I use Total Commander for this), and the version which works for me has PSAPI.DLL dependency, while the last few versions from GitHub do not (so they shouldn't work on pre-Win7 platform). All other 15 dependencies are the same for any version, but not PSAPI.

The 64-bit v39.3.1 version from GitHub doesn't work for me, but the one you linked in a reply to me 2 months ago (also v39.3.1) does.

My MSVC2015 dir is 3.7GB, you will have to install Qt too, Qt 5.6.3 for msvc2015_64 is 974MB, but there will be other tools and doc beside so it will take more (my whole Qt dir is 28.5GB but I have a lot of Qt versions installed).

The commands I use are (you need to set or replace CMAKE_PATH and QT_PATH, VS140COMNTOOLS should be set by MSVC2015 installer):
Code: [Select]
call "%VS140COMNTOOLS%VsDevCmd.bat"
mkdir build
cd build
"%CMAKE_PATH%\bin\cmake.exe" .. "-DCMAKE_PREFIX_PATH=%QT_PATH%" -T v140_xp -G "Visual Studio 14 2015 Win64"
msbuild DwarfTherapist.sln /p:Configuration=Release
Then manually copying the required files (I really need to add an install target for other platforms) and running
Code: [Select]
"%QT_PATH%\bin\windeployqt.exe" "%DEST%\DwarfTherapist.exe"
This is simplified, if you want to check the actual script I use, I copied it here (https://pastebin.com/B88qxy77).

Thank you for these tips, I'm going to try it tomorrow. Also I thought that the installation of VS would be one order of magnitude bigger, it's not that bad.
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Clément on July 10, 2018, 01:50:10 pm
I tested with vista64 and I got the error. Rebuilding after deleting the build directory fixed the issue. Some old configuration must have been left there. My fault for not rebuilding from scratch for the releases.
Title: Re: Dwarf Therapist v40.1.0 | DF 44.11
Post by: Saiko Kila on July 11, 2018, 04:12:54 am
Both your notes and the script were much helpful in building Dwarf Therapist v40.1.0. I was only a bit frustrated by Qt installer, had to download and install offline. Anyway, it's working now for both Vista x64 and Win10 x64.

As a side note to anyone who would try: MSVC2015 Community with XP support and C++ took almost 14 GiB in total (shared among all directories and components), and Qt 5.6.3 (only msvc2015_64 version) took 1.5 GiB, plus I also installed CMake, but this is small.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 11, 2018, 05:30:04 am
New version released: 40.1.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v40.1.1)

Support for 0.44.12 and a few bug fixes.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: HellTiger on July 11, 2018, 06:54:32 am
where should i bug report for "Preview Win64 0.44.12 Pack.zip"? never did this yet.
so, while embarking, i fire up therapist to set optimal skills, there i got 13 dorfs and not 7. here are some screenshots:
(https://pasteboard.co/HtWLc3oV.png)
(https://pasteboard.co/HtWLWVl.png)
https://pasteboard.co/HtWLc3oV.png (https://pasteboard.co/HtWLc3oV.png)
https://pasteboard.co/HtWLWVl.png (https://pasteboard.co/HtWLWVl.png)
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 11, 2018, 07:24:02 am
No issue for me without the experimental pack.

Does it happen with the latest version (40.1.1 just before your post)?

If you have dfhack, please check the content of df.global.world.units (use ":lua ~df.global.world.units" or "gui/gm-editor df.global.world.units"). The size of the vectors (the numbers between brackets []) are the important part, "active" should be empty and "all" should contains only your starting dwarves.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: HellTiger on July 11, 2018, 08:07:00 am
here is the content of "gui/gm-editor df.global.world.units"
https://pasteboard.co/HtXOOQQ.png (https://pasteboard.co/HtXOOQQ.png)
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: lethosor on July 11, 2018, 08:13:28 am
Is that during embarking or after? It should be during.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: HellTiger on July 11, 2018, 08:23:41 am
ah sry, thats quite mid game now. i am to lazzy to reproduce it now. but when i die or it crash (what will maybe happen very quick), then i will post the results of the new embark here.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Booman246 on July 12, 2018, 02:26:33 pm
Same issue as above - I get these random dwarfs showing up Therapist that I don't have any evidence of in-game.

For a bit of background - I'm about a month in, so no migrant waves or anything. These dwarves are appearing with skills but without any clothing / armo / equipment, and they don't appear in game.

As time goes on - more appear. 44.12 + 40.1.1 on Win 10 64bit

(https://imgur.com/a/d4DNzuh)
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: lethosor on July 12, 2018, 02:36:49 pm
Can you follow the steps above? In particular, running
Code: [Select]
:lua ~df.global.world.unitsin DFHack and pasting the output would be helpful. (On Windows, right-click in the console to copy text - please don't screenshot).

Is it possible that these are off-site dwarves? Have you sent out raids? Have you conquered sites? Have other sites joined yours? Have any other new 0.44.12 events happened?
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Booman246 on July 12, 2018, 03:16:24 pm
[DFHack]# :lua ~df.global.world.units
<world.T_units: 00007FF7EB240F10>
all                      = <vector<unit*>[94]: 00007FF7EB240F10>
active                   = <vector<unit*>[44]: 00007FF7EB240F28>
other                    = <vector<unit*>[]: 00007FF7EB240F40>
bad                      = <vector<unit*>[1]: 00007FF7EB240F70>
unknown                  = <vector<void*>[1]: 00007FF7EB240F88>
[DFHack]#


This is the first fort in a brand new world. It was generated on a Vanilla version of 44.12.

It's not exactly at embark, but we're still in the first few months and I haven't received any migrants yet.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: lethosor on July 12, 2018, 03:37:48 pm
What does the (u)nits screen look like? "active" includes pets and other creatures. Also, how many units does DT display?
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Booman246 on July 12, 2018, 03:42:43 pm
Units screen has 7 citizens, 6 pets, and 7 elephants.

DT displays my initial 7 dwarfs and 4 mystery dwarfs.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 12, 2018, 04:44:18 pm
I found an old bug where DT reads "all" units instead of "active" units. It's 2 year old and affects all versions on all platforms. I am not sure it is the cause of this issue, it would have shown sooner (but it may still be a part of it).

DT was supposed to fall back to "all" when "active" does not contains any unit from the current civ (comparing unit.civ_id with ui.civ_id). Log says this happens in reclaimed forts. Why is this necessary?
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: muzzlehead on July 12, 2018, 11:05:09 pm
I have the same issue with mystery dwarfs.... Date 250 02-09  I have 44 dwarfs... only 7 in game are real...  unit list in game shows 7 dwarfs

'EDIT'   I discovered if I close DF & DT then Load DT (it will say no DF running) then load DF and connect DT .... this seems to wipe the false Dwarfs from DT

2nd 'Edit' once I hit commit in DT I gained 10 fake dwarfs (total 17 dwarfs)... basically for me DT is not usable in this derivation
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Rowanas on July 13, 2018, 05:08:52 am
Hello,

I'm having some issues with the latest version of DT (40.1.1 win64) I  manually updated 40.1.0 with the memory layout for 44.12, but when that didn't read I updated to 40.1.1
Unfortunately I'm having exactly the same issue, namely that it says it's connecting but it isn't, and if I exit DT after having attempted to connect, it crashes. I get a little box saying invalid memory layout, illegal value etc, but I don't appear to be able to fix this myself.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 13, 2018, 05:32:25 am
Does it work if you disable automatic updates?
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Rowanas on July 13, 2018, 05:34:39 am
Does it work if you disable automatic updates?

Well that's bloody weird. I did a search and found someone else who had this problem, but update disabling wasn't mentioned there. Cheers.

EDIT: Appears I'm getting the phantom dwarf thing though. Atir the teenaged dwarf is gathering plants, apparently. Is he buggery! Bloke doesn't even exist.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: HellTiger on July 13, 2018, 07:35:59 am
additional 6 extra dorfs i got listed while embarking are now part of my fort, with some migration wave they appeared.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 13, 2018, 07:38:33 am
I cannot reproduce the extra dwarves bug.

Can someone with this bug and dfhack, run this script (write the script in hack/scripts/dt-diag.lua and run "dt-diag" in dfhack console)
Code: [Select]
function bf2hex(bf)
local num = 0
for i,f in ipairs(bf) do
if f then
num = num | (1 << i)
end
end
return string.format('%08x', num)
end
for _,u in ipairs(df.global.world.units.all) do
print(u.id, u.civ_id, u.race,
      bf2hex(u.flags1)..' '..bf2hex(u.flags2)..' '..bf2hex(u.flags3)..' '..bf2hex(u.flags4),
      dfhack.df2console(dfhack.TranslateName(dfhack.units.getVisibleName(u), false)))
end
Copy the result and tell me which names are the "phantom dwarves".

edit: added dfhack.df2console
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: taleden on July 13, 2018, 08:03:11 am
additional 6 extra dorfs i got listed while embarking are now part of my fort, with some migration wave they appeared.

That seems like a big clue -- if DF generates migrant dwarves and then simulates the time they spend traveling, they would exist somewhere in memory that DT is apparently seeing even before they actually arrive at the fort location as migrants.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 13, 2018, 08:43:49 am
There is an exception that show incoming migrants so that you can see all the migration wave at once as soon as you have the "some migrants have arrived" message.

I have just got my first migration wave in my test fort and it worked as expected: not extra dwarves before the message, and after the message DT show 2 more dwarves, and the game 1 more since the second has not entered the map yet.

Code: [Select]
114     11      572     80004001 12200070 00000106 00000000     Sodel Kibgídthur
115     11      572     80004001 12200070 00000106 00000000     Bomrek Menggusgash
116     11      572     80004001 12200070 00000106 00000000     Fath Oshuramost
117     11      572     80004001 12200070 00000106 00000000     Feb Rushrulkulet
118     11      572     80004001 12200070 00000106 00000000     Sarvesh Bufutuzol
119     11      572     80004001 12200070 00000106 00000000     Doren Arbanònul
120     11      572     80004001 12200070 00000106 00000000     Atîs Ilidbomrek
121     11      170     04004001 12200030 00000106 00000008
122     11      170     04004001 12200030 00000106 00000008
123     11      171     04004001 12200030 00000106 00000008
124     11      171     04004001 12200030 00000106 00000008
125     11      185     04004001 12200030 00800106 00000008
126     11      173     04004001 12200030 00000106 00000008
127     10      622     00004001 12280030 00000106 00000000
128     10      622     00004001 12280030 00000106 00000000
129     10      622     0000c001 12280030 00000106 00000000
130     10      622     00004001 12280030 00000106 00000000
131     10      622     00004001 12280030 00000106 00000000
132     10      622     00004001 12280030 00000106 00000000
133     10      622     00004001 12280030 00000106 00000000
134     10      622     00004001 12280030 00000106 00000000
171     -1      411     00804001 40200031 00000106 00000008
172     -1      411     00804001 40200031 00000106 00000008
173     -1      411     00804001 40200031 00000106 00000008
174     -1      411     00804001 40200031 00000106 00000008
200     -1      181     00004001 d2200030 00800106 00000008
221     -1      606     00004001 52200030 00000106 0000000c
222     -1      426     00004001 52200030 00000106 0000000c
223     -1      425     00004001 52200030 00000106 0000000c
224     -1      425     00004001 52200030 00000106 0000000c
225     -1      799     00004001 40200030 00000006 0000000c
226     -1      799     00004001 40200030 00000006 0000000c
227     -1      799     00004001 40200030 00000006 0000000c
228     -1      799     00004001 40200030 00000006 0000000c
229     -1      799     00004001 40200030 00000006 0000000c
230     -1      605     00004001 53200030 00000106 0000000c
231     -1      217     00004001 d3200030 00000106 00000008
232     -1      217     00004001 d3200030 00000106 00000008
233     -1      426     00004001 53200030 00000107 0000000c
234     11      572     80004001 12200070 00000107 00000000     Uvash Datanathel
235     11      572     80000402 12000070 00000003 00000000     Dumed Idenlibash
236     11      180     84000402 13200070 00000003 00000008     Dodók Eribïdath
237     11      184     84000402 13200070 00000003 00000008     Kadôl Emendakost
7 starting dwarves at the top, 2 dwarf migrants and 2 pets at the bottom, only the first migrant is active.

In DT log, migrants appear like this:
Code: [Select]
2018-juil.-13 15:36:14.079 INFO core "FOUND Dwarf name:Uvash Datanathel id:234 reason:migrant" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:384] (Dwarf::set_validation)
2018-juil.-13 15:36:14.082 INFO core "FOUND Dwarf (0x11d45f10) name:Uvash Datanathel id:234 histfig_id:149" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:309] (Dwarf::read_data)
2018-juil.-13 15:36:14.082 INFO core "FOUND Dwarf name:Dumed Idenlibash id:235 reason:migrant" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:384] (Dwarf::set_validation)
2018-juil.-13 15:36:14.085 INFO core "FOUND Dwarf (0x11d47320) name:Dumed Idenlibash id:235 histfig_id:150" [E:\projects\Dwarf-Therapist\src\dwarf.cpp:309] (Dwarf::read_data)
If the "reason:migrant" is not here, it means the migrant exception is not to blame.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: lethosor on July 13, 2018, 08:54:23 am
Clément: you should use dfhack.df2console around dfhack.TranslateName; otherwise, you'll get garbled output on non-Windows.

additional 6 extra dorfs i got listed while embarking are now part of my fort, with some migration wave they appeared.
Again, is it possible that these are off-site dwarves? Have you conquered any sites? Have any outside sites joined yours in any way?
Also, run Clément's script and see what you get.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Saiko Kila on July 13, 2018, 12:07:15 pm
Out of curiosity I've checked if I have the same issue - and there it is. I have marked the real dwarves red, and the dwarves which show only in the DT are marked yellow. I use release 40.1.1 win x64.

What's clear is that all dwarves which show have my own Civ ID, unlike all the others.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 13, 2018, 02:11:13 pm
DT shows only dwarves from your civ. The other dwarves (and other creatures) from other civs have similar flags to the yellow dwarves. I guess you don't see them anywhere either despite not having the inactive flags.

What is the "slight variation" between important_historical_figure from unit_flags1 and unit_flags2? Mine have both, your red dwarves have none, your yellow (and other) dwarves have only the unit_flags2 one.

There is also an extra flag in unit_flags4 that is not listed in dfhack's df-structures. But it is not the one that will help discriminate the yellow dwarves.

Edit: I tested with a longer history and I have something similar. The extra units are not of my civ so they don't show in DT, but they still have the same flags as Saiko Kila. There are only in "all" and not in "active", so reading "active" could solve the issue in fortress mode but not in embark ("active" is empty and starting dwarves are in "all" mixed with the other units).

Unit list from the embark screen:
Code: [Select]
1555    69      574     00000000 12000040 00000004 00000000     Elana Rockclutch
1573    69      574     00000000 12000040 00000004 00000000     Athe Roarice
2300    67      572     00000000 12000040 00000004 00000000     Shem Handlerelease
5919    67      572     00000000 12000040 00000004 00000000     Medtob Tourhood
20643   77      572     00000000 13200034 00000003 00000000     äs Tomecloister
20644   77      572     00000000 13200034 00000003 00000000     Zasit Swordlulled
20645   77      572     00000000 13200034 00000003 00000000     Obok Swordcontrols
20646   77      572     00000000 13200034 00000003 00000000     Reg Sabregift
20647   77      572     00000000 13200034 00000003 00000000     Inod Manytrade
20648   77      572     00000000 13200034 00000003 00000000     îton Lengthsabres
20649   77      572     00000000 13200034 00000003 00000000     Ilral Gemhail
Elana and Athe are a married couple of elven scholar (naturalist and sage), Shem and Medtob are a married couple of dwarves (bard and animal trainer). The seven others are my starting dwarves. Could they be traveling though my fortress site during the embark?

Checking "Don't Display Visitors/Guests" may help in fortress mode. But it cannot work in embark because the fortress does not exists yet.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 13, 2018, 04:43:32 pm
I made a test build for win64 (https://framadrop.org/r/HSkexOLJ9O#Ky6LEeQsrhZwlSLA8VW1P2MzyzaBxEtQ4o26TgpWyMQ=) that uses the active units instead of all, it may fix this issue in fortress mode (not during embark). The branch is here  (https://github.com/cvuchener/Dwarf-Therapist/tree/fix-extra-dwarves)if you want to compile on other platforms.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Saiko Kila on July 13, 2018, 06:24:35 pm
DT shows only dwarves from your civ. The other dwarves (and other creatures) from other civs have similar flags to the yellow dwarves. I guess you don't see them anywhere either despite not having the inactive flags.

What is the "slight variation" between important_historical_figure from unit_flags1 and unit_flags2? Mine have both, your red dwarves have none, your yellow (and other) dwarves have only the unit_flags2 one.

There is also an extra flag in unit_flags4 that is not listed in dfhack's df-structures. But it is not the one that will help discriminate the yellow dwarves.

Edit: I tested with a longer history and I have something similar. The extra units are not of my civ so they don't show in DT, but they still have the same flags as Saiko Kila. There are only in "all" and not in "active", so reading "active" could solve the issue in fortress mode but not in embark ("active" is empty and starting dwarves are in "all" mixed with the other units).

Unit list from the embark screen:
Code: [Select]
1555    69      574     00000000 12000040 00000004 00000000     Elana Rockclutch
1573    69      574     00000000 12000040 00000004 00000000     Athe Roarice
2300    67      572     00000000 12000040 00000004 00000000     Shem Handlerelease
5919    67      572     00000000 12000040 00000004 00000000     Medtob Tourhood
20643   77      572     00000000 13200034 00000003 00000000     äs Tomecloister
20644   77      572     00000000 13200034 00000003 00000000     Zasit Swordlulled
20645   77      572     00000000 13200034 00000003 00000000     Obok Swordcontrols
20646   77      572     00000000 13200034 00000003 00000000     Reg Sabregift
20647   77      572     00000000 13200034 00000003 00000000     Inod Manytrade
20648   77      572     00000000 13200034 00000003 00000000     îton Lengthsabres
20649   77      572     00000000 13200034 00000003 00000000     Ilral Gemhail
Elana and Athe are a married couple of elven scholar (naturalist and sage), Shem and Medtob are a married couple of dwarves (bard and animal trainer). The seven others are my starting dwarves. Could they be traveling though my fortress site during the embark?

Checking "Don't Display Visitors/Guests" may help in fortress mode. But it cannot work in embark because the fortress does not exists yet.

I am a minimalist, so I would go for the one flag that sets them apart. For example flags2.no_notify, which is set only for the proper dwarves (red one in my example), and apparently in your case too. Alternatively, go for non-historical figures. Only historical figures and seven created dwarves (who are destined to be historical, but aren't quite there yet during embark) are visible in the lists before site is loaded.

The bad dwarves are took from the world gen and are present from the beginning of map selection. When you run Dwarf Therapist then, then only bad (historical) dwarves of your civ will be shown. The seven proper dwarves are created only after you press embark and can choose "Play now" or "Prepare carefully". They are added at the end of list. They have different set of flags, but this set is valid only for the duration of embark preparation (and it is possible than some of the flags have other meaning than during proper play, or are set to default, temporary values). They are heavily modified after embark, for example historical_figure flags are both set.

As for active dwarves the map must be loaded, yes. All critters coming to the map are moved to the active list but remain (or have set) flags1.inactive (which used to be called flags1.dead) for a short while  (or a much longer while, if the site they want to come in is occupied, I use this in my certain script to identify stuck migrants and coming invaders), and critters who left the map are on active list for a very short period, being flags1.inactive, before being purged. So I would go for the flags, but care about them only if the active site is not loaded yet (implying DR is used during embark stage). I didn't even know that Dwarf Therapist can be used during embark...
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 14, 2018, 04:32:59 am
For embark, I think I could try to use the unit list from the viewscreen instead of the global one.

During reclaim embark screen, "active" is not empty, I think that is why it was checked for dwarves with the same civ_id. If I use the viewscreen unit list, I should no longer need this special case.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Saiko Kila on July 14, 2018, 06:20:14 am
I think it would be a good choice. I can't test it today, but I believe that viewscreen info is available only during "Prepare carefully" step, so that would prevent one small functionality available now - to change assignments before entering Prepare Carefully (when you are on screen choosing to "Embark now" or "Prepare carefully"). But that is OK, people caring about things changed by DT also should use Prepare Carefully.
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 14, 2018, 07:39:56 am
I created the pull request (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/119) for this change. I may upload a build later for Windows users to test.

The viewscreen with "play now" and "prepare carefully" choices is the same viewscreen and already has the unit list, so it does not change the availability of DT. I only tested embark and fortress mode. Am I forgetting a use case where DT should show a list of units?

Edit: With this changes and the future needs stuff, I think I may remove the memory layouts for older 0.42.xx which are missing offsets and addresses, only keeping 0.42.06. 0.42.06 was the only version to have a proper dfhack release and I have doubts about the quality of older versions memory layouts anyway.

Edit2: test build for win64 (https://framadrop.org/r/roknt7aN-A#rLA98Xravichcm61qB9wAONG75fo3PVcNx3ikRD/3FI=) Make sure the automatic updates are disabled before connecting to the game. This version needs new offsets that will be overwritten by the updater. If you accidentally updated the memory layout, you can delete it in the user data folder ("File" menu then "Open data directory", if you don't know where it is).
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: muzzlehead on July 14, 2018, 01:47:25 pm
I have run DT v40.1.1.2   in Win 10 ... no problems with FAKE Dwarfs invading DT ;)  in Fortress Mode DF 0.44.12 with DF Hack 0.44.12-r1 through first migration

Thanks
Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Saiko Kila on July 14, 2018, 02:13:11 pm
Looks good to me. I have tested 2 situations:

1. embark screen
2. mass migration

I was worried that during mass migration, when most of the migrants are off-screen, they wouldn't be shown after the changes. But they are shown, as they used to be.

Title: Re: Dwarf Therapist v40.1.1 | DF 44.12
Post by: Clément on July 14, 2018, 02:20:59 pm
Migrants that did not enter the map yet are in the "active" vector but with an "inactive" flag. The whole migration wave should still be shown as soon as the migrants are announced.
Title: Re: Dwarf Therapist v40.1.2 | DF 44.12
Post by: Clément on July 15, 2018, 05:31:19 am
New version released: 40.1.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v40.1.2)

Bug fixes

Changelog:
Custom roles or columns created since 40.0.0 using "Armor (any)" or "Clothing (any)" preferences are broken. Delete the preference from the role or grid view and re-add it again to fix them.

Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.0.0 | DF 44.12
Post by: Clément on July 29, 2018, 08:05:46 am
New version released: 41.0.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.0.0)

Main changes are needs/focus additions (grid view, dock widget, ...) and a new custom role editor with beliefs and goals.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.0.0 | DF 44.12
Post by: Rafatio on July 29, 2018, 11:19:48 am
Wonderful, managing needs should be so much simpler now. Thank you.

I made a copy of the needs gridview and added a bunch of labors to it (like bonecarving next to crafting need) and moved a few things up and down. Reread, closed and reopened the grid and then therapist itself, the needs stay white with tooltip "not needed" while the added labors look normal. Doing it the other way around, adding a need to another custom gridview, which is a wild mix of roles, traits and labors, has the need column working just fine, edit: nope, after restarting the crafting need column now displays happiness level. The original needs view works. What am I doing wrong with my new needs grid, I only started playing around with custom grids a few days ago?

To install the new therapist I emptied the dt folder of all files, moved everything from the new download there, left the folder under appdata alone. Peridexis LNP 0.44.12-r01, windows 7, 64 bit
Title: Re: Dwarf Therapist v41.0.0 | DF 44.12
Post by: Clément on July 29, 2018, 11:50:07 am
I did see that bug during development, but I forgot to fix it. Sorry, a fix will be coming soon.
Title: Re: Dwarf Therapist v41.0.0 | DF 44.12
Post by: Rafatio on July 29, 2018, 11:54:04 am
Good to hear its not me. No matter, in the few minutes since posting I'm already deeply in love with the new features, even if they're a little clumsy to use until its fixed. My dwarfs love the targeted crafting program too :-)
Title: Re: Dwarf Therapist v41.0.0 | DF 44.12
Post by: clinodev on July 30, 2018, 03:49:20 am
I'm almost embarrassed to ask this in a thread where you're testing and announcing a major update, but:

Every once in a while I'll see a screenshot with a dark grey "night mode" Dwarf Therapist. It looks glorious.
Unfortunately, asking around, it seems it is Windows High Contrast mode, which plays very badly with some other things I use (and in playing with it just now, it didn't seem like DF/DFHack/DT liked it much either. I had some really long input entry lags.)

Is there a feature like that in Win64 DT that I just can't find, or some simple setting I can change in a file? A proper night mode, say bay12forum grey or brown background, would be a valuable quality of life improvement for me and I believe many others who are likely to play in the dark with old eyes.
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Clément on July 30, 2018, 04:34:39 am
New version released: 41.0.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.0.1)

Small bug fixes.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.0.0 | DF 44.12
Post by: Clément on July 30, 2018, 04:54:48 am
I'm almost embarrassed to ask this in a thread where you're testing and announcing a major update, but:

Every once in a while I'll see a screenshot with a dark grey "night mode" Dwarf Therapist. It looks glorious.
Unfortunately, asking around, it seems it is Windows High Contrast mode, which plays very badly with some other things I use (and in playing with it just now, it didn't seem like DF/DFHack/DT liked it much either. I had some really long input entry lags.)

Is there a feature like that in Win64 DT that I just can't find, or some simple setting I can change in a file? A proper night mode, say bay12forum grey or brown background, would be a valuable quality of life improvement for me and I believe many others who are likely to play in the dark with old eyes.

This must be the adwaita dark theme I use on Linux, I don't think you will find it for Windows. This is done with Qt style (https://doc.qt.io/qt-5/qstyle.html#using-a-custom-style) plugins. I've made this simple fusion dark style plugin (https://framadrop.org/r/4TRj8wgCQB#GaZV4LobOJHoZJZwyokJQTnexYrBZ9Oz68/tLJ00NN4=) for testing dark themes on Windows (it is based on this palette (https://gist.github.com/QuantumCD/6245215)). Place the plugin (fusion_dark.dll) in a "styles" directory in DT install dir. Then create a shortcut to Dwarf Therapist.exe and edit it: add " -style fusiondark" (without the quotes) at the end of the Target. There is also this style (https://github.com/Jorgen-VikingGod/Qt-Frameless-Window-DarkStyle) that I could try to turn into a plugin. Or you can try making a style sheet (https://doc.qt.io/qt-5/stylesheet.html).

Edit: Jorgen-VikingGod/Qt-Frameless-Window-DarkStyle as a plugin (https://framadrop.org/r/uqBskdhoog#s+3iej7BD5xeSZ3S6djkcX1fE8RjEkbVd0MuIJI+TlM=) (without the frameless window part and normal font size), same as above place the dll in the styles directory and start DT with "-style darkstyle".
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: clinodev on July 30, 2018, 05:39:24 am
Thank you so much, Clément, the fusion_dark.dll method suits me very well!

Is this something I can share widely, perhaps after hosting the file on DFFD so as not to strain your filehost?

This will work very well for me, but I still think it would be a good idea to include an option like this internally in the settings. I spend enough time answering questions in the /r/dwarffortress subreddit to know the simple 4 step installation process you laid out would put many people off.

Thank you again!

Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Clément on July 30, 2018, 05:45:37 am
I edited my message while you were posting, there is a second plugin to test.

I should be possible to add a style selection in the options. On Windows, I think the built-in styles are "windows", "windowsvista", "fusion".
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: clinodev on July 30, 2018, 06:12:31 am
DarkStyle has better popups; I'll use that one.

Thanks again!
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Rafatio on July 30, 2018, 07:06:01 am
Are custom grids supposed to be fixed in this version? They're differently broken now. Trashed my old needs(COPY) and made a new one. Not empty this time but every column displays what the first, socialize, correctly shows. The tooltips also read "spending time with people" no matter which need. Thats right after copying, haven't changed a thing yet, just refreshed and restarted.

Default needs view continues to be unaffected. And this time needs columns added to a different grid seem to keep working. Its definitely improving.

Edit: weird, I could break the seemingly working mixed-grid-with-two-needs by adding a labor, white needs again. Removing the labor again fixed it. Bonecarving if it matters. There are already several labors on this grid, only adding another breaks it. Adding a skill instead broke only one of the two needs, seems rather unpredictable.
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Clément on July 30, 2018, 07:52:05 am
I forgot to fix the copying for the need. Only the saving part was fixed. It's uploading.

For the labor issue, test again with the next version when it is available. If there is still an issue, export your custom gridview, and copy its content here (use a [​code] tag).
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Clément on July 30, 2018, 08:08:31 am
New version released: 41.0.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.0.2)

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).

I hope the need columns work now. Re-create them, don't keep broken columns from the previous versions.
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Rafatio on July 30, 2018, 08:21:41 am
Well, all my usual ways of breaking things failed, you fixed it! Thanks again :-)
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Fleeting Frames on July 30, 2018, 08:35:46 am
DarkStyle has better popups; I'll use that one.

Thanks again!
They're both called darkstyle, so which one did you mean?
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: clinodev on July 30, 2018, 01:33:02 pm
DarkStyle has better popups; I'll use that one.

Thanks again!
They're both called darkstyle, so which one did you mean?

When downloaded the original is called "fusion_dark.dll" while the one from the "Jorgen-VikingGod/Qt-Frameless-Window-DarkStyle as a plugin" link in the edit is called "DarkStyle.dll". They both look good, but the second one from the edit, "DarkStyle.dll", has dark pop-up windows which I prefer to the original's lighter pop-ups.
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Fleeting Frames on July 31, 2018, 06:44:07 am
Now that needs view and me are both here, two suggestions:

1) option to consider need for x in suitability for role (I'm thinking about herbalism+need to wander in particular).

(Tried with a script ((d.agility/900+d.attribute(12)/1250+d.attribute(16)/1000)/4+(d.has_preference("","Plants (Crops)")+d.has_preference("Outdoors", ""))/6+d.skill_level(23)*3/80) to replicate role suitability, but seems I don't know the right preference for Plants (Crops) it uses)

2) collapse dwarf details if there's no dwarf selected. Or maybe even an autocollapse option if mouse isn't over the area.
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Clément on July 31, 2018, 07:43:15 am
1) option to consider need for x in suitability for role (I'm thinking about herbalism+need to wander in particular).

Yes, I thought about it and the changes I made for beliefs and goals make it easier to add. From the wiki (http://dwarffortresswiki.org/index.php/DF2014:Need), I thought you could replace that with NATURE + ACTIVITY LEVEL, but I've just tested that and I don't see a correlation between the personality traits and the need.

(Tried with a script ((d.agility/900+d.attribute(12)/1250+d.attribute(16)/1000)/4+(d.has_preference("","Plants (Crops)")+d.has_preference("Outdoors", ""))/6+d.skill_level(23)*3/80) to replicate role suitability, but seems I don't know the right preference for Plants (Crops) it uses)

has_preference documentation is lacking: if I read the code correctly, pref_category should be one of these (the part between quotes) (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/9a64430db2b03c2989dd8cf84bc61dfed54696a1/src/preference.h#L42-L54). You could use d.has_preference("", "Plants"), I don't think dwarves can have preferences for plants that are not "crops" (non-crops plants are trees, which have their own preference category, or grasses, which I have never seen in preferences). Out of curiosity, why do you use plant preferences? I don't know how they are used.

Also if your goal was to include the need, you are missing "d.get_need_type_level(26)".

2) collapse dwarf details if there's no dwarf selected. Or maybe even an autocollapse option if mouse isn't over the area.
What does "collapsing dwarf details" mean? Auto-closing the window when no dwarf is selected, then re-opening it when it is selected again? That would be difficult.
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Fleeting Frames on July 31, 2018, 08:21:28 am
1) Yeah, even if there is a correlation it is not known at which point it becomes a need.

And that didn't work -  I have a dwarf that likes sorghum, but doesn't show up on filter script with d.has_preference("","Plants"). (Also, managed to incur segmentation faults in therapist, yay). (Alsox2, not sure if it shouldn't check for something like sun berries - the edible item - in addition or instead.)

(PS: adding a need comes after getting it to work, obv. Well, at least filtering for those who need it isn't hard.)

2) Yeah (well, not closing but becoming thin like taskbars do on many OSes). Ah well.
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Clément on July 31, 2018, 10:36:38 am
1) Yeah, even if there is a correlation it is not known at which point it becomes a need.

And that didn't work -  I have a dwarf that likes sorghum, but doesn't show up on filter script with d.has_preference("","Plants"). (Also, managed to incur segmentation faults in therapist, yay). (Alsox2, not sure if it shouldn't check for something like sun berries - the edible item - in addition or instead.)

(PS: adding a need comes after getting it to work, obv. Well, at least filtering for those who need it isn't hard.)

I was wrong has_preference need the exact preference name, not a substring. It cannot currently check for whole categories of preferences. I'll think about improving the preference script functions the next time I do some preference improvements.

How did the segfault happen?

2) Yeah (well, not closing but becoming thin like taskbars do on many OSes). Ah well.

It is not possible with qt dock widgets, they would need to be extended. I don't think I'll make the effort myself, but if someone wants to, they can try.
Title: Re: Dwarf Therapist v41.0.1 | DF 44.12
Post by: Fleeting Frames on July 31, 2018, 11:59:20 am
Basically, with the above snipped(plus *100), after checking several times and going back in to edit herbalist custom role again (didn't happen on first edit). No issue, as checking every plant for potential solution is...too much effort when compared to just checking the needs view and noting down the few who need the wandering.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Pillbo on August 06, 2018, 01:12:00 pm
Is it possible to hide those who are ineligible for the military on the military screen?
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Clément on August 06, 2018, 02:16:51 pm
Are "Don't Display Children or Babies" and "Don't Display Visitors/Guests" options not enough? I could make the can_assign_military method available from scripts.

It is not currently possible to make filters or group settings per tab.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Pillbo on August 06, 2018, 03:13:31 pm
Are "Don't Display Children or Babies" and "Don't Display Visitors/Guests" options not enough? I could make the can_assign_military method available from scripts.

It is not currently possible to make filters or group settings per tab.

Yeah that worked, I was confused by the "Can Activate" under the Military Status groupings showing all the guests who are ineligible too.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Clément on August 06, 2018, 04:26:50 pm
I checked and "Can Activate" is actually anything that does not fit in the other categories. It must come from simpler times. I could split it in "Can Activate" and "Cannot Activate" or add "Visitors" and "Mercenaries" groups.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: cjdabeast on August 06, 2018, 05:51:10 pm
I found an unknown mood in my fort and was told to report it here, it was "outraged." The text literally says "This is an unknown mood, please report it!" in dwarf therapist. On the default screen that shows her thoughts in-game, it says "She was outraged dwelling upon her cousin was expelled". Just a heads up!
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: lethosor on August 06, 2018, 06:18:30 pm
It's listed in game_data.ini (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/637a7401c961dad82bb51eca4b7be44178f6496e/resources/game_data.ini#L4205), assuming that's the relevant place (although df::emotion_type::OUTRAGE is actually 118 in-game - the discrepancy apparently is because NONE/Nothing is assigned 1 in game_data.ini but -1 in-game).

I suspect it's really the "her cousin was expelled" part that's unhandled, since it's new in 0.44.12. Your save might help diagnose this.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Clément on August 07, 2018, 02:36:39 am
I found an unknown mood in my fort and was told to report it here, it was "outraged." The text literally says "This is an unknown mood, please report it!" in dwarf therapist. On the default screen that shows her thoughts in-game, it says "She was outraged dwelling upon her cousin was expelled". Just a heads up!

I don't find this string, you must mean "This is an unknown thought, please report it!". The thought part is "after her cousin was expelled". So do what lethosor said.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Saiko Kila on August 07, 2018, 04:26:57 am
I checked and "Can Activate" is actually anything that does not fit in the other categories. It must come from simpler times. I could split it in "Can Activate" and "Cannot Activate" or add "Visitors" and "Mercenaries" groups.

I think one of these solutions would be perfect. Currently there is a problem (at least to me) to list mercenaries along with normal citizens, but not other visitors. Particularly monster slayers and entertainers clog the list, outnumbering the mercenaries by a factor of ten. Mercenaries are treated by game and by DT as other long-terms, but it would be best to be able to see all dwarves and mercenaries (who could be teamed up with dwarves in the squads, so their status is quite important), and not see the monster slayers, scholars and entertainers.

I use naming scheme for now, and filter the undesired names ("MERC Urist" is desired, but "SCH Urist", "ENT Urist" and "MS Urist" are not, for example).
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Clément on August 07, 2018, 05:16:44 am
I made this change (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/127/commits/f724b3faa1cb61aa5a58ab6ba54b8f9439697250), it adds "Mercenaries", "Can Activate" (this time for dwarves you can really activate) and "Cannot Activate". "Mercenaries" would only have mercenaries that do not already fit in one of the previous groups (so mercenaries not yet affected to a squad). Re-reading this, I now see that the "Champions" category is out-dated (if I read the wiki correctly this was a 0.28 feature), it should be removed.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: cjdabeast on August 07, 2018, 12:40:21 pm
I have uploaded the save on DFFD. http://dffd.bay12games.com/file.php?id=13948



Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Rafatio on August 07, 2018, 12:54:48 pm
One of my dwarves has an attribute(?) "~" with a value of 0 and no message in the details->personality sidebar. Brown, tooltip also says ~ and nothing else. I think its supposed to be his goal, he does not have one. Not really a problem, just looks odd.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Saiko Kila on August 07, 2018, 12:58:54 pm
I made this change (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/127/commits/f724b3faa1cb61aa5a58ab6ba54b8f9439697250), it adds "Mercenaries", "Can Activate" (this time for dwarves you can really activate) and "Cannot Activate". "Mercenaries" would only have mercenaries that do not already fit in one of the previous groups (so mercenaries not yet affected to a squad). Re-reading this, I now see that the "Champions" category is out-dated (if I read the wiki correctly this was a 0.28 feature), it should be removed.

I used the release src for 41.0.2, changed only the dwarfmodel.cpp as above, and then compiled. I'm asking just to make sure it works as intended.
In Military Status view there are categories:

Can Activate
Cannot Activate (long-terms except mercs are here)
Champions (mercs being squad members are here when on duty)
Juveniles
Mercenaries (mercs unassigned are here)
Military (Off Duty) (both mercs and citizens being squad members are here when off duty)
Military (On Duty) (citizens being squad members are here when on duty)
Nobles (captains of squads are here, along normal nobles)

If this is as it should be then it works! Though I would name "Champions" differently ;)
These categories (including Mercenaries) are seen when people are sorted according to Military Status, right?
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: lethosor on August 07, 2018, 12:59:25 pm
I have uploaded the save on DFFD. http://dffd.bay12games.com/file.php?id=13948
Can you please give the name of the problematic dwarf? I've sorted by stress (in manipulator) and gone through 10-20 dwarves on both ends, and the only "outraged" thought I could find was about an animal being convicted.

Edit: finally found it - it's a cook that died after going berserk, so I had to resurrect her and reset her mood before I could even view her thoughts. For reference, it's Kib Atîsshadmal (Stakeconfuses), and here are the two outraged emotions from the Lua interpreter:
Code: [Select]
[lua]# ~unit.status.current_soul.personality.emotions[11]
<unit_personality.T_emotions: 0x12dbde2d0>
type                    = 118
unk2                    = 0
strength                = 0
thought                = 242
subthought              = 58
severity                = 0
flags                  = <unit_personality.T_emotions.T_flags: 0x12dbde2e8>
unk7                    = 0
year                    = 194
year_tick              = 156902
[lua]# ~unit.status.current_soul.personality.emotions[218]
<unit_personality.T_emotions: 0x12dbe09a0>
type                    = 118
unk2                    = 0
strength                = 0
thought                = 242
subthought              = 62
severity                = 0
flags                  = <unit_personality.T_emotions.T_flags: 0x12dbe09b8>
unk7                    = 0
year                    = 194
year_tick              = 160971

In the future, please try to provide a save before the dwarf in question is dead.

Edit 2: it's this one:
Code: [Select]
[lua]# ~unit.status.current_soul.personality.emotions[11]
<unit_personality.T_emotions: 0x12dbde2d0>
type                    = 118
unk2                    = 0
strength                = 0
thought                = 242
subthought              = 58
severity                = 0
flags                  = <unit_personality.T_emotions.T_flags: 0x12dbde2e8>
unk7                    = 0
year                    = 194
year_tick              = 156902
but the other one also has thought=242 and is about a different relative being expelled.

Edit 3: adding these to df-structures, but 241 is being expelled and 242 is a relative being expelled. subthought is a histfig_relationship_type that determines the type of relative being expelled (for 242).
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Rafatio on August 09, 2018, 04:42:34 am
Why does the settings window have so much empty space at the bottom? Playing on a laptop I have to jam the window against the top of the screen just to reach the ok button. More than 1/3 seems completely unused, could this be made a bit smaller? Around 50 pixel less would be enough to stop the annoyance and still keep plenty of white (in case thats intended at all).
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Clément on August 09, 2018, 04:52:37 am
What is your screen resolution, your OS? Can you resize the window?
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Rafatio on August 09, 2018, 04:59:09 am
Windows 7 64 bit, 1366x768. DT is maximized, but that doesn't help with the settings window, as that is not resizable.

Edit: Showing is easier https://abload.de/img/options-dwarftherapislfc50.png this is simply opening the settings window without moving it.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Saiko Kila on August 09, 2018, 05:10:04 am
Windows 7 64 bit, 1366x768. DT is maximized, but that doesn't help with the settings window, as that is not resizable.

Edit: Showing is easier https://abload.de/img/options-dwarftherapislfc50.png this is simply opening the settings window without moving it.

Your status window (the white part for tips) is about 190 pixels high. I play on 1920x1200 resolution, and my status window is only about 135 pixel high, so it's understandable you have a problem with fitting in it.

I  wonder where the difference comes from. Maybe from system DPI setting (used for fonts and some icons)? I have it set at 120 (everything is bigger), while default for my system is 96.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Clément on August 09, 2018, 05:19:39 am
I accidentally changed the default window size, and that make it too large for small resolution (and large taskbar) like yours. Until I find a proper fix so it won't happen again, you should be able to resize the window. If you cannot grab the edge, try with the system menu (right click the top-corner or press alt+space) and your arrow keys.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Rafatio on August 09, 2018, 05:24:06 am
Edge grabbing works, I only tried doubleclicking the title bar before I declared it unresizable, oops. It doesn't stay resized after restarting dt, but within a session, so thats my problem solved, resizing once per day is fine with me. Thanks for this super speedy support :-)
Title: Re: Dwarf Therapist v41.0.0 | DF 44.12
Post by: thefinn on August 17, 2018, 10:57:13 am
I'm almost embarrassed to ask this in a thread where you're testing and announcing a major update, but:

Every once in a while I'll see a screenshot with a dark grey "night mode" Dwarf Therapist. It looks glorious.
Unfortunately, asking around, it seems it is Windows High Contrast mode, which plays very badly with some other things I use (and in playing with it just now, it didn't seem like DF/DFHack/DT liked it much either. I had some really long input entry lags.)

Is there a feature like that in Win64 DT that I just can't find, or some simple setting I can change in a file? A proper night mode, say bay12forum grey or brown background, would be a valuable quality of life improvement for me and I believe many others who are likely to play in the dark with old eyes.

This must be the adwaita dark theme I use on Linux, I don't think you will find it for Windows. This is done with Qt style (https://doc.qt.io/qt-5/qstyle.html#using-a-custom-style) plugins. I've made this simple fusion dark style plugin (https://framadrop.org/r/4TRj8wgCQB#GaZV4LobOJHoZJZwyokJQTnexYrBZ9Oz68/tLJ00NN4=) for testing dark themes on Windows (it is based on this palette (https://gist.github.com/QuantumCD/6245215)). Place the plugin (fusion_dark.dll) in a "styles" directory in DT install dir. Then create a shortcut to Dwarf Therapist.exe and edit it: add " -style fusiondark" (without the quotes) at the end of the Target. There is also this style (https://github.com/Jorgen-VikingGod/Qt-Frameless-Window-DarkStyle) that I could try to turn into a plugin. Or you can try making a style sheet (https://doc.qt.io/qt-5/stylesheet.html).

Edit: Jorgen-VikingGod/Qt-Frameless-Window-DarkStyle as a plugin (https://framadrop.org/r/uqBskdhoog#s+3iej7BD5xeSZ3S6djkcX1fE8RjEkbVd0MuIJI+TlM=) (without the frameless window part and normal font size), same as above place the dll in the styles directory and start DT with "-style darkstyle".

This is such a relief, thank you.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: AfterShave on August 29, 2018, 01:55:22 am
So, I found something strange when going to remove an older version of DF. The folder kept listing files and simply crashed explorer when checking out the structure. 

The culprit was that Dwarf Therapist had made a million readmes. A literal million.

(https://i.imgur.com/pyEWl9i.png)

A few are missing from when trying to delete the folder at first. Is this a known bug that was fixed past 39.1 or could it still be lurking around?
All I really know to say is that I'm using 64-bit Win 7 Professional Edition as my OS. The files are so old that I don't even know if anything else
could have gone haywire.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: Clément on August 29, 2018, 03:57:38 am
This is not a known bug and copying a file with a new name each time is not trivial enough to happen by accident. If you cannot remember what you did on December 18th, we won't know. They may have been created by another application.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: feelotraveller on August 29, 2018, 11:15:49 pm
Looking at the dates DT39.1 was released on December 18th (or 19th... time zones) so there is a good guess about one thing that was done.

The install path does however look quite non-standard.

(My windows days are barely memorable but is that what you would expect the file names to look like when a file of that name 'README.rst' already exists in that location?  E.g. 'README.rst (1)' if it gets written for a second time.)  Why it would get written a million times though, I have no idea...  :-\

p.s. Clément, don't hate me forever...  :'(
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: lethosor on August 29, 2018, 11:19:44 pm
Not that this helps, but it looks to me like that list is sorted alphabetically (999,999 comes between 9,999,989 and 9,999,990), so it's possible that there are between 1 and 9 million of those. If it's a power of two (e.g. 1,048,576), it could be due to something that duplicated everything matching some pattern too many times (20 in that case). I still have no idea what that could be, though.
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: AfterShave on August 30, 2018, 10:40:18 am
Lethosor, the total number of files is listed at the bottom though 840798. So it does cap out at one million. File 0 without the appended (#) and File(999999).

Feelotraveller. Nah I just gave it L: because it's my largest disk. It could be literally any other folder name and be the same as far as I can see it. But yeah, copies in windows count up between the (). However, a plain copying and pasting will make it Filename - Copy (#). So it does look a bit weird. There's no Copy in the names. So I guess something tried to make new files somehow?
Title: Re: Dwarf Therapist v41.0.2 | DF 44.12
Post by: PatrikLundell on August 30, 2018, 11:50:26 am
I get numbers without a copy indication when downloading files that have the same name as a previous download. Could it be something similar at play here?
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on October 04, 2018, 06:12:22 am
New version released: 41.0.3 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.0.3)

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on October 13, 2018, 06:01:22 am
May I so kindly ask where the wiki is for qt compilation instructions?

I'm not partial to QT.  I'm just trying to get my build environment up.  I was able to install & run make/cmake and derived a cmakelist.txt file that opens in QT (side note: unfortunately running make after cmake doesn't seem to find a makefile @ CLI).  I have msys which has g++.  I had to rename sh.exe to sh.bak to get the (qt) configuration to initially run through but receive the following

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on October 13, 2018, 07:18:58 am
Qt should be in the msys repository (mingw-w64-x86_64-qt5 for 64 bits), you do not have to compile it yourself. pacman will install it in a standard location that cmake should find without extra help. Otherwise, as the error message says: "Add the installation prefix of "Qt5" to CMAKE_PREFIX_PATH", that means adding "-DCMAKE_PREFIX_PATH=/path/to/qt5" to cmake options.

If you are not used to command line, you might prefer using Qt Creator with one of the official Qt builds.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on October 13, 2018, 08:40:41 am
I should stop postponing writing the windows build instructions, so I'll try a draft here.

I know several way to do it, but I don't know which one is the best. The best choice may depend on if you need a 32 bits or 64 bits build, if you want to develop (and your favorite development tools) or if you simply want to have a usable build.


Qt Creator

Download and install Visual Studio 2017 (https://visualstudio.microsoft.com/vs/) or Visual Studio 2015 (https://visualstudio.microsoft.com/vs/older-downloads) (choose C++ support during installation? I don't remember if it is always installed), if you want MSVC builds.

Download Qt Online Installer (https://www.qt.io/download-qt-installer) and install the components:

Download and install CMake (https://cmake.org/download/).

Setup Qt Creator for using CMake. (https://doc.qt.io/qtcreator/creator-project-cmake.html)

Open Dwarf-Therapist project by selecting CMakeLists.txt. Select a kit and you are ready to build.

MSYS2

Download and install MSYS2 (https://www.msys2.org/). Run a MinGW console (32 or 64 bits, your choice).

Install dependencies with pacman (I am not sure about the package lists, I may have missed some).
For 32 bits:
Code: [Select]
pacman -S mingw-w64-i686-qt5 mingw-w64-i686-gcc mingw-w64-i686-cmake mingw-w64-i686-ninjaFor 64 bits:
Code: [Select]
pacman -S mingw-w64-x86_64-qt5 mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja
Then from Dwarf Therapist source directory:
Code: [Select]
mkdir build
cd build
Code: [Select]
cmake .. -G Ninja
Code: [Select]
ninja
On deployment

If you run DwarfTherapist.exe from the file explorer, it will fail to find dlls (for Qt or GNU libraries for MinGW builds). There is a windeployqt tool (https://doc.qt.io/qt-5/windows-deployment.html#the-windows-deployment-tool) shipped with Qt that will copy the required dlls next to the executable. IIRC it does not copy enough dlls with MSYS2.

You also need to copy the content of the "share" directory in a "data" directory next to the executable.

Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on October 13, 2018, 11:47:41 pm
I would have never have figured out msys2.  I thought that was the same as my msys

When attempting the Ninja step (64 set)
Spoiler (click to show/hide)

I also tried
Spoiler (click to show/hide)

I also tried (reverting changes to original commit each attempt)
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on October 14, 2018, 04:08:23 am
Your environment does not look right. Are you sure you are using a MinGW shell?
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on October 14, 2018, 06:22:43 am
Your environment does not look right. Are you sure you are using a MinGW shell?

you mean a shell with mingw in my path?

I read I didn't have the correct mingw32, so I ran mingw-get and pulled the mingw32-base and it populated that folder (c:\mingw), but I already had mingw path from the qt ver of mingw that was installed.

Yes.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on October 14, 2018, 07:53:33 am
MSYS2 installer should have created shortcuts for three kind of shell: MSYS, MINGW32, and MINGW64, they setup the proper environment so you don't have to worry about it. For compiling you will need to use a MINGW one, for package management any of them will do fine.

Don't use mingw-get (it's from your outdated mingw), use pacman from MSYS2. And don't forget to check for updates after the installation as instructed on the msys2 website (https://www.msys2.org/) (step 5 and 6).
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on October 14, 2018, 12:28:47 pm
what a fun filled time that was

I have the columns sorted by role %, then based on attribute % (all other role dimension weights set to 0, i.e. disabled).    The one that's 0% that's the role next to it's [raw] value reported as a %.

I suppose this was an issue with the older version as well, and is something that I think as a statistician should be able to solve (the way that analytical ability > agility in all %'s.  In other words, unequal means/variances (ANOVA). Different co-efficients yet normalizing them the same.  I'm not sure if there is an easy way around it.  Maybe a tri-mean vs median?  Maybe normalize each domain separately? 

I don't like that idea, leave as is?  I mean I see one agility score > .5.

I also think highlighting only the values that are either the top 10% or bottom 10% of the displayed roles (this is not the same as roles > 90% unless the screen is redrawn using recdf).  It means what is drawn, from all those available squares, select the highest 10% of those squares regardless of their value (i.e. grab the top 10% ranked).  In other words, a rank ecdf of the final drawing.

Spoiler (click to show/hide)

biggest mistake (on my part) was the need to be running from the

there is a shortcut under

start - 'msys2 - 64-bit' - 'MSYS2 MinGW 64-bit'

which maps to

C:\msys64\msys2_shell.cmd -mingw64

which is where the aforementioned commands need to be run under, it's not your standard cmd prompt.  Easy to make considering that pacman commands work inside cmd.exe

once past that it compile (along with the relevant github commands to change forks).

here are my high level notes from that session

Spoiler (click to show/hide)

there was no need for me to even open it in qt creator.  It built it from the ninja statement.

thank you clement for the support

update

already confirmed the median is reported correct (1091) and at 50%!

I'm not sure how the other values are calculated.  Eyeballing it it appears the edge cases are done correctly as well as the center, trying to confirm individual #s I find them to be within 5%, so I think there is some sort of post stretching being done.

Don't recall how to use --stats

Ex transform check
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: soul4hdwn on October 16, 2018, 02:02:36 pm
Hi, how do I put my custom/super labor to appear on the main grid/column assignation part of screen?

Do I have to make a role instead?  I couldn't find a way to edit grids (the compact labor in specific) or make a new grid view tab.

I apologize if was already asked, I see progress on customizing and custom features but I didn't see my specific and hopefully minor issue recently via the search.  I'm not quite a power user, sorry.

edit: "role" isn't related but issue still stands on using/seeing the custom/super labor on grid and or activating it on a dwarf.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on October 16, 2018, 02:15:38 pm
You cannot modify the default grids directly. You have to copy them, then you can modify the copy.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on November 01, 2018, 04:12:59 am
For users of Linux distribution that restrict debugging (ptrace_scope set to 1), I wrote a script (https://github.com/cvuchener/Dwarf-Therapist/blob/ptrace-help/dist/ptrace_scope/patch_df_ptracer) that install the second solution from this post (http://www.bay12forums.com/smf/index.php?topic=168411.msg7742913;topicseen#msg7742913) in your DF directory. I tested it on my machine and couple of virtual machine, but more testing would be welcome. It is supposed to add a set_ptracer_any.so file in your DF directory and patch df and dfhack (if present) launchers (after making backups).

To use it, pass the path to DF directory as an argument, or nothing to get a graphical file selection dialog.

It requires gcc and optionally zenity (for graphical selection of DF install directory).
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on November 10, 2018, 09:25:34 am
I saved the output of my msys session for anyone that wants to walkthrough parts of the process to build/run dt in windows

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on November 10, 2018, 09:47:37 am
I don't have mingw-w64-x86_64-extra-cmake-modules installed, I don't think it is required.

It is funny to see you struggling with bash, but I am not sure it useful for other. I you want nano, it is in the repository, use pacman to install it, not yum.

As I said earlier, msys2 is nice if you used to the linux way, but it can be very difficult otherwise.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Lolor31 on November 20, 2018, 07:36:30 am
Hi, I am receiving this message every time I tried using DT

"I am sorry but I dont know how to talk to this version of dwarf fortress
checksum: 0x5b410314"


I'm using DF 0.44.12 legacy 32 and DT v41.0.3 win32
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on November 20, 2018, 08:49:23 am
The legacy version is not supported, you need the SDL version.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Death Dragon on December 28, 2018, 10:47:24 am
Would it be possible to assign dwarves to burrows through Dwarf Therapist or would that be too much work to implement for what it's worth?
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on December 28, 2018, 02:13:33 pm
I think it would requires resizing vectors (maybe more, I am not an expert on burrow internals), so it would be at least as difficult as assigning tavern keepers/performers/scholars/....
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: TV4Fun on January 04, 2019, 10:00:11 pm
How hard would it be to add the ability to assign work animals from DT? This would save a few minutes when having to assign a bunch of war or hunting dogs.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on January 05, 2019, 09:25:39 am
I don't know how that part work. I am not sure how to make a nice UI for it either.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: falcn on January 07, 2019, 06:42:08 am
Dwarf Therapist:
 - included a shell script that fixes Dwarf Therapist not saving config between runs. (run TherapistSaveConfigFix.command once if you experience this problem)

This is still happening? I thought it was fixed in v40.0.0 (see issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/72)).
I've redownloaded DT from github releases, deleted ~/.config and this is what I got
Code: [Select]
-rw-r--r--  1 root   staff  243 Jan  7 13:29 Dwarf Therapist.iniSo it can't save anything there. Directory is owned by the user.

Interestingly, after applying -rw-rw-rw DT successfully drops user id to the current user on the next run.
Code: [Select]
-rw-rw-rw-  1 falcn  staff  5693 Jan  7 13:34 Dwarf Therapist.iniLooks like config file creation is different from config file saving, and you've fixed only the latter one.

There is also a minor issue with DT redownloading memory layouts on each reconnect (it probably can't save them as well but I don't know where it keeps them), and DT requesting update to 41.0.3 which doesn't exist for Mac OS.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on January 07, 2019, 07:21:55 am
I can't test and debug on macOS myself. I re-opened the issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/72), maybe someone will be able to fix it.

The location for downloaded files should be somewhere in ~/Library/Application Support/. "File → Open data directory" should open the file explorer at the correct location.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: falcn on January 07, 2019, 07:40:16 am
The location for downloaded files should be somewhere in ~/Library/Application Support/. "File → Open data directory" should open the file explorer at the correct location.
All files and folders in data directory have correct rights, so
Quote
redownloading memory layouts on each reconnect (it probably can't save them as well but I don't know where it keeps them), and DT requesting update to 41.0.3 which doesn't exist for Mac OS
is one issue, not two. Disabling "Check for updates" prevent this from happening.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: falcn on January 08, 2019, 09:59:35 pm
Wiki says
Quote
Military tactics is a military skill. Along with leader and organizer skills, it affects battles, giving the side with the better tactician a greater chance of victory.
Military tactics determines a squad's success chance in mission battles. The squad member with the highest skill in military tactics is used. The skill skews rolls in battles in opposition to the opponent's tactician skills.
Military tactics is an available skill at embark. When assigning squad members, military tactician appears as a relevant skill for squad-leading nobles/appointments.
Looks like DT currently doesn't have this skill in Military/Other skills/Social.

Dfhack's in-game labor manager shows it.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on January 09, 2019, 04:54:33 am
Where should it be added exactly? If you have ideas for a corresponding role, it is welcome too (I added it to the todo list here (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/88)).
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on January 10, 2019, 05:52:54 am
I published my noble assignment experimentation in this pull request (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/148). Adventurous linux users may want to try this. I'll try to port it to windows later.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on January 22, 2019, 10:06:20 am
Here is my first working attempt at a Windows port (64 bits only): https://framadrop.org/r/iICDET7Os-#Z2PGBlD56n1PAnU11uc3x6JzefLaA0qXTyGvio9UbTY=

Same as Linux, be careful and backup your saves. Also make sure the updater do not replace the memory layout. Look for errors or warnings in the log if something goes wrong.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on February 04, 2019, 10:59:41 am
It is now ported for Windows 32 bits. I still have issues with Wow64 so DT 64 bits is not able to set nobles for DF 32 bits on Windows (it should fail harmlessly in the current version).

Windows 32 bits (https://framadrop.org/r/LbiAcqxhkp#wSNca5EuY4aj5Fz0BJWh6iXY1waGx9vvLRlJbspFFes=)
Windows 64 bits (https://framadrop.org/r/szT86a7HCD#ZlsZkagR6Ej76DFeRbj8lIFnlcVfD5/54cRc2kAXNug=)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: feelotraveller on February 04, 2019, 06:06:07 pm
Now that multi-racial forts are a thing it would be useful to be able to show the race of your inhabitants (e.g. for clothing needs) in the grid views.

It is possible to see the 'caste' in the tooltip if enabled.  Not aware of any other current option (other than using workarounds like assigning custom professions to everyone).

Thoughts?


Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: PatrikLundell on February 05, 2019, 03:11:58 am
Sorting on "caste" (which I ordinarily use to look at animals for slaughtering purposes) sorts sapient inhabitant according to race.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on February 05, 2019, 05:15:38 am
You can sort/group by race too. IIRC castes are only shown if there are three or more. If there are only two castes, DT assume they are sexes and do not show them. Thus "Caste" grouping is often the same as "Race" grouping.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: feelotraveller on February 05, 2019, 08:10:46 pm
Ah yes, another ID10t error.  I see it now.  ::)

(Still wonder if a visual cue might be useful but far less pressing/concerned now.  If I found the right drop down menu in the first place I would not have posted.)

Thanks to you both.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on February 06, 2019, 04:54:42 am
What kind of visual cue? A better icon? Text instead of icon?

The line edit left of it should be removed too. I don't know its purpose and I find it confusing. I'm pretty sure it is not used anywhere in the code.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: feelotraveller on February 06, 2019, 05:55:12 pm
Sorry I was not clear.  The dropdown icon seems fine, just a case of blindness/habit on my part to have overlooked the button.

I was thinking that an icon on the gridview (like the sex/gender icon) might be still be useful on occasion.  What prompted my post was that I had returned to an old fort and decided to redo my labours from scratch after noticing that swapping dwarfs to various jobs would lead to more highly skilled candidates in various positions.  A few months later a mini-crisis hit when I realised my highly skilled clothier was actually a human...  Okay lesson learned, hopefully, to sort by race for this activity.  Edge case, sure, but not unique - equipping 'foreign' weapons too big for dwarfs to humans immediately springs to mind.  The added usefulness is marginal though, so perhaps not worth worrying about.

I also have no idea what the box on the left is for.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: PatrikLundell on February 07, 2019, 03:25:35 am
I think it would be hard to use an icon for race, both because there are a lot of them, and because you can easily mod in new ones, so any race indication would likely have to be text (unless you go for a player race/not player race icon indication).
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Starver on February 07, 2019, 10:28:58 am
The first three(ish) characters of the race name could fit in a squared textbox in a thinned font as an adhoc 'icon'? Literal text or specially rasterised to image format on first encounter.

Could be checked for obvious collisions against other races and maybe VwlCntrctd beforehand or otherwise treated. Optional fg/bg colour user-defined, as indeed would a change in Id string for known-so-far examples. "Dwf" features a wide character, so manual or automatic rules could let it be "Dw", but what one would do for an alternate "Dwarrow" modded race (as someone might create) or how to handle Tigons vs Tigers (another adjustment) is beyond the immediate scope of this "just a thought".
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: PatrikLundell on February 07, 2019, 12:23:35 pm
The animal people races are rather numerous...
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Starver on February 07, 2019, 12:37:47 pm
Animal: Ani
Animalperson: AnP
Giant Animal: GAn

...as default. Obvious exceptions (Giant/Gigantic Pandas, Blind Cave Bear/Ogre, maybe Aadvark Man (AdM, if NnFrstVwlsRmvd) vs Adder Man (AdM)) in vanilla can be a) given hardcoded fall-backs, b) prompt a few more/less rules to obviate (AaM and AdM), c) Just checked per-instance for clashes current to the fort, and nothing needs doing if there aren't any.

Just a musing, though.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Flying Teasets on February 07, 2019, 12:49:36 pm
Does Dwarf Therapist track the papermaker, bookbinder, and military tactics?
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on February 07, 2019, 02:25:00 pm
If I added a race column, I would use the creature tiles (and maybe colors) from the raws. It is much simpler and the tile should be better known than other abbreviations. Maybe add some overrides for replacing the most common ones with real icons (and thus avoiding using smiley faces ☺ for dwarves).

Does Dwarf Therapist track the papermaker, bookbinder, and military tactics?
Yes but military tactics is not included in any default grid view.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: feelotraveller on February 22, 2019, 12:37:06 am
Clément perhaps you could add to my reply here?  :)

http://www.bay12forums.com/smf/index.php?topic=173319.0 (http://www.bay12forums.com/smf/index.php?topic=173319.0)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on February 23, 2019, 06:18:27 am
There is no macOS build after Qt 5.5 was removed from homebrew because it does not work with the latest version of macOS. The easiest fix would be to use the only version of Qt available in homebrew. That would be the latest: 5.12, DT would require at least macOS 10.12 Sierra (current minimum version is 10.9). In order to support older macOS version, it would require multiple builds. Is it worth it and does any one know another source for Qt that could be use in Travis?
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: feelotraveller on February 27, 2019, 01:46:50 am
My two cents, since there is no other feedback, is that it is good to have versions for all OS's.  Failing that instructions clear enough that the generic newer user can build it for themselves.  And as a failsafe (or if it is not worth the effort to maintain various versions): links to last/latest working therapist for various macOS versions.

But perhaps it is up to the Mac community to provide some assistance...

Chances are it will become an issue during a major update, right when other things are pressing.  ;)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on July 30, 2019, 09:01:50 pm
Clement was assisting me with a non clean personal system.  So I wanted to do justice and retry with a clean vm

qt 5.13
using the gnu32 included
cmake32
made this change in the cmakelist.txt
setup the kit to use gnu32

target_link_libraries(${EXE_NAME} Qt5::Widgets Qt5::Qml Qt5::Concurrent Qt5::Core Qt5::Gui Qt5::Network ${LIBS})

I get a message about failing to compile a simple program with gcc

So... I tried the 64 bit versions of gnu and cmake.  Same issue.

stuck.

:(

git repo: https://github.com/cvuchener/Dwarf-Therapist.git
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on July 31, 2019, 03:12:34 am
There should be another error message explaining why the simple test program compilation failed.

I get this message because I have a non-ASCII character in my username, and cmake fails to find the temp directory because of encoding issues.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on July 31, 2019, 11:44:16 am
what version of cmake and gnu should I be using?  Last instructions I had were gnu32.  But what about cmake?

Error I get with cmake64 and gnu32 (see the conundrum?). I'm on x64 windows

Last instructions I had was gnu32.

what's installed

https://imgur.com/a/1GeZr7w

kit confiugration

https://imgur.com/a/gYpfX8D

one line change to cmakelist

https://imgur.com/a/J2lrs3g

Error upon configuring

https://imgur.com/a/DhKBRUI

Spoiler (click to show/hide)


Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on July 31, 2019, 12:07:34 pm
Try changing the kit to use "MinGW Makefiles" generator. I don't understand why this is not automatically configured. NMake is for MSVC.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on July 31, 2019, 12:41:25 pm
Kit

https://imgur.com/a/KK6KUOU

different error about cmake

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on July 31, 2019, 01:07:19 pm
I did not see it was a manually created kit. Then you need to manually configure everything, especially the "Qt Version" part. But usually the qt sdk is auto-detected and you only have to configure cmake.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on July 31, 2019, 01:26:42 pm
It's not a manually created kit.  That was the default one.  I only made changes to it.  Do you have a screenshot of your kit?

It's under "manual" but I did not create that kit.  I suppose it's failing to auto detect one and therefore creates a manual one?  Either way.  I'm at a loss.  I installed QT software, why doesn't it have a default auto detected kit?
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on July 31, 2019, 01:32:18 pm
https://framapic.org/NeReXxwyE05Q/s4mhF8kgCZAB.png
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on July 31, 2019, 02:36:32 pm
I think I know what the issue was.

I didn't select any QT anything.

I thought I just needed the mingw under the "Developer and Designer Tools"

This is now my installation setup.

https://imgur.com/a/4SWnYGP
https://imgur.com/a/oe8kWSD

thank goodness

Spoiler (click to show/hide)

looks like it's building now,

will report on if it runs :)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on July 31, 2019, 04:18:43 pm
project builds but unable to detect df

similar issue to what I was experiencing on laptop, but not the exact same.  I'm getting less errors. I see a tls error (not on screen, but within dt in lower right)

https://imgur.com/a/MuwSaPy

I didn't select that debug option you recommended before.  I simply ran it
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on July 31, 2019, 05:19:41 pm
If it is because of missing memory layouts, you should check BUILD_DEVMODE in cmake options (don't forget to apply) (https://framapic.org/mpqR0TeR64UA/54kG3fLmtcl2.png) and rebuild, or copy the "share" folder next to the executable and rename it "data". If it is another issue you will need to check the log.

Don't worry about the ssl error, it is the updater but you don't need it.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on July 31, 2019, 07:47:37 pm
put on devmode

https://imgur.com/a/u50YaN0

cleaned project, rebuilt

copied share (tried mw mode first,then I tried the one in the Dwarf-Therapist folder).  Still throws same error.

https://imgur.com/a/SonEmew

looked at log and it appears to find the process, but can't match a memory layout.  Going to try with standard dwarf fortress (vs MW)

Spoiler (click to show/hide)


Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on July 31, 2019, 09:28:50 pm
Same result with df classic

https://imgur.com/a/vNkFyzn

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on August 01, 2019, 03:24:09 am
You did not need to copy the share folder in devmode. It found the correct memory anyway.

Your issue is with CreateToolhelp32Snapshot (https://docs.microsoft.com/en-us/windows/win32/api/tlhelp32/nf-tlhelp32-createtoolhelp32snapshot), one reason for this error message could be:
Quote
If the specified process is a 64-bit process and the caller is a 32-bit process, this function fails and the last error code is ERROR_PARTIAL_COPY (299).

Are you sure you made a 64 bit build? Does it work better with 32 bit DF?
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on August 01, 2019, 08:19:04 am
You did not need to copy the share folder in devmode. It found the correct memory anyway.

Your issue is with CreateToolhelp32Snapshot (https://docs.microsoft.com/en-us/windows/win32/api/tlhelp32/nf-tlhelp32-createtoolhelp32snapshot), one reason for this error message could be:
Quote
If the specified process is a 64-bit process and the caller is a 32-bit process, this function fails and the last error code is ERROR_PARTIAL_COPY (299).

Are you sure you made a 64 bit build? Does it work better with 32 bit DF?

I mentioned the unknown conundrum earlier

Quote
Error I get with cmake64 and gnu32 (see the conundrum?). I'm on x64 windows

I thought I made 32 bit app, but have a 64 bit cmake.

Dwarf Fortress is 32 bit (I'm using masterwork mod).  I'd like to use the least common denominator, most common applicable settings.

What do you recommend?  My OS is still 64 bit.  Should I use gnu32 and cmake32?

My app shows DT is 32 bit

https://imgur.com/a/sCf1ngH
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on August 01, 2019, 09:02:04 am
I don't think the cmake architecture matters.

From the memory layout chosen in your log and your task manager screenshot, I can see you are using 64 bit DF. Masterwork downloaded from here (http://dffd.bay12games.com/file.php?id=5315) is 64 bits only (see the latest comments).

I would recommend using mingw64, you already have it installed, so it just a matter of selecting it in qtcreator. And it has the advantage of working with both versions of DF.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on August 01, 2019, 09:54:53 am
Thanks for the note about MW being 64 bit.  I forgot about that.

I thought the original was still 32 bit.  That's something new.

I ran it without debug and still had to copy memory layouts, but it works!

https://imgur.com/a/1PI3GSc

only took me 3 days!  Now we can use this thread to walk people through a clean build.  I'll work on a process doc

start of thread:
http://www.bay12forums.com/smf/index.php?topic=168411.msg8003611#msg8003611
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Cespinarve on August 01, 2019, 04:33:43 pm
Any chance of this releasing another OSX version? The one currently available flashes an "update to 41.03" message before immediately quitting.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on August 02, 2019, 04:31:29 am
Yes, I should make a new release soon. The next release for macOS may not work on older versions (older than macOS 10.12, see this post (http://www.bay12forums.com/smf/index.php?topic=168411.msg7934444#msg7934444)). I'd like to some feedback from thistleknot about the new roles stats first, if it can be merged or if it needs more time.

The one currently available flashes an "update to 41.03" message before immediately quitting.

Is it quitting or crashing? Do you have any kind of crash report? stack trace? It would be better to fix that before the next release.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Cespinarve on August 02, 2019, 02:32:34 pm
Quitting - here's the error log. Specifically you can watch the progress bar reach the end  of "downloading memory layouts" and then it insta-quits and dumps as error log.

I had to put the log on a tinyupload -  I don't think the forum allows attachments. Just past my ten-year anniversary you think I'd know by now.

http://s000.tinyupload.com/?file_id=09930222879711181634

Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on August 02, 2019, 03:35:02 pm
Thanks for the error log. It does not crash when downloading memory layouts but when reading the game data. Making a new release won't help you with that. What version of DF are you using exactly (0.44.12 64 bits or something else)? Is the game modded? Does it happens with other saves?

Can you also upload the log file from DT itself? Sorry, I don't know where it is on macOS.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Cespinarve on August 02, 2019, 03:50:08 pm
0.44.12 but I'm running it through the Lazy Mac Pack. Just tried running DF solo and Therapist loaded just fine. Something with DFHack was causing a conflict, which I didn't think of until just now, not having running DFHack before this current playsession.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Cespinarve on August 02, 2019, 03:54:11 pm
Thanks for the error log. It does not crash when downloading memory layouts but when reading the game data. Making a new release won't help you with that. What version of DF are you using exactly (0.44.12 64 bits or something else)? Is the game modded? Does it happens with other saves?

Can you also upload the log file from DT itself? Sorry, I don't know where it is on macOS.

Wait, no, scratch my last - just ran a clean install of DF Mac version without anything and the problem persists, so it's not DFHack of the Lazy Mac Pack. Trying to figure out where it sends error logs.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Cespinarve on August 02, 2019, 04:06:36 pm
Can you also upload the log file from DT itself? Sorry, I don't know where it is on macOS.

Finally found the log

Code: [Select]
2019-Aug-02 17:01:33.619 INFO core Dwarf Therapist "39.0.0" starting normally. [/Users/crc/src/Dwarf-Therapist/src/dwarftherapist.cpp:186] (setup_logging)
2019-Aug-02 17:01:33.620 INFO core Runtime QT Version 5.9.3 [/Users/crc/src/Dwarf-Therapist/src/dwarftherapist.cpp:187] (setup_logging)
2019-Aug-02 17:01:34.490 INFO core beginning to read settings [/Users/crc/src/Dwarf-Therapist/src/dwarftherapist.cpp:213] (read_settings)
2019-Aug-02 17:01:34.501 INFO core finished reading settings [/Users/crc/src/Dwarf-Therapist/src/dwarftherapist.cpp:264] (read_settings)
2019-Aug-02 17:01:34.558 INFO core attempting connection to running DF game [/Users/crc/src/Dwarf-Therapist/src/mainwindow.cpp:405] (connect_to_df)
2019-Aug-02 17:01:34.559 INFO core adding valid layout "v0.44.12 osx64" checksum: "0x2cc70426" SHA: "b73b02aa2501c7a3eb2469626922e33cbd3ba6d0" [/Users/crc/src/Dwarf-Therapist/src/dfinstance.cpp:106] (DFInstance)
2019-Aug-02 17:01:34.587 INFO core Found running copy, pid: 26085 path: "/Users/james/Downloads/df_osx/./dwarfort.exe" [/Users/crc/src/Dwarf-Therapist/src/dfinstanceosx.mm:147] (set_pid)
2019-Aug-02 17:01:34.669 INFO core Setting memory layout for DF checksum "0x2cc70426" [/Users/crc/src/Dwarf-Therapist/src/dfinstance.cpp:1081] (set_memory_layout)
2019-Aug-02 17:01:34.669 INFO core Detected Dwarf Fortress version "v0.44.12 osx64" using MemoryLayout from "/Applications/DwarfTherapist.app/Contents/MacOS/share/memory_layouts/osx/v0.44.12_osx64.ini" [/Users/crc/src/Dwarf-Therapist/src/dfinstance.cpp:1086] (set_memory_layout)
2019-Aug-02 17:01:34.670 INFO core Checking for layout for checksum:  "0x2cc70426" [/Users/crc/src/Dwarf-Therapist/src/updater.cpp:133] (check_layouts)
2019-Aug-02 17:01:35.423 INFO core New version found "41.0.3" [/Users/crc/src/Dwarf-Therapist/src/updater.cpp:112] (version_check_finished)
2019-Aug-02 17:01:37.549 INFO core Setting memory layout for DF checksum "0x2cc70426" [/Users/crc/src/Dwarf-Therapist/src/dfinstance.cpp:1081] (set_memory_layout)
2019-Aug-02 17:01:37.550 INFO core Detected Dwarf Fortress version "v0.44.12 osx64" using MemoryLayout from "/Applications/DwarfTherapist.app/Contents/MacOS/share/memory_layouts/osx/v0.44.12_osx64.ini" [/Users/crc/src/Dwarf-Therapist/src/dfinstance.cpp:1086] (set_memory_layout)
2019-Aug-02 17:01:37.550 INFO core Connection to DF version "v0.44.12 osx64" established. [/Users/crc/src/Dwarf-Therapist/src/mainwindow.cpp:429] (connect_to_df)
2019-Aug-02 17:01:38.261 INFO core Loaded 12 views from disk [/Users/crc/src/Dwarf-Therapist/src/viewmanager.cpp:170] (reload_views)
2019-Aug-02 17:01:38.265 INFO core group_by now set to 0  for view  "Labors Full" [/Users/crc/src/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2019-Aug-02 17:01:38.272 INFO core group_by now set to 0  for view  "Military" [/Users/crc/src/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2019-Aug-02 17:01:38.276 INFO core group_by now set to 0  for view  "Attributes" [/Users/crc/src/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2019-Aug-02 17:01:38.281 INFO core group_by now set to 0  for view  "Roles" [/Users/crc/src/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2019-Aug-02 17:01:38.286 INFO core group_by now set to 0  for view  "Animals" [/Users/crc/src/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2019-Aug-02 17:01:38.286 INFO core group_by now set to 0  for view  "Labors Full" [/Users/crc/src/Dwarf-Therapist/src/dwarfmodel.cpp:779] (set_group_by)
2019-Aug-02 17:01:38.287 INFO core "redrew views in 25ms" [/Users/crc/src/Dwarf-Therapist/src/viewmanager.cpp:317] (draw_views)
2019-Aug-02 17:01:38.287 INFO core current year: 250 [/Users/crc/src/Dwarf-Therapist/src/dfinstance.cpp:784] (refresh_data)
2019-Aug-02 17:01:38.290 INFO core FOUND 0 squads [/Users/crc/src/Dwarf-Therapist/src/dfinstance.cpp:875] (load_squads)
2019-Aug-02 17:01:38.292 INFO core using active units [/Users/crc/src/Dwarf-Therapist/src/dfinstance.cpp:951] (get_creatures)
2019-Aug-02 17:01:38.292 INFO core no active units with our civ (reclaim), using full unit list [/Users/crc/src/Dwarf-Therapist/src/dfinstance.cpp:957] (get_creatures)
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on August 02, 2019, 04:56:39 pm
Code: [Select]
2019-Aug-02 17:01:33.619 INFO core Dwarf Therapist "39.0.0" starting normally. [/Users/crc/src/Dwarf-Therapist/src/dwarftherapist.cpp:186] (setup_logging)
That's very old. At least try 41.0.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.0.2) before asking for a new release.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Cespinarve on August 02, 2019, 07:01:02 pm
Code: [Select]
2019-Aug-02 17:01:33.619 INFO core Dwarf Therapist "39.0.0" starting normally. [/Users/crc/src/Dwarf-Therapist/src/dwarftherapist.cpp:186] (setup_logging)
That's very old. At least try 41.0.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.0.2) before asking for a new release.

Ah. I wasn't aware I didn't have the latest version - the MacOS link at the start of this thread does not link to that file. I just downloaded what I was directed to.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: Clément on August 02, 2019, 07:15:27 pm
I forgot about it. I am removing it to avoid confusion since salajander stopped updating it. Since then, macOS builds are on github. The only missing release for macOS is 41.0.3.
Title: Re: Dwarf Therapist v41.0.3 | DF 44.12
Post by: thistleknot on August 03, 2019, 08:46:32 am
Yes, I should make a new release soon. The next release for macOS may not work on older versions (older than macOS 10.12, see this post (http://www.bay12forums.com/smf/index.php?topic=168411.msg7934444#msg7934444)). I'd like to some feedback from thistleknot about the new roles stats first, if it can be merged or if it needs more time.

The one currently available flashes an "update to 41.03" message before immediately quitting.

Is it quitting or crashing? Do you have any kind of crash report? stack trace? It would be better to fix that before the next release.

Maybe you can remind me what those changes were exactly so I can look directly at that part.  I know you shared with me the git repo.  i only cloned what I thought was the first commit and confirmed my build env.

Give me a week.  My nas node was acting up.  Didn't lose anything.  I have all the time in the world.  But I'm still settling in to my new environment.  It's going to take me about another week to get my head into the code.  I have my masters done in Data Science so I am finally qualified to speak on all of this.  But tbh it's not needed.  The s transform function along with the empirical cumulative distribution function was more than enough to meet the games demands (not scientific at all tbh other than the ECDF).  But I forgot what I was doing with it all.  That's what I don't want to lose the work on.  I was working on IMPROVING that.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on August 10, 2019, 09:56:58 am
New version released: 41.1.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.0)

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).

I am not sure the new macOS build works on system older than 10.12 because the Qt version is too new. But, using an older Qt version (older than Qt 5.12), DT should still be compatible for OS X 10.9 to 10.11. If someone wants to make such a build and share it, I can add a link in the first post.

Log files have moved, here are the new location for each platform, so you can find them for your bug reports (there is also a shortcut in the "file" menu to help you):
This should finally allow windows version of DT to work from read-only installation directories (e.g. in C:\Program Files).
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Kiloku on August 16, 2019, 06:23:20 am
I remember a fork of DT that worked in adventurer mode, showing information about the adventurer (and their companions, I think). Is it possible to get that feature in current DT?
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on August 16, 2019, 08:28:33 am
It may be possible (I think it is mostly the unit validation that must be adapted). But I am not sure DT UI would be very useful for adventure mode. It is focused on managing labors. A completely different application would be better suited.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Cespinarve on August 18, 2019, 01:23:16 pm
What are the Boolean operators for excluding races and occupations via a filter? For example I want to be able to see only units who are DWARVES and NOT BARDS and NOT PERFORMERS etc.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on August 18, 2019, 02:11:43 pm
Something like:
Code: [Select]
d.get_race_id() == 572 && d.profession() != "Bard" && d.profession() != "Performer"I am not sure there is a practical way to get the race "id" (it is not actually the id, but the index in world.raws.creatures.all). It should be changed to use the string id ("DWARF") instead, that would be easier.

I used
Code: [Select]
:lua for i,c in ipairs(df.global.world.raws.creatures.all) do if c.creature_id == "DWARF" then print(i) end end in dfhack console to find the race index. Try it yourself, the index may be different in your world.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: PatrikLundell on August 19, 2019, 03:20:54 am
"df.global.ui.race_id" contains the played race id, and so should work even if you've added/removed creatures, or modded non dorfs to become playable.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on August 19, 2019, 04:50:16 am
What would be the best to add for filters: the creature id (the identifier used in the raws) or the display name? In some cases it only change the case ("DWARF" vs. "dwarf"), in others there are extra words or a different order ("BIRD_CHICKEN" vs. "chicken", "RAT_DEMON" vs. "demon rat"). The caste name is usually displayed in the UI instead of the race name, so you may have to guess the correct string for both.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: PatrikLundell on August 19, 2019, 02:09:14 pm
What would be the best to add for filters: the creature id (the identifier used in the raws) or the display name? In some cases it only change the case ("DWARF" vs. "dwarf"), in others there are extra words or a different order ("BIRD_CHICKEN" vs. "chicken", "RAT_DEMON" vs. "demon rat"). The caste name is usually displayed in the UI instead of the race name, so you may have to guess the correct string for both.
If the filter is free text, I'd try to match against both, and if it's a list you select from I'd use the appropriate name string rather than the Id. If castes have different names (e.g. cow/bull) I'd probably try to match those as well. Whether "bull" would then also pick up "cow" would depend on what the filter is used for.

And, to correct my previous post, the "race_id" field actually contains the race index, not the Id...
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: thistleknot on October 14, 2019, 10:22:14 am
I reran through the steps

I'm getting a tls error about memory layouts.  I had to copy the memory layouts from the sharefolder (or mw mod dt data folder), but it connects and reads my dwarf's.  Not sure what the error implies

Code: [Select]
Clone
git repo: https://github.com/cvuchener/Dwarf-Therapist.git

QT Creator installation Options
https://imgur.com/a/oe8kWSD

Install CMake64
Add cmake path for all users

QT Creator
File -> Open -> CMakeLists
Configure Project
Click Play

Add DevMode
#Projects Tab -> Build -> Build_DevMode

#https://imgur.com/a/u50YaN0

Build -> Build All

Ran with devmode and copied share\memory layouts
from source
to data\memory layouts
to binary build location

TLS error
https://imgur.com/a/Juyi9CY

without devMode
        same error


Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on October 14, 2019, 11:11:27 am
SSL errors on Windows are mostly caused by outdated openssl dlls. Download the latest version here: https://indy.fulgan.com/SSL/ and extract libeay32.dll and ssleay32.dll next to Dwarf Therapist.exe.

Anyway, the memory layout updater not working should not bother you (except if you want to work on the updater). For development builds (with BUILD_DEVMODE), DT should pick memory layouts from the source directory. Check the log to see from where the memory layout are loaded.

PS: make sure you applied cmake configuration, your changes may not have been saved.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: thistleknot on October 14, 2019, 11:51:01 am
Quote
PS: make sure you applied cmake configuration, your changes may not have been saved.

cmake is autodetected if installed [first?]

anyways.  I only have one cmake and it's detected

https://imgur.com/a/RqAbcyG

there are 6 candidate options for x86_64

Code: [Select]
[   ] OpenSSL 1.0.2g Android.zip      2019-10-14 04:06  2.0M 
[   ] OpenSSLStaticLibs.7z            2019-10-14 04:07  2.9M 
[   ] openssl-1.0.2q-i386-win32.zip   2019-10-14 04:06  1.0M 
[   ] openssl-1.0.2q-x64_86-win64.zip 2019-10-14 04:07  1.3M 
[   ] openssl-1.0.2r-i386-win32.zip   2019-10-14 04:07  1.0M 
[   ] openssl-1.0.2r-x64_86-win64.zip 2019-10-14 04:07  1.3M 
[   ] openssl-1.0.2s-i386-win32.zip   2019-10-14 04:07  1.0M 
[   ] openssl-1.0.2s-x64_86-win64.zip 2019-10-14 04:07  1.3M 
[   ] openssl-1.0.2t-i386-win32.zip   2019-10-14 04:07  1.0M 
[   ] openssl-1.0.2t-x64_86-win64.zip 2019-10-14 04:07  1.3M 
which one?
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on October 15, 2019, 03:51:50 am
Quote
PS: make sure you applied cmake configuration, your changes may not have been saved.
Click the apply button on this screen: https://imgur.com/a/u50YaN0

there are 6 candidate options for x86_64

Code: [Select]
[   ] OpenSSL 1.0.2g Android.zip      2019-10-14 04:06  2.0M 
[   ] OpenSSLStaticLibs.7z            2019-10-14 04:07  2.9M 
[   ] openssl-1.0.2q-i386-win32.zip   2019-10-14 04:06  1.0M 
[   ] openssl-1.0.2q-x64_86-win64.zip 2019-10-14 04:07  1.3M 
[   ] openssl-1.0.2r-i386-win32.zip   2019-10-14 04:07  1.0M 
[   ] openssl-1.0.2r-x64_86-win64.zip 2019-10-14 04:07  1.3M 
[   ] openssl-1.0.2s-i386-win32.zip   2019-10-14 04:07  1.0M 
[   ] openssl-1.0.2s-x64_86-win64.zip 2019-10-14 04:07  1.3M 
[   ] openssl-1.0.2t-i386-win32.zip   2019-10-14 04:07  1.0M 
[   ] openssl-1.0.2t-x64_86-win64.zip 2019-10-14 04:07  1.3M 
which one?
Any one should fix the issue but you should prefer the latest, so 1.0.2t currently.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: thistleknot on October 17, 2019, 05:34:48 pm
I applied config and rebuilt.  Even tried the file with the t extension (I see it's merely named in sequential alphabetical order).  I still get the same tls error message.  I don't really care if it's not preventing me from working though.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: feelotraveller on October 30, 2019, 01:04:33 am
Hi Clément there is a bug/query posted here http://www.bay12forums.com/smf/index.php?topic=174921.msg8047759#msg8047759 (http://www.bay12forums.com/smf/index.php?topic=174921.msg8047759#msg8047759) about why Kea men are shown as able to wield axes while not being large enough.  It comes up as a side issue so perhaps you could reply there?

(My guess would be that DT assumes creatures are dwarfs, but I won't confuse the issue - there - with wild speculation.)  :)
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on October 30, 2019, 05:21:22 am
You are right, DT assumes dwarves:
Code: [Select]
int Dwarf::body_size(bool use_default) const {
    //we include returning the default size because for the weapon columns, the size actually doesn't matter to DF (bug?)
    if(use_default){
        int def_size = 6000; //default adult size for a dwarf
        if(m_is_baby)
            def_size = 300;
        else if(m_is_child)
            def_size = 1500;
        return def_size;
    }else{
        return m_body_size;
    }
}

What is the status of the bug referenced here? Should I change the weapon test to use the actual size, or replace the hard-coded values with caste values? If it is the later, how do I get child and baby sizes? caste_raw only has adult_size.

PS: That other piece of code mentions using the actual size for 1h/2h check, but it is not compared anywhere.
Code: [Select]
    //caste size determines can/can't wield
    //if can wield, then the individual's size determines 1h/2h

    //use the default size, as DF doesn't take into account a creature's actual size when checking if they can use weapons
    int caste_size = d->body_size(true);
    bool onehand = false;
    bool twohand = false;
    QString desc = tr("<b>Can only wield</b> %1 with <u>2 hands</u>.").arg(wep);
    if(caste_size > m_weapon->single_grasp())
        onehand = true;
    if(caste_size > m_weapon->multi_grasp())
        twohand = true;

    //setup drawing ratings
    if(!onehand && !twohand){
        desc = tr("<b>Cannot wield</b> %1.").arg(wep);
        rating = 15; //this will give us a medium-large red square as the further from the median the larger the square gets
        numeric_rating = "X";
        sort_val = 0;
    }
    else if (twohand && onehand){
        desc = tr("<b>Can wield</b> %1 with one or two hands.").arg(wep);
        rating = 50; //49-51 are not drawn, so any value in there to draw nothing
        numeric_rating = "";
        sort_val = 2;
    }
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: PatrikLundell on October 30, 2019, 06:13:53 am
I've seen no indications the equipment usability determination has changed (or is about to change in the near time), so until that's changed the appropriate test would be against the subject's caste default size. While I think it's unknown if DF has a different logic for children and babies, it shouldn't really matter in practice as you can't assign them equipment (and children cheerfully wear adult sized clothing, even though they're smaller than the size range normally allows for).
However, care would have to be taken to use that particular function for weapon and clothing/armor equipment purposes only, and not for cases where actual size is required (very easy to make such a mistake when expanding functionality), so a warning comment wouldn't be out of place.

Of course, if DT's "cheat" functionality allows for drafting of children and babies (if you can get them away from riding their mothers), it could be used to test if they'd use the same criteria as adults.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on October 30, 2019, 06:50:11 am
There are body_size_1 and body_size_2 in caste_raw. Although the comments in df-structures (https://github.com/DFHack/df-structures/blob/master/df.creature-raws.xml#L880-L881) look wrong. Looking at a dwarf caste, body_size_1 is {300, 1500, 6000} (matching current hardcoded sizes in DT) and body_size_2 is {0, 504, 4032} (could be 0, 1.5, and 12 years in days).

I tried to force a child into a squad but DF crashed. :( Edit: only because I had the military screen opened maybe. It worked on the second try.

Edit2: Children created with modtools/create-unit have an adult size. I am not sure they are the best way to test that.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on October 30, 2019, 08:41:22 am
A real dwarven child of size 2359 (age 3 yr, so default size is 1500, it is a big child) was able to wield a steel mace (multigrasp, I did not test with a shield). If I read the wiki (http://dwarffortresswiki.org/index.php/DF2014:Weapon#Size) correctly, that should not be the case, minimum size should be 3250. So, the adult size must be used.

Current size 2388 (the child has grown a little) was able to singlegrasp a mace:
(http://tof.cx/images/2019/10/30/ae83725062406f9c37fff38b9d89155c.png)

It does not look like the actual size is checked for multigrasp vs. singlegrasp. Or am I doing something wrong? Do I need to test actual combat?
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: PatrikLundell on October 30, 2019, 10:33:38 am
I wouldn't be surprised if double handed weapons could be carried with a single hand, but I don't actually know.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: feelotraveller on October 31, 2019, 06:35:26 pm
What is the status of the bug referenced here?

Acknowledged but unresolved.  Reported as still present in 44.12.  (Experienced it myself in one of the earlier 44.xx versions of df.)

Quote
Should I change the weapon test to use the actual size, or replace the hard-coded values with caste values? If it is the later, how do I get child and baby sizes? caste_raw only has adult_size.

I think DT here should accurately reflect what actually happens in/is reported by DF.  (Including comments to note the current shortcomings of df is good practice. :) )  Can't help with the data-structures question.

My vague memory is that caste size is used by df for the can equip? question but actual size for the 1h/2h question.*  If you see different results then I am wrong.

Going forward this will be a needed section of code as procgen races (presumably of varying sizes) are expected with the myth-magic release arc.

Edit: * I believe these questions are asked sequentially - which is the explanation for the df bug.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on November 01, 2019, 07:12:55 am
I found the link to the bug in the wiki and added it in the comment (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/175/commits/279a7f26ab798e02ab9482682b81a90be4699a3e).

I did some more tests with adult dwarves and weapons modded using gui/gm-editor (only minimum_size and two_handed are modified).
If the weapon's minimum_size is higher the the caste adult_size, dwarves will refuse to pickup their equipment.
If equipped without a shield, dwarves with a size_base (not size_cur) below the weapon's two_handed value will use multigrasp, others will use only one hand.
If a shield is added in the uniform, all dwarves are able to wield the weapon in a single hand.

This is from looking at dwarves during their "Individual Combat Drill" not actual combat.

two_handed looks more like a preference than a strict constraint or there is bug with the shield (or maybe they are able to equip it, but not really fight with it?).



Wiki says: Using any multi-grasp weapon in a single hand (i.e. with a shield in the other hand) gives you a disability to hit. Do not equip two-handed swords with a shield, for instance.

So equipping shield is not the right way to test. I need to give them only the weapon and check how they hold it. I'll make more test later to be sure I need to use size_base instead of size_cur.



Exact rules are:
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Brightgalrs on November 02, 2019, 05:43:41 am
I recently found the attributes related to the Papermaking and Bookbinding skills. See Bookbinder (https://dwarffortresswiki.org/index.php/DF2014:Bookbinder) and Papermaker (https://dwarffortresswiki.org/index.php/DF2014:Papermaker) on the wiki.

Papermaker and Bookbinder roles can now be created and added to the standard Roles gridview.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Fleeting Frames on November 02, 2019, 06:58:33 am
Could add it here: https://dwarffortresswiki.org/index.php/DF2014:Attribute#Skills_by_soul_attribute

Excellent work though.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on November 02, 2019, 08:16:41 am
What do you think of these roles? Did I get everything?


Code: [Select]
1\attributes\1\id=Spatial Sense
1\attributes\2\id=Kinesthetic Sense
1\attributes\3\id=Agility
1\attributes\size=3
1\name=Bookbinder
1\preferences\1\exact=true
1\preferences\1\item_type=85
1\preferences\1\name=Quires
1\preferences\1\pref_category=4
1\preferences\2\exact=true
1\preferences\2\item_type=85
1\preferences\2\name=Scrolls
1\preferences\2\pref_category=4
1\preferences\size=2
1\skills\1\id=134
1\skills\size=1
2\attributes\1\id=Kinesthetic Sense
2\attributes\2\id=Agility
2\attributes\3\id=Strength
2\attributes\4\id=Spatial Sense
2\attributes\size=4
2\name=Papermaker
2\preferences\1\exact=false
2\preferences\1\mat_reaction=PARCHMENT
2\preferences\1\mat_state=5
2\preferences\1\name=Parchments
2\preferences\1\pref_category=0
2\preferences\2\exact=false
2\preferences\2\mat_reaction=PAPER_SLURRY
2\preferences\2\mat_state=5
2\preferences\2\name=Papers
2\preferences\2\pref_category=0
2\preferences\3\exact=false
2\preferences\3\mat_reaction=PAPER_PLANT
2\preferences\3\mat_state=5
2\preferences\3\name=Paper plants
2\preferences\3\pref_category=0
2\preferences\size=3
2\skills\1\id=133
2\skills\size=1
size=2
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Brightgalrs on November 02, 2019, 12:35:49 pm
Could add it here: https://dwarffortresswiki.org/index.php/DF2014:Attribute#Skills_by_soul_attribute
Good idea.

What do you think of these roles? Did I get everything?
Looks like your missing "book bindings" (the item). It doesn't show up in Therapist until Therapist reads from the game's raws.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: feelotraveller on November 02, 2019, 08:06:35 pm
Good work (all).  :)

Brightgalrs, could you double-check (for me) that creativity is not a relevant attribute for bookbinders.  Should lead to higher quality output, on average, if it is involved, particularly to be seen with dwarfs of a low bookbinding skill.  (A quicker, hackier way, is to see if bookbinding jobs add to raw numbers of the creativity attribute - hacky because it is based on the unproven assumption that jobs/tasks that add points to an attribute are carried out better with higher levels of said attribute.)

Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Fleeting Frames on November 02, 2019, 11:19:34 pm
Independently confirmed papermaking boosts strength, agility, kinesthetic sense, spatial sense via script+farmer's workshop, and same way for then making quires out of these sheets for kinesthetic sense, agility and spatial sense.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on November 03, 2019, 05:49:51 am
Looks like your missing "book bindings" (the item).

I am complete newbie regarding bookbinding. Are book bindings made by the the bookbinder or the crafter for the respective material? If it is the later, do preferences for input items matter?

If book bindings are included, I guess scroll rollers should be too.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: feelotraveller on November 03, 2019, 07:26:58 am
Book bindings are made by crafters.

Last I checked (probably about 40.xx) input item preferences did not matter for quality but did contribute to job satisfaction (at work) - and hence had a minor indirect effect.  I don't think anything has fundamentally changed although I believe that the good thoughts for liked input items have diminished in their power/significance since the introduction of the needs system.

Whether they should be included or not is a open question, probably not would be my suggestion.  (But yes if book bindings then scroll rollers and also thread.)  The argument for non-inclusion is that their effect on the job output is insignificant with respect to material and item (output) preferences.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Fleeting Frames on November 03, 2019, 10:47:51 am
Then it has changed since you last checked: Crafting Statistics 42.06 (http://www.bay12forums.com/smf/index.php?topic=156521.0). Now both item and material contribute to quality, though this is very little once the dwarf is trained.

Of course, that was carpentry.

Granted, in looking at few saves I have, I can find no preferences for book binding and grand total of 1 preference for scroll rollers (a former-child immigrant in the 1500 pop megafortress).
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on November 03, 2019, 11:09:12 am
The question was about input items. I don't think that thread has the answer. For carpentry the question would be: would a preference for logs (if it was possible) improve quality of carpentry/woodcrafting jobs?
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Fleeting Frames on November 04, 2019, 12:14:21 am
Ah, good catch & my bad; don't know then.
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Brightgalrs on November 04, 2019, 07:07:19 am
(A quicker, hackier way, is to see if bookbinding jobs add to raw numbers of the creativity attribute - hacky because it is based on the unproven assumption that jobs/tasks that add points to an attribute are carried out better with higher levels of said attribute.)
Oh boy... do I have some bad news for you. That's exactly how I've been testing it.  :'(
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on November 04, 2019, 08:22:14 am
I made a mistake. Papermaker should not have parchment, it is made by tanners.

As for bookbinder, should they have some material preferences? Paper/parchments material (sheets or quires) are always involved in their work. Book bindings and scroll rollers can be made from a large variety of materials, is it important too? Does thread material has any influence for book making?
Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: feelotraveller on November 04, 2019, 03:47:38 pm
(A quicker, hackier way, is to see if bookbinding jobs add to raw numbers of the creativity attribute - hacky because it is based on the unproven assumption that jobs/tasks that add points to an attribute are carried out better with higher levels of said attribute.)
Oh boy... do I have some bad news for you. That's exactly how I've been testing it.  :'(

That's okay.  8)   Most of the relevant attributes as listed on the wiki have been found using that method.  We'll have to be happy with that barring other tests.

As for bookbinder, should they have some material preferences? Paper/parchments material (sheets or quires) are always involved in their work. Book bindings and scroll rollers can be made from a large variety of materials, is it important too? Does thread material has any influence for book making?

Right, down the rabbit hole of roles (my dear Alice).

No. Off the top of my head these influences are minimal, if they exist at all.  I suggest not including them.  Part of the problem is that even if they have a small/minimal influence their inclusion in the role 'waters down' the effect of the major determinants (Quires, Scrolls, skill level).

The more exacting answer is to test for their influence, and its magnitude.  Beware the depth of the rabbit hole!  (E.g., 'extraneous' variables such as focus, rng, personality.)


Title: Re: Dwarf Therapist v41.1.0 | DF 44.12
Post by: Clément on November 05, 2019, 06:28:52 am
You are right and with material preferences it is too easy to match a material you cannot actually provide. If a stone mason likes stone but it is a stone you don't actually have, it is completely useless.

I created the pull request here: https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/176.
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on November 08, 2019, 10:27:21 am
New version released: 41.1.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.1)

Small fixes and new roles for papermaker and bookbinder.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: DerMeister on November 08, 2019, 11:29:07 am
Why, if I embark with hungry heads, Dwarf The Rapist put them to sapients?
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on November 08, 2019, 11:41:43 am
What are hungry heads? You need to give more details, like how to reproduce your issue and what is expected.

Edit: They are pests. I've never paid attention to them. So you mean you add them as animals in the embark screen, and DT show them in the citizen view?

They are missing the trainable token, so they are not added to the animal tab and stay in the default citizen one.

Did you mod the game to be able to embark with them? In which unit tab does the game display them?
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: DerMeister on November 08, 2019, 12:20:34 pm
What are hungry heads? You need to give more details, like how to reproduce your issue and what is expected.

Edit: They are pests. I've never paid attention to them. So you mean you add them as animals in the embark screen, and DT show them in the citizen view?

They are missing the trainable token, so they are not added to the animal tab and stay in the default citizen one.

Did you mod the game to be able to embark with them? In which unit tab does the game display them?
Pests? I remake them into cats analogue.

A lot of pets are not trainable. But they shown as animals.

I mod the game, but more than one change. Hungry heads ingame are normal livestock and shown as livestock.
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on November 08, 2019, 12:40:44 pm
I had to check, "trainable" in DT actually means TRAINABLE_HUNTING or TRAINABLE_WAR or PET or PET_EXOTIC.

So the current definition of an "animal" in DT is: (not CAN_LEARN) and (TRAINABLE_HUNTING or TRAINABLE_WAR or PET or PET_EXOTIC).

How did you modify them? Are they tamed? Maybe I could add a check for the "tame" flag.

If you want to check the "tame" flag in dfhack, select the unit in v mode or the u unit list, and use ":lua !dfhack.gui.getSelectedUnit().flags1.tame" in dfhack console.
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: PatrikLundell on November 08, 2019, 01:45:29 pm
DerMeister is hacking around trying to play goblins with changes all over the place and then asks questions about what happens in his particular world, as well as demanding that others makes scripts and plugins for his specific uses. Apparently he's got no programming knowledge (or knowledge of what's reasonably possible to hack, based on some comments), so all his modding is presumably raw hacking.
Note that goblins gain animals based on them being "evil" rather than the standard method used for the dorf  and humie races (how are elven tamed exotic animals tagged? Are all of them PET_EXOTIC?), which means that the flags DT checks for probably aren't set. When in the weirdo mod territory, Kobolds have poisonous non mammals as pets, but I don't know whether there's a restriction to PET_EXOTIC or not.

Checking for "tame" would make sense, though (What happens currently if a tamed animal reverts to wild? Is its civ allegiance removed?).

While Hungry Heads may well be considered "pests" they're still animals as opposed to vermin in DF terms.
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on November 08, 2019, 02:15:09 pm
"Pests" is what the wiki (http://dwarffortresswiki.org/index.php/DF2014:Hungry_head) is calling them. But it is apparently nothing special, I was confusing it with vermin.

So the definition of an animal depends on the player civilization. That would make supporting mods more difficult. Is it something that can be found in raws? or is it hard-coded? Is it because of the USE_CAVE_ANIMALS (http://dwarffortresswiki.org/index.php/DF2014:Entity_token#USE_CAVE_ANIMALS), USE_EVIL_ANIMALS (http://dwarffortresswiki.org/index.php/DF2014:Entity_token#USE_EVIL_ANIMALS), ... tokens? Wiki says they still need a PET token or similar if I understand correctly.

DT may be missing checks for PACK_ANIMAL, WAGON_PULLER, MOUNT, MOUNT_EXOTIC (but I guess they usually imply one of the other tokens).

What does "evil" means for goblin animals? The hungry heads don't have the EVIL token (except if DerMeister added it).



By adding:
Code: [Select]
[ANIMAL]
[ANIMAL_CLASS:POISONOUS]
[ANIMAL_FORBIDDEN_CLASS:MAMMAL]
[ANIMAL_NEVER_MOUNT]
[ANIMAL_NEVER_WAGON_PULLER]
[ANIMAL_NEVER_PACK_ANIMAL]
[ANIMAL_ALWAYS_PET]
[ANIMAL_ALWAYS_SIEGE]
[ANIMAL_ALWAYS_PRESENT]
to [ENTITY:MOUNTAIN] (based on kobold animals but with ANIMAL_ALWAYS_PRESENT added), I was able to embark with cave floaters. Like hungry heads, they are lacking pet tags and DT fails to sort them. This is one way to reproduce DerMeister issue.

I checked with dfhack the cave floaters are tame and their training_level is Domesticated.

Is there any knowledge about how exactly the game fills the pets/livestock unit list screen? If I find the time I could try to read the assembly code.
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: PatrikLundell on November 08, 2019, 07:13:24 pm
I don't know how DF does it, but as far as I know all fortress members are placed in one of the Units, Animals, or Dead tabs (the names may be off, and the Dead one also adds dead non fortress members).

I'd expect a unit to show up in either of the Units or Animals tabs if it belongs to the fortress and isn't dead (ghosts are not dead in this regard, they're just not alive).
Beyond that, I expect units to end up in the Animals tab if they're marked as Trained at any level above wild. Note that this causes Gremlins to end up on the Animal tab (as well as on the animals stock screen, where they can be marked for butchering).
However, I (and I'd expect others who engage in training sapients) definitely prefer DT to allow you to control your intelligent "pets" as normal citizens, which means that intelligence would override training.
Caged creatures that are not tamed (i.e. fully wild, which includes "normal" sapients such as gobbos) show up on the Others unit tab and move after training, but trainable animals show up on the Animals stock screen (which is reasonable, as that's where you order them to be trained if you don't do that directly on the unit itself [and I don't think you can reach that option if it's caged]). I'd expect chained animals to behave the same as caged, but I rarely use chains. I don't think there are any further options beyond cages and chains to have wild animals under control, and I don't know how they're displayed while in transit between one cage/chain and another (a period during which they can potentially break free).

Much guesswork above...

Edit:
I think the tags controlling HOW creatures can become tame are irrelevant to how DF treats them once they are tamed (to some level).
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on November 10, 2019, 07:05:56 am
Code from 0xab6c6a in 0.44.12 linux64, looks like this:
Code: [Select]
                    if (unit->flags1.inactive)
                        edx = Dead;
                    else if (!sub_F61B70(unit))
                        edx = Others;
                    else if (is_pet(unit->race, unit->caste) || unit->enemy.undead != 0)
                        edx = Livestock;
                    else if (unit->enemy.caste_flags.has_flag(CAN_SPEAK))
                        edx = unit->curse.rem_tags1.CAN_SPEAK ? Livestock : Citizens;
                    else if (unit->curse.rem_tags1.CAN_SPEAK)
                        edx = Livestock;
                    else
                        edx = unit->curse.add_tags1.CAN_SPEAK ? Citizens : Livestock;
                    if (edx != current_page && !(current_page == Dead && unit->flags3.ghostly))
                        continue; // skip unit for this page

I did not check sub_F61B70 in details, I assume it is some kind of loyalty check. is_pet only checks PET and PET_EXOTIC. I am surprised by the CAN_SPEAK flag instead of CAN_LEARN. Can someone double check I am counting correctly?
Code: [Select]
.text:0000000000AB6D60                 mov     rdx, [rax+unitst.enemy.caste_flags.ptr]
.text:0000000000AB6D67                 test    byte ptr [rdx+7], 2
Code: [Select]
.text:0000000000AB6D71                 movzx   edx, byte ptr [rax+(unitst.curse.rem_tags1.bitfield+3)]
.text:0000000000AB6D78                 and     edx, 1
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: ZayZe on November 23, 2019, 10:52:21 pm
I know this has probably been asked, but is there a dark theme planned for this awesome program?

I've googled it, it's been mentioned, but inquiring once more. :P
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on November 25, 2019, 08:35:23 am
Not really planned to be included in DT itself, but I try to keep DT compatible with a wide variety of themes.

On Linux, if you use a version built for your distribution (not the appimage) it should use your current theme.

On Windows you will need to add style plugins. Since I could not find any on the web, I built a couple of experiments (http://www.bay12forums.com/smf/index.php?topic=168411.msg7819376#msg7819376), that clinodev re-uploaded on DFFD (http://dffd.bay12games.com/file.php?id=14593). You will need to pass command line parameters to force a given style, until I finish this patch (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/132).
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on November 29, 2019, 09:42:46 am
I was thinking about what could be improved to track sources of stress in DT. I started by studying how DT compute stress effects from emotions: currently it is mostly 0 because emotion strength is most of the time 0. The wiki doesn't contradict DT formula: (http://dwarffortresswiki.org/index.php/DF2014:Emotion) "This thought strength is then divided by the numbers given in the table. [...] The "strength" denotes the effect the emotion has on a dwarf's stress levels".

Is this information out-dated? Are df-structures fields incorrect? Or are the emotions not the main source of stress level changes?
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: PatrikLundell on November 29, 2019, 11:18:19 am
As far as I know zero strength stress thoughts are suppressed from the unit thought screen, presumably because they are irrelevant.

However, even though the lists can get fairly long, I think the stress level isn't the sum of the thoughts in the list, but rather the last 700 or so thoughts that have affected the current level, but without knowing what the level was at the thoughts list cutoff, you can't compute the current level, just the adjustment over that period, i.e. thought effects aren't dropped after some time, but have to be countered by equally strong effects in the other direction. Note that this is how I think it works, not something that's been established.

It may even be that the culling of the list might be guided not only by time, but also by the need to keep thoughts that may be relived/remembered somewhere (like the very important trauma of being rained upon 10 years ago while arriving to the fortress). Note that this is pure speculation: I haven't looked at the age of the entries in the thoughts list.
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on November 29, 2019, 12:54:06 pm
I don't think zero strength is the criteria for suppressing the thought or the screen would be empty or nearly empty. I think DT is currently correct when suppressing thought with "None" thought type. And some of those "empty" thoughts have non-zero strength (Urist did not feel anything after nothing, but strongly).
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: PatrikLundell on November 29, 2019, 04:36:14 pm
Yes, I did mis-remember things. Strength is used to sort the printed emotions, with more recent emotions listed above older ones on a strength tie. As you say, emotions that are None are the ones that are suppressed.
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on November 30, 2019, 12:18:01 pm
I think I understand why the strength is almost always 0. The very tick the thought happens the strength in non-zero but after it is only kept for the thought screen and the strength becomes 0. Some thoughts like rain happen over a period of time, the strength is non-zero for the duration of the thought but may vary over time.

Sadly, this means that I cannot find the most impactful past thoughts because their strength is always 0.
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Flying Teasets on November 30, 2019, 07:17:05 pm
Why'd you remove the noble aptitude section from roles?
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: feelotraveller on November 30, 2019, 08:57:36 pm
Can confirm the issue.  Was not able to locate the source of the problem on a quick look. 

Edit: think the issue is with
Dwarf-Therapist/resources/default_gridviews.dtg
line 1339 7\sets\size=17
(needs to be incremented to size=18 for the extra set)
[Confirmed by making the change and rebuilding, my git phobia/ineptitude prevents me from making a pull request  ;)]

It was not done deliberately but came about with the adding of the papermaker/bookbinder roles.

As a workaround until the fix arrives make a copy of the roles gridview: Windows -> Docks -> Gridviews, right-click 'Roles' in new dock to copy, then right-click new Roles(copy) and edit.  Right-click in 'Sets in view' box and 'Add new set' (can right click on new set to change name and/or colour but don't need to).  Make sure new set is selected (left-click) then right-click on 'Columns in Set' and from drop down go roles -> A-D -> Appraiser.  Repeat for Bookkeeper, Broker, Lawdwarf, Leader and Manager.  Once done hit OK on bottom right and you should be good to go with your new custom gridview (roles + admin group added back in).  Can delete this gridview later once the bug is fixed.
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on December 01, 2019, 05:12:34 am
Thanks feelotraveller, I created the PR (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/180).
Title: Re: Dwarf Therapist v41.1.1 | DF 44.12
Post by: Clément on December 01, 2019, 05:52:03 am
I think I understand why the strength is almost always 0. The very tick the thought happens the strength in non-zero but after it is only kept for the thought screen and the strength becomes 0. Some thoughts like rain happen over a period of time, the strength is non-zero for the duration of the thought but may vary over time.

Sadly, this means that I cannot find the most impactful past thoughts because their strength is always 0.

A small correction: the emotion strength stays non-zero for a little while (a few hundreds ticks) after the emotion date has stopped updating. It is still useless for long term stress diagnostics.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on December 19, 2019, 09:04:15 am
New version released: 41.1.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.2)

Changelog:
The windows builds now include two dark styles from here (https://github.com/cvuchener/DarkStyle) and here (https://github.com/cvuchener/fusiondark). Tell me which one is best, I don't there is the need to keep the two of them. You should restart DT after changing the style or it may not be applied correctly.

Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: sunhear on December 27, 2019, 03:30:23 pm
All,

I am trying to get a working  copy of dwarf therapist. I posted on an thread to get some help. some one suggested I post it on this thread to get some help. here is a recap.

In the past I could just down load the windows copy and it worked.

I have Lazy newby Pack (python version) of DF.

I downloaded DT as usual. I  extracted, installed and launched DT, however it would not connect to an already loaded fort.

I have tried several times.

I am trying to make sure i get the right version. I down loaded the one from this link: http://dffd.bay12games.com/file.php?id=13095

I am putting it in the same place as DF which is the place i think it need to be to work.

I have tried to purge all previous attempts/ copies of DT to try and make sure I don't launch the wrong copy.

can you please help me to get a working copy DT? I am at the point where originating my dwarfs will become critical.

Specifics
operating systems:  windows 10 64 bit
dwarf fort version: 0.44.12
LNP version: PyLNP .13b Lazy Newb Pack Edition

link to old post:http://www.bay12forums.com/smf/index.php?topic=175116.msg8061288#msg8061288

Thanks in advance
sunhear

Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on December 27, 2019, 03:56:18 pm
I guess you are using PeridexisErrant's pack. PyLNP is only the launcher used in the packs.

Check C:\Users\<your username>\AppData\Local\Dwarf Therapist\log\dwarftherapist.log for errors or warnings.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: sunhear on December 27, 2019, 05:19:34 pm
I have purged the log in my last attempt. I did not think of looking before. should I try it again and look at the log?
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on December 28, 2019, 06:03:56 am
Yes, don't worry they are created again each time you start DT.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: sunhear on December 29, 2019, 07:21:33 pm
Ii got it to work this time. I reinstalled I and was able to connect DT to DF after opening. I let you know if i have any more trouble.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: SammyLiimex on February 01, 2020, 10:47:04 am
New DF Version out.  Is this being updated yet?
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: PatrikLundell on February 01, 2020, 10:54:43 am
No. DT can't be updated until the offsets it requires are known, and that's something that's typically part of the DFHack update process (the earlier part of it). You can be sure tool developers are going to announce when their tools have been updated, and just as sure that they won't know how long it will take before it's done.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on February 02, 2020, 04:34:39 am
Experimental memory layouts for 0.47.01:
They are not finished yet, expect some issues.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Erendir on February 02, 2020, 11:20:48 am
Experimental memory layouts for 0.47.01:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win64.ini)

They are not finished yet, expect some issues.

Thank you so much! (It turns out the only thing I can't properly use in vanilla is labor management. I mean, even 7 dwarves was a strain, after 20 I just gave up. Managing, not playing.)
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Alatun on February 02, 2020, 01:24:09 pm
Experimental memory layouts for 0.47.01:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win64.ini)

They are not finished yet, expect some issues.

Thank you so much! (It turns out the only thing I can't properly use in vanilla is labor management. I mean, even 7 dwarves was a strain, after 20 I just gave up. Managing, not playing.)

I strongly agree with Erendir. Labor management in vanilla is a PITA.

Thanks again.

Just did a basic test and it works so far (only tried reading stuff so far). But even that is worth so much!
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Buttery_Mess on February 02, 2020, 03:06:12 pm
Fantastic! It was starting to get finicky. Thanks guys
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Inatun on February 02, 2020, 04:02:05 pm
I'm confused. When I click on one of the links I get taken to another web page with a bunch of code on it. How do I use that to get the actual program running?
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Bumber on February 02, 2020, 04:11:35 pm
I'm confused. When I click on one of the links I get taken to another web page with a bunch of code on it. How do I use that to get the actual program running?
You should be able to right-click the link and choose "Save As".
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: clinodev on February 02, 2020, 04:13:06 pm
I'm confused. When I click on one of the links I get taken to another web page with a bunch of code on it. How do I use that to get the actual program running?

I wrote a short Windows64 guide over on reddit that might help you, and someone has added MacOS instructions: https://www.reddit.com/r/dwarffortress/comments/exmmjy/xdwarf_therapist_experimental_memory_layouts_for/
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Alatun on February 02, 2020, 04:14:10 pm
I'm confused. When I click on one of the links I get taken to another web page with a bunch of code on it. How do I use that to get the actual program running?

DT needs to know the so called "memory layout" of the dwarfs (and other objects). The files above describe the memory layout for the named platforms.

Locate your DT folder. There must be a subfolder called memory_layouts. It contains more subfolders, one for each platform
(linux,osx,windows). E.g. if you are running the 64-bit Windows version of DF you should take the file from the link "Windows 64 bits" and save it to you disk.

Most likely it will be called "v0.47.01_graphics_win64.ini.txt". Rename the file to "v0.47.01_graphics_win64.ini" and copy it the "memory_layouts\windows" folder of DT. That's all.

If you are running a different platform, use the corresponding files.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Astrobia on February 02, 2020, 10:22:38 pm
Experimental memory layouts for 0.47.01:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win64.ini)

They are not finished yet, expect some issues.

Truly a hero among dwarves. Long may your legend reign.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on February 03, 2020, 05:30:21 am
Experimental memory layouts for 0.47.01:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win64.ini)

They are not finished yet, expect some issues.

Updated. It should fix item material on all platform except win64 (it already worked), and historical figure (e.g. deity names).
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: vanguze on February 03, 2020, 01:51:18 pm
Experimental memory layouts for 0.47.01:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.01_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.01_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.01_graphics_win64.ini)

They are not finished yet, expect some issues.

Updated. It should fix item material on all platform except win64 (it already worked), and historical figure (e.g. deity names).

Seems good, thank you sir!
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: E_RedStar on February 06, 2020, 05:17:52 am
The new memory bindings are not working for me on Linux 64 bit. I put the ini file on ~/.local/share/dwarftherapist/memory_layouts/linux with the same name, extension, etc... And I get the following error on Dwarf Therapist:

Memory Layout error
Unable to init SSL

Context:
Click here to go to the project home page. Navigate to share/memory_layouts to manually update.

Here's the output when runnning from the terminal:
https://pastebin.com/Pp9b66hc (https://pastebin.com/Pp9b66hc)

Note that I removed my home folder name (personal info), and that my system is in Spanish, so when it says ""Operaci?n no permitida" it means "Operation not allowed".

Thanks for the effort!



Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on February 06, 2020, 05:49:49 am
It does not look like it is related to the memory layout. What is your distribution? Did older version work? What is the output of "sysctl kernel.yama.ptrace_scope"?
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: E_RedStar on February 06, 2020, 06:45:11 am
I'm on pop OS 19.10 (which is based on Ubuntu), on kernel version 5.3.0. I haven't used an older version, because it's a recent install, and I hadn't tried DF until now. The output of sysctl kernel.yama.ptrace_scope is 1.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on February 06, 2020, 08:20:57 am
Either disable ptrace_scope globally: "sudo sysctl kernel.yama.ptrace_scope=0" for immediate change, or edit /etc/sysctl.d/10-ptrace.conf for a permanent change after reboot.

Or keep ptrace_scope enabled and allow everyone to attach to df, using this script (https://raw.githubusercontent.com/Dwarf-Therapist/Dwarf-Therapist/master/dist/ptrace_scope/patch_df_ptracer).
Code: [Select]
sudo apt install gcc
cd ~/Documentos/Juegos/LinuxDwarfPack-0.47.01-r1/df_47_01_linux
wget https://raw.githubusercontent.com/Dwarf-Therapist/Dwarf-Therapist/master/dist/ptrace_scope/patch_df_ptracer
chmod +x patch_df_ptracer
./patch_df_ptracer .
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: E_RedStar on February 06, 2020, 01:05:35 pm
Yes, that was it! Thank you!
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Inatun on February 06, 2020, 02:40:09 pm
I followed all the instructions in the reddit post for adding the new memory layout, but I'm still getting an error when I try to connect to a fort. It just tells me it doesn't know how to talk to this version of DF and says checksum:0x5e3118b6

Edit: I'm using Windows 64-bit
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on February 07, 2020, 04:49:56 am
The "checksum" is the correct one, so you must have installed the memory layout in the wrong location, or picked the wrong link.



Experimental memory layouts for 0.47.02:
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: clinodev on February 07, 2020, 04:54:16 am


Experimental memory layouts for 0.47.02:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.02_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/linux/v0.47.02_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.02_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/osx/v0.47.02_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.02_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/0.47.01-memory-layouts/share/memory_layouts/windows/v0.47.02_graphics_win64.ini)

Looks good so far, Win64!
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Will_Tuna on February 07, 2020, 06:07:05 am
Where can we put the memory layouts file in Linux if we have an AppImage?
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on February 07, 2020, 08:01:10 am
~/.local/share/dwarftherapist/memory_layouts/linux

/usr/local/share/dwarftherapist/memory_layouts/linux may work too, but I'm not sure (I don't remember if appimage replace XDG_DATA_DIRS or extend it).
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: jecowa on February 08, 2020, 06:07:47 am
On Mac OS, experimental 0.47.01 works for me, but not experimental 0.47.02.

Is there a way to get that cool dark mode for Mac?
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on February 08, 2020, 06:22:30 am
On Mac OS, experimental 0.47.01 works for me, but not experimental 0.47.02.
It worked for another user (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/185#pullrequestreview-355040608). How does it fail exactly? Cannot connect? Fortress not loaded? Invalid data?
Is there a way to get that cool dark mode for Mac?
Yes, but it is complicated (at least for OSX newbie and not-user like me). It would be better if it could work with OSX default style dark mode (https://support.apple.com/en-us/HT208976).
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: jecowa on February 08, 2020, 07:19:36 am
It says:

   Unable to locate a running copy of Dwarf
   Fortress, are you sure it's running?
   
   Please re-connect when Dwarf Fortress has
   been started and a fort has been loaded.

Oh, I figured it out. It didn't like that I renamed my "dwarfort.exe" to "Dwarf Fortress".
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: neobit on February 09, 2020, 08:34:35 am
I'm using df_47_02_win and v0.47.02_graphics_win64.ini.
Currently fortress has 76 dwarfs but DT shows only 65 of them.

Any idea what could be wrong?
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Clément on February 09, 2020, 08:40:22 am
Try change "Don't Display Visitors/Guests" in the options, do they appear? Read the log (File → Open log directory), any error or warning? Do you see the missing dwarves in the log and the reason they were hidden?
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: neobit on February 09, 2020, 08:56:54 am
Actually that was the other don't display, 'Dont display children or babies'.
And that helped! Thanks.
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Flying Teasets on February 09, 2020, 04:54:36 pm
PTW
Title: Re: Dwarf Therapist v41.1.2 | DF 44.12
Post by: Naryar on February 10, 2020, 04:30:52 am
The Win64 memory layouts for the latest version are working for me so far. Haven't encountered any issues so far, but I also use DT in a very simple way. Will post if I find some.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 12, 2020, 09:29:11 am
New version released: 41.1.3 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.3)

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: nxsnexus on February 12, 2020, 06:26:22 pm
It works really well for me on Catalina, thank you very much!
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: GatoGamer887 on February 12, 2020, 06:27:21 pm
On Linux versions with newer OpenSSL versions (>1.0.0 I think), running Dwarf Therapist from the AppImage will crash. However, building from source will allow it to work.
Here is the log from the AppImage:
Spoiler (click to show/hide)
I am using Fedora 30.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: sly on February 13, 2020, 01:29:49 am
not connecting ("a fort has not been loaded") for me on df 0.42.07 with the 41.1.3 appimage on Manjaro Linux. tried both with and without the most recent unstable dfhack build.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 13, 2020, 04:30:51 am
On Linux versions with newer OpenSSL versions (>1.0.0 I think), running Dwarf Therapist from the AppImage will crash. However, building from source will allow it to work.
Here is the log from the AppImage:
Spoiler (click to show/hide)
I am using Fedora 30.

Not an issue for me on Fedora 31. But there are other issues with gtk and this build thinks it is 41.1.2 although it does contain the new memory layouts.

Anyway I would not recommend using the appimage if you are able to compile it yourself or use a package built for your distribution (I have my own repository for Fedora (https://copr.fedorainfracloud.org/coprs/cvuchener/Dwarf-Therapist/) and there is an (outdated) package on rpmfusion (https://admin.rpmfusion.org/pkgdb/package/nonfree/dwarftherapist/)).

not connecting ("a fort has not been loaded") for me on df 0.42.07 with the 41.1.3 appimage on Manjaro Linux. tried both with and without the most recent unstable dfhack build.

Did it use to work with the previous versions? What is the value of ptrace_scope? AUR packages (https://aur.archlinux.org/packages/dwarftherapist/) work on Manjaro too, don't they?
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: PeridexisErrant on February 13, 2020, 05:53:34 am
New version released: 41.1.3 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.3)
...
added memory layouts for DF 0.47.01 and 0.47.02

Psst, updating max_df_version in your manifest.json would save me from manually checking ;D

Thanks for your amazing work on this!
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 13, 2020, 09:55:59 am
Sorry, I forgot about this file since I don't have to update the DT version manually for each release. It is fixed now (https://github.com/Dwarf-Therapist/Dwarf-Therapist/commit/e2a839cbf2178e5a9dfd982237f7d9dd42856506) (I changed df_max_version instead of max_df_version, I hope it is okay).
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 14, 2020, 05:56:48 am
I am testing a new build environment for the Linux AppImage (Ubuntu Xenial + Qt 5.12). You can download it here. (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-25458a0fd3035a6bceb9/DwarfTherapist--linux-x86_64.AppImage) Please tell me if it works on your distribution, old or new.

Edit: And also try this alternative version without the pre-gcc5 compatibility stuff (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-bc61f0ccaf819bfe8308/DwarfTherapist--linux-x86_64.AppImage).
Edit2: Another version with the dark style plugins I already added on Windows (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-051c35c104e9b5d53cbd/DwarfTherapist--linux-x86_64.AppImage)
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Porpoisepower on February 15, 2020, 10:05:59 am
Is anyone besides myself interested in Therapist for the old 2D version? 

I like to play classic every once in a while ;)
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: feelotraveller on February 15, 2020, 07:51:53 pm
I think for a version that far back your limited options are:

Dwarf Foreman, one of the forerunners of therapist, included in this collection http://dffd.bay12games.com/file.php?id=1098 (http://dffd.bay12games.com/file.php?id=1098) or
Dwarf Manipulator http://dffd.bay12games.com/file.php?id=2248 (http://dffd.bay12games.com/file.php?id=2248) (similar to what is included currently in DFHack)

Without speaking for Clément I would suggest that putting in the effort to code up support for such an old version is not worthwhile.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 17, 2020, 04:49:14 am
Experimental memory layouts for 0.47.03:
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: clinodev on February 17, 2020, 05:11:33 am
Looks good so far, Win64.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: nxsnexus on February 17, 2020, 07:22:06 am
It's working on macOS X 64bits (Catalina) so far.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: urmane on February 17, 2020, 09:45:32 am
I'm trying to rebuild my linux package for the last version of ye olde Masterwork DF, which is based on DF 34.11.  I've got that working, but it appears I need to use a modern DT, as I'm on a 64bit machine and the DT in my old package wants 32bit Qt5 libs, and "you can't get there from here".

I have an old 34.11.ini file with the correct checksum, and it almost works - the labors look correct, but it throws a lot of "Bad address" errors and the names/attrs are incorrect.

Is it possible for a current(ish) 64bit DT to support a 32bit 34.11 DF?  If yes, how would you suggest I proceed?
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 17, 2020, 10:44:29 am
Some fields may have changed names, others did not exists at the time (I don't know if any of them is essential). Compare the dfhack scripts to see what changed. Fix what you can and ignore the rest.

You will also need to modify the game_data.ini file (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/resources/game_data.ini).

After all that, I'm still not sure you will get something working. 0.34.11 was a long time ago and I did not maintain this version. If you need to change code, it may be easier to port an old version of DT to 64 bits instead of porting the current version to 0.34.11.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Porpoisepower on February 17, 2020, 03:24:09 pm
Thanks!

I think for a version that far back your limited options are:

Dwarf Foreman, one of the forerunners of therapist, included in this collection http://dffd.bay12games.com/file.php?id=1098 (http://dffd.bay12games.com/file.php?id=1098) or
Dwarf Manipulator http://dffd.bay12games.com/file.php?id=2248 (http://dffd.bay12games.com/file.php?id=2248) (similar to what is included currently in DFHack)

Without speaking for Clément I would suggest that putting in the effort to code up support for such an old version is not worthwhile.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: jecowa on February 17, 2020, 05:13:20 pm
Experimental memory layouts for 0.47.03:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/linux/v0.47.03_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/linux/v0.47.03_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/osx/v0.47.03_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/osx/v0.47.03_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/windows/v0.47.03_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/windows/v0.47.03_graphics_win64.ini)

OSX 64-bit works for me. Thanks for the quick update!
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: revenant on February 18, 2020, 07:49:03 am
Hi Clément,
first of all, my congratulations for your master work: for me it's a cornerstone, and I can't really do without it for handling large-sized forts.

One item to your attention, if I may: the latest version working with mac osx 10.11.6 (El Capitan) seems to be DT 41.0.2, all of the following ones just bounce the icon a couple of times, then shut down/disappear.

Could it be some compiler backwards-incompatibility, maybe? ie old os versions missing libraries, or the such?

I'm now testing the newly released DF 47.xx, and I would rely on your courtesy if you would mind giving this issue a glance and -possibly- make DT 41.1.3 compatible with the osx version that I need to run (unfort., no ways to upgrade on my old mac).

Warm Thank You for that, in advance!
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 18, 2020, 08:48:16 am
Compiler support is set to 10.9. The breaking change in 41.1.0 was the Qt version update. Recent versions of Qt does not support old macOS and older versions does not support newer macOS. It could be possible to make two different builds but homebrew only provides the latest version of Qt (5.14 currently). When I first asked about this issue (http://www.bay12forums.com/smf/index.php?topic=168411.msg7934444#msg7934444), no one cared (not many read this thread when there is no new releases of DF). Apple is not making it easy for developers, especially if you don't own a mac. I need help from mac users to fix mac issues.

It is currently possible to compile with old versions of Qt5. Qt 5.2 is currently tested by the CI, but I am planning to update the linux builds to fix bugs from the old versions. And I may do the same with Windows too. Without tests, I may break compatibility with old Qt in the future, so it would be best to have a solution involving a CI (travis or another, whatever can be done for free).

For reference:
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: revenant on February 18, 2020, 11:09:50 am
Gotcha. Sorry for missing your ask on this issue, I'm occasionally on this forum and I was not mindful of the topic at the time of your request.

So, I seem to be left with 3 options: ignoring the new release and keep on playing with DF 44.12; learn to compile myself, at the risk (if I well understand you) to remain stuck because homebrew won't make Qt 5.9 accessible for me anymore); upgrade my iMac, which seems unlikely in the short term as it still rocks!

Would the second option be worth exploring, in your opinion? Any major roadblocks I should watch out for, just impossible as of today, or possible if some items deserving particular care are correctly handled? Your advice, most welcome.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 18, 2020, 12:29:15 pm
Best solution is to compile it yourself and share the result. I don't think you will be able to use homebrew but you could try with with the official installer (http://download.qt.io/official_releases/qt/5.9/5.9.9/qt-opensource-mac-x64-5.9.9.dmg). It is sadly not practical to install for automated builds, but it should be easy enough to install on your desktop.

If you find a way to automate that, please share.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: jecowa on February 18, 2020, 04:05:02 pm
Here's what I know about compatibility.

Latest Dwarf Therapist versions compatible with Mac OS X versions.
• Mac OS X 10.5 Leopard-Dwarf Therapist v36.0.0
• Mac OS X 10.9 Mavericks-Dwarf Therapist v41.0.2
• Mac OS X 10.12 Sierra-Dwarf Therapist current version (v41.1.3 at this time)

Notes:

Mac OS X 10.5 Leopard is the oldest version of MacOS that Dwarf Fortress will run on, so didn't bother checking earlier versions of Mac OS X than this.

Dwarf Therapist v36.0.0 does not seem to be compatible with the latest memory layout format and only has working memory layouts up through Dwarf Fortress v0.44.12 (32-bit). (Dwarf Therapist v39 was the first 64-bit compatible Dwarf Therapist, and requires Mac OS X 10.9 Mavericks.)

Dwarf Therapist v41.0.2 needs experimental memory layouts placed in the ~Library/Application Support/Dwarf Therapist/memory_layouts/osx/ folder. It will still run the latest memory layouts for the latest versions of Dwarf Fortress.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: wizardom on February 19, 2020, 01:22:08 am
Experimental memory layouts for 0.47.03:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/linux/v0.47.03_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/linux/v0.47.03_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/osx/v0.47.03_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/osx/v0.47.03_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/windows/v0.47.03_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/windows/v0.47.03_graphics_win64.ini)

Windows 64-bit works for me. Marvelous work! Thank you so much!
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 22, 2020, 07:58:30 am
Does someone have a save with a werebeast? There is a missing offset that will prevent DT to show the werebeast type.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Omrist on February 23, 2020, 10:50:37 am
Experimental memory layouts for 0.47.03:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/linux/v0.47.03_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/linux/v0.47.03_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/osx/v0.47.03_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/osx/v0.47.03_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/windows/v0.47.03_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/windows/v0.47.03_graphics_win64.ini)

 :o :o :o

thanks a ton!
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: PatrikLundell on February 23, 2020, 11:45:15 am
Does someone have a save with a werebeast? There is a missing offset that will prevent DT to show the werebeast type.
I've got a 0.44.12 save with a caged (inactive) were which I've looked at in 0.47.12 to try to figure out (unsuccessfully) why fields are wrong in curse_wounds (wrong in 0.44.12 as well). Do you know what field you're looking for in DF structure terms, or is that of no use for you?
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 23, 2020, 12:04:16 pm
DT uses creature_interaction_effect_body_transformationst.race which was removed in this commit (https://github.com/DFHack/df-structures/commit/c18cbeb28a8fb4f67e63db0547ac4b221c6903b6). It is not something really important, it is only used when cheating to show curses and it should show "werebeast" without giving the race because of the missing offset (there is already a fallback for older versions). I may make a 0.47.03 release anyway if I cannot fix it soon.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: PatrikLundell on February 23, 2020, 12:50:05 pm
You can find it through a bit of referencing:
- df.global.world.raws.syndromes.all [unit.syndromes.active
- syndrome.ce
- ce.race_str gives the creature_id string for the creature, and ce.caste_str give the string for the caste.
- Searching for the string (ugh!) should let you find the race.

Logically, there ought to be a numeric race id in the syndrome, but it if there is one it hasn't been located. Hacking these strings on my were caused it to transform into a weresquirrel anyway, but without the wound it should have gotten, so somewhere there is unmapped info on what the creature race is.

Edit: Note that the syndrome data is in the active vector even when the were is not transformed (I looked at my were when writing the above).
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: hagger on February 23, 2020, 12:52:36 pm
Experimental memory layouts for 0.47.03:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/linux/v0.47.03_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/linux/v0.47.03_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/osx/v0.47.03_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/osx/v0.47.03_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/windows/v0.47.03_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts-0.47.03/share/memory_layouts/windows/v0.47.03_graphics_win64.ini)

Not sure if anyone's chimed in on this, but seems fine for Linux 64 bit.

Can dig out my 32 bit hackbook to check linux 32 bit if you like :)
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: PatrikLundell on February 23, 2020, 05:18:05 pm
Some mapping detective work resulted in the discovery of where were numeric race and caste info was hidden in the syndrome, but the changes haven't been reviewed or approved yet.
Anyway, race is found in a vector that was previously labelled as a pointer, with caste sort of going into the next vector (also previously labelled as a pointer). "Sort of" means the vector is empty for weres, as they're all asexual with only the default caste. To get a non default caste (such as a male), that vector needs an element, presumably with the caste number (that's what I tried), but I guess you're only interested in the race anyway. While turned, the unit's caste and sex fields match the were one, as does the race (of course).
Note that you still have to go via the syndrome index, but don't have to do a string search.
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: Clément on February 24, 2020, 06:50:22 am
Thanks, I've made the changes (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/188/commits/4ddffdd9b5e082565b99eebf89c8b58bdf8502f9) accordingly. But it is still not tested, since I don't have a werebeast. Is there a way to easily create one in Fortress mode?
Title: Re: Dwarf Therapist v41.1.3 | DF 47.02
Post by: PatrikLundell on February 24, 2020, 08:05:07 am
Here's a dropbox link to my save https://www.dropbox.com/s/2vgq1cii71cjqz5/Newhope.zip?dl=0 (https://www.dropbox.com/s/2vgq1cii71cjqz5/Newhope.zip?dl=0)
 It's from 0.44.12 and I use it in 0.47.12 as a reference. The were is a caged elf found with f4 (and on the "other units" list, past the merchants. The were turns on the 17:th, so it's a bit of thumb twiddling to get there. A message about starvation stops the time at the 15:th, but there may be a mood in between.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on February 28, 2020, 11:55:08 am
New version released: 41.1.4 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.4)

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on February 29, 2020, 04:59:50 am
I also updated the alternative experimental appimage (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-3e9286df1cebe8d5972e/DwarfTherapist--linux-x86_64.AppImage) (built on Ubuntu Xenial with Qt 5.12). If no one complains this will be what I will use in the future.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 01, 2020, 04:43:11 am
Experimental memory layouts for 0.47.04:
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: ZayZe on March 01, 2020, 04:56:08 am
Experimental memory layouts for 0.47.04:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/linux/v0.47.04_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/linux/v0.47.04_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/osx/v0.47.04_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/osx/v0.47.04_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/windows/v0.47.04_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/windows/v0.47.04_graphics_win64.ini)

Thanks for keeping this up to date over the years! :) A must have until the graphics update I'm sure... You made this game playable. Thank you.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: RoboLuddite on March 01, 2020, 04:58:26 am
Clément, I've logged in to the forums for the first time in years just to say you're a legend. I can't believe that you're able to pump these out within just a few hours of the release.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: clinodev on March 01, 2020, 05:41:19 am
Win64 looks good so far!
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 01, 2020, 06:36:45 am
Clément, I've logged in to the forums for the first time in years just to say you're a legend. I can't believe that you're able to pump these out within just a few hours of the release.

It's mostly automated. BenLubar's bot (https://github.com/DFHack/df-structures/pull/374#event-3085316942) is doing most of the work. I just git-pull the new structures and run some script that generate the memory layouts.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: jecowa on March 01, 2020, 07:15:06 am
Experimental memory layouts for 0.47.04:
  • Linux 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/linux/v0.47.04_linux32.ini)
  • Linux 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/linux/v0.47.04_linux64.ini)
  • OSX 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/osx/v0.47.04_osx32.ini)
  • OSX 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/osx/v0.47.04_osx64.ini)
  • Windows 32 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/windows/v0.47.04_graphics_win32.ini)
  • Windows 64 bits (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/memory-layouts/share/memory_layouts/windows/v0.47.04_graphics_win64.ini)

Thank you for memory layouts! 0.47.04 works in osx64
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: feelotraveller on March 01, 2020, 10:52:26 am
Three things:

1)  Thank you for the quick memory layouts.  Linux 64 bits have worked well for me so far.
2)  I believe that under default colours Options -> Happiness: Very Unhappy (red) and Miserable (orange) should be swapped.
3)  When I select the Canterell font for Tooltips the bold part of the tooltip gets very, um, fuzzy (like it needs dithering?).  It is my preferred font, so while most others don't show this problem - although D050000L seems to suffer worse and URW Bookman/URW Gothic also have non-clear bold text - I wonder if there is a fix possible, either on my part or from the other end?
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: jecowa on March 01, 2020, 11:04:21 am
Whichever one is worse, I think should be red.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 01, 2020, 12:49:49 pm
Default colors are: orange for unhappy, dark red for very unhappy and red for miserable (from better to worse). I could change them to yellowish orange/reddish orange/pure red.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: feelotraveller on March 01, 2020, 01:45:43 pm
Yes, sorry for any confusion since I named them differently.  I think very unhappy would be better as red and miserable as dark red since this continues the progression from light to dark.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: jecowa on March 01, 2020, 02:03:45 pm
I think it looks okay.

(https://i.imgur.com/MX2FDao.png)
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 01, 2020, 02:16:28 pm
The dark red could be changed, but I prefer to keep the bright red for the worst case. It is more visible and alarming.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: feelotraveller on March 01, 2020, 11:05:35 pm
Okay that's fair enough.  What bothers me is that the colour for miserable is (or seems to me, to be precise) closer to the colour for unhappy than the colour for very unhappy is.

Any chance of a mock-up similar to the image jecowa posted so we could see the prospective alternative colours?
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: rashik on March 01, 2020, 11:14:38 pm
Custom labor/profession shows average skill in grid view, but it is not an integer and unreadable in small cell. Also grid view editor - > cell color - > active - > "..." shows default color instead of current.
I have win64 version.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 02, 2020, 04:19:01 am
Okay that's fair enough.  What bothers me is that the colour for miserable is (or seems to me, to be precise) closer to the colour for unhappy than the colour for very unhappy is.

Any chance of a mock-up similar to the image jecowa posted so we could see the prospective alternative colours?

Keeping pure green and red at the ends, I tried some gradient between them:
(http://tof.cx/images/2020/03/02/2060385a9782a4c3877261208dc3c39d.png)
Color codes are:
Code: [Select]
00ff00
66ff19
bfff40
ffff80
ffbf40
ff6619
ff0000


Edit: or with more amplitude in the saturation/brightness changes:
(http://tof.cx/images/2020/03/02/c3d97c840a1b5d715480be4d973d6833.png)
Code: [Select]
00ff00
80ff40
d4ff80
ffffbf
ffd480
ff8040
ff0000


Custom labor/profession shows average skill in grid view, but it is not an integer and unreadable in small cell.

Would rounding to the nearest integer be fine?

Also grid view editor - > cell color - > active - > "..." shows default color instead of current.

I could reproduce that after reopening the "Edit column" dialog (just after changing the color, it worked). I had some issues with the color picker while trying to change the happiness colors too.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: jecowa on March 02, 2020, 04:52:29 am
Of those two, I think the second is better.

Maybe start at blue so you get a wider range to make it easier to tell the greens apart.

(https://i.imgur.com/uxrJf7Q.png)
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: rashik on March 02, 2020, 05:10:11 am
Would rounding to the nearest integer be fine?
yes, this is the best solution
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 02, 2020, 06:39:21 am
Is anyone actually using the color popup?
(https://tof.cx/images/2020/03/02/6b1f5d0a2ad90106632b81078ae4e62d.png)

Or do you always click "..." to get the system color picker?
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: jecowa on March 02, 2020, 06:52:38 am
I've never looked at the color settings before. I was using an external graphics editor to change the colors on your screenshot. But I would click the "…" if I wanted to change the colors.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: feelotraveller on March 02, 2020, 09:05:46 am
The second mockup with more amplitude looks pretty good to me.

I don't remember ever using the colour popup since whenever I tried the colours did not fit for me.  The feature I find very useful is the ability to copy/save a colour for reuse elsewhere.  (Oh the colour picker has changed.  :o  My comments are still applicable though.)

Edit: I noticed afterwards a series of logged 'errors' of the form
Code: [Select]
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 3638, resource id: 10501888, major code: 40 (TranslateCoords), minor code: 0
where the sequence and resource id change between entries.  A quick look online suggests that this is related to a qt window closing 'unexpectedly'; although I had no loss of functionality.  It was triggered by the cancel and ok buttons, both in the colour picker itself but also when simply opening and closing the edit grid view window.  (Once or twice the message did not trigger but I'm not sure why.)
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: rashik on March 02, 2020, 09:12:11 am
Is anyone actually using the color popup?
(https://tof.cx/images/2020/03/02/6b1f5d0a2ad90106632b81078ae4e62d.png)

Or do you always click "..." to get the system color picker?

i used it for reset color back to default (first in list)
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Montieth on March 03, 2020, 09:05:45 am
Where should dwarf therapist be saving it's preferences ? I can't seem to have it save from launch to launch. It starts out as if it's been reverted to defaults each time. Probably a folder/file permissions issue that I need to CHOWN a given folder to?
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: jecowa on March 03, 2020, 10:01:14 am
Where should dwarf therapist be saving it's preferences ? I can't seem to have it save from launch to launch. It starts out as if it's been reverted to defaults each time. Probably a folder/file permissions issue that I need to CHOWN a given folder to?

Are you on Mac? If so, run this in the Terminal:

Code: [Select]
sudo chmod go+w ~/.config/Dwarf\ Therapist/Dwarf\ Therapist.ini
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Montieth on March 03, 2020, 04:25:13 pm
That did it. Dog-Cow to the rescue! MOOF!
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: luisedgm on March 03, 2020, 07:57:40 pm
Hello, is there an ETA for the 47.04 version?
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: thurin on March 03, 2020, 09:10:13 pm
Hello, is there an ETA for the 47.04 version?

Go back a couple pages and download the memory layout.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: luisedgm on March 04, 2020, 08:42:12 am
Hello, is there an ETA for the 47.04 version?

Go back a couple pages and download the memory layout.
Found it, thank you.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 05, 2020, 10:04:03 am
Of those two, I think the second is better.

Maybe start at blue so you get a wider range to make it easier to tell the greens apart.

(https://i.imgur.com/uxrJf7Q.png)

https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/194#issuecomment-595268493

(https://user-images.githubusercontent.com/3874173/75993534-e4fee880-5ef9-11ea-9305-b9bb4080365e.png)(https://user-images.githubusercontent.com/3874173/75992940-0b705400-5ef9-11ea-9e61-12fbb479a8f2.png)
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: JEB Davis on March 05, 2020, 10:58:09 am
I've been wondering if it is possible to add the current date in-game YYY-MM-DD displayed in DT?
Having the date in DT would avoid switching back and forth between DF and DT sometimes.
Just a thought for an improvement.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 06, 2020, 06:32:52 am
DT already knows the date, it just a matter of displaying it somewhere. Where would be the best location? Title bar? Tool bar next to the citizen count? Status bar?
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: JEB Davis on March 06, 2020, 08:19:08 am
In the upper right, similar to where DF puts it... then the habit of looking for the date would be the same.

Ideally, just like DF's:

     Date: XXX-XX-XX    Dorfs: XXX/XXX/XX    Pending Changes: XX        (but this would require flipping things)

Or like this to make it easier to implement:

     XXX-XX-XX  Date    XXX/XXX/XX  Dorfs    XX  Pending Changes

Or anywhere that works out best for you... I'm not picky and greatly appreciate this!
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: jecowa on March 06, 2020, 08:36:01 am
maybe put a comma between the things: `7/0/0 Dwarves, 0 Pending Changes, 125-01-15`
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: JEB Davis on March 06, 2020, 08:46:54 am
The commas would be fine if that's easiest, but the date should be first like in DF.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: jecowa on March 06, 2020, 09:00:37 am
If the Dwarves/Pending Changes spot is too cramped, maybe the title bar?

Dwarf Therapist - Eturoddom, "Bouldercloister" on 125-01-15

I never really look at the date. Why is it important?
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: feelotraveller on March 06, 2020, 04:48:25 pm
Deities (Religion).

Can these be added under Preferences (similar to poems and music)?  Therapist already shows something under Needs -> Pray/Meditate however accessing a count/breakdown of worshippers of a specific cult (through the preferences dock) would be a useful addition I think.  The information although available in DF is not easy to access. 

Any thoughts, objections, improvements, counter suggestions...?
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 06, 2020, 05:02:45 pm
Is there worship without needs or needs without worship? I am not fond of adding fake preferences if all the information is already there in the needs dock.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: feelotraveller on March 06, 2020, 06:23:13 pm
It is a matter of getting a count of the worshippers of a particular deity.  Which deities do I need to build a temple to (first)?  Who is the most popular god in my fortress?

As far as I am aware I would need to manually count them from the tooltip in the needs grid view.  Have I missed something?

Implementation is another thing, but I thought under preferences would be the best place.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Clément on March 06, 2020, 06:31:55 pm
You have missed the needs dock/window. It shows the count for each need and then for each level of satisfaction. It also adds filters when you click on an item.

(https://tof.cx/images/2018/12/13/4727a2a8209f9be30f7e3f008291550b.png)
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: feelotraveller on March 06, 2020, 06:58:00 pm
Indeed it is there.  :)  Got caught out by the truncated header.  I had assumed this was just a generic count of all worship.

(https://i.postimg.cc/JzM5xGPx/gods.png) (https://postimages.org/)

(https://i.postimg.cc/y8jXbsGH/gods2.png) (https://postimages.org/)

You are right no need to add more.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: UristMcDebs on March 09, 2020, 06:04:19 am
I don't really know if the problem I have has been adressed yet. I downloaded newest version of both Win32 and 64 version and nethier works with 0.47. The 32 gives an error message while 64 doesn't detect running game at all.
Title: Re: Dwarf Therapist v41.1.4 | DF 47.03
Post by: Bumber on March 09, 2020, 07:10:15 am
I downloaded newest version of both Win32 and 64 version and nethier works with 0.47.

0.47.what? If you're playing 0.47.04, you need to download the memory layouts in this post (http://www.bay12forums.com/smf/index.php?topic=168411.msg8098730#msg8098730). (You'll need to right-click the proper link (probably 64-bit Windows) in that post, then choose Save As.)
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 10, 2020, 10:16:31 am
New version released: 41.1.5 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.5)

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: JEB Davis on March 10, 2020, 11:13:26 am
New version released: 41.1.5 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.5)

Changelog:
  • added memory layouts for DF 0.47.04
  • fixed super labor column average skill display (rounded to fit)

Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Thank you for your dedication!
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 11, 2020, 11:39:29 am
I rebuilt the experimental appimage for 41.1.5: https://github.com/cvuchener/Dwarf-Therapist/releases/tag/untagged-350dd670332091967771
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: andrei901 on March 11, 2020, 09:44:54 pm
Hey, this might be something to look at. I don't know if this is a DF thing or a Therapist thing. Someone with more knowledge mind passing the note along to the right person?

seventh line down in the thoughts, second in the second paragraph.

https://www.reddit.com/r/dwarffortress/comments/fh75ml/outrage_this_is_a_unknown_thought/
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Bumber on March 12, 2020, 12:14:33 am
Hey, this might be something to look at. I don't know if this is a DF thing or a Therapist thing. Someone with more knowledge mind passing the note along to the right person?

seventh line down in the thoughts, second in the second paragraph.

https://www.reddit.com/r/dwarffortress/comments/fh75ml/outrage_this_is_a_unknown_thought/

Probably need a screenshot of the in-game thoughts screen to see what he's outraged about.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: PatrikLundell on March 12, 2020, 01:48:46 am
There were a bunch of new thoughts introduced in 0.47.01, and many have been identified, but not introduced into the DFHack mess that represents it https://github.com/DFHack/df-structures/issues/363 (https://github.com/DFHack/df-structures/issues/363). The careful reader will note that Clément opened that issue, and so probably is aware of it.

If the thought isn't one of those identified, a screenshot probably won't help, as it will just tell us that such a thought exists, but not what its number is. To identify that a save with the thought present on one of the dorfs (and info on which one) would be needed identify the mapping between the thought and its number.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 12, 2020, 05:13:19 am
Open the emotions dock (Windows → Docks → Emotions), and look for "<number> - Unknown". You need to report this number and the matching text in the "Thoughts and preferences" screen.

I think I'll add the id in the tool-tip, it will make reports easier since it is often there that people notice the missing thought.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Schmaven on March 15, 2020, 07:11:22 am
Just thinking long term - do you think Dwarf Therapist will be made compatible with the itch.io/steam version?
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 15, 2020, 08:03:00 am
Assuming the labor system does not change, I can't think of a reason it could not work. It won't be available day one obviously.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Tyshalob on March 20, 2020, 06:15:18 pm
Is my DT data directory supposed to have a copy of game_data.ini? I see in the OP that I need to modify that file to make happiness levels show correctly, but my directory doesn't have one. Dwarf Therapist also seems to take a long time to connect to Dwarf Fortress. If I open Dwarf Therapist and don't do anything it takes 42 seconds to connect. If I press the connect button it takes just as long and then crashes upon connection. Either way it has both a memory layout error: connection timed out and version check error: connection timed out.

(https://i.imgur.com/Znr2hOQ.jpg)
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 20, 2020, 07:15:47 pm
Is my DT data directory supposed to have a copy of game_data.ini?
Not if you did not create it.
I see in the OP that I need to modify that file to make happiness levels show correctly, but my directory doesn't have one.
Only for DF 0.44.09 or older.

Dwarf Therapist also seems to take a long time to connect to Dwarf Fortress. If I open Dwarf Therapist and don't do anything it takes 42 seconds to connect. If I press the connect button it takes just as long and then crashes upon connection. Either way it has both a memory layout error: connection timed out and version check error: connection timed out.
You have some kind of network issue that prevents DT from checking updates and it hangs until the connection fails. You can disable the updates in the options.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Skullsploder on March 23, 2020, 09:11:22 am
Sorry if this has been answered somewhere, or is obvious, but is there any way to filter for the trait "doesn't really care about anything anymore?" I'm trying to set up a dedicated set of corpse haulers and I'm having to go through my dwarves manually at the moment.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 23, 2020, 11:48:47 am
The corresponding DFHack value is "unit.status.current_soul.personality.combat_hardened", right? I don't think DT read that yet.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Skullsploder on March 24, 2020, 10:06:04 am
The corresponding DFHack value is "unit.status.current_soul.personality.combat_hardened", right? I don't think DT read that yet.

Ah, pity. I guess I'll just make a habit of adding dwarves to the corpse haulers each time I notice a "doesn't care about anything anymore."
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 24, 2020, 02:49:33 pm
Actually, it supposed to be already supported (as personality trait "Detachment") but it uses a misc traits that is deprecated according to DFHack.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: jecowa on March 24, 2020, 09:14:54 pm
I don't understand the numbers on the "Needs" pane.
Spoiler: Needs Pane (click to show/hide)
Spoiler: Enok & Kubuk closeup. (click to show/hide)

It's sorted by Need to Pray/Meditate. Why is Endok's level 2 need to pray ranked higher than Kubuk's level 40 need to pray?
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: feelotraveller on March 24, 2020, 10:44:30 pm
At a guess it is because therapist is ranking based on the need to pray/meditate to the first deity on the list.  (It should be possible to confirm/refute this by looking at others on that list.) 

If so it is possible that the 'only first deity on the list' is a problem that is inherited from DF: http://www.bay12games.com/dwarves/mantisbt/view.php?id=10918 (http://www.bay12games.com/dwarves/mantisbt/view.php?id=10918)
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Schmaven on March 25, 2020, 04:19:15 am
Does anybody know where I can find more information about the gender symbols?  I briefly skimmed through the included manual and didn't see much about them.

Spoiler: Gender Symbols (click to show/hide)

I can identify the normal male / female signs, but the gray one is a mystery to me.  I also suspect the symbols that are double male / double female mean that animal won't breed? 
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 25, 2020, 04:47:36 am
I don't understand the numbers on the "Needs" pane.
Spoiler: Needs Pane (click to show/hide)
Spoiler: Enok & Kubuk closeup. (click to show/hide)

It's sorted by Need to Pray/Meditate. Why is Endok's level 2 need to pray ranked higher than Kubuk's level 40 need to pray?

Needs have two values: focus and level. Focus is how bad the dwarf has this need right now, it is represented by the background color. Level is how often it will be needed (more precisely the speed at which focus goes down), it is represented by the number. You can change which one is use for sorting by right-clicking the header.

Pray is special because it may aggregate several needs. Focus used for display/sorting is the worst focus of the set, level is the sum of all levels. Kubuk's worst focus is -6640 which is better than Endok's -8220.

Does anybody know where I can find more information about the gender symbols?  I briefly skimmed through the included manual and didn't see much about them.

Spoiler: Gender Symbols (click to show/hide)

I can identify the normal male / female signs, but the gray one is a mystery to me.  I also suspect the symbols that are double male / double female mean that animal won't breed? 

There are several options:
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Bloodyharbinger on March 26, 2020, 08:26:36 am
Not sure if this was mentioned before, but wanted to do my part to try and help.

Recently had a dwarf dismay over a blank thought and checked to find it was listed as an "unknown thought". I didn't think to export my save but saw someone mention new thoughts and guilds. After a bit of thinking I managed to fix it by making the guildhall fancy.
I am guessing that after agreeing to a guildhall, you have to designate a room and then raise the value passed Meeting place and into the formal Guildhall.
I looked at the list of new unknown thoughts and while some of them are close they don't 100% match what was seen. I am assuming that a dwarf will get upset if you agree to a guildhall and designated one, but don't raise the value.
I just got a new request for a guildhall so at the risk of making some dwarf sad, I am going to try and generate the thought again.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Bloodyharbinger on March 26, 2020, 01:31:18 pm
Not sure if this was mentioned before, but wanted to do my part to try and help.

Recently had a dwarf dismay over a blank thought and checked to find it was listed as an "unknown thought". I didn't think to export my save but saw someone mention new thoughts and guilds. After a bit of thinking I managed to fix it by making the guildhall fancy.
I am guessing that after agreeing to a guildhall, you have to designate a room and then raise the value passed Meeting place and into the formal Guildhall.
I looked at the list of new unknown thoughts and while some of them are close they don't 100% match what was seen. I am assuming that a dwarf will get upset if you agree to a guildhall and designated one, but don't raise the value.
I just got a new request for a guildhall so at the risk of making some dwarf sad, I am going to try and generate the thought again.

Found the dwarf again. "was dismayed after reliving ."
Went into thoughts and found thought value is 262 (nil) related to entity 2200.
entity 2200 is a the Farmer Guildhall location.

I can only assume that he was upset that i didn't build out the guildhall and then furnish it and now he mills about reliving that moment.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 26, 2020, 02:23:11 pm
The thought was an empty message in DF itself? You should report it to DF bug tracker first.

PS: I linked your post in the corresponding dfhack issue (https://github.com/DFHack/df-structures/issues/363). You should look at it if you are interested in thought research.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Bloodyharbinger on March 26, 2020, 03:08:12 pm
The thought was an empty message in DF itself? You should report it to DF bug tracker first.

PS: I linked your post in the corresponding dfhack issue (https://github.com/DFHack/df-structures/issues/363). You should look at it if you are interested in thought research.
Thanks for helping. Guess I will do my part to help too. :D
Signed up, created bug report and uploaded my save as you suggested. Hope it helps
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 31, 2020, 10:06:18 am
What is a baby? What is a child? What is an adult?

DT and I had this naive belief that it was related to age. Apparently it is not: TheTimtam97 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/199) has very young adults (most are less than one year old). It breaks a lot of stuff in DT. Is it just a DF bug that I should ignore or should I support it? Maybe I should use the profession instead of age but I am afraid it will break in other cases. What about animals?

PS: I've just checked, DFHack use the profession only for isBaby/isChild/isAdult.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Fleeting Frames on March 31, 2020, 10:21:59 am
I've definitely gotten a child with negative age migrating onsite, but emancipated minors are a new one.

Animals, you can pull from raws to find unusual baby/child names, but looking at a newly-born puppy they have profession 103 (CHILD). Custom profession is a separate field.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: PatrikLundell on March 31, 2020, 11:12:22 am
If I remember correctly, incorrect migrant age corrects itself at the next birthday. Age SHOULD be connected to the baby/child ages in the raws (and some creatures are born adult, e.g. the GCS). I think we can safely say the incorrect age report is a DF bug, but who knows when that will be fixed?
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Unknown_User on March 31, 2020, 07:46:09 pm
Clicking "Import Custom Professions" fails to open a window on MacOS Catalina 10.15.4, QT version 5.13.2

Anyone have any ideas why?
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on March 31, 2020, 07:55:15 pm
https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/195

If you are able to compile programs yourself, could you try the program included in my comment?

Try with Qt 5.14 too. Catalina is not officially supported by Qt 5.13.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Unknown_User on March 31, 2020, 08:44:40 pm
Ok, so I've got QT 5.14, but the About section in Dwarf Therapist says it was built with 5.13.2

I attempted to do what your instructions said but come up with errors. 

Code: [Select]
$ qmake filedialog.pro
Info: creating stash file /Users/david/Documents/minimal/.qmake.stash
Project WARNING: CONFIG-=import_qpa_plugin is deprecated. Use QTPLUGIN.platforms=- instead.

Code: [Select]
$ make
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -c -pipe -stdlib=libc++ -O2 -std=gnu++11  -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -mmacosx-version-min= -fPIC -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -I/usr/local/Cellar/qt/5.14.1/lib/QtWidgets.framework/Headers -I/usr/local/Cellar/qt/5.14.1/lib/QtGui.framework/Headers -I/usr/local/Cellar/qt/5.14.1/lib/QtCore.framework/Headers -I. -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/OpenGL.framework/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/AGL.framework/Headers -I/usr/local/Cellar/qt/5.14.1/mkspecs/macx-clang -o main.o main.cpp
clang: error: invalid version number in '-mmacosx-version-min='
clang: error: invalid deployment target for -stdlib=libc++ (requires OS X 10.7 or later)
make: *** [main.o] Error 1
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on April 01, 2020, 04:13:21 am
Try adding
Code: [Select]
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7 at the end of filedialog.pro. Also try with 10.9 (the value for current DT build) and 10.15 (your current system version).
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Unknown_User on April 01, 2020, 06:12:21 pm
Getting the same errors with that added on. :/
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: Clément on April 02, 2020, 06:46:33 am
I don't know. I can't help much with macOS.
Title: Re: Dwarf Therapist v41.1.5 | DF 47.04
Post by: lethosor on April 02, 2020, 10:38:02 am
Getting the same errors with that added on. :/
Can you paste your new error? I'm curious if it has an empty "-mmacosx-version-min=" again and what the compiler arguments are.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Clément on April 03, 2020, 07:09:07 am
New version released: 41.1.6 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.6)

A collection of small bug fixes.

Changelog:
Windows builds are also available on DFFD (win32 (http://dffd.bay12games.com/file.php?id=13094), win64 (http://dffd.bay12games.com/file.php?id=13095)).
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: PatrikLundell on April 09, 2020, 09:50:51 am
I ran into a problem with a vampire migrant. As I was assigning jobs to the new arrivals, I failed to find one of them, which turned out to be caused by a false identity, i.e. DF shows the false one, while DF shows the true one.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Clément on April 09, 2020, 10:03:49 am
Was there any change to identities in 0.47? I remember fixing stuff like that in 0.44 already.

Edit: Trying this 0.44.12 save (http://dffd.bay12games.com/file.php?id=14632) on 0.44.12, the vampire false identity is used, but not if I use the same save on 0.47.04.
Edit2: No it works now. I don't know what I did to get the true name.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: PatrikLundell on April 09, 2020, 11:26:25 am
I recall it being fixed in the past, but as you say, DF keeps changing (and DF structures too, on top of that).

I'm not sure I understand Edit 2: Do you mean you've fixed what I saw without really knowing how, or that you didn't actually see a problem with the old save? I can provide my fortress if you need it. I checked and double checked and currently typing the DF version as DT displays it: DT Version 41.1.6 in the lower right corner.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Clément on April 09, 2020, 11:38:03 am
I saw the real name once, but when I looked again the vampire has their fake name. The save may help. Your OS may help too, if it is a memory layout issue. I tested on Linux 64 only.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: PatrikLundell on April 09, 2020, 01:52:52 pm
Hm, curioser and curiouser... After your response, I decided to try to replicate your experience, so I checked that yes, I definitely see the vampire name, and yes, it does not match the DF displayed one, and yes, it doesn't change at yet another press on Read. After that I closed DT and restarted it, and yes, the fake name is now shown. Thus, I think my OS (Win64) isn't a factor, but something with characters migrating in resulting in a different processing than those loaded from scratch, and that Read doesn't read everything from scratch but cashes some things (which is very reasonable, assuming they're static).

I went a step further and hacked his fake name (changing the first part from 151 to 150), and DT picked it up on Read.

Weird, but both of us have seen it, before it slipped back into the shadows...
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: PatrikLundell on April 16, 2020, 11:53:56 am
New issue, so new post: I received a migrant with a skill level in "UNKNOWN". According to DF it's actually "Riding" (with a value of 136 when investigating with giu/gm-editor).
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Uthimienure on April 17, 2020, 12:54:48 pm
Hi, thanks for keeping DT up to date, we love it.

Would it be possible to display the in-game date in DT?

I'm wondering if there is a way to have the dock windows remember the column positions.
Each time it reads the dwarfs, the column widths reset to unreadable defaults. Am I missing a setting?
(https://i.postimg.cc/XJ6QQDWg/DT-docks-dont-remember.png) (https://postimages.org/)

Thanks in advance!
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Clément on April 18, 2020, 08:55:18 am
Would it be possible to display the in-game date in DT?

Already asked (and done (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/196)), it will be available in a future release.

I'm wondering if there is a way to have the dock windows remember the column positions.
Each time it reads the dwarfs, the column widths reset to unreadable defaults. Am I missing a setting?

It can be done, Qt has functions for that. I'll need to add a bit of code for each view, maybe I'll forget a few. I created an issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/204) so I remember.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Uthimienure on April 18, 2020, 12:37:15 pm
Many thanks, Clément  :)

Your work on DT is excellent, and much appreciated because you are spending your free time for love of DF!  Let the rest of us (particularly those who have little or no programming ability like me) never take advantage of people who freely give of their own time so that others may benefit.

Has anyone suggested adding these to the popup information when hovering over names?

- marital status, and possibly listing their spouse (& children, but not as important)

- bedroom status (if they have a bedroom (& who shares it with them, including children(?), but not as important)
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Clément on April 18, 2020, 01:14:05 pm
This popup is already crowded. I'm not fond of adding anything in it if it can be done another way. Marital status/spouse is just one line so maybe it's possible. Displaying the whole family would require its own dock widget. Room status could be an equipment-like column.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Uthimienure on April 22, 2020, 01:20:58 pm
... Room status could be an equipment-like column.
I wonder if this could be a number (it would point out any dwarf who was assigned to 2 or more bedrooms) in the column.

Your other points certainly make sense.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Fleeting Frames on April 22, 2020, 05:34:21 pm
Marital status might be best done with a background border or sth on the gender indicator.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Clément on April 23, 2020, 11:27:13 am
I am updating my build script for testing and deploying. Mostly for updating Linux build environment, adding Windows to the automated builds, and maybe fix some issues along the way. I need testers to tell if I'm breaking anything on their system, especially for Linux and macOS.


Linux

Build OS was updated from Ubuntu Trusty 14.04 to Ubuntu Trusty 16.04, and Qt from 5.2 to 5.12. This build will no longer work on older EOL distribution like Debian Jessie or Ubuntu Trusty, but this should fix the OpenSSL issue on distribution with OpenSSL 1.1 only. The AppImage also includes the dark fusion themes already shipped with the Windows builds. Download here (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-cb43d43200a573026646/DwarfTherapist--linux-x86_64.AppImage).


Windows

All windows builds now use MSVC 2017 instead of MSVC 2015. In the future, MSVC 2015 will no longer be supported.



MacOS

Issues for both older and newer macOS versions were reported, so maybe I will need to make multiple builds. I am not sure what is needed so I am trying several ideas.


I'd like macOS 10.15 users to tell me if one of these builds (the Qt 5.15 one maybe) solve the file dialog issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/195) (try exporting or importing grid views or roles), and older versions users to tell me whatever works for them (don't forget your macOS version in the report).

Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: mirandamechanics on April 27, 2020, 10:38:31 am
Hello! Just a question, is there anyway to rotate the grid view? I'd love to see jobs arranged vertically.

Thank you for your job with DT!
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: A_Curious_Cat on May 03, 2020, 03:54:19 pm
Well, I'm finally getting back into DF after my Linux distro finally (after several years) allowed me to install the libraries necessary to compile Dwarf-Therapist.

Anyways, one of the things I love about Dwarf-Therapist is that I can connect it to the game while I'm in the "Prepare for the Journey to x screen.  This gives me access to the roles tab which I can use as a guide when assigning skill points to my dwarves before embark.  :D

Thank You.

Edit:

Oh, Fun!!!!

Now you tell me that I'm going to need QT 5.12 to compile this thing, but my distribution won't let me install anything higher than QT 5.11.  Well, looks like I'll have to wait another 7 years for the planets to align (Either that or switch to a different Linux distribution).
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: feelotraveller on May 03, 2020, 11:37:33 pm
(Clément may have more/better to add but in the meantime: )

As far as I am aware QT5.12 isn't needed to compile Therapist on linux but rather only to run the precompiled release.

To compile it first acquire the source code.  Either (assuming git is installed)
Code: [Select]
git clone https://github.com/Dwarf-Therapist/Dwarf-Therapist.gitOr from the releases page https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases) download the tar.gz and then extract it.

Once the source code is in a folder named (for example) Dwarf-Therapist then it can be built/compiled.  Make a new folder alongside the former and call it (say) Dwarf-Therapist-build.  Open a terminal in the new folder (or cd there if you are doing it from the command line) then
Code: [Select]
cmake ../Dwarf-Therapist
ln -s ../Dwarf-Therapist/share .
make -j$(nproc)
./dwarftherapist
make install
The second and final lines are not strictly needed since DT should download the correct memory layouts on load, and can be run manually without installation, respectively.

Then it is probably necessary (depending on distro) to deal with ptrace permissions.  There is a good summary here: https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/dist/ptrace_scope/README.md (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/dist/ptrace_scope/README.md). 

Personally however I just use the cmake and make commands, move the binary to my df folder and then
Code: [Select]
sudo setcap cap_sys_ptrace=ep /path/to/dwarftherapistThen I run it manually from the terminal using ./dwarftherapist
But each to their own.  :)






Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: A_Curious_Cat on May 04, 2020, 12:00:13 am
I've already compiled it with QT5.11.  I thought this was something new since I cloned the project and I wouldn't be able to compile DT anymore.

Btw, do you know if there is any way to update the files after I've cloned the project without having to delete everything and clone the project again?

Also, I'm seriously thinking about moving to a different Linux distro. Definitely one that isn't Debian based (the problem I'm having looks like it affects all distros that use the debian package repositories).
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: feelotraveller on May 04, 2020, 12:24:58 am
git pull

more generally have a look at
man git
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Clément on May 04, 2020, 03:24:45 am
As far as I am aware QT5.12 isn't needed to compile Therapist on linux but rather only to run the precompiled release.

It is not even needed, Qt is included in the AppImage, you only need C/C++ libraries at least as recent as the Ubuntu 16.04 ones.

About the source code compatibility, I think I will be targeting Qt 5.6.

The second and final lines are not strictly needed since DT should download the correct memory layouts on load, and can be run manually without installation, respectively.

If you want tu use DT from the build directory without installation, you can use the BUILD_DEVMODE cmake option ("cmake -DBUILD_DEVMODE=ON <DT source directory>").

the problem I'm having looks like it affects all distros that use the debian package repositories

What is the problem?
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: feelotraveller on May 04, 2020, 05:43:21 am
It is not even needed, Qt is included in the AppImage, you only need C/C++ libraries at least as recent as the Ubuntu 16.04 ones.
My bad. I forgot (again) that DT linux releases are AppImages.  :-[  (Sort of their whole raison d'être....)
If you want tu use DT from the build directory without installation, you can use the BUILD_DEVMODE cmake option ("cmake -DBUILD_DEVMODE=ON <DT source directory>").
That's a good tip. I'll most likely try it out when test building in the future.  Cheers.  But generally I'm happy doing it my way, as described above.  ;)
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: A_Curious_Cat on May 04, 2020, 05:51:24 pm
the problem I'm having looks like it affects all distros that use the debian package repositories

What is the problem?

QT5.12 is marked as testing and not as stable.  I've tried to use "Force version" to install it but my distro refuses to do so.  It already took almost a decade for even one version of QT5 to be marked stable and I'm afraid it'll take the same amount of time for QT5.12 to be marked stable.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Clément on May 05, 2020, 04:26:02 am
But you don't need Qt 5.12, so there is no problem. If for other reasons you need the most recent version of Qt you should install it from source in a special prefix (e.g. /opt/qt5.12, not /usr). But I would recommend using you distribution version whenever possible.

I don't see where it took "almost a decade", Jessie had Qt 5.3 (https://packages.debian.org/source/jessie/qtbase-opensource-src), one year after its release, a little more than two years after Qt 5.0 release. This looks like the usual Debian stable lag. Use Sid if you want new software. What I found annoying with Jessie is the old gcc version, you cannot compile DT with it (no full C++14 support). Even CentOS is better in this regard because it has extra repositories for compiling modern software.
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: A_Curious_Cat on May 05, 2020, 10:20:46 am
I don't see where it took "almost a decade", Jessie had Qt 5.3 (https://packages.debian.org/source/jessie/qtbase-opensource-src), one year after its release, a little more than two years after Qt 5.0 release. This looks like the usual Debian stable lag. Use Sid if you want new software. What I found annoying with Jessie is the old gcc version, you cannot compile DT with it (no full C++14 support). Even CentOS is better in this regard because it has extra repositories for compiling modern software.

I Think I may have remembered wrong.  Now that I come to think about it, I think the problem was that I couldn't upgrade QT (or a number of other things) because my distro made certain changes to the basic debian system such that attempting to upgrade certain packages (such as QT) would cause the package manager to say that I needed to completely uninstall half the software on my system (including both the standard C library and the init system) before I could upgrade the package. Again, this particular problem is specific to my distro and effects multiple packages and not just QT.  I believe the problem has to do with how changes, made by the author to the basic debian system, basically screw up the package dependencies.  As I said I need to change to a different distro.  After that, I shouldn't have any problem.

Edit:

Another thing I don't like about my distro is that I can't recompile the kernel without borking the system.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on May 08, 2020, 06:39:28 am
New version released: 41.1.7 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.1.7)

The last of the 0.47 updates (at least for the issues I'm aware of) and the first using the new build scripts. I hope everything work, I didn't get any feedback from the previous test builds.

Changelog:
DFFD files will be updated later (at least the win64 one, I'm not sure if I'm keeping the win32 version on DFFD).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Uthimienure on May 08, 2020, 05:35:34 pm
In the Needs tab I'm seeing all dwarfs having "untroubled nan% (0/0)" in the Focus column.
The dwarfs have lots of unfulfilled needs and their personality descriptions have the normal range of unfettered to badly distracted.
(Fort is 3 years playing with 70 dwarfs with LNP 0.47.04 r01 and r05.)
I'm seeing this same thing in both DT v41.1.6 and 41.1.7
Any thoughts?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on May 09, 2020, 02:09:37 am
There was an issue with a memory layout (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/197) but it is supposed to be fixed. To be sure, go to "File" → "Open data directory" and make sure the memory_layouts directory is empty. If not delete the files and restart DT.

There is also a known issue where the focus is temporarily 0/0 for new migrants or after embark until the first need change or the first opening of "Thoughts and Preferences" screen. But it does not seem to be your case.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Uthimienure on May 09, 2020, 08:00:38 am
Thank you, Clément... that fixed it  :)
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: A_Curious_Cat on May 13, 2020, 06:42:45 pm
I'd like to make a request, if I could.

It would be nice if the animals tab had a column for the size of the animal.  This would help a lot when determining which animals to butcher.

Also, I've noticed that, when grouping by age, the age categories aren't properly sorted.  It appears that the sorting algorithm is sorting the ages based on the first character of the age, then the second character, etc.  This leads e.g. to things like 10 month old animals being listed after 1 year old ones (and 2 month old animals being listed after both).

Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on May 14, 2020, 03:46:24 am
You can sort by size (or age) by right clicking on the header of the name column.

Age sorting (either for groups or individuals) is broken because it only looks at the birth year (of the first creature for groups) instead of the exact age (I created an issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/210) on github).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Uthimienure on May 14, 2020, 07:30:19 pm
A couple of unknown emotions. Forgive me if this has already been fixed in 41.1.7 but I haven't used that version yet.

(https://i.postimg.cc/nz70FymV/DT-41-1-6-emotions-258-and-259.png) (https://postimages.org/)
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Cypeace on May 19, 2020, 04:54:29 am
Hi, I'm a bit lost here as to which macOS version to download for Mojave:
Can somebody, please, enlighten me on how to pick the correct version?

Thank you!
Title: Re: Dwarf Therapist v41.1.6 | DF 47.04
Post by: Clément on May 19, 2020, 05:07:28 am
Use the most recent that works for you. Theoretically, 5.12 and 5.15 should work on Mojave (10.14). 5.15.0 is still a beta version but I am hoping it may fix some issues with Catalina (10.15). In the future the qt5.9 and qt5.15 versions may be enough, I am waiting for feedback to decide which versions to keep and giving more clear instructions to choose the correct one.

  • Using Qt 5.9 (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-b41305f066a3db07c9cb/DwarfTherapist--osx64-qt5.9.9.dmg) with minimum macOS version set to 10.9 (Qt 5.9 officially supports macOS 10.10 to 10.12).
  • Using Qt 5.12 (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-b41305f066a3db07c9cb/DwarfTherapist--osx64-qt5.12.8.dmg) with minimum macOS version set to 10.12, XCode updated to 10.3 (Qt 5.12 officially supports macOS 10.12 to 10.14).
  • Using Qt 5.15 (beta) (https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-b41305f066a3db07c9cb/DwarfTherapist--osx64-qt5.15.0.dmg) with minimum macOS version to 10.13, XCode updated to 11.3 (Qt 5.15 officially supports macOS 10.13 to 10.15).
(don't use the links from this old post they are outdated)
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Leonidas on May 26, 2020, 09:34:33 pm
Is there any way for DT to show which topics each scholar knows about? It would be very useful in evaluating scholars, and learning more about how research progresses.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Shimrod on May 27, 2020, 04:11:21 am
Is there any way for DT to show which topics each scholar knows about? It would be very useful in evaluating scholars, and learning more about how research progresses.
There's a group of colums in the "Other Skills" tab that list the scholar skills.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on May 27, 2020, 04:38:53 am
No, DT does not show known topics. What do you want to do with it? Are you looking for a scholar with a specific knowledge? Or do you want to see an overview for a given dwarf? If it is just for researching about research, it may be better to use DFHack.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Leonidas on May 27, 2020, 09:00:56 pm
No, DT does not show known topics. What do you want to do with it? Are you looking for a scholar with a specific knowledge? Or do you want to see an overview for a given dwarf? If it is just for researching about research, it may be better to use DFHack.
1. I'm getting visitors who want to join as scholars. If they know about topics that my scholars don't know about, then I definitely want them.
2. If I take those new scholars, then I want to watch that new knowledge spread to the other scholars through discussion and apprenticeship.
3. If my scholars have lots of topic knowledge that isn't represented in books, then I could put them into a no-book library that will make them write a little faster.
4. Suppose I'm considering getting books from outside, whether buying, stealing, or conquering. In making that decision, it would be nice to know whether the books I'm thinking of acquiring have knowledge of topics that my scholars lack.
5. When I acquire books with outside knowledge, then I want to watch that knowledge spread through my scholars as they read the new books and discuss those topics.
6. If I run a library-focused fortress for several years, then I want to watch my scholars become super-knowledgeable. And I want to see if the knowledge tracks their skills and interests. Will the doctors stick to medical topics, or will they branch out into math or philosophy? Will the legendary mechanic study engineering, or will he be drawn to history?

Patrik's librarian script is a crucial tool for those of us who want to collect all the topics. But it only addresses books, which are half the picture. I was hoping that DT could fill in the other half.

Edit: Just now I watched a watched a grand master chemist write about liquid-liquid extraction. It's the first book on that topic in my fortress. I assume that the other scholars will read it and advance their own knowledge, but right now there's no way for me to tell.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on May 28, 2020, 05:22:02 am
An overview of all topics for all scholar then. Since there is a fixed number of topics, it is theoretically possible to make a grid view. But there is a lot of them (312 if I counted correctly, I am assuming df.knowledge.xml (https://github.com/DFHack/df-structures/blob/master/df.knowledge.xml) is right place to look), it would not fit on the screen. Or maybe one grid view per domain, but even then I am not sure medicine would fit.
Code: [Select]
philosophy   37
mathematics  49
history      20
astronomy    20
naturalist   13
chemistry    24
geography    22
medicine     65
engineering  62
It would be easier to make a DFHack script that would filter the topics. DT cannot automatically change the columns to keep only the relevant ones.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: xzaxza on June 04, 2020, 05:22:33 am
What's the preference for outdoors that Dwarf Therapist thinks workers such as woodcutters should ideally have? The wiki doesn't seem to know of it (https://dwarffortresswiki.org/index.php/DF2014:Preferences). How's it coded?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on June 04, 2020, 08:45:34 am
It's not a real preference, it is a special field in a unit personality (unit_personality.likes_outdoors in DFHack). In the same way that Detachment is not a real personality traits (unit_personality.combat_hardened).

If I am not mistaken it is related to how much a dwarf will hate the rain.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: xzaxza on June 04, 2020, 09:09:06 am
Ah, thanks! I suppose it's a counter of some sorts, being outside a lot makes the dwarf become less annoyed by it? Meaning no one's born an ideal woodcutter/herbalist?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on June 04, 2020, 09:57:44 am
Cave adaptation is a counter. Likes outdoors has only three values (0, 1, 2), I don't know how or if it changes. I did not do the research.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Afghani84 on June 12, 2020, 03:21:28 am
quick question since I couldn't find it via searching:
the wiki mentions here (https://www.dwarffortresswiki.org/index.php/DF2014:Keeping_your_dwarves_unstressed) that Dwarf Therapist has an option to sort dwarves by stress level. How do I do that exactly? Thanks for the help!
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on June 12, 2020, 03:26:08 am
Stress is the "Happiness" column.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Afghani84 on June 12, 2020, 03:37:01 am
Stress is the "Happiness" column.
Thanks, easier than I thought :D
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: hanni79 on June 17, 2020, 09:10:16 am
Is there any possibility to do a filter script which shows which dwarf likes which drink ?

I am trying to acquire every possible drink my dwarfes like and then force my kitchen to use those drinks in meals via "gui/workshop-job (alt-a)" so my dwarfes can get good thoughts from meals again.

Reading 110 Dwarves is a bit grindy though, which is why I wondered if it were possible to show food/preferences in Dwarf Therapist.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Fleeting Frames on June 17, 2020, 10:38:48 am
Well, currently there's preferences tab (right-click on pending changes to add), sort by type, search for wine|beer|brew|rum|cider|spirits|mead|cruor|perry (might be missing some drink types).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: hanni79 on June 17, 2020, 11:00:50 am
Well, currently there's preferences tab (right-click on pending changes to add), sort by type, search for wine|beer|brew|rum|cider|spirits|mead|cruor (might be missing some drink types).

Thank you very much ! Never knew about this, awesome !  8)
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Ihtomyt on July 15, 2020, 05:53:31 pm
Hopefully this is the best place to ask this question. I have some filters set up in Dwarf Therapist, and they are working great. However, I don't think the filter for needing to pray is working because I don't know what value to put in for the deity_id argument. d.get_need_focus_degree(2,?) < 2 ... sorry if this is in the documentation somewhere, but search is failing me. Does anyone know how to determine the deity_id value to use for different ones?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on July 15, 2020, 07:26:23 pm
It is the historical figure id for the deity. There is no easy way to find it, sorry. This function is mainly used for the generated filter when you click on a need focus degree in the "Needs" window. You can filter a range by selecting multiple items in the list (shift click or drag).

If you don't care about the deity, maybe try "get_need_type_focus", it will give you the worst focus for all the needs with the given need id. Focus values are under -100000 for "badly distracted", under -10000 for "distracted", under -1000 for "unfocused", above 100 for "untroubled", above 200 for "level headed", above 300 for "unfettered" (max is 400).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Ihtomyt on July 16, 2020, 04:51:35 am
Thank you so much, that was what I needed! Thank you for this tool! I'm sure many have said the same, but there's no way I could/would play a fortress with more than 50 dwarves without it.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: GandalfTheGreyt3791 on July 23, 2020, 12:05:49 pm
Dwarf Therapist – 41.1.7

Home page (https://github.com/Dwarf-Therapist/Dwarf-Therapist/) – Latest Release (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/latest) – Changelog (https://raw.githubusercontent.com/Dwarf-Therapist/Dwarf-Therapist/master/CHANGELOG.txt)

Compatible with Dwarf Fortress from 0.42.06 to 0.47.04 (some versions may be missing memory layout depending on the operating system).

Dwarf Therapist Guide: Github Repository (https://github.com/Dwarf-Therapist/Manual) – Latest Release (https://github.com/Dwarf-Therapist/Manual/releases/latest)

DFFD Alternative Downloads
quick question. what download would I use for elementary os
  • Windows 32 bits (http://dffd.bay12games.com/file.php?id=13094)
  • Windows 64 bits (http://dffd.bay12games.com/file.php?id=13095)
  • Stand-alone Manual (http://dffd.bay12games.com/file.php?id=7889)

Linux packages and repositories
  • COPR Repository (https://copr.fedorainfracloud.org/coprs/cvuchener/Dwarf-Therapist/) for Fedora users
  • AUR package (https://aur.archlinux.org/packages/dwarftherapist/) for Arch Linux users

Known issues

Happiness thresholds have changed since DF 0.44.10. When using Dwarf Therapist 40.0.1 or newer with DF 0.44.09 or older, happiness levels (miserable, unhappy, fine, happy, ...) will not be displayed correctly. You need to add a modified game_data.ini (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/resources/game_data.ini) in DT's data folder (use "Open data directory" in the "File" menu, if you don't know where it is). Replace the happiness_levels section with (add a zero in each threshold):
Code: [Select]
[happiness_levels]
miserable/threshold = 500000
miserable/desc = "is utterly harrowed by the nightmare that is their tragic life"
very_unhappy/trhreshold = 250000
very_unhappy/desc = "is haggard and drawn due to the tremendous stresses placed on them"
unhappy/threshold = 100000
unhappy/desc = "is under a great deal of stress"
fine/threshold = -100000
content/threshold = -250000
happy/threshold = -500000
ecstatic/threshold = -1000000
Remember to delete your modified game_data.ini, when you want to go back to the latest version.


Older versions can be found in Splinterz's topic (http://www.bay12forums.com/smf/index.php?topic=122968.0).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: lethosor on July 23, 2020, 03:14:51 pm
As a heads-up, it took me a while to find your question. The usual convention on these forums is to delete the parts of the quote that you're not referring to, and to put your question outside of the quote block so people can find it more easily. Something like this:

DFFD Alternative Downloads
  • Windows 32 bits (http://dffd.bay12games.com/file.php?id=13094)
  • Windows 64 bits (http://dffd.bay12games.com/file.php?id=13095)
  • Stand-alone Manual (http://dffd.bay12games.com/file.php?id=7889)
quick question. what download would I use for elementary os



To answer your question, since Elementary OS is a Linux distribution, none of those three links are what you want. The first two are Windows-only, and the third is a standalone PDF copy of the documentation. Instead, you should look at the "latest release" link from the first post in this thread:

Dwarf Therapist – 41.1.7

Home page (https://github.com/Dwarf-Therapist/Dwarf-Therapist/) – Latest Release (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/latest) – Changelog (https://raw.githubusercontent.com/Dwarf-Therapist/Dwarf-Therapist/master/CHANGELOG.txt)

This will take you to a page with several downloads, including one with "Linux" and "AppImage" in its name. Since Elementary OS is based on Ubuntu, which is fairly common, I would expect the AppImage to work out of the box (as long as your OS is 64-bit).

Perhaps the "Alternative downloads" section could be clarified with another link to the GitHub downloads - my screen is a bit wide, and I didn't immediately notice the "Latest release" link since it was centered.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on July 24, 2020, 05:04:47 am
quick question. what download would I use for elementary os

The AppImage should work on most current distros. But compiling from source will give you a better system integration (mostly using the correct theme from your desktop). The best solution would be to use a package made for your distribution, but I am not aware of any (it does not mean it does not exist).

Perhaps the "Alternative downloads" section could be clarified with another link to the GitHub downloads - my screen is a bit wide, and I didn't immediately notice the "Latest release" link since it was centered.

I rearranged a few paragraphs and links, is that better?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Starver on July 24, 2020, 08:30:07 am
(I see you took out the link to DFFD Win32. Well, you know I'd probably notice that. I know it's (currently) still there. ;))
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on July 24, 2020, 08:40:11 am
I stopped updating it. Windows 32 bits will continue to be available on github. I am only keeping the Windows 64 bits version on DFFD.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: GandalfTheGreyt3791 on July 24, 2020, 11:01:08 am
Ok thx
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Sajiky on August 06, 2020, 02:58:55 pm
Occupation vs profession. I get profession in the game, but in Dwarf Therapist I see mentions of both as if they are distinctly different. I don't see a wiki page on either.

So is there a difference in the game itself, or is this just some Therapist only distinction? Sorting in Therapist, profession sorts how one would expect. But sorting by occupation shows all my little dudes with nothing.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: PatrikLundell on August 07, 2020, 01:10:25 am
DF shows your new migrant as a Legendary Cheesemaker until hes sufficiently trained up as a Furnace Operator to switch profession.
Profession is thus based on the highest ranking skill. I think occupation is what the dorf is doing at the moment (eating, sleeping, praying, smithing, ...).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on August 07, 2020, 03:13:21 am
Occupations (http://dwarffortresswiki.org/index.php/DF2014:Occupation) are positions linked to buildings like tavern keeper or scholar. Profession is the text written next to your dwarf name, it is mostly based on the highest skill (or group of skills), age (baby and child are professions), and military status.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 22, 2020, 03:57:44 am
I've been working on this for years.  I had it once and it slipped, but I got it.  I found my marbles.  My strange mood is complete.

I've been moving back and forth the past 2 years. But I finally solved a problem I've been working on for refactoring the way Dwarf Therapist calculates % of attributes so it arrives at .5 mean, is based on median, hones in on 0% and 100%

I was able to modify both sides of the curve ever so slightly around the .5 mean and hone in on a .5 mean without getting too complex

The trick was grabbing the sum of the negative and positive z scores and refactoring them based on the average of the sums.  This modified the values below .5 and above .5 ever so slightly at a proportional value smoothing out the curve!

Now time to code it

https://imgur.com/gallery/7MkJ2bT

https://docs.google.com/spreadsheets/d/17Ax6LfJwQt1oDe-mbBxb6ItMoxT2CaQenum4FRjvdB8/edit#gid=0

Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on August 22, 2020, 07:29:21 am
Did I get it ? https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/162/commits/abc79c6331b6fce95dfb073a54590d0486623109
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 22, 2020, 07:54:31 am
It's a factor not an add

I believe it should be (average factor stuff should be done first)

 double average_factor = (m_factor_low + m_factor_high) / 2.0;
    m_factor_low /= average_factor;
    m_factor_high /= average_factor;

if (z > 0.0)
            z = m_factor_high*z;
        else
            z = m_factor_low*z;

[edited]
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on August 22, 2020, 08:02:35 am
This part is for the sumif + abs in D4, F4 and D7, F7. The factor is applied (what you do in column E) in get_ratings (call to cdf).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 22, 2020, 08:12:32 am
Ah.  That's good to hear.

I'm compiling it atm so I can't really look at it (I suppose I could with notepad++)
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 22, 2020, 08:37:36 am
Looks like you got it.  I was debating about further modification incorporating the rankecdf into the final equation (column h), but it's not necessary (as .5 mean [as equal to median] is pretty much achieved with a range from 0 to 100).   The reason it's not needed is because both are based on median (including the stratified sdev), just one is a bell curve the other a flat distribution.  I.e. Incorporating ECDF (column h) would merge a bell curve with a flat distribution curve (both using median) and spread the scores out a bit more.

I'm very happy that you were able to code it so quickly.  I'm off to eat breakfast.  I'm not exactly looking at logs atm.  But if you got column f in there, you're good
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 22, 2020, 01:38:38 pm
It's funny because I had a dream about Dwarf Fortress the other night.  Some flying winged creature took away a dwarf.  I was explaining it to an elf that we would be building a fortress soon underground and set cage traps for that winged creature.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Starver on August 22, 2020, 02:49:32 pm
Flying winged creature taking a dwarf away..? Yeah, could be a dream.

Talking to an Elf..? Nightmare!
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Uthimienure on August 22, 2020, 02:50:49 pm
Is there a way in DT to sort by or display the level of cave adaptation?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on August 22, 2020, 02:58:40 pm
By creating a custom grid view (either from scratch or from a copy of an existing one), add a column "Trait" → "Cave Adaptation".
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Uthimienure on August 22, 2020, 03:49:49 pm
By creating a custom grid view (either from scratch or from a copy of an existing one), add a column "Trait" → "Cave Adaptation".

Thanks!  It worked  :)
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 22, 2020, 05:17:17 pm
I seem to vaguely recall discovering a problem with the way nurse is calculated

It doesn't make sense it's all in red

https://imgur.com/gallery/oyhn5V9

yeah, this post

http://www.bay12forums.com/smf/index.php?topic=122968.msg7306290#msg7306290

dwarf.cpp

2962 to 3126

I'm trying to figure out how to open a ticket in github.

The issue seems to be there is no check if the role's aspect has no members. If so.  The aspect should be excluded from the averaging (weighted sum).

Edit
It's definitely the skills.  I looked through the logic and the logic is coded in there.  I'm in the works of debugging it.  If I remove the skills section altogether, the roles look "normal" for nurse.  But if I do by either forcing 50 or not.  It's either all red or all black.  I'm thinking the aspect isn't reporting empty for some reason.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on August 23, 2020, 03:55:33 am
I don't have any issue with nurse. Are you sure you don't have a broken override?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 23, 2020, 06:24:24 am
Hmm. Idk

Is your lawmaker good too?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on August 23, 2020, 06:31:18 am
Do you mean "Lawdwarf (Weak)"? I don't see anything wrong with this one either.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 23, 2020, 06:34:28 am
Sorry early. Ye lawdwarf. I'm using a build w mwmod. So maybe thats it. I'll check against vanilla
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 23, 2020, 07:47:21 am
While I'm checking it out (I did see skill at 0 confirming my concern, but still haven't fired up vanilla and/or downloaded new .ini files).

The way the weighted sum calculates right now is if an "aspect" doesn't have any elements in the vector, it returns 50% which doesn't harm or improve the overall score.

This was chosen quickly because we thought it made sense, but now I see how it penalizes the score

Say I have a role with all aspects defined.  Then that role potentially could have scores ranging from 0 to 100%

Now say I have a role that is attributes only and the rest are 50% (7)

This means that if I have 100% in Attributes, that 100% will be brought down to 57% ((6*50%+100%)/7)

Instead, it makes more sense to let the role be defined by the score of the attributes itself without averaging in the "null" elements.  Instead of .50f being stored for m_role->[aspect].empty(), a null should be stored and the end average should be done over non null values.

This is what I have for vanilla using a fresh build.  I'm not sure what an override is.  I reset all settings and the nurse is still getting 0

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on August 23, 2020, 09:15:34 am
If you are comparing dwarves for a given role, it does not matter. If you are comparing roles for a given dwarf, yes it is important. But I am not sure what is the best solution. If you want to have each role use the best of the 0-100% range, I think it would be best to apply role ratings normalization per-role, instead of globally. Then applying the empty aspects ratings or not is simply a linear transform and should not affect the result of the normalization. This brings the question: which normalization method? I currently have three: Stratified MAD (+ factors), ECDF, double linear transform (around median).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 23, 2020, 10:19:07 am
Stratified MAD (+ factors) should be capable of replacing everything. 

As to per role, I compare across roles.  I see what your point is if your doing it job by job, but that was something I tried to overcome (I was doing that in spreadsheets way back) but the point of the labor optimizer was to start from a single list of %'s and start from the highest and work down (across roles)
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 23, 2020, 10:47:30 am
I don't get it... for one my breakpoint didn't stop, but two it looks normal now...

https://imgur.com/a/xNF7zTv
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 23, 2020, 11:04:13 am
I reran some comparisons. I *think* it has something to do with the version of mwmod I'm running. I thought I checked vanilla earlier and saw the same behaviour. It could still be an edge case bug, but rechecking the exact same build against mw and vanilla shows no issue with vanilla (at least in terms of the original issue, low role scores for nurse and lawdwarf).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 23, 2020, 11:15:41 am
I did a really cheap hack to work around my aspect concerns.

Here is a screenshot showcasing the difference.

Spoiler (click to show/hide)

https://imgur.com/gallery/iJOtZIQ

that seems to solve my problems.

I still get lower than normal nurse scores but they are much better, in the 40% range.  Looking at the log (using --trace) I see they have higher scores than what is drawn, but I believe that's because the final scores are ran through another normalization method at the end and these scores are on the lower end of other scores.

*In my log it no longer shows skills reporting at 0% but 50% and I exclude that from the weighted sum with the above code [reasoning: knowing that's hard coded for missing aspects]

Suggested workaround until a better solution:
https://github.com/cvuchener/Dwarf-Therapist/compare/rolecalc...thistleknot:rolecalc
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 23, 2020, 01:56:35 pm
Clement

I forget how skill rust was calculated into role ratings if at all.  Do you know?  Is it counted at all?  Is there a penalty applied (like potential) for skills that are experiencing rust?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 23, 2020, 05:52:26 pm
If anyone is curious how I proposed the median normalization.  (I've successfully moved from staging stuff in excel to R)

This is the code in R (screenshot with a picture of how it works).  This method replaces ECDF and the prior "s transform methods" in one go.  Why?  Because it combines distance as well as median calculations which makes flat distribution curve of ecdf redundant.

It's the best of both worlds and arrives at almost exact .5 mean and min is ~0% and max ~100%

Things I dont know. If my stratified sdev and its use in pnorm are the best approach, but what was most important for me was a .5 mean and near 0 and 100%. I see in this case min is almost 10% but if I had to err I'd prefer to err on tail ends as this is meant to be used in a weighted sum model (akin to Euclidean distance). I could stretch the refactoring process out or decrease the standard deviation but averaging the zscore sums as a refactoring base seems to be good enough for my purposes

https://imgur.com/gallery/d9iYI8d

https://github.com/thistleknot/medianNormalization/blob/master/medianNormalization.R
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on August 24, 2020, 04:42:59 am
Stratified MAD (+ factors) should be capable of replacing everything. 
I had the impression it worked on almost normal distribution. I've always seen you testing it on attributes data. What about skills? personality traits? needs? roles?

As to per role, I compare across roles.  I see what your point is if your doing it job by job, but that was something I tried to overcome (I was doing that in spreadsheets way back) but the point of the labor optimizer was to start from a single list of %'s and start from the highest and work down (across roles)
The way this greedy algorithm works make it even more important that ratings can be compared across different roles. Although it is very subjective to compare roles. What is best a farmer or a butcher?

I did a really cheap hack to work around my aspect concerns.
We still don't know if there is a bug here.

I forget how skill rust was calculated into role ratings if at all.  Do you know?  Is it counted at all?  Is there a penalty applied (like potential) for skills that are experiencing rust?
From what I can read, I don't think so. Skill rate is used but not skill rust.

Quote from: thistleknot
[...lots of personal messages with numbers and formulae...]

Sorry, I did not read all of it. I cannot comment on that any way. I can translate your math to C++, but I don't exactly know what you are doing. I fear you are overthinking it. Don't forget the goal is to help the player find the best dwarf, not to generate perfect numbers that only a statistician can appreciate.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 24, 2020, 01:37:05 pm
I definately am overthinking it

The "bug" wasn't so much the nurse roll. I still think it was related to skills reporting 0 but for some reason the logs stopped showing zero after that change which I know wasn't checking for 0

The change in the code is to exclude aspects with no elements from the weighted sum algo

Thanks for being patient w my neurotic stats rants

As to the method it can replace

The minmax around mean/median and merge w ecdf

I'd be wary of using it on skills
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 24, 2020, 08:41:45 pm
I was thinking about it (as I always do) and it was kind of bothering me that I made the method non linear.  For our purposes it didn't really matter, but for machine learning (I was sharing this method on linkedin) it's not a "good" method as it's not linear.  That's what standard deviations normally do.  They work with a mean which has the statistical property of averaging to 0 (i.e. average z score is 0 when using the mean).  But that's not the case with median.

So I was thinking how could I make that happen?  I visualized what I would need to do to the curves (the green method is the method you coded in pretty much but with rescaled ends (based on means of <0 and >0 zscores [vs sums of zscores]), which is pretty much fine [i.e. non linear] for game purposes).  However, the blue and orange methods are linear versions of that which also take into consideration the scaling I mentioned.  Actually, blue doesn't do any scaling, but the orange does.

What blue does is say look.  It's more important to map the 25 and 75% points (the avg z scores of <0 and >0) and derive a new centerpoint based on that for a new set of z scores and be happy that the median is still in the middle close enough, but it won't be exactly 50%.  This comes at the benefit of having a 50% mean.  It's kind of a two pass.  The first pass uses a stratified mean to find these 25/75% points, and then derives a new sdev.

Orange, scales both ends (similar to the green using the means of <0 and >0 zscores) before deriving a 25% and 75% point. This comes at the cost of not having exactly a 50% mean, but median will be 50%.  It's close though for large distributions.  Orange derives a new sdev, but uses the median as the centerpoint.  You can think of the orange as the green method, but linear.

https://imgur.com/a/XAuefhw

https://github.com/thistleknot/medianNormalization/commit/6babec227e79fcd9a9ae16ccf86ce2b93434b232

Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 25, 2020, 05:31:25 am
Round 3
Magenta

Linear, mean/median = 50%
No rescaling is done (an issue with the orange method).  Uses median as center point, 25/75% are fluffed but used as a determination of a new sdev which allows for a linear method around median and achieving a 50% mean (in this extremely skewed 3 point sample, 50% mean is almost achieved)

https://imgur.com/gallery/30uNs74

https://github.com/thistleknot/medianNormalization/commit/2df745e6fe5c27e04dd293f491d09abcbb8baab0

Before I was leaning towards blue or orange, but now I'm team magenta

Blue because the overall average was .5 w median near .5

Magenta average ~.5 and median is .5

Idk.  Green still seems to be good enough for our purposes. It's basically two linear minmax's  But you can see them all side by side.  I'd be happy with any method tbh
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 25, 2020, 07:59:44 pm
After hammering things out a bit more, I've come to realize that the problem isn't linear.  That's why I can't arrive at .5 mean as well as median unless both sides of the median have a symmetrical average absolute z score which doesn't happen unless I transform values (and hence a non linear curve). The best solution would be blue for a linear solution (if desiring a .5 mean) else magenta (if desiring median at .5).

So I was thinking, fine I'll go with the green method which is a non linear transform, but that too has a problem by focusing on the average of either side which has an unforeseen consequence of reducing the tails away from their extremes...

So I thought, fine I'll go back to sum of z scores (i.e. sum(abs(z<0)) & sum(z>0)) and rescale based on that average***
 
I did try to use a median based standard deviation vs stratified and I came upon the initial issue I had and forgot which was it would have too many values in the extreme z scores (>3) which had me wanting to fall back to the stratified method...

***which is the formula you coded for me as this has better ends.

Which is full circle back to the initial proposal
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 26, 2020, 08:22:13 pm
old idea I had for melee dwarf and ranged dwarf

http://www.bay12forums.com/smf/index.php?action=post;msg=4054602;topic=122968.30
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on August 27, 2020, 03:59:12 am
I guess the proper link is: http://www.bay12forums.com/smf/index.php?topic=122968.msg4054602#msg4054602

I don't understand, do you want new roles with all the skills? Or do you want to modify the current military roles to include more skills?

I don't mind a complete overhaul for the military roles. The current roles are incoherent: Ambusher and Pikeman includes armor/shield skills, but that's not the case with other weapon skills. Hunter is the role that include only Ambusher (it is the role linked to the hunting labor).
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 27, 2020, 09:22:28 pm
Geezus I can't even link right

I believe what I was getting at was the ability to create custom subgroupings and assign weights to the group as opposed to weights to just aspects then individual items within the aspect. This may be achievable outside of changing code though (by creating the groups in something like excel and creating weights and then copying just the subweights over)

Another idea I had was OR logic for skills (swordsman or macedwarf, and report highest? Maybe a max). Idk if the script editor can do this, it might.

I'll have to look into it this weekend.

BTW I was thinking of creating an R version of how I thought roles could be written (vs spreadsheets) (at least traits, skills, attributes & maybe preferences) and remove irrelevant methods (no more minmax and no more rankecdf) in hopes to better assist in visualizing streamlined proposed code reductions.

But idk if I want to go down a 🐇 hole on skewed skills right now. I know rankecdf was used for skills somehow to score values equal to 0 to <~50% or something like that.

I really like kernel density estimates (kde) and they might be a good solution for skills. Tbh I haven't really looked at skewed solutions in r but they certainly have them. Who knows maybe this median method would work well idk but I havent tried a comprehensive reduction/demo over all methods yet since this new median method
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: thistleknot on August 30, 2020, 11:13:06 am
I didn't want to leave anyone hanging on some R version of things. My damn elbow got infected and laid me out AND I lost my zfs partition due a fire scare when I disconnected everything in a hurry (NAS) but I exported some CSV's and imported them into R to try some things...

So here is my analysis.

Stratified MAD might work better for some scenarios (like dice rolls), but it still is a bad choice for skills.

Using a basic median in place of mean to derive a standard deviation is more than enough for attributes.  When I did that I got near .5 mean average and median was .5.

The only reason the initial method does this weird thing with merging a minmax with a mean and median is because it helped achieve a .5 mean, but the mean isn't important at all for what we hope to achieve  (A 50/50 split) and using a median based approach is more than adequate.

Having said all that.  I don't really have a solution for skills.  It seems pretty easy what I need to do. 

Count only values greater than 0,
derive %'s for that, divide by 2,
and add .5

then convert the 0's to .5
then find average-.5
then adjust the entire set by this amount to bring the skills within a .5 mean.

The question is what normalization method to use for skills.  I believe right now it's using that min/max around mean/median merged with Empirical Cumulative Distribution Function.

That's where i'm kind of stuck right now.  I looked at Kernel Density Estimates but am not done. I still feel like crap atm.

I'm looking at this atm
https://rdrr.io/cran/sn/man/dsn.html

Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: nxsnexus on September 03, 2020, 03:51:52 am
Hi!

The first post states that:
Quote
Compatible with Dwarf Fortress from 0.42.06 to 0.47.04 (some versions may be missing memory layout depending on the operating system).

Currently, I'm running the last Lazy Newb Pack version (with DF 0.47.04) on windows 10 64bits and Dwarf Therapist doesn't work. The error message flashes at the bottom right before I close DT. The error message is related to invalid/missing memory layout. I tried to download the very last version of DT, same issue. I just cannot connect it to my current game.

As it's written in the first post, this issue seems to be known but no workaround is provided. I tried searching this topic and found several suggestions (like going to the data folder and delete anything in the memory_layouts folder) but without success. I also checked in the "data/memory_layouts/windows" folder where the DT executable is and I can find the "v0.47.04_graphics_win64.ini" file.

What can I do to make it work?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on September 03, 2020, 04:20:03 am
The error message when closing DT reminds me of this issue: https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/227

Try disabling the automatic updates.
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: nxsnexus on September 03, 2020, 07:42:54 am
I manage to connect and read my current game by disabling the auto-update. Thank you very much!
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Uthimienure on October 20, 2020, 01:37:56 pm
I'm curious about why the names for artifact and named weapons are different in Therapist than they are in the DF's military equipment screen.

(https://i.postimg.cc/TYpRHcqg/DF-vs-DT-Names-Different.png) (https://postimages.org/)
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on October 21, 2020, 05:02:12 am
Thanks for the bug report, it will be fixed in the next version: https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/231
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Rinin_Rus on October 24, 2020, 01:48:37 pm
Is it any way to unload data from therapist in any convenient format like CSV/XML/JSON?

And if it's not possible what you think would be easier, writing script for DFHack or patch for Therapist?
Title: Re: Dwarf Therapist v41.1.7 | DF 47.04
Post by: Clément on October 24, 2020, 02:12:05 pm
File → Export Current Grid View as CSV

If you want more control over the data, it will be easier to write a DFHack script.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on October 26, 2020, 09:43:35 am
New version released: 41.2.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.2.0)

Small UI improvements and a few more 0.47 fixes (missing goals and artifact names).

Changelog:
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Uthimienure on October 26, 2020, 11:01:21 am
Spoiler (click to show/hide)

Incredibly wonderful !!!    Thank you Clément  :)
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Schmaven on November 01, 2020, 09:20:28 am
I'm not sure if there's a way in vanilla DF, but in Dwarf Therapist, you can tell if a Dwarf has had a mood or not already by if whether or not the description popup from mousing over their name includes "Highest Moodable Skill" or if it just lists their top 3 roles.  I've recently seen "Highest Moodable Skill" goes away after they create an artifact.  This is handy for training up dwarves when you want certain types of artifacts created, but don't want to use up limited resources training a dwarf who already had a strange mood.  Kind of a trivial finding thing, but I didn't know about it until just recently.  One of these days I'll have to read the manual...
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Bumber on November 01, 2020, 08:22:53 pm
I'm not sure if there's a way in vanilla DF, [...]

I think it's listed on their personality page somewhere that they're the creator of <artifact name>.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: A_Curious_Cat on November 25, 2020, 02:30:39 am
Anybody know where to find the latest version of DT precompiled for 32-bit Linux in tar.gz (or similar) format.  I recently got my system back up and running (including reinstalling DF and DFHack), but the distro I'm using has recently become desynchronized from the one it's based on such that package management will not work at all anymore (of course, before, when it "worked", I tried upgrading a commonly used package and it wanted me to completely uninstall over half the packages on my system -including both the init system and the standard C library-. Now all package management tools just fail with an error message on startup), so I can't install the packages I need to compile DT.  Anyways, the problem won't be fixed until the next release of the distro (which could be in two months if I'm lucky, or two years if I'm not), so I'm probably going to have to give in and actually take the time to install a real distro (i.e. one that actually supports AMD64)...

Anyways, I can't play DF without DT, so any responses to my question will be appreciated.

Thank you.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on November 25, 2020, 05:07:33 am
Sorry, I don't have anything portable for linux 32 bit. Do you have a working gcc and cmake? You could download Qt source and compile it. It takes some time, but it may be the simplest solution.

What is your distribution and why don't you want to reinstall it?
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: faalsnor on November 25, 2020, 02:14:26 pm
hello yall!

im new to the game and im trying to use DT .. how do i acces DT ingame? what key to press?
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on November 25, 2020, 05:53:08 pm
You don't access it from the game, you run it alongside the game.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: faalsnor on November 25, 2020, 06:30:31 pm
ah yes i just found out .. thank you!
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Milopolitan on December 28, 2020, 12:09:31 pm
Hello world!

I play on Linux (Ubuntu 20.04) with the LazyNewbPack. However, when I want to start DT, I encounter two problems :

1 - A "TLS initialization failed" error appears, preventing the auto-update of the software. Not that bothersome, but I feel it may be important info, in case it's linked with my second problem;

2 - When I try to connect DT to a game, it fails to find the memory layouts. When I show the details, which contains a list of the folders checked by DT, it shows one folder : /tmp/.mount_dwarft[random letters that change]/usr/bin/../share. However, when I look into that folder manually, I find there is a dwarftherapist folder in it, which contains said memory layouts.

Is there a way, outside of building a custom version of DT, to make sure that it sees my memory layouts?
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on December 28, 2020, 12:24:32 pm
This looks like an issue with your LazyNewbPack, which one is it?

You can try the appimage from github (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.2.0), as a workaround.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Milopolitan on December 28, 2020, 12:30:55 pm
It was the LinuxDwarfPack.

I've tried the AppImage, as you have suggested, but I don't have much more luck. The same error shows up again.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Erendir on December 28, 2020, 12:33:44 pm
The tooltip for roles lists what influences the current score including the weights, f.e. "Organizer (w1.00)", "Tables (w1.00)" etc.

Is there a way to see corresponding (weighted) numeric values, something like "Organizer (1.00 x 1100 = 1100)", "Tables(1.00 x 0 = 0)"?
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on December 30, 2020, 05:48:44 am
It was the LinuxDwarfPack.

I've tried the AppImage, as you have suggested, but I don't have much more luck. The same error shows up again.

I tested the appimage on my computer (fedora 33) and it does find the memory layouts in /tmp/.mount_DwarfT2oX3pR/usr/share/dwarftherapist/memory_layouts/. How do you start DT? Do not use options like --portable with the appimage. Are the environment variables XDG_DATA_DIRS or XDG_DATA_HOME set?

Which LinuxDwarfPack are you using exactly? I see two versions there (https://dffd.bay12games.com/who.php?id=7393). "LinuxDwarfPack-0.47.04-r4 (DFHack-r4)" use the --portable option but the memory layouts seem to be in the right place (no dwarftherapist subdir in share). "LinuxDwarfPack-0.47.04-r5 for Ubuntu/Debian" is more annoying for me to open, I did not investigate it yet.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: McArcady on December 30, 2020, 05:48:11 pm
It was the LinuxDwarfPack.
I've tried the AppImage, as you have suggested, but I don't have much more luck. The same error shows up again.
Hi Milopolitan,
Your problem seems to be specific to the release of DT provided in the LinuxDwarfPack, sorry for that! (I'm the maintainer)
If you want we can investigate in this thread: LinuxDwarfPack (http://www.bay12forums.com/smf/index.php?topic=157712).
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Milopolitan on December 31, 2020, 10:15:54 am
<snip />

I tested the appimage on my computer (fedora 33) and it does find the memory layouts in /tmp/.mount_DwarfT2oX3pR/usr/share/dwarftherapist/memory_layouts/. How do you start DT? Do not use options like --portable with the appimage. Are the environment variables XDG_DATA_DIRS or XDG_DATA_HOME set?

Which LinuxDwarfPack are you using exactly? I see two versions there (https://dffd.bay12games.com/who.php?id=7393). "LinuxDwarfPack-0.47.04-r4 (DFHack-r4)" use the --portable option but the memory layouts seem to be in the right place (no dwarftherapist subdir in share). "LinuxDwarfPack-0.47.04-r5 for Ubuntu/Debian" is more annoying for me to open, I did not investigate it yet.

I was using the "for Ubuntu/Debian pack". I will try with the other pack, just in case.

I start DT through the LNP itself. Thus, I think I will see directly with its maintainer. XDG_DATA_DIRS is set to a value (/usr/share/ubuntu:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop) but XDG_DATA_HOME is not set.

EDIT : It appears I'm able to start DT correctly with the LinuxDwarfPack-0.47.04-r4 (DFHack-r4) pack. I will use it going forward. Thank you for the time you've spent helping me.

<snip/>
Hi Milopolitan,
Your problem seems to be specific to the release of DT provided in the LinuxDwarfPack, sorry for that! (I'm the maintainer)
If you want we can investigate in this thread: LinuxDwarfPack (http://www.bay12forums.com/smf/index.php?topic=157712).

I will do that right as soon as I test the other pack.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Uthimienure on January 15, 2021, 09:17:07 pm
Hi Clément  :)
Thank you again for the wonderful work you have done on DT!  While customizing a grid view, I was looking for a column that would show if a dwarf currently has a bedroom assigned to them... but had no success.  Is it possible to show bedroom ownership?
(edit: version 41.2.0 in Windows)
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Schmaven on January 15, 2021, 09:21:10 pm
Hi Clément  :)
Thank you again for the wonderful work you have done on DT!  While customizing a grid view, I was looking for a column that would show if a dwarf currently has a bedroom assigned to them... but had no success.  Is it possible to show bedroom ownership?
(edit: version 41.2.0 in Windows)

I know the z status screen will show you just whether or not they have a room / furniture assigned to them, but I haven't yet found a way to determine which room is theirs other than scanning each room.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Uthimienure on January 15, 2021, 09:39:28 pm
Hi Clément  :)
Thank you again for the wonderful work you have done on DT!  While customizing a grid view, I was looking for a column that would show if a dwarf currently has a bedroom assigned to them... but had no success.  Is it possible to show bedroom ownership?
(edit: version 41.2.0 in Windows)

I know the z status screen will show you just whether or not they have a room / furniture assigned to them, but I haven't yet found a way to determine which room is theirs other than scanning each room.

Search for part of the dwarf's name in the "R" screen and you can zoom right to their bed  :)
(I forgot who tipped me off on that one recently, but my hat's off to them!)
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on January 16, 2021, 06:42:52 am
Hi Clément  :)
Thank you again for the wonderful work you have done on DT!  While customizing a grid view, I was looking for a column that would show if a dwarf currently has a bedroom assigned to them... but had no success.  Is it possible to show bedroom ownership?
(edit: version 41.2.0 in Windows)

No, it is not possible. But "someone" already suggested it (http://www.bay12forums.com/smf/index.php?topic=168411.msg8127392#msg8127392).
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Uthimienure on January 16, 2021, 11:05:35 am
Hi Clément  :)
Thank you again for the wonderful work you have done on DT!  While customizing a grid view, I was looking for a column that would show if a dwarf currently has a bedroom assigned to them... but had no success.  Is it possible to show bedroom ownership?
(edit: version 41.2.0 in Windows)

No, it is not possible. But "someone" already suggested it (http://www.bay12forums.com/smf/index.php?topic=168411.msg8127392#msg8127392).
;) ;) ;)
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Libertine Angel on January 20, 2021, 06:34:20 pm
Apologies if this has been mentioned before, I searched the topic and saw nothing about it, but will we get a column in Other Skills for the Schemer skill at some point? I'm not sure how functional it is but hey, Alchemy's still there, and at least Schemer is nominally considered as useful for Dungeon Masters.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on January 22, 2021, 09:42:32 am
There are several skills that DT supports but are not shown in any default grid view. But you should be able to add them in your own custom grid views. Suggestions for improving the default ones are always welcome.

Since "Schemer" is useful for the Dungeon Master position, I could add it next to the other "administrator" skills (Appraiser/Organizer/Record Keeper). What do you think?

Other missing skills are:
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Libertine Angel on January 26, 2021, 12:51:51 pm
Yeah, I think that makes sense, though it's perhaps worth noting that its actual effect or use is not yet apparent to us anyway. Reader seems to go hand-in-hand with the Student skill, it improves with both military training and library studies, I've always thought it helped Scribes but I could be entirely wrong.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on January 29, 2021, 06:12:25 am
Experimental memory layouts for 0.47.05:
Only based on DFHack automated update (https://github.com/DFHack/df-structures/pull/418) right now, they may be full of bugs, but at least linux 64 gives a proper dwarf list.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: clinodev on January 29, 2021, 06:57:12 am
I had just put up a little "Pack" with Phoebus and Soundsense, then saw the alert for this! Nice! It shows the right number of dwarves, Win64, no complaints or crashing.

Uploading it with Therapist now. . ..

https://dffd.bay12games.com/file.php?id=13880
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: SEM58 on January 31, 2021, 08:11:01 am
On one dwarf the happiness pop-up showed
interest this is unknown thought (271)
seems to relate to the in-game thought
 was interested having an intellectual discussion with a friend.

and on another dwarf (presumably the other half of the discussion)

pleasure this is unknown thought (271)

 felt pleasure having an intellectual discussion with a friend.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on January 31, 2021, 09:01:57 am
This new thought is for 0.47.05, right?

Reported to df-structures: https://github.com/DFHack/df-structures/issues/419
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Uthimienure on February 06, 2021, 05:26:52 pm
I'm using DT v41.2.0 with DF 47.05 in clinodev's Vettlingr's Revenge pack: https://dffd.bay12games.com/file.php?id=14952

DT is showing a blank box for Agility for one dwarf. Hovering shows 161/1061.  I've seen zeros before, but never a blank one.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on February 07, 2021, 04:54:39 am
It should not happen with attributes if you are using text drawing method. I managed to get an empty cell using negative attribute values, but your raw values seem correct. There may be an issue with how the rating is computed.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Uthimienure on February 07, 2021, 08:09:45 am
It should not happen with attributes if you are using text drawing method. I managed to get an empty cell using negative attribute values, but your raw values seem correct. There may be an issue with how the rating is computed.
I'm using [PRINT_MODE:TWBT]
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Clément on February 07, 2021, 08:43:51 am
I meant Dwarf Therapist drawing method (Options → Grid Options → Skill Drawing Method), if it something else than "Text" (for example "Growing Center Box"), the cell is expected to be empty for around average values.
Title: Re: Dwarf Therapist v41.2.0 | DF 47.04
Post by: Uthimienure on February 07, 2021, 08:58:57 am
I was a bit confused by that, it didn't make sense that TWBT could have any effect, lol. 
My DT setting is "text" for skill drawing method.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on February 10, 2021, 10:02:00 am
New version released: 41.2.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.2.1)

Add support for DF 0.47.05

Changelog:
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: verbose on February 10, 2021, 12:33:33 pm
New version released: 41.2.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.2.1)

Add support for DF 0.47.05

Changelog:
  • added memory layouts for DF 0.47.05
  • added new thoughts for DF 0.47.05
  • added "Tactician" and "Schemer" columns in "Other Skills" tab

Glad to see an update with the newest version. When can we expect for the AUR package to be updated? Thanks!
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on February 10, 2021, 12:52:15 pm
I am not the maintainer of the AUR package, I only created the COPR package for Fedora.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Ziusudra on February 10, 2021, 03:35:31 pm
Glad to see an update with the newest version. When can we expect for the AUR package to be updated? Thanks!
Soon after you go here (https://aur.archlinux.org/packages/dwarftherapist) and choose "Flag package out-of-date". That way the maintainer will know DT has been updated. (I've done it this time, so that action has changed to "Flagged out-of-date (2021-02-10)".)
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: verbose on February 11, 2021, 01:23:59 pm
Soon after you go here (https://aur.archlinux.org/packages/dwarftherapist) and choose "Flag package out-of-date". That way the maintainer will know DT has been updated. (I've done it this time, so that action has changed to "Flagged out-of-date (2021-02-10)".)

I will remember that. It seems WorMzy Tykashi has updated the package as well.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Oklat on February 17, 2021, 11:34:11 pm
Hi ,
i downloaded the DT source code and then built the package and installed it (i used Ubuntu 20.04 BTW) but now i want to uninstall it but i dont know what is the package's name and i cant seem to find it :( .
i used this command -> dpkg -l | grep dwarf-therapist . but it doesn't returned anything . can someone help me on how to uninstall it ?
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on February 18, 2021, 05:39:00 am
There is no script to build a Ubuntu package, so I assume you installed directly using cmake. Sadly, cmake does not have an uninstall target, so you will have to delete the files manually. In your build directory, there may be an install_manifest.txt file listing the files that were installed.

If you don't find it, the files installed by DT are (relative to the prefix, /usr/local/ by default):

When running DT, it may creates files in:
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: feelotraveller on March 07, 2021, 02:31:57 am
In the needs tab the description in the tooltip for 'Take it Easy' is incorrect.  It shows the description for 'Practice Skill' instead.  Trifling but I don't think it's been mentioned.  :)
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on March 07, 2021, 05:56:24 am
done (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/239)
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: jecowa on March 09, 2021, 08:37:14 am
Thanks for compiling with multiple versions of Qt. Just curious what the version of Qt is that Dwarf Therapist version 41.1.6 for Mac used.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on March 09, 2021, 09:04:00 am
I don't know. Whatever homebrew had at the time (source (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/v41.1.6/.travis.yml#L32)). You can check the about dialog, it should tell you both build and run time versions for Qt.

Do you know which versions are really useful? I am not sure if three versions are really required. And travis may force me to reduce my macos build machine usage.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: jecowa on March 09, 2021, 12:09:03 pm

Here's the results from 18 Mac users of a 2020-02 Dwarf Fortress survey (using the latest version for each user when they picked multiple):

And using the earliest version for each user when they picked multiple:

These versions of Dwarf Therapist all run for me in 10.14 Mojave:

Also 41.1.3 w/ qt5.13.2 worked for me a while back when testing on Sierra.

Just tried DT41.2.1 w/ qt5.9.9 on my old 10.7 Lion laptop. It did not run. It looks like the latest version of Dwarf Therapist that runs on 10.5 Leopard, 10.6 Snow Leopard, and 10.7 Lion is Dwarf Therapist 36.0.0 w/ qt4.8.6.

Just tried running the latest three on an old computer running Mac OS X 10.10 Yosemite:

I'm not sure if it's increasing compatibility to build for qt5.9.9 and qt.5.12.10. With the qt5.9.9 build saying it requires Mac OS X 10.13, that's the same that the latest version of Qt also requires. Maybe there's also a minimum OSX version that you can set to make it work on 10.10?

It doesn't seem like older versions of Mac OS X are very popular. It might be kind of nice to have a version that runs on 10.11 El Capitan, since the minimum requirements for running Mac OS X were increased with 10.12 Sierra, but probably not that big of a deal. I don't have a 10.11 El Capitan machine to test on, but it looks like Qt5.9.9 builds should run on both.

If Qt5.9.9 build can be made to work on Mac 10.10-10.12 and with the Qt5.15 build working on Mac 10.13-10.15, then the Qt12 build seems redundant.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on March 09, 2021, 12:36:20 pm
Settings for DT 41.2.1: https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/589da28282636792d96efdf6e5cf29bfcaa2ac1b/.travis.yml#L28-L42

Qt 5.9 was intended for 10.10 (maybe 10.9) compatibility. The CMAKE_OSX_DEPLOYMENT_TARGET variable must not be working as expected. I should try MACOSX_DEPLOYMENT_TARGET instead (cmake doc (https://cmake.org/cmake/help/latest/variable/CMAKE_OSX_DEPLOYMENT_TARGET.html)).
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: jecowa on March 10, 2021, 07:22:42 am
Just found a computer running 10.12 Sierra.

Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on March 10, 2021, 09:57:08 am
While you are in a testing mood, could you check these ones (https://github.com/cvuchener/Dwarf-Therapist/releases/tag/untagged-434981bac7a342d0c89b)? I'd like for the 5.9 version to work with 10.10-10.12 and the 5.15 with 10.13-10.15 (and hopefully macOS 11 too).
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: jecowa on March 10, 2021, 07:54:28 pm
Thank you!
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: jecowa on March 14, 2021, 10:17:18 pm
I was trying to incorporate beliefs into custom roles. Can I make a roll try to find a dwarf with a negative number on a belief? I think it can only look for positive numbers. I tried setting the weight to a negative number, but I don't think it let me do that.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on March 15, 2021, 05:20:56 am
Use a negative weight for the belief (not for the whole category, but you shouldn't be able to do that any way). Only the absolute value is used for the average computation. The sign is used for flipping the rating inside the 0-1 interval.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: jecowa on March 15, 2021, 01:59:14 pm
Thank you. It's sorting them by how much they like nature. But using custom roles make Dwarf Fortress freeze up until I exit out of Dwarf Therapist. Also, my changes to roles and my new custom roles don't get saved. Do you know where it tries to save those?
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on March 15, 2021, 02:49:33 pm
They are saved in the settings file (~/.config/Dwarf Therapist/Dwarf Therapist.ini I think), it may be the old bug where it is owned by root.

I have no idea why custom roles would freeze DF though.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: jecowa on March 15, 2021, 03:15:11 pm
Dwarf Fortress freezes when Dwarf Therapist opens the "Reading preferences from raws…" dialogue box for making a New Custom Role. Dwarf Therapist continues to work fine and can read and commit, but Dwarf Fortress is frozen until I quit Dwarf Therapist.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on March 15, 2021, 03:58:12 pm
If it is the dialog I may have an idea.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: qwip on March 15, 2021, 08:57:16 pm
Hi, I'm new to DT and trying to work through the examples in the (original!?) manual. Is there an updated manual because I'm stumbling into some script errors. Or is there a thread where all these errors have already been rehashed?  Once I get DT figured out, I'll help update the manual, too.
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on March 16, 2021, 04:17:48 am
The manual has not received any important update since it was added to the project (see its history (https://github.com/Dwarf-Therapist/Manual/commits/master)). You can report issues here or on github (https://github.com/Dwarf-Therapist/Manual/issues).
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Evrett33 on March 29, 2021, 08:09:34 pm
I've got a weird issue. I've got the most recent version of the DF Starter and Dwarf Therapist wont start up unless my computer is connected to the internet. The game and DF hack pop up fine but if I try to start up therapist offline nothing happens. No task manager activity or anything..just a 1/4 second thought spin. If I start up therapist while online it pops up fine and continues to work if I immediately disconnect. Is it calling home for updates or something?
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: feelotraveller on March 30, 2021, 01:01:15 am
Clément may have more/better to say but as an immediate workaround start therapist (online) and then from the menu:
file -> options -> general and under Updates uncheck the 'Automatically Check for Updates' box.
Now it should launch offline without problems.
(Updates can still be checked for manually under the help menu when online.)
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: Clément on March 30, 2021, 04:12:26 am
I've got a weird issue. I've got the most recent version of the DF Starter and Dwarf Therapist wont start up unless my computer is connected to the internet. The game and DF hack pop up fine but if I try to start up therapist offline nothing happens. No task manager activity or anything..just a 1/4 second thought spin. If I start up therapist while online it pops up fine and continues to work if I immediately disconnect. Is it calling home for updates or something?
Clément may have more/better to say but as an immediate workaround start therapist (online) and then from the menu:
file -> options -> general and under Updates uncheck the 'Automatically Check for Updates' box.
Now it should launch offline without problems.
(Updates can still be checked for manually under the help menu when online.)
Yes, this looks like a known issue (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/237). The github issue thread contains a link to a fixed version you may want to test or you can use feelotraveller's workaround. If you are unable to access the options because of the crash, you may edit the settings file directly (C:\Users\YourName\AppData\Roaming\Dwarf Therapist\Dwarf Therapist.ini on Windows), find "check_for_updates_on_startup" and change true to false.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on April 05, 2021, 08:34:06 am
New version released: 41.2.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.2.2)

Changelog:
Title: Re: Dwarf Therapist v41.2.1 | DF 0.47.05
Post by: jecowa on April 08, 2021, 10:28:14 pm
While you are in a testing mood, could you check these ones (https://github.com/cvuchener/Dwarf-Therapist/releases/tag/untagged-434981bac7a342d0c89b)? I'd like for the 5.9 version to work with 10.10-10.12 and the 5.15 with 10.13-10.15 (and hopefully macOS 11 too).

I tested that Qt5.9.9 one in MacOS Big Sur 11.2.3 on both Intel Mac and Apple Silicon. I didn't have admin access on those computers, but it seemed like it was working.

Can anyone running Catalina and/or Big Sur confirm that [this build](https://github.com/cvuchener/Dwarf-Therapist/releases/download/untagged-434981bac7a342d0c89b/DwarfTherapist--osx64-qt5.9.9.dmg) of Dwarf Fortress can read/commit to a Dwarf Fortress instance on Big Sur or Catalina? I'm only on Mojave, but it's working fine on Mojave.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Uthimienure on April 29, 2021, 10:19:01 am
Probably no big deal because this is the first time I've ever seen it happen, but throwing it out here in case it might be useful info.
DT v41.2.1 with DF 0.47.05 unmodded in Windoze 10.

In Military-Alt and Roles, we have all these 50's. Everything in Roles is at 50. All other tabs look normal.
It persists after quitting DT and DF and reopening the same fort.

However, it went back to normal after opening a different fort, saving it, and then reopening the problem fort.

Spoiler (click to show/hide)

Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: A_Curious_Cat on May 22, 2021, 04:07:27 pm
Hey, I've got a problem.

DT is showing that I have 18 dwarves:

(https://i.postimg.cc/CLknKbDt/missing-persons-DT.png)

While DF only shows that I have 16:

(https://i.postimg.cc/G3ZsrXBG/missing-persons-DF.png)

Is there any way to make the two missing dwarves show up in DF?  I'd kind of like to make one of them my manager...

thanks in advance.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on May 22, 2021, 04:46:24 pm
Could they be new migrants? DT may show them a little earlier than DF and I see you have a new arrival. Wait and they should enter the map.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: A_Curious_Cat on May 22, 2021, 05:24:08 pm
Could they be new migrants? DT may show them a little earlier than DF and I see you have a new arrival. Wait and they should enter the map.

They were and they eventually did.  I also saved and reloaded.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Paaaad on May 22, 2021, 06:43:47 pm
Could they be new migrants? DT may show them a little earlier than DF and I see you have a new arrival. Wait and they should enter the map.

They were and they eventually did.  I also saved and reloaded.

Yeah, I think DT shows the entire wave as soon as you get the announcement, while DF won't tell you about a dwarf until they actually walk onto the map.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Starver on May 23, 2021, 06:58:37 pm
I find that a particularly useful feature. Once the migrant wave is 'decided' (I get a hefty lag-pause whenever that sort of thing happens, in my setup - from DF, that is, not a complaint about DT) I immediately review all newcomers and pre-arrange their active skills upon arrival, rather than the 'super-vanilla' method of keeping the cursor around the migrant-entry edgepoint and editing 'live' as each new non-child/non-pet arrival shows up... which can be a couple of dozen or maybe more such individuals.

The only problem I have is that I habitually de-Hunterise hunters (ditto fisherdwarves, but without this issue) which leads to having to visit the edge-spot once they've all arrived and specially arrange (to speed up the usual stock-movement, by using the parallel Dump-designation that seems easier to prioritise) that the  immediately-dropped crossbows and quivers are brought into a handier 'internal' location. But that's usually better than having stray hunters going wandering around the map again as soon as they've fulfilled their desire to report to the Meeting Area/whatever.

IOW, very normal. You can always just ignore them until they're properly on-map or even properly in-fort, if not until you decide their arrival settings need changing, or do as I do and 'cheat' a little (it's more just a time-saver - at least for me, who spends so much time on Pause for various other micromanagement reasons ;) ).

(I unset Corpse Hauling for all 'processed' individuals, as a handy flag (except on the rare occasion I need a corpse hauling, which is usually not coincident to an incoming wave so can be tagged temporarily as required without upsetting this system), plus assign a nickname (so the nicknameless are the same set). Though I'm fairly sure there's a wave-of-arrival order/group setting (that I just don't personally use, sorry, but I can see its usefulness) that can cue you in on the latest (possibly not on-map) arrivals if you have no other system in place.)
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: A_Curious_Cat on May 23, 2021, 07:26:37 pm
I usually just let the hunters hunt until they run out of ammo.  Then they come back inside and behave like everyone else.

And, yes, the ability to see the new migrants in DT before they appear on the map is one of the great things about DT.  Almost as good as the ability to use the roles screen to guide skill allotment when embarking carefully.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Schmaven on May 23, 2021, 11:31:30 pm
...  Almost as good as the ability to use the roles screen to guide skill allotment when embarking carefully.

That is a waaay easier method than what I've been doing up until now...
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: A_Curious_Cat on May 24, 2021, 02:03:44 am
...  Almost as good as the ability to use the roles screen to guide skill allotment when embarking carefully.

That is a waaay easier method than what I've been doing up until now...

Choose “embark” and then choose “prepare carefully”.  Once the screen that lets you assign skills to your starting seven comes up, fire up DT.  You can even use DT to set their labors and they’ll have those labors set when the game begins.  Also, not that the DT roles screen can only guide skill allotment. It can’t assign skill points.  That has to be done in DF.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: oasis789 on July 21, 2021, 06:32:24 am
is it possible to edit dwarf stats, traits etc in DT
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: PatrikLundell on July 21, 2021, 07:18:19 am
is it possible to edit dwarf stats, traits etc in DT
No. That's not what it's intended for.

You'd need gui/gm-editor to hack those DF data structures. There might be some tool specifically intended for hacking dorfs.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Erendir on July 22, 2021, 05:49:52 pm
I have something strange happening right now...
Almost every role is at 50, with very few lower.
And one guy has Fish Cleaner at 0 and no tooltip when hovering over.
(https://i.ibb.co/5kYq4Vh/af199a6c-6fcd-4fb6-8e34-17c93811c584.png) (https://ibb.co/LrQ4Rfd)

The "definitely not a Fish Cleaner" (and actually a necromancer) is probably what's causing it.
(https://i.ibb.co/Lk0DthH/image.png) (https://ibb.co/h7gxW1w)

No idea how and why this happened.

After saving the game and loading it anew the roles are kind of fixed now and the attribute values of this dwarf improved themselves a bit.
(https://i.ibb.co/WHxj7m4/image.png) (https://ibb.co/6ynLGj7)

But according to DFhack, Endurance is actually 1088 and Recuperation is 1133.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on July 22, 2021, 06:04:51 pm
Does it happen every time or is it just this one time? There have been reports of weird stats, but they often disappear after reloading. So I never was able to reproduce this bug.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Erendir on July 23, 2021, 05:05:28 am
Does it happen every time or is it just this one time?

The bugged stats change their values after reloading (and may partially disappear), but with following save I'm always having 2-3 stats with unreasonable values. https://dffd.bay12games.com/file.php?id=15611 (https://dffd.bay12games.com/file.php?id=15611)
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: lethosor on July 23, 2021, 10:53:05 pm
is it possible to edit dwarf stats, traits etc in DT
No. That's not what it's intended for.

You'd need gui/gm-editor to hack those DF data structures. There might be some tool specifically intended for hacking dorfs.
gui/gm-unit is one, although it doesn't necessarily support editing everything.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on July 25, 2021, 04:22:15 am
Does it happen every time or is it just this one time?

The bugged stats change their values after reloading (and may partially disappear), but with following save I'm always having 2-3 stats with unreasonable values. https://dffd.bay12games.com/file.php?id=15611 (https://dffd.bay12games.com/file.php?id=15611)

Thank you, this should be fixed in the next release (whenever that is). For reference, fix commit is here (https://github.com/Dwarf-Therapist/Dwarf-Therapist/commit/5e856aa00822f1ac98e880685cf6a0bd768d8f47).
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Carch on August 05, 2021, 02:46:15 pm
so. I seem to have a new issue, can't find it on here. I downloaded the new version of DF (well. 'new' the january 28th one, 47.05); but dwarf therapist doesn't know how to talk to it? I tried the 64 bit, 32 bit. the legacy ones. none of them seem to work. they all return checksums that don't match up to the ones DT is looking for.

I got DT 41.2.2 from both the DFFD and the github, and really don't know what I can try at this point.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on August 05, 2021, 03:19:28 pm
On Windows, I guess, if you tried the legacy versions (by the way, they are not supported). The "checksums" are actually timestamps on Windows, what are they? Did you extract the data directory next to Dwarf Therapist.exe? Do you see 0.47.05 in HelpMemory Layouts? If yes, extend the section and look for the path to the memory layout, there should be only one and pointing to the DT's data directory.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Carch on August 06, 2021, 04:27:42 am
oh. nevermind. this is on me. apologies. it seems that I opened the wrong download first and just assumed it was the one from the main page (bay12/dwarves). I feel like an idiot now XD
and yeah, I did that, and there was a 47.05 memory layout listed for 32 and 64 bit, just didn't match up with the... legacy.. 47.05? in either 32 or 64 bit. but I thought I'd started with the main download, and didn't. < <
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Kat on August 22, 2021, 05:41:42 am
In much much earlier versions of Dwarf Therapist, labours like woodcrafting, stonecrafting, bonecarving, leatherworking, were all under the "craftsdwarf" profession group.
Currently, woodcrafting is grouped with carpentry/bowyery/woodcutting, and stonecrafting grouped with masonry/stonedetailing.

Is there a way to change this to the earlier grouping ? Why was it changed to begin with ?
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on August 22, 2021, 06:04:59 am
Is there a way to change this to the earlier grouping ?
You can create custom grid views either from scratch or by copying an existing one then modifying it. It is done from the grid views window (Windows → Docks → Grid Views).

Why was it changed to begin with ?
I don't know. It was done by splintermind in this commit (https://github.com/Dwarf-Therapist/Dwarf-Therapist/commit/77a2a4d28ee7c3ca18c3cb46be717e75de039424).
Quote from: splintermind
updated the default gridviews to the most recent full/compact versions
posted and removed the 'labors no spaces' view as it's replaced with the
full version. these may not be the final views as they may need a bit
more tweaking due to the influx of recent complaints about them
I guess you'll have to dig in the old forum thread to find the related discussion.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: feelotraveller on August 22, 2021, 03:03:27 pm
Why was it changed to begin with ?

Back in 2014 ResMar (author of the DT Manual) overhauled the gridviews.  There was some, ah, animated, discussion back at that time but it nearly all revolved around other isses - whether to hide some labours or not, and whether various labours should be turned off by toggling other, perhaps unrelated, labours (hence the -full and -compact default labour gridviews that are now included) - so the change persisted.  That's the history.

Not sure the reason was ever ennunciated (and ResMar hasn't been around for 5-ish years) but I think it has to do with visuals.  A craftsdwarf grouping following default DF would be 13 entries wide making it the biggest 'profession' group by a large margin.

Personally I'm not a fan of the current default grouping of DT, nor that of DF.  While each has something going for them I prefer my own.

Feel free to create the gridview you want for yourself.  :)
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: mross on August 27, 2021, 09:56:36 pm
At first I thought DT was mis-counting animals and visitors as dwarves:

https://i.imgur.com/oFhgx0l.png

https://i.imgur.com/vYlGof8.png

But there are 35 names in the dwarf list, and the animals tab is showing animals as normal. I'll try giving each dwarf a unique nickname and see what shows up in the units menu.

Done. Only a single dwarf from the latest migration wave appears in any of the unit lists, and DT claims that wave contained 22 dwarves.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: PatrikLundell on August 28, 2021, 04:07:28 am
DT reports migrants before they have all shown up on the embark, while DF only count the ones that have arrived. I wait with processing migrants until all of them have arrived.
Is this the cause of your issue mross?
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: clinodev on September 14, 2021, 08:36:12 pm
A returning Dwarf Fortress player reminded me of the 45 degree headers of Dwarf Manager, which were indeed easier to read. Part of me is utterly convinced that Dwarf Therapist had this feature at one time, but I can't find any evidence for it, or any current setting.

Regardless, it would be a lovely quality of life enhancement!

Dwarf Manager pic for clarity:

(https://df-walkthrough.readthedocs.io/en/latest/_images/dftutorial77.png)
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on September 15, 2021, 03:49:34 am
They are difficult to draw, and it would be even more difficult to manage clicks on them for sorting. It is better that the headers fit in axis-aligned rectangles.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: LynXsh on September 22, 2021, 12:50:24 am
Greetings!
Missed some versions and decided to finally grab the latest DT available. But it seems that it lost WinXP support somewhere between v41.2.0 and v41.2.1.
I know, nobody loves necromancy but sometimes it's not us to decide which OS the machine has.
So, I've the question: should I stick to v41.2.0 on this station or there will be WinXP supporting releases now and then?
Thanks!
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on September 22, 2021, 09:46:05 am
There won't be Xp compatible builds any more. One could still make them with minor (at the moment) patches, but you would still need something more recent than Xp for building it (and it has been the case for a long time).
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Starver on September 22, 2021, 12:19:40 pm
I've still got a (final ever?) working DT on my XP machine, from a prior period when I knew I had to not kust tale the standard download, I think (it's a while ago, I've slept since!). It's my generally offline PC[1] so what works keeps on working unless I actively do enough to break it. ;)


When I get back to that particular machine (at the weekend) I'll have to check what versions of everything I think I have. It may have involved Windows patching (or maybe taken advantage of some auxilliary .dlls/whatever I had to use to solve a related issue with something else), but that might take more effort to establish.

I will of course bemoan that someone/several someones (upstream of Clément) has made the conscious decision to needlessly drop backwards compatibility (and/or make it necessary to jump through many awkward hoops to re-establish it). The last time I had to look explicitly at this problem (for someone else) it turned out to be an attempt to grab a non-XP system call that wasn't even supposed to be used (lazy compiling/linking process, outwith the obvious control of the programmer).

Not that I expect everything to be fully 8086-compatible[2], but it's Windows-executable encapsulation that is the big problem, and you can never predict what they will do with that even if they tell you their plans (https://www.techradar.com/uk/news/software/operating-systems/microsoft-confirms-there-will-be-no-windows-11-1293309).


Maybe (and I've resisted this on my example of this legacy equipment, so far) the solution is to dual-boot[4] to a Linux build. Yes, there's a lot of 64bit-only/default distros you need to steer round (assuming it isn't 64 bit hardware, despite the XPness) or try to find the right legacy build that's not differently bad in terms of required dependencies, whether you go for a build or package or whatever from there on in.


[1] My online stuff, on my own equipment, tends to be either Raspberry Pi or Android, neither of which (easily!) run DF anyway, so the fact DT is at least as hard to run on each, respectively, has never been an issue I ever decided to try to solve. ;)

[2] Oh, ok then, make it MMX-era/586, for the pipelin8ng bonus though DF never really needs anything other than integer operations, when you look at it.

[3]Nvm

[4] Containerising/OS-within-OS is probably a worse idea without a more modern system with the more current possibilities already built in. I imagine the slowdown of using something like a Cygwin environment would be worst-of-all-worlds in many ways[5]. And if you can run WSL then you're on a system where you wouldn't need to!

[5] Ironically, I used to run Windows DF on Linux via WINE, a lot, in my early days with DF. I dread to think how inefficient that was, but that was the better hardware at the time - though dual-booted with XP I was mostly booting to Fedora for everything else - and I don't even know if a native Linux build/package/semi-source was available for DF. It was definitely long before DT would have had to have been factored into the equation.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on September 22, 2021, 03:09:14 pm
I will of course bemoan that someone/several someones (upstream of Clément) has made the conscious decision to needlessly drop backwards compatibility (and/or make it necessary to jump through many awkward hoops to re-establish it).
I won't. New OS adds new system calls (or library calls for windows) that can dramatically improve some part of your application. DT don't use directly anything that requires Vista or later, but I've dropped support for linux kernels much more recent than Windows Xp (and no one complained, although I did prepare workarounds for CentOS/RHEL 6).

[2] Oh, ok then, make it MMX-era/586, for the pipelin8ng bonus though DF never really needs anything other than integer operations, when you look at it.
MMX/SSE is not for floating point only, it can be used for vectorizing integer operations too. You can implement string operations using SSE.

[5] Ironically, I used to run Windows DF on Linux via WINE, a lot, in my early days with DF. I dread to think how inefficient that was
Wine would only slow down the API calls it is emulating. Everything else is run natively, I don't think the performance impact would be huge for DF.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Starver on September 22, 2021, 04:53:17 pm
It's a battle I've long lost, and didn't even intend to bother you or anybody else with it, I was really going to just tell LynXsh I'd try to find out what state of play I'm successfully using, and suggesting a generalised (non-trivial) workaround in case it inspired some other idea that might have worked for them.

(My MMX comment, BTW, was intended to say pretty much as the spirit you responded to it. Meaning I under-explained that allusion, as well as over-waffled the whole thing. Nothing changes.)
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: the hawk on October 01, 2021, 12:17:25 pm
Hello!

Sort of new to the forums, when I went to create an account I discovered I had one from 6 years ago but never posted anything.
Hope I'm in the right forum for this. I'm trying to create my own grid view based on the standard "roles" view, with custom roles. Most of it is working well, until a certain point.

I have a custom role made and saved with a unique name. Even after closing DT and restarting its still there to be edited. But when I edit my grid view and look for the role there, it doesn't show up. Weirdest thing is, it did show up once and was added to my grid view but then it gave all the dwarfs blanks instead of a number. Which is weird because I hardly changed anything (I gave the miner role "agility" to check as well and changed some weightings). After that I have not gotten it to show up at all. Any idea what I'm doing wrong here?
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on October 01, 2021, 12:54:01 pm
What system are you using? What is the exact name of your custom role? Can you export it and post the content of the file here?
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on October 02, 2021, 10:11:15 am
I am trying to migrate the Dwarf Therapist builds from Travis CI to Github Actions. There are some test builds available here (https://github.com/cvuchener/Dwarf-Therapist/releases/tag/ghactions-test). I'd like some confirmation that there are still working for everyone (especially the macOS ones that I cannot test myself). Note that the Linux AppImage is built on ubuntu 18.04 instead of 16.04 previously, this may break compatibility with older distros (like Debian 9 stretch a.k.a. oldoldstable). For macOS, the qt 5.9 version is supposed to be targeting macOS 10.9, the qt 5.15 version is supposed to be targeting macOS 10.13 (no change here).
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Schmaven on October 02, 2021, 03:24:13 pm
As awesome as linux sounds, I have yet to put much time into figuring that out, so I'm just using Dwarf Therapist on Windows OS for now.  Out of curiosity about the future, is it intended for Dwarf Therapist to continue in some form into the Premium Dwarf Fortress release?  I know some people are adamantly opposed to the "spreadsheet" approach to labor management, but I personally enjoy the flexibility offered by Dwarf Therapist when it comes to seeing who is capable of doing what. 

Though I suppose with the changes in the Premium release, some of the DT functionality is supposed to be included in the base game at that point, so to some degree we'll have to wait and see?
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: PatrikLundell on October 03, 2021, 12:37:06 pm
Since Toady seems to aim at reducing player control over labor (aiming at simplifying management, not out of malice) I'd say there will be an even greater need to get some of it back. Those who don't like a spreadsheet approach aren't likely to be DT users anyway.
However, a lot of things will get tossed into the air with the Premium release, so it will probably take some time for DFHack layout mapping to catch most of the parts DT needs. Since DT has its own UI anyway, the UI remake itself won't affect it, only the data changes that were driven by the UI changes.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: clinodev on November 07, 2021, 04:08:41 pm
I definitely hope Dwarf Therapist and most other utilities continue updating!

As best I can tell, the "adamantly opposed to the "spreadsheet" approach" is very much in the minority, but of course Tarn belongs to it, sooooo. I will say that from private correspondence I think the new system granularity of control looks pretty good. All of the "but what if we want to X?" questions I could come up with seemed to have simple answers.

Anyway, that's mostly off-topic for the thread, apologies.

Clément, I was teasing a streamer for not using the dark mode, they said "What dark mode?" and I told them where it was, at which point it transpired that they use Linux and the options I expected were not there, and they were not sure how to make use of "This must be the adwaita dark theme I use on Linux, I don't think you will find it for Windows. This is done with Qt style plugins." Perhaps add the standard options for less adept linux users?
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on November 07, 2021, 05:10:48 pm
Clément, I was teasing a streamer for not using the dark mode, they said "What dark mode?" and I told them where it was, at which point it transpired that they use Linux and the options I expected were not there, and they were not sure how to make use of "This must be the adwaita dark theme I use on Linux, I don't think you will find it for Windows. This is done with Qt style plugins." Perhaps add the standard options for less adept linux users?

It depends on the version and distribution they are using. If they are using the appimage, it should have the extra dark styles. If they are using a version built for their distribution, it should use their global theme by default.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: thistleknot on December 18, 2021, 04:08:59 am
I just built the latest git version (master) and I'm getting a tls error.  I downloaded openssl... maybe I'm mistaken and that wasn't necessary.  I copied the memory_layouts into /data/memory_layouts from the git source... thoughts?

https://imgur.com/a/g2Y1yj2

Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on December 18, 2021, 05:31:54 am
It's most likely an outdated openssl version. There are multiple branches (1.0, 1.1), if you don't install the one your Qt version is using (likely 1.1), it won't change anything. You may already have the library as part of the Qt SDK in <QtDir>\Tools\OpenSSL\<Arch>\bin, copy them next to Dwarf Therapist.exe.

It will only prevent the updater from working, so if you don't care, you can disable it and you won't see the error messages.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: thistleknot on December 18, 2021, 08:23:42 am
qt doesn't have openssl that I see

I used processexplorer to search for openssl when I had a released version of dwarf therapist.

I tried every x86_64 version on

https://indy.fulgan.com/SSL/

I also tried the versions here
http://slproweb.com/products/Win32OpenSSL.html

and here
http://wiki.overbyte.eu/wiki/index.php/ICS_Download#Download_OpenSSL_Binaries_.28required_for_SSL-enabled_components.29

apparently master is not Dwarf-Therapist-41.2.2

but it's not that big a deal, just a minor annoyance

edit: same tls message if I build 41.2.2
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: thistleknot on December 18, 2021, 09:15:26 am
fyi, there is still this bug

https://github.com/cvuchener/Dwarf-Therapist/compare/rolecalc...thistleknot:rolecalc

you can see it with nurses
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: thistleknot on December 18, 2021, 12:02:02 pm
I can get it to compile and run, but when I copy the build between computers I get a ton of missing dll errors.

What is the option to move the build?  Is it portable?  I tried that... still getting errors.


nevermind.  I tried to copy over my masterwork's dwarf therapist which was why the discrepency.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on December 18, 2021, 12:16:22 pm
fyi, there is still this bug

https://github.com/cvuchener/Dwarf-Therapist/compare/rolecalc...thistleknot:rolecalc

you can see it with nurses

What is the issue with nurses?

I can get it to compile and run, but when I copy the build between computers I get a ton of missing dll errors.

What is the option to move the build?  Is it portable?  I tried that... still getting errors.


nevermind.  I tried to copy over my masterwork's dwarf therapist which was why the discrepency.

Use the "install" target from the cmake scripts, then run windeployqt on the installed DwarfTherapist.exe (see the package script (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/.github/scripts/Windows/package.sh), you can ignore the plugin part).
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: thistleknot on December 18, 2021, 02:15:07 pm
fyi, there is still this bug

https://github.com/cvuchener/Dwarf-Therapist/compare/rolecalc...thistleknot:rolecalc

you can see it with nurses


look at their ratings on a fresh fort.  All the scores are below 20%.  I believe it's counting empty aspects negatively when aspects should be ignored if there are no values (only score a category if values are present, else it's null and null should drop from a scoring).  It's like using na as 0 when doing a mean of an array.  Drop the NA's instead.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: thistleknot on December 18, 2021, 06:44:06 pm
Use the "install" target from the cmake scripts, then run windeployqt on the installed DwarfTherapist.exe (see the package script, you can ignore the plugin part).

I have no clue what you are talking about.  I got it to work just fine without having to do any of that.

I'm all ears, I just don't know what "install" target from the cmake scripts is

nor do I know what windeployqt is

nor do I understand how I'm supposed to use a bash script in a windows environment (I'm almost certain you're not expecting me to use wsl for it).

screenshots are worth a thousand words

edit: I see you use bash to compile (using cmake).

I think i'm good with qt creator.  I got the process saved and I'm playing with dt.
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on December 19, 2021, 04:57:20 am
I don't see what is wrong with nurses, the ratings look correct to me.
(https://i.ibb.co/Yd8W9qD/Capture-d-cran-de-2021-12-19-10-54-51.png) (https://ibb.co/Yd8W9qD)
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: thistleknot on December 19, 2021, 09:03:07 am
I vaguely seem to recall having this issue before and finding the root cause.  Something to do with a default role being read from masterwork... but that shouldn't be the case if I use the latest build against vanilla (after having used it on masterwork).

but I can't find the forum reference [if I made one]

I've confirmed that nurses appear "normal" in vanilla.  I'm so confused.

Steps to reproduce:

I copied the latest build over masterwork's utilities folder.  Nurses looked f'd up.  So I made a change in the code (as I mentioned earlier) and they looked better.

Then you said it looks fine.  I then used the same build I had copied over the utilities folder on vanilla, and nurses look fubar'd.

So I downloaded an untouched dt version.  Closed everything out.  Opened vanilla [and your version].  Nurses look okay.

Using the same dt version.  I then open masterwork game and look at nurses and they're all fubar'd.

https://imgur.com/a/A4afOgB

So something is going on.  The role shows it's an attributes only role.  So if it's attributes only and it's excluding all other "aspects/categories" (i.e. NA',s or not including them in the calculation).  Then why are all the roles below 20%?  Maybe it's weights?

I'm unsure why it works in vanilla without any issue or what the issue actually is.

Edit:

I can say with confidence that my code modification didn't fix it either...  But I can tell an attributes only role is not calculating correctly for some reason in a modded game
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on December 19, 2021, 10:10:20 am
There is an old bug where roles have weird values. But no one found how to reproduce it. It may disappear after a simple refresh.

There is also a bug with cursed unit attributes (64 bits only), it is not fixed in the latest release, but it should be in master. You may try these builds: https://github.com/cvuchener/Dwarf-Therapist/releases/tag/ghactions-test
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: thistleknot on December 19, 2021, 11:53:30 am
a refresh never solves it in my case.  I think it's some bug and I'm not sure what it is.  If it's a curse or what not... it's affecting all the dwarf's ratings [at least for nurse].  I think last time I wanted to walk through the code's outputs and figure out where it's breaking.  To turn on logging I think I start dt as such?

/logging -trace

or
   
   --trace

Ughh... bug testing an algorithm that is 10+ years old...
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: Clément on December 19, 2021, 02:12:57 pm
a refresh never solves it in my case.  I think it's some bug and I'm not sure what it is.  If it's a curse or what not... it's affecting all the dwarf's ratings [at least for nurse].
If some attributes have insane values, it will break the attribute ratings and then the role ratings. Did you check the "Attributes" grid view?

I think last time I wanted to walk through the code's outputs and figure out where it's breaking.  To turn on logging I think I start dt as such?

/logging -trace

or
   
   --trace

Ughh... bug testing an algorithm that is 10+ years old...
--trace
Title: Re: Dwarf Therapist v41.2.2 | DF 0.47.05
Post by: amade on December 27, 2021, 10:53:34 pm
Hi, first time posting in this thread.

I seem to have stumbled on a bug with Dwarf Therapist. For some reason, everyone's roles are valued at 50, except for the sole zombie dwarf at the top of the table, but even his role values are a bit weird. Don't know what caused it. The zombie has been around for several months already and the roles were working fine during that time so I doubt it's him. No customization used, except a filter to hide kids and long-term residents.

Spoiler (click to show/hide)

Checked everyone's attributes, skills, etc, and everything else seems to be fine. No noticeable adverse effects within the game itelf.

DF0.47.05
PyLNP 0.14a
Dwarf Therapist 41.2.2

EDIT: Just read the post before mine and realized that it really was the zombie after all because of his insane attributes. I tried chucking him into lava and it fixed the roles table.
Is there any way I can keep the bugger without it messing with Dwarf Therapist?
Title: Re: Dwarf Therapist v41.2.3 | DF 0.47.05
Post by: Clément on December 28, 2021, 09:53:07 am
New version released: 41.2.3 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.2.3)

Changelog:
@amade, this version should fix your issue.

Edit: sorry, my new github actions failed and there is no package being uploaded to the release page.
Edit2: I triggered a manual workflow and it is generating packages now. I hope they're working.
Title: Re: Dwarf Therapist v41.2.3 | DF 0.47.05
Post by: amade on December 28, 2021, 10:39:29 am
Nice, thanks!

Though the issue seems to have somehow fixed itself for now, but I'll get the latest version anyway.
Title: Re: Dwarf Therapist v41.2.3 | DF 0.47.05
Post by: amade on December 30, 2021, 08:33:22 am
I think I found an unexpected behaviour: Squads returning from Missions are listed as a recent migration wave when selecting migration wave group view. Might not be a bug with Dwarf Therapist itself but more with how DF handles returning squads (like migrants, they flash a grey X when coming in from the map edge).
Title: Re: Dwarf Therapist v41.2.3 | DF 0.47.05
Post by: PatrikLundell on December 30, 2021, 11:11:58 am
Yes, I believe that to be an issue with DF itself rather than DT. When people are sent out (on a raid, as a messenger, etc.) they are removed from the fortress completely, so any items they owned, room allocations, etc. are wiped, and as they return they're treated as new inhabitants, with only the squad membership being retained.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on July 22, 2022, 11:39:05 am
New version released: 41.2.4 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.2.4)

Not much happening. Just one bug fix. Also updated Qt to 5.15.2 for Windows and Linux AppImage, it may fix other qt related issues.

Changelog:
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Jundavr on September 28, 2022, 11:32:14 am
Apologies if this isn't the appropriate place to ask for modding help.

What determines wether you can change an unit's labors or not (in Dwarf Therapist)? If I use a script to make a wild animal person to join the fort, I can't change their labors using DT, but I can through v-p-l in the game interface.

If instead I cage the animal person and add [PET_EXOTIC] tag, train them, and wait for them to petition then finally remove the [PET_EXOTIC], then DT works fine with them.

So it seems that my script isn't actually setting the correct links in all the appropriate fields. I've been looking at DT's source in github but am having no luck finding where these checks happen. I'd REALLY like to update the script according to what Dwarf Therapist uses to determine wether the unit is a citizen of your civ/fort.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on September 28, 2022, 01:05:02 pm
Does the tool-tip over the labor cell tell you the reason?

m_can_set_labors is set in this function (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/v41.2.4/src/dwarf.cpp#L1093-L1141).

m_is_animal is set here (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/v41.2.4/src/dwarf.cpp#L667) (TRAINABLE is fake caste flag implied by PET_EXOTIC and others). On this line I'm not sure if CAN_LEARN is the right flag, maybe it should be CAN_SPEAK (http://www.bay12forums.com/smf/index.php?topic=168411.msg8053187#msg8053187). Would that make a difference in your case?

Citizenship is set for non-animal if they are part of the fortress entity historical figure list ("historical_entity.histfig_ids" in dfhack).
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Jundavr on September 28, 2022, 03:30:51 pm
Citizenship is set for non-animal if they are part of the fortress entity historical figure list ("historical_entity.histfig_ids" in dfhack).

This is what I was missing, thanks a lot!

On this line I'm not sure if CAN_LEARN is the right flag, maybe it should be CAN_SPEAK (http://www.bay12forums.com/smf/index.php?topic=168411.msg8053187#msg8053187). Would that make a difference in your case?

It certainly wouldn't, I'm using it on [INTELLIGENT] creatures, who have both.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Paaaad on December 06, 2022, 10:42:29 pm
Am able to confirm DT is unable to communicate with the Steam version of DF. DT at least knows DF is open, but that seems to be all at first glance.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: lethosor on December 07, 2022, 03:00:24 am
That's effectively the case for all new versions of DF - Dwarf Therapist requires a memory layout file in order to talk to DF, and that hasn't been made yet. It will probably take longer than usual this time due to the number of changes in DF.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 08, 2022, 05:00:14 am
I did not even buy the game yet. But Quietust has already updated df-structures. Here is a memory layout for 0.50.01. I have no idea if it works at all. Expect crashes and data corruption.

Code: [Select]
[info]
checksum=0x638d2f18
version_name=v0.50.01 SDL win64
complete=true

[addresses]
cur_year_tick=0x141b588a0
current_year=0x141b588a8
dwarf_civ_index=0x141d9b418
dwarf_race_index=0x141d9b424
fortress_entity=0x141da1be0
historical_entities_vector=0x141de2ea8
creature_vector=0x141df6760
active_creature_vector=0x141df6778
weapons_vector=0x141df6b40
shields_vector=0x141df6bd0
quivers_vector=0x141df6c18
crutches_vector=0x141df6c60
backpacks_vector=0x141df6c78
ammo_vector=0x141df6c90
flasks_vector=0x141df6f48
pants_vector=0x141df7668
armor_vector=0x141df76c8
shoes_vector=0x141df76e0
helms_vector=0x141df76f8
gloves_vector=0x141df7710
artifacts_vector=0x141df77b8
squad_vector=0x141ef4df8
activities_vector=0x141ef4e58
fake_identities_vector=0x141ef92a8
poetic_forms_vector=0x141ef9470
musical_forms_vector=0x141ef94a0
dance_forms_vector=0x141ef94d0
occupations_vector=0x141ef9560
world_data=0x141efd100
material_templates_vector=0x141efde30
inorganics_vector=0x141efde48
plants_vector=0x141efde78
races_vector=0x141efdfe8
itemdef_weapons_vector=0x141efe068
itemdef_trap_vector=0x141efe080
itemdef_toy_vector=0x141efe098
itemdef_tool_vector=0x141efe0b0
itemdef_instrument_vector=0x141efe338
itemdef_armor_vector=0x141efe350
itemdef_ammo_vector=0x141efe368
itemdef_siegeammo_vector=0x141efe380
itemdef_glove_vector=0x141efe398
itemdef_shoe_vector=0x141efe3b0
itemdef_shield_vector=0x141efe3c8
itemdef_helm_vector=0x141efe3e0
itemdef_pant_vector=0x141efe3f8
itemdef_food_vector=0x141efe410
language_vector=0x141efec30
translation_vector=0x141efec60
colors_vector=0x141f08578
shapes_vector=0x141f08590
reactions_vector=0x141f086f8
base_materials=0x141f09598
all_syndromes_vector=0x141f0ab38
events_vector=0x141f0b1d8
historical_figures_vector=0x141f0b238
world_site_type=0x0080
active_sites_vector=0x00048390
gview=0x1412a3910
viewscreen_setupdwarfgame_vtable=0x1411b1d60

[offsets]
word_table=0x0050

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

[general_ref_offsets]
ref_type=0x0010
artifact_id=0x0008
item_id=0x0008

[race_offsets]
name_singular=0x0020
name_plural=0x0040
adjective=0x0060
baby_name_singular=0x0080
baby_name_plural=0x00a0
child_name_singular=0x00c0
child_name_plural=0x00e0
pref_string_vector=0x0148
castes_vector=0x0178
pop_ratio_vector=0x0190
materials_vector=0x24b0
flags=0x01a8
tissues_vector=0x24c8

[caste_offsets]
caste_name=0x0020
caste_descr=0x0220
caste_trait_ranges=0x057c
caste_phys_att_ranges=0x11f0
baby_age=0x04c0
child_age=0x04c4
adult_size=0x04d8
flags=0x06a8
body_info=0x06c0
skill_rates=0x08c0
caste_att_rates=0x1404
caste_att_caps=0x1534
shearable_tissues_vector=0x16c0
extracts=0x39c0

[hist_entity_offsets]
histfigs=0x00e0
beliefs=0x0d10
squads=0x11b8
positions=0x10b0
assignments=0x1100
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]
event_year=0x0008
id=0x0020
killed_hist_id=0x0028

[item_offsets]
item_def=0x00e0
id=0x001c
general_refs=0x0038
stack_size=0x0078
wear=0x009c
mat_type=0x00b0
mat_index=0x00b4
maker_race=0x00b8
quality=0x00ba
artifact_id=0x0000
artifact_name=0x0008

[item_subtype_offsets]
sub_type=0x0028
base_flags=0x0030
name=0x0060
name_plural=0x0080
adjective=0x00a0
tool_flags=0x00a0
tool_adjective=0x00d0

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

[weapon_subtype_offsets]
single_size=0x00f0
multi_size=0x00f4
ammo=0x00d0
melee_skill=0x00c8
ranged_skill=0x00ca

[armor_subtype_offsets]
layer=0x0010
mat_name=0x00c0
other_armor_level=0x00c4
armor_adjective=0x00e0
armor_level=0x0104
chest_armor_properties=0x0110
pants_armor_properties=0x0120
other_armor_properties=0x00e0

[material_offsets]
solid_name=0x00b8
liquid_name=0x00d8
gas_name=0x00f8
powder_name=0x0118
paste_name=0x0138
pressed_name=0x0158
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]
name=0x0008
custom_profession=0x0080
profession=0x00a0
race=0x00a4
flags1=0x0110
flags2=0x0114
flags3=0x0118
meeting=0x0120
caste=0x012c
sex=0x012e
id=0x0130
animal_type=0x0138
civ=0x0140
specific_refs=0x01a8
squad_id=0x01d8
squad_position=0x01dc
recheck_equipment=0x0268
mood=0x0348
birth_year=0x0374
birth_time=0x0378
pet_owner_id=0x03a4
current_job=0x04b8
physical_attrs=0x05e4
body_size=0x06c8
size_info=0x068c
size_base=0x0690
curse=0x0820
curse_add_flags1=0x080c
turn_count=0x0920
souls=0x0a60
states=0x0988
labors=0x0a98
hist_id=0x0c10
artifact_name=0x09e8
active_syndrome_vector=0x0c80
syn_sick_flag=0x004c
unit_health_info=0x0d28
temp_mood=0x07f8
counters1=0x07e0
counters2=0x07fc
counters3=0x0958
limb_counters=0x0c18
blood=0x06a4
body_component_info=0x04d0
layer_status_vector=0x0048
wounds_vector=0x0590
mood_skill=0x04c0
used_items_vector=0x0d30
affection_level=0x000c
inventory=0x03f8
inventory_item_mode=0x0008
inventory_item_bodypart=0x000a

[syndrome_offsets]
cie_effects=0x0020
cie_end=0x0018
cie_first_perc=0x0098
cie_phys=0x00b0
cie_ment=0x00cc
syn_classes_vector=0x00c8
trans_race_vec=0x00e0

[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=0x0098
pants_vector=0x00b0
gloves_vector=0x00c8
shoes_vector=0x00e0
shield_vector=0x00f8
weapon_vector=0x0110
uniform_item_filter=0x0004
uniform_indiv_choice=0x0030

[activity_offsets]
activity_type=0x0004
events=0x0008
participants=0x0048
sq_lead=0x00b4
sq_skill=0x00bc
sq_train_rounds=0x00c8
pray_deity=0x00b0
pray_sphere=0x00b4
knowledge_category=0x00c0
knowledge_flag=0x00c4
perf_type=0x00b0
perf_participants=0x00e0
perf_histfig=0x000c

[art_offsets]
name=0x0008

[viewscreen_offsets]
view=0x0008
child=0x0008
setupdwarfgame_units=0x0e90

[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
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: clinodev on December 09, 2022, 06:52:50 am
Mmm, no luck on 50.01-testing or 50.02, unfortunately, even jiggling around with version numbers and checksums.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: zenos14 on December 09, 2022, 11:23:53 am
Is the idea behind Dwarf Therapist even compatible with the new labor system? Or is it too early to know yet?
That's something I'm kinda worried about, that the changes to way labors work might mean Dwarf Therapist might not be able to do what it's supposed to do anymore
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 09, 2022, 12:56:11 pm
You tell me. As I said above, I did not get the new version yet. So I don't know.

From what I read in a few previews and discussions, there is a new system grouping labors together similar to DT's current super labors/custom professions. Although there may be some technical difficulties interacting with it, I don't think it makes it impossible for Dwarf Therapist to work with this new system.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: chris_v on December 09, 2022, 04:49:08 pm
I have the new version and have a couple of observations:
1. The new skills system is just a thin layer over the old one. So the old skills system still exists underneath. In many situations and menus you see the old system. The most obvious place is the "prepare carefully" menu which is shows the old skills system organized in a couple of tabs. Also, in the skills tab on a dwarf's menu you see the dwarf's skills organized according to the old system.

2. The new system is awful and makes the game unplayable for any advanced player. It is one of those situations where they tried to make things simpler and made them much more complicated instead.

So whoever is doing dwarf therapist, please get it done it is more needed than ever. That new $30 game that hundreds of thousands of people are buying right now is downright unplayable at advanced level without it. If I do not get dwarf therapist soon, I will be looking to get my money back.

I know tarn said that he did not want to have players look at spreadsheets, but guess what you made that type of a game. Skills are extremely important in DF, a skilled farmer here a skilled stonecrafter there, can increase your food or wealth by a factor of three or four. And a skilled armorer can easily win battles. But now you cannot make your dwarves do the jobs that they are skilled in, you cannot get them to improve their skills?

So yeah .... please someone get Dwarf Therapist going so that I can enjoy this game I have been looking forward to for such a long time.


Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: lethosor on December 09, 2022, 05:16:44 pm
Dwarf Therapist is a volunteer-driven project. People will work on it when they have time. Because of the larger-than-usual changes to DF, support for v50 will take longer than usual (the same goes for DFHack and other utilities).

You may also be interested in this perspective on the new labor system: https://www.reddit.com/r/dwarffortress/comments/zg0spw/please_try_to_use_the_new_labor_system_the_way/
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Deon on December 09, 2022, 07:30:09 pm
Thanks for the post lethosor. Indeed, it looks like there's no more need of "autoassign" script, and the new labor system works well, I ran a couple of fortresses with it and enjoyed it.

I would still like to have Therapist at some point when/if someone decides to update it, but it's not as critical anymore (read it: the game is now playable without it for me).
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 09, 2022, 07:53:38 pm
1. The new skills system is just a thin layer over the old one. So the old skills system still exists underneath.

Skills (http://dwarffortresswiki.org/index.php/DF2014:Skill) and labors (http://dwarffortresswiki.org/index.php/DF2014:Labor) are different things. I don't expect skills to have changed much. But labors may have, or at least the way they are managed by the game or by the players.

So whoever is doing dwarf therapist, please get it done it is more needed than ever. That new $30 game that hundreds of thousands of people are buying right now is downright unplayable at advanced level without it. If I do not get dwarf therapist soon, I will be looking to get my money back.
That would be me, except if someone else comes out of nowhere and beats me to it (it's free software anyone can work on it). And I don't think you will get a working Dwarf Therapist any time soon, at least definitely not in the kind of delay that would allow a refund.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: chris_v on December 09, 2022, 08:25:46 pm
Well, thanks for letting me know. And I do appreciate you doing dwarf therapist by the way. I have been using it all the time with dwarf fortress and it has been invaluable. Well I guess beggars cannot be choosers ... I do hope you or someone else that knows this stuff gets this done soon. But of course I understand you are doing this purely on volunteer basis and I do not have any right to rush you. So please do not take any of these posts as me rushing you, merely as me pointing out how valuable and important your utility is.

I will try to decide whether to ask for a refund or not. If I do let them have my money it will be more for an appreciation of the last 10 years of Dwarf Fortress than for the steam version which I do not find very much fun currently. But I will probably just put it on the side and wait for someone to get dwarf therapist working.

And while I cannot make up your mind, please do not be swept up by the idea that the skills/labors system has somehow been changed and dwarf therapist is no longer needed. I beg to differ.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: chris_v on December 09, 2022, 08:46:25 pm

You may also be interested in this perspective on the new labor system: https://www.reddit.com/r/dwarffortress/comments/zg0spw/please_try_to_use_the_new_labor_system_the_way/
[/quote]

I read this and I disagree. I think it is more a statement of wishful thinking than the actual state of the game. It is really nice to think that dwarves would themselves choose the best dwarf to do each task but in practice this does not happen. Maybe there is code that says if multiple dwarves are eligible for a job the one with the highest skill gets it, but what happens in practice is that dwarves are busy doing all kinds of stuff and when a new job comes up, the right dwarf is usually busy doing something else. So the wrong dwarf gets the job. The right dwarf then finishes doing his unrelated work, but by then the wrong dwarf is already busy doing the job that is wrong for him. Of course what you want is for the job to be left unfilled until the right dwarf becomes free.

What is most frustrating is that this is just not how things would be done in reality. Granted it is difficult to speak of reality in fantasy game contest, but if you were in a similar real situation (say you were the chief of a medieval castle) would you have your expert leatherworker try to injure himself by chiseling out stone goblets while your expert stonecrafter is fumbling about trying to put a thread in a leatherworking needle with his fat strong stone crafting fingers? Tarn may say that it is bad to look at excel sheets but the reality is that any good leader already has an excel sheet in his mind of what every single one of his charges is good or bad at. And the fact that we as game players want to look at an actual table rather than memorize all of our dwarves names and faces and strengths and weaknesses is more due to the necessary time compression of game playing than anything else.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Erendir on December 10, 2022, 05:41:06 am
Quote
You may also be interested in this perspective on the new labor system: https://www.reddit.com/r/dwarffortress/comments/zg0spw/please_try_to_use_the_new_labor_system_the_way/

I read this and I disagree. I think it is more a statement of wishful thinking than the actual state of the game. It is really nice to think that dwarves would themselves choose the best dwarf to do each task but in practice this does not happen. Maybe there is code that says if multiple dwarves are eligible for a job the one with the highest skill gets it, but what happens in practice is that dwarves are busy doing all kinds of stuff and when a new job comes up, the right dwarf is usually busy doing something else. So the wrong dwarf gets the job. The right dwarf then finishes doing his unrelated work, but by then the wrong dwarf is already busy doing the job that is wrong for him. Of course what you want is for the job to be left unfilled until the right dwarf becomes free.

What is most frustrating is that this is just not how things would be done in reality. Granted it is difficult to speak of reality in fantasy game contest, but if you were in a similar real situation (say you were the chief of a medieval castle) would you have your expert leatherworker try to injure himself by chiseling out stone goblets while your expert stonecrafter is fumbling about trying to put a thread in a leatherworking needle with his fat strong stone crafting fingers? Tarn may say that it is bad to look at excel sheets but the reality is that any good leader already has an excel sheet in his mind of what every single one of his charges is good or bad at. And the fact that we as game players want to look at an actual table rather than memorize all of our dwarves names and faces and strengths and weaknesses is more due to the necessary time compression of game playing than anything else.

I'm pretty sure point 6 of that reddit post
Quote
Utilize specialization! That green icon with the little hammer on it on the unit and labor screen means "this dwarf will do every job that everybody does". If you click it, it becomes red, which means that dwarf will do only the work assigned to them, e.g. your miner will only mine and do no other labor. Again, one click!
is the answer to your "expert leatherworker"-problem. Maybe combined with another click ("only assigned do this").

Also, I'm pretty sure this new system is coming to the Classic version too, so, brace yourself.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: zeves on December 10, 2022, 10:11:59 am
Good luck to those working on updating DT, i do miss it greatly.
Im not sure i can play this new version, it is so cumbersome and difficult to get an overview.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: oasis789 on December 11, 2022, 01:29:46 am
also hoping for DT to return for .50, I can probably adapt to the new labor assignment system over time but going through individual dwarves screens in game is too much of a headache.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Starver on December 11, 2022, 02:49:59 am
...I happen to like micromanagement. Before DT became a thing (and then whilst I became aware of it bscom8ng a thing) I would manually maintain multi-sheet spreadsheets, doing a subset of what DT was eventually capable of doing for me (semi-automatically) but with no less spreadsheet-like fun and additional responsiveness and with its more advanced analytical capabilities. I could play without it, but it's not the same without the opportunity to (if I so choose!) get into the nitty gritty.

Like,  I typically used Corpse Hauling as an unofficial flag (initially to identify those of the latest of migrants that I hadn't perused yet, as everyone I perused had it disabled as a final act after any other adjustments - should I actually need corpses hauling, I can flip that on again for all suitable haulers for the short time necessary). I also do use the Nickname system like that (to mnemonically indicate what aspirations, or lack thereof, I have for each member of the fort), so I could perhaps do without one of my methods, but at inconvenience.

No doubt I can handily make it than any pick-axe wielders had mining (and were the only ones with mining) and absolutely nothing else to distract them, from what I hear. But that's so trivial to implement at 'present' (pre-Steam, with DT as a bonus) as I play it. Couldn't be much easier, I imagine, under the new system.

Probably I can immediately* prevent anyone arriving who thinks they are a fisherdwarf or hunter from then actually going fishing or hunting (with all the attendent problems that I'm trying to avoid). ((* - Or, if I don't feel like having to have a hauler wander out to the edge of the map for dropped quiver and crossbow (which is likely to be the ex-Hunter's again when I enroll them in marksdwarf bootcamp) I can make the change just as they move inside my fort but before they regain 'free will' post-migrant status.))

Perhaps it's even trivial to find a dwarf with a penchant for marble (say) and nudge them towards stoneworking in either of the two main forms, regardless of the skill-levels/lack of them that they initially possess. I'll accept suboptimality in exchange for MAT-biases that might become very useful later on when they're significantly beyond Dabbling.

But this is just a subset of my desire to micromanage (often with just a few short clicks in DT, even as the 251st (or whatever) dwarf arrives in the latest embarrassingly large migrant wave, which I take as tacit indicator that I've been doing things more or less right all this time) and while I'm not above using some preset "player zero" adjustments, I would derive less pleasure if it became too much of a dumbed-down game.  The ASCII-like nature of the interface might have been intimidating to some, and the mnemonics behind the hotkey assignments used might seem a little obscure (there was a logic to it, once you thought about it), but the success/doomed-to-failedness of a fort shouldn't ride on what might be quite drastic changes to the management system. Especially not (adversely) the bits apparently added to divorce the player from optional micromanagement.

When I eventually take my chance, I'll give it a go. I'm thinking that'll be post-New Year (for various reasons, not least that I need to plausibly spare the time to get sucked in, if I indeed am going to be) which may yet be ahead of proper DT support. But I've always got spreadsheets! ;)
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 11, 2022, 05:45:57 am
The labor array is still there in the game internal structures. But it may not be a good idea to edit it directly, as I expect the game to update the labors based on work details at some point and overwriting all your decisions made in DT. So I think DT will have to manage work details instead of labors.

From what I understand, you should be able to reimplement the old system with work details. Create one work detail for each labor and either set all dwarves as specialist or every work detail as "Only selected do this". Then use the work details as you would have the labors before.

Also, Toady may say he doesn't like spreadsheet but he wasn't far from creating one.
(https://i.ibb.co/XL96pHM/dfspreadsheet.png) (https://ibb.co/7CHBVhL)
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: A_Curious_Cat on December 11, 2022, 11:44:58 am
I don’t have the Steam version, so I can only comment on my experiences with earlier version.  That being said, I only ever used DT for the following things:


Anyways, that’s what comes to mind, right now.

Edit:  Just remembered another item for the list…
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: chris_v on December 11, 2022, 11:49:16 am
For some reason there is only a limited amount of work details in DF. I think I read that there are only eight of them. But I think what I want to do can be done with work details in combination with workshop orders. Workshops can be limited to one or more dwarves, so that is something one can use to limit the labors to dwarves that have skills in those labors. But boy it is all going to be very unnecessarily complicated.

You said " I expect the game to update the labors based on work details at some point and overwriting all your decisions made in DT." Do you think that may happen even if one avoids the work details screen like the plague?

Thank you for looking into this, Clement.

Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: denadan on December 11, 2022, 12:46:36 pm
Quote
For some reason there is only a limited amount of work details in DF. I think I read that there are only eight of them
steam version? few basic labors at start and you can add plenty custom ones. they have icons of rome I - VIII but repeat after first 8. dont checked how many you can add but used over 24 in my game(number start repeat 4th time)

quick dirty hack suggestion - made custom labors for each skill and assign them
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 11, 2022, 12:52:18 pm
  • Turning my beginning fisherdwarf into a second miner at embark.
  • Making sure that I only had one active woodcutter (I’m trying to remember why; I think it might’ve been to mitigate some kind of bug…).
Those are easy to do with the in-game interface. The first has always been easy because you have few dwarves at embark. The second has been improved with the new interface: "labors" → "woodcutters", the current woodcutters if any are at the top of the list.

  • Determining who should become nobles.
  • Determining who should be in the military.
Looking at dwarves details is still annoying. Maybe even more than before, the unit keep closing when I open a unit information window.

  • Marking animals to be butchered (would probably use it to mark them for gelding too, but I’ve never actually tried gelding yet).
I did not look at animal management yet. I don't think it has changed much.

For some reason there is only a limited amount of work details in DF. I think I read that there are only eight of them.
You can add custom ones, but their icons are roman numeral that don't help you remember what you put in them.

You said " I expect the game to update the labors based on work details at some point and overwriting all your decisions made in DT." Do you think that may happen even if one avoids the work details screen like the plague?
I'll try that when I'll try updating DT. Right now, I can only say that labors are updated whenever you toggle something in the labor screen, no need to close it.



I've looked in more details on how labors and work details are related. Here is what I know.

Most built-in work details have exactly one labor, except for Haulers (all labors from the Hauling category) and Orderlies (Suturing, Dressing Wounds, Feed Patients, Recovering Wounded).

Tool-requiring labors (Mining, Woodcutting, Hunting) are not available for custom work details. Built-in Miners, Woodcutters, Hunters work details are not exclusive (the labors used to, is this a bug?). A dwarf with several of them enabled will only pick up one of the tool and won't be able to perform the other tasks.

Enabled labors for a given dwarf are:
That last point means that creating new work details will disable labors from non-specialist.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Melax on December 11, 2022, 04:50:02 pm
I also would like to have a compatible version of DT :)

I think the new ingame system works quiet well (can be improved by DT a lot of course) - but as an overview DT was always a godsend.

So maybe a "overview-only" version of DT without the possiblity to change gamestats would be an early solution untill the more complex things are worked on?

thanks for your hard work Cément
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Bumber on December 11, 2022, 08:07:14 pm
thanks for your hard work Cément

DT wouldn't be concrete without him. :P
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Putnam on December 11, 2022, 10:43:16 pm
I also would like to have a compatible version of DT :)

I think the new ingame system works quiet well (can be improved by DT a lot of course) - but as an overview DT was always a godsend.

So maybe a "overview-only" version of DT without the possiblity to change gamestats would be an early solution untill the more complex things are worked on?

thanks for your hard work Cément

Unfortunately, the overview bits aren't any less complicated than adjusting. In fact, adjusting stuff is exactly as hard: the hard part is finding where the stuff is to begin with, not with figuring out how to write it.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 12, 2022, 05:59:03 am
It is easier to not support work details than to support them. There will likely be at some point a version without work details support and labor changes disabled.

And figuring out how to write thing is difficult in DT, while finding where the stuff is is mostly done by other people (easier for me, but not for them).
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Alyfox on December 15, 2022, 02:27:35 pm
Quote
For some reason there is only a limited amount of work details in DF. I think I read that there are only eight of them
steam version? few basic labors at start and you can add plenty custom ones. they have icons of rome I - VIII but repeat after first 8. dont checked how many you can add but used over 24 in my game(number start repeat 4th time)

quick dirty hack suggestion - made custom labors for each skill and assign them

this is what I have been doing and its tedious having to do it with each new embark >_> I am really hoping DT will eventually come for this version
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Maul_Junior 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
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Putnam 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?
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: ab9rf 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.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Putnam 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).
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément 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 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/116acb480e8c0b2841fb8f2bc52498a4c2f065f0/share/memory_layouts/windows/v0.50.03_steam_win64.ini) is one that partially works.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: ab9rf 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 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/116acb480e8c0b2841fb8f2bc52498a4c2f065f0/share/memory_layouts/windows/v0.50.03_steam_win64.ini) 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.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Putnam 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.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Calcharger 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 (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.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément 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 (https://github.com/DFHack/df-structures/) and its documentation (https://docs.dfhack.org/en/stable/library/xml/SYNTAX.html).

If you want to write scripts for manipulating DF memory, DFHack (https://github.com/DFHack/dfhack) (forum thread (http://www.bay12forums.com/smf/index.php?topic=164123.0)) 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).
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: TDE 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.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: AriRashkae 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
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: IronEleven 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.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Putnam 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
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: chris_v 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.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 21, 2022, 02:55:57 pm
If you cannot wait, you may try this memory layout (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/share/memory_layouts/windows/v0.50.03_steam_win64.ini) (save in data/memory_layouts/windows) and this game_data.ini (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/resources/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).
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Flinx on December 22, 2022, 12:18:24 am
If you cannot wait, you may try this memory layout (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/share/memory_layouts/windows/v0.50.03_steam_win64.ini) (save in data/memory_layouts/windows) and this game_data.ini (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/resources/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).
Thank you very very much! Now I can see again what's going on in my fortress (50.03)
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: AriRashkae on December 22, 2022, 06:32:44 pm
And of course there's a DF update after I get halfway through checking all my animals to see which to cull & which to breed (I had to sleep, was going to finish today) LMAO

Oh well, it wouldn't be Dwarf Fortress it it wasn't frustrating af XD
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: oasis789 on December 23, 2022, 10:08:20 am
If you cannot wait, you may try this memory layout (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/share/memory_layouts/windows/v0.50.03_steam_win64.ini) (save in data/memory_layouts/windows) and this game_data.ini (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/resources/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).
alas, the .04 update seems to have broke this
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Flinx on December 24, 2022, 12:55:57 am
good that i have made a backup of 50.03 version of the game, so i can continue in that folder. Learned that "backup before update" from Skyrim. Updates messed this up every time. I can life better without the new all burrow button than without DT.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 24, 2022, 06:11:38 am
Here (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/share/memory_layouts/windows/v0.50.04_steam_win64.ini) is the memory layout for 0.50.04.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: theharber on December 24, 2022, 01:17:13 pm
Phenomenal, being able to quickly organize dwarves based on stats or migrant waves is a gamechanger; thank you & Happy Holidays Clément <3

Out of curiosity, is there anything on the #TODO list that people can do for the DT team or you, or would they just need to create their own forks? I've had a lot of fun playing around with memory editing on my own, but if there ever were a game & utility that I'd contribute my time to, it'd be this. :)
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 25, 2022, 10:54:34 am
Right now, you may help with df-structures (https://github.com/DFHack/df-structures). When df-structures has stabilized, I'll need to check and fix the last remaining reading error. There will also need to find a new way to get the unit list for the embark screen (world.units.all seems to work but it was broken in the past, I don't trust it too much). The first goal will be to have a release without labor support but all the stats working.

Then adding work details support will require more work. The biggest change is that assigning dwarves to work details will require resizing vectors which DT is currently unable to do. I'm thinking about either extending the function call injection technique currently used for writing strings on Linux to call new/delete for resizing vectors or relying on a DFHack plugin for doing all the modifications. Using DFHack would be simpler to program, but it would make Dwarf Therapist more complex to distribute because of the strong dependency on a DFHack plugin, so I'm unsure what is the best. DFHack may be the only way for me to support macOS.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Aerth on December 26, 2022, 05:47:43 am
Thank you Clément, even in RO mode, this is so massively helpful with large populations.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: CaseMonster on December 26, 2022, 12:19:33 pm
Right now, you may help with df-structures (https://github.com/DFHack/df-structures). When df-structures has stabilized, I'll need to check and fix the last remaining reading error. There will also need to find a new way to get the unit list for the embark screen (world.units.all seems to work but it was broken in the past, I don't trust it too much). The first goal will be to have a release without labor support but all the stats working.

Then adding work details support will require more work. The biggest change is that assigning dwarves to work details will require resizing vectors which DT is currently unable to do. I'm thinking about either extending the function call injection technique currently used for writing strings on Linux to call new/delete for resizing vectors or relying on a DFHack plugin for doing all the modifications. Using DFHack would be simpler to program, but it would make Dwarf Therapist more complex to distribute because of the strong dependency on a DFHack plugin, so I'm unsure what is the best. DFHack may be the only way for me to support macOS.

The amount of people running DT that also run DFHack is probably a 99% overlap.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Phyroks on December 27, 2022, 03:19:08 am
Here (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/share/memory_layouts/windows/v0.50.04_steam_win64.ini) is the memory layout for 0.50.04.

Thanks! Hopefully one day it can be fully used again, but this will help for now ^^
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Broken on December 28, 2022, 06:48:36 pm
It's working mostly fine, although i have noticed some misread info.

Most amusingly, it thinks half of my fort are legendary Gelders.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Putnam on December 28, 2022, 07:37:54 pm
Right now, you may help with df-structures (https://github.com/DFHack/df-structures). When df-structures has stabilized, I'll need to check and fix the last remaining reading error. There will also need to find a new way to get the unit list for the embark screen (world.units.all seems to work but it was broken in the past, I don't trust it too much). The first goal will be to have a release without labor support but all the stats working.

Then adding work details support will require more work. The biggest change is that assigning dwarves to work details will require resizing vectors which DT is currently unable to do. I'm thinking about either extending the function call injection technique currently used for writing strings on Linux to call new/delete for resizing vectors or relying on a DFHack plugin for doing all the modifications. Using DFHack would be simpler to program, but it would make Dwarf Therapist more complex to distribute because of the strong dependency on a DFHack plugin, so I'm unsure what is the best. DFHack may be the only way for me to support macOS.

Work detail support wouldn't be necessary for basic labor support; as of v50.04 there is a global external flag exported by the game with the rest of the global addresses that can be flipped to disable work details completely so that utilities can do more granular operations without work details stomping on them (since they replace all dwarf labors whenever they're modified at all).
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: jecowa on December 29, 2022, 02:35:36 am
I would like to be able to use Dwarf Therapist without having DFHack installed, especially now that DFHack isn't needed for using the most advanced graphics packs.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Putnam on December 29, 2022, 04:41:59 am
Have you ever needed DFHack installed for Therapist to work? It works via memory hacking anyway. Therapist just needs to know the location of the flag, which can be provided the same way as all the other memory locations it looks for.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: feelotraveller on December 29, 2022, 05:13:12 am
I think jecowa is responding to this:

Then adding work details support will require more work. The biggest change is that assigning dwarves to work details will require resizing vectors which DT is currently unable to do. I'm thinking about either extending the function call injection technique currently used for writing strings on Linux to call new/delete for resizing vectors or relying on a DFHack plugin for doing all the modifications. Using DFHack would be simpler to program, but it would make Dwarf Therapist more complex to distribute because of the strong dependency on a DFHack plugin, so I'm unsure what is the best. DFHack may be the only way for me to support macOS.

I agree that having a strong dependency on dfhack is not that desirable.  Might lead to another layer of compatibility problems, or a least having to wait until both dfhack and DT are updated.  Going on previous discussions of mod usage maybe 80% of DT users also already run dfhack but some of the remaining 20% are quite adverse to dfhack.

Having support for macOS is important though.

So I guess that's a point against and a point for, respectively.

Not up with the complexities of the programing side of the issue.

(Disclosure: I use dfhack on linux.)
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 29, 2022, 07:04:10 am
Most amusingly, it thinks half of my fort are legendary Gelders.
Skills are supposed to be fixed. Did you install the modified game_data.ini?

Work detail support wouldn't be necessary for basic labor support; as of v50.04 there is a global external flag exported by the game with the rest of the global addresses that can be flipped to disable work details completely so that utilities can do more granular operations without work details stomping on them (since they replace all dwarf labors whenever they're modified at all).
What is the name of this flag?

Anyway, work detail support will have to be added sooner or later. Adding memory management capabilities will also enable for other features like burrow management, or maybe occupations. It would be something really nice to have.

About macOS support, I cannot maintain it because Apple does not make it easy to develop applications for mac without Apple hardware. And it has bugs like requiring running as root. Replacing the macOS port with a DFHack port would fix all of this. It could still be optional for other platforms.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: ab9rf on December 29, 2022, 07:45:20 am
What is the name of this flag?
It's in Toady's "cheat sheet" as "game.external_flag". The DFHack team is treating this as an "ignored global" because it's within the larger "game" structure and we prefer to simply note its location as part of that larger structure so you won't find it in our symbols.xml as a separate entry, but of course I'm sure you know how to find Toady's handy-dandy list of globals and can get to it that way. According to what we've been told, setting the low bit of the byte at this address to 1 disables work policy processing entirely and leaves all labor management up to external tools.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Starver on December 29, 2022, 08:07:27 am
maybe 80% of DT users also already run dfhack but some of the remaining 20% are quite adverse to dfhack.
Datum point: I might occasionally use DFHack, up to a limit (I don't want the temptation of far-too-easy autodump, e.g., unless the current project is a more a mechanical/architectural test and I'd like loads of rubble out of the way or it'd be good to teleport all the loose material of some kind to one place) and if/when I add it to the current DF I quickly write up an unhack.bat to reverse the change and leave me 'vanillafied' as soon as I'm done fooling with whatever I'm fooling.

But I'll run DT without reservations. It 'just' streamlines what I do (or would like to do) or know (or would like to know) outside the game-code, and restricts itself to altering only those things that I'd otherwise go in there and alter.

That's my (fuzzy) red-line. If DFHack is needed, I wouldn't say I'd be 'averse' (nor would it be adverse!), but I'd rather not require it as always-on 3rd- or 4th-party tool. In my own weird little manner. Though it sounds like I, in particular, shan't need it. Beyond the occasional dabble for which I do remain grateful to its various contributors.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Arkenor on December 29, 2022, 08:58:15 am
DFHack is a must have for me, so my doctors can heal my animals. Also useful for dealing with stuff that bugs out.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Tabris on December 29, 2022, 04:06:42 pm
Skills are supposed to be fixed. Did you install the modified game_data.ini?
Really? They are still a bit scrambled for me. I put the game_data.ini file on Dwarf Therapist/data. I did notice it didn't overwrite anything. I have the latest Dwarf Therapist version from the Releases on Github. Am I supposed to be using another version?
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 29, 2022, 05:00:40 pm
Actually I was partially wrong, skills should be correct in "Dwarf Details" or in the dwarf tool-tip, but grid views needs to be updated too. If you check the tool-tip over the "Gelding", you may read something like "Gelding - Competent Musician", so the skill you see is actually "musician".
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: lethosor on December 29, 2022, 05:25:03 pm
I think it's probably possible to have a backend that works via native memory access and one that interfaces with DFHack, although it would probably be a bit more work to support both options at once. But if we want to support macOS and support users on other platforms who don't want to use DFHack, I think these two backends is the most feasible approach.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Tabris on December 29, 2022, 05:25:47 pm
Actually I was partially wrong, skills should be correct in "Dwarf Details" or in the dwarf tool-tip, but grid views needs to be updated too. If you check the tool-tip over the "Gelding", you may read something like "Gelding - Competent Musician", so the skill you see is actually "musician".
Oooh, I had already figured that out, just assumed from the post that Grid View had been fixed as well.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: crazyabe on December 29, 2022, 10:18:52 pm
Actually I was partially wrong, skills should be correct in "Dwarf Details" or in the dwarf tool-tip, but grid views needs to be updated too. If you check the tool-tip over the "Gelding", you may read something like "Gelding - Competent Musician", so the skill you see is actually "musician".
christ, Dwarf fortress specifically has skills for Gelding Competent Musicians now? damn its getting in depth.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on December 30, 2022, 05:37:38 am
I think it's probably possible to have a backend that works via native memory access and one that interfaces with DFHack, although it would probably be a bit more work to support both options at once. But if we want to support macOS and support users on other platforms who don't want to use DFHack, I think these two backends is the most feasible approach.

One idea I want to evaluate is keeping the reading low level. That is mostly moving the calls to vm_read_overwrite/process_vm_readv/ReadProcessMemory into dfhack to avoid permission issues. The main difficulty is that DT does a lot of small reads, with a whole network RPC for each read this is not possible, reads need to be aggregated. I need to check if reading whole object at once is enough, or if I need to read and cache whole pages or group of pages. Also COW strings may be very bad for this, I hope the next version will use SSO strings.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Rose on December 30, 2022, 06:12:03 am
The network rpc is pretty fast, and I've used it plenty for small reads.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Rudyard_Clipping on December 31, 2022, 07:36:41 am
Hi there :) first message on Bay12 forums to thank you for the work you put in updating DTherapist. To react to some previous messages, I never used DFHack, while I wouldn't be able to play whithout DTherapist.

I want to ask this not to put any pressure on anyone but because I have absolutely no idea of the difficulty of the task: is having a 50.04 compatible version of DTherapist a matter of months? Of weeks? (of minutes, why not :D )
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on January 01, 2023, 08:44:06 am
The network rpc is pretty fast, and I've used it plenty for small reads.

How much is "plenty"? DT often reads integers one at a time and this leads to hundreds of thousands of calls to read_raw for a small save. If I force reading all creature raws, it is over a million. I think I tested a naive implementation of read_raw over DFHack RPC a long time ago and it took over 15 minutes to load. Maybe it was an issue with debug performance, maybe my DFHack RPC implementation was bad. There may also have been an issue with DT attach/detach mechanisms not being used correctly. Anyway it is slower than single system calls and it reveals a lot of issue in the way DT reads its data but it should be fixable.

Hi there :) first message on Bay12 forums to thank you for the work you put in updating DTherapist. To react to some previous messages, I never used DFHack, while I wouldn't be able to play whithout DTherapist.

I want to ask this not to put any pressure on anyone but because I have absolutely no idea of the difficulty of the task: is having a 50.04 compatible version of DTherapist a matter of months? Of weeks? (of minutes, why not :D )

I cannot make any promise except that it is not minutes. As I already said, I plan to make a read-only release (or maybe with old-school labor management using Putnam trick) as soon as DFHack's df-structures is good enough for me (that is usually before it is good enough for DFHack itself since DT only uses a small subset of it). Then take my time to add support for new features like work details.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Anonymous_Wind on January 01, 2023, 08:12:34 pm
I cannot make any promise except that it is not minutes. As I already said, I plan to make a read-only release (or maybe with old-school labor management using Putnam trick) as soon as DFHack's df-structures is good enough for me (that is usually before it is good enough for DFHack itself since DT only uses a small subset of it). Then take my time to add support for new features like work details.

Thanks for the update Clément. Good luck with the coding, and happy new year!
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: JezaGaia on January 03, 2023, 06:34:05 am
If you cannot wait, you may try this memory layout (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/share/memory_layouts/windows/v0.50.03_steam_win64.ini) (save in data/memory_layouts/windows) and this game_data.ini (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/resources/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).

Hey I just saw this and I would love to try it but DV is now in v5.04 and this only goes to 5.03, is there any modification I can do to make it work ?
Tbank you so much for your help ! having the therapist even only to read the dwarf details would be incredible
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: theharber on January 03, 2023, 07:53:47 am
Here (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/share/memory_layouts/windows/v0.50.04_steam_win64.ini) is the memory layout for 0.50.04.
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: JezaGaia on January 03, 2023, 09:12:35 am
Thank you so so much !
Title: Re: Dwarf Therapist v41.2.4 | DF 0.47.05
Post by: Clément on January 05, 2023, 08:54:04 am
The memory layout for 0.50.04 is starting to look good. I may make some test builds soon. Now that citizens are correctly recognized, you can set labors but they will be overwritten by work details. If you are building from the branch in this pull request (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/266), I am interested in bug reports (disabling work details is not implemented yet, so setting labors is still broken).
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 06, 2023, 08:15:42 am
New version released: 41.2.5 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v41.2.5)

This is likely the last release for DF 0.47.05 and older.

Changelog:
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 06, 2023, 09:32:32 am
And I also added the memory layout for 0.50.05 (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/share/memory_layouts/windows/v0.50.05_steam_win64.ini) in my development branch.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 06, 2023, 09:55:08 am
And since I fixed the most obvious bugs. I made some test builds (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/df0.50-test1) for DF 0.50. The OSX and win32 versions are useless. The linux version should work with DF running in wine/proton. Please check that DT is consistent with in-game information and report any issue you find (except "labors are overwritten by work details").
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Melax on January 06, 2023, 10:21:11 am
just a quick first look (Steam 50.05) at the 50.test-version - in my save there seems to be a problem with the mood-texts - a "uneasy" experience in DF is translated as a "triumpf" in DT - that was my first impression
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 06, 2023, 11:26:36 am
I can confirm emotion types are incorrect. Thanks for the report.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: TheBloke on January 08, 2023, 05:19:31 am
Thank you so much for the test v50 release. It's wonderful to be able to browse my dwarves in DT again.  It's really useful to be able to use it to look stuff up, even before it's fully updated for v50.

When browsing my dwarves I noticed two unknown thoughts - 276 and 278. Didn't know if that was expected or not at this stage so I'm reporting it.

Comparing DT and DF, the two thoughts I can see missing from DT both relate to religion:
"incompletely performing the rites of <religion> in an undedicated temple"
"performing the rites of <religion> in a dedicated temple"


Thanks again for all your work on DT!

Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 08, 2023, 06:09:11 am
Thanks for the report.

You can try with the latest game_data.ini (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/dev0.50/resources/game_data.ini), it should fix this.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Flinx on January 08, 2023, 07:25:09 pm
Stunning! Thank you so much, it is working!

1. All i had to do was setting up every available job ingame. I clicked on "new work detail", set up every job from Carpentry over Strand Extracting to Wall/Floor Construction.
2. After that, i set evey job to "only selected do this" without selecting a dwarf to a job.
3. Also, i set every dwarf from green to red "This worker is specialized....".
4. Now i can apply job under the "Labors Full" in DT, without vanishing!

The jobs will not appear in the ingame joblist, but you can test it with any job, like:Herbalist, nobody does this, no dwarf selected. Than set Plant gathering orders outside. No one will come. But if you activate Plant gathering for a dwarf in DT he will run and pickup all the herbs.

 :'( After migrants arrived, all jobs are gone. But i will set them up again, its much easier than ingame!
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 09, 2023, 05:58:54 am
I don't think your setup helped at all. There is an internal flag that prevents labor updates that I will implement in DT soon but it's not a perfect solution. It is not saved so if you want to manage labors without work details you will have to open and connect DT as soon as you load your game to set the flag again and prevent labors being reset.

How I'm thinking I will implement this:
Other suggestions?

Edit: I could merge the first two points: saving the current state and restoring it in the next session.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Erendir on January 09, 2023, 08:15:59 am
Other suggestions?

additionally, a dfhack-script that does just that on games start or fort load (obviously only for those of us who will use dfhack alongside DT).
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 09, 2023, 09:00:28 am
Yes, it would be better with a dfhack script, but it won't be available soon.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Sarai on January 09, 2023, 04:01:43 pm
Suggestion: Any way we can have the header text rotated 315 degrees? There's plenty of space with the large empty square above the names, and it would definitely improve readability. Example from Excel (but rotated 45 degrees in the picture instead of 315 which would fit better in Therapist):

(https://i.pinimg.com/originals/b7/25/11/b72511becdd1207610c1557481d346dc.png)
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Mir on January 12, 2023, 02:16:51 pm
A little tilting would help. I swear that used to be an option... but I must be mistaken - I can't find it anywhere.
I did find an option to 180 the text in the top column headers, and I find that at least makes it much more readable.

DT > Options > Grid Options > Check "Column Header Text Bottom to Top"

Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Rudyard_Clipping on January 14, 2023, 09:50:41 am
And since I fixed the most obvious bugs. I made some test builds (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/df0.50-test1) for DF 0.50. The OSX and win32 versions are useless. The linux version should work with DF running in wine/proton. Please check that DT is consistent with in-game information and report any issue you find (except "labors are overwritten by work details").

Thanks a lot!

Seems it doesn't work here (or I don't know to to make it work). Running 50.05 version from Steam, I get this:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 14, 2023, 10:48:40 am
Check the log (File → Open log directory).
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Olek on January 20, 2023, 09:56:53 am
Working fine for me, just a few things missing like "Within the last week she has felt unknown, this is an unknown thought (278).

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: dr33mz33 on January 20, 2023, 04:02:12 pm
There's something weird going on with needs representation. You can see here that DT shows feeling of rejection towards waterfalls for half my fortress:
https://imgur.com/a/T9l5LPl


If I go to some of the affected dwarfs, we get in the tooltip:
https://imgur.com/a/1hQ1SCv

yet in game, said thought doesn't show

https://imgur.com/zEl1CSP

No idea what might be going on. Either mist generators sucks or DT is misrepresenting something here.

Just thought I'd mention it. Cheers!

Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Putnam on January 20, 2023, 11:18:07 pm
Emotions are a single integer, an enum, so Therapist is just misaligned on that front, which isn't terribly unusual and isn't going to affect your game negatively or anything, whenever you see "rejection" it's actually just "relief"
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 21, 2023, 04:59:37 am
Emotions and thoughts errors were already reported and fixed upstream. You can manually update your game_data.ini if you cannot wait for it.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Rudyard_Clipping on January 21, 2023, 06:10:48 am
Check the log (File → Open log directory).

Seems that launching in admin mode solved the problem :)
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 21, 2023, 06:16:34 am
Running as admin is not recommended although it may be less harmful than on linux/macos. I thought it was you who reported on github (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/275), and that your issue was fixed. I am not sure what was causing the issue exactly, it was fixed by reinstalling the game. It must have been something with how DF is run.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: UnfortunateAccidentsRUs on January 22, 2023, 09:15:37 am
Is there a compiled version for v50.05 available for download somewhere?
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 22, 2023, 12:56:32 pm
I added a pre-release build (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/df0.50-test2) for testing labor assignments.

The "Disable work details" state is not saved by the game. You need to reconnect DT after restarting the game in order to restore it.

I am not sure I am doing this right. It feels like I am fighting against both DT and DF. Dwarf Therapist is not designed to make labor assignment optional. Currently, you can get into inconsistent state where you cannot edit labors but there are labor changes pending.

Another way could be to only change external_flag on connection and when committing changes. Labor would always be editable and "Disable work details" could be automatically added to pending changes when a labor is toggled. But how to re-enable work details? I still need to add an action somewhere.

Also I don't know what to do with the labor optimizer, does it still make sense? I don't use it myself, and it seems like someone who would want automatic labors should just use the new system.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: UnfortunateAccidentsRUs on January 22, 2023, 06:30:31 pm
Thank you very much, Clément.

As far as I can tell it works great as a viewer.

I'm on a Mac M1 running Steam in a Wine wrapper with 50.05, DFHack and now Therapist with no issues.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Larzo on January 24, 2023, 03:38:48 pm
It is possible to sort by creature size ?
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 24, 2023, 03:41:52 pm
Right click on the name column header.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Larzo on January 24, 2023, 03:55:32 pm
Awesome ! Time to find out if selective breeding works in DF
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: feelotraveller on January 24, 2023, 10:17:22 pm
Also I don't know what to do with the labor optimizer, does it still make sense? I don't use it myself, and it seems like someone who would want automatic labors should just use the new system.

I don't use it either.  I thought that you are able to customise the automation (optimisation plans).  Does steam DF have that possibility?  Beyond that how much effort would it be to keep it?
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 25, 2023, 10:16:30 am
I thought that you are able to customise the automation (optimisation plans).  Does steam DF have that possibility?

It is different. If I understood correctly, DF chooses the best available dwarf (according to skill) at the time the job is processed. The optimizer chooses the best dwarves (according to role ratings) globally to fill labors according the plan. DF does not need a plan because the job pool will determine how many dwarves are needed. But the "available dwarf" part may be the main drawback of this method from what I have read around, since the game won't wait even a little for a much better dwarf to become available. Other than that, I think the main difference is "skill vs roles".

Beyond that how much effort would it be to keep it?

Right now, very little. On the long term, it is a question I need to ask for a lot of features. I am still unsure of where DT is going.

Dwarf Therapist was first created for assigning labors. But, in my opinion, this is now obsolete. Today, I would rather define DT as an overview for your units (citizens/visitors/livestock) helping you finding the right one for an arbitrary purpose, and occasionally apply the change once you found it. "occasionally" because right now what you can change is very limited (labors, squads, livestock flags). Jobs may not only be decided through labors but also assignment to workshops, building occupations, noble positions, ... (I'm also thinking of Putnam who said that medical labors should be replaced with assignment to an hospital, I can imagine occupations becoming more important in the future)

There is also the technical side. The way DT interacts with DF is very messy and does not allow for complex changes to the game data. This needs to be replaced so DT can evolve.

Together this leads to a lot of changes and it is a bit overwhelming. It is also a good occasion for rethinking DT purpose, and try cleaning some cruft (I'm also considering restarting from scratch).

Back to the initial question, my motivation for working on features I may throw away just after is not very high.

In the case of the labor optimizer, it is also a feature that feels a lot like an addon, it does not really fit with the rest. If it was not for its use of role ratings, I'd say it would be better as its own DFHack plugin.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Putnam on January 25, 2023, 11:06:02 pm
Dwarf Therapist was first created for assigning labors. But, in my opinion, this is now obsolete.

I may personally agree with you but many people absolutely do not and i strongly recommend keeping things approximately as they are.

Re-enabling work details is a bit of a problem, yeah, not sure how I didn't consider that. Personally I'd recommend just having a button that syncs up with the external flag and allows you to turn it on/off.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on January 26, 2023, 12:34:32 pm
Personally I'd recommend just having a button that syncs up with the external flag and allows you to turn it on/off.

That's exactly what I'm doing right now. But I would advise any DFHack user to also add a startup script that set "df.global.game.external_flag = 1", so you don't lose your labor settings if you forgot to start Dwarf Therapist.

That's only a temporary workaround (I hope not the kind of temporary that become permanent), until a proper work detail support can be done. There is nothing you can do with labors that cannot be done with work details.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Putnam on January 26, 2023, 03:38:20 pm
Yeah, the main use case I had in mind when I suggested the external flag was more intrusive stuff like labormanager which is wanting to constantly change things around on a very granular level.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Samthere on January 26, 2023, 06:38:05 pm
Also I don't know what to do with the labor optimizer, does it still make sense? I don't use it myself, and it seems like someone who would want automatic labors should just use the new system.

I haven't played for years, but man the new work detail system does nothing for me. Well, that's a slight exaggeration. After a decent amount of work setting up a bunch of work details for every task, and fiddling with it to get icons (replacing the numerals) to make sense, it lets me sort and assign an individual labour. It's so clunky though. At the moment it takes me hours to hop back and forth between menus, check skill levels and then other skills for that same dwarf, and make decisions about total allocations.

Because of my long hiatus, I don't know if I used the optimiser back pre-2014, but it sounds like something that would take some of the micromanagement weight off when I wanted it!
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Putnam on January 26, 2023, 07:46:16 pm
Yes, you will find that a pair of scissors often makes a poor hammer. The work details system is doing nothing for you because you're trying to use it in a way that it was not designed to be used. On top of that, there is literally no reason to assign a work detail to every labor. None, at all. That level of granularity is simply not necessary.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on February 04, 2023, 11:49:19 am
I added a pre-release build (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/df0.50-test2) for testing labor assignments.

The "Disable work details" state is not saved by the game. You need to reconnect DT after restarting the game in order to restore it.

I am not sure I am doing this right. It feels like I am fighting against both DT and DF. Dwarf Therapist is not designed to make labor assignment optional. Currently, you can get into inconsistent state where you cannot edit labors but there are labor changes pending.

Another way could be to only change external_flag on connection and when committing changes. Labor would always be editable and "Disable work details" could be automatically added to pending changes when a labor is toggled. But how to re-enable work details? I still need to add an action somewhere.

Also I don't know what to do with the labor optimizer, does it still make sense? I don't use it myself, and it seems like someone who would want automatic labors should just use the new system.
I did not get any feedback on this build. I made a new one (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/df0.50-test3). It has a few fixes and better disabling of labors.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: el Indio on February 05, 2023, 09:41:56 am
I added a pre-release build (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/df0.50-test2) for testing labor assignments.

The "Disable work details" state is not saved by the game. You need to reconnect DT after restarting the game in order to restore it.

I am not sure I am doing this right. It feels like I am fighting against both DT and DF. Dwarf Therapist is not designed to make labor assignment optional. Currently, you can get into inconsistent state where you cannot edit labors but there are labor changes pending.

Another way could be to only change external_flag on connection and when committing changes. Labor would always be editable and "Disable work details" could be automatically added to pending changes when a labor is toggled. But how to re-enable work details? I still need to add an action somewhere.

Also I don't know what to do with the labor optimizer, does it still make sense? I don't use it myself, and it seems like someone who would want automatic labors should just use the new system.
I did not get any feedback on this build. I made a new one (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/df0.50-test3). It has a few fixes and better disabling of labors.
I've only been using dwarf therapist to get an overview of the dwarfs, and to assign them to squads. 

Using DT to enable only a couple of weapon/armour smiths is easier than setting up a custom work detail, but if these changes only take effect whilst DT is connected I will just take the extra time to set up custom work details.



Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on February 06, 2023, 06:09:47 am
Using DT to enable only a couple of weapon/armour smiths is easier than setting up a custom work detail, but if these changes only take effect whilst DT is connected I will just take the extra time to set up custom work details.
You cannot mix labors and work details. If you disable work details for assigning your weapon/armour smiths, you will have to set all other labors manually. What you may want is a DT-like interface for setting up your work details. At least that's what I think I want.

I've been thinking more about how external_flag is managed, and I saw a few more issues. DT setting it automatically on connecting may mess up with future DFHack plugins that would require it. And since I cannot make a good implementation for it, I think I will only leave the manual changes and recommend a DFHack script for setting it on startup for users who need it, it will be simpler and more reliable. And then I can move on to more interesting stuff.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: el Indio on February 06, 2023, 07:30:31 am
You cannot mix labors and work details. If you disable work details for assigning your weapon/armour smiths, you will have to set all other labors manually. What you may want is a DT-like interface for setting up your work details. At least that's what I think I want.

I've been thinking more about how external_flag is managed, and I saw a few more issues. DT setting it automatically on connecting may mess up with future DFHack plugins that would require it. And since I cannot make a good implementation for it, I think I will only leave the manual changes and recommend a DFHack script for setting it on startup for users who need it, it will be simpler and more reliable. And then I can move on to more interesting stuff.
I haven't actually done it that way, but theoretically it is easier with DT.  DT was essential for years but if it isn't compatible with the work details I will just adjust the way I play.  Having every dwarf in the fort dabbling in every single skill isn't ideal, but ultimately I just want to see what the dwarfs get up to, and setting up a work detail for smithing so I don't waste valuable metals isn't much hassle.

Using DT to assign dwarfs to squads still makes the program essential for me anyway, too bad equipping them and scheduling them can't be done from a DT-like interface.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Schmaven on February 06, 2023, 09:43:26 pm
I usually try to avoid assigning dwarves who are likely to go berserk to military squads.  That, and veing able to rank order dwarves by skill levels are indredibly helpful.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: dr33mz33 on February 10, 2023, 05:03:35 pm
will you add support for 50.57 anytime soon? Still an essential tool! Thank you so much

Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: lethosor on February 10, 2023, 05:27:39 pm
will you add support for 0.57 anytime soon? Still an essential tool! Thank you so much
Assuming you mean 50.07, there were some layouts merged earlier today: https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/285
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: dr33mz33 on February 10, 2023, 07:27:33 pm
Edited. Cheers.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Morning_Oak on February 10, 2023, 09:53:15 pm
will you add support for 0.57 anytime soon? Still an essential tool! Thank you so much
Assuming you mean 50.07, there were some layouts merged earlier today: https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/285
Forgive my ignorance with Github, but how would I go about making these updates?
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: lethosor on February 11, 2023, 01:39:19 am
From that link -> "Files changed" you can use the "..." menu for each file -> "View file" -> "Raw" to download it, then add it to DT. Or you can get to the file from https://github.com/Dwarf-Therapist/Dwarf-Therapist/tree/master/share/memory_layouts. There may be an automatic way to download/install the files as well. I haven't used DT in a while so I'm afraid I won't be much help with that.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Olek on February 11, 2023, 10:49:32 am
From that link -> "Files changed" you can use the "..." menu for each file -> "View file" -> "Raw" to download it, then add it to DT. Or you can get to the file from https://github.com/Dwarf-Therapist/Dwarf-Therapist/tree/master/share/memory_layouts. There may be an automatic way to download/install the files as well. I haven't used DT in a while so I'm afraid I won't be much help with that.

Thanks for that, I got it working.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Dwarf_Fever on February 11, 2023, 09:08:59 pm
Dwarf Therapist was first created for assigning labors. But, in my opinion, this is now obsolete.

Not in my opinion, other than for more casual users. And it's not, per se, due to any shortcoming of the vanilla manager to do its specific task, it's because Therapist lets you cross reference information, apply scripts and use tools like control- and shift-click to select entire groups at once. Here is one example in detail of things I actually do, out of many, that are (as I am finding) painful without Therapist.

Let's say I want to get all dwarves who are badly distracted from not creating something working on glass goods. In a large fort, I may have 60 of them by the time I decide to deal with this again.

So, I go to Therapist's tab for Needs. Here I can sort all the dwarves by their current need to create.
Next, I use shift click to select all dwarves that are in the red.
Now I go back to the labors tab, and click once on glass to turn on glass making for all dwarves who have create need in the red.

This has been about 5 clicks up to this point. Of course, once they make something, they sort back to the bottom of the list on a refresh, and I periodically turn their labor off in shift-click groups so they don't hog the shop. (Simply turning it on for everybody absolutely does not efficiently cycle through those people who aren't getting their crafting in.)

However, in the vanilla game, it would be a massive amount of carpal tunnel and time I would need to burn through trying to do this without Dwarf Therapist's ability to just mass assign labor according to a sort or filter. We are talking 5 clicks in DT compared to dozens or a hundred times going back and forth from Therapist to the Game to individually click these guys on and off, after painstakingly scrolling around each time to find the correct one, because they don't sort according to the things I need.

While I appreciate the excellent work that is going in to the vanilla manager, the idea that it is currently an equivalent to Therapist is not one I can agree with, and not having DT with labor functions is quite frustrating. Many things I regularly do to maintain a fort are more time- and click-intensive in vanilla by an order of magnitude (or more) beyond a handful of dwarves, even if you still use Therapist to find the information.

Other examples along these lines include things like assigning pump labor to my least fit 40 dwarves at once, grouping my dwarves by squad membership to un-assign refuse hauling from the 80 soldiers with valuable steel gear, turning smithing on for all dwarves with a preference for a military grade metal, and so on.

Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on February 12, 2023, 06:31:15 am
The important word was "first". Dwarf Therapist is no longer this (http://www.pavlovian.net/foreman/). And the game is moving away from labors. Dwarf Therapist's interaction with the game needs to be changed: it cannot stay just writing labor arrays. It doesn't mean removing it, but rather expanding it. Instead of being labor-centric, DT needs to manage more diverse assignments (work details, occupations, squads, burrows, and maybe noble/administrator positions).

Anyway, thank you for the report. It is always interesting to know how users are using DT.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Flinx on February 12, 2023, 07:46:14 pm
I´ve added share/memory_layouts/windows/v0.50.07-steam_win64.ini to my DwarfTherapist-df0.50-test3-win64, which worked fine with Steam DF 50.05 before.
Using newest DF-Hack dfhack-50.07-alpha1-Windows-64bit, i´ve called my 1.lua (df.global.game.external_flag = 1) from DF-Hack ingame gui/launcher, it said: "Command finished succesfully" as in the versions before. But in the console window it shows up nothing, also i can´t switch labors in DT on or off like in version DF Steam 50.05.

ab9rf apologize for any inconvenience
http://www.bay12forums.com/smf/index.php?topic=164123.msg8453901#msg8453901
but i´m barely able to copy scripts and files to the right place. Can´t figure out what you pros are talking about there. Does this mean, i should wait for another DF-Hack version and my lua script will work again, or do i have to do other things to get DT to work again? I really can´t think about playing DF without Therapist, thank you for your hard work!

PROBLEM SOLVED! It was in front of the monitor.....
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Flinx on February 12, 2023, 07:52:39 pm
I´ve added share/memory_layouts/windows/v0.50.07-steam_win64.ini to my DwarfTherapist-df0.50-test3-win64, which worked fine with Steam DF 50.05 before.
Using newest DF-Hack dfhack-50.07-alpha1-Windows-64bit, i´ve called my 1.lua (df.global.game.external_flag = 1) from DF-Hack ingame gui/launcher, it said: "Command finished succesfully" as in the versions before. But in the console window it shows up nothing, also i can´t switch labors in DT on or off like in version DF Steam 50.05.

ab9rf apologize for any inconvenience
http://www.bay12forums.com/smf/index.php?topic=164123.msg8453901#msg8453901
but i´m barely able to copy scripts and files to the right place. Can´t figure out what you pros are talking about there. Does this mean, i should wait for another DF-Hack version and my lua script will work again, or do i have to do other things to get DT to work again? I really can´t think about playing DF without Therapist, thank you for your hard work!

Iám such an idiot! You have put a button on the top "Labor changes". After pressing, all work fine.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: ab9rf on February 12, 2023, 09:33:28 pm
Does this mean, i should wait for another DF-Hack version and my lua script will work again, or do i have to do other things to get DT to work again? I really can´t think about playing DF without Therapist, thank you for your hard work!
That script ought to be working on Steam only, but will not work with Classic because I misunderstood what I was seeing when I did the initial analysis of the 50.07-Classic image and incorrectly concluded that Bay12 had implemented Putnam's "padding proposal" when they had in fact not. If it's not working on Steam, then we've made a mistake somewhere in a manner I would not have expected. That command in Classic will corrupt an address further down in memory with unknown impact on the game (it appears to be used, but for what we don't know at this point).

This script will probably have to be amended for the next DFHack prerelease because we're probably going to split game into three pieces. The external flag will be in the third piece, the name for which we have yet to agree on (game2? game_tail? game_extra? :-\ ) but it won't be game, so there will be a (minor) amendment to deal with this.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Flinx on February 12, 2023, 10:45:53 pm
Thank you for the fast answer, ab9rf!
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on February 13, 2023, 07:08:15 am
I´ve added share/memory_layouts/windows/v0.50.07-steam_win64.ini to my DwarfTherapist-df0.50-test3-win64, which worked fine with Steam DF 50.05 before.
Using newest DF-Hack dfhack-50.07-alpha1-Windows-64bit, i´ve called my 1.lua (df.global.game.external_flag = 1) from DF-Hack ingame gui/launcher, it said: "Command finished succesfully" as in the versions before. But in the console window it shows up nothing, also i can´t switch labors in DT on or off like in version DF Steam 50.05.

ab9rf apologize for any inconvenience
http://www.bay12forums.com/smf/index.php?topic=164123.msg8453901#msg8453901
but i´m barely able to copy scripts and files to the right place. Can´t figure out what you pros are talking about there. Does this mean, i should wait for another DF-Hack version and my lua script will work again, or do i have to do other things to get DT to work again? I really can´t think about playing DF without Therapist, thank you for your hard work!

PROBLEM SOLVED! It was in front of the monitor.....
It's my fault. This version of DT changes external_flag when it connects to DF. I've dropped that behavior in the last version for only changing when clicking the button so it won't overwrite your DFHack settings.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Flinx on February 13, 2023, 10:25:23 am
You guys are doing a great job, no need to apologize. Game is so much more fun with your work. Thanks also for fixing Steam DF versions so quickly. And as I understand, it's a feature because it won't interfere with DFHack, as long as i am not clicking "Labor Changes", so good for ppl using DT for information without changing labors.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on February 13, 2023, 12:02:20 pm
In the "test3" version you have, DT tries to restore the value of external_flag when it connects to DF. Since you never set it from DT before, it set it to 0. As you noticed this may break DFHack scripts and plugins, so I changed it in the latest version (no build provided, it's this branch (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/276)). Now, DT will not set external_flag automatically, but the button is still there to reflect its state and allow manual changes. For setting external_flag on startup, I would recommend using a DFHack script (as you have done) although this is currently broken on classic.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: ab9rf on February 13, 2023, 12:51:06 pm
In the "test3" version you have, DT tries to restore the value of external_flag when it connects to DF. Since you never set it from DT before, it set it to 0. As you noticed this may break DFHack scripts and plugins, so I changed it in the latest version (no build provided, it's this branch (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/276)). Now, DT will not set external_flag automatically, but the button is still there to reflect its state and allow manual changes. For setting external_flag on startup, I would recommend using a DFHack script (as you have done) although this is currently broken on classic.
You might be interested in https://github.com/DFHack/dfhack/discussions/2901, since it relates to DFHack/Dwarf Therapist interoperability with respect to labor management. It is, of course, exceedingly possible for Dwarf Therapist to communicate directly with DFHack, via DFHack's RPC mechanism.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Starver on February 13, 2023, 05:21:51 pm
You might be interested in https://github.com/DFHack/dfhack/discussions/2901,
"...the abandoned Dwarf Therapist..."? (In the first, and so far only, reply to the discussion.)

Whatever Clément's thoughts about if/how to procede, that's wrong. Unless it's purely in some DFHack context I don't appreciate.


(Because of various other priorities and competing distractions, I've just not yet jumped on the 50.* DF release, yet. Steam or non-Steam. So I've had nothing more useful to say on this issue. But I am following the progress most avidly, from afar. And trying to work out what my experience would be(/will eventually be) like, purely from reported experiences. All this discussion is very much part of that.)
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: feelotraveller on February 13, 2023, 06:26:19 pm
That is Clément's reply!

To unravel it for you - not that it is complex - 'the abandoned Dwarf Therapist' refers to the Labor Management DT we now, or in the recent past, all know and love, since it seems that Clément may well take DT in the direction of only using work details.

I happen to think that abandoning labors is a bad decision - I'm one Putnam's stick-in-the-mud players if you will, but I am unable to be more forthright since, as still waiting for a linux DF version (and a linux classic version at that) of the 50's series, I have not used the work details system myself so cannot participate well in this discussion.  While as pointed out above a couple of times it is possible to create a custom work detail for each labour I'm of the opinion that if I have to go that far to play the game the way I want rather than being perhaps railroaded into playing it the way the developers (thinking DF but perhaps this might apply secondarily to DT) want then it is probably not worth my while playing any longer.  But really I need to wait and see once a linux version gets released since perhaps I'm imagining a non-exsistent reality.  Or hope that someone with the skills steps up to the plate to fork off a labour management DT (as suggested), or work on convincing Clément that this is a worthwhile thing to keep in the Therapist version that they continue with.  But for that I need to be in a position to evaluate the "there is nothing labour management can do which work details can't" proposition.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Starver on February 13, 2023, 07:39:10 pm
That is Clément's reply!
Well, that's just me not keeping track of cross-site identities[1]. (I haven't felt the practical need to visit the DT area on github, or I would presumably have known le gros fromage from that particular corner of the interwebs... ;) )

...and thus I read it as a third-party comment. The hopes and fears of a DFHack bigwig, dealing with an (alternate) external tool, not how it was written (arguably the reverse). All valid but, yeah, I see it now in the mellow[2] tones of Clément and it flips some of my understanding considerably. Good old textual communications!


[1] I will hold my hands up to say that if I ever actually got myself on Github as a contributor, it would probably not be as "Starver" or anything at all like it/connectable.

[2] My impression. Not saying there's a black rollneck jumper and a casually-held gaulois heavily featuring in my mental image, but...  :P
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: Clément on February 13, 2023, 08:02:25 pm
I'm writing half my thoughts. "Abandoned" because I'm more and more considering restarting from scratch (and hopefully still be able pick some bits of code that can be reused) instead of changing core parts while trying keep everything working around it. That means there would be the old Dwarf Therapist not evolving any more (but I should be able to maintain compatibility, it does not require a lot of work) and another software that I hope I can work on more rapidly but will be lacking features for a while. Anyway I will need to make prototypes to try out ideas without being bothered with legacy. I fear that if I only try incremental changes, I won't be able to do anything.
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: feelotraveller on February 16, 2023, 03:26:26 am
That sounds exciting  A fresh take newly structured from the ground up.  Can't encourage you enough if that tickles your fancy.  This despite my dinosaurian micromanager tendencies.  :P

It is very reassuring to hear that the old version will maintain compatability with DF for the ongoing future, though.

[As an aside, if memory serves correctly, there was an even older utility Dwarf Engineer (I think) which led to Dwarf Foreman.  Interestingly, given the recent 'read only' versions of DT, it predated labour management and was a display only skill levels spreadsheet sort of thing.  Someone with better search-fu than myself might be able to find some remnant of it in a dusty old archive somewhere...]
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: A_Curious_Cat on February 16, 2023, 06:10:50 pm
That sounds exciting  A fresh take newly structured from the ground up.  Can't encourage you enough if that tickles your fancy.  This despite my dinosaurian micromanager tendencies.  :P

It is very reassuring to hear that the old version will maintain compatability with DF for the ongoing future, though.

[As an aside, if memory serves correctly, there was an even older utility Dwarf Engineer (I think) which led to Dwarf Foreman.  Interestingly, given the recent 'read only' versions of DT, it predated labour management and was a display only skill levels spreadsheet sort of thing.  Someone with better search-fu than myself might be able to find some remnant of it in a dusty old archive somewhere...]

List dwarf skills (http://www.bay12forums.com/smf/index.php?topic=726.0)?
Title: Re: Dwarf Therapist v41.2.5 | DF 0.47.05
Post by: feelotraveller on February 16, 2023, 09:24:34 pm
That sounds exciting  A fresh take newly structured from the ground up.  Can't encourage you enough if that tickles your fancy.  This despite my dinosaurian micromanager tendencies.  :P

It is very reassuring to hear that the old version will maintain compatability with DF for the ongoing future, though.

[As an aside, if memory serves correctly, there was an even older utility Dwarf Engineer (I think) which led to Dwarf Foreman.  Interestingly, given the recent 'read only' versions of DT, it predated labour management and was a display only skill levels spreadsheet sort of thing.  Someone with better search-fu than myself might be able to find some remnant of it in a dusty old archive somewhere...]

List dwarf skills (http://www.bay12forums.com/smf/index.php?topic=726.0)?

Ooh nice, that one's even older..  ;D  The one I was thinking of listed the skills in a nice, if simple, graphic form rather than just being a csv output.  Somewhat like Dwarf Foreman but without the ability to change labours.  May well have even been the direct link between the two. 
(DwarfSkills can still be found as part of this collection: https://dffd.bay12games.com/file.php?id=1098 (https://dffd.bay12games.com/file.php?id=1098).)

[Also I'll admit to some confusion on my part - Dwarf Engineer is/was one of the former maintainers of DT.  But I've still got an image in my head of an earlier forerunner, I can see it if not name it...]

History aside, the point is that the features of Therapist have arisen because of the needs for them in the player-base combined with the the desire of developers/maintainers to add them.  Doesn't mean that they are all still wanted/needed but chances are that someone sometime is going to want them again, or at least something similar that fulfills the same need.

For some reason Toady is entirely resistant to allowing players to access information in a conveniently usable form.  Sure I can manually go through dwarf details screen after dwarf details screen to find out who is the strongest dwarf(s) in my fortress but honestly doing that 200+ times is stupidly boring.  So there will always be a need for something like Therapist to list that information at a single glance.  The situation is the same, if more complex, when managing work/labour assignments.
Title: Re: Dwarf Therapist v42.0.0 | DF 50.07
Post by: Clément on February 19, 2023, 07:01:36 am
New version released: 42.0.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.0.0)

First proper release for DF 50! Most feature seems to be working. But consider this beta quality. The itch.io version is completely untested.

Changelog:
About labor management

If you don't want to use work details and set labors manually instead, there is a "Allow labor changes" button in the tool bar. It disable the in-game work details so you can keep your manual labor assignments. But it is not saved. You may lose your labor assignments if you don't re-enable it after restarting the game. I recommend using DFHack to set it on startup. There is a bug in DFHack 50.07-alpha1 that makes this solution more complex depending on your game version, but it should be fixed in the next releases.

You need to add a file in "dfhack-config/init" with a name starting with "dfhack" and ending with ".init" (for example "dfhack-dwarftherapist.init", see DFHack documentation (https://docs.dfhack.org/en/latest/docs/Core.html#dfhack-init)) containing:

for DFHack 50.07-alpha1 steam only
Code: [Select]
:lua df.global.game.external_flag = 1
for DFHack 50.07-alpha1 classic only
Code: [Select]
:lua df.global.game.flash_7_by_3[5][2][0] = 1
for the next release, I expect it to become
Code: [Select]
:lua df.global.game_extra.external_flag = 1I will upload a file that you can simply save in the correct location when it's there.
Title: Re: Dwarf Therapist v42.0.0 | DF 50.07
Post by: Clément on February 26, 2023, 09:50:32 am
About labor management

If you don't want to use work details and set labors manually instead, there is a "Allow labor changes" button in the tool bar. It disable the in-game work details so you can keep your manual labor assignments. But it is not saved. You may lose your labor assignments if you don't re-enable it after restarting the game. I recommend using DFHack to set it on startup. There is a bug in DFHack 50.07-alpha1 that makes this solution more complex depending on your game version, but it should be fixed in the next releases.

You need to add a file in "dfhack-config/init" with a name starting with "dfhack" and ending with ".init" (for example "dfhack-dwarftherapist.init", see DFHack documentation (https://docs.dfhack.org/en/latest/docs/Core.html#dfhack-init)) containing:

for DFHack 50.07-alpha1 steam only
Code: [Select]
:lua df.global.game.external_flag = 1
for DFHack 50.07-alpha1 classic only
Code: [Select]
:lua df.global.game.flash_7_by_3[5][2][0] = 1
for the next release, I expect it to become
Code: [Select]
:lua df.global.game_extra.external_flag = 1I will upload a file that you can simply save in the correct location when it's there.

Now that dfhack 50.07-alpha2 is released, the same command should work with every versions. I added a file (https://raw.githubusercontent.com/Dwarf-Therapist/Dwarf-Therapist/master/dist/dfhack-config/init/dfhack-dwarftherapist-labors.init) in DT repository that you can simply save in the dfhack-config/init directory.
Title: Re: Dwarf Therapist v42.0.0 | DF 50.07
Post by: zeves on March 13, 2023, 11:26:47 am
thank you its working, finally i can play DF properly.
Title: Re: Dwarf Therapist v42.0.0 | DF 50.07
Post by: Nimrod on April 14, 2023, 11:27:36 am
Hey, with the new DF Steam and df-hack Steam Beta, dwarf therapist is no lobger able to connect - do you by any chance plan on an update?
Would be greatly appreciated! cheers!
Title: Re: Dwarf Therapist v42.0.0 | DF 50.07
Post by: Clément on April 14, 2023, 12:09:08 pm
If you want a memory layout for 50.08-beta-1, here it is (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.08-memory-layouts/share/memory_layouts/windows/v0.50.08-beta-1_win64.ini), completely untested.

Edit: Do not use it, it is broken (https://github.com/DFHack/df-structures/issues/593#issuecomment-1509256680).
Title: Re: Dwarf Therapist v42.0.0 | DF 50.07
Post by: Clément on May 03, 2023, 04:05:21 am
Memory layouts for the new 50.08 release
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on May 04, 2023, 08:35:01 am
New version released: 42.0.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.0.1)

Support for DF 50.08 and a few bug fixes.

Changelog:
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: dr33mz33 on May 04, 2023, 05:21:42 pm
thanks for the update man! still use DT in every fort I run
Title: IDK how to install/compile, Am n00b with Deck Re: v42.0.1
Post by: viclew1 on May 11, 2023, 02:44:47 pm
New version released: 42.0.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.0.1)

Support for DF 50.08 and a few bug fixes.


Can anyone help me out with an an appimage or even a flatpak? I have a steam deck and I've tried to compile it myself.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on May 12, 2023, 04:51:16 am
Sorry, there was some issues with github actions and the appimage build failed. I'll build it manually, it will be easier than fixing those scripts.

Flatpak is not possible because the container prevents Dwarf Therapist from reading DF memory.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Inarius on May 12, 2023, 05:14:11 am
I still use Therapist to have a broad view of my dwarves, and to mass-name people (especially after a migration wave). It's a very good tool, and even if steam version fixed a lot of what Therapist brought, it's still much more simple with Therapist for me.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on May 12, 2023, 10:46:01 am
I added an appimage in the release page (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.0.1). Not built in the usual environment, but I hope it works as well.

By the way, how do you use Dwarf Therapist on a steam deck? Do you use it as desktop computer, or did you manage to make DT usable on it as portable game console? DT is not at its best on small screens, and I don't how easy it is to switch between apps on the steam deck.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: ldog on May 13, 2023, 09:50:58 pm
Some general suggestions...take them for what they're worth from a long term user, but I am still on 47.05
I don't really know what your plans are but since you're doing a reboot I figure might as well throw them out there as food for thought.

The skill sorting would be better along the lines of workshops that go together and guild sorting (so like the sub-guilds of the broader guilds).
I've got my own custom grid views which work for me, just please don't get rid of the ability to customize them if the thought had crossed your mind.

The attribute weighting, and I know it is customizable as well but I haven't had any success with it. It's a bit...weak. I mean if someone has skill then obviously they are a stronger candidate, it really is a no brainer at that point. When I need evaluations is when I've got 30 equally useless twat migrants and I want to know who has better stats to grow into the job. Granted this is pretty minor but it's just a feature I would like to make more use of.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on May 14, 2023, 04:24:01 am
The skill sorting would be better along the lines of workshops that go together and guild sorting (so like the sub-guilds of the broader guilds).
I've got my own custom grid views which work for me, just please don't get rid of the ability to customize them if the thought had crossed your mind.
I think labors used to be sorted like that, but it was changed at some point before my time. Anyway labors column will become less relevant (except if you disable work details).

I want to keep as much customization as possible. Although there is an issue with work details. Since they are dependent on the current game, my plan is to dynamically add as many columns as work details. But this prevents any kind of manual sorting/grouping. So this will likely results in one group of columns all the same color and in the same order as in game. Except if some kind of heuristic can be found to sort/group them.

I mean if someone has skill then obviously they are a stronger candidate, it really is a no brainer at that point.
Actually it depends on if you want someone good right now (then consider skill first) or someone you can train to become the perfect laborer (then you should consider attributes and personality and forget about skill, it is easy to train).
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: viclew1 on May 15, 2023, 10:11:22 pm
Thanks for that but I just realized you posted the memory layouts so next time maybe I can add those myself.

By the way, how do you use Dwarf Therapist on a steam deck? Do you use it as desktop computer, or did you manage to make DT usable on it as portable game console? DT is not at its best on small screens, and I don't how easy it is to switch between apps on the steam deck.

As for using it in Steam Deck Gaming Mode I just need to switch between apps like i would with a game. With the windows version the window is pretty clunky so having the Linux version that works better with the desktop UI is nice. In gaming mode my biggest problem in any desktop app is that the menus are taller than the program which was forced to be full screen.
I'm pretty new on playing DF so I don't know how to use DT anyway. I bought premium in dec and am still on the same 15 year fortress. I played without DFhack until a couple months ago and haven't really used DT that much.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Goldbeard on June 10, 2023, 06:06:23 pm
I am playing DF 47.05 and trying to use DT 41.2.5. DT will not connect, and on first loading displays two errors in the bottom right. "Network Error TLS initialization failed" and "Failed to check latest version   Invalid json data: illegal value". What is my next move from here?
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on June 11, 2023, 07:32:17 am
Which OS? Windows? Make sure DF is not running as admin.

You can check for errors in the logs (File → Open log directory).

You can ignore the network errors. If they bother you, you may disable updates in Options → General → Updates (or you may install/update OpenSSL).
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Goldbeard on June 12, 2023, 03:45:48 pm
Windows 10. DF is not running as admin.

File -- Open log directory shows me the two network errors as before, then "("Unidentified Game Version", "I'm sorry but I don't know how to talk to this version of Dwarf Fortress!", "Checksum: 0x6011e015", "Supported Versions:\nv0.47.05 (graphics) win64 (0x6011fb69)...[long list of versions omitted]...(MainWindow::lost_df_connection)"

Not sure what's up with that "lost df connection at the end," nothing connects or even flickers when I hit connect.

I'm definitely running 47.05 with no tilesetsl that "graphics" mention is confusing me, but probably shouldn't.

I included the network errors as my only lead, I wouldn't mind them if Therapist connected/read.

I've run previous versions of DF and DT together on this machine, but 47.05 and 41.2.5 are new installs for me, I was away for a while.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on June 12, 2023, 04:58:01 pm
Checksum: 0x6011e015

This is the legacy version, it is not supported, you need the SDL (a.k.a. graphics) version.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Goldbeard on June 14, 2023, 06:38:14 pm
This is the legacy version, it is not supported, you need the SDL (a.k.a. graphics) version.

Thank you for your help and patience, that was exactly the problem.

Mixed news for me since I don't want graphics, but I want a large fort without Therapist even less so I guess I'll suck it up and start a new one.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Starver on June 15, 2023, 03:15:48 am
I don't know all that Clément knows about what DF v50.?? versions (or indeed prior) work or do not work with DT, but surely (prior to this, with your 47.05), Legacy and SDL versions were effectively the same w.r.t. (vanilla) graphics of the Codepage type, though it does muddle the back-end/internals around to require a technical change to DT connectivity..

Check http://bay12games.com/dwarves/older_versions.html and get the appropriate SDL download (64-bit, if you wish, if you were running that assemblage already) for 47.05. I don't think the Small version changes anything of consequence to you, if you prefer that for whatever reason. Unpack it parallel to your Legacy version (should be easy enough to do, even if you used something like LNP to manage this deployment last time) and copy across the Savegame folder from the "legacy" version into the new one and then... I imagine ...you surely won't need to either start a new fort or lose out on DT functionality. Unless I'm totally wrong.

Maybe you also need pre-Steam version of DT (not something I've yet had cause to test), though I'd have to read back through the thread updates to see if there were various clean-breaks made for the sake of Clém's surviving sanity. Perhaps I missed/misread something about this that meant it had been breaked cleaner/harder..?

And I'm so behind the curve that I couldn't say if v50.xx unPremium is "new Legacy" ('deSDLed'), or not, but I've not been given that impression (and it's irrelevent to the 47.xx era anyway), as "non-graphics"/”ASCII" DF was supposed to be just "Steam-graphics DF" without the fancier Premium resources, SFAIK. Not that it matters here.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on June 15, 2023, 03:41:33 am
I don't know all that Clément knows about what DF v50.?? versions (or indeed prior) work or do not work with DT, but surely (prior to this, with your 47.05), Legacy and SDL versions were effectively the same w.r.t. (vanilla) graphics of the Codepage type, though it does muddle the back-end/internals around to require a technical change to DT connectivity..
I'm not sure the difference matters for DT, but it does for DFHack. And I need it for generating memory layouts. Maybe DT could work with a manually created memory layout, but I never made the effort to try.

Maybe you also need pre-Steam version of DT (not something I've yet had cause to test), though I'd have to read back through the thread updates to see if there were various clean-breaks made for the sake of Clém's surviving sanity. Perhaps I missed/misread something about this that meant it had been breaked cleaner/harder..?
Goldbeard is using the correct version: 41.2.5 as noted in the first post.

And I'm so behind the curve that I couldn't say if v50.xx unPremium is "new Legacy" ('deSDLed'), or not, but I've not been given that impression (and it's irrelevent to the 47.xx era anyway), as "non-graphics"/”ASCII" DF was supposed to be just "Steam-graphics DF" without the fancier Premium resources, SFAIK. Not that it matters here.
All current versions use SDL and are supported by DFHack. Steam version has steam workshop support, and I don't know if there is any real difference between classic and itch.io binary executables.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Starver on June 15, 2023, 06:52:54 am
I don't know all that Clément knows about what DF v50.?? versions (or indeed prior) work or do not work with DT, but surely (prior to this, with your 47.05), Legacy and SDL versions were effectively the same w.r.t. (vanilla) graphics of the Codepage type, though it does muddle the back-end/internals around to require a technical change to DT connectivity..
I'm not sure the difference matters for DT, but it does for DFHack. And I need it for generating memory layouts. Maybe DT could work with a manually created memory layout, but I never made the effort to try.
Ah, yes, that joins some dots up that I had clearly not joined up before.

And now you're integrating more with(/relying more upon) DFHack, if I correctly recall more recent discussions. But I'm not au fait with DFHack's developmental status, and had no idea it was not sufficiently binary-agnostic for use with pre-Steam Legacy versions already.

Quote
Goldbeard is using the correct version: 41.2.5 as noted in the first post.
I wasn't sure where we were with that (I know I have grabbed the best version for me, but I rarely dive into Github histories/etc), so I was covering bases. Definitely sounds like I was over-cautious there. Whatever other errors of assumption I made along the way. ;) And you're the one who should know how(/if) to get it working, anyway, when I was a bit precipitous in poking my nose in.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: lethosor on June 15, 2023, 11:16:05 am
Mixed news for me since I don't want graphics, but I want a large fort without Therapist even less so I guess I'll suck it up and start a new one.

The SDL version does not require graphics - it just uses a newer rendering backend (SDL) than the "legacy" version, so it supports more advanced/performant graphics. In ASCII mode, the two versions would look identical, although the SDL version may perform slightly better.

Saves are also 100% compatible between the legacy and SDL versions (of the same DF version), since the core DF code is the same, so you wouldn't have to start a new fort.

I'm not really sure where the "graphics" name came from, honestly - as far as I can tell, neither the DF website nor DFHack have ever called it that (Bay12 calls it "SDL Windows", DFHack calls it "v0.47.05 SDL win64"). I'm guessing it's a name that carried over from previous DT forks.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Goldbeard on June 16, 2023, 06:02:17 pm
Saves are also 100% compatible between the legacy and SDL versions (of the same DF version), since the core DF code is the same, so you wouldn't have to start a new fort.

That makes me happy, thanks for posting. I had an idea from somewhere you needed to be careful with save compatibility, but probably I was mixing up old info about trying saves from different major updates.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Codedependent on June 23, 2023, 10:31:42 pm
Hi, first of all - love DT, thanks for your work on it! Second, how does one create a memory layout file for DT? I've finally bitten the bullet and am trying out the experimental branch, but absolutely hate not having DT.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on June 24, 2023, 03:15:35 am
You need DFHack, run the "devel/export-dt-ini" script, it will generate a "therapist.ini" file in DF root folder.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Codedependent on June 24, 2023, 05:37:34 pm
Thanks for the reply :)  FYI: That script chucks errors, after forcing it to run (unavailable). Just checked with the DF Hack folks and they said it hasn't been updated since 47.

[DFHack]# devel/export-dt-ini
...mmon\Dwarf Fortress/hack/scripts/devel/export-dt-ini.lua:47: attempt to perform arithmetic on a nil value (local 'addr')
stack traceback:
        ...mmon\Dwarf Fortress/hack/scripts/devel/export-dt-ini.lua:47: in local 'address'
        ...mmon\Dwarf Fortress/hack/scripts/devel/export-dt-ini.lua:132: in local 'script_code'
        ...team\steamapps\common\Dwarf Fortress\hack\lua\dfhack.lua:830: in function 'dfhack.run_script_with_env'
        (...tail calls...)
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on June 24, 2023, 06:05:55 pm
It has been updated in February.

Line 132, replace 'game_extra' by 'game'. That should do it, if there was no other name change.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Codedependent on June 24, 2023, 07:23:03 pm
Thanks, that did it!
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Codedependent on June 25, 2023, 02:35:21 am
Step by step instructions to create the memory map file required for Dwarf Therapist to work with experimental or beta builds (step 2 won't be required once DF Hack team fix the script):

1. Install DF Hack if not already installed
2. Edit the script "dwarf fortress base folder"\hack\scripts\devel\export-dt-ini.lua replacing game_extra with game on line 132. Original line is address('external_flag',globals,'game_extra','external_flag')
3. Run devel/export-dt-ini in DF Hack (will have to run it twice, as it is "unavailable"), which creates an ini file in the base DF directory
4. Copy that file into your dwarf therapist folder in "dwarf therapist base folder"\data\memory_layouts\windows (or whatever platform you're on) folder
5. Not sure if this is required, but I did it: rename the ini file to the version name contained within it. Line three in the file I just created was version_name=v0.50.08-sdl2-5 win64 STEAM so I renamed the ini file v0.50.08-sdl2-5 win64 STEAM.ini
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: lethosor on June 25, 2023, 02:04:34 pm
In the next version of DFHack, the script has been updated to correct the "game_extra" error and will no longer need to be run twice.

Reminder that if you see a script that works but needs to be run twice because it is marked as "unavailable" (or if you fix the script so that it works), please either remove the "unavailable" tag from the docs or let us know so we can do it. Thanks!
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Viax on June 29, 2023, 11:22:58 am
Any updates for 50.09? :>
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: lethosor on June 29, 2023, 08:51:40 pm
The instructions above should work to generate a memory layout if you have DFHack.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Clément on June 30, 2023, 08:43:54 am
Experimental memory layouts:
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: Codedependent on June 30, 2023, 10:04:52 pm
Any updates for 50.09? :>

Step by step instructions to create the memory map file required for Dwarf Therapist to work with new, experimental or beta builds:

1. Install DF Hack if not already installed
2. Run devel/export-dt-ini in DF Hack, which creates an ini file in the base DF directory
3. Copy that file into your dwarf therapist folder in "dwarf therapist base folder"\data\memory_layouts\windows (or whatever platform you're on) folder
4. Not sure if this is required, but I did it: rename the ini file to the version name contained within it. Line three in the file I just created was version_name=v0.50.09 win64 STEAM so I renamed the ini file v0.50.09 win64 STEAM.ini
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: leopap on July 01, 2023, 06:28:35 am
Experimental memory layouts:
  • classic (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.09-memory-layouts/share/memory_layouts/windows/v0.50.09-classic_win64.ini)
  • itch (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.09-memory-layouts/share/memory_layouts/windows/v0.50.09-itch_win64.ini)
  • steam (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.09-memory-layouts/share/memory_layouts/windows/v0.50.09-steam_win64.ini)

Thank you! It worked.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: lethosor on July 26, 2023, 01:26:08 am
Step by step instructions to create the memory map file required for Dwarf Therapist to work with new, experimental or beta builds:

1. Install DF Hack if not already installed
2. Run devel/export-dt-ini in DF Hack, which creates an ini file in the base DF directory
3. Copy that file into your dwarf therapist folder in "dwarf therapist base folder"\data\memory_layouts\windows (or whatever platform you're on) folder
4. Not sure if this is required, but I did it: rename the ini file to the version name contained within it. Line three in the file I just created was version_name=v0.50.09 win64 STEAM so I renamed the ini file v0.50.09 win64 STEAM.ini
For anyone still looking, you can skip steps 1-2 and download a pre-made memory layout from https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/301/files, then use that file in step 3. Hopefully this will be merged soon.
Title: Re: Dwarf Therapist v42.0.1 | DF 50.08
Post by: thefinn on July 27, 2023, 01:03:16 am
Step by step instructions to create the memory map file required for Dwarf Therapist to work with experimental or beta builds (step 2 won't be required once DF Hack team fix the script):

1. Install DF Hack if not already installed
2. Edit the script "dwarf fortress base folder"\hack\scripts\devel\export-dt-ini.lua replacing game_extra with game on line 132. Original line is address('external_flag',globals,'game_extra','external_flag')
3. Run devel/export-dt-ini in DF Hack (will have to run it twice, as it is "unavailable"), which creates an ini file in the base DF directory
4. Copy that file into your dwarf therapist folder in "dwarf therapist base folder"\data\memory_layouts\windows (or whatever platform you're on) folder
5. Not sure if this is required, but I did it: rename the ini file to the version name contained within it. Line three in the file I just created was version_name=v0.50.08-sdl2-5 win64 STEAM so I renamed the ini file v0.50.08-sdl2-5 win64 STEAM.ini

Worked like a charm, thanks mate.

Now I can find that bloody vampire.
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: Clément on July 30, 2023, 07:21:29 am
New version released: 42.0.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.0.2)

Sorry for being late. This release adds support for DF 50.09 and updates misc traits.

Changelog:
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: Dustin on August 05, 2023, 11:35:43 am
Hey Fellas, I got a question, im on premium here, and just trying to be efficient as i'm building an above ground fortress, is there a good way of seeing relationship statuses in DT or do i have to do the manual work of looking at all my modded peeps?
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: DiggyDiggy on August 08, 2023, 04:55:07 pm
Hello all,
Im on fedora linux and cannot get it to see the pid of the running DF session to save my life. I tried the ptracer lines in cmd to allow it the one time, but that doesnt work. is there a more permanent solution for fedora users? Or am I out of luck on this one?
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: Clément on August 08, 2023, 05:08:42 pm
There is usually no issue with ptrace_scope on Fedora but check its value to be sure. Which versions of DF and DT are you using? DT 42 only support DF 50 in wine. You need DT 41.2.5 if you are using DF 0.47 native linux version.

That reminds me that I forgot to update my copr repo (https://copr.fedorainfracloud.org/coprs/cvuchener/Dwarf-Therapist/).
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: theharber on September 13, 2023, 08:18:12 am
I hope this doesn't come across as thick, but how exactly do we run the DFhack scripts to get the layout for experimental versions?

I updated DF to the latest beta branch (50.10), but DFhack fails to open because it's not a recognized DF version since it's expecting 50.09.
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: Clément on September 13, 2023, 11:34:10 am
Code: [Select]
devel/export-dt-iniIt generates a file called therapist.ini in DF root directory.
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: theharber on September 13, 2023, 12:08:38 pm
I'm familiar with the location of the script, but I'm not sure how to run it.

CMD doesn't recognize the export-dt-ini.lua file located in the 'devel' folder.

The instructions shared previously suggested the script needed to be run from inside DF Hack, but any time I try to run DF Hack with the beta version of Dwarf Fortress installed, DF Hack closes because it's not the correct version of Dwarf Fortress.
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: Clément on September 13, 2023, 01:54:32 pm
"devel/" is part of the command. It must be run from DFHack command prompt. So if you cannot run DFHack, you must fix it first. I cannot help you with that. I have no idea what is the status of DFHack for the latest beta.
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: lethosor on September 14, 2023, 12:00:50 am
You need a version of DFHack that supports the 50.10 betas. You can get that by switching to DFHack's beta or testing branch (not sure which) on Steam, or if you prefer to download it manually, you can get it from the "5010-beta" branch on GitHub by following the instructions at https://docs.dfhack.org/en/latest/docs/Installing.html#development-builds

Be warned that it is not very stable yet, and DF is rapidly releasing new builds - so even if you do manage to get DT working, DF could well update within a day and require another DFHack update. If you want stability, I would probably wait a couple days.
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: dr33mz33 on September 15, 2023, 05:09:51 am
I just discovered I can get the mem layouts myself with just a command. What a time to be alieve. I got DT working easily with .10 and thank God because I can't play without it. The overviews are just too good.
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: thefinn on September 15, 2023, 07:00:50 am
I just discovered I can get the mem layouts myself with just a command. What a time to be alieve. I got DT working easily with .10 and thank God because I can't play without it. The overviews are just too good.

I know right.

All those years of waiting for a new release, and I could've been doing this lol
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: Inarius on September 20, 2023, 03:26:43 am
Same as me. Can't play DF without it.
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: Clément on September 20, 2023, 04:20:40 am
Experimental memory layouts for DF 50.10:


Linux memory layouts won't work with the current release and require more changes (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/305).
Title: Re: Dwarf Therapist v42.0.2 | DF 50.09
Post by: Morwaul on September 21, 2023, 03:37:13 pm
Experimental memory layouts for DF 50.10:

  • classic win64 (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.10-memory-layouts/share/memory_layouts/windows/v0.50.10-classic_win64.ini)
  • itch win64 (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.10-memory-layouts/share/memory_layouts/windows/v0.50.10-itch_win64.ini)
  • steam win64 (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.10-memory-layouts/share/memory_layouts/windows/v0.50.10-steam_win64.ini)

Linux memory layouts won't work with the current release and require more changes (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/305).

You!  Are a beautiful and wonderful person!  I shall ingrave your likeness upon the front of the best platinum minecart in my blender chamber!
Title: Re: Dwarf Therapist v42.1.0 | DF 50.10
Post by: Clément on September 24, 2023, 08:58:04 am
New version released: 42.1.0 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.1.0)

Not much changed for the Windows version except for DF 50.10 memory layouts. But the Linux version now only support native versions of DF (no longer wine/proton versions).

Changelog:
Title: Re: Dwarf Therapist v42.1.0 | DF 50.10
Post by: Clément on October 04, 2023, 05:12:03 am
Experimental memory layouts for 50.11
Title: Re: Dwarf Therapist v42.1.0 | DF 50.10
Post by: leopap on October 10, 2023, 09:06:42 am
Experimental memory layouts for 50.11
  • linux classic (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.11-memory-layouts/share/memory_layouts/linux/v0.50.11-classic_linux64.ini)
  • linux itch (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.11-memory-layouts/share/memory_layouts/linux/v0.50.11-itch_linux64.ini)
  • linux steam (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.11-memory-layouts/share/memory_layouts/linux/v0.50.11-steam_linux64.ini)
  • windows classic (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.11-memory-layouts/share/memory_layouts/windows/v0.50.11-classic_win64.ini)
  • windows itch (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.11-memory-layouts/share/memory_layouts/windows/v0.50.11-itch_win64.ini)
  • windows steam (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/50.11-memory-layouts/share/memory_layouts/windows/v0.50.11-steam_win64.ini)

Thank you very much!
Title: Re: Dwarf Therapist v42.1.1 | DF 50.11
Post by: Clément on October 11, 2023, 01:57:42 pm
New version released: 42.1.1 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.1.1)

This release only adds the memory layouts for 50.11 with no change since I posted links here. If you already have installed the memory layouts, you don't really need this release.

Changelog:
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Clément on November 07, 2023, 11:34:46 am
New version released: 42.1.2 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.1.2)

Changelog:
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Inarius on November 09, 2023, 05:34:55 am
Thanks for your work !
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: CEHA on November 23, 2023, 10:57:01 am
I installed and compiled from GIT on Debian, the question is how to remove it?
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Clément on November 23, 2023, 12:41:06 pm
I installed and compiled from GIT on Debian, the question is how to remove it?
Sadly, you have to do it manually. CMake may have left a file in your build directory listing the files it installed (I don't remember the exact name).

For a complete cleanup you may want to delete the files it may have created in your home (~/.config/dwarftherapist, ~/.local/share/dwarftherapist, ~/.cache/dwarftherapist)
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Clément on November 23, 2023, 01:04:45 pm
I uploaded several new repos on github.

https://github.com/cvuchener/libdfs

I initially wrote this for generating memory layouts for Dwarf Therapist directly from df-structures xml files several years ago and reused it for various experimental projects. It grew into a library for introspecting DF types, parsing DF memory and generating code (enums and bitfields only for now).

It can read memory more efficently than DT by grouping more data together. This allow using slower methods like network protocol to access DF data.

https://github.com/cvuchener/dt-memory-layout

The tool that can produce Dwarf Therapist memory layouts using the previous library. Unlike the dfhack script, it does not need to be run on the target platform so it can generate memory layouts for all targets at once.

https://github.com/cvuchener/df-workdetailtest

A prototype for what could be become the next Dwarf Therapist.

This far from a DT replacement yet. It does show much data, has no grouping/filtering and very limited sorting. The purpose of this release is mostly testing interactions with the game.

Main changes from DT:

You can download a build for windows: https://github.com/cvuchener/df-workdetailtest/releases/tag/v0.1 (I hope it works on other computers than mine, it's built using mingw64, I have some weird issue with msvc and qcoro that may take time to solve)

You need two plugins: workdetailtest is mandatory, and llmemreader is only used if the native api cannot be used (because of security settings or for accessing the process remotely)
You can download builds for DFHack 50.11-r4:

(https://i.ibb.co/VCDnb8M/df-workdetailtest.png) (https://ibb.co/VCDnb8M)

It can currently edit:
Known issues:

Don't hesitate to ask questions, give feedback, report bugs.
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Starver on November 23, 2023, 03:33:27 pm
Main changes from DT:
  • Changes are sent immediately to the game, no need for "commit changes". (Does this break some usage?)
I could/would work around this, personally (I probably spend more time with DF paused than running, historically), but I'd suggest an option to override this default where some is inclined to set/unset things in groups or runs before fine-tuning. (E.g. adding in <foo>-hauling for everyone then immediately undoing it for miners, or undoing smoothing for everyone then adding it back on for the select few chosen by some other criteria... Or whatever options work under the premise of "workdetail"ness, which I'm still a little hazy about.)

Having to get used to so many possible changes, I'm of course really just suggesting this out of old habit. Before even playing with the new tool, in situ. ;)
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Clément on November 23, 2023, 05:07:16 pm
adding in <foo>-hauling for everyone then immediately undoing it for miners, or undoing smoothing for everyone then adding it back on for the select few chosen by some other criteria...
These use cases work well with work details, this is switch between "Everyone does this except specialists" and "Only assigned do this". Any way if you do this while the game is paused, it does not change anything. If it was unpaused, the worst is a miner may have started hauling something.

I was thinking more of something like doing a lot of changes then review them and revert a few you are unhappy with before committing.

This remind me of another related change I should make explicit: DT was reloading data after committing, here it is not the case, only the individual change is applied locally (if it succeeds). You will need to click "update" manually if you want to be sure to be synced with the game (you should update every time you look at the application after playing for while with the old or the new system alike).
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Clément on November 26, 2023, 07:05:07 am
I added a flatpak bundle for linux users at https://github.com/cvuchener/df-workdetailtest/releases/tag/v0.1, it requires the org.kde.Platform runtime. It is not a repo so it won't update automatically, but I think it's better for experimental program.
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Clément on December 02, 2023, 09:20:39 am
Mixing cell painting + live update + sorting by assignment gives annoying but kind of expected results:
(https://i.ibb.co/hfgYGdL/2023-12-02-15-03-26.gif)
It is even worse with grouping
(https://i.ibb.co/yQ3LcJJ/2023-12-02-15-10-49.gif)
I think I'll try to disable the cell painting if the cells are moving.
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: feelotraveller on January 12, 2024, 02:41:36 pm
Just a comment on the latest, resolved, issue on github: the Steamdeck OS (known as SteamOS) is basically a GUI layer built on top of Arch Linux - so any scripts, commands, installations need to use pacman rather than apt-get.  It is also 'armoured' in that steam sets the majority of the system to read-only to, um, 'protect' the OS from user interventions.  To get around this, not recommended by steam as you would expect - except for 'advanced' users - it is necessary to run
Code: [Select]
sudo steamos-readonly disablewhich then allows access to the normal range of sudo and pacman commands, for example to grab gcc, clang or other packages from the arch repositories or the AUR (user repositories).  Hopefully this might help a bit with providing support for users of steamdeck in the future.

-----

Separately, since I'm posting, re the previous post - what is the advantage (other than avoiding clicking a commit button) of having therapist do live updates?  Or was it just something you were having fun trying out.
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Clément on January 13, 2024, 03:09:57 pm
Just a comment on the latest, resolved, issue on github: the Steamdeck OS (known as SteamOS) is basically a GUI layer built on top of Arch Linux - so any scripts, commands, installations need to use pacman rather than apt-get.  It is also 'armoured' in that steam sets the majority of the system to read-only to, um, 'protect' the OS from user interventions.  To get around this, not recommended by steam as you would expect - except for 'advanced' users - it is necessary to run
Code: [Select]
sudo steamos-readonly disablewhich then allows access to the normal range of sudo and pacman commands, for example to grab gcc, clang or other packages from the arch repositories or the AUR (user repositories).  Hopefully this might help a bit with providing support for users of steamdeck in the future.
I have a qemu vm with steamos, so I know a little how it works, but it is not the same as a real steam deck (no gpu driver means no game mode, only the desktop is available). I don't think using pacman is a good idea, the updates will overwrite the installed packages any way. I think it is best to provide already built binaries. At least by moving to a dfhack plugin, there won't be any issue with ptrace_scope, and it can even work from a flatpak.

Separately, since I'm posting, re the previous post - what is the advantage (other than avoiding clicking a commit button) of having therapist do live updates?  Or was it just something you were having fun trying out.
I think the main advantage is avoiding clicking a commit button. It's something I did not feel was needed, but it is only my personal opinion, so I was asking it breaks some usage I did not think of.

It should not be too difficult to re-implement the pending changes/commit mechanism, at least for cell toggling. I don't know how pending work detail creation/deleting/moving should be displayed.
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: Immortal-D on January 13, 2024, 05:27:50 pm
Good old Therapist :D (the inflexibility of labor groups in Premium is a bit silly).  Anyways, I ran into an issue and am unsure if it's a setting I changed; I assigned a Dwarf the Stonecrafting labor, committed change, then ordered a few rock pots, but that Dwarf still shows 'no job'.  Do I need to change my ingame labor groups to 'all'? (I thought DT overwrites those).  Edit: Disregard, my joy of recreating my old professions caused a rookie mistake.
Title: Re: Dwarf Therapist v42.1.2 | DF 50.11
Post by: feelotraveller on January 14, 2024, 04:06:34 am
Just a comment on the latest, resolved, issue on github: the Steamdeck OS (known as SteamOS) is basically a GUI layer built on top of Arch Linux - so any scripts, commands, installations need to use pacman rather than apt-get.  It is also 'armoured' in that steam sets the majority of the system to read-only to, um, 'protect' the OS from user interventions.  To get around this, not recommended by steam as you would expect - except for 'advanced' users - it is necessary to run
Code: [Select]
sudo steamos-readonly disablewhich then allows access to the normal range of sudo and pacman commands, for example to grab gcc, clang or other packages from the arch repositories or the AUR (user repositories).  Hopefully this might help a bit with providing support for users of steamdeck in the future.
I have a qemu vm with steamos, so I know a little how it works, but it is not the same as a real steam deck (no gpu driver means no game mode, only the desktop is available). I don't think using pacman is a good idea, the updates will overwrite the installed packages any way. I think it is best to provide already built binaries. At least by moving to a dfhack plugin, there won't be any issue with ptrace_scope, and it can even work from a flatpak.

Any update will overwrite (or replace to be more precise) user package changes but for the case of the user compiling their own binary it works fine.  But yes, prebuilt binaries or flatpacks would be preferred.

Separately, since I'm posting, re the previous post - what is the advantage (other than avoiding clicking a commit button) of having therapist do live updates?  Or was it just something you were having fun trying out.
I think the main advantage is avoiding clicking a commit button. It's something I did not feel was needed, but it is only my personal opinion, so I was asking it breaks some usage I did not think of.

It should not be too difficult to re-implement the pending changes/commit mechanism, at least for cell toggling. I don't know how pending work detail creation/deleting/moving should be displayed.

Up to you really.  Nothing I know of that breaks but if someone (like me) changes their mind while reassigning dwarfs it can be a bit chaotic with job interruptions and the like.
Title: Re: Dwarf Therapist v42.1.3 | DF 50.11
Post by: Clément on January 23, 2024, 07:38:43 am
New version released: 42.1.3 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.1.3)

Changelog:
Title: Re: Dwarf Therapist v42.1.3 | DF 50.11
Post by: Pontifex13 on January 26, 2024, 05:06:46 pm
Thanks for your hard work. I enjoy the program a lot and don't run a single fort without it.

With the steam release I've noticed something strange: sometimes constructions for workshops or track stops (those are the two I've experienced, but I suspect other (construction) tasks can also be affected) are not assigned to any dwarf although they have the construction labor enabled in DT. I've discussed this in discord and they suggested that sometimes the game gets stuck on task assignment because of a hard five-bid limit which leads to bid failure? The way to solve this is apparently reset your labor assignments by making any change in the in-game work details, which causes you to lose your custom labor assignments from DT off course. But after that you could manually restore your labor assignments in DT and hopefully the problem won't repeat itself too often. Now I have two questions:

1. Is anyone else experiencing this problem and is there a known workaround that doesn't mess up your DT labor assignments?
2. If not, would it be possible to program a backup/restore function in DT which allows you to backup your labor assignments per individual dwarf or for the whole fort at once and then restore it afterwards? Otherwise it's a hassle to redo your labor assignments every time you encounter this bug, especially if you have a large fortress.

Thanks a lot,
Ponti
Title: Re: Dwarf Therapist v42.1.3 | DF 50.11
Post by: myk on January 26, 2024, 06:14:40 pm
It's not always construction that is needed. Workshops and trackstops can require masonry or carpentry, for example, depending on what the building material is.
Title: Re: Dwarf Therapist v42.1.3 | DF 50.11
Post by: Clément on January 27, 2024, 09:19:54 am
I don't know what would be causing this, and why this workaround would work. I am not aware of anything that need to be done beside setting labors. Some labors need a flag for updating equipment but construction does not use any tool.

About 2., I am not implementing any major new feature in DT since I am replacing it. But if someone wants to do it, they can, it's free software.
Title: Re: Dwarf Therapist v42.1.3 | DF 50.11
Post by: Pontifex13 on January 27, 2024, 07:34:16 pm
It's not always construction that is needed. Workshops and trackstops can require masonry or carpentry, for example, depending on what the building material is.

Just tried that by giving everyone Carpentry an Masonry, that doesn't solve the problem. It stays stuck... A bunch of dwarves have no job assigned and it seems to stay that way...
Title: Re: Dwarf Therapist v42.1.3 | DF 50.11
Post by: Pontifex13 on February 01, 2024, 05:52:34 pm
I've figured it out. In order for your dwarves to build a particular workshop, someone needs to have the labor the workshop uses assigned. So for instance if you want to build a Clothier, someone needs to have Clothesmaking assigned before the workshop gets built. It sorta makes sense, why build a clothier workshop if noone's gonna use it...
Title: Re: Dwarf Therapist v42.1.4 | DF 50.11
Post by: Clément on February 07, 2024, 08:50:10 am
New version released: 42.1.4 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.1.4)

The change from the last version had too many side-effects, so I reverted it and instead made labor cheat option apply to more units. You will have to display visitors to see units mislabeled as "non-citizens".

Changelog:
Title: Re: Dwarf Therapist v42.1.4 | DF 50.11
Post by: Clément on February 07, 2024, 09:36:48 am
I also made a new version for my work detail prototype (see previous post (http://www.bay12forums.com/smf/index.php?topic=168411.msg8513595#msg8513595)). I think it is starting to be something usable.

You can download it here (https://github.com/cvuchener/df-workdetailtest/releases/tag/v0.2) for windows or linux flatpak.

You will need a updated workdetailtest dfhack plugin (https://github.com/cvuchener/dfhack-plugin-workdetailtest/releases/tag/v2). The llmemreader plugin (https://github.com/cvuchener/dfhack-plugin-llmemreader/releases/tag/v1.1) has not changed.

(https://i.ibb.co/sv4Hfgc/workdetail-mainwindow.png) (https://ibb.co/4ZLdqFC)

It includes grouping and filtering. You can change sorting criteria by right clicking columns (for some columns).

You can select multiple units and toggle all cells at once. Or you can drag the mouse over cells to toggle them. I hope there is not too many weird behaviors with this combination.

You can have multiple grid view tabs. There is no GUI editor yet, but you can create and edit json files in data/gridviews.

You can edit more stuff about work details. I don't think labor selection is great, but I am not sure about the use cases yet.

(https://i.ibb.co/5c9Vn2h/workdetail-edit.png) (https://ibb.co/VBN8Q3Y)

Built-in work details are protected, but there is an option to edit them anyway.

There is also a dialog for managing work details (menu "Manage" → "Work details..."). It lets you edit/add/remove work details. You can also reorder them by drag and drop or buttons. There is a preset lists, you can add your own with drag and drop or the contextual menu.

(https://i.ibb.co/QjFtHJg/workdetail-manager2.png) (https://ibb.co/h1Rwdg6)

I tried to make the cells nicer, but I don't know how to display disabled cells so they are still that ugly cross pattern. DT use the background color for that, but I'd like to keep it for the work details mode. What do you think?

(https://i.ibb.co/M51QSbt/workdetail-animals.png) (https://ibb.co/n81tmTY)
Title: Re: Dwarf Therapist v42.1.4 | DF 50.11
Post by: myk on February 07, 2024, 10:44:36 am
Have you considered moving this into DFHack itself? There's a lot of functionality here that we want to have in-game as well. The widget API is quite different, of course, and less capable, but we'd also like to make the kinds of widgets that DT needs available in DFHack as well since other tools could make use of them too.
Title: Re: Dwarf Therapist v42.1.4 | DF 50.11
Post by: Clément on February 07, 2024, 11:41:53 am
I did consider using Qt inside DFHack (https://github.com/cvuchener/dfhack-qt) but there was too many issues and not enough gain. Making DFHack widgets equivalent to Qt widgets would be a lot of work I think, so I did not consider that.

The main drawback of a separate client is having to duplicate the game logic (generating strings, testing what can be done with whom, ...), and dealing with syncing data. But for the GUI part, I like it like that.
Title: Re: Dwarf Therapist v42.1.4 | DF 50.11
Post by: CheeseCriminal on March 06, 2024, 10:27:26 pm
Any chance we can get the memory updated for DF 50.12?
Title: Re: Dwarf Therapist v42.1.4 | DF 50.11
Post by: Clément on March 07, 2024, 02:42:55 am
In DFHack command prompt, run "devel/export-dt-ini". This will create a file named "therapist.ini" in DF root directory, move it to "%APPDATA%/Roaming/Dwarf Therapist/memory_layouts/windows" on Windows or "~/.local/share/dwarftherapist/memory_layouts/linux" on Linux.
Title: Re: Dwarf Therapist v42.1.4 | DF 50.11
Post by: Clément on March 12, 2024, 08:50:44 am
Experimental memory layouts for 50.12
Title: Re: Dwarf Therapist v42.1.5 | DF 50.12
Post by: Clément on March 27, 2024, 08:20:03 am
New version released: 42.1.5 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.1.5)

Changelog:
Title: Re: Dwarf Therapist v42.1.5 | DF 50.12
Post by: baldamundo on April 18, 2024, 11:15:18 am
Apologies if I've missed something obvious, but are there up to date instructions for how to use Dwarf Therapist with the Steam version of Dwarf Fortress? have seen a few Reddit posts/etc with instructions, but they're from like a year ago, so I want to make sure I'm following the right process
Title: Re: Dwarf Therapist v42.1.5 | DF 50.12
Post by: Clément on April 19, 2024, 06:09:38 pm
What would have changed? I don't understand. If you have an issue, please describe it (what do you want, what did you do, what did happen).
Title: Re: Dwarf Therapist v42.1.5 | DF 50.12
Post by: baldamundo on April 20, 2024, 09:47:51 am
What would have changed? I don't understand. If you have an issue, please describe it (what do you want, what did you do, what did happen).
It kept saying it couldn't detect DF but it turns out my problem was that I needed to run it in admin mode. Sorry, I've not played DF since before the Steam version, so I wasn't sure what the issue was
Title: Re: Dwarf Therapist v42.1.5 | DF 50.12
Post by: Clément on April 20, 2024, 01:10:52 pm
It kept saying it couldn't detect DF but it turns out my problem was that I needed to run it in admin mode.
On Windows? You should not have to run DT as admin unless DF is also running as admin. It has been reported before, but I have no idea why DF was running as admin, maybe it is related to Steam. It was solved by a reinstallation. (https://github.com/Dwarf-Therapist/Dwarf-Therapist/issues/275#issuecomment-1383855362)
Title: Re: Dwarf Therapist v42.1.5 | DF 50.12
Post by: Uggh on May 03, 2024, 07:33:30 am
I followed the wiki to create the memory layout for the steam version 50.13-r1.1 by using the devel/export-dt-ini command in DFHack (also from steam) while DF was running with a fort open. In %APPDATA%/Roaming/Dwarf Therapist/ I realized that contrary to the wiki, there are no subfolders memory_layouts/windows, but just a DwarfTherapist.ini file directly in the folder. Hence, I tried several possibilities with the therapist.ini which I just had created in the DF folder, i.e. renaming/not renaming (to DwarfTherapist.ini) and putting it directly in the %APPDATA%/Roaming/Dwarf Therapist folder, but also creating the memory layout subfolders and copying therapist.ini thereto (renamed and not renamed, again). I also tried editing the version entry in the ini-files from 50.13 to 50.13-r1.1, but to no avail. DT always complains about the version being not supported. It also cites a checksum as found in the newly created files.

What did I do wrong? Or does this simply not work, and I have to wait for a new DT version?
Title: Re: Dwarf Therapist v42.1.5 | DF 50.12
Post by: Ziusudra on May 03, 2024, 02:24:55 pm
Maybe try DwarfTherapist-v42.1.2-win64\data\memory_layouts\windows? For where ever you extracted DT.
Title: Re: Dwarf Therapist v42.1.5 | DF 50.12
Post by: Clément on May 04, 2024, 11:09:40 am
In the "File" menu, click "Open data directory". It should create the memory_layouts directory and show it in the file explorer.
Title: Re: Dwarf Therapist v42.1.6 | DF 50.13
Post by: Clément on May 04, 2024, 11:28:16 am
New version released: 42.1.6 (https://github.com/Dwarf-Therapist/Dwarf-Therapist/releases/tag/v42.1.6)

Changelog: