Bay 12 Games Forum

Dwarf Fortress => DF Modding => Topic started by: DwarfEngineer on September 20, 2010, 04:16:56 pm

Title: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DwarfEngineer on September 20, 2010, 04:16:56 pm
(http://wiki.dwarftherapist.googlecode.com/hg/img/DT_0.5.0.PNG)


DwarfTherapist
Latest Version: 0.6.12 - windows (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12.zip) | linux (http://code.google.com/p/dwarftherapist/wiki/LinuxVersion) | osx (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b05.dmg)
Latest Supported Dwarf Fortress: 0.34.10 (through auto-update)
Released: February 18, 2012, Updated 5/23/2012
PROJECT PAGE & DOWNLOADS (http://code.google.com/p/dwarftherapist)
Now Accepting Tips! (http://www.dwarftherapist.com/tip.html)
Original Thread (http://www.bay12forums.com/smf/index.php?topic=39229.0)


For those of you who are unaware, chmod has retired from maintaining DwarfTherapist, and we will miss him!  However, he is still active in the community and is helping with some of the details of maintaining the project. 

For the time being, I will be acting as maintainer for DwarfTherapist.  This means that I will be doing new releases to support the newer versions of Dwarf Fortress.  I will also take a crack at some of the bugs / feature requests as I get time.  If you have questions, I will be available on IRC (as Hecaterus) in the #dwarftherapist channel on freenode, as well as on the Dedicated Forum (linked above.)

Thank you for your patience as I try to get acquainted with the project.  Hopefully releases will start coming sooner after Dwarf Fortress releases.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Dohon on September 20, 2010, 04:19:08 pm
Much thanks to you, DwarfEngineer, for taking up the task to keep this project updated. Much appreciated!
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Andir on September 20, 2010, 04:25:45 pm
Much thanks to you, DwarfEngineer, for taking up the task to keep this project updated. Much appreciated!
Agreed.  Just don't get burnt out.  Do it on your time.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Gearheart on September 20, 2010, 05:34:47 pm
You, sir, are a god among dwarves.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: chmod on September 20, 2010, 06:02:18 pm
Big round of applause for DwarfEngineer (Hecaterus) for taking this project on. May it live to see many more winters!

I merely hope I can keep an engraving of myself on some forgotten wall of DT.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Moonshine Fox on September 20, 2010, 06:49:12 pm
Praise Armok! Thanks a lot!
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Cheese on September 21, 2010, 12:46:30 pm
<3 you Dwarf Engineer.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Mishy on September 21, 2010, 03:23:11 pm
fucking YES. May your beard grow full, hero among dorfs.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: vhappylurker on September 21, 2010, 03:27:56 pm
High fives and bro fists to you! May Armok bless your beard!
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Cyntrox on September 21, 2010, 04:58:06 pm
Do you mind 3rd party patches & contributions?

How do you compile it from source? Unless I'm doing something teminally wrong there's no makefile or anything in the repository...
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Shades on September 22, 2010, 04:41:02 am
Do you mind 3rd party patches & contributions?

How do you compile it from source? Unless I'm doing something teminally wrong there's no makefile or anything in the repository...

It's the .pro file you want to look at.
http://code.google.com/p/dwarftherapist/source/browse/dwarftherapist.pro
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: James.Denholm on September 22, 2010, 05:05:05 am
New devs and practices and awesome, oh my!
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: derekiv on September 22, 2010, 06:21:11 am
Woot! Thanks dude!
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: vrga on September 22, 2010, 06:38:38 am
just dropping by to have this in my "check for new replies" thingy :p




btw, DT 0.5.7 has worked with 31.12 with the offsets i found for windows a while ago. xD
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: devek on September 22, 2010, 06:57:49 am
Ha.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Dr. Hieronymous Alloy on September 22, 2010, 10:15:45 am
just dropping by to have this in my "check for new replies" thingy :p




Me too :P

If this is the place for feature requests, let me request improved handling of dwarf attributes. I'd really like to be able to sort by most creative / most agile, for example.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: neo1096 on September 22, 2010, 10:22:51 am
Thanks for this, Dwarf Engineer!
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Xenos on September 22, 2010, 01:10:49 pm
:') its so beautiful...Dwarf Therapist and Dwarf Foreman are probably my two favorite side programs.  Followed pretty closely by dfhack (when I want to build a massive fall w/o breaching caverns mainly.)

Now I wont have to sift through replies to find the new version...(assuming Dwarf engineer plans on editing the OP with the current version)
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Peewee on September 22, 2010, 02:48:54 pm
Thanks a bunch for maintaining this, DwarfEngineer.

(Don't mind me if you've already added this... I haven't had the chance to use the newest version)
Feature requests:
-Make managing 'custom professions' easier.
--Saving/loading of custom profession sets
--Manage labors the same way as dwarves, (instead of having a list of check-marks, use the main layout)
--If you update the custom profession labors, reflect the changes in dwarves with that labor.

-Make all values editable (If you check the "enable cheats" box in settings) ?
I remember this was discussed in the old thread, but hey, with a new maintainer, anything is possible.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Aklyon on September 22, 2010, 03:09:00 pm
posting to keep track of new thread.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: DwarfEngineer on September 22, 2010, 09:51:12 pm
Quote
Do you mind 3rd party patches & contributions?

How do you compile it from source? Unless I'm doing something teminally wrong there's no makefile or anything in the repository...
I would welcome any patches / contributions.  Especially if they are around open issues.  Please let me know if you decide to work on something so we don't end up duplicating effort!
I've created a wiki page (http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist) for instructions on how to build Dwarf Therapist.


Quote
If this is the place for feature requests, let me request improved handling of dwarf attributes. I'd really like to be able to sort by most creative / most agile, for example.
I've updated Issue #266 (http://code.google.com/p/dwarftherapist/issues/detail?id=266) to include your request. 

Quote
Feature requests:
-Make managing 'custom professions' easier.
--Saving/loading of custom profession sets
--Manage labors the same way as dwarves, (instead of having a list of check-marks, use the main layout)
--If you update the custom profession labors, reflect the changes in dwarves with that labor.
Opened issue #288 (http://code.google.com/p/dwarftherapist/issues/detail?id=288) to track this request.

Quote
-Make all values editable (If you check the "enable cheats" box in settings) ?
Do you have more details on this request?  I haven't played with this feature yet.  If you have a link to the previous discussion that would be good.


I probably won't get to these features right away as I will be travelling during the first part of October.  But hopefully I can start getting a hang of the UI code before too long.

Thanks for your support everyone!
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: The Architect on September 22, 2010, 11:07:39 pm
Posting to track. Unfortunately, I have no programming skills and little time to dedicate to helping. However, I could do wiki page revisions or similar logistics management if the need arises.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: snooptodd on September 22, 2010, 11:54:43 pm
Posting to follow.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: mLegion on September 23, 2010, 02:42:31 am
posting to follow
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: forsaken1111 on September 23, 2010, 03:12:50 am
Just replying to watch this thread. Thanks for the good work!
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: JanusTwoface on September 23, 2010, 09:31:10 am
To anyone just posting so that they get updates on the thread:
(http://jverkamp.com/temp/ClickHere.png)

If you have something to add or just to say good work, by all means go for it.  But posting just to follow up the thread makes for a gigantic unweildy thread.

(/pet peeve)

EDIT: If you don't want it to spam your email, go into your Profile Settings > Notifications and uncheck that box.



More on topic:

Thanks for taking this project up DwarfEngineer!  It would be a shame to lose such a tool.  It's really the best layed out iteration of the job managers in my opinion.

Do you perchance tend to hang out on IRC?  I have a few questions about the project that I want to swing by someone that actually knows the code base well enough to get it to compile (still fighting with that myself).
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Shades on September 23, 2010, 10:05:01 am
Following notified threads is nowhere near as friendly as ones you've posted on though. I tend to use the show new replies to your posts which I find much easier than email spam or viewing from the notified thread thing. (although an option to stop following ones I've posted on would be nice)
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: DwarfEngineer on September 23, 2010, 10:13:56 am
Do you perchance tend to hang out on IRC?  I have a few questions about the project that I want to swing by someone that actually knows the code base well enough to get it to compile (still fighting with that myself).

Yes, I'm on #dwarftherapist on freenode quite a bit as Hecaterus.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Randomtask on September 23, 2010, 12:04:30 pm
A reiteration, but it cannot be said enough: thanks for taking up the task, DwarfEngineer. Your contribution to the community is invaluable. Good luck with it.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: forsaken1111 on September 23, 2010, 12:48:05 pm
To anyone just posting so that they get updates on the thread:
(http://jverkamp.com/temp/ClickHere.png)

If you have something to add or just to say good work, by all means go for it.  But posting just to follow up the thread makes for a gigantic unweildy thread.

(/pet peeve)
Yeah I don't want an e-mail every time someone posts here, but I do want it to show up in my "new replies" window.

So deal with it, your pet peeves aren't our problem.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: devek on September 23, 2010, 12:51:38 pm
By saying something you just generate more noise lol.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Aklyon on September 23, 2010, 02:17:22 pm
Notify is a good idea on small forums.
Not so much here.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Woof on September 23, 2010, 03:23:51 pm
it doesn't email you every time someone replies, it emails you once when someone replies after you check it, and doesn't email you again until you check the thread again...
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Jon-Ace on September 23, 2010, 04:18:56 pm
Back on topic, I assume .14 support will be fairly easy. Just need to get the vectors, right?
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: SilverLight on September 23, 2010, 04:21:49 pm
Back on topic, I assume .14 support will be fairly easy. Just need to get the vectors, right?

yeah I thought so to so I gave it a whirl.  Posted my results on http://code.google.com/p/dwarftherapist/wiki/MappingNewVersions (http://code.google.com/p/dwarftherapist/wiki/MappingNewVersions).  Can't figure out the creature vector.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Cyntrox on September 23, 2010, 04:48:50 pm
Quote
Do you mind 3rd party patches & contributions?

How do you compile it from source? Unless I'm doing something teminally wrong there's no makefile or anything in the repository...
I would welcome any patches / contributions.  Especially if they are around open issues.  Please let me know if you decide to work on something so we don't end up duplicating effort!
I've created a wiki page (http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist) for instructions on how to build Dwarf Therapist.
Awesome, maybe I'll send over something once I get the layout figured out =P
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: DwarfEngineer on September 23, 2010, 06:36:42 pm
The creature vector was my bad.  I didn't update the scanning code to use the new string offsets.
I'll be posting a new version in a few minutes.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: DwarfEngineer on September 23, 2010, 06:52:03 pm
New version posted.

Barring any more datastructure or compiler changes, DT 0.6.2 should be able to find creature vectors again.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: SilverLight on September 23, 2010, 08:25:17 pm
awesome dude, downloading now about to try it out with full confidence.  I was hoping something would be up before I wanted to play again, and it is!!
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Jon-Ace on September 23, 2010, 09:41:28 pm
Way to go, DE!
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: twalberg on September 24, 2010, 09:58:02 am
So is the Linux port officially dead, or is there some chance of getting a Linux build posted sometime soon? Still using 0.5.5, which someone posted a build of. I haven't had much luck yet compiling it on my own due to QT version issues, but maybe I'll have to just dig into that again one of these days...
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: UberNube on September 24, 2010, 11:24:30 am
I can compile it fine using Ubuntu as follows:

Spoiler (click to show/hide)

If you have any problems ask here and I may be around to solve them... now to work on getting some linux offsets for DF 31.14

EDIT: I have found some of the offsets, but not all of them:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Morwaul on September 24, 2010, 12:04:37 pm
Not sure if this is the best place to post this but here is a request.

I would like to be able to have some form of custom grouping.  I can see several ways that this could work but any of them would do.  The main reason I want the feature is so that I can put all of my designated crafters, miners, farmers, smiths, military etc into a group or groups so that I can easily view all the extra dwarves to easily assign them labors. 

The best way to do this would be to be able to creat custom groups sort of like the custom professions.  Select a bunch of dwarves and right click and select assign to group.  It would also be nice to be able to create groups within groups or nested groups so that we could select a Group in the Group by drop down and it display the dwarves in the 2 or more groups we assigned them to for that Group.

Another way to do it might be to have a couple extra columns that we could check that would allow sorting by clicking on the column header.  It would have to sort by checked or not checked though rather than some numerical value like the skill columns.

Anyway, it's just an idea and someone may have already requested it.  It sure would make my life easier though and I would think lots of people would like this feature.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Urist Imiknorris on September 24, 2010, 02:02:41 pm
Dwarven therapy! Praise the Engineer!
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: FleshForge on September 24, 2010, 02:07:34 pm
It still doesn't display the "Military Tactics" skill correctly - I don't know if DT's skill names are hard coded or they're resolved from strings embedded in the executable, if the former then I suppose you need to add it :)

Otherwise works perfectly though!
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Punished on September 24, 2010, 06:23:38 pm
Is there going to be a mac compatible Therapist for 0.31.14? The latest build is for .12 and I was hoping I could use it with the current version of DF.

I guess thats what I get for buying a Mac laptop and a Windows desktop... I want to play DF everywhere but my desk in my room haha, I'd rather play on the couch.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: DwarfEngineer on September 24, 2010, 08:09:02 pm
I do plan on installing Linux on my system again soon, but it's going to be a while before I can get the Macbook pro that I'd like to :)
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: bremarv on September 25, 2010, 04:19:06 am
I can compile it fine using Ubuntu as follows:

Spoiler (click to show/hide)

Thanks, I got it to compile, but was missing the etc folder, so it works fine now.
edit: being a noob and deleting quote end tag
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Alekiel on September 25, 2010, 01:30:27 pm
I can compile it fine using Ubuntu as follows:

Spoiler (click to show/hide)

If you have any problems ask here and I may be around to solve them... now to work on getting some linux offsets for DF 31.14

EDIT: I have found some of the offsets, but not all of them:
Spoiler (click to show/hide)

Any update on those linux offset?
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Azrathud on September 25, 2010, 07:33:24 pm
I can compile it fine using Ubuntu as follows:

Spoiler (click to show/hide)

If you have any problems ask here and I may be around to solve them... now to work on getting some linux offsets for DF 31.14

EDIT: I have found some of the offsets, but not all of them:
Spoiler (click to show/hide)

Any update on those linux offset?

I second this.

What program do you use to find the offsets?
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: UberNube on September 25, 2010, 08:02:26 pm
I can compile it fine using Ubuntu as follows:

Spoiler (click to show/hide)

If you have any problems ask here and I may be around to solve them... now to work on getting some linux offsets for DF 31.14

EDIT: I have found some of the offsets, but not all of them:
Spoiler (click to show/hide)

Any update on those linux offset?

I second this.

What program do you use to find the offsets?

Sorry, I don't know enough to get any more of the offsets. I was just using the guide here: Dwarf Therapist - Mapping New Versions (http://code.google.com/p/dwarftherapist/wiki/MappingNewVersions). Unfortunately it seems to not always work, so I can't find the creatures offset. I probably should have made that clearer in an edit to my post.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Alekiel on September 26, 2010, 03:26:54 pm
Damn. I was hoping someone else had more luck. I am not getting anything, either.

Is there any other way to get the offsets? Playing the game without Therapist can be so annoying.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: xczxc on September 26, 2010, 04:51:34 pm
I failed at finding the offsets too, so I'm playing the windows version (with DT) on wine.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: deej on September 26, 2010, 07:55:31 pm
I just got a legendary blowgunner dwarf in a migration wave, but the column for bowman and blowgunner are reversed.  Can't wait for the goblins to invade so I can get some darts!
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Reese on September 26, 2010, 11:01:29 pm
I just got a legendary blowgunner dwarf in a migration wave, but the column for bowman and blowgunner are reversed.  Can't wait for the goblins to invade so I can get some darts!

I've had a problem like that... make sure your military tab isn't a holdover from a previous version of DT (a new version of DT I had imported an old version's military tab and had all the professions wrong under custom column names)
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Fastler on September 28, 2010, 10:38:20 am
Harrumph, I really want the Linux version to work. My netbook runs the game about 3 times faster under ubuntu then windows. I really don't want to have to go into windows just for Therapist.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Andir on September 28, 2010, 10:57:16 am
Harrumph
Is it just me or does anyone else have a hard time imagining someone actually saying/sounding that? :p
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Ratbert_CP on September 28, 2010, 10:58:45 am
Harrumph
Is it just me or does anyone else have a hard time imagining someone actually saying/sounding that? :p
It's just you.  I make that noise all the time.  Of course, I'm an old fogey, so harumphing is just how I roll...
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Urist Imiknorris on September 28, 2010, 11:34:35 am
Blazing Saddles ruined the harumph for me.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: LoSboccacc on September 28, 2010, 11:44:19 am
Harrumph, I really want the Linux version to work. My netbook runs the game about 3 times faster under ubuntu then windows. I really don't want to have to go into windows just for Therapist.

go figure, I play under mac using wine for therapist
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Peewee on September 28, 2010, 11:56:26 am
Quote
-Make all values editable (If you check the "enable cheats" box in settings) ?
Do you have more details on this request?  I haven't played with this feature yet.  If you have a link to the previous discussion that would be good.

I meant all values as in skills, abilities, etc.
One can currently observe how much xp a dwarf has in a given skill, but it would be nice to be able to change it too.

Did you ever use companion for the older versions? That's the sort of functionality I would like.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: JanusTwoface on September 28, 2010, 12:23:09 pm
Quote
-Make all values editable (If you check the "enable cheats" box in settings) ?
Do you have more details on this request?  I haven't played with this feature yet.  If you have a link to the previous discussion that would be good.

I meant all values as in skills, abilities, etc.
One can currently observe how much xp a dwarf has in a given skill, but it would be nice to be able to change it too.

Did you ever use companion for the older versions? That's the sort of functionality I would like.

Have you tried Runesmith (http://www.bay12forums.com/smf/index.php?topic=59056.0)?  It's billed as "A DC like tool" and might be just what you were looking for. 

Granted, it would be nice not to run so many seperate programs for different things, but it does make maintenance and testing easier (IMO) if each program only tackles a part of the problem.
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: chmod on September 28, 2010, 12:23:34 pm
Quote
-Make all values editable (If you check the "enable cheats" box in settings) ?
Do you have more details on this request?  I haven't played with this feature yet.  If you have a link to the previous discussion that would be good.

I meant all values as in skills, abilities, etc.
One can currently observe how much xp a dwarf has in a given skill, but it would be nice to be able to change it too.

Did you ever use companion for the older versions? That's the sort of functionality I would like.
http://code.google.com/p/dwarftherapist/wiki/VisionStatement
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: bremarv on September 28, 2010, 03:30:35 pm
Have anyone had more luck with the 31.14 for linux?

I have tried using some of the 31.14 numbers from dfhack, but it don't seem to work.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: squeakyReaper on September 28, 2010, 05:23:00 pm
This tool is a complete life saver.  I have no idea how I'd run my fortress without it- thanks!  Helps a lot especially since I realized you can right click to enable/disable all jobs of that type... until just an hour ago, I had been clicking off everything.  xD
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: xdarkcodex on September 28, 2010, 07:32:02 pm
Helps a lot especially since I realized you can right click to enable/disable all jobs of that type... until just an hour ago, I had been clicking off everything.  xD
Didn't know that, So I've been doing this wrong all this time?
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: FuzzyDoom on September 28, 2010, 07:53:26 pm
Posting to follow...

And to say thanks to the new maintainer. ♥
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Punished on September 28, 2010, 08:14:15 pm
Harrumph, I really want the Linux version to work. My netbook runs the game about 3 times faster under ubuntu then windows. I really don't want to have to go into windows just for Therapist.

go figure, I play under mac using wine for therapist

I've tried using wine for osx, but its REALLY slow and laggy :(
Title: Re: Dwarf Therapist (LATEST 0.6.1 9/20/10 see first post)
Post by: Peewee on September 28, 2010, 10:58:38 pm
http://code.google.com/p/dwarftherapist/wiki/VisionStatement

aww...
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Socializator on September 29, 2010, 04:23:24 am
Just posting to say

THANK YOU

to the new maintainer(s) (chmod already received one  :P)

Seriously, you make dwarf fortress seriously playable.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Fastler on September 29, 2010, 08:45:17 am
Harrumph, I really want the Linux version to work. My netbook runs the game about 3 times faster under ubuntu then windows. I really don't want to have to go into windows just for Therapist.

go figure, I play under mac using wine for therapist

I've tried using wine for osx, but its REALLY slow and laggy :(

The problem with using WINE is that you also need to be running DF in WINE for it to work, and with the diminished performance, you may as well just be in windows in the first place! But I am already crippled by my lack of Therapist.

Oh yes, and it really is a great tool to all those devs/ maintainers out there.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Romeofalling on September 30, 2010, 02:24:32 pm
OMG, this program is amazing! Up until now, I'd get frustrated and quit playing whenever my fortress got up to 30 dwarves, as it was too much to manage! Now I can't wait to play past that point in my new fortress!

One feature request and one question about the program:

Feature request: Cross-window display of squad assignments somehow. Perhaps an icon next to the dwarf's name, indicating s/he is assigned to a squad, with a mouseover text showing which squad. Given the new military menu, it'd be very nice to be able to see that I have two carpenters assigned to different squads, so I can rotate their training schedule.

Question: Sometimes, one of the names in DT will be boldfaced. Why is this?

Again, thank you so much for the perfect tool (with the perfect scope)!
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: LoSboccacc on September 30, 2010, 02:43:40 pm
bold ones are active in a squad
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: James.Denholm on September 30, 2010, 07:14:38 pm
Ah, but that won't show which squad. Perhaps DT could arbitrarily designate a number to each squad, doesn't have to be user-configurable, and chuck that number in another column. Hence, Arbitrarily Selected Squad One members would have a "1" in a column next to their names (or elsewhere, depending on how the user places the column in question), Arbitrarily Selected Squad Two members a "2", and so on.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Hans Lemurson on October 01, 2010, 03:27:44 am
Feature Request: Assign dwarves to burrows.

This has probably been thought of before, but I just thought of it now myself.  It's probably fairly complicated to do, but I think it would be very much in-line with what DT is intended to do.  It would make burrows actually USABLE!!!
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Gentle Manne on October 02, 2010, 02:52:44 am
Cheers, Engineers.

This is my first time using Dwarf Therapist and my fort is already pretty big so I'm finding it kind of daunting. Why does it say I have 138 dwarfs when I have 134? Are 4 dwarfs pregnant?
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Morwaul on October 02, 2010, 10:23:06 am
Nevermind :)
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Silophant on October 02, 2010, 11:19:08 am
Cheers, Engineers.

This is my first time using Dwarf Therapist and my fort is already pretty big so I'm finding it kind of daunting. Why does it say I have 138 dwarfs when I have 134? Are 4 dwarfs pregnant?

I believe, in previous versions, at least, snatched children wouldn't disappear from DT, because they aren't marked as dead. No idea if this has been fixed or not.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: HammerHand on October 02, 2010, 12:33:03 pm
Watching this thread.

... Intently.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Gentle Manne on October 02, 2010, 08:34:57 pm
I believe, in previous versions, at least, snatched children wouldn't disappear from DT, because they aren't marked as dead. No idea if this has been fixed or not.

Yeah, that's probably what's happening.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: LupusNoctis on October 03, 2010, 08:46:48 am
Hey there folks!  New version of DF was posted early this morning, October 3rd 2010.

Working on getting the new addresses, here's what I have so far.  Seems like the creature_vector is the holdout again.
**EDIT**  Aha!  Used the creature_vector from 31.14, and managed to get dwarves read properly!  Praise Armok!
Code: [Select]
[info]
checksum                = 0x4ca869ea
version_name            = v0.31.15 (graphics)
complete                = true

[addresses]
translation_vector      = 0x0169b124
language_vector         = 0x0169b104
creature_vector         = 0x01656fe0
dwarf_race_index        = 0x01483874

Everyone give this a shot, and let us all know how it goes!
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Swadow on October 03, 2010, 09:55:59 am
DwarfEngineer is credit to team!

Thank you so much for picking Therapist up. I wouldnt be able to learn assigning labors manually again.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: DwarfEngineer on October 03, 2010, 11:32:59 am
Hey there folks!  New version of DF was posted early this morning, October 3rd 2010.

Working on getting the new addresses, here's what I have so far.  Seems like the creature_vector is the holdout again.
**EDIT**  Aha!  Used the creature_vector from 31.14, and managed to get dwarves read properly!  Praise Armok!
Code: [Select]
[info]
checksum                = 0x4ca869ea
version_name            = v0.31.15 (graphics)
complete                = true

[addresses]
translation_vector      = 0x0169b124
language_vector         = 0x0169b104
creature_vector         = 0x01656fe0
dwarf_race_index        = 0x01483874

Everyone give this a shot, and let us all know how it goes!

New version posted.  Looks like the only thing that changed was the checksums.
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: Romeofalling on October 03, 2010, 04:53:57 pm
Hey there folks!  New version of DF was posted early this morning, October 3rd 2010.

Working on getting the new addresses, here's what I have so far.  Seems like the creature_vector is the holdout again.
**EDIT**  Aha!  Used the creature_vector from 31.14, and managed to get dwarves read properly!  Praise Armok!
Code: [Select]
[info]
...

Everyone give this a shot, and let us all know how it goes!

New version posted.  Looks like the only thing that changed was the checksums.

Everyone do what with the wherenow? And where is this new version?
Title: Re: Dwarf Therapist (LATEST 0.6.2 9/23/10 see first post)
Post by: DwarfEngineer on October 03, 2010, 05:18:15 pm
Everyone do what with the wherenow? And where is this new version?

Check the first post (http://www.bay12forums.com/smf/index.php?topic=66525.0) / downloads page for 0.6.3 which supports DF 35.15.

Also, a new Linux version of Dwarf Therapist 0.6.3 has been released (http://code.google.com/p/dwarftherapist/wiki/LinuxVersion) (for alpha testing)

If you just need Linux offsets, check here (http://pastebin.com/cebMRSRj).
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: Mover#005 on October 03, 2010, 06:33:42 pm
I keep getting told that the file libQtScript.so.4 is missing (Linux version) it's also not in the archive, any hints which version I need?
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: DwarfEngineer on October 03, 2010, 06:45:35 pm
I keep getting told that the file libQtScript.so.4 is missing (Linux version) it's also not in the archive, any hints which version I need?

That must be a new required library since the last release (quite some time ago.)  Can you open a command window, cd to the dwarf therapist/bin directory, type "ldd DwarfTherapist" and post the results?  I can make sure there are no other missing libraries and post a new archive.
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: Mover#005 on October 03, 2010, 06:51:54 pm
output of ldd:

Code: [Select]
linux-gate.so.1 =>  (0xf7762000)
libQtScript.so.4 => /usr/lib32/qt4/libQtScript.so.4 (0xf74c4000)
libQtGui.so.4 => /usr/lib32/qt4/libQtGui.so.4 (0xf6ab2000)
libQtNetwork.so.4 => /usr/lib32/qt4/libQtNetwork.so.4 (0xf6990000)
libQtCore.so.4 => /usr/lib32/qt4/libQtCore.so.4 (0xf6720000)
libpthread.so.0 => /lib32/libpthread.so.0 (0xf6707000)
libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.4/32/libstdc++.so.6 (0xf6610000)
libm.so.6 => /lib32/libm.so.6 (0xf65ea000)
libgcc_s.so.1 => /lib32/libgcc_s.so.1 (0xf65cd000)
libc.so.6 => /lib32/libc.so.6 (0xf6472000)
libglib-2.0.so.0 => /usr/lib32/libglib-2.0.so.0 (0xf638e000)
libpng14.so.14 => /usr/lib32/libpng14.so.14 (0xf6369000)
libz.so.1 => /lib32/libz.so.1 (0xf6356000)
libfreetype.so.6 => /usr/lib32/libfreetype.so.6 (0xf62d0000)
libEGL.so.1 => /usr/lib32/libEGL.so.1 (0xf62c1000)
libSM.so.6 => /usr/lib32/libSM.so.6 (0xf62b8000)
libICE.so.6 => /usr/lib32/libICE.so.6 (0xf629f000)
libXrender.so.1 => /usr/lib32/libXrender.so.1 (0xf6295000)
libXrandr.so.2 => /usr/lib32/libXrandr.so.2 (0xf628d000)
libXinerama.so.1 => /usr/lib32/libXinerama.so.1 (0xf6288000)
libfontconfig.so.1 => /usr/lib32/libfontconfig.so.1 (0xf6259000)
libXext.so.6 => /usr/lib32/libXext.so.6 (0xf624a000)
libX11.so.6 => /usr/lib32/libX11.so.6 (0xf612e000)
libgthread-2.0.so.0 => /usr/lib32/libgthread-2.0.so.0 (0xf6129000)
librt.so.1 => /lib32/librt.so.1 (0xf6120000)
libdl.so.2 => /lib32/libdl.so.2 (0xf611b000)
/lib/ld-linux.so.2 (0xf7746000)
libuuid.so.1 => /lib32/libuuid.so.1 (0xf6116000)
libxcb.so.1 => /usr/lib32/libxcb.so.1 (0xf60fc000)
libXau.so.6 => /usr/lib32/libXau.so.6 (0xf60f8000)
libXdmcp.so.6 => /usr/lib32/libXdmcp.so.6 (0xf60f2000)
libexpat.so.1 => /usr/lib32/libexpat.so.1 (0xf60c9000)
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: DwarfEngineer on October 03, 2010, 07:06:29 pm
output of ldd:

Code: [Select]
snip

Try this version (http://dwarftherapist.googlecode.com/files/DwarfTherapist_LINUX_ALPHA_R444.5.tgz) please.
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: Mover#005 on October 03, 2010, 07:16:46 pm
doesn't work sadly, "LD_LIBRARY_PATH=. ./bin/DwarfTherapist" gives me:

Code: [Select]
./bin/DwarfTherapist: symbol lookup error: ./bin/DwarfTherapist: undefined symbol: _ZN9QHashData14detach_helper2EPFvPNS_4NodeEPvEPFvS1_Eii
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: xrogaan on October 03, 2010, 07:28:22 pm
I successfully did a build of DT on linux. It launch and works well.
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: Fastler on October 03, 2010, 11:22:25 pm
doesn't work sadly, "LD_LIBRARY_PATH=. ./bin/DwarfTherapist" gives me:

Code: [Select]
./bin/DwarfTherapist: symbol lookup error: ./bin/DwarfTherapist: undefined symbol: _ZN9QHashData14detach_helper2EPFvPNS_4NodeEPvEPFvS1_Eii

I get the same error message when I try to run dt (The linux alpha that is). Down to the letter I think.
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: peregarrett on October 04, 2010, 03:47:06 am
Wow, you really kick ass! Just 1-day lag between DF and Therapist new versions  :o
Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: DwarfEngineer on October 04, 2010, 08:16:00 am
I'm working on installing VMWare server so I can try DT on other linux OSes.
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: Andir on October 04, 2010, 08:49:24 am
I'm working on installing VMWare server so I can try DT on other linux OSes.
VirtualBox may be easier... Well, I think it is but YMMV.
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: schussel on October 04, 2010, 10:00:08 am
great stuff .. annoying question .. anyone did figure out the new checksum for the .16 releae yet? im kinda too dumb for that *shame*
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: Keome on October 04, 2010, 10:04:20 am
So far I have this, but it's not working.

[info]
checksum                = 0x4ca9d544
version_name            = v0.31.16 (graphics)
complete                = false

[addresses]
translation_vector      = 0x0169c114
language_vector         = 0x0169c0f4
creature_vector         = 0x01658030
dwarf_race_index        = 0x01484814
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: Keome on October 04, 2010, 10:08:59 am
SUCCESS!

[info]
checksum                = 0x4ca9d544
version_name            = v0.31.16 (graphics)
complete                = true

[addresses]
translation_vector      = 0x0169c174
language_vector         = 0x0169c154
creature_vector         = 0x01658030
dwarf_race_index        = 0x01484874
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: schussel on October 04, 2010, 10:17:13 am
sadly not working for me here .. strange

edit: i mark myself as idiot .. one should start the right file after editing :) cheers bro and muchos dankos :)
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: DwarfEngineer on October 04, 2010, 10:20:18 am
Working on a new release, should have it before too long unless something major changed.
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: NKDietrich on October 04, 2010, 10:20:54 am
Working on a new release, should have it before too long unless something major changed.

Awesome :)
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: Stopple on October 04, 2010, 10:28:10 am
After just a single fortress played with therapist, I can no longer bring myself to play new releases without it.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: DwarfEngineer on October 04, 2010, 10:56:57 am
Dwarf Therapist 0.6.4 has been released (support for 31.16 added)

Windows (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.4.zip)
Linux (http://dwarftherapist.googlecode.com/files/DwarfTherapist_LINUX_ALPHA_R445.tgz)

If you just want the new memory layouts, you can get them for windows and linux here (http://dwarftherapist.googlecode.com/files/memory_layouts_31.16.zip).

Edit: Added links for convenience.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: VerdantSF on October 04, 2010, 08:55:38 pm
Thanks!!!
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: jfsh on October 04, 2010, 09:16:59 pm
Dwarf Therapist 0.6.4 has been released (support for 31.16 added)

Amazingly fast, thank you.

Random request: Can you put the version of DF supported in either the thread title or the first post?  Would make it simpler to see if whatever version of DF is supported. :)
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: DwarfEngineer on October 04, 2010, 10:06:15 pm
Random request: Can you put the version of DF supported in either the thread title or the first post?  Would make it simpler to see if whatever version of DF is supported. :)
Will do.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: gralcio on October 06, 2010, 06:45:18 am
Version 0.6.4 shows "pikeman" skill for dwarves with lasher skill.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Quietust on October 06, 2010, 01:06:48 pm
Version 0.6.4 shows "pikeman" skill for dwarves with lasher skill.

Sounds like this (http://code.google.com/p/dwarftherapist/issues/detail?id=281) bug; presumably, it was fixed for the next 0.5.x release but never made it into 0.6.x.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: DwarfEngineer on October 06, 2010, 01:17:57 pm
I do believe that it is.  If you could post a save with a lasher dwarf, that would make my life easier :)
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Burning_Iceman on October 06, 2010, 01:38:14 pm
If it helps you any, it shows the correct skills in the tooltip but marks the wrong columns. Definately for Lasher, Bowman and Pikeman. Dunno about Bowyer or Thrower.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: chmod on October 06, 2010, 02:09:47 pm
If it helps you any, it shows the correct skills in the tooltip but marks the wrong columns. Definately for Lasher, Bowman and Pikeman. Dunno about Bowyer or Thrower.
Uh oh. That means the gridview that ships is broken. It won't be enough to just fix the game data ini file.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Quietust on October 06, 2010, 02:26:57 pm
If it helps you any, it shows the correct skills in the tooltip but marks the wrong columns. Definately for Lasher, Bowman and Pikeman. Dunno about Bowyer or Thrower.
Uh oh. That means the gridview that ships is broken. It won't be enough to just fix the game data ini file.

Yes, I even noted as much in the bug report - "The columns in the "Military" view for Pikeman, Lasher, Bowman, and Blowgunner are likewise listing experience values for the wrong skills, and there is no "Thrower" column."
I ended up making a custom view for Military to fix the problem.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Masau on October 07, 2010, 09:02:49 pm
Few things. First, I'm new to the game (and obviously therapist), and I'd like to say thanks to DwarfEngineer and chmod for maintaining this project (past and present). It's incredibly helpful.

Second, I saw on the first page that the picture included some attributes (str, agil, toughness) under "happiness" in the dwarf details section, but they don't appear in mine, and I can't seem to find a setting to enable them. Is there something I have to do before I can view them with therapist?
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Aklyon on October 07, 2010, 09:05:52 pm
those three are the old attribute trio from 40D. .31 has a bunch more, they aren't mapped fully yet, I think.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Masau on October 07, 2010, 09:06:35 pm
Alright, thank you :)
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: guale on October 08, 2010, 01:27:23 am
Just wanted to start off with props to chmod and DwarfEngineer. I really love this utility and I find the game nearly unplayable without it since I discovered it. Just one question and sorry if it has been asked before. In the future will it be able to properly show castes? Or at least be able to properly show the gender of races with multiple castes? I play with Deon's Genesis and it just seems to pick a random gender. Caste would be nice but gender is important since I only allow males in my military and it would be nice to tell who is what at a glance.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: DwarfEngineer on October 08, 2010, 05:58:32 pm
Just a heads up, I'll be on vacation until Oct 18th.  Hopefully Toady doesn't switch to the .NET framework or something while I'm gone :)
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Alekiel on October 10, 2010, 04:41:03 pm
I'm having some weird annoying behavior with Therapist. It seems that whenever I use it, I get something corrupted and the game crashes after a while. If I save, it will crash during the saving process, so the save also gets corrupted. I'm trying to find out what exactly causes the crash right now. I think it has something to do with editing the "crafts" section, but I might be wrong.

I'll keep looking into it and report. Running on Linux 31.16, Therapist 0.6.4.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: FuzzyDoom on October 10, 2010, 06:04:05 pm
I'm having some weird annoying behavior with Therapist. It seems that whenever I use it, I get something corrupted and the game crashes after a while. If I save, it will crash during the saving process, so the save also gets corrupted. I'm trying to find out what exactly causes the crash right now. I think it has something to do with editing the "crafts" section, but I might be wrong.

I'll keep looking into it and report. Running on Linux 31.16, Therapist 0.6.4.

The save one is a known bug. Try it without Therapist and see what happens.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: adouglas on October 10, 2010, 06:12:24 pm
Minor Issue.  When exporting custom professions, the default file extension is .dtp but when importing them it is .dt
Title: Dwarf Therapist Linux won't attach after upgrade to Ubuntu 10.10
Post by: Bersken on October 10, 2010, 10:09:31 pm
The copy of DT I compiled myself works great for me under Linux kernel version 2.6.32-25 (generic, 32-bit, the copy in the Dwarf Therapist ALPHA_R445 package gives me a symbol lookup error when I start it up, but that's probably a different problem). Linux 2.6.35-22, on the other hand, won't allow DT to attach to DF. (I can re-run it once I reboot back into the newer kernel and post the log file.) I'm guessing it's probably a security feature of the newer kernel.

Anybody know how I get DF and DT talking to each other without having to use the old kernel?
Title: Re: Dwarf Therapist Linux won't attach after upgrade to Ubuntu 10.10
Post by: peterix on October 10, 2010, 10:33:09 pm
The copy of DT I compiled myself works great for me under Linux kernel version 2.6.32-25 (generic, 32-bit, the copy in the Dwarf Therapist ALPHA_R445 package gives me a symbol lookup error when I start it up, but that's probably a different problem). Linux 2.6.35-22, on the other hand, won't allow DT to attach to DF. (I can re-run it once I reboot back into the newer kernel and post the log file.) I'm guessing it's probably a security feature of the newer kernel.

Anybody know how I get DF and DT talking to each other without having to use the old kernel?
Code: [Select]
sudo sysctl -w kernel.randomize_va_space=0
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Alekiel on October 11, 2010, 12:35:17 am
The save one is a known bug. Try it without Therapist and see what happens.

You mean not starting Therapist at all? Cause, yeah, if I don't use it, it doesn't crash. But if I use it, close it and save, it still crashes.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Bersken on October 11, 2010, 12:47:18 am
Code: [Select]
sudo sysctl -w kernel.randomize_va_space=0

Durn... I thought I might have an answer already, but that didn't seem to work.

When I start DT (even after using the above command), or click the connect button from within DT, the line "ptrace attach: Operation not permitted" is printed to the terminal from which I start DT.

Here's the contents of the log file:

Spoiler (click to show/hide)

Does kind of look like that should've worked.

Like I said, it works if I boot to the 2.6.32 kernel, but I like having the hardware sensor compatibility of the new kernel.

So... is no one else having this issue?
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: peterix on October 11, 2010, 08:16:40 am
Code: [Select]
sudo sysctl -w kernel.randomize_va_space=0

Durn... I thought I might have an answer already, but that didn't seem to work.

When I start DT (even after using the above command), or click the connect button from within DT, the line "ptrace attach: Operation not permitted" is printed to the terminal from which I start DT.

Here's the contents of the log file:

Spoiler (click to show/hide)

Does kind of look like that should've worked.

Like I said, it works if I boot to the 2.6.32 kernel, but I like having the hardware sensor compatibility of the new kernel.

So... is no one else having this issue?
I'll assume you use Ubuntu 10.10 and their fail-patched kernels (from my point of view anyway).
Read this:
https://wiki.ubuntu.com/SecurityTeam/Roadmap/KernelHardening#ptrace%20Protection (https://wiki.ubuntu.com/SecurityTeam/Roadmap/KernelHardening#ptrace%20Protection)

Same applies to DFHack of course, because the methods used are the same.

What a steaming pile of fail. Why?
Spoiler (click to show/hide)
 
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Delduvat on October 12, 2010, 12:59:03 am
There`s a wrong offset in v0.31.16_graphics.ini:
Code: [Select]
sex                     = 0x00F8
should be
Code: [Select]
sex                     = 0x00FA
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Bersken on October 12, 2010, 01:21:03 am
I'll assume you use Ubuntu 10.10 and their fail-patched kernels (from my point of view anyway).
Read this:
https://wiki.ubuntu.com/SecurityTeam/Roadmap/KernelHardening#ptrace%20Protection (https://wiki.ubuntu.com/SecurityTeam/Roadmap/KernelHardening#ptrace%20Protection)

Same applies to DFHack of course, because the methods used are the same.

Right on the nose. (I mentioned having just upgraded to Ubu 10.10 in the subject of my first post on the subject, but then a while after posting the second, I realized... "I never read the subject on individual posts; why would anyone else?") Typing in "sudo sysctl -w kernel.yama.ptrace_scope=0" before starting Dwarf Therapist allows me attach DT to Dwarf Fortress (at the cost of leaving my running processes a bit more vulnerable, I guess).

(Hmmm... Maybe I ought to see how well DF and DT run on VirtualBox VM... Probably some posts on it somewhere in these forums.)
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: Shoku on October 16, 2010, 05:09:29 pm
Request: Add military sorting by squad.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: SalmonGod on October 16, 2010, 08:12:01 pm
I just assign squads as a custom profession and it works out pretty well for me
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: GJScarritt on October 18, 2010, 01:25:48 am
First off, thank you for a wonderful program.  It simplifies so much when it comes to handing my dwarfs.

I'm not sure if you like hearing requests/suggestions, if not, please ignore completely. 

Would it be possible to also have a sorting of dwarfs by age?  Not really sure how practical or how much demand there is, but there are times when I'd love to know how many babies/kids I have (and how old they are).  I'm currently more into long-term games (also I'm still learning, so Invasions are currently off).  But as I learn more, I'll start delving into mega-projects (to learn the finer points of the higher-end things), so I'd be working within multi-generations.
Title: Re: Dwarf Therapist Linux won't attach after upgrade to Ubuntu 10.10
Post by: rmunn on October 21, 2010, 05:56:45 am
The copy of DT I compiled myself works great for me under Linux kernel version 2.6.32-25 (generic, 32-bit, the copy in the Dwarf Therapist ALPHA_R445 package gives me a symbol lookup error when I start it up, but that's probably a different problem). Linux 2.6.35-22, on the other hand, won't allow DT to attach to DF. (I can re-run it once I reboot back into the newer kernel and post the log file.) I'm guessing it's probably a security feature of the newer kernel.

Anybody know how I get DF and DT talking to each other without having to use the old kernel?

It sounds like the ptrace_scope security feature that people upgrading to Ubuntu 10.10 are running into. This thread (http://www.bay12forums.com/smf/index.php?topic=65326.0) has the details of how to turn it off. Summary:
Code: [Select]
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
That'll make it work until the next time you reboot. To make a permanent change, edit the /etc/sysctl.d/10-ptrace.conf file in super-user mode (see the post (http://www.bay12forums.com/smf/index.php?topic=65326.0) if you don't know how to do that) and, search for the ptrace_scope value, and change it from 1 to 0. Save, and now the change will persist across reboots.

If this doesn't solve your problem, then post the error message you're getting and hopefully someone will be able to figure it out... but I think this should do it for you.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: t-loria on October 23, 2010, 03:14:53 pm
Hmmm did dwarf-therapist drop xp compatibility or something :?

I got DF (3.16) and DT (6.4)on my laptop(i3 win7 64bit)and there working perfectly.
However if i copy that dir to my other pc (amd x3  xp 32bit) that doesnt work :(
It keeps telling me it doesnt understand this version.

Downloading a fresh install didnt help.   whats going on ?
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: bremarv on October 23, 2010, 06:06:41 pm
Do you get a popup showing the versions it does support? if so I would make sure you actually have the windows 31.16 memory layout. don't know how the folder structure is on windows but maybe the memory layout isnt in the folders you copied over.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: t-loria on October 24, 2010, 02:04:18 am
It does show me the versions its support, which includes the 31.16 im running.
As fas as i can tell neither DT or DF actually "install anything".  it just runs from wherever you copied it.
But also a brand new lazynewbpack  doesnt  work :(
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: ActnMoviHeroBoy on October 24, 2010, 12:38:32 pm
I read somewhere that it'd be relatively easy to port Therapist to Mac. Does anyone know if there are plans to make this happen? As soon as i get to about 30 dwarves at the moment my fortress is pretty much boned from lack of organization -_-
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: calrogman on October 26, 2010, 12:02:51 pm
Are there any plans for a package in the Debian repositories?
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: LoSboccacc on November 10, 2010, 06:36:52 am
does this version support the old 40d18? which is the more recent that support that df build?
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: SandehBear on November 10, 2010, 02:07:15 pm
Is it possible to group by two or more things at once? For instance, I really want to know who has the lowest overall levels in my newest migration wave so I can put them into the military. Grouping by lowest level would let me do it much more quickly.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 11, 2010, 07:21:23 pm
New version 0.6.5 available for download with 0.31.17 support for windows. 

Linux offsets are here for now (http://pastebin.com/sQDFMVeE).  Experimenting with creating a debian package.
Title: Re: Dwarf Therapist (LATEST 0.6.4 10/4/10 see first post)
Post by: DwarfEngineer on November 11, 2010, 07:23:13 pm
does this version support the old 40d18? which is the more recent that support that df build?

See the supported versions (http://code.google.com/p/dwarftherapist/wiki/SupportedGameVersions?ts=1289521331&updated=SupportedGameVersions) wiki page.  Should be 0.4.2.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 13, 2010, 02:26:33 am
Testers wanted for the Ubuntu package repository.  The linux SDL version 0.31.17 of Dwarf Fortress is supported with these packages for Ubuntu.
I will do an official wiki page when a few people let me know that these work for them.

Add the appropriate line to your sources.list. See the Ubuntu Help Page (https://help.ubuntu.com/community/Repositories/Ubuntu#Third-Party Software Tab) if you need help.
Ubuntu 10.04 (Lucid) - deb http://dwarftherapist.com/apt lucid universe
Ubuntu 10.10 (Maverick) - deb http://dwarftherapist.com/apt maverick universe

Note: Because of the updated kernel, DwarfTherpist will prompt you if it needs root permissions in order to attach to Dwarf Fortress.  If you are uncomfortable doing running DwarfTherapist as root, see the workaround above (http://www.bay12forums.com/smf/index.php?topic=66525.msg1658031#msg1658031).

Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Rebirthocool on November 13, 2010, 07:23:47 pm
I can confirm the 10.04 repository works with DF 0.31.17
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 13, 2010, 10:59:29 pm
If your dwarf therapist session is being haunted by ghosts (which is awesome) you can modify the invalid_flags_1 section of your memory layout file as follows:

Spoiler (click to show/hide)

The next version will include this fix.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: nordak on November 14, 2010, 11:59:40 pm
Since you all have the know how, any way to get a Military Therapist utility?  I'm looking for something that manages all of the aspects setting up squads.  From individual equipment layout to quick alert setup.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 15, 2010, 12:53:02 am
Since you all have the know how, any way to get a Military Therapist utility?  I'm looking for something that manages all of the aspects setting up squads.  From individual equipment layout to quick alert setup.

I would like to add at least a certain amount of military aspects to DT.  I've been working on reading squads tonight and have been able to find the squad vector, names, ids, and members.  So hopefully we'll at least be able to group by squad for the next release of DT.  Once I get a better handle on it, editing may become a possibility.  Though I think it will be limited to moving dwarves between squads (recruiting and unrecruiting) for quite a while.  The uniforms stuff seems fairly complex.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Viken on November 15, 2010, 02:36:57 am
The military aspect of DF is one of the most complex (and for me, the hardest) aspect to get into.  I can build gaint monuments, mine straight into Hell; I can even create a Dwarf Monument built of ice in the coldest northern reaches; but for the love of me I cannot set up even a simple military and choose their equipment and uniforms.  I cannot tell you have many games I've been killed on because I couldn't get a squard organized and put together to defend a single (OVER-FORTIFIED) entrance into my entire complex.

Traps help, but it cannot stop a mass of goblins (or elves, for that matter) from coming over the horizon to butcher me.  :'(  So I'd be VERY VERY VERY bloody happy to see Dwarf Therapist make strides toward being able to offer a simple UI solution to the complexities of the DF Military.  And I'm sure several of us would agree.  ;D  So here's my pre-plot THANK YOU!!!  8) 8) 8)
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Imxset21 on November 15, 2010, 03:12:55 am
I can confirm that the deb repositories work for Ubuntu 10.10 and DF 0.31.17

I luv you :3
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: SalmonGod on November 15, 2010, 03:25:15 am
I don't have trouble understanding the military interface, but it could sure as hell be made a lot less burdensome.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: MaXMC on November 15, 2010, 03:38:33 am
Ok, I know this is only in my mind, but it's been bugging me for a really long time now...  :-\

Every time I see the headline "Dwarf therapist" I read, "Dwarf The Rapist"... shouldn't the name be Dwarven therapist, that way it's grammatically wrong to say "dwarven the rapist"...
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: KingOfBudgies on November 15, 2010, 05:51:52 am
I just added the Lucid Dwarf Therapist repository to my source list, but nothing shows up when I refresh the Update Manager.  Has anyone else had this problem?
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Andir on November 15, 2010, 08:55:33 am
Ok, I know this is only in my mind, but it's been bugging me for a really long time now...  :-\

Every time I see the headline "Dwarf therapist" I read, "Dwarf The Rapist"... shouldn't the name be Dwarven therapist, that way it's grammatically wrong to say "dwarven the rapist"...
Why should the world cater to your psychosis?  ;D
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Deon on November 15, 2010, 09:00:15 am
I am quite content with the rapist for the name.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Quietust on November 15, 2010, 09:02:15 am
I've been running 0.6.5, and a few of the offsets are wrong - for example, dwarves are all listed as "No Job" because the job offset is off by a few bytes. I've fixed most of them in my own copy, but I don't have access to it at the moment (said copy is at home, and I'm at work) - I'll post the corrections later today.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: calrogman on November 15, 2010, 07:49:28 pm
Debian package doesn't build on Debian Sid:

Code: [Select]
cp COPYRIGHT /path/dwarftherapist/debian/dwarftherapist/usr/share/doc/dwarftherapist/copyright; cp README /path/dwarftherapist/debian/dwarftherapist/usr/share/doc/dwarftherapist/README.Debian
cp: cannot stat `COPYRIGHT': No such file or directory
cp: cannot stat `README': No such file or directory
make[1]: *** [install_doc] Error 1
make[1]: Leaving directory `/path/dwarftherapist'
make: *** [install] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2

Also worth noting that Dwarf Therapist doesn't need gksu on Debian Sid as Debian hasn't implemented ptrace hardening.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 15, 2010, 08:00:47 pm
Debian package doesn't build on Debian Sid:

Code: [Select]
cp COPYRIGHT /path/dwarftherapist/debian/dwarftherapist/usr/share/doc/dwarftherapist/copyright; cp README /path/dwarftherapist/debian/dwarftherapist/usr/share/doc/dwarftherapist/README.Debian
cp: cannot stat `COPYRIGHT': No such file or directory
cp: cannot stat `README': No such file or directory
make[1]: *** [install_doc] Error 1
make[1]: Leaving directory `/path/dwarftherapist'
make: *** [install] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2

Also worth noting that Dwarf Therapist doesn't need gksu on Debian Sid as Debian hasn't implemented ptrace hardening.

Are you building the package from source, or just repackaging for debian? 

As far as gksu, the script that launches DT checks for the ptrace hardening before launching with gksu, so if it's not enabled, it should run as a normal user.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Quietust on November 15, 2010, 08:17:38 pm
I've been running 0.6.5, and a few of the offsets are wrong - for example, dwarves are all listed as "No Job" because the job offset is off by a few bytes. I've fixed most of them in my own copy, but I don't have access to it at the moment (said copy is at home, and I'm at work) - I'll post the corrections later today.

Okay, so here's the details:

The offset for "birth_year" should be 0x0224, not 0x0298.
I'm pretty sure "physical_attributes" should be 0x03C4, not 0x046C.
Likewise, the offset for "likes" looks like it should be 0x079C, not 0x07AC.

Disregard the bit about labors - I had originally updated the .ini myself and hadn't fixed that offset.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: calrogman on November 15, 2010, 08:34:25 pm
Are you building the package from source, or just repackaging for debian? 

As far as gksu, the script that launches DT checks for the ptrace hardening before launching with gksu, so if it's not enabled, it should run as a normal user.

I'm trying to package for Debian, for personal use, I'm not a maintainer.  Frankly, I have no idea what I'm doing.  I'm by no means a developer, but I write a mean Hello World.  In Ruby :'(
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 15, 2010, 10:12:51 pm
Are you building the package from source, or just repackaging for debian? 

As far as gksu, the script that launches DT checks for the ptrace hardening before launching with gksu, so if it's not enabled, it should run as a normal user.

I'm trying to package for Debian, for personal use, I'm not a maintainer.  Frankly, I have no idea what I'm doing.  I'm by no means a developer, but I write a mean Hello World.  In Ruby :'(

Try adding this repository:
deb http://dwarftherapist.com/apt sid universe

We'll see if my package building strategy is going to work for multiple distros :)
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 15, 2010, 10:14:34 pm
I just added the Lucid Dwarf Therapist repository to my source list, but nothing shows up when I refresh the Update Manager.  Has anyone else had this problem?

Are you using 64-bit OS by any chance?

if not, try doing the following:
Code: [Select]
sudo apt-get update
sudo apt-get install dwarftherapist
If that doesn't work, please send me the output in a PM.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Shades on November 16, 2010, 04:11:50 am
Are you using 64-bit OS by any chance?

Is the repos only have a 32-bit install then?
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: calrogman on November 16, 2010, 06:38:16 am
Try adding this repository:
deb http://dwarftherapist.com/apt sid universe

We'll see if my package building strategy is going to work for multiple distros :)

Works flawlessly, although the incomplete 0.31.17 .ini is a bit of a pain and aptitude was quite insistent that I don't touch your repo with a barge pole.

Spoiler: OH GOD EVERYBODY PANIC (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: forsaken1111 on November 16, 2010, 06:40:20 am
UNTRUSTED SOURCE OH GOD THE COMPUTER WILL CATCH FIRE AND MURDER YOUR CAT TOO!
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Andir on November 16, 2010, 07:44:28 am
As sensationalist as it sounds... it is kind of like giving the app seriously_screw_up_your_system_Windows_like_access, so it's not to be taken lightly. ;)
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: calrogman on November 16, 2010, 07:49:56 am
As sensationalist as it sounds... it is kind of like giving the app seriously_screw_up_your_system_Windows_like_access, so it's not to be taken lightly. ;)

The package could have literally anything in the postinst/prerm scripts, both of which are run as root, so it isn't really sensationalist at all.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 16, 2010, 08:37:42 am
As sensationalist as it sounds... it is kind of like giving the app seriously_screw_up_your_system_Windows_like_access, so it's not to be taken lightly. ;)

The package could have literally anything in the postinst/prerm scripts, both of which are run as root, so it isn't really sensationalist at all.

True.  Now that I have confirmation that the packaging system seems to work for the most part, I'll look into signing them.  Thanks for testing!  And if there are any other requests for packages for debian based OSes, let me know; It's pretty easy for me to add them if they're mainstream.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Andir on November 16, 2010, 09:02:48 am
Are you using 64-bit OS by any chance?
Is the repos only have a 32-bit install then?
Am also curious on this.
As sensationalist as it sounds... it is kind of like giving the app seriously_screw_up_your_system_Windows_like_access, so it's not to be taken lightly. ;)

The package could have literally anything in the postinst/prerm scripts, both of which are run as root, so it isn't really sensationalist at all.
Yeah... that's what I said...
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: calrogman on November 16, 2010, 09:08:50 am
Yeah... that's what I said...
Yeah...  That's what I agreed to...

E:  Also, it's probably a good idea to cut gksu out of the dependencies for everything except Ubuntu and add kdesudo and sux as alternatives for those using Kubuntu, Lubuntu, etc.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 16, 2010, 09:10:24 am
Is the repos only have a 32-bit install then?
Am also curious on this.

At the moment yes.  I need to re-install ubuntu to 64-bit in order to start work on the 64-bit packages.  I plan on doing it soon, but no guarantee as to when I'll have a working package for 64-bit OSes.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Andir on November 16, 2010, 09:55:32 am
edit: nm, wasn't thinking.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Devstorm on November 16, 2010, 10:21:53 am
Is there a version of Therapist in the works/done for DF 0.31.18?
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: calrogman on November 16, 2010, 10:32:56 am
Is there a version of Therapist in the works/done for DF 0.31.18?
I expected it to take longer for this to be asked.  New memory layouts are always in the works.  No exceptions.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 16, 2010, 10:35:24 am
Is there a version of Therapist in the works/done for DF 0.31.18?

Yes there is, and it has support for sorting by squad!
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: Devstorm on November 16, 2010, 11:38:49 am
Is there a version of Therapist in the works/done for DF 0.31.18?

Yes there is, and it has support for sorting by squad!
Spoiler (click to show/hide)

Hot. Can't wait to see it in action. When do you expect it to be available for download?
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 16, 2010, 11:41:44 am
Just posted the new version of Dwarf Therapist 0.6.6 for Windows.  Linux packages to follow shortly.

Changelog:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: nordak on November 16, 2010, 12:38:25 pm
Any plans to support military?  Such as a uniform and schedule editor?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: DwarfEngineer on November 16, 2010, 12:42:26 pm
Any plans to support military?  Such as a uniform and schedule editor?
I would love to, but it will be one step at a time.  Just getting squad names for dwarves took quite a bit of effort.
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: DwarfEngineer on November 16, 2010, 02:20:48 pm
Just posted the new version of Dwarf Therapist 0.6.6 for Windows.  Linux packages to follow shortly.

Changelog:
Spoiler (click to show/hide)

The linux package repositories have also been updated, you can get the new version by running:
Code: [Select]
sudo apt-get update
sudo apt-get upgrade
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: vadia on November 16, 2010, 03:02:01 pm
If Toady weren't already THE man you'd be it.  Getting out .18 compatable that quickly is amazing.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: FuzzyDoom on November 16, 2010, 05:11:31 pm
Getting a new computer soon, and I'm going to run Fedora on it. Any chance I can get this on Fedora, or will I just have to run it through Wine?
Title: Re: Dwarf Therapist (LATEST 0.6.5 11/11/10 see first post)
Post by: forsaken1111 on November 16, 2010, 06:39:26 pm
As sensationalist as it sounds... it is kind of like giving the app seriously_screw_up_your_system_Windows_like_access, so it's not to be taken lightly. ;)

The package could have literally anything in the postinst/prerm scripts, both of which are run as root, so it isn't really sensationalist at all.
Yes but when it's a known source and known application, it can be construed as severe overreaction on the computer's part and, thus, amusing.

Using that logic, one could freak out over ANYTHING because any unopened package, or even entirely enclosed body like a toy truck, could have a bomb or other deadly implement in it.

This is like buying a toy at wal-mart, handing it to a friend, and he freaks the hell out screaming that it could be a bomb.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: bremarv on November 16, 2010, 07:02:55 pm
Getting a new computer soon, and I'm going to run Fedora on it. Any chance I can get this on Fedora, or will I just have to run it through Wine?

you could just compile it yourself. works fine for me under arch linux.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Tatterdemalian on November 16, 2010, 11:29:33 pm
Just downloaded and ran Dwarf Therapist... and just got a weird bug, where some of my dwarves aren't showing up. My fort has 49 dwarves, but DT will only display 48 or 47, and every time I close it and run it again, different dwarves are missing from the list. I imported my save file from 31.17, maybe that's the problem?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: DwarfEngineer on November 16, 2010, 11:34:21 pm
Just downloaded and ran Dwarf Therapist... and just got a weird bug, where some of my dwarves aren't showing up. My fort has 49 dwarves, but DT will only display 48 or 47, and every time I close it and run it again, different dwarves are missing from the list. I imported my save file from 31.17, maybe that's the problem?
I think it may be that the flag for haunting spirits is off.  Check your run.log, if it mentions ignoring a dwarf because it appears to be a haunting spirit, change this in your memory layout:
Spoiler (click to show/hide)

Ghosts will show up, but at least you'll have all of your live dwarfs.  I haven't killed enough dwarves off to have reliably determined what the flag for ghost is.  Guess I was off :)

Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Tatterdemalian on November 16, 2010, 11:46:34 pm
Just downloaded and ran Dwarf Therapist... and just got a weird bug, where some of my dwarves aren't showing up. My fort has 49 dwarves, but DT will only display 48 or 47, and every time I close it and run it again, different dwarves are missing from the list. I imported my save file from 31.17, maybe that's the problem?
I think it may be that the flag for haunting spirits is off.  Check your run.log, if it mentions ignoring a dwarf because it appears to be a haunting spirit, change this in your memory layout:
Spoiler (click to show/hide)

Ghosts will show up, but at least you'll have all of your live dwarfs.  I haven't killed enough dwarves off to have reliably determined what the flag for ghost is.  Guess I was off :)

Just checked my run.log, and sure enough they were being ignored as "haunting spirits." Unfortunately, after applying your fix, it continues to ignore live dwarves as if they're ghosts.

2010-Nov-16 22:40:20.076 DEBUG   core   dwarf race: "0x000000c8" [..\dwarftherapist\src\dfinstance.cpp:284] (load_dwarves)
2010-Nov-16 22:40:20.089 DEBUG   core   Ignoring "Såkzul Bomrekzefon" who appears to be "a haunting spirit" [..\dwarftherapist\src\dwarf.cpp:490] (get_dwarf)
2010-Nov-16 22:40:20.186 DEBUG   core   Ignoring "Vabôk Litastmidor" who appears to be "a haunting spirit" [..\dwarftherapist\src\dwarf.cpp:490] (get_dwarf)

Would setting it to 0x00000000 disable the haunt check completely, or would it break something? I'm not sure how the ini file is read.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Tatterdemalian on November 16, 2010, 11:49:38 pm
Just tested it, and disabling the haunt check by changing the flag test to 0x00000000 seems to work with no problem (except possibly adding haunts to the list if they ever show up).
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Deon on November 17, 2010, 02:54:31 am
Yeah, I have one invisible dwarf. Removing the haunt check shows him.

P.S. It shows ghosts too...
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Kipi on November 17, 2010, 06:29:10 am
I have noticed that the dwarves who get removed from list as being haunting are always the ones who are "On Break".
Don't know how to fix that, but hopefully it helps.

EDIT:
Noticed that, at least for me, changing the flag to 0x00001000 does help, but if I set the flag to 0x00000000 DT can not connect to the game. Just FYI if you don't get the second one working...
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Deon on November 17, 2010, 06:43:02 am
Yeah, I just removed the ghost line alltogether, with all 0-es I cannot connect to.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: se5a on November 17, 2010, 01:37:47 pm
How/where do you change that flag?

Also, with the list by squad, most of the squads in therapist are showing less than what's actually in the squad, thought it might be the above problem, till I noticed  a dwarf under the "no squad" who was in a squad...
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Boldwyn on November 17, 2010, 01:46:05 pm
In my case version 6.6 also doesn't show any military/social skills from 31.18. Nothing unusual in the run.log:


2010-lis-17 19:44:40.147 DEBUG   core   Connection to DF version "v0.31.18 (graphics)" established. [..\dwarftherapist\src\mainwindow.cpp:261] (connect_to_df)
2010-lis-17 19:44:40.147 DEBUG   core   Loading language translation tables [..\dwarftherapist\src\dwarftherapist.cpp:318] (load_game_translation_tables)
2010-lis-17 19:44:40.147 DEBUG   core   Loading generic strings from 1e4551c [..\dwarftherapist\src\dwarftherapist.cpp:332] (load_game_translation_tables)
2010-lis-17 19:44:40.151 DEBUG   core   generic words 2107 [..\dwarftherapist\src\dwarftherapist.cpp:334] (load_game_translation_tables)
2010-lis-17 19:44:40.338 DEBUG   core   FOUND LANG ENTRY 814f0e8 "DWARF" [..\dwarftherapist\src\dwarftherapist.cpp:346] (load_game_translation_tables)
2010-lis-17 19:44:40.339 DEBUG   core   FOUND LANG ENTRY 814f1f0 "ELF" [..\dwarftherapist\src\dwarftherapist.cpp:346] (load_game_translation_tables)
2010-lis-17 19:44:40.339 DEBUG   core   FOUND LANG ENTRY 814f248 "GOBLIN" [..\dwarftherapist\src\dwarftherapist.cpp:346] (load_game_translation_tables)
2010-lis-17 19:44:40.339 DEBUG   core   FOUND LANG ENTRY 814f2a0 "HUMAN" [..\dwarftherapist\src\dwarftherapist.cpp:346] (load_game_translation_tables)
2010-lis-17 19:44:40.339 DEBUG   core   Loading dwarf strings from 814f120 [..\dwarftherapist\src\dwarftherapist.cpp:351] (load_game_translation_tables)
2010-lis-17 19:44:40.343 DEBUG   core   dwarf words 2107 [..\dwarftherapist\src\dwarftherapist.cpp:353] (load_game_translation_tables)
2010-lis-17 19:44:40.376 DEBUG   core   MEMORY SEGMENT SUMMARY: accepted 428 rejected 164 total 592 [..\dwarftherapist\src\dfinstancewindows.cpp:354] (map_virtual_memory)
2010-lis-17 19:44:40.376 DEBUG   core   loading creatures from  "0x01e012c0" "0x016a12c0" (UNCORRECTED) [..\dwarftherapist\src\dfinstance.cpp:275] (load_dwarves)
2010-lis-17 19:44:40.376 DEBUG   core   dwarf race index "0x01c2daf0" "0x014cdaf0" (UNCORRECTED) [..\dwarftherapist\src\dfinstance.cpp:277] (load_dwarves)
2010-lis-17 19:44:40.390 DEBUG   core   dwarf race: "0x000000c8" [..\dwarftherapist\src\dfinstance.cpp:284] (load_dwarves)
2010-lis-17 19:44:40.439 INFO   core   found 7 dwarves out of 41 creatures [..\dwarftherapist\src\dfinstance.cpp:308] (load_dwarves)
2010-lis-17 19:44:40.439 DEBUG   core   loading squads from  "0x01e3f52c" "0x016df52c" (UNCORRECTED) [..\dwarftherapist\src\dfinstance.cpp:335] (load_squads)
2010-lis-17 19:44:40.440 INFO   core   Found 0 squads out of 0 [..\dwarftherapist\src\dfinstance.cpp:360] (load_squads)
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Buttons on November 17, 2010, 10:06:24 pm
2010-Nov-17 20:05:53.709 INFO   core   Dwarf Therapist "0.6.6" starting normally. [src/dwarftherapist.cpp:100] (setup_logging)
2010-Nov-17 20:05:53.780 INFO   core   Loaded 4 views from disk [src/viewmanager.cpp:126] (reload_views)
2010-Nov-17 20:05:53.797 DEBUG   core   "redrew views in 16ms" [src/viewmanager.cpp:158] (draw_views)
2010-Nov-17 20:05:53.799 DEBUG   core   setting up connections for MainWindow [src/mainwindow.cpp:115] (MainWindow)
2010-Nov-17 20:05:53.800 DEBUG   core   group_by now set to 0 [src/models/dwarfmodel.cpp:435] (set_group_by)
2010-Nov-17 20:05:53.800 DEBUG   core   beginning to read settings [src/dwarftherapist.cpp:122] (read_settings)
2010-Nov-17 20:05:53.800 DEBUG   core   finished reading settings [src/dwarftherapist.cpp:168] (read_settings)
2010-Nov-17 20:05:53.874 DEBUG   core   attempting connection to running DF game [src/mainwindow.cpp:224] (connect_to_df)
2010-Nov-17 20:05:53.877 ERROR   core   No valid memory layouts found in the following directories... () [src/dfinstance.cpp:98] (DFInstance)
2010-Nov-17 20:05:53.907 DEBUG   core   base_addr: 134531376 HEX 804c930 [src/dfinstancelinux.cpp:317] (find_running_copy)
2010-Nov-17 20:05:53.946 DEBUG   core   DF's checksum is "0x884f794d" [src/dfinstancelinux.cpp:321] (find_running_copy)
2010-Nov-17 20:05:53.946 DEBUG   core   DF's checksum is: "0x884f794d" [src/dfinstance.cpp:636] (get_memory_layout)
2010-Nov-17 20:05:53.983 ERROR   core   "unable to identify version from checksum:" "0x884f794d" [src/dfinstance.cpp:672] (get_memory_layout)
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: deprae on November 18, 2010, 05:02:24 pm
Hi, I am new to both Ubuntu (10.10) and Dwarf Fortress (31.18). When I click on the link on http://code.google.com/p/dwarftherapist/wiki/LinuxVersion for the Maverick version of Dwarf Therapist, it takes me to a 403 Forbidden page. What am I doing wrong?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: calrogman on November 18, 2010, 05:30:31 pm
Hi, I am new to both Ubuntu (10.10) and Dwarf Fortress (31.18). When I click on the link on http://code.google.com/p/dwarftherapist/wiki/LinuxVersion for the Maverick version of Dwarf Therapist, it takes me to a 403 Forbidden page. What am I doing wrong?

Open up System -> Administration -> Software Sources, enter your password into the box that pops up, switch to the "Other Software" tab and hit the "Add..." button.  Copy the line below and paste it in to the "Apt line" box.
Code: [Select]
deb http://dwarftherapist.com/apt maverick universeHit the "Add Source" button.  Close the window and open up Synaptic, hit the "Reload" button then do a search for dwarftherapist.  Mark it off for installation and hit "Apply".  Once it's done, you'll have a Dwarf Therapist icon in Applications -> Accessories.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: James.Denholm on November 19, 2010, 01:07:45 am
First, though, you might want to enable the "Software Sources" option in your menu, if you haven't already. It's at System -> Preferences -> Main Menu, scroll down the left to "Administration", which is at the very bottom by default, and after selecting it check "Software Sources".

Also - Linux, hells yeah.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: deprae on November 19, 2010, 02:22:25 am
Oh thankyou both, from the bottom of my soon-to-be magnificent beard.

Also, mad props to the programmer of Therapist. I appreciate the access to small-F fun this opens up. I was getting frustrated at half of my dwarves just sitting around, preparing to be nobles.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: vrga on November 19, 2010, 08:06:43 am
Nobles or magma boiled noble stew? :P
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: schussel on November 19, 2010, 02:02:58 pm
is there any way to circumvent the on break vanishing dwarf issue on windows version?

its kinda disturbing to see them vanish in the panels each time they are breaking :) and annoying
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: MonkeyHead on November 20, 2010, 12:41:57 pm
SO, anyone else getting all ther dwarves callen Urist Unknownunknown or have i broken computing?

EDIT: oh, and also only being told i have 6 dorfs, when it is embark and i can clearly count 7.

EDIT 2: ah, no problem. changing the offset for haunting spirits worked, and now all 7 exist and they have full names again.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Buttons on November 20, 2010, 03:56:48 pm
Where might I begin troubleshooting this issue?

Whenever I commit a change from Dwarf Therapist the next time the game attempts to save it seg faults.  I'm on Linux and compiled DT myself.  It works flawlessly except for this.  The changes I make to professions do take effect in the game, but it renders the game unsavable from that time forward it seems.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: DwarfEngineer on November 20, 2010, 04:40:08 pm
Where might I begin troubleshooting this issue?

Whenever I commit a change from Dwarf Therapist the next time the game attempts to save it seg faults.  I'm on Linux and compiled DT myself.  It works flawlessly except for this.  The changes I make to professions do take effect in the game, but it renders the game unsavable from that time forward it seems.

I'm guessing you're setting labors that require an equipment check?  For example mining or wood cutting.  I haven't verified the "check equipment" offset in linux, so that could be causing the problem.  Try setting labors that don't require an equipment change and saving.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Alekiel on November 20, 2010, 06:07:54 pm
Hey. I have the same problem as him; the game crashes during save time if I use the rapist. I tried several jobs as you suggested, but it crashes with all.

I'm on Ubuntu 10.10, but I'm on a 64bit machine. Also compiled the program from the source.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Buttons on November 20, 2010, 06:32:56 pm
Hey. I have the same problem as him; the game crashes during save time if I use the rapist. I tried several jobs as you suggested, but it crashes with all.

I'm on Ubuntu 10.10, but I'm on a 64bit machine. Also compiled the program from the source.

Yes, we do have the same problem.  I'm also on 64-bit Ubuntu 10.10, and again, I compiled from source.  The only job I set was architecture so one of my dwarfs would design the well I wanted.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: bremarv on November 20, 2010, 06:39:28 pm
I don't have any problems changing jobs and saving. I have compiled from source and is running 32 bit arch linux.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Alekiel on November 20, 2010, 08:34:01 pm
I don't have any problems changing jobs and saving. I have compiled from source and is running 32 bit arch linux.

Then maybe the issue is the fact that we are using a 64 bit software on a 32 bit software?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: bremarv on November 20, 2010, 09:44:29 pm
I don't have any problems changing jobs and saving. I have compiled from source and is running 32 bit arch linux.

Then maybe the issue is the fact that we are using a 64 bit software on a 32 bit software?

I have also removed the haunting spirit flag from the memory layout file to fix dissapearing dwarfs, not sure if it makes a difference.

Also when did you make your build? I downloaded the source after the post about windows version and before the linux version, maybe something changed.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: peterix on November 20, 2010, 11:24:00 pm
The issue could be from differences between the 32bit and 64bit ptrace call. I had a bug like that in DFHack too... on 64bit, the call reads and writes 64bit values instead of 32bit and if this isn't handled properly, it can cause corruption.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Alekiel on November 21, 2010, 05:27:09 pm
So, I'm guessing the issue would be fixed by simply using the 32bit binaries, yes?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Burning_Iceman on November 21, 2010, 05:34:16 pm
I've had this problem on and off on Arch 64bit. I believe it may differ from fort to fort.
Possibly it's a problem with old forts in newer versions of DF.
I suggest everyone who has this problem try it on a fresh fort and report their findings.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Mitchman on November 21, 2010, 05:54:16 pm
So is a Mac version being created... and if not, can I find a way to *cheat* by using this on my Mac?

Thanks if you can help :)
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: RadPanda on November 21, 2010, 11:05:31 pm
Repost from "DT is missing crucial functionality!":

It can read a dwarf's traits, but only the ones that are useless! Agility, strength, endurance, recuperation, toughness, kinesthetic sense, spatial sense, willpower, etc. are not listed

Makes my OCD sad.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: LoSboccacc on November 22, 2010, 04:32:14 am
So is a Mac version being created... and if not, can I find a way to *cheat* by using this on my Mac?

Thanks if you can help :)


winebottler + windows dwarf fortress + dwarf therapist (that's what I use)
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Stormrage on November 22, 2010, 06:29:53 am
It's also a shame that DT can read only dwarves, and if you are going to play any other civ, tough luck.
Correct me if I'm wrong, this is based on what was seen in Adventure Mode.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: LoSboccacc on November 22, 2010, 06:31:55 am
you could try messing with race index and race id in the memory layout
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Ladde on November 22, 2010, 06:06:17 pm
http://code.google.com/p/dwarftherapist/issues/detail?id=305

Is anyone looking in to this?
I wish I could, but I have no knowledge of coding etc.

Its about missing dwarfs.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Alekiel on November 22, 2010, 07:02:59 pm
All you gotta do is edit your memory layout and change the value for the haunting spirit to 0x00001000
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Ladde on November 22, 2010, 07:14:16 pm
Hmm, thanks alot.
Still I only have 75 Dwarfs on Therapist, but in the game my population is 76, what else is not in Therapist?
Could it be a kidnapped baby? Thats all I can make out from the run.log.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: forsaken1111 on November 22, 2010, 07:19:20 pm
Hmm, thanks alot.
Still I only have 75 Dwarfs on Therapist, but in the game my population is 76, what else is not in Therapist?
Could it be a kidnapped baby? Thats all I can make out from the run.log.
Yeah I'm pretty sure snatched babies won't show up
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: DwarfEngineer on November 22, 2010, 07:19:49 pm
http://code.google.com/p/dwarftherapist/issues/detail?id=305

Is anyone looking in to this?
I wish I could, but I have no knowledge of coding etc.

Its about missing dwarfs.
I'm looking into the actual flag for haunting spirits.  I've currently cut off my fort from water; looking for creative ways to kill off some dwarves. For SCIENCE!
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Ladde on November 22, 2010, 07:22:31 pm
Hmm, thanks alot.
Still I only have 75 Dwarfs on Therapist, but in the game my population is 76, what else is not in Therapist?
Could it be a kidnapped baby? Thats all I can make out from the run.log.
Yeah I'm pretty sure snatched babies won't show up
Yea but would snatched babies still show up on the z menu at population?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Alekiel on November 22, 2010, 07:26:02 pm
Hmm. Does anyone have the 32 bit linux binaries for the rapist? I know there's a repostory, but synaptic just keeps on whining about there being no 64 bit software in there. I'd like to test using the 32 bit version and see if that solves the crashing on save issue.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: DwarfEngineer on November 23, 2010, 12:34:22 am
http://code.google.com/p/dwarftherapist/issues/detail?id=305

Is anyone looking in to this?
I wish I could, but I have no knowledge of coding etc.

Its about missing dwarfs.
I'm looking into the actual flag for haunting spirits.  I've currently cut off my fort from water; looking for creative ways to kill off some dwarves. For SCIENCE!

Ok, so a few of my dwarves have had unfortunate "accidents" and have come back haunting.  I think I found the fix for this issue, but unfortunately it requires a code change.  I'll try to get a new version out this week.  Hopefully after Thanksgiving I'll have time to upgrade my OS to 64-bit and work on some of those issues and a 64-bit repository as well.  ANeumann0815 posted a patch that I think will work, but I need to do some testing with it on 32/64 bit linux before releasing it.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: vrga on November 23, 2010, 06:18:22 am
a moment, before you rush into 64-bit mode hell, can a 64-bit app even access memory of a 32-bit app that DF is by itself?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: forsaken1111 on November 23, 2010, 06:26:40 am
a moment, before you rush into 64-bit mode hell, can a 64-bit app even access memory of a 32-bit app that DF is by itself?
I'm running 64 bit and it works fine. I've had a 64 bit system for years without trouble.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: vrga on November 23, 2010, 07:21:45 am
this is not about a 64-bit OS running 32-bit apps. its about a 64-bit app accessing and modifying a 32-bit app's memory space dammit.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: forsaken1111 on November 23, 2010, 07:26:25 am
this is not about a 64-bit OS running 32-bit apps. its about a 64-bit app accessing and modifying a 32-bit app's memory space dammit.
I use therapist and several other DF memory modifying applications on my 64 bit system.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: FuzzyDoom on November 23, 2010, 07:58:58 am
Any chance we can get some .rpms for my Fedora?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Andir on November 23, 2010, 09:03:09 am
this is not about a 64-bit OS running 32-bit apps. its about a 64-bit app accessing and modifying a 32-bit app's memory space dammit.
It doesn't matter.  DT looks in the memory for specific lengths at specific addresses.  The 32-bit app modifies the memory it's given based on it's 32-bit programming.  Moving up to a 64-bit OS has no bearing on those two specific variables except that it can address a higher number of these.  Running a 32-bit app on 64-bit has no real downside.

Think of it like this:
Program A (32-bit) is given 1GB of RAM to run in.  It begins by putting ab 8 byte value at position 512 and a 16 byte value right after it at 520.

Program B (64-bit) is given the address of Program A's allocated storage and with the given offsets and lengths of the two variables listed above.  (512+8 and 520+16)  It doesn't matter whether the host is 64-bit or 32-bit.  They will both be given the same information and modifying that memory will yield the same results.

This is what the memory layout ini file does.  It tells DT where to look in the memory for specific values and while it does store the size of those values internally, the programmers know that they are dealing with a 32-bit program so they are likely not going to be using 64-bit variable types.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: glopso on November 23, 2010, 01:05:56 pm
DWARF THE RAPIST OLOLOLOL
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Andir on November 23, 2010, 01:13:33 pm
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: LoSboccacc on November 23, 2010, 01:16:10 pm
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?


it's 70707070 backward, duh.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: SquidgyB on November 23, 2010, 02:34:15 pm
*sigh* ROFLCOPTERS

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Stormrage on November 23, 2010, 03:17:16 pm
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?


it's 70707070 backward, duh.
Which is actually 14913080 in the octal base.
Now, if we split it into double digits we get 14 91 30 80.
If we use base 26 modulus we get the following: 14 13 4 1. Now we transform (0-25->1-26): 15 14 5 2 and what we get is ONEC. As 70707070 is the rotated OLOLOLOL, we have to rotate it back and we receive CENO. It is a known fact that "cēnō" is "I dine" in Latin. Which only leaves one choice: glopso is a rapist cannibal bent on world domination.


MYSTERY SOLVED
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Alekiel on November 23, 2010, 03:41:28 pm
Sometimes I wonder if its the game or these forums that are crazier.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: profit on November 23, 2010, 07:32:33 pm
Sometimes I wonder if its the game or these forums that are crazier.
Define crazy....
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Firnagzen on November 24, 2010, 08:30:44 am
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?


it's 70707070 backward, duh.
Which is actually 14913080 in the octal base.
Now, if we split it into double digits we get 14 91 30 80.
If we use base 26 modulus we get the following: 14 13 4 1. Now we transform (0-25->1-26): 15 14 5 2 and what we get is ONEC. As 70707070 is the rotated OLOLOLOL, we have to rotate it back and we receive CENO. It is a known fact that "cēnō" is "I dine" in Latin. Which only leaves one choice: glopso is a rapist cannibal bent on world domination.


MYSTERY SOLVED

... I have to know. How long did that take to work out?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Stormrage on November 24, 2010, 10:13:12 am
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?


it's 70707070 backward, duh.
Which is actually 14913080 in the octal base.
Now, if we split it into double digits we get 14 91 30 80.
If we use base 26 modulus we get the following: 14 13 4 1. Now we transform (0-25->1-26): 15 14 5 2 and what we get is ONEC. As 70707070 is the rotated OLOLOLOL, we have to rotate it back and we receive CENO. It is a known fact that "cēnō" is "I dine" in Latin. Which only leaves one choice: glopso is a rapist cannibal bent on world domination.


MYSTERY SOLVED

... I have to know. How long did that take to work out?

t=87.971928[sec]±7E-6[sec]
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Diverso on November 24, 2010, 12:46:12 pm
Hello there, i have a lil' issue with the program: it does not load all the dorfs. I push The "read dwarfs button" it shows me only 2 dwarfs, i push it again and again and the quantity of shown dorfs is allways different. I never managed to make it show all 7 starting dorfs. All this started at .18 version. Any ideas how to fix that? Therapist version 0.6.6.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Smew on November 24, 2010, 02:14:55 pm
Hello there, i have a lil' issue with the program: it does not load all the dorfs. I push The "read dwarfs button" it shows me only 2 dwarfs, i push it again and again and the quantity of shown dorfs is allways different. I never managed to make it show all 7 starting dorfs. All this started at .18 version. Any ideas how to fix that? Therapist version 0.6.6.
Yeah, the more I'm using DT with this version the more broken it seems, missing dwarves, some dwarves can't be assigned labors, etc etc.
Hopefully once everybody figures out all these new offsets the bugs will start getting fixed.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: noppa354 on November 24, 2010, 02:52:26 pm
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?


it's 70707070 backward, duh.
Which is actually 14913080 in the octal base.
Now, if we split it into double digits we get 14 91 30 80.
If we use base 26 modulus we get the following: 14 13 4 1. Now we transform (0-25->1-26): 15 14 5 2 and what we get is ONEC. As 70707070 is the rotated OLOLOLOL, we have to rotate it back and we receive CENO. It is a known fact that "cēnō" is "I dine" in Latin. Which only leaves one choice: glopso is a rapist cannibal bent on world domination.


MYSTERY SOLVED

... I have to know. How long did that take to work out?

t=87.971928[sec]±7E-6[sec]
erm... math nerd conspiracy theorist-ish person?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: DwarfEngineer on November 24, 2010, 04:29:44 pm
Just put up a 0.6.7 windows version (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.7.zip). This should fix the ghosts/haunting spirit issue. I'm going to wait for a few people to test before I make this the official release next week.

Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: UnrealJake on November 24, 2010, 05:28:22 pm
The number of dwarves in game and in the therapist are sometimes different, and the jobs my dwarves are doing are sometimes a little off, but that's mostly with crafting [I think it may be spot on actually, just telling me EXACTLY what they're making and not just "Stone Craft"]

Other than that, it seems fine. And it's really helping me out with knowing who's best for what. I was dismayed when I came back to DF and DT wasn't updated, so cheers! AND WORK FASTER *WHIP*
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Buttons on November 24, 2010, 08:19:15 pm
Just put up a 0.6.7 windows version (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.7.zip). This should fix the ghosts/haunting spirit issue. I'm going to wait for a few people to test before I make this the official release next week.

Might this fix the problem with Linux and the game crashing on save after DT changes have been commited?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: DwarfEngineer on November 24, 2010, 10:57:38 pm
Just put up a 0.6.7 windows version (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.7.zip). This should fix the ghosts/haunting spirit issue. I'm going to wait for a few people to test before I make this the official release next week.

Might this fix the problem with Linux and the game crashing on save after DT changes have been commited?

The code with that fix is checked in, so if you rebuild from the latest source there's a better chance it will work.  I haven't tested it and won't get a chance to make debian packages until next week.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Stormrage on November 25, 2010, 04:09:53 am
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?


it's 70707070 backward, duh.
Which is actually 14913080 in the octal base.
Now, if we split it into double digits we get 14 91 30 80.
If we use base 26 modulus we get the following: 14 13 4 1. Now we transform (0-25->1-26): 15 14 5 2 and what we get is ONEC. As 70707070 is the rotated OLOLOLOL, we have to rotate it back and we receive CENO. It is a known fact that "cēnō" is "I dine" in Latin. Which only leaves one choice: glopso is a rapist cannibal bent on world domination.


MYSTERY SOLVED

... I have to know. How long did that take to work out?

t=87.971928[sec]±7E-6[sec]
erm... math nerd conspiracy theorist-ish person?

Please, the ± sign should indicate I'm just a physics student who recently finished reading Cryptonomicon. It's pretty clear from where I stand!
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: LoSboccacc on November 25, 2010, 04:13:55 am
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?


it's 70707070 backward, duh.
Which is actually 14913080 in the octal base.
Now, if we split it into double digits we get 14 91 30 80.
If we use base 26 modulus we get the following: 14 13 4 1. Now we transform (0-25->1-26): 15 14 5 2 and what we get is ONEC. As 70707070 is the rotated OLOLOLOL, we have to rotate it back and we receive CENO. It is a known fact that "cēnō" is "I dine" in Latin. Which only leaves one choice: glopso is a rapist cannibal bent on world domination.


MYSTERY SOLVED

... I have to know. How long did that take to work out?

t=87.971928[sec]±7E-6[sec]
erm... math nerd conspiracy theorist-ish person?

Please, the ± sign should indicate I'm just a physics student who recently finished reading Cryptonomicon. It's pretty clear from where I stand!

I was leaning toward math myself due the use of a non SI approved time unit. There are not the good physics students of the olds, I guess.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Stormrage on November 25, 2010, 06:50:20 am
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?


it's 70707070 backward, duh.
Which is actually 14913080 in the octal base.
Now, if we split it into double digits we get 14 91 30 80.
If we use base 26 modulus we get the following: 14 13 4 1. Now we transform (0-25->1-26): 15 14 5 2 and what we get is ONEC. As 70707070 is the rotated OLOLOLOL, we have to rotate it back and we receive CENO. It is a known fact that "cēnō" is "I dine" in Latin. Which only leaves one choice: glopso is a rapist cannibal bent on world domination.


MYSTERY SOLVED

... I have to know. How long did that take to work out?

t=87.971928[sec]±7E-6[sec]
erm... math nerd conspiracy theorist-ish person?

Please, the ± sign should indicate I'm just a physics student who recently finished reading Cryptonomicon. It's pretty clear from where I stand!

I was leaning toward math myself due the use of a non SI approved time unit. There are not the good physics students of the olds, I guess.

I'll admit I have a scar of the cgs way, but since when are seconds not SI approved?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: LoSboccacc on November 25, 2010, 06:59:41 am
I know that LOL can be interpreted as "Laughing Out Loud" or "Lots Of Laughs," but can someone explain to me what "OLOLOLOL" means?


it's 70707070 backward, duh.
Which is actually 14913080 in the octal base.
Now, if we split it into double digits we get 14 91 30 80.
If we use base 26 modulus we get the following: 14 13 4 1. Now we transform (0-25->1-26): 15 14 5 2 and what we get is ONEC. As 70707070 is the rotated OLOLOLOL, we have to rotate it back and we receive CENO. It is a known fact that "cēnō" is "I dine" in Latin. Which only leaves one choice: glopso is a rapist cannibal bent on world domination.


MYSTERY SOLVED

... I have to know. How long did that take to work out?

t=87.971928[sec]±7E-6[sec]
erm... math nerd conspiracy theorist-ish person?

Please, the ± sign should indicate I'm just a physics student who recently finished reading Cryptonomicon. It's pretty clear from where I stand!

I was leaning toward math myself due the use of a non SI approved time unit. There are not the good physics students of the olds, I guess.

I'll admit I have a scar of the cgs way, but since when are seconds not SI approved?

s is SI approved. sec it is not.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Shades on November 25, 2010, 07:14:40 am
Also it wouldn't be in brackets or twice in the number (just once after the precision).
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Stormrage on November 25, 2010, 07:34:31 am
Hmmmm
Here, we don't pay attention to such details, especially the difference between s and sec. And brackets denote units, don't they?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Shades on November 25, 2010, 07:48:28 am
Where is here? I've never seen brackets used where I am (uk) for units. Maybe it's normal in other places but I didn't think it was SI
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: LoSboccacc on November 25, 2010, 08:22:47 am
Nor there in Italy, and I guess in France neither, as they actually invented the SI.

USA have not adopted it, but I guess they use it anyway. Or at least they pay attention after the mars climate orbiter incident.

btw, I've seen brackets used for units, but when in dimensional analysis to disambiguate letters, not during printouts.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Dragonchampion on November 26, 2010, 02:35:33 pm
I have a bug where only 3 of my dwarves are showing up after I open it after embarking...

The only change I have made is make my dwarves have Speed:1 tag...
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Smew on November 27, 2010, 03:30:04 pm
I have a bug where only 3 of my dwarves are showing up after I open it after embarking...

The only change I have made is make my dwarves have Speed:1 tag...
Did you download the latest version, which was made available on the previous page?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: crappypappy on November 27, 2010, 10:38:42 pm
erm hello so ive been using this mod for a few months now loved it and DF is unplayable with out it ive used it on vanilla and civilization mod and its perfect but just today i wanted somthing different so i tried the genesis mod and while playing dwarf fortress told me i had 1 guy and 6 women and when i checked in game i had 3 men and 4 women and the person it said was male was a women. so was wondering if there is any way to fix this? or a work around for this or a planned update to fix this or if thats even possible? sry for the run on
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Ascaronth on November 28, 2010, 08:01:57 pm
Ok, yeah, I'm a noob. I followed the instructions here http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist but... How do I run DT now?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: alpha on November 28, 2010, 09:41:44 pm
Quote
./bin/DwarfTherapist: symbol lookup error: ./bin/DwarfTherapist: undefined symbol: _ZN9QHashData14detach_helper2EPFvPNS_4NodeEPvEPFvS1_Eii

I have qt core libs v.4.6.3 installed.

Any help to fix this, please?

EDIT:

Got it working by manually compiling the source. Alas, another error appears:

Code: [Select]
"unable to identify version from checksum:" "0x884f794d" [src/dfinstance.cpp:672] (get_memory_layout)
Any help?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: MiniMacker on November 29, 2010, 06:20:11 am
The number of dwarves I have is changing randomly. Sometimes I have the full 19, sometimes I lose two dwarves to 17.

Using 0.6.6, but I'll try downloading the test version 0.6.7
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: rephikul on November 29, 2010, 10:25:30 am
The number of dwarves I have is changing randomly. Sometimes I have the full 19, sometimes I lose two dwarves to 17.

Using 0.6.6, but I'll try downloading the test version 0.6.7
Same issue with 0.6.7 tho it's more accurate with less dorfs. Swinging heavily 39-44 dwarves here. Never recognize full 45.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: schussel on November 29, 2010, 10:53:22 am
The number of dwarves I have is changing randomly. Sometimes I have the full 19, sometimes I lose two dwarves to 17.

Using 0.6.6, but I'll try downloading the test version 0.6.7

this is the issue with ghostie flag or so .. if i read that correct .. it makes  dwarfes on break dissappear ...

a workaround for it was written some pages ago
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: alpha on November 29, 2010, 10:14:25 pm
Code: [Select]
I'm sorry but I don't know how to talk to this version of Dwarf Fortress! (checksum:0x884f794d)
... anyone?
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Andir on November 30, 2010, 12:09:08 am
Code: [Select]
I'm sorry but I don't know how to talk to this version of Dwarf Fortress! (checksum:0x884f794d)
... anyone?
Sorry, I also do not know how to speak Dee-ef-ian.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Dai-rasa on November 30, 2010, 09:58:22 am
Code: [Select]
I'm sorry but I don't know how to talk to this version of Dwarf Fortress! (checksum:0x884f794d)
... anyone?

You forgot to copy the memory location file. In short, DT is missing an ini file that tells it where is what.
Check the 'etc' directory within the DT source directory. You should be able to find the proper .ini file there.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: alpha on November 30, 2010, 11:32:04 am
Code: [Select]
I'm sorry but I don't know how to talk to this version of Dwarf Fortress! (checksum:0x884f794d)
... anyone?

You forgot to copy the memory location file. In short, DT is missing an ini file that tells it where is what.
Check the 'etc' directory within the DT source directory. You should be able to find the proper .ini file there.

Copied the "etc" directory from source and it worked.

You sir are noble gentledwarf and a scholar.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Kilowatt on December 02, 2010, 08:52:21 pm
Hrm. I can't seem to download the file for Linux. I apparently don't have permission to access the directory, and then there's a 404 when ErrorDocument handles the request.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: calrogman on December 03, 2010, 03:29:40 pm
Hrm. I can't seem to download the file for Linux. I apparently don't have permission to access the directory, and then there's a 404 when ErrorDocument handles the request.

http://www.bay12forums.com/smf/index.php?topic=66525.msg1730487#msg1730487
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Kilowatt on December 03, 2010, 05:45:52 pm
Thanks. Works flawlessly!
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Axecleaver on December 06, 2010, 01:23:59 pm
First of all, I must thank chmod, DwarfEngineer, and the other contributors for the wonderful tool that is Dwarf Therapist. I think profit put it aptly (http://www.bay12forums.com/smf/index.php?topic=28829.0) when he said,
It makes Dwarf fortress playable.  It's that good.

However...
As a lot of other users have already asked about the following issue and have not elicited so much as a PEEP in response, I can only surmise that:
THEY DID NOT SPEAK LOUD ENOUGH.


Just wanted to start off with props to chmod and DwarfEngineer. I really love this utility and I find the game nearly unplayable without it since I discovered it. Just one question and sorry if it has been asked before. In the future will it be able to properly show castes? Or at least be able to properly show the gender of races with multiple castes? I play with Deon's Genesis and it just seems to pick a random gender. Caste would be nice but gender is important since I only allow males in my military and it would be nice to tell who is what at a glance.

Quick Question:  Does DwarfTherapist work with this mod? I can't imagine why it wouldn't but I think I heard it once.
It does, it just doesn't show gender properly. The displayed gender is seemingly random due to castes.

Dwarf Therapist is missing crucial functionality! (http://www.bay12forums.com/smf/index.php?topic=71346.0)

It can read a dwarf's traits, but only the ones that are useless! Agility, strength, endurance, recuperation, toughness, kinesthetic sense, spatial sense, willpower, etc. are not listed

Makes my OCD sad.

Try posting about it in the Dwarf Therapist thread or even the Dwarf Therapist forums.

On a side note I agree.

this may just be me but i use dwarf therapist with dwarf fortress and it cant read ure genders right ive never had tbhis issue before and ive played  vanilla and civilization mod and it was always right before but now it says i got 1 man and 6 women and in game when i check ive got 3 men and 4 women ive tried a fresh instal of dwarf therapist and tried restarting it and reloading it a few times as well any ideas and yes im not stupud i know this isnt the dwarf therapist forum.....
That's a problem with how Dwarf Therapist responds to castes. I've brought this up on the DT thread an was thoroughly ignored but you could try as well.

erm hello so ive been using this mod for a few months now loved it and DF is unplayable with out it ive used it on vanilla and civilization mod and its perfect but just today i wanted somthing different so i tried the genesis mod and while playing dwarf fortress told me i had 1 guy and 6 women and when i checked in game i had 3 men and 4 women and the person it said was male was a women. so was wondering if there is any way to fix this? or a work around for this or a planned update to fix this or if thats even possible? sry for the run on

I'm just saying...
These folks have already brought up this issue in the Genesis Mod (http://www.bay12forums.com/smf/index.php?topic=52988.0) thread (where nothing can be done about it), in this Dwarf Therapist (http://www.bay12forums.com/smf/index.php?topic=66525.0) thread, and RadPanda even started a new thread (http://www.bay12forums.com/smf/index.php?topic=71346.0) about this. And... no response...?

No offense, but is DwarfEngineer or anyone who is in a position to address this aware of this? I do realize that Dwarf Therapist is a very popular tool and this thread gets frequent posts from users with issues and concerns. So, it's not surprising when a message or two gets buried under new posts. But, IMO, it would help immensely if it was acknowledged with something like, "we are aware of the problem" or even "sorry, but I'm afraid this can not be fixed."
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Andir on December 06, 2010, 01:37:11 pm
It's been brought up in Stonesense... The XML offsets for certain parts of the data (creatures, stats, etc.) have changed and nobody has updated them.  (at least, that's the consensus.)

It's not enough to set the initial XML offset in these cases because the extra data that was being collected before has moved in memory and the numbers need to be updated.  In some cases, the programs need to be updated to handle this change.  It's just that nobody has done it.


Gem windows aren't showing up for me correctly.

I got stonesense working by replacing the memory XML in the old stonesense with the one from DFhack, would that be the issue? They just look like empty frames.

I know creatures don't show up via memory XML replacement, but I wasn't sure about windows.

generally, unless it's stated otherwise, just assume that the xml isn't complete yet.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: SurfinShroom on December 06, 2010, 02:11:36 pm
Installed, it pops up with a graphics error of some sort? Is this because i'm using a tileset?
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: calrogman on December 06, 2010, 04:20:10 pm
Installed, it pops up with a graphics error of some sort? Is this because i'm using a tileset?
No, using a tileset won't change how Dwarf Fortress uses its memory.  Please be more specific about the error.  Copy and paste what pops up or provide a core dump if you know how.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: gtmattz on December 06, 2010, 04:49:53 pm
I am sorry if this question is answered in the thread somewhere, I could not find it.

The version I have been using (0.6.6) has a problem where the number of dwarves keeps changing (I see other mentions of this above).  I am just wondering if 0.6.7 fixes this issue?


I simply downloaded it and tested it, ignore my post, I am a dummy (I blame mondays with no morning coffee).
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: DwarfEngineer on December 06, 2010, 06:11:41 pm
No offense, but is DwarfEngineer or anyone who is in a position to address this aware of this? I do realize that Dwarf Therapist is a very popular tool and this thread gets frequent posts from users with issues and concerns. So, it's not surprising when a message or two gets buried under new posts. But, IMO, it would help immensely if it was acknowledged with something like, "we are aware of the problem" or even "sorry, but I'm afraid this can not be fixed."

I am aware of it, so was chmod; it was an issue when I started maintaining dwarf therapist, and hasn't reached a high enough priority for me yet.  You can track progress of the issue here (http://code.google.com/p/dwarftherapist/issues/detail?id=223).  Support for mods is something that I would like to add at some point, but there are still a few idiosyncrasies and features around the core game that I would like to get done before I start working on mod support. 

There's a good chance that a lot of features around custom content will require reading raw files, which is something that dwarf therapist hasn't done to date, so there's a lot of infrastructure that will need to go in to it to do it right. 

In the future, if you feel that an important feature is being ignored, please open an issue on the Project page (http://code.google.com/p/dwarftherapist/issues/list).  This way I will receive e-mail notification and you'll have a way to permanently track progress, make notes, discuss the feature request, etc.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: SurfinShroom on December 07, 2010, 12:20:15 pm
(http://i56.tinypic.com/2ytpgdf.png)
Thats my error, help please? :)
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Shades on December 07, 2010, 12:46:11 pm
<snip image>
Thats my error, help please? :)

See the first line of that error, it looks like what alpha got so Dai-rasa's response is probably good for you too.

Code: [Select]
I'm sorry but I don't know how to talk to this version of Dwarf Fortress! (checksum:0x884f794d)
... anyone?

You forgot to copy the memory location file. In short, DT is missing an ini file that tells it where is what.
Check the 'etc' directory within the DT source directory. You should be able to find the proper .ini file there.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: SurfinShroom on December 07, 2010, 01:07:29 pm
so what do I do exaclty? :/ sorry :L
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Shades on December 07, 2010, 01:24:57 pm
so what do I do exaclty? :/ sorry :L

I assumed it was a missing ini file, the ini files in the /etc directory tell therapist where stuff is in dwarf fortress. But the 0.31.18 version appears to be in the download. Just check you have it in your install in case but if it is then I'm not sure.
Title: CapnUrist=derp
Post by: CapnUrist on December 08, 2010, 05:35:05 am
Nothing to see here, move along.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Rex_Nex on December 08, 2010, 05:54:52 am
>.>

Here I was thinking you have finally gone insane, and all you did was change the title of your post.

Badass.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: profit on December 08, 2010, 01:08:36 pm
Just want to say, everything is working perfectly for me.

*knock on wood* 



windows 7 ultimate -64bit.  Not ran as administrator, ran from a folder on the desktop.  Mayday version of DF .18

Keep up the good work.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: xczxc on December 10, 2010, 03:10:16 pm
Hi, I'm using 64-bit Ubuntu 10.10 and I can't add the source to the synaptic, when I hit the reload button it says that it was unable to fetch http://dwarftherapist.com/apt/ etc etc etc unable to connect to dwarftherapist.com:http:

any help would be appreciated.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Fastler on December 11, 2010, 08:22:36 pm
Hi, I'm using 64-bit Ubuntu 10.10 and I can't add the source to the synaptic, when I hit the reload button it says that it was unable to fetch http://dwarftherapist.com/apt/ etc etc etc unable to connect to dwarftherapist.com:http:

any help would be appreciated.

Same thing here. It would seem the repository is down or protected or something.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: calrogman on December 12, 2010, 09:34:11 pm
Hi, I'm using 64-bit Ubuntu 10.10 and I can't add the source to the synaptic, when I hit the reload button it says that it was unable to fetch http://dwarftherapist.com/apt/ etc etc etc unable to connect to dwarftherapist.com:http:

any help would be appreciated.
Same thing here. It would seem the repository is down or protected or something.
http://www.bay12forums.com/smf/index.php?topic=66525.msg1730487#msg1730487
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: xczxc on December 14, 2010, 02:09:59 pm
Hi, I'm using 64-bit Ubuntu 10.10 and I can't add the source to the synaptic, when I hit the reload button it says that it was unable to fetch http://dwarftherapist.com/apt/ etc etc etc unable to connect to dwarftherapist.com:http:

any help would be appreciated.
Same thing here. It would seem the repository is down or protected or something.
http://www.bay12forums.com/smf/index.php?topic=66525.msg1730487#msg1730487

No, have already done that, but as the guy below me said, it looks as if the repository is down.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: DwarfEngineer on December 14, 2010, 11:06:33 pm
Hi, I'm using 64-bit Ubuntu 10.10 and I can't add the source to the synaptic, when I hit the reload button it says that it was unable to fetch http://dwarftherapist.com/apt/ etc etc etc unable to connect to dwarftherapist.com:http:

any help would be appreciated.
Same thing here. It would seem the repository is down or protected or something.
http://www.bay12forums.com/smf/index.php?topic=66525.msg1730487#msg1730487

No, have already done that, but as the guy below me said, it looks as if the repository is down.

Currently I don't have source packages posted, just binaries.  The source is available through mercurial on the project page. (See first page for link)
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: xczxc on December 15, 2010, 01:09:13 pm
Awesome, thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: DDR on December 17, 2010, 05:22:45 pm
Where are filter scripts stored in Windows XP? ???
Answer: C:\Documents and Settings\David\Application Data\UDP Software
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: madciol on December 18, 2010, 07:10:59 am
I would like very much to have different icon for "On break" than for "Idle". My OCD screams "no lazy bum freeloaders idlers!". Thankyouverymuch.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: DDR on December 19, 2010, 01:21:08 am
That actually relates to my new question: How do you filter on current job? I'd like to remove any resting people from my worklist, as I already have with people who can't work (like children). Resters rarely get better, I don't know why. All those really horrific injuries, maybe? :)
I've got a lot of them, and they're gumming up my production.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Jorshamo on December 19, 2010, 04:43:26 pm
I don't see an option for swimming skill anywhere. Is it not tracked, or am I just missing something?
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: pineapple on December 19, 2010, 11:13:46 pm
Is there an alternate dowload link for the linux version? dwarftherapist.com seems to be down and that's what the google code page links to.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Samohan25 on December 20, 2010, 02:53:09 am
I would like very much to have different icon for "On break" than for "Idle". My OCD screams "no lazy bum freeloaders idlers!". Thankyouverymuch.

I agree, we need a way to filter on job and some diffrenciation between 'On break' and 'Idle', currently not only do they use the same icons but they both come up as 'No job' when you hover over it to show the job.
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Kc_spot on December 23, 2010, 06:57:08 pm
Why oh why is the following being ignored?

I would love ANY kind of answer to this
Title: Re: Dwarf Therapist (LATEST 0.6.6 11/16/10 see first post)
Post by: Trouserman on December 23, 2010, 07:49:05 pm
Why oh why is the following being ignored?

For Urist's sake, it's not being ignored.  DwarfEngineer made a very clear and reasonable response (http://www.bay12forums.com/smf/index.php?topic=66525.msg1780473#msg1780473) the very same day.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: ThisIsVictor on December 24, 2010, 02:52:47 am
Hey all! My first post, woo hoo!

I'm trying to install Dwarf Therapist on Ubuntu 10.04. I'm new to both DF and Ubuntu, so it's not going so well. Here are my problems:

I tried to install via apt-get. I added the source, typed out the command and got:

The following packages have unmet dependencies:
  dwarftherapist: Depends: libqtcore4 (>= 4:4.7.0~beta1) but 4:4.6.2-0ubuntu5.1 is to be installed
E: Broken packages

Ubuntu is telling me that version is exactly the one I already have installed, so I'm not sure what's going on there.

I also tried running an alpha version I found previously in this thread. That was DwarfTherapist_LINUX_ALPHA_R444.5. When I run that a terminal pops up, shows an error message too fast for me to see and closes.

Any advice would be awesome!
--Victor
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: bremarv on December 24, 2010, 07:58:12 pm
I tried to install via apt-get. I added the source, typed out the command and got:

The following packages have unmet dependencies:
  dwarftherapist: Depends: libqtcore4 (>= 4:4.7.0~beta1) but 4:4.6.2-0ubuntu5.1 is to be installed
E: Broken packages

Ubuntu is telling me that version is exactly the one I already have installed, so I'm not sure what's going on there.
I think what it's saying is that Dwarf Therapist requires version 4.7.0 of libqtcore, while the one in the ubuntu 10.04 repos are only 4.6.2. If this is right DwarfEngineer is probably using Ubuntu 10.10. Not sure what you can do about this. My first reaction is to compile DT myself.

I also tried running an alpha version I found previously in this thread. That was DwarfTherapist_LINUX_ALPHA_R444.5. When I run that a terminal pops up, shows an error message too fast for me to see and closes.
Try running it from a terminal and you should probably see the error messages there.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: ThisIsVictor on December 25, 2010, 03:58:35 am
I went ahead and upgraded to Ubuntu 10.0. I've been meaning to do it, this is just the excuse I need.

I got DT installed and I can run it from the terminal. It pops up for a moment and then closes. I get the following messages in the terminal:

Code: [Select]
Could not open logfile for writing! "No such file or directory"
ptrace attach: Operation not permitted

(<unknown>:3142): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GObject'

(<unknown>:3142): GLib-GObject-CRITICAL **: g_object_get_data: assertion `G_IS_OBJECT (object)' failed
victor@victor-laptop:~$ DwarfTherapist
Could not open logfile for writing! "No such file or directory"
ptrace attach: Operation not permitted

(<unknown>:3178): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GObject'

(<unknown>:3178): GLib-GObject-CRITICAL **: g_object_get_data: assertion `G_IS_OBJECT (object)' failed


I have no idea what that means and google wasn't very helpful.

Thanks for the help!!
--Victor
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: mrbaggins on December 27, 2010, 03:15:07 am
Hey. First thanks for a great tool

Now,  the problem.

I keep getting "??" as parts of different things in the program. For example, my miner might be "Competent (4) Miner" but under that will be "Novice (1) ??"

There is no consistency within it, in that case it was masonry.

I also get the same thing on current jobs "Crafting ?? crafts"

The last 3 pages made no mention of this...

I'm using Phoebus 31.18v2 and Therapist 0.6.7.

Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: bremarv on December 28, 2010, 02:11:36 pm
Code: [Select]
Could not open logfile for writing! "No such file or directory"
ptrace attach: Operation not permitted

sounds like a problem with the permissions on the dwarf therapist folder. giving write permissions to all should help.[/code]
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: kiffer.geo on December 28, 2010, 09:05:18 pm
Just got Dwarf Therapist working on Ubuntu 10.10 with DF 31.18
This is not in and of itself the interesting or fun part...
The fun part is that I'm using it over ssh X11 forwarding to control a fortress that I otherwise control with DFTERM2 :-)

For future reference, should anyone else want to forward DT over some kind of crazy ssh/X11 tunnel there is one snag I ran into...
I tried to just use sudo to run DT but still got ptrace errors, so I used 'sudo su' to become root but then I got x11 forwarding errors because I wasn't the same user anymore which was fixed with the following few commands
Whilst regular user;
echo $DISPLAY (to find out which display X11 was using)
xauth list (which returned several entries that looked like this SERVERNAME/unix:13  MIT-MAGIC-COOKIE-1  a1d52694834b20ad521e46db9caf33a8)

then after 'sudo su' ie whilst root
xauth add SERVERNAME/unix:13  MIT-MAGIC-COOKIE-1  a1d52694834b20ad521e46db9caf33a8

Now... this is pretty laggy but it works... I can now control my small 50 Dwarf Fortress, which is running on a spare machine in my house from my laptop anywhere in the world AND I can still use DwarfTherapist to manage it!

Anyway the most important part of my post:Thank you, Dwarf Engineer, for your excellent application!


EDIT: actually... now I'm getting an error... "Unidentified Game Version"... I got it once before and then it went away... now it's back... most odd.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: ThisIsVictor on December 29, 2010, 09:23:40 pm
Got it working! I don't use it much because running DF and DT at the same time slows my netbook down a lot.

Thanks for all the help!
--Victor
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: GaxkangtheUnbound on December 30, 2010, 04:05:18 pm
It seems that DT reports 20 immigrants in the third and fourth waves, yet only several appear. Any ideas why?
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: pineapple on December 30, 2010, 08:30:24 pm
How are people downloading the latest DT Linux version? I can't get dwarftherapist.com to resolve in the browser or as a repository.  It just 404s.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: bremarv on December 30, 2010, 09:48:07 pm
How are people downloading the latest DT Linux version? I can't get dwarftherapist.com to resolve in the browser or as a repository.  It just 404s.

I download the source and compile it myself from the googlecode repository
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: FuzzyDoom on December 30, 2010, 10:28:22 pm
Trying to get back into DF and haven't tried it with my new Linux...any RPM version of DT?
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: pineapple on December 31, 2010, 10:11:03 am
Succesfully checked out the source with mercurial, did qmake, make, like it says on the wiki.  It seems to have run succesfully but I can't locate the output anywhere?  Supposedly there should be a dwarftherapist-build-desktop folder now but there isn't.

Edit: nevermind I rebuilt it with QtCreator.  Now it immediately exits saying it could not open a log file because one doesn't exist.  I'd manually make one if I knew where it wanted one.

Edit 2: ok, log file sorted out.  since ptrace is disabled in maverick it has to be run with sudo, so I have to launch DF with sudo too or it won't see it.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: The_Countess on January 01, 2011, 02:56:24 pm
I don't see an option for swimming skill anywhere. Is it not tracked, or am I just missing something?

you can see swimming skills by right clicking a dwarfs name en hitting show details.
swimming skills (if any) will be listed there.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Nagidal on January 03, 2011, 09:31:46 am
It seems to me that the dedicated DT forum is no longer maintained or active as it once was -- it's still announcing the version 0.5.7. Therefore I'll just repost a suggestion I posted in there a moment ago:


I generally like to assign tasks to my dwarves according to their personal thoughts and preferences, especially to what is written in the green/red paragraph of them. That means I don't make a miner of a dwarf who is weak and easily tired. Thoughts and preferences can be accessed when you "view crew" a dwarf in the units list, and then by pressing Enter you display them.

While I can carefully select the skill and task profile for each of my 7 starting dwarves, this procedure gets more complicated with the dwarves coming with the immigration waves. (You know, look their names up, search for them in the units list, view crew, view thoughts ...). I would very much prefer to lookup the thoughts and preferences of each individual Dwarf in Dwarf Therapist.

I know that in the current version you can see "Traits" of each dwarf when you mouse over him, but this does not say anything about his physical and mental abilities which you can read in the green/red section of the thoughts and preferences description. Nor can anything like that be seen in the Dwarf Details Dock windows of Dwarf Therapist.

That's why I would like you to implement the possibility of displaying thoughts and preferences of a dwarf do Dwarf Therapist. The sooner the better.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: ikkonoishi on January 03, 2011, 12:45:40 pm
I have a couple of small requests.
When you hover over a skill in the grid view it pops up a window showing just that skill and its levels.
Could you switch that to showing the full list of the Dwarf's skills with the hovered over skill bolded after a couple of seconds?

Also it would be nice if you could flip the grid view so that the skills are on the left, and the dwarves names are across the top. That would be more useful I would think. I find that I read the skill names more than the Dwarf names.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: FuzzyDoom on January 08, 2011, 04:41:02 pm
So any idea on how to get DT working on non-Ubuntu Linux? Would be VERY helpful. Linux noob here so try not to sound too guru-ish if you can.  ;D
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: bremarv on January 08, 2011, 08:01:44 pm
So any idea on how to get DT working on non-Ubuntu Linux? Would be VERY helpful. Linux noob here so try not to sound too guru-ish if you can.  ;D

You always have the option of compiling it yourself. If you click on the linux link in the first post there is also a link to 0.6.4 in the old section which should include memory_layouts up to 31.16, and if you use 31.18 you can just add it yourself.

You might also have some luck searching for 'dwarf therapist <distro>' and find that someone have made a package. At least on Arch Linux some users have made a gaming repository containing df and dt.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: GrimmBean on January 09, 2011, 09:49:35 am
I am very new to Linux.

I am running Debian 5.0.7
while trying to build DT I ran all of these commands per instructions:
Spoiler (click to show/hide)
and this is what I get when I run make:
Spoiler (click to show/hide)

I know you don't have to have Dwarf The Rapist to play......
Any help is appreciated
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Forumite on January 09, 2011, 11:42:15 am
Any idea when another version will come out for the Mac?

I´m still running DF 0.31.12 because that´s the only one with a working Mac verison of Dwarf Therapist.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: zibjio on January 11, 2011, 09:39:21 pm
I am very new to Linux.

I am running Debian 5.0.7
while trying to build DT I ran all of these commands per instructions:
Spoiler (click to show/hide)
and this is what I get when I run make:
Spoiler (click to show/hide)

I know you don't have to have Dwarf The Rapist to play......
Any help is appreciated

Hey man, I had the same issue. The problem is debian has qt 4.4. Download the newest version from the qt website, and try compiling again. After that, I got this error when I tried to run it:

Quote
Could not open logfile for writing! "No such file or directory"

So I did:

Quote
mkdir log; touch log/run.log

And that solved that. Now it's crashing with this, in that same log file:

Quote
2011-Jan-12 02:30:39.429 DEBUG   core   attempting connection to running DF game [src/mainwindow.cpp:224] (connect_to_df)
2011-Jan-12 02:30:39.438 ERROR   core   No valid memory layouts found in the following directories... () [src/dfinstance.cpp:98] (DFInstance)
2011-Jan-12 02:30:39.497 DEBUG   core   base_addr: 134531376 HEX 804c930 [src/dfinstancelinux.cpp:324] (find_running_copy)
2011-Jan-12 02:30:40.152 DEBUG   core   DF's checksum is "0x884f794d" [src/dfinstancelinux.cpp:328] (find_running_copy)
2011-Jan-12 02:30:40.152 DEBUG   core   DF's checksum is: "0x884f794d" [src/dfinstance.cpp:636] (get_memory_layout)
2011-Jan-12 02:30:40.308 ERROR   core   "unable to identify version from checksum:" "0x884f794d" [src/dfinstance.cpp:672] (get_memory_layout)

So I guess I'll try to solve that now...

Edit: should have read the build info page on the wiki on the project's page. Just needed to copy the etc folder to the folder the binary was in.

Quote
dwarftherapist/bin/release$ cp -r ../../etc/ .
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Darkdwarf14 on January 12, 2011, 01:07:41 am
Hey I'm using DFusion to have other races from deon's genesis mod in my fort and was wondering if there was a way to have DT work with other races not just Dwarfs. Any advice? and thanks in advance.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: ke1evra on January 13, 2011, 04:56:48 pm
Here is how I made it work on Ubuntu 10.10 with DF Phoebus v.0.31.18 and DT 0.6.7 from scratch
Spoiler (click to show/hide)
I got a dv4-2145dx
First I got Ubuntu from here: http://cdimage.ubuntu.com/releases/10.10/release/ubuntu-10.10-dvd-amd64.iso.torrent (http://cdimage.ubuntu.com/releases/10.10/release/ubuntu-10.10-dvd-amd64.iso.torrent)
Spoiler (click to show/hide)
Then I got DF Phoebus v.0.31.18 from here: http://dffd.wimbli.com/file.php?id=2944 (http://dffd.wimbli.com/file.php?id=2944)
I unpacked it, doubleclicked on DF icon and nothing happened at all :)
Then I found out from README that it needs some libraries:
Code: [Select]
GTK+ 2+ 
SDL 1.2+     
SDL_image
And some OpenGL implementation:
Code: [Select]
libgl
libglu
Also by running DF through terminal, I've fund out there were some missing x32 libraries. I got them all from Synaptic Package Manager and that was it for DF to make it work. As it turned out it was an easy part  :D
I experienced hard time hustling for DT 0.6.7 or at least 0.6.6 for Linux version. Adding featured repositories resulted these errors:
Code: [Select]
Failed to fetch http://dwarftherapist.com/apt/dists/maverick/universe/source/Sources.gz 404 Not Found
Failed to fetch http://dwarftherapist.com/apt/dists/maverick/universe/binary-amd64/Packages.gz 404 Not Found Some index files failed to download, they have been ignored, or old ones used instead.

Well it turned out that i have to compile DT by my self, i got instructions from here: http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist (http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist)
Shortly, I did install Mercurial and Qt SDK, then, get following packages by typing in terminal:
Code: [Select]
sudo apt-get install build-essential libglib2.0-dev libSM-dev libxrender-dev libfontconfig1-dev libxext-devand comppile:
Code: [Select]
$ sudo apt-get install qt4-qmake qt4-dev-tools

$ hg clone https://dwarftherapist.googlecode.com/hg/ dwarftherapist

$ cd dwarftherapist

$ qmake

$ make

Quote
After that, make a log directory in the same folder as the binary (bin/release), then copy the dwarftherapist/etc folder in there too.
I haven't done this yet, it gives error message but still works for me (only works if launched from terminal).
Then it finally launched by typing (or just doubleclick it i assume):
Code: [Select]
./bin/release/DwarfTherapist
Well it connected to the game, BUT it didn't read my dwarfs! It gave me such error message:
Code: [Select]
Unable to talk to Dwarf Fortress: Dwarf Fortress has either stopped running, or your unloaded your game. Please re-connect when a fort is loadedFinally i googled up this page: http://udpviper.com/forums/viewtopic.php?f=36&t=18106&p=290189&hilit=ubuntu#p290189 (http://udpviper.com/forums/viewtopic.php?f=36&t=18106&p=290189&hilit=ubuntu#p290189)
To make it work type this (only works until reboot):
Code: [Select]
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scopeTo make this setting permanent, first run the "echo" command above, then edit the /etc/sysctl.d/10-ptrace.conf file. (You'll need to have super-user permissions to save your changes). Look for the line:
Code: [Select]
kernel.yama.ptrace_scope = 1at the bottom of the file, and change it to:
Code: [Select]
kernel.yama.ptrace_scope = 0Finally I got Windows-like experience running DF+DT on Linux, hope it helps someone.
Also here's history of installed stuff from Synaptic Package Manager since OS installation through hustling, you won't need all of that though:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: ruanna on January 15, 2011, 08:06:29 am
Hi, problem running DT on parallels (windows xp) on a macbook pro. It crashes immediately (with a ping noise) and there are no logs in the log folder. I've updated windows xp with the updater, but not installed anything else on it. Dwarf Fortress runs perfectly, but utilities don't work. Help please!
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Victuz on January 19, 2011, 05:14:41 pm
I seem to have the same problem as ruanna.

Running out of normal XP and both TD and Runesmith crash immediately after opening. TD just stops, Runesmith gives a "Failed to open file at row 0  col 0" error.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: userpay on January 29, 2011, 09:31:16 pm
Getting back into DF and finally got my first mood which brings me to my question. Wasn't one able to alter the mood and its results (skill wise at least) with this tool before or am I thinking of a different tool? Its been a long time since I last played so my mind is fuzzy.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Aklyon on January 29, 2011, 10:10:40 pm
That would be Runesmith.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: userpay on January 29, 2011, 11:01:10 pm
Hmm the name doesn't ring a bell, nor is it compatible with .18 anyway, but thanks. Hopefully it'll be updated soon.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Aklyon on January 29, 2011, 11:03:23 pm
Hmm the name doesn't ring a bell, nor is it compatible with .18 anyway, but thanks. Hopefully it'll be updated soon.
Runesmith is waiting on various updated DFHack values, so its really more waiting for stuff to update so stuff can update.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Sutremaine on January 30, 2011, 08:03:59 pm
Is it possible to add material preferences and stats to DT? It'd be useful for picking out which dwarves are suited to military or to making goods. Material preferences make a significant difference at very low and very high levels, and you can't rely on the RNG to give you a skilled immigrant.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Cespinarve on February 02, 2011, 12:05:10 pm
I suppose there's no hope in a Mac version finally surfacing?
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: profit on February 02, 2011, 03:46:39 pm
I suppose there's no hope in a Mac version finally surfacing?
I am fairly certain there has been a mac version for a long time.

* Just looked and the project file does indeed have build information for the mac ->
Code: [Select]
else:macx {
    message(Setting up for OSX)
    HEADERS += ./inc/dfinstanceosx.h
    SOURCES += ./src/dfinstanceosx.cpp
    ICON = hammer.ico
}
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: bremarv on February 03, 2011, 03:43:56 am
I suppose there's no hope in a Mac version finally surfacing?
I am fairly certain there has been a mac version for a long time.

I think the latest dt for mac supports 31.12. I can't remember why theres not support for later versions, but there is a reason.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Cl3v3land on February 04, 2011, 06:27:56 am
i know that this question isnt new but when i try to start dwarf therapist version 6.7 with dwarf fortress 31.18 on wine, i just get the message: "I'm sorry. I'm having trouble connecting to DF. I can't seem to locate the PEB address of the process."
I didn't find anything in this forum to solve this problem. so any ideas??
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Peaceful Slugman on February 08, 2011, 01:34:27 am
DT is a great tool. just two small things.

In the following image my masoncarpenter is really making a barrel, but DT shows him as forging a toy. Game is paused and I "read dwarves" so all info in DT is up to date.
(http://s3.postimage.org/41gxc9n3f/forgetoy.png)

Also, I remember that one time I used DT to enable only carpentry on one dwarf, then DT caused the dwarf to enable all woodworking skills. I don't have any evidence for that, however. I'll see if I can recreate it.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Quietust on February 08, 2011, 01:27:11 pm
The job name errors were reported on DT's bug tracker over 5 months ago (http://code.google.com/p/dwarftherapist/issues/detail?id=276) - presumably, fixing bugs from the old codebase is low priority.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Dragonchampion on February 08, 2011, 01:44:33 pm
Is there any way to make the humans, demons, and etc. I get from using Dfusion able to be seen on Dwarf Therapist? I like my elf slaves, but they get annoying to handle when all I can do to assign jobs is through the game itself.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Argembarger on February 10, 2011, 10:56:35 am
Just tried Dwarf Therapist for the first time ever.

Hopy shit.

I feel just like I felt when I realized how useful managers were.

Thanks for working on this project, this is awesome!
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: pmbg on February 12, 2011, 06:27:05 pm
Hey everyone. So I have done extensive search trying to find a working dwarf therapist version for mac.

So far I have found that there is indeed a working version of Dwarf Therapist for mac. You can find it here: http://code.google.com/r/jofarrell-dwarftherapistosx/ (http://code.google.com/r/jofarrell-dwarftherapistosx/).

However, the problem is that it only works for 4 versions of dwarf fortress.
0.31.11
0.31.10
0.31.12
0.31.08

None of these versions are available on the bay 12 site. They are listed in the older versions archive, but are not downloadable.
Has anyone else had any luck? I have done extensive searching, but I can't find these versions anywhere, or another solution.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Aklyon on February 12, 2011, 07:53:15 pm
wouldn't we be able to use the memory.xml (or something like that, what dt uses to find its stuff with) from the newest version and copy it into your DT folder?
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: pmbg on February 12, 2011, 10:49:06 pm
Maybe it's possible. I'm not sure how to do it, though. Seems to me the easiest way would be to grab hold of one of those older versions. I don't mind playing a slightly outdated version because once my fort gets too big of a population it becomes really difficult to manage without DT.  :(
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: ruanna on February 14, 2011, 05:38:30 am
Yeah, there's a reason why it's not available, I forget what. Legal, or something? It's got to do with the SDL. I think. But it's incredibly annoying that the only DT mac versions are for DF versions that can't be downloaded. Anyway, I FEEL YOUR PAIN, so here, have my copy. Aquifers have been deleted, btw, and the init files are all on my preferred settings.

http://rapidshare.com/files/447857172/df_osx_12_copy.zip
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Neyvn on February 16, 2011, 02:14:57 pm
I know that it only JUST came out, but anyone know the ETA till it can work with .31.19
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Silophant on February 16, 2011, 04:15:40 pm
According to someone in the announcement thread, the game changed too much for the quick and easy way to update DT to work. So it'll be whenever DwarfEngineer gets around to it, it seems.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Mickey Blue on February 16, 2011, 04:38:56 pm
Indeed, its not just updateing it to read the new version, they'd have to all all the different professions.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: LoSboccacc on February 16, 2011, 05:25:24 pm
well, you know what we really need, this http://www.bay12forums.com/smf/index.php?topic=53113.0

go, make your opinion count: http://www.bay12forums.com/smf/index.php?topic=24818.0
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: DwarfEngineer on February 16, 2011, 06:24:53 pm
Working on a release.
I've got windows layout files if people want to try them and report back (Right-click, save as):
Windows - v0.31.19_graphics.ini (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.19_graphics.ini)
Windows - v0.31.19_legacy.ini (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.19_legacy.ini)

And Linux:
Linux - v0.31.19.ini (http://www.dwarftherapist.com/memory_layouts/linux/v0.31.19.ini)

Going to see how bad linux looks then I'll post the release if people are having success.

Thanks,
DE
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Askot Bokbondeler on February 16, 2011, 06:37:25 pm
Working on a release.
I've got windows layout files if people want to try them and report back (Right-click, save as):
Windows - v0.31.19_graphics.ini (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.19_graphics.ini)
Windows - v0.31.19_legacy.ini (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.19_legacy.ini)

Going to see how bad linux looks then I'll post the release if people are having success.

Thanks,
Justin

praise the engineers!
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: DwarfEngineer on February 16, 2011, 07:05:47 pm
I'm looking for (preferably small) save files with dwarves who have the new professions, so if you happen to have/aquire some, please let me know. I'm going to wait to release until I have all of the new professions & labors handled in DT.  In the meantime, please let me know if you have problems with the layout files above.

Thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Mickey Blue on February 16, 2011, 08:27:40 pm
As a DT addict I must say I appreciate the quick work :)
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: StephanReiken on February 16, 2011, 09:36:42 pm
Sorry, I don't dare touch updated DF until DT is updated. I can even stand not using tilesets and such, as long as I have DT to manage professions :D.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: squeakyReaper on February 16, 2011, 09:50:06 pm
Sorry, I don't dare touch updated DF until DT is updated. I can even stand not using tilesets and such, as long as I have DT to manage professions :D.

This.  I actually had to look up how to apply labors and custom professions to Dwarves, as I've ALWAYS had DT to use.  o_O;;
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Sarudak on February 16, 2011, 09:54:10 pm
There's a way to apply custom professions in vanilla???  :o
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Aklyon on February 16, 2011, 09:57:11 pm
There's a way to apply custom professions in vanilla???  :o
Yeah. its in the same screen as the nickname customizer. Been there since 40d, possibly earlier.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: JanusTwoface on February 16, 2011, 09:59:59 pm
IIRC, It's just the profession names. It doesn't actually change the tasks assigned to the dwarf (which is what I use DT for).
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Aklyon on February 16, 2011, 10:02:52 pm
True.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Panthera Leo on February 16, 2011, 10:29:56 pm
I'm looking for (preferably small) save files with dwarves who have the new professions, so if you happen to have/aquire some, please let me know. I'm going to wait to release until I have all of the new professions & labors handled in DT.  In the meantime, please let me know if you have problems with the layout files above.

Thanks.
Hmm ... You could, maybe, just add the following below '[CREATURE:DWARF]' in raw\object\creature_standard.txt ?

Spoiler (click to show/hide)

That should make ever dwarf start with a Legendary+5 in all the new skills.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Sarudak on February 16, 2011, 10:30:35 pm
I don't know how I ever played without dwarf therapist...
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: DwarfEngineer on February 16, 2011, 10:43:13 pm
I'm looking for (preferably small) save files with dwarves who have the new professions, so if you happen to have/aquire some, please let me know. I'm going to wait to release until I have all of the new professions & labors handled in DT.  In the meantime, please let me know if you have problems with the layout files above.

Thanks.
Hmm ... You could, maybe, just add the following below '[CREATURE:DWARF]' in raw\object\creature_standard.txt ?

Spoiler (click to show/hide)

That should make ever dwarf start with a Legendary+5 in all the new skills.

Thanks, I've got what I need.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Thoranius on February 16, 2011, 11:10:02 pm
*Bows before the almighty and only...err...ahem...the new, almighty, and only maintainer of Dwarf Therapist, whose vast skill greatly appeases the growing masses of Dwarf Fortress addicted followers that refuse to play DF without DT to maintain their sanity*

Love the way you react so quickly to new versions...all hail the DwarfEngineer!
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Thoranius on February 16, 2011, 11:12:46 pm
On a side note, did you ever figure out a way to get around that bug that prevented DT from activating the hunting labor on a dwarf and making it behave properly? Or is that something that still has to be turned on inside DF itself?  :D
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Mickey Blue on February 16, 2011, 11:35:40 pm
I don't know how I ever played without dwarf therapist...

I have, but that was before Dwarf Therapist was around, back with Dwarf Manager, but it was the same thing basically (DT is better tehnically and all, but it served the same purpose I mean).  I have never played Dwarf Fortress to any serious degree without some third party manager program (I do hope that the internal management is corrected, or a "toady supported" version is created and coupled with the game.  I believe that without a third party program to manage it DF would become extremely frustrating to play, at least for those of us who tend to micromanage).

-MB
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: DwarfEngineer on February 16, 2011, 11:42:51 pm
On a side note, did you ever figure out a way to get around that bug that prevented DT from activating the hunting labor on a dwarf and making it behave properly? Or is that something that still has to be turned on inside DF itself?  :D

Is this related to the dwarf not realizing he needs new equipment?  If so, it should be a pretty easy fix.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: DwarfEngineer on February 16, 2011, 11:46:32 pm
I would like to get a general opinion.  I have the memory layouts done. I also have professions / skills / and labor assignment done for the new labors, but I haven't had a chance to dig into all of the jobs associated with them.  Would people be interested in an intermediate release knowing that the job column will not be accurate for the new labors?

Otherwise it will take some time to find an embark with bees, setup all of the shearing / spinning / bee keeping, etc workshops needed to figure out what all the new job names are.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Sarudak on February 16, 2011, 11:55:25 pm
Yes. Knowing what their current job is is not a big deal for me. It's already bugged in the sense that it tracks training dwarves and on break dwarves as idle.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: TealThanatos on February 17, 2011, 12:01:12 am
Please do DwarfEngineer.. not knowing current jobs is no big deal, being able to have the ability to see all the active labours on the dwarves at once is really imperitive :)

So please... interim release!!!

lack of DT is the only thing preventing me from playing the new version >_< It really makes the game playable!
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Thoranius on February 17, 2011, 12:10:21 am
I'd be grateful for an intermediary release with the flawed job column, would tide the majority of us over, i'd wager, until you finish tracking down anything you want to track down at your own pace, that way you can avoid burning yourself out by rushing into it.

And on the other topic, I don't believe the original bug was due to equipment issues, it was something about starting the hunting cycle properly. IE, if you turned on hunting in DF itself, everything would start properly, and the new hunter would eventually get around to starting a hunting "cycle". However, if you chose the same dwarf, and enabled the labor with DT, then that dwarf would never start hunting, ever. If I recall correctly, doing so could even prevent future hunting labor toggles through DF ineffective as well. I could be mistaken, but as far as I recall, that was one of the few DT bugs that hung around for a long while. Maybe it became fixed with some of Toadies changes in the ways hunting was triggered or whatnot, but, I've been too paranoid to try and test for sure, just in case I accidentally lock my skilled hunter in "never hunt again" mode, and forcing me to sort through my folder of excessive backup saves.
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Malicus on February 17, 2011, 12:10:21 am
I would like to get a general opinion.  I have the memory layouts done. I also have professions / skills / and labor assignment done for the new labors, but I haven't had a chance to dig into all of the jobs associated with them.  Would people be interested in an intermediate release knowing that the job column will not be accurate for the new labors?

Otherwise it will take some time to find an embark with bees, setup all of the shearing / spinning / bee keeping, etc workshops needed to figure out what all the new job names are.

I currently have a save with a fair number of the new things.  I'll post it in a bit.  ...where SHOULD I post it?
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Panthera Leo on February 17, 2011, 12:15:01 am
I would like to get a general opinion.  I have the memory layouts done. I also have professions / skills / and labor assignment done for the new labors, but I haven't had a chance to dig into all of the jobs associated with them.  Would people be interested in an intermediate release knowing that the job column will not be accurate for the new labors?

Otherwise it will take some time to find an embark with bees, setup all of the shearing / spinning / bee keeping, etc workshops needed to figure out what all the new job names are.

^.^ Normally I'm not a big fan of 'half-finished', but I'd take a "interminably release". (More so considering I never use DT for tracking who is doing what. I just us 'u' key from inside the game.)
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: DwarfEngineer on February 17, 2011, 12:30:19 am
Windows version 0.6.8 Posted (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.8.zip).
Please let me know if you have any problems, especially around the new labors.

Linux version to follow tomorrow most-likely.  (It's getting late here)
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: Panthera Leo on February 17, 2011, 12:42:54 am
Thank you kindly, (sir/mama).
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: Malicus on February 17, 2011, 12:55:53 am
Okay, I uploaded that save to DFFD, here (http://dffd.wimbli.com/file.php?id=3805).  You should be able to shear some sheep and spin the wool at the farmer's workshop on the surface.  There are also hives there, and you can build one to have a dwarf split a hive into it.  You'd have to wait for gathering to be possible, though (and I suppose you should probably turn gathering OFF on them until you're ready to see that).  On -4, where most of the workshops are, you should be able to mill rock nuts to paste at the quern, press liquid from that paste and press honey from a honeycomb (there's one sitting on the surface right now) at the screw press, make various new things at the craftdwarf's workshop (you may have to assign a labor for some of this stuff) (and despite having wax, wax crafts don't seem to work, as the wax seems to just vanish when someone picks it up from the stockpile to work with it), and gather/work clay and glaze things at the kiln.  I -should- have what I need to make mead at the still, but it doesn't work.  Perhaps that's also bugged?  This doesn't include all the variations, of course, but I guess it could help.

...you can also see how much the metal situation has changed.
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: Malorn on February 17, 2011, 01:41:17 am
For the record, amazing work to get this done so quickly.  :)
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: Pwnzerfaust on February 17, 2011, 02:25:04 am
Windows version 0.6.8 Posted (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.8.zip).
Please let me know if you have any problems, especially around the new labors.

Linux version to follow tomorrow most-likely.  (It's getting late here)

You're the best. <3
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Girlinhat on February 17, 2011, 03:26:04 am
There's a way to apply custom professions in vanilla???  :o
Like profession names, I assume, not an entirely new method of labor.
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: RiderofDark on February 17, 2011, 04:09:44 am
Yay! Good stuff! :)
Title: Re: Dwarf Therapist (LATEST 0.6.7 11/30/10 see first post)
Post by: Shurhaian on February 17, 2011, 05:37:19 am
There's a way to apply custom professions in vanilla???  :o
Like profession names, I assume, not an entirely new method of labor.

IIRC, DwarfTherapist "custom professions" include the custom name of that profession, and a bunch of associated(but vanilla) labors. So you can have a custom profession of "Hauler" which just has the hauling jobs enabled, for instance. It's not any custom labors - just an arrangement of the ones that already exist, with a convenient label.

ETA: Many, many thanks for getting a new release out there so fast! I wanted to see what the new version was like, but dreaded the thought of labor management. I thought it might be a few days at least before DT was up and running for .19. It's nice to be wrong about that sort of thing!
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: jnecros on February 17, 2011, 08:43:34 am
I just started using this program about a year ago, I started DF in 2007..man I am soo addicted to dwarf therapist I can't play without it now, don't know how I managed to play that long without it..

Thanks for fast the update
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: Malorn on February 17, 2011, 09:14:56 am
An odd (and very minor) bug I've noticed after playing Dwarf Fortress all night.  The new DT works very nicely, but many dwarves have 'unknown activity' when I mouseover to see what they are presently doing.  What is really odd is that beekeeping is reported perfectly.  The case I best remember was one of my haulers carrying wood.

Doesn't really effect me, since I don't use that, but interesting.  Happy DFing, love the scarce metal!
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: Dutchling on February 17, 2011, 11:34:54 am
You're the best!
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: StephanReiken on February 17, 2011, 06:35:49 pm
Dwarf Engineering at its finest.
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: Cheater on February 17, 2011, 07:51:15 pm
It's a shame it's the first time I hear about DT. This would have been useful when I played DF in Windows.
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: DwarfEngineer on February 17, 2011, 08:07:24 pm
Okay, I uploaded that save to DFFD, here (http://dffd.wimbli.com/file.php?id=3805).  You should be able to shear some sheep and spin the wool at the farmer's workshop on the surface.  There are also hives there, and you can build one to have a dwarf split a hive into it.  You'd have to wait for gathering to be possible, though (and I suppose you should probably turn gathering OFF on them until you're ready to see that).  On -4, where most of the workshops are, you should be able to mill rock nuts to paste at the quern, press liquid from that paste and press honey from a honeycomb (there's one sitting on the surface right now) at the screw press, make various new things at the craftdwarf's workshop (you may have to assign a labor for some of this stuff) (and despite having wax, wax crafts don't seem to work, as the wax seems to just vanish when someone picks it up from the stockpile to work with it), and gather/work clay and glaze things at the kiln.  I -should- have what I need to make mead at the still, but it doesn't work.  Perhaps that's also bugged?  This doesn't include all the variations, of course, but I guess it could help.

...you can also see how much the metal situation has changed.

Thanks very much for the savefile.  Because of it, I've been able to find most of the jobs, but it seems like a few are still bugged.  If people are playing and happen to notice Unknown Job (xxx) in the current job column, please let me know what the dwarf is doing and what the number is.  I'm looking for the following:

Code: [Select]
216 = "Shear Creature"
217 = "Spin Thread"
218 = "Unknown"
219 = "Unknown"
220 = "Unknown"
221 = "Unknown"
222 = "Collect Clay"
223 = "Install Colony In Hive"
224 = "Collect Hive Products"

I've also updated the Ubuntu package repositories for linux, and another windows update will be coming eventually.  I'm tempted to wait until I find the rest of these jobs and Toady releases his first bugfix for 31.19.

Thanks again,
DE
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: 0x517A5D on February 17, 2011, 09:02:08 pm
218 = 'Pen/Pasture Large Animal'
219 = 'Pen/Pasture Small Animal'
220 = currently unused
221 = 'Forge Tool'


From code analysis, I think that the squad_vector is 0x01718758 for .19 graphics.

Memory_layouts/windows/v0.31.19_graphics.ini has 0x01718768.

Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: Malicus on February 17, 2011, 10:48:11 pm
From code analysis, I think that the squad_vector is 0x01718758 for .19 graphics.

Memory_layouts/windows/v0.31.19_graphics.ini has 0x01718768.

By way of grouping by squads using both vectors, what you said seems to be true.
Title: Re: Dwarf Therapist (LATEST 0.6.8 2/16/11 see first post)
Post by: DwarfEngineer on February 18, 2011, 12:09:50 am
218 = 'Pen/Pasture Large Animal'
219 = 'Pen/Pasture Small Animal'
220 = currently unused
221 = 'Forge Tool'


From code analysis, I think that the squad_vector is 0x01718758 for .19 graphics.

Memory_layouts/windows/v0.31.19_graphics.ini has 0x01718768.

Thanks!

Windows version of 0.6.9 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.9.zip) posted.  The linux version is already uploaded.
Changelog:
Code: [Select]
MAJOR CHANGES:
 * Support for most new job types (with icons!)
 * Support for automatic downloading of layout files.
(Can be disabled by disabling the version check in preferences)
 * This is the first version of Dwarf Therapist that reads RAW files, so please
post any issues found

 BUG FIXES:
 * Fixed issue 313 - Stuck loading squads on older versions of Dwarf Fortress
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: noob on February 18, 2011, 02:00:56 am
i got a guy with unknown profession 104 = beekeeping. his stats are frozen so i cant change them

and theres a new skill military tactics that registers as unknown in the civilian skills.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: ral on February 18, 2011, 11:52:07 am
Woohoo! Thanks for the work on this! I'm totally dependent on this utility.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: squeakyReaper on February 18, 2011, 12:12:51 pm
Construct (wooden?) Toy and Construct Wooden Barrel's job IDs are mixed around.  I think it was something like Code 121 or somesuch?
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: fluffhead on February 22, 2011, 01:14:34 pm
so I've looked, but can't find it yet, does anybody have a link to common skill builds?  Such as what dwarfs have what skills equipped.

such as I have a farmer/brewer w/ food hauling active.
i have a block(mason/engraver) w/ stone hauling on
I have zombies and some others, 

basically I'm wondering what are common builds, and what skills (with who hauls what) are typical?  I'm sure it's documented somewhere, just not sure where
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: squeakyReaper on February 22, 2011, 01:17:37 pm
Look on here, Fluffhead. (http://df.magmawiki.com/index.php/DF2010:Starting_build_design#Sample_starting_builds)
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: fluffhead on February 22, 2011, 02:02:25 pm
I appreciate the link, but I'm still not seeing what I'm looking for, I'm probaby not wording my searches correctly.  I'm looking for a typical breakdown on how many dwarfs to assign to each profession, not when starting a fort necessarially, but at say 50, or 100 dwarfs.  How many are assigned as miners , how many as farmers, how many as haulers, how many as craftsdwarfs.  (I'm using the complete and utterly newb tutorial for dwarf fortress and they started on this a bit, but, I'm a bit confused as who needs hauling enabled and who doesn't, how many to assign to military and how many to assign as haulers etc).  I"ve already got about 63 dwarfs in my fortress so I'm just looking for a potentially better management structure.  It's already improved 100% with the implementation of this system, with specific generic professions.  (farmers/planters and beer brewing with only plant hauling enabled)  (Masons/stone detailing, with no hauling enabled) about 1/10th of my population as haulers only and about 1/8th of my fortress are military only doing drills constantly.  I'll post my exact numbers/breakdowns shortly for better feedback.

Right now I have

Such as in a 100 dwarf fort, typically there are xxx number of dwarfs with mining
4 miners (
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Quietust on February 22, 2011, 02:04:36 pm
Construct (wooden?) Toy and Construct Wooden Barrel's job IDs are mixed around.  I think it was something like Code 121 or somesuch?
I've already reported this myself several times. Here it is again:
The job name errors were reported on DT's bug tracker over 5 months ago (http://code.google.com/p/dwarftherapist/issues/detail?id=276) - presumably, fixing bugs from the old codebase is low priority.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: squeakyReaper on February 22, 2011, 02:11:14 pm
Sorry, I'll attempt to keep my mouth shut more often.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: fluffhead on February 22, 2011, 02:28:53 pm
no worries, I'm sure it's not the perfect place to ask, but I figured it wasn't a bad place to ask since it is sortof related to Dwarf Therapist. 

total of 61 dwarfs -

6 brickies (masonry, stone detailing,stone hauling)
2 - children
5 - chippers (carpentry/crossbow/wood cutting, (2 with wood hauling on).
6 - crafters (leatherworking, wood crafting, stonecrafting, bone carving, glassmaking, weaving, clothesmaking, strand extraction, pottery, glazing, wax working)
3 - diggers (mining)
3 - farmers (food hauling, farming(fields))
2 - foodies ((brewing, cooking)
9 - misc (butchery, tanning, dying, soap maker, wood burning, potash making, lye making, milling, plant gathering, plant processing, cheese making, milking, shearing, spinning, pressing, bee keeping)
12 - zombies (hauling only)
1 - animal dwarf (animal tanning, animal care, hunting, trapping, small animal dissector, fishing, fish dissector, fish cleaning)
5 - military (only military, doing training)
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Quietust on February 23, 2011, 07:19:02 pm
Sorry, I'll attempt to keep my mouth shut more often.
I wasn't whining at you - I was whining at whoever hasn't gotten around to fixing that bug yet in DT.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Baron Of Hell on February 26, 2011, 02:11:12 pm
Thanks, thinking about getting back into DF and I need this to keep track of things. I can never start a new game unless this is also updated to work with it.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: blueocean43 on March 04, 2011, 08:22:36 pm
Hi everyone,

Sorry to ask stupid questions, but I am a total linux newb trying to install the latest linux (maverick) version of DT.
So, uh... can anyone help me out as to how? I haven't got the foggiest idea where to start.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: MC Dirty on March 05, 2011, 03:28:47 am
Don't mind me, just posting to watch.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Moleyzz on March 06, 2011, 08:09:32 am
Any way of getting this to work with 0.31.20 yet? tried fiddling myself, but cant seem to crack it
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Jeoshua on March 06, 2011, 09:18:22 am
Unless you understand the checksums and memory offsets, I wouldn't hold your breath about cracking it yourself.  Rest assured a crack squad of dwarven technicians are waking up around the world and working on this problem AS WE SPEAK... right?!
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: luisantonioa on March 06, 2011, 10:35:45 am
Got this so far.. missing the dwarf race index and squad vector though..

[info]
checksum=0x4d734fb5
version_name=v0.31.20 (graphics)
complete=false

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e04c8
dwarf_race_index=0x0
squad_vector=0x0
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: FireFoxx80 on March 06, 2011, 10:40:26 am
How did you get the creature vector? When I scanned I got three values (none of them 016e04c8).

I suspect with a bit of knowledge sharing, we can get the values quicker in the future :)
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Moleyzz on March 06, 2011, 10:44:13 am
missing the dwarf race index and squad vector though..

Thats where i got stuck aswell..
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: luisantonioa on March 06, 2011, 10:52:03 am
Well there was a bunch of 6 of them

creature_vector = 0x0f323c2c (uncorrected:0x102d3c2c)
creature_vector = 0x0f323c30 (uncorrected:0x102d3c30)
creature_vector = 0x016e0478 (uncorrected:0x02690478)
creature_vector = 0x016e047c (uncorrected:0x0269047c)
creature_vector = 0x03f25a98 (uncorrected:0x04ed5a98)
creature_vector = 0x016e04c8 (uncorrected:0x026904c8)

but the auto fill button used the last one... neway the main problem is the dwarf race index.. as that leads to all the dwarfs showing up..
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: FireFoxx80 on March 06, 2011, 10:54:56 am
Weird, I got the first two 016's, and the 03f, but not the others.

(autofill?)
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: luisantonioa on March 06, 2011, 10:58:22 am
Sorry the 'create new layout' button..
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Chattox on March 06, 2011, 11:37:27 am
How goes mapping the new version? I'm not nagging, as I can get along without it but it's a struggle :P Is mapping new versions complicated?
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Krinogen on March 06, 2011, 01:48:53 pm
I'm refreshing the page every 5 minutes :/
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Moleyzz on March 06, 2011, 01:53:31 pm
I'm refreshing the page every 5 minutes :/
Same here, although, am now playing the "old fashion way" kind of back into the habit of cracking the whip again.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Carcanken on March 06, 2011, 01:55:08 pm
Its amazing how almost the mod is like, madatory to be able to play DF.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Tengu on March 06, 2011, 02:37:29 pm
This work for me (Windows SDL version):

[info]
checksum=0x4d734fb5
version_name=v0.31.20 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: LoSboccacc on March 06, 2011, 02:44:23 pm
This work for me (Windows SDL version):

[info]
checksum=0x4d734fb5
version_name=v0.31.20 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758

how did you found the race index? what you have to search in the address finder?
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Tengu on March 06, 2011, 02:51:41 pm
I ran the Therapist with the --trace option and found out from the logs that the race index to expect was probably 220 instead of 200. I set that in the game_data.ini and the Therapist memory scan found the correct address without problems.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: 0x517A5D on March 06, 2011, 02:55:18 pm
This work for me (Windows SDL version):

[info]
checksum=0x4d734fb5
version_name=v0.31.20 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758
I can confirm these vectors.  My search tool independently found the same addresses.

I don't have any idea if offsets have changed.  I'm still working on probing those.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Tatterdemalian on March 06, 2011, 02:56:24 pm
This work for me (Windows SDL version):

[info]
checksum=0x4d734fb5
version_name=v0.31.20 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758

how did you found the race index? what you have to search in the address finder?

Didn't work for me, maybe because I'm using Legacy instead of Graphics... the checksums are the same, though. Here's the creature_vector values my scan came up with:

creature_vector = 0x016e04c8 (uncorrected:0x023d04c8)
creature_vector = 0x016e0478 (uncorrected:0x023d0478)
creature_vector = 0x016e047c (uncorrected:0x023d047c)
creature_vector = 0x0a45badf (uncorrected:0x0b14badf)
creature_vector = 0x0e9a69db (uncorrected:0x0f6969db)
creature_vector = 0x15855283 (uncorrected:0x16545283)
creature_vector = 0x097ecbf3 (uncorrected:0x0a4dcbf3)

If enough people test this with enough systems, we may be able to narrow it down to the correct one... so far, the three consistent ones are 0x016e04c8, 0x016e0478, and 0x016e047c.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Moleyzz on March 06, 2011, 02:58:38 pm
This work for me (Windows SDL version):

[info]
checksum=0x4d734fb5
version_name=v0.31.20 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758

Confirmed, worked for me, nice one!
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: parlor_tricks on March 06, 2011, 03:02:59 pm
Got this so far.. missing the dwarf race index and squad vector though..

[info]
checksum=0x4d734fb5
version_name=v0.31.20 (graphics)
complete=false

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e04c8
dwarf_race_index=0x0
squad_vector=0x0

Confirming that this portion works.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: 0x517A5D on March 06, 2011, 03:10:04 pm
This work for me (Windows SDL version):

Didn't work for me, maybe because I'm using Legacy instead of Graphics...
Right.  Different executables means different offsets.

Quote
the checksums are the same, though.

Unless both programs finished compiling in the same second, the checksums won't be the same.  We use the linker timestamp field as a "checksum" to avoid problems with mods that permanently patch the executable.

My tool doesn't spit the checksum out yet, but I got 0x4D72F10D by manual inspection.  (It's 8 bytes after the "PE" signature in the EXE header.)

Quote
Here's the creature_vector values my scan came up with:

creature_vector = 0x016e04c8 (uncorrected:0x023d04c8)
creature_vector = 0x016e0478 (uncorrected:0x023d0478)
creature_vector = 0x016e047c (uncorrected:0x023d047c)
creature_vector = 0x0a45badf (uncorrected:0x0b14badf)
creature_vector = 0x0e9a69db (uncorrected:0x0f6969db)
creature_vector = 0x15855283 (uncorrected:0x16545283)
creature_vector = 0x097ecbf3 (uncorrected:0x0a4dcbf3)

If enough people test this with enough systems, we may be able to narrow it down to the correct one... so far, the three consistent ones are 0x016e04c8, 0x016e0478, and 0x016e047c.
A vector cannot end in anything but 0, 4, 8, or C.  So most of those fail the eyeball test.

My search tool got these:

language_vector          = ?
translation_vector       = ?
creature_vector          = 0x017B2D00
dwarf_race_index         = 0x015B8248
squad_vector             = ?

So I'm getting a different answer for .20 legacy creature_vector than anyone else is.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Tatterdemalian on March 06, 2011, 03:18:22 pm
Right.  Different executables means different offsets.

Unless both programs finished compiling in the same second, the checksums won't be the same.  We use the linker timestamp field as a "checksum" to avoid problems with mods that permanently patch the executable.

My tool doesn't spit the checksum out yet, but I got 0x4D72F10D by manual inspection.  (It's 8 bytes after the "PE" signature in the EXE header.)

We may be referring to different checksums... this is the "version recognition checksum" that DT returns if it can't connect to the Dwarf Fortress instance currently running. The one I got was 0x4d734fb5, the same as the people using the graphics version have been using, and DT wouldn't be able to connect if it wasn't the correct checksum.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Tengu on March 06, 2011, 03:22:30 pm
My theory is that DF creates a creature vector for each of the dwarves. In this case the address to use would be the address of the first vector. That probably is the lowest of the addresses,  0x016e0478 in this case. I did some testing, using the other creature_vector addresses and keeping the others unchanged. This otherwise works but some of the dwarves are not displayed. I take this as circumstantial evidence supporting my theory.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: 0x517A5D on March 06, 2011, 03:36:53 pm
We may be referring to different checksums... this is the "version recognition checksum" that DT returns if it can't connect to the Dwarf Fortress instance currently running. The one I got was 0x4d734fb5, the same as the people using the graphics version have been using, and DT wouldn't be able to connect if it wasn't the correct checksum.
No, same checksum.
.20 SDL = 4D734FB5 = Sun Mar  6 09:11:17 UTC 2011
.20 legacy = 4D72F10D = Sun Mar  6 02:27:25 UTC 2011

Do you possibly have both the SDL and legacy executables running at the same time?  Check via Ctrl-Alt-Delete.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: peterix on March 06, 2011, 03:38:19 pm
My theory is that DF creates a creature vector for each of the dwarves. In this case the address to use would be the address of the first vector. That probably is the lowest of the addresses,  0x016e0478 in this case. I did some testing, using the other creature_vector addresses and keeping the others unchanged. This otherwise works but some of the dwarves are not displayed. I take this as circumstantial evidence supporting my theory.
No. There are only three real creature vectors that contain dwarves after embark. Rest can't be traced back to stable addresses properly, so it's probably shadows remaining after reallocations... And then there's the fourth vector that contains creatures under the active cursor.

Code: [Select]
0x1877e88 -- creature under cursor
vectors (subtract 4 to get DT-friendly vectors):
0x16e048c
0x16e047c -- I use this one in dfhack
0x16e04cc
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Tengu on March 06, 2011, 03:45:14 pm
My theory is that DF creates a creature vector for each of the dwarves. In this case the address to use would be the address of the first vector. That probably is the lowest of the addresses,  0x016e0478 in this case. I did some testing, using the other creature_vector addresses and keeping the others unchanged. This otherwise works but some of the dwarves are not displayed. I take this as circumstantial evidence supporting my theory.
No. There are only three real creature vectors that contain dwarves after embark. Rest can't be traced back to stable addresses properly, so it's probably shadows remaining after reallocations... And then there's the fourth vector that contains creatures under the active cursor.

Code: [Select]
0x1877e88 -- creature under cursor
vectors (subtract 4 to get DT-friendly vectors):
0x16e048c
0x16e047c -- I use this one in dfhack
0x16e04cc

Oh. Then I just happened to stumble upon partially intact vectors when tinkering with the incorrect addresses. Thanks for the information.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Tatterdemalian on March 06, 2011, 03:53:32 pm
No, same checksum.
.20 SDL = 4D734FB5 = Sun Mar  6 09:11:17 UTC 2011
.20 legacy = 4D72F10D = Sun Mar  6 02:27:25 UTC 2011

Do you possibly have both the SDL and legacy executables running at the same time?  Check via Ctrl-Alt-Delete.
Nope, just Dwarf Fortress.exe and DwarfTherapist.exe. I guess I must have downloaded the graphics version by mistake.

That said, none of the addresses posted so far have made even a single dwarf appear in my list. I'm going to try changing the expected_dwarf_race to 220 as one of the posters suggested, and see if that works any better.

EDIT: Actually, I think I'll redo the whole thing using v0.31.19_graphics.ini instead of v0.31.19_legacy.ini as the template. That's almost certainly the problem.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: DwarfEngineer on March 06, 2011, 04:09:24 pm
New layouts for linux and windows have been posted online.  If you are using Dwarf Therapist 0.6.9, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.20, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Tatterdemalian on March 06, 2011, 04:14:14 pm
Man, I suck at this. Thanks, DwarfEngineer!
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Carcanken on March 06, 2011, 04:45:54 pm
New layouts for linux and windows have been posted online.  If you are using Dwarf Therapist 0.6.9, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.20, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:
  • Windows SDL (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.20_graphics.ini)
  • Windows Legacy (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.20_legacy.ini)
  • Linux (http://www.dwarftherapist.com/memory_layouts/linux/v0.31.20.ini)


Yay! I can finnally play .20 now! :D Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: DwarfEngineer on March 06, 2011, 04:51:52 pm
Yay! I can finnally play .20 now! :D Thanks!

Sorry it took so long.  Toady always has to release in the morning when I'm hungover and haven't had anything to drink yet.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: arkhometha on March 06, 2011, 05:14:28 pm
Yeey! Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Aklyon on March 06, 2011, 06:18:38 pm
Yay! I can finnally play .20 now! :D Thanks!

Sorry it took so long.  Toady always has to release in the morning when I'm hungover and haven't had anything to drink yet.
Hehe. But Thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Jiri Petru on March 06, 2011, 06:36:26 pm
Woo! That was faster than I've expected. Thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: seanb on March 06, 2011, 07:03:35 pm
you should update the main post letting people know that .69 will work with 31.20
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: LucasUP on March 06, 2011, 09:30:16 pm
Does this work for version 31.21 yet?
Its going to be out soon.

Spoiler (click to show/hide)
It's out, and it does. Good show.  8)

Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: arkhometha on March 06, 2011, 10:49:28 pm
Thanks a lot!
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: luisantonioa on March 06, 2011, 11:53:08 pm
31.21 offsets are the same as 31.20.. just copy it over to a new file with the new checksum and version


[info]
checksum=0x4d743da7
version_name=v0.31.21 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: ral on March 07, 2011, 12:42:56 am
Thanks. That worked for me in 21
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: JujuBubu on March 07, 2011, 04:43:59 am
Yai it works.

I just updated from .19 to .21 and got zerged by about 25 migrants.

And by Armok the Therapist worked and my poor heart was relieved
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Devstorm on March 07, 2011, 09:06:42 am
I can't get Therapist to work for me in .21. I don't know what to change where to make it happen. Guess I'll just keep checking back to see if someone's had time to update Therapist.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: DwarfEngineer on March 07, 2011, 09:39:49 am
I can't get Therapist to work for me in .21. I don't know what to change where to make it happen. Guess I'll just keep checking back to see if someone's had time to update Therapist.

I'll post official files later this afternoon.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: djchrisblue on March 07, 2011, 01:24:27 pm
31.21 offsets are the same as 31.20.. just copy it over to a new file with the new checksum and version


[info]
checksum=0x4d743da7
version_name=v0.31.21 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758


I tried making this file and changing this information but it doesn't seem to be working. (I don't use any graphical version of DF would that make a difference?) Any help anyone can offer would be great, managing dwarves after about 10 doesn't work without DT (:

peace
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: utuki on March 07, 2011, 01:51:15 pm
31.21 offsets are the same as 31.20.. just copy it over to a new file with the new checksum and version


[info]
checksum=0x4d743da7
version_name=v0.31.21 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758


I tried making this file and changing this information but it doesn't seem to be working. (I don't use any graphical version of DF would that make a difference?) Any help anyone can offer would be great, managing dwarves after about 10 doesn't work without DT (:

peace

rename or copy v0.31.20_graphics.ini to v0.31.21_graphics.ini and replace first 2 sections with that. graphics(ascii graphics...) version is default one.

Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: TowerWizard on March 07, 2011, 02:38:00 pm
Dwarf Therapist is awesome! Keep up the good work!
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Jororked Forgefire on March 07, 2011, 03:29:51 pm
31.21 offsets are the same as 31.20.. just copy it over to a new file with the new checksum and version


[info]
checksum=0x4d743da7
version_name=v0.31.21 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758


I tried making this file and changing this information but it doesn't seem to be working. (I don't use any graphical version of DF would that make a difference?) Any help anyone can offer would be great, managing dwarves after about 10 doesn't work without DT (:

peace

rename or copy v0.31.20_graphics.ini to v0.31.21_graphics.ini and replace first 2 sections with that. graphics(ascii graphics...) version is default one.

Works great, thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Rude on March 07, 2011, 04:43:04 pm
31.21 offsets are the same as 31.20.. just copy it over to a new file with the new checksum and version

[info]
checksum=0x4d743da7
version_name=v0.31.21 (graphics)
complete=true

[addresses]
translation_vector=0x01724250
language_vector=0x01724230
creature_vector=0x016e0478
dwarf_race_index=0x0150cc28
squad_vector=0x0171e758


rename or copy v0.31.20_graphics.ini to v0.31.21_graphics.ini and replace first 2 sections with that. graphics(ascii graphics...) version is default one.
Thanks. I've been looking for this for 2 days now.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: DwarfEngineer on March 07, 2011, 05:40:18 pm
New layouts for linux and windows have been posted online.  If you are using Dwarf Therapist 0.6.9, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.20, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:
  • Windows SDL (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.20_graphics.ini)
  • Windows Legacy (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.20_legacy.ini)
  • Linux (http://www.dwarftherapist.com/memory_layouts/linux/v0.31.20.ini)

New files are posted for 31.21.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Lysabild on March 07, 2011, 05:48:29 pm
New layouts for linux and windows have been posted online.  If you are using Dwarf Therapist 0.6.9, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.20, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:
  • Windows SDL (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.20_graphics.ini)
  • Windows Legacy (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.20_legacy.ini)
  • Linux (http://www.dwarftherapist.com/memory_layouts/linux/v0.31.20.ini)

New files are posted for 31.21.

Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Devstorm on March 07, 2011, 05:48:52 pm
Yes, thank you much!
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: notfood on March 07, 2011, 07:42:08 pm
Link directs to http://www.dwarftherapist.com/memory_layouts/linux/v0.31.20.ini

Changing the checksum doesn't work for the Linux version.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: GhostDwemer on March 07, 2011, 07:45:12 pm
Auto downloads of new memory layouts? Sweet! Thanks to all the hackers, geeks and nerds who make this community as cool and weird as the game itself.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: DwarfEngineer on March 07, 2011, 08:09:23 pm
Link directs to http://www.dwarftherapist.com/memory_layouts/linux/v0.31.20.ini

Changing the checksum doesn't work for the Linux version.
You can delete your local version of v0.31.21.ini and DT should download it automatically.  Otherwise, I've uploaded them here as well:
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: notfood on March 07, 2011, 09:57:54 pm
Thanks, it works perfectly.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: ChristmasDwarf on March 08, 2011, 05:32:58 am
Thank you.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: EvilGrin on March 08, 2011, 10:10:58 am
I noted an error when using the latest version of DT with my fort (running df 31.20). One on my dwarfs comes up with an error 'unknown proffesion 105' which appears to correspond ingame to wax working?
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Niveras on March 08, 2011, 02:20:46 pm
That also appears to be true of Beekeeping. Although wax working and beekeeping are listed in Therapist, and Therapist correctly highlights the box for those skills, the dwarf's job title is listed as Unknown Profession. In addition, it appears that Therapist is unable to modify the profession assignments for dwarves with these unknown professions (although you can properly assign beekeeping/waxworking/etc to other dwarves, as long as they did not migrate in assigned with those professions). You can change their custom profession name via Therapist, but not their assigned professions.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Jororked Forgefire on March 08, 2011, 04:17:46 pm
That also appears to be true of Beekeeping. Although wax working and beekeeping are listed in Therapist, and Therapist correctly highlights the box for those skills, the dwarf's job title is listed as Unknown Profession. In addition, it appears that Therapist is unable to modify the profession assignments for dwarves with these unknown professions (although you can properly assign beekeeping/waxworking/etc to other dwarves, as long as they did not migrate in assigned with those professions). You can change their custom profession name via Therapist, but not their assigned professions.

Confirming this problem.  Immigrants with the newer skills seem to trip up the program a bit.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: ral on March 09, 2011, 03:45:38 pm
I can't seem to get filter scripts to work. Are they working for anyone else? If so please post a simple example I can test.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Seriyu on March 10, 2011, 03:52:48 am
Confirming the "new skills bork therapist" bug. I actually couldn't switch cooking or any labors period on them specifically.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: MonkeyHead on March 10, 2011, 12:32:17 pm
Hmm, this "not able to assign jobs to beekepers" thing is annoying. any ideas anyone as to how solve it?
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: GhostDwemer on March 10, 2011, 07:58:05 pm
Hmm, this "not able to assign jobs to beekepers" thing is annoying. any ideas anyone as to how solve it?

Go into etc, open game_data, find the [professions] section, change the next line to

Code: [Select]
size=105
at the end of the section, add this:

Code: [Select]
105/name = Beekeeper
105/id = 104

Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: GhostDwemer on March 10, 2011, 10:17:26 pm
Didn't see that waxworking was also missing,

put this after the [professions] tag:
Code: [Select]
size=106
and this at the end

Code: [Select]
105/name = Beekeeper
105/id = 104

106/name = Waxworker
106/id = 105

but you get the idea, right? When you find a dwarf who has an unknown profession, mouse over his icon and it will say something like "unknown profession ID 106" or whatever, just look at his profession name, put that and the id at the end of the section, and update the size.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Jeoshua on March 10, 2011, 10:31:28 pm
Thanks for that GhostDwemer. Seems to work and was easier to fix than I thought.

Also, Morrowind right ;)
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: GhostDwemer on March 10, 2011, 11:40:26 pm
Quote from: Jeoshua link=topic=66525.msg2064165#msg2064165 date=1299814288
Also, Morrowind right ;)
[/quote
Hehe, don't you hate it when all the dwarf civilizations die out before the game starts? The Elder Scrolls series is pretty fun, I hear they are coming out with a new Nord based one next year.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: MonkeyHead on March 11, 2011, 11:44:56 am
Yea, thanks muchly. a lot easier than i worried it might be.

EDIT...

FYI, that fix now allows me to write and read changes to assigned labours for beekeepers and waxworkers, but doest display thier skills.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Pukako on March 12, 2011, 02:50:08 am
Thanks too - delving into data files has always ended badly before.

Anyway, can assign tasks, but have no idea what the 'unknown' skill is - used to be strategy, now can be any of the bee related tasks? Oh, well.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: gu1dry on March 12, 2011, 02:58:10 am
I just built Dwarf Therapist from the latest code on Google Code project page & thought I share, link (http://www.mediafire.com/?ayy79y2f0rwvay9). If people would like me to continue sharing, just let me know & I will do.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: FGK dwarf on March 12, 2011, 10:28:04 am
Yea, thanks muchly. a lot easier than i worried it might be.

EDIT...

FYI, that fix now allows me to write and read changes to assigned labours for beekeepers and waxworkers, but doest display thier skills.

If you change 73/skill = -1 to 73/skill = 115 in the [labours] list, and add a new line to [skill_names] as follows: 115 = Wax Worker, it will correctly identify the Wax Worker skill when you mouse-over the dwarf's name. I haven't got it to display the little blob in the table correctly though.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Dwarfnorris101 on March 12, 2011, 04:38:21 pm
using 6.9 got from the new lazy newb pack...all my dorfs are listed as first name unknownunknown ..way to fix this?
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: Ghills on March 12, 2011, 08:53:41 pm
I just built Dwarf Therapist from the latest code on Google Code project page & thought I share, link (http://www.mediafire.com/?ayy79y2f0rwvay9). If people would like me to continue sharing, just let me know & I will do.

Thanks! If you would keep doing that it would be great.
Title: Re: Dwarf Therapist (LATEST 0.6.10 2/17/11 see first post)
Post by: DwarfEngineer on March 15, 2011, 06:44:37 pm
Dwarf Therapist 0.6.10 released with official 0.31.21 support (fixes Beekeeper/Waxworker issues)
See first page.

Ubuntu packages are building and should be posted shortly.
Debian packages are not currently building due to keystore issues between the two distros.
Title: Re: Dwarf Therapist (LATEST 0.6.9 2/17/11 see first post)
Post by: tolkafox on March 15, 2011, 08:50:41 pm
using 6.9 got from the new lazy newb pack...all my dorfs are listed as first name unknownunknown ..way to fix this?

Did you try to load DT before you had a fortress up? I got this all the time before I disabled auto load on startup. If so the solution is simple: don't do that.

Title: Re: Dwarf Therapist (LATEST 0.6.10 2/17/11 see first post)
Post by: Newbunkle on March 17, 2011, 09:13:55 am
Dwarf Therapist 0.6.10 released with official 0.31.21 support (fixes Beekeeper/Waxworker issues)
See first page.

Ubuntu packages are building and should be posted shortly.
Debian packages are not currently building due to keystore issues between the two distros.

Yay! Thanks!!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: forsaken1111 on March 17, 2011, 11:04:38 am
When will this be updated for 0.31.22?!

 ;D
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on March 18, 2011, 11:40:16 am
When will this be updated for 0.31.22?!

 ;D

LOL!!!!

Maybe after 0.31.22 comes out, but that is just a guess of course =p
Title: Re: Dwarf Therapist (LATEST 0.6.10 2/17/11 see first post)
Post by: vityav on March 19, 2011, 04:37:03 pm
Dwarf Therapist 0.6.10 released with official 0.31.21 support (fixes Beekeeper/Waxworker issues)
See first page.

Ubuntu packages are building and should be posted shortly.
Debian packages are not currently building due to keystore issues between the two distros.

I feel like I'm missing something...
The latest linux alpha is 0.6.4, but the latest ubuntu release is 0.6.10. Is there a way to get a non-deb 0.6.10? Compiling freaks out about ui_scannerdialog.h (I see no make instruction for it). My fedora installation will thank you :)

Edit: If anybody comes across this in the future, the issue seemed to be using qmake from a qt3 package instead of qt4.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: forsaken1111 on March 19, 2011, 05:14:57 pm
When will this be updated for 0.31.22?!

 ;D

LOL!!!!

Maybe after 0.31.22 comes out, but that is just a guess of course =p
I had to do it, it was too quiet in here
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: MonkeyHead on March 20, 2011, 06:34:13 am
Hmm...

AFAIR in older forms of therapist, the fortress gaurd was filtered under the sqaud option like any other body of troops. This no longer seems to be the case. Can anyone else confirm this or is the issue with an action on my behalf?

 ???

EDIT: Nevermind. After reloading DF therapist sorted them into a squad correctly.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: utuki on March 22, 2011, 02:06:30 pm
Hmm...

AFAIR in older forms of therapist, the fortress gaurd was filtered under the sqaud option like any other body of troops. This no longer seems to be the case. Can anyone else confirm this or is the issue with an action on my behalf?

 ???

EDIT: Nevermind. After reloading DF therapist sorted them into a squad correctly.

same, 0.6.10 stopped recognising squads, fixed by reloading df.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Neowulf on March 23, 2011, 05:01:59 pm
Hmm...

AFAIR in older forms of therapist, the fortress gaurd was filtered under the sqaud option like any other body of troops. This no longer seems to be the case. Can anyone else confirm this or is the issue with an action on my behalf?

 ???

EDIT: Nevermind. After reloading DF therapist sorted them into a squad correctly.

same, 0.6.10 stopped recognising squads, fixed by reloading df.
Same.
Hazarding a guess here, the squad offset is wrong? It looks like it's reading from save state data instead of the active data.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: FireFoxx80 on March 24, 2011, 07:54:25 am
0.31.22 (windows):

[info]
checksum=0x4d8b30fc
version_name=v0.31.22 (graphics)
complete=false

[addresses]
translation_vector=0x01707270
language_vector=0x01707250
creature_vector=0x030ff14c
dwarf_race_index=0x00000000
squad_vector=0x00000000
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: FireFoxx80 on March 24, 2011, 08:07:14 am
Ok, tried running DF with --trace, but the log files don't make much sense. I am guessing from the above posts that the race offset is somewhere in this?

2011-Mar-24 13:02:24.891 DEBUG   core   "Scanned 299,864,064MB in 1,209ms" [../dwarftherapist/src/dfinstance.cpp:228] (scan_mem)
2011-Mar-24 13:02:24.891 DEBUG   core      PTR 10817dd "" [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:77] (go)
2011-Mar-24 13:02:24.891 DEBUG   core      MATCH! offset 46 2e [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:80] (go)
2011-Mar-24 13:02:24.891 DEBUG   core      READ ADDR FROM 108180b = 215fc28 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:82] (go)
2011-Mar-24 13:02:24.891 DEBUG   core         RACE VALUE 233 HEX e9 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:84] (go)
2011-Mar-24 13:02:24.891 DEBUG   core      PTR 108198d "" [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:77] (go)
2011-Mar-24 13:02:24.891 DEBUG   core      MATCH! offset 31 1f [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:80] (go)
2011-Mar-24 13:02:24.891 DEBUG   core      READ ADDR FROM 10819ac = 215fc28 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:82] (go)
2011-Mar-24 13:02:24.891 DEBUG   core         RACE VALUE 233 HEX e9 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:84] (go)
2011-Mar-24 13:02:24.892 DEBUG   core      PTR 124c743 "" [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:77] (go)
2011-Mar-24 13:02:24.892 DEBUG   core      MATCH! offset 28 1c [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:80] (go)
2011-Mar-24 13:02:24.892 DEBUG   core      READ ADDR FROM 124c75f = 215fc28 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:82] (go)
2011-Mar-24 13:02:24.892 DEBUG   core         RACE VALUE 233 HEX e9 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:84] (go)
2011-Mar-24 13:02:24.892 DEBUG   core      PTR 160ed17 "" [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:77] (go)
2011-Mar-24 13:02:24.892 DEBUG   core      MATCH! offset 25 19 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:80] (go)
2011-Mar-24 13:02:24.892 DEBUG   core      READ ADDR FROM 160ed30 = 215fc28 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:82] (go)
2011-Mar-24 13:02:24.892 DEBUG   core         RACE VALUE 233 HEX e9 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:84] (go)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: notfood on March 24, 2011, 11:07:45 am
Time to refresh this thread nonstop for the linux version.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on March 24, 2011, 11:43:43 am
<posting for message about DF fully updated to .22>
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Snickersnak on March 24, 2011, 12:39:05 pm
This works for me:

[info]
checksum=0x4d8b30fc
version_name=v0.31.22 (graphics)
complete=TRUE

[addresses]
translation_vector=0x01707270
language_vector=0x01707250
creature_vector=0x016c34e8
dwarf_race_index=0x014efc28

For Windows version
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Girlinhat on March 24, 2011, 12:43:12 pm
And this gets Therapist to run with .22?  How would a layman apply this knowledge?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: slink on March 24, 2011, 12:49:08 pm
And this gets Therapist to run with .22?  How would a layman apply this knowledge?

Go into etc/memory_layouts/windows.

Make a copy of v0.31.21_graphics.ini

Rename it to v0.31.22_graphics.ini

Edit the top few lines to the values in the post.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Hellmoob on March 24, 2011, 12:52:04 pm
And this gets Therapist to run with .22?  How would a layman apply this knowledge?

Go into your Dwarf Rapist folder, open up the subfolder called 'etc' -> 'memory layouts' -> 'windows'. Then crack open the "v0.31.21_graphics" ini file with notepad, and replace the relevant fields with the posted text. Et voila, madame.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Girlinhat on March 24, 2011, 12:57:02 pm
No luck.  As soon as it runs, it reports the game has closed or un-loaded and for me to restart DF.  If I hit "Connect" I get the same thing instantly.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: GauHelldragon on March 24, 2011, 12:59:39 pm
I am not having any luck getting snickersnak's version to work. "Dwarf fortress has either stopped running, or you unloaded your game..."

What is supposed to go in the squad_vector line? What version of Dwarf Therapist are you using anyway?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Snickersnak on March 24, 2011, 01:06:40 pm
Don't know as it makes a difference but my squad vector line is 0x00000000.  As for DT I'm using 6.10.  Maybe the squad thing makes a difference, I zero'd it out prior to trying to find the offsets.  I couldn't find that offset so I left it zeroed.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: GauHelldragon on March 24, 2011, 01:21:15 pm
Without the line it won't connect at all. With the line set at 0 it will connect but it doesn't seem able to read the dwarfs. I am also using version 6.10. :\
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Snickersnak on March 24, 2011, 01:24:13 pm
Weird, I restarted my computer thinking I might have been using some "ghost" offsets, but it works perfectly fine for me.  I checked that any changes I make actually go through to the game and everything checks out.  You could try building a file from scratch using DT's built in memory scanner but it's sorta confusing.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Girlinhat on March 24, 2011, 01:24:49 pm
Depending on how patient we all are, you may wanna toss your Therapist onto DFFD to sate our collective lusts.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: slink on March 24, 2011, 01:26:49 pm
I am using Version 0.6.9 with snickersnak's vectors.  I set the squad vector to the same as the previous version, since it was the same as the one before it.  I got the message you are all getting when I used the creature vector from firefoxx80.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Snickersnak on March 24, 2011, 01:40:50 pm
Allright, I built the file from scratch using DT's built in tool and here's what it gave me and it also works for me.  This is for the Windows graphics version.  Not Linux, not legacy.

[info]
checksum=0x4d8b30fc
version_name=v0.31.22 (graphics)
complete=true

[addresses]
translation_vector=0x01707270
language_vector=0x01707250
creature_vector=0x016c3498
dwarf_race_index=0x014efc28
squad_vector=0x00000000
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: GauHelldragon on March 24, 2011, 01:49:35 pm
Ah ok, seems to be working now.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Girlinhat on March 24, 2011, 02:14:00 pm
That works for me too!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DryBones on March 24, 2011, 02:24:46 pm
That worked perfectly, thank you!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Snickersnak on March 24, 2011, 02:37:00 pm
Good to hear!  Without the squad vector it looks like there's no sorting by squads but at least the rest of it seems functional.  Good luck all!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Blackice on March 24, 2011, 02:41:05 pm
Thanks for the help!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: slink on March 24, 2011, 03:12:41 pm
Just in time!  :)  The first version worked for the original seven, but the first migrant wave only displayed two out of eight.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: henke on March 24, 2011, 04:56:45 pm
Has anybody else had any luck at figuring out the memory map for the Linux version? I attempted to use the memory scan, but it failed to find the dwarf vector.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on March 24, 2011, 06:07:05 pm
New layouts for linux and windows version 0.31.22 have been posted online.  If you are using Dwarf Therapist 0.6.9 or later, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.22, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:

I will do full release this weekend, just want to be sure there isn't an immediate 31.23 like last time :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: 0x517A5D on March 24, 2011, 08:41:26 pm
For what it's worth...

The auto-update v0.31.22_graphics.ini has:
squad_vector=0x01701788

My search tool finds:
squad_vector=0x01701778

I have no running fort with a military so I can't test myself.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Jeoshua on March 24, 2011, 08:44:27 pm
I will do full release this weekend, just want to be sure there isn't an immediate 31.23 like last time :)

With the amount of simple-to-fix bugs that have been found already in .22... I'd say .23 is only a few days and/or hours away.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Thoth on March 24, 2011, 09:44:59 pm
For what it's worth...

The auto-update v0.31.22_graphics.ini has:
squad_vector=0x01701788

My search tool finds:
squad_vector=0x01701778

I have no running fort with a military so I can't test myself.

I can confirm 78 works and 88 doesnt on my fort with my one person squad.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Newbunkle on March 25, 2011, 05:16:33 pm
I will do full release this weekend, just want to be sure there isn't an immediate 31.23 like last time :)

I think Toady hinted at a quick fix for the muddied-stairs collapse bug, if that makes any difference.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: MonkeyHead on March 26, 2011, 06:13:11 am
FYI: therapist currently identifies dwarven lashers as pikedwarves (using squad_vector=0x01701778)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Chattox on March 26, 2011, 09:32:11 am
Will .23 require a new version from .22, or do we not have that long to wait? :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: SombreNote on March 26, 2011, 09:40:14 am
.23 is working with the fixes for .22 for me.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ElTacoLad on March 26, 2011, 10:14:12 am
.23 is working with the fixes for .22 for me.

It crashes when I try to read dwarves, for me.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: slink on March 26, 2011, 10:48:10 am
This is as far as I've gotten for .23  The first three vectors appear to be 0x00001000 further along, but adding 0x00001000 to the dwarf and squad vectors results in the error that DF has stopped running.

[info]
checksum=0x4d8de854
version_name=v0.31.23 (graphics)
complete=false

[addresses]
translation_vector=0x01708270
language_vector=0x01708250
creature_vector=0x02324498
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: marcbyrne on March 26, 2011, 12:12:23 pm
Where do you find that information?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: khearn on March 26, 2011, 12:28:06 pm
I got a creature_vector=0x016c4498 by following the instructions here (http://code.google.com/p/dwarftherapist/wiki/MappingNewVersions) (and setting the name to this_is_a_long_name as noted in the comments). Translation & language vectors match slink's. I also get dwarf_race_index=0x014f0c28

Can't get the squad_vector, though. And it still won't read the dwarves. :-(

   Keith
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: c4rb0nd8r on March 26, 2011, 12:31:22 pm
I have no idea what I'm doing, but this seems to work:

[info]
checksum=0x4d8de854
version_name=v0.31.23 (graphics)
complete=true

[addresses]
translation_vector=0x01708270
language_vector=0x01708250
creature_vector=0x016c4498
dwarf_race_index=0x014f0c28
squad_vector=0x01702778
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: khearn on March 26, 2011, 12:35:22 pm
c4rb0nd8r's values are working for me. I have to hit "Read Dwarves" after starting, which I haven't had to do in the past, but other than that it seems to be good. Thanks!

Edit: I hadn't set complete=true. Once I set that, it reads the dwarves on startup. \0/

   Keith
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: BulMaster on March 26, 2011, 12:35:59 pm
I have no idea what I'm doing, but this seems to work:

[info]
checksum=0x4d8de854
version_name=v0.31.23 (graphics)
complete=true

[addresses]
translation_vector=0x01708270
language_vector=0x01708250
creature_vector=0x016c4498
dwarf_race_index=0x014f0c28
squad_vector=0x01702778

Indeed! Works for me too! Many thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: slink on March 26, 2011, 12:39:52 pm
Works for me too, although I can't test the squad vector right now.  Thank you.  :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: seanb on March 26, 2011, 01:12:35 pm
I have no idea what I'm doing, but this seems to work:

[info]
checksum=0x4d8de854
version_name=v0.31.23 (graphics)
complete=true

[addresses]
translation_vector=0x01708270
language_vector=0x01708250
creature_vector=0x016c4498
dwarf_race_index=0x014f0c28
squad_vector=0x01702778

Can someone briefly explain how to get this info imported to DT?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Lav on March 26, 2011, 01:17:32 pm
A minor display bug in DF Therapist - Beekeeping skill and xp level do not show properly in the table, even though Therapist correctly extracts this information from game memory and displays in dwarf summary popup.

Screenshot attached.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ullallulloo on March 26, 2011, 01:23:05 pm
I have no idea what I'm doing, but this seems to work:

[info]
checksum=0x4d8de854
version_name=v0.31.23 (graphics)
complete=true

[addresses]
translation_vector=0x01708270
language_vector=0x01708250
creature_vector=0x016c4498
dwarf_race_index=0x014f0c28
squad_vector=0x01702778

Can someone briefly explain how to get this info imported to DT?
I believe that you take .22's .ini file, make a renamed copy for .23 and replace the first few lines with that.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: notfood on March 26, 2011, 01:31:40 pm
Linux version...

Ah, the pain...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: seanb on March 26, 2011, 01:33:11 pm
Ahh, i get it. Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: MonkeyHead on March 26, 2011, 01:42:08 pm
The small niggly issue of my lashers being identified as pikedwarves remains in .23... but at least it can see them and has thier levels and detals correct. :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on March 26, 2011, 02:29:09 pm
New layouts for linux and windows version 0.31.23 have been posted online.  If you are using Dwarf Therapist 0.6.9 or later, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.23, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:

Full release is coming, pending a few bugfixes.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: notfood on March 26, 2011, 03:06:10 pm
Many thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on March 26, 2011, 03:39:16 pm
small bug: if you don't have a layout, start therapist then dwarf fortress and then push connect therapist crashes.

restarted and everything is okay (downloaded layout and read all dwarves and all).
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarvenInsanity on March 26, 2011, 05:56:15 pm
Hey,

I just got a migrant wave and wanted to change what they are doing in dwarf therapist. But I could enable anything, when I clicked, nothing happened. Why?

Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Urist_McArathos on March 26, 2011, 09:40:27 pm
A minor display bug in DF Therapist - Beekeeping skill and xp level do not show properly in the table, even though Therapist correctly extracts this information from game memory and displays in dwarf summary popup.

Screenshot attached.

Spoiler (click to show/hide)

I have a related bug; migrants with the "Beekeeper" profession cannot have beekeeping enabled or disabled through TheRapist.  Other dwarves can, but migrants that ARRIVE as "Beekeepers" need this profession enabled or disabled in game only.  It only happens with migrant beekeepers; dwarves who have other profession titles can have beekeeping enabled or disabled as normal.  I have not leveled up a beekeeper to test if this is a bug with migrants only, or if it applies to any dwarf that gains the "Beekeeper" profession. 
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: slink on March 27, 2011, 09:26:32 am
Vectors for .23 work for .24, so this is all you need to change.

checksum=0x4d8f39f9
version_name=v0.31.24 (graphics)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on March 27, 2011, 09:48:10 am
Thanks, I will test it.

EDIT: It is working!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on March 27, 2011, 11:14:22 am
New layouts for linux and windows version 0.31.24 have been posted online.  If you are using Dwarf Therapist 0.6.9 or later, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.24, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:

Full release is still coming, pending a few bugfixes (And want to wait for the DF release to settle.)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: notfood on March 27, 2011, 03:11:50 pm
Running Dwarf Fortress 0.31.24 in Linux.

For some reason Dwarf Therapist connects but when it attempt to read the dwarves it says DwarfFortress has stopped running.

I am using latest hg pull.

- edit -

Sorry, make clean & make fixed it somehow.

- edit 2 -

No, something is definitely wrong. Now it only reads wave 1 even though I have gotten two more waves of migrants.

- edit 3 -

Well, a workaround is saving & reloading in DwarfFortress then reading the values again. I didn't notice it at first because it was a new fortress (the stopped running issue), loading the same fortress pulled data but then no more waves got registered.

It seems to be reading the save data instead of the memory data.

I will perform a hg rollback and see if it's something that was updated.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Urist_McArathos on March 27, 2011, 05:11:00 pm
A minor display bug in DF Therapist - Beekeeping skill and xp level do not show properly in the table, even though Therapist correctly extracts this information from game memory and displays in dwarf summary popup.

Screenshot attached.

Spoiler (click to show/hide)

I have a related bug; migrants with the "Beekeeper" profession cannot have beekeeping enabled or disabled through TheRapist.  Other dwarves can, but migrants that ARRIVE as "Beekeepers" need this profession enabled or disabled in game only.  It only happens with migrant beekeepers; dwarves who have other profession titles can have beekeeping enabled or disabled as normal.  I have not leveled up a beekeeper to test if this is a bug with migrants only, or if it applies to any dwarf that gains the "Beekeeper" profession.

Related bug: waxworking is shown as an "UNKNOWN" profession.  Like with beekeepers, migrant waxworkers cannot have it enabled or disabled via TheRapist (other dwarves can as normal).  Odd, possibly related sidenote:  Migrant beekeepers or waxworkers can't have EITHER labor enabled or disabled via TheRapist.  If a dwarf is a, say, High Master Beekeeper, you cannot use the program to disable beekeeping OR enable wax working, same if he's a "High Master UNKNOWN" (currently how wax workers are displayed): cannot disable wax working or enable beekeeping.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Niveras on March 27, 2011, 06:10:27 pm
There was actually a fairly simple fix to that issue a couple pages back, before the .22 release, but I guess it didn't make it into the official Therapist update:

Hmm, this "not able to assign jobs to beekepers" thing is annoying. any ideas anyone as to how solve it?

Go into etc, open game_data, find the [professions] section, put this after the [professions] tag:
Code: [Select]
size=106
and this at the end

Code: [Select]
105/name = Beekeeper
105/id = 104

106/name = Waxworker
106/id = 105

When you find a dwarf who has an unknown profession, mouse over his icon and it will say something like "unknown profession ID 106" or whatever, just look at his profession name, put that and the id at the end of the section, and update the size.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: UberNube on March 27, 2011, 06:41:40 pm
Running Dwarf Fortress 0.31.24 in Linux.

For some reason Dwarf Therapist connects but when it attempt to read the dwarves it says DwarfFortress has stopped running.

I am using latest hg pull.

- edit -

Sorry, make clean & make fixed it somehow.

- edit 2 -

No, something is definitely wrong. Now it only reads wave 1 even though I have gotten two more waves of migrants.

- edit 3 -

Well, a workaround is saving & reloading in DwarfFortress then reading the values again. I didn't notice it at first because it was a new fortress (the stopped running issue), loading the same fortress pulled data but then no more waves got registered.

It seems to be reading the save data instead of the memory data.

I will perform a hg rollback and see if it's something that was updated.

I can confirm this bug running it under ubuntu 10.04 from the repository. Currently, whenever I try to connect to DF v0.31.24 I get the error message "Dwarf Fortress has either stopped running, or you unloaded your game. Please re-connect when a fort is loaded.". This appears to come-and-go both with saving and restarting DF, and also with time (previously it was working fine with this same session (I think)).

While I'm posting this I should probably add another bug I found under linux. DT doesn't auto-update the memory layouts unless I run it as root, and if I run it as root the layout files only have read/write permissions for root so I can't then run it as a normal user and access the layout. I have tried changing the permissions on the folder and the individual files so anyone can read+write them and that had no effect.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: tolkafox on March 27, 2011, 07:44:54 pm
Vectors for .23 work for .24, so this is all you need to change.

checksum=0x4d8f39f9
version_name=v0.31.24 (graphics)

Thanks to you, and to that guy who fixed the beekeeper/waxworker bug that I though was fixed in 6.10 (at least, the assigning of the jobs was).

And to everyone else who helps fix these little things, you help people like me save the time of doing it. Or figuring out how to do it. :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarvenInsanity on March 27, 2011, 09:22:01 pm
Does anybody have an idea for me? I just can't enable things in dwarf therapist for some dwarf from the migrant wave. To edit the initial dwarfs in Dwarf Therapist worked just fine.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Thoth on March 28, 2011, 12:49:27 am
Does anybody have an idea for me? I just can't enable things in dwarf therapist for some dwarf from the migrant wave. To edit the initial dwarfs in Dwarf Therapist worked just fine.

Are you sure it's not a child? That's the only usual reason unless its the representative from the mountainhomes that comes with the caravan, beyond that, something is probably afoot.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Berserkenstein on March 28, 2011, 06:14:42 am
Does anybody have an idea for me? I just can't enable things in dwarf therapist for some dwarf from the migrant wave. To edit the initial dwarfs in Dwarf Therapist worked just fine.

Are you sure it's not a child? That's the only usual reason unless its the representative from the mountainhomes that comes with the caravan, beyond that, something is probably afoot.

If there is a dwarven trade caravan, Dwarf Therapist will list the guards as well.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Urist_McArathos on March 28, 2011, 08:47:14 am
There was actually a fairly simple fix to that issue a couple pages back, before the .22 release, but I guess it didn't make it into the official Therapist update:

Hmm, this "not able to assign jobs to beekepers" thing is annoying. any ideas anyone as to how solve it?

Go into etc, open game_data, find the [professions] section, put this after the [professions] tag:
Code: [Select]
size=106
and this at the end

Code: [Select]
105/name = Beekeeper
105/id = 104

106/name = Waxworker
106/id = 105

When you find a dwarf who has an unknown profession, mouse over his icon and it will say something like "unknown profession ID 106" or whatever, just look at his profession name, put that and the id at the end of the section, and update the size.

Thanks very much for pointing me to the fix.  However, I felt that if it still hadn't been resolved it was worth mentioning as a current bug, in case it was being overlooked.  However, now that I have a solution I'm happy.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ferret on March 28, 2011, 11:34:26 am
So far I've found this works with the latest version. (0.31.25)
I can't confirm that it works 100% but haven't noticed any issues so far.
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: slink on March 28, 2011, 01:24:57 pm
Skill 108 is Military Tactician (Military Tactics in DF).
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: veok on March 28, 2011, 02:18:51 pm
So far I've found this works with the latest version. (0.31.25)
I can't confirm that it works 100% but haven't noticed any issues so far.
Spoiler (click to show/hide)

How can I use this to get Therapist to work with .25?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: tolkafox on March 28, 2011, 02:46:23 pm
DT/etc/memory_layouts/windows/

Duplicate the latest (should be 31.21_graphics) and rename the copy 31.35. Replace it's text with what is shown.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: veok on March 28, 2011, 02:52:59 pm
DT/etc/memory_layouts/windows/

Duplicate the latest (should be 31.21_graphics) and rename the copy 31.35. Replace it's text with what is shown.

Okay. Will do. Thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: nenjin on March 28, 2011, 03:09:01 pm
Thanks for the hotfix info.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Brian on March 28, 2011, 05:38:49 pm
Found a bug or I'm mis-using this. I'm on Ubuntu (Meerkat edition, rawr!) and trying to use DT to set custom jobs. Well it's working for everything but the job name itself. The job name is staying the same, but all the in-game jobs do change to match. I've also tried right click -> set custom profession name, and it does nothing!

I'm running 0.31.23 at the moment.

Addition: I was able to confirm that the offset in the INI file is correct (0x003c for me) and I see the c-string located at that offset. I told DT to change the custom profession name and the pointer to a c string did not change, and the memory pointed to did not change either.

So, I think it's just broken right now.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: billybobfred on March 28, 2011, 06:48:08 pm
I can't confirm that it works 100% but haven't noticed any issues so far.

Well, it thinks "Make rock mugs" is "Forge rope", but as long as it can detect idlers and mass-assign labors (fyi it can), I'm not too bothered.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on March 28, 2011, 06:59:14 pm
New layouts for linux and windows version 0.31.25 have been posted online.  If you are using Dwarf Therapist 0.6.9 or later, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.25, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:

There will be a release.

I'm less sure of when.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on March 28, 2011, 09:51:33 pm
Addition: I was able to confirm that the offset in the INI file is correct (0x003c for me) and I see the c-string located at that offset. I told DT to change the custom profession name and the pointer to a c string did not change, and the memory pointed to did not change either.
It is NOT a C string. It's a STL string. That's a big difference.

STL strings on windows (programs compiled with MSVC) have a small fixed buffer of 16 bytes that can be set without allocating extra memory. On linux, there's no such buffer, just dynamically allocated string. It's not possible to manipulate that safely without some extra hacks in place.

I don't know how DT handles it, but it should be possible to set strings that have been already allocated to values that are equally long or shorter.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: vrga on March 29, 2011, 07:11:56 pm
Just to note, compiled from the repo on gentoo, works damn fine :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Daskinor on April 03, 2011, 05:18:29 am
Wish I could also participate in the general bug-free happy dance, but something in the latest DT crashes for me in a way that I've never seen DT do before, and have been using it since early 0.31.x

Running 64 bit Linux compiled from source pulled from the hg tree as of current date (identifying itself as v0.6.11), and also under gentoo. I've also checked and compiled the latest of all the packages DT uses that are dynamically linked against the DT binary - still no improvement.

For the curious these are
Spoiler (click to show/hide)

What happens is an immediate crash (that brings up gnomes 'bug-buddy' tool that cant identify the application but still offers to generate a debug trace regardless) whenever i click on any of the labour items for all dwarves listed bar.. one. Why this dwarf (a high master milker with some ability as an animal trainer, fisher and bonecarver) is exempt from the crash I have no idea.. and it still crashes for him when I try and click on his name to bring up traits, all skill levels and xp to next level and the like - as it does for all the other dwarves.

Going back to dt circa December 30th 2010 (0.6.7 I believe) which worked perfectly under 0.31.18 also works for 0.31.25 as long as I have the newer memory_layouts for 0.31.25 and if I can live with not having any of the new skills like beekeeping, glazing and pottery represented, listed or controllable - as these options were not present at the time. Which is a far sight better than having it be completely unusable I guess, and my fortress isn't at a level yet where desperation to know who my bee-keepers are and how good they are is a burning need.

But still is bothersome. Anyone seen anything similar? Older dt versions that are working and linked against the same libraries when current ver is broken is suggestive of some new feature or capability that isnt right yet that's involved with GUI popups or setting active labors.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: vrga on April 03, 2011, 07:03:37 am
Wish I could also participate in the general bug-free happy dance, but something in the latest DT crashes for me in a way that I've never seen DT do before, and have been using it since early 0.31.x

Running 64 bit Linux compiled from source pulled from the hg tree as of current date (identifying itself as v0.6.11), and also under gentoo. I've also checked and compiled the latest of all the packages DT uses that are dynamically linked against the DT binary - still no improvement.

For the curious these are
Spoiler (click to show/hide)

What happens is an immediate crash (that brings up gnomes 'bug-buddy' tool that cant identify the application but still offers to generate a debug trace regardless) whenever i click on any of the labour items for all dwarves listed bar.. one. Why this dwarf (a high master milker with some ability as an animal trainer, fisher and bonecarver) is exempt from the crash I have no idea.. and it still crashes for him when I try and click on his name to bring up traits, all skill levels and xp to next level and the like - as it does for all the other dwarves.

Going back to dt circa December 30th 2010 (0.6.7 I believe) which worked perfectly under 0.31.18 also works for 0.31.25 as long as I have the newer memory_layouts for 0.31.25 and if I can live with not having any of the new skills like beekeeping, glazing and pottery represented, listed or controllable - as these options were not present at the time. Which is a far sight better than having it be completely unusable I guess, and my fortress isn't at a level yet where desperation to know who my bee-keepers are and how good they are is a burning need.

But still is bothersome. Anyone seen anything similar? Older dt versions that are working and linked against the same libraries when current ver is broken is suggestive of some new feature or capability that isnt right yet that's involved with GUI popups or setting active labors.
you're in a multilib enviroment, right?


try compiling 32-bit DT. default symlinks IIRC all point to x64 libs.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: mrbaggins on April 03, 2011, 07:26:45 pm
DT/etc/memory_layouts/windows/

Duplicate the latest (should be 31.21_graphics) and rename the copy 31.35. Replace it's text with what is shown.

Did you mean "rename the copy 31.25"?

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Oscard on April 05, 2011, 11:40:58 am
Still no chance for an update version of the mac client? Is it possible to cider wrap the current client? I know the last non official version you had to target DF...I know alot of mac player dont get very far because of the time it takes to assign workers and remember which workers are doing what, looking through the in game UI for this is fairly clunky.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 05, 2011, 07:23:12 pm
Still no chance for an update version of the mac client? Is it possible to cider wrap the current client? I know the last non official version you had to target DF...I know alot of mac player dont get very far because of the time it takes to assign workers and remember which workers are doing what, looking through the in game UI for this is fairly clunky.
It is open source, if you have a mac, go to it.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Oscard on April 05, 2011, 08:06:33 pm
Still no chance for an update version of the mac client? Is it possible to cider wrap the current client? I know the last non official version you had to target DF...I know alot of mac player dont get very far because of the time it takes to assign workers and remember which workers are doing what, looking through the in game UI for this is fairly clunky.
It is open source, if you have a mac, go to it.

I have no way of knowing how to go about it. I guess i could look into some sort of way to do it. I have zero coding/compiling experience.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: yamamushi on April 06, 2011, 09:20:06 am
Still no chance for an update version of the mac client? Is it possible to cider wrap the current client? I know the last non official version you had to target DF...I know alot of mac player dont get very far because of the time it takes to assign workers and remember which workers are doing what, looking through the in game UI for this is fairly clunky.
It is open source, if you have a mac, go to it.

I have no way of knowing how to go about it. I guess i could look into some sort of way to do it. I have zero coding/compiling experience.

It doesn't look like anyone wants to take on the challenge of maintaining a Mac Dwarf Therapist build. I made a post about it on Reddit:

 http://www.reddit.com/r/dwarffortress/comments/gjscl/dwarf_therapist_for_mac_osx/  (http://www.reddit.com/r/dwarffortress/comments/gjscl/dwarf_therapist_for_mac_osx/)

It looks like there are references in place for a Mac Build, if my assumptions from my glances over the source files are correct. I had a few problems when trying to compile it in qt, but it got quite far which leads me to believe that an OSX build isn't that far off. Perhaps if I am able to get pointers from some devs in the irc room, I'd be happy to start maintaining an OSX build for the community.

If anyone can help out or can shoot me some pointers in the right direction, please send me a PM. :)

Note: I did take a look at the source code for jofarrel's build, but he was basing his code on an older release of DT and I felt like I was being pulled down the wrong path the further I dug in.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: yamamushi on April 06, 2011, 04:39:17 pm
Scratch that, the references are only a "shell" of code, to be filled in by a developer at a later time. I guess that leaves me a project to work on this week :-)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: forsaken1111 on April 06, 2011, 06:13:55 pm
Is the demand for a mac version really all that strong?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ral on April 06, 2011, 06:25:24 pm
I would use it. I'm actually playing DF on a pc right now simply due to the lack of dwarf therapist on os x. My mac might actually be faster too.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: devek on April 06, 2011, 06:35:41 pm
Is the demand for a mac version really all that strong?

But it doesn't outweigh the demand to laugh at mac users.

(just kidding, mac <3)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 06, 2011, 08:37:43 pm
I think the number of mac users would be significantly higher than one would expect because this is one of the very few games available for the mac that actually runs OK on a mac...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: forsaken1111 on April 06, 2011, 09:25:06 pm
I think the number of mac users would be significantly higher than one would expect because this is one of the very few games available for the mac that actually runs OK on a mac...
For some reason this statement while probably accurate also makes me laugh. We like the game because it is one of the few games which work for us. I guess that's a good reason. :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: mrbaggins on April 07, 2011, 01:30:40 am
Can someone detail the steps for getting this to work properly for .25?

If I'm reading write, I get the most recent version and patch the XML file with a list of new memory addresses? Is that it?

Don't want to corrupt my fort is all.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 07, 2011, 01:49:29 am
Can someone detail the steps for getting this to work properly for .25?

If I'm reading write, I get the most recent version and patch the XML file with a list of new memory addresses? Is that it?

Don't want to corrupt my fort is all.
If you are using a windows flavor, just download the latest version and it will work.   As for corrupting your fort, DT is unlikely in the extreme to do that, however DF IS NOT! There is a seasonal and autobackup option.  USE THEM! trust me!!!!!! *has had to go back due to crash bugs MULTIPLE times.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: OnyxIdol on April 07, 2011, 12:49:44 pm
Eh, I have the latest version (0.6.10). However, i am getting the "I don't know how to talk to this version of df" error with df 31.25. Any hints?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: OnyxIdol on April 07, 2011, 12:56:54 pm
Nevermind, after enabling auto-Updates it got the new memory layout. Cheers!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Oscard on April 07, 2011, 06:22:01 pm
I believe the demand for a mac version is very high. Just finding someone who is willing to maintain it is the hard part. I always get back into DF then what usually pulls me out is the STAGGERING amount of workers who i have to sift through to get everyone to do efficient jobs. This is where Dwarf Therapist is a godsend.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ral on April 07, 2011, 07:13:12 pm
I'm not religious on the mac/pc thing, but my mac might actually be able to run the thing faster than my pc laptop. I doubt the mac laptop would be any faster though.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Dark_T_Zeratul on April 07, 2011, 07:53:05 pm
New layouts for linux and windows version 0.31.22 have been posted online.  If you are using Dwarf Therapist 0.6.9 or later, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.
This feature is AWESOME. Thank you so much!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: crappypappy on April 09, 2011, 07:06:09 pm
erm maybe its just me but it shows all ym dwarfs first names but after that it just say unkownunknown for every dwarfs last names any ideas?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Eldrick Tobin on April 10, 2011, 12:35:34 am
erm maybe its just me but it shows all ym dwarfs first names but after that it just say unkownunknown for every dwarfs last names any ideas?

I see that when DF is running before DT sometimes. Then I restart DT and it connects and populates on its own. Other than that no other ideas. It works for me.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: crappypappy on April 10, 2011, 01:25:16 am
yep that fixed thx
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Daskinor on April 10, 2011, 02:18:18 am
Wish I could also participate in the general bug-free happy dance, but something in the latest DT crashes for me in a way that I've never seen DT do before, and have been using it since early 0.31.x

Running 64 bit Linux compiled from source pulled from the hg tree as of current date (identifying itself as v0.6.11), and also under gentoo. I've also checked and compiled the latest of all the packages DT uses that are dynamically linked against the DT binary - still no improvement.

For the curious these are
Spoiler (click to show/hide)

What happens is an immediate crash (that brings up gnomes 'bug-buddy' tool that cant identify the application but still offers to generate a debug trace regardless) whenever i click on any of the labour items for all dwarves listed bar.. one. Why this dwarf (a high master milker with some ability as an animal trainer, fisher and bonecarver) is exempt from the crash I have no idea.. and it still crashes for him when I try and click on his name to bring up traits, all skill levels and xp to next level and the like - as it does for all the other dwarves.

Going back to dt circa December 30th 2010 (0.6.7 I believe) which worked perfectly under 0.31.18 also works for 0.31.25 as long as I have the newer memory_layouts for 0.31.25 and if I can live with not having any of the new skills like beekeeping, glazing and pottery represented, listed or controllable - as these options were not present at the time. Which is a far sight better than having it be completely unusable I guess, and my fortress isn't at a level yet where desperation to know who my bee-keepers are and how good they are is a burning need.

But still is bothersome. Anyone seen anything similar? Older dt versions that are working and linked against the same libraries when current ver is broken is suggestive of some new feature or capability that isnt right yet that's involved with GUI popups or setting active labors.
you're in a multilib enviroment, right?


try compiling 32-bit DT. default symlinks IIRC all point to x64 libs.

Thanks for the suggestion, yes i am in a multilib environment. What worked for me was getting 0.6.10 versioned-source rather than what was latest in Mercurial which apparently still has at least the bug i encountered. As there is no clear way to download source bundles for 0.6.10 or any other specific release, i was able to do this via the -C flag to hg thus:

$ hg update -C 0.6.10
11 files updated, 0 files merged, 12 files removed, 0 files unresolved


then recompiling as normal. 0.6.10 works nicely.



Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: MasterMorality on April 14, 2011, 06:35:20 am
I'd certainly love a Mac Version of Dwarf Therapist. I'm surprised Toady hasn't  taken it upon himself to implement a similar system in place the existing, as a standard game component. Not to steal the 'wind' from this project, but it would make a lot of things easier from the get-go. 
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on April 14, 2011, 09:09:53 am
I'm surprised Toady hasn't  taken it upon himself to implement a similar system in place the existing, as a standard game component.
Because implemented as separate project is easier for him?

Feature request: ability to set the set nickname for multiple dwarfs.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Blah on April 14, 2011, 09:22:08 am
Feature request: attributes shown for each dwarf.

A table showing the wiki's info on which attributes improves which jobs would also be nice.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: MasterMorality on April 14, 2011, 10:13:04 am
I'm surprised Toady hasn't  taken it upon himself to implement a similar system in place the existing, as a standard game component.
Because implemented as separate project is easier for him?

Feature request: ability to set the set nickname for multiple dwarfs.

That does make sense, but with the scale of the game and the fact that not everybody who plays it will run to the forums for DT,
given how much of a learning curve this game has and the fact that it frequently does send people screaming in terror away from it upon first try, this type of add on might not be such a bad idea to implement as a standard mechanic, if only to take the edge off.
 
Still, pipe dream.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: AriRashkae on April 14, 2011, 03:21:58 pm
I would use it. I'm actually playing DF on a pc right now simply due to the lack of dwarf therapist on os x. My mac might actually be faster too.

Exactly the same situation as me. :D I'm toying with the idea of a port, but have less than no clue what to do! We must to reee-search!  ;D
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: _DivideByZero_ on April 14, 2011, 07:11:53 pm
The current linux version doesn't have the memory layouts, it seems.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ledi on April 14, 2011, 11:32:04 pm
Old feature request from another thread, guess I should put it here since it's sort of a therapist thing...

Let us have a tab for animals. Include age, gender, fat/muscle/size and let us toggle slaughtering.

Why yes, I am sick of not being able to view size from the kitchen tab, or easily view gender from the unit tab without having to view the animal, and I only want my fattest and musclebound giants to survive to breed. XD

...I also know how crazy this request is, and it's more of a wish than a request for Therapist as it currently stands. >.>
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 14, 2011, 11:43:56 pm
Old feature request from another thread, guess I should put it here since it's sort of a therapist thing...

Let us have a tab for animals. Include age, gender, fat/muscle/size and let us toggle slaughtering.

Why yes, I am sick of not being able to view size from the kitchen tab, or easily view gender from the unit tab without having to view the animal, and I only want my fattest and musclebound giants to survive to breed. XD

...I also know how crazy this request is, and it's more of a wish than a request for Therapist as it currently stands. >.>

Actually it is not that crazy of a request. I think it fits very nicely into the vision statement of DT.    And I would prefer to see it in DT than its other natural fit Dwarf Foreman.

(And now that I think about it, dwarf foreman does not have any of the "Homework" done for this like Therapist does.  DT has almost all of the infrastructure, it just needs to display it and allow you to toggle the slaughter bit. )
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Undeadlord on April 17, 2011, 08:04:47 pm
Old feature request from another thread, guess I should put it here since it's sort of a therapist thing...

Let us have a tab for animals. Include age, gender, fat/muscle/size and let us toggle slaughtering.

Why yes, I am sick of not being able to view size from the kitchen tab, or easily view gender from the unit tab without having to view the animal, and I only want my fattest and musclebound giants to survive to breed. XD

...I also know how crazy this request is, and it's more of a wish than a request for Therapist as it currently stands. >.>

Actually it is not that crazy of a request. I think it fits very nicely into the vision statement of DT.    And I would prefer to see it in DT than its other natural fit Dwarf Foreman.

(And now that I think about it, dwarf foreman does not have any of the "Homework" done for this like Therapist does.  DT has almost all of the infrastructure, it just needs to display it and allow you to toggle the slaughter bit. )

If I can add a vote for this, please!! I love DT, and I think the animal idea, like was mentioned would seem fit very well into the infrastructure. I hope it can happen!!!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Merkuri on April 17, 2011, 09:15:23 pm
I'd like to third the idea of being able to manage animals with Dwarf Therapist.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: melpomenee on April 21, 2011, 11:27:42 am
I'd like to third the idea of being able to manage animals with Dwarf Therapist.

Needs a business merger between DT and Runesmith!  I second the animal management idea as well!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Refpeuk on April 21, 2011, 03:14:15 pm
Is there a way to make this work with DF v31.25?  I've looked all over and can't find anyone else asking, even though the new versions been out for a while.  Any help would be appreciated: I have a fortress that's getting far to populated to manage.

Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on April 21, 2011, 03:18:34 pm
New layouts for linux and windows version 0.31.25 have been posted online.  If you are using Dwarf Therapist 0.6.9 or later, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.25, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:
  • Windows SDL (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.25_graphics.ini)
  • Windows Legacy (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.25_legacy.ini)
  • Linux (http://www.dwarftherapist.com/memory_layouts/linux/v0.31.25.ini)

There will be a release.

I'm less sure of when.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 21, 2011, 03:55:12 pm
Needs a business merger between DT and Runesmith! 

It is not in the vision statement for DT. And it is specifically where the creator did not want to go.  DT = Helper tools,  Cheat programs = Separate.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Refpeuk on April 21, 2011, 04:07:10 pm
New layouts for linux and windows version 0.31.25 have been posted online.  If you are using Dwarf Therapist 0.6.9 or later, it should download them automatically the next time you start DT with the new version of Dwarf Fortress running.  If you have a partial memory layout for v31.25, you'll want to delete it, otherwise Dwarf Therapist may not download the newest version.

If you have problems or want to update therapist manually, you can also download the layouts here:
  • Windows SDL (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.25_graphics.ini)
  • Windows Legacy (http://www.dwarftherapist.com/memory_layouts/windows/v0.31.25_legacy.ini)
  • Linux (http://www.dwarftherapist.com/memory_layouts/linux/v0.31.25.ini)

There will be a release.

I'm less sure of when.

Thanks a ton!  Works like a charm.  This fixes most of what I hated about the DF interface!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: JoeCroqueta on April 21, 2011, 04:40:31 pm
Another Mac user here that plays DF in the PC because of the usefulness of Dwarf Therapist.

It would be great to play DF in the laptop when I travel :)


I downloaded the Mac port and tried to make a new memory layout, but the scanning does not seem to work. At least if anyone could share their layouts for new versions... :)

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: vhappylurker on April 22, 2011, 01:13:04 pm
It is not in the vision statement for DT. And it is specifically where the creator did not want to go.  DT = Helper tools,  Cheat programs = Separate.

Given that you can use DT to set nobles, children, and babies to labor in your fortress and get called out for cheating by using this option, I'd say DT is cheat program. You could argue that almost anything that's not vanilla Fortress is a cheat.

As for additions, I'm of the opinion that having a tab for animals would be a very helpful addition, since it'd make tracking the best breeding stock, culling out extraneous critters, and other animal management duties much easier. It'd be nice to see  pasturing/caging of animals (and maybe other things...) be a toggle-able feature as well. It would also be kind of neat to have an option to tame prisoners for use as slave labor or food, but that might be a bit much...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: forsaken1111 on April 22, 2011, 06:55:24 pm
Having an animal tracking page for the fort would make it possible for me to raise livestock without going insane. I hate reading every animal's description just to discover their stats.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ClubFoot on April 22, 2011, 11:30:13 pm
Is there a currently suggested alternative for mac users?  I'm newish to the game, and really enjoying it.  I've not used a manager before, but am starting to see the need.  I'm not willing to reboot to another OS for it, though.  I gather there's not a version of DT that'll work.  sadness. How about an another manager?


thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on April 23, 2011, 04:54:33 am
(http://www.img.ie/4941c.png)
Why? Long nicknames are legal in DF.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: devek on April 23, 2011, 05:23:55 am
(http://www.img.ie/4941c.png)
Why? Long nicknames are legal in DF.

The max stl strength length you can modify in a windows C++ program is 16 bytes. There is a way around it on windows at least, but it would be super retarded to implement something so complex when no one needs Therapist to assign long nicknames  :P



Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on April 23, 2011, 05:53:40 am
So "no one" is asking about ability to assign the same nickname to multiple dwarves.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Andir on April 23, 2011, 07:54:04 am
So "no one" is asking about ability to assign the same nickname to multiple dwarves.
What does assigning the same nickname and nickname length have to do with each other?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on April 23, 2011, 07:57:13 am
So "no one" is asking about ability to assign the same nickname to multiple dwarves.
What does assigning the same nickname and nickname length have to do with each other?
this
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on April 23, 2011, 08:18:31 am
So "no one" is asking about ability to assign the same nickname to multiple dwarves.
What does assigning the same nickname and nickname length have to do with each other?
this
Everything. ... or nothing, if you want to crash the game.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Andir on April 23, 2011, 08:48:47 am
So "no one" is asking about ability to assign the same nickname to multiple dwarves.
What does assigning the same nickname and nickname length have to do with each other?
this
Ok, consider me thoroughly confused.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ral on April 23, 2011, 11:06:41 am
Is there a currently suggested alternative for mac users?

Nope....  The best you can do (that I know of) is use the u command in the game to get an (unsorted) list of dwarves, then select one and zoom to it to set labors, etc.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 24, 2011, 10:13:24 pm
It is not in the vision statement for DT. And it is specifically where the creator did not want to go.  DT = Helper tools,  Cheat programs = Separate.

Given that you can use DT to set nobles, children, and babies to labor in your fortress and get called out for cheating by using this option, I'd say DT is cheat program. You could argue that almost anything that's not vanilla Fortress is a cheat.

As for additions, I'm of the opinion that having a tab for animals would be a very helpful addition, since it'd make tracking the best breeding stock, culling out extraneous critters, and other animal management duties much easier. It'd be nice to see  pasturing/caging of animals (and maybe other things...) be a toggle-able feature as well. It would also be kind of neat to have an option to tame prisoners for use as slave labor or food, but that might be a bit much...

Please read the vision statement as I mentioned before posting things like this.  Those things were bugs, and they were moved to options because of the way the behaviors work but will probably be gone one day.

http://code.google.com/p/dwarftherapist/wiki/VisionStatement
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ledi on April 26, 2011, 05:18:49 am
It is not in the vision statement for DT. And it is specifically where the creator did not want to go.  DT = Helper tools,  Cheat programs = Separate.

Given that you can use DT to set nobles, children, and babies to labor in your fortress and get called out for cheating by using this option, I'd say DT is cheat program. You could argue that almost anything that's not vanilla Fortress is a cheat.

As for additions, I'm of the opinion that having a tab for animals would be a very helpful addition, since it'd make tracking the best breeding stock, culling out extraneous critters, and other animal management duties much easier. It'd be nice to see  pasturing/caging of animals (and maybe other things...) be a toggle-able feature as well. It would also be kind of neat to have an option to tame prisoners for use as slave labor or food, but that might be a bit much...

Please read the vision statement as I mentioned before posting things like this.  Those things were bugs, and they were moved to options because of the way the behaviors work but will probably be gone one day.

http://code.google.com/p/dwarftherapist/wiki/VisionStatement

Well, at least a livestock tab would be within the vision statement!

(seriously, I'm drowning in poultry. My short-gap solution is to pen them all into one room then z-check all of them, setting them to slaughter as I see weak ones. Doesn't work on caged animals though, I have to go to the unit tab, count how many creatures down the weak one is (say, 5th, 9th and 12th badger boar) then go to the animal stocks screen and carefully count down the non-colour-coded animals to toggle the right ones for slaughter, and hope I haven't mis-counted. A livestock handler would be an Armoksend).
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ghalidrim on April 26, 2011, 09:43:34 am
Is there a currently suggested alternative for mac users?  I'm newish to the game, and really enjoying it.  I've not used a manager before, but am starting to see the need.  I'm not willing to reboot to another OS for it, though.  I gather there's not a version of DT that'll work.  sadness. How about an another manager?

From the forum here, looks like there's at least three of us working on a Mac port right now, probably would work better if we pooled our efforts. If the other two see this lets DM emails or talk on the Dwarf Therapist forums, I'm making pretty good progress with mine right now...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: JoeCroqueta on April 27, 2011, 05:06:18 pm
Is there a currently suggested alternative for mac users?  I'm newish to the game, and really enjoying it.  I've not used a manager before, but am starting to see the need.  I'm not willing to reboot to another OS for it, though.  I gather there's not a version of DT that'll work.  sadness. How about an another manager?

From the forum here, looks like there's at least three of us working on a Mac port right now, probably would work better if we pooled our efforts. If the other two see this lets DM emails or talk on the Dwarf Therapist forums, I'm making pretty good progress with mine right now...

Glad to hear that  :)

Thanks for the effort and good luck!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ral on April 27, 2011, 06:35:52 pm
I'm not working on a mac port (even though I could use one) but I am wondering what people think of adding lua support to DT.

The point would not be to make it into a "cheat" program like dfusion, but to allow people to write more advanced decision support scripts like Dwarven Guidance Councilor. I suppose you could also write scripts like "for all dwarves with attribute x, enable mining and masonry labors" or something. This stuff seems like it would be within the vision statement.

I downloaded the source and the Qt creator thing, and got it building. I also got lua building as a static library under Qt creator, but I haven't written a single line of code yet.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on April 28, 2011, 08:08:11 am
This stuff seems like it would be within the vision statement.
Quote
is not intended to create a ‘game outside of the game’ in manners that extend game functionality (such as command-chaining or macros)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ral on April 28, 2011, 02:34:44 pm
The whole "custom professions" thing is essentially a macro. It allows you to enable/disable several labors in one shot, which would be a macro.

In any case the idea of lua scripting would not be to implement something like custom professions; the purpose would be to allow people to write scripts to look over their dwarves and print out a list of dwarves that, because of their attributes, aren't very suited to their enabled labors, for example.

Even if we ignore the fact that "custom professions" violate the vision statement, something that's completely read-only certainly wouldn't.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Valience on April 29, 2011, 02:51:37 am
The more I see people argue about the darn vision statement, the more I wish someone would just fork it and make a branch that would implement some of this stuff.

Things such as the livestock menu should be well in the vision statement. It's basically just letting you see more than just your dwarves, but see the same information.

The lua scripting should also be in the vision statement if it were limited to doing something similar to what was suggested. "Oh no, you ran a lua script which spat out a list of suggested job based on the pages of information you already have available in various locations in the game and on the wiki, you're cheating!" Get of your high horse. If I don't have the time to memorize which stats are best for every job in the game and would like a script to recommend possible good matches, that's damn well a "decision support tool" to me.

---

I'd like to see some of the bugs that have been around for the past few releases fixed before anything else though. Such as strength/agility/toughess always displaying -1 and the complete lack of mental attribute reporting.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Jeoshua on April 29, 2011, 04:49:56 am
You guys do realize there are other programs in development currently that do just what you're basically bitching about, right?

I mean, I wouldn't dislike having options for livestock, or suggested professions, or something like that.

But DwarfEngineer has a certain program he's made, and is going a certain direction with it.  It's already basically required to play DF.  And to ask him to do anything with this program that he doesn't want to do, then get upset when he doesn't want to do it just because it's been requested, is not only rude... it's insane.

You're not the coder.  Do you even comprehend how complex a program can get?  How difficult it can be to get a single thing working the way one wants?  If you do, you're a programmer.  Please, do it yourself.  We will probably download and use it.  But until you do so, please... stop trying to force others to do the work for you.

That is all.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ral on April 29, 2011, 12:39:13 pm
The thing is, the vision statement really doesn't matter. I mean the thing is already contradictory. All that matters is whether the guy in charge of the project arbitrarily wants to include something or not. The vision statement is really just causing confusion. It would probably be better to just replace it with "submit an idea and if the project owner likes it and you write the code then it will be included".

I wouldn't say that I'm "bitching", just that the lua idea seems to me like a good fit, based on the vision statement, and thus saying it doesn't shows that the vision statement is just unclear and causing confusion. If I'm bitching about anything it's just the lack of clarity and confusion caused by the vision statement.

Personally, I'm unwilling to fork the project and I'm not interested in arguing with anyone, especially those not making decisions, so all I really care about is the arbitrary decision of whoever owns this project.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ledi on April 29, 2011, 12:43:04 pm
Oh... kay. Didn't expect my silly little idea of a livestock manager to side-by-side the dwarf manager would get people to blow up like this.

Although to be honest, I really can't see where it falls outside of the vision statement, as it's doing what it already does, just to a different group of objects.

Where is a livestock manager already in development, Jeo? I'd like to poke at it and see how it's going.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 29, 2011, 01:36:37 pm
Oh... kay. Didn't expect my silly little idea of a livestock manager to side-by-side the dwarf manager would get people to blow up like this.

Although to be honest, I really can't see where it falls outside of the vision statement, as it's doing what it already does, just to a different group of objects.

Where is a livestock manager already in development, Jeo? I'd like to poke at it and see how it's going.
'

It was not your livestock manager, it was the suggestion to combine DT and runesmith.  Your livestock manager fell directly inline with the vision statement.

And the person above is incorrect, there is nothing contradictory with the main program and the vision statement.   There are some bugs people wanted to keep in place for a while, but they were never meant to be there.    They are just a bug that gained popularity so they were kept in place as an option since they were already there. 

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ral on April 29, 2011, 03:31:18 pm
Who ultimately decides what falls within the vision statement?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 29, 2011, 04:51:24 pm
Who ultimately decides what falls within the vision statement?
The maintainer/coder.

In this case DwarfEngineer.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: JanusTwoface on April 29, 2011, 05:13:19 pm
Correct me if I'm wrong, but the vision statement as it stands was written by chmod (the originally author of Dwarf Therapist) and hasn't been updated for over a year. While the current vision statment is surely up to the new maintainer (Dwarf Engineer), it isn't impossible that he might change it.

For that matter, it's an open source project. Seems like it wouldn't be that terribly hard to fork the project, add more features, and possibly submit a patch to the main version.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: devek on April 29, 2011, 06:09:03 pm
That really isn't a good idea.

Therapist is really good at what it does, it isn't going to be so good at doing things outside of that.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: JanusTwoface on April 29, 2011, 06:11:04 pm
It's not good at doing things that it doesn't do?  Who'd thunk? :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Valience on April 29, 2011, 06:12:26 pm
You guys do realize there are other programs in development currently that do just what you're basically bitching about, right?

I mean, I wouldn't dislike having options for livestock, or suggested professions, or something like that.

But DwarfEngineer has a certain program he's made, and is going a certain direction with it.  It's already basically required to play DF.  And to ask him to do anything with this program that he doesn't want to do, then get upset when he doesn't want to do it just because it's been requested, is not only rude... it's insane.

You're not the coder.  Do you even comprehend how complex a program can get?  How difficult it can be to get a single thing working the way one wants?  If you do, you're a programmer.  Please, do it yourself.  We will probably download and use it.  But until you do so, please... stop trying to force others to do the work for you.

That is all.

Every post of you're I've been unlucky enough to come across is you talking down to people and kissing the ass of anyone who has made a line of code. Granted, maybe I've just been unlucky enough to catch you in threads that you're agitated with, but it's really become quite annoying. You could just as easily let the project lead come and say no, or link to where they said no, instead of getting all greater than thou at everyone. My beef isn't with the maintainer saying no, which if he came in here and said it bluntly on the first post or even on the project forums, I would accept. It's actually all the people who come in and instead of simply linking to an answer on said subject or waiting till the person in charge says something, decide that they need to go off about how it doesn't fit with hot they interpret the vision statement or is hard to do and time is better spent elsewhere. As you yourself said, if you aren't coding the tool, trying to force it where you think it should go is rude and insane, right?

Further, great, there are more programs in development. So, why not just collaborate with those people and add the features into DT?  Surely having one program with the ability to do several tasks is better than needing to download and run countless programs in addition to the game itself. It would even add value to DT, making it overall a better product. Shoudl it be an all-in-wonder program? No. If something fits with it being a "decision support tool", then frankly it should probably be added.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ral on April 29, 2011, 07:32:13 pm
For that matter, it's an open source project. Seems like it wouldn't be that terribly hard to fork the project, add more features, and possibly submit a patch to the main version.
Forking the project means that someone has to maintain it, and merge new features into the source tree when they're added to the mainline version. It seems difficult enough to find one person who wants to maintain DT so getting two to do it and spend enough time to keep up with both would be even more difficult.

At least when it comes to the lua thing, I'd sooner just create my own fancy gui version of dfusion or something using dfhack or something rather than fork DT just to add some limited lua support.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Toady One on April 29, 2011, 11:14:39 pm
Please cool things down in here a little.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Jeoshua on April 30, 2011, 01:08:03 am
Every post of you're I've been unlucky enough to come across is you talking down to people and kissing the ass of anyone who has made a line of code. Granted, maybe I've just been unlucky enough to catch you in threads that you're agitated with, but it's really become quite annoying.
And it is very unlucky.  You've missed me trying to help people with questions or problems, and many suggestions and ideas that I've tried to share with others.  I think it's mainly that people don't cause stinks about posts they agree with or that helped them... in those circumstances it's usually just "thanks" and the thread is done...

On the other hand, when someone disapproves, it's a WALL of text, as your post very adequately demonstrates.

Sorry if I offended you, or anyone, as that wasn't my intent.

The fact of the matter is, look how many posts DwarfEngineer has actually posted in this thread.  It's not very many.  Other than to tell people that he's updated Therapist to the latest version, he is remarkably silent.  And I think he should be.  Theres always loudmouths like myself ready to step in to talk.  All he really NEEDS to do is keep his program's code healthy... and technically he doesn't really need to do that, even.

I "kiss the ass" of people who write code because I have been a coder myself. I'm in school for video game design and have had several ideas stolen from me in the past, seen great people shattered by copyrights and corporate buy-outs, etc etc.  Coding ain't easy.  And too often people assume that it is, or that since they use a program they have a right to tell the coder what to do.  Being one myself, I react strongly against things like that, which is what you were noticing.  Not ass-kissing.

Honestly I think DwarfEngineer could stand to speak to people a bit more.  He's remarkably silent on a great many things.  But that doesn't mean that I'm not going to defend him if I think people are being a bit upset at him for no reason.

And look! Toady One got involved! Sorry if I contributed to and flaming, Toady.  I hope you understand what I was attempting to do, at least.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 30, 2011, 01:21:44 pm
( Please do not take this as an attack against anyone, this is just information. You may do with it as you wish )

I would like to remind you all why chmod is no longer maintaining this project.  He had an argument similar to this about what direction HIS project should take, how much of HIS time he should spend on it. 

And in his words "OK, I am done."

I do not know DwarfEngineers tolerance for this kind of thing, but we are basically just non-paying consumers of their work, and they do not owe us anything.

This is simple truth not some form of brown nosing.   I know many of us, *myself included* have a nasty entitlement mentality, but we have to look at ourselves and ask what right we have to anyone's time, talent or treasures.

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ral on April 30, 2011, 02:24:19 pm
profit: I agree 100%. Personally I'm grateful to have this utility at all, and I'm grateful to the person who originally wrote it and the person who's volunteering their time to maintain it now. I'm grateful to the people working on the mac port and everyone else who has contributed.

In my case I'm offering to contribute a feature to the project, but the person who is doing almost all of the work on this project not only has the right to decide what they work on, but what contributions to accept as well. Ultimately it doesn't matter if it's the vision statement, or the person in charge of the project just doesn't want to worry about maintaining it or whatever the reason is. They're doing the work, they're in charge, and so they get to make the decision based on whatever they want. I'm perfectly 100% in support of that.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on April 30, 2011, 04:18:03 pm
That is very true, I only mentioned the vision statement because that's how he wanted to keep going with things, but if he ever did want to change it to include other things he certainly could.  And I would probably  support and like any new changes he decided to do.

   Just thought it was in the persons best interest 100 messages ago that they should know as far as everyone has been told DT was not going to become a cheat program on the level of Runesmith, and out of respect for the author and his vision thought they would just back down.  LOL never realized it was going to become a major point of contention.

LOL I do hope the animal-butchery thing someone suggested does make it in sometime though =) But just as long as we have DT making DF playable it is ok =)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on May 03, 2011, 02:05:09 am
so, do we have to prepare ourselves for a fair bit of time without DT?

I mean, aren't undead flags used in DT to filter out invalid creatures?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on May 03, 2011, 10:31:49 am
so, do we have to prepare ourselves for a fair bit of time without DT?

I mean, aren't undead flags used in DT to filter out invalid creatures?

It is quite possible that the underlying memory structure could change significantly this time in that respect.  But it does not mean that it will not be quickly resolved.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: devek on May 03, 2011, 01:18:16 pm
Well, the way it determines a valid creature is kind of a hack anyway. It thinks all my modded dwarfs are dead hehe.

It isn't a big deal though, if the datastructure is changed it would only take moments to fix it.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Zorbeltuss on May 03, 2011, 01:24:42 pm
As dwarf therapist currently handles it,  gender of a caste defaults to female if no gender exist, that makes me sad, because until now my only way to find out the gender of a modded creature in a decent way would be dwarf therapist...

Just noting though
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Neyvn on May 04, 2011, 06:19:01 pm
Hi...
Did I miss an update for Therapist???
Anyone that comes in with the skills for Beekeeping (Beekeeping/Waxworking) makes them unable to be adjusted through the Therapist. What did I miss to change this problem???
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: VonCede on May 05, 2011, 04:01:20 am
Is it possible to make a filter script that can filter dwarfs by military skills or social skills?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on May 05, 2011, 07:51:19 am
Hi...
Did I miss an update for Therapist???
Anyone that comes in with the skills for Beekeeping (Beekeeping/Waxworking) makes them unable to be adjusted through the Therapist. What did I miss to change this problem???
There are a lot of problems with beekeeping inside if dwarf fortress... I have some hives and with some abusive construction based exploits was actually able to make them work ok, but I am giving you fair warning you probably will be unable to use hives that well.   

With the level of things wrong in the dwarf fortress code around hives, I cannot guess how you could tell if there was something wrong in DT.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: billybobfred on May 07, 2011, 03:36:31 pm
With the level of things wrong in the dwarf fortress code around hives, I cannot guess how you could tell if there was something wrong in DT.
Well, it reads them as "Unknown Profession" and refuses to change their labors unless you turn on the cheatsyface option.

It does this for Pressers and Wax Workers too.

It's a pretty tiny thing, really, compared to the actual bee-related bugs in DF itself.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Magnar on May 08, 2011, 05:19:19 am
It's amazing to see what's been done with this game and community after a few years away.  Back then I barely struggled my way to self sufficiency before ultimately being overwhelmed by the world around me.  To come back and see this honestly makes me beyond happy.  Everything I had hoped to understand is now available in the most excellent wiki and now I see that some truly awesome people have developed, and continue to expand upon, a way to make those tricky time consuming parts of the game incredibly simple and efficient.  I've only been playing again for just over a week and I already know more than I did before and my ambitious dwarven enterprise looks more and more like a reality with each passing day.  I know this post adds very little in the way of discussion or constructive feedback but I hope it has conveyed at least a fraction of the gratitude I feel towards the continued development of this frankly awesome utility, as well as the most epic time sink ever created.  Thank you for making my gaming experience even more enjoyable!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on May 08, 2011, 10:57:02 am
With the level of things wrong in the dwarf fortress code around hives, I cannot guess how you could tell if there was something wrong in DT.
Well, it reads them as "Unknown Profession" and refuses to change their labors unless you turn on the cheatsyface option.

It does this for Pressers and Wax Workers too.

It's a pretty tiny thing, really, compared to the actual bee-related bugs in DF itself.

You must not have the latest version, mine does such things without any fiddling.   

Make sure you are running 0.6.10 (Help->About)

and are using the official memory layout, not one that has been hacked together.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: billybobfred on May 08, 2011, 11:39:39 am
Oh, hey, I don't have the latest version. That explains that, I guess.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: JoeyLemur on May 10, 2011, 02:31:29 am
Any chance that the bit that stores custom-defined jobs could be stored with the executable, or at least make it an option?

My problem is that I transfer my DF stuff around between different systems, and the custom jobs wind up being different everywhere (I assume its stored under the user Application Data directory...)

Something to think about, especially with people apparently working on a Mac port.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on May 10, 2011, 09:34:41 am
Any chance that the bit that stores custom-defined jobs could be stored with the executable, or at least make it an option?

My problem is that I transfer my DF stuff around between different systems, and the custom jobs wind up being different everywhere (I assume its stored under the user Application Data directory...)

Something to think about, especially with people apparently working on a Mac port.

Windows 7 does not allow this a lot of times and it would cause the application to fail.

You can retrieve your custom stuff from here -> %appdata%\UDP Software\Dwarf Therapist.ini

you can put "%appdata%\UDP Software\" into any explorer window and it will pop up the directory.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kaos on May 13, 2011, 10:04:38 am
I don't know if this has already been mentioned (didn't read the whole thread) but there are a few bugs I noticed:

1) Beekeeper jobs aren't graphically displayed in the grid and you can't order the grid by skill level in that profession, they show correctly in the tooltip on the dwarf name and the "Dwarf Detail" view
2) Wax worker jobs aren't graphically displayed in the grid and you can't order the grid by skill level in that profession, they show correctly in the tooltip on the dwarf name and the "Dwarf Detail" view
3) In the "Dwarf Detail" view some dwarves have an "UNKNOWN" skill... what's that supposed to be?

By the way, I suggest:

1) a tab with the Preferences (sortable of course)
2) a tab with the Attributes (sortable of course)
3) a tab with the Traits (sortable of course)
4) maybe extend the filter interface so you can select a set of attributes/traits/preferences/skills and it searches which dwarves match, it would make selecting:
nobles without impossible/difficult preferences for mandates,
appointed nobles (like the broker, manager, mayor, etc) with the appropiate traits for the role,
sheriff/captain of the guard/guards by the strength attribute (lowest of course)
engravers/workshop workers for their preferences so they don't make a "platinum statue of rat" or engrave a wall/decorate something with images of rats when your nobles detest rats

well you get the idea... right now I use Runesmith to check the attributes (no filtering nor sorting, though) and TheRapist/Runesmith to check the Traits (no filtering nor sorting, either), for the preferences and everything else you're stuck with DF "friendly" interface  :-*

Great work and thanks for the application it really makes DF playable!!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Rhazak on May 13, 2011, 10:54:00 am
3) In the "Dwarf Detail" view some dwarves have an "UNKNOWN" skill... what's that supposed to be?
I know one is Military Tactics (http://df.magmawiki.com/index.php/DF2010:Military_tactics) at least.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Disquiet on May 14, 2011, 11:39:08 pm
I have encountered a bug, dwarf therapist thinks a few of my dwarves are dead when they are not. These are 4 military dwarves I sent to fight a forgotten beast with poisonous vapors breath attack. They got infected and were sitting in the hospital rotting and spewing miasma for a few months. However they all fully recovered except now they are all blind. I'm not sure its something to do with the missing eyes or the fact that almost every bodypart on these dwarves was wounded. I can provide the save if you want. I have also noticed that DT thinks that caged dwarves are dead aswell.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kubouch on May 18, 2011, 03:33:47 pm
I have a problem. I use Ubuntu 11.04 and I built my Dwarf Therapist (not sure how, I'm guite a noob in Linux, I just messed with it for some time). It runs perfectly with DF 0.31.25 but I can't assign dwarves custom jobs. I can change their jobs but I can't change a name of job in DT. I need to do that in Dwarf Fortress which is kinda annoying. Is there any solution?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kadaan on May 23, 2011, 07:22:42 pm
I'm having issues getting DT to work. It opens fine, but doesn't connect to DF. I can manually click the "Connect To DF" button without an error, but if I click the "Read Dwarves" button the app crashes.

Tail of run.log show:
2011-May-23 17:19:26.961 DEBUG   core   adding valid layout "v0.31.03" "0x4bc3c470" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2011-May-23 17:19:26.962 DEBUG   core   valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2011-May-23 17:19:26.962 DEBUG   core   adding valid layout "v0.31.02" "0x4bbdf378" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2011-May-23 17:19:26.962 DEBUG   core   valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2011-May-23 17:19:26.962 DEBUG   core   adding valid layout "v0.31.01" "0x4bb45f99" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2011-May-23 17:19:26.963 ERROR   core   Skipping read of invalid memory layout in "C:/Users/kadaan/Documents/Dwarf Fortress/DwarfTherapist-0.6.10/etc/memory_layouts/windows/.ini" [../dwarftherapist/src/memorylayout.cpp:39] (load_data)
2011-May-23 17:19:26.963 DEBUG   core   attempting to find running copy of DF by window handle [../dwarftherapist/src/dfinstancewindows.cpp:186] (find_running_copy)
j

Windows 7 64, DF 0.31.25.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on May 24, 2011, 08:27:12 am
I'm having issues getting DT to work. It opens fine, but doesn't connect to DF. I can manually click the "Connect To DF" button without an error, but if I click the "Read Dwarves" button the app crashes
If you have not done so already, reboot your computer and try again.'

Make sure you are running 0.6.10 (Help->About)

Also run DT as administrator and make sure you do not have any heuristic based anti-malware programs on that might intercept DT's memory read.

also try making a new pocket world and embarking with a couple dwarves and and seeing if you can still cannot connect.

Also if you have any mods, try it with a clean version and see if one of the jobs or something is causing a crash, never heard of it, but it is a possibility...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kadaan on May 24, 2011, 01:03:26 pm
I'm having issues getting DT to work. It opens fine, but doesn't connect to DF. I can manually click the "Connect To DF" button without an error, but if I click the "Read Dwarves" button the app crashes
If you have not done so already, reboot your computer and try again.'

Make sure you are running 0.6.10 (Help->About)

Also run DT as administrator and make sure you do not have any heuristic based anti-malware programs on that might intercept DT's memory read.

also try making a new pocket world and embarking with a couple dwarves and and seeing if you can still cannot connect.

Also if you have any mods, try it with a clean version and see if one of the jobs or something is causing a crash, never heard of it, but it is a possibility...

I installed all the windows updates pending and rebooted. Downloaded a fresh copy of DT 0.6.10 and base DF 0.31.25 with no mods. I have Symantec Endpoint Protection (required for work) but disabled everything (Antivirus/Antispyware/Proactive Threat) to test. I ran both DF and DT as administrator. Same issue, but additional errors in the log:

Spoiler (click to show/hide)

Anything else I can try, or additional information I can provide?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on May 24, 2011, 04:35:11 pm
Just to double check you are running the SDL version and not the legacy version of dwarf fortress correct?

Also run this just to make sure -> http://dffd.wimbli.com/file.php?id=2702
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kadaan on May 24, 2011, 05:08:41 pm
Just to double check you are running the SDL version and not the legacy version of dwarf fortress correct?

Also run this just to make sure -> http://dffd.wimbli.com/file.php?id=2702

Yep, using the windows SDL version from http://www.bay12games.com/dwarves/. I ran the script that deleted the ini file, still no go :(.

It works fine on my home PC, just not at work. Maybe they have some other security besides Symantec running in the background that's blocking it.

Edit: Looks like it's trying to make a network connection, so the security policy is blocking it:
Spoiler (click to show/hide)

Why is DT trying to make an outbound web connection?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: billybobfred on May 24, 2011, 06:05:00 pm
It's checking for a new version, I imagine.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on May 24, 2011, 08:32:15 pm
Oh! no, it is checking for INI files.  If it does not recognize the version it will look for and download them from the main site.

if it cannot connect, the last version .6.10 will work with is v0.31.21 graphics + legacy


* it also does version checking though I think in the newest ones.


If you want to download the memory layouts for the new version manually you can get them from here -> http://code.google.com/p/dwarftherapist/issues/detail?id=328#c2

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Dwarf_Fever on May 25, 2011, 12:05:58 am
Bug

Hopefully this has not been posted already-

In certain "Group By" view modes, like "Has Nickname" you can toggle groups on just fine, like "Toggle Hauling for Has Nickname." However, it will not let you (or me at least) untoggle the group again, instead having to untoggle each of the group subsets one by one.

Suggestion

Dwarf Therapist is a great management tool, and I think it could even be a great automation program with another feature or two - hopefully it is still being developed? It seems like you could set up a few simple parameters and just fire and forget. Let DT run in the background, and if key dwarves happen to die, it will automatically take the next best choice from a less-important group and switch his jobs. I'm thinking something like this:



1. Add checkboxes to the skill columns, so they can be marked Low Priority, Mid Priority, High Priority and/or Military.

2. Add a tab for input for each of the 4 priority levels, something like:

High Priority

[X] Enable best _2_ worker(s).
[X] Enable best _1_ worker(s) per related workshop.
[  ] Disable workers with skill less than ___.

[X] Exclusive Priority skill. If chosen for this Priority, disable all other skills under _9_.
[  ] Disable other skills except healthcare skills over ___.
[X] Enable the hauling group.
[  ] Also enable [Individual skill dropdown list] if it is at least ___. (Overrides previous setting)
[  ] Exclude dwarves in [Group Dropdown List (such as Has Nickname, Profession, In a Squad, etc)]

[  ] Nickname all dwarves in this priority group _Serf_.

[  ] Military is reserved before this group.

3. Add a checkbox [Re-commit changes every 60 seconds.]

So by using this if/and/or list sort, and repeating it for the groups, highest to lowest, you could tell it stuff like "I always want the best 1 carpenter per workshop, 1 mason per workshop but a minimum of 2 even if the shops get torn down... and always turn off the other skills on those except medical if they have any skill in it... next I want the best 5 farmers, miners and hunters from whoever is left... at this point I want it to sort out every single male dwarf with at least a single point in a combat skill and nickname them "Grunt" and disable all of their skills except healthcare stuff and hunting... and lastly for every dwarf and skill left over I want to have the best 3 workers (ie a minimum) but also to enable anything left in this group that they actually have a skill point in.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kadaan on May 25, 2011, 06:34:06 pm
Oh! no, it is checking for INI files.  If it does not recognize the version it will look for and download them from the main site.

if it cannot connect, the last version .6.10 will work with is v0.31.21 graphics + legacy

* it also does version checking though I think in the newest ones.

If you want to download the memory layouts for the new version manually you can get them from here -> http://code.google.com/p/dwarftherapist/issues/detail?id=328#c2

That worked! THANK YOU! :D
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on May 26, 2011, 03:05:31 am
Oh! no, it is checking for INI files.  If it does not recognize the version it will look for and download them from the main site.

if it cannot connect, the last version .6.10 will work with is v0.31.21 graphics + legacy

* it also does version checking though I think in the newest ones.

If you want to download the memory layouts for the new version manually you can get them from here -> http://code.google.com/p/dwarftherapist/issues/detail?id=328#c2

That worked! THANK YOU! :D

Most welcome, Glad things are working now.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Urist McScoopbeard on May 26, 2011, 05:53:25 pm
OK, so I just got 31.25 after a lengthy sabattical. And picked this up. After dling the formats for .25 I'vef ound that when trying to update dwarves with new skills, it freezes. Could anyone help me? also could windows7 be a problem?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: nordak on May 28, 2011, 02:14:16 am
Hell, DT worked out of the box for me with the newest version with win 7.

Edit: on a side note working means functional, not glitchless... still can't see the dwarves last names, or they are all of the UnkownUnkown family
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on May 29, 2011, 11:11:44 am
How do you install it on Linux? I found a file on DFFD and i tried it. But it doesn't work...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ghalidrim on May 29, 2011, 09:14:00 pm
Alright, I have a semi-working port for OS X up and running, there are some things still not working (mostly the automatic new version scans, I'm working on those), but many people have had success with job reading/writing and profession setting. If you have any issues with the OS X build please let me know, I will continue to work on it and support it as long as I can.

Download from: http://dffd.wimbli.com/file.php?id=4463 (http://dffd.wimbli.com/file.php?id=4463)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: bremarv on May 30, 2011, 04:05:33 pm
How do you install it on Linux? I found a file on DFFD and i tried it. But it doesn't work...

We need some more info to help. How did you install it, how did you try to run it, did you get any error messages, that sort of stuff.

I think you should only need to extract the files and it should work by just running the executable. For me I ended up copying the executable and etc foder into the same folder and it worked, but I built it from source.

if it is a package(like .rpm) and not an archive (like .tar) you should install it using your package manager. Googling something like install rpm ubuntu (if its an rpm and you are using ubuntu) should get you some good instructions.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Psilobe on June 01, 2011, 01:26:04 pm
Got a problem where I get Unkown Unkown for the name on all dwarfs. If I show full name I get their first name before the nicks I gave them but still unkown after the nicks.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kubouch on June 01, 2011, 02:42:28 pm
Psilobe: Try to run DT when you are see your fortress in DF. I had the same problem when I had run DT when DF wasn't running. When I noticed it with DF running I restarted DT and it was fine.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Lost_Deep on June 02, 2011, 03:19:11 pm
So, my fortress received a wave that put my dwarfs up to 36. I realized that I could not easily manage all of them, so I tried Dwarf Therapist. two minutes later I had my idle dwarves down to a third of what they were, and another minute later it was at zero. Thank you, DT is beautiful.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: black overlord on June 04, 2011, 07:58:50 am
it's not working for me. therapist just closes itself few seconds after it loads my dorfs. it's getting annoying now.

this happens when i run the therapist without running df too
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on June 04, 2011, 09:55:12 am
What do you mean closes itself?

Do you mean it fails with an error or do you mean it just goes byebye?

This sounds like it may be the fault of an oversensitive heuristics on an anti-virus program.

Try disabling your antivirus program and see if it still does it.   If it does not, add DT  to your exceptions, and turn it back on.

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: black overlord on June 04, 2011, 10:36:44 am
i tried running it after closing my web browser because that was the only program still running, it said "no disc" and worked. i don't know what the hell is going on but thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on June 04, 2011, 12:03:52 pm
I have no idea either, and it concerns me.

I would normally charge for this, but since  you are probably quite a ways away from me....

Have a friend download the CD image from here, or you can do it if your machine seems to do most things ok -> http://www.avg.com/us-en/avg-rescue-cd 

Burn it to a cd, and then boot your computer from it. (you will have to press a key at bootup, usually F10, sometimes escape, and select your CD-rom drive)   Then run a complete virus scan.  I have no proof, but when computers start acting weird, a Pre-Installation environment virus scan is always in the cards.

The "no disk" error is most troubling, because it probably means your machine tried to access a CD-rom drive or a card reader slot for no reason.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: eddyg86 on June 05, 2011, 08:07:54 am
blessed be - man i almost gave up DF cos of that bloody labor menu. this changes the game.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on June 05, 2011, 10:02:40 pm
How do you install it on Linux? I found a file on DFFD and i tried it. But it doesn't work...

We need some more info to help. How did you install it, how did you try to run it, did you get any error messages, that sort of stuff.

I think you should only need to extract the files and it should work by just running the executable. For me I ended up copying the executable and etc foder into the same folder and it worked, but I built it from source.

if it is a package(like .rpm) and not an archive (like .tar) you should install it using your package manager. Googling something like install rpm ubuntu (if its an rpm and you are using ubuntu) should get you some good instructions.
Okay, so I used puppy linux and extracted the .tar.bz2 file to a folder. But after I click the execute button, nothing happens.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on June 05, 2011, 10:16:56 pm
waitwaitwait it's something about the libraries.
(http://img821.imageshack.us/img821/4475/errorlo.png)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Tiny on June 06, 2011, 11:47:22 pm
If you havn't got there already....

You need to install the QT framework, it should be in whatever software mangement thing your distro uses, if not oyu can get it from http://qt.nokia.com/downloads (http://qt.nokia.com/downloads).
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Peewee on June 07, 2011, 02:06:49 pm
*screen capture of textual output*

*facepalm*

For future debugging, use
Code: [Select]
[command and switches etc. goes here] > error.txtto send the output to a easy to share text file. (in forums just share like select all -> copy -> paste in forum)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on June 07, 2011, 06:02:53 pm
is it possible to not install it? or is there another thing like dwarf therapist that doesn't require it? because i dont want my linux save file to go over 325 mb...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Elaxter on June 07, 2011, 08:28:56 pm
awesome! Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: bremarv on June 08, 2011, 11:25:19 am
is it possible to not install it? or is there another thing like dwarf therapist that doesn't require it? because i dont want my linux save file to go over 325 mb...

if you are going to use DT you need to have it. Also qt don't go into the df directory, you install it on the computer, kind of like having install graphics drivers to use your graphics card.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on June 08, 2011, 06:23:35 pm
so is there a program that is like dwarf therapist but doesnt require QT?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on June 08, 2011, 06:30:52 pm
so is there a program that is like dwarf therapist but doesnt require QT?
Why wouldn't you get QT? Doesn't puppy linux have a package manager?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on June 08, 2011, 10:51:23 pm
Yes, but Qt is like 600 mbs. I'm not supposed to make my save file over around 250 mbs.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on June 09, 2011, 07:38:57 am
Yes, but Qt is like 600 mbs. I'm not supposed to make my save file over around 250 mbs.
Oh. I get it. You're using a weird distro that stuffs things into a mounted file (the 'save file') or something? I can tell you 64bit Qt on my machine is just 24MB while *compressed* - this is without debug symbols and documentation - just the libs and headers. You shouldn't need more space for it.
Title: Re: Dwarf Therapist (LATEST 0.6.3 10/3/10 see first post)
Post by: nanomagnetic on June 10, 2011, 01:57:27 am
doesn't work sadly, "LD_LIBRARY_PATH=. ./bin/DwarfTherapist" gives me:

Code: [Select]
./bin/DwarfTherapist: symbol lookup error: ./bin/DwarfTherapist: undefined symbol: _ZN9QHashData14detach_helper2EPFvPNS_4NodeEPvEPFvS1_Eii

I get the same error message when I try to run dt (The linux alpha that is). Down to the letter I think.

A search on this thread shows this linux issue was never resolved. I was able to reproduce that error by trying to run dwarf therapist .6.4 from the google code page while running 31.25

Probably not the best idea, but I thought was worth a shot after I was able to get both windows versions of DF and DT to run in wine.

So, I guess I don't have anymore insight into the undefined symbol. At the moment I'm compiling from source, and I'll see if that works out.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Andir on June 10, 2011, 09:32:56 am
Yes, but Qt is like 600 mbs. I'm not supposed to make my save file over around 250 mbs.
Oh. I get it. You're using a weird distro that stuffs things into a mounted file (the 'save file') or something?

I would like more information on these solutions please.  (Personal request)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Thundercraft on June 12, 2011, 09:13:09 pm
Posting to watch this thread...  ;)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Thundercraft on June 13, 2011, 03:17:50 am
(toad edit: removed spambot interlude, not a double post)

Exactly.

You probably assumed that I used the "Notify" tab. But I don't use that function very often and when I do I disable it before long.

Like Farmerbob, I use the Show new replies to your posts (http://www.bay12forums.com/smf/index.php?action=unreadreplies) link at the very top left corner of each page. And I use this link regularly to stay on top of topics I'm interested in and have posted at least once in. Personally, I find this more useful than the Show unread posts since last visit (http://www.bay12forums.com/smf/index.php?action=unread) link or the Notify function.
Title: Added filter script editing
Post by: Joakim on June 15, 2011, 11:30:45 am
I added some functionality to the "Edit Filter Scripts..." menu that currently doesn't do anything. The change is in a cloned repository, but googlecode doesn't seem to update immediately. Hopefully it should appear soon.

http://code.google.com/r/joakimisraelsson86-dwarftherapist-script-editing/

EDIT: Aah, silly me being new with Mercurial... Now that I've realized the differences between commit and push, the changes have appeared. :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Mr.Loki on June 16, 2011, 03:41:58 pm
Why does the therapist try to connect to the internets?

And I didn't find anything, when flying over the last few pages, though it probably stands somewhere...: Is there going to be a version compatible with DF .31.25 anytime soon?

Thanks for any answers in advance, Loki :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Andir on June 16, 2011, 04:40:35 pm
Why does the therapist try to connect to the internets?
If I remember correctly, it's a simple version check.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on June 16, 2011, 04:58:33 pm
Why does the therapist try to connect to the internets?

And I didn't find anything, when flying over the last few pages, though it probably stands somewhere...: Is there going to be a version compatible with DF .31.25 anytime soon?

Thanks for any answers in advance, Loki :)

It connects to the internet to download the memory layout for .31.25 .....

Yes... seriously...


Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Particleman on June 20, 2011, 04:10:59 am
I know DT is supposed to update automatically but for some reason that's not working for me. My knowledge of programming and the like is fairly limited and scattershot, so can someone please post the stuff I need to get DT 6.10 working with DF 31.25 and tell me how to apply it?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Thundercraft on June 20, 2011, 04:27:29 am
I know DT is supposed to update automatically but for some reason that's not working for me. My knowledge of programming and the like is fairly limited and scattershot, so can someone please post the stuff I need to get DT 6.10 working with DF 31.25 and tell me how to apply it?
Is your firewall (such as Windows Security settings) blocking DT from the Internet?
Anyway, a few pages back in the thread...
Oh! no, it is checking for INI files.  If it does not recognize the version it will look for and download them from the main site.
...
[snip]
If you want to download the memory layouts for the new version manually you can get them from here -> http://code.google.com/p/dwarftherapist/issues/detail?id=328#c2
Quote
Comment 1 by shawn.weiner, Apr 25, 2011
It appears that you are running without the updated memory layouts for 31.25.

Download the two files that I've attached to my comment, then put them in the \etc\memory_layouts\windows within your dwarf therapist directory.  This should allow your DT to work with 31.25
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Particleman on June 20, 2011, 05:43:05 am
Ahh... I overlooked that. Thank you.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ottottott on June 23, 2011, 05:18:28 am
Hi! I was wondering, is there any way to use this for .25? It says, that the last supported version is .21, but... with some changes to a file or two, it's possible, right?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Dr. Hieronymous Alloy on June 23, 2011, 07:16:00 am
Is it just my imagination or did there used to be a way to view dwarves' *attributes* in Therapist?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Chandrak on June 24, 2011, 04:27:17 pm
Hi! I was wondering, is there any way to use this for .25? It says, that the last supported version is .21, but... with some changes to a file or two, it's possible, right?

It works, at least on Windows 7 64bit. When I told it to read the dwarves the first time, it bombed, but when I opened it again it detected that there was an update. Whoever updated it got it working for .25; it works fine for me, though it a little slow, like sometimes you have to click repeatedly on things to get it to sort. But it works. I used it all through today.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Eldrick Tobin on June 24, 2011, 04:38:39 pm
Hi! I was wondering, is there any way to use this for .25? It says, that the last supported version is .21, but... with some changes to a file or two, it's possible, right?

Why does the therapist try to connect to the internets?

And I didn't find anything, when flying over the last few pages, though it probably stands somewhere...: Is there going to be a version compatible with DF .31.25 anytime soon?

Thanks for any answers in advance, Loki :)

It connects to the internet to download the memory layout for .31.25 .....

Yes... seriously...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ottottott on June 25, 2011, 12:34:16 am
Um... Damn! I went and did this manually...
Am I allowed to delete older memory layouts if I don't use DT with those versions anymore?
Also, why are there two memory layouts for each version? Do I need both?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on June 25, 2011, 08:50:18 am
Um... Damn! I went and did this manually...
Am I allowed to delete older memory layouts if I don't use DT with those versions anymore?
Also, why are there two memory layouts for each version? Do I need both?

There are 2 versions of dwarf fortress,  the SDL version and the Legacy version.  Your memory layout has to match the version you have.   If you are using .25 SDL you can remove  the memory layouts and it will redownload the one you need.

BTW make sure you run DT as administrator.   Not everyone has to, but it might save you some grief if you do.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ottottott on June 25, 2011, 11:19:03 am
Is there any way of checking what version I have, without using DT?
Also, it doesn't recognize the military tactics skill...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on June 25, 2011, 01:06:37 pm
Is there any way of checking what version I have, without using DT?
Also, it doesn't recognize the military tactics skill...

Yep start DF, select about DF menu option, if there is a thing about SDL in purple you have the SDL version, if not, you have the legacy version.    The version number is down on the lower right hand corner.


As for the tactics skill, there are actually quite a few things missing.   DwarvenEngineer has been slacking a bit, but since he doesn't get any money for doing this, I think that is entirely his choice.

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ascaronth on June 30, 2011, 10:04:43 pm
I post this, but I seariously doubt my problem will ever be solved, so I'll just bear with vanilla management I guess. Anyway I'm using Archlinux, so I built the code following the instructions. Installed mercurial (already had Qt installed) and downloaded the source. Ran qmake in dwarftherapist directory and it didn't give any errors. Ran make, still no errors. But when I try to launch DwarfTherapist (located in dwarftherapist/bin/release/) the main window flashes for a second and then shuts down. Running from terminal I get the following output.

Spoiler (click to show/hide)

Running as sudo: same
Building as sudo: same
Building as sudo and running as sudo: same
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on July 02, 2011, 12:21:01 am
do you have 64 bit libraries installed?  I have heard things like this happen if you do.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ascaronth on July 04, 2011, 06:25:36 pm
Nope, mine is an all-32 bit system.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: bremarv on July 06, 2011, 06:12:24 am
The problem is probably that you need to have the dwarftherapist executable and dwarftherapist/etc/ in the same folder. When running from bin/release/ I get the same symptom as you ( main window flashing) and the same output, except for the "unknown error" at the end. I get the timer messages even when dt runs properly, so don't worry about them.

I also run 32bit Archlinux.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on July 17, 2011, 11:04:09 am
Hello.
In the dfapi branch of DFHack (DFHack inside DF), I managed to get Qt working. This opens up some options, including making DT into a DFHack plugin (and getting the benefits of direct access to DF's memory). At this point, I'll do this as an experiment. I'd like to hear from you guys - mainly what you think about this. The last attempt of porting DT to DFHack didn't end well and I wouldn't want that to happen again.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: _DivideByZero_ on July 19, 2011, 12:46:41 pm
Uhh, guys, sorry for the necro, but how do I install this on linux? I managed to get it running before but I kind of... forgot.

I'm running Ubuntu Natty 64 bit.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Chakravanti on July 25, 2011, 06:05:00 pm
Works so far on Ubuntu 11.04 64.  I got it running compiled with QTCreator then copying the binary to the program's base directory.  Won't run properly without sudo privledges and i need to investigate what sort of privlidges it is missing.

EDIT: - DOH that's in the included documentation (elevated privliges for ptrace)
EDIT2 - DERP: http://www.bay12forums.com/smf/index.php?topic=65326.0
I still get

Code: [Select]
Could not open logfile for writing! "No such file or directory"
Application asked to unregister timer 0x1d000008 which is not registered in this thread. Fix application.
Application asked to unregister timer 0x9000008 which is not registered in this thread. Fix application.
Application asked to unregister timer 0x18000009 which is not registered in this thread. Fix application.
Application asked to unregister timer 0x48000014 which is not registered in this thread. Fix application.

Any way it runs.

Df 31.25 & DT 6.10

omfg i can finally use DT and actually play DF I always wanted a bigger fort and could never deal witht he frustration of managing and never got DT to work so YAY.  Will report baxck on acutal usage!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DrKillPatient on July 28, 2011, 03:01:12 pm
EDIT: I had an entire post concerning a massive screwup in Arch 64 here, but I just noticed bremarv's solution up there so I'll get rid of it to save some space =P

Uhh, guys, sorry for the necro, but how do I install this on linux? I managed to get it running before but I kind of... forgot.

I'm running Ubuntu Natty 64 bit.

http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist should work.

Chakra, you might want to create a 'log' folder in /bin/release. That way errors and such will write there if something's wrong. Right now DT can't find it, or so your output says.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ninja137 on July 28, 2011, 11:01:52 pm
Does this support .31.25 yet? Is it ever going to if it doesnt currently do so?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Sphalerite on July 29, 2011, 08:48:17 am
It seems to, I have DT 0.6.10 and I've been using it with DF 0.31.25 without any problem.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Garm on August 04, 2011, 11:30:19 pm
I just thought I'd post to say it is definitely not working with mine.  I had been playing an older version of DF and after downloading the newest one find therapist to be incompatible.  Opens fine, connects to DF fine but then crashes when I try to load the dwarves.

I redownloaded and it doesn't work.  I'm not at all surprised but thought I'd post simply to back ninja up and say my experience is different to Sphalerite's (unfortunately).
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: vityav on August 07, 2011, 04:01:33 pm
It works for my 31.25 in Fedora 14 x64. I had to compile it from source, but if you're willing to do that it works beautifully.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Carn on August 11, 2011, 08:05:33 am
Doesn't seem to work for my .25, but it does for my room mate and we're running the same OS. Madness.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Hark! on August 12, 2011, 08:29:12 am
Aarrgh please make it for mac?!!?!??
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Chakravanti on August 16, 2011, 10:27:47 am
Have you even tried to compile it for a mac?

If you want to post that it doesn't work for you then you should probably post information like the people for whom it does work have done.  it would be a lot more helpful in determining why.  Else we're to conclude incompetence if we've not even been supplied with basic diagnostic information.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: thor82 on August 17, 2011, 08:26:12 am
i have a mac, but never compiled anything on it.

how should i try it?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: UristMcHuman on August 17, 2011, 07:32:49 pm
I haven't seen how hard DF is to play without Dwarf TheRapist, but one of my forts has a population of 52, and I'm getting annoyed at the insane amounts of dwarfs I have to 'v'iew just to change labours.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ghills on August 17, 2011, 09:49:26 pm
Doesn't seem to work for my .25, but it does for my room mate and we're running the same OS. Madness.

Have you enabled automatic updating? DT needs the latest Memory.xml, and the easiest way to get that is autoupdating.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Chakravanti on August 18, 2011, 03:14:57 pm
i have a mac, but never compiled anything on it.

how should i try it?

I shit about compiling in mac but google it and hope for the best.  Try 'qt mac compile'
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: UristMcHuman on August 30, 2011, 03:06:54 pm
Is this a .ZIP file?

What does DT do, exactly?

I've never used these utilities yet.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Andir on August 30, 2011, 03:21:15 pm
Is this a .ZIP file?

What does DT do, exactly?

I've never used these utilities yet.
Everything you ever wanted to know can be found: http://www.bay12forums.com/smf/index.php?topic=66525.0

You'll want to check out the link to the project page to get a list of features.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Forumite on September 01, 2011, 06:04:24 am
I was thinking about trying to compile it for the Mac, but I didn´t see any recent version of the sourcecode.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stamasd on September 08, 2011, 02:26:12 pm
Can't get the latest source code to run on Linux (Ubuntu 9.04)

It compiles fine according to the instructions at http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist

However when I run the binary (while having DF itself running of course) the DT window appears for a split second then disappears. I get the following in the terminal I am running the compiled DT from:

Code: [Select]
Could not open logfile for writing! "No such file or directory"
"Unknown error"

(edit) scratch that. It runs if I launch it not from the directory where the binary is, but from the root of the source code with "bin/release/DwarfTherapist"
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Vehudur on September 12, 2011, 10:27:06 am
The auto-updater says it's updated (I even went so far as to reinstall Dwarf Therapist) and I still get errors when I attempt to run with DF 0.31.25, and it looks to me as if it isn't updated.  Should I post the run.log for you?  Or is there something else I should do here?

This is the specific error message:
Code: [Select]
I'm sorry. I'm having trouble connecting to DF.  I can't seem to locate the PEB address of the process.

Please re-launch DF and try again.

I have attempted re-launching DF and it has not fixed it, I've also attempted:
Running DT only when I can see the fortress,
Running DT then DF,
Running DF then DT when I can see the fortress and attempting to force DT to scan for dwarves while a fortress is active, which should work but instead resulted in a hard crash of DT >:( .

I'm probably missing something obvious and simple here.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Andir on September 12, 2011, 10:56:02 am
Windows 7?  I thought there was a post a bit back about some new protection you have to disable....
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Vehudur on September 12, 2011, 11:34:48 am
Nope, I'm still running XP.   Lol32bit, I know right?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Andir on September 12, 2011, 11:53:23 am
Shouldn't have any issues on XP.

Also, no laughing here... there's a lot of XP that I actually still prefer to WinVista+ and I still work with XP every day even though I've been give two opportunities to update my Work PC.  I use 7, but I only use it for games so it's basically a Steam Console for me.  My non-gaming/everyday is a Debian laptop.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Vehudur on September 12, 2011, 12:24:23 pm
Yeah, I've no idea why it isn't working.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Elvang on September 12, 2011, 02:53:16 pm
The packaged download only contained memory layouts upto 0.31.21 for me. You'll need to download the layouts for .22+ from here (https://code.google.com/p/dwarftherapist/source/browse/#hg%2Fetc%2Fmemory_layouts) and stick them in the etc/memory_layouts folder.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Vehudur on September 12, 2011, 04:01:13 pm
I updated those files, and it didn't fix it.  Still the same error.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ghills on September 13, 2011, 07:07:01 pm
The auto-updater says it's updated (I even went so far as to reinstall Dwarf Therapist) and I still get errors when I attempt to run with DF 0.31.25, and it looks to me as if it isn't updated.  Should I post the run.log for you?  Or is there something else I should do here?

This is the specific error message:
Code: [Select]
I'm sorry. I'm having trouble connecting to DF.  I can't seem to locate the PEB address of the process.

Please re-launch DF and try again.

I have attempted re-launching DF and it has not fixed it, I've also attempted:
Running DT only when I can see the fortress,
Running DT then DF,
Running DF then DT when I can see the fortress and attempting to force DT to scan for dwarves while a fortress is active, which should work but instead resulted in a hard crash of DT >:( .

I'm probably missing something obvious and simple here.

Have you tried reinstalling DF? Sometimes the download gets corrupted. Or, try downloading the LNP and seeing if that version works. 
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Vehudur on September 13, 2011, 11:03:39 pm
I'll give it a shot.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Vehudur on September 14, 2011, 04:59:02 pm
Nope, reinstalling both DF and DT (and then updating those files again) did not fix it.

Yes, I know I'm an evil elf for double posting.

EDIT:

Fixed it.

Turns out I had a few very nasty registry errors that I had to fix.  I've no idea WHY they were screwing with DT as they were unrelated, but, it seems to have fixed it.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on September 18, 2011, 11:26:55 am
I tried Dwarf Therapist on Ubuntu:
and this is what I got after the "LD_LIBRARY_PATH= ...etc"

LD_LIBRARY_PATH= /home/prestonpc/Games/dt/bin/DwarfTherapist >error.txt
Could not open logfile for writing! "No such file or directory"
Application asked to unregister timer 0x1d000008 which is not registered in this thread. Fix application.
Application asked to unregister timer 0x7b000008 which is not registered in this thread. Fix application.
Application asked to unregister timer 0xa000009 which is not registered in this thread. Fix application.
Application asked to unregister timer 0x74000013 which is not registered in this thread. Fix application.

Dwarf Therapist popped up for a bit, then it shut down and gave me that
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DrKillPatient on September 18, 2011, 11:34:21 am
I tried Dwarf Therapist on Ubuntu:
and this is what I got after the "LD_LIBRARY_PATH= ...etc"

LD_LIBRARY_PATH= /home/prestonpc/Games/dt/bin/DwarfTherapist >error.txt
Could not open logfile for writing! "No such file or directory"
Application asked to unregister timer 0x1d000008 which is not registered in this thread. Fix application.
Application asked to unregister timer 0x7b000008 which is not registered in this thread. Fix application.
Application asked to unregister timer 0xa000009 which is not registered in this thread. Fix application.
Application asked to unregister timer 0x74000013 which is not registered in this thread. Fix application.

Dwarf Therapist popped up for a bit, then it shut down and gave me that

From the DT build readme:

Quote
The build output directory for dwarf therapist is parallel to the root of the source directory and named dwarftherapist-build-desktop. In order to run dwarf therapist you should create an empty log directory under the release or debug directory, and copy the etc folder to the same location. You should end up with a directory structure such as this:

    bin
        debug
            etc
            log
            DwarfTherapist.exe
        release
            etc
            log
            DwarfTherapist.exe

Once you have this structure, you should be able to launch DwarfTherapist and execute step-through debugging.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on September 18, 2011, 11:38:10 am
what?
I'm sorry, I'm just a newb :P
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on September 18, 2011, 11:39:23 am
there is no release or debug category.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DrKillPatient on September 18, 2011, 02:40:31 pm
Oh, did you not build it from source? Can you post the structure of your dwarftherapist directory, then?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: PFactorial on September 18, 2011, 03:18:10 pm
Theres way too many files...I'm using the Linux version that I just downloaded and extracted to a folder
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: fci525 on October 17, 2011, 05:52:38 pm
I'm having trouble running therapist in Ubuntu 11.10. I built it from source following the instructions on the site, and things went fine for the most part. It even starts, but then it immediately quits. It gives slightly different output (one extra line) when I actually have a fort loaded than when I don't.


Spoiler: Dwarf fortress running (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on October 17, 2011, 09:02:08 pm
You have a problem: you are using a nanny-like linux distribution. It assumes that you are a simple user and protects you from anything that resembles a threat. This is a good thing, in some cases. In other cases, it's breaking basic functionality, like debugging.

Anyway, to fix the problem:
Code: [Select]
kernel.randomize_va_space = 0
kernel.yama.ptrace_scope = 0
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Modest Moose on October 17, 2011, 10:12:10 pm
You have a problem: you are using a nanny-like linux distribution. It assumes that you are a simple user and protects you from anything that resembles a threat. This is a good thing, in some cases. In other cases, it's breaking basic functionality, like debugging.

Anyway, to fix the problem:
  • Open /etc/sysctl.conf as root and add these lines:
Code: [Select]
kernel.randomize_va_space = 0
kernel.yama.ptrace_scope = 0
  • Save
  • Reboot

Im having the exact same problem, and this solution did nothing for me. Im on 10.10, i believe. (Oneiric Ocelot, most recent update)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: fci525 on October 17, 2011, 10:24:53 pm
That took care of "ptrace attach: Operation not permitted". But now I'm just getting "Unknown error". Which I guess doesn't help much with diagnosing the problem.

If it helps, here's the output of run.log when therapist is run while a fort is loaded:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on October 18, 2011, 06:39:40 am
You need new memory offset/layout files. But you shouldn't *need* new files, because they are already in.

So, I guess you got your source code from some outdated archive.

Try to get the current state:
hg clone https://code.google.com/p/dwarftherapist/

Obviously, you need 'mercurial'. Hmm. When did they switch from svn? Interesting...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: fci525 on October 18, 2011, 09:44:24 am
That did it. I originally used the instructions on the BuildingDwarfTherapist (https://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist) page, which were slightly different than the ones on the source page. But I've got the right stuff now, so thanks for the help.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: MrOassis on October 18, 2011, 10:25:11 am
All I can say is this.
Thank you so much for helping maintain this mod for the community
It is THE mod for Dwarf Fortress
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Romeofalling on October 18, 2011, 01:00:52 pm
Just discovered that Therapist has released a Mac version since the last time I played! Since my PC died, this makes me a very happy dwarf indeed!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Modest Moose on October 18, 2011, 01:05:53 pm
Ugh, still having the same crash with the most recent version.

EDIT: Fixed it by running it from the root directory with sudo.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: yamgrenade on October 20, 2011, 08:32:05 pm
I had this working beautifully on Windows 7, but wen I tried it on my school issued laptop (Windows XP) It wouldn't work. I am pretty nooby and I really need this to manage my fortress. I don't know if it's the restrictions on the laptop or some other thing. I'm fairly tech-savvy but I don't want to fiddle with unnecessary settings. If anyone could help I would be hugely appreciative.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Mike Mayday on October 21, 2011, 07:41:10 am
Is Therapist still being developed? Or just... Supported?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on October 21, 2011, 08:14:49 am
Is Therapist still being developed? Or just... Supported?
Well. I have no idea. I have this thread in my notification list and try to help people who have problems with it... that's about it. You could say that it's supported, but I'm not even looking at the code.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: yamgrenade on October 21, 2011, 08:18:54 am
Is Therapist still being developed? Or just... Supported?
Well. I have no idea. I have this thread in my notification list and try to help people who have problems with it... that's about it. You could say that it's supported, but I'm not even looking at the code.

Do you know anything about my problem? I can't find anything on it....
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on October 21, 2011, 09:55:23 am
I had this working beautifully on Windows 7, but wen I tried it on my school issued laptop (Windows XP) It wouldn't work. I am pretty nooby and I really need this to manage my fortress. I don't know if it's the restrictions on the laptop or some other thing. I'm fairly tech-savvy but I don't want to fiddle with unnecessary settings. If anyone could help I would be hugely appreciative.

"It wouldn't work" - see How to Report Bugs Effectively ( http://www.chiark.greenend.org.uk/~sgtatham/bugs.html )

What happens? DT is not starting, DT crashes on start, DT is unable to connect to DF, ...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on October 21, 2011, 10:25:59 am
Is Therapist still being developed? Or just... Supported?
Well. I have no idea. I have this thread in my notification list and try to help people who have problems with it... that's about it. You could say that it's supported, but I'm not even looking at the code.

Do you know anything about my problem? I can't find anything on it....
I can only guess. In the past, I had to drop support for any versions of Windows older than XP SP 3 and even there, it was a major struggle to get things running - had to drop Win 2000 because its kernel API is just missing some essential bits and later XP < SP3 for similar reasons. Getting the new 'stonesense as plugin' running on XP was a battle several days long.

Now... what problem could it be? Maybe missing system libraries. Maybe a problem with DT calling kernel functions that don't exist at all on XP. Maybe little green men from Mars messing with the computer :P

Here's what you can do though.
Get the app from here: http://www.dependencywalker.com/
And open DT's .exe file in it. Note any errors.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: yamgrenade on October 21, 2011, 11:45:29 am
Sorry for being cryptic with my post.

The main problem is that whenever DF and DT are running at the same time, DT will stop responding. I know it happens when you try to read dwarves because I set it to not connect automatically, and when I connect and read dwarves, it will just freeze. I have waited and it doesn't respond. I will try that app, and I'll post as soon as I have run it.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: yamgrenade on October 21, 2011, 11:59:00 am
These were 2 errors in the first message box.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Mike Mayday on October 21, 2011, 01:27:07 pm
You could say that it's supported, but I'm not even looking at the code.

Peter, YOU could write an AAA game without looking at the code, so that's not saying much. ;)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: peterix on October 22, 2011, 07:06:31 am
These were 2 errors in the first message box.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.
Well. That doesn't tell me much about your problem. Only that you have a problem. The app will put red icons next to stuff that's bad - namely missing 'modules' and missing imported symbols. Somewhere in that window should be some kind of hint as to what the problem is. Hmm. Just make the app full screen and post a screenshot... that will be easier than explaining what all those things are :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Shishimaru on October 30, 2011, 05:36:19 pm
I have made a clone of Dwarf Therapist with some added features:

- a tab with the list of the tamed creatures and the possibility to set which of them have to be butchered (it should work with any mod because reads the races names from the raw)
- reenabled and expanded the reading of the physical attributes (strength, agility, toughness, endurance, recuperation, disease resistance). The description of the attribute should match the in game description with any mod (it reads the attributes mean values from the raws)
- age of the selected creature
- group by caste (it should work with any mod because reads the caste names from the raws)
- group by race (for the dwarf it shows dwarf, baby, child)

I have modified the Windows layout for 31.25 graphic version only, so it will not work on any other version for now.

Anyone interested in it can get the source of this clone here:
 hg clone https://code.google.com/r/shishimar-dwarftherapist/

or download the compiled version here:
http://dffd.wimbli.com/file.php?id=5130

PS
There is anyone out there that knows how and where the pasture zones are codified in the DF memory?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kogut on October 31, 2011, 10:36:43 am
Is it planned to fix beekeeping bug? (In DT or clone).
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: arclance on October 31, 2011, 01:35:47 pm
I have made a clone of Dwarf Therapist with some added features:

- a tab with the list of the tamed creatures and the possibility to set which of them have to be butchered (it should work with any mod because reads the races names from the raw)
- reenabled and expanded the reading of the physical attributes (strength, agility, toughness, endurance, recuperation, disease resistance). The description of the attribute should match the in game description with any mod (it reads the attributes mean values from the raws)
- age of the selected creature
- group by caste (it should work with any mod because reads the caste names from the raws)
- group by race (for the dwarf it shows dwarf, baby, child)

I have modified the Windows layout for 31.25 graphic version only, so it will not work on any other version for now.

Anyone interested in it can get the source of this clone here:
 hg clone https://code.google.com/r/shishimar-dwarftherapist/
Not working quite right for me on Ubuntu 11.04.
Here is my militia commander in game.
Spoiler (click to show/hide)
And in your Dwarf Therapist.
Spoiler (click to show/hide)
Age (7168 years old, and the world is only 519 years old) and physical attributes are not right (large negative values). Name translation seems close though. 
Animals appear to be working but there are some "stray" and "stray unknown" creatures turning up.
Butchering toggle in the animals tab is working.
Group by race works. 
Does group by cast ignore male/female casts?
If it does I don't have a save setup to test that right now.
If it doesn't it is not working.

PS
There is anyone out there that knows how and where the pasture zones are codified in the DF memory?
Stonesense can detect the location of zones you might want to ask in the Stonesense thread.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Shishimaru on October 31, 2011, 03:14:19 pm
Not working quite right for me on Ubuntu 11.04.

I have modified only the memory layout for the Windows version, adding the offsets for the attributes, the caste, the address for the current year and a new valid_flag (valid_flags_3)

The group by caste ignores the male/female caste (for that there is already the sex)

I can't test it, but this should be the modified linux 0.31.25 memory layout:

Code: [Select]
[info]
checksum=0xfc15065c
version_name=v0.31.25
complete=true

[addresses]
translation_vector=0x0944c41c
language_vector=0x0944c404
creature_vector=0x0940b174
dwarf_race_index=0x093f2b5c
squad_vector=0x09449064
current_year=0x093F0600

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0144
current_job=0x025c
states=0x0
souls=0x0530
labors=0x054C
happiness=0x05DC
squad_ref_id=0x0640
caste=0x00A4
birth_year=0x01A0
strength=0x310
agility=0x32C
toughness=0x348
endurance=0x364
recuperation=0x380
disease_resistance=0x39C

[soul_details]
skills=0x01C4
traits=0x01DC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[valid_flags_3]
size=1
1\name=Untamed
1\value=0x04000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

Thanks for the Stonesense hint, I will give it a try
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: arclance on October 31, 2011, 03:42:42 pm
I can't test it, but this should be the modified linux 0.31.25 memory layout:
It works.
Spoiler (click to show/hide)
Except for translating names sometimes it does something weird like this.
Spoiler (click to show/hide)
Erib has "Bust_nounabbey" and Edem picked up an extra word "wealth"
I don't know if this has anything to do with your code though, it did not even try with the normal version if I remember correctly.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Shishimaru on October 31, 2011, 04:08:57 pm
Thanks for the feedback, I have updated the repository and the compiled version

For the names translations I have only enabled them, the code was already there, but it seems that it wasn't enabled on purpose cause it isn't yet debugged. I will try to fix this if I can.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ledi on November 07, 2011, 01:02:52 am
Shishimaru, any chance you could get the animal's properties to show - like size/muscle etc? I know I can double click on it to see (my duck has 84 rebellousness) but if it was part of the layout it would make butchery time so much easier (keep only the alpha male, the largest females etc etc).
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Ult1mara on November 08, 2011, 02:11:47 pm
For some reason this wont work on my DF games/mods. For some reason.

The error Message I get is that it cannot connect to the PEB destination
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: jasonwill2 on November 10, 2011, 04:57:54 pm
uh... so will this newest version not work with the version of DF released last March, v 0.32? dang.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: profit on November 11, 2011, 03:24:32 am
uh... so will this newest version not work with the version of DF released last March, v 0.32? dang.

Far as I know it works with every release.   I use it on 0.31.25 currently.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Shishimaru on November 11, 2011, 05:23:44 pm
Shishimaru, any chance you could get the animal's properties to show - like size/muscle etc?
I will try, but I don't know where to find the size. I'm doing some research.

uh... so will this newest version not work with the version of DF released last March, v 0.32? dang.
The version of DF released last March is v 0.31.25
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: jasonwill2 on November 12, 2011, 05:12:09 am
ya something is not working right for me when i try to use the program with DF
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: IamanElfCollaborator on November 18, 2011, 01:04:42 pm
How do I modify the race that DT gives labors to? I'm using s Dfusion fort and it is a pain having to give labors manually.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Mdort Goblinsmiter on November 26, 2011, 02:20:02 am
Why does this program need to open a network connection to 74.125.127.141:80?

From what I've been able to gather this is a Google owned ip address.... is it to do with google code, maybe? Why is there no setting to turn this off?

Edit: I've been informed that this is part of the auto-update for memory maps.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: grincheux on December 08, 2011, 07:27:25 am
Hello
Running Ubuntu 11.04 64b (Natty) with DF 31_25 & DT 0.6.11 compiled from source, I cannot set custom profession. More precisely, after applying a custom prof. the name do not change. I tried to refresh by changing the view etc... without success.

Did one of you find a way to do that ?

Thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Talas on December 08, 2011, 02:22:57 pm
Is DT not supposed to work with mods/other races?
I tried connecting it to my "Wizard Tower" save and both crashed (didnt save either).. :\

Is there something that can be done to make it work for another race than dwarfs and the new labors they bring?

Anyways, it works great for dwarves (on ubuntu 11.04, didnt try cusomt professions though ^)..

Thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Jerg on December 09, 2011, 03:15:33 am
I have made a clone of Dwarf Therapist with some added features:

- a tab with the list of the tamed creatures and the possibility to set which of them have to be butchered (it should work with any mod because reads the races names from the raw)
- reenabled and expanded the reading of the physical attributes (strength, agility, toughness, endurance, recuperation, disease resistance). The description of the attribute should match the in game description with any mod (it reads the attributes mean values from the raws)
- age of the selected creature
- group by caste (it should work with any mod because reads the caste names from the raws)
- group by race (for the dwarf it shows dwarf, baby, child)

I have modified the Windows layout for 31.25 graphic version only, so it will not work on any other version for now.

Anyone interested in it can get the source of this clone here:
 hg clone https://code.google.com/r/shishimar-dwarftherapist/

or download the compiled version here:
http://dffd.wimbli.com/file.php?id=5130

PS
There is anyone out there that knows how and where the pasture zones are codified in the DF memory?

Wow I've been looking for a DT mod with physical attributes, thanks!

An issue though; for some reason the only three attributes columns shown are strength/agility/toughness for me, it's not displaying recuperation/disease resistance in the charts, is there somewhere I can turn them on?


You could say that it's supported, but I'm not even looking at the code.

Peter, YOU could write an AAA game without looking at the code, so that's not saying much. ;)

Hey Mike, love your tileset! Is it possible to fix mudstone doors and chests in the next upcoming release?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Draegur on December 11, 2011, 09:28:36 pm
For your efforts, I am very, very thankful.

It shall remain my opinion that Dwarf Therapist embodies what the Dwarf Fortress interface should have always been in the first place, at least in terms of unit management. The game would simply be unplayable without it.

I am eagerly awaiting any updates or modifications that make it possible to view and sort the Soul attributes of dwarfs as well, as one already can for personality traits.

Someday I hope I will be able to tailor a dwarf's assigned labors to the greatest benefit of any dwarf--and efficiently. Alas, I know it is but a pipe-dream, but it is my pipe-dream :p
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: kilakan on December 19, 2011, 10:05:10 am
hum, does the 6.10 version work for the newest df version??
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Hien Arashi on December 19, 2011, 10:51:23 am
Yes kilakan, it's working.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DuffDwarf on December 20, 2011, 07:28:47 am
hm, could you change the style of the interface?? Its like doing something with the windows editor or similar stuff. Maybe you can make it more dark and dirty like the game itself is :D

Greets
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LunarHarp on December 21, 2011, 07:13:16 pm
This is the best utility for making this game playable.  Thanks for all of your work!  One small feature request.  The swimming skill does not have a column anywhere, so you still have to check that skill manually if you are training it.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Jerg on December 22, 2011, 02:25:25 am
Could the physical traits be implemented into the official version of Dwarf Therapist? The modified version by Shishimaru spazzes out and I could only see three of the 6 physical traits displayed.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: CheatingChicken on December 22, 2011, 05:57:43 am
Greetings, fellow beard-bearers,

I've got a Problem that dont seem to be able to solve by myself:

After another crash which killed my save including my entire world, i decidedto set up some mods to my game, or to be more specific the Fortress Defense mod and the Termitefolk Colony mod (http://www.bay12forums.com/smf/index.php?topic=91853.0).

Since i've always been using Dwarf Therapist, pretty much al the time since i started playing DF, i looked  in this thread to see if there was any way to get castes to work. I downloaded the DwafTherapistClone.

Now here's the Problem: It doesnt seem to recognize any of the Termite castes, i guess that's because the  game_data.ini only contains the race-index for the dwarven race. Now what would i have to do to find the race index for those termites, or any other custom-made race? I've had some difficulties there, since i've only got very rough to no knowledge about searching memories, and similar things. Only having access to a 6-year-old laptop which was originally designed to be just a terminal-pc doesnt really help either.

Can anyone of you help me with this issue?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DuffDwarf on December 22, 2011, 12:06:28 pm
My neck hurts.....
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Deon on January 16, 2012, 02:42:05 am
When I try to run DwarfTherapist.exe from a Visual Basic application, it immediately closes after starting... Do you know what may cause it?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Meph on January 16, 2012, 12:05:25 pm
Just a note: Mine works. I do use the exact same utility as you for it. I have Dwarf Therapist v0.6.9.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: 0x517A5D on January 17, 2012, 10:31:56 pm
When I try to run DwarfTherapist.exe from a Visual Basic application, it immediately closes after starting... Do you know what may cause it?

DT needs to be started from the directory it resides in, or it has exactly this symptom: it shows its window for an instant, beeps, and exits.  So maybe try ChDir.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ajeffreys on January 20, 2012, 09:09:57 am
Will it work with older versions of Dwarf Fortress, or just the newer ones. I am using the mac version of Dwarf Therapist found here:http://dffd.wimbli.com/file.php?id=4463 (http://dffd.wimbli.com/file.php?id=4463)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on January 20, 2012, 11:30:18 am
I see memory layouts only for the 0.31.xx series.

I think mac foreman was the tool for the .40d series (or was it even older? can't remember now)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: xellas84 on January 20, 2012, 11:30:55 am
Always have loved the lazy noob packs, but I'm having some problems this time.

The DF install is clean along with the graphics packs, but every time I run DwarfTherapist, it runs for about 10 minutes, stops responding, and literally CANNOT be closed.  Seriously, even end task via task manager won't close it.  At this very moment, I've got 5 instances of DT on my taskbar that I can't get rid of by any means, and since I can't stand to run DF without DT, I'm also stuck not playing.  Anyone have any ideas on how to fix this?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Myrmec on January 22, 2012, 09:01:14 am
Has anyone ever run into a problem where the dwarf surnames are all listed as "Unknownunknown"?  It gets their first names but not the last.

Just reinstalled Lazy Newb Pack from scratch and it says "Connected to unknown version" in the lower right, which I'm assuming is related.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Hien Arashi on January 26, 2012, 02:23:10 am
Has anyone ever run into a problem where the dwarf surnames are all listed as "Unknownunknown"?  It gets their first names but not the last.

Just reinstalled Lazy Newb Pack from scratch and it says "Connected to unknown version" in the lower right, which I'm assuming is related.
From what I've seen myself, the Unknownunknown happens when you start DT before the fort is loaded into the computers memory, have you tried starting DT after you have loaded up your fort?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Lockyy on January 28, 2012, 10:45:04 am
Just to ask, is the developer of DT going to be doing a new release for the next DF release?
I'm just wanting to know how long after release we'll have to put off playing.

Also as a question, if there is, will it display vampirism in dwarves that you don't know are vampires? If so, pllllease make it so you can turn that kinda thing off.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: i2amroy on January 28, 2012, 04:25:56 pm
Unknown. DwarfEngineer hasn't been active on the forums since June 12, but it's possible that when the next version comes out he will return. If not here is to hoping that some new coder steps up to take the reigns of the project and continue onwards.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on January 30, 2012, 04:51:17 am
quite a lot has been changed in this version. even if a maintainer pops up, the task won't be easy. (I'd like to be proven wrong, however  :P)

then again is just a good excuse to play adventure mode a bit.

still, everyone had done a wonderful job up until now so no need to be worried.

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Maklak on February 04, 2012, 09:03:16 am
A nice to have feature would be skill masks. You define a group of skills, that is saved to a file (and portable from DT to DT and remembered between sessions), and highlighted when you select that mask. Uses include "moodable skills" and "skills that don't affect quality of items". This is different from custom professions in that skills would be highlighted for all dwarfs, not selected.

I'd also like the ability to sort dwarfs by "have moodable skills" and "no moodable skills" to teach a subset of dwarves a bit of armoring and weaponsmithing to influence moods.

These are both just matters of convenience, but DT is about convenience. I could remember or check or write down, which skills are moodable, and which influence quality, but it would be nice to have it  on a platter.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: HammerHand on February 08, 2012, 12:07:01 am
You could go ahead and make a grid view that only includes the moodable skills.  It's not quite on a platter, but then you have it saved, remembered between sessions, and portable between versions - and even between machines, with the right files copied.  Then your desired skill mask is just on another tab, like your military skills.  And maybe there's something you can do with the scripting?  I don't know, I don't understand the scripting feature.

Just sayin'.  Function included and all.  9.9

Not sure what to tell you on the sorting, though.

Not saying they're bad feature requests or anything, but you can kinda manage one of them.  Also, from what I understand, feature requests are better left to the dedicated project forum, which you can find a link to in the first post of this thread.  That might be a memory from when chmod was doing it, though.  DwarfEngineer might do things differently.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: i2amroy on February 08, 2012, 01:08:49 pm
Not saying they're bad feature requests or anything, but you can kinda manage one of them.  Also, from what I understand, feature requests are better left to the dedicated project forum, which you can find a link to in the first post of this thread.  That might be a memory from when chmod was doing it, though.  DwarfEngineer might do things differently.
It's pretty much just a holdover, considering that the most recent posts are from 9 months ago and over 1 year ago respectively.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Carnes on February 14, 2012, 07:02:41 am
Hey all, trying to memory map for the new version.  I'm actually pretty lost on this. 
Using these links: http://code.google.com/p/dwarftherapist/wiki/MappingNewVersions  and  http://www.reddit.com/r/dwarffortress/comments/glttb/computing_dwarf_fortress_memory_offsets_by_hand/

I came up with..
Spoiler (click to show/hide)

and i think the nickname offset is offset 0x10 ?  But this is where i've gotten lost.  Thanks for any help!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Neyvn on February 14, 2012, 08:24:23 am
So I take it Therapist isn't compatible with the new version huh. Damn I hate fiddling with them funky numbers and letters...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: YetAnotherStupidDorf on February 14, 2012, 08:30:41 am
@Carnes: Forget about it. Data structures changed too much.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Carnes on February 14, 2012, 09:11:04 am
pooooop
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: kingofthescots on February 14, 2012, 10:00:08 am
crap. That basically means fortress mode will be unbearable. I'm too used to Dwarf Therapist, I can't go back to the old ways!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ghalidrim on February 14, 2012, 10:05:26 am
I'm going to start digging at it from the OS X side sometime this week. Anything I work out may be transferable to at least the Linux version.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Gearheart on February 14, 2012, 11:01:43 am
So DwarfEngineer has gone AWOL? That's bad. This tool basically takes the game from being a mess to being somewhat playable.

I can only hope to god that a new maintainer materialises, or I'm going to be stuck playing adventure mode.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Llamageddon on February 14, 2012, 11:08:41 am
I'm going to start digging at it from the OS X side sometime this week. Anything I work out may be transferable to at least the Linux version.

Don't taunt me, now I am regretting my championing of the PC over Macs as a preferred platform for games. What kind of programming skills would I need to get this updated and how daunting a task would it be, any ideas. I am no expert programmer but I am somewhat of a layman (i.e. not a professional but not completely unskilled). I only really know c# and a bit of java though and don't have much free time to spare. I really hope someone comes to champion the cause or I might be forced to try just out of desperation.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on February 14, 2012, 11:11:03 am
I'm going to start digging at it from the OS X side sometime this week. Anything I work out may be transferable to at least the Linux version.

you have my blessing! well, it's not much at all, I know. but as a mac user, I'm totally interested  :D
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Malakai Makaisson on February 14, 2012, 11:34:54 am
So DwarfEngineer has gone AWOL? That's bad. This tool basically takes the game from being a mess to being somewhat playable.

I can only hope to god that a new maintainer materialises, or I'm going to be stuck playing adventure mode.

Someone claiming to be him posted on reddit (http://www.reddit.com/r/dwarffortress/comments/pnink/dwarf_therapist_in_the_post2012_release_period/c3qxczh):

Quote
Hi, DwarfEngineer here. I'm not the original author, but I'm currently the maintainer (or as close as there is.)

While I haven't had much free time for features or linux builds, I have been watching for the 2012 release and will try to get DT working with it. If anyone else gets to it before me and has questions, please send me a PM, I'm usually on reddit at least some the time of most days.

Also if anyone is interested in taking up maintenance full time, I'm more than willing to help them get to know the ropes. In fact it wouldn't hurt to have a few more people familiar with the program.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Malorn on February 14, 2012, 11:39:22 am
If there are serious data changes, we're going to need more than hack-and-slash offset fixes.  The terror of losing DT looms.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Gearheart on February 14, 2012, 11:43:48 am
Honestly, I think DT is too big to lose. Even if, god forbid, DwarfEngineer fails, somebody else will take up the torch and get it working.

Hopefully. I can't play without it anymore.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on February 14, 2012, 11:50:05 am
I'll be working on DT for 2012 as soon as I get a chance. It's highly likely that a number of the structures and offsets have changed, so I'm not optimistic that this will go quickly. Add on the fact that today is Valentine's day, and we're looking at end of the weekend as the earliest I'll have something.

Sorry there hasn't been much activity lately - I can't promise that I'll get to many features, but I'll do what I can to add support for the new version.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Aeon Blue on February 14, 2012, 11:58:16 am
I'll be working on DT for 2012 as soon as I get a chance. It's highly likely that a number of the structures and offsets have changed, so I'm not optimistic that this will go quickly. Add on the fact that today is Valentine's day, and we're looking at end of the weekend as the earliest I'll have something.

Sorry there hasn't been much activity lately - I can't promise that I'll get to many features, but I'll do what I can to add support for the new version.

This is very much appreciated.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: kizucha on February 14, 2012, 12:01:07 pm
Thx for your work. ^.^ I don't like play without DT. xD
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Neyvn on February 14, 2012, 12:08:53 pm
I wish ya luck mate, Currently struggling with the damn basic control, I can't believe I used to play like this before DT...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ActnMoviHeroBoy on February 14, 2012, 12:09:29 pm
Any who work on the OSX version have my support.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Gearheart on February 14, 2012, 12:12:09 pm
I'll be working on DT for 2012 as soon as I get a chance. It's highly likely that a number of the structures and offsets have changed, so I'm not optimistic that this will go quickly. Add on the fact that today is Valentine's day, and we're looking at end of the weekend as the earliest I'll have something.

Sorry there hasn't been much activity lately - I can't promise that I'll get to many features, but I'll do what I can to add support for the new version.
A god walks among mere mortals.

Many thanks for your efforts.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Malorn on February 14, 2012, 12:12:52 pm
I'll be working on DT for 2012 as soon as I get a chance. It's highly likely that a number of the structures and offsets have changed, so I'm not optimistic that this will go quickly. Add on the fact that today is Valentine's day, and we're looking at end of the weekend as the earliest I'll have something.

Sorry there hasn't been much activity lately - I can't promise that I'll get to many features, but I'll do what I can to add support for the new version.

Dear sir, I ask no features.  As long as you update it to keep doing what it already does, I'm happy.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: i2amroy on February 14, 2012, 12:12:59 pm
Sweet! You are back! Combine that with a fact that someone is also looking into an updated mac version as well and this is gonna be awesome!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: lemmily on February 14, 2012, 12:14:08 pm
I'll be working on DT for 2012 as soon as I get a chance. It's highly likely that a number of the structures and offsets have changed, so I'm not optimistic that this will go quickly. Add on the fact that today is Valentine's day, and we're looking at end of the weekend as the earliest I'll have something.

Sorry there hasn't been much activity lately - I can't promise that I'll get to many features, but I'll do what I can to add support for the new version.

My thanks are many!

I never realised how much I relied upon DT. Manually checking labours etc is HARD. and remembering who does what and how good they are arrrrrrrrrgh. DT will be welcomed back with open arms. for now, *struggle onwards*
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Plasson on February 14, 2012, 12:19:13 pm
I just went from 17 to 49  dwarfs..    Help
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: SalmonGod on February 14, 2012, 12:20:28 pm
Definitely can't play Fort Mode without Therapist.

Not that it'll stop me from trying... just from accomplishing much.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: zwei on February 14, 2012, 12:43:51 pm
(shamelessly posting to watch :-))
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Anderan on February 14, 2012, 12:45:49 pm
Guess I'll be sticking to adventure mode until this weekend then. No rush though, better to have something that works well than have something that barely works.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 14, 2012, 01:10:23 pm
Thanks for looking into it!

As happy I might be as of the new release, as sad I am I can't play fortress mode without therapist anymore.

With 7 dwarves it's alright, I can manage that... Somehow...
But with 34... Bloody hell! I have no idea who is doing what!

I'll be waiting for your lovely DT tool, hopefully it won't be long :)

Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: vemiermark4 on February 14, 2012, 01:28:38 pm
Thanks for the tool, so far DE! Can't wait for some support for the new version. I'll try to be as patient as possible...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Myr0ku on February 14, 2012, 01:46:38 pm
So DT don't support the last DF ?
I don't remember how to assign tasks !
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Intrinsic on February 14, 2012, 02:03:35 pm
There was a guy in this thread that forked and updated DT with some stuff, maybe he'll get around to looking into things if he's still here.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: arclance on February 14, 2012, 02:14:49 pm
There was a guy in this thread that forked and updated DT with some stuff, maybe he'll get around to looking into things if he's still here.

I hope whoever updates DT incorporates the additions from Shishimaru's fork (http://www.bay12forums.com/smf/index.php?topic=66525.msg2722011#msg2722011) it works well and makes picking strong military dwarfs easier.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: nenjin on February 14, 2012, 02:30:12 pm
I'm just relieved to hear Dwarf Engineer is still on the job!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Llamageddon on February 14, 2012, 02:36:07 pm
Woop! Thanks Dwarf Engineer, I really don't think I would have had the faintest idea what I was doing if I tried to fork it. I also agree with people saying that features aren't essential, we'll all just be happy to have a playable fort mode.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Feb on February 14, 2012, 02:39:10 pm
what the llama-streaking-thru-sky said, I will be sticking with adventuring mode for now.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 14, 2012, 03:04:18 pm
Woop! Thanks Dwarf Engineer, I really don't think I would have had the faintest idea what I was doing if I tried to fork it. I also agree with people saying that features aren't essential, we'll all just be happy to have a playable fort mode.

I can sign that!
I don't need no new features right now, I didn't need them before anyways.
But I need DT, because I really _needed_ it before! Since I started playing I used DT, I never bothered with the manual task assignment thingy.

I'd just be glad about a basic DT to assign jobs and show me the skill of my dwarves. Anything besides that is just a "bonus".

Anyways, thanks for your hard work!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Aklyon on February 14, 2012, 03:15:10 pm
I can secondthird Molay there. DT is rather nice for easier job assignment and skill checking, and as long as that works you can take as long as you need for other features.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: kingofthescots on February 14, 2012, 05:13:42 pm
Thanks in advance Dwarf Engineer. Good to see you're still about!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 14, 2012, 05:58:06 pm
For what little help it is to DwarfEngineer, I've been mucking around with DT and a memory viewer all afternoon and have been able to figure out the following:

checksum is 0x4f391a33
creature_vector is 0x0179f728
dwarf_race_index seems to be 465/0x1d1 (value in the .ini I've used is 0x015cbe9c, but I don't quite understand how it's determined where this value specifically comes from)

With these, DT is able to read all of my dwarves and their first names or nicknames correctly, last names still show up as "Unknownunknown". Sex appears to read correctly (all of my dwarves are correct, at least), and custom professions are read properly too.

I haven't been able to figure out any other values, hopefully these can make it at least a bit easier.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Carnes on February 14, 2012, 06:36:07 pm
Nice find on the dwarf_race_index!  How did you get 0x015cbe9c ?  I was able to get the creature vector but got lost as to the next step.

Also, i've started poking through the source to look at how the memory structures are sized.  I saw this /* OLD Stuff from the 40d series that no longer works the same way and got spooked.  Chances are there will be similar things for this version. 

http://code.google.com/p/dwarftherapist/source/browse/src/dwarf.cpp
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Dark_T_Zeratul on February 14, 2012, 06:47:28 pm
And hopefully, by the time DT has been updated, we'll have gotten a few v0.34 bug fixes, too.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 14, 2012, 07:23:07 pm
Nice find on the dwarf_race_index!  How did you get 0x015cbe9c ?  I was able to get the creature vector but got lost as to the next step.

I was having a look at http://code.google.com/p/dwarftherapist/source/browse/inc/dwarfraceindexsearchjob.h (http://code.google.com/p/dwarftherapist/source/browse/inc/dwarfraceindexsearchjob.h) (god, that's an ugly filename), and it prints out potential values when searching for it through the memory scanner. I looked in run.log, and it had three or four potential matches that were all the same value, but got rejected for some reason or another. I just tried one of them (I may have had to correct the address, as it prints the absolute, not relative). Because I picked an address more-or-less at random, I suspect that I may just have stumbled upon a spot in code that happens to have that value, but may not be guaranteed to. I didn't really feel like searching through the entire memory of DF looking for 0x000001d1 (don't forget to convert to little-endian if you're using a memory inspection tool, if you're searching for it) and finding which one was the constant value.

Correcting the address:

look for this line in run.log:
2012-Feb-14 17:51:04.872 DEBUG   core   memory correction: "0x00ab0000" [../dwarftherapist/src/dfinstancewindows.cpp:259] (find_running_copy)

Subtract that value from any absolute address to get the relative address.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Carnes on February 14, 2012, 08:13:22 pm
Is there a reason why using the BruteForce (raw output) section on say 0x0213be9c (dwarf_race_index) reveals garbage instead of strings?  Shouldn't the name & nick be viewable?  There is data there and it appears to be structured, but just not in a human readable format.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 14, 2012, 08:29:47 pm
Is there a reason why using the BruteForce (raw output) section on say 0x0213be9c (dwarf_race_index) reveals garbage instead of strings?  Shouldn't the name & nick be viewable?  There is data there and it appears to be structured, but just not in a human readable format.

Keep in mind that that should be dumping the raw hex values from memory - 0x41424344 is equivalent to the character values 'ABCD' for instance. (forgive me if you know this already)

Additionally, the only data that should be at that pointer (if it's valid for dwarf_race_index) is a four-byte integer that's the index of "DWARF" within the list of races (as far as I understand). (e.g., if the list is { elf, elephant, goblin, dwarf, dog }, dwarf_race_index would be an int * pointing to the value 3)

Even in the creatures vector, if you're looking at the entry for a particular dwarf, there may be no human readable data available, or there may be. Consider the following two examples:

Example A:
Code: [Select]
struct dwarf {
    char firstName[16];
    char lastName[16];
}

Example B:
Code: [Select]
struct dwarf {
    char *firstName;
    char *lastName;
}

If we have a dwarf "Urist McUrist", and we want to represent him with these structures, he would have two very different representations in memory, looking at those structures specifically:

A:
Code: [Select]
55 72 69 73 74 00 00 00    00 00 00 00 00 00 00 00
4D 63 55 72 69 73 74 00    00 00 00 00 00 00 00 00

B:
Code: [Select]
AA BB AA BB CC DD CC DD

In the case of A, we have stored: "Urist\0\0\0\0\0\0\0\0\0\0\0" followed by "McUrist\0\0\0\0\0\0\0\0\0", whereas B is two pointers (0xAABBAABB and 0xCCDDCCDD) that are the addresses of "Urist" and "McUrist" in memory elsewhere.

Depending how a dwarf, or any creature, is implemented in DF's code, we could see either of these being the case. Especially since all of the names are from a preset library (and not procedurally generated, as far as I know), I could definitely see first name and last name both being pointers. Some others are index values (profession appears to be, race certainly is).

I believe that the custom nickname and profession names are also dynamically allocated, and thus you'll just see pointer values rather than the actual string values. At least, as far as I can tell, they are.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Gearheart on February 14, 2012, 08:46:40 pm
So I am about as oblivious as physically possible to the arcane workings of programming, do the posts in the last couple pages represent significant headway towards getting it working properly, or is it just dabbling in interesting notes?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 14, 2012, 08:50:12 pm
So I am about as oblivious as physically possible to the arcane workings of programming, do the posts in the last couple pages represent significant headway towards getting it working properly, or is it just dabbling in interesting notes?

Well, for reference, the total that I was able to get working in DT over about 4 hours of effort this afternoon (not knowing anything about the inner workings of DT or DF before about 1pm today):

- DT could read all of my dwarves, but only the following attributes
    - first name
    - nickname
    - custom profession name
    - gender

So, I'd say it leans somewhat towards "dabbling". I'd say DwarfEngineer's estimate of the end of the weekend at best still holds pretty strongly.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Xelanthol on February 14, 2012, 09:11:47 pm
I need this for my dwarfing ;-;
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Jon-Ace on February 14, 2012, 09:57:43 pm
I'll be working on DT for 2012 as soon as I get a chance. It's highly likely that a number of the structures and offsets have changed, so I'm not optimistic that this will go quickly. Add on the fact that today is Valentine's day, and we're looking at end of the weekend as the earliest I'll have something.

Sorry there hasn't been much activity lately - I can't promise that I'll get to many features, but I'll do what I can to add support for the new version.

Welcome back! Take your time as I'm sure there will be at least one inevitable bug fix release to mess everything up again.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on February 14, 2012, 09:59:33 pm
For what little help it is to DwarfEngineer, I've been mucking around with DT and a memory viewer all afternoon and have been able to figure out the following:

checksum is 0x4f391a33
creature_vector is 0x0179f728
dwarf_race_index seems to be 465/0x1d1 (value in the .ini I've used is 0x015cbe9c, but I don't quite understand how it's determined where this value specifically comes from)

With these, DT is able to read all of my dwarves and their first names or nicknames correctly, last names still show up as "Unknownunknown". Sex appears to read correctly (all of my dwarves are correct, at least), and custom professions are read properly too.

I haven't been able to figure out any other values, hopefully these can make it at least a bit easier.

I can confirm these values. I only had a few minutes to look so far, but at a minimum, some of the offsets have changed (as expected) but also, the way language and translation is handled appears to have changed. Take a look at the generic language raw.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Neyvn on February 14, 2012, 10:01:01 pm
I would kill for even a basic Therapist right now... I just got a wave of 30 Dwarves!!!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 14, 2012, 10:05:36 pm
I would kill for even a basic Therapist right now... I just got a wave of 30 Dwarves!!!

Hah! You unlucky bastard! I must admit, I already surrendered after a wave of 20. One really realizes what he misses most when it's not available anymore :(
But I'm optimistic DwarfEngineer will not let us down, sadly that doesn't mean it will be fixed immediately :/

Wish I knew more about that stuff... I never bothered with memory reading - I just did coding. Now I regret I never got into that :(
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Seiteki on February 14, 2012, 10:23:10 pm
I'm glad I didn't find out about DT until after playing for a while.

I can manage, but the faster you update it, the less pain I'll go through in the end!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on February 14, 2012, 11:52:54 pm
Got a little bit more time to work on it, but I'm done for the night now.

So far:

In game_data.ini:
Code: [Select]
total_words_per_table = 2173
expected_dwarf_race = 465

With those settings, you can find the translation vectors as well:
Code: [Select]
[info]
checksum=0x4f391a33
version_name=v0.34.01 (graphics)

[addresses]
translation_vector=0x017e3638
language_vector=0x017e3618
creature_vector=0x0179f728
dwarf_race_index=0x015cbe9c
squad_vector=0x0000000

This will display your dorfs with last names. Next is finding the dwarf_offsets, etc.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 12:07:49 am
I, too, found those values (once I found out about game_data.ini - still learning a lot about DT, heh).

I'm working on trying to figure out some of the offsets. From what I can tell, all of the following are definitely correct:

first_name
nick_name
last_name
custom_profession
race
sex

I'm looking to get current_job figured out, at least. profession and happiness would be nice, too.

I'll have to dig through the code to learn how the souls are structured to see if I can figure them out.

Edit: I got enabled labours working. Here's my v0.34.01_graphics.ini file, it will give what I would call a very basic level of actual functionality to DT - you can manage your dwarves' enabled labours, at least, though you cannot see their skill level, current job, or happiness

Code: [Select]
[info]
checksum=0x4f391a33
version_name=v0.34.01 (graphics)

[addresses]
translation_vector=0x017e3638
language_vector=0x017e3618
creature_vector=0x0179f728
dwarf_race_index=0x015cbe9c
squad_vector=0x0

[offsets]
word_table=0x0000003c
string_buffer_offset=0x0000

[word_offsets]
base=0x0000
noun_singular=0x001C
noun_plural=0x0038
adjective=0x0054
verb=0x008C
present_simple_verb=0x00A8
past_simple_verb=0x00C4
past_participle_verb=0x00E0
present_participle_verb=0x00FC

[dwarf_offsets]
first_name=0x0000
nick_name=0x001C
last_name=0x0038
custom_profession=0x006C
profession=0x0088
race=0x008C
flags1=0x00E0
flags2=0x00E4
sex=0x00F8
id=0x00FC
recheck_equipment=0x01BC
birth_year=0x0224
current_job=0x02F4
physical_attrs=0x3C4
states=0x0528
souls=0x0648
likes=0x07A0
labors=0x078C
happiness=0x0710
squad_ref_id=0x790

[soul_details]
skills=0x01F0
traits=0x0214

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x003C
members=0x0088

[position_offsets]
token=0x0000
flags=0x0020
general_name_singular=0x00E8
general_name_plural=0x0104
male_name_singular=0x0158
male_name_plural=0x0174
female_name_singluar=0x0120
female_name_plural=0x013C
custom_color_red=0x0382
custom_color_green=0x0380

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Azated on February 15, 2012, 12:32:20 am
I'm praying you can get Therapist working sometime soon. I just got a wave of about 20 useless millitary dwarves and have now decided to wall myself off from the world and brutally murder any migrants that come.

It's strange that I'm more scared of migrants than I am of the terrifying creatures sitting in the bottom of my fortress.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: dyn on February 15, 2012, 12:50:12 am
I'm looking to get current_job figured out, at least. profession and happiness would be nice, too.

I believe happiness is 0x082c and current job is 0x030c. I am working on some of the rest, I will keep posting what I find as well
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 01:27:37 am
I believe happiness is 0x082c and current job is 0x030c. I am working on some of the rest, I will keep posting what I find as well

Those two look good to me, they stand against a bit of testing.

I'm going to try to figure souls out, if I can. No luck on it, gotta get to bed. Good luck for anyone continuing after me.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: OrionKale on February 15, 2012, 02:21:07 am
Edit: I got enabled labours working. Here's my v0.34.01_graphics.ini file, it will give what I would call a very basic level of actual functionality to DT - you can manage your dwarves' enabled labours, at least, though you cannot see their skill level, current job, or happiness

So, do I need the legacy.ini file settings for 34.01 to get the graphics.ini to work, or will it be fine without the legacy.ini file ?

Will creating a new file named correctly give us a working Dwarf Therapist for assigning tasks ?

My experience with this was copying/pasting some code about a year ago to get 31.21 to work the day of the release.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: schismatise on February 15, 2012, 02:38:05 am
Looking good guys!

Unfortunately my programming skills are confined to PHP/SQL etc. However, i do have one small thing to offer. I humbly present:



DWARF THERAPIST THERAPIST: HOW TO MANAGE WITHOUT DWARF THERAPIST

Yes, it really is possible! Before i knew about DT, i had a fort with well over 200 dwarves using this method!

Step 1 - Deal with every new migrant immediately - that is, the moment they hit the map, you're already pressing "v". In fact, you're so fast, your cursor is already hovering over the very tile they entered on (so you don't lose track of them).

Step 2 - Assign them a permanent job (military career counts as a "job" :D), based on a) how many people are doing that job already and b) what they're good at, and then never touch them again! Avoid the temptation to make that recently arrived grand master woodcrafter into a woodworker when you already have 7 others doing it, and not a tree left on the map. Sorry Urist McElfShapedIncenseHolder, now you're a miner. Hope you like black lung!

Step 3 - Use profession nicknames to keep track of their job - assign it the moment you decide what their job is, and then assign them the labours that belong to that job. Try not to have too many different job types (bonus points if most of the labours are in the same category for easy shift+enter enabling), and make sure your workers will have plenty to do. Don't worry if their skills lie elsewhere, they will get good at their new job in time. The less other jobs they have, the better they will get - you can use this concept to control quality of goods, eg. if you want really good beds, have your carpenters doing little else other than carpentry. Don't do this too much though, or your workers will spend lots of time idle. Which brings me to the final step:

Step 4 - Priorite ease-of-use over dwarvenly efficiency. Setup your custom professions so the less important ones have some light hauling assignments on the side to keep them busy in the slower seasons, and only take as many carpenters as you have carpentry workshops. Forget about the quality of trade goods and give your crafters plenty of jobs to keep them busy. Make a "hauling" custom profession if you don't want your real workers distracted, and if your haulers are ever idle, pat them on the back and give them the rest of the day off! If you absolutely have to, you can, in theory, go through the units list and one by one toggle more jobs on for them when they don't have anything else to do, but the more of them you have, the more tedius this will become, and you're often better off just leaving them idle for a few minutes, and taking that as a sign that you don't need any more of that particular job type.

Edit: Step 5 - You can basically consider each siege/ambush/etc a potential "negative migrant wave" - that is, you may lose dwarves, and have to assign replacements. Try not to be too much of a perfectionist - assign one or two replacements if you absolutely have to, and then wait for more migrant waves. Remember, the key is to do as little tweaking as possible.

By following these four five simple steps you can have a functional, sort-of efficient dwarven workforce, with as little as 30 seconds of micromanagement per migrant!

Congratulations! Now you're free to spend all your time reading combat logs and engraving descriptions, and designing elaborate elf-melting devices. 8)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: orius on February 15, 2012, 02:38:45 am
I learned to play the game with Therapist.  I know how to change jobs without it, but I certainly don't want to do it all by hand.  It would take forever with dozens of dorfs, I usually only tweak one or two at a time manually.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: schismatise on February 15, 2012, 02:44:43 am
I learned to play the game with Therapist.  I know how to change jobs without it, but I certainly don't want to do it all by hand.  It would take forever with dozens of dorfs, I usually only tweak one or two at a time manually.

See my post above - if you just deal with them when they arrive and then never touch them again, it's actually very little time required. As long as you setup your job types well, you can basically just "set and forget".
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: zwei on February 15, 2012, 02:56:25 am
I learned to play the game with Therapist.  I know how to change jobs without it, but I certainly don't want to do it all by hand.  It would take forever with dozens of dorfs, I usually only tweak one or two at a time manually.

See my post above - if you just deal with them when they arrive and then never touch them again, it's actually very little time required. As long as you setup your job types well, you can basically just "set and forget".

Whích ís fíne as long as everýbodý ís stíll alíve.

Once people start dýíng and ýou have to choose and appoínt replacements, ít gets reallý messý.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Myr0ku on February 15, 2012, 03:00:08 am
I just play adventurer mod for the moment, because i don't need DT to play it !
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: schismatise on February 15, 2012, 03:21:54 am
Whích ís fíne as long as everýbodý ís stíll alíve.

Once people start dýíng and ýou have to choose and appoínt replacements, ít gets reallý messý.

Mmm, a fair point. It depends who dies though - you might get lucky and just lose 1 of each worker type, and not have to change anyone, heh. Even if you are forced to assign replacements, it should only take about 30 seconds for each - hell, just do 1 or 2, and then wait for more migrants. The idea is just to do as little tweaking as possible. Sure, it's not perfect that you just lost 3 of your 4 metalworkers - but you're better off just dealing with it than spending 20 minutes giving yourself RSI :)

Being an obsessive-compulsive perfectionist has made this approach almost necessary for my continued enjoyment of many games, haha.

Edit: Not to derail the thread or anything. Dwarf Therapist is definitely still very awesome.

Edit again: Integrated death into my original post ^^
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Malorn on February 15, 2012, 03:26:39 am
The level of misery I hear here (and feel personally, fair readers), makes me wonder if it might not be time for another rousing game of "Toady, please integrate DT into DF."

For the record, it's been asked . . . a lot.  I don't recall if Toady has ever commented on it.  Logically, since it never happened, perhaps that is his comment.  Ah well, we shall endure.  Good advice from Schismatise, thought that system does fall apart with the first deaths, as noted.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on February 15, 2012, 03:40:27 am
The level of misery I hear here (and feel personally, fair readers), makes me wonder if it might not be time for another rousing game of "Toady, please integrate DT into DF."

For the record, it's been asked . . . a lot.  I don't recall if Toady has ever commented on it.  Logically, since it never happened, perhaps that is his comment.  Ah well, we shall endure.  Good advice from Schismatise, thought that system does fall apart with the first deaths, as noted.


you're not being very vocal:
http://www.bay12forums.com/smf/eternal_voting.php

the eternal suggestion voting doesn't show any sign of players actually wanting a better job assignment screen.

want to make a point? bring that 'Integrated Dwarf Foreman' item to first. then you may have a point.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: schismatise on February 15, 2012, 03:41:22 am
http://www.bay12forums.com/smf/eternal_voting.php

the eternal suggestion voting doesn't show any sign of players actually wanting a better job assignment screen.

That's probably because they're perfectly happy with dwarf therapist ;)

That said, i'm gonna go take a look at that link.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Neyvn on February 15, 2012, 03:45:34 am
http://www.bay12forums.com/smf/eternal_voting.php

the eternal suggestion voting doesn't show any sign of players actually wanting a better job assignment screen.

That's probably because they're perfectly happy with dwarf therapist ;)

That said, i'm gonna go take a look at that link.
Actually....
Number 13: Integrated Dwarf Foreman...
Links to here.
http://www.bay12forums.com/smf/index.php?topic=53113.0
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on February 15, 2012, 03:47:32 am
http://www.bay12forums.com/smf/eternal_voting.php

the eternal suggestion voting doesn't show any sign of players actually wanting a better job assignment screen.

That's probably because they're perfectly happy with dwarf therapist ;)

That said, i'm gonna go take a look at that link.
Actually....
Number 13: Integrated Dwarf Foreman...
Links to here.
http://www.bay12forums.com/smf/index.php?topic=53113.0
yes I saw that. this part of my original comment:

 'want to make a point? bring that 'Integrated Dwarf Foreman' item to first. then you may have a point.'

was cut out from the quote pyramid.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Neyvn on February 15, 2012, 03:53:39 am

yes I saw that. this part of my original comment:

 'want to make a point? bring that 'Integrated Dwarf Foreman' item to first. then you may have a point.'

was cut out from the quote pyramid.
[/quote]Was pointing out that to Schismatise...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on February 15, 2012, 03:55:49 am
my apologies, it's difficult to ascertain who's speaking to who in a forum  :P
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: schismatise on February 15, 2012, 04:44:37 am
Lol. Yeah, with enough editing and quoting, it's pretty easy to confuse things.

Anyway, i did see that, was just selectively quoting the part that i thought was humorously relevant - that nobody is voting for that because they already have dwarf therapist. You're right though, it is actually number 13, which is pretty high up the list.

I actually voted for Improved Interface instead of the Dwarf Foreman suggestion - i see it as part of a greater whole. Obviously having that kind of level of improvement to ALL parts of the interface would be insanely awesome, but lots of work.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on February 15, 2012, 04:47:45 am
I voted back in time for material selection, standing orders and improved mechanics  :P
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ClubFoot on February 15, 2012, 04:56:44 am
Edit: I got enabled labours working. Here's my v0.34.01_graphics.ini file, it will give what I would call a very basic level of actual functionality to DT - you can manage your dwarves' enabled labours, at least, though you cannot see their skill level, current job, or happiness

I think I've missed something fundamental.  I've got DT sitting here (as it happens the OSX versions) and it's a monolith - a single executable file.  Where do I put the <field>=<value> and ini files??
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: schismatise on February 15, 2012, 05:13:52 am
I think I've missed something fundamental.  I've got DT sitting here (as it happens the OSX versions) and it's a monolith - a single executable file.  Where do I put the <field>=<value> and ini files??

I'm guessing that's because you're on a mac (http://www.youtube.com/watch?v=T8FnACj25xM), though i could be wrong. I've got the PC version and there's plenty of folders and .ini files, fyi.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Grax on February 15, 2012, 05:15:50 am
http://www.bay12forums.com/smf/eternal_voting.php

the eternal suggestion voting doesn't show any sign of players actually wanting a better job assignment screen.

want to make a point? bring that 'Integrated Dwarf Foreman' item to first. then you may have a point.

This list seems somewhat obsolete for now.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Starhero on February 15, 2012, 08:17:16 am
*sigh* until DT updates, I am stuck with 2010.

At least I got Diablo 3 to play XD :D :D :D

Yes I am in beta! MUAHAHAHAHAHAHAHAHAHA
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Weaselcake on February 15, 2012, 09:05:33 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: agatharchides on February 15, 2012, 09:15:30 am
The level of misery I hear here (and feel personally, fair readers), makes me wonder if it might not be time for another rousing game of "Toady, please integrate DT into DF."

For the record, it's been asked . . . a lot.  I don't recall if Toady has ever commented on it.  Logically, since it never happened, perhaps that is his comment.  Ah well, we shall endure.  Good advice from Schismatise, thought that system does fall apart with the first deaths, as noted.



you're not being very vocal:
http://www.bay12forums.com/smf/eternal_voting.php

the eternal suggestion voting doesn't show any sign of players actually wanting a better job assignment screen.

want to make a point? bring that 'Integrated Dwarf Foreman' item to first. then you may have a point.
To be fair, the stuff on top of that list isn't done either and integrating DT will seem like a much lower priority when the new version of DT is out.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Calhoun on February 15, 2012, 09:17:01 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Its not his job, nor his responsibility to provide you with a free thing that helps you. He does it out of the goodness of his heart, and you should be grateful instead of whining like a child who didn't get everything they wanted on Christmas.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: kellen on February 15, 2012, 09:17:48 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Deal with it, for now.

You don't need The Rapist to work a handful of dwarves. About 30 or less dwarves are perfectly manageable without it - if you don't mind a pair of idles every now and then - use this time to start only a few industries (food, stone, metal, wood) while building the infrastructure and defense for everything else
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Feb on February 15, 2012, 09:18:54 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

He's providing a free service out of his own time, if you've a problem with it, MAKE IT YOURSELF.  Wtf are you, some Elf Noble?  Damned cannibal with entitlement issues, gah!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on February 15, 2012, 09:19:09 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|
I'm very aware of the importance of DT to the community. If there was a way I could make DwarfTherapist my fulltime job, I would in a heartbeat. Unfortunately the pay isn't quite enough to support a family, let alone my cat. I could start ransoming releases, but I don't think that would be a very popular decision :)

I still do this because I like the Dwarf Fortress community - don't take that reason away. You waited 11 months for DwarfFortress 2012, a bit more patience would be much appreciated.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 09:28:19 am
So, do I need the legacy.ini file settings for 34.01 to get the graphics.ini to work, or will it be fine without the legacy.ini file ?

Will creating a new file named correctly give us a working Dwarf Therapist for assigning tasks ?

My experience with this was copying/pasting some code about a year ago to get 31.21 to work the day of the release.

You'll only need the legacy.ini if you're using the legacy version of Dwarf Fortress. If you downloaded the "SDL" version, you're fine with just the graphics.ini.

I think I've missed something fundamental.  I've got DT sitting here (as it happens the OSX versions) and it's a monolith - a single executable file.  Where do I put the <field>=<value> and ini files??

Sorry... I can't much help you with the OSX version; I have no experience with it. I believe many of these values will be different on OSX (so even if we knew where to put them, I don't think it would matter, since they're all determined on Windows), and I'm not sure exactly where the .ini stuff (or its equivalent) goes. You'll have to wait for DwarfEngineer or someone else more knowledgeable than me about it to address this one.

I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Acting like a spoiled child and whining about a free program not being immediately available is rude. If you want it working sooner, sit down with DF 34.01, DT, and a memory viewer and start trying to find the offsets yourself. It isn't as though this is an easy task that's just being delayed for the heck of delaying it; it takes a lot of work. To get as much progress as I did yesterday was about 6-8 hours of staring at memory dumps and DT code. I've no idea how long the rest will take.


Negative Ned aside, I'll post my full v0.34.01_graphics.ini again since it has a few more values than the last one, for anyone that's interested. Instructions in my post here http://www.bay12forums.com/smf/index.php?topic=66525.msg2988487#msg2988487 (http://www.bay12forums.com/smf/index.php?topic=66525.msg2988487#msg2988487). The additions from that are having happiness and current job reading properly thanks to dyn (http://www.bay12forums.com/smf/index.php?topic=66525.msg2988627#msg2988627 (http://www.bay12forums.com/smf/index.php?topic=66525.msg2988627#msg2988627)). I feel like I should add a disclaimer that I am not DwarfEngineer, and have no official sanction from him, so this is very unofficial.

Code: [Select]
[info]
checksum=0x4f391a33
version_name=v0.34.01 (graphics)

[addresses]
translation_vector=0x017e3638
language_vector=0x017e3618
creature_vector=0x0179f728
dwarf_race_index=0x015cbe9c
squad_vector=0x0

[offsets]
word_table=0x0000003c
string_buffer_offset=0x0000

[word_offsets]
base=0x0000
noun_singular=0x001C
noun_plural=0x0038
adjective=0x0054
verb=0x008C
present_simple_verb=0x00A8
past_simple_verb=0x00C4
past_participle_verb=0x00E0
present_participle_verb=0x00FC

[dwarf_offsets]
first_name=0x0000
nick_name=0x001C
last_name=0x0038
custom_profession=0x006C
profession=0x0088
race=0x008C
flags1=0x00E0
flags2=0x00E4
sex=0x00F8
id=0x00FC
recheck_equipment=0x01BC
birth_year=0x0224
current_job=0x030C
physical_attrs=0x3DC
states=0x0644
souls=0x0768
likes=0x07A0
labors=0x078C
happiness=0x082C
squad_ref_id=0x790

[soul_details]
skills=0x01F0
traits=0x0214

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x003C
members=0x0088

[position_offsets]
token=0x0000
flags=0x0020
general_name_singular=0x00E8
general_name_plural=0x0104
male_name_singular=0x0158
male_name_plural=0x0174
female_name_singluar=0x0120
female_name_plural=0x013C
custom_color_red=0x0382
custom_color_green=0x0380

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on February 15, 2012, 09:31:25 am

I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|


hell, this is exactly what drove away the original maintainer. good work, kid.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Gearheart on February 15, 2012, 09:39:44 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Way to act like an entitled prat.

Seriously, nice work there, champ, you managed to come off as a gigantic tool and a misinformed idiot in a single post. People like you are why the original programmer stopped working on it.

PS. Idiots aside, it's really nice to see how many programmers have come out of the woodworks to help find the offsets. Maybe it'll be done sooner than DwarfEngineer imagined?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: SalmonGod on February 15, 2012, 09:49:35 am
I'm here.  Nothing but appreciative.  Willing to be as patient as needed.  I have a family to support and tons of crap going on in my life, too.  I don't do anything nearly this cool that thousands of people enjoy completely for free.  So thanks DwarfEngineer.  Most of us understand your generosity.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DeadlyDodo on February 15, 2012, 09:54:39 am
Are there donation for DT (and possibly other DF projects)?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on February 15, 2012, 09:56:17 am
yes. (I did once; don't know where money ended but the intent was there :P )
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on February 15, 2012, 09:57:17 am
Are there donation for DT (and possibly other DF projects)?
I was thinking of putting up a tip jar with the intention of funding a mac mini to start adding OSX support. I won't do it until after the first release for DF2012 however.

Edit:
I think the original author might still have a donate button up somewhere as well - so if you've seen a donate button for DT up to this point, that money doesn't go to me :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: RaidSoft on February 15, 2012, 10:02:17 am
Yes please ignore people like that, DwarfEngineer, it's unfortunate but there will always be people like that but remember for each of those you have thousands of people that truly appreciate your work and are in the background calmly and patiently waiting/hoping for it to get released. Obviously it's unreasonable to want you to drop everything and just get it done right away but some people can't see that and thus you get people like that, they just can't realize that it's another person on the other side of the text that has their own life to live...

It's funny and sad because those kinds of people go "omg get this done already!" but they won't lift a finger them self to help out...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DeadlyDodo on February 15, 2012, 10:04:26 am
There's a donate button on the google code site for DT.

I'd contribute to a tip-jar (or tip.jar) just to show appreciation (I don't have any fruit, too much vit-c).
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Starhero on February 15, 2012, 10:05:49 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Go back to minecraft, they seem to respond better to demands. If this has worked will for you before to get something out of someone, where the hell do you live and who the fuck do you think you are?

Back on topic: I appreciate all that are working on this, nothing but kind inspiration coming from me. Anyone that posts like him should just be ignored, DE you have more patient and considerate followers then assholes backing you up. Take your time! I believe I speak for everyone that isn't demanding that we patiently await your update, even if it was a month away.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Zangi on February 15, 2012, 10:18:18 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|
*Implying that OP is still working on this.* (Heck, thought this was the really old thread...  oh well.)
*Implying that it is someone's full time job to work on this, even on Valentine's Day.*
*Implying that it is rude for the current maintainer of DT to not elaborate why he can't work on it as much as you'd like.*
*Implying that the current maintainer does not know how many players are reliant on DT to play.*
*Implying that you can make demands of someone who volunteers their free time to do this, for you, without compensation.*

Suck it up, another week or two won't kill you.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Naryar on February 15, 2012, 10:20:47 am
lol at people who have become dependent on dwarf therapist to play dwarf mode and who rant about that fact.

Useful ? Very. Time-saving ? Yup. Necessary to play dwarf mode ? Hardly.

I will wait for it, and I won't hurry OP about making it, that is all.

Also, this is a stupid flamewar.

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Chilton on February 15, 2012, 10:22:07 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Go back to minecraft, they seem to respond better to demands. If this has worked will for you before to get something out of someone, where the hell do you live and who the fuck do you think you are?

Back on topic: I appreciate all that are working on this, nothing but kind inspiration coming from me. Anyone that posts like him should just be ignored, DE you have more patient and considerate followers then assholes backing you up. Take your time! I believe I speak for everyone that isn't demanding that we patiently await your update, even if it was a month away.
No shit.
Minecraft was originally going to be a Survival Game. Now its Lego with Monsters.




Keep up the Good Work, DwarfEngineer!
Your Work is Important, but perhaps more pertinently, much appreciated. And Im sure I can say that not only for Myself, but for plenty of folks :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Myr0ku on February 15, 2012, 10:42:43 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Go back to minecraft, they seem to respond better to demands. If this has worked will for you before to get something out of someone, where the hell do you live and who the fuck do you think you are?

Back on topic: I appreciate all that are working on this, nothing but kind inspiration coming from me. Anyone that posts like him should just be ignored, DE you have more patient and considerate followers then assholes backing you up. Take your time! I believe I speak for everyone that isn't demanding that we patiently await your update, even if it was a month away.
No shit.
Minecraft was originally going to be a Survival Game. Now its Lego with Monsters.




Keep up the Good Work, DwarfEngineer!
Your Work is Important, but perhaps more pertinently, much appreciated. And Im sure I can say that not only for Myself, but for plenty of folks :)
Minecraft is just a distilled version of DF.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Chilton on February 15, 2012, 10:47:16 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Go back to minecraft, they seem to respond better to demands. If this has worked will for you before to get something out of someone, where the hell do you live and who the fuck do you think you are?

Back on topic: I appreciate all that are working on this, nothing but kind inspiration coming from me. Anyone that posts like him should just be ignored, DE you have more patient and considerate followers then assholes backing you up. Take your time! I believe I speak for everyone that isn't demanding that we patiently await your update, even if it was a month away.
No shit.
Minecraft was originally going to be a Survival Game. Now its Lego with Monsters.




Keep up the Good Work, DwarfEngineer!
Your Work is Important, but perhaps more pertinently, much appreciated. And Im sure I can say that not only for Myself, but for plenty of folks :)
Minecraft is just a distilled version of DF.
Why, because You can Dig?
Is Red Faction akin to DF as well?

Minecraft was originally heading in that direction. It abruptly changed direction.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Thar on February 15, 2012, 11:42:28 am
Too bad, I can not play without Therapist. Every time new migrants come I feel like killing myself. The DF interface is to take up arms xD

Good thing we have champions like Dwarfengineer who fight for us. What would we do without it?


Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on February 15, 2012, 11:44:21 am
think of it's as a challenge! instead of a totalitarian fort where the overseer controls every labourer, its super happy self determination libertarian time!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Thar on February 15, 2012, 11:50:14 am
Yeah you're right. The truth is that it gives more realism. Perhaps we have become accustomed to the Therapist.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Subtext on February 15, 2012, 11:58:17 am
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Maybe someone ought to give DE Weaselcake's IP...just do block him from downloading DT for another week or so.

Thanks to everyone who is working on this!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Starhero on February 15, 2012, 12:03:11 pm
We are derailing but why not.

Minecraft is still a fun game, I actually wish that DF2MC was working better then it does now, though I am sure it is surely broken even after DFHack is updated to the latest version of DF.

Personally I dislike vanilla MC. I like the mods that are for MC.

Namely:

Industrial craft
Build-craft (with other addons including logistics pipes)
RedPower
Computer craft (yes there is a LUA based computer in Minecraft now and it works very well for what it was designed for and suprizingly well for what it wasn't designed for)

Is MC a watered down version of DF? Hell yes...but both games are good.

My comment was on the fact that when there is a new release for MC, EVERYONE AND THEIR MOTHER is DEMANDING for these mods to update...and yet these men are making the game for free (tho they use ad.fly for making SOME cash, hardly anything to live off of tho)

I remember in oct. one of my friends was talking about "I am pumping oil into some tanks, this is COOL!" I had no idea what he was using for mods then (found out later it was buildcraft) because I just had the comment of saying "I am getting slaves to mine out things for me in DF, and killing them if they don't :P

Both games have an extreme about of fun in them.

For those that love complex games, try some of the major mods...most I stated.

Mods are a bit weird to install tho, I will state that, but most of you are programmers or technically inclined so it should be nothing.

Industrial craft adds in machinery to macerate ore, and double production...and also a power net with solar panels and eventually you will get to the level of nuclear power.

Build-craft allows you to pipe said machinery and that of other mods and V items so you can automate things.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: LoSboccacc on February 15, 2012, 12:05:23 pm
We are derailing but why not.

totally wrong attitude.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Aavak on February 15, 2012, 12:06:28 pm
Please allow me to express my deepest gratitude to DE for their work on this project. While it may become a chore, with so many stating that they are wholly dependant on your work to enjoy the game, with such a weight of expectation you must feel rushed, but please take your time. I'm sure that you do this work because you enjoy it (or at least I imagine that was part of your reason to begin with!) so don't jeopardise that enjoyment, and risk being burnt out over the clamour of those who urge you to get DT updated as soon as possible.
 
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kipi on February 15, 2012, 12:10:27 pm
First of all, thanks to everybody who are working towards getting DT compatible with the new version of DF!

I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|
*Implying that OP is still working on this.* (Heck, thought this was the really old thread...  oh well.)
*Implying that it is someone's full time job to work on this, even on Valentine's Day.*
*Implying that it is rude for the current maintainer of DT to not elaborate why he can't work on it as much as you'd like.*
*Implying that the current maintainer does not know how many players are reliant on DT to play.*
*Implying that you can make demands of someone who volunteers their free time to do this, for you, without compensation.*

Suck it up, another week or two won't kill you.

I totally agree with you Zangi, just want to add few points:

*The current "main" developer of DT is surely aware of how valued and needed this is. Heck, I think he even took the responsibility from chmod to keep the project alive in the first place!

* As long as you don't pay you have no right to demand the manager of community project to explain his/her schedule, even if it means less time spent updating the project. And even if you paid I see no right to do so, not all of us can change their schedules (work, study, relations) in a few moments of notice just because Toady suddenly released new version of DF.

* There is already a way the rest of the community can support and help in the update process. Instead of whining and demanding you could take part in the offsets finding.


Now, I admit of being dependent on Therapist before. But guess what? I'm currently playing the new version without the tool. Sure it was pain at first, but after I got the method of using excel spreadsheet it hasn't been too difficult. Perhaps not as quick as using DT but in some cases even more effective. For example, the name search is somewhat buggy in DT. Using excel, no problems. And now that I have to manually check all the skills inside the game I notice potential soldiers and nobles more easily. When I used DT I usually just skipped the military and social tabs.

I do anxiously wait for the updated offsets but I think nobody should rush with the work. So keep up with the good work folks!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Levi on February 15, 2012, 12:11:15 pm
Needs a non-paypal method of donation.  Paypal hates my credit cards for some reason.  :(
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: SquidgyB on February 15, 2012, 12:18:08 pm
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

That's a pretty disgusting attitude to something that is given for free to the community, and takes a serious amount of time and effort to bring around. I hope you feel ashamed now that every second post after yours is pretty much condemning your attitude.

Remembering some of the reasons that Chmod decided to hand over the reins of Therapist - thank you DwarfEngineer for all your hard work.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Myr0ku on February 15, 2012, 12:18:51 pm
Or your credit card hates paypal for the 8% preleved every transaction...
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: narhiril on February 15, 2012, 12:20:48 pm
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

That's a pretty disgusting attitude to something that is given for free to the community, and takes a serious amount of time and effort to bring around. I hope you feel ashamed now that every second post after yours is pretty much condemning your attitude.

Remembering some of the reasons that Chmod decided to hand over the reins of Therapist - thank you DwarfEngineer for all your hard work.

Mind if I jump on the condemnation train?

Thanks a bunch, DwarfEngineer, for all of your efforts.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 15, 2012, 12:32:50 pm
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

Its not his job, nor his responsibility to provide you with a free thing that helps you. He does it out of the goodness of his heart, and you should be grateful instead of whining like a child who didn't get everything they wanted on Christmas.

This. Thanks for pointing that out, so I don't have to bother with this disgraceful attitude.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: kudakeru on February 15, 2012, 12:44:50 pm
For the OS X users:

If you right-click the app and click "Show Package Contents", you can click through to Contents\Resources\etc.  The ini files for the offsets live there.  Unfortunately I'm in the middle of a sprint at work, so I probably won't have time to test offsets on the OS X side until after work tonight.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: vemiermark4 on February 15, 2012, 12:50:33 pm
So.... I'd like to help with finding these offsets and whatnot, but where does one even begin? I'd like to be of some use, but I think my lack of C++ knowledge might edge me out of that ability. Any chance of a step-by-step?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: sergisaf on February 15, 2012, 12:56:36 pm
Luckly I have been able to run it with the basic (and thankfully the most useful) functionalities such as add/remove professions and list the dwarves.

But somehow from time to time it freezes during the Loading Dwarfs state (about 6%, 9% and at first at 33%). I don't know what could cause that, but it's annoying.

Anyhow, all of my thanks and support to DwarfEngineer!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Myr0ku on February 15, 2012, 12:58:10 pm
Luckly I have been able to run it with the basic (and thankfully the most useful) functionalities such as add/remove professions and list the dwarves.

But somehow from time to time it freezes during the Loading Dwarfs state (about 6%, 9% and at first at 33%). I don't know what could cause that, but it's annoying.

Anyhow, all of my thanks and support to DwarfEngineer!
What do you mean ?
You're testing last version of DT ?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: schismatise on February 15, 2012, 01:06:44 pm
Guys i think the horse is dead ;)

Back on topic though,

Code: [Select]
[info]
checksum=0x4f391a33
version_name=v0.34.01 (graphics)

[addresses]
translation_vector=0x017e3638
language_vector=0x017e3618
creature_vector=0x0179f728
dwarf_race_index=0x015cbe9c
squad_vector=0x0

[offsets]
word_table=0x0000003c
string_buffer_offset=0x0000

[word_offsets]
base=0x0000
noun_singular=0x001C
noun_plural=0x0038
adjective=0x0054
verb=0x008C
present_simple_verb=0x00A8
past_simple_verb=0x00C4
past_participle_verb=0x00E0
present_participle_verb=0x00FC

[dwarf_offsets]
first_name=0x0000
nick_name=0x001C
last_name=0x0038
custom_profession=0x006C
profession=0x0088
race=0x008C
flags1=0x00E0
flags2=0x00E4
sex=0x00F8
id=0x00FC
recheck_equipment=0x01BC
birth_year=0x0224
current_job=0x030C
physical_attrs=0x3DC
states=0x0644
souls=0x0768
likes=0x07A0
labors=0x078C
happiness=0x082C
squad_ref_id=0x790

[soul_details]
skills=0x01F0
traits=0x0214

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x003C
members=0x0088

[position_offsets]
token=0x0000
flags=0x0020
general_name_singular=0x00E8
general_name_plural=0x0104
male_name_singular=0x0158
male_name_plural=0x0174
female_name_singluar=0x0120
female_name_plural=0x013C
custom_color_red=0x0382
custom_color_green=0x0380

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

Excellent work my friend, sounds like it's actually not that far off usable.

Luckly I have been able to run it with the basic (and thankfully the most useful) functionalities such as add/remove professions and list the dwarves.

But somehow from time to time it freezes during the Loading Dwarfs state (about 6%, 9% and at first at 33%). I don't know what could cause that, but it's annoying.

Anyhow, all of my thanks and support to DwarfEngineer!
What do you mean ?
You're testing last version of DT ?

I assume he's using exactly what i just quoted above (or he's done something similar himself) - i suggest you check stevedore's recent posts.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Myr0ku on February 15, 2012, 01:27:28 pm
Wait, i'm not english speaker...
You provide us a tool to use dwarf therapist on the last DF ?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Andreus on February 15, 2012, 01:36:40 pm
I don't think OP realizes that THOUSANDS OF PEOPLE ARE RELYING ON HIM TO HURRY THE HECK UP to allow them to play this.

"I don't have much time" without stating a reason is just rude. Adventure mode is still too dull for me and Dwarf Mode is virtually unplayable without this mods help. :|

A boy whines and cries about the scarcity of comforts and conveniences.

A man is comfortable and grateful for what conveniences he has. I am grateful that only a day after release, Mayday had his tileset out for me to use.

A dwarf learns to live without - I spent the majority of my Dwarf Fortress career playing without Therapist. It's a tool, nothing more, and it's perfectly possible to play the game without it.

Are you a boy, a man, or a dwarf?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Terminutter on February 15, 2012, 01:41:29 pm
Just to say, thanks for keeping this up DE, you have no idea how grateful I am.
Also, can I join the condemnation train against Weaselcake and call him a self-entitled prat?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Katalliaan on February 15, 2012, 01:43:36 pm
To those who are working on getting a working version for .34.01, thank you. While I won't have the time to play DF for some time, I still appreciate the efforts that people are making on this highly useful tool.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Myr0ku on February 15, 2012, 01:43:52 pm
Apart that, DwarfEngineer, can you just tell us if it's a question of days, weeks or even months ?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: daishi5 on February 15, 2012, 01:56:23 pm
I just had a wave of thirty migrants.  I just wanted to say how much I appreciate all the work it takes to figure this out.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on February 15, 2012, 02:04:59 pm
Apart that, DwarfEngineer, can you just tell us if it's a question of days, weeks or even months ?
Days. I will have some time tonight, and if all goes well, might even have a preliminary release. Otherwise, this weekend is when I'll have a serious chunk of time to work on it. Given that we've found a lot of the major offsets, I'm optimistic that I'll have something in the Friday/Saturday timeframe. I'd really like to get it done by Friday because I know people will be looking forward to burrowing in for the weekend and playing some serious DF'12. (I know I am)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 15, 2012, 02:20:42 pm
Also, you should make sure we have a way of making donations to you DwarfEngineer ^_^
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: kizucha on February 15, 2012, 02:23:04 pm
Apart that, DwarfEngineer, can you just tell us if it's a question of days, weeks or even months ?
Days. I will have some time tonight, and if all goes well, might even have a preliminary release. Otherwise, this weekend is when I'll have a serious chunk of time to work on it. Given that we've found a lot of the major offsets, I'm optimistic that I'll have something in the Friday/Saturday timeframe. I'd really like to get it done by Friday because I know people will be looking forward to burrowing in for the weekend and playing some serious DF'12. (I know I am)

Dont overwork yourselfe and stay not to long in the night. ;) It's unhealty. ;D
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: kizucha on February 15, 2012, 02:23:34 pm
double post ... the forum hates me q.q
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: dyn on February 15, 2012, 02:28:38 pm
Finally, I found the soul offsets. These changes should allow DT to show all the traits and skill experience.
Code: [Select]
[dwarf_offsets]
souls=0x0764

[soul_details]
skills=0x0200
traits=0x0224

I'll be working on the squad vector next, which should make DT pretty much fully usable till the changes are officially released. For those interested, here is what I am working with now.
Code: [Select]
[info]
checksum=0x4f391a33
version_name=v0.34.01 (graphics)
complete=true

[addresses]
translation_vector=0x017e3638
language_vector=0x017e3618
creature_vector=0x0179f728
dwarf_race_index=0x015cbe9c
squad_vector=0x0

[offsets]
word_table=0x0000003c
string_buffer_offset=0x0000

[word_offsets]
base=0x0000
noun_singular=0x001C
noun_plural=0x0038
adjective=0x0054
verb=0x008C
present_simple_verb=0x00A8
past_simple_verb=0x00C4
past_participle_verb=0x00E0
present_participle_verb=0x00FC

[dwarf_offsets]
first_name=0x0000
nick_name=0x001C
last_name=0x0038
custom_profession=0x006C
profession=0x0088
race=0x008C
flags1=0x00E0
flags2=0x00E4
sex=0x00F8
id=0x00FC
recheck_equipment=0x01BC
birth_year=0x0224
current_job=0x030c
physical_attrs=0x3C4
states=0x0528
souls=0x0764
likes=0x07A0
labors=0x078c
happiness=0x082c
squad_ref_id=0x790

[soul_details]
skills=0x0200
traits=0x0224

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x003C
members=0x0088

[position_offsets]
token=0x0000
flags=0x0020
general_name_singular=0x00E8
general_name_plural=0x0104
male_name_singular=0x0158
male_name_plural=0x0174
female_name_singluar=0x0120
female_name_plural=0x013C
custom_color_red=0x0382
custom_color_green=0x0380

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Andreus on February 15, 2012, 02:32:30 pm
Days. I will have some time tonight, and if all goes well, might even have a preliminary release. Otherwise, this weekend is when I'll have a serious chunk of time to work on it. Given that we've found a lot of the major offsets, I'm optimistic that I'll have something in the Friday/Saturday timeframe. I'd really like to get it done by Friday because I know people will be looking forward to burrowing in for the weekend and playing some serious DF'12. (I know I am)

Sir, I thoroughly appreciate the effort you've put into this tool so far. Take as much time as you need to get it right.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 15, 2012, 02:35:41 pm
@dyn

does this mean I can use an old version of DT when replacing the respective parts with what you posted?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 02:45:52 pm
@dyn

does this mean I can use an old version of DT when replacing the respective parts with what you posted?

As mentioned a few times earlier in the thread, you just have to take his large block of code (the one that starts with [info]) and put it in a file in the following place:

DwarfTherapist\etc\memory_layouts\windows\v0.34.01_graphics.ini

There aren't any changes required to DT itself, so you don't actually need a new "version", it just needs to have the information of where to look for all of the data, which is what this file contains.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 02:47:42 pm
Finally, I found the soul offsets. These changes should allow DT to show all the traits and skill experience.
Code: [Select]
[dwarf_offsets]
souls=0x0764

[soul_details]
skills=0x0200
traits=0x0224

Damn good job! I had been looking at 0x0764 for the soul offset (it's the same delta between that and labours in both versions, right?) but didn't know well enough what I was actually looking for to be able to identify it, coupled with the soul_details offsets changing, I was pretty much screwed on that one.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ClubFoot on February 15, 2012, 02:48:42 pm
For the OS X users:

If you right-click the app and click "Show Package Contents", you can click through to Contents\Resources\etc.  The ini files for the offsets live there.  Unfortunately I'm in the middle of a sprint at work, so I probably won't have time to test offsets on the OS X side until after work tonight.

thank you!
See - I knew there was an easy answer and I was just dumb.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: sergisaf on February 15, 2012, 02:52:35 pm
So let's say that with dyn's .ini everything was working just great (souls! yay!) but then a fucking migration wave of 3 dwarves (can 3 dwarves actually be called a migration wave? it'd be more like switching homes or whatever) fucked up and DT now just freezes every time I run it.

Dang.

P.S.: Is there a way to debug DT to know where is exactly the loading failing?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Gearheart on February 15, 2012, 02:56:00 pm
Preliminary release possibly tonight?

DE, you are a gentleman and a scholar and I wish to subscribe to your newsletter.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 02:58:54 pm
So let's say that with dyn's .ini everything was working just great (souls! yay!) but then a fucking migration wave of 3 dwarves (can 3 dwarves actually be called a migration wave? it'd be more like switching homes or whatever) fucked up and DT now just freezes every time I run it.

Dang.

P.S.: Is there a way to debug DT to know where is exactly the loading failing?

You can try restarting both DF and DT; that might solve it (I think it did for me when I encountered a similar issue while trying to find offsets).

As far as the debugging goes, in theory run.log should have some information, but I found that the stuff it prints while reading dwarves doesn't give enough information. If it crashes even after restarting DF, if you could zip up your save and put it somewhere that we can download it, that may be helpful for debugging the issue (if it's tied to some condition in the save and not some other factor entirely)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: sergisaf on February 15, 2012, 03:03:15 pm
@stevedore
Hell yeah.
Restarting worked.

Lots of thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: ClubFoot on February 15, 2012, 03:08:26 pm
For the OS X users:

If you right-click the app and click "Show Package Contents", you can click through to Contents\Resources\etc.  The ini files for the offsets live there.  Unfortunately I'm in the middle of a sprint at work, so I probably won't have time to test offsets on the OS X side until after work tonight.

See - I knew there was an easy answer and I was just dumb.

is there a doc someplace on the structure of ini files for DT?  I observe that the structure of the ini files are different for windows vs osx.
Windows:
  a <version>_legacy.ini and a <version>_graphics.ini file for each release
osx:
  just a single <version>.ini file for each release.

Is the windows structure to support legacy versions of DT, or do I somehow need to have both?

Also - I've got a mac (clearly), and I can read hex - so I'm happy to go looking for the mac-specific offsets myself if someone can point me to a guide for how you identify what you're looking for in the core...surely you're not just randomly guessing memory addresses....


Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 15, 2012, 03:19:32 pm
I'm so glad the DF community is made out of some really smart people. It's great to follow the research on DT and to see every little news on what people find out on the matter.

You make me smile. You give me hope DT will be fixed earlier than we thought.

Thanks for all your dedication, glad we have skilled people here!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: KaminaSquirtle on February 15, 2012, 03:20:22 pm
Dunno about documentation, but I'm willing to bet that the Windows version uses <version>_legacy.ini for the legacy version of DF, and <version>_graphics.ini for the SDL version. The OS X and Linux versions only have the one because they only work with the SDL releases.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Feb on February 15, 2012, 03:24:27 pm
I'm so glad the DF community is made out of some really smart people. It's great to follow the research on DT and to see every little news on what people find out on the matter.

You make me smile. You give me hope DT will be fixed earlier than we thought.

Thanks for all your dedication, glad we have skilled people here!

Not only we have smart people, we even have considerate, grateful not-so-smart people (self included)  I looked at our community fortress and I looked at the MC servers.  Hell, we have people (as in virtual strangers) here that are willing to work together ffs!  You've no idea how rare it's to see nowadays, all the other games are filled with people like !!XWeaselCakeX!! (I just learned what those icons mean today when I melted to death :P)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Sparrorf on February 15, 2012, 03:27:13 pm
I just like that i know something about programmin so i could helped you with the DT, the only thing i can do is cheer you up DwarfEngineer and all the inteligent people supporting him!

i hope that you can manage  to make the DT compatible with the new version, we'll be waiting patiently :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: vemiermark4 on February 15, 2012, 03:35:37 pm
Woot! Reporting DT working so far, with the Fixes/Hacks given by our brave heroes. The only 'bug' I've got is peasants being called glazers when ordered by profession, but seeing as all of my professions are custom names, it doesn't bother me much. Thanks for the work, guys! Can't wait to see DE's release.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 03:36:06 pm
For the OS X users:

If you right-click the app and click "Show Package Contents", you can click through to Contents\Resources\etc.  The ini files for the offsets live there.  Unfortunately I'm in the middle of a sprint at work, so I probably won't have time to test offsets on the OS X side until after work tonight.

See - I knew there was an easy answer and I was just dumb.

is there a doc someplace on the structure of ini files for DT?  I observe that the structure of the ini files are different for windows vs osx.
Windows:
  a <version>_legacy.ini and a <version>_graphics.ini file for each release
osx:
  just a single <version>.ini file for each release.

Is the windows structure to support legacy versions of DT, or do I somehow need to have both?

Also - I've got a mac (clearly), and I can read hex - so I'm happy to go looking for the mac-specific offsets myself if someone can point me to a guide for how you identify what you're looking for in the core...surely you're not just randomly guessing memory addresses....

Yes, the Windows structure is for side-by-side support of legacy and SDL versions.

As for finding the offsets... some of it has been guesswork, some more deterministic. There's a wiki post on the google code site (http://code.google.com/p/dwarftherapist/wiki/MappingNewVersions (http://code.google.com/p/dwarftherapist/wiki/MappingNewVersions)) that describes it, but it's quite outdated so only gives you a very rough idea.

Here's a quick guide to how I figured out some values:

modify DwarfTherapist\etc\game_data.ini, and change the following values:
Code: [Select]
total_words_per_table = 2173
expected_dwarf_race = 465

I don't know for sure that expected_dwarf_race should be changed; it's just a guess. I'm thinking it will probably have the same index in windows and on mac, but it might not. Worst case, this won't be any more incorrect than the value from the old version.

Generate a new world. When you go to embark, give your first dwarf the nickname "this_is_a_long_name" and custom profession "0123456789abcdef".

Once you're in game, just pause.

If you start dwarf therapist and click "connect to DF", it should say "connected to unknown version" in the status bar. Look for run.log (I assume it's within the package, maybe? Not absolutely sure) and look for a line where it says that it can't find a memory layout for checksum 0xXXXXXXXX - copy this hex value.

Close down DT, and copy v0.31.25.ini to v0.34.01.ini. Change the first two sections to look like (copying the checksum value you got from run.log):
Code: [Select]
[info]
checksum=0xXXXXXXXX
version_name=v0.34.01 (graphics)
complete=false

[addresses]
translation_vector=0x0
language_vector=0x0
creature_vector=0x0
dwarf_race_index=0x0
squad_vector=0x0

You can start DT again and connect to DF. Now, hit "Scan Memory". In this dialog, you want to try the four buttons on the right for finding creature vector, dwarf race index, translation vector, and squad vector. If they work, they'll print out some values that you can put into your .ini file, then restart DT and see if it's starting to read anything.

If it's reading the dwarves, you can right click on them and select Dump Memory to get, surprise surprise, a dump of the memory pertaining to that dwarf. From here it's been a bit more guess-work for me, but mostly I was looking at the offsets in my .ini file and trying to determine if the values at those offsets made sense. If DT finds your dwarf race index (more on that a bit later), for instance, that's an easy one to verify, since you just look for a specific hex value at an offset (remembering that it will be in little-endian representation). The labour offset is another semi-easy one; you'll be looking for a large area of repeated bytes that are either 01 or 00. Mining has index 0, so if you go in game and toggle it, you should see one byte going from 00 to 01 and back, etc, and the address of that byte is your labour offset.

on the dwarf race index:
DT didnt' find this value for me. I found that if I looked in run.log, I saw some lines like this after running the search for it:
Code: [Select]
2012-Feb-15 15:30:51.231 DEBUG core PTR 13734bf "" [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:77] (go)
2012-Feb-15 15:30:51.231 DEBUG core MATCH! offset 46 2e [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:80] (go)
2012-Feb-15 15:30:51.231 DEBUG core READ ADDR FROM 13734ed = 252be9c [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:82] (go)
2012-Feb-15 15:30:51.231 DEBUG core RACE VALUE 465 HEX 1d1 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:84] (go)
2012-Feb-15 15:30:51.231 DEBUG core PTR 13736eb "" [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:77] (go)
2012-Feb-15 15:30:51.231 DEBUG core MATCH! offset 31 1f [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:80] (go)
2012-Feb-15 15:30:51.231 DEBUG core READ ADDR FROM 137370a = 252be9c [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:82] (go)
2012-Feb-15 15:30:51.231 DEBUG core RACE VALUE 465 HEX 1d1 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:84] (go)
2012-Feb-15 15:30:51.231 DEBUG core PTR 15558c6 "" [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:77] (go)
2012-Feb-15 15:30:51.231 DEBUG core MATCH! offset 28 1c [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:80] (go)
2012-Feb-15 15:30:51.231 DEBUG core READ ADDR FROM 15558e2 = 252be9c [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:82] (go)
2012-Feb-15 15:30:51.231 DEBUG core RACE VALUE 465 HEX 1d1 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:84] (go)
2012-Feb-15 15:30:51.231 DEBUG core PTR 19b0537 "" [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:77] (go)
2012-Feb-15 15:30:51.231 DEBUG core MATCH! offset 25 19 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:80] (go)
2012-Feb-15 15:30:51.231 DEBUG core READ ADDR FROM 19b0550 = 252be9c [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:82] (go)
2012-Feb-15 15:30:51.231 DEBUG core RACE VALUE 465 HEX 1d1 [bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:84] (go)

If you're seeing several lines like this that all have a matching race value pop up, then just try one of the addresses from one of these lines (the address is in red)

Code: [Select]
2012-Feb-15 15:30:51.231 DEBUG core READ ADDR FROM 19b0550 = [color=red]252be9c[/color][bin/release/../../../dwarftherapist/inc/dwarfraceindexsearchjob.h:82] (go)

You'll have to subtract the appropriate offset from it first, however, before it's appropriate for putting into your .ini file. Look for this value (again, red) in run.log:

Code: [Select]
2012-Feb-15 15:30:49.001 DEBUG core base address: "0x01360000" [../dwarftherapist/src/dfinstancewindows.cpp:258] (find_running_copy)
2012-Feb-15 15:30:49.001 DEBUG core memory correction: "[color=red]0x00f60000[/color]" [../dwarftherapist/src/dfinstancewindows.cpp:259] (find_running_copy)

And subtract that value from the address you got a step before. That's what you'll put in your .ini file.

I hope that gives you at least somewhere to start.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: talrave on February 15, 2012, 04:28:15 pm
Hmmm... so using the modified .ini,  everything loads and appears to be working right,  however I might have run in to a small problem.

I have the habit of assigning everyone to do mining until the basic layout of the first floor is done so everyone can have shelter and all items and food can be put away.   Well, I assigned everyone via DT, committed changes, and unpaused DF...  Nothing.  Just my two miners from before whittling away while everyone else sets on their thumbs. 
I check; we have 7 pickaxes, everyone has 'mining' set in game.   Huh.   I manually turned their mining off and on, unpaused, and OFF to work they go!!

So yeah, not sure if they are actually doing the jobs they get assigned in DT or not, but I had to manually un-switch then re-switch them in DF for it to work.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 04:30:00 pm
Hmmm... so using the modified .ini,  everything loads and appears to be working right,  however I might have run in to a small problem.

I have the habit of assigning everyone to do mining until the basic layout of the first floor is done so everyone can have shelter and all items and food can be put away.   Well, I assigned everyone via DT, committed changes, and unpaused DF...  Nothing.  Just my two miners from before whittling away while everyone else sets on their thumbs. 
I check; we have 7 pickaxes, everyone has 'mining' set in game.   Huh.   I manually turned their mining off and on, unpaused, and OFF to work they go!!

So yeah, not sure if they are actually doing the jobs they get assigned in DT or not, but I had to manually un-switch then re-switch them in DF for it to work.

I've read about some bugs with workshops and construction - it's possible they're actually labour bugs, and it was manifesting here. If it showed as enabled in-game, then there's not much more DT can do.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: smirk on February 15, 2012, 04:39:10 pm
Hmmm... so using the modified .ini,  everything loads and appears to be working right,  however I might have run in to a small problem.

I have the habit of assigning everyone to do mining until the basic layout of the first floor is done so everyone can have shelter and all items and food can be put away.   Well, I assigned everyone via DT, committed changes, and unpaused DF...  Nothing.  Just my two miners from before whittling away while everyone else sets on their thumbs. 
I check; we have 7 pickaxes, everyone has 'mining' set in game.   Huh.   I manually turned their mining off and on, unpaused, and OFF to work they go!!

So yeah, not sure if they are actually doing the jobs they get assigned in DT or not, but I had to manually un-switch then re-switch them in DF for it to work.


I seem to recall that this was a DT bug for a while back in DF2010 as well, where setting mining and woodcutting wouldn't appropriately flag the dwarf to go pick up its equipment. It was only a problem with those two, because they required tools. It was fixed, but I have no idea how. Most likely the new version has broken that fix again. Just one more thing to dig back out of memory.


DwarfEngineer, stevedore, dyn, thanks for all your work getting this thing back on its feet. You are good people.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Saranis on February 15, 2012, 04:51:01 pm
I'm having trouble getting the ini working. Below are the steps I took.

Step 1: Downloaded and unzipped df_34_01_win.zip (the new SDL version of DF)
Step 2: Downloaded and unzipped Dwarf Therapist 6.10 off the link from the first post in this thread.
Step 3: Located Modified .INI file in thread http://www.bay12forums.com/smf/index.php?topic=66525.msg2990788#msg2990788 (http://www.bay12forums.com/smf/index.php?topic=66525.msg2990788#msg2990788)
Step 4: Created v0.34.01_graphics.ini file in "...DwarfTherapist-0.6.10\ect\memory_layouts\windows"
Step 5: Copied code from aforementioned post into v0.34.01_graphics.ini
Step 6: Ran Dwarf Fortress with New World
Step 7: Ran Dwarf Therapist which starts and then freezes while trying to read Dwarves.

Am I missing a critical step or am I just out of luck?

Here is my Run.log
Code: [Select]
2012-Feb-16 11:00:08.253 INFO core Dwarf Therapist "0.6.10" starting normally. [../dwarftherapist/src/dwarftherapist.cpp:100] (setup_logging)
2012-Feb-16 11:00:08.332 INFO core Loaded 4 views from disk [../dwarftherapist/src/viewmanager.cpp:126] (reload_views)
2012-Feb-16 11:00:08.365 DEBUG core "redrew views in 33ms" [../dwarftherapist/src/viewmanager.cpp:158] (draw_views)
2012-Feb-16 11:00:08.368 DEBUG core setting up connections for MainWindow [../dwarftherapist/src/mainwindow.cpp:116] (MainWindow)
2012-Feb-16 11:00:08.370 DEBUG core group_by now set to 0 [../dwarftherapist/src/models/dwarfmodel.cpp:435] (set_group_by)
2012-Feb-16 11:00:08.370 DEBUG core beginning to read settings [../dwarftherapist/src/dwarftherapist.cpp:122] (read_settings)
2012-Feb-16 11:00:08.371 DEBUG core finished reading settings [../dwarftherapist/src/dwarftherapist.cpp:168] (read_settings)
2012-Feb-16 11:00:08.483 DEBUG core attempting connection to running DF game [../dwarftherapist/src/mainwindow.cpp:225] (connect_to_df)
2012-Feb-16 11:00:08.492 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.492 DEBUG core adding valid layout "v0.34.01 (graphics)" "0x4f391a33" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.493 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.493 DEBUG core adding valid layout "v0.31.21 (legacy)" "0x4d743206" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.494 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.494 DEBUG core adding valid layout "v0.31.21 (graphics)" "0x4d743da7" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.495 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.495 DEBUG core adding valid layout "v0.31.20 (legacy)" "0x4d72f10d" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.496 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.496 DEBUG core adding valid layout "v0.31.20 (graphics)" "0x4d734fb5" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.497 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.497 DEBUG core adding valid layout "v0.31.19 (legacy)" "0x4d5b9f3c" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.498 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.498 DEBUG core adding valid layout "v0.31.19 (graphics)" "0x4d5bc345" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.499 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.499 DEBUG core adding valid layout "v0.31.18 (legacy)" "0x4ce278c2" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.500 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.500 DEBUG core adding valid layout "v0.31.18 (graphics)" "0x4ce2841d" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.500 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.500 DEBUG core adding valid layout "v0.31.17 (legacy)" "0x4cdc0c76" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.501 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.501 DEBUG core adding valid layout "v0.31.17 (graphics)" "0x4cdc27a0" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.502 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.502 DEBUG core adding valid layout "v0.31.16 (legacy)" "0x4ca9c859" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.503 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.503 DEBUG core adding valid layout "v0.31.16 (graphics)" "0x4ca9d544" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.504 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.504 DEBUG core adding valid layout "v0.31.15 (legacy)" "0x4ca859cd" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.505 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.505 DEBUG core adding valid layout "v0.31.15 (graphics)" "0x4ca869ea" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.506 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.506 DEBUG core adding valid layout "v0.31.14 (legacy)" "0x4c9b4c27" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.507 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.507 DEBUG core adding valid layout "v0.31.14 (graphics)" "0x4c9b6efb" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.507 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.508 DEBUG core adding valid layout "v0.31.13 (legacy)" "0x4c908b66" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.508 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.508 DEBUG core adding valid layout "v0.31.13 (graphics)" "0x4c90ada8" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.509 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.509 DEBUG core adding valid layout "v0.31.12 (legacy)" "0x4c4c1527" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.510 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.510 DEBUG core adding valid layout "v0.31.12 (graphics)" "0x4c4c32e7" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.511 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.511 DEBUG core adding valid layout "v0.31.11 (legacy)" "0x4c495d9f" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.512 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.512 DEBUG core adding valid layout "v0.31.11 (graphics)" "0x4c496d93" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.513 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.513 DEBUG core adding valid layout "v0.31.10 (legacy)" "0x4c397516" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.514 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.514 DEBUG core adding valid layout "v0.31.10 (graphics)" "0x4c398089" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.515 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.515 DEBUG core adding valid layout "v0.31.08 (legacy)" "0x4c1d60a0" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.516 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.516 DEBUG core adding valid layout "v0.31.08 (graphics)" "0x4c1d69fe" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.516 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.517 DEBUG core adding valid layout "v0.31.06 (legacy)" "0x4c0f6a01" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.517 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.517 DEBUG core adding valid layout "v0.31.06 (graphics)" "0x4c0f83d5" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.518 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.518 DEBUG core adding valid layout "v0.31.05 (legacy)" "0x4c090730" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.519 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.519 DEBUG core adding valid layout "v0.31.05 (graphics)" "0x4c091569" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.520 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.520 DEBUG core adding valid layout "v0.31.04 (legacy)" "0x4befdde5" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.521 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.521 DEBUG core adding valid layout "v0.31.04 (graphics)" "0x4bf014fa" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.522 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.522 DEBUG core adding valid layout "v0.31.03" "0x4bc3c470" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.523 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.523 DEBUG core adding valid layout "v0.31.02" "0x4bbdf378" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.524 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:08.524 DEBUG core adding valid layout "v0.31.01" "0x4bb45f99" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:08.524 ERROR core Skipping read of invalid memory layout in "C:/Users/Milnes/Desktop/DwarfTherapist-0.6.10/etc/memory_layouts/windows/.ini" [../dwarftherapist/src/memorylayout.cpp:39] (load_data)
2012-Feb-16 11:00:08.525 DEBUG core attempting to find running copy of DF by window handle [../dwarftherapist/src/dfinstancewindows.cpp:186] (find_running_copy)
2012-Feb-16 11:00:09.658 INFO core RUNNING VERSION         : "0.6.10" [../dwarftherapist/src/mainwindow.cpp:382] (version_check_finished)
2012-Feb-16 11:00:09.658 INFO core LATEST AVAILABLE VERSION: "0.6.4" [../dwarftherapist/src/mainwindow.cpp:383] (version_check_finished)
2012-Feb-16 11:00:10.072 WARNING core can't find running copy [../dwarftherapist/src/dfinstancewindows.cpp:199] (find_running_copy)
2012-Feb-16 11:00:34.904 DEBUG core attempting connection to running DF game [../dwarftherapist/src/mainwindow.cpp:225] (connect_to_df)
2012-Feb-16 11:00:34.904 DEBUG core already connected, disconnecting [../dwarftherapist/src/mainwindow.cpp:227] (connect_to_df)
2012-Feb-16 11:00:34.904 DEBUG core DFInstance baseclass virtual dtor! [../dwarftherapist/src/dfinstance.cpp:110] (~DFInstance)
2012-Feb-16 11:00:34.912 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.912 DEBUG core adding valid layout "v0.34.01 (graphics)" "0x4f391a33" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.912 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.913 DEBUG core adding valid layout "v0.31.21 (legacy)" "0x4d743206" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.913 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.913 DEBUG core adding valid layout "v0.31.21 (graphics)" "0x4d743da7" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.914 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.914 DEBUG core adding valid layout "v0.31.20 (legacy)" "0x4d72f10d" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.914 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.914 DEBUG core adding valid layout "v0.31.20 (graphics)" "0x4d734fb5" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.915 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.915 DEBUG core adding valid layout "v0.31.19 (legacy)" "0x4d5b9f3c" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.916 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.916 DEBUG core adding valid layout "v0.31.19 (graphics)" "0x4d5bc345" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.916 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.916 DEBUG core adding valid layout "v0.31.18 (legacy)" "0x4ce278c2" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.916 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.916 DEBUG core adding valid layout "v0.31.18 (graphics)" "0x4ce2841d" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.917 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.917 DEBUG core adding valid layout "v0.31.17 (legacy)" "0x4cdc0c76" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.917 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.917 DEBUG core adding valid layout "v0.31.17 (graphics)" "0x4cdc27a0" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.918 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.918 DEBUG core adding valid layout "v0.31.16 (legacy)" "0x4ca9c859" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.918 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.918 DEBUG core adding valid layout "v0.31.16 (graphics)" "0x4ca9d544" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.919 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.919 DEBUG core adding valid layout "v0.31.15 (legacy)" "0x4ca859cd" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.920 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.920 DEBUG core adding valid layout "v0.31.15 (graphics)" "0x4ca869ea" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.920 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.920 DEBUG core adding valid layout "v0.31.14 (legacy)" "0x4c9b4c27" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.921 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.921 DEBUG core adding valid layout "v0.31.14 (graphics)" "0x4c9b6efb" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.921 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.921 DEBUG core adding valid layout "v0.31.13 (legacy)" "0x4c908b66" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.922 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.922 DEBUG core adding valid layout "v0.31.13 (graphics)" "0x4c90ada8" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.923 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.923 DEBUG core adding valid layout "v0.31.12 (legacy)" "0x4c4c1527" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.923 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.923 DEBUG core adding valid layout "v0.31.12 (graphics)" "0x4c4c32e7" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.924 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.924 DEBUG core adding valid layout "v0.31.11 (legacy)" "0x4c495d9f" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.924 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.924 DEBUG core adding valid layout "v0.31.11 (graphics)" "0x4c496d93" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.925 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.925 DEBUG core adding valid layout "v0.31.10 (legacy)" "0x4c397516" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.926 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.926 DEBUG core adding valid layout "v0.31.10 (graphics)" "0x4c398089" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.926 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.926 DEBUG core adding valid layout "v0.31.08 (legacy)" "0x4c1d60a0" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.927 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.927 DEBUG core adding valid layout "v0.31.08 (graphics)" "0x4c1d69fe" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.927 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.927 DEBUG core adding valid layout "v0.31.06 (legacy)" "0x4c0f6a01" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.928 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.928 DEBUG core adding valid layout "v0.31.06 (graphics)" "0x4c0f83d5" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.929 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.929 DEBUG core adding valid layout "v0.31.05 (legacy)" "0x4c090730" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.929 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.929 DEBUG core adding valid layout "v0.31.05 (graphics)" "0x4c091569" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.930 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.930 DEBUG core adding valid layout "v0.31.04 (legacy)" "0x4befdde5" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.930 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.930 DEBUG core adding valid layout "v0.31.04 (graphics)" "0x4bf014fa" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.931 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.931 DEBUG core adding valid layout "v0.31.03" "0x4bc3c470" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.931 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.932 DEBUG core adding valid layout "v0.31.02" "0x4bbdf378" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.932 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:00:34.932 DEBUG core adding valid layout "v0.31.01" "0x4bb45f99" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:00:34.932 ERROR core Skipping read of invalid memory layout in "C:/Users/Milnes/Desktop/DwarfTherapist-0.6.10/etc/memory_layouts/windows/.ini" [../dwarftherapist/src/memorylayout.cpp:39] (load_data)
2012-Feb-16 11:00:34.933 DEBUG core attempting to find running copy of DF by window handle [../dwarftherapist/src/dfinstancewindows.cpp:186] (find_running_copy)
2012-Feb-16 11:00:34.933 DEBUG core found copy with HWND:  0xa03c8 [../dwarftherapist/src/dfinstancewindows.cpp:202] (find_running_copy)
2012-Feb-16 11:00:34.933 DEBUG core PID of process is:  1752 [../dwarftherapist/src/dfinstancewindows.cpp:209] (find_running_copy)
2012-Feb-16 11:00:34.933 DEBUG core PROC HANDLE: 0x690 [../dwarftherapist/src/dfinstancewindows.cpp:217] (find_running_copy)
2012-Feb-16 11:00:34.933 DEBUG core PEB is at:  0x7ffdf000 [../dwarftherapist/src/dfinstancewindows.cpp:223] (find_running_copy)
2012-Feb-16 11:00:34.933 DEBUG core read 12 bytes BASE ADDR is at:  0x3a0000 [../dwarftherapist/src/dfinstancewindows.cpp:236] (find_running_copy)
2012-Feb-16 11:00:34.933 DEBUG core Target EXE was compiled at  "2012-02-14T03:12:03" [../dwarftherapist/src/dfinstancewindows.cpp:70] (calculate_checksum)
2012-Feb-16 11:00:34.933 DEBUG core DF's checksum is: "0x4f391a33" [../dwarftherapist/src/dfinstance.cpp:653] (get_memory_layout)
2012-Feb-16 11:00:34.933 INFO core Detected Dwarf Fortress version "v0.34.01 (graphics)" using MemoryLayout from "C:/Users/Milnes/Desktop/DwarfTherapist-0.6.10/etc/memory_layouts/windows/v0.34.01_graphics.ini" [../dwarftherapist/src/dfinstance.cpp:665] (get_memory_layout)
2012-Feb-16 11:00:34.933 DEBUG core base address: "0x003a0000" [../dwarftherapist/src/dfinstancewindows.cpp:258] (find_running_copy)
2012-Feb-16 11:00:34.933 DEBUG core memory correction: "0xfffa0000" [../dwarftherapist/src/dfinstancewindows.cpp:259] (find_running_copy)
2012-Feb-16 11:00:34.937 DEBUG core MEMORY SEGMENT SUMMARY: accepted 342 rejected 100 total 442 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:00:34.937 DEBUG core GetModuleFileNameEx returned:  "C:\Users\Milnes\Desktop\df_34_01_win\Dwarf Fortress.exe" [../dwarftherapist/src/dfinstancewindows.cpp:272] (find_running_copy)
2012-Feb-16 11:00:34.937 INFO core Dwarf fortress path: "C:/Users/Milnes/Desktop/df_34_01_win" [../dwarftherapist/src/dfinstancewindows.cpp:275] (find_running_copy)
2012-Feb-16 11:00:34.940 DEBUG core Connection to unknown DF Version established. [../dwarftherapist/src/mainwindow.cpp:249] (connect_to_df)
2012-Feb-16 11:00:55.550 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:01:15.545 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:01:35.547 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:01:55.555 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:02:15.546 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:02:35.552 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:02:55.556 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:03:15.541 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:03:35.544 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:03:55.554 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:03:56.571 DEBUG core MEMORY SEGMENT SUMMARY: accepted 1 rejected 1 total 2 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:03:56.571 WARNING core Active Memory Layout "C:/Users/Milnes/Desktop/DwarfTherapist-0.6.10/etc/memory_layouts/windows/v0.34.01_graphics.ini" ( "v0.34.01 (graphics)" ) contains an invalid creature_vector address. Either you are scanning a new  DF version or your config files are corrupted. [../dwarftherapist/src/dfinstance.cpp:272] (load_dwarves)
2012-Feb-16 11:03:56.571 WARNING core Active Memory Layout "C:/Users/Milnes/Desktop/DwarfTherapist-0.6.10/etc/memory_layouts/windows/v0.34.01_graphics.ini" ( "v0.34.01 (graphics)" ) contains an invalid squad_vector address. Either you are scanning a new  DF version or your config files are corrupted. [../dwarftherapist/src/dfinstance.cpp:344] (load_squads)
2012-Feb-16 11:03:56.571 WARNING core lost connection to DF [../dwarftherapist/src/mainwindow.cpp:295] (lost_df_connection)
2012-Feb-16 11:03:56.586 DEBUG core DFInstance baseclass virtual dtor! [../dwarftherapist/src/dfinstance.cpp:110] (~DFInstance)
2012-Feb-16 11:04:03.236 DEBUG core attempting connection to running DF game [../dwarftherapist/src/mainwindow.cpp:225] (connect_to_df)
2012-Feb-16 11:04:03.247 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.247 DEBUG core adding valid layout "v0.34.01 (graphics)" "0x4f391a33" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.248 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.248 DEBUG core adding valid layout "v0.31.21 (legacy)" "0x4d743206" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.249 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.249 DEBUG core adding valid layout "v0.31.21 (graphics)" "0x4d743da7" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.250 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.250 DEBUG core adding valid layout "v0.31.20 (legacy)" "0x4d72f10d" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.250 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.250 DEBUG core adding valid layout "v0.31.20 (graphics)" "0x4d734fb5" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.251 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.251 DEBUG core adding valid layout "v0.31.19 (legacy)" "0x4d5b9f3c" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.252 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.252 DEBUG core adding valid layout "v0.31.19 (graphics)" "0x4d5bc345" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.253 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.253 DEBUG core adding valid layout "v0.31.18 (legacy)" "0x4ce278c2" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.253 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.254 DEBUG core adding valid layout "v0.31.18 (graphics)" "0x4ce2841d" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.254 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.255 DEBUG core adding valid layout "v0.31.17 (legacy)" "0x4cdc0c76" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.255 DEBUG core valid_flags_2 count:  1 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.255 DEBUG core adding valid layout "v0.31.17 (graphics)" "0x4cdc27a0" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.256 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.256 DEBUG core adding valid layout "v0.31.16 (legacy)" "0x4ca9c859" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.257 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.257 DEBUG core adding valid layout "v0.31.16 (graphics)" "0x4ca9d544" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.258 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.258 DEBUG core adding valid layout "v0.31.15 (legacy)" "0x4ca859cd" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.259 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.259 DEBUG core adding valid layout "v0.31.15 (graphics)" "0x4ca869ea" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.260 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.260 DEBUG core adding valid layout "v0.31.14 (legacy)" "0x4c9b4c27" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.261 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.261 DEBUG core adding valid layout "v0.31.14 (graphics)" "0x4c9b6efb" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.262 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.262 DEBUG core adding valid layout "v0.31.13 (legacy)" "0x4c908b66" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.262 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.263 DEBUG core adding valid layout "v0.31.13 (graphics)" "0x4c90ada8" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.263 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.263 DEBUG core adding valid layout "v0.31.12 (legacy)" "0x4c4c1527" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.264 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.264 DEBUG core adding valid layout "v0.31.12 (graphics)" "0x4c4c32e7" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.265 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.265 DEBUG core adding valid layout "v0.31.11 (legacy)" "0x4c495d9f" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.266 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.266 DEBUG core adding valid layout "v0.31.11 (graphics)" "0x4c496d93" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.267 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.267 DEBUG core adding valid layout "v0.31.10 (legacy)" "0x4c397516" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.268 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.268 DEBUG core adding valid layout "v0.31.10 (graphics)" "0x4c398089" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.269 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.269 DEBUG core adding valid layout "v0.31.08 (legacy)" "0x4c1d60a0" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.269 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.270 DEBUG core adding valid layout "v0.31.08 (graphics)" "0x4c1d69fe" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.270 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.270 DEBUG core adding valid layout "v0.31.06 (legacy)" "0x4c0f6a01" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.271 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.271 DEBUG core adding valid layout "v0.31.06 (graphics)" "0x4c0f83d5" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.272 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.272 DEBUG core adding valid layout "v0.31.05 (legacy)" "0x4c090730" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.272 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.272 DEBUG core adding valid layout "v0.31.05 (graphics)" "0x4c091569" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.273 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.273 DEBUG core adding valid layout "v0.31.04 (legacy)" "0x4befdde5" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.273 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.273 DEBUG core adding valid layout "v0.31.04 (graphics)" "0x4bf014fa" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.274 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.274 DEBUG core adding valid layout "v0.31.03" "0x4bc3c470" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.275 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.275 DEBUG core adding valid layout "v0.31.02" "0x4bbdf378" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.275 DEBUG core valid_flags_2 count:  0 [../dwarftherapist/src/memorylayout.cpp:76] (load_data)
2012-Feb-16 11:04:03.275 DEBUG core adding valid layout "v0.31.01" "0x4bb45f99" [../dwarftherapist/src/dfinstance.cpp:95] (DFInstance)
2012-Feb-16 11:04:03.276 ERROR core Skipping read of invalid memory layout in "C:/Users/Milnes/Desktop/DwarfTherapist-0.6.10/etc/memory_layouts/windows/.ini" [../dwarftherapist/src/memorylayout.cpp:39] (load_data)
2012-Feb-16 11:04:03.276 DEBUG core attempting to find running copy of DF by window handle [../dwarftherapist/src/dfinstancewindows.cpp:186] (find_running_copy)
2012-Feb-16 11:04:03.276 DEBUG core found copy with HWND:  0x903c0 [../dwarftherapist/src/dfinstancewindows.cpp:202] (find_running_copy)
2012-Feb-16 11:04:03.276 DEBUG core PID of process is:  4704 [../dwarftherapist/src/dfinstancewindows.cpp:209] (find_running_copy)
2012-Feb-16 11:04:03.276 DEBUG core PROC HANDLE: 0x68c [../dwarftherapist/src/dfinstancewindows.cpp:217] (find_running_copy)
2012-Feb-16 11:04:03.276 DEBUG core PEB is at:  0x7ffd3000 [../dwarftherapist/src/dfinstancewindows.cpp:223] (find_running_copy)
2012-Feb-16 11:04:03.276 DEBUG core read 12 bytes BASE ADDR is at:  0xe70000 [../dwarftherapist/src/dfinstancewindows.cpp:236] (find_running_copy)
2012-Feb-16 11:04:03.276 DEBUG core Target EXE was compiled at  "2012-02-14T03:12:03" [../dwarftherapist/src/dfinstancewindows.cpp:70] (calculate_checksum)
2012-Feb-16 11:04:03.276 DEBUG core DF's checksum is: "0x4f391a33" [../dwarftherapist/src/dfinstance.cpp:653] (get_memory_layout)
2012-Feb-16 11:04:03.276 INFO core Detected Dwarf Fortress version "v0.34.01 (graphics)" using MemoryLayout from "C:/Users/Milnes/Desktop/DwarfTherapist-0.6.10/etc/memory_layouts/windows/v0.34.01_graphics.ini" [../dwarftherapist/src/dfinstance.cpp:665] (get_memory_layout)
2012-Feb-16 11:04:03.276 DEBUG core base address: "0x00e70000" [../dwarftherapist/src/dfinstancewindows.cpp:258] (find_running_copy)
2012-Feb-16 11:04:03.276 DEBUG core memory correction: "0x00a70000" [../dwarftherapist/src/dfinstancewindows.cpp:259] (find_running_copy)
2012-Feb-16 11:04:03.291 DEBUG core MEMORY SEGMENT SUMMARY: accepted 362 rejected 108 total 470 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:04:03.291 DEBUG core GetModuleFileNameEx returned:  "C:\Users\Milnes\Desktop\df_34_01_win\Dwarf Fortress.exe" [../dwarftherapist/src/dfinstancewindows.cpp:272] (find_running_copy)
2012-Feb-16 11:04:03.291 INFO core Dwarf fortress path: "C:/Users/Milnes/Desktop/df_34_01_win" [../dwarftherapist/src/dfinstancewindows.cpp:275] (find_running_copy)
2012-Feb-16 11:04:03.292 DEBUG core Connection to unknown DF Version established. [../dwarftherapist/src/mainwindow.cpp:249] (connect_to_df)
2012-Feb-16 11:04:05.199 DEBUG core MEMORY SEGMENT SUMMARY: accepted 362 rejected 108 total 470 [../dwarftherapist/src/dfinstancewindows.cpp:365] (map_virtual_memory)
2012-Feb-16 11:04:05.199 DEBUG core loading creatures from  "0x0220f728" "0x0179f728" (UNCORRECTED) [../dwarftherapist/src/dfinstance.cpp:287] (load_dwarves)
2012-Feb-16 11:04:05.199 DEBUG core dwarf race index "0x0203be9c" "0x015cbe9c" (UNCORRECTED) [../dwarftherapist/src/dfinstance.cpp:289] (load_dwarves)
2012-Feb-16 11:04:05.200 DEBUG core dwarf race: "0x000001d1" [../dwarftherapist/src/dfinstance.cpp:296] (load_dwarves)

Edit: Sorry, I posted the wrong log earlier, the above one is correct one.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on February 15, 2012, 04:52:08 pm
Hmmm... so using the modified .ini,  everything loads and appears to be working right,  however I might have run in to a small problem.

I have the habit of assigning everyone to do mining until the basic layout of the first floor is done so everyone can have shelter and all items and food can be put away.   Well, I assigned everyone via DT, committed changes, and unpaused DF...  Nothing.  Just my two miners from before whittling away while everyone else sets on their thumbs. 
I check; we have 7 pickaxes, everyone has 'mining' set in game.   Huh.   I manually turned their mining off and on, unpaused, and OFF to work they go!!

So yeah, not sure if they are actually doing the jobs they get assigned in DT or not, but I had to manually un-switch then re-switch them in DF for it to work.
Just means that nobody has found the recheck_equipment offset yet :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 04:59:41 pm
Hmmm... so using the modified .ini,  everything loads and appears to be working right,  however I might have run in to a small problem.

I have the habit of assigning everyone to do mining until the basic layout of the first floor is done so everyone can have shelter and all items and food can be put away.   Well, I assigned everyone via DT, committed changes, and unpaused DF...  Nothing.  Just my two miners from before whittling away while everyone else sets on their thumbs. 
I check; we have 7 pickaxes, everyone has 'mining' set in game.   Huh.   I manually turned their mining off and on, unpaused, and OFF to work they go!!

So yeah, not sure if they are actually doing the jobs they get assigned in DT or not, but I had to manually un-switch then re-switch them in DF for it to work.


I seem to recall that this was a DT bug for a while back in DF2010 as well, where setting mining and woodcutting wouldn't appropriately flag the dwarf to go pick up its equipment. It was only a problem with those two, because they required tools. It was fixed, but I have no idea how. Most likely the new version has broken that fix again. Just one more thing to dig back out of memory.


DwarfEngineer, stevedore, dyn, thanks for all your work getting this thing back on its feet. You are good people.

Oh! This makes sense. There's a specific flag recheck_equipment that probably needs to be set for those jobs (now that I hear about this, that offset value suddenly makes sense), and we likely have the wrong offset for it. I'll look into that right now, actually. It should hopefully be a reasonably quick solution.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: dyn on February 15, 2012, 05:04:52 pm
Oh! This makes sense. There's a specific flag recheck_equipment that probably needs to be set for those jobs (now that I hear about this, that offset value suddenly makes sense), and we likely have the wrong offset for it. I'll look into that right now, actually. It should hopefully be a reasonably quick solution.

Try recheck_equipment=0x01c0
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 05:08:40 pm
Oh! This makes sense. There's a specific flag recheck_equipment that probably needs to be set for those jobs (now that I hear about this, that offset value suddenly makes sense), and we likely have the wrong offset for it. I'll look into that right now, actually. It should hopefully be a reasonably quick solution.

Try recheck_equipment=0x01c0

You're too fast, dangit!  ;) Got there before me. I got 0x01C0 too.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 05:17:30 pm
I'm having trouble getting the ini working. Below are the steps I took.

Step 1: Downloaded and unzipped df_34_01_win.zip (the new SDL version of DF)
Step 2: Downloaded and unzipped Dwarf Therapist 6.10 off the link from the first post in this thread.
Step 3: Located Modified .INI file in thread http://www.bay12forums.com/smf/index.php?topic=66525.msg2990788#msg2990788 (http://www.bay12forums.com/smf/index.php?topic=66525.msg2990788#msg2990788)
Step 4: Created v0.34.01_graphics.ini file in "...DwarfTherapist-0.6.10\ect\memory_layouts\windows"
Step 5: Copied code from aforementioned post into v0.34.01_graphics.ini
Step 6: Ran Dwarf Fortress with New World
Step 7: Ran Dwarf Therapist which starts and then freezes while trying to read Dwarves.

Am I missing a critical step or am I just out of luck?

Here is my Run.log
Code: [Select]
code

Edit: Sorry, I posted the wrong log earlier, the above one is correct one.

Try restarting Dwarf Fortress. It's been the fix for a few people that have run into a similar problem.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Saranis on February 15, 2012, 05:23:42 pm
I'm having trouble getting the ini working. Below are the steps I took.

Step 1: Downloaded and unzipped df_34_01_win.zip (the new SDL version of DF)
Step 2: Downloaded and unzipped Dwarf Therapist 6.10 off the link from the first post in this thread.
Step 3: Located Modified .INI file in thread http://www.bay12forums.com/smf/index.php?topic=66525.msg2990788#msg2990788 (http://www.bay12forums.com/smf/index.php?topic=66525.msg2990788#msg2990788)
Step 4: Created v0.34.01_graphics.ini file in "...DwarfTherapist-0.6.10\ect\memory_layouts\windows"
Step 5: Copied code from aforementioned post into v0.34.01_graphics.ini
Step 6: Ran Dwarf Fortress with New World
Step 7: Ran Dwarf Therapist which starts and then freezes while trying to read Dwarves.

Am I missing a critical step or am I just out of luck?

Here is my Run.log
Code: [Select]
code

Edit: Sorry, I posted the wrong log earlier, the above one is correct one.

Try restarting Dwarf Fortress. It's been the fix for a few people that have run into a similar problem.

Tried that 100 times already, no luck.

Seem to have discovered a nice lil memory leak though, Task Manager is reporting over 400,000k while trying to read dwarves.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: stevedore on February 15, 2012, 05:28:49 pm
Tried that 100 times already, no luck.

Seem to have discovered a nice lil memory leak though, Task Manager is reporting over 400,000k while trying to read dwarves.

Hm. Unfortunately in that case there isn't a whole heck of a lot more I can add. You can try generating a new world and that may be enough to fix it.

I'm not sure if this issue is related to the fact that we haven't found all of the offsets yet, or if it's because there's actually some sort of bug somewhere, so it's difficult to say what will fix it.

From the memory leak, sounds like we're getting into some sort of infinite loop. Apparently some people have found it can just take a few minutes to read dwarves, but I can't say that happens for sure.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Couchmonster on February 15, 2012, 06:07:05 pm
I am having the same as Saranis.

I redownloaded DT. Now I recognized that there is no 31.25 file... maybe that is the problem... there was no update before updating to 34.01.
Tried downgrade which works. Still the mem problem in the run.log with the new version.

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Rickeon on February 15, 2012, 06:54:16 pm
I was having the problem with the memory leak and freeze on reading dwarves, too. Restarting eventually did fix it, however. Took maybe a dozen restarts of dwarf fortress. Eventually, it worked, though, and then it worked until I restarted dwarf fortress, even if I genned another world and reembarked or loaded a different save. After I closed Dwarf fortress, it hung on reading dwarves again until I restarted another half a dozen times or so.

Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kreastr on February 15, 2012, 08:31:00 pm
I tried to play around with squads by changing their staff and ArtMoney led me to somewhere near 0x1650b9c0.
The dump shows following.
Code: [Select]
    ADDR   | 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | TEXT
------------------------------------------------------------------------
0x1650b900 | 46 49 4e 47 45 52 53 3a 52 43 50 5f 12 00 00 00 | FINGERS:RCP_12...
0x1650b910 | 1f 00 00 00 43 50 5f 32 53 4b 49 4e 00 3a 52 43 | 1f...CP_2SKIN.:RC
0x1650b920 | 50 5f 4e 4f 53 45 3a 52 04 00 00 00 0f 00 00 00 | P_NOSE:R04...0f...
0x1650b930 | 53 3a 52 43 00 5f 4c 55 4e 47 53 3a 52 43 50 5f | S:RC._LUNGS:RCP_
0x1650b940 | 48 45 41 52 00 00 00 00 0f 00 00 00 54 53 3a 52 | HEAR....0f...TS:R
0x1650b950 | 13 00 5f 54 1e 00 00 00 01 00 00 00 64 00 00 00 | 13._T1e...01...d...
0x1650b960 | 01 00 00 00 05 00 00 00 00 00 43 4b ff ff ff ff | 01...05.....CKffffffff
0x1650b970 | 00 00 52 41 00 4e 3a 52 43 50 5f 53 4b 55 4c 4c | ..RA.N:RCP_SKULL
0x1650b980 | 3a 52 43 50 00 00 00 00 0f 00 00 00 43 50 5f 54 | :RCP....0f...CP_T
0x1650b990 | ff ff ff ff 00 00 0a 28 ac 26 0c 29 61 ea 61 ea | ffffffff..0a(ac&0c)aeaaea
0x1650b9a0 | 55 10 50 5f 00 49 42 53 3a 52 43 50 5f 45 59 45 | U10P_.IBS:RCP_EYE
0x1650b9b0 | 4c 49 44 53 00 00 00 00 0f 00 00 00 5d 00 00 00 | LIDS....0f...]...
0x1650b9c0 | e9 b1 06 74 00 00 00 88 80 00 00 00 00 00 00 00 | e9b106t...8880.......
0x1650b9d0 | 00 00 00 00 00 00 00 00 42 4f 44 59 00 00 00 00 | ........BODY....
0x1650b9e0 | 00 00 00 00 00 00 00 00 4f 44 59 3a 00 00 00 00 | ........ODY:....
0x1650b9f0 | 00 00 00 00 00 00 00 00 5f 53 49 4d 00 00 00 00 | ........_SIM....
0x1650ba00 | 00 00 00 00 00 00 00 00 47 53 3a 52 00 00 00 00 | ........GS:R....
0x1650ba10 | 00 00 00 00 00 00 00 00 41 52 5f 4c a0 6b fd 17 | ........AR_La0kfd17
0x1650ba20 | a4 6b fd 17 a4 6b fd 17 3a 52 43 50 00 76 fd 17 | a4kfd17a4kfd17:RCP.vfd17
0x1650ba30 | 04 76 fd 17 04 76 fd 17 50 5f 34 5f f0 75 fd 17 | 04vfd1704vfd17P_4_f0ufd17
0x1650ba40 | f4 75 fd 17 f4 75 fd 17 43 50 5f 34 e0 75 fd 17 | f4ufd17f4ufd17CP_4e0ufd17
0x1650ba50 | e4 75 fd 17 e4 75 fd 17 43 50 5f 32 d0 75 fd 17 | e4ufd17e4ufd17CP_2d0ufd17
0x1650ba60 | d4 75 fd 17 d4 75 fd 17 4e 47 53 3a c0 75 fd 17 | d4ufd17d4ufd17NGS:c0ufd17
0x1650ba70 | c4 75 fd 17 c4 75 fd 17 50 5f 47 55 b0 75 fd 17 | c4ufd17c4ufd17P_GUb0ufd17
0x1650ba80 | b4 75 fd 17 b4 75 fd 17 54 3a 52 43 00 5f 53 50 | b4ufd17b4ufd17T:RC._SP
0x1650ba90 | 49 4e 45 3a 52 43 50 5f 4e 45 43 4b 00 00 00 00 | INE:RCP_NECK....
0x1650baa0 | 0f 00 00 00 49 4e 3a 52 00 00 00 00 00 00 00 00 | 0f...IN:R........
0x1650bab0 | 00 00 00 00 00 00 00 00 54 48 3a 52 ff ff ff ff | ........TH:Rffffffff
0x1650bac0 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650bad0 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650bae0 | ff ff ff ff ff ff ff ff 8c b1 06 74 00 00 00 88 | ffffffffffffffff8cb106t...88
0x1650baf0 | 81 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | 81...............
0x1650bb00 | 42 4f 44 59 00 00 00 00 00 00 00 00 00 00 00 00 | BODY............
0x1650bb10 | 4f 44 59 3a 00 00 00 00 00 00 00 00 00 00 00 00 | ODY:............
0x1650bb20 | 5f 54 57 4f 00 00 00 00 00 00 00 00 00 00 00 00 | _TWO............
0x1650bb30 | 43 50 5f 54 00 00 00 00 00 00 00 00 00 00 00 00 | CP_T............
0x1650bb40 | 3a 52 43 50 a0 75 fd 17 a4 75 fd 17 a4 75 fd 17 | :RCPa0ufd17a4ufd17a4ufd17
0x1650bb50 | 46 49 4e 47 90 75 fd 17 94 75 fd 17 94 75 fd 17 | FING90ufd1794ufd1794ufd17
0x1650bb60 | 45 53 3a 52 80 75 fd 17 84 75 fd 17 84 75 fd 17 | ES:R80ufd1784ufd1784ufd17
0x1650bb70 | 50 5f 4e 4f 70 75 fd 17 74 75 fd 17 74 75 fd 17 | P_NOpufd17tufd17tufd17
0x1650bb80 | 53 3a 52 43 a0 76 fd 17 a4 76 fd 17 a4 76 fd 17 | S:RCa0vfd17a4vfd17a4vfd17
0x1650bb90 | 48 45 41 52 90 76 fd 17 94 76 fd 17 94 76 fd 17 | HEAR90vfd1794vfd1794vfd17
0x1650bba0 | 43 50 5f 54 80 76 fd 17 84 76 fd 17 84 76 fd 17 | CP_T80vfd1784vfd1784vfd17
0x1650bbb0 | 49 4e 45 3a 00 43 50 5f 4e 45 43 4b 3a 52 43 50 | INE:.CP_NECK:RCP
0x1650bbc0 | 5f 42 52 41 00 00 00 00 0f 00 00 00 4b 55 4c 4c | _BRA....0f...KULL
0x1650bbd0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650bbe0 | 4f 4e 47 55 ff ff ff ff ff ff ff ff ff ff ff ff | ONGUffffffffffffffffffffffff
0x1650bbf0 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650bc00 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650bc10 | 53 b1 06 74 00 00 00 88 82 00 00 00 00 00 00 00 | Sb106t...8882.......
0x1650bc20 | 00 00 00 00 00 00 00 00 42 4f 44 59 00 00 00 00 | ........BODY....
0x1650bc30 | 00 00 00 00 00 00 00 00 4f 44 59 3a 00 00 00 00 | ........ODY:....
0x1650bc40 | 00 00 00 00 00 00 00 00 5f 54 57 4f 00 00 00 00 | ........_TWO....
0x1650bc50 | 00 00 00 00 00 00 00 00 43 50 5f 54 00 00 00 00 | ........CP_T....
0x1650bc60 | 00 00 00 00 00 00 00 00 3a 52 43 50 70 76 fd 17 | ........:RCPpvfd17
0x1650bc70 | 74 76 fd 17 74 76 fd 17 46 49 4e 47 60 76 fd 17 | tvfd17tvfd17FING`vfd17
0x1650bc80 | 64 76 fd 17 64 76 fd 17 45 53 3a 52 50 76 fd 17 | dvfd17dvfd17ES:RPvfd17
0x1650bc90 | 54 76 fd 17 54 76 fd 17 50 5f 4e 4f 40 76 fd 17 | Tvfd17Tvfd17P_NO@vfd17
0x1650bca0 | 44 76 fd 17 44 76 fd 17 53 3a 52 43 30 76 fd 17 | Dvfd17Dvfd17S:RC0vfd17
0x1650bcb0 | 34 76 fd 17 34 76 fd 17 48 45 41 52 20 76 fd 17 | 4vfd174vfd17HEAR vfd17
0x1650bcc0 | 24 76 fd 17 24 76 fd 17 43 50 5f 54 10 76 fd 17 | $vfd17$vfd17CP_T10vfd17
0x1650bcd0 | 14 76 fd 17 14 76 fd 17 49 4e 45 3a 00 43 50 5f | 14vfd1714vfd17INE:.CP_
0x1650bce0 | 4e 45 43 4b 3a 52 43 50 5f 42 52 41 00 00 00 00 | NECK:RCP_BRA....
0x1650bcf0 | 0f 00 00 00 4b 55 4c 4c 00 00 00 00 00 00 00 00 | 0f...KULL........
0x1650bd00 | 00 00 00 00 00 00 00 00 4f 4e 47 55 ff ff ff ff | ........ONGUffffffff
0x1650bd10 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650bd20 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650bd30 | ff ff ff ff ff ff ff ff 76 b1 06 74 00 00 00 88 | ffffffffffffffffvb106t...88
0x1650bd40 | ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | ffffffff............
0x1650bd50 | 42 4f 44 59 00 00 00 00 00 00 00 00 00 00 00 00 | BODY............
0x1650bd60 | 4f 44 59 3a 00 00 00 00 00 00 00 00 00 00 00 00 | ODY:............
0x1650bd70 | 5f 54 57 4f 00 00 00 00 00 00 00 00 00 00 00 00 | _TWO............
0x1650bd80 | 43 50 5f 54 00 00 00 00 00 00 00 00 00 00 00 00 | CP_T............
0x1650bd90 | 3a 52 43 50 40 77 fd 17 44 77 fd 17 44 77 fd 17 | :RCP@wfd17Dwfd17Dwfd17
0x1650bda0 | 46 49 4e 47 30 77 fd 17 34 77 fd 17 34 77 fd 17 | FING0wfd174wfd174wfd17
0x1650bdb0 | 45 53 3a 52 20 77 fd 17 24 77 fd 17 24 77 fd 17 | ES:R wfd17$wfd17$wfd17
0x1650bdc0 | 50 5f 4e 4f 10 77 fd 17 14 77 fd 17 14 77 fd 17 | P_NO10wfd1714wfd1714wfd17
0x1650bdd0 | 53 3a 52 43 00 77 fd 17 04 77 fd 17 04 77 fd 17 | S:RC.wfd1704wfd1704wfd17
0x1650bde0 | 48 45 41 52 f0 76 fd 17 f4 76 fd 17 f4 76 fd 17 | HEARf0vfd17f4vfd17f4vfd17
0x1650bdf0 | 43 50 5f 54 e0 76 fd 17 e4 76 fd 17 e4 76 fd 17 | CP_Te0vfd17e4vfd17e4vfd17
0x1650be00 | 49 4e 45 3a 00 43 50 5f 4e 45 43 4b 3a 52 43 50 | INE:.CP_NECK:RCP
0x1650be10 | 5f 42 52 41 00 00 00 00 0f 00 00 00 4b 55 4c 4c | _BRA....0f...KULL
0x1650be20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650be30 | 4f 4e 47 55 ff ff ff ff ff ff ff ff ff ff ff ff | ONGUffffffffffffffffffffffff
0x1650be40 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650be50 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650be60 | 1d b1 06 74 00 00 00 88 ff ff ff ff 00 00 00 00 | 1db106t...88ffffffff....
0x1650be70 | 00 00 00 00 00 00 00 00 42 4f 44 59 00 00 00 00 | ........BODY....
0x1650be80 | 00 00 00 00 00 00 00 00 4f 44 59 3a 00 00 00 00 | ........ODY:....
0x1650be90 | 00 00 00 00 00 00 00 00 5f 54 57 4f 00 00 00 00 | ........_TWO....
0x1650bea0 | 00 00 00 00 00 00 00 00 43 50 5f 54 00 00 00 00 | ........CP_T....
0x1650beb0 | 00 00 00 00 00 00 00 00 3a 52 43 50 d0 76 fd 17 | ........:RCPd0vfd17
0x1650bec0 | d4 76 fd 17 d4 76 fd 17 46 49 4e 47 c0 76 fd 17 | d4vfd17d4vfd17FINGc0vfd17
0x1650bed0 | c4 76 fd 17 c4 76 fd 17 45 53 3a 52 b0 76 fd 17 | c4vfd17c4vfd17ES:Rb0vfd17
0x1650bee0 | b4 76 fd 17 b4 76 fd 17 50 5f 4e 4f e0 77 fd 17 | b4vfd17b4vfd17P_NOe0wfd17
0x1650bef0 | e4 77 fd 17 e4 77 fd 17 53 3a 52 43 d0 77 fd 17 | e4wfd17e4wfd17S:RCd0wfd17
0x1650bf00 | d4 77 fd 17 d4 77 fd 17 48 45 41 52 c0 77 fd 17 | d4wfd17d4wfd17HEARc0wfd17
0x1650bf10 | c4 77 fd 17 c4 77 fd 17 43 50 5f 54 b0 77 fd 17 | c4wfd17c4wfd17CP_Tb0wfd17
0x1650bf20 | b4 77 fd 17 b4 77 fd 17 49 4e 45 3a 00 43 50 5f | b4wfd17b4wfd17INE:.CP_
0x1650bf30 | 4e 45 43 4b 3a 52 43 50 5f 42 52 41 00 00 00 00 | NECK:RCP_BRA....
0x1650bf40 | 0f 00 00 00 4b 55 4c 4c 00 00 00 00 00 00 00 00 | 0f...KULL........
0x1650bf50 | 00 00 00 00 00 00 00 00 4f 4e 47 55 ff ff ff ff | ........ONGUffffffff
0x1650bf60 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650bf70 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | ffffffffffffffffffffffffffffffff
0x1650bf80 | ff ff ff ff ff ff ff ff 20 b1 06 74 00 00 00 88 | ffffffffffffffff b106t...88
0x1650bf90 | 46 41 54 00 4c 45 00 00 00 00 00 00 00 00 00 00 | FAT.LE..........
0x1650bfa0 | 03 00 00 00 0f 00 00 00 00 00 00 00 20 f4 d7 0c | 03...0f....... f4d70c
0x1650bfb0 | 03 00 00 00 66 61 74 00 6c 65 00 00 00 00 00 00 | 03...fat.le......
0x1650bfc0 | 00 00 00 00 03 00 00 00 0f 00 00 00 00 00 00 00 | ....03...0f.......
0x1650bfd0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650bfe0 | 00 00 00 00 0f 00 00 00 00 00 00 00 70 d4 5f 03 | ....0f.......pd4_03
0x1650bff0 | 00 00 00 00 00 00 00 00 00 00 00 00 12 00 00 00 | ............12...
0x1650c000 | 1f 00 00 00 00 00 00 00 46 41 54 00 4c 45 00 00 | 1f.......FAT.LE..
0x1650c010 | 00 00 00 00 00 00 00 00 03 00 00 00 0f 00 00 00 | ........03...0f...
0x1650c020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650c030 | 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 | ........0f.......
0x1650c040 | 14 00 00 00 1e 00 00 00 01 00 00 00 64 00 00 00 | 14...1e...01...d...
0x1650c050 | 03 00 00 00 05 00 00 00 00 00 00 00 ff ff ff ff | 03...05.......ffffffff
0x1650c060 | 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | d...............
0x1650c070 | 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 | ........0f.......
0x1650c080 | ff ff ff ff 00 00 0a 28 ac 26 62 28 5e 27 61 ea | ffffffff..0a(ac&b(^'aea
0x1650c090 | 55 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | U10..............
0x1650c0a0 | 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 | ........0f.......
0x1650c0b0 | c7 be 06 74 00 00 00 88 4d 55 53 43 4c 45 00 00 | c7be06t...88MUSCLE..
0x1650c0c0 | 00 00 00 00 00 00 00 00 06 00 00 00 0f 00 00 00 | ........06...0f...
0x1650c0d0 | 00 00 00 00 40 cc d7 0c 03 00 00 00 6d 75 73 63 | ....@ccd70c03...musc
0x1650c0e0 | 6c 65 00 00 00 00 00 00 00 00 00 00 06 00 00 00 | le..........06...
0x1650c0f0 | 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | 0f...............
0x1650c100 | 00 00 00 00 00 00 00 00 00 00 00 00 0f 00 00 00 | ............0f...
0x1650c110 | 00 00 00 00 e8 cf 5f 03 00 00 00 00 00 00 00 00 | ....e8cf_03........
0x1650c120 | 00 00 00 00 12 00 00 00 1f 00 00 00 00 00 00 00 | ....12...1f.......
0x1650c130 | 4d 55 53 43 4c 45 00 00 00 00 00 00 00 00 00 00 | MUSCLE..........
0x1650c140 | 06 00 00 00 0f 00 00 00 00 00 00 00 00 00 00 00 | 06...0f...........
0x1650c150 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650c160 | 0f 00 00 00 00 00 00 00 15 00 00 00 1e 00 00 00 | 0f.......15...1e...
0x1650c170 | 03 00 00 00 64 00 00 00 05 00 00 00 05 00 00 00 | 03...d...05...05...
0x1650c180 | 00 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00 | ....ffffffff........
0x1650c190 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650c1a0 | 0f 00 00 00 00 00 00 00 ff ff ff ff 00 00 0a 28 | 0f.......ffffffff..0a(
0x1650c1b0 | ac 26 0c 29 61 ea 61 ea 55 10 00 00 00 00 00 00 | ac&0c)aeaaeaU10......
0x1650c1c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650c1d0 | 0f 00 00 00 00 00 00 00 ea be 06 74 00 00 00 88 | 0f.......eabe06t...88
0x1650c1e0 | 42 4f 4e 45 00 4c 41 47 45 00 00 00 00 00 00 00 | BONE.LAGE.......
0x1650c1f0 | 04 00 00 00 0f 00 00 00 00 00 00 00 30 c8 d7 0c | 04...0f.......0c8d70c
0x1650c200 | 03 00 00 00 62 6f 6e 65 00 6c 61 67 65 00 00 00 | 03...bone.lage...
0x1650c210 | 00 00 00 00 04 00 00 00 0f 00 00 00 00 00 00 00 | ....04...0f.......
0x1650c220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650c230 | 00 00 00 00 0f 00 00 00 00 00 00 00 98 cf 5f 03 | ....0f.......98cf_03
0x1650c240 | 00 00 00 00 00 00 00 00 00 00 00 00 12 00 00 00 | ............12...
0x1650c250 | 1f 00 00 00 00 00 00 00 42 4f 4e 45 00 4c 41 47 | 1f.......BONE.LAG
0x1650c260 | 45 00 00 00 00 00 00 00 04 00 00 00 0f 00 00 00 | E.......04...0f...
0x1650c270 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650c280 | 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 | ........0f.......
0x1650c290 | 16 00 00 00 1e 00 00 00 02 00 00 00 e8 03 00 00 | 16...1e...02...e803..
0x1650c2a0 | 03 00 00 00 32 00 00 00 00 00 00 00 ff ff ff ff | 03...2.......ffffffff
0x1650c2b0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x1650c2c0 | 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 | ........0f.......
0x1650c2d0 | ff ff ff ff 00 00 0a 28 ac 26 0c 29 61 ea 61 ea | ffffffff..0a(ac&0c)aeaaea
0x1650c2e0 | e8 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | e803..............
0x1650c2f0 | 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 | ........0f.......
The values here change on adding/removing dwarfs to squads and deleting/creating squads. So I guess vector_squads is somwhere here. I can't test it on my own though, because I have freezes when trying to read dwarfs ( I hope this would be helpfull in some way.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Girlinhat on February 15, 2012, 09:00:10 pm
Did you just tap into the military interface?  If we used this, could we make a Therapist-Like tool for organizing squads?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Punished on February 15, 2012, 09:15:04 pm
Did you just tap into the military interface?  If we used this, could we make a Therapist-Like tool for organizing squads?

This would be the greatest thing ever made.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Saranis on February 15, 2012, 09:16:41 pm
Did you just tap into the military interface?  If we used this, could we make a Therapist-Like tool for organizing squads?

This would be the greatest thing ever made.

Right after Dwarf Fortress and Dwarf Therapist... and chocolate.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 15, 2012, 09:22:00 pm
Did you just tap into the military interface?  If we used this, could we make a Therapist-Like tool for organizing squads?

I'm not sure if you're a genius or a madman. Probably both.
The idea is fantastic, it just seems so... I don't know. It feels too good to be true, if you can follow me?

It would of course be the greatest thing ever, and by the gods, I wouldn't refuse to use it! But for now, let's just get DT working again, shall we? :D
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: kudakeru on February 15, 2012, 09:42:21 pm
Has anyone had any luck getting the OS X version to do anything other than crash immediately at launch?  I've relaunched everything a few dozen times now, with no luck.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: dyllionaire on February 15, 2012, 09:49:47 pm
Pardon my uneducated and imbecilic mind, but is there a hotfix updating Dwarf Therapist to the new version?
If so, would anyone be so kind as to make a step-by-step guide for the less tech-prone residents of the forums?
Please and thank you.

Keep up the great work DE and those hacking away at this! It's great to have people like you around.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Divrann on February 15, 2012, 09:50:24 pm
Has anyone had any luck getting the OS X version to do anything other than crash immediately at launch?  I've relaunched everything a few dozen times now, with no luck.

It happens for me, too. Win 7 x64. It worked when I first created the INI file, But not since a restart of DF. The only change I made was removing [Aquafier] tags. I wouldn't think this would do anything, but I wouldn't really know, either.

Ill just keep trying to restart until someone has a better idea. ::)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: FFLaguna on February 15, 2012, 10:00:35 pm
Has anyone had any luck getting the OS X version to do anything other than crash immediately at launch?  I've relaunched everything a few dozen times now, with no luck.

It happens for me, too. Win 7 x64. It worked when I first created the INI file, But not since a restart of DF. The only change I made was removing [Aquafier] tags. I wouldn't think this would do anything, but I wouldn't really know, either.

Ill just keep trying to restart until someone has a better idea. ::)

I right-clicked on Dwarf Fortress (not Therapist) and clicked "Run as Administrator", and Dwarf Therapist was able to read the dorf memory values right away without hanging. Although it may have just been restarting that fixed it for me.

In any case, I was getting the hanging errors, but now I'm not. DT is working great. :D
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on February 15, 2012, 10:09:00 pm
Found the rest of the offsets, release is pending.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Divrann on February 15, 2012, 10:09:29 pm


I right-clicked on Dwarf Fortress (not Therapist) and clicked "Run as Administrator", and Dwarf Therapist was able to read the dorf memory values right away without hanging. Although it may have just been restarting that fixed it for me.

In any case, I was getting the hanging errors, but now I'm not. DT is working great. :D
[/quote]

Well It didnt freeze after running DF as Admin, but instead I get an error from DT saying:
"I'm sorry. I'm having trouble connecting to DF. I can't seem to locate the PEB address of the process.

Please re-launch DF and try again."

Definatly not an error I've seen before, did try restarting to no effect.
Interestingly enough, when I run DT as an Admin also, it just goes back to freezing.

*Shrug*
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kregoth on February 15, 2012, 10:20:29 pm
Found the rest of the offsets, release is pending.

Awesome you are truly a Dwarf Engineer, one of which menaces with spikes of awesomeness. On the Dwarf Engineer is a picture of a Dwarf Therapist, The feeble humans surround the dwarf praising him :)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 15, 2012, 10:33:46 pm
Found the rest of the offsets, release is pending.

Oh boy, oh boy, oh boy! Can't tell you how I felt when I read that. It was like an adrenaline rush. Like christmas when I was 6. "Soon I can open the gifts!" :D

Thanks so much! You just made my day :)

Erm, actually, pending means release is going to happen in the next couple of hours, right?

Praise our Dwarven Engineer! I shall build a pyramid out of glass for you! You like glass, right? Oh, i see. Well, maybe obsidian then? No? No... You want it out of adamantine... Sure... Well... A small pyramid then?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Xelanthol on February 15, 2012, 10:45:34 pm
I NEEEEEDDD THISSSS.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 15, 2012, 10:46:24 pm
I NEEEEEDDD THISSSS.

Bad boy. Please rephrase that. Here is an example:

Quote from: Rephrasing
I NEEEEEDDD THISSSS. Please.

See, that looks much better, doesn't it?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Beach Bum on February 15, 2012, 10:56:53 pm
Found the rest of the offsets, release is pending.

I'll be able to play Fort mode again! Thank you for getting it working so quickly.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kreastr on February 15, 2012, 11:09:46 pm
Did you just tap into the military interface?  If we used this, could we make a Therapist-Like tool for organizing squads?
I hesitated for a while and then overchecked everything. Yes. This is it. The memory block where dwarf-squad assingments are stored. I even managed to modify one of my squads to consist of 3 copies of one dwarf. However, are you sure that it is a new information? I was pretty sure that it is just a block(vector_squad) already described and used in DT.
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Xelanthol on February 15, 2012, 11:18:58 pm
IS DIS HAPPENING TONIGHT?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Molay on February 15, 2012, 11:20:39 pm
IS DIS HAPPENING TONIGHT?

Again, a change in tone would be well appreciated. Let's try and rephrase this one, too...

Quote from: Rephrasing
IS DIS HAPPENING TONIGHT, Sir?

Ah, much better now. Much better.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: narhiril on February 15, 2012, 11:23:50 pm
You, sir, are a gentleman and a scholar.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: mnjiman on February 15, 2012, 11:25:16 pm
Thank you DwarfEngineer.

You hard work and dedication to Dwarf Therapist makes thousands of players jump for joy.

Keep up the hard work you sexy sexy dwarf you.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Kregoth on February 15, 2012, 11:25:41 pm
IS DIS HAPPENING TONIGHT?
Settle the hell down he just posted it like 30 minutes ago, give him a while to test his work before asking stupid questions in caps.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DwarfEngineer on February 15, 2012, 11:27:11 pm
Dwarf Therapist v0.6.11 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.11.zip) Released.

Adds support for DF 2012.

Layouts should download automatically for earlier versions, but the new version does have a few minor fixes for DF2012.

As mentioned, I've created a Tip Jar (http://dwarftherapist.com/tip.html) with the intent of getting a mac mini to start merging / supporting OSX. I'll look into adding linux support once again this weekend.
Please report any issues you find!

Thanks for your support!

-DE
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Silophant on February 15, 2012, 11:28:14 pm
Wow. This is amazing, DE. Thanks so much. And do find a way to set up a donations page.  As I posted, there it was. Cool.
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Girlinhat on February 15, 2012, 11:32:06 pm
Did you just tap into the military interface?  If we used this, could we make a Therapist-Like tool for organizing squads?
I hesitated for a while and then overchecked everything. Yes. This is it. The memory block where dwarf-squad assingments are stored. I even managed to modify one of my squads to consist of 3 copies of one dwarf. However, are you sure that it is a new information? I was pretty sure that it is just a block(vector_squad) already described and used in DT.
Spoiler (click to show/hide)
It may be known, but it's not been exploited yet.  I have yet to hear of any tool or program that utilized the memory blocks for squads.  Even if it's not new info, it's unused info, and a big chunk of info that could be dearly used.  So, aside from the usual "keep everything running" goals, I feel a squad interface added to DT would be ideal.  You assign a few squad captains, and then use the spreadsheet-like layout to drag-drop dwarves onto different squad entries.  The table would show their military skills - including Teacher and Student.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: drivec on February 15, 2012, 11:35:27 pm
thanks a ton this couldnt been better timed i jumped from 17 to 40+ dwarfs and didnt know where to start but now this should be much more managable
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Xelanthol on February 15, 2012, 11:37:31 pm
Reading back, sorry if my excited demeanor offended some of you. I have nothing but the utmost respect for what DwarfEngineer does, and my excited babbling is merely a heart-felt expression of my appreciation. The continued support of this little program is what keeps DF playable for me, and for that I thank you DwarfEngineer and everyone else who helps for the service they do to this community.

I apologize for my spazdom. (However, W00TS!)
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: highwisdom on February 15, 2012, 11:39:27 pm
Just thought I'd mention that DT is a great way to hunt vampires. custom professions don't show up for them in DF, and the 'fake names' they use in DF aren't displayed in DT. it shows their real name.

awesome work on getting this released so quickly everyone. much kudos!
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: DwarfEngineer on February 15, 2012, 11:39:52 pm
Did you just tap into the military interface?  If we used this, could we make a Therapist-Like tool for organizing squads?
I hesitated for a while and then overchecked everything. Yes. This is it. The memory block where dwarf-squad assingments are stored. I even managed to modify one of my squads to consist of 3 copies of one dwarf. However, are you sure that it is a new information? I was pretty sure that it is just a block(vector_squad) already described and used in DT.
Spoiler (click to show/hide)
It may be known, but it's not been exploited yet.  I have yet to hear of any tool or program that utilized the memory blocks for squads.  Even if it's not new info, it's unused info, and a big chunk of info that could be dearly used.  So, aside from the usual "keep everything running" goals, I feel a squad interface added to DT would be ideal.  You assign a few squad captains, and then use the spreadsheet-like layout to drag-drop dwarves onto different squad entries.  The table would show their military skills - including Teacher and Student.
Dwarf Therapist actually uses this for the Group By: Squad option. (The offset is squad_ref_id)
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Fortron on February 15, 2012, 11:43:08 pm
I just wanted to say
Thanks alot DwarfEngineer.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Girlinhat on February 15, 2012, 11:44:05 pm
Well then, all we need is a way to move dwarves from one squad to another in Therapist and we'll be set!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DwarfEngineer on February 15, 2012, 11:45:30 pm
Almost forgot to mention -
Big thanks to dyn and stevedore, they definitely saved me a good amount of time with this release.

I'm sure that like DF there will be a bug fix pending soon.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Slackratchet on February 15, 2012, 11:45:57 pm
Holy crap that was fast. Thank you for your efforts!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Kento on February 15, 2012, 11:47:06 pm
This is fantastic, thank you!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Buttery_Mess on February 15, 2012, 11:52:22 pm
Wow, well done DE. You've saved us all.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: OldPrussia on February 15, 2012, 11:53:43 pm
Thank you, you have done a great service to the Dwarfkind
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: HammerDave on February 15, 2012, 11:55:36 pm
I was having the hang reading dwarves on the old version with downloaded ini.
The new version doesn't hang, now to see how well it works. 
I suspect the acid test will be having dwarven vampires show up, or other new features.  :D
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Berserkenstein on February 15, 2012, 11:56:33 pm
Aw, guess that means there's no longer an excuse for me getting slaughtered in adventurer mode anymore. :(
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: SalmonGod on February 16, 2012, 12:03:44 am
Between this, Legends Viewer, and Forlorn Realms, I'm all set to dive into the new version tonight  :D :D :D
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Molay on February 16, 2012, 12:10:06 am
Thanks so much DE! I happily tip you for that :D

As to the vampire thingy... Like someone mentioned, DT reveals pretty easily who is a vampire. Is there a way to "hide" this bonus information (or actually replace the lack of information for vampires with fake information?). I know, I know. You worked hard and I'm all happy DT is out! So this is just a thought for the distant future :)

Thanks again!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: HammerDave on February 16, 2012, 12:12:34 am
The migration wave info isn't right, they're all over the place with my originals showing up as the last wave to arrive.  Nothing major, though I do like to assign jobs to a new wave as a group.  Moving right along...

Speculation:  Since migrants are historical figures now, they're getting tagged by when they appeared during worldgen instead of when they arrived.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Plasson on February 16, 2012, 12:13:46 am
Oh thank you guys.




Now.. lets see what kind of mess my 126 dwarfs are living in.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Plasson on February 16, 2012, 12:14:57 am
The migration wave info isn't right, they're all over the place with my originals showing up as the last wave to arrive.  Nothing major, though I do like to assign jobs to a new wave as a group.  Moving right along...

Speculation:  Since migrants are historical figures now, they're getting tagged by when they appeared during worldgen instead of when they arrived.

well, it wasn't all perfect in the previous version either. 
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: daishi5 on February 16, 2012, 12:16:08 am
One quick bug report, children are under "pressers" and Bone doctors and Diagnosers are under spearman and master spearman.   I am sure the rest are probably off as well, but my fort was such a busy mess that I couldn't identify any of the other mistakes easily.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Plasson on February 16, 2012, 12:20:18 am
One quick bug report, children are under "pressers" and Bone doctors and Diagnosers are under spearman and master spearman.   I am sure the rest are probably off as well, but my fort was such a busy mess that I couldn't identify any of the other mistakes easily.

I think all of the are out of whack.   one axedorf is a bowman,  and my Legendary fighter/High master swordsdorf is identified as Blowgunman
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: highwisdom on February 16, 2012, 12:26:01 am
Bug: DT allows children to be given jobs. I've got a 3 year old brewing for me right now. ;)

This could also be a tag-team bug with DF allowing it to happen.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Girlinhat on February 16, 2012, 12:27:11 am
There's an option for that.  It's under "Options" under "I'm a dirty cheater" I believe.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DDR on February 16, 2012, 12:34:34 am
Yes, that option is unchecked at the moment.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: drivec on February 16, 2012, 12:47:09 am
yup dt says babies are beekeepers and children are pressers. many others are off as well but those are the most important
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: highwisdom on February 16, 2012, 12:47:38 am
There's an option for that.  It's under "Options" under "I'm a dirty cheater" I believe.

Option isn't checked, but can still assign labor to kids.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: ClubFoot on February 16, 2012, 12:52:28 am
Minor progress on the OSX version...and a cry for help-

so far, I've got:
Code: [Select]
checksum=0xa74ac151
version_name=v0.34.01
complete=false

[addresses]
translation_vector=0x0154c918
language_vector=0x0154c900




now - the problem...
I cannot located the dwarf race offset.  When, in the memory scan page in DT, I kick that off DT just dies.  Immediately.  The log looks like:


2012-Feb-15 21:43:47.173 INFO   core   Detected Dwarf Fortress version "v0.34.01" using MemoryLayout from "/Applications/DwarfTherapist.app/Contents/Resources/etc/memory_layouts/osx/v0.34.01.ini" [../taylorfisher-1/src/dfinstance.cpp:665] (get_memory_layout)
2012-Feb-15 21:43:47.176 DEBUG   core   Starting Search in Thread 0x1065c9000 [bin/debug/../../../taylorfisher-1/inc/dwarfraceindexsearchjob.h:62] (go)

I've tried killing and restarting DF and DT 2-3 times.  no dice.

what does that search actually look for? 

Also - I have also edited the game_data.ini as follows (just because someone said to, not because I have done anything to verify these values. )
total_words_per_table = 2173
expected_dwarf_race = 465

Is there some way I can validate those are correct settings?



Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Veylon on February 16, 2012, 12:53:37 am
It's already out? Only two days after the release? I'm impressed; it usually seems to take a week or so. I'll get to downloading and donating right away, then!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: scaliper on February 16, 2012, 01:00:39 am
Just thought I'd drop in and say that you're the dorfiest dorf out there. You get the dorfiest drink! I raise my glass to you!
(http://www.deconlabs.com/graphics/products/EthanolGroup%20for%20web%209-16-08.JPG)
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DopeGhoti on February 16, 2012, 01:08:44 am
This DF release has finally gotten me off of my keister with regards to donations.  I've just taken a brief trip to your tip jar, as well some other developers (including, of course, The Toady One), and I wanted to also add my thanks to those of others.  Bravo, and I hope you get your Mac soon.  (:
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Stoutpants on February 16, 2012, 01:23:08 am
THANKYOUTHANKYOUTHANKYOU!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Springare on February 16, 2012, 01:47:35 am
Nice, new version of therapist.

Ok, after five minutes using it, something catched my attention: Working children, mining, suturing a patient and wallsmoothing. But if i check the labor in DF it says the standard "Children do what the want blabla". So i think, therapist forces children into being usefull.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Girlinhat on February 16, 2012, 02:03:42 am
I've also got an unlisted dwarf.  My dwarven population is 15, and my Therapist population is 14.  This may be a vampire, however, as she's listed with 2 "former member of" affiliations.  Regardless, she's now a weaponsmith and we'll see who gets eaten (so far no one, and she's been seen drinking water).
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Couchmonster on February 16, 2012, 02:08:50 am
DwarfEngineer... I bet you have a beard 2 meters long!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: ClubFoot on February 16, 2012, 02:14:06 am
Minor progress on the OSX version...and a cry for help-

2012-Feb-15 21:43:47.173 INFO   core   Detected Dwarf Fortress version "v0.34.01" using MemoryLayout from "/Applications/DwarfTherapist.app/Contents/Resources/etc/memory_layouts/osx/v0.34.01.ini" [../taylorfisher-1/src/dfinstance.cpp:665] (get_memory_layout)
2012-Feb-15 21:43:47.176 DEBUG   core   Starting Search in Thread 0x1065c9000 [bin/debug/../../../taylorfisher-1/inc/dwarfraceindexsearchjob.h:62] (go)


Code: [Select]
still cannot get past that.  For 'creature vector' it's providing multiple possibilities...
2012-Feb-15 23:06:20.873 DEBUG core ADDRESS FOR: "creature_vector" "0x0169c8e0" UNCORRECTED: "0x0169c8e0" [../taylorfisher-1/src/scanner.cpp:69] (report_address)
2012-Feb-15 23:06:20.874 DEBUG core ADDRESS FOR: "creature_vector" "0xb02879f0" UNCORRECTED: "0xb02879f0" [../taylorfisher-1/src/scanner.cpp:69] (report_address)
2012-Feb-15 23:06:23.808 DEBUG core ADDRESS FOR: "creature_vector" "0x0150b5d8" UNCORRECTED: "0x0150b5d8" [../taylorfisher-1/src/scanner.cpp:69] (report_address)
2012-Feb-15 23:06:26.931 DEBUG core ADDRESS FOR: "creature_vector" "0x0150b5cc" UNCORRECTED: "0x0150b5cc" [../taylorfisher-1/src/scanner.cpp:69] (report_address)
2012-Feb-15 23:06:39.226 DEBUG core ADDRESS FOR: "creature_vector" "0xb0288348" UNCORRECTED: "0xb0288348" [../taylorfisher-1/src/scanner.cpp:69] (report_address)

I'm open to suggestions.  Without getting the dwarf address correct, is it possible to verify the other ones?


Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: orius on February 16, 2012, 03:18:04 am
Wow that was pretty fast.  I'm still going to wait until the LNP updates though, because it's just much more convenient to run the game from that. (Plus I want to use some other utilities).
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DeadlyDodo on February 16, 2012, 03:45:03 am

As mentioned, I've created a Tip Jar (http://dwarftherapist.com/tip.html) with the intent of getting a mac mini to start merging / supporting OSX. I'll look into adding linux support once again this weekend.
Please report any issues you find!

Thanks for your support!

-DE

As promised I've donated a little of my spare change, you have my appreciation kind sir.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Starhero on February 16, 2012, 04:15:16 am
*blink*  :o  :o
|Crazyness|
I LOVE YOU DE!! I WANT YOUR BABIES!!
|/Crazyness|

*clears throat*
*Downloads 34.01*
*Downloads DT*

I will be donating the second I find cash for both you and Toady.

All we need now is those crazy bugs ppl are encountering...but non the less we are ALLLLLLLLLL Grateful of the work anyone and everyone that has helped with this project.

Kudos community! Best one I have ever seen. If I hit the lottery, drinks are on me!

*brews plumphelmet wine*
Who wants first dibbs?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: Intrinsic on February 16, 2012, 04:21:54 am
Did you just tap into the military interface?  If we used this, could we make a Therapist-Like tool for organizing squads?

This would be the greatest thing ever made.

The current military interface is the most god-awful steaming pile of whale shite, anything that can be done to make it better will be a massive bonus.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Girlinhat on February 16, 2012, 04:31:05 am
Well aren't you a cup and a half of sunshine?

It's not that bad.  Once you understand how it works, it works solidly.  It's simply very detailed.  It's hard to get that much information into a screen without producing some clutter and some odd menu types.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Sormus on February 16, 2012, 05:10:30 am
Installed DT 6.11 and ran in to a bug, all the lastnames are shown as "UnknownUnknown"
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Kipi on February 16, 2012, 05:24:51 am
Installed DT 6.11 and ran in to a bug, all the lastnames are shown as "UnknownUnknown"

Relaunch Therapist while the fortress is open. Should solve that.

Also, make sure that the option to show generic (translated last names) names is disabled. Should work like a charm.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Couchmonster on February 16, 2012, 06:37:22 am
Migrations Waves are entirely wrong to the point that every dwarf (or max 2) is in 1 wave ;)
I should have 3 waves and have 11

Despite that DT works like a charm.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: peregarrett on February 16, 2012, 06:38:37 am
HOORAY!!! Fortress mode is enjoyable again!!!

Five more barrels of dwarven rum for the party, from my personal stocks!

If we had dfhack too....
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: kionmaru on February 16, 2012, 06:55:49 am
Here's what I've got so far for Linux.

[info]
checksum=0xa42a074a
version_name=v0.34.01
complete=false

[addresses]
translation_vector=0x095c7bf8
language_vector=0x095c7be0
creature_vector=0x095868ac
dwarf_race_index=0x0956e240
squad_vector=0x0

[offsets]
word_table=0x0000001c


I'd dink around on this more tonight, but I'm already exhausted. Someone else want to pick up the DT linux squad vector and offsets?
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DwarfEngineer on February 16, 2012, 08:55:19 am
0.6.11 is a buggy release (as I kind of expected.) So tonight I'll start on a stable release.

So far I'm tracking the following issues:

If someone has or could get a save together illustrating these 3 issues and upload it to DFFD (http://dffd.wimbli.com/), that would save me some time when I start working on them tonight.

Thanks all for the support & tips so far, we're making good progress towards a mac mini for official OSX support & dedicated builds.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: meeneque on February 16, 2012, 08:59:59 am
Have just two of them: kids and waves, but already uploaded:

http://dffd.wimbli.com/download.php?id=5531&f=save1.zip

Also all kids are seen as pressers.

Actually i like assigning labors for kids, as my immigration waves mostly consist of children. :D
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DeadlyDodo on February 16, 2012, 09:07:49 am
I wondered how it was going to hide vampires.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Grax on February 16, 2012, 09:10:33 am
I wondered how it was going to hide vampires.
This need to be an option like child labor.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DwarfEngineer on February 16, 2012, 09:14:19 am
Here's what I've got so far for Linux.

[info]
checksum=0xa42a074a
version_name=v0.34.01
complete=false

[addresses]
translation_vector=0x095c7bf8
language_vector=0x095c7be0
creature_vector=0x095868ac
dwarf_race_index=0x0956e240
squad_vector=0x0

[offsets]
word_table=0x0000001c


I'd dink around on this more tonight, but I'm already exhausted. Someone else want to pick up the DT linux squad vector and offsets?

If you take a look at this thread (http://www.bay12forums.com/smf/index.php?topic=100826.0), it covers how to find the squad vector:
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Azahiel on February 16, 2012, 09:27:38 am
Have just two of them: kids and waves, but already uploaded:

http://dffd.wimbli.com/download.php?id=5531&f=save1.zip

Also all kids are seen as pressers.

Actually i like assigning labors for kids, as my immigration waves mostly consist of children. :D
For me all kids are beekeepers ;)

Great start nonetheless, I really missed DT in the new version.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Kami on February 16, 2012, 09:41:23 am
Migrations Waves are entirely wrong to the point that every dwarf (or max 2) is in 1 wave ;)
I should have 3 waves and have 11

Despite that DT works like a charm.
I think this could be a problem.
There is no variable that holds the migration wave of a dwarf. DT calculates it by comparing ids and gaps in ids of the dwarfs in the creature vector. Since migrants in the new version are not generated when the imigration happenes but taken from the world, they have an existing lower id not according to the time they arrive. This would explain why the 7 starting dwarfs are in the same wave with the higest wave number (highes id = latest wave) and other dwarfs spread over many earlyer migrationn waves in the list.
Quote from: dwarfmodel.cpp
Let's try to guess the wave a dwarf arrived in based on ID.
    The game appears to assign ids to creates in a serial manner.
    Since at least 1 season seems to pass in between waves there is a
    high likelihood that dwarves arriving in a new wave will be folling
    several other creatures such as groundhogs and the like, thus
    producing a gap in IDs of more than 1
Quote from: Changelog
immigrants to your fortress will now be historical figures whenever possible, which means more family relationships and history for each one

@DwarfEngineer: Maybe it can be changed to work with the information on the arrival of the dwarf at the fortress you can find at the thoughts and preferences screen. (If this can be found anywhere...)
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Lord Snow on February 16, 2012, 09:52:51 am
O dang, that will mess up my dwarf sorting scheme.
Back to nicknaming for keeping the starting seven and first migrants identifiable.


BUT

actually i came here to say 'thank you' for supporting the new version so swiftly!
Great work! :)
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Thar on February 16, 2012, 10:06:50 am
 I did not expect this pleasant surprise today. Thank you very much dude. ;D

This is a good job!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Don57 on February 16, 2012, 10:43:33 am
I think this could be a problem.
There is no variable that holds the migration wave of a dwarf. DT calculates it by comparing ids and gaps in ids of the dwarfs in the creature vector. Since migrants in the new version are not generated when the imigration happenes but taken from the world, they have an existing lower id not according to the time they arrive. This would explain why the 7 starting dwarfs are in the same wave with the higest wave number (highes id = latest wave) and other dwarfs spread over many earlyer migrationn waves in the list.

I suppose DT could make up IDs for each dwarf it reads from the game, generating a new "wave" every time the program is refreshed and one or more new dwarves are discovered.  The player would then be responsible for manually refreshing DT after every new wave of migrants, but at least then the migration waves would be manageable.

An additional downside to this, though, is the fact that DT would then have to keep a local file matching up dwarves to their DT generated ID.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Yaotzin on February 16, 2012, 10:52:34 am
Is there no variable for how long a dwarf has lived in a location (ie your fort)?
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: ActnMoviHeroBoy on February 16, 2012, 11:02:18 am
My PayPal is a little wonky, so I'm trying to get that fixed. It really means a lot to the mac users that the supporter of one of the staple utilities would be willing to help out if we provided the hardware. Thanks DE for all your efforts.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: scaliper on February 16, 2012, 11:21:20 am
Is there no variable for how long a dwarf has lived in a location (ie your fort)?
As I am not code-literate, I may be wrong, but I'd be incredibly surprized if there was not. I know for a fact that the game tracks the season and year of the dwarf arriving at your fort in legends mode. If you could find where that value is stored, you could probably sort immigration waves based on that. Depending on the precise coding, it may also be possible that any children born in the same season would show up as migrants, but I don't know about that one, and that's not much of a trade-off in my opinion.

Of course, that would likely require finding the value for the fort itself as well, as the game simply says "in <season> of <year>, <name> arrived in <fortress>" or something like that. If the game simply tracks intersection of values, you'd need a way of finding the fortress value. I have no idea whether that's possible, although to be fair I honestly have no idea on the validity of anything I've said above...
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: schismatise on February 16, 2012, 11:34:17 am
Is there no variable for how long a dwarf has lived in a location (ie your fort)?
As I am not code-literate, I may be wrong, but I'd be incredibly surprized if there was not. I know for a fact that the game tracks the season and year of the dwarf arriving at your fort in legends mode. If you could find where that value is stored, you could probably sort immigration waves based on that.

He is a citizen of The Violent Sacks.  He is a member of The Confident Bust.  (yup, thats us) He is a former member of The Razors of Distance. (... interesting) He is a former prisoner of The Copper Hate.  (wut?) He arrived at Ralokang on teh 24th of Hematite in the year 126.  (ooh, I like this addition)

^ Stole that quote from another thread. Seems like the information required is right there on the dwarf's info screen.

(DT can read a dwarf's info screen, right?)
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Rumrusher on February 16, 2012, 11:36:18 am
So now we can sort out the vamps from the normals and make those who want a fortress of vampire nobles all a lot closer.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Kipi on February 16, 2012, 11:39:39 am
Is there no variable for how long a dwarf has lived in a location (ie your fort)?
As I am not code-literate, I may be wrong, but I'd be incredibly surprized if there was not. I know for a fact that the game tracks the season and year of the dwarf arriving at your fort in legends mode. If you could find where that value is stored, you could probably sort immigration waves based on that. Depending on the precise coding, it may also be possible that any children born in the same season would show up as migrants, but I don't know about that one, and that's not much of a trade-off in my opinion.

Of course, that would likely require finding the value for the fort itself as well, as the game simply says "in <season> of <year>, <name> arrived in <fortress>" or something like that. If the game simply tracks intersection of values, you'd need a way of finding the fortress value. I have no idea whether that's possible, although to be fair I honestly have no idea on the validity of anything I've said above...

That is actually good idea!

Lets say that the game keep track of the movement of migrants and thus knows when migrant arrived to fortress. Now, as far as I know, there can be only one migrant wave per season, right? So even if the game tracks the movement by season it should still be accurate enough.

Now, the children. Not 100% sure but I think the game tracks the birth separately to the movement. If it does then DT could just compare the birth place to current place and if it is same then the dwarf in question is listed separately as it has born in the fortress. If it doesn't then it will put the dwarf in same migrant wave with all the rest of the dwarves appearing in the fortress that season.

Expanding the idea, perhaps DT could group children born in the fortress by the seasons? The above method could support it, just put the newborn to a list of other newborns of that season. This would reduce the number of waves currently shown because more or lest each child is listed in own wave, unless there are doubles or triplets.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Marble_Nuts on February 16, 2012, 11:43:52 am
OMG you guy have no idea how happy I am to know that therapist is going on mac!! I... I mean... There are no other way to say it :D

Is there a bit of funding related to this sudden change on plan? On making therapist available for mac?
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: schismatise on February 16, 2012, 11:48:56 am
OMG you guy have no idea how happy I am to know that therapist is going on mac!! I... I mean... There are no other way to say it :D

Is there a bit of funding related to this sudden change on plan? On making therapist available for mac?

As mentioned, I've created a Tip Jar (http://dwarftherapist.com/tip.html) with the intent of getting a mac mini to start merging / supporting OSX. I'll look into adding linux support once again this weekend.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Nice Save on February 16, 2012, 11:55:17 am
The migration waves were always a bit wonky with historical figures. When your monarch arrived DT showed him/her as the only member of wave 1, bumping everyone else up a number. It's just more noticeable now that many historical figures are arriving.

If you're having trouble telling who's new, activate alchemy or fish dissection or something that you don't have happening in your fortress on every dwarf, and the migrants are the ones without that activated.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Talvieno on February 16, 2012, 11:57:26 am
Actually, there is a variable now that shows when the migrants arrive. It's in the stats screen - v + z + enter.

"He is a citizen of The Infinite Silvers. He is a member of The Towers of Ice. He is a former member of The Confusing Pillar. He is a former member of The Work of Bowing. He arrived at Edimetur on the 3rd of Felsite in the year 102."

Note the last sentence. Perhaps this could be utilized?
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DwarfEngineer on February 16, 2012, 11:58:41 am
Actually, there is a variable now that shows when the migrants arrive. It's in the stats screen - v + z + enter.

"He is a citizen of The Infinite Silvers. He is a member of The Towers of Ice. He is a former member of The Confusing Pillar. He is a former member of The Work of Bowing. He arrived at Edimetur on the 3rd of Felsite in the year 102."

Note the last sentence. Perhaps this could be utilized?
Yeah, I'll be looking into that tonight. Could be extremely useful, and might result in migration waves working better than ever :)
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Darmarius on February 16, 2012, 12:09:02 pm
Found the squad offset on linux (well, DT found it for me :P): 0x095c47b4

So, merging that with what kionmaru found, we have the following ini for now:

[info]
checksum=0xa42a074a
version_name=v0.34.01
complete=false

[addresses]
translation_vector=0x095c7bf8
language_vector=0x095c7be0
creature_vector=0x095868ac
dwarf_race_index=0x0956e240
squad_vector=0x095c47b4

[offsets]
word_table=0x001c


It still doesn't read profession and experience properly, so the souls offset are probably wrong. I'll try looking into it.

Edit: the rest of the ini file I'm working with right now is based on the previous version.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Starhero on February 16, 2012, 12:15:35 pm
This thread continues to amaze me in the collaboration that is is occurring.

You are all my friends now, save the few douches. This community rocks!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Bifidus on February 16, 2012, 01:43:07 pm
Oh my... that thing work under Linux ? Natively ?!

/dwarfgasm
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: floundericiousWA on February 16, 2012, 02:02:14 pm
The tagline for this mod is right: "this makes DF playable"

Therapist is indispensible!  All-star win-ness!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: dyn on February 16, 2012, 02:13:01 pm
I got the okay from Dwarf Engineer to post this quick fix before it is verified by him for official release. This should fix the  IDs to correctly display professions, in the process fixing the dwarf child labor issue and the military Recruits without a weapon specialty not showing up at all. Just open up the file game_data.ini in the etc folder and replace the entire [professions] heading with the code below.

Code: [Select]
[professions]
# all professions assume can_assign_labors is true, and is_military is false
size=106
1/name = Miner
1/id = 0

2/name = Woodworker
2/id = 1

3/name = Carpenter
3/id = 2

4/name = Bowyer
4/id = 3

5/name = Woodcutter
5/id = 4

6/name = Stoneworker
6/id = 5

7/name = Engraver
7/id = 6

8/name = Mason
8/id = 7

9/name = Ranger
9/id = 8

10/name = Animal Caretaker
10/id = 9

11/name = Animal Trainer
11/id = 10

12/name = Hunter
12/id = 11

13/name = Trapper
13/id = 12

14/name = Animal Dissector
14/id = 13

15/name = Metalsmith
15/id = 14

16/name = Furnace Operator
16/id = 15

17/name = Weaponsmith
17/id = 16

18/name = Armorer
18/id = 17

19/name = Blacksmith
19/id = 18

20/name = Metalcrafter
20/id = 19

21/name = Jeweler
21/id = 20

22/name = Gem Cutter
22/id = 21

23/name = Gem Setter
23/id = 22

24/name = Craftsman
24/id = 23

25/name = Woodcrafter
25/id = 24

26/name = Stonecrafter
26/id = 25

27/name = Leatherworker
27/id = 26

28/name = Bone Carver
28/id = 27

29/name = Weaver
29/id = 28

30/name = Clothier
30/id = 29

31/name = Glassmaker
31/id = 30

32/name = Potter
32/id = 31

33/name = Glazer
33/id = 32

34/name = Wax Worker
34/id = 33

35/name = Strand Extractor
35/id = 34

36/name = Fishery Worker
36/id = 35

37/name = Fisherman
37/id = 36

38/name = Fish Dissector
38/id = 37

39/name = Fish Cleaner
39/id = 38

40/name = Farmer
40/id = 39

41/name = Cheesemaker
41/id = 40

42/name = Milker
42/id = 41

43/name = Cooking
43/id = 42

44/name = Thresher
44/id = 43

45/name = Miller
45/id = 44

46/name = Butcher
46/id = 45

47/name = Tanner
47/id = 46

48/name = Dyer
48/id = 47

49/name = Planter
49/id = 48

50/name = Herbalist
50/id = 49

51/name = Brewer
51/id = 50

52/name = Soap Maker
52/id = 51

53/name = Potash Maker
53/id = 52

54/name = Lye Maker
54/id = 53

55/name = Wood Burner
55/id = 54

56/name = Shearer
56/id = 55

57/name = Spinner
57/id = 56

58/name = Presser
58/id = 57

59/name = Beekeeper
59/id = 58

60/name = Engineer
60/id = 59

61/name = Mechanic
61/id = 60

62/name = Siege Engineer
62/id = 61

63/name = Siege Operator
63/id = 62

64/name = Pump Operator
64/id = 63

65/name = Clerk
65/id = 64

66/name = Administrator
66/id = 65

67/name = Trader
67/id = 66

68/name = Architect
68/id = 67

69/name = Alchemist
69/id = 68

70/name = Doctor
70/id = 69

71/name = Diagnoser
71/id = 70

72/name = Bone Setter
72/id = 71

73/name = Suturer
73/id = 72

74/name = Surgeon
74/id = 73

75/name = Merchant
75/id = 74

76/name = Hammerman
76/id = 75
76/is_military = true
76/can_assign_labors = true

77/name = Master Hammerman
77/id = 76
77/is_military = true
77/can_assign_labors = false

78/name = Spearman
78/id = 77
78/is_military = true
78/can_assign_labors = true

79/name = Master Spearman
79/id = 78
79/is_military = true
79/can_assign_labors = false

80/name = Crossbowman
80/id = 79
80/is_military = true
80/can_assign_labors = true

81/name = Master Crossbowman
81/id = 80
81/is_military = true
81/can_assign_labors = false

82/name = Wrestler
82/id = 81
82/is_military = true
82/can_assign_labors = true

83/name = Master Wrestler
83/id = 82
83/is_military = true
83/can_assign_labors = false

84/name = Axeman
84/id = 83
84/is_military = true
84/can_assign_labors = true

85/name = Master Axeman
85/id = 84
85/is_military = true
85/can_assign_labors = false

86/name = Swordsman
86/id = 85
86/is_military = true
86/can_assign_labors = true

87/name = Master Swordsman
87/id = 86
87/is_military = true
87/can_assign_labors = false

88/name = Maceman
88/id = 87
88/is_military = true
88/can_assign_labors = true

89/name = Master Maceman
89/id = 88
89/is_military = true
89/can_assign_labors = false

90/name = Pikeman
90/id = 89
90/is_military = true
90/can_assign_labors = true

91/name = Master Pikeman
91/id = 90
91/is_military = true
91/can_assign_labors = false

92/name = Bowman
92/id = 91
92/is_military = true
92/can_assign_labors = true

93/name = Master Bowman
93/id = 92
93/is_military = true
93/can_assign_labors = false

94/name = Blowgunman
94/id = 93
94/is_military = true
94/can_assign_labors = true

95/name = Master Blowgunman
95/id = 94
95/is_military = true
95/can_assign_labors = false

96/name = Lasher
96/id = 95
96/is_military = true
96/can_assign_labors = true

97/name = Master Lasher
97/id = 96
97/is_military = true
97/can_assign_labors = false

98/name = Recruit
98/id = 97
98/is_military = true
98/can_assign_labors = true

99/name = Trained Hunter
99/id = 98
99/is_military = false
99/can_assign_labors = true

100/name = Trained War
100/id = 99
100/is_military = false
100/can_assign_labors = true

101/name = Master Thief
101/id = 100
101/is_military = false
101/can_assign_labors = true

102/name = Thief
102/id = 101

103/name = Peasant
103/id = 102

104/name = Child
104/id = 103
104/is_military = false
104/can_assign_labors = false

105/name = Baby
105/id = 104
105/is_military = false
105/can_assign_labors = false

106/name = Drunk
106/id = 105
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: vityav on February 16, 2012, 02:20:49 pm
It still doesn't read profession and experience properly, so the souls offset are probably wrong. I'll try looking into it.
You have my complete and unwavering moral support in your endeavors :P

I really should learn how to find memory addresses for the linux releases...
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: zwei on February 16, 2012, 03:39:55 pm
Just small idea:

It would be nice if therapist also displayed favorite materials and items of dwarf.

It helps with job assigments, but more importantly, it helps when assigning baron as game does not let you check thoughts and preferences.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Yaotzin on February 16, 2012, 03:46:18 pm
If you're going the whole hog, you could basically incorporate dwarven counselor. Show attributes, and what that means the dwarf will be best/worst at.

Also some way for tracking attribute/skill level gain over time would be really awesome.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Darmarius on February 16, 2012, 03:51:07 pm
Ok, I've found the labor offset (still linux): 0x0604
The soul offset SHOULD be at 0x05e8, but I haven't been able to confirm that since the soul details have changed too.

I'm really going in the dark here :| I'm trying to find similarities between a 2010 memory dump and 2012's, but so far the soul details has eluded me. I'll update some more tonight if I find other offsets.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Girlinhat on February 16, 2012, 03:53:21 pm
Mankind has searched for thousands of years for the soul.  Don't expect to stumble upon it in two days.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: kionmaru on February 16, 2012, 04:53:35 pm
@DwarfEngineer - Thank you, I'll go through that thread and a bit and see if I can't find more. :) This is the first time I've messed with this kind of thing in a very, very long time.
If you take a look at this thread (http://www.bay12forums.com/smf/index.php?topic=100826.0), it covers how to find the squad vector:

@Darmarius - That's so awesome, thank you.
Found the squad offset on linux (well, DT found it for me :P): 0x095c47b4


@dyn - Sweeeeet! I'm quoting your message here for completeness.
I got the okay from Dwarf Engineer to post this quick fix before it is verified by him for official release. This should fix the  IDs to correctly display professions, in the process fixing the dwarf child labor issue and the military Recruits without a weapon specialty not showing up at all. Just open up the file game_data.ini in the etc folder and replace the entire [professions] heading with the code below.

Code: [Select]
[professions]
# all professions assume can_assign_labors is true, and is_military is false
size=106
1/name = Miner
1/id = 0

2/name = Woodworker
2/id = 1

3/name = Carpenter
3/id = 2

4/name = Bowyer
4/id = 3

5/name = Woodcutter
5/id = 4

6/name = Stoneworker
6/id = 5

7/name = Engraver
7/id = 6

8/name = Mason
8/id = 7

9/name = Ranger
9/id = 8

10/name = Animal Caretaker
10/id = 9

11/name = Animal Trainer
11/id = 10

12/name = Hunter
12/id = 11

13/name = Trapper
13/id = 12

14/name = Animal Dissector
14/id = 13

15/name = Metalsmith
15/id = 14

16/name = Furnace Operator
16/id = 15

17/name = Weaponsmith
17/id = 16

18/name = Armorer
18/id = 17

19/name = Blacksmith
19/id = 18

20/name = Metalcrafter
20/id = 19

21/name = Jeweler
21/id = 20

22/name = Gem Cutter
22/id = 21

23/name = Gem Setter
23/id = 22

24/name = Craftsman
24/id = 23

25/name = Woodcrafter
25/id = 24

26/name = Stonecrafter
26/id = 25

27/name = Leatherworker
27/id = 26

28/name = Bone Carver
28/id = 27

29/name = Weaver
29/id = 28

30/name = Clothier
30/id = 29

31/name = Glassmaker
31/id = 30

32/name = Potter
32/id = 31

33/name = Glazer
33/id = 32

34/name = Wax Worker
34/id = 33

35/name = Strand Extractor
35/id = 34

36/name = Fishery Worker
36/id = 35

37/name = Fisherman
37/id = 36

38/name = Fish Dissector
38/id = 37

39/name = Fish Cleaner
39/id = 38

40/name = Farmer
40/id = 39

41/name = Cheesemaker
41/id = 40

42/name = Milker
42/id = 41

43/name = Cooking
43/id = 42

44/name = Thresher
44/id = 43

45/name = Miller
45/id = 44

46/name = Butcher
46/id = 45

47/name = Tanner
47/id = 46

48/name = Dyer
48/id = 47

49/name = Planter
49/id = 48

50/name = Herbalist
50/id = 49

51/name = Brewer
51/id = 50

52/name = Soap Maker
52/id = 51

53/name = Potash Maker
53/id = 52

54/name = Lye Maker
54/id = 53

55/name = Wood Burner
55/id = 54

56/name = Shearer
56/id = 55

57/name = Spinner
57/id = 56

58/name = Presser
58/id = 57

59/name = Beekeeper
59/id = 58

60/name = Engineer
60/id = 59

61/name = Mechanic
61/id = 60

62/name = Siege Engineer
62/id = 61

63/name = Siege Operator
63/id = 62

64/name = Pump Operator
64/id = 63

65/name = Clerk
65/id = 64

66/name = Administrator
66/id = 65

67/name = Trader
67/id = 66

68/name = Architect
68/id = 67

69/name = Alchemist
69/id = 68

70/name = Doctor
70/id = 69

71/name = Diagnoser
71/id = 70

72/name = Bone Setter
72/id = 71

73/name = Suturer
73/id = 72

74/name = Surgeon
74/id = 73

75/name = Merchant
75/id = 74

76/name = Hammerman
76/id = 75
76/is_military = true
76/can_assign_labors = true

77/name = Master Hammerman
77/id = 76
77/is_military = true
77/can_assign_labors = false

78/name = Spearman
78/id = 77
78/is_military = true
78/can_assign_labors = true

79/name = Master Spearman
79/id = 78
79/is_military = true
79/can_assign_labors = false

80/name = Crossbowman
80/id = 79
80/is_military = true
80/can_assign_labors = true

81/name = Master Crossbowman
81/id = 80
81/is_military = true
81/can_assign_labors = false

82/name = Wrestler
82/id = 81
82/is_military = true
82/can_assign_labors = true

83/name = Master Wrestler
83/id = 82
83/is_military = true
83/can_assign_labors = false

84/name = Axeman
84/id = 83
84/is_military = true
84/can_assign_labors = true

85/name = Master Axeman
85/id = 84
85/is_military = true
85/can_assign_labors = false

86/name = Swordsman
86/id = 85
86/is_military = true
86/can_assign_labors = true

87/name = Master Swordsman
87/id = 86
87/is_military = true
87/can_assign_labors = false

88/name = Maceman
88/id = 87
88/is_military = true
88/can_assign_labors = true

89/name = Master Maceman
89/id = 88
89/is_military = true
89/can_assign_labors = false

90/name = Pikeman
90/id = 89
90/is_military = true
90/can_assign_labors = true

91/name = Master Pikeman
91/id = 90
91/is_military = true
91/can_assign_labors = false

92/name = Bowman
92/id = 91
92/is_military = true
92/can_assign_labors = true

93/name = Master Bowman
93/id = 92
93/is_military = true
93/can_assign_labors = false

94/name = Blowgunman
94/id = 93
94/is_military = true
94/can_assign_labors = true

95/name = Master Blowgunman
95/id = 94
95/is_military = true
95/can_assign_labors = false

96/name = Lasher
96/id = 95
96/is_military = true
96/can_assign_labors = true

97/name = Master Lasher
97/id = 96
97/is_military = true
97/can_assign_labors = false

98/name = Recruit
98/id = 97
98/is_military = true
98/can_assign_labors = true

99/name = Trained Hunter
99/id = 98
99/is_military = false
99/can_assign_labors = true

100/name = Trained War
100/id = 99
100/is_military = false
100/can_assign_labors = true

101/name = Master Thief
101/id = 100
101/is_military = false
101/can_assign_labors = true

102/name = Thief
102/id = 101

103/name = Peasant
103/id = 102

104/name = Child
104/id = 103
104/is_military = false
104/can_assign_labors = false

105/name = Baby
105/id = 104
105/is_military = false
105/can_assign_labors = false

106/name = Drunk
106/id = 105

@Bifidius - Yes, DT works natively on linux. You use hg (mercurial) to clone DE's source tree, then get in it an qmake && make. After that, you have the DwarfTherapist binary in bin/releases/DwarfTherapist. It's pretty cool stuff.

@Darmarius (again!) Wow - thank you :D
Ok, I've found the labor offset (still linux): 0x0604
The soul offset SHOULD be at 0x05e8, but I haven't been able to confirm that since the soul details have changed too.

I'm really going in the dark here :| I'm trying to find similarities between a 2010 memory dump and 2012's, but so far the soul details has eluded me. I'll update some more tonight if I find other offsets.

So, I've got dyn's game_data.ini fix, and I've got the bits from darmarius and I now have a somewhat functional DT - you can see the correct labors assigned on your starting seven dwarves, and. I just successfully changed one of my dwarves labor from DT. I expect that we don't have the re-equip offset right, so enabling/disabling the jobs of miner, woodchopper, anything that requires an equipment change will need to be done actually in DF itself; but it's still got the advantage of knowing which name you want to enable the skill on.

Actually, make that known.. recheck_equipment=0x0148

Like most here, I'm also working from the 31.25 ini file, but here are the known values we (believe) we now have:

Code: [Select]
[info]
checksum=0xa42a074a
version_name=v0.34.01
complete=false

[addresses]
translation_vector=0x095c7bf8
language_vector=0x095c7be0
creature_vector=0x095868ac
dwarf_race_index=0x0956e240
squad_vector=0x095c47b4

[offsets]
word_table=0x0000001c

[dwarf_offsets]
labors=0x0604
recheck_equipment=0x0148
souls=0x05e8

Of course, all of this should be considered beta, some of them are educated guesses, and some may be wrong in subtle ways we don't yet know.. etc. But on my DT, this gets me to where I can at least view and set labors, however I can't tell how much *skill* any dwarf has in any labor.  Yet.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Girlinhat on February 16, 2012, 04:55:54 pm
Would it be possible for Therapist to show a dwarf's attributes in a spreadsheet format?  Things like "he is quick to anger" and "she is compassionate"?  I'd love to have a sortable list, and be able to find the most compassionate, impulsive dwarf to make my chief medic.

A method to implement material preferences would be nice as well, though it was my understanding that this was troublesome.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Darmarius on February 16, 2012, 05:58:07 pm
Allright, I found the missing offsets, everything seems to be working in my DT. I also found the same recheck_equipment as kionmaru (0x0148).

Here's my .ini:
Code: [Select]
[info]
checksum=0xa42a074a
version_name=v0.34.01
complete=true

[addresses]
translation_vector=0x095c7bf8
language_vector=0x095c7be0
creature_vector=0x095868ac
dwarf_race_index=0x0956e240
squad_vector=0x095c47b4

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0148
current_job=0x0274
states=0x0
souls=0x05e8
labors=0x0604
happiness=0x0694
squad_ref_id=0x06f8

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

The only difference I can see from the linux ini and the windows one is two missing offsets: states and likes. I have no idea what I'm looking for right now, I'll probably run a linux and windows DF/DT side-by-side to try and find these.

For future reference, I did not "stare intensely at memory dump and hope to find the offset". I saw that there was a correlation between 31.25 and 34.01 windows ini offset changes; every dwarf_offsets from 31.25 to 34.01 are 0x11c apart (in windows). I found the labors offset (the easiest one, thanks stevedore!), calculated the difference between the two versions (0xb8) and added that value to the other offsets (souls, squad, happiness).

For the other values, I stole the difference from the windows version: the soul details are 0x10 apart, recheck_equipement is 0x04 and current_job is 18. I applied these differences blindly and it just worked.

Will this work for future update? No idea :D
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: kionmaru on February 16, 2012, 06:05:07 pm
@Darmarius, that's exactly what I did to find the recheck equipment offset.. I'd calculated it last night but with the labors not showing properly, hadn't tested it until I was in the middle of that post - You beat me to it! Exactly what I was diabolically planning on doing tonight when I had the time.

Again, thank you so much :D
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Myr0ku on February 16, 2012, 06:08:28 pm
If i could adress you a suggestion DE ?
Can you make a button to enable or disable all hauling functions too ?
I think of it for a long time !
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Buttery_Mess on February 16, 2012, 06:37:11 pm
While you're at it, can you add a function to automatically bring about world peace? Something on the drop down menu. Also, perhaps a table that shows all possible quantum realities in eleven dimension? Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: nenjin on February 16, 2012, 06:53:50 pm
Shouldn't we like, wait until they've got the offsets figured out before we start bombarding them with feature requests?
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Maldevious on February 16, 2012, 07:11:35 pm
Not a programmer, but I've noticed that the most recent .ini from dyn seems to cause children to be displayed as 'Pressers.' Thanks all for the excellent work you do.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: dyn on February 16, 2012, 07:23:24 pm
Not a programmer, but I've noticed that the most recent .ini from dyn seems to cause children to be displayed as 'Pressers.' Thanks all for the excellent work you do.

I'll look into this now. Can anyone else confirm that after the game_data.ini fix that I posted above they are also still having children show up as Pressers or anything else but children?
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Marble_Nuts on February 16, 2012, 08:08:26 pm
OMG you guy have no idea how happy I am to know that therapist is going on mac!! I... I mean... There are no other way to say it :D

Is there a bit of funding related to this sudden change on plan? On making therapist available for mac?

As mentioned, I've created a Tip Jar (http://dwarftherapist.com/tip.html) with the intent of getting a mac mini to start merging / supporting OSX. I'll look into adding linux support once again this weekend.

Done and....... DONE !!

Let's just hope it raise up fast to the needed amount
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Maldevious on February 16, 2012, 08:27:32 pm
Another interesting thing that I believe I'm noticing, regarding vampires:

Spoiler (click to show/hide)

Now if I could just figure out how to catch him in the act...
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Girlinhat on February 16, 2012, 08:31:50 pm
I think now is actually a fairly good time to make requests.  His Lordship Engineer has his machine warm and his Therapist hat on, might as well do one update session and add new features at the same time, right?

Albeit, finding offsets and adding features are apples and plating an orange orchard, not exactly fair to compare the two so closely...
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: kyle902 on February 16, 2012, 08:58:19 pm
I got a rain syndrome on all of my dwarves except for one. When I started up the game again and launched DT the dwarves that had the syndrome where not included in any of the screens.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Jibekn on February 16, 2012, 09:00:35 pm
Donate link please.

EDIT: I've gone blind apparently.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DwarfEngineer on February 16, 2012, 09:50:14 pm
I think now is actually a fairly good time to make requests.  His Lordship Engineer has his machine warm and his Therapist hat on, might as well do one update session and add new features at the same time, right?

Albeit, finding offsets and adding features are apples and plating an orange orchard, not exactly fair to compare the two so closely...

I do hope to add some features to the next release. Right now I'm hip deep in debugging the migration waves issue.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Maldevious on February 16, 2012, 09:56:05 pm
I'll look into this now. Can anyone else confirm that after the game_data.ini fix that I posted above they are also still having children show up as Pressers or anything else but children?

Just got some newly born children showing up as Beekeepers.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: dyn on February 16, 2012, 10:07:08 pm
Just got some newly born children showing up as Beekeepers.

See my post a couple pages back about new profession IDs. If you have not already applied this quick fix, please do so. This should fix your (and everyone elses) issue till it is added in the next official release.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Maldevious on February 16, 2012, 10:12:25 pm
dyn - I had already applied those profession IDs. Not a real big deal, I just re-assign all Beekeepers and Pressers to a custom "Child" profession. Thanks for the hard work.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: notfood on February 16, 2012, 10:18:07 pm
uuuuuh Linux offsets... I can't figure them out on my own.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: dyn on February 16, 2012, 10:25:08 pm
dyn - I had already applied those profession IDs. Not a real big deal, I just re-assign all Beekeepers and Pressers to a custom "Child" profession. Thanks for the hard work.

Hmm strange. Any way I could get a copy of the save to take a look at? If not, no worries, I'll start a few games and keep checking the children/babies. Everything is working correctly on my end but there may be other changes that need to be addressed.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Darmarius on February 16, 2012, 10:49:17 pm
@notfood

Code: [Select]
[info]
checksum=0xa42a074a
version_name=v0.34.01
complete=true

[addresses]
translation_vector=0x095c7bf8
language_vector=0x095c7be0
creature_vector=0x095868ac
dwarf_race_index=0x0956e240
squad_vector=0x095c47b4

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0148
current_job=0x0274
states=0x0
souls=0x05e8
labors=0x0604
happiness=0x0694
squad_ref_id=0x06f8

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

Here's the content of my v0.34.01.ini file for the linux offsets. Put that content in a file under <dwarfTherapistFolder>/etc/memory_layouts/linux/ and DT should pick it up.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DwarfEngineer on February 17, 2012, 12:15:15 am
I do hope to add some features to the next release. Right now I'm hip deep in debugging the migration waves issue.

Giving up for the night  >:(
Can't seem to find the location where dwarves arrival date is stored.

Figured out how to calculate the hex value for a dwarven month though:
Code: [Select]
There are 1200 time units per day.
There are 28 days per month.
There are 12 months in a year.

Decimal value of a given date is: 1200 * ((28 * month) + day - 1)

For example:
1 Granite would be 1200 * (28 * 0 + 1-1) = 0
23 Hematite would be 1200 * (28 * 3 + 23-1) = 127200

I think my best bet is to figure out where the game clock offset is, then try to find the migrants offset when the game pauses for new migrants. Otherwise it's storing dwarf wave information as a separate file / settings in dwarf therapist (not at all ideal)

Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Gearheart on February 17, 2012, 12:28:13 am
Note to self: Read the thread before posting, I can see you are already on the migration wave issue and thank you for that.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Girlinhat on February 17, 2012, 12:32:51 am
OP might need a large sign when a new release comes out.  "We know about these issues <list>"
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Nice Save on February 17, 2012, 02:48:39 am
If i could adress you a suggestion DE ?
Can you make a button to enable or disable all hauling functions too ?
I think of it for a long time !

If you right click on any group of skills you can enable/disable all of them at once. At least you could in the previous version, I'm holding off on 0.34.01 while I finish my current game on 31.25
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Kami on February 17, 2012, 08:04:07 am
I think my best bet is to figure out where the game clock offset is, then try to find the migrants offset when the game pauses for new migrants. Otherwise it's storing dwarf wave information as a separate file / settings in dwarf therapist (not at all ideal)
Calculated my starting year to 0x06021600. No reference within the creatures-vector.
But found the value at some places:
Found '' (00160206) = 0x0043f94c (uncorrected:0x0043f94c)
Found '' (00160206) = 0x0ae27fff (uncorrected:0x0ae27fff)
Found '' (00160206) = 0x0ae32fff (uncorrected:0x0ae32fff)
Found '' (00160206) = 0x0ae35fff (uncorrected:0x0ae35fff)
Found '' (00160206) = 0x0ae47fff (uncorrected:0x0ae47fff)
Found '' (00160206) = 0x0ae62fff (uncorrected:0x0ae62fff)
Found '' (00160206) = 0x0ae88fff (uncorrected:0x0ae88fff)
Found '' (00160206) = 0x0ae95fff (uncorrected:0x0ae95fff)
Found '' (00160206) = 0x0ae9dfff (uncorrected:0x0ae9dfff)
Found '' (00160206) = 0x0aeb08bf (uncorrected:0x0aeb08bf)
Found '' (00160206) = 0x0aeb8fff (uncorrected:0x0aeb8fff)
Found '' (00160206) = 0x0aec0fff (uncorrected:0x0aec0fff)
Found '' (00160206) = 0x0aec3fff (uncorrected:0x0aec3fff)
Found '' (00160206) = 0x156656f7 (uncorrected:0x156656f7)
Found '' (00160206) = 0x15c46137 (uncorrected:0x15c46137)
Found '' (00160206) = 0x2b8f5aa3 (uncorrected:0x2b8f5aa3)

Looking at the raws it seems like at 0x0ae* are stored historical information according to my fortress and world.

I would say the game does not track the arrival of the dwarf within the structure in the dwarf vector but in aspecial  history-vector. But I didn't find references...

I also found:
H
0x0aacbdc0 | 65 20 61 72 72 69 76 65 64 20 61 74 20 4c 69 6d | e arrived at Lim
0x0aacbdd0 | 83 72 69 64 65 6e 20 6f 6e 20 74 68 65 20 31 73 | 83riden on the 1s
0x0aacbde0 | 74 20 6f 66 20 47 72 61 6e 69 74 65 20 69 6e 20 | t of Granite in
0x0aacbdf0 | 74 68 65 20 79 65 61 72 20 32 35 31 2e 20 20 5b | the year 251.

...but this seems to be just a string with my displayed thoughts an preferences.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Maldevious on February 17, 2012, 08:38:00 am
Hmm strange. Any way I could get a copy of the save to take a look at? If not, no worries, I'll start a few games and keep checking the children/babies. Everything is working correctly on my end but there may be other changes that need to be addressed.

I ended up restarting DF and DT this morning, and things started work as they should. So, no worries. Perhaps I failed to restart them after changing the .ini. My bad.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: schismatise on February 17, 2012, 10:04:40 am
I also found:
H
0x0aacbdc0 | 65 20 61 72 72 69 76 65 64 20 61 74 20 4c 69 6d | e arrived at Lim
0x0aacbdd0 | 83 72 69 64 65 6e 20 6f 6e 20 74 68 65 20 31 73 | 83riden on the 1s
0x0aacbde0 | 74 20 6f 66 20 47 72 61 6e 69 74 65 20 69 6e 20 | t of Granite in
0x0aacbdf0 | 74 68 65 20 79 65 61 72 20 32 35 31 2e 20 20 5b | the year 251.

...but this seems to be just a string with my displayed thoughts an preferences.

That looks pretty damn useful to me. Even if the information you're looking for is just stored at the end of a seperate string, it does seem to be the last thing in the string, in all cases i've seen it in - surely that's predictable enough to be extracted as usable data? Either way, good work to you, sir.

Edit: Apologies if i am ignorant of context.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Broan13 on February 17, 2012, 11:54:04 am
Quick bug that I found.

All children are being called Beekeepers.

EDIT:  Just saw that this has been posted.  sorry.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: TerryDactyl on February 17, 2012, 01:11:47 pm
Did apply quick-fix for professions. Solved some issues.

Reporting bugs in displaying dwarves-by-wave. They're all mix-mashed up in illogical ways.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Weaselcake on February 17, 2012, 02:11:23 pm
Being able to Nickname your dwarves through DT is also a bug I believe. I click 'ok' and nothing happens.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Darmarius on February 17, 2012, 02:43:05 pm
Guys, please go to the google code project page (http://code.google.com/p/dwarftherapist/issues/list) to post bugs/issues and do a little search to see if your bug has been found first. Much more manageable that way, it takes 10 seconds on your part but saves lots of time for the dev(s). You can also upvote a bug report to give it more visibility and probably fixed faster.

Right now DE is working hard on the migration wave issue, which is the most pressing bug as of now, and until that is fixed probably no other bug will be fixed.
Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: TerryDactyl on February 17, 2012, 04:08:50 pm
please go to the google code project page (http://code.google.com/p/dwarftherapist/issues/list) to post bugs/issues

Thanks Darmarius, wasn't aware of this resource.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: ActnMoviHeroBoy on February 17, 2012, 04:56:15 pm
I'd like to suggest one thing, if we're doing that now. DT currently shows only about half of a dwarf's attributes. I think the ones missing are called Soul Attributes, but I could be wrong. Anyway, these have marginal use normally but I think I could find a use for them. Could the attribute panel be extended to show these other stats?

As always, many thanks to everyone working on this.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DwarfEngineer on February 17, 2012, 09:04:52 pm
I think my best bet is to figure out where the game clock offset is, then try to find the migrants offset when the game pauses for new migrants. Otherwise it's storing dwarf wave information as a separate file / settings in dwarf therapist (not at all ideal)
Calculated my starting year to 0x06021600. No reference within the creatures-vector.
But found the value at some places:
Found '' (00160206) = 0x0043f94c (uncorrected:0x0043f94c)
Found '' (00160206) = 0x0ae27fff (uncorrected:0x0ae27fff)
Found '' (00160206) = 0x0ae32fff (uncorrected:0x0ae32fff)
Found '' (00160206) = 0x0ae35fff (uncorrected:0x0ae35fff)
Found '' (00160206) = 0x0ae47fff (uncorrected:0x0ae47fff)
Found '' (00160206) = 0x0ae62fff (uncorrected:0x0ae62fff)
Found '' (00160206) = 0x0ae88fff (uncorrected:0x0ae88fff)
Found '' (00160206) = 0x0ae95fff (uncorrected:0x0ae95fff)
Found '' (00160206) = 0x0ae9dfff (uncorrected:0x0ae9dfff)
Found '' (00160206) = 0x0aeb08bf (uncorrected:0x0aeb08bf)
Found '' (00160206) = 0x0aeb8fff (uncorrected:0x0aeb8fff)
Found '' (00160206) = 0x0aec0fff (uncorrected:0x0aec0fff)
Found '' (00160206) = 0x0aec3fff (uncorrected:0x0aec3fff)
Found '' (00160206) = 0x156656f7 (uncorrected:0x156656f7)
Found '' (00160206) = 0x15c46137 (uncorrected:0x15c46137)
Found '' (00160206) = 0x2b8f5aa3 (uncorrected:0x2b8f5aa3)

Looking at the raws it seems like at 0x0ae* are stored historical information according to my fortress and world.

I would say the game does not track the arrival of the dwarf within the structure in the dwarf vector but in aspecial  history-vector. But I didn't find references...

I also found:
H
0x0aacbdc0 | 65 20 61 72 72 69 76 65 64 20 61 74 20 4c 69 6d | e arrived at Lim
0x0aacbdd0 | 83 72 69 64 65 6e 20 6f 6e 20 74 68 65 20 31 73 | 83riden on the 1s
0x0aacbde0 | 74 20 6f 66 20 47 72 61 6e 69 74 65 20 69 6e 20 | t of Granite in
0x0aacbdf0 | 74 68 65 20 79 65 61 72 20 32 35 31 2e 20 20 5b | the year 251.

...but this seems to be just a string with my displayed thoughts an preferences.
Been chasing the string lead for a while now with no luck. The string is loaded on demand, so it doesn't show up until you actually go to the preferences screen. In addition, the timestamp or what-have-you of the arrival time does not appear to be saved in memory - at least not in the format I discovered for dwarves birth dates. Still banging my head on this one. :-/
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Gearheart on February 17, 2012, 09:16:51 pm
In the meantime, I find a good way of making sure you know which dwarves are new is to enable the alchemy labour on all dwarves once you are finished setting up their labours. Because the alchemy labour currently does nothing, you can then tell which dwarves arrived with the latest way via the lack of alchemy labour.

It's not a fix, but it helps keep track while the bug is around.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Darmarius on February 17, 2012, 10:07:19 pm
My guess would be that the dwarf doesn't store it's "arrival date" itself; instead, it has a vector of pointer to historical events related to him. That's my guess since a dwarf can have lots of historical events associated to him, arrival to X is simply one of them.

It's a wild guess though...
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Weaselcake on February 18, 2012, 03:44:35 am
It's the weekend now btw.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Maldevious on February 18, 2012, 07:15:33 am
In the meantime, I find a good way of making sure you know which dwarves are new is to enable the alchemy labour on all dwarves once you are finished setting up their labours. Because the alchemy labour currently does nothing, you can then tell which dwarves arrived with the latest way via the lack of alchemy labour.

It's not a fix, but it helps keep track while the bug is around.

Another good way to tell is that all new dwarves come in with Feed Patients and Recover Wounded checked, which, if you use the custom professions, only doctors and nurses tend to have on by default.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: kionmaru on February 18, 2012, 09:03:55 am
Here's the ini file I've got right now for DT Linux, for DF2012 0.34.02:

Code: [Select]
[info]
checksum=0xf4fc8347
version_name=v0.34.02
complete=true

[addresses]
translation_vector=0x095ca018
language_vector=0x095ca000
creature_vector=0x09588ccc
dwarf_race_index=0x09570660
squad_vector=0x095c6bd4

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0148
current_job=0x0274
states=0x0
souls=0x05e8
labors=0x0604
happiness=0x0694
squad_ref_id=0x06f8

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Dohon on February 18, 2012, 09:50:54 am
It's the weekend now btw.

Meaning?
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: DwarfEngineer on February 18, 2012, 09:52:38 am
It's the weekend now btw.

Meaning?
I did say I wanted to have a stable release for this weekend. Good news on that front - I found what I think is a pretty solid solution for migration waves. I'm looking at current issues to see what else I can include in this release, then something should be out within the next couple of hours.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Starhero on February 18, 2012, 10:05:01 am
OH PLEASE tell me that the latest bug patch for DF is not gonna trash all of you fine gentlemen's work!
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: kionmaru on February 18, 2012, 10:15:48 am
Generating a new ini for an incremental release (0.34.01 to 0.34.02) is actually fairly easy, it turns out. The trouble is from something like 0.31.25 to 0.34.01, because all of the offsets inside the data structures change completely.

So someone with windows DF and windows DT and a bit of knowledge can generate a new memory map pretty quickly - ten minutes or so. So on that front, once some of the windows guys hop on you should see new ini files for those shortly, or DE may make his own when he's ready for the release (in a few hours hopefully!) ;)

Hope that clears that up.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: kionmaru on February 18, 2012, 10:20:02 am
@DwarfEngineer - One thing you may want to toss in, is on slackware (for instance) pidof is in /sbin, which is not in a regular users search path. You might want to add a sanity check so that if DT is trying to ptrace PID 0, toss an error and say "We need pidof in our shell PATH variable in order to locate the Process ID (PID) of Dwarf_Fortress so that we can attach to it and fiddle its memory bits."

It took me awhile reading strace logs of dwarftherapist before I figured out why the !$%! it was trying to ptrace init... ;)
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Spreggo on February 18, 2012, 10:33:09 am
Just wanted to thank you for this fantastic piece of software :)
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: moozaad on February 18, 2012, 11:03:50 am
Quick and nasty method to get back up and running...

1. run therapist
2. close warning dialogue and then connect
3. scan memory (button top right)
4. create layout
5. Parent... select the nearest version to what you have (34.01)
6. change the filename and version name to 34.02
7. click okay
8. wait
9. restart therapist

This works because of all the hard work others have done to get 34.01 working (big thank you!). However it isn't perfect but at least it'll get you running.


Here's the windows graphic output:
Spoiler (click to show/hide)

GL HF o/
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 18, 2012, 11:26:19 am
Dwarf Therapist 0.6.12 Released (Download (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12.zip))

MAJOR CHANGES:
 * Support for 0.34.02 (graphics + legacy version)
BUG FIXES:
 * Closes issue 382 - Migration waves are wonky
 * Closes issue 383 - Ability to set child labor in Dwarf Therapist
 * Closes issue 368 - Beekeepers, waxworkers always show 0 experience
 * Closes issue 290 - Bow, not Lasher
STILL AT LARGE:
 * Issue 381 - Vampires cannot hide from Dwarf Therapist

I'm looking for a save game with an obvious vampire if anyone could upload one for me I would appreciate it.

Hopefully I'll be ordering the mac mini next week to start on OS X. In the meantime, I'll start looking at feature requests. (I might put out a poll) But for now, I plan on taking a nap, then going to the liquor store before starting a serious game of DF :)

Thanks again for all of your support! I can't express enough how great of a community this is.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Kipi on February 18, 2012, 11:28:20 am
Thank you! You are the best!

After Toady that is...  :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Premium on February 18, 2012, 11:29:43 am
Oh wow this is a nice surprise to wake up to!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: rooth on February 18, 2012, 11:42:47 am
thanks man!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Musashi on February 18, 2012, 11:56:33 am
Holy shit, you're fast.  :o
Thank you so much!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 18, 2012, 12:09:15 pm
Holy shit, you're fast.  :o
Thank you so much!
Luckily I was already getting a release put together when I saw that 34.02 was posted. As noted by moozaad, generating new layouts for minor versions is now pretty trivial, so I was able to include it in the release. :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: kizucha on February 18, 2012, 12:15:48 pm
Thank you!  ;D
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Buttery_Mess on February 18, 2012, 12:31:24 pm
Cracking work DE.
Title: Re: Dwarf Therapist (LATEST 0.6.11 2/15/12 see first post)
Post by: Dohon on February 18, 2012, 12:42:16 pm
It's the weekend now btw.

Meaning?
I did say I wanted to have a stable release for this weekend. Good news on that front - I found what I think is a pretty solid solution for migration waves. I'm looking at current issues to see what else I can include in this release, then something should be out within the next couple of hours.

I did know your intent, Dwarf Engineer, but I found Weaselcake's comment to be quite demanding. We all know you have  been working hard to get it fixed and updated. His comment felt out of place.

On a different note, cheers for your hard work!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: heckman on February 18, 2012, 01:02:05 pm
Thanks for all the amazing work on this application!

I did run into a little difficulty compiling the latest release (0.6.12 source) in linux however. Last version was fine but now I get the following. Anybody got a clue?

Code: [Select]
src/scanner.cpp: In member function ‘void Scanner::find_null_terminated_string()’:
src/scanner.cpp:283:62: error: no matching function for call to ‘qMin(uint, long unsigned int)’
src/scanner.cpp:283:62: note: candidate is:
/usr/include/QtCore/qglobal.h:1194:18: note: template<class T> const T& qMin(const T&, const T&)
src/scanner.cpp: In member function ‘void Scanner::find_number_or_address()’:
src/scanner.cpp:301:62: error: no matching function for call to ‘qMin(uint, long unsigned int)’
src/scanner.cpp:301:62: note: candidate is:
/usr/include/QtCore/qglobal.h:1194:18: note: template<class T> const T& qMin(const T&, const T&)
make: *** [bin/release/scanner.o] Error 1

Thanks again DE!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Crustypeanut on February 18, 2012, 01:15:17 pm
Once my world is done Generating for the new version (year 232 of 250.. by the gods I went for a 1.5 hour walk and thats how far it got), I'll do mah best about getting you a working fortress with a vampire.  Or 20 vampires.  ;)

Edit: Oh good, I was able to stop it at 233.. gotta press enter/escape JUST as the year turns.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 18, 2012, 01:16:07 pm
Thanks for all the amazing work on this application!

I did run into a little difficulty compiling the latest release (0.6.12 source) in linux however. Last version was fine but now I get the following. Anybody got a clue?

Code: [Select]
src/scanner.cpp: In member function ‘void Scanner::find_null_terminated_string()’:
src/scanner.cpp:283:62: error: no matching function for call to ‘qMin(uint, long unsigned int)’
src/scanner.cpp:283:62: note: candidate is:
/usr/include/QtCore/qglobal.h:1194:18: note: template<class T> const T& qMin(const T&, const T&)
src/scanner.cpp: In member function ‘void Scanner::find_number_or_address()’:
src/scanner.cpp:301:62: error: no matching function for call to ‘qMin(uint, long unsigned int)’
src/scanner.cpp:301:62: note: candidate is:
/usr/include/QtCore/qglobal.h:1194:18: note: template<class T> const T& qMin(const T&, const T&)
make: *** [bin/release/scanner.o] Error 1

Thanks again DE!
I checked in the fix. (I'm just now getting a linux VM up and running again)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: kionmaru on February 18, 2012, 01:18:49 pm
Thanks for all the amazing work on this application!

I did run into a little difficulty compiling the latest release (0.6.12 source) in linux however. Last version was fine but now I get the following. Anybody got a clue?

Code: [Select]
src/scanner.cpp: In member function ‘void Scanner::find_null_terminated_string()’:
src/scanner.cpp:283:62: error: no matching function for call to ‘qMin(uint, long unsigned int)’
src/scanner.cpp:283:62: note: candidate is:
/usr/include/QtCore/qglobal.h:1194:18: note: template<class T> const T& qMin(const T&, const T&)
src/scanner.cpp: In member function ‘void Scanner::find_number_or_address()’:
src/scanner.cpp:301:62: error: no matching function for call to ‘qMin(uint, long unsigned int)’
src/scanner.cpp:301:62: note: candidate is:
/usr/include/QtCore/qglobal.h:1194:18: note: template<class T> const T& qMin(const T&, const T&)
make: *** [bin/release/scanner.o] Error 1

Thanks again DE!

Yeah, per comment on issue #380 it should be size_t not uint, and I agree. I GOT NINJA'D BY DWARFENGINEER! He's already checked in a fix. LOL. Here's a diff if you want it, otherwise wait for his next release I suppose :P

Here's a diff patch you can apply:

Code: [Select]
diff -r 2a186e1e26f6 src/scanner.cpp
--- a/src/scanner.cpp   Sat Feb 18 10:14:49 2012 -0600
+++ b/src/scanner.cpp   Sat Feb 18 12:19:10 2012 -0600
@@ -280,7 +280,7 @@
     QByteArray text = ui->le_null_terminated_string->text().toLocal8Bit();
 
     get_brute_force_address_range(params.start_addr, params.end_addr);
-    params.size = qMin((uint)text.size(), sizeof(params.data));
+    params.size = qMin((size_t)text.size(), sizeof(params.data));
     memcpy(params.data, text.data(), params.size);
 
     QByteArray needle((const char *)&params, sizeof(params));
@@ -298,7 +298,7 @@
     QByteArray text = encode(ui->le_find_address->text().
                                toUInt(&ok, ui->rb_hex->isChecked() ? 16 : 10));
     get_brute_force_address_range(params.start_addr, params.end_addr);
-    params.size = qMin((uint)text.size(), sizeof(params.data));
+    params.size = qMin((size_t)text.size(), sizeof(params.data));
     memcpy(params.data, text.data(), params.size);
 
     QByteArray needle((const char *)&params, sizeof(params));

Also, 0.6.12 doesn't include linux memory ini's for 0.34.01 or 0.34.02, so here they are:

0.34.01 ini file:
Code: [Select]
[info]
checksum=0xa42a074a
version_name=v0.34.01
complete=true

[addresses]
translation_vector=0x095c7bf8
language_vector=0x095c7be0
creature_vector=0x095868ac
dwarf_race_index=0x0956e240
squad_vector=0x095c47b4

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0148
current_job=0x0274
states=0x0
souls=0x05e8
labors=0x0604
happiness=0x0694
squad_ref_id=0x06f8

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

And the ini file for 0.34.02 version:
Code: [Select]
[info]
checksum=0xf4fc8347
version_name=v0.34.02
complete=true

[addresses]
translation_vector=0x095ca018
language_vector=0x095ca000
creature_vector=0x09588ccc
dwarf_race_index=0x09570660
squad_vector=0x095c6bd4

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0148
current_job=0x0274
states=0x0
souls=0x05e8
labors=0x0604
happiness=0x0694
squad_ref_id=0x06f8

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000


Save the appropriate ini file (You really should be running df 0.34.02, so I'm going to use that) as /path/to/dwarftherapist/etc/memory_layouts/linux/v0.34.01.ini, apply the diff (or make the indicated edits to scanner.cpp yourself) and finish compiling it, and you should have a linux dt that has the unofficial support for linux DF 0.34.02.

HTH!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 18, 2012, 01:25:19 pm
<snip>

Thanks, I saw you update the issue and figured I'd get the change checked in. I'll try to work on some 'official' linux support at some point this weekend / week, but for now I need a break.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: kionmaru on February 18, 2012, 01:37:20 pm
DE, I absolutely understand how you feel. Mad crunch time equals exhausted neurons. You are more then welcome. And thank you for an excellent program :)

Also, thanks to Darmarius and Dyn for doing really good work with offsets for 0.34.01 - I'd probably still be trying to figure out how to find the souls offset.


Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: ubermonkey on February 18, 2012, 01:38:48 pm
Everyone might already be aware of this, but apparently the vampire nicknames actually do show up in DT, it's just that they're attached to the Vampire's "true" name. I was looking for "Edim Stelidnish" and found him in DT as "VAMPIRE2 Fathdellith..." So apparently vampires store their disguise names somewhere else.

I have a save with 4 "tagged" (nicknamed & stored in a burrow) vampires, but it's from .01 so I'm not sure how helpful that would be.

*Edit to say: DE (plus everyone here who's helped finding memory offsets), thanks for the amazingly quick updates to DT.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Darmarius on February 18, 2012, 02:12:44 pm
The turn_count offset for linux is 0x052b; should be the same for both version (I haven't tested on 0.34.02)

A small caveat to this: I still have all my original dwarves, but not all have the same turn count: I've got one unconscious/stunned dwarf which turn count is 45 "ticks" below the others. He just was injured by a mis-organized cave-in. He hasn't waken up yet and I don't have the time right now to set my hospital to test whether its value will update when he wakes up, but it's something you should look into, I think.

Thanks for the release DE!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 18, 2012, 03:18:24 pm
The turn_count offset for linux is 0x052b; should be the same for both version (I haven't tested on 0.34.02)

A small caveat to this: I still have all my original dwarves, but not all have the same turn count: I've got one unconscious/stunned dwarf which turn count is 45 "ticks" below the others. He just was injured by a mis-organized cave-in. He hasn't waken up yet and I don't have the time right now to set my hospital to test whether its value will update when he wakes up, but it's something you should look into, I think.

Thanks for the release DE!
There's quite a bit of fudge-factor when figuring the migration wave based on turn count. I'm going off my previous calculations of 1200 ticks per day, 28 days per month. Right now I'm grouping turn counts within a month of each other, but that could be upped to about 2.5 months or so if it needs correcting. So in reality a dwarf can fall behind by about 33600 ticks before he'll get bumped out of the wave.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Zanielyene on February 18, 2012, 03:38:36 pm
if ya'll are still adding features, I would kill for an option to turn off the "cannot talk to dwarf fortress" prompt that comes up when the connection to the game is lost.

I tend to run therapist and DF from a batch file so it's kinda annoying to click "okay" to the prompt each time i start the game.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Captain Mayhem on February 18, 2012, 04:08:11 pm
if ya'll are still adding features, I would kill for an option to turn off the "cannot talk to dwarf fortress" prompt that comes up when the connection to the game is lost.

I tend to run therapist and DF from a batch file so it's kinda annoying to click "okay" to the prompt each time i start the game.
You already have that option, though :)
1: Open up DT
2: Go to "File" and "Options"
3: Uncheck "Load Dwarves on Startup"
Et voila.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: TheReverendTholomewPlague on February 18, 2012, 04:41:42 pm
if ya'll are still adding features, I would kill for an option to turn off the "cannot talk to dwarf fortress" prompt that comes up when the connection to the game is lost.

I tend to run therapist and DF from a batch file so it's kinda annoying to click "okay" to the prompt each time i start the game.

Ahem: http://dffd.wimbli.com/file.php?id=5247

Shameless self promotion, but also a better option than a batch file. Customisable, too :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: ChudDwarf on February 18, 2012, 09:34:38 pm
I'm sure others have noticed this as well, though I haven't seen mention of it in this thread yet that I can recall; DT seems to consistently disagree with DF on how many dwarves there actually are. It seems to get out of sync after the third or so wave of immigrants, maybe in the 40 dwarves range or so, and will often be off by 6 or 8.

Sometimes it will get back into sync, and then diverge again. I haven't gone through the rolls one at a time to see who is the discrepancy, but it's fairly reproducible for me.

In 34.01, DT tended to think there were more dwarves than DT knew about; in 34.02 it's the other way around (based on a sample size of one game each, so that may well be just chance).

Thanks for all your work!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Buttery_Mess on February 18, 2012, 09:48:06 pm
@ChudDwarf

Dwarf therapist shows all dwarves in the migration wave before they show up on the map. It's one of the many things we love about it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: ChudDwarf on February 18, 2012, 10:03:47 pm
Dwarf therapist shows all dwarves in the migration wave before they show up on the map.

It's not just that, though; it stays out of sync well beyond the period of time just before and after a wave arrives. And currently, Dwarf Therapist is missing one; DF claims 52 dwarves (in both z-menu summary and unit list), and DT lists only 51. (I do have it set to show children abd babies, so those aren' the missing ones.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Ripolix on February 19, 2012, 12:25:46 am
Dwarf therapist shows all dwarves in the migration wave before they show up on the map.

It's not just that, though; it stays out of sync well beyond the period of time just before and after a wave arrives. And currently, Dwarf Therapist is missing one; DF claims 52 dwarves (in both z-menu summary and unit list), and DT lists only 51. (I do have it set to show children abd babies, so those aren' the missing ones.)

I believe that DT doesn't show vampires. You probably have one.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Intrinsic on February 19, 2012, 02:13:34 am
Just a FYI with DF 31.25 and DT 0.6.12 i can give babies and children jobs ;p plus waves are not working anymore. With 6.10 they worked fairly well, except for babies also counted as a wave, now i have 53 waves in the latest version. Maybe provide a separate link just for 31.25?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: orius on February 19, 2012, 03:13:28 am
Cool, it looks like it's working.  Now that I've managed to get a skeleton version of the LNP up and running with DT and SoundSense with the latest version, it's time to dig into Dwarf mode.

DT even found the custom settings I'd set back in 31.25.  Don' know how that happened, but I don't care, I won't have to do all that stuff over.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Darmarius on February 19, 2012, 09:59:39 am
@Intrinsic:
How DT handles migration wave changed in the most recent version; there's a new turn_count offset in the memory layout. My guess is that the 0.31.25.ini file wasn't updated with the turn_count offset. I don't have the time right now to check for it, so maybe somebody else can.

Also, for the child issue: the game_data.ini file changed. This file maps numerical id to actual jobs description and this is how DT knows what id is a child and not to assign job to him. This mapping changed in the most recent version of DF so DT had to update it; it's no longer valid for earlier version of DF.

My opinion is to stick with the 0.6.10 version for 0.31.25 for now, maybe DE can add more compatibility in the future. However, I'd consider DT 0.6.11 and up only compatible with 0.34.xx and perhaps even making the current DT version as 0.7.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Intrinsic on February 19, 2012, 11:11:03 am
Oh yeah i wasn't wanting 0.6.11+ made to be compatible with 31.25, just asking to include a link to 0.6.10 and specify to use it with 31.25.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Dienes on February 19, 2012, 12:02:23 pm
Many thanks for getting this updated quickly. I can't stand to play a large for with just the default ui for managing dwarves.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Zantan on February 19, 2012, 01:07:14 pm
DT is refusing to refusing to edit the labors of one of my dwarves.  His name and another's are both bolded in DT, but I can edit the other bolded dwarf's labors.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: ag on February 19, 2012, 01:15:23 pm
Regarding vampire nicknames, I've found where their false identities are kept. Here is a commit that adds it among other things to dfhack xmls. The cur_identity field pointed to by the link definitely determines which identity is used for the unit (confirmed by changing it). Unfortunately, it is buried deep inside the historical figure structure, which up to now has never been accessed by DT.

https://github.com/angavrilov/df-structures/commit/52f3ececbcb5d520563edc11f0a23241427a6e8d#L1R158 (https://github.com/angavrilov/df-structures/commit/52f3ececbcb5d520563edc11f0a23241427a6e8d#L1R158)

Btw, when changing nicknames, it is necessary to update all three of the unit, soul, and the historical figure entry like the game does (plus of course the assumed identity now); otherwise it is inconsistent, and the most likely cause of the long known quirk of military members losing their DT nicknames from time to time.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: peterix on February 19, 2012, 01:32:04 pm
Btw, feel free to join us on IRC: #dfhack on freenode. There's also the #dwarftherapist channel that has some idling people in it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: oldmansutton on February 19, 2012, 09:26:19 pm
...you should have a linux dt that has the unofficial support for linux DF 0.34.02.

Kionmaru, you are amazing!  I got most of this myself, then came here hoping someone else would have figured out the rest.  Thank you for your work, you saved me a few more hours of struggle!  ^_^
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: chrisadams3997 on February 19, 2012, 11:32:39 pm
Hi all, kinda new here.  I've done a lot of C++ code modding Civ4, in particular working on the DuneWars mod, so I've done some compiling before, but I'm not having any luck with the DT source code right now.  I've cloned the repository to my computer using Hg and loaded the dwarftherapist.pro file in Qt (which this is my first time using, I've always worked in visual studios before), but upon trying to compile it (with no changes made) I get the following errors:
(http://img823.imageshack.us/img823/9320/image1wvq.jpg)

Is there something in Qt I'm missing or maybe an operating system issue (I'm running 64-bit windows 7 home premium)?  Just grasping at straws right now.  I'm wanting to get it compiling however to try to merge in the work shishimar did displaying physical attributes.  I've already tracked down the offsets for the physical attributes*:

Code: [Select]
physical_attrs=0x3E4
strength=0x3E4
toughness=0x41C
endurance=0x438
agility=0x400
recuperation=0x454
disease_resistance=0x470

...So the rest should be a pretty straight forward merge.  Personally I'd love to see this worked into the official version, it's so incredibly useful when picking out dwarves for the military.

*the official DT version only has the 'physical_attrs' tag, the others are only in the Shishimar version.  Changing the 'physical_attrs' to the correct value in 6.12 didn't have any effect when enabling the three physical attributes available for a grid view to show, they all just show '-1', so I'm assuming that they are disabled in the code as of now.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Kami on February 20, 2012, 03:52:26 am
@ DwarfEngineer: Thx for the new version!
Btw, I've seen how you solved the migration wave problem. Simple and effective. ;-)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: miauw62 on February 20, 2012, 05:32:06 am
@ DwarfEngineer: Thx for the new version!
Btw, I've seen how you solved the migration wave problem. Simple and effective. ;-)

Magma?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 20, 2012, 09:08:24 am
Hi everybody. Just dropping in to post an update on the Mac situation - Thanks to everyones support I was able to order the Mac Mini this morning, and thanks to Amazon Prime it should arrive on Wed. My goal is to get OS X support going, as well as using this machine to host dedicated a dedicated VM for Ubuntu. I would like to get back to doing linux releases at roughly the same time as windows & OSX once everything starts to stabilize again.

As far as new features go, I'm starting the process of triaging and prioritizing requests, as long as there are no major issues with DT, I'll plan on a new release in the next month or so that will hopefully be adding OSX support, fixing linux support, and adding a few features. I'm aware that 0.6.12 is not backward compatible with 31.2x - I probably should have bumped the major version, I'll do that with the next release. game_data.ini has all of the profession & skill values - I would like to adjust it so that it isn't quite so version specific (or at least there can be multiple versions).

Hi all, kinda new here.  I've done a lot of C++ code modding Civ4, in particular working on the DuneWars mod, so I've done some compiling before, but I'm not having any luck with the DT source code right now.  I've cloned the repository to my computer using Hg and loaded the dwarftherapist.pro file in Qt (which this is my first time using, I've always worked in visual studios before), but upon trying to compile it (with no changes made) I get the following errors:
(http://img823.imageshack.us/img823/9320/image1wvq.jpg)

Is there something in Qt I'm missing or maybe an operating system issue (I'm running 64-bit windows 7 home premium)?  Just grasping at straws right now.  I'm wanting to get it compiling however to try to merge in the work shishimar did displaying physical attributes.  I've already tracked down the offsets for the physical attributes*:

Code: [Select]
physical_attrs=0x3E4
strength=0x3E4
toughness=0x41C
endurance=0x438
agility=0x400
recuperation=0x454
disease_resistance=0x470

...So the rest should be a pretty straight forward merge.  Personally I'd love to see this worked into the official version, it's so incredibly useful when picking out dwarves for the military.

*the official DT version only has the 'physical_attrs' tag, the others are only in the Shishimar version.  Changing the 'physical_attrs' to the correct value in 6.12 didn't have any effect when enabling the three physical attributes available for a grid view to show, they all just show '-1', so I'm assuming that they are disabled in the code as of now.
I'll take a look at the Shishimar version and see how difficult it will be to merge. As for building, there are issues with Qt 4.8.0 that I didn't want to get into right at the moment, so I would recommend installing the 4.7.4 version of Qt (Direct Link (http://ftp://ftp.qt.nokia.com/qt/source/qt-win-opensource-4.7.4-mingw.exe)) for now. You'll have to go into the project settings and switch the platform to Qt 4.7.4 (PM me if you have issues with this - it can be tricky to find)

@ DwarfEngineer: Thx for the new version!
Btw, I've seen how you solved the migration wave problem. Simple and effective. ;-)
Thanks, I do wish that I had arrived at this approach earlier, I spent way too long looking for history entries that probably weren't there (I now think that DF is just using the "turn count" for each dwarf to generate the "She arrived at Blarglefast on 21st Malachite, 251" statements)

Again, thanks everyone for the support. More updates to follow.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: chrisadams3997 on February 20, 2012, 10:48:12 am
Appreciate the response.  Unfortunately the link redirects to http://www.microfocus.com/products/rumba/rumba-product/index.aspx (http://www.microfocus.com/products/rumba/rumba-product/index.aspx) instead, so I'm SOL for now... lol.  The internet as a whole has always been bad about not keeping any access to older versions of software available like like, so no surprise, just unfortunate.  At a bare minimum I hoped to get the existing grid view strength, toughness, and agility columns displaying before I got too far into a game.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 20, 2012, 10:50:57 am
Appreciate the response.  Unfortunately the link redirects to http://www.microfocus.com/products/rumba/rumba-product/index.aspx (http://www.microfocus.com/products/rumba/rumba-product/index.aspx) instead, so I'm SOL for now... lol.  The internet as a whole has always been bad about not keeping any access to older versions of software available like like, so no surprise, just unfortunate.  At a bare minimum I hoped to get the existing grid view strength, toughness, and agility columns displaying before I got too far into a game.
The BBCode seems to be modifying the link. I'll spell it out - ftp://ftp.qt.nokia.com/qt/source/qt-win-opensource-4.7.4-mingw.exe
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Sutremaine on February 20, 2012, 12:05:22 pm
And currently, Dwarf Therapist is missing one; DF claims 52 dwarves (in both z-menu summary and unit list), and DT lists only 51. (I do have it set to show children abd babies, so those aren' the missing ones.)
Would it be possible to sort dwarves in DT in the same way they're sorted in the Unit screen? It'd make finding stragglers a lot easier.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: chrisadams3997 on February 20, 2012, 12:32:08 pm
That did the trick, I'll try another compile in a while here.  Thanks  8).
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Sorcerer on February 20, 2012, 12:48:31 pm
Thanks for all the hard work Engineer! Much appreciated!

Just wondering tho, is there any plans on adding caste support to DT in the future? currently it seems to only track gender as base caste or any other, so alot of mods with multiple castes will show up as 95% female in the list.

If actual caste name display is impossible, maybe change the gender display to be based off the [female] tag instead?
Title: Re: Dwarf Therapist
Post by: Auto Slaughter on February 20, 2012, 01:49:44 pm
DE, since you're looking at new features I just wanted to endorse this feature request (http://code.google.com/p/dwarftherapist/issues/detail?id=268), "Labor templates by profession".  I think that even a simplified version of it would be quite useful - I'd call it "custom labors" maybe but "labor templates" is a good name too: creating a new custom labor would create a new column of checkboxes and ticking the checkbox would just tick the related labors.  E.g., you could create a custom labor called "soapmaking tasks" that would group together Wood Burning, Lye Making, and Soapmaking and thereby let you turn all three on and off with a single click.

(So, sort of like the "Toggle [category] for This Dwarf" option that's available on right-click, but customizable.)

And as everyone else has been saying... thank you so much for putting all the effort in to work on DT, it makes DF so much easier to play!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Crustypeanut on February 20, 2012, 02:29:51 pm
Not sure if these have been mentioned, but:

 

Those are the only ones I've spotted so far, but keep up the great work DE!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Feb on February 20, 2012, 02:45:23 pm
If only DGCounsellor can be integrated into DT, it'd be perfect, but I'm already VERY happy with what I have atm <3
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Neyvn on February 20, 2012, 04:43:20 pm
Well this is annoying...

Migrants turning into Nightmare Creatures on arrival will still appear in the Therapist as Migrants, filling it up dispite the fact they are technically no longer part of the fort...
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: chrisadams3997 on February 20, 2012, 05:00:35 pm
And it works  :D

(http://img215.imageshack.us/img215/7718/image2hkk.jpg)

(http://img821.imageshack.us/img821/6683/image1krd.jpg)

(http://img687.imageshack.us/img687/3458/image3pb.jpg)

It's a straight merge of 6.12 with shishimar's added content, I didn't change a thing.  The only thing I'm missing is the current_year index, you'll see that if you look at the age displayed at the top of the second image.  If anyone can find that and if DE doesn't mind I can upload it for anyone who wants to use it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: SalmonGod on February 20, 2012, 05:06:54 pm
That's pretty awesome.  Would love to get my hands on it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Squee on February 20, 2012, 05:09:22 pm
Anyone got this working on OS X?  i mean, it IS *nix based afaik.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Maldevious on February 21, 2012, 08:52:32 am
And it works  :D

It's a straight merge of 6.12 with shishimar's added content, I didn't change a thing.  The only thing I'm missing is the current_year index, you'll see that if you look at the age displayed at the top of the second image.  If anyone can find that and if DE doesn't mind I can upload it for anyone who wants to use it.

Very interesting, that'd be quite handy.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: arclance on February 21, 2012, 01:27:12 pm
And it works  :D

It's a straight merge of 6.12 with shishimar's added content, I didn't change a thing.  The only thing I'm missing is the current_year index, you'll see that if you look at the age displayed at the top of the second image.  If anyone can find that and if DE doesn't mind I can upload it for anyone who wants to use it.
Very nice I would like that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: ChudDwarf on February 21, 2012, 01:36:07 pm
Revisiting my issue with Dwarf Therapist mis-counting my dwarves...

This is definitely not a vampire issue, for a number of reasons; in one case, DT was off by about two, I paused the game and restarted DT, and upon re-reading everything it was now off by four. This is a little unusual; more often, a re-read or restart will stay at the same error.

More tellingly though, I currently have a fortress just about to die at the end of a no-water-and-tantrum-spiral, and I was down to two dwarves, a hammerdwarf-turned-miner and a baby. DT did not detect the baby. Then my adult dwarf dies of thirst. DF still runs and reports I have one dwarf in the fortress, but when I ask DT to re-read the dwarves, it disconnects and claims that DF is no longer running.

At this point I quit DT, paused and saved my game (and made a copy in case anyone wants to look at it), continued it, and re-started DT, with the same result - can't connect, though DF runs with one baby dwarf left.

Maybe some migrants will arrive in the next day or two... :-)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Rinin_Rus on February 21, 2012, 02:19:42 pm
chrisadams3997, I think everyone here wanna your version =) I'm just downloaded QT, DT project and now feel relived coz I can use your version instead of finding own solution.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: BigD145 on February 21, 2012, 02:52:47 pm
And it works  :D


Do want.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: sumofallwars on February 21, 2012, 07:02:52 pm
Thanks for The Quick releases, Can't stand playing DF with out DT.

keep up the good work   :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: chrisadams3997 on February 21, 2012, 09:42:52 pm
Well, here's the Link to the DT 6.12/shishimar merge (http://www.mediafire.com/?fbc2b6z4dr8irgd) I did.  I've been using it for a few days without any problem, so anybody who wants to is free to use it. I've only found the windows offsets for the physical attributes, if someone on linux finds them I can update it.  I also haven't looked any further for the current year index, so that's still needed for windows and linux for it to display ages correctly. Here's a link for the source* (http://www.mediafire.com/?srsb93u8naj6ups) as well for anyone inclined to look.

And for those that missed this before, it adds in the physical attributes on the dwarf details pane as well as enables them to be shown in grid views (with strength, toughness, and endurance shown by default in the military grid view).  It also should handle gender/caste correctly.  None of the work is mine originally, I've just brought in what shishimar did for DT 6.10 into the new 6.12 version.

* I merged everything that shishimar added that didn't directly conflict with the 6.12 changes.  While most was directly related to the physical attributes and gender/caste handling, some of that added code was part of what looks like an incomplete attempt to add in the ability to list your tame animals and details about them that it looks like he didn't implement (as far as I've noticed so far, haven't seen anywhere to actually see your animals in the program.)  I left it in for expediency in case any of the code additions I wanted to actually bring in relied on some of that code, but if this is brought into an official version, that should probably be selectively culled out of it.  I also made no attempt to compare his methods adding these features in compared with how the code is otherwise organized and implemented, so again, for any merges with official versions, it'd be good to take a closer look at the actual implementation and make any changes needed for consistency.  But all that said, from a practical standpoint, it all seems to work perfectly with the new version, which is all I set out to do.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Ripolix on February 21, 2012, 10:01:44 pm
chrisadams3997, I think everyone here wanna your version =) I'm just downloaded QT, DT project and now feel relived coz I can use your version instead of finding own solution.

My eyes hurt.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: zwei on February 22, 2012, 04:07:03 am
Just FYI sound soundense: dropbox is slightly pissed off for abusing it do distribute so much data, so there is change of pack auto update location. This is, once again, current URL for automated update:

Code: [Select]
<autoUpdateURL path="http://df.zweistein.cz/soundsense/soundpack"/>
Sorry for inconvenience.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Kregoth on February 22, 2012, 04:47:43 am
Just FYI sound soundense: dropbox is slightly pissed off for abusing it do distribute so much data, so there is change of pack auto update location. This is, once again, current URL for automated update:

Code: [Select]
<autoUpdateURL path="http://df.zweistein.cz/soundsense/soundpack"/>
Sorry for inconvenience.

umm, did you mean to put that in the sound sense topic zwei? lol
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: ruetisiv on February 22, 2012, 05:13:39 am
Hi everyone... I have trouble installing DT on linux, I run Ubuntu 64bits.
Here is what I did :
Quote
hg clone https://code.google.com/p/dwarftherapist/
It creates a dwarftherapist folder with the source, memory files..;
cd dwarftherapist
qmake
make (it compile without error)
create the v0.34.02.ini in his folder
cd bin/release
./DwarfTherapist to run it
It run and closes instantly, I can see the window for maybe half of a second
How to install it correctly ?
Thanks in advance.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: zwei on February 22, 2012, 05:16:33 am
umm, did you mean to put that in the sound sense topic zwei? lol

Well, since SS in LNP is now configured to use update server that is no longer working, it very much belongs here :-)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Flobulon on February 22, 2012, 06:44:36 am
umm, did you mean to put that in the sound sense topic zwei? lol

Well, since SS in LNP is now configured to use update server that is no longer working, it very much belongs here :-)

This is the Dwarf Therapist thread, the LNP thread is http://www.bay12forums.com/smf/index.php?topic=59026.0 (http://www.bay12forums.com/smf/index.php?topic=59026.0)
 :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: zwei on February 22, 2012, 06:51:23 am
... This is the Dwarf Therapist thread, ...

... x.x ... oh, thanks. ... sigh
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: splinterz on February 22, 2012, 10:12:43 am
Well, here's the Link to the DT 6.12/shishimar merge (http://www.mediafire.com/?fbc2b6z4dr8irgd) I did.  I've been using it for a few days without any problem, so anybody who wants to is free to use it. I've only found the windows offsets for the physical attributes, if someone on linux finds them I can update it.  I also haven't looked any further for the current year index, so that's still needed for windows and linux for it to display ages correctly. Here's a link for the source* (http://www.mediafire.com/?srsb93u8naj6ups) as well for anyone inclined to look.

And for those that missed this before, it adds in the physical attributes on the dwarf details pane as well as enables them to be shown in grid views (with strength, toughness, and endurance shown by default in the military grid view).  It also should handle gender/caste correctly.  None of the work is mine originally, I've just brought in what shishimar did for DT 6.10 into the new 6.12 version.

* I merged everything that shishimar added that didn't directly conflict with the 6.12 changes.  While most was directly related to the physical attributes and gender/caste handling, some of that added code was part of what looks like an incomplete attempt to add in the ability to list your tame animals and details about them that it looks like he didn't implement (as far as I've noticed so far, haven't seen anywhere to actually see your animals in the program.)  I left it in for expediency in case any of the code additions I wanted to actually bring in relied on some of that code, but if this is brought into an official version, that should probably be selectively culled out of it.  I also made no attempt to compare his methods adding these features in compared with how the code is otherwise organized and implemented, so again, for any merges with official versions, it'd be good to take a closer look at the actual implementation and make any changes needed for consistency.  But all that said, from a practical standpoint, it all seems to work perfectly with the new version, which is all I set out to do.

after you mentioned the merge worked earlier in the thread i did the same thing! my version ended up being slightly different from yours though. i'm still curious to see your source but the link you've provided seems to be for another version?

anyway i've added my source and a description of changes here: http://code.google.com/r/splintermind-attributes/
here's the link to the zip if anyone wants to try it out: http://www.mediafire.com/?s9b9514c5wlznp0
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: kionmaru on February 22, 2012, 11:16:46 am
Hi everyone... I have trouble installing DT on linux, I run Ubuntu 64bits.
Here is what I did :
Quote
hg clone https://code.google.com/p/dwarftherapist/
It creates a dwarftherapist folder with the source, memory files..;
cd dwarftherapist
qmake
make (it compile without error)
create the v0.34.02.ini in his folder
cd bin/release
./DwarfTherapist to run it
It run and closes instantly, I can see the window for maybe half of a second
How to install it correctly ?
Thanks in advance.

If you run it from a console window, do you get any error output?
Can you make the log directory and give us output of the run.log?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: arclance on February 22, 2012, 11:26:28 am
* I merged everything that shishimar added that didn't directly conflict with the 6.12 changes.  While most was directly related to the physical attributes and gender/caste handling, some of that added code was part of what looks like an incomplete attempt to add in the ability to list your tame animals and details about them that it looks like he didn't implement (as far as I've noticed so far, haven't seen anywhere to actually see your animals in the program.)  I left it in for expediency in case any of the code additions I wanted to actually bring in relied on some of that code, but if this is brought into an official version, that should probably be selectively culled out of it.  I also made no attempt to compare his methods adding these features in compared with how the code is otherwise organized and implemented, so again, for any merges with official versions, it'd be good to take a closer look at the actual implementation and make any changes needed for consistency.  But all that said, from a practical standpoint, it all seems to work perfectly with the new version, which is all I set out to do.
The animal stuff is on a new tab you have to click this
(http://tnypic.net/56230.png)
and add the new tab.
shishimar never had it show up by default for some reason.

Hi everyone... I have trouble installing DT on linux, I run Ubuntu 64bits.
Here is what I did :
Quote
hg clone https://code.google.com/p/dwarftherapist/
It creates a dwarftherapist folder with the source, memory files..;
cd dwarftherapist
qmake
make (it compile without error)
create the v0.34.02.ini in his folder
cd bin/release
./DwarfTherapist to run it
It run and closes instantly, I can see the window for maybe half of a second
How to install it correctly ?
Thanks in advance.
There are instructions for building in linux here if you have not seen them already. (https://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist)
You did not install the .ini correctly for one thing.
First you need to copy the etc directory to bin/release and then put the v0.34.02.ini in bin/release/etc/memory_layouts/linux.
Also you need to make a directory "log" in bin/release or it will crash at startup if you want to read logs if something goes wrong.
You may need to run using
sudo ./DwarfTherapist
to get around a security feature (to prevent memory hacking) in Ubuntu as well.
It is working for me in Ubuntu 11.04 64bit, what version of Ubuntu are you using?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: chrisadams3997 on February 22, 2012, 12:24:52 pm
Quote
The animal stuff is on a new tab you have to click this

and add the new tab.
shishimar never had it show up by default for some reason.

Ah, missed that.  In that case, it shows your animals too, lol.

Quote
i'm still curious to see your source but the link you've provided seems to be for another version?

Yea, not quite used to Hg as opposed to Svn yet, didn't quite do what I expected trying to do something like SVN's 'export'.  Anyway, I updated the link with the proper source (http://www.mediafire.com/?srsb93u8naj6ups).

edit:
Looked at what you did just now and diffed the sources, mostly cosmetic differences.
Quote
- updated the default views to include all attributes on the military tab
I changed the view to show all six at first too, but man it clutters it up so that it's a lot harder to read, in my opinion, I changed it back in a hurry.  Endurance, healing, and disease resistance are best left in the details pane I think, from a readability and usability standpoint.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: splinterz on February 22, 2012, 01:02:43 pm

edit:
Looked at what you did just now and diffed the sources, mostly cosmetic differences.
Quote
- updated the default views to include all attributes on the military tab
I changed the view to show all six at first too, but man it clutters it up so that it's a lot harder to read, in my opinion, I changed it back in a hurry.  Endurance, healing, and disease resistance are best left in the details pane I think, from a readability and usability standpoint.

I just did a quick diff myself after you posted the new source file, the few differences are indeed cosmetic. The columns didn't bother me though, I've already got a billion of them on the labour tab so 3 more on the military tab didn't phase me. :P Ah well to each their own.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: ruetisiv on February 22, 2012, 04:16:28 pm
Hi everyone... I have trouble installing DT on linux, I run Ubuntu 64bits.
Here is what I did :
Quote
hg clone https://code.google.com/p/dwarftherapist/
It creates a dwarftherapist folder with the source, memory files..;
cd dwarftherapist
qmake
make (it compile without error)
create the v0.34.02.ini in his folder
cd bin/release
./DwarfTherapist to run it
It run and closes instantly, I can see the window for maybe half of a second
How to install it correctly ?
Thanks in advance.
There are instructions for building in linux here if you have not seen them already. (https://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist)
You did not install the .ini correctly for one thing.
First you need to copy the etc directory to bin/release and then put the v0.34.02.ini in bin/release/etc/memory_layouts/linux.
Also you need to make a directory "log" in bin/release or it will crash at startup if you want to read logs if something goes wrong.
You may need to run using
sudo ./DwarfTherapist
to get around a security feature (to prevent memory hacking) in Ubuntu as well.
It is working for me in Ubuntu 11.04 64bit, what version of Ubuntu are you using?

Thanks a lot, it works now ! Moving the etc/ folder did the trick.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: arclance on February 22, 2012, 04:35:57 pm

edit:
Looked at what you did just now and diffed the sources, mostly cosmetic differences.
Quote
- updated the default views to include all attributes on the military tab
I changed the view to show all six at first too, but man it clutters it up so that it's a lot harder to read, in my opinion, I changed it back in a hurry.  Endurance, healing, and disease resistance are best left in the details pane I think, from a readability and usability standpoint.

I just did a quick diff myself after you posted the new source file, the few differences are indeed cosmetic. The columns didn't bother me though, I've already got a billion of them on the labour tab so 3 more on the military tab didn't phase me. :P Ah well to each their own.
I like the columns better myself, it makes it easier to pick the strongest dwarfs and put them in the military without having to read the dwarf details for hundreds of dwarfs in a mature fortress.
Your version builds and runs fine on Ubuntu 11.04, now I just need the offsets for the new stuff.

I got the physical attributes for v0.34.02 Linux
Code: [Select]
strength=0x328
agility=0x344
toughness=0x360
endurance=0x37C
recuperation=0x398
disease_resistance=0x3B4

(http://tnypic.net/6b40b.png)

Thanks a lot, it works now ! Moving the etc/ folder did the trick.
Your welcome.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 22, 2012, 08:55:19 pm
Mac Mini is in. Trying to get it setup in headless mode so I can remote VNC instead of having it hooked up all the time. I'm out of town this weekend, but OSX support is a top priority.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Pyriklos on February 22, 2012, 11:03:09 pm
Hi everyone... I have trouble installing DT on linux, I run Ubuntu 64bits.
Here is what I did :
Quote
hg clone https://code.google.com/p/dwarftherapist/
It creates a dwarftherapist folder with the source, memory files..;
cd dwarftherapist
qmake
make (it compile without error)
create the v0.34.02.ini in his folder
cd bin/release
./DwarfTherapist to run it
It run and closes instantly, I can see the window for maybe half of a second
How to install it correctly ?
Thanks in advance.
There are instructions for building in linux here if you have not seen them already. (https://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist)
You did not install the .ini correctly for one thing.
First you need to copy the etc directory to bin/release and then put the v0.34.02.ini in bin/release/etc/memory_layouts/linux.
Also you need to make a directory "log" in bin/release or it will crash at startup if you want to read logs if something goes wrong.
You may need to run using
sudo ./DwarfTherapist
to get around a security feature (to prevent memory hacking) in Ubuntu as well.
It is working for me in Ubuntu 11.04 64bit, what version of Ubuntu are you using?

I just created a forum account to say how truly grateful I am for you advise. I've been trying to compile from source and make it work since the DF v0.34.02 came out with no luck. Yesterday gave up and went back to using notes. Now just by moving the "etc" to the right place it all works without a hitch. This was my first ever trying to compile anything from source too :)
Thank you so much!!!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Girlinhat on February 23, 2012, 01:47:50 am
Suggestion: Allow renaming multiple dwarves at once.  When I get a migrant wave, I find the useful ones, shuffle labor a little, and have a lot of haulers left over.  I name them all to "Blank" so I can easily find any Blank to fill a new job.  Trouble is running through each useless migrant and renaming them.  If I could select multiple dwarves and give them all a nickname at once, this would make things entirely easier, and honestly I'm not sure why this isn't allowed anyways.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: schismatise on February 23, 2012, 02:09:49 am
Suggestion: Allow renaming multiple dwarves at once.  When I get a migrant wave, I find the useful ones, shuffle labor a little, and have a lot of haulers left over.  I name them all to "Blank" so I can easily find any Blank to fill a new job.  Trouble is running through each useless migrant and renaming them.  If I could select multiple dwarves and give them all a nickname at once, this would make things entirely easier, and honestly I'm not sure why this isn't allowed anyways.

I'm not sure about nicknames, but you can click-and-drag to select multiple dwarves, and then right-click to assign a custom profession, which then shows up in game. I actually didn't know this until quite recently, heh. Makes assigning new migrant waves as haulers much easier.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Girlinhat on February 23, 2012, 02:23:56 am
I know about that, but I usually work off nickname.  When you try to assign multiple dwarves a nickname, it says something like "Whoa there cowboy, slow down!  You can only do that one at a time!"
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Neyvn on February 23, 2012, 02:34:20 am
So anyone actual know how to fix the Therapist from trying to tell you you still have Dwarves to play with even though they are now Husks or such.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Yaotzin on February 23, 2012, 06:17:19 am
If you manage to include all the dorf attributes and traits, AND something like the guidance counselor, that would be awesome. Or perhaps a menu of professions, which highlights the stats that matter for that job. Something like that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Kogut on February 23, 2012, 06:27:40 am
Btw, when changing nicknames, it is necessary to update all three of the unit, soul, and the historical figure entry like the game does (plus of course the assumed identity now); otherwise it is inconsistent, and the most likely cause of the long known quirk of military members losing their DT nicknames from time to time.
Please, please fix this bug
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: MarcAFK on February 23, 2012, 06:47:21 am
I can't get the new version to run, it gives me some "the application configuration is incorrect" error,
however Therapist 0.6.9 with the new memory layout added seems to work OK, I'll see if it's buggy.
Edit: Firstly the Migration wave order is off, but not a bug deal really., my starting 7 seem to be wave 6.
Edit: CHildren show up as Pressers, so i'll have no problem sorting my dwarves, i'll just leave it on sort by profession and look at the pressers closer, when they arrive their labours are all off anyway.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: splinterz on February 23, 2012, 07:51:13 am
I know about that, but I usually work off nickname.  When you try to assign multiple dwarves a nickname, it says something like "Whoa there cowboy, slow down!  You can only do that one at a time!"

It seems like this should be possible. I did a quick hack this morning to allow it to loop through and set the specified nickname to all selected dwarves and I haven't noticed any issues with it yet. I didn't see any comments in the code as to why it was only allowing one at a time. Give it a try if you'd like. (http://www.mediafire.com/?3ncddpwwezzc2qt)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Meph on February 23, 2012, 09:50:18 am
Hi,

Genesis used a patch that detects the caste system, by adding another sorting option, which uses the castes. It was really easy to use and mod, and I made my own version for my mod. Of course it does not work with the new Therapist, so I wanted to ask if anyone knows how to do this ?

I had a file called caste_default.txt in DwarfTherapist/etc folder.
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Sutremaine on February 23, 2012, 10:49:03 am
How do I view dwarf details in the merged version? It displays the 1-7 number in the attributes column, but I can't access a dwarf's exact stats. I've tried right-clicking on the dwarf's name and selecting Show Details, and I've tried double-clicking the dwarf's name.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: chrisadams3997 on February 23, 2012, 11:50:38 am
Make sure you have the 'Dwarf Details' pane displayed by going to Windows>Docks>Dwarf Details, and make sure it's not hidden behind the 'Pending Changes' tab on the right side of the screen.  See this image: http://imageshack.us/photo/my-images/607/image1ub.jpg/, and notice that dwarf details and pending changes are arranged in two tabs with one or the other showing.  Hope that helps  :).
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Sutremaine on February 23, 2012, 02:17:32 pm
Okay, it turns out the box was there all the time, floating on my second monitor that wasn't turned on. I've got the thing docked now.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Poldon on February 23, 2012, 02:57:31 pm
I am also having a problem having an incorrect number of dwarfs. I just had an immigration wave that DT reported as 28 strong, which had me rather worried. However, only about 10 immigrants actually arrived, one of whom is a ghost (he doesn't even show up in DT). So now I have no idea without cross-referencing which dwarfs are actually in the game.

Before this wave, I was already having some issues, namely DT saying 17 total but counting 6 in a group that actually only consisted of 4 (I always sort by immigration wave).

Other than these issues I have had 4 children in a row kidnapped, in case that can contribute to the funkiness.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: O11O1 on February 23, 2012, 07:16:09 pm
When Therapist hits a vampire dorf, does it read his real name or his identity?

If the former, would it have trouble editing that dorf's labors?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: vityav on February 23, 2012, 10:39:35 pm
When Therapist hits a vampire dorf, does it read his real name or his identity?

If the former, would it have trouble editing that dorf's labors?

I was just going to come post a bug about this dwarf showing up with the wrong name, but realized with your post (and many former memberships) that she was a vampire.

To answer your second question: I just tested it and DT changes the labors just fine.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: splinterz on February 24, 2012, 06:50:58 am
...I also haven't looked any further for the current year index, so that's still needed for windows and linux for it to display ages correctly...

for windows: current_year=0xfd31f0
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: chrisadams3997 on February 24, 2012, 05:15:12 pm
Awesome find
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Jerg on February 25, 2012, 06:00:12 am
Could the physical traits (disease resistance, endurance, strength, agility, recovery rate, etc) be added into the newest DT? Someone modded it in in an earlier version but that's not compatible any more.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: TeleDwarf on February 25, 2012, 06:53:10 am
When Therapist hits a vampire dorf, does it read his real name or his identity?

If the former, would it have trouble editing that dorf's labors?

I was just going to come post a bug about this dwarf showing up with the wrong name, but realized with your post (and many former memberships) that she was a vampire.

Will this bug be fixed? I do not like this cheaty way to discover vampires, It breaks all the investigation fun for me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: schismatise on February 25, 2012, 09:59:01 am
When Therapist hits a vampire dorf, does it read his real name or his identity?

If the former, would it have trouble editing that dorf's labors?

I was just going to come post a bug about this dwarf showing up with the wrong name, but realized with your post (and many former memberships) that she was a vampire.

Will this bug be fixed? I do not like this cheaty way to discover vampires, It breaks all the investigation fun for me.

This bug exists in Dwarf Fortress, not Dwarf Therapist, and if you read the news posted on bay12games.com, you will see that it is already fixed in the next version (not out yet as of this post).
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: TeleDwarf on February 25, 2012, 10:30:42 am
This bug exists in Dwarf Fortress, not Dwarf Therapist, and if you read the news posted on bay12games.com, you will see that it is already fixed in the next version (not out yet as of this post).

Thank you.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: ag on February 25, 2012, 01:08:01 pm
This bug exists in Dwarf Fortress, not Dwarf Therapist, and if you read the news posted on bay12games.com, you will see that it is already fixed in the next version (not out yet as of this post).

This bug exists in Dwarf Fortress too - but unless Toady changed the way vampire identities are stored in memory, DT will have to fix it on its own: currently the displayed vampire identity name is kept completely separate and not mirrored to the usual unit name fields. I handled this in DFHack's rename unit command, but it involves several data structures completely new to DT.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Kaos on February 25, 2012, 08:18:57 pm
Make sure you have the 'Dwarf Details' pane displayed by going to Windows>Docks>Dwarf Details, and make sure it's not hidden behind the 'Pending Changes' tab on the right side of the screen.  See this image: http://imageshack.us/photo/my-images/607/image1ub.jpg/ (http://imageshack.us/photo/my-images/607/image1ub.jpg/), and notice that dwarf details and pending changes are arranged in two tabs with one or the other showing.  Hope that helps  :) .
Uh?? is this new? the dwarf attributes showing in the details screen, I mean... Mine only shows happiness I'm using version 0.6.11
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: schismatise on February 25, 2012, 11:07:02 pm
This bug exists in Dwarf Fortress, not Dwarf Therapist, and if you read the news posted on bay12games.com, you will see that it is already fixed in the next version (not out yet as of this post).

This bug exists in Dwarf Fortress too - but unless Toady changed the way vampire identities are stored in memory, DT will have to fix it on its own: currently the displayed vampire identity name is kept completely separate and not mirrored to the usual unit name fields. I handled this in DFHack's rename unit command, but it involves several data structures completely new to DT.

Oh, right, yes, fair enough, i could have worded that better. I mean, i was thinking of that more as a new feature that needs supporting as opposed to a "bug" you need to "fix", but considering the effect is identical i suppose the point is moot. I guess i was just trying to say that the issue will probably be sorted out soon, here's hoping.

Make sure you have the 'Dwarf Details' pane displayed by going to Windows>Docks>Dwarf Details, and make sure it's not hidden behind the 'Pending Changes' tab on the right side of the screen.  See this image: http://imageshack.us/photo/my-images/607/image1ub.jpg/ (http://imageshack.us/photo/my-images/607/image1ub.jpg/), and notice that dwarf details and pending changes are arranged in two tabs with one or the other showing.  Hope that helps  :) .
Uh?? is this new? the dwarf attributes showing in the details screen, I mean... Mine only shows happiness I'm using version 0.6.11

See this post (http://www.bay12forums.com/smf/index.php?topic=66525.msg3020672#msg3020672).
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: UnHerpers on February 27, 2012, 01:59:44 pm
I've noticed a bug, I captured a few necromancers in cages, and one was a dwarf. He shows up in my DT and it gives me control of him and things, even nicknaming and that.
(http://img208.imageshack.us/img208/6454/buggynecromancer.jpg)
(http://img689.imageshack.us/img689/8761/buggynecromancer2.jpg)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Mozleron on February 28, 2012, 03:20:15 am
I've been playing around with the Script Editor for finding out which of my Dwarves actually have any (useful/non-default) labors enabled, among other filtering tasks, and am wondering where the scripts themselves are stored.  I see that there is probably supposed to be a menu option to edit existing scripts, but that menu appears to be disabled at the moment.  In Lieu of that working, where do the scripts get stored between executions of DT?  I'd like to go back and tinker with one i've already written, but don't exactly recall what all i put into it.

Thanks,

~Moz
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: splinterz on February 28, 2012, 11:31:21 am
I've made a few more updates to the branch I've been playing around with:
  - added all the soul's mental attributes (spatial sense, focus, willpower, etc..)
  - added a new default tab for the added attributes (includes both physical and mental together)
  - added an additional option to draw the header text from bottom to top
  - slightly tweaked the threshold for traits so more of them are visible
  - fixed a bug when applying filters while hiding children/babies
  - included the current year offset so ages show up properly

you can download it here (http://www.mediafire.com/?ol8ekv9julldoqv) and view the source code here (http://code.google.com/r/splintermind-attributes/)

(http://farm8.staticflickr.com/7204/6938542879_078f96b49b.jpg)



I've been playing around with the Script Editor for finding out which of my Dwarves actually have any (useful/non-default) labors enabled, among other filtering tasks, and am wondering where the scripts themselves are stored.  I see that there is probably supposed to be a menu option to edit existing scripts, but that menu appears to be disabled at the moment.  In Lieu of that working, where do the scripts get stored between executions of DT?  I'd like to go back and tinker with one i've already written, but don't exactly recall what all i put into it.

Thanks,

~Moz

These are the various base locations for the Dwarf Therapist settings:
Windows - %APPDATA% OR %COMMON_APPDATA%
Linux   - $HOME/Settings OR /etc/xdg
Mac OS X - $HOME/.config OR /etc/xdg

Inside the above location you should see a UDP Software directory, and within that is the settings file.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: spook54321 on February 28, 2012, 11:34:26 am
Nooooooo!  latest version broke it again... :'(
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: splinterz on February 28, 2012, 11:40:27 am
Nooooooo!  latest version broke it again... :'(

sonofa... i'm going to need more coffee...
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Spotty on February 28, 2012, 12:00:45 pm
Looking forward to a 34.03-compatible update with bated breath.  Profuse thanks in advance.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 28, 2012, 12:11:08 pm
Looking forward to a 34.03-compatible update with bated breath.  Profuse thanks in advance.
Unfortunately I won't be able to post an update until I get done with work - around 4:30 CST. Hopefully there's no major offset changes.

Splinterz, can you elaborate on how you're finding the offset for current year? If I have a reliable way of finding that, I'll work on incorporating your changes into the official build.

Thanks
-DE
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: nightwhips on February 28, 2012, 12:18:49 pm
Mac Mini is in. Trying to get it setup in headless mode so I can remote VNC instead of having it hooked up all the time. I'm out of town this weekend, but OSX support is a top priority.

Looking forward to this! Keep us posted!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Spotty on February 28, 2012, 12:28:48 pm
Unfortunately I won't be able to post an update until I get done with work - around 4:30 CST. Hopefully there's no major offset changes.

Hey, no big hurry on my account, I actually am still breathing normally, that was just an idiom.  :P  Thanks for posting, though, it's really nice to know what time to not bother checking before.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: HammerDave on February 28, 2012, 01:44:28 pm
Here is a POSSIBLE layout for 34.03 Windows Graphics.

Use at your own risk.  I managed to set metalcrafting on one dwarf.  Gotta get ready for work.  Unfortunately I can't just pull a mood and blow it off.   ;)

Code: [Select]
[info]
checksum=0x4f4cd85b
version_name=v0.34.03 (graphics)
complete=true

[addresses]
translation_vector=0x017dd65c
language_vector=0x017dd63c
creature_vector=0x01799748
dwarf_race_index=0x015c5ebc
squad_vector=0x017d7a48

[offsets]
word_table=0x0000003c
string_buffer_offset=0x0000

[word_offsets]
base=0x0000
noun_singular=0x001C
noun_plural=0x0038
adjective=0x0054
verb=0x008C
present_simple_verb=0x00A8
past_simple_verb=0x00C4
past_participle_verb=0x00E0
present_participle_verb=0x00FC

[dwarf_offsets]
first_name=0x0000
nick_name=0x001C
last_name=0x0038
custom_profession=0x006C
profession=0x0088
race=0x008C
flags1=0x00E0
flags2=0x00E4
sex=0x00F8
id=0x00FC
recheck_equipment=0x01C0
birth_year=0x022C
current_job=0x030C
physical_attrs=0x3C4
turn_count=0x0668
states=0x06BC
souls=0x0764
likes=0x07A0
labors=0x078C
squad_ref_id=0x08AC
happiness=0x082C

[soul_details]
skills=0x0200
traits=0x0224

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x003C
members=0x0088

[position_offsets]
token=0x0000
flags=0x0020
general_name_singular=0x00E8
general_name_plural=0x0104
male_name_singular=0x0158
male_name_plural=0x0174
female_name_singluar=0x0120
female_name_plural=0x013C
custom_color_red=0x0382
custom_color_green=0x0380

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: kionmaru on February 28, 2012, 04:31:12 pm
*yawns* g'morning folks.

ooooh, new df.. Let me see if I can get linux 0.6.12 working with it.

Here we go; this one is working for me:

Code: [Select]
[info]
checksum=0x5502e97b
version_name=v0.34.03
complete=true

[addresses]
translation_vector=0x095cdbfc
language_vector=0x095cdbe4
creature_vector=0x0958c8ac
dwarf_race_index=0x09574240
squad_vector=0x095ca7b4

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0148
current_job=0x0274
turn_count=0x052b
states=0x0
souls=0x05e8
labors=0x0604
happiness=0x0694
squad_ref_id=0x06f8

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: SalmonGod on February 28, 2012, 05:19:21 pm
I've made a few more updates to the branch I've been playing around with:

This looks fantastic.  Can't wait to try it on 34.03 :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 28, 2012, 05:39:52 pm
v34.03 is out!

New layouts have been posted for 34.03 (windows). They should download automatically the next time you start therapist with dwarf fortress running.

If you have check for updates turned off or otherwise want to download the layouts manually, they're available here:
Windows v0.34.03 (graphics) (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.03_graphics.ini)
Windows v0.34.03 (legacy) (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.03_legacy.ini)
(Right-click, Save As...)

I have my OSX development environment setup, and it's compiling and running on OSX, so I can begin adding back in all of the necessary functionality. I'm working on it whenever I have a free moment. I'm also prioritizing bugfixes and features for the next full DT release. I'll be interested to see if the vampire issue is fixed in 34.03, or if work still needs to be done in Therapist. Again, I'm looking for saves with weird behavior.

Thanks,
-DE
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Lysabild on February 28, 2012, 06:08:54 pm
You're awesome, considering throwing you 5 more dollarhs.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Girlinhat on February 28, 2012, 06:29:42 pm
This is... funky.  First noticed that all attributes show up as "15" which is clearly a bug but I don't use that very much, so meh.

Secondly noticed that it counts 31 dwarves, displays 11, and my population is 15.  The 4 other dwarves are all adults and show no spectacular features, they simply don't show up in Therapist's list.  This was after one migrant wave, where some appeared on Therapist and the 4 others did not.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 28, 2012, 06:48:38 pm
This is... funky.  First noticed that all attributes show up as "15" which is clearly a bug but I don't use that very much, so meh.

Secondly noticed that it counts 31 dwarves, displays 11, and my population is 15.  The 4 other dwarves are all adults and show no spectacular features, they simply don't show up in Therapist's list.  This was after one migrant wave, where some appeared on Therapist and the 4 others did not.
Could you post your fort on dffd please? I'll take a look at it tonight when I get a chance. (Haven't had a chance to actually play yet)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Weaselcake on February 28, 2012, 06:59:15 pm
You should probably update the thread title as well..
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: nenjin on February 28, 2012, 07:01:32 pm
That would probably be prudent.

Quote
I've made a few more updates to the branch I've been playing around with:
  - added all the soul's mental attributes (spatial sense, focus, willpower, etc..)
  - added a new default tab for the added attributes (includes both physical and mental together)
  - added an additional option to draw the header text from bottom to top
  - slightly tweaked the threshold for traits so more of them are visible
  - fixed a bug when applying filters while hiding children/babies
  - included the current year offset so ages show up properly

(image)

you can download it here and view the source code here


Much <3. I've been waiting for complete attribute displays in Therapist so I can make some educated assignments for migrants, without having to go screen...by screen....by screen. Since the chmod days. So, many thank yous!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Girlinhat on February 28, 2012, 07:06:58 pm
http://dffd.wimbli.com/file.php?id=5730
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: splinterz on February 28, 2012, 07:33:37 pm
That would probably be prudent.

Quote
I've made a few more updates to the branch I've been playing around with:
  - added all the soul's mental attributes (spatial sense, focus, willpower, etc..)
  - added a new default tab for the added attributes (includes both physical and mental together)
  - added an additional option to draw the header text from bottom to top
  - slightly tweaked the threshold for traits so more of them are visible
  - fixed a bug when applying filters while hiding children/babies
  - included the current year offset so ages show up properly

(image)

you can download it here and view the source code here


Much <3. I've been waiting for complete attribute displays in Therapist so I can make some educated assignments for migrants, without having to go screen...by screen....by screen. Since the chmod days. So, many thank yous!

yeah that's always driven me crazy as well. it's still a work in progress though. some of the attributes aren't quite scaled properly with the ratings yet, and i think this last released swapped the order of some of them around but i'll keep tinkering with it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Neyvn on February 28, 2012, 07:47:38 pm
So to be clear, have we fixed the problem of Turned *Undead/Evil Rain* Dwarves still appearing in the Therapist???
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: chrisadams3997 on February 28, 2012, 08:57:34 pm
Quote
I've made a few more updates to the branch I've been playing around with:
  - added all the soul's mental attributes (spatial sense, focus, willpower, etc..)

I had this funny feeling you'd take a run at adding them in.  It's what I'd have done if I still had the time these days ;).

Quote
Splinterz, can you elaborate on how you're finding the offset for current year? If I have a reliable way of finding that, I'll work on incorporating your changes into the official build.

I'll be looking forward to that.  As always, thanks for all your hard work on this program DE.  It's really appreciated.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 28, 2012, 09:01:06 pm
This is... funky.  First noticed that all attributes show up as "15" which is clearly a bug but I don't use that very much, so meh.

Secondly noticed that it counts 31 dwarves, displays 11, and my population is 15.  The 4 other dwarves are all adults and show no spectacular features, they simply don't show up in Therapist's list.  This was after one migrant wave, where some appeared on Therapist and the 4 others did not.
Hmm, not seeing quite the same thing - loading from your save it's displaying 12 out of your 15. Not seeing an issue with the attributes either.
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 28, 2012, 09:10:51 pm
Alright, well got to the bottom of why vampires aren't showing up - the flag that Therapist uses to detect ghosts is also set for vampires. Guess that means I need a fortress with ghosts again as well. Help would be appreciated, otherwise I'll be working on generating one as well.

Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: Girlinhat on February 28, 2012, 09:23:30 pm
My save had a doctor die.  If you keep it running it should produce a ghost in due time.  The fact that I got 3-4 vampires in a wave of 9 is astonishing.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: DwarfEngineer on February 28, 2012, 09:25:20 pm
My save had a doctor die.  If you keep it running it should produce a ghost in due time.  The fact that I got 3-4 vampires in a wave of 9 is astonishing.
I'm actually not positive on that - it's weird, if I let the game advance a few seconds all 15 dwarves show up, so I'm thinking that flag is completely bogus.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: Girlinhat on February 28, 2012, 09:33:14 pm
Curious.  I just turned DF back on and now the dwarves are showing up as expected.  Although it still shows 35 at the top and lists 15, this is on a slightly modded version that allows for renaming multiple dwarves at once.  The original download shows the correct number at the top.  Not that I care much, I consult the Z screen to view my population layout.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Kaos on February 28, 2012, 09:45:48 pm
See this post (http://www.bay12forums.com/smf/index.php?topic=66525.msg3020672#msg3020672).
I'm confused... there are two versions of DT now? one vanilla as published on the OP, and a "merged" one that shows the extra attributes?? merged with what?


And from the last posts it seems its getting integrated in the new version? was that a beta version or something?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: orius on February 28, 2012, 10:57:06 pm
The fact that I got 3-4 vampires in a wave of 9 is astonishing.

You know how dwarves sometimes bring plenty of livestock with them when they immigrate?  The vamps are just doing the same thing....
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: Girlinhat on February 28, 2012, 11:02:11 pm
Ha-HA!  Well played Orius!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: Akhram on February 28, 2012, 11:05:49 pm
do filter scripts actually works?

looking for a manager, doesnt filter anything :(
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: orius on February 28, 2012, 11:48:25 pm
Ha-HA!  Well played Orius!

One of the things I love about this game is the way one can sometimes rationalize the most random and bizarre stuff that happens.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Neyvn on February 28, 2012, 11:50:28 pm
So to be clear, have we fixed the problem of Turned *Undead/Evil Rain* Dwarves still appearing in the Therapist???
So no answer???
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: DwarfEngineer on February 28, 2012, 11:53:38 pm
So to be clear, have we fixed the problem of Turned *Undead/Evil Rain* Dwarves still appearing in the Therapist???
So no answer???
No answer yet. I need a save file from 34.03 with the condition, if possible.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: kionmaru on February 29, 2012, 12:21:43 am
O hai, new DF version out - v0.34.04 due to a crash on save issue.

Here's your fresh 0.6.12 dt ini file (for Linux):

Code: [Select]
[info]
checksum=0x6c11a27c
version_name=v0.34.04
complete=true

[addresses]
translation_vector=0x095cdbfc
language_vector=0x095cdbe4
creature_vector=0x0958c8ac
dwarf_race_index=0x09574240
squad_vector=0x095ca7b4

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0148
current_job=0x0274
turn_count=0x052b
states=0x0
souls=0x05e8
labors=0x0604
happiness=0x0694
squad_ref_id=0x06f8

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

Hope this helps ^^
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: Neyvn on February 29, 2012, 12:28:33 am
So to be clear, have we fixed the problem of Turned *Undead/Evil Rain* Dwarves still appearing in the Therapist???
So no answer???
No answer yet. I need a save file from 34.03 with the condition, if possible.
Well there is a 34.02 one. Let me go get it...

There we go...
http://dffd.wimbli.com/file.php?id=5629
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: Mattias on February 29, 2012, 03:52:17 am
O hai, new DF version out - v0.34.04 due to a crash on save issue.

Here's your fresh 0.6.12 dt ini file (for Linux):

Code: [Select]
[info]
checksum=0x6c11a27c
version_name=v0.34.04
complete=true

[addresses]
translation_vector=0x095cdbfc
language_vector=0x095cdbe4
creature_vector=0x0958c8ac
dwarf_race_index=0x09574240
squad_vector=0x095ca7b4

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0148
current_job=0x0274
turn_count=0x052b
states=0x0
souls=0x05e8
labors=0x0604
happiness=0x0694
squad_ref_id=0x06f8

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

Hope this helps ^^

I tried scanning the memory myself and I get the same values as you except I get zeroed out translation_vector and creature_vector... somehow it can't find them. And then I tried yours but it won't work somehow, it errors out with that it finds nothing, no dwarves or creatures.
Had it work fine in .02 somehow.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: kionmaru on February 29, 2012, 04:23:30 am
@Mattias,

change complete=true to complete=false and try to run it that way. Also, make sure you're running 0.34.04 and not 0.34.03 from this morning. And you're running DT 0.6.12, not one of the modified source trees but DE's version.

Can you make the log directory and get me the run.log from it failing?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: Mattias on February 29, 2012, 05:05:05 am
@Mattias,

change complete=true to complete=false and try to run it that way. Also, make sure you're running 0.34.04 and not 0.34.03 from this morning. And you're running DT 0.6.12, not one of the modified source trees but DE's version.

Can you make the log directory and get me the run.log from it failing?

I'll try that in around 30 minutes. I'm running dwarftherapist-hg version. Will also try latest stable if complete=false does not work. Will modify this post with results after.

EDIT:
Ok so.. I tried with complete=false but that didn't change much. And I am running .04 (actually had the same problem in .03 before .04 was released).
Here is the run.log with complete=false turned on (which is pretty much identical to complete=true):
http://pastebin.com/7zxipDU0
I'm not sure what I'm doing wrong, is my huge 24gb mem confusing DT? :P

EDIT2: apparently I failed to copy it somehow and the creature_vector was wrong, to let everyone know, that memory layout file does work ^.^
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: ag on February 29, 2012, 05:13:08 am
I'm actually not positive on that - it's weird, if I let the game advance a few seconds all 15 dwarves show up, so I'm thinking that flag is completely bogus.

I strongly suggest you consult DFHack data before trying to randomly change stuff. For instance, there is a third flag variable, and the real ghost flag is there.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: kionmaru on February 29, 2012, 05:47:57 am
@Mattias,

Erm, there are only four commits to DE's mercurial since 0.6.12, and I wonder if 518:31cf068fc895 doesn't include an offset I don't have (for ghost flag).

I went ahead and updated to his current hg, see if I can't repliacte.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/18/12 see first post)
Post by: schismatise on February 29, 2012, 06:40:01 am
See this post (http://www.bay12forums.com/smf/index.php?topic=66525.msg3020672#msg3020672).
I'm confused... there are two versions of DT now? one vanilla as published on the OP, and a "merged" one that shows the extra attributes?? merged with what?


And from the last posts it seems its getting integrated in the new version? was that a beta version or something?

I was hoping you'd do a little more reading and figure it out on your own :P no worries though. Basically, the source code has been apparently shared and several people, who have some experience with such things, have created their own version of DT in order to add/fix bugs/features that they felt was worth doing. I believe one or 2 were related to providing Mac/Linux support.

My advice to you (and probably anyone else who's wondering) is to stick with the main releases by Dwarf Engineer. Sounds like there's a pretty good chance he's going to look at incorporating the community features/bugfixes anyway, which is always nice. Thanks, Dwarf Engineer!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: Daecor on February 29, 2012, 07:12:47 am
I'm new to this (new to DF for that matter)

but messing around with DT this is the layout that i've come up with and it seems to work for me on windows so i thought i would share

Code: [Select]
[info]
checksum=0x4f4d9726
version_name=v0.34.04 (graphics)
complete=true

[addresses]
translation_vector=0x017dd65c
language_vector=0x017dd63c
creature_vector=0x01799748
dwarf_race_index=0x015c5ebc
squad_vector=0x015cb24c

[offsets]
word_table=0x0000003c
string_buffer_offset=0x0000

[word_offsets]
base=0x0000
noun_singular=0x001C
noun_plural=0x0038
adjective=0x0054
verb=0x008C
present_simple_verb=0x00A8
past_simple_verb=0x00C4
past_participle_verb=0x00E0
present_participle_verb=0x00FC

[dwarf_offsets]
first_name=0x0000
nick_name=0x001C
last_name=0x0038
custom_profession=0x006C
profession=0x0088
race=0x008C
flags1=0x00E0
flags2=0x00E4
sex=0x00F8
id=0x00FC
recheck_equipment=0x01C0
birth_year=0x022C
current_job=0x030C
physical_attrs=0x3C4
turn_count=0x0668
states=0x06BC
souls=0x0764
likes=0x07A0
labors=0x078C
squad_ref_id=0x08AC
happiness=0x082C

[soul_details]
skills=0x0200
traits=0x0224

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x003C
members=0x0088

[position_offsets]
token=0x0000
flags=0x0020
general_name_singular=0x00E8
general_name_plural=0x0104
male_name_singular=0x0158
male_name_plural=0x0174
female_name_singluar=0x0120
female_name_plural=0x013C
custom_color_red=0x0382
custom_color_green=0x0380

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: DwarfEngineer on February 29, 2012, 08:12:34 am
v34.04 is out!

New layouts have been posted for 34.04 (windows). They should download automatically the next time you start therapist with dwarf fortress running.

If you have check for updates turned off or otherwise want to download the layouts manually, they're available here:
Windows v0.34.04 (graphics) (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.04_graphics.ini)
Windows v0.34.04 (legacy) (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.04_legacy.ini)
(Right-click, Save As...)

This doesn't include any flag changes. I'm going to take Ag's advice and look at DFHack and hopefully have a bug-fix release soon to fix issues with zombies/ghosts.  Still looking for a fortress 34.03 or 34.04 with confirmed vampires.

Thanks,
-DE
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: !!Urist Unfortune!! on February 29, 2012, 08:26:03 am
Aww dam> to bad i didnt read that this morning, i had a 200 hundred year old vampire show up at my fort, but he was just shot and killed during a goblin ambush :(.  I had big plans for him too
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Fishbreath on February 29, 2012, 08:30:51 am
Is there any news on custom professions and Linux later than issues #339 and #175?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: robertheinrich on February 29, 2012, 08:48:46 am
Still looking for a fortress 34.03 or 34.04 with confirmed vampires.

I have a 34.04 with a female vampire for you. Well, not 100% confirmed but she shows the "usual" signs. Extremely long history, 16 kids, shows up with different name in DwarfTherapist, haven´t seen her eat or drink. I made her my bookkeeper and locked her away at z level 109 before it came to any incidents.

It´s a savegame with a world created with 34.02 which I moved to 34.04 so I´m not sure if it will help you. It´s the Windows version of 34.04 including DFHack and the Pheobus gfx pack. I uploaded the whole DF folder here: http://www.mediafire.com/?u46c4b3dud9o4ru (http://www.mediafire.com/?u46c4b3dud9o4ru)

Title: Re: Dwarf Therapist (LATEST 0.6.12 2/28/12 see first post)
Post by: ag on February 29, 2012, 09:11:11 am
Still looking for a fortress 34.03 or 34.04 with confirmed vampires.

Here is a fun one from a bug with a vampire ghost drinking blood :D
http://dffd.wimbli.com/file.php?id=5623 (http://dffd.wimbli.com/file.php?id=5623)

It's from 34.02, but it's compatible.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on February 29, 2012, 09:25:53 am
i've fixed the attribute offsets in my branch and added the *.ini files for 34.03 and 34.04.

download (http://www.mediafire.com/?2diyra29h0pkroz)
source (http://code.google.com/r/splintermind-attributes/)

the current_year offset for 34.03 and 34.04 (i think?) is 0xfcc1f0

in regards to the current_year offset i've been trying to find a consistent way to locate it as well (i've been checking dfhack's xml symbols files), and i've found that it seems to always be offset a static length from the world address, specifically 0x7B9AF8 before the world address.

edit: i posted in the dfhack thread with an issue and asked about the cur_year they find:
on a side note, tell me your secret to finding the cur_year offset! :D
That one's actually quite easy: find the vtable for history_event_collectionst and check the 2nd-last method in it (the last one is the destructor) - it sets one field to the current year and another field to the current time.

Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Jerg on February 29, 2012, 02:23:16 pm
i've fixed the attribute offsets in my branch and added the *.ini files for 34.03 and 34.04.

download (http://www.mediafire.com/?2diyra29h0pkroz)
source (http://code.google.com/r/splintermind-attributes/)

the current_year offset for 34.03 and 34.04 (i think?) is 0xfcc1f0

in regards to the current_year offset i've been trying to find a consistent way to locate it as well (i've been checking dfhack's xml symbols files), and i've found that it seems to always be offset a static length from the world address, specifically 0x7B9AF8 before the world address.

edit: i posted in the dfhack thread with an issue and asked about the cur_year they find:
on a side note, tell me your secret to finding the cur_year offset! :D
That one's actually quite easy: find the vtable for history_event_collectionst and check the 2nd-last method in it (the last one is the destructor) - it sets one field to the current year and another field to the current time.

 :o
Awesome, been waiting for traits to return to DT for a while now. Hoping you and DwarfEngineer could work something out in the future and have this as part of the official build too!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: crossmr on February 29, 2012, 07:54:16 pm
I just noticed, that all the stats in the new version are 888 rather than the specific stats they had before (I was using that combined version someone uploaded)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on February 29, 2012, 10:33:57 pm
I just noticed, that all the stats in the new version are 888 rather than the specific stats they had before (I was using that combined version someone uploaded)
You'll have to download the updated ini files for your version of dwarf therapist then since the layouts are not currently supported in the official verison. I believe the new ini file was posted somewhere in this thread.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Sutremaine on March 01, 2012, 04:30:13 pm
I'm using the 34.03 / 34.04 version in splinterz's post with 34.04, and while the actual numbers are being displayed correctly the descriptions and the numbers (or glyphs) in the main view are off. I'm getting a range of range of odd numbers from 1 to 13 and a dwarf with 1033 agility being described as clumsy. This happens with both a save copied from 34.03 and a fortress with a 34.04-generated world.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Neyvn on March 01, 2012, 04:58:47 pm
Did ya check that Savefile I posted with the Husks and such appearing as Citizens of the Fort despite not being part of the fort???
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 01, 2012, 05:55:03 pm
I'm using the 34.03 / 34.04 version in splinterz's post with 34.04, and while the actual numbers are being displayed correctly the descriptions and the numbers (or glyphs) in the main view are off. I'm getting a range of range of odd numbers from 1 to 13 and a dwarf with 1033 agility being described as clumsy. This happens with both a save copied from 34.03 and a fortress with a 34.04-generated world.

it would appear there's a gap in the ranges in some (all?) of the attributes. with agility, for example, it jumps from 401-650 to 1150-1399. 1033 falls right in that gap where there's no description. i just noticed there are similar gaps in some of the others so i'll have to add in another description there i guess. thanks for pointing it out. i used odd numbers rather than a sequence because i found it was too hard to see a difference graphically between the lower-mid levels.

Quote
Did ya check that Savefile I posted with the Husks and such appearing as Citizens of the Fort despite not being part of the fort???

i'm checking it now. i think i've got the flags sorted for things that are actually dead, or ghostly etc..
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Sutremaine on March 01, 2012, 07:01:06 pm
Yeah, pretty much every attribute with a seven-number range doesn't have description text for the middle one. The strangest thing is that it's been working fine in DT up until this version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 01, 2012, 07:15:29 pm
Yeah, pretty much every attribute with a seven-number range doesn't have description text for the middle one. The strangest thing is that it's been working fine in DT up until this version.
yes i removed the 'average' descriptions i had put in previously when i remapped the groupings for the attributes because they were misaligned slightly. i'll have them added back soon enough though with the proper ranges, huzzah!

Did ya check that Savefile I posted with the Husks and such appearing as Citizens of the Fort despite not being part of the fort???
i've briefly looked into this and unfortunately dwarf husk people don't seem to have any of the usual flags checked to not include them. we'll have to find another way to identify dwarves that aren't really dwarves. :-\  but the good news is all the strangeness with ghosts and vampire ghosts and people who appear to be able to see but have eye problems (don't ask) not appearing/appearing in dt seems to be working ok. anyway, sleeps for me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 01, 2012, 11:38:27 pm
Been focused on the OSX port. I can attach, read the checksum, and scan memory. However there is a random crash that I'm chasing down that's eating up a lot of time :(
Once I get further with the OSX version I'll continue on bugs for the windows version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: telamon on March 02, 2012, 12:46:40 am
quick question: is there a way to identify vampirism in therapist? (ie with 100% certainty) to the best of my knowledge, there is not, but I'd like to be sure since I've got migrants wandering onto my map and it's time to get all dunking rooms and witch trials on this fortress.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: orius on March 02, 2012, 01:03:08 am
There's the fake name bit, vampires will come to your fort with a fake name, but Therapist displays the real name.  I caught a vampire last night this way.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Jerg on March 02, 2012, 04:05:53 am
There's the fake name bit, vampires will come to your fort with a fake name, but Therapist displays the real name.  I caught a vampire last night this way.

That's arguably cheating though, defeats the whole purpose of vampires being able to have fake identities, and all the guesswork involved in identifying one.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: crossmr on March 02, 2012, 04:30:07 am
There's the fake name bit, vampires will come to your fort with a fake name, but Therapist displays the real name.  I caught a vampire last night this way.

That's arguably cheating though, defeats the whole purpose of vampires being able to have fake identities, and all the guesswork involved in identifying one.

They need something to balance out the inability to stop vampire attacks, the fact that they randomly and indiscriminately kill dwarves that you've spent a long time working on and offer little to no benefit.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: makpantek on March 02, 2012, 06:58:31 am
i don't know if it's posted before but can you present dwarf children separated from the adult ones ? It's because they couldn't be assign to any task and pretty useless to be displayed. It would be great if there's hide button for it.

edit: nvm just find the option for it. Sorry i am new to this.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 02, 2012, 12:29:13 pm
i've uploaded another version which hopefully resolves some of the issues :)

download (http://www.mediafire.com/?9ok40modk9568r4)
source & comprehensive change notes (http://code.google.com/r/splintermind-attributes/)

i've also added a few more offsets for castes, moods, and curses. we can definitely use the curse offset to find out which dwarves are vampires, but i haven't been able to find out exactly how/where they're linked to their assumed identities.

edit: if anyone can upload a save with a kidnapped baby for some additional testing it would be greatly appreciated!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Rose on March 02, 2012, 01:21:24 pm
Thanks for the hard work.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: !!Urist Unfortune!! on March 02, 2012, 03:53:23 pm
Are you talking about a just a fort where a child has been kidnapped, or are you looking for a fort where the kidnapped child has returned?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: BigFatStupidHead on March 02, 2012, 04:09:07 pm
Thanks for the great tool!

Shocked I haven't posted here yet.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 02, 2012, 04:10:48 pm
Are you talking about a just a fort where a child has been kidnapped, or are you looking for a fort where the kidnapped child has returned?
kidnapped and has left the map. i want to ensure they're not showing up in dt once they're gone.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: !!Urist Unfortune!! on March 02, 2012, 11:38:02 pm
Are you talking about a just a fort where a child has been kidnapped, or are you looking for a fort where the kidnapped child has returned?
kidnapped and has left the map. i want to ensure they're not showing up in dt once they're gone.

I will post, if i lose a child.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Rose on March 03, 2012, 04:43:40 am
I got a save or two with some kidnapped kids. I'll post it when I get proper internet back.

It also has a vampire on the map, so you can mess with that to get proper info.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 03, 2012, 01:06:14 pm
Making good progress on OSX - need to do a bit more testing before releasing a beta, but so far:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: bombzero on March 03, 2012, 03:13:34 pm
was the issue with dwarfs not appearing related to injured historical migrants? as that seems to be a common trend in my fort... hopefully i can see them now.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 03, 2012, 03:53:15 pm
was the issue with dwarfs not appearing related to injured historical migrants? as that seems to be a common trend in my fort... hopefully i can see them now.

yes it did seem to be related to this! specifically a 'damaged vision part' from what i found. please post back with your findings and if it's still giving you issues perhaps upload your save if it's not too much trouble.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: bombzero on March 03, 2012, 04:15:59 pm
his 3rd finger left hand is gone. he can see fine, course after he died its a bit hard to prove that, hes in one of the coffins in my managers dining room.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 03, 2012, 06:47:19 pm
his 3rd finger left hand is gone. he can see fine, course after he died its a bit hard to prove that, hes in one of the coffins in my managers dining room.
yeah it's doing something strange behind the scenes. in the save i tested the dwarves missing from therapist didn't show any signs of damage in game, however it was still setting a flag that they had some damaged vision parts, which for reasons unknown therapist then flagged as dead and excluded them.

dammit i just realized some of the attributes are still showing messed up tooltips /sigh. i better fix that...
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: bombzero on March 03, 2012, 07:05:48 pm
you guys must have 'Fun' with major DF updates... can't imagine having to find every little flaw using the methods you guys do.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Diffuse on March 03, 2012, 09:35:04 pm
Making good progress on OSX - need to do a bit more testing before releasing a beta
I just wanted to say, thank you! You just made my day, waiting patiently on your OS X port so I can finally play DF 34.0x without using Wine or going to my Windows partition.

Good luck!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 03, 2012, 09:40:51 pm
I actually could use a beta tester or two.
I'm working on the packaging of DT, and need to know if it will run on someone else's system. (I may need to figure out how to include Qt redistributables)

If you're interested in testing, please try this version (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b01.dmg) with v0.34.04 of Dwarf Fortress.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Neyvn on March 03, 2012, 10:20:18 pm
Can confirm that Children remain on the Therapist when they are Snatched...
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: benloran on March 03, 2012, 11:11:56 pm
I actually could use a beta tester or two.
I'm working on the packaging of DT, and need to know if it will run on someone else's system. (I may need to figure out how to include Qt redistributables)

If you're interested in testing, please try this version (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b01.dmg) with v0.34.04 of Dwarf Fortress.

Yeah, it looks like it's complaining about not having Qt installed.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 03, 2012, 11:34:30 pm
I actually could use a beta tester or two.
I'm working on the packaging of DT, and need to know if it will run on someone else's system. (I may need to figure out how to include Qt redistributables)

If you're interested in testing, please try this version (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b01.dmg) with v0.34.04 of Dwarf Fortress.

Yeah, it looks like it's complaining about not having Qt installed.

Spoiler (click to show/hide)

Thanks for testing. I think I might have it worked out if you're willing to give it another try.
DF OSX 0.6.12b02 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b02.dmg)

Incidentally, did the installer(dmg, package, whatever) look/work as expected?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: fredmaehn on March 04, 2012, 02:19:23 am

Thanks for testing. I think I might have it worked out if you're willing to give it another try.
DF OSX 0.6.12b02 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b02.dmg)

Incidentally, did the installer(dmg, package, whatever) look/work as expected?

Oh no! Won't run on my 1st-Gen Macbook, probably (= quite sure, finder shows the icon crossed out, regularly does that if it can't find code to run) because its 64bit code only, and my geriatric Atom processor can't run this. Any chance of building it as a universal binary with i386 and x64 code?

So I went over to my newer mac mini, and there it tries to start at least and failed with:
Dyld Error Message: Library not loaded: /Users/*/QTCore.framework/Versions/4/QTCore
Referenced from /Applications/DwarfTherapist.app/Contents/MacOS/../Frameworks/QTScript.framework/Versions/4/QtScript
Reason: Image not found
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: benloran on March 04, 2012, 02:26:08 am
I'm getting the same error as fredmaehn with b02. I was running it from the Applications directory in my home folder but then thought maybe it mattered where it lives (most apps don't care but some do). So I moved it to the root /Applications folder, but still see that error (the only difference between having it in either folder is in the "Referenced from..." line, which includes the full path of whatever folder the app is in).

Edit: forgot to answer your question. Yeah the dmg looks great, just as expected.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Spuzzy on March 04, 2012, 03:35:52 am

Incidentally, did the installer(dmg, package, whatever) look/work as expected?
[/quote]

Yes, it looked very nicely done.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: fredrol on March 04, 2012, 04:33:33 am
Just wanted to say thank you for your hard work! Much appreciated!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: !!Urist Unfortune!! on March 04, 2012, 04:55:39 am
yes, Thank you sir!!! this is a great tool
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 04, 2012, 05:09:13 am
i've added another patch to address the following:

download (http://www.mediafire.com/?ps8d9sa1z5t3td2)

source (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Anrock on March 04, 2012, 05:48:13 am
Could someone post memory mapping for v0.34.04 for linux?
In kionmaru's version dwarves second names are displayed as Unknownunknown.

And why memory mappings for linux version are updated much less often than for windows? Latest mappings for linux is for 0.31.25!

Thanks in advance.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 04, 2012, 08:33:28 am
I think I was making this harder than it needed to be. One more try -
Dwarf Therapist OSX 0.6.12b03 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b03.dmg)

I'll work on the universal version - I don't know that I'll really be able to test it though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: kionmaru on March 04, 2012, 09:20:14 am
Could someone post memory mapping for v0.34.04 for linux?
In kionmaru's version dwarves second names are displayed as Unknownunknown.

And why memory mappings for linux version are updated much less often than for windows? Latest mappings for linux is for 0.31.25!

Thanks in advance.

My current ini for v0.34.04:

Code: [Select]
[info]
checksum=0x6c11a27c
version_name=v0.34.04
complete=true

[addresses]
translation_vector=0x095cdbfc
language_vector=0x095cdbe4
creature_vector=0x0958c8ac
dwarf_race_index=0x09574240
squad_vector=0x095ca7b4

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0148
current_job=0x0274
turn_count=0x052b
states=0x0
souls=0x05e8
labors=0x0604
happiness=0x0694
squad_ref_id=0x06f8

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000


This should display their last names just fine. When the last name is UnknownUnknown, then complete=false; in my current one complete=true and they should show just fine. I've got enough ini's scattered around here that you may have grabbed an old one, or it might be that your dt isn't referencing the ini you're expecting.

Try

cd dwarftherapist; grep "checksum=0x6c11a27c" * -R

That command should show all ini files within the dwarftherapist base directory that will be matched by DF v0.34.04.

Let me know if it's still behaving strangely. I'm using DE's mercurial repository, and with his current source tree I'm not able to replicate.

@DwarfEngineer - Is m_current_year actually referenced or used anywhere right now?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: chrisadams3997 on March 04, 2012, 10:19:00 am
I've just checked out splinterz's fix, and indeed all the attributes seem to be displaying properly.  Great job there :D.

I've been thinking about ways to present the attribute data graphically better.  The problem with using the same draw method as for skills is that it floods the 'attributes' pane with too much information.  To be more precise, the reason it doesn't overload the labors tab is that most cells are empty or close to it, which makes picking out the important information (who is good at what skills) easy.  If instead everyone had some skill in everything, you'd have the same problem as what the attributes pane is producing.  To improve it I've tried a little different approach:

(http://img51.imageshack.us/img51/6088/image4mu.png)

Instead of filling every square with something, which makes it hard to pick strengths and weaknesses out at a glance (which is what we're looking for), average attributes display nothing -only once a attribute is above or below normal do you get a graphical change, with less than average showing in red, better than average in black, the size telling you how much better or worse.

The next thing I want to do is create several more default grid views that individually only show a subset of the attributes important to a certain 'class' of jobs.  For instance one for craftsdwarf related skills (creativity, kinesthetic sense, spacial sense, the relevant physical traits), with the idea being that it'd give a quick way to look over new immigrants for those well suited to train in a given skill.

I'm putting this up to download, but ultimately I'm not looking to maintain this separate from splinterz', I'm hoping he incorporates it into his, but for now here are the files and source:

Download (http://www.mediafire.com/?c7adhf3nk8zhtha)
Source (http://www.mediafire.com/?vs4637c23e5do4f)

I've also made two small changes reverting back to behaivor in older versions, average attributes have no text descriptions (this is more readable to me, text indicates it's not average), and changed it back to only display traits more than 10 points off of average, for similar reasons.  By only presenting what is significantly different from the norm, I firmly believe you make the information much more accessible, instead of flooding the screen with almost every trait for every dwarf.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: schismatise on March 04, 2012, 10:26:17 am
By only presenting what is significantly different from the norm, I firmly believe you make the information much more accessible, instead of flooding the screen with almost every trait for every dwarf.

Just for the sake of providing some feedback to the discussion; i agree.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 04, 2012, 10:30:37 am
@DwarfEngineer - Is m_current_year actually referenced or used anywhere right now?
Not in vanilla DwarfTherapist, it's part of preparations to merge in some of these other changes that are floating around. (chrisadams & splinterz changes)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Anrock on March 04, 2012, 10:33:56 am
@kionmaru, thanks. That config works perfectly.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: kionmaru on March 04, 2012, 10:44:23 am
@DwarfEngineer - Is m_current_year actually referenced or used anywhere right now?
Not in vanilla DwarfTherapist, it's part of preparations to merge in some of these other changes that are floating around. (chrisadams & splinterz changes)

Thanks - I went through your sources and couldn't find anything for it; scan for current year gives me a whole slew of addresses, none of which seem to quite resolve to an integer or word that all appear to be -1. I didn't dig deeper then that.

@kionmaru, thanks. That config works perfectly.

You're more than welcome :) Glad to hear it's behaving itself.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 04, 2012, 10:51:17 am
@DwarfEngineer - Is m_current_year actually referenced or used anywhere right now?
Not in vanilla DwarfTherapist, it's part of preparations to merge in some of these other changes that are floating around. (chrisadams & splinterz changes)

Thanks - I went through your sources and couldn't find anything for it; scan for current year gives me a whole slew of addresses, none of which seem to quite resolve to an integer or word that all appear to be -1. I didn't dig deeper then that.

@kionmaru, thanks. That config works perfectly.

You're more than welcome :) Glad to hear it's behaving itself.
Current year looks like it's always going to be the last address (the address closest to dwarf_race_index) on v34.04 linux its: 0x09571d40
I'm updating the scanner script to report the last (and most likely) address.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: kionmaru on March 04, 2012, 11:03:25 am
@DwarfEngineer - Is m_current_year actually referenced or used anywhere right now?
Not in vanilla DwarfTherapist, it's part of preparations to merge in some of these other changes that are floating around. (chrisadams & splinterz changes)

Thanks - I went through your sources and couldn't find anything for it; scan for current year gives me a whole slew of addresses, none of which seem to quite resolve to an integer or word that all appear to be -1. I didn't dig deeper then that.

@kionmaru, thanks. That config works perfectly.

You're more than welcome :) Glad to hear it's behaving itself.
Current year looks like it's always going to be the last address (the address closest to dwarf_race_index) on v34.04 linux its: 0x09571d40
I'm updating the scanner script to report the last (and most likely) address.

On mine it's not reporting the correct offset at all then. 0x09571d40 is indeed an integer which appears to be correct; here's the list I get:

current year = 0x08c8ea8c (uncorrected:0x08c8ea8c)
current year = 0x08c8eaa4 (uncorrected:0x08c8eaa4)
current year = 0x08c8eae8 (uncorrected:0x08c8eae8)
current year = 0x08c8eb28 (uncorrected:0x08c8eb28)
current year = 0x08c8eb64 (uncorrected:0x08c8eb64)
current year = 0x08c8eba4 (uncorrected:0x08c8eba4)
current year = 0x08cab2b2 (uncorrected:0x08cab2b2)
current year = 0x08ceb760 (uncorrected:0x08ceb760)
current year = 0x08dbf16c (uncorrected:0x08dbf16c)
current year = 0x08dbf778 (uncorrected:0x08dbf778)
current year = 0x08dbfc10 (uncorrected:0x08dbfc10)

I can upload the world to dffd, it was genned with 0.34.04.

And just to verify, current_year should be in the [addresses] section if I'm reading your sources correctly, is that right?

** edit
hg failed to merge game_data.ini properly so I ended up with no expected year setting; that's what was causing the bad year search. Apologies, I should have caught that; it was no longer showing up in hg merge as a problem. Probably touched the file and it became more recent than your patch.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 04, 2012, 11:06:25 am
On mine it's not reporting the correct offset at all then. 0x09571d40 is indeed an integer which appears to be correct; here's the list I get:

current year = 0x08c8ea8c (uncorrected:0x08c8ea8c)
current year = 0x08c8eaa4 (uncorrected:0x08c8eaa4)
current year = 0x08c8eae8 (uncorrected:0x08c8eae8)
current year = 0x08c8eb28 (uncorrected:0x08c8eb28)
current year = 0x08c8eb64 (uncorrected:0x08c8eb64)
current year = 0x08c8eba4 (uncorrected:0x08c8eba4)
current year = 0x08cab2b2 (uncorrected:0x08cab2b2)
current year = 0x08ceb760 (uncorrected:0x08ceb760)
current year = 0x08dbf16c (uncorrected:0x08dbf16c)
current year = 0x08dbf778 (uncorrected:0x08dbf778)
current year = 0x08dbfc10 (uncorrected:0x08dbfc10)

I can upload the world to dffd, it was genned with 0.34.04.

And just to verify, current_year should be in the [addresses] section if I'm reading your sources correctly, is that right?
Odd. Couple things you could check I guess - 1. There is a newer revision which fixed an issue for OSX/Linux scanning, and 2. The scanner is intended to be run against a freshly generated world with medium history (i.e. starting on year 251)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: kionmaru on March 04, 2012, 11:16:37 am
Odd. Couple things you could check I guess - 1. There is a newer revision which fixed an issue for OSX/Linux scanning, and 2. The scanner is intended to be run against a freshly generated world with medium history (i.e. starting on year 251)

Yeah, see edit - hg merge failed to handle game_data.ini right, and so I didn't have the expected year set, which probably ended with it defaulting to something either not quite sane or random. My bad >.< ;
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: benloran on March 04, 2012, 12:45:44 pm
I think I was making this harder than it needed to be. One more try -
Dwarf Therapist OSX 0.6.12b03 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b03.dmg)

I'll work on the universal version - I don't know that I'll really be able to test it though.

Ok! This one runs, but there are a few oddities (and one bug that will make it hard to use).

1. I'm an unusual OSX user in that my main login account is not an administrator. So when something needs admin access, I have to type in the admin's name and password. For some reason, Therapist asks for admin access every time I launch it, so I am having to enter the admin name and password each time. I can live with that, but it's unusual for a program to do that.

2. DwarfTherapist has two icons in the dock. It's not a big deal, but it's a little strange.
(http://i.imgur.com/Vc2QG.png)

3. This is the usability bug. The triangles for expanding and collapsing groups seem to be drawn in the wrong place (I've circled the problem in red here).

(http://i.imgur.com/Rwr0q.png)

Thanks for making all the effort to support OSX, by the way. This is awesome! :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 04, 2012, 01:19:23 pm
Could someone post memory mapping for v0.34.04 for linux?
In kionmaru's version dwarves second names are displayed as Unknownunknown.

And why memory mappings for linux version are updated much less often than for windows? Latest mappings for linux is for 0.31.25!

Thanks in advance.
Linux support is coming back. I've had to recreate almost all of my build scripts & environment due to a system crash a while back. Also, building for each architecture/distribution takes a good chunk of time, so I'm trying to automate the process.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: fredmaehn on March 04, 2012, 03:01:51 pm
I think I was making this harder than it needed to be. One more try
I'll work on the universal version - I don't know that I'll really be able to test it though.

You are my hero! Have no time to really test it (girlfriend is hogging the mac mini), but it runs.

Universal would be nice, but better give the Linux users their version first.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 04, 2012, 04:07:24 pm
I've just checked out splinterz's fix, and indeed all the attributes seem to be displaying properly.  Great job there :D.

I've been thinking about ways to present the attribute data graphically better.  The problem with using the same draw method as for skills is that it floods the 'attributes' pane with too much information.  To be more precise, the reason it doesn't overload the labors tab is that most cells are empty or close to it, which makes picking out the important information (who is good at what skills) easy.  If instead everyone had some skill in everything, you'd have the same problem as what the attributes pane is producing.  To improve it I've tried a little different approach:

snip...

Instead of filling every square with something, which makes it hard to pick strengths and weaknesses out at a glance (which is what we're looking for), average attributes display nothing -only once a attribute is above or below normal do you get a graphical change, with less than average showing in red, better than average in black, the size telling you how much better or worse.

The next thing I want to do is create several more default grid views that individually only show a subset of the attributes important to a certain 'class' of jobs.  For instance one for craftsdwarf related skills (creativity, kinesthetic sense, spacial sense, the relevant physical traits), with the idea being that it'd give a quick way to look over new immigrants for those well suited to train in a given skill.

I'm putting this up to download, but ultimately I'm not looking to maintain this separate from splinterz', I'm hoping he incorporates it into his, but for now here are the files and source:

Download (http://www.mediafire.com/?c7adhf3nk8zhtha)
Source (http://www.mediafire.com/?vs4637c23e5do4f)

I've also made two small changes reverting back to behaivor in older versions, average attributes have no text descriptions (this is more readable to me, text indicates it's not average), and changed it back to only display traits more than 10 points off of average, for similar reasons.  By only presenting what is significantly different from the norm, I firmly believe you make the information much more accessible, instead of flooding the screen with almost every trait for every dwarf.

i completely agree with your observations. i think i've been so focused on getting attributes showing up properly that i've drifted from the real purpose of showing them: clear, practical data to make decisions. since you've given me the go ahead to incorporate this, i will most certainly be doing so, cheers!

edit: in regards to the jobs, i've tried making scripts which somewhat works, but ideally it would be nice to sort by multiple columns, however i don't think the current objects being used support it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: nenjin on March 04, 2012, 04:23:20 pm
I just wanted to second chrisadam3997's observations. After using the newest attribute enabled DT, like was said, the fact everyone has some sort of attribute makes the display used much less useful. With chrisadam3997's color inclusions, it's about 25% more readable immediately.

I'd suggest using a larger color scale. It may end up looking like rainbow vomit, but it might be worth a try.

So hot = low, cool = high.

Red - Lowest
Yellow - Below Average
Green - Average
Blue  - Above Average
Black - Exceptional

There might be some benefit in investigating a totally different view for attributes. Like, a histogram (http://en.wikipedia.org/wiki/File:Histogram_of_arrivals_per_minute.svg) would be freaking amazing. Better if we were to, say, double click on a dwarf entry and get a re-sizable window for them displaying a histogram of that dwarf's attributes. Actually, it would work smashingly for traits as well, especially if you could mouse over each entry in the histogram and get DF's text description of their trait value. While not necessary, it would preserve the flavor in the current trait view, where it gives you a number and a description.

I appreciate that's probably a fair amount of work for something as non-essential to DT as attributes and traits.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: chrisadams3997 on March 04, 2012, 06:04:27 pm
Quote
i completely agree with your observations. i think i've been so focused on getting attributes showing up properly that i've drifted from the real purpose of showing them: clear, practical data to make decisions. since you've given me the go ahead to incorporate this, i will most certainly be doing so, cheers!

Sweet.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: fractal on March 04, 2012, 09:43:44 pm
Hi, I'm testing the latest posted mac version, from this thread. (0.6.12b03). Some observations:

Bug:Labels "Construct ?? Crutch (208)" instead of "Clean Self"
As stated before-has two icons- though every mac version I've seen has this.
As opposed to other versions, does not appear to slow DF for the next unpausing after a write- much quicker.
The interface is not perfectly responsive, though still very usable.
Bug:The grid view editor works well, though the attributes (strength, agility, etc) all appear as unknown (-1).
Bug?: The filter dwarves box doesn't appear to do very much, apart from show a hanging filtered list. Expected behavior would be to highlight the selected dwarf.
EDIT: It only fails to do things if the "Don't show children/babies filter" is applied

It appears very stable, having run continuously for over 8 hours (~220 dwarves) with no loss of function.
I'll continue 'testing' and will report back anything else relevant.

Thanks for making all the effort to support OSX, by the way. This is awesome! :)
I'll second that!

Very impressive, no serious bugs found, a great tool to use!
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 04, 2012, 11:07:15 pm
Hi, I'm testing the latest posted mac version, from this thread. (0.6.12b03). Some observations:

Bug:Labels "Construct ?? Crutch (208)" instead of "Clean Self"
As stated before-has two icons- though every mac version I've seen has this.
As opposed to other versions, does not appear to slow DF for the next unpausing after a write- much quicker.
The interface is not perfectly responsive, though still very usable.
Bug:The grid view editor works well, though the attributes (strength, agility, etc) all appear as unknown (-1).
Bug?: The filter dwarves box doesn't appear to do very much, apart from show a hanging filtered list. Expected behavior would be to highlight the selected dwarf.

It appears very stable, having run continuously for over 8 hours (~220 dwarves) with no loss of function.
I'll continue 'testing' and will report back anything else relevant.

Thanks for making all the effort to support OSX, by the way. This is awesome! :)
I'll second that!

Very impressive, no serious bugs found, a great tool to use!
Thanks very much for the report, glad to hear that it's at least workable.

Also, linux support (http://code.google.com/p/dwarftherapist/wiki/LinuxVersion) should be back. I'll for sure try to keep packages up to date for the latest Ubuntu release & LTS release. I'll look into adding debian again at some point as well.
The mac mini is definitely being put to good use - I have automated builds setup for OSX & linux now:
Spoiler (click to show/hide)

Current plan is:
Of course, I'll continue to try to provide layouts ASAP for new releases.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: ClubFoot on March 04, 2012, 11:33:08 pm
1. I'm an unusual OSX user in that my main login account is not an administrator. So when something needs admin access, I have to type in the admin's name and password. For some reason, Therapist asks for admin access every time I launch it, so I am having to enter the admin name and password each time. I can live with that, but it's unusual for a program to do that.

I expect there's no getting around that.  Consider what DT does - it reads, then modifies, the working memory of _some other program_.  That's generally a highly questionable thing for an application to do.  OSX notices this, and insists on getting admin access for DT so it knows you know enough about the system you're on to allow it to do that.  Honestly, it's good behavior on the part of an OS.

Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: ClubFoot on March 05, 2012, 12:30:14 am
I think I was making this harder than it needed to be. One more try -
Dwarf Therapist OSX 0.6.12b03 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b03.dmg)

I'll work on the universal version - I don't know that I'll really be able to test it though.

It appears that profession changes are not working.  The existing professions of dwarves are correctly displayed.  Enabling/disabling labors either singly or by selecting a 'profession' toggles the labors correctly.  The profession names are not updated, however,
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: benloran on March 05, 2012, 12:56:46 am
I expect there's no getting around that.  Consider what DT does - it reads, then modifies, the working memory of _some other program_.  That's generally a highly questionable thing for an application to do.  OSX notices this, and insists on getting admin access for DT so it knows you know enough about the system you're on to allow it to do that.  Honestly, it's good behavior on the part of an OS.

That's an excellent point, and I hadn't really thought about it before, but it makes perfect sense.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 05, 2012, 07:32:41 am
I just wanted to second chrisadam3997's observations. After using the newest attribute enabled DT, like was said, the fact everyone has some sort of attribute makes the display used much less useful. With chrisadam3997's color inclusions, it's about 25% more readable immediately.

I'd suggest using a larger color scale. It may end up looking like rainbow vomit, but it might be worth a try.

So hot = low, cool = high.

Red - Lowest
Yellow - Below Average
Green - Average
Blue  - Above Average
Black - Exceptional

There might be some benefit in investigating a totally different view for attributes. Like, a histogram (http://en.wikipedia.org/wiki/File:Histogram_of_arrivals_per_minute.svg) would be freaking amazing. Better if we were to, say, double click on a dwarf entry and get a re-sizable window for them displaying a histogram of that dwarf's attributes. Actually, it would work smashingly for traits as well, especially if you could mouse over each entry in the histogram and get DF's text description of their trait value. While not necessary, it would preserve the flavor in the current trait view, where it gives you a number and a description.

I appreciate that's probably a fair amount of work for something as non-essential to DT as attributes and traits.

just for fun i did this by modifying the existing fill box to fill from the bottom instead, the results were as you described...
(http://farm8.staticflickr.com/7186/6955589843_8a81eb9c48.jpg)
raainnnnbooowwwwvommmiiittt bahahaha
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 05, 2012, 08:31:44 am
I think I was making this harder than it needed to be. One more try -
Dwarf Therapist OSX 0.6.12b03 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b03.dmg)

I'll work on the universal version - I don't know that I'll really be able to test it though.

It appears that profession changes are not working.  The existing professions of dwarves are correctly displayed.  Enabling/disabling labors either singly or by selecting a 'profession' toggles the labors correctly.  The profession names are not updated, however,
Yeah, that's an outstanding issue with linux as well. Basically it has to do with no memory being allocated where therapist can stick the nickname / custom profession name. I'm still looking into options for this, but it will probably (unfortunately) involve code injection or something to that effect.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: ag on March 05, 2012, 08:54:24 am
Yeah, that's an outstanding issue with linux as well. Basically it has to do with no memory being allocated where therapist can stick the nickname / custom profession name. I'm still looking into options for this, but it will probably (unfortunately) involve code injection or something to that effect.

I've been running on linux with the patches I posted here for months without any problems:

http://code.google.com/p/dwarftherapist/issues/detail?id=175 (http://code.google.com/p/dwarftherapist/issues/detail?id=175)

Yes, it is code injection, but you only need to inject 3 bytes to do a controlled mmap syscall. Of course, this is completely linux-specific.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: nenjin on March 05, 2012, 12:24:20 pm
I just wanted to second chrisadam3997's observations. After using the newest attribute enabled DT, like was said, the fact everyone has some sort of attribute makes the display used much less useful. With chrisadam3997's color inclusions, it's about 25% more readable immediately.

I'd suggest using a larger color scale. It may end up looking like rainbow vomit, but it might be worth a try.

So hot = low, cool = high.

Red - Lowest
Yellow - Below Average
Green - Average
Blue  - Above Average
Black - Exceptional

There might be some benefit in investigating a totally different view for attributes. Like, a histogram (http://en.wikipedia.org/wiki/File:Histogram_of_arrivals_per_minute.svg) would be freaking amazing. Better if we were to, say, double click on a dwarf entry and get a re-sizable window for them displaying a histogram of that dwarf's attributes. Actually, it would work smashingly for traits as well, especially if you could mouse over each entry in the histogram and get DF's text description of their trait value. While not necessary, it would preserve the flavor in the current trait view, where it gives you a number and a description.

I appreciate that's probably a fair amount of work for something as non-essential to DT as attributes and traits.

just for fun i did this by modifying the existing fill box to fill from the bottom instead, the results were as you described...
(http://farm8.staticflickr.com/7186/6955589843_8a81eb9c48.jpg)
raainnnnbooowwwwvommmiiittt bahahaha

Yeah, that doesn't look good at all :P I don't think a histo view would work on that page (as a single page dedicated to one dwarf, it would be readable.)

However trying colors with the symbol sizes *might* be readable.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: anqxyr on March 05, 2012, 02:08:49 pm
You have my unmeasurable gratitude for a linux version. Some feedback:

(Therapist version is 0.6.12, build from source; Linux version is Kubuntu 11.10)

But those are more an annoyance than real problem. Thanks again for a great program.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 05, 2012, 02:15:07 pm
You have my unmeasurable gratitude for a linux version. Some feedback:

  • For some reason, launching Therapist with cd /path/; sudo ./DwarfTherapist works, while sudo /path/DwarfTherapist doesn't
  • Changing dwarf's professions from Therapist doesn't work. Change is completed without errors, but profession remains the same. Reading professions from DF works correctly.
(Therapist version is 0.6.12, build from source; Linux version is Kubuntu 11.10)

But those are more an annoyance than real problem. Thanks again for a great program.
Yeah, DT is pretty picky about its path, kind of an annoyance. As far as writing profession names, you could try merging in Ag's patch that he mentions above and seeing if it works. I'll be doing the same at some point, and hopefully incorporating it back into the main release.
With Kubuntu you might be able to just pull the package from the repository, but I'm not sure - I'll have to fire up another VM and give it a shot.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: robertheinrich on March 05, 2012, 02:18:49 pm
I have noticed that nicknames sometimes vanish. I assigned nicknames to my all members of my hammerdwarf squad (lacking imagination I just called them all "hammer" to be able to filter them out from civilian duties easier). After a while only 3 of 10 would still have that nickname, it vanished on the others.

Now what happened in-game was quite a lot... I put them through danger room training which made all of them legendary hammerlords quite soon. And after a few sieges some (but not all) of them got additional titles. So I´m not sure if it´s DF which clears the nicknames after promotion (recruit -> hammerdwarf -> hammerlord) or the additional title after lots of kills or whatever. Just wanted to mention that it happened and might be a thing worth looking into.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Girlinhat on March 05, 2012, 02:39:03 pm
Seems to happen mostly when a dwarf kills - you'll notice it on frequent tantrumers too if they strike someone down.  You can name them via DF's naming interface to have a permanent nickname.  A tad annoying, but you should only really have to do so for your military dwarves, and a macro will help a lot.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Darmarius on March 05, 2012, 02:55:01 pm
For some reason, launching Therapist with cd /path/; sudo ./DwarfTherapist works, while sudo /path/DwarfTherapist doesn't[/li][/list]

When DT launch, it tries to access an etc folder under your current path, not under where the binary is. There's probably a simple fix to this... or you could create a simple shell script that ensure that you are in the proper directory when you launch DT, like so:
Code: [Select]
#!/bin/sh
DIR=`dirname $0`
cd "$DIR"
PWDP=`pwd -P`
cd "$PWDP"
sudo ./DwarfTherapist
put that in the DT executable folder and call that script instead and everything should be fine.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 06, 2012, 08:57:32 am
Toady is getting good at releasing new versions about 15 minutes after I get to work >.<
I'll post layouts this afternoon.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Rhenaya on March 06, 2012, 11:35:13 am
did you think for the averageness about that modded civs may have other averages?
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 06, 2012, 04:47:32 pm
i've uploaded another patch with the following changes:


download (http://www.mediafire.com/?9f19bi0s11b4kx7)

source (http://code.google.com/r/splintermind-attributes/)


did you think for the averageness about that modded civs may have other averages?
yes, but the problem is the mean values in the raw files don't create the same group ranges as the game does. at least as far as i can tell, i've really just started digging into this a few weeks ago so i don't know all the intricate workings yet. :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: Kordanor on March 06, 2012, 06:38:44 pm
@Splinterz
Should this version work with 34.05? Cause it doesnt seem to find my running df :(
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 06, 2012, 06:53:18 pm
v0.34.05 Layouts Posted

Layouts are posted for all 3 operating systems and should download automatically.
There might be a slight issue with OSX however, so I may have to post a new beta version for that.

Direct Download Links:
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 06, 2012, 07:24:34 pm
@Splinterz
Should this version work with 34.05? Cause it doesnt seem to find my running df :(
yeah i think i buggered up the layout files.. i've uploaded it again give it another go
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Girlinhat on March 06, 2012, 07:32:12 pm
Splinterz, does your version allow you to give nicknames to multiple dwarves at once?  I'm using a slightly under-valued version now because someone patched it to allow multi-naming.  When I get migrant waves of 30 I pretty much gotta have that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 06, 2012, 07:38:39 pm
Splinterz, does your version allow you to give nicknames to multiple dwarves at once?  I'm using a slightly under-valued version now because someone patched it to allow multi-naming.  When I get migrant waves of 30 I pretty much gotta have that.

yes, that was one of the previous modifications i made to the branch
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Linkeron on March 06, 2012, 07:38:56 pm
What's the difference between Graphics and Legacy anyway?

Derp'd TWICE in one day due to this update, jeebus...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: rooth on March 06, 2012, 07:51:08 pm
I used splinterz's upload which worked up to my first migrant wave, now it's stuck on ''loading squads'' or something. Any solution? and what am i supposed to do with the post of dwarfengineer?

edit. didnt see the fix, tried it and it seems to work now, thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 06, 2012, 08:01:13 pm
I used splinterz's upload which worked up to my first migrant wave, now it's stuck on ''loading squads'' or something. Any solution? and what am i supposed to do with the post of dwarfengineer?

edit. didnt see the fix, tried it and it seems to work now, thanks!
great! i've been waiting for confirmation so i can sleep! ;D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Lysabild on March 06, 2012, 08:52:57 pm
Is there a reason Splinterz and DwarfEngineer isn't working together atm? Seems silly to be running two different versions.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: rooth on March 06, 2012, 09:17:06 pm
wow the military screen is so pretty now, did not see the new ''strenght etc'' tab before, looks amazing!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Shawarma on March 06, 2012, 09:58:04 pm
Is there a reason Splinterz and DwarfEngineer isn't working together atm? Seems silly to be running two different versions.

I believe the word you are looking for is collaberabating.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: schismatise on March 06, 2012, 11:20:20 pm
Nngg... can't... resist... urge.. to troll...

Is there a reason Splinterz and DwarfEngineer isn't working together atm? Seems silly to be running two different versions.

Is there a reason people read the last page of an 88 page thread and assume they know everything about it?

AHH DAMNIT sorry couldn't help myself :P

But yeah, there's actually a few people helping out, each making slightly different changes in slightly different versions. At the end of the day, it is all progress towards one super-version, and we should be appreciative of everyone involved in the collaborative effort :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Telekinesis on March 07, 2012, 01:23:01 am
If you guys were here we'd all grab you in a group and throw you up and down in the air.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: janglur on March 07, 2012, 01:36:40 am
I was told there was a way to filter dwarves and vampires to spot them with therapist, other than the name thing?

Is this the case?  Cuz it's be AWWESOME to be able to just spot the vamps without guesswork.  Then they can become functional citizens of my fortress!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: schismatise on March 07, 2012, 01:52:10 am
I was told there was a way to filter dwarves and vampires to spot them with therapist, other than the name thing?

Is this the case?  Cuz it's be AWWESOME to be able to just spot the vamps without guesswork.  Then they can become functional citizens of my fortress!

See splinterz post at the top of this the previous page (88).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: fluffhead on March 07, 2012, 10:18:49 am
Hmm, I thought I saw somewhere that Strength was displayed now, Is this not the case?  I can't seem to find it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: rooth on March 07, 2012, 10:27:56 am
use splinterz link and then go to the military tab!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Andir on March 07, 2012, 10:36:48 am
If you guys were here we'd all grab you in a group and throw you up and down in the air.
It must be early... I read this as:

If you guys were here we'd all grab you in a group and throw up on you in the air.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Sutremaine on March 07, 2012, 10:58:00 am
Would it be possible to easily add a colour option to the attributes list, like with happiness?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 07, 2012, 11:15:48 am
I was told there was a way to filter dwarves and vampires to spot them with therapist, other than the name thing?

Is this the case?  Cuz it's be AWWESOME to be able to just spot the vamps without guesswork.  Then they can become functional citizens of my fortress!

See splinterz post at the top of this page (88).

It's in the options, there's a checkbox to show curses.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: thistleknot on March 07, 2012, 11:20:30 am

The next thing I want to do is create several more default grid views that individually only show a subset of the attributes important to a certain 'class' of jobs.  For instance one for craftsdwarf related skills (creativity, kinesthetic sense, spacial sense, the relevant physical traits), with the idea being that it'd give a quick way to look over new immigrants for those well suited to train in a given skill.


I'm not sure if you know or not (I think you must), but Dwarven Guidance Counselor might have all the formula's you need (albeit, would have to put in the d.function() calls) for these views, Dwarven Guidance Counselor is a html or java page, so all the code should be viewable.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 07, 2012, 01:29:41 pm
If I want to do my own filter scripts for professions, where can I find the attributes related to those professions.  There not in the wiki for those professions (at least the chief medical dwarf)

update:
yes they are, just some of the nobles are not.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: robertheinrich on March 07, 2012, 02:58:34 pm
I downloaded Splinterz´ version and it shows all my dwarves with the name "unknown" (34.04 fortress). That way it´s not really usable.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 07, 2012, 03:21:34 pm
I downloaded Splinterz´ version and it shows all my dwarves with the name "unknown" (34.04 fortress). That way it´s not really usable.

hrmm sounds like i may have packaged the wrong ini files. you can patch the files yourself with the information in this thread, but i'll check it out and re-upload if necessary in a bit
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: robertheinrich on March 07, 2012, 03:45:25 pm
I downloaded Splinterz´ version and it shows all my dwarves with the name "unknown" (34.04 fortress). That way it´s not really usable.

hrmm sounds like i may have packaged the wrong ini files. you can patch the files yourself with the information in this thread, but i'll check it out and re-upload if necessary in a bit

Don´t worry too much about that. I just wanted to take a fast look if any of my citizens is a vampire, since your version supports that. Turned out that none of them is, and I reverted to the "official" version since yours has this "unknown" thingy.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 07, 2012, 04:26:47 pm
I downloaded Splinterz´ version and it shows all my dwarves with the name "unknown" (34.04 fortress). That way it´s not really usable.

hrmm sounds like i may have packaged the wrong ini files. you can patch the files yourself with the information in this thread, but i'll check it out and re-upload if necessary in a bit

Don´t worry too much about that. I just wanted to take a fast look if any of my citizens is a vampire, since your version supports that. Turned out that none of them is, and I reverted to the "official" version since yours has this "unknown" thingy.

i'd rather have it fixed anyway. it was indeed a problem with one of the ini files (i'm a noob). i've updated the old link. (http://www.bay12forums.com/smf/index.php?topic=66525.msg3069186#msg3069186)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: ClubFoot on March 07, 2012, 06:59:18 pm
v0.34.05 Layouts Posted

Layouts are posted for all 3 operating systems and should download automatically.
There might be a slight issue with OSX however, so I may have to post a new beta version for that.

Direct Download Links:
  • Windows (Graphics) v0.34.05 (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.05_graphics.ini)
  • Windows (Legacy) v0.34.05 (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.05_legacy.ini)
  • Linux v0.34.05 (http://www.dwarftherapist.com/memory_layouts/linux/v0.34.05.ini)
  • Mac OSX v0.34.05 (http://www.dwarftherapist.com/memory_layouts/osx/v0.34.05.ini)

I am, indeed, unsuccessful w/ the osx version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 07, 2012, 11:09:54 pm
I tried that layout, and now all my dorf's attributes in 34.05 are showing up red, at -1; or some astronomical number like 9000.  Something isn't mapped right.  Windows btw.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Lysabild on March 08, 2012, 01:26:27 am
Nngg... can't... resist... urge.. to troll...

Is there a reason Splinterz and DwarfEngineer isn't working together atm? Seems silly to be running two different versions.

Is there a reason people read the last page of an 88 page thread and assume they know everything about it?

AHH DAMNIT sorry couldn't help myself :P

But yeah, there's actually a few people helping out, each making slightly different changes in slightly different versions. At the end of the day, it is all progress towards one super-version, and we should be appreciative of everyone involved in the collaborative effort :)

Actually, I'm following the thread rather closely and have read it all, however I haven't seen the two agree about getting their stuff merged.

I just think it looks silly to have these two versions flying about when they should work together for a better piece of software all around.

I mean sure, I might sound totally unreasonable and crazy, knowing nothing about software development and coding, in which case feel free to ignore me, but don't make assumptions about what I've read or haven't when my question obviously isn't answered.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: schismatise on March 08, 2012, 01:47:31 am
Actually, I'm following the thread rather closely and have read it all, however I haven't seen the two agree about getting their stuff merged.

I just think it looks silly to have these two versions flying about when they should work together for a better piece of software all around.

I mean sure, I might sound totally unreasonable and crazy, knowing nothing about software development and coding, in which case feel free to ignore me, but don't make assumptions about what I've read or haven't when my question obviously isn't answered.

Dwarf Engineer has mentioned on more than one occasion in this thread that he is considering merging changes from other versions into the official version. Originally, when 0.34 came out, it wasn't even clear if DE was around to update, and so several people with a little know how grabbed the code and started hacking away. Unfortunately, it's not always easy to coordinate multiple people with conflicting time schedules working on a single software project, so people generally muck around in their own version and then share their progress with others. Once a change is made by someone, they can share the steps they took, making it easier to add to the main version. Many hands makes light work as they say, and without the extra hands it probably would have taken DE alot longer than it did to get to the current version.

As far as the main community should be concerned, there is still just the one main version of DT, and it's been working great for me so far.

Does that answer your question?

Edit: not trying to be sarcastic / feel free to correct me if i'm wrong
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DVeL on March 08, 2012, 06:22:38 am
i've uploaded another patch with the following changes:
  • modified the attributes as per chrisadams3997 observations (http://www.bay12forums.com/smf/index.php?topic=66525.msg3062116#msg3062116) and they should work with all drawing types. to summarize:
    • values below average are red, and the farther below the larger they'll be (ie very good = black diamond, very bad = red diamond)
    • average values are no longer drawn to keep things clean
    • values range from -15 to 15, 0 being the average to keep the drawing consistent and obvious when using the numeric display
  • i've noticed a lot of people don't appreciate hunting vampires so i've added an option to highlight them under the general options. this will also add a description of what exactly they're cursed with at the bottom of the tooltip. note this will work for all curses.
  • hostile cursed dwarves on the map are excluded now (looking at you profane husks...)
  • added the preliminary files for 34.05 (incomplete)


download (http://www.mediafire.com/?9f19bi0s11b4kx7)

source (http://code.google.com/r/splintermind-attributes/)

splinterz, your job is great and this vampire-hunter feature is awesome! But i have one question - why did you add in last version this "not flimsy but not tough" or "average endurance" descriptors to attributes in "dwarf detail"s screen? When average values had no comments, it was much easier to spot dwarfs weaknesses and strengths (The same reason why chrisadams3997 suggested to change the view of "attributes" panel).
And now this comments are long, bold and draw attention from what actually matters. Now i have to READ them all, instead of only the important ones =)
And the best solution, i think, would be to remove this comments from average attributes and display them just as a number (like it was in your 5 version), and give high and low attributes description in corresponding color (black or red, like diamonds).
This would make Therapist almost perfect.
But anyway, thank you for your work! =)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: splinterz on March 08, 2012, 06:39:14 am
splinterz, your job is great and this vampire-hunter feature is awesome! But i have one question - why did you add in last version this "not flimsy but not tough" or "average endurance" descriptors to attributes in "dwarf detail"s screen? When average values had no comments, it was much easier to spot dwarfs weaknesses and strengths (The same reason why chrisadams3997 suggested to change the view of "attributes" panel).
And now this comments are long, bold and draw attention from what actually matters. Now i have to READ them all, instead of only the important ones =)
And the best solution, i think, would be to remove this comments from average attributes and display them just as a number (like it was in your 5 version), and give high and low attributes description in corresponding color (black or red, like diamonds).
This would make Therapist almost perfect.
But anyway, thank you for your work! =)

thanks and the descriptions on the average attributes will be removed in the next patch. i spent so much time crafting those beautiful descriptions i wanted to savor them a little while longer...or i may have forgotten to remove them.. ;) in the meantime, you can remove them yourself by editing the /etc/game_data.ini file and changing the offending descriptions to whatever you'd like.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DVeL on March 08, 2012, 08:53:23 am
splinterz, your job is great and this vampire-hunter feature is awesome! But i have one question - why did you add in last version this "not flimsy but not tough" or "average endurance" descriptors to attributes in "dwarf detail"s screen? When average values had no comments, it was much easier to spot dwarfs weaknesses and strengths (The same reason why chrisadams3997 suggested to change the view of "attributes" panel).
And now this comments are long, bold and draw attention from what actually matters. Now i have to READ them all, instead of only the important ones =)
And the best solution, i think, would be to remove this comments from average attributes and display them just as a number (like it was in your 5 version), and give high and low attributes description in corresponding color (black or red, like diamonds).
This would make Therapist almost perfect.
But anyway, thank you for your work! =)

thanks and the descriptions on the average attributes will be removed in the next patch. i spent so much time crafting those beautiful descriptions i wanted to savor them a little while longer...or i may have forgotten to remove them.. ;) in the meantime, you can remove them yourself by editing the /etc/game_data.ini file and changing the offending descriptions to whatever you'd like.

Yeaah!! I was almost torn apart between vamp-detector and preferable design =)
You are a life-saver =)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 08, 2012, 10:08:39 am
anyone know why the post on page 89 with an update for 34.05 is showing up in my windows df as -1 and 9000+ for attributes?

Update:
I think the poster ron 89 doesn't support attributes
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Yaotzin on March 08, 2012, 11:32:06 am
Could you provide more options in terms of how DT names custom professions? That is, ATM it simply gives everyone the profession name that you called your custom profession. I'd like to be able to not change any of their name stuff and merely change the labours, or change their nickname instead (I like using nicknames as it makes finding them easier), that sort of thing.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 08, 2012, 02:28:25 pm
anyone know why the post on page 89 with an update for 34.05 is showing up in my windows df as -1 and 9000+ for attributes?

Update:
I think the poster ron 89 doesn't support attributes

if you used the posted layouts from DwarfEngineer with the attribute build, you'll probably run into issues. either re-download or copy/paste from the source's ini files.


Could you provide more options in terms of how DT names custom professions? That is, ATM it simply gives everyone the profession name that you called your custom profession. I'd like to be able to not change any of their name stuff and merely change the labours, or change their nickname instead (I like using nicknames as it makes finding them easier), that sort of thing.

so you'd like to have the option when applying custom professions to copy the custom name to the nickname, to the profession nickname, or not at all? i'm not sure how useful this would be since you can already accomplish it by setting the profession, and then changing the profession name / nickname, albeit it's a few more steps. maybe a few more people will chime in on whether this would be practical feature to add.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 08, 2012, 02:42:52 pm
I was using clubfoots ini on pg 89, I realized I shouldn't have done that when I read there were multiple versions on this forum, so I'm going to use dwarf engineers again when I get home.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: DwarfEngineer on March 08, 2012, 06:31:55 pm
I am, indeed, unsuccessful w/ the osx version.

Here's a new OSX beta version. Should fix the double icon issue, and the automatic download issue.

Dwarf Therapist OSX Beta (64-bit) v0.6.12b04 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b04.dmg)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: janglur on March 08, 2012, 08:20:33 pm
What does it look like when it highlights a vamp?  'Cuz I have that enabled, and 126 dorfs, and noone's highlighted....
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: thistleknot on March 08, 2012, 08:21:38 pm
v0.34.05 Layouts Posted

Layouts are posted for all 3 operating systems and should download automatically.
There might be a slight issue with OSX however, so I may have to post a new beta version for that.

Direct Download Links:
  • Windows (Graphics) v0.34.05 (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.05_graphics.ini)
  • Windows (Legacy) v0.34.05 (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.05_legacy.ini)
  • Linux v0.34.05 (http://www.dwarftherapist.com/memory_layouts/linux/v0.34.05.ini)
  • Mac OSX v0.34.05 (http://www.dwarftherapist.com/memory_layouts/osx/v0.34.05.ini)

Using these layouts (dwarf engineer's) in 34.05 for windows I get this issue, I'm not going to go to 34.05 until I can get Dwarf Therapist working along with dfhack and phoebus.  I have 2 out of 3, but I have yet to get dwarf therapist to show attributes properly.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: schismatise on March 08, 2012, 08:41:24 pm
Using these layouts (dwarf engineer's)

-snip-

I have yet to get dwarf therapist to show attributes properly.

^ There's your problem.

http://www.bay12forums.com/smf/index.php?topic=66525.msg3069186#msg3069186 (http://www.bay12forums.com/smf/index.php?topic=66525.msg3069186#msg3069186)

^ There's your solution.

Hope that helps.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: thistleknot on March 08, 2012, 09:04:15 pm
Using these layouts (dwarf engineer's)

-snip-

I have yet to get dwarf therapist to show attributes properly.

^ There's your problem.

http://www.bay12forums.com/smf/index.php?topic=66525.msg3069186#msg3069186 (http://www.bay12forums.com/smf/index.php?topic=66525.msg3069186#msg3069186)

^ There's your solution.

Hope that helps.
[
I'm a little confused.  I'm not sure which one is msg3069186.  The layouts that Dwarf Engineer posted are the ones I used, that's why I quoted him when I posted the picture.  Unless your talking about using splinterz.

Well.  I already had splinterz downloaded.  but for some reason, the new layouts they posted didn't work with dwarf engineer's release of dt.  so I re-downloaded splinterz, extracted it, and used the layout it already had (I don't know why I was replacing the layout in the first place, I guess I forgot it already had 34.05). Anyways, using the one posted in splinterz, it's up and working right.

So thank you.

Update:
Nevermind.  I don't know why people were posting 34.05 ini's that were not compatible with SPLINTERZ dwarf therapist link.  Unless there's a reason for it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 08, 2012, 10:29:03 pm
There's a problem with dwarf therapist from splinterz.  When I go to grid views and try to create some custom views.  I choose willpower for example, and it shows up as social awareness, it's workable, but a pain.  There apparently mislabeled in grid views.


linguistics = memory
focus = creativity
empathy = willpower
kinesthetic sense = patience
linguistic ability = memory
memory = linguistic ability
musicality = spacial sense
patience = musicalithy
social awareness = kinesthetic sense
spatial sense = empathy
willpower = social awareness

Update
As a side note, it would be nice to be able to create our own custom columns.  I was hoping to create a close combat grid view based on DGC, which I was able to do.  I added recuperation as well as disease susceptibility.  But what would be cool is if I could create my own variable that has the average of all those stats.  The closest thing I can do is create a script, but I have to set a threshold.  I can see what the averages are (not without DGC).

Update 2
Here's a weighted script I was working on

(((d.strength()*1.2)+(d.agility()*1.2)+(d.toughness()*1.3)+(d.willpower()*.7)+(d.spatial_sense()*1.1)+(d.kinesthetic_sense()*.9)+(d.recuperation()*.8)+(d.disease_resistance()*.8))/8)>1300

note: those smiley's are x.8
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: schismatise on March 08, 2012, 11:36:27 pm

-snip-


Various members of the community, such as splinterz, have compiled their own "unofficial" versions of DT, seperate to the main release by Dwarf Engineer. I doubt layouts from one version are going to work with other versions. Bear in mind that any versions of DT that aren't released by Dwarf Engineer are potentially more likely to contain broken or incomplete features, and are not necessarily going to be supported or updated on any kind of regular basis. Personally i would suggest just waiting until the main version incorporates the changes of other versions, but if you're impatient then feel free to muck around with things, and i'm sure splinterz, and others, are open to feedback on their particular changes/versions.
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: thistleknot on March 09, 2012, 12:13:34 am

-snip-


Various members of the community, such as splinterz, have compiled their own "unofficial" versions of DT, seperate to the main release by Dwarf Engineer. I doubt layouts from one version are going to work with other versions. Bear in mind that any versions of DT that aren't released by Dwarf Engineer are potentially more likely to contain broken or incomplete features, and are not necessarily going to be supported or updated on any kind of regular basis. Personally i would suggest just waiting until the main version incorporates the changes of other versions, but if you're impatient then feel free to muck around with things, and i'm sure splinterz, and others, are open to feedback on their particular changes/versions.

don't get me wrong, I love it.  I'll pm splinterz.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Yaotzin on March 09, 2012, 04:39:39 am
so you'd like to have the option when applying custom professions to copy the custom name to the nickname, to the profession nickname, or not at all?
Right. I like to use nicknames instead of profession names as it helps me sort through to find who I want easier. I guess since the nicknames are all lined up instead of appearing after an arbitrary length middle name..

I also like to see, say, that my hauler has become a legendary bone carver, maybe I'll change him to that. I don't like hiding their profession with custom names.
Quote
i'm not sure how useful this would be since you can already accomplish it by setting the profession, and then changing the profession name / nickname, albeit it's a few more steps. maybe a few more people will chime in on whether this would be practical feature to add.
Well changing the profession name is easy, but AFAIK there's no way to change the nickname part. I have to manually go thru every dwarf and remove his profession name (DT won't accept a custom profession with no name), then change his nickname to Hauler or whatever. Needless to say, painful.

I only ask because I figured it would be quite easy to do?

ETA: In fact, while fiddling with this, I found a bug. If you try to set a custom profession to no name, it'll moan about not being able to do so, and then the profession will "disappear". It'll still be listed on the side, but you can't edit it, and it appears blank if you try to change a dorf to it. A DT restart fixes it though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 09, 2012, 05:48:14 am
What does it look like when it highlights a vamp?  'Cuz I have that enabled, and 126 dorfs, and noone's highlighted....

you need to be running my unofficial branched build (http://code.google.com/r/splintermind-attributes/), and it will highlight cursed dwarves with a purple background once you've turned on the feature in the general options.

There's a problem with dwarf therapist from splinterz.  When I go to grid views and try to create some custom views.  I choose willpower for example, and it shows up as social awareness, it's workable, but a pain.  There apparently mislabeled in grid views.

-snip-

Update
As a side note, it would be nice to be able to create our own custom columns.  I was hoping to create a close combat grid view based on DGC, which I was able to do.  I added recuperation as well as disease susceptibility.  But what would be cool is if I could create my own variable that has the average of all those stats.  The closest thing I can do is create a script, but I have to set a threshold.  I can see what the averages are (not without DGC).

Update 2
Here's a weighted script I was working on

(((d.strength()*1.2)+(d.agility()*1.2)+(d.toughness()*1.3)+(d.willpower()*.7)+(d.spatial_sense()*1.1)+(d.kinesthetic_sense()*.9)+(d.recuperation()*.8)+(d.disease_resistance()*.8))/8)>1300

note: those smiley's are x.8

the only way i was able to reproduce your attribute column issue was to use an old custom view, with the new build of my branched version. i just tried adding a new attribute view and it's working properly in 34.04 and 34.05. if you've just been copying over the layout files and not using the new executable you might have this issue as at one point between 34.01 and 34.05 the ordering of the mental attributes changed.

in regards to jobs i've been toying with a few ideas to rank dwarves by utilizing the script engine to evaluate user defined expressions similar to what you've shown above, so we'll see...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: luppolo on March 09, 2012, 06:35:12 am
please put in main the ability to nickname more dwarves at once like in splinters' (i think it's his one that allows it)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Don57 on March 09, 2012, 06:48:59 am
please put in main the ability to nickname more dwarves at once like in splinters' (i think it's his one that allows it)

OMG, YES!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 09, 2012, 09:45:45 am

There's a problem with dwarf therapist from splinterz.  When I go to grid views and try to create some custom views.  I choose willpower for example, and it shows up as social awareness, it's workable, but a pain.  There apparently mislabeled in grid views.

-snip-

Update
As a side note, it would be nice to be able to create our own custom columns.  I was hoping to create a close combat grid view based on DGC, which I was able to do.  I added recuperation as well as disease susceptibility.  But what would be cool is if I could create my own variable that has the average of all those stats.  The closest thing I can do is create a script, but I have to set a threshold.  I can see what the averages are (not without DGC).

Update 2
Here's a weighted script I was working on

(((d.strength()*1.2)+(d.agility()*1.2)+(d.toughness()*1.3)+(d.willpower()*.7)+(d.spatial_sense()*1.1)+(d.kinesthetic_sense()*.9)+(d.recuperation()*.8)+(d.disease_resistance()*.8))/8)>1300

note: those smiley's are x.8

the only way i was able to reproduce your attribute column issue was to use an old custom view, with the new build of my branched version. i just tried adding a new attribute view and it's working properly in 34.04 and 34.05. if you've just been copying over the layout files and not using the new executable you might have this issue as at one point between 34.01 and 34.05 the ordering of the mental attributes changed.

in regards to jobs i've been toying with a few ideas to rank dwarves by utilizing the script engine to evaluate user defined expressions similar to what you've shown above, so we'll see...

cool, AnnanFay of Dwarven Guidance Counselor is going to get with you on scripting for dwarf therapist, cuz she/he's working on professions as well.

http://www.bay12forums.com/smf/index.php?topic=83112.msg2509024#msg2509024

By the way, I didn't realize that some attributes had different averages, so I need to adjust the weights so they all come out to be the same number before I apply another weight to give some more value.

About Grid Views:  Originally, I was having problems getting attributes to show values correctly UNTIL I re downloaded your splinterz package and used that solely.  Now that is fixed, but the Grid layouts are having issues when choosing attributes.  No changes to layout ini's, just used what came with the default.

Update to my former formula
Spoiler (click to show/hide)

Average of all attribute dwarf middle values is 1380.736842

Spoiler (click to show/hide)

Another question.
Why is it when I create a script, and I go to edit scripts.  Nothing shows up?

Update 3:
The formula should be something like this...

for each attribute:
((Attribute Value x Factor) - 1380.7368421053) x Weight)
  This gives you a weighted distance from the attribute center (i.e. center is the dwarf average for that attribute).
  Averaging all these values gives you a weighted average from the center.

Formula: ((Attribute Value x Factor) - 1380) x Weight)            

Examples:

Spoiler (click to show/hide)

Here's the new formula:

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 09, 2012, 01:08:22 pm
well i've got a working prototype with a method to use scripts to create a 'role' column. however thistleknot i've tried out your formula (what role is this exactly supposed to fill?) and i'm getting mostly negative numbers (4/113 dwarves have positive results).

the way i have it setup is you want a formula for the role to generate a rating/value for a dwarf. even better if it's a percentage between 0 and 100 and then i can ensure all the drawing types will also work.

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 09, 2012, 01:17:43 pm
well i've got a working prototype with a method to use scripts to create a 'role' column. however thistleknot i've tried out your formula (what role is this exactly supposed to fill?) and i'm getting mostly negative numbers (4/113 dwarves have positive results).

the way i have it setup is you want a formula for the role to generate a rating/value for a dwarf. even better if it's a percentage between 0 and 100 and then i can ensure all the drawing types will also work.


the role I was going for was close combat dwarf.
Original close combat uses
strength, agility, toughness, willpower, spatial_sense, kinesthetic_sense I believe

I added
endurance, recuperation, disease_resistance, focus

If your getting mostly - numbers then I'm not sure what's going on (maybe one of the d.attributes() isn't typed in correctly, so it's missing an attribute that's reducing the average by 1 attribute?).  Maybe I have the center off.  What formula did you use?  The one I posted today?  Because the old formula had the center's off.  Maybe I have the center's off.  Maybe my whole formula is whacked.  I haven't had a chance to try it yet.  I would have to spot check it when I get home.

One could do %'s with the formula, but standard deviations would have to be brought in.  And the %'s would only be in below threshold or above threshold.  And how many standard deviations away I guess.  However, I don't have the standard deviation on dwarven attributes.  I'm not sure what min/max values are.

Also, the formula I'm using is similar to how the changes were incorporated for attributes to display the attribute in red or black for below/above center.  Same conceptual thinking, so I think players are not going to have an issue with it if it were a column listed as "close combat" dwarf.

Some people might not like my weights tho.  So a simple non weighted one might be desired.  Some people might also not like my additional attributes I've included ontop of what DGC used to use.  I'm hoping to be able to create this in dfhack somehow.

Reference for why I did what I did:

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DVeL on March 09, 2012, 01:51:40 pm
I have a request (especially to splinterz, since his work is the most operative  :))

There is one very important military parameter - dwarf size. It determines, if he can use some heavy weapons, like pike, halberd or maul, if he can carry battle axe and a shield simultaniously... And also influences the combat a lot.
It has two sub-attributes, heigth and width, which can be found in description of dwarf appearance (like "tall and muscular" or "short and scrawny"). So, i think, it would be quiet easy to add its numeric value to dwarf therapist. Or at least just add this "short and scrawny" in "Dwarf details".

And what would be totally godlike, is to add a new "weapon-wielding" table, with "weapon types" (there is not so much of them) in columns. And fill it with red diamond, if dwarf can`t wield this weapon, small black - if he can wield two-handed and big black - if he can carry in one hand. This table is available on wiki
http://dwarffortresswiki.org/index.php/Weapon (http://dwarffortresswiki.org/index.php/Weapon)
 
May be it would be a little overloaded with black diamonds, because dwarfs can carry most of the weapons, but what is important - it will allow military fans like myself to create "SWAT" elite teams of grenadiers =)
And also answer some forum topics like "why dwarf doesn`t equip shield? What am i doing wrong??" =)

With best hopes... and sincerely grateful for all the work already done  :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Yaotzin on March 09, 2012, 02:35:41 pm
+1 to that. I'd like to know if my uber-looking dwarf is actually a useless midget who can't even pick up an axe.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 09, 2012, 03:08:12 pm
well i've got a working prototype with a method to use scripts to create a 'role' column. however thistleknot i've tried out your formula (what role is this exactly supposed to fill?) and i'm getting mostly negative numbers (4/113 dwarves have positive results).

the way i have it setup is you want a formula for the role to generate a rating/value for a dwarf. even better if it's a percentage between 0 and 100 and then i can ensure all the drawing types will also work.


I fixed the formula
Spoiler (click to show/hide)

by the way, none of my dwarfs fit the bill, I had to filter it for over -135 lol!  But I did verify all those stats are properly factored.  So they are correctly measured away from the center value dwarves have for said attribute.

The problem was I divided the numbers in the wrong way.  So I changed the positions, and everything works now.

Update: I modified it for over -67.  Those will be your best dwarves.  Apparently these stats are geared to be lower for some reason.  Out of 254 dwarves, none were above 0.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 09, 2012, 03:21:51 pm
well i've got a working prototype with a method to use scripts to create a 'role' column. however thistleknot i've tried out your formula (what role is this exactly supposed to fill?) and i'm getting mostly negative numbers (4/113 dwarves have positive results).

the way i have it setup is you want a formula for the role to generate a rating/value for a dwarf. even better if it's a percentage between 0 and 100 and then i can ensure all the drawing types will also work.


I fixed the formula
Spoiler (click to show/hide)

by the way, none of my dwarfs fit the bill, I had to filter it for over -135 lol!  But I did verify all those stats are properly factored.  So they are correctly measured away from the center value dwarves have for said attribute.

The problem was I divided the numbers in the wrong way.  So I changed the positions, and everything works now.

i've got similar results (i think?) all negative values. so the way the code is setup, it's pretty useless because there's no values shown/drawn for any of them  :-\ the values are also quite large (-550) for some of them. again, it would be really nice to have formulas for roles which result similar to the dgc (0-100%)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 09, 2012, 03:25:57 pm
I don't understand.  -550?  That's pretty low.  I verified the values by individually comparing each stat block in my formula to >0 and <0, and verified that all dwarves either came up all black for that stat, or all red. 

Example:
(((d.strength()*0.920491228)-1380.736842)*1.2)>0
then
(((d.strength()*0.920491228)-1380.736842)*1.2)<0

After I verified them all, I then did another check by seeing if anyone was above 0 for my comprehensive formula.  Nobody was!  Which tells me that the average is below 0 with all these values.

Not too big a deal.  Either the center values reported in attributes for DF are incorrect, or for whatever reason they just average lower.

so I changed the value from >135 to >-67

Try that and tell me what you think.

Update:
Come to think of it, some stats were listing almost no dwarves at > 0 when I was just comparing that stat (yet they were still black, and <0 they were all red).  Give me a second, and I'll show you which ones are the culprits, they could possibly be the ones that don't have their dwarven center's on center.

Well, I guess DT doesn't tell you how many dwarfs fit a filter, so I can't "count" them out of 266 dwarves.

But some of the attributes have their center's off

Willpower has more below average than above

same with
Spatial Sense
Focus

Those are probably why so few are showing up, and none at all when > 0 using my formula.

Update 3:
I found it.  There's gaps in the chart on attributes that I wasn't accounting for.  I have my numbers off!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 09, 2012, 03:41:49 pm
I don't understand.  -550?  That's pretty low.  I verified the values by individually comparing each stat block in my formula to >0 and <0, and verified that all dwarves either came up all black for that stat, or all red. 

Example:
(((d.strength()*0.920491228)-1380.736842)*1.2)>0
then
(((d.strength()*0.920491228)-1380.736842)*1.2)<0

After I verified them all, I then did another check by seeing if anyone was above 0 for my comprehensive formula.  Nobody was!  Which tells me that the average is below 0 with all these values.

Not too big a deal.  Either the center values reported in attributes for DF are incorrect, or for whatever reason they just average lower.

so I changed the value from >135 to >-67

Try that and tell me what you think.

i think you're misunderstanding me, i'm not filtering values at all i'm just plugging in the formula and displaying the results. it works, all the values are there but having -550 for the least compatible dwarf doesn't display as well as 0 or 1%. it works out even better for all the drawing methods because we can then divide the raw results to get values between 0 and 20. see what i mean?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 09, 2012, 03:52:10 pm
I was curious as to how you were getting the results too (you were running Dwarf numbers through the formula, how were you doing that?  By hand?).  DT doesn't give the results for each dwarf, but now you should see that the formula should give you a below or above threshold.

How are you going to do %'s if 0 is the middle?  0 = 50%?  That might work.  I'm not a percent guy myself, I saw the histogram thing in the thread, but I like the way it is right now, big squares.  Mainly because % might be confusing.  % for racial max?  Or game max?  A dwarf prolly can never hit 5000 Strength, prolly reserved for golem's.  But what if someone runesmith's it?  Then display 100%+?

Here's the corrected formula, I just verified it works properly (thank god I'm home).

Spoiler (click to show/hide)

This formula works for above or below average, but...it doesn't account for the scale that is above average.

For example, a dwarf may have a higher ceiling range (higher upper limit, say average is 1000, max is 3000, but minimum is 0).  The only way to account for this, is to factor the value when it's above 0, in the prior example, prolly a factor of x2 when the value is above 0.  Confusing, but for the basics, it works.  However, I do not know dwarf max's.  The problem gets worse when you have multiple attributes with different ranges.

It is possible to do %'s if Dwarf Therapist supports IF/THEN statements, and it would be even better if it supported variables (I'm not sure if it does).

Then we could compare if the attribute was above the average, or below the average.  And then scale accordingly to %.

And do the same for each stat.

Then average all the %'s
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 09, 2012, 04:34:56 pm
Well I don't know how your going to get % when you comparing the value based off the middle.

I was curious as to how you were getting the results too (you were running Dwarf numbers through the formula, how were you doing that?  By hand?).  DT doesn't give the results for each dwarf, but now you should see that the formula should give you a below or above threshold.

How are you going to do %'s if 0 is the middle?  0 = 50%?  That might work.  I'm not a percent guy myself, I saw the histogram thing in the thread, but I like the way it is right now, big squares.  Mainly because % might be confusing.  % for racial max?  Or game max?  A dwarf prolly can never hit 5000 Strength, prolly reserved for golem's.  But what if someone runesmith's it?  Then display 100%+?

Here's the corrected formula, I just verified it works properly (thank god I'm home).

Spoiler (click to show/hide)

One last note.  This formula works for above or below average, but...
it doesn't account for the scale that is above average.

For example, a dwarf may have a higher ceiling range (higher upper limit, say average is 1000, max is 3000, but minimum is 0).  The only way to account for this, is to factor the value when it's above 0, in the prior example, prolly a factor of x2 when the value is above 0.  Confusing, but for the basics, it works.  However, I do not know dwarf max's.

If dwarf max's were known, then %'s could be done.

all i'm trying to do is determine if we can get the role formulas to fit into a standard so they can be easily displayed. so to take your formula again, i've got a range between -550 and -5. so how do we draw that? is -550 awfully bad, or is it still decent? what's the absolute awesome level that we'd want to draw the black diamond at?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 09, 2012, 05:02:54 pm
all i'm trying to do is determine if we can get the role formulas to fit into a standard so they can be easily displayed. so to take your formula again, i've got a range between -550 and -5. so how do we draw that? is -550 awfully bad, or is it still decent? what's the absolute awesome level that we'd want to draw the black diamond at?

I now understand what your asking, and I had to do some quick spreadsheet stuff.

if using my most recent formula in http://www.bay12forums.com/smf/index.php?topic=66525.msg3078785#msg3078785

I took the max value possible with my formula for every stat, and then averaged it.  So if someone runesmith'd there character to 5000 in everything, then the max value with my formula (with the weights I have) is 3847.614.
Lowest value is -1108.12
0 = middle.

Without weights (i.e. if your removed the *1.2 and *.8 you see in my formula's at the end of each attribute line).
Then the scale would be
-1130.7368421053 for the lowest possible value
0 = middle
3962.174 for the highest possible value

Does that help?


Update:
I might want to change the formula to not factor anything.  But to simply subtract the middle value (i.e Strength's middle value is 1250, Agility is 900, toughness is 1250, etc http://dwarffortresswiki.org/index.php/v0.31:Attribute) from each attribute.  This would yield a deviation from the center.

It would be interesting to see how they did that already with dwarf therapist in displaying attributes.  I should get a copy of runesmith and 31.25 to check it out.  They must have 0 strength listed as the biggest possible red square, and 5000 strength as the biggest possible black square right.  Or did they just use the attribute blocks as listed on the attribute site?  Each attribute has 8 categories, 4 above average, 4 below.  Seems like you got your 4 red/black squares right there.

Seems easier, would probably yield similar results, but for now, what I've displayed should work.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 09, 2012, 05:15:11 pm
all i'm trying to do is determine if we can get the role formulas to fit into a standard so they can be easily displayed. so to take your formula again, i've got a range between -550 and -5. so how do we draw that? is -550 awfully bad, or is it still decent? what's the absolute awesome level that we'd want to draw the black diamond at?

I now understand what your asking, and I had to do some quick spreadsheet stuff.

if using my most recent formula in http://www.bay12forums.com/smf/index.php?topic=66525.msg3078785#msg3078785

I took the max value possible with my formula for every stat, and then averaged it.  So if someone runesmith'd there character to 5000 in everything, then the max value with my formula (with the weights I have) is 3847.614.
Lowest value is -1108.12
0 = middle.

Without weights (i.e. if your removed the *1.2 and *.8 you see in my formula's at the end of each attribute line).
Then the scale would be
-1130.7368421053 for the lowest possible value
0 = middle
3962.174 for the highest possible value

Does that help?


Update:
I might want to change the formula to not factor anything.  But to simply subtract the middle value from each attribute, and average that.  Seems easier, would probably yield similar results, but for now, what I've displayed should work.

yeah that helps, but the big issue is that it's not calculating all the values in one go and storing them, as it displays the column it's putting in the values/rating so it doesn't really know at that point what the min/max is. i might have to try changing that if it's really impossible to get percentages with weighted formulas (i think it should be possible, dgc was doing it after all). however i haven't been on speaking terms with the maths for many a year.

as an example, i'm using that crappy unweighted formula i made before, and since i know the values will be between 0-100, i can draw them just like the attributes and skills, augmenting the result so it rests between -50 and +50, then scaling it down to between -20 and +20. this is the same range used for the attributes and skills. this way it doesn't matter what formula you throw it, as long as your min/max range ends up between 0 and 100, it will draw everything without issue.

edit:
i totally missed what you asked about attributes. they're basically hard-coded to use the ranges specified on the wiki and then assign a rating from there. as an example for strength, the lowest (<251) bracket is a -15 rating or the red diamond. the highest (>2250) is +15 and the black diamond.

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 09, 2012, 05:47:57 pm
UstWell the formula I gave you was what I had to work with in dwarf therapist.  I can give you a c++ formula that would normalize the distributions (that's if your actually implementing this into the source code).  It would give better results.  The problem w my formula is it normalizes the means but it changes the mins and maxs (especially when I use weights).  I could try a few things and do category blocks like those on the wiki, or I can force them all to a value between 1 and 100, 50 being the average.  Either way, the results aren't optimized nor correct for really high values (example highest willpower and focus w my formula is around 2900, str is like 4500).  So u can see their is a bias, and I don't think it should go into the source.

If dt supports if/then statements, then I can fix it with just dt
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 09, 2012, 06:01:10 pm
Well the formula I gave you was what I had to work with in dwarf therapist.  I can give you a c++ formula that would normalize the distributions (that's if your actually implementing this into the source code).  It would give better results.  The problem w my formula is it normalizes the means but it changes the mins and maxs (especially when I use weights).  I could try a few things and do category blocks like those on the wiki, or I can force them all to a value between 1 and 100, 50 being the average.  Either way, the results aren't optimized nor correct for really high values (example highest willpower and focus w my formula is around 2900, str is like 4500).  So u can see their is a bias, and I don't think it should go into the source

maybe i'll take another look at what dgc did to get those results. i really thought it would be possible to create a weighted formula with the scripting that would spit out a percentage similar to what dgc comes up with.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 09, 2012, 06:21:54 pm
-snip-

If dt supports if/then statements, then I can fix it with just dt

the QScriptEngine does support if statements, i just tried the following and it's putting in the correct values: if(d.strength()>1000){0}else{1} 

i'm about done for tonight but i'll see if maybe sometime tomorrow i can get a build out that includes these changes so you and others can mess around with scripts to define roles.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 09, 2012, 10:47:16 pm
I took a sample of 294 dwarves, and found their min/max values.

I updated the wiki (hopefully they don't pull it).

http://dwarffortresswiki.org/index.php/DF2012:Attribute#Sample_of_294_Dwarves_with_Min.2FAvg.2FMax_Values

New Link:
http://dffd.wimbli.com/file.php?id=5834 (http://dffd.wimbli.com/file.php?id=5834)

Min value for dwarves is 146 (Agility)
Highest value is 2537 (Musicality)

Which means my formula from earlier doesn't suffer too much bias for higher numbers, but I found some interesting results.

Dwarves have higher than center musicality and memory

They have a few stat's that are higher than the center's reported on attributes wiki.  I marked them after their name with either a < or a >.  Agility was pretty much right on.

I did discover that their is a bell curve to these values (possibly skewed, but I need a bigger sample), which is good to know.

In light of that information, I posted a new formula (that doesn't use factors anymore)
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: ClubFoot on March 09, 2012, 11:48:48 pm
I am, indeed, unsuccessful w/ the osx version.

Here's a new OSX beta version. Should fix the double icon issue, and the automatic download issue.

Dwarf Therapist OSX Beta (64-bit) v0.6.12b04 (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b04.dmg)

success!  Thanks.

I think the biggest outstanding issue for basic OSX support is the inability to change the professions.  Otherwise, this seems to be functioning fully.



Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 10, 2012, 08:42:38 am
Spoiler (click to show/hide)
0[/code][/spoiler]

Well, my 294 dwarf sample was pulled from the wiki, but on the wiki for attribute, it has 2500 listed as pretty much the defacto max for dwarves (though I had a dwarf with slightly above 2500).

http://dwarffortresswiki.org/index.php/DF2012:Attribute#How_Your_Dwarf_Gets_Attributes

I've found that the lower range tends to be closer to 200.

Dwarves have higher than center musicality and memory

They have a few stat's that are higher than the center's reported on attributes wiki.  I marked them after their name with either a < or a >.  Agility was pretty much right on.

Also, according to the wiki, dwarve's have a higher

Here's my 294 dwarf sample if anyone's interested.
http://dffd.wimbli.com/file.php?id=5834
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 10, 2012, 10:10:15 am
could we have traits added into dwarf therapist rather than having to apply filters?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 10, 2012, 03:40:34 pm
could we have traits added into dwarf therapist rather than having to apply filters?

i'm pretty sure you can add trait columns in a custom view if you want, however the drawing methods are missing (i think).

in regards to the roles i've been working on and after giving it more thought, i'm strongly leaning towards just implementing something similar to what dgc did in terms of allowing users to specify a role simply by adding lists of traits, attributes and skills. the advantage would be that it's much more user friendly to define a custom role. the disadvantage is it won't be as flexible as building some crazy weighted script.

the only question then is how to also factor in the levels of traits and skills? should they be weighted equally important as attributes, or something else? anyone have any thoughts on this?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 10, 2012, 09:26:22 pm
could we have traits added into dwarf therapist rather than having to apply filters?

i'm pretty sure you can add trait columns in a custom view if you want, however the drawing methods are missing (i think).

in regards to the roles i've been working on and after giving it more thought, i'm strongly leaning towards just implementing something similar to what dgc did in terms of allowing users to specify a role simply by adding lists of traits, attributes and skills. the advantage would be that it's much more user friendly to define a custom role. the disadvantage is it won't be as flexible as building some crazy weighted script.

the only question then is how to also factor in the levels of traits and skills? should they be weighted equally important as attributes, or something else? anyone have any thoughts on this?

I think that's best.  I just did a formula with a trait.

I had 3 attributes (for a diagnostician), and added helpfulness.  To get helpfulness to match the other stat, I weighted it by x17.

I chose x17 because attribute-50 = a range of 0 to 50 away from 0 (center).  The 3 attributes that (diagnostician used in DGC) were Analytical Ability, Memory, and Intuition.  Each had their own range of 800-900 from 0.  I got this from determining what the minimum vs maximum was (I had a sample of dwarves (WHICH HAS DIFFERENT RESULTS THAN THE WIKI FOR SOME AVERAGES), but one could just use the http://dwarffortresswiki.org/index.php/DF2012:Attribute site and guess what the max was.

Spoiler (click to show/hide)

The 3 attribute's had ranges from their average as 800, 800, 900 from average.  (averaged range from average had 833.33).  833.33/50 = 16.66.

I could have used 16.66, but I wanted to give helpfulness a higher weight, so I made it 17.

I weighted the other two, analytical ability, intuition, and whatever at 1 to 1.1, so I was giving helpfulness a weight of .33 higher (16.66 to 17 is .33 higher).

I would include the option of specifying weights, default could be 1 if none is entered.

In the end the formula was something like this
Spoiler (click to show/hide)

Hope that made sense.

Update:
The idea works, but I just realized those ranges are not from average.  Range from 0 is different  some have higher range to max than they do to min.  I guess I would have to average those two.

For example, for intuition I have a min of 452, max of 2250.  Range of 1790.  However, average is 1256.  So a min has a range of 804 from average, and max has a range of 994.  I would of course round all these numbers.  I would say the min has a range of 0 of 800, and from max 1000.  I would average the two to say intution has a range of 900 from 0.

I would then repeat the same for analytical ability and memory.
Analytical: 900 from average
Memory: 850 from averaage
(900+900+850)/3 = 883.333
883.333/50 = 17.66666666666667

New formula would be
Spoiler (click to show/hide)

If I were to use more traits, I would continue to base the traits multiplier on the value I derived (ex. 883.333/50 = 17.66666666666667), and increase the number I'm dividing by from /4 to how many attributes/traits are involved.

The 110 is a number I derived from the average center attribute value (i.e. an average of all attribute average values) * 10%. 1100 in this case is the average of ALL ATTRIBUTE averages.  However, it might be more accurate to use the averages of only the attribute's involved.  Example: Intution average is 1250, Memory: 1500, Analytical: 1000, average is 1250.  Again, I'm using the averages I derived from a sample of 294 dwarves, the averages for stats are listed in the wiki, and those can be used instead.

Update:
I just realized something, applying the .33 increased to 17.66 might not be right, I might want to do d.trait(20)*17.66*1.3.

New formula would be
Spoiler (click to show/hide)

Update 3:
Changed my < to > in my formula's

As a side note, the benefit of crazy weighted scripts isn't really important.  Dwarf Therapist has the ability already by just using the scripts I provided, one can change the >threshold quite easily.  I no longer think a column with a weighted script is a good idea anymore.  I think maybe some default scripts being provided with dwarf therapist is a better idea.  However, determining weights is a hard issue.  I'm thinking of starting a thread on dt filter scripts.

Here's a ranged combat script
Spoiler (click to show/hide)

Update:
A note on average discrepencies.  You can run a function that does the averages of all attributes of your dwarves at any given time, and calculates min/max's, and averages the range from the average.  Then use this for the formula's.  This creates a dynamic range of best available dwarves based on the makeup of your fortress.  This is only recommended if min/max ranges as well as averages are unknown.

Update:
Using the crazy convoluted weighted system (but everything described above), I came up with a close combat formula that takes into account the rage trait, as well as the perseverance trait.
Spoiler (click to show/hide)

Update:
Thanks for the info on the if/else stuff, I implemented it (shouldn't care if a close combat dwarf has below average rage, but it should be beneficial
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: schismatise on March 11, 2012, 01:16:29 am
You guys are nuts. I was following this entire thread to the letter and then suddenly thistleknot shows up and starts talking rocket science!

the only question then is how to also factor in the levels of traits and skills? should they be weighted equally important as attributes, or something else? anyone have any thoughts on this?

Anyway, i think i can help you with that at least - the obvious answer is they should be weighted based on how fast they are to level up. Many skills take years or even decades to go from 0 to legendary, while going from 'weak' to 'superdwarvenly tough' might only take a few seasons of constant sparring. I rarely, if ever, take attributes into consideration when picking military dwarves, for example. I'm more likely to pick an active, easily angered dwarf with high willpower who's weak as a stick than a friendly superdwarf, since traits, on the other hand, can't level up at all. So i suppose traits should be given the relevant merit, although it's not entirely clear how much more an angry dwarf will enter rage, let alone how much it effects combat.

TLDR: skills > traits > attributes, imo

Of course, if you're picking out soldiers to turn into vampires, it's a whole different story (since their attributes become locked permanently upon vampyrism).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 11, 2012, 02:42:12 am
You guys are nuts. I was following this entire thread to the letter and then suddenly thistleknot shows up and starts talking rocket science!

the only question then is how to also factor in the levels of traits and skills? should they be weighted equally important as attributes, or something else? anyone have any thoughts on this?

Anyway, i think i can help you with that at least - the obvious answer is they should be weighted based on how fast they are to level up. Many skills take years or even decades to go from 0 to legendary, while going from 'weak' to 'superdwarvenly tough' might only take a few seasons of constant sparring. I rarely, if ever, take attributes into consideration when picking military dwarves, for example. I'm more likely to pick an active, easily angered dwarf with high willpower who's weak as a stick than a friendly superdwarf, since traits, on the other hand, can't level up at all. So i suppose traits should be given the relevant merit, although it's not entirely clear how much more an angry dwarf will enter rage, let alone how much it effects combat.

TLDR: skills > traits > attributes, imo

Of course, if you're picking out soldiers to turn into vampires, it's a whole different story (since their attributes become locked permanently upon vampyrism).

yes that's what i was leaning towards as well. my intention was to do something much simpler than what thistleknot proposes by assigning a rating like so: take an equally weighted average of the attributes specified for the role, using the functions defined by dgc (example below). then take a weighted average of traits and skills (separately, but possibly using a similar function). finally i'd use user defined weights for the 3 groups to determine the final 'rating' as a weighted average of traits, skills and attributes.

Code: (dgc strength function. x = strength) [Select]
    var xpct;
    if (x <= 949) {
        xpct = ((0.0333988 * x) - 15.0295)
    } else if (x >= 950 && x <= 1149) {
        xpct = ((0.0837487 * x) - 62.8943)
    } else if (x >= 1150 && x <= 1249) {
        xpct = ((0.168333 * x) - 160.249)
    } else if (x >= 1250 && x <= 1349) {
        xpct = ((0.168343 * x) - 160.429)
    } else if (x >= 1350 && x <= 1549) {
        xpct = ((0.0837538 * x) - 46.4006)
    } else if (x >= 1550) {
        xpct = ((0.0238412 * x) + 46.3801)
    };
    return xpct;

i'll have to code it and then do some testing with thistleknot's formulas vs this method and see how much they differ. the disadvantage would be that it's not as flexible because you wouldn't be able to weight attributes/traits/skills individually, but i'm not convinced this is necessary seeing how useful dgc is while generating a rating purely on equally weighted attributes. the main advantages would be that it's simpler for the user to add roles (less weighted values to consider), and everything would be standardized to percentile results. additionally this means we don't have drawing issues because we know the resulting ranges we're dealing with. after all, what's the point of adding a column for a role when you can't see the results?

@thistleknot: i disagree that having role columns is a bad idea. the problem with filter scripts is that they, well... filter. you constantly have to tweak the formulas to make sure you're getting data. if you get no results, that's no good, because while nobody fits your precise filter, you still want to know who would best fit the role anyway. a column with the ability to sort and view the rating graphically does just that. i think something similar to this (http://www.imageupload.co.uk/files/6tlj3q0tfbygqvei1ppd.png) as an end result would be awesome.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 11, 2012, 03:08:36 am
Wow, so much in that post.  I liked the % thing at the end.  Yeah, I'm not for %.  Why?  Because this isn't exact.  However, the users are never gonna know the ranges either I guess.  So maybe % is good.  I believe with some research http://dffd.wimbli.com/file.php?id=5834 (http://dffd.wimbli.com/file.php?id=5834) I've been doing we can figure the min/max/avg for all attributes (which differ from the wiki for some things).

YES THERE IS A BELL CURVE to attributes.  I was gonna try to figure out how to merge bell curves, but it makes my brain hurt.  That's why I just did simple Attribute-(Attribute's Average) to get a result that differed from the center of said attribute.  If doing %, then you need to find the min/max values from average of all attributes for that profession, and that will be your range from 0 that represents %.

Example:  A hypothetical profession that uses Analytical, and Agility

0 represents Attribute's average (i.e. attribute-average)

Agility: Averaged ranged from 0 is ~725
Analytical: Averaged ranged from 0 is ~885
Both Averaged = 805
var attributeAveragedRange = 805; (round to 800)

So, a -800 would be 0%, and a +800 would be 100%

Simple enough.

Traits already have their ranges setup (0-100, or -50 to 50 after you apply trait-50).

As explained earlier, traits need to be factored to equal the range of the attributeAveragedRange.

var avgAttrMean = the average of all Attributes involved (Agility is rounded to 900, analytical 1000), average is 950
var pctAwayFromMean = avgAttrMean*.15;
var traitTactor = attributeAveragedRange/50;
which is 800/15 (which results in 16).

Then the formula would be an average of all deviations from the center.

So

d.agility()-average is... (rounded to logical)
1 represents a factor, 1 means 100%
((
((d.agility()-900)*1)+
((d.analytical_ability()-1000)*1)+
((d.trait()-50)*16*1)
)/3)>pctAwayFromMean

Update:
I forgot to mention, pctAwayFromMean needs to be factored (although it's not really that important) to the average of all attribute weights.

Above example, everyone's weight is 1, so there's no need to mess with pctAwayFromMean, but if the weights were 1.3, 1.2, and .9, the average of that is 1.133333333333333, then pctAwayFrom would be factored by 1.1333, this is because the weights is going to change the averages (because it's weighting the results).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 11, 2012, 03:10:50 am
What is this?  I see category's and percents, but what do the percent's represent?  A distribution curve?

Code: (dgc strength function. x = strength) [Select]
    var xpct;
    if (x <= 949) {
        xpct = ((0.0333988 * x) - 15.0295)
    } else if (x >= 950 && x <= 1149) {
        xpct = ((0.0837487 * x) - 62.8943)
    } else if (x >= 1150 && x <= 1249) {
        xpct = ((0.168333 * x) - 160.249)
    } else if (x >= 1250 && x <= 1349) {
        xpct = ((0.168343 * x) - 160.429)
    } else if (x >= 1350 && x <= 1549) {
        xpct = ((0.0837538 * x) - 46.4006)
    } else if (x >= 1550) {
        xpct = ((0.0238412 * x) + 46.3801)
    };
    return xpct;
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 11, 2012, 03:34:35 am
One problem with my formula's is they only factor in attributes and traits.

I like what the idea schismatise posted
skills > traits > attributes.

One could argue skills/labors are the same, some skills/labors (like appraisal) can't be assigned.  Tho you may have a good dwarf to do a labor based on attributes... which is a problem.  There might not be too many labors like that though.

I just assumed since labors improved faster/efficiently based on attributes, that I would focus everything on attributes and let the labors work themself out.

However, I'm having a problem with a broker script that gives me someone with no appraisal skill.

And then there's skills.

So something needs to be done to ensure the proper order and weights are applied. 
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Kogut on March 11, 2012, 04:07:02 am
BTW, traits and attributes are without any effect on quality of items produced by legendary dwarves.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 11, 2012, 04:23:00 am
BTW, traits and attributes are without any effect on quality of items produced by legendary dwarves.

That could be used as an overriding factor.  In fact, if a dwarf is close to legendary status, maybe an if, else statement can be done to change the course of a decision to favor such a dwarf.  But for all the new hires, I think the trait/attribute is a good fit.

Update:
Can't sleep, clown's will eat me.

I simplified the formula for those following

Formula

for traits:
(trait-50)*
(average((each attribute's mean - attribute minimum)+(each attribute's max - mean)/2))/50
*weight

for attributes:
average((each attribute - attribute's average)*weight)>
((15% of all attributes averages)*(averages of all weights))

When adding traits and attributes, treat trait as an additional attribute (i.e. include it's weight in the averages of all weights, include it in the average((each attribute...)...

God so tired.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 11, 2012, 05:47:45 am
What is this?  I see category's and percents, but what do the percent's represent?  A distribution curve?

Code: (dgc strength function. x = strength) [Select]
    var xpct;
    if (x <= 949) {
        xpct = ((0.0333988 * x) - 15.0295)
    } else if (x >= 950 && x <= 1149) {
        xpct = ((0.0837487 * x) - 62.8943)
    } else if (x >= 1150 && x <= 1249) {
        xpct = ((0.168333 * x) - 160.249)
    } else if (x >= 1250 && x <= 1349) {
        xpct = ((0.168343 * x) - 160.429)
    } else if (x >= 1350 && x <= 1549) {
        xpct = ((0.0837538 * x) - 46.4006)
    } else if (x >= 1550) {
        xpct = ((0.0238412 * x) + 46.3801)
    };
    return xpct;

from dgc: (https://github.com/AnnanFay/dgc)
Quote
I weight all attributes attached to a skill equally, and assume that a high percentile in one cancels out an equally low percentile in another. I scale attributes to percentiles in the six default ranges, and let the lines of the first and last ranges run off infinitely, meaning very high and very low attrs slowly stop making sense. For instance you get default strength of 100% at 2250, but a strength of 5000 will only report 166%.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 11, 2012, 06:17:53 am
If you guys are interested, here are my scripts.

I wish I could figure out the standard deviations (then I could use it for threshPct instead of just basing theshPct on the mean itself).  I don't know if I can average the standard Deviation between all the between attributes.

http://dffd.wimbli.com/file.php?id=5850 (http://dffd.wimbli.com/file.php?id=5850)

Super late update (Jan 25, 2013):
Yes, yes you can...

you can use root mean square to combine standard deviations
:)

man, I love answering my past
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: AnnanFay on March 11, 2012, 07:43:37 am
I feel I should step into the discussion to say some things.

First of all, splinterz's above quote is correct. I've not changed the README however my current version of DGC still uses the old formula. (though refactored!)

This formula assumes that information in the wiki is correct, and without seeing more well documented tests with evidence I think they are correct. Attributes get raised by using skills and I believe thistleknot used dwarves from two large fortresses which would have seen attribute growth.

The DGC formula takes an attribute that falls within the generated range and maps it from 0-100. This roughly is how much of the population this is better than. If it's 80% it means that given 100 generated dwarves this will be above ~80 of them.

This is a very good formula to use when embarking! However it suffers huge problems as soon as you get immigrants, babies or any of your dwarves do anything since attributes will deviate from the generated averages.

If you have a very large fort you don't want to know how good your dwarves are above the generated average, you want to know how good they are in relation to all your other dwarves. Hence, two formula are needed, one for embark and one afterwards.

A third formula may be useful and can also be used on any other creatures. This is to say that attributes are between 0-5000 so weight all attributes by dividing by 500. 100 will be the maximum value possible and 0 the minimum.

So yeah, I'm planning on having all three formula in the next release of DGC. Hopes this info helps people! :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: chrisadams3997 on March 11, 2012, 08:24:00 am
I'm only lightly following all this right now, got enough RL things to keep me busy, but I wanted to pop in and say I agree with Spliterz that columns would be the stronger approach over filter scripts.  Any formula should aim to result in a standardized range (e.i. 0-100) as well as Splinterz and AnnanFay's approaches do for the numbers to really mean anything and to support visual drawing methods.  The formulas themselves I'll leave to you guys for now  ;).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 11, 2012, 08:45:22 am
I feel I should step into the discussion to say some things.

First of all, splinterz's above quote is correct. I've not changed the README however my current version of DGC still uses the old formula. (though refactored!)

This formula assumes that information in the wiki is correct, and without seeing more well documented tests with evidence I think they are correct. Attributes get raised by using skills and I believe thistleknot used dwarves from two large fortresses which would have seen attribute growth.

The DGC formula takes an attribute that falls within the generated range and maps it from 0-100. This roughly is how much of the population this is better than. If it's 80% it means that given 100 generated dwarves this will be above ~80 of them.

This is a very good formula to use when embarking! However it suffers huge problems as soon as you get immigrants, babies or any of your dwarves do anything since attributes will deviate from the generated averages.

If you have a very large fort you don't want to know how good your dwarves are above the generated average, you want to know how good they are in relation to all your other dwarves. Hence, two formula are needed, one for embark and one afterwards.

A third formula may be useful and can also be used on any other creatures. This is to say that attributes are between 0-5000 so weight all attributes by dividing by 500. 100 will be the maximum value possible and 0 the minimum.

So yeah, I'm planning on having all three formula in the next release of DGC. Hopes this info helps people! :)

hi! thanks for chiming in on this, much appreciated! alright so as i've shamefully admitted i am terrible at the maths, but it seems to me that the reason for having multiple formulas is due to ratings being generated relative to other dwarves in a fort, relative to the generated levels or relative to the absolutes. now you've been doing this much longer than i have so perhaps you can explain a bit more why this is necessary rather than just rating based on the wiki page's min/max values?

for example if i have a dwarf with 1500 strength, dgc says that he's 79% better than the generated ranges, correct? so if you applied the same thing to 0-5000 rather than the generated, obviously the rating percentage would be lower, but wouldn't they still have the same overall rank relative to the other dwarves?

am i just tired and missing something obvious here, or is it simply a matter of preference?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 11, 2012, 09:21:02 am
I beseech anyone to do a test of their dwarves attributes (I used advanced xml converter, free for trial use, and scalc to get it done).  Some of the attributes were averaging LOWER than the wikis!  So do dwarves lose attributes too?  Anyways, that is why I was proposing an average based on the current population of dwarves, rather than the wiki.  However since I have had two independant samples conclude the same averages.  I'm sticking w my averages until I see a different sample that proves the wiki is more accurate.

Also, using the current populations average makes sense (if the average indeed can change from the wikis).  I feel it would be more optimized for your current population and avoid arguments over as to what the "correct" averages are.

I also have a recommendation for how to get % based on my formula using statistics.  I wasn't sure how to combine the different attributes, but I believe I know how to do it correctly.  You basically combine the attribute arrays into one super array worth of values and derive the mean and standard deviation from that, then using elementary statistics, you can derive what % your at from the mean (this is assuming a bell curve WHICH THE WIKI SAYS THERE ISN'T ONE, but using my sample, it's plainly obvious that there is a bell curve of some kind).  The only issue I see with this, is if the distribution curve is skewed to the left or the right, I don't remember if that matters when using standard deviation and want to look into it.  However, I hope to have an answer today.  I'm also hoping that I can just average the standard deviations from all the involved attributes and get a new standard deviation to apply to the school of attributes involved with a specific role rather than have to derive it from one large super sample of all involved attributes.

UPDATE: Using a 340+ sample of dwarves, averaging a standard deviation of 315.15 and 400.67 gave me 357.91, combining the samples into one and doing a standard deviation of 367.1, so I guess the averaging gave me a bias of
2%.

Upon further reading, I'm finding that I shouldn't average the standard deviations, but use the entirety of the dataset :(.  Something I don't know how to do with dwarf therapist script engine (it took me forever how to figure out how to declare a var!)

I recommend using standard deviation, it's quite easy to find:

Spoiler (click to show/hide)

I have yet to re-figure out how to find a % along the distribution curve using standard deviation, but that should be easy.  It's important that when getting a mean from a super-set, that we apply the weights to each set of attributes individually before we combine them into a superset, you can apply weights to the superset afterwards (because there all combined into one dataset).  For example, str weight of 1.2, willpower of .8.  so we would multiple the strength attribute dataset by 1.2, then the willpower attribute dataset by .8, then combine them into a superset, then find the mean, and standard deviation.

I think I got it right, we then might need to take an individual dwarf's attribute's and apply the weight to his attributes before comparing it to the superset (to make it match the superset weights), I'm not 100% sure on this.  Weights make it confusing for me, but I do know we need to apply the weights to the datasets BEFORE combining them into one superset to get the mean/standard deviation.

Update:
Okay, I re-remembered how to do standard deviations.  Unfortunately, there's no easy math formula for it, you have to reference a table (which means probably coding this into an array, or something convenient for referencing).  It's called the Table of the Standard Normal Distribution, aka z-value http://www.fmi.uni-sofia.bg/vesta/virtual_labs/tables/tables1.html (http://www.fmi.uni-sofia.bg/vesta/virtual_labs/tables/tables1.html).  Then you take a attribute you want to compare, and compare it to this table and measure it in how many standard deviations it is away from the mean, and that is your % away from 50% (either above or below 50%).  The table I supplied can be reversed above 50% using the same standard deviations in column z, if that is confusing I can provide a more complete table, but it's simply counting down from 50% the same distance as it counts up from 50%.

I have an example for you: 
Spoiler (click to show/hide)

As a note, the standard distribution curve is used for normal distributions, which dwarf attributes may not be made up of (there is a curve though).  However... this method is probably the best we're going to get, and uses the same "normal" logic I was using with my min/max range method (that method was assuming a flat distribution vs a curve, but still symmetrical).  Good thing I took statistics in High School, otherwise this stuff would have been harder for me.

Update:
i realized multiplying a dataset by a weight and THEN finding it's average, is the same as multiplying the dataset average by the weight (which means you can average all the new weighted averages to get the superset averageUpdate, no it's not, the distance from mean multiplied means the stdevp is multiplied by the weight.  However, a superset of all role attributes (after being weighted) still needs to be done to determine the variation from the new mean to properly figure standard deviation.
the (sample-1) can be skipped and a (sample) can be used when dividing squared deviation from mean from.

Example:
  Agility average: 879.59
  Analytical average: 1052.42
  Creativity average: 1044.32
  Sum: 2976.33
  # of attributes: 3

Update:
  My formula's had a messed up weighted mean, I had addition occurring before multiplication, it was the other way around.

  It's (attribute mean * weight)+(attribute mean * weight)+...(for each attribute)/(# of attributes) = weighted mean.
  ((1250*1.1)+( 900*1.2))/2 =
  1227.5
 
Not
  average of attribute averages: (1250 + 900)/2 = 1075
  average of weights: 1.1 + 1.2 = 2.3; 2.3/2 = 1.15

  multiply attribute average by weight average: 1236.25

The weighted mean WAS ONLY USED TO DETERMINE THE > #.  Which was a % (10-20%) of the weighted average.
  So the impact on the formula's is minimal, the rest of the formula was sound.

Update:
I think the original reason I requested a user definable column, was to be able to do my own sort.  Whether I wanted to use flat out numbers, or %.  That way I could create a script (hopefully) in dt, and then see my own new column that I can do a sort operation on.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 11, 2012, 02:15:54 pm
Apparently I was misusing the terminology, weighted mean.  My formula's don't use weighted means, but they do weight a dataset over another dataset, which does affect each dataset's mean.

Update:
I did a simple_embark from 31.25 for 1500 dorf's.  Then I exported their attributes with advanced xml converter (had to flip the .xml document internally to get the rest of the document exported since it's a trial version, but verified the stat's were not duplicated).  The means, min's, max's matched my old sample, and continued to verify that the attribute wiki has incorrect dwarf median/mean attribute levels for a few attributes (which is important for those developing formula's for DT or DGC!!!.  (I don't mean to say the wiki is incorrect, I'm just wondering why the "center dwarven attribute" is not matching with what the actual results are.)

Anyways, I'll include the pic as a followup pic for the other reference I have for the attribute wiki.  Hopefully people catch on.

It's interesting to see the distribution isn't a bell curve, but it certainly is similar.  The author of DF decided certain ranges were going to have more WEIGHT than others, for example, Agility has a higher range from 900-1100 than any other, and for Analytical, it's 900 to 1100 as well.

I'll update the post later with a link to the .ods spreadsheet I got this from.

Check it out
Spoiler (click to show/hide)
The Averages are off on a few of the attributes's from the wiki! 

http://dffd.wimbli.com/file.php?id=5854 (http://dffd.wimbli.com/file.php?id=5854)

hell yeah, my formula's will hopefully be validated

although (cuz my formula's are best for a flat distribution curve)... I still recommend the standard deviation, otherwise... you guy's are going to have fun trying to mix different distributions of attributes together to come up with a % scale.  If you mix enough attributes together, you will come up with a bell curve.  So it's best to just use statistics to figure it out.  Use standard deviation for future % values for Dwarf Therapist.  Statistics is quite easy, once you figure out the z table.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Icefire2314 on March 11, 2012, 06:55:17 pm
This is beautiful. I literally just opened it and I'm already in shock. Seriously, beautiful. Never used it before :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Mike Mayday on March 11, 2012, 07:21:45 pm
Dearest Engineers!
Is there a way to prevent social skills from showing in the tooltip when mousing over the name list?
Is it possible to make said name list colour coded according to profession?

Are there plans to allow for assigning to squads directly in DT?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Goncyn on March 11, 2012, 07:54:59 pm
Are there plans to allow for assigning to squads directly in DT?

That would be beyond brilliant because it would remove the most common source of trying to pick a dwarf from the little tiny list in-game.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Baselope on March 11, 2012, 09:08:01 pm
Oncyn you just raised a great point.  Maybe we are both doing this wrong when making squads what I do is nick them in DT and then pick the nicknames out into squads in DF.  It is quite tedious, but I'm not complaining because DT is so awesome I am blinded to such minor imperfections.

Still, I will second that function to be on the list for our inspired dwarf utility crafters to consider worthy of their time.  I hope that it isn't a technological nightmare as it would be a huge improvement.  I'd definitely like it better than nobles/vampire or other types of information.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vorpal+5 on March 12, 2012, 05:01:35 am
I have a lingering question, about a minor DF lack that is quite annoying (obviously for me, but I dare believe it annoys others too?).

Why the (no job) and the (on break) icons in DF are the same, the small red/orange dot? Quite often I have to check if they are really idle, or just taking a well deserved rest...  :D

More generally speaking, does any plan exist to further improve DF? Like for example a filter on idle dwarves (only showing them?)
Title: Re: Dwarf Therapist (LATEST 0.6.12 2/29/12 see first post)
Post by: schismatise on March 12, 2012, 06:43:09 am
More generally speaking, does any plan exist to further improve DF?

Current plan is:
  • Slight hiatus
  • Bugfix release
  • Feature releases
Of course, I'll continue to try to provide layouts ASAP for new releases.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vorpal+5 on March 12, 2012, 12:38:48 pm
ok thanks.  :-\
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 12, 2012, 04:39:26 pm
I have a lingering question, about a minor DF lack that is quite annoying (obviously for me, but I dare believe it annoys others too?).

Why the (no job) and the (on break) icons in DF are the same, the small red/orange dot? Quite often I have to check if they are really idle, or just taking a well deserved rest...  :D

More generally speaking, does any plan exist to further improve DF? Like for example a filter on idle dwarves (only showing them?)

don't worry, we're still reading the threads and keeping notes. it might not be done in the next 24 hours, but we're still aware of issues posted.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 13, 2012, 09:39:28 am
Thanks for splinterz for his patience & support!

Here is a script filter where you can use normalized probabilities to get results out of dwarf therapist!

By the way, this is exactly what Splinterz is working on for his next release of DT, except his means will be population based, and it will be WAY MORE user friendly than modifying a script.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 13, 2012, 07:39:33 pm
well i've nearly got role columns finished:

(http://farm8.staticflickr.com/7039/6980671317_57d471815f_z.jpg)

it will rank dwarves based on the aspects for the role: attributes, skills and traits. each aspect can have it's own individual weight, and the groups themselves can also have a weight applied. this should give maximum flexibility in creating precise roles. additionally it's possible for traits to be rated inversely. for example if you want to find a very good liar, the less honesty a dwarf has, the better a liar they would be.

the roles are drawn the same as attributes, with dwarves better fitting roles as large black squares, and the worst dwarves with large red squares.

all roles are specified in the game_data.ini so it's very easy to add new ones once you have the syntax. for the role above the ini looks like this:

Spoiler (click to show/hide)

finally against my better judgement i've also allowed a script="" entry for roles which will allow users to specify a custom script to generate values. however these are more difficult to draw and values outside of 0-100 will look funky.

i'd like to add a set of packaged roles as well, so if anyone wants to take the initiative and use the template provided (skill and trait id numbers are in the game_data.ini) i'm also still not sure on what the best weights would be. someone previously mentioned that skills > traits > attributes (i think?) would be the way to go. any other opinions or is this sound advice?

your input is greatly appreciated!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: walberg on March 13, 2012, 10:17:47 pm
i'd like to add a set of packaged roles as well, so if anyone wants to take the initiative and use the template provided (skill and trait id numbers are in the game_data.ini) i'm also still not sure on what the best weights would be. someone previously mentioned that skills > traits > attributes (i think?) would be the way to go. any other opinions or is this sound advice?

your input is greatly appreciated!

I think I would recommend putting the weights in the .ini as well, and provide a "reasonable" (for some completely random definition of "reasonable", maybe) set of defaults in the distribution. That way anyone who wants to lean more on skills can tweak them that way, but if someone's more into attributes, that can be set up as well. Of course there's a couple downsides - the code will have to be considerably more forgiving and probably have a lot more (in-)sanity checks to write. Also, putting too much in the .ini might just get ridiculous at some point - maybe split the file into a couple different ones for different purposes (settings vs model parameters vs layouts, etc.)... And documenting this largish set of weights and what each one does would likely be a tad tedious.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: sumofallwars on March 14, 2012, 09:04:30 am
Wow That will be very useful.  I hope it can make it's way into the main project.
I am always amazed at the skills in this community.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: CatalystParadox on March 14, 2012, 11:32:03 am
This is brilliant!

Of course, my pie-in-the-sky +1 wish would be... would it be possible for this/some other utility to scan your initial 7 pre-embark too?  You know, so you know who to assign the medical skills to, who to give the brokerage to, who to make the leaders, who to give the weapon & armor skills, etc.?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Kraggh on March 14, 2012, 11:50:34 am
What "trought auto-update" means?
 ::)
I think there´s any button to do that.

So, what can I do to play 0.34.5, with Therapist?

Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: SalmonGod on March 14, 2012, 04:36:14 pm
Your work is very exciting splinterz!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: MrX on March 14, 2012, 05:06:01 pm
Hey everyone.

I'm having problems running DT on my 64bit Fedora 15 box. When I start the program I see the window for a second and then it just disappears. I have tried with both DF 31.25 and 34.05. The log seems to be saying something about memory layouts, but I have files in etc/memory_layouts/linux which have the same version number that DF has.
Here's the run.log:
Spoiler (click to show/hide)

Any clues?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vityav on March 14, 2012, 08:09:28 pm
Any clues?

I'm also running FC15 x64. Did you compile DT? And are you running it from in the DT directory? I had to copy the DwarfTherapist executable from <DT>/bin/release to <DT>/ and then run it from in the directory, though I don't know if that was because of your error or something else. I've just always done it since whatever my problem was popped up a year or so ago. Might be worth a shot?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: fredrol on March 15, 2012, 02:58:36 am
This is amazing, thank you all for your hard work! Can't wait for the next release!

Of course, my pie-in-the-sky +1 wish would be... would it be possible for this/some other utility to scan your initial 7 pre-embark too?  You know, so you know who to assign the medical skills to, who to give the brokerage to, who to make the leaders, who to give the weapon & armor skills, etc.?

I agree, would be an awesome feature.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Kento on March 15, 2012, 04:20:30 am
Are there two places where nicknames are stored now? I keep on seeing old nicknames in my announcements, as if when I delete nicknames through Dwarf Therapist, they are stored somewhere.

Old nicknames also appear in dwarf descriptions and relations, but do not appear on the unit list. Changing the nicknames through the game itself seems to not have this problem.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: MrX on March 15, 2012, 04:28:19 am
I had to copy the DwarfTherapist executable from <DT>/bin/release to <DT>/ and then run it from in the directory.

That actually worked! Thank you so much  :) DT started just fine and read all my dwarves.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Rose on March 15, 2012, 06:29:37 am
Are there two places where nicknames are stored now? I keep on seeing old nicknames in my announcements, as if when I delete nicknames through Dwarf Therapist, they are stored somewhere.

Old nicknames also appear in dwarf descriptions and relations, but do not appear on the unit list. Changing the nicknames through the game itself seems to not have this problem.

there is indeed, which is why when you rename vamps ingame, it works, but when you rename them with DT, it doesn't
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 15, 2012, 06:32:03 am
If anyone is interested, the location of the filter scripts are in a file called "Dwarf Therapist.ini"

on win7 it's in
c:\users\<user>\appdata\roaming\udp software\
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 15, 2012, 06:44:54 am
alright i think i've got everything finalized for anyone who would like to play with roles and some other changes. big thanks to thistle for some massive data collections and beta testing.

updates:

download (http://www.mediafire.com/?uz9n025m9jcx373)

you can read more details on the formatting and few examples on the source page below as well if you're interested in creating your own roles
source (http://code.google.com/r/splintermind-attributes/)

as always, any feedback, opinions or other ideas regarding features are always welcome.

Note: this is not the official dwarf therapist, this is a branch! (nothing should explode though...probably)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 15, 2012, 07:38:13 am
This is amazing, thank you all for your hard work! Can't wait for the next release!

Of course, my pie-in-the-sky +1 wish would be... would it be possible for this/some other utility to scan your initial 7 pre-embark too?  You know, so you know who to assign the medical skills to, who to give the brokerage to, who to make the leaders, who to give the weapon & armor skills, etc.?

I agree, would be an awesome feature.

i'm pretty sure you can already do this... i'm sitting at the embark screen right now and i can view attributes and roles just fine in therapist. am i missing something?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Altaree on March 15, 2012, 12:39:35 pm
alright i think i've got everything finalized for anyone who would like to play with roles and some other changes. big thanks to thistle for some massive data collections and beta testing.

updates:
  • castes are working and additionally they're read from the [CASTE_NAME] raw tag so modders can utilize the feature (thanks meph!)
  • fixed merchants' guards showing up in dt (reported by alagon)
  • 'on break' now works properly and is identified with a blue dot, as opposed to the 'idle' red dot, and groups properly
  • the edit script window now works
  • slightly darkened some text for readability
  • removed the average attribute descriptions
  • added skill and attribute reference tables, and sorted traits in the filter scripts window
  • added standard deviation and mean script functions for attributes
  • added skill rating function for scripts
  • added 36 default role columns, with default weights of 1.25 for traits, 0.75 for skills, and 0.25 for attributes (edit/add new ones in the game_data.ini)
  • added a roles view in the default views which includes all built-in roles

download (http://www.mediafire.com/?uz9n025m9jcx373)

you can read more details on the formatting and few examples on the source page below as well if you're interested in creating your own roles
source (http://code.google.com/r/splintermind-attributes/)

as always, any feedback, opinions or other ideas regarding features are always welcome.

Note: this is not the official dwarf therapist, this is a branch! (nothing should explode though...probably)

I just loaded this with my 31.25 world.  A lot of the attributes on my dwarves except for strength were reading as zero.  Looking at the stats in runesmith proves this to not be true.  Also, the roles view isn't working at all except for socializer.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 15, 2012, 01:01:02 pm
alright i think i've got everything finalized for anyone who would like to play with roles and some other changes. big thanks to thistle for some massive data collections and beta testing.

updates:
  • castes are working and additionally they're read from the [CASTE_NAME] raw tag so modders can utilize the feature (thanks meph!)
  • fixed merchants' guards showing up in dt (reported by alagon)
  • 'on break' now works properly and is identified with a blue dot, as opposed to the 'idle' red dot, and groups properly
  • the edit script window now works
  • slightly darkened some text for readability
  • removed the average attribute descriptions
  • added skill and attribute reference tables, and sorted traits in the filter scripts window
  • added standard deviation and mean script functions for attributes
  • added skill rating function for scripts
  • added 36 default role columns, with default weights of 1.25 for traits, 0.75 for skills, and 0.25 for attributes (edit/add new ones in the game_data.ini)
  • added a roles view in the default views which includes all built-in roles

download (http://www.mediafire.com/?uz9n025m9jcx373)

you can read more details on the formatting and few examples on the source page below as well if you're interested in creating your own roles
source (http://code.google.com/r/splintermind-attributes/)

as always, any feedback, opinions or other ideas regarding features are always welcome.

Note: this is not the official dwarf therapist, this is a branch! (nothing should explode though...probably)

I just loaded this with my 31.25 world.  A lot of the attributes on my dwarves except for strength were reading as zero.  Looking at the stats in runesmith proves this to not be true.  Also, the roles view isn't working at all except for socializer.

sorry, it's designed for df2012, i haven't had the time to go back to 31.25 and look for all the offsets.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: nenjin on March 15, 2012, 01:17:40 pm
Quote
sorry, it's designed for df2012, i haven't had the time to go back to 31.25 and look for all the offsets.

Considering how much effort it took to find the offsets for 2012, I don't think anyone is blaming you.

(I also think it's a little crazy that anyone would expect mod authors to make new versions backwards compatible with previous DF versions.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Altaree on March 15, 2012, 01:21:35 pm

--SNIP--
sorry, it's designed for df2012, i haven't had the time to go back to 31.25 and look for all the offsets.
Makes sense.  I just did a direct download and didn't see the site.  Very nice work! 
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: ClubFoot on March 15, 2012, 01:28:27 pm
This is amazing, thank you all for your hard work! Can't wait for the next release!

Of course, my pie-in-the-sky +1 wish would be... would it be possible for this/some other utility to scan your initial 7 pre-embark too?  You know, so you know who to assign the medical skills to, who to give the brokerage to, who to make the leaders, who to give the weapon & armor skills, etc.?

I agree, would be an awesome feature.

i'm pretty sure you can already do this... i'm sitting at the embark screen right now and i can view attributes and roles just fine in therapist. am i missing something?


really?  I've tried this on 2 platforms (osx and windows) and have never been able to load up the 7 initial dwarves while I'm still planning their skills (not even their names come up).  Anyone else have this work for them?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vorpal+5 on March 15, 2012, 03:19:22 pm
Oh Splinterz this is pure joy!! At last I can differentiate between idle and on break!! Thanks thanks thanks! Now I'll check the others features as well  :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: celly on March 15, 2012, 04:34:02 pm
alright i think i've got everything finalized for anyone who would like to play with roles and some other changes. big thanks to thistle for some massive data collections and beta testing.

updates:
  • castes are working and additionally they're read from the [CASTE_NAME] raw tag so modders can utilize the feature (thanks meph!)
  • fixed merchants' guards showing up in dt (reported by alagon)
  • 'on break' now works properly and is identified with a blue dot, as opposed to the 'idle' red dot, and groups properly
  • the edit script window now works
  • slightly darkened some text for readability
  • removed the average attribute descriptions
  • added skill and attribute reference tables, and sorted traits in the filter scripts window
  • added standard deviation and mean script functions for attributes
  • added skill rating function for scripts
  • added 36 default role columns, with default weights of 1.25 for traits, 0.75 for skills, and 0.25 for attributes (edit/add new ones in the game_data.ini)
  • added a roles view in the default views which includes all built-in roles

download (http://www.mediafire.com/?uz9n025m9jcx373)

you can read more details on the formatting and few examples on the source page below as well if you're interested in creating your own roles
source (http://code.google.com/r/splintermind-attributes/)

as always, any feedback, opinions or other ideas regarding features are always welcome.

Note: this is not the official dwarf therapist, this is a branch! (nothing should explode though...probably)

Hmm, it crashes after having it up for like 10 seconds or so. :/ Not printing any logs either - although I don't know if it should. Regular DT works and I'm on 34.05.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: chrisadams3997 on March 15, 2012, 04:54:17 pm
This is amazing, thank you all for your hard work! Can't wait for the next release!

Of course, my pie-in-the-sky +1 wish would be... would it be possible for this/some other utility to scan your initial 7 pre-embark too?  You know, so you know who to assign the medical skills to, who to give the brokerage to, who to make the leaders, who to give the weapon & armor skills, etc.?

I agree, would be an awesome feature.

i'm pretty sure you can already do this... i'm sitting at the embark screen right now and i can view attributes and roles just fine in therapist. am i missing something?


really?  I've tried this on 2 platforms (osx and windows) and have never been able to load up the 7 initial dwarves while I'm still planning their skills (not even their names come up).  Anyone else have this work for them?

It's worked on my computer before.  I actually loaded DT while in the embark screen not expecting it to connect up to DF yet, so I was surprised I could see the initial 7 dwarves.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Marble_Nuts on March 15, 2012, 06:42:15 pm
I'm wondering... Therapist cannot recognize .05 version, it goes up to .04 and says that the .05 version is not supported. I'm using therapist on a macintosh.

Is that a bug or what? The main page os therapist says .05 through auto-update... It says "version check failed"
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Rhenaya on March 15, 2012, 06:50:17 pm
the 7.0 update looks nice, though for modders there is still one oddity:
my drow use different stat weighting, so my very strong, very agile and virtually never sick drow shows in dftherapist as strong without marker, but extremly agile and flimsy (though virtually never sick with 4900 is awesome either way oO)
now is the question if there is some way to read those values, or a simple tool so i can adjust and save the properties.

edit: also i noticed that spatial sense is not in, this is also a very important military attribute, because it affects block and even more so dodging a lot (someone with amazing spatial sense and average dodgeing is insanely hard to hit compared to an agile one
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Goncyn on March 15, 2012, 06:52:06 pm
In the version of Therapist packaged with Masterwork 1.5.1+, I can't load all migrants into Therapist as soon as the game pauses with the "Some migrants have arrived" message. They only appear in Therapist after they have moved onto the game screen. I've never had this problem before. It's very useful to be able to see all your migrants as soon as the game pauses so you can easily modify their labors immediately instead of watching the screen until no more have come for a while.

I believe Meph is using splinterz's patched version as of 1.5.1, so maybe it's a consequence of his changes? Anyone else notice this?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: uggi on March 15, 2012, 08:42:49 pm
Is 0.6.12 supposed to be 0.31.25 compatible? I've got a bunch of old 0.31.25 fortresses, and in all of them the professions are showing up really weird in 0.6.12. Some hammerdwarves show up as speardwarves, some adult dwarves as children. It's quite random, except children seem to always show up as master lashers and babies as recruits. Therapist also lists children and babies with bold text, like they were drafted into militia and in active duty. Also some dwarves are missing completely. Everything seems correct in 0.6.11. I've tried this in 32 bit Linux and in 64 bit Win 7, both have the same problem.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vorpal+5 on March 16, 2012, 02:00:47 am
No problem at all on my side, works flawlessly with latest DF (and Legend mod).

I appreciate to see the stats of the dwarves also, great job!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 03:28:49 am
Is 0.6.12 supposed to be 0.31.25 compatible? I've got a bunch of old 0.31.25 fortresses, and in all of them the professions are showing up really weird in 0.6.12. Some hammerdwarves show up as speardwarves, some adult dwarves as children. It's quite random, except children seem to always show up as master lashers and babies as recruits. Therapist also lists children and babies with bold text, like they were drafted into militia and in active duty. Also some dwarves are missing completely. Everything seems correct in 0.6.11. I've tried this in 32 bit Linux and in 64 bit Win 7, both have the same problem.

Nope it doesn't really work with 31.25, 6.10 is your only hope.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 16, 2012, 03:48:37 am
the 7.0 update looks nice, though for modders there is still one oddity:
my drow use different stat weighting, so my very strong, very agile and virtually never sick drow shows in dftherapist as strong without marker, but extremly agile and flimsy (though virtually never sick with 4900 is awesome either way oO)
now is the question if there is some way to read those values, or a simple tool so i can adjust and save the properties.

edit: also i noticed that spatial sense is not in, this is also a very important military attribute, because it affects block and even more so dodging a lot (someone with amazing spatial sense and average dodgeing is insanely hard to hit compared to an agile one

i've looked into this briefly after the last time you mentioned it, and while i think the most elegant solution would be to read the ranges from the raws, it would be nice to have it consistent with regular df as well. unfortunately, to my knowledge, the ranges in the game and the ranges specified in the raws are not the same. i'll have to add an override in the game_data.ini.

spatial sense is an aspect of the default combat roles, i'm not sure why you're not seeing it.

also a heads-up on the custom roles. i'm going to change the syntax/formatting to be more consistent with the other game_data.ini elements.

here's a comparison of a custom role:

Spoiler (click to show/hide)

as you can see it won't be as compact, but it will be more forgiving of typos and it's easier to understand the layout for players adding custom roles.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 06:47:51 am
...

Weightings on skills(maybe traits too?) seem far far too high. Even if someone just has skill lvl1 and average-ish relavent attribs for Observer for example, it show him as being miles better than someone with better attribs but no skill. Is it possible for an option to disable taking skill into account so we can see a dorfs potential instead of being heavily skewed by a nearly useless skill level?

Apart from that it's looking great with the new additions, although it still gets Current Job wrong a lot :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 16, 2012, 07:05:22 am
...

Weightings on skills(traits too prolly) seem far far too high. Even if someone just has skill lvl1 and average-ish relavent attribs for Observer for example, it show him as being miles better than someone with better attribs but no skill. Is it possible for an option to disable taking skill into account so we can see a dorfs potential instead of being heavily skewed by a nearly useless skill level?

Apart from that it's looking great with the new additions, although it still gets Current Job wrong a lot :)

the problem with skills is that most dwarves don't have most skills, so it ends up that even level 1 in a skill is actually way better than the average. a greater benefit to the project would be if you propose some weights so i can tweak the default roles' weighting. you can also just edit the game_data.ini and remove skills from the roles.

however this is still a work in progress, and while editing game_data.ini works, i still need to put in more work for custom roles because the game_data.ini is more for default settings.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: schismatise on March 16, 2012, 07:26:52 am
Love your work, splinterz.

Weightings on skills(maybe traits too?) seem far far too high. Even if someone just has skill lvl1 and average-ish relavent attribs for Observer for example, it show him as being miles better than someone with better attribs but no skill.

In terms of long-term military dwarf potential, i would probably argue that this is true. Military attributes barely take a year to get to a good place, while certain skills, like Observer for example, might take alot longer, so in the long run the dwarf with the level 1 observer skill is a better choice.

That's the tricky part though. The weightings depend on the context. The more long-term you're looking at, the less important current ability levels are and the more important potential ability levels are. While i'm sure it would be possible to split every single custom role into long or short term consideration, or even further divisions, it's probably outside the scope of the project (i honestly think splinterz has already gone overboard but i'm not complaining :P)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 07:37:26 am
From what AnnanFay said for DGC they just pulled the data off the wiki and from various !!SCIENCE!! projects. As to what weights are best i'm not a maths guy so not sure, the only reason i brought it up was because it was only on my last 31.25 fort that i tried DGC and tested it on assigning an additional new crafts dwarf of some kind. The dorf i chose using DGC; his skill level blitzed past my existing dorf who was already around level 4 but rated about 30% less.
If you wanted to keep skill as a weight, then maybe swap the weights, ie .25 for skills and .75 for attribs as they seem a greater factor from my limited experience.

One additional note, i wish it'd remember the sort order of the dorfs as i move between tabs :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: schismatise on March 16, 2012, 07:53:04 am
As to what weights are best i'm not a maths guy so not sure, the only reason i brought it up was because it was only on my last 31.25 fort that i tried DGC and tested it on assigning an additional new crafts dwarf of some kind. The dorf i chose using DGC; his skill level blitzed past my existing dorf who was already around level 4 but rated about 30% less.
If you wanted to keep skill as a weight, then maybe swap the weights, ie .25 for skills and .75 for attribs as they seem a greater factor from my limited experience.

It may very well be that weights will need to consider context, if your experience of attributes giving such a large bonus to skill gains (in this case craft skills) is a common one. From memory, Toady once pointed out that while having a massive amount of creativity vs none whatsoever will make little to no difference between 2 legendary carpenters, it has a significantly larger impact at lower skill levels, in terms of produce quality (i am not so sure on the effects of the speed at which the skill raises though - i would guess that this would be impacted more by traits such as 'very active' or 'strong willpower').

However, i know from extensive experience that this is not the case when it comes to military - attributes level up rapidly regardless of their starting level (in the right training environment), and while their impact on combat is somewhat significant, having even 1 extra level in teacher is a huge bonus in the long run - one that i would take over any amount of attribute advantage.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 16, 2012, 07:59:32 am
Love your work, splinterz.

Weightings on skills(maybe traits too?) seem far far too high. Even if someone just has skill lvl1 and average-ish relavent attribs for Observer for example, it show him as being miles better than someone with better attribs but no skill.

In terms of long-term military dwarf potential, i would probably argue that this is true. Military attributes barely take a year to get to a good place, while certain skills, like Observer for example, might take alot longer, so in the long run the dwarf with the level 1 observer skill is a better choice.

That's the tricky part though. The weightings depend on the context. The more long-term you're looking at, the less important current ability levels are and the more important potential ability levels are. While i'm sure it would be possible to split every single custom role into long or short term consideration, or even further divisions, it's probably outside the scope of the project (i honestly think splinterz has already gone overboard but i'm not complaining :P)

thanks :)  i'm trying to find the best solution for different scenarios which should address the concerns brought up:

From what AnnanFay said for DGC they just pulled the data off the wiki and from various !!SCIENCE!! projects. As to what weights are best i'm not a maths guy so not sure, the only reason i brought it up was because it was only on my last 31.25 fort that i tried DGC and tested it on assigning an additional new crafts dwarf of some kind. The dorf i chose using DGC; his skill level blitzed past my existing dorf who was already around level 4 but rated about 30% less.
If you wanted to keep skill as a weight, then maybe swap the weights, ie .25 for skills and .75 for attribs as they seem a greater factor from my limited experience.

One additional note, i wish it'd remember the sort order of the dorfs as i move between tabs :)
yeah i like having the traits weighed the most, as they can't change and there's only a few roles that it's important to factor them in. using the same logic then the next in line would be the slowest level time between skills and attributes, assuming more time to level = more valuable. or is it better to look at it from the effect on the role? for example is it better to have a dwarf with strong attributes, and weak skills, or the opposite as a fighter?

i'm leaning towards skills being more valuable than attributes for the reasons schismatise explained above.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 08:10:45 am
Yes for things like military teacher/student etc can have a pretty large impact, and by right environment do you mean danger rooms and 2 man squads? ;p i'm not sure those should really count as they are exploiting a weakness in the system. And yes context would certainly be a factor but in my mind tools like this in DT/DGC should be there to show potential, and then leave the user to workout how best they want to use the dorf if they have or don't have certain skills. Ie for a military guy i wouldn't want all my teachers in 1 squad, i'd want to spread them around.
As it stands if someone has say 1 in swords, with the current weights it's like saying, this guy swung a sword once so he must be the greatest. And traits, 1.25 for them, and .25 for attribs, wow. Maybe traits could be set as a very low weight, just so someone can see when they hover over a dorf that is has a relevant trait for that profession, the same with skills even.

I tried adjusting some weights and it gave the desired effect. Maybe it could be a menu option even, to say apply a weight to each catagory.

PS: [dwarf_jobs] i guess we are waiting for several builds before updating this? or should people submit updates right now?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 16, 2012, 08:26:05 am
Yes for things like military teacher/student etc can have a pretty large impact, and by right environment do you mean danger rooms and 2 man squads? ;p i'm not sure those should really count as they are exploiting a weakness in the system. And yes context would certainly be a factor but in my mind tools like this in DT/DGC should be there to show potential, and then leave the user to workout how best they want to use the dorf if they have or don't have certain skills. Ie for a military guy i wouldn't want all my teachers in 1 squad, i'd want to spread them around.
As it stands if someone has say 1 in swords, with the current weights it's like saying, this guy swung a sword once so he must be the greatest. And traits, 1.25 for them, and .25 for attribs, wow. Maybe traits could be set as a very low weight, just so someone can see when they hover over a dorf that is has a relevant trait for that profession, the same with skills even.

I tried adjusting some weights and it gave the desired effect. Maybe it could be a menu option even, to say apply a weight to each catagory.

PS: [dwarf_jobs] i guess we are waiting for several builds before updating this? or should people submit updates right now?

haha i think you're exaggerating your claims a bit, but that's fine. i do think that traits are weighted too heavily at the moment, because if a role has a trait, those dwarves will be at the top, guaranteed, and it's difficult to overcome them with the other aspects. as per my other post, i'll be setting up a way to specify global weights (may just be in the ini though, no GUI)

sorry, i'm not following what you're talking about with submitting dwarf jobs?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 08:38:41 am
Yes for things like military teacher/student etc can have a pretty large impact, and by right environment do you mean danger rooms and 2 man squads? ;p i'm not sure those should really count as they are exploiting a weakness in the system. And yes context would certainly be a factor but in my mind tools like this in DT/DGC should be there to show potential, and then leave the user to workout how best they want to use the dorf if they have or don't have certain skills. Ie for a military guy i wouldn't want all my teachers in 1 squad, i'd want to spread them around.
As it stands if someone has say 1 in swords, with the current weights it's like saying, this guy swung a sword once so he must be the greatest. And traits, 1.25 for them, and .25 for attribs, wow. Maybe traits could be set as a very low weight, just so someone can see when they hover over a dorf that is has a relevant trait for that profession, the same with skills even.

I tried adjusting some weights and it gave the desired effect. Maybe it could be a menu option even, to say apply a weight to each catagory.

PS: [dwarf_jobs] i guess we are waiting for several builds before updating this? or should people submit updates right now?

haha i think you're exaggerating your claims a bit, but that's fine. i do think that traits are weighted too heavily at the moment, because if a role has a trait, those dwarves will be at the top, guaranteed, and it's difficult to overcome them with the other aspects. as per my other post, i'll be setting up a way to specify global weights (may just be in the ini though, no GUI)

sorry, i'm not following what you're talking about with submitting dwarf jobs?

Heh yeah a slight over exageration ;p but a dorf with level 1 in a skill attributed to a profession will be ranked above a guy who has much better attribs.

In DT atm the current job column is incorrect some of the time, what is displayed there is dictated by the [dwarf_jobs] section in the ini. And i guess the job IDs have changed a fair bit between v31 and v34. For example:

DT shows Bridge Crutch for job ID 211.
211/name = "Bring Crutch"

But infact ingame it's Tan a Hide.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 16, 2012, 08:44:19 am
by all means, keep those job names coming and i'll update them! i didn't even realize that they were messed up :-[
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 16, 2012, 09:58:25 am
...

Weightings on skills(maybe traits too?) seem far far too high. Even if someone just has skill lvl1 and average-ish relavent attribs for Observer for example, it show him as being miles better than someone with better attribs but no skill. Is it possible for an option to disable taking skill into account so we can see a dorfs potential instead of being heavily skewed by a nearly useless skill level?

Apart from that it's looking great with the new additions, although it still gets Current Job wrong a lot :)

I agree, but you can specify the weights.  I override the default ini to have attributes be anywhere frmo 80-95% of the total weight considering for determining the roles

I don't know if weights is the best way to go.

If I split my attributes/skills/traits to .6, .2, .2
Then the highest my attributes can bring my % to is 60%.

Skills 20%

and

Traits 20%

It would be nice if there was a way to give a higher weight to: how far an attribute is from the average.  I was trying to do this before with my convoluted formula of attribute()-mean = distance from center, but I was having a hard way of standardizing it.  After a lot of talk with Splinterz, I caved in to the weight system because I couldn't articulate how to implement what I'm thinking.  To be honest, I don't even know if what I'm thinking is possible or would pan out like I'd hope it would.  I'm guessing it would take the averaging of stdev's and means, and what-not.

My old post is at http://www.bay12forums.com/smf/index.php?topic=66525.msg3083599#msg3083599

There's a few things I think I had off.

I don't think I would want to multiply mean * weight, but rather stdev * weight, and average those.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 12:01:24 pm
It would be nice if there was a way to give a higher weight to: how far an attribute is from the average.  I was trying to do this before with my convoluted formula of attribute()-mean = distance from center, but I was having a hard way of standardizing it.  After a lot of talk with Splinterz, I caved in to the weight system because I couldn't articulate how to implement what I'm thinking.  To be honest, I don't even know if what I'm thinking is possible or would pan out like I'd hope it would.  I'm guessing it would take the averaging of stdev's and means, and what-not.

My old post is at http://www.bay12forums.com/smf/index.php?topic=66525.msg3083599#msg3083599

There's a few things I think I had off.

I don't think I would want to multiply mean * weight, but rather stdev * weight, and average those.

Is this what DGC does? i notice at the top is this list:
Spoiler (click to show/hide)

Which i think it uses as a baseline.


I notice currently some entries like this:
35/name="Craftsdwarf"
35/attributes="0.25::agility:0.25,endurance:0.25,creativity:1.0,spatial sense:0.5,kinesthetic sense:0.5"

How were those splits determined as i see nothing on the wiki about them?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: schismatise on March 16, 2012, 12:10:33 pm
Yes for things like military teacher/student etc can have a pretty large impact, and by right environment do you mean danger rooms and 2 man squads? ;p i'm not sure those should really count as they are exploiting a weakness in the system.

Danger rooms, no :P 2 man squads though, sure, that is a valid tactic, just as embarking with a level 5 teacher and six level 5 students is a valid tactic, or cage traps and goblin pitting is a valid tactic. For the record, i usually increase my squad size to 3 with the first or second migrant wave. I have used many other methods in the past though, and have always noticed military attributes to max out well before skill levels reach legendary. As i mentioned earlier, however, i do not know exactly how accurately this extends to other skills and their relevant attributes.

And yes context would certainly be a factor but in my mind tools like this in DT/DGC should be there to show potential, and then leave the user to workout how best they want to use the dorf if they have or don't have certain skills. Ie for a military guy i wouldn't want all my teachers in 1 squad, i'd want to spread them around.

This is a good point. As long as the framework is there, maybe it's best to just let the user decide what weights they want to use, and simply default them all to 1.0 or something?

Edits: for clarity.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 16, 2012, 12:15:06 pm

Is this what DGC does? i notice at the top is this list:
Spoiler (click to show/hide)

Which i think it uses as a baseline.


I notice currently some entries like this:
35/name="Craftsdwarf"
35/attributes="0.25::agility:0.25,endurance:0.25,creativity:1.0,spatial sense:0.5,kinesthetic sense:0.5"

How were those splits determined as i see nothing on the wiki about them?

DGC does things pretty different from how i'm doing them, those are all median values as far as i know. i use current population means. in regards to the craftsdwarf i just made up that role and the weights based on the wiki. i figured more emphasis on creativity than agility was reasonable. there are no weights on the wiki, it just lists what attributes affect what roles.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 01:04:55 pm
Yeah creativity is interesting, i would imagine for someone churning out rock crafts maybe it'd make more figurines, or maybe just when they do make a figurine it'd have a more lavish description, the same with engraving. The splits just got me thinking when i was about to add in Gem Cutter/Setter. For Gem Setting to get those really funky long descriptions maybe a lot more agility is needed and not just creativity, it's pretty fiddly work. I do wonder if there are more emphasis given to certain attribs in the game but i guess we'll never know unless someone can be bothered to stick DF through a disassembler :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 16, 2012, 01:15:07 pm
Yeah creativity is interesting, i would imagine for someone churning out rock crafts maybe it'd make more figurines, or maybe just when they do make a figurine it'd have a more lavish description, the same with engraving. The splits just got me thinking when i was about to add in Gem Cutter/Setter. For Gem Setting to get those really funky long descriptions maybe a lot more agility is needed and not just creativity, it's pretty fiddly work. I do wonder if there are more emphasis given to certain attribs in the game but i guess we'll never know unless someone can be bothered to stick DF through a disassembler :)

well i've got some progress on this whole weight thing anyway. i've got it setup so that you can put in 3 default weights for skills, attributes and traits in the options. so if you don't specify any weights at all in a role, each individual item is weighed at 1.0, and the group is weighted with the default value.

additionally now dt will look in the dwarf therapist.ini file rather than the game_data.ini for custom roles so you don't have to mess with them when updating. furthermore, if you name a custom role the same as a default role (in the game_data.ini), it will override the default. this way you can keep the built in roles view, but still have the ability to tweak the columns.

so now i'm going to remove all the skill/attribute/trait group weights (not the individual weights) from the packaged roles so they'll use the defaults by.. well, default. sound reasonable?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 01:29:07 pm
Yeah sounds like a plan batman.

And i noticed one thing when trying to add Gem Cutter.
It seems that regardless of what you set "size=" to in [dwarf_roles] it won't display extra roles.

ie i added:
37/name="Gem Cutter"
37/attributes="0.90::agility, analytical ability, spatial sense, kinesthetic sense"
37/traits=""
37/skills="0.10::30"

I even tried deleting the Dwarf Therapist.ini but no joy, it still seemed fixed at 36 columns?
Plus i swapped 36 and 37 over (ie 36 now was Gem Cutter and 37 was Lawdwarf) and it didn't change the roles tab either, so i guess that is also hard coded?
I can add it in a custom grid view though fine. /shrug
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 16, 2012, 01:34:11 pm
Yeah sounds like a plan batman.

And i noticed one thing when trying to add Gem Cutter.
It seems that regardless of what you set "size=" to in [dwarf_roles] it won't display extra roles.

ie i added:
37/name="Gem Cutter"
37/attributes="0.90::agility, analytical ability, spatial sense, kinesthetic sense"
37/traits=""
37/skills="0.10::30"

I even tried deleting the Dwarf Therapist.ini but no joy, it still seemed fixed at 36 columns?
Plus i swapped 36 and 37 over (ie 36 now was Gem Cutter and 37 was Lawdwarf) and it didn't change the roles tab either, so i guess that is also hard coded?
I can add it in a custom grid view though fine. /shrug

yeah the default views have the columns read internally. i'm hoping we'll be able to get a good set of default roles though so that main view is setup nicely. i should probably add colors and divide them up by military/crafting/administration, etc.. thoughts?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 03:07:12 pm
Sounds like a good idea, i've just been adding things as i go along as i need them:

Code: [Select]
37/name="Gem Cutter"
# AAaSsKs
37/attributes="0.90::agility, analytical ability, spatial sense, kinesthetic sense"
37/traits=""
37/skills="0.10::30"

38/name="Gem Setter"
# ACSsKs
38/attributes="0.90::agility, creativity, spatial sense, kinesthetic sense"
38/traits=""
38/skills="0.10::31"

39/name="Fisherdwarf"
# SAFPKs
39/attributes="0.90::strength, agility, focus, patience, kinesthetic sense"
39/traits=""
39/skills="0.10::24"

40/name="Wood cutter"
40/attributes="0.90::strength, agility, endurance, willpower, spatial sense, kinesthetic sense"
40/traits=""
40/skills="0.10::1"

Here is an update for [dwarf_jobs]
I know there are several more just haven't noticed them yet to add them. And obviously "Bring Crutch" would have moved to another ID so we just need to keep an eye out for that. # indicates previous values as a reminder.

Code: [Select]
211/name = "Tan a Hide"
#211/name = "Bring Crutch"
#211/type = MEDICAL

One thought on weights for things like craftdwarfs is that it just needs to be balanced so that if you get a dwarf in with 7 or 8(rough value, 6 could even be fine) already then as attribs don't effect the quality of an item the skill weight should take over as it's already at a decent level. For things like military though attribs/traits certainly do count.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 16, 2012, 03:26:19 pm
Spoiler (click to show/hide)

nevermind... .6 .2 .2, then if the .2 attributes were 0, then the .6 highest could be 60%.  Oops
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 16, 2012, 03:27:46 pm
Spoiler (click to show/hide)
can you add a woodcutter as well Splinterz?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 16, 2012, 03:34:22 pm
can you add a woodcutter as well Splinterz?

Code: [Select]
40/name="Wood cutter"
40/attributes="0.90::strength, agility, endurance, willpower, spatial sense, kinesthetic sense"
40/traits=""
40/skills="0.10::1"
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vityav on March 16, 2012, 05:14:48 pm
Just in case anybody else runs into this problem (or this is worth fixing outside of a few specific cases): when compiling splinterz's code on gcc4.1 and up (apparently when it started being an issue), if it throws a:
Code: [Select]
In file included from src/gridviewdialog.cpp:38:0:
inc/grid_view/rolecolumn.h:44:10: error: extra qualification ‘RoleColumn::’ on member ‘write_to_ini’ [-fpermissive]
Edit <codebase>/inc/grid_view/rolecolumn.h to change
Code: [Select]
RoleColumn::write_to_ini to just
Code: [Select]
write_to_ini and compile from there.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 16, 2012, 05:22:43 pm
yeah i'll add those roles. i'll probably leave out the group weights though, as now that it's set in the defaults it'll be redundant for each role. i'll also try and go through the enum for jobs and fix them up as well this weekend if i've got the time.

good catch on the write_to_ini vityav, thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 16, 2012, 05:27:54 pm
Wait, don't get rid of individual group weights!  Users may wish to set those up for specific reasons.  I think if a role group weight is specified, it overrides the default group weights.

Btw, I made this formula, what do you think

instance = absolute averaged factored deviation:

diff = difference from mean
not a power, but instance attribute

(
(factor1*diff1)+(factor2*diff2)+(factor...*diff...)
)
/# of items
= instance

average(all stdev*weights) = factoredstdevp
  I verified this factoredstdevp is factual IF all sample sizes are the same

normalcdf(instance, 0,factoredstdevp)

I'm not sure if it does what I want, but I think it factors deviations from the center more accurately.  I did a few examples.

I mentioned earlier that a .6 .2 .2 weight setup means that if the .2 attributes are 0, then the highest % is .6.

With this formula, that limit seems to not be an issue.  A 2500 (endurance), 0 (analytical), 0 (memory) attribute would give a 60% normally, but a 80.92 with my formula
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vityav on March 16, 2012, 05:32:13 pm
Is there any particular reason that splinterz's branch would require different linux memory offsets from the main DT? Splinterz's always seems to read my number of dwarves wrong, and give crazy attributes which change every few seconds (miner just went from 0 recuperation to -20249 in a few steps). Tested with the latest fresh clone of both and the linux offsets from the main branch in 34.03 and 34.05.

Edit: Nevermind, found that the linux ini doesn't have a "physical_attrs" offset in it. Though still don't know why it reads the wrong number of dwarves.

Edit Edit: Fiddled around in memory for an hour to get the mental_attrs, and just stole the physical_attrs offset from dfhack and it works:
Code: [Select]
physical_attrs=0x328

[soul_details]
mental_attrs=0x0068

Both work perfectly for linux 34.05. Haven't tried going backwards yet, but likely the same.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 16, 2012, 05:55:35 pm
Here's a recommended update to the weighted stuff.  I did some tests on it and was quite happy:

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: peterix on March 16, 2012, 06:02:48 pm
Hello again!

DFHack now has a very basic API for communicating with external apps. It's built on top of TCP and google protobufs. I'm interested in adding a DFhack backend to DT using this. Question is, what should be included in the protocol - ideally some reasonable subset of what we have documented on DFHack side, because adding support for everything would be either a large mountain's worth of work or a large mountain's worth of generated code.

Anyone interested in this, please, look at https://github.com/peterix/df-structures and tell me what would be best to include in such a protocol. The files related to units, jobs, job types and military should be relevant. The protocol doesn't have to mirror the game's data exactly, and maybe even shouldn't, because DF can change. Even things like enums can be exposed. And it's definitely possible to filter and pre-process data on DF side, if that makes things easier to work with.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vorpal+5 on March 17, 2012, 06:59:12 am
Is anyone interest by reports about erroneous icons or missing icons for the tasks?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 17, 2012, 12:00:21 pm
Some of these attribs associated with skills are bonkers, Analytical Ability for cooking? O.o
I only noticed as i have someone who is apparently a potentially useless cook and yet is skill 9 after doing maybe 30-40(maybe more but no more than 50, fortress is less than a year old) easy meals, it makes no sense. His attribs are very average to awful, 383 for Kinesthetic Sense for example.

Another [dwarf_jobs]
Code: [Select]
218/name = "Make rock Pot"
#218/name = "Pen/Pasture Large Animal"
#218/type = ANIMAL
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 17, 2012, 01:10:28 pm
Has anyone gotten a script to show up in a role?  Splinterz coded it in, but when I add the role I get nan% when I hover my mouse over the column
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 17, 2012, 01:19:23 pm
I have no idea how to use those scripts, i tried adding it via the scripting menu just plain copy pasting it but it didn't do a thing so guessed i was doing something wrong.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 17, 2012, 02:54:23 pm
Some of these attribs associated with skills are bonkers, Analytical Ability for cooking? O.o
I only noticed as i have someone who is apparently a potentially useless cook and yet is skill 9 after doing maybe 30-40(maybe more but no more than 50, fortress is less than a year old) easy meals, it makes no sense. His attribs are very average to awful, 383 for Kinesthetic Sense for example.

Another [dwarf_jobs]
Code: [Select]
218/name = "Make rock Pot"
#218/name = "Pen/Pasture Large Animal"
#218/type = ANIMAL

most of the attributes for roles have been taken directly from the wiki (http://dwarffortresswiki.org/index.php/Attributes#Skills_by_Associated_Attributes). i'm purely working under the assumption it's not complete bs. :P perhaps we should add some default weights? in regards to your cook, it's hard to tell you what might be happening. what are your weights? do you have other cooks with more skill? way better attributes? i can take a look if you want to send me the save.

i'm pretty sure i've got all the jobs fixed, so you don't need to worry about those anymore.

Has anyone gotten a script to show up in a role?  Splinterz coded it in, but when I add the role I get nan% when I hover my mouse over the column

make sure your script results in a value, and isn't a > or something like the filter scripts.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vityav on March 17, 2012, 03:04:41 pm
Memory hacking question: Looking for the skills manually, I start by searching the creature_vector and find the dwarf I want (in this case, 0xeded6810 shows his first name). Then I add the soul offset and skills offset (now at 0xeded6fcc), and from here, looking at dwarf.cpp, there should be a vector to vectors with the type, rating, etc. But when telling DT to print that vector (the printing uses the same enumerate_vector() function), it says there are zero entries. Did I miss something, or do I need to use gdb to handle this?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: zwei on March 17, 2012, 03:11:57 pm
Are you planning to incporporate item and material likes into "counselor"?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 17, 2012, 03:17:20 pm
Memory hacking question: Looking for the skills manually, I start by searching the creature_vector and find the dwarf I want (in this case, 0xeded6810 shows his first name). Then I add the soul offset and skills offset (now at 0xeded6fcc), and from here, looking at dwarf.cpp, there should be a vector to vectors with the type, rating, etc. But when telling DT to print that vector (the printing uses the same enumerate_vector() function), it says there are zero entries. Did I miss something, or do I need to use gdb to handle this?

depending on what offsets you're using to get to that point you may or may not be at the right place. the vector may be above/below and you'll have to poke around. i'd highly recommend looking at dfhack's df-structures for the linux offsets (i'm assuming you're trying to find the linux offsets yes?)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 17, 2012, 03:20:21 pm
Quote
make sure your script results in a value, and isn't a > or something like the filter scripts.

My script has
Code: [Select]
findAlternative(avgMDeviation, avgDev)*100;

as it's last line, that results in a number between 0 to 100, but it doesn't show up.

The name of the script is Base, and in the .ini file, I have the name of the script as "Base".

What am I doing wrong here?  There's not a filter operation (i.e. comparison operator).

On further note, the last line can have a >50 on it, and it will produce results.

Update:

Splinterz, how about an example that you know for sure will produce a result, then I can work mine around that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vityav on March 17, 2012, 03:33:40 pm
depending on what offsets you're using to get to that point you may or may not be at the right place. the vector may be above/below and you'll have to poke around. i'd highly recommend looking at dfhack's df-structures for the linux offsets (i'm assuming you're trying to find the linux offsets yes?)
I've actually already found the linux offsets (see top of this page), and DT automatically reads them all correctly, but I'm working on using gdb to manually change values (for, say, making an instantly legendary weaponsmith). Unethical, but educational :) In any case, both DT and dfhack treat the skills offset as pointing at a vector, DT's brute force vector printing just says there's nothing there.

So plugging in the creature_vector (0x095921ac), finding a dwarf (0xeb7398d0), adding the souls offset (0x05e8), then the skills offset (0x01d4), I should be at a vector containing a vector for each skill, right?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 17, 2012, 04:00:33 pm
depending on what offsets you're using to get to that point you may or may not be at the right place. the vector may be above/below and you'll have to poke around. i'd highly recommend looking at dfhack's df-structures for the linux offsets (i'm assuming you're trying to find the linux offsets yes?)
I've actually already found the linux offsets (see top of this page), and DT automatically reads them all correctly, but I'm working on using gdb to manually change values (for, say, making an instantly legendary weaponsmith). Unethical, but educational :) In any case, both DT and dfhack treat the skills offset as pointing at a vector, DT's brute force vector printing just says there's nothing there.

So plugging in the creature_vector (0x095921ac), finding a dwarf (0xeb7398d0), adding the souls offset (0x05e8), then the skills offset (0x01d4), I should be at a vector containing a vector for each skill, right?

the soul offset should point to a vector, and you want the first soul in the vector. then you add the skills offset, and you should have a vector of structs which represent the skills.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vityav on March 17, 2012, 04:05:59 pm
the soul offset should point to a vector, and you want the first soul in the vector. then you add the skills offset, and you should have a vector of structs which represent the skills.

That did it :) For some reason I just assumed the m_first_soul was just the soul offset, not an element in a vector there. Does this mean dwarves can have multiple souls? Thanks for the help
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 17, 2012, 04:14:12 pm
the soul offset should point to a vector, and you want the first soul in the vector. then you add the skills offset, and you should have a vector of structs which represent the skills.

That did it :) For some reason I just assumed the m_first_soul was just the soul offset, not an element in a vector there. Does this mean dwarves can have multiple souls? Thanks for the help

great! i made the same assumption my first attempt messing around in memory as well. i would assume that they could have multiple souls, but i haven't seen it happen yet. (i was doing testing thinking vampires would have a second soul with the fake identity. as if it could be so easy :P)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 17, 2012, 04:57:06 pm
Spoiler (click to show/hide)

Thank you Splinterz (exchanged via the emails).

I needed to paste the script into game_data.ini (inside the dt\etc folder).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 17, 2012, 08:34:42 pm
I think

Attributes should outweigh labors, I know labors at legendary best everything...  but for simple embark and efficiency (i.e. peeps trying to come up rather than dealing with dwarves they have now), it might be best to use attributes > labors.  I would say 75-95%.  I myself disregard labors.  I just started yesterday doing careful embarks to ensure my labors were assigned appropriately.

I don't know what skills really are yet.  To me they seem a hybrid setup between attributes and labors...

So here's an alternative formula system I had going for attribute's, it's not venerated

Code: [Select]
37/name="Wood cutter"
37/attributes="1::strength:1.1,agility:1.1,endurance:1.1,willpower:0.9,spatial sense:1.2, kinesthetic sense:0.9"
37/traits=""
38/name="Trapper"
38/attributes="1::agility:1,analytical ability:1,creativity:1,spatial sense:1.1"
38/traits=""
38/skills=""
39/name="Trapper, Alt"
39/script="
function findZ(x, mean, stdev){ var result = ((x-mean)/stdev); return result}
function normalcdf(X){ var T=1/(1+.2316419*Math.abs(X)); var D=.3989423*Math.exp(-X*X/2); var Prob=D*T*(.3193815+T*(-.3565638+T*(1.781478+T*(-1.821256+T*1.330274)))); if (X>0) { Prob=1-Prob } return Prob }

function strDev() {return d.attribute_stdev(0)}
function agiDev() {return d.attribute_stdev(1)}
function tuffDev() {return d.attribute_stdev(2)}             
function endDev() {return d.attribute_stdev(3)}             
function recDev() {return d.attribute_stdev(4)}             
function disRDev() {return d.attribute_stdev(5)}             
function anaADev() {return d.attribute_stdev(6)}             
function focDev() {return d.attribute_stdev(7)}             
function willDev() {return d.attribute_stdev(8)}             
function creDev() {return d.attribute_stdev(9)}             
function intuDev() {return d.attribute_stdev(10)}             
function patDev() {return d.attribute_stdev(11)}             
function memDev() {return d.attribute_stdev(12)}             
function linADev() {return d.attribute_stdev(13)}             
function spaSDev() {return d.attribute_stdev(14)}             
function musDev() {return d.attribute_stdev(15)}             
function kinSDev() {return d.attribute_stdev(16)}             
function empDev()  {return d.attribute_stdev(17)}             
function socADev(){return d.attribute_stdev(18)}           
                 
function str() {return normalcdf(findZ(d.strength(), d.attribute_mean(0), d.attribute_stdev(0)))}
function agi() {return normalcdf(findZ(d.agility(), d.attribute_mean(1), d.attribute_stdev(1)))}
function tuff() {return normalcdf(findZ(d.toughness(), d.attribute_mean(2), d.attribute_stdev(2)))}
function end() {return normalcdf(findZ(d.endurance(), d.attribute_mean(3), d.attribute_stdev(3)))}
function rec() {return normalcdf(findZ(d.recuperation(), d.attribute_mean(4), d.attribute_stdev(4)))}
function disR() {return normalcdf(findZ(d.disease_resistance(), d.attribute_mean(5), d.attribute_stdev(5)))}
function anaA() {return normalcdf(findZ(d.analytical_ability(), d.attribute_mean(6), d.attribute_stdev(6)))}
function foc() {return normalcdf(findZ(d.focus(), d.attribute_mean(7), d.attribute_stdev(7)))}
function will() {return normalcdf(findZ(d.willpower(), d.attribute_mean(8), d.attribute_stdev(8)))}
function cre() {return normalcdf(findZ(d.creativity(), d.attribute_mean(9), d.attribute_stdev(9)))}
function intu() {return normalcdf(findZ(d.intuition(), d.attribute_mean(10), d.attribute_stdev(10)))}
function pat() {return normalcdf(findZ(d.patience(), d.attribute_mean(11), d.attribute_stdev(11)))}
function mem() {return normalcdf(findZ(d.memory(), d.attribute_mean(12), d.attribute_stdev(12)))}
function linA() {return normalcdf(findZ(d.linguistic_ability(), d.attribute_mean(13), d.attribute_stdev(13)))}
function spaS() {return normalcdf(findZ(d.spatial_sense(), d.attribute_mean(14), d.attribute_stdev(14)))}
function mus() {return normalcdf(findZ(d.musicality(), d.attribute_mean(15), d.attribute_stdev(15)))}
function kinS() {return normalcdf(findZ(d.kinesthetic_sense(), d.attribute_mean(16), d.attribute_stdev(16)))}
function emp() {return normalcdf(findZ(d.empathy(), d.attribute_mean(17), d.attribute_stdev(17)))}
function socA() {return normalcdf(findZ(d.social_awareness(), d.attribute_mean(18), d.attribute_stdev(18)))}

function d_str() {return d.strength()-d.attribute_mean(0)}
function d_agi() {return d.agility()-d.attribute_mean(1)}
function d_tuff() {return d.toughness()-d.attribute_mean(2)}
function d_end() {return d.endurance()-d.attribute_mean(3)}
function d_rec() {return d.recuperation()-d.attribute_mean(4)}
function d_disR() {return d.disease_resistance()-d.attribute_mean(5)}
function d_anaA() {return d.analytical_ability()-d.attribute_mean(6)}
function d_foc() {return d.focus()-d.attribute_mean(7)}
function d_will() {return d.willpower()-d.attribute_mean(8)}
function d_cre() {return d.creativity()-d.attribute_mean(9)}
function d_intu() {return d.intuition()-d.attribute_mean(10)}
function d_pat() {return d.patience()-d.attribute_mean(11)}
function d_mem() {return d.memory()-d.attribute_mean(12)}
function d_linA() {return d.linguistic_ability()-d.attribute_mean(13)}
function d_spaS() {return d.spatial_sense()-d.attribute_mean(14)}
function d_mus() {return d.musicality()-d.attribute_mean(15)}
function d_kinS() {return d.kinesthetic_sense()-d.attribute_mean(16)}
function d_emp() {return d.empathy()-d.attribute_mean(17)}
function d_socA() {return d.social_awareness()-d.attribute_mean(18)}

function findAlternative(x, y){return normalcdf(findZ(x, 0, y))}

totalAttributes=4;

avgMDeviation=
(
(d_agi()*1)+
(d_anaA()*1)+
(d_cre()*1)+
(d_spaS()*1.1)
)/totalAttributes;

avgDev=
(
(
(agiDev()*1)+
(anaADev()*1)+
(creDev()*1)+
(spaSDev()*1.1)
)/totalAttributes
);

findAlternative(avgMDeviation, avgDev)*100;
"
40/name="Close Combat"
40/attributes="1::strength:1.2,agility:1,toughness:1.3,endurance:1,recuperation:0.8,disease resistance:0.8,willpower:0.7,spatial sense:1.1,kinesthetic sense:0.9,focus:0.8"
40/traits=""
40/skills=""
41/name="Close Combat, alt"
41/script="
function findZ(x, mean, stdev){ var result = ((x-mean)/stdev); return result}
function normalcdf(X){ var T=1/(1+.2316419*Math.abs(X)); var D=.3989423*Math.exp(-X*X/2); var Prob=D*T*(.3193815+T*(-.3565638+T*(1.781478+T*(-1.821256+T*1.330274)))); if (X>0) { Prob=1-Prob } return Prob }

function strDev() {return d.attribute_stdev(0)}
function agiDev() {return d.attribute_stdev(1)}
function tuffDev() {return d.attribute_stdev(2)}             
function endDev() {return d.attribute_stdev(3)}             
function recDev() {return d.attribute_stdev(4)}             
function disRDev() {return d.attribute_stdev(5)}             
function anaADev() {return d.attribute_stdev(6)}             
function focDev() {return d.attribute_stdev(7)}             
function willDev() {return d.attribute_stdev(8)}             
function creDev() {return d.attribute_stdev(9)}             
function intuDev() {return d.attribute_stdev(10)}             
function patDev() {return d.attribute_stdev(11)}             
function memDev() {return d.attribute_stdev(12)}             
function linADev() {return d.attribute_stdev(13)}             
function spaSDev() {return d.attribute_stdev(14)}             
function musDev() {return d.attribute_stdev(15)}             
function kinSDev() {return d.attribute_stdev(16)}             
function empDev()  {return d.attribute_stdev(17)}             
function socADev(){return d.attribute_stdev(18)}           
                 
function str() {return normalcdf(findZ(d.strength(), d.attribute_mean(0), d.attribute_stdev(0)))}
function agi() {return normalcdf(findZ(d.agility(), d.attribute_mean(1), d.attribute_stdev(1)))}
function tuff() {return normalcdf(findZ(d.toughness(), d.attribute_mean(2), d.attribute_stdev(2)))}
function end() {return normalcdf(findZ(d.endurance(), d.attribute_mean(3), d.attribute_stdev(3)))}
function rec() {return normalcdf(findZ(d.recuperation(), d.attribute_mean(4), d.attribute_stdev(4)))}
function disR() {return normalcdf(findZ(d.disease_resistance(), d.attribute_mean(5), d.attribute_stdev(5)))}
function anaA() {return normalcdf(findZ(d.analytical_ability(), d.attribute_mean(6), d.attribute_stdev(6)))}
function foc() {return normalcdf(findZ(d.focus(), d.attribute_mean(7), d.attribute_stdev(7)))}
function will() {return normalcdf(findZ(d.willpower(), d.attribute_mean(8), d.attribute_stdev(8)))}
function cre() {return normalcdf(findZ(d.creativity(), d.attribute_mean(9), d.attribute_stdev(9)))}
function intu() {return normalcdf(findZ(d.intuition(), d.attribute_mean(10), d.attribute_stdev(10)))}
function pat() {return normalcdf(findZ(d.patience(), d.attribute_mean(11), d.attribute_stdev(11)))}
function mem() {return normalcdf(findZ(d.memory(), d.attribute_mean(12), d.attribute_stdev(12)))}
function linA() {return normalcdf(findZ(d.linguistic_ability(), d.attribute_mean(13), d.attribute_stdev(13)))}
function spaS() {return normalcdf(findZ(d.spatial_sense(), d.attribute_mean(14), d.attribute_stdev(14)))}
function mus() {return normalcdf(findZ(d.musicality(), d.attribute_mean(15), d.attribute_stdev(15)))}
function kinS() {return normalcdf(findZ(d.kinesthetic_sense(), d.attribute_mean(16), d.attribute_stdev(16)))}
function emp() {return normalcdf(findZ(d.empathy(), d.attribute_mean(17), d.attribute_stdev(17)))}
function socA() {return normalcdf(findZ(d.social_awareness(), d.attribute_mean(18), d.attribute_stdev(18)))}

function d_str() {return d.strength()-d.attribute_mean(0)}
function d_agi() {return d.agility()-d.attribute_mean(1)}
function d_tuff() {return d.toughness()-d.attribute_mean(2)}
function d_end() {return d.endurance()-d.attribute_mean(3)}
function d_rec() {return d.recuperation()-d.attribute_mean(4)}
function d_disR() {return d.disease_resistance()-d.attribute_mean(5)}
function d_anaA() {return d.analytical_ability()-d.attribute_mean(6)}
function d_foc() {return d.focus()-d.attribute_mean(7)}
function d_will() {return d.willpower()-d.attribute_mean(8)}
function d_cre() {return d.creativity()-d.attribute_mean(9)}
function d_intu() {return d.intuition()-d.attribute_mean(10)}
function d_pat() {return d.patience()-d.attribute_mean(11)}
function d_mem() {return d.memory()-d.attribute_mean(12)}
function d_linA() {return d.linguistic_ability()-d.attribute_mean(13)}
function d_spaS() {return d.spatial_sense()-d.attribute_mean(14)}
function d_mus() {return d.musicality()-d.attribute_mean(15)}
function d_kinS() {return d.kinesthetic_sense()-d.attribute_mean(16)}
function d_emp() {return d.empathy()-d.attribute_mean(17)}
function d_socA() {return d.social_awareness()-d.attribute_mean(18)}

function findAlternative(x, y){return normalcdf(findZ(x, 0, y))}

totalAttributes=10;

avgMDeviation=
(
(d_str()*1.2)+
(d_agi()*1)+
(d_tuff()*1.3)+
(d_end()*1)+
(d_rec()*.8)+
(d_disR()*.8)+
(d_will()*.7)+
(d_spaS()*1.1)+
(d_kinS()*.9)+
(d_foc()*.8)
)/totalAttributes;

avgDev=(
(
(strDev()*1.2)+
(agiDev()*1)+
(tuffDev()*1.3)+
(endDev()*1)+
(recDev()*.8)+
(disRDev()*.8)+
(willDev()*.7)+
(spaSDev()*1.1)+
(kinSDev()*.9)+
(focDev()*.8)
)
/totalAttributes);

Math.round(findAlternative(avgMDeviation, avgDev)*100);
"

Update:
  Forgot to apply weights to sdev's... oops.
  Also removed d_can_set_labor references that were throwing stuff off
  This example uses the mean and sdev methods that Splinterz provided vs static ones.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: AnnanFay on March 18, 2012, 07:11:04 pm
I don't know what skills really are yet.  To me they seem a hybrid setup between attributes and labors...

The whole terminology is very confusing.

The black squares on the labours screen in Dwarf Therapist represent the Skill that's associated with the labour. You choose your starting skills not starting labours. (labour = original UK spelling :P)

So you get dwarves with Legendary skills not legendary labours. Some labours don't have skills, hence don't have squares in DT. Labours are groupings of related actions governed by a skill, or skills. Noble positions can pretty much be treated as labours as well.

Edit: I see Professions as completly player defined grouping of related dwarf activites (ie. what your dwarf does). Though there are built in professions which are mapped to the dwarf's highest skill.

I'm not sure if attributes are connected to labours, skills or actions. It could be that different actions within a labour group have different formula using different attributes as far as I know.

Much more SCIENCE needs done!!!!! :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: brucemo on March 18, 2012, 07:17:25 pm
Hi, I have a question about DT.

I'm running with Windows 7, and the "edit script" menu option does nothing.  I made some scripts and saved them.  Now I can't access them.  Where are these scripts stored please?  I've dug through the source code and that was no help.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: plaidman on March 18, 2012, 07:20:48 pm
I just got a mac computer and wanted to run the mac osx version of Dwarf Fortress and Dwarf Therapist. Also, I wanted to package up the DF files into a single .app file instead of just a set of files. This post doesn't have any questions or anything but I want to document what I learned, in case anybody else wants to do something like this. My apologies if this has already been posted somewhere else. I did some quick searches beforehand but didn't find anything.

PROBLEM:
I want to package DwarfFortress into a .app file, and maintain compatibility with DwarfTherapist.

CONTROL:
First I tested the control, just to be sure. I fired up the non-apped DF, embarked in a world, and fired up DT. Everything works great. I'm able to load dwarfs' skills and change their jobs perfectly.

TEST 1:
Next I packaged up everything into DwarfFortress.app (thanks Google), fired it up, and it works fine. Now to try it with DT... nothing. "Unable to locate a running copy of Dwarf Fortress." is the error message. Why did this happen? Obviously something in DT is looking for a specific process running. What's changed about the installation? I basically just moved it into a different folder!

Note: For those who don't know, osx .app files are basically folders with .app at the end.

OBSERVATION 1:
I figured out that when running DwarfFortress.app, the process is actually called DwarfFortress, regardless of the executable file that gets run inside the .app directory. I also figured out with a bit of intuition that it's looking for a process called dwarfort.exe.

TEST 2:
I changed the DwarfFortress.app folder to dwarfort.exe.app (stupid, I know). Ran it, ran DT, got a different error message: "I don't know how to talk to this version of Dwarf Fortress. Checksum: 0x00000000". A different error message is good; it recognizes that DF is running, but it apparently doesn't recognize the version.

OBSERVATION 2:
With a bit of searching, I found that DT has a config file that has the a checksum of each version of DF, so it knows which version is running and which memory offsets to use. I also learned that it uses the path of the running process to calculate the checksum. Since dwarfort.exe.app is really just a folder, it probably fails and returns 0x00000000 instead of a "real" checksum.

TEST 3:
I opened that config file (DwarfTherapist.app/Contents/MacOS/etc/memory_layouts/osx/v0.34.05.ini) and changed the checksum line to 0x00000000, fire it up and voila, it works perfectly!

OBSERVATION 3:
This worked but it's not ideal. When a new version of DF was released, if we changed that config file to 0x0000000, I believe DT would think it's the older version or crash. Also, we'd want to be able to name the .app file whatever we want. Let's see if we can do that.

TEST 4:
First, I renamed the .app to something a little cleaner (DwarfFortress.app). Next I did a slight modification to DF itself. I added an & at the end of the command that starts the dwarfort.exe process. This made it fire up dwarfort.exe in its own process called - you guessed it - dwarfort.exe! I reverted the config file to have its old checksum. Tested, and everything worked!

OBSERVATION 4:
This was great too, but again not perfect. If you have the .app in the dock and you run it, you'll end up with two icons in the dock - one for DwarfFortress.app and one for dwarfort.exe. Another problem is whenever you update to a new version of DF, you'll have to remember to add that & on the last line of the df file.

CONCLUSION:
We have two solutions: One will potentially give us a duplicate icon on the dock (if you keep the .app there) and the other will require a specific .app name to work. Additionally, both will require us to maintain a file in DT or DF if the versions update.

Ideally, if the dev were to add just two extra config options, we could define the exact exe file on the filesystem to be used for checksumming and we could define the process name to see where the memory chunks start (or however that works). That way we can have the .app called anything we want, and we wouldn't have to start the dwarfort.exe in its own process! In reality, I'm sure it would take far too much work to add these things, so I'm not holding my breath, but a guy can dream...

If you made it this far, I appreciate you sticking with my wall of text. If you have any comments, corrections to any of my assumptions made here, or solutions I might not have thought of please please let me know.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: MarcAFK on March 18, 2012, 11:04:20 pm
I have someone who isn't a vampire displaying a different name in Therapist than DF does, Does it make a difference that i have modded humans to be playable? Ingame his name is Casot Ebeakan Carpenter, but in therapist he's Casot Erithdak.
I'm sure he isn't a vampire because he has thoughts about sleeping in the dirt, drinking filthy water, etc.
EDIT: Attempting to make some squads i'm seeing the same thing with someone else.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 19, 2012, 12:12:00 am
So my formula's are starting to make sense to splinterz.  I knew I wasn't mad...

It's taken a lot of trial and error, but in theory, what it does is give more weight to deviations from the mean, as well as give a wider spread of %.

Here's a taste of what I've been working on:

Code: [Select]
37/name="Wood cutter"
37/attributes="1::strength:1.1,agility:1.1,endurance:1.1,willpower:0.9,spatial sense:1.2, kinesthetic sense:0.9"
37/traits=""
38/name="Trapper"
38/attributes="1::agility:1,analytical ability:1,creativity:1,spatial sense:1.1"
38/traits=""
38/skills=""
39/name="Trapper, Alt"
39/script="
function findZ(x, mean, stdev){ var result = ((x-mean)/stdev); return result}
function normalcdf(X){ var T=1/(1+.2316419*Math.abs(X)); var D=.3989423*Math.exp(-X*X/2); var Prob=D*T*(.3193815+T*(-.3565638+T*(1.781478+T*(-1.821256+T*1.330274)))); if (X>0) { Prob=1-Prob } return Prob }

function strDev() {return d.attribute_stdev(0)}
function agiDev() {return d.attribute_stdev(1)}
function tuffDev() {return d.attribute_stdev(2)}             
function endDev() {return d.attribute_stdev(3)}             
function recDev() {return d.attribute_stdev(4)}             
function disRDev() {return d.attribute_stdev(5)}             
function anaADev() {return d.attribute_stdev(6)}             
function focDev() {return d.attribute_stdev(7)}             
function willDev() {return d.attribute_stdev(8)}             
function creDev() {return d.attribute_stdev(9)}             
function intuDev() {return d.attribute_stdev(10)}             
function patDev() {return d.attribute_stdev(11)}             
function memDev() {return d.attribute_stdev(12)}             
function linADev() {return d.attribute_stdev(13)}             
function spaSDev() {return d.attribute_stdev(14)}             
function musDev() {return d.attribute_stdev(15)}             
function kinSDev() {return d.attribute_stdev(16)}             
function empDev()  {return d.attribute_stdev(17)}             
function socADev(){return d.attribute_stdev(18)}           
                 
function str() {return normalcdf(findZ(d.strength(), d.attribute_mean(0), d.attribute_stdev(0)))}
function agi() {return normalcdf(findZ(d.agility(), d.attribute_mean(1), d.attribute_stdev(1)))}
function tuff() {return normalcdf(findZ(d.toughness(), d.attribute_mean(2), d.attribute_stdev(2)))}
function end() {return normalcdf(findZ(d.endurance(), d.attribute_mean(3), d.attribute_stdev(3)))}
function rec() {return normalcdf(findZ(d.recuperation(), d.attribute_mean(4), d.attribute_stdev(4)))}
function disR() {return normalcdf(findZ(d.disease_resistance(), d.attribute_mean(5), d.attribute_stdev(5)))}
function anaA() {return normalcdf(findZ(d.analytical_ability(), d.attribute_mean(6), d.attribute_stdev(6)))}
function foc() {return normalcdf(findZ(d.focus(), d.attribute_mean(7), d.attribute_stdev(7)))}
function will() {return normalcdf(findZ(d.willpower(), d.attribute_mean(8), d.attribute_stdev(8)))}
function cre() {return normalcdf(findZ(d.creativity(), d.attribute_mean(9), d.attribute_stdev(9)))}
function intu() {return normalcdf(findZ(d.intuition(), d.attribute_mean(10), d.attribute_stdev(10)))}
function pat() {return normalcdf(findZ(d.patience(), d.attribute_mean(11), d.attribute_stdev(11)))}
function mem() {return normalcdf(findZ(d.memory(), d.attribute_mean(12), d.attribute_stdev(12)))}
function linA() {return normalcdf(findZ(d.linguistic_ability(), d.attribute_mean(13), d.attribute_stdev(13)))}
function spaS() {return normalcdf(findZ(d.spatial_sense(), d.attribute_mean(14), d.attribute_stdev(14)))}
function mus() {return normalcdf(findZ(d.musicality(), d.attribute_mean(15), d.attribute_stdev(15)))}
function kinS() {return normalcdf(findZ(d.kinesthetic_sense(), d.attribute_mean(16), d.attribute_stdev(16)))}
function emp() {return normalcdf(findZ(d.empathy(), d.attribute_mean(17), d.attribute_stdev(17)))}
function socA() {return normalcdf(findZ(d.social_awareness(), d.attribute_mean(18), d.attribute_stdev(18)))}

function d_str() {return d.strength()-d.attribute_mean(0)}
function d_agi() {return d.agility()-d.attribute_mean(1)}
function d_tuff() {return d.toughness()-d.attribute_mean(2)}
function d_end() {return d.endurance()-d.attribute_mean(3)}
function d_rec() {return d.recuperation()-d.attribute_mean(4)}
function d_disR() {return d.disease_resistance()-d.attribute_mean(5)}
function d_anaA() {return d.analytical_ability()-d.attribute_mean(6)}
function d_foc() {return d.focus()-d.attribute_mean(7)}
function d_will() {return d.willpower()-d.attribute_mean(8)}
function d_cre() {return d.creativity()-d.attribute_mean(9)}
function d_intu() {return d.intuition()-d.attribute_mean(10)}
function d_pat() {return d.patience()-d.attribute_mean(11)}
function d_mem() {return d.memory()-d.attribute_mean(12)}
function d_linA() {return d.linguistic_ability()-d.attribute_mean(13)}
function d_spaS() {return d.spatial_sense()-d.attribute_mean(14)}
function d_mus() {return d.musicality()-d.attribute_mean(15)}
function d_kinS() {return d.kinesthetic_sense()-d.attribute_mean(16)}
function d_emp() {return d.empathy()-d.attribute_mean(17)}
function d_socA() {return d.social_awareness()-d.attribute_mean(18)}

function findAlternative(x, y){return normalcdf(findZ(x, 0, y))}

totalAttributes=4;

avgMDeviation=
(
(d_agi()*1)+
(d_anaA()*1)+
(d_cre()*1)+
(d_spaS()*1.1)
)/totalAttributes;

avgDev=
Math.sqrt
(
(
Math.pow((agiDev()*1),2)+
Math.pow((anaADev()*1),2)+
Math.pow((creDev()*1),2)+
Math.pow((spaSDev()*1.1),2)
)
/
totalAttributes
);
findAlternative(avgMDeviation, avgDev)*100;
"
40/name="Close Combat"
40/attributes="1::strength:1.2,agility:1,toughness:1.3,endurance:1,recuperation:0.8,disease resistance:0.8,willpower:0.7,spatial sense:1.1,kinesthetic sense:0.9,focus:0.8"
40/traits=""
40/skills=""
41/name="Close Combat, alt"
41/script="
function findZ(x, mean, stdev){ var result = ((x-mean)/stdev); return result}
function normalcdf(X){ var T=1/(1+.2316419*Math.abs(X)); var D=.3989423*Math.exp(-X*X/2); var Prob=D*T*(.3193815+T*(-.3565638+T*(1.781478+T*(-1.821256+T*1.330274)))); if (X>0) { Prob=1-Prob } return Prob }

function strDev() {return d.attribute_stdev(0)}
function agiDev() {return d.attribute_stdev(1)}
function tuffDev() {return d.attribute_stdev(2)}             
function endDev() {return d.attribute_stdev(3)}             
function recDev() {return d.attribute_stdev(4)}             
function disRDev() {return d.attribute_stdev(5)}             
function anaADev() {return d.attribute_stdev(6)}             
function focDev() {return d.attribute_stdev(7)}             
function willDev() {return d.attribute_stdev(8)}             
function creDev() {return d.attribute_stdev(9)}             
function intuDev() {return d.attribute_stdev(10)}             
function patDev() {return d.attribute_stdev(11)}             
function memDev() {return d.attribute_stdev(12)}             
function linADev() {return d.attribute_stdev(13)}             
function spaSDev() {return d.attribute_stdev(14)}             
function musDev() {return d.attribute_stdev(15)}             
function kinSDev() {return d.attribute_stdev(16)}             
function empDev()  {return d.attribute_stdev(17)}             
function socADev(){return d.attribute_stdev(18)}           
                 
function str() {return normalcdf(findZ(d.strength(), d.attribute_mean(0), d.attribute_stdev(0)))}
function agi() {return normalcdf(findZ(d.agility(), d.attribute_mean(1), d.attribute_stdev(1)))}
function tuff() {return normalcdf(findZ(d.toughness(), d.attribute_mean(2), d.attribute_stdev(2)))}
function end() {return normalcdf(findZ(d.endurance(), d.attribute_mean(3), d.attribute_stdev(3)))}
function rec() {return normalcdf(findZ(d.recuperation(), d.attribute_mean(4), d.attribute_stdev(4)))}
function disR() {return normalcdf(findZ(d.disease_resistance(), d.attribute_mean(5), d.attribute_stdev(5)))}
function anaA() {return normalcdf(findZ(d.analytical_ability(), d.attribute_mean(6), d.attribute_stdev(6)))}
function foc() {return normalcdf(findZ(d.focus(), d.attribute_mean(7), d.attribute_stdev(7)))}
function will() {return normalcdf(findZ(d.willpower(), d.attribute_mean(8), d.attribute_stdev(8)))}
function cre() {return normalcdf(findZ(d.creativity(), d.attribute_mean(9), d.attribute_stdev(9)))}
function intu() {return normalcdf(findZ(d.intuition(), d.attribute_mean(10), d.attribute_stdev(10)))}
function pat() {return normalcdf(findZ(d.patience(), d.attribute_mean(11), d.attribute_stdev(11)))}
function mem() {return normalcdf(findZ(d.memory(), d.attribute_mean(12), d.attribute_stdev(12)))}
function linA() {return normalcdf(findZ(d.linguistic_ability(), d.attribute_mean(13), d.attribute_stdev(13)))}
function spaS() {return normalcdf(findZ(d.spatial_sense(), d.attribute_mean(14), d.attribute_stdev(14)))}
function mus() {return normalcdf(findZ(d.musicality(), d.attribute_mean(15), d.attribute_stdev(15)))}
function kinS() {return normalcdf(findZ(d.kinesthetic_sense(), d.attribute_mean(16), d.attribute_stdev(16)))}
function emp() {return normalcdf(findZ(d.empathy(), d.attribute_mean(17), d.attribute_stdev(17)))}
function socA() {return normalcdf(findZ(d.social_awareness(), d.attribute_mean(18), d.attribute_stdev(18)))}

function d_str() {return d.strength()-d.attribute_mean(0)}
function d_agi() {return d.agility()-d.attribute_mean(1)}
function d_tuff() {return d.toughness()-d.attribute_mean(2)}
function d_end() {return d.endurance()-d.attribute_mean(3)}
function d_rec() {return d.recuperation()-d.attribute_mean(4)}
function d_disR() {return d.disease_resistance()-d.attribute_mean(5)}
function d_anaA() {return d.analytical_ability()-d.attribute_mean(6)}
function d_foc() {return d.focus()-d.attribute_mean(7)}
function d_will() {return d.willpower()-d.attribute_mean(8)}
function d_cre() {return d.creativity()-d.attribute_mean(9)}
function d_intu() {return d.intuition()-d.attribute_mean(10)}
function d_pat() {return d.patience()-d.attribute_mean(11)}
function d_mem() {return d.memory()-d.attribute_mean(12)}
function d_linA() {return d.linguistic_ability()-d.attribute_mean(13)}
function d_spaS() {return d.spatial_sense()-d.attribute_mean(14)}
function d_mus() {return d.musicality()-d.attribute_mean(15)}
function d_kinS() {return d.kinesthetic_sense()-d.attribute_mean(16)}
function d_emp() {return d.empathy()-d.attribute_mean(17)}
function d_socA() {return d.social_awareness()-d.attribute_mean(18)}

function findAlternative(x, y){return normalcdf(findZ(x, 0, y))}

totalAttributes=10;

avgMDeviation=
(
(d_str()*1.2)+
(d_agi()*1)+
(d_tuff()*1.3)+
(d_end()*1)+
(d_rec()*.8)+
(d_disR()*.8)+
(d_will()*.7)+
(d_spaS()*1.1)+
(d_kinS()*.9)+
(d_foc()*.8)
)/totalAttributes;

avgDev=
Math.sqrt
(
(
Math.pow((strDev()  *1.2) ,2) +
Math.pow((agiDev()  *1)   ,2) +
Math.pow((tuffDev() *1.3) ,2) +
Math.pow((endDev()  *1)   ,2) +
Math.pow((recDev()  *.8)  ,2) +
Math.pow((disRDev() *.8)  ,2) +
Math.pow((willDev() *.7)  ,2) +
Math.pow((spaSDev() *1.1) ,2) +
Math.pow((kinSDev() *.9)  ,2) +
Math.pow((focDev()  *.8)  ,2)
)
/
totalAttributes
);

Math.round(findAlternative(avgMDeviation, avgDev)*100);
"
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 19, 2012, 04:15:34 am
waffle

most of the attributes for roles have been taken directly from the wiki (http://dwarffortresswiki.org/index.php/Attributes#Skills_by_Associated_Attributes). i'm purely working under the assumption it's not complete bs. :P perhaps we should add some default weights? in regards to your cook, it's hard to tell you what might be happening. what are your weights? do you have other cooks with more skill? way better attributes? i can take a look if you want to send me the save.

i'm pretty sure i've got all the jobs fixed, so you don't need to worry about those anymore.

Yeah i know it's from the wiki not you ;p some of them just don't make sense though in my mind. For the weights i just 90% on attribs, 10% on skills. I have no other cooks, it was a young embark.

On general weights, i wonder if Toady assigned any importance to specific skills for each profession. Usually he's very detailed when it comes to things like this so maybe he did. Taking the cook as an example, would KS be that important? whereas for a melee soldier/wrestler it should be very important. Should physical vs mental attribs be weighted differently...well i guess we could go on forever and i doubt we'll never know for sure anyways. I think it best just to keep things simple for now :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 19, 2012, 04:23:03 am
waffle

most of the attributes for roles have been taken directly from the wiki (http://dwarffortresswiki.org/index.php/Attributes#Skills_by_Associated_Attributes). i'm purely working under the assumption it's not complete bs. :P perhaps we should add some default weights? in regards to your cook, it's hard to tell you what might be happening. what are your weights? do you have other cooks with more skill? way better attributes? i can take a look if you want to send me the save.

i'm pretty sure i've got all the jobs fixed, so you don't need to worry about those anymore.

Yeah i know it's from the wiki not you ;p some of them just don't make sense though in my mind. For the weights i just 90% on attribs, 10% on skills. I have no other cooks, it was a young embark.

On general weights, i wonder if Toady assigned any importance to specific skills for each profession. Usually he's very detailed when it comes to things like this so maybe he did. Taking the cook as an example, would KS be that important? whereas for a melee soldier/wrestler it should be very important. Should physical vs mental attribs be weighted differently...well i guess we could go on forever and i doubt we'll never know for sure anyways. I think it best just to keep things simple for now :)

yeah i'm not happy with the current method to determine the ratings either, it certainly has some flaws which i'm hoping i can correct using thistleknot's work. since we don't know if any attributes are weighted, the safest bet is just to leave the weighting of individual aspects at 1.0 and just apply a global weight to aspect groups as you did. this is what i intend to do with the default roles i'll have packaged in, as i'm assuming most people will never bother tweaking individual weights.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: MarcAFK on March 20, 2012, 12:00:30 am
as a chef ill say that kinesthetic sense is basically only needed for not dropping stuff. oh and theres that whole thing where you'e chopping without looking like a boss and kinda don' want to loose a finger.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Kaer Fyzarc on March 20, 2012, 01:49:00 am
I feel horrible, I had a bit of a cavein accident, one miner died, other one knocked unconscious. Worst thing, one had a baby on the job. 6 days old. Baby survived, but had both legs broken and lower spine broken. The mother was the one knocked unconscious I think, (similar names, is that how it works?), but she just left the baby. Baby crawled all the way back to the dining hall, draging it's broken body along.

Now the problem is DT does not see the baby, It's name is nowhere to be found, my bookkeeper reports 53 dwarfs, DF only 52. Has DF already given up on this broken baby? Surely this baby is not a vampire?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 20, 2012, 04:46:43 am
yeah i'm not happy with the current method to determine the ratings either, it certainly has some flaws which i'm hoping i can correct using thistleknot's work. since we don't know if any attributes are weighted, the safest bet is just to leave the weighting of individual aspects at 1.0 and just apply a global weight to aspect groups as you did. this is what i intend to do with the default roles i'll have packaged in, as i'm assuming most people will never bother tweaking individual weights.

Just found this which may be of interest from a FotF post by Toady:

Q: Attributes are supposed to impact performance at various tasks, but according to my testing impact of attributes on quality of products is completely unimportant compared to skill. There is no noticeable difference between "legendary carpenter with a boundless creative imagination" and "legendary carpenter (with average creativity)". Is it intended?

A: It's not intended, but that is how it is, for all attributes and all skills (with some combat related exceptions probably).  In response to the discussion, creativity is an attribute for carpentry and it does effect the roll, but skill outpaces it.  To check, just ran a test - an unskilled, meager creativity dwarf with no other notable atts made 10 lowest quality items, where an unskilled, great creativity dwarf with no other notable atts had 5 come out well-crafted.  Once they are legendary and churning out exceptional goods and masterpieces, it doesn't matter anymore.  I don't want attributes to dominate the game, but I think they should be important even at the highest levels.  It kind of makes me want to split quality into different categories though.


So, i would guess it's similar for all crafting in which case creativity could have more value as an attribute.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 20, 2012, 05:08:32 am
I feel horrible, I had a bit of a cavein accident, one miner died, other one knocked unconscious. Worst thing, one had a baby on the job. 6 days old. Baby survived, but had both legs broken and lower spine broken. The mother was the one knocked unconscious I think, (similar names, is that how it works?), but she just left the baby. Baby crawled all the way back to the dining hall, draging it's broken body along.

Now the problem is DT does not see the baby, It's name is nowhere to be found, my bookkeeper reports 53 dwarfs, DF only 52. Has DF already given up on this broken baby? Surely this baby is not a vampire?
i wouldn't mind getting my hands on that save to take a look if it's not too much trouble.

Just found this which may be of interest from a FotF post by Toady:

Q: Attributes are supposed to impact performance at various tasks, but according to my testing impact of attributes on quality of products is completely unimportant compared to skill. There is no noticeable difference between "legendary carpenter with a boundless creative imagination" and "legendary carpenter (with average creativity)". Is it intended?

A: It's not intended, but that is how it is, for all attributes and all skills (with some combat related exceptions probably).  In response to the discussion, creativity is an attribute for carpentry and it does effect the roll, but skill outpaces it.  To check, just ran a test - an unskilled, meager creativity dwarf with no other notable atts made 10 lowest quality items, where an unskilled, great creativity dwarf with no other notable atts had 5 come out well-crafted.  Once they are legendary and churning out exceptional goods and masterpieces, it doesn't matter anymore.  I don't want attributes to dominate the game, but I think they should be important even at the highest levels.  It kind of makes me want to split quality into different categories though.


So, i would guess it's similar for all crafting in which case creativity could have more value as an attribute.

that's very interesting. i'll have to make sure that for the default roles i'm giving creativity a heavier weight for craft related roles. in general though it sounds like what was previously mentioned for the general/global weights should be accurate as well. that being skills > traits > attributes for the defaults. it'll still be possible to change that for those who prefer different balancing.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 20, 2012, 07:59:16 pm
Here's an update to my formula, it standardizes all the data first, then apply's weights.

Code: [Select]
Close Combat, alt"
1/script="
function findZ(x, mean, stdev){ var result = ((x-mean)/stdev); return result}
function normalcdf(X){ var T=1/(1+.2316419*Math.abs(X)); var D=.3989423*Math.exp(-X*X/2); var Prob=D*T*(.3193815+T*(-.3565638+T*(1.781478+T*(-1.821256+T*1.330274)))); if (X>0) { Prob=1-Prob } return Prob }

function strDev() {return d.attribute_stdev(0)}
function agiDev() {return d.attribute_stdev(1)}
function tuffDev() {return d.attribute_stdev(2)}             
function endDev() {return d.attribute_stdev(3)}             
function recDev() {return d.attribute_stdev(4)}             
function disRDev() {return d.attribute_stdev(5)}             
function anaADev() {return d.attribute_stdev(6)}             
function focDev() {return d.attribute_stdev(7)}             
function willDev() {return d.attribute_stdev(8)}             
function creDev() {return d.attribute_stdev(9)}             
function intuDev() {return d.attribute_stdev(10)}             
function patDev() {return d.attribute_stdev(11)}             
function memDev() {return d.attribute_stdev(12)}             
function linADev() {return d.attribute_stdev(13)}             
function spaSDev() {return d.attribute_stdev(14)}             
function musDev() {return d.attribute_stdev(15)}             
function kinSDev() {return d.attribute_stdev(16)}             
function empDev()  {return d.attribute_stdev(17)}             
function socADev(){return d.attribute_stdev(18)}           
                 
function str() {return normalcdf(findZ(d.strength(), d.attribute_mean(0), d.attribute_stdev(0)))}
function agi() {return normalcdf(findZ(d.agility(), d.attribute_mean(1), d.attribute_stdev(1)))}
function tuff() {return normalcdf(findZ(d.toughness(), d.attribute_mean(2), d.attribute_stdev(2)))}
function end() {return normalcdf(findZ(d.endurance(), d.attribute_mean(3), d.attribute_stdev(3)))}
function rec() {return normalcdf(findZ(d.recuperation(), d.attribute_mean(4), d.attribute_stdev(4)))}
function disR() {return normalcdf(findZ(d.disease_resistance(), d.attribute_mean(5), d.attribute_stdev(5)))}
function anaA() {return normalcdf(findZ(d.analytical_ability(), d.attribute_mean(6), d.attribute_stdev(6)))}
function foc() {return normalcdf(findZ(d.focus(), d.attribute_mean(7), d.attribute_stdev(7)))}
function will() {return normalcdf(findZ(d.willpower(), d.attribute_mean(8), d.attribute_stdev(8)))}
function cre() {return normalcdf(findZ(d.creativity(), d.attribute_mean(9), d.attribute_stdev(9)))}
function intu() {return normalcdf(findZ(d.intuition(), d.attribute_mean(10), d.attribute_stdev(10)))}
function pat() {return normalcdf(findZ(d.patience(), d.attribute_mean(11), d.attribute_stdev(11)))}
function mem() {return normalcdf(findZ(d.memory(), d.attribute_mean(12), d.attribute_stdev(12)))}
function linA() {return normalcdf(findZ(d.linguistic_ability(), d.attribute_mean(13), d.attribute_stdev(13)))}
function spaS() {return normalcdf(findZ(d.spatial_sense(), d.attribute_mean(14), d.attribute_stdev(14)))}
function mus() {return normalcdf(findZ(d.musicality(), d.attribute_mean(15), d.attribute_stdev(15)))}
function kinS() {return normalcdf(findZ(d.kinesthetic_sense(), d.attribute_mean(16), d.attribute_stdev(16)))}
function emp() {return normalcdf(findZ(d.empathy(), d.attribute_mean(17), d.attribute_stdev(17)))}
function socA() {return normalcdf(findZ(d.social_awareness(), d.attribute_mean(18), d.attribute_stdev(18)))}

function d_str() {return d.strength()-d.attribute_mean(0)}
function d_agi() {return d.agility()-d.attribute_mean(1)}
function d_tuff() {return d.toughness()-d.attribute_mean(2)}
function d_end() {return d.endurance()-d.attribute_mean(3)}
function d_rec() {return d.recuperation()-d.attribute_mean(4)}
function d_disR() {return d.disease_resistance()-d.attribute_mean(5)}
function d_anaA() {return d.analytical_ability()-d.attribute_mean(6)}
function d_foc() {return d.focus()-d.attribute_mean(7)}
function d_will() {return d.willpower()-d.attribute_mean(8)}
function d_cre() {return d.creativity()-d.attribute_mean(9)}
function d_intu() {return d.intuition()-d.attribute_mean(10)}
function d_pat() {return d.patience()-d.attribute_mean(11)}
function d_mem() {return d.memory()-d.attribute_mean(12)}
function d_linA() {return d.linguistic_ability()-d.attribute_mean(13)}
function d_spaS() {return d.spatial_sense()-d.attribute_mean(14)}
function d_mus() {return d.musicality()-d.attribute_mean(15)}
function d_kinS() {return d.kinesthetic_sense()-d.attribute_mean(16)}
function d_emp() {return d.empathy()-d.attribute_mean(17)}
function d_socA() {return d.social_awareness()-d.attribute_mean(18)}

function findAlternative(x, y){return normalcdf(findZ(x, 0, y))}

totalAttributes=10;

avgMDeviation=
(
((d_str()/strDev())*1.2)+
((d_agi()/agiDev())*1)+
((d_tuff()/tuffDev())*1.3)+
((d_end()/endDev())*1)+
((d_rec()/recDev())*.8)+
((d_disR()/disRDev())*.8)+
((d_will()/willDev())*.7)+
((d_spaS()/spaSDev())*1.1)+
((d_kinS()/kinSDev())*.9)+
((d_foc()/focDev())*.8)
)/totalAttributes;

avgDev=
Math.sqrt
(
(
Math.pow(1.2,2)+
Math.pow(1,2)+
Math.pow(1.3,2)+
Math.pow(1,2)+
Math.pow(.8,2)+
Math.pow(.8,2)+
Math.pow(.7,2)+
Math.pow(1.1,2)+
Math.pow(.9,2)+
Math.pow(.8,2)
)
/
totalAttributes
);

Math.round(findAlternative(avgMDeviation, avgDev)*100)"
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 21, 2012, 03:32:47 am
I feel horrible, I had a bit of a cavein accident, one miner died, other one knocked unconscious. Worst thing, one had a baby on the job. 6 days old. Baby survived, but had both legs broken and lower spine broken. The mother was the one knocked unconscious I think, (similar names, is that how it works?), but she just left the baby. Baby crawled all the way back to the dining hall, draging it's broken body along.

Now the problem is DT does not see the baby, It's name is nowhere to be found, my bookkeeper reports 53 dwarfs, DF only 52. Has DF already given up on this broken baby? Surely this baby is not a vampire?
i wouldn't mind getting my hands on that save to take a look if it's not too much trouble.

I found something you may be interested in, vampires have THREE different names? O.o (see screenshot)

Spoiler: Screenshot in here (click to show/hide)

Order of events:
I knew i had a vamp somewhere, then someone got accused.

I couldn't see the accused's name in DT which confused me, so i checked in Legends Viewer and again couldn't see them.

I turned on the cheat option in DT to show them. And up comes the purple dude, but i can't find his name in game and doesn't match the accused.

I entered the 1st name of the guy into LV and at the top was the guy with the same kill as the accused Vampire ingame.

Save: http://www.zenadsl5706.zen.co.uk/DF/3NameVamp.rar (http://www.zenadsl5706.zen.co.uk/DF/3NameVamp.rar)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Kogut on March 21, 2012, 05:16:50 am
Breachboard is a translation of his name.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 21, 2012, 02:11:06 pm
after much blood and tears from Thistleknot and myself i've got another update to the unofficial branch which improves the roles feature among other things.

it's very important that if you've created custom roles in the game_data.ini you save them and move them to the dwarf therapist.ini after updating

Changes:

Spoiler: Role Guide (click to show/hide)

download (http://www.mediafire.com/?4c30zaxfuypsf58)

source (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: khearn on March 21, 2012, 05:52:16 pm
In the version of Therapist packaged with Masterwork 1.5.1+, I can't load all migrants into Therapist as soon as the game pauses with the "Some migrants have arrived" message. They only appear in Therapist after they have moved onto the game screen. I've never had this problem before. It's very useful to be able to see all your migrants as soon as the game pauses so you can easily modify their labors immediately instead of watching the screen until no more have come for a while.

I believe Meph is using splinterz's patched version as of 1.5.1, so maybe it's a consequence of his changes? Anyone else notice this?

I'm using splinterz's version from a week or so ago (before the new roles stuff), and I'm also seeing the same thing.

In the "official" version, when a new migration wave arrived, I could read dwarves and sort by migration wave, and there would be a new wave with all the new dwarves, even ones that weren't yet on the map.

In this version, when I get the message for a new wave, if I read and sort by migration wave, it doesn't show a new wave, but there will be one new dwarf in the latest old wave. If I unpause until the second dwarf from the wave appears on the map, then re-read the dwarves in DT, there are now two new dwarves in the latest wave (but still not a new wave). At some point a new wave will appear in DT, but I think it's not until all the dwarves from the the new wave are on the map.

I do miss having all of the new dwarves appear at once in a separate wave so I can sort through them right away. Even if they only show up in DT as they enter the map, they should at least appear in a separate wave from the last bunch. It's a pain having to try and find the new guy when the last wave had 30 dwarves. Especially if the name shown in DF doesn't match the name in DT (and you know what that means!)

Edit: As long as I'm posting, I'll add 3 things.

First and foremost: Many, many thanks to those who have contributed to this project. I can't imagine playing DF without DT.

Second: Would it be possible to make it so I can sort by two columns? For instance, if I goto the military tab and sort by strength, the Endurance column is random. If I then sort by endurance, the strength column is random. I'd like to be able to have it show the strongest first, and when strength is equal, sort by endurance. And where both are equal, sort buy toughness, and so on.

Third: Would it be possible to also not reset the sorting when I re-read the dwarves and/or switch tabs? I tend to go to the military tab and sort by fighting and look down the list for potential soldiers. But once I pick a likely draftee, I want to check his labors to make sure he's not the only woodcutter i have (for example). Then when I switch back to the military tab, I have to re-sort again. Or another example is when I want to see why no one is smelting the ore in the queue at the smelter and I sort by furnace operating to see who has it enabled. Then a little while later I re-read the dwarves to see who is doing what, and they get re-sorted by name so I have to select furnace operator again. It seems like it ought to be able to remember what I had things sorted by on each tab.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 21, 2012, 06:45:17 pm
i haven't had a chance to test the migration issue yet, but i have an idea what's probably causing it.

originally when i was figuring out how to implement roles my first thought was just to create scripts and sort on multiple columns. unfortunately with the current code library sorting on multiple columns doesn't seem to be supported and it'll be a bit of work to implement it, but anything is possible with enough time. for what you're describing though, i'd highly recommend checking out the roles. a simple way of thinking of them is performing a multiple sort, but in a single column.

i briefly looked into the tab switching/sorting while i was doing the role stuff and again there should be a way to do it, it'll just take time to poke around and find the necessary bits and pieces to put it together. which is damned slow for me since i've never used qt up until a month ago so i have to look up documentation for everything   :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: ratchet freak on March 21, 2012, 07:29:53 pm
if you specify a stable sort and keep the dwarfs sorted that way in the backing array/vector that should do it
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Kaer Fyzarc on March 21, 2012, 11:23:00 pm
I feel horrible, I had a bit of a cavein accident, one miner died, other one knocked unconscious. Worst thing, one had a baby on the job. 6 days old. Baby survived, but had both legs broken and lower spine broken. The mother was the one knocked unconscious I think, (similar names, is that how it works?), but she just left the baby. Baby crawled all the way back to the dining hall, draging it's broken body along.

Now the problem is DT does not see the baby, It's name is nowhere to be found, my bookkeeper reports 53 dwarfs, DF only 52. Has DF already given up on this broken baby? Surely this baby is not a vampire?

Here is the save game:
http://dl.dropbox.com/u/1940986/region1.zip

after rebooting and playing on, the baby is still crawling around with broken back and legs (maybe a zombie ;) I don't think a newborn will survive 2 broken legs and a back for very long.) and DT doesn't think it exhists.

edit: oh and it was the mother of the baby killed in the cave in. The father is around, but hey he doesn't care.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 21, 2012, 11:39:20 pm
I just would like to say:

"Hell yeah!"

If it weren't a forum, I'd drop the f bomb.

Thank you Splinterz.  I wish I had your skills, like bow hunting or computer hacking http://www.youtube.com/watch?v=TejWxbJ02xw#t=0m12s (http://www.youtube.com/watch?v=TejWxbJ02xw#t=0m12s)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: vityav on March 22, 2012, 01:02:22 am
Is there any particular reason that there isn't a write_short() function? I've tried adding one by mirroring the write_int() function and changing the necessary ints to shorts, but after compiling just fine it segfaults every time.

In order to use it in dwarf.cpp, I have to declare it in inc/dwarfinstance.h as:
Code: [Select]
virtual int write_short(const VIRTADDR &addr, const short &val) = 0;
If I declare it in all the dwarfinstancelinux files, not use it in dwarf.cpp, and not declare it in dwarfinstance.h, it will compile fine and run fine. The moment I add that line though, it starts to segfault.

From gdb:
Code: [Select]
Program received signal SIGSEGV, Segmentation fault.
DFInstanceLinux::read_raw (this=0xfee3b0, addr=@0x1, bytes=8, buffer=...) at src/dfinstancelinux.cpp:220
220     for(VIRTADDR ptr = addr; ptr < addr+ bytes; ptr += step_size) {

And the last few lines of the trace log:
Spoiler (click to show/hide)

I assume it has something to do with this comment in write_raw():
Code: [Select]
* On x86-64 systems, the size that POKEDATA writes is 8 bytes instead of
* 4, so we need to use the sizeof( long ) as our step size.
but is there any way to get around that? (Because naively making stepsize be sizeof(short) didn't help either :P )

Thanks

Edit: I have tried reading in the short 0x04 before in memory, concatenating the two unsigned into an int, then writing them both back with write_int(), but that doesn't seem to work at all (does mess things up nicely, though)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: AdeleneDawner on March 22, 2012, 03:49:17 am
I'm having trouble with custom roles - they aren't showing up at all.

Am I supposed to start numbering them at 1, or at 47 to follow the default roles? (I'm starting at 1.)

If I have a typo somewhere, would that cause them not to load?

Any other gotchas I might be running into?

Here's what I added to game_data.ini:
Code: [Select]
[custom_roles]
size=22
1/name="% Bonecarver"
1/attributes/size=5
1/attributes/1/id=agility
1/attributes/1/weight=0.5
1/attributes/2/id=endurance
1/attributes/2/weight=0.5
1/attributes/3/id=creativity
1/attributes/3/weight=1.0
1/attributes/4/id=spatial sense
1/attributes/4/weight=0.5
1/attributes/5/id=kinesthetic sense
1/attributes/5/weight=0.5
1/skills/size=1
1/skills/1/id=37
2/name="% Leatherworker"
2/attributes/size=6
2/attributes/1/id=strength
2/attributes/2/id=agility
2/attributes/3/id=endurance
2/attributes/4/id=creatvity
2/attributes/5/id=spatial sense
2/attributes/6/id=kinesthetic sense
2/skills/size=1
2/skills/1/id=36
3/name="* Hauler"
3/attributes/size=18
3/attributes/1/id=-strength
3/attributes/2/id=-agility
3/attributes/3/id=-toughness
3/attributes/4/id=-endurance
3/attributes/5/id=-disease resistance
3/attributes/6/id=-recuperation
3/attributes/7/id=-analytical ability
3/attributes/8/id=-creatvity
3/attributes/9/id=-empathy
3/attributes/10/id=-focus
3/attributes/11/id=-intuition
3/attributes/12/id=-kinesthetic sense
3/attributes/13/id=-linguistic ability
3/attributes/14/id=-memory
3/attributes/15/id=-patience
3/attributes/16/id=-social awareness
3/attributes/17/id=-spatial sense
3/attributes/18/id=-willpower
4/name="+ Medic"
4/attributes/size=3
4/attributes/1/id=analytical ability
4/attributes/2/id=memory
4/attributes/3/id=intuition
4/skills/size=1
4/skills/1/id=60
4/traits/size = 2
4/traits/1/id=20
4/traits/2/id=23
5/name="+ Nurse"
5/attributes/size=4
5/attributes/1/id=memory
5/attributes/2/id=agility
5/attributes/3/id=analytical ability
5/attributes/4/id=empathy
5/traits/size=2
5/traits/1/id=20
5/traits/1/weight=0.8
5/traits/2/id=23
5/traits/2/weight=0.2
6/name="- Woodworker"
6/attributes/size=6
6/attributes/1/id=strength
6/attributes/1/weight=0.5
6/attributes/2/id=endurance
6/attributes/2/weight=0.5
6/attributes/3/id=creativity
6/attributes/3/weight=1.0
6/attributes/4/id=spatial sense
6/attributes/4/weight=0.5
6/attributes/5/id=kinesthetic sense
6/attributes/5/weight=0.5
6/attributes/6/id=agility
6/attributes/6/weight=0.5
6/skills/size=1
6/skills/1/id=2
7/name=". Engraver"
7/attributes/size=4
7/attributes/1/id=agility
7/attributes/1/weight=0.5
7/attributes/2/id=creativity
7/attributes/2/weight=1.0
7/attributes/3/id=spatial sense
7/attributes/3/weight=0.5
7/attributes/4/id=kinesthetic sense
7/attributes/4/weight=0.5
7/skills/size=1
7/skills/1/id=3
8/name=". Miner"
8/attributes/size=6
8/attributes/1/id=willpower
8/attributes/2/id=strength
8/attributes/3/id=endurance
8/attributes/4/id=toughness
8/attributes/5/id=spatial sense
8/attributes/6/id=kinesthetic sense
8/skills/size=1
8/skills/1/id=0
9/name=": Metalworker"
9/attributes/size=6
9/attributes/1/id=strength
9/attributes/1/weight=0.5
9/attributes/2/id=endurance
9/attributes/2/weight=0.5
9/attributes/3/id=creativity
9/attributes/3/weight=1.0
9/attributes/4/id=spatial sense
9/attributes/4/weight=0.5
9/attributes/5/id=kinesthetic sense
9/attributes/5/weight=0.5
9/attributes/6/id=agility
9/attributes/6/weight=0.5
9/skills/size=2
9/skills/1/id=27
9/skills/2/id=28
10/name=": Metalcrafter"
10/attributes/size=6
10/attributes/1/id=strength
10/attributes/1/weight=0.5
10/attributes/2/id=endurance
10/attributes/2/weight=0.5
10/attributes/3/id=creativity
10/attributes/3/weight=1.0
10/attributes/4/id=spatial sense
10/attributes/4/weight=0.5
10/attributes/5/id=kinesthetic sense
10/attributes/5/weight=0.5
10/attributes/6/id=agility
10/attributes/6/weight=0.5
10/skills/size=2
10/skills/1/id=29
10/skills/2/id=34
11/name="; Brewer"
11/attributes/size=3
11/attributes/1/id=strength
11/attributes/2/id=agility
11/attributes/3/id=kinesthetic sense
11/skills/size=1
11/skills/1/id=14
12/name="; Cook"
12/attributes/size=4
12/attributes/1/id=analytical ability
12/attributes/1/weight=0.5
12/attributes/2/id=agility
12/attributes/2/weight=0.5
12/attributes/3/id=creativity
12/attributes/3/weight=1.0
12/attributes/4/id=kinesthetic sense
12/attributes/4/weight=0.5
12/skills/size=1
12/skills/1/id=21
13/name="; Farmer"
13/attributes/size=4
13/attributes/1/id=strength
13/attributes/2/id=agility
13/attributes/3/id=endurance
13/attributes/4/id=kinesthetic sense
13/skills/size=1
13/skills/1/id=22
14/name="^ Admin"
14/attributes/size=8
14/attributes/1/id=linguistic ability
14/attributes/2/id=empathy
14/attributes/3/id=social awareness
14/attributes/4/id=analytical ability
14/attributes/5/id=creativity
14/attributes/6/id=memory
14/attributes/7/id=intuition
14/attributes/8/id=focus
14/traits/size=2
14/traits/1/id=19
14/traits/2/id=20
14/skills/size=3
14/skills/1/id=74
14/skills/2/id=75
14/skills/1/id=77
15/name="^ Lawdwarf"
15/attributes_weight=0.8
15/traits_weight=0.2
15/attributes/size=3
15/attributes/1/id=-strength
15/attributes/2/id=-agility
15/attributes/3/id=-endurance
15/traits/size=1
15/traits/1/id=-1
16/name="` Jewler"
16/attributes/size=5
16/attributes/1/id=agility
16/attributes/1/weight=0.5
16/attributes/2/id=creativity
16/attributes/2/weight=1.0
16/attributes/3/id=analytical ability
16/attributes/3/weight=0.5
16/attributes/4/id=spatial sense
16/attributes/4/weight=0.75
16/attributes/5/id=kinesthetic sense
16/attributes/5/weight=0.75
16/skills/size=2
16/skills/1/id=30
16/skills/2/id=31
17/name="` Strand Extractor"
17/attributes/size=5
17/attributes/1/id=strength
17/attributes/2/id=agility
17/attributes/3/id=endurance
17/attributes/4/id=analytical ability
17/attributes/5/id=kinesthetic sense
17/skills/size=1
17/skills/1/id=26
18/name="o Mason"
18/attributes/size=6
18/attributes/1/id=agility
18/attributes/1/weight=0.5
18/attributes/2/id=strength
18/attributes/2/weight=0.5
18/attributes/3/id=endurance
18/attributes/3/weight=0.5
18/attributes/4/id=creativity
18/attributes/4/weight=1.0
18/attributes/5/id=spatial sense
18/attributes/5/weight=0.5
18/attributes/6/id=kinesthetic sense
18/attributes/6/weight=0.5
18/skills/size=1
18/skills/1/id=4
19/name="o Mechanic"
19/attributes/size=6
19/attributes/1/id=strength
19/attributes/1/weight=0.5
19/attributes/2/id=agility
19/attributes/2/weight=0.5
19/attributes/3/id=endurance
19/attributes/3/weight=0.5
19/attributes/4/id=analytical ability
19/attributes/4/weight=0.5
19/attributes/5/id=creativity
19/attributes/5/weight=1.0
19/attributes/6/id=spatial sense
19/attributes/6/weight=0.5
19/skills/size=1
19/skills/1/id=55
20/name="o Potter"
20/attributes/size=5
20/attributes/1/id=agility
20/attributes/1/weight=0.5
20/attributes/2/id=endurance
20/attributes/2/weight=0.5
20/attributes/3/id=creativity
20/attributes/3/weight=1.0
20/attributes/4/id=spatial sense
20/attributes/4/weight=0.5
20/attributes/5/id=kinesthetic sense
20/attributes/5/weight=0.5
20/skills/size=1
20/skills/1/id=33
21/name="~ Marksdwarf"
21/attributes/size=4
21/attributes/1/id=agility
21/attributes/2/id=focus
21/attributes/3/id=spatial sense
21/attributes/4/id=kinesthetic sense
21/traits/size=1
21/traits/1/id=1
21/skills/size=7
21/skills/1/id=89
21/skills/2/id=44
21/skills/3/id=42
21/skills/4/id=57
21/skills/5/id=100
21/skills/6/id=53
21/skills/7/id=52
22/name="~ Military"
22/attributes/size=6
22/attributes/1/id=strength
22/attributes/2/id=agility
22/attributes/3/id=toughness
22/attributes/4/id=willpower
22/attributes/5/id=spatial sense
22/attributes/6/id=kinesthetic sense
22/traits/size=1
22/traits/1/id=1
22/skills/size=20
22/skills/1/id=46
22/skills/2/id=38
22/skills/3/id=102
22/skills/4/id=105
22/skills/5/id=99
22/skills/6/id=42
22/skills/7/id=104
22/skills/8/id=40
22/skills/9/id=51
22/skills/10/id=41
22/skills/11/id=89
22/skills/12/id=50
22/skills/13/id=45
22/skills/14/id=43
22/skills/15/id=103
22/skills/16/id=39
22/skills/17/id=86
22/skills/18/id=98
22/skills/19/id=54
22/skills/20/id=101
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 22, 2012, 05:25:03 am
I'm having trouble with custom roles - they aren't showing up at all.

Am I supposed to start numbering them at 1, or at 47 to follow the default roles? (I'm starting at 1.)

If I have a typo somewhere, would that cause them not to load?

Any other gotchas I might be running into?

Here's what I added to game_data.ini:

snip


looks fine, just move that whole section to your Dwarf Therapist.ini instead of game_data.ini.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 22, 2012, 06:20:46 am
I feel horrible, I had a bit of a cavein accident, one miner died, other one knocked unconscious. Worst thing, one had a baby on the job. 6 days old. Baby survived, but had both legs broken and lower spine broken. The mother was the one knocked unconscious I think, (similar names, is that how it works?), but she just left the baby. Baby crawled all the way back to the dining hall, draging it's broken body along.

Now the problem is DT does not see the baby, It's name is nowhere to be found, my bookkeeper reports 53 dwarfs, DF only 52. Has DF already given up on this broken baby? Surely this baby is not a vampire?

Here is the save game:
http://dl.dropbox.com/u/1940986/region1.zip

after rebooting and playing on, the baby is still crawling around with broken back and legs (maybe a zombie ;) I don't think a newborn will survive 2 broken legs and a back for very long.) and DT doesn't think it exhists.

edit: oh and it was the mother of the baby killed in the cave in. The father is around, but hey he doesn't care.

i can see that baby just fine in DT, are you sure you have the option on to show babies and children?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: AdeleneDawner on March 22, 2012, 07:34:07 am
That would probably help, ya. Thanks, splinterz.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 22, 2012, 08:36:53 am
i've updated the download (http://www.mediafire.com/?4c30zaxfuypsf58) link in my previous post (http://www.bay12forums.com/smf/index.php?topic=66525.msg3116231#msg3116231) with a fix so migrants will again show up in DT before they're on the map.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thisisntbob on March 22, 2012, 01:12:12 pm
I'm having another issue with migrants: it isn't sorting the waves properly. The first three waves (including initial 7) are fine, but the fourth wave is added to the third wave.

The problem exists in version 7 as well, but 0.6.12 works fine. The new update hasn't fixed this unfortunately.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 22, 2012, 01:43:21 pm
I'm having trouble with custom roles - they aren't showing up at all.

Am I supposed to start numbering them at 1, or at 47 to follow the default roles? (I'm starting at 1.)

If I have a typo somewhere, would that cause them not to load?

Any other gotchas I might be running into?

Here's what I added to game_data.ini:
Code: [Select]
[custom_roles]
size=22
1/name="% Bonecarver"
1/attributes/size=5
1/attributes/1/id=agility
1/attributes/1/weight=0.5
1/attributes/2/id=endurance
1/attributes/2/weight=0.5
1/attributes/3/id=creativity
1/attributes/3/weight=1.0
1/attributes/4/id=spatial sense
1/attributes/4/weight=0.5
1/attributes/5/id=kinesthetic sense
1/attributes/5/weight=0.5
1/skills/size=1
1/skills/1/id=37
2/name="% Leatherworker"
2/attributes/size=6
2/attributes/1/id=strength
2/attributes/2/id=agility
2/attributes/3/id=endurance
2/attributes/4/id=creatvity
2/attributes/5/id=spatial sense
2/attributes/6/id=kinesthetic sense
2/skills/size=1
2/skills/1/id=36
3/name="* Hauler"
3/attributes/size=18
3/attributes/1/id=-strength
3/attributes/2/id=-agility
3/attributes/3/id=-toughness
3/attributes/4/id=-endurance
3/attributes/5/id=-disease resistance
3/attributes/6/id=-recuperation
3/attributes/7/id=-analytical ability
3/attributes/8/id=-creatvity
3/attributes/9/id=-empathy
3/attributes/10/id=-focus
3/attributes/11/id=-intuition
3/attributes/12/id=-kinesthetic sense
3/attributes/13/id=-linguistic ability
3/attributes/14/id=-memory
3/attributes/15/id=-patience
3/attributes/16/id=-social awareness
3/attributes/17/id=-spatial sense
3/attributes/18/id=-willpower
4/name="+ Medic"
4/attributes/size=3
4/attributes/1/id=analytical ability
4/attributes/2/id=memory
4/attributes/3/id=intuition
4/skills/size=1
4/skills/1/id=60
4/traits/size = 2
4/traits/1/id=20
4/traits/2/id=23
5/name="+ Nurse"
5/attributes/size=4
5/attributes/1/id=memory
5/attributes/2/id=agility
5/attributes/3/id=analytical ability
5/attributes/4/id=empathy
5/traits/size=2
5/traits/1/id=20
5/traits/1/weight=0.8
5/traits/2/id=23
5/traits/2/weight=0.2
6/name="- Woodworker"
6/attributes/size=6
6/attributes/1/id=strength
6/attributes/1/weight=0.5
6/attributes/2/id=endurance
6/attributes/2/weight=0.5
6/attributes/3/id=creativity
6/attributes/3/weight=1.0
6/attributes/4/id=spatial sense
6/attributes/4/weight=0.5
6/attributes/5/id=kinesthetic sense
6/attributes/5/weight=0.5
6/attributes/6/id=agility
6/attributes/6/weight=0.5
6/skills/size=1
6/skills/1/id=2
7/name=". Engraver"
7/attributes/size=4
7/attributes/1/id=agility
7/attributes/1/weight=0.5
7/attributes/2/id=creativity
7/attributes/2/weight=1.0
7/attributes/3/id=spatial sense
7/attributes/3/weight=0.5
7/attributes/4/id=kinesthetic sense
7/attributes/4/weight=0.5
7/skills/size=1
7/skills/1/id=3
8/name=". Miner"
8/attributes/size=6
8/attributes/1/id=willpower
8/attributes/2/id=strength
8/attributes/3/id=endurance
8/attributes/4/id=toughness
8/attributes/5/id=spatial sense
8/attributes/6/id=kinesthetic sense
8/skills/size=1
8/skills/1/id=0
9/name=": Metalworker"
9/attributes/size=6
9/attributes/1/id=strength
9/attributes/1/weight=0.5
9/attributes/2/id=endurance
9/attributes/2/weight=0.5
9/attributes/3/id=creativity
9/attributes/3/weight=1.0
9/attributes/4/id=spatial sense
9/attributes/4/weight=0.5
9/attributes/5/id=kinesthetic sense
9/attributes/5/weight=0.5
9/attributes/6/id=agility
9/attributes/6/weight=0.5
9/skills/size=2
9/skills/1/id=27
9/skills/2/id=28
10/name=": Metalcrafter"
10/attributes/size=6
10/attributes/1/id=strength
10/attributes/1/weight=0.5
10/attributes/2/id=endurance
10/attributes/2/weight=0.5
10/attributes/3/id=creativity
10/attributes/3/weight=1.0
10/attributes/4/id=spatial sense
10/attributes/4/weight=0.5
10/attributes/5/id=kinesthetic sense
10/attributes/5/weight=0.5
10/attributes/6/id=agility
10/attributes/6/weight=0.5
10/skills/size=2
10/skills/1/id=29
10/skills/2/id=34
11/name="; Brewer"
11/attributes/size=3
11/attributes/1/id=strength
11/attributes/2/id=agility
11/attributes/3/id=kinesthetic sense
11/skills/size=1
11/skills/1/id=14
12/name="; Cook"
12/attributes/size=4
12/attributes/1/id=analytical ability
12/attributes/1/weight=0.5
12/attributes/2/id=agility
12/attributes/2/weight=0.5
12/attributes/3/id=creativity
12/attributes/3/weight=1.0
12/attributes/4/id=kinesthetic sense
12/attributes/4/weight=0.5
12/skills/size=1
12/skills/1/id=21
13/name="; Farmer"
13/attributes/size=4
13/attributes/1/id=strength
13/attributes/2/id=agility
13/attributes/3/id=endurance
13/attributes/4/id=kinesthetic sense
13/skills/size=1
13/skills/1/id=22
14/name="^ Admin"
14/attributes/size=8
14/attributes/1/id=linguistic ability
14/attributes/2/id=empathy
14/attributes/3/id=social awareness
14/attributes/4/id=analytical ability
14/attributes/5/id=creativity
14/attributes/6/id=memory
14/attributes/7/id=intuition
14/attributes/8/id=focus
14/traits/size=2
14/traits/1/id=19
14/traits/2/id=20
14/skills/size=3
14/skills/1/id=74
14/skills/2/id=75
14/skills/1/id=77
15/name="^ Lawdwarf"
15/attributes_weight=0.8
15/traits_weight=0.2
15/attributes/size=3
15/attributes/1/id=-strength
15/attributes/2/id=-agility
15/attributes/3/id=-endurance
15/traits/size=1
15/traits/1/id=-1
16/name="` Jewler"
16/attributes/size=5
16/attributes/1/id=agility
16/attributes/1/weight=0.5
16/attributes/2/id=creativity
16/attributes/2/weight=1.0
16/attributes/3/id=analytical ability
16/attributes/3/weight=0.5
16/attributes/4/id=spatial sense
16/attributes/4/weight=0.75
16/attributes/5/id=kinesthetic sense
16/attributes/5/weight=0.75
16/skills/size=2
16/skills/1/id=30
16/skills/2/id=31
17/name="` Strand Extractor"
17/attributes/size=5
17/attributes/1/id=strength
17/attributes/2/id=agility
17/attributes/3/id=endurance
17/attributes/4/id=analytical ability
17/attributes/5/id=kinesthetic sense
17/skills/size=1
17/skills/1/id=26
18/name="o Mason"
18/attributes/size=6
18/attributes/1/id=agility
18/attributes/1/weight=0.5
18/attributes/2/id=strength
18/attributes/2/weight=0.5
18/attributes/3/id=endurance
18/attributes/3/weight=0.5
18/attributes/4/id=creativity
18/attributes/4/weight=1.0
18/attributes/5/id=spatial sense
18/attributes/5/weight=0.5
18/attributes/6/id=kinesthetic sense
18/attributes/6/weight=0.5
18/skills/size=1
18/skills/1/id=4
19/name="o Mechanic"
19/attributes/size=6
19/attributes/1/id=strength
19/attributes/1/weight=0.5
19/attributes/2/id=agility
19/attributes/2/weight=0.5
19/attributes/3/id=endurance
19/attributes/3/weight=0.5
19/attributes/4/id=analytical ability
19/attributes/4/weight=0.5
19/attributes/5/id=creativity
19/attributes/5/weight=1.0
19/attributes/6/id=spatial sense
19/attributes/6/weight=0.5
19/skills/size=1
19/skills/1/id=55
20/name="o Potter"
20/attributes/size=5
20/attributes/1/id=agility
20/attributes/1/weight=0.5
20/attributes/2/id=endurance
20/attributes/2/weight=0.5
20/attributes/3/id=creativity
20/attributes/3/weight=1.0
20/attributes/4/id=spatial sense
20/attributes/4/weight=0.5
20/attributes/5/id=kinesthetic sense
20/attributes/5/weight=0.5
20/skills/size=1
20/skills/1/id=33
21/name="~ Marksdwarf"
21/attributes/size=4
21/attributes/1/id=agility
21/attributes/2/id=focus
21/attributes/3/id=spatial sense
21/attributes/4/id=kinesthetic sense
21/traits/size=1
21/traits/1/id=1
21/skills/size=7
21/skills/1/id=89
21/skills/2/id=44
21/skills/3/id=42
21/skills/4/id=57
21/skills/5/id=100
21/skills/6/id=53
21/skills/7/id=52
22/name="~ Military"
22/attributes/size=6
22/attributes/1/id=strength
22/attributes/2/id=agility
22/attributes/3/id=toughness
22/attributes/4/id=willpower
22/attributes/5/id=spatial sense
22/attributes/6/id=kinesthetic sense
22/traits/size=1
22/traits/1/id=1
22/skills/size=20
22/skills/1/id=46
22/skills/2/id=38
22/skills/3/id=102
22/skills/4/id=105
22/skills/5/id=99
22/skills/6/id=42
22/skills/7/id=104
22/skills/8/id=40
22/skills/9/id=51
22/skills/10/id=41
22/skills/11/id=89
22/skills/12/id=50
22/skills/13/id=45
22/skills/14/id=43
22/skills/15/id=103
22/skills/16/id=39
22/skills/17/id=86
22/skills/18/id=98
22/skills/19/id=54
22/skills/20/id=101

Hmm, I recommend that you add to the defaults one at a time.  If you replace them all, then... well, you could have issues (it's the same with coding software).  If you want to replace them all, then try to replace them within the quoted area, add a line at a time, verify it shows up in dt, do the next line, etc.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Intrinsic on March 22, 2012, 02:52:08 pm
Thanks for the new version! one request, can you make it sort by name correctly again please(ie like previous version) :D it's all mixed up atm. Ta!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: orius on March 22, 2012, 03:31:00 pm
I'm having another issue with migrants: it isn't sorting the waves properly. The first three waves (including initial 7) are fine, but the fourth wave is added to the third wave.

The problem exists in version 7 as well, but 0.6.12 works fine. The new update hasn't fixed this unfortunately.

I've been having the same problem with splinterz' various builds, the migration waves tend to get jumbled together and not read properly.  All the waves after the first two are getting shoved into one big wave.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Weazal on March 22, 2012, 04:25:54 pm
Hi, I've got two suggestions for features I'd like to see in the Therapist

Firstly, I'd love to see the job listings at the top of the GUI get shown at an angle, as shown in the example below.
(http://i.imgur.com/YH3yn.png)
I thought this up and made the example long ago but never got around to suggesting it. I've pretty much become familiar enough with the jobs to not desire the easier readability of them, but it would still be nice and possibly appreciated by others.

How I'd like to see it in DT: An Icon around the top left corner of the job names area to toggle it on/off and or a checkbox in the options to do the same.


Secondly, I'd like to be able to toggle whether the Dwarves' last names appear in game and in DT as Dwarvish or English. This is due to Otin Waterbends being more easily remembered visually scanned for than Otin Fialdasorenering.

I use custom profession titles to better sort my Dwarves but sometimes there are still two similar names in the same profession or squad. I've actually got an Urist Ustuthduthal and Urist Ushriringtak currently in the same squad. If their last names were in English I think it would easier to see them separate. As for nicknames I don't care for them as they need be manually applied in addition to and are superfluous to custom profession names. They're also unpleasing to look at. I still appreciate their functionality, I just don't have a use for them personally most of the time.

How I'd like to see it in DT: A checkbox in the options to "Show dwarf last names in English" and a right-click option over a specific dwarf to "Show last name in English".


I decided to make these suggestions upon the agreement of another Here (http://boards.4chan.org/vg/res/2148091#2279307) and Here (http://boards.4chan.org/vg/res/2148091#2279421)
Thank you for reading my suggestions, this is my first post so if this isn't the place to be making suggestions I apologize and will remove the post to make it where appropriate.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: shadus on March 22, 2012, 05:44:16 pm
Even with the original version it randomly moves them around migration waves, removes the names, etc.  Doesn't matter what version you're using.

(Edit: At least it's occured with LNP for >1 yr and most of the versions I've tested, the Migration wave sorting is a bit flaky.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 22, 2012, 06:21:38 pm
Hi, I've got two suggestions for features I'd like to see in the Therapist

Firstly, I'd love to see the job listings at the top of the GUI get shown at an angle, as shown in the example below.
(http://i.imgur.com/YH3yn.png)
I thought this up and made the example long ago but never got around to suggesting it. I've pretty much become familiar enough with the jobs to not desire the easier readability of them, but it would still be nice and possibly appreciated by others.

How I'd like to see it in DT: An Icon around the top left corner of the job names area to toggle it on/off and or a checkbox in the options to do the same.


Secondly, I'd like to be able to toggle whether the Dwarves' last names appear in game and in DT as Dwarvish or English. This is due to Otin Waterbends being more easily remembered visually scanned for than Otin Fialdasorenering.

I use custom profession titles to better sort my Dwarves but sometimes there are still two similar names in the same profession or squad. I've actually got an Urist Ustuthduthal and Urist Ushriringtak currently in the same squad. If their last names were in English I think it would easier to see them separate. As for nicknames I don't care for them as they need be manually applied in addition to and are superfluous to custom profession names. They're also unpleasing to look at. I still appreciate their functionality, I just don't have a use for them personally most of the time.

How I'd like to see it in DT: A checkbox in the options to "Show dwarf last names in English" and a right-click option over a specific dwarf to "Show last name in English".


I decided to make these suggestions upon the agreement of another Here (http://boards.4chan.org/vg/res/2148091#2279307) and Here (http://boards.4chan.org/vg/res/2148091#2279421)
Thank you for reading my suggestions, this is my first post so if this isn't the place to be making suggestions I apologize and will remove the post to make it where appropriate.

i've added an option in my build to write the names in the headers from bottom to top for exactly this readability issue. obviously it's not quite as good as at an angle but it does help and it's there. there should also be an option to show last names in english as well, even in the default build i believe.

sorry about the sorting guys, i must have broken something :P in regards to the migration waves, i'll have to look into it. to my knowledge i don't think i touched anything regarding the migration wave grouping/sorting but you never can be too sure.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Weazal on March 22, 2012, 06:44:38 pm
I feel rather silly now only finding the name option after having suggested it.

Still, since I do most of my visual scanning on the units menu, I would like to see it change their names to English in game as well. It would maintain continuity between what DT is showing and what you'd see in game. Otherwise I think it might present a new issue of getting mixed up with who's who because of it showing the name differently than in game and in DT.

The bottom to top option is a massive improvement. I can spot them more easily by their starting letter now.

Thank you for replying and your patience with my failing to thoroughly check the options first.
Also, your setup for showing the above and below averages for attributes is awesome. I've been recommending your build for that any time I can.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 23, 2012, 10:35:36 am
Firstly, I'd love to see the job listings at the top of the GUI get shown at an angle, as shown in the example below.
(http://i.imgur.com/YH3yn.png)
I thought this up and made the example long ago but never got around to suggesting it. I've pretty much become familiar enough with the jobs to not desire the easier readability of them, but it would still be nice and possibly appreciated by others.

How I'd like to see it in DT: An Icon around the top left corner of the job names area to toggle it on/off and or a checkbox in the options to do the same.
...

I decided to make these suggestions upon the agreement of another Here (http://boards.4chan.org/vg/res/2148091#2279307) and Here (http://boards.4chan.org/vg/res/2148091#2279421)
Thank you for reading my suggestions, this is my first post so if this isn't the place to be making suggestions I apologize and will remove the post to make it where appropriate.

I love the 45º degree angle idea.  I hate having to kreen my neck everytime I want to read some professions.  I don't need to do that with the way this picture shows it.  That's a friggin great idea!

UPDATE TO THE ROLES FORMULA:
Also... you guys are in for a treat on sorting.  Splinterz and I worked on a new method for merging the skills, traits, and attributes...   I'd say it's about 3 times better.  But... I'm sure he's working on 34.06 memory layouts right now, but soon, very soon you'll have a 100% dwarf for the job, a 0.46% dwarf for the job, and all sorts of ranges inbetween!

Unfortunately my scripted version of it: 1 is too long for this forum, (character limit is 400,000) and 2, I rushed it through and wasn't working for skills/traits, so it was only readable as a prototype, but luckily Splinterz was able to apply it into the next build!  He's one talented programmer.  Took him 1hr 45 Minutes to implement from the moment I emailed it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Rose on March 23, 2012, 10:52:13 am
wait.... you mean you guys /can't/ read text that's been rotated and/or mirrored?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: kingofthescots on March 23, 2012, 11:04:43 am
Some people never learned how. I've been in a customer service role for so long that I just picked it up.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 23, 2012, 11:22:48 am
I can read ambulance backwards, but that's about it
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Findulidas on March 23, 2012, 11:24:32 am
Some people never learned how. I've been in a customer service role for so long that I just picked it up.

How could they not know? Its like dyslexia. After few minutes trying you should even be able to read backwards.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on March 23, 2012, 11:45:07 am
Fyi, i can read vertical, but its much slower and very difficult to search through a list of vertical names
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Still Standing on March 23, 2012, 12:57:30 pm
I have just spent the last hour trying to find the new offsets... Anybody having better luck than me?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: robertheinrich on March 23, 2012, 02:02:19 pm
I have just spent the last hour trying to find the new offsets... Anybody having better luck than me?

Try those, they seem to work (sandbox posted them on the dfhack irc):

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: 0x517A5D on March 23, 2012, 03:01:36 pm
I have just spent the last hour trying to find the new offsets... Anybody having better luck than me?

Try those, they seem to work (sandbox posted them on the dfhack irc):

[...]
squad_vector=0x01824a58
I haven't tested in-game, but my disassembly indicates that the squad vector should be:

squad_vector=0x01612E14
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: GoldenShadow on March 23, 2012, 03:07:24 pm
I am getting an error message when using dwarf therapist with 34.06 graphics.Unidentified game version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Quietust on March 23, 2012, 03:11:14 pm
I have just spent the last hour trying to find the new offsets... Anybody having better luck than me?

Try those, they seem to work (sandbox posted them on the dfhack irc):

[...]
squad_vector=0x01824a58
I haven't tested in-game, but my disassembly indicates that the squad vector should be:

squad_vector=0x01612E14
The "world" object has already been determined to be at 0x17D2CF8 (and works nicely in DFHack), and squads.all is at offset 0x51D64 within it, so sandbox's address should be correct (it's actually 0x1824A5C, but Dwarf Therapist still thinks that vectors have their start/end pointers at base+4 and base+8 when they've been at base+0 and base+4 ever since Toady moved to MSVC 2010). The offset you posted is associated with some unknown data within "ui" (unk235c).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: telamon on March 23, 2012, 03:29:39 pm
Quote
I am getting an error message when using dwarf therapist with 34.06 graphics.Unidentified game version.

that's because therapist has not yet released official support for 34.06. check OP
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: fredrol on March 23, 2012, 03:32:32 pm
Just wanted to stop by and thank all of you who are working so passionately with this. Seriously. You're doing a outstanding job and it's thank to you we all can enjoy Dwarf Fortress. Without DT or similar tool, I think most of us can agree it would be way to much hassle with professions and skills and moods and... you know, dwarfs... to get a serious fort working. Thank you all!

Looking forward to the next release, can't wait to get started! :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Still Standing on March 23, 2012, 03:36:29 pm
Just tested ingame and the ones by Sandbox work nicely.  Thank you, mysterious man!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: notfood on March 23, 2012, 04:09:18 pm
The gurus should share their memory layout finding secrets under Linux so this wait for the new version wouldn't be so painful.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DirtyChineseCigarettes on March 23, 2012, 04:19:01 pm
how does one use posted offsets in the latest dt to make it work with the latest df version?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: bombzero on March 23, 2012, 04:44:07 pm
good luck getting it updated guys. hope it happens fast  :P

for the record, despite all the complaining DF is pretty playable without DT, its just that therapist makes assigning jobs a bit easier in the long run.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: 0x517A5D on March 23, 2012, 04:59:32 pm
I haven't tested in-game, but my disassembly indicates that the squad vector should be:

squad_vector=0x01612E14
The "world" object has already been determined to be at 0x17D2CF8 (and works nicely in DFHack), and squads.all is at offset 0x51D64 within it, so sandbox's address should be correct (it's actually 0x1824A5C, but Dwarf Therapist still thinks that vectors have their start/end pointers at base+4 and base+8 when they've been at base+0 and base+4 ever since Toady moved to MSVC 2010). The offset you posted is associated with some unknown data within "ui" (unk235c).

I have looked more closely at my disassembly, and I now agree with your value.

I try to find the squad vector by searching on the string "Repairing squad info for Unit #", then finding the only reference to it, then looking about 200 bytes prior to that reference for use of a vector.  In .06, I got a false-positive starting at instruction 00509FA5.  The actual reference I wanted is at 00509FCD.

Sorry about the false information.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DwarfEngineer on March 23, 2012, 05:08:34 pm
I'm currently working on the offsets. The delay is partially due to some of the dwarf offsets changing.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: GoldenShadow on March 23, 2012, 05:15:25 pm
good luck getting it updated guys. hope it happens fast  :P

for the record, despite all the complaining DF is pretty playable without DT, its just that therapist makes assigning jobs a bit easier in the long run.

Its playable, but its not as easy to manage. I like to be able to sort the dwarfs and fix their labors with a few clicks. The in-game labor settings are very obtuse by comparison. I can manage my starting 7 through the in-game menus if I have to , but I am going to save and quit until DT is updated once the migrants arrive.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DwarfEngineer on March 23, 2012, 05:19:50 pm
Windows graphics offsets for the impatient:

Let me know if you experience any issues.  Other layouts are coming.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DirtyChineseCigarettes on March 23, 2012, 05:25:05 pm
again, it would be awesome if someone actually explained to us nubs how to use that info, id prefer not to go through hundreds of pages to figure it out.

thanks
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Girlinhat on March 23, 2012, 05:28:17 pm
Open your Dwarf Therapist folder
Etc
Memory Layouts
Windows
Copy any given file, and rename it to v0.34.06_graphics
In DwarfEngineer's post, open the spoiler, and click [Select] in the code box
Ctrl-C
Open that new file you just made
Ctrl-A
Ctrl-V
Save
Run Therapist

It should now work.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DirtyChineseCigarettes on March 23, 2012, 05:29:29 pm
thank you sexy beast
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Lockyy on March 23, 2012, 05:42:29 pm
[snipped]

[snipped]

Thank you both very much for this.

Especially you DE, you're doing incredible work.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: GoldenShadow on March 23, 2012, 05:51:53 pm
I followed the steps, but it isn't working. Is it because I am using a different version of DT? I have the newer one that has lists for attributes and roles, etc
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DwarfEngineer on March 23, 2012, 05:59:50 pm
I followed the steps, but it isn't working. Is it because I am using a different version of DT? I have the newer one that has lists for attributes and roles, etc
Yeah, these offsets are for vanilla Dwarf Therapist. Splinterz is currently maintaining the development (new features) branch until it can be merged into the main branch.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: splinterz on March 23, 2012, 06:05:31 pm
this should work for my branch (attributes, roles, etc..), but let me know if you run into problems.

Spoiler: 0.34.06_graphics.ini (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DwarfEngineer on March 23, 2012, 06:22:48 pm
v0.34.06 Layouts Posted

Layouts are posted for all 3 operating systems and should download automatically.
Note, this is for vanilla Dwarf Therapist only, see post above for splinterz' release.

Direct Download Links:
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vityav on March 23, 2012, 06:37:20 pm
Splinterz's linux physical_attrs=0x338 , mental hasn't changed.

Edit: Also found for linux 34.05 and 34.06 (applies to splinterz and DE)
birth_year=0x01a8 for .05  0x01b8 for .06
curse=0x04c4 for at least .05 (no vampires yet in .06 for me)

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: Teehee on March 23, 2012, 06:50:08 pm
Thank you DwarfEngineer, was just about to post a question about the linux ini file. <3
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: GoldenShadow on March 23, 2012, 06:51:30 pm
this should work for my branch (attributes, roles, etc..), but let me know if you run into problems.

Spoiler: 0.34.06_graphics.ini (click to show/hide)

I just tried this and it works, but I am missing 2 dwarfs. DT shows 5, but I have 7 ( no migrants have arrived yet and nobody has died)

EDIT: I just changed to the Official DT release and it is showing all 7 dwarfs correctly. Maybe I screwed up something by manually updating the 34.06 ini or something else is going on.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Teehee on March 23, 2012, 06:52:55 pm
v0.34.06 Layouts Posted

Layouts are posted for all 3 operating systems and should download automatically.

Ummm. Actually. Wait, what? Download automatically? DT does that?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Garath on March 23, 2012, 07:00:06 pm
I did it the hard way around, works fine, and thank you for making this wonderful game playable
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: bombzero on March 23, 2012, 07:01:57 pm
Ummm. Actually. Wait, what? Download automatically? DT does that?

i believe they added that so that people don't have to redownload every time they fix a minor bug where cheesemaking can't be set from DT or something.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GoldenShadow on March 23, 2012, 07:14:04 pm
New problem. I am using the standard release again. I downloaded a fresh copy from the main website from the link in the first post of this thread. All of the dwarfs are showing up as no job(-1) in DT. *edit* this is on version 34.06 graphics
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 23, 2012, 07:18:59 pm
here's the packaged file with a few minor updates for those uncomfortable editing the ini files:



download (http://www.mediafire.com/?kbt2gls4b4lgbc4)

@GoldenShadow: i haven't been able to reproduce any missing dwarves with my 5 test games so let me know if it does seem to be acting up and i'll try and fix it tomorrow
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 23, 2012, 07:19:39 pm
New problem. I am using the standard release again. I downloaded a fresh copy from the main website from the link in the first post of this thread. All of the dwarfs are showing up as no job(-1) in DT. *edit* this is on version 34.06 graphics

current job offset has changed, here's the new one:

current_job=0x320 (windows)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: telamon on March 23, 2012, 07:30:55 pm
Quote
Ummm. Actually. Wait, what? Download automatically? DT does that?

iirc, when you boot up DT and attempt to attach to a version of DF that it does not recognize, it'll check to see if there's a new offset file that fits the version and load it out accordingly if there is one. So no you don't have to download the ini and drop it in the layouts folder, or paste it into a new ini file manually
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: AriRashkae on March 23, 2012, 07:38:07 pm
OK, this is interesting. I downloaded the new (vanilla) DF for Mac, & copied my saves over. Those loaded w/out issue. Therapist connect to DF and downloaded the new offsets fine.  :D

However!

It shows every dwarf as having "No Job", even though I can see them all working. (Well, most of them. Got quite a few lazy anklebiters, but that's neither here nor there.) I can change jobs easily enough, and it seems to be reading XP gain properly, but it doesn't actually show who's doing what.   :o

So, any ideas how I fix this?  ???
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Teehee on March 23, 2012, 07:46:29 pm
iirc, when you boot up DT and attempt to attach to a version of DF that it does not recognize, it'll check to see if there's a new offset file that fits the version and load it out accordingly if there is one. So no you don't have to download the ini and drop it in the layouts folder, or paste it into a new ini file manually

Too good to be true. I must've drifted over into bizarroworld again. I guess I'll know for sure if breaching the adamantine leads into kisses and cuddles. Off to try it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GoldenShadow on March 23, 2012, 07:53:00 pm
Got another weird bug. I assigned a bunch of migrants to wood cutting via DT and retired my old wood cutters into the military, but soon got job cancellation spam about lack of wood. I looked and there were plenty of axes in the weapon stockpile and all of the dwarfs with wood cutting were sitting idle in the meeting area. I double checked by going to prefs and labors and saw that wood cutting was indeed enabled in-game. On a hunch, I turned it off and back on inside the game and they all got up and picked up axes from the stockpile and got to work.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Aeon Blue on March 23, 2012, 07:58:50 pm
Got another weird bug. I assigned a bunch of migrants to wood cutting via DT and retired my old wood cutters into the military, but soon got job cancellation spam about lack of wood. I looked and there were plenty of axes in the weapon stockpile and all of the dwarfs with wood cutting were sitting idle in the meeting area. I double checked by going to prefs and labors and saw that wood cutting was indeed enabled in-game. On a hunch, I turned it off and back on inside the game and they all got up and picked up axes from the stockpile and got to work.

Ditto. My game reads mining and woodcutting professions as being enabled by Therapist, but dwarves won't pick up the equipment to mine or cut trees unless the labor is enabled in the game. (Or, in this case, disabled and then re-enabled within the game.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GoldenShadow on March 23, 2012, 08:01:24 pm
I can turn off the woodcutting labors from DT, but I have to turn it back on in-game for the dwarfs to do the tasks.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Teehee on March 23, 2012, 08:01:34 pm
Copied the linux ini file from Engineers post by hand. All dwarfs get loaded as Urist Uknownunknowns.

I also have a weird bug at this embark. My woodcutter is not cutting trees, although he can access them, the labor is set in DT (and shows up correctly ingame), and there is a copper axe right next to the trees. Oh, and the trees are designated for chopping, of course.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Teehee on March 23, 2012, 08:06:54 pm
I can turn off the woodcutting labors from DT, but I have to turn it back on in-game for the dwarfs to do the tasks.

Same here. So a bug in the new version, or a problem with DT?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Girlinhat on March 23, 2012, 08:10:16 pm
As I understand it, early released of DT suffer this.  Basically, Therapist isn't sending the "need to equip" flag on mining, woodcutting, or hunting.  At least it's usually all 3, sometimes it's just woodcutting mainly.  Either way, it's an issue of "This is a quick release to get things running and is missing some key points."
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: smirk on March 23, 2012, 08:10:46 pm
Sounds like the recheck_equipment flag got knocked out of whack again. Should be an easy fix, although I personally have no idea how.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: DwarfEngineer on March 23, 2012, 08:23:06 pm
Yeah, looks like I missed a few offsets - that's what I get for rushing. I'll post updates later tonight when I get home.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: munki on March 23, 2012, 08:34:46 pm
I'm hitting a pretty big snag with the OS X version of therapist. I'm not sure if anyone has posted a similar issue or not, but I didn't see anything in the last 10 or so pages.

I'm running OS X 10.7, with DF 34.05, and using graphics/phoebus. I get the following:

(http://i.imgur.com/wFOg3.png)

Anyone else seen this, or have any ideas?

Great work on the mac version, by the way. It's been nice having more regular maintenance/updates.  :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 23, 2012, 09:01:30 pm
here's the packaged file with a few minor updates for those uncomfortable editing the ini files:

  • added layouts for 34.06
  • slightly tweaked the role formula once again for even shinier results
  • fixed the sorting by name


download (http://www.mediafire.com/?04zvuyr9g97cu06)

@GoldenShadow: i haven't been able to reproduce any missing dwarves with my 5 test games so let me know if it does seem to be acting up and i'll try and fix it tomorrow

Good job!  Thanks! (pats self on back as well)
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: brucemo on March 23, 2012, 10:03:36 pm
I just downloaded the DT with role suggestions and have some comments.

I have two guys, both of whom are legendary miners +5.  They both started simultaneously and worked in the same burrow, going from 0 skill to legendary +0 in dirt, then moved to stone, and I watched them.  I have to say, the most important thing (and possibly only thing) about a miner is agility.  I've seen this several times.  In the race to legendary, which is all that I would think is really worth caring about, a more agile miner will win by a mile, because they move more quickly between dig sites.

Here they are:

Code: [Select]
            Kubukdatur Otungerib
Willpower       1,269     1,015
Strength        2,104       762
Toughness       1,552     1,414
Endurance       1,198       808
Spatial           879     2,267
Kinesthetic       433     1,051

Agility           818     1,397

You have to drill out about 15 11x11 rooms in order to hit legendary from zero.  When the second guy hit legendary the first guy still had to dig out like four or five more rooms, so when the second guy had dug out 15 rooms, the other guy had dug out 10 or 11, I think closer to 10 actually.  So the second guy was like 1.5x faster.  The second guy was sent to dig stone while the other guy stayed in dirt, so the second guy slowed down and the other guy caught up quite a bit.  Even so the second guy was 1500 experience ahead when the caravan arrived.

Unless spatial sense and kinesthetic sense are really that important, it's pretty obvious that agility wins here.

I have a snapshot taken at embark, and you rate the first guy at 60.5% and the second guy at 53.01%, even though the second guy was dramatically better.

I would weight agility massively higher in your system -- as is, you don't even include it as an attribute for a miner.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GoldenShadow on March 23, 2012, 10:16:24 pm
Agility makes every job better that relies on moving around since it determines how fast the dwarf goes. Its good for melee soldiers. It lets them catch up to fleeing goblins. Low agility melee are useless for offense, they can't catch their targets. If the enemy is coming for them, its a different story.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 23, 2012, 10:22:54 pm
Spoiler (click to show/hide)

Thanks for the suggestion.  You have to understand the .ini file is tweakable.  Splinterz made up the .ini based on the wiki for attributes and did an enormous job coding them in.  It is completely customizable as users may want to apply various tweaks, I made a close combat dwarf modded role: http://i39.tinypic.com/2nia4ht.jpg (http://i39.tinypic.com/2nia4ht.jpg)

Since there are differences in opinions, it's probably impossible to make a single document that covers everyone's contributions, it could be done though... maybe a pastebin .ini?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: DwarfEngineer on March 23, 2012, 10:26:06 pm
I'm hitting a pretty big snag with the OS X version of therapist. I'm not sure if anyone has posted a similar issue or not, but I didn't see anything in the last 10 or so pages.

I'm running OS X 10.7, with DF 34.05, and using graphics/phoebus. I get the following:

Spoiler (click to show/hide)

Anyone else seen this, or have any ideas?

Great work on the mac version, by the way. It's been nice having more regular maintenance/updates.  :D
Haven't quite worked out why it happens, but you can fix it by going to File > Clear user settings...
This will of course clear your user settings, so export / import what you can.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: munki on March 23, 2012, 10:28:44 pm
Oh, awesome...I have no custom settings, so that doesn't bother me one bit. :)

Hooray! DF is playable once more. My hero.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: DwarfEngineer on March 23, 2012, 10:30:45 pm
v0.34.06 Layouts Updated

Layouts are posted for all 3 operating systems and should download automatically.
Note, this is for vanilla Dwarf Therapist only, see post above for splinterz' release.

Direct Download Links:
  • Windows (Graphics) v0.34.06 (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.06_graphics.ini)
  • Windows (Legacy) v0.34.06 (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.06_legacy.ini)
  • Linux v0.34.06 (http://www.dwarftherapist.com/memory_layouts/linux/v0.34.06.ini)
  • Mac OSX v0.34.06 (http://www.dwarftherapist.com/memory_layouts/osx/v0.34.06.ini)

These files have been updated with the correct offsets for job & recheck equipment.
You'll have to manually download them, then copy them to your DwarfFortress directory/etc/memory_layouts/<os>

On linux, this is in /usr/share/dwarftherapist,
On mac, you'll have to right click on Dwarf Therapist and click view package contents, then it's under Contents/MacOS

Alternatively you can delete the old file and restart therapist.
Sorry about the screw up.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Weazal on March 24, 2012, 02:48:25 am
Spoiler (click to show/hide)

Thanks for the suggestion.  You have to understand the .ini file is tweakable.  Splinterz made up the .ini based on the wiki for attributes and did an enormous job coding them in.  It is completely customizable as users may want to apply various tweaks, I made a close combat dwarf modded role: http://i39.tinypic.com/2nia4ht.jpg (http://i39.tinypic.com/2nia4ht.jpg)

Since there are differences in opinions, it's probably impossible to make a single document that covers everyone's contributions, it could be done though... maybe a pastebin .ini?

How awesome would it be for a sub-interface to create roles inside DT itself?  Slider bars with minimum and maximum markers to set acceptable ranges for skills attributes and more for a specific role. Minimum is probably all that's necessary for most roles but I can think of instances maximums might also be useful. Check boxes for jobs and skills and sliders for the skill level acceptable. Same for attributes. Or even better, add skills/attribute from list to the role so it's not a huge list of checkboxes. I wish I knew how to make this happen on my own. So exciting to think about the possibilities.

Thank you so much for this amazing program. With roles, attribute averages and more, it's growing and being more useful with every release.
Truely awesome. :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 24, 2012, 03:35:01 am
Weazel,

A gui is the next logical step.  The script editor supports a lot.  We did anaysis of min/maxs (I contriubted a 3300 dwarf population to the attribute wiki), but upon further analysis we found the data folllowed a bell curve.  One could code a hard max limit into the script engine, but... good luck trying to impelement that into a bell curve without extra math.

Btw agility max hovers around 1500, memory 2500, a lot of the rest r around 2000 or 2200.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 24, 2012, 03:59:06 am
i've updated my previous post (http://www.bay12forums.com/smf/index.php?topic=66525.msg3123482#msg3123482) with a new package (http://www.mediafire.com/?kbt2gls4b4lgbc4) with the proper recheck equipment offests if you haven't already modified your ini files.

I just downloaded the DT with role suggestions and have some comments.

I have two guys, both of whom are legendary miners +5.  They both started simultaneously and worked in the same burrow, going from 0 skill to legendary +0 in dirt, then moved to stone, and I watched them.  I have to say, the most important thing (and possibly only thing) about a miner is agility.  I've seen this several times.  In the race to legendary, which is all that I would think is really worth caring about, a more agile miner will win by a mile, because they move more quickly between dig sites.

-snip

I would weight agility massively higher in your system -- as is, you don't even include it as an attribute for a miner.

that's a very good point. as Thistleknot mentioned, i simply used the wiki as a guide for creating the default role sets. i'll consider changing the default role, but for now you can simply override the default by creating a custom role in your dwarf therapist.ini with the same name. which is a nice segue into the next point brought up:

How awesome would it be for a sub-interface to create roles inside DT itself?

this is the next thing i'd like to implement to finish up the role feature. i agree with Thistleknot that slider bars for min/max probably aren't going to work with the way role ratings are calculated. better would be to give those aspects you wanted valued more a higher weight. i'm thinking just a simple select an attribute/skill/trait and give it a weight, repeat, until you've defined your role.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Weazal on March 24, 2012, 04:38:28 am
Ah, gotcha. I got ahead of myself being excited about the idea that I overlooked that roles just select skills, traits and attributes to display the values for. I'm not sure how the weights work as I've not had a chance to mess with them yet. They sound like what I'm looking for. Getting 34.06 sorted and going to test them with a new fort now.

better would be to give those aspects you wanted valued more a higher weight. i'm thinking just a simple select an attribute/skill/trait and give it a weight, repeat, until you've defined your role.
That's exactly what I had in mind. :D

Really glad to hear you intend to implement it and I'm lookin' forward to it.
Thank you for all your hard work!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on March 24, 2012, 05:15:22 am
Thanks for the updates!

The note on agility is good, just like the note i found about creativity having a pretty substantial effect on crafting.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: brucemo on March 24, 2012, 05:56:42 am

that's a very good point. as Thistleknot mentioned, i simply used the wiki as a guide for creating the default role sets. i'll consider changing the default role, but for now you can simply override the default by creating a custom role in your dwarf therapist.ini with the same name. which is a nice segue into the next point brought up:

Yes.  The idea is very cute, but if the wiki contains information that is mostly false, untested, and/or unimplemented, features implemented based upon this are of questionable value.  Really, unless you are role-playing, there has to be some testable outcome.  Role-playing is nice, but if the tool is telling me the wrong guy should be my miner, that's not helpful, and mining is one of the few things it's possible to really test well.  I best there is a direct relation between mining speed and agility, and what else is there to mining except that?  Maybe one guy might sleep more than than the other guy, but if agility dominates, it dominates.  And it's possible to find this out.

I'll do more research.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on March 24, 2012, 06:42:00 am
The associated attributes on the wiki actually come from Toady himself which he listed in a FoTF reply:

http://www.bay12forums.com/smf/index.php?topic=60554.msg1413312#msg1413312
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Teehee on March 24, 2012, 06:56:36 am
Hmm. The migration waves don't sort properly in my DT even with the new ini file DE posted. Using the linux version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Teehee on March 24, 2012, 07:28:18 am
Hmm. The migration waves don't sort properly in my DT even with the new ini file DE posted. Using the linux version.

Setting turn_count=0x053b fixed it. Got help from sandbox on irc. <3
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: DwarfEngineer on March 24, 2012, 08:11:55 am
Hmm. The migration waves don't sort properly in my DT even with the new ini file DE posted. Using the linux version.

Setting turn_count=0x053b fixed it. Got help from sandbox on irc. <3
I fixed the layouts for both osx & linux. See above (http://www.bay12forums.com/smf/index.php?topic=66525.msg3124069#msg3124069) for instructions on downloading the new layout.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 24, 2012, 08:31:05 am
...
Yes.  The idea is very cute, but if the wiki contains information that is mostly false, untested, and/or unimplemented, features implemented based upon this are of questionable value.  Really, unless you are role-playing, there has to be some testable outcome.  Role-playing is nice, but if the tool is telling me the wrong guy should be my miner, that's not helpful, and mining is one of the few things it's possible to really test well.  I best there is a direct relation between mining speed and agility, and what else is there to mining except that?  Maybe one guy might sleep more than than the other guy, but if agility dominates, it dominates.  And it's possible to find this out.

I'll do more research.

On this same page here http://www.bay12forums.com/smf/index.php?topic=66525.msg3124821#msg3124821
Its stated that toady specified the weights.

Ah, gotcha. I got ahead of myself being excited about the idea that I overlooked that roles just select skills, traits and attributes to display the values for. I'm not sure how the weights work as I've not had a chance to mess with them yet. They sound like what I'm looking for. Getting 34.06 sorted and going to test them with a new fort now.

I spoke with Splinterz, he's going to put how the formula is calculated in the documentation on the next release.  For now... I'll specify it right here:

The formula originally was based on Weighted Mean's.  Which I felt was limited as weights were really (weight/(sum of weights))=max % that that weight could provide to the overall weight, I felt this was a limit as some attributes (at the time I was merely working with attributes) might have a value far above, or below the mean, and should be able to contribute more to the overall % when it does so.

I did some stuff with excel testing different possibilities out, and came up with a new formula, bounced it back and forth against Splinterz, who suggested a sum of distribution curves (which was an idea I had as well, but he implemented it first, albeit not as well as the current implementation).

The current implementation is:
All lists of attributes, skills, traits involved with a role are converted to their respective z-scores (i.e. for attributes: (attribute value-attribute mean)/standard deviation), which standardizes the data (i.e. similar in concept to converting them to their respective %, but instead converts them to a + or - number representing it's position below or above the mean.  The importance of this step is to ensure each attribute, skill, and weight have the same scale before "weighting" i.e. factoring them.), then each list is factored by it's weight.  Each standard deviation then equals the same as the weight value (z scores have a natural standard deviation of 1, i.e. the same scale concept mentioned prior).  I indeed verified that a weighted z-score's new standard deviation is the same as the weight via scalc/excel.  Then within each category: (i.e. attributes, traits, skills) their respective z-scores are summed together.  Standard Deviations for each category are quadrature'd together (i.e. sum the squares of the deviations, then square root that sum.  Verified via Math.reddit.com, and other statistic websites).

So now we have 3 new lists:  A summed Z-score of Attributes, Weights, and Skills, and each has their new respective standard deviation.

In v8, I failed to re-scale each category to their respective z-scores (as a sum of zscores changes the scale from sdev of 1 to whatever it is now, so now... they need to be rescaled to standard deviation of 1), we also failed to quadrature things together, and I was doing an averaging of values, and a root mean square of standard deviations, which was not correct.  So we did that again (convert each list to it's respective z-score) with the skills, weights, and attribute's summed values.  Then we weighted them, same with the standard deviations.  Then added each category's z-scores together, and again quadrature'd the (weighted/factored) standard deviations to get a final list of summed z-scores and a new standard deviation.

This list is ran through a normal cumulative distribution function, then multiplied by 1000 to get the final %
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Tychocrash on March 24, 2012, 09:09:12 am
I'm running the OSX version (thanks by the way, it's amazing we finally have this...) and I've run into a couple issues.

I can't change the nickname or professions through therapist; I edit the name and it's not reflected in therapist, though it's shown as a pending change.  When I commit changes, it isn't reflected in the game. 

Also, my waves are being split up strangely when sorting by wave.  Every migrant wave is split up into different waves of three or four dwarves each.  Children born in the fortress are considered their own wave, which I suppose makes sense.

Running 34.06 (same troubles in .05) with Mayday graphics.  My files are also packaged inside the .app from the JollyBastion mod.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GoldenShadow on March 24, 2012, 02:37:57 pm
here's the packaged file with a few minor updates for those uncomfortable editing the ini files:

  • added layouts for 34.06
  • slightly tweaked the role formula once again for even shinier results
  • fixed the sorting by name


download (http://www.mediafire.com/?kbt2gls4b4lgbc4)

@GoldenShadow: i haven't been able to reproduce any missing dwarves with my 5 test games so let me know if it does seem to be acting up and i'll try and fix it tomorrow

The bug regarding mining/woodcutting labors not forcing them to pick up equipemnt is present on your version as well as the official DT. I forged 5 new steel picks, enabled 5 new miners and turned off all other labors.  They stay idle and don't get the picks.  If have to go in-game pref>labors and toggle Mining off and back on and they all jump up to get get their equipment and start mining.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: LoSboccacc on March 24, 2012, 03:18:08 pm
I'm running the OSX version (thanks by the way, it's amazing we finally have this...) and I've run into a couple issues.

I can't change the nickname or professions through therapist; I edit the name and it's not reflected in therapist, though it's shown as a pending change.  When I commit changes, it isn't reflected in the game. 

Also, my waves are being split up strangely when sorting by wave.  Every migrant wave is split up into different waves of three or four dwarves each.  Children born in the fortress are considered their own wave, which I suppose makes sense.

Running 34.06 (same troubles in .05) with Mayday graphics.  My files are also packaged inside the .app from the JollyBastion mod.

I got the same with profession; wave instead, I get them all grouped as 0
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 24, 2012, 04:54:04 pm
here's the packaged file with a few minor updates for those uncomfortable editing the ini files:

  • added layouts for 34.06
  • slightly tweaked the role formula once again for even shinier results
  • fixed the sorting by name


download (http://www.mediafire.com/?kbt2gls4b4lgbc4)

@GoldenShadow: i haven't been able to reproduce any missing dwarves with my 5 test games so let me know if it does seem to be acting up and i'll try and fix it tomorrow

The bug regarding mining/woodcutting labors not forcing them to pick up equipemnt is present on your version as well as the official DT. I forged 5 new steel picks, enabled 5 new miners and turned off all other labors.  They stay idle and don't get the picks.  If have to go in-game pref>labors and toggle Mining off and back on and they all jump up to get get their equipment and start mining.

it was mentioned previously in the thread it's been fixed in both versions, but you'll have to manually update the layouts or download it again.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GoldenShadow on March 24, 2012, 06:08:04 pm
I deleted the 34.06_graphics.ini and restarted DT. it detected the game version and downloaded the ini, but I am getting bad numbers on the attributes tab.
http://www.freeimagehosting.net/a5uo2
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 24, 2012, 06:15:46 pm
I deleted the 34.06_graphics.ini and restarted DT. it detected the game version and downloaded the ini, but I am getting bad numbers on the attributes tab.
http://www.freeimagehosting.net/a5uo2

until a merge is done the main dt doesn't quite use the same layout as the branch i've been working on. if you're using the build with attributes/roles/etc. you'll have to update your layout files with the ones here (http://code.google.com/r/splintermind-attributes/source/browse/#hg%2Fetc%2Fmemory_layouts%2Fwindows) or download the last version from my previous post in the thread.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GoldenShadow on March 24, 2012, 06:28:47 pm
I redownloaded the entire DT 9 from your post. I think its newer, and has a slightly bigger file size; 6,290,108 bytes vs 6,290,107 bytes.

I may have had an old version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: drh on March 24, 2012, 09:54:27 pm
Suggestion, if it hasn't already been brought up:

Something I'd like to see out of DT is the capability to treat custom professions as job masks or logical overlays to assigned labors rather than absolute configurations -- all too often I want Urist McSmith and Urist McJones to have the same core profession (farmer, for example), but have McSmith butcher and cook while McJones processes plants and brews. As it is it's a little inconvenient having to select the profession and then manually (re)select additional jobs, or try to have someone basically have the jobs of two or more defined professions. Job masks would allow quite a bit more granular control over labor assignment.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 25, 2012, 04:20:38 am
I agree, I set my farmers to plant gathering as well, but can't custom professions do this now?

Suggestion, if it hasn't already been brought up:

Something I'd like to see out of DT is the capability to treat custom professions as job masks or logical overlays to assigned labors rather than abs :)olute configurations -- all too often I want Urist McSmith and Urist McJones to have the same core profession (farmer, for example), but have McSmith butcher and cook while McJones processes plants and brews. As it is it's a little inconvenient having to select the profession and then manually (re)select additional jobs, or try to have someone basically have the jobs of two or more defined professions. Job masks would allow quite a bit more granular control over labor assignment.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Garath on March 25, 2012, 05:35:24 pm
babies born in between immigration waves are now counted as a seperate "wave". awesome.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Girlinhat on March 25, 2012, 05:44:50 pm
babies born in between immigration waves are now counted as a seperate "wave". awesome.
That's always been true.  DT looks for the ID of each creature, as they occur in sequence.  1-7 will be dwarves, 8-10 will be groundhogs, 11-13 will be your first migrant wave, DT just interprets them into groups.

Of course this doesn't work much anymore, with historical migrants having different creature IDs, it's possible that your 5th migrant wave will have dwarves with an ID lower than the starting 7.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Schattensonner on March 25, 2012, 10:40:25 pm
I have a question/suggestion about/for splinterz version

Can we combine multible roles into a new/custom one ?
For example I want to have the evaluation of a custom profession I defined, let it be my "Forager" (Woodcutter+Herbalist(+opt. Beekeeper)) for now.
Right now I just arranged the corresponding skills/roles to be next to each other in the gridview, but I´d rather just have the "Forager" role which is just combination of those 2 (+1/2) basic roles.
Well, I could just combine those 2+ roles by using the respective skills/attributes/traits/whatever in the ini-file, but it seems like a quite clumsy solution.

I wonder if its possible to let the Forager role use the respective other roles values (WC/Herb/(BK)) in the calculations.
Maybe in the Ini it could just look a bit like this..

Spoiler (click to show/hide)

If this is already implented in some way, Id be thankful if someone could point me into the right direction, I cant find it myself right now.

btw.. Big thanks to all of you who work on this essential tool
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 26, 2012, 03:19:14 am
I have a question/suggestion about/for splinterz version

Can we combine multible roles into a new/custom one ?
For example I want to have the evaluation of a custom profession I defined, let it be my "Forager" (Woodcutter+Herbalist(+opt. Beekeeper)) for now.
Right now I just arranged the corresponding skills/roles to be next to each other in the gridview, but I´d rather just have the "Forager" role which is just combination of those 2 (+1/2) basic roles.
Well, I could just combine those 2+ roles by using the respective skills/attributes/traits/whatever in the ini-file, but it seems like a quite clumsy solution.

I wonder if its possible to let the Forager role use the respective other roles values (WC/Herb/(BK)) in the calculations.
Maybe in the Ini it could just look a bit like this..

Spoiler (click to show/hide)

If this is already implented in some way, Id be thankful if someone could point me into the right direction, I cant find it myself right now.

btw.. Big thanks to all of you who work on this essential tool

no it's not setup to handle recursive role declarations. you'll have to just add all the attributes, skills and traits to one role.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 26, 2012, 12:06:57 pm
I have a question/suggestion about/for splinterz version

Can we combine multible roles into a new/custom one ?
For example I want to have the evaluation of a custom profession I defined, let it be my "Forager" (Woodcutter+Herbalist(+opt. Beekeeper)) for now.
Right now I just arranged the corresponding skills/roles to be next to each other in the gridview, but I´d rather just have the "Forager" role which is just combination of those 2 (+1/2) basic roles.
Well, I could just combine those 2+ roles by using the respective skills/attributes/traits/whatever in the ini-file, but it seems like a quite clumsy solution.

I wonder if its possible to let the Forager role use the respective other roles values (WC/Herb/(BK)) in the calculations.
Maybe in the Ini it could just look a bit like this..

Spoiler (click to show/hide)

If this is already implented in some way, Id be thankful if someone could point me into the right direction, I cant find it myself right now.

btw.. Big thanks to all of you who work on this essential tool

no it's not setup to handle recursive role declarations. you'll have to just add all the attributes, skills and traits to one role.

Let's just hope a gui interface for modifying/creating roles get's implemented soon! ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Flobulon on March 26, 2012, 01:22:31 pm
Splinterz, may I ask where your branch gets its caste information - the names of the castes specifically. I can't find them in the game_data.ini and I'd like to tweak the names of a couple of them. Great work by the way, I love it :)

Thanks to everybody for all their hard work on such an invaluable tool!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Meph on March 26, 2012, 02:37:56 pm
It takes the caste names from the CASTE_NAME:name:name:name in the creature_standard.txt.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Flobulon on March 26, 2012, 04:19:54 pm
Ah, cheers Meph! :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Yobgod on March 26, 2012, 07:57:04 pm
I've been trying, but just cannot get vanilla 0.6.12 to recognize v0.34.06. I do have a slightly odd situation because I run the linux DF and the windows DT under wine (because I don't do a .deb compatible distribution), but that shouldn't be an issue. Previously I've just dropped the right .ini files into the right memory_layout folders and I've been good to go. This worked, for example, with v0.34.02.

Call me spoiled, but I simply cannot run any reasonably sized fortress without DT anymore. It's not worth the pain.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: cousac on March 26, 2012, 08:19:55 pm
I too do not use debian. I compiled my DT so i have no issues.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: TerminatorII on March 26, 2012, 08:48:49 pm
any chance DT could be upgraded to tell you who the vampires are?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Yobgod on March 26, 2012, 09:27:35 pm
I too do not use debian. I compiled my DT so i have no issues.

What source did you use? I had trouble even finding something compilable. (FWIW: I'm on Fedora.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 26, 2012, 09:56:00 pm
any chance DT could be upgraded to tell you who the vampires are?

already implemented, look under options! ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: BigFatStupidHead on March 26, 2012, 10:02:30 pm
I've been trying, but just cannot get vanilla 0.6.12 to recognize v0.34.06. I do have a slightly odd situation because I run the linux DF and the windows DT under wine (because I don't do a .deb compatible distribution), but that shouldn't be an issue. Previously I've just dropped the right .ini files into the right memory_layout folders and I've been good to go. This worked, for example, with v0.34.02.

Call me spoiled, but I simply cannot run any reasonably sized fortress without DT anymore. It's not worth the pain.
I've run both under Wine, and never had trouble. When I have only run one native, DT doesn't see DF.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: cousac on March 26, 2012, 11:02:24 pm
I too do not use debian. I compiled my DT so i have no issues.

What source did you use? I had trouble even finding something compilable. (FWIW: I'm on Fedora.)

i used the GIT address at the DT google code site to clone the branch and then compiled.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vorpal+5 on March 27, 2012, 12:23:49 am
Some days ago I downloaded an intermediary version for 0.34.05 (06 was still not out) and it showed the stats of the Dorfs... Now in this version they are not there...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vorpal+5 on March 27, 2012, 12:39:34 am
Just to be clear, here is the view on a Dwarf with DT I downloaded on March 15, "Dwarf Therapist-7.zip". You could see stats (some are misread in version 0.34.06 but it worked superfine in 0.34.05) and age. On Break dwarfs would show with a blue dot.
(http://img72.imageshack.us/img72/4848/improved.jpg)




And here is current version... missing infos, while this downgrad in feature?
(http://img210.imageshack.us/img210/2176/vanillaq.jpg)



Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 27, 2012, 02:36:17 am
I think splinterz just re arranged the layout.  All the info is still avail in v8 and v9, but he wanted to make the dwarf details "less cluttered", attributes I guess he just moved to a grid view now.

Spoiler (click to show/hide)

Update: never mind...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 27, 2012, 03:41:32 am
Just to be clear, here is the view on a Dwarf with DT I downloaded on March 15, "Dwarf Therapist-7.zip". You could see stats (some are misread in version 0.34.06 but it worked superfine in 0.34.05) and age. On Break dwarfs would show with a blue dot.
Spoiler (click to show/hide)

the first picture is definitely using the wrong layout files, indicated by the -1 for strength and agility. the second picture you should have an attributes pane in between skills and traits, i'm guessing it's the same problem with layout files since it's also not showing the age.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vorpal+5 on March 27, 2012, 04:03:25 am
Ok thanks, how one (that would be me  :P ) restores layout to defaults/fix the issues?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 27, 2012, 06:48:36 am
Ok thanks, how one (that would be me  :P ) restores layout to defaults/fix the issues?

snip
 you'll have to update your layout files with the ones here (http://code.google.com/r/splintermind-attributes/source/browse/#hg%2Fetc%2Fmemory_layouts%2Fwindows) or download the last version from my previous post in the thread.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 27, 2012, 06:57:45 am
i started to be slightly annoyed with going back and forth between labours and roles so i've been toying with the idea of adding a roles pane to the dwarf details, or adding the top roles to the tooltip, or both! i'm concerned this extra pane is cluttering things. perhaps listing all the roles is a bit much as well, perhaps top 10 would be sufficient?

any feedback would be much appreciated!

(http://farm8.staticflickr.com/7130/7020615365_777935a59b_z.jpg)

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vorpal+5 on March 27, 2012, 07:19:59 am
In the tooltip, the first x, with x being an option set to 10 by default, but changeable by user with the Options Menu.

In the right click/show details, if you get a scrollbar, then all I would say, with a cut at 25% fitness?

imho anyway!


Something I wanted to ask since some time? It seems no util (DFHack included) allows Dwarf renaming. And by renaming I don't mean the nickname or profession. DF Hack allows a Squad renaming though. Would it be hard to code that? When you start having dozens of Dwarves, sometime you want slightly simpler names for a few choosen...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: expwnent on March 27, 2012, 07:25:52 am
I'd like a "mass nicknamer". Right now it'll just say "slow down there" so somebody thought about it and decided not to? Seems strange. Sometimes I want to check my units list for vampires and it's unsorted so it's annoying to have to search through the entire list a dozen times. Nicknames add quotes to the start, making people easy to find.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: luppolo on March 27, 2012, 07:30:44 am
i'm using the therapist bundled with masterwork DF (fo 34.05) and it allows me to mass rename
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 27, 2012, 08:58:35 am
In the tooltip, the first x, with x being an option set to 10 by default, but changeable by user with the Options Menu.

In the right click/show details, if you get a scrollbar,..."


I like that, an option to expand beyond a default x.  I say more than 3, but even if you only showed 3, a user could expand the rest if he wants to see it!  It's the best of both worlds!

If using a top 3 or top 10 (static) only dispaly, it might be desirable to choose what roles are alloweed to be listed, otherwise roles that are displayed may be roles the player never assigns.

Update: Actually, I love scrollbars!  Basically, as long as I have an option to see it all somewhere, I'm happy.  I wasn't aware that I was looking at two different parts of DT.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Yobgod on March 27, 2012, 10:11:35 am
I too do not use debian. I compiled my DT so i have no issues.

What source did you use? I had trouble even finding something compilable. (FWIW: I'm on Fedora.)

i used the GIT address at the DT google code site to clone the branch and then compiled.

Ah... thanks. My mistake was trying to go through the DT project page linked in this thread.
A little compilation and we are working once more!!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: melkor on March 27, 2012, 10:31:41 am
dam 108 pages.... can i ask about vampire do they still not show up in the list of dwarfs and if you change there names in the therapist do they still not change in the game
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 27, 2012, 11:21:10 am
dam 108 pages.... can i ask about vampire do they still not show up in the list of dwarfs and if you change there names in the therapist do they still not change in the game

Man, this is getting asked a lot.  Just yesterday.

There's an option for "dirty cheater's" in the options menu to show cursed dwarves.  As far as I can tell, the nickname exploit has been fixed since version 34.03 or 34.04.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: orius on March 27, 2012, 12:14:13 pm
i started to be slightly annoyed with going back and forth between labours and roles so i've been toying with the idea of adding a roles pane to the dwarf details, or adding the top roles to the tooltip, or both! i'm concerned this extra pane is cluttering things. perhaps listing all the roles is a bit much as well, perhaps top 10 would be sufficient?

any feedback would be much appreciated!


I like this idea.  It would make roles easier to examine than having to go back and forth between different tabs.  Either way doesn't really matter to me to much I guess.  And limiting the roles to the top 10 is a good idea.  Or just the roles that are at least at 50% or more.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Maldevious on March 27, 2012, 12:27:42 pm
I agree that a roles pane would be useful, but probably limit it to above 50% or top 10, either way.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Girlinhat on March 27, 2012, 12:47:21 pm
I'd like a "mass nicknamer". Right now it'll just say "slow down there" so somebody thought about it and decided not to? Seems strange. Sometimes I want to check my units list for vampires and it's unsorted so it's annoying to have to search through the entire list a dozen times. Nicknames add quotes to the start, making people easy to find.
Grab Splinterz' release.  It allows mass nicknaming.  When I process migrants, I name the unskilled ones "Blank" and being able to name 20 blanks at once is very useful.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: TerminatorII on March 27, 2012, 01:13:21 pm
any chance DT could be upgraded to tell you who the vampires are?

already implemented, look under options! ;)

Ok so I have poured over all 8 checks on options and NONE of them say anything about curses, etc.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: fredrol on March 27, 2012, 01:34:49 pm
i started to be slightly annoyed with going back and forth between labours and roles so i've been toying with the idea of adding a roles pane to the dwarf details, or adding the top roles to the tooltip, or both! i'm concerned this extra pane is cluttering things. perhaps listing all the roles is a bit much as well, perhaps top 10 would be sufficient?

any feedback would be much appreciated!

I was thinking about this just a moment ago and agree with the above posters. If it's possible, throw in an "Show X roles in tooltip and Y roles in details dock" option under file -> options, where X = 3 and Y = 10 default. Or something like that. In any case, it's a welcome improvement.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Kaos on March 27, 2012, 03:14:15 pm
Bug report: I auto-updated DT to play with 34.06,  in my fort I got the 1st dwarven caravan, when they were entering my fort a kobold got revealed, one of the caravan guards (axedwarf) handled it and killed the kobold, after that the axedwarf began showing up on DT along my other dwarves, I was even able to activate his architecture job, he didn't do any job in my fort, though.
When the caravan left he left as usual and disappeared from DT.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: toasteur on March 27, 2012, 03:26:03 pm
i started to be slightly annoyed with going back and forth between labours and roles so i've been toying with the idea of adding a roles pane to the dwarf details, or adding the top roles to the tooltip, or both! i'm concerned this extra pane is cluttering things. perhaps listing all the roles is a bit much as well, perhaps top 10 would be sufficient?

any feedback would be much appreciated!


i think that instead of trying to fit too much information in the same pane, which can be such an ui design nightmare, one way to resolve the problem would be to split different groups of labor into different pane. the full labor pane would stille be needed for some tasks, but often i find myself having too much columns to fit in the screen and having more specialized pane would help to achieve this goal.
different people have different taste, so if it was possible to configure the content of a pane from a config file like this is done for the roles, but in a more general way.
may i suggest using xml for the config, because i find it more usable as soon as you need some kid of tree structure. also it tends to be much more strongly typed to avoid syntax errors.
my idea would be that a list of 'columns' nodes would be defined (could be a role, an attribute, a job) with the appropriate data to populate it. (code for display, click handling and sort would be done for each type of column, afterwards it's just a matter of giving the correct properties)
then there would be 'groups' nodes to allow for a specific coloring and get a separator between groups.
then a 'pane' node would contain a list of group nodes.

with this, a user could himself define the panes he wants to use (existing panes would be defined by default) and what each pane contains.

also maybe another type of special column, which would be a sort of 'custom job' column and which would be a list of jobs which when clicked would toggle all the associated jobs on or off.

given the fact that you already dynamically construct the roles pane from a config, can i guess it would be easy enough to implement?

here a quick sample of how it could look
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 27, 2012, 03:57:23 pm
any chance DT could be upgraded to tell you who the vampires are?

already implemented, look under options! ;)

Ok so I have poured over all 8 checks on options and NONE of them say anything about curses, etc.

I'll have to get back to you on that later tonight then.  I know it was Splinterz version that had the option.  I've checked it myself for both child labors, and finding vampires...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: cousac on March 27, 2012, 04:42:26 pm
I too do not use debian. I compiled my DT so i have no issues.

What source did you use? I had trouble even finding something compilable. (FWIW: I'm on Fedora.)

i used the GIT address at the DT google code site to clone the branch and then compiled.

Ah... thanks. My mistake was trying to go through the DT project page linked in this thread.
A little compilation and we are working once more!!

Fret not good buddy, I've been there many a times myself. It only recently I thought to compile from git. :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Werra on March 27, 2012, 08:06:41 pm

If using a top 3 or top 10 (static) only dispaly, it might be desirable to choose what roles are alloweed to be listed, otherwise roles that are displayed may be roles the player never assigns.


I think a "show the top roles for this dwarf" is a brilliant idea - I normally sit there scanning across the roles grid to see if they are good at anything in particular - but also some of the roles are not relevant to the way I play, or the stage I am at (Liar, Pump Operator, woodcutter if I am buried) so being able to limit what shows would also be great...

How about we add a simple list to start with, and enable options down the track...
----------
I have been playing DF for years, and compiling my own DT/DFHack - congratulations splinterz (and other contributors), you have finally motivated me to stop lurking and actually make a comment  :o
We appreciate your menacing spikes of awesomeness...

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: TerminatorII on March 27, 2012, 08:35:29 pm
ok I didn't know htere were multiple versions... I just have the one that's under the first page here. what's the link to the other one>?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: maseck on March 27, 2012, 09:21:06 pm
So, I'm currently making a version of DwarfTherapist that implements lua scripting. I started yesterday with no experience with DwarfTherapist's code base, no experience with QT Creator, and my only experiences with lua is that of browsing the manual. From where I am now, I feel that I can pull this off. The lua scripts should be able to add pending changes, process information about the dwarfs and stuff like that.

Anybody got suggestions or comments for me?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 27, 2012, 10:12:42 pm
any chance DT could be upgraded to tell you who the vampires are?

already implemented, look under options! ;)

Ok so I have poured over all 8 checks on options and NONE of them say anything about curses, etc.

I'll have to get back to you on that later tonight then.  I know it was Splinterz version that had the option.  I've checked it myself for both child labors, and finding vampires...

Yep, in splinterz version, under file-options "highlight cursed dwarves".  SPLINTERZ VERSION.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 27, 2012, 10:15:49 pm
So, I'm currently making a version of DwarfTherapist that implements lua scripting. I started yesterday with no experience with DwarfTherapist's code base, no experience with QT Creator, and my only experiences with lua is that of browsing the manual. From where I am now, I feel that I can pull this off. The lua scripts should be able to add pending changes, process information about the dwarfs and stuff like that.

Anybody got suggestions or comments for me?

Humor me will you, what's lua?  So many languages, so little time...  I think I saw your comment on reddit.

Nevermind
http://www.cs2d.com/tut/tkdlua/luatut.html
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: 0x517A5D on March 28, 2012, 10:47:00 am
So, I'm currently making a version of DwarfTherapist that implements lua scripting. I started yesterday with no experience with DwarfTherapist's code base, no experience with QT Creator, and my only experiences with lua is that of browsing the manual. From where I am now, I feel that I can pull this off. The lua scripts should be able to add pending changes, process information about the dwarfs and stuff like that.

Humor me will you, what's lua?  So many languages, so little time...  I think I saw your comment on reddit.

Lua (http://www.lua.org/) is a 'little language'.  You don't write entire programs in it, you write scripts that hook into a base program.  It's integrated into some pretty big projects, such as the World of Warcraft client.

Syntactically, I think it's a crisp and fruity blend of Pascal and C, with spicy object-oriented overtones reminiscent of  Python.  It does not have C's syntactical sugar operators such as ++.

Semantically, it has newer concepts taken from Java, Python and Perl.  E.g. closures and anonymous functions, coroutines, context-sensitive return values, a Perl-style generic for operator, and an equivalent to eval() at runtime.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Andir on March 28, 2012, 10:58:04 am
Syntactically, I think it's a crisp and fruity blend of Pascal and C, with spicy object-oriented overtones reminiscent of  Python.  It does not have C's syntactical sugar operators such as ++.
Did I step into the Food Channel?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: miauw62 on March 28, 2012, 12:47:44 pm
So, I'm currently making a version of DwarfTherapist that implements lua scripting. I started yesterday with no experience with DwarfTherapist's code base, no experience with QT Creator, and my only experiences with lua is that of browsing the manual. From where I am now, I feel that I can pull this off. The lua scripts should be able to add pending changes, process information about the dwarfs and stuff like that.

Humor me will you, what's lua?  So many languages, so little time...  I think I saw your comment on reddit.

Lua (http://www.lua.org/) is a 'little language'.  You don't write entire programs in it, you write scripts that hook into a base program.  It's integrated into some pretty big projects, such as the World of Warcraft client.

Syntactically, I think it's a crisp and fruity blend of Pascal and C, with spicy object-oriented overtones reminiscent of  Python.  It does not have C's syntactical sugar operators such as ++.

Semantically, it has newer concepts taken from Java, Python and Perl.  E.g. closures and anonymous functions, coroutines, context-sensitive return values, a Perl-style generic for operator, and an equivalent to eval() at runtime.
I find writing things in lua quite fun, even tough ive never done it, the tuts i read (wich are prob outdated) do make it look quite fun, and i was planning to use it whit the minecraft mod computercraft, but i nowhere found how to accept user input, and i had no inspiration.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: drh on March 28, 2012, 01:24:50 pm
Does the splinterz build have Linux memory layouts available for 34.06? I can't find anything in the Google page for the splinterz fork (which was also hard to locate, BTW) or anywhere.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vityav on March 28, 2012, 01:40:06 pm
Does the splinterz build have Linux memory layouts available for 34.06? I can't find anything in the Google page for the splinterz fork (which was also hard to locate, BTW) or anywhere.

I posted the addresses I found that work for splinterz's build for linux here: http://www.bay12forums.com/smf/index.php?topic=66525.msg3123370#msg3123370

I haven't tested them extensively yet, but they work for everything I've done so far.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on March 28, 2012, 02:23:35 pm
Bugzors: changing the skill weighting down to 0.00 in the options, and then changing it back to 1.00(or any number actually) has zero effect. DT requires a restart for it to start working again. You can set it down to 0.01 and changing it still works.

And something must be wrong with how DT values a skill, 2 examples:
dorf1 with just 500xp in gem setting is listed as being 97.79% fit for the job, without any skill weighting he is 45.23% fit.

dorf2 with just 1500xp in gem setting is listed as being 100% fit for the job, without any skill weighting he is 43.89% fit.

I wouldn't be surprised to see that having just set 1 gem(from 0xp) would change dorf3's fitness for the role a fair amount, i'll try and test that today or tomorrow.

I would hope to expect a skill level of 7-10 to start to out weight attributes in the calculations.

Edit: Quick test i did with dorf3, odd results.

At 0.01 skill weight 1 gem set took him from 49.36% to 49.71%
At 1.00 skill weight 1 gem set took him from 43.80% to 43.84% O.o

This makes zero sense, a far far far lower skill weight = a far higher fitness% increase? O.o
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GoldenShadow on March 28, 2012, 02:54:29 pm
Do we know how traits and attributes affect skilled labor? If a dwarf is matched to a role based on attributes, how does he differ from an opposite dwarf, unfit for the role, at the same task assuming equal skill levels. Does the one fit for the role work faster? produce higher quality items? skill up faster? none of the above?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: chris_v on March 28, 2012, 03:17:57 pm
Your linux package link is broken. It says "Forbidden".
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: i2amroy on March 28, 2012, 03:22:56 pm
Do we know how traits and attributes affect skilled labor? If a dwarf is matched to a role based on attributes, how does he differ from an opposite dwarf, unfit for the role, at the same task assuming equal skill levels. Does the one fit for the role work faster? produce higher quality items? skill up faster? none of the above?
Attribute data on the wiki (http://dwarffortresswiki.org/index.php/Attributes#Skills_by_Associated_Attributes)
Agility makes everything better.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 28, 2012, 04:12:52 pm
Do we know how traits and attributes affect skilled labor? If a dwarf is matched to a role based on attributes, how does he differ from an opposite dwarf, unfit for the role, at the same task assuming equal skill levels. Does the one fit for the role work faster? produce higher quality items? skill up faster? none of the above?

I don't know if this answers your question, but there is a skill wiki as well\
http://dwarffortresswiki.org/index.php/v0.31:Skill

I'm still uncertain as to what skills actually are, as in how they are trained up, but apparently they are based on attributes.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 28, 2012, 04:24:02 pm
Bugzors: changing the skill weighting down to 0.00 in the options, and then changing it back to 1.00(or any number actually) has zero effect. DT requires a restart for it to start working again. You can set it down to 0.01 and changing it still works.

And something must be wrong with how DT values a skill, 2 examples:
dorf1 with just 500xp in gem setting is listed as being 97.79% fit for the job, without any skill weighting he is 45.23% fit.

dorf2 with just 1500xp in gem setting is listed as being 100% fit for the job, without any skill weighting he is 43.89% fit.

I wouldn't be surprised to see that having just set 1 gem(from 0xp) would change dorf3's fitness for the role a fair amount, i'll try and test that today or tomorrow.

I would hope to expect a skill level of 7-10 to start to out weight attributes in the calculations.

Edit: Quick test i did with dorf3, odd results.

At 0.01 skill weight 1 gem set took him from 49.36% to 49.71%
At 1.00 skill weight 1 gem set took him from 43.80% to 43.84% O.o

This makes zero sense, a far far far lower skill weight = a far higher fitness% increase? O.o

what version are you using? are these tests with a role with only a skill, or are there traits and attributes as well? normally the farther from the mean an aspect gets, the more value it's considered to have. why would you only want to consider skills over 7?

i'll look into the zero issue with the global weights.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Spotty on March 28, 2012, 04:32:53 pm
Regarding nicknames, I noticed something last night after my fortress died and I was having a look at in in LegendsViewer.  None of the nicknames I set in Therapist (I'm using splinterz version currently) show up in LegendsViewer, only the ones I set in-game.  I assume this has something to do with the workaround to the whole reveal-vampires-via-nicknaming thing?

Sorry if this has already been discussed, I know the vampire thing comes up pretty often but I haven't seen anyone mention Legends.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 28, 2012, 04:58:32 pm
Bugzors: changing the skill weighting down to 0.00 in the options, and then changing it back to 1.00(or any number actually) has zero effect. DT requires a restart for it to start working again. You can set it down to 0.01 and changing it still works.

And something must be wrong with how DT values a skill, 2 examples:
dorf1 with just 500xp in gem setting is listed as being 97.79% fit for the job, without any skill weighting he is 45.23% fit.

dorf2 with just 1500xp in gem setting is listed as being 100% fit for the job, without any skill weighting he is 43.89% fit.

If you took out skill weights, then it wouldn't matter who had higher lower skills, it would then base the role on attributes/traits.

Quote
I wouldn't be surprised to see that having just set 1 gem(from 0xp) would change dorf3's fitness for the role a fair amount, i'll try and test that today or tomorrow.

I would hope to expect a skill level of 7-10 to start to out weight attributes in the calculations.

you can't use these assumptions.  As it's based on what the average xp value is for all dwarf's (i.e. the mean), depending on what your min value is (most likely 0), and your max (whatever your max dwarf is at, say 1500), then deviations from the mean would start to throw %'s off, say your mean was 750.

Quote
Edit: Quick test i did with dorf3, odd results.

At 0.01 skill weight 1 gem set took him from 49.36% to 49.71%
At 1.00 skill weight 1 gem set took him from 43.80% to 43.84% O.o

This makes zero sense, a far far far lower skill weight = a far higher fitness% increase? O.o

I don't get this last part.  I get the weights, but what do you mean by 1 gem?  1 gem experience?  If it's 1 gem experience, then your deviation from mean barely changed, (ex, mean is 750, 1 exp vs 0 exp to 750 is nothing).  These numbers themselves would produce z-scores, and then these z-scores would be multiplied by either .01 or 1.

Example: A 1 gem (i.e. a 1 exp?... vs a mean somewhere around 750), would yield a deviation from mean of -749, converted to some negative z-score.  Which would be multiplied by the weight.  The .01 weight would minimize the z-score to .01 it's value, it also means the stdev of that dataset would also be reduced to .01 before being combined with the other standard deviations.  In the end, the .01 weight would mean that the deviation from mean would contribute very little to the overall %, meaning attributes and skills would have a higher weight.  The 1 weight would retain the same zscore, and standard deviation, contributing more to the overall %.  Which means skills would contribute more to the overall %.

It's hard to see without using a spreadsheet using the formula vs your results, and known mean's, sdev's (which could be done as v9 output's means and sdev's I believe when you hover the mouse over specific instances of attributes, skills, traits).

What I can do is use pastebin to paste the formula that Splinterz used as his basis if you want to follow along the calculations, but I'll have to do that later tonight...

Here you guys go!

http://pastebin.com/v71VrBfM

Update:
I am not able to spot check against a spreadsheet as the stdev' and mean's are no longer listed in (v9), they were in v8... oh well.  I was hoping to post a link to a mediafire spreadsheet showing the calculations...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Kaos on March 28, 2012, 10:31:45 pm
ok I didn't know htere were multiple versions... I just have the one that's under the first page here. what's the link to the other one>?
this, I didn't know either until I saw some random posts in this thread, some of there have very interesting features.

I know these versions are like little tests for proof of concept of new features and will eventually get integrated into the main release, but meanwhile could we have all the links to these other versions on the first page along with what they do? Just so that people that want to try them at their own risk can get them easily without hunting posts through all the thread.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 28, 2012, 11:25:44 pm
ok I didn't know htere were multiple versions... I just have the one that's under the first page here. what's the link to the other one>?
this, I didn't know either until I saw some random posts in this thread, some of there have very interesting features.

I know these versions are like little tests for proof of concept of new features and will eventually get integrated into the main release, but meanwhile could we have all the links to these other versions on the first page along with what they do? Just so that people that want to try them at their own risk can get them easily without hunting posts through all the thread.

That's a good point, maybe we should have a front page posts to the diff versions.  Would help a lot.  I know that depends on the original author of the post.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on March 29, 2012, 12:50:25 am
Bugzors: changing the skill weighting down to 0.00 in the options, and then changing it back to 1.00(or any number actually) has zero effect. DT requires a restart for it to start working again. You can set it down to 0.01 and changing it still works.

And something must be wrong with how DT values a skill, 2 examples:
dorf1 with just 500xp in gem setting is listed as being 97.79% fit for the job, without any skill weighting he is 45.23% fit.

dorf2 with just 1500xp in gem setting is listed as being 100% fit for the job, without any skill weighting he is 43.89% fit.

I wouldn't be surprised to see that having just set 1 gem(from 0xp) would change dorf3's fitness for the role a fair amount, i'll try and test that today or tomorrow.

I would hope to expect a skill level of 7-10 to start to out weight attributes in the calculations.

Edit: Quick test i did with dorf3, odd results.

At 0.01 skill weight 1 gem set took him from 49.36% to 49.71%
At 1.00 skill weight 1 gem set took him from 43.80% to 43.84% O.o

This makes zero sense, a far far far lower skill weight = a far higher fitness% increase? O.o

what version are you using? are these tests with a role with only a skill, or are there traits and attributes as well? normally the farther from the mean an aspect gets, the more value it's considered to have. why would you only want to consider skills over 7?

i'll look into the zero issue with the global weights.

The very latest version you posted.

Attributes and traits left as 1.00. Only 1 skill...gem setting. The 2 dorfs had near identicle attribs(ie only a few points out in each attrib)
Code: [Select]
Creativity Kinesthetic Spatial
dorf1: 1250 1001 1498
dorf2: 1250 1004 1503

No traits listed as associated with this skill.

Not only counting a skill if it's over 7, but at skill over 7-10 it starts to balance out vs attribs, ie they become equally important, not that a skill level of 6 suddenly has zero value, i never said that. As it stands dorf1 with 0.017% total skill xp is being shown as being over 50% better than if DT doesn't take skill into account. Can you see how that sounds completely insane?

And i guess you missed the number after the decimal point above, but with a skill weighting of just 0.01 it sees a 30xp(ie 1 gem set) as being worth 0.35%. But on that same gem set if i set the skill weight to 1.00 then it sees it as being only worth 0.04%...again, i shouldn't need to explain how this is wrong ;p

It's almost like 1xp is equal to 1 in an attribute(or combo of all attribs associated with the skill) instead of it taking into account the range for a skill's exp level goes upto 29k.

Edit: i just wanted to add: with all weights being at 1.00, each should have equal importance, but currently that is not the case, it's not even slightly out of balance, it's lighyears off. When a dorf is rated at ~45% on his attributes alone, a measly 500xp(~0.017% of the maximum xp he can get in a skill) should not equate to him suddenly being ~97% fit for the job. And now i'm off fishing :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: -A_Dwarven_Bard- on March 29, 2012, 12:52:27 am
You're my HERO for including a mac option be default now. I do not miss the first time I tried to get it running using wine and realizing that I've overhauled my mac too far! :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on March 29, 2012, 12:56:03 am
Quote
Edit: Quick test i did with dorf3, odd results.

At 0.01 skill weight 1 gem set took him from 49.36% to 49.71%
At 1.00 skill weight 1 gem set took him from 43.80% to 43.84% O.o

This makes zero sense, a far far far lower skill weight = a far higher fitness% increase? O.o

I don't get this last part.  I get the weights, but what do you mean by 1 gem?  1 gem experience?  If it's 1 gem experience, then your deviation from mean barely changed, (ex, mean is 750, 1 exp vs 0 exp to 750 is nothing).  These numbers themselves would produce z-scores, and then these z-scores would be multiplied by either .01 or 1.

Example: A 1 gem (i.e. a 1 exp?... vs a mean somewhere around 750), would yield a deviation from mean of -749, converted to some negative z-score.  Which would be multiplied by the weight.  The .01 weight would minimize the z-score to .01 it's value, it also means the stdev of that dataset would also be reduced to .01 before being combined with the other standard deviations.  In the end, the .01 weight would mean that the deviation from mean would contribute very little to the overall %, meaning attributes and skills would have a higher weight.  The 1 weight would retain the same zscore, and standard deviation, contributing more to the overall %.  Which means skills would contribute more to the overall %.

"1 gem set" = Got the dorf to set 1 gem at the jewel shop, ie 30xp per set.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: i2amroy on March 29, 2012, 01:56:51 am
You're my HERO for including a mac option be default now. I do not miss the first time I tried to get it running using wine and realizing that I've overhauled my mac too far! :P
Agreed. It would still be nice to get custom profession names to be able to be assigned through therapist though (right now it says it assigns them but doesn't change them in-game).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 29, 2012, 04:55:49 am
Spoiler: previous messages (click to show/hide)

The very latest version you posted.

Attributes and traits left as 1.00. Only 1 skill...gem setting. The 2 dorfs had near identicle attribs(ie only a few points out in each attrib)
Code: [Select]
Creativity Kinesthetic Spatial
dorf1: 1250 1001 1498
dorf2: 1250 1004 1503

No traits listed as associated with this skill.

Not only counting a skill if it's over 7, but at skill over 7-10 it starts to balance out vs attribs, ie they become equally important, not that a skill level of 6 suddenly has zero value, i never said that. As it stands dorf1 with 0.017% total skill xp is being shown as being over 50% better than if DT doesn't take skill into account. Can you see how that sounds completely insane?

And i guess you missed the number after the decimal point above, but with a skill weighting of just 0.01 it sees a 30xp(ie 1 gem set) as being worth 0.35%. But on that same gem set if i set the skill weight to 1.00 then it sees it as being only worth 0.04%...again, i shouldn't need to explain how this is wrong ;p

It's almost like 1xp is equal to 1 in an attribute(or combo of all attribs associated with the skill) instead of it taking into account the range for a skill's exp level goes upto 29k.

Edit: i just wanted to add: with all weights being at 1.00, each should have equal importance, but currently that is not the case, it's not even slightly out of balance, it's lighyears off. When a dorf is rated at ~45% on his attributes alone, a measly 500xp(~0.017% of the maximum xp he can get in a skill) should not equate to him suddenly being ~97% fit for the job. And now i'm off fishing :)

i'll do more testing, but i'm very surprised that dwarf2 with 2/3 attributes lower was actually ranked higher than dwarf1, with the skills at 0 weight. same with 1.0 vs 0.01 for weights, i can't believe that 0.01 gives a higher rating that 1.0  ???

here's the problem with skills that i think you're missing: most dwarves don't have most skills. this drops the mean/stdev very low. 0.000x kind of low. so yes, 0.017% in a skill is actually lightyears ahead of most of the other dwarves. if you only have one dwarf with 500xp in a skill, and the rest have 0xp, and there is any weight at all on the skill, he's going to get a huge bonus because relative to the other dwarves, he's much, much better for the job having even a tiny bit of xp. to summarize, relative to other dwarves (ie plotted on a normal distribution) it's doing exactly what it should.

that said, perhaps this isn't the best method to apply to skills since the normal distribution is obviously skewed for those skills which only a few dwarves possess. ideally a model which could accommodate both a skewed distribution and those distributions where skills are spread more evenly (ie. all dwarves with some military training) would be best. if you've got an idea on how to accomplish that, i'm all ears.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: dreiche2 on March 29, 2012, 06:49:22 am
Okay so I haven't followed the roles issue in detail so I might be misunderstanding things, but I think I know where the problem is.

If I understand correctly, then ultimately/intuitively you're doing something like this: say you have two skills/attributes/whatever A and B. Then for each skill you determine how good the dwarf is relative to the other dwarves (say, better than 99% of the rest in skill A, better than 60% in skill B). Then to get a final fitness value, call it F, you effectively combine those scores (z-scores, to be precise) in a non-linear fashion that will give the 99% a much higher impact than the 60% (I think).

The problem is as Intrinsic's example shows that this is not necessarily a sensible thing to do, because you can be in the top 1% for skill A while still only being marginally better than everyone else in absolute terms. If that's the only skill that matters than yes, you're in the top 1% in terms of final fitness. But if there's another relevant skill B where the absolute differences are much higher, then that's what should be important, whereas the tiny absolute differences in skill A should be irrelevant really. But because you rescale each skill with the population's standard deviation, you effectively give skill A a high importance.

I think what it boils down to is that you should compute a combined fitness score in absolute terms, and only compute a relative measure in the final step. E.g., compute the fitness score F as a linear combination of all skill/etc. values that matter, weighting individual values according to their importance... and rescaling them according to their units/range, however, that rescaling should be in fixed, absolute terms, not relative to the population. Only once you have the final F score should you look at things in relative terms.

Intuitively, how well a dwarf fits a role is an absolute measure, depending on a combination of their skills etc. They might be very well suited to be cheesemaker or completely incompetent. Only once you have that measure should you look at how it compares to the rest of the population.

Does that make sense or am I completely off?

As a final note, I guess there are two different quantities of interest: how well a dwarf fits a role, and how well he or she compares. Thus you could report both the absolute fitness measure and a relative quantity...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 29, 2012, 08:03:51 am
that's exactly the problem dreiche2, and after more testing today i came to a similar conclusion that we need to basically invert how we're calculating the ratings. now it's a matter of how to measure the absolute part of the calculation. using normal distribution was nice because we were able to give more value the farther from the mean an aspect was. if we use a static mean and static standard deviation it's not quite as precise since we'll have to estimate the standard deviation. on the other hand we could go back to using a weighted average of the aspects, after scaling them to a percentile of the absolute maximums. thoughts?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 08:41:34 am
Today was a sad day for my formula.  In v8 we didn't standardize skills, traits, attr against each other until the final step.  In v9 we do it at both.

originally I wanted static values, but because some skills train attributes, it was hard to find a real average/standard deviation.  So he opted for a moving average based on the population, which works rather nice.  I actually like best fit approach...

However, I and he always noticed how the skills were skewed, but he thought and I eventually conceded that it wouldn't be an issue since say 50% of values r below mean and 50% above (npt necessarily dwarves).  I think if we could address how to do a skewed distribution, the formula would work a bit better.  I also do like best fit now, but I see why people might want an overall fit (maybe an option for the two?).

Update:
The reason we normalize twice is because of the weights that are applied at the attribute level, and then again at the global level.  Not normalizing before applying weights a 2nd time at the global level would mean that the weights set in the 1st round (i.e. attributes, skills, traits level) would have an effect on the global weighting.  So standardizing them fixes that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GoldenShadow on March 29, 2012, 09:06:28 am
I'd prefer if roles only took attributes and traits into account, since you can already sort by skill levels on the actual labors page.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: dreiche2 on March 29, 2012, 09:07:34 am
on the other hand we could go back to using a weighted average of the aspects, after scaling them to a percentile of the absolute maximums. thoughts?

Again with the caveat that I haven't followed the details of the discussion so far (nor played DF much recently, nor ever used Therapist for that matter, so I don't know much about the inner workings of DF), but yes, I'm afraid the simplest solution might make the most sense here. I.e. scale everything to a range 0 to 1 (or 0% to 100%), linearly combine the aspects with the weights, and again renormalise to 0 to 1 (or have the weights be normalised to add to one to begin with, boils down to the same thing).

Then what you do with that score afterwards is the next question. I guess at that point there's not much of a reason to treat that score differently from skills etc. in terms of how it is communicated. E.g. if you want to implement a feature that tells the user how the dwarf fares relatively to the rest of the fortress population, you could also give that as optional info for the skills themselves, not just the role scores.

As for how that relative measure should be computed, I'm not sure. The percentages given with the z score for example only really make sense (as actual percentages I mean) if the population is normally distributed, which I would presume is unlikely to be the case. It also depends on what you think the user actually wants to know. You could also just report in what percentile the dwarf is by ranking the scores. On the other hand, that measure wouldn't give you the info how far she or he is above the mean, etc. ... so yeah, it depends.

I guess in case of doubt the only thing that gives you the full picture would be plotting the whole distribution/histogram of dwarves in comparison  ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 09:33:49 am
I'd prefer if roles only took attributes and traits into account, since you can already sort by skill levels on the actual labors page.

This would solve the skewed skills.

I honestly think the formula works fine for what it's supposed to do, just things like weights need to be taken into account and an understanding of skills skewness... but if we could apply the skewness to the skills distribution, I think it might be fixed.

Update: so we think we have a proposed solution/idea.

Calculate all cdfs as if they r skewed (weights might mess this up) or at the very least, just skills.  Then do the same at the global level.  Should allow for more accurate results taking skills skew into consideration

Update:
Any help on calculating a cumulative distribution function for skewed distributions http://en.wikipedia.org/wiki/Skew_normal_distribution#References (http://en.wikipedia.org/wiki/Skew_normal_distribution#References) is welcome.  However, there isn't a clearcut way to calculate shape.

so far...

for shape
http://www.weibull.com/LifeDataWeb/estimation_of_the_weibull_parameter.htm (http://www.weibull.com/LifeDataWeb/estimation_of_the_weibull_parameter.htm) &
http://www.weibull.com/AccelTestWeb/calculating_the_parameters_of_the_weibull_distribution.htm (http://www.weibull.com/AccelTestWeb/calculating_the_parameters_of_the_weibull_distribution.htm)

location
http://www.itl.nist.gov/div898/handbook/eda/section3/eda351.htm (http://www.itl.nist.gov/div898/handbook/eda/section3/eda351.htm)

scale
http://www.itl.nist.gov/div898/handbook/eda/section3/eda356.htm (http://www.itl.nist.gov/div898/handbook/eda/section3/eda356.htm)

Excel stuff
http://www.youtube.com/watch?v=M07Vp_TGBuM&feature=plcp&context=C43244afVDvjVQa1PpcFOBuqaE3P5Td9y03YG0nNcAu7sP5OzEwU8=

http://www.youtube.com/watch?v=PAdh3yv5pro
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: DirtyChineseCigarettes on March 29, 2012, 01:39:48 pm
Could someone help explain to me how I go about changing the roles formula for the splinterz version of Therapist.


I would like to customize them by changing the weighting of roles, a lot. for example i want my mechanics to be heavily intelligence weighted and my wardwarfs to put a 50% weighting on recouperability and disease resistance ONLY.

Looking at game_data.ini, I can find the formulas just right but the weightings dont make sense to me mathematically, they should add up to 1? For example:

26/name="Cook"
26/attributes/size=4
26/attributes/1/id=analytical ability
26/attributes/1/weight=0.5
26/attributes/2/id=agility
26/attributes/2/weight=0.5
26/attributes/3/id=creativity
26/attributes/3/weight=1.0
26/attributes/4/id=kinesthetic sense
26/attributes/4/weight=0.5
26/skills/size=1
26/skills/1/id=21

I want my cook to be more intelligent and creative than kinesthetic and agile, do I just make the weightings smaller? they total 2 instead of 1 so what if i change the total weights to equal 1.5???

Can I just delete weightings?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 02:07:53 pm
Could someone help explain to me how I go about changing the roles formula for the splinterz version of Therapist.


I would like to customize them by changing the weighting of roles, a lot. for example i want my mechanics to be heavily intelligence weighted and my wardwarfs to put a 50% weighting on recouperability and disease resistance ONLY.

Looking at game_data.ini, I can find the formulas just right but the weightings dont make sense to me mathematically, they should add up to 1? For example:

26/name="Cook"
26/attributes/size=4
26/attributes/1/id=analytical ability
26/attributes/1/weight=0.5
26/attributes/2/id=agility
26/attributes/2/weight=0.5
26/attributes/3/id=creativity
26/attributes/3/weight=1.0
26/attributes/4/id=kinesthetic sense
26/attributes/4/weight=0.5
26/skills/size=1
26/skills/1/id=21

I want my cook to be more intelligent and creative than kinesthetic and agile, do I just make the weightings smaller? they total 2 instead of 1 so what if i change the total weights to equal 1.5???

Can I just delete weightings?

they don't need to add to 1.
if you want mechanics heavility intelligent, just put your attribute weights for analytical at a ratio over what you want your non important skills to be.  Example analytical at weight 2, and the rest at weight 1.  So it will be weighted higher than the non intelligence attributes that are at 1 weight.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 02:20:18 pm
Okay, we may have a super close solution to fitting skewed curves to the formula, if anyone knows anything about regression lines.
http://www.weibull.com/LifeDataWeb/estimation_of_the_weibull_parameter.htm (http://www.weibull.com/LifeDataWeb/estimation_of_the_weibull_parameter.htm)

Then we could use a Weibull distribution function (available in excel or scalc, scalc prefered as it's opensource), and maybe use the formula for skills.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: dreiche2 on March 29, 2012, 02:26:16 pm
I'm not sure how using a more skewed distribution is going to solve the problem...

Also, could I ask you not to retroactively add content to your posts via editing after further replies have been posted? I wouldn't even have seen what you wrote if I hadn't gone back for unrelated reasons.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: DirtyChineseCigarettes on March 29, 2012, 02:39:36 pm
Damn thanks this role tab is pretty sweet, I rewrote a bunch of the formulas and loaded it up while my fort was already running. All my dedicated dwarves matched their role with a high 90%. ie: my farmer is 99.18% suited for the role. One issue I am seeing is with my meelee soldiers and ranged soldiers, shitty dwarves are turning up high percentages for these roles =/
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Kogut on March 29, 2012, 02:46:30 pm
Is it possible to set different images for "no job" and "on break"?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: DirtyChineseCigarettes on March 29, 2012, 02:47:30 pm
Also I thought I would just throw this out there... Old versions of dwarf therapist used to have a bar at the top (above all the rows in the labour tab) which enabled EVERY dwarf in whichever column you clicked's labour. ie: you could just click 1 box and EVERY dwarf you had would turn on/off stonehauling or whatever depending on the column you clicked. I remember using this feature SO MUCH and miss it a hell of a lot. I guess I will just have to set up custom professions...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 03:06:53 pm
Also I thought I would just throw this out there... Old versions of dwarf therapist used to have a bar at the top (above all the rows in the labour tab) which enabled EVERY dwarf in whichever column you clicked's labour. ie: you could just click 1 box and EVERY dwarf you had would turn on/off stonehauling or whatever depending on the column you clicked. I remember using this feature SO MUCH and miss it a hell of a lot. I guess I will just have to set up custom professions...

this feature is there, but you need to filter the dwarves by something, for example, gender/sex, and you'll have this bar at the location where the split occurs.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 03:10:53 pm
I'm not sure how using a more skewed distribution is going to solve the problem...

Also, could I ask you not to retroactively add content to your posts via editing after further replies have been posted? I wouldn't even have seen what you wrote if I hadn't gone back for unrelated reasons.

Well I updated prior posts so as not to "spam" the thread, but...it can make for hard following.

The problem seems to be not with how the attributes and traits are calculated, but in applying a normal curve to a skewed "skills" distribution.  I was never able to verify if the calculations were being performed incorrectly and is why said user had some %'s backwards; however,  I honestly think the original formula should work fine even with skewed data.  I was just hoping to improve upon the original by using skewed distributions for skewed data to ensure accurate %'s being reported amongst the population.

What Splinterz was proposing was something entirely different that doesn't take any consideration for where the dwarve's are in relation to each other, which I didn't agree with.

If you have a better solution, please, let us know.

Quote
I'm afraid the simplest solution might make the most sense here. I.e. scale everything to a range 0 to 1 (or 0% to 100%), linearly combine the aspects with the weights, and again renormalise to 0 to 1
Yeah, I think that's what I was going for with the skewed distribution (since you pointed out z-scores don't work for non normal data).   now most of the data does follow a normalish scheme, but we could convert to % more accurately if we did a skewed distribution.

Splinterz pointed out a way from a link I mined to possibly normalize skewed data (see bottom section, box-cot is one):
http://www.itl.nist.gov/div898/handbook/eda/section3/boxcoxno.htm (http://www.itl.nist.gov/div898/handbook/eda/section3/boxcoxno.htm)

I don't know, I kind of give up at this point.  The formula for DT is probably gonna go in a different direction from deviations from mean if skewness is taken into account, and even if not, then it's probably not going to be counted at all, which won't count for individual ranges of attributes against each other.

I was thinking, maybe there's a way to remove all 0 valued skills from a skill % calculation, and incorporate the 0 value'ers as some sort of value in relation to those with actual exp.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: DirtyChineseCigarettes on March 29, 2012, 03:28:29 pm
Also I thought I would just throw this out there... Old versions of dwarf therapist used to have a bar at the top (above all the rows in the labour tab) which enabled EVERY dwarf in whichever column you clicked's labour. ie: you could just click 1 box and EVERY dwarf you had would turn on/off stonehauling or whatever depending on the column you clicked. I remember using this feature SO MUCH and miss it a hell of a lot. I guess I will just have to set up custom professions...

this feature is there, but you need to filter the dwarves by something, for example, gender/sex, and you'll have this bar at the location where the split occurs.

ohhhh yeahhhhhh, you are one of the brighter peanuts in the turd.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: dreiche2 on March 29, 2012, 04:00:38 pm
What Splinterz was proposing was something entirely different that doesn't take any consideration for where the dwarve's are in relation to each other, which I didn't agree with.

If you have a better solution, please, let us know.

Quote
I'm afraid the simplest solution might make the most sense here. I.e. scale everything to a range 0 to 1 (or 0% to 100%), linearly combine the aspects with the weights, and again renormalise to 0 to 1
Yeah, I think that's what I was going for with the skewed distribution (since you pointed out z-scores don't work for non normal data).   now most of the data does follow a normalish scheme, but we could convert to % more accurately if we did a skewed distribution.

Well, my impression was that the problem isn't really that you don't fit the distributions properly (even though that is most likely true, too), but that it might not be ideal to combine the aspect values in the way you do. You say you don't like not taking into account how the dwarves compare to each other, but you'd still do that, only after you computed their respective role scores.

It might help clarifying what kind of behaviour you want the measure to have. Intuitively, to decide whether someone would make a good fighter by looking at their strength, agility, sword skill etc., would you really want to do go "oh look, he's in the top 0.00001% of sword fighters in my population, he most be optimally suited to be a fighter! I don't even care that he's below average in strength and agility by a good amount!"?... even if essentially everyone is shitty at sword fighting in your fort, he just happens to be the least shitty by a tiny little bit?

Because as far as I understand, that's what the current calculation will be doing (in a situation where sword skill has a very low standard deviation -- doesn't even have to have a mean at zero! -- and he's a tiny bit above mean, and where he's below average in strength and agility but those happen to have large standard deviations). And as far as I can see, that is not necessarily going to go away with better fitting distributions -- he might still be in the top 0.000001% in terms of sword fighting (because depending on how you measure it, he is.)

Sorry I didn't want to discourage you however! Maybe it's just a good idea to play around a bit with the different options. If you really need some more skewed distributions to fit your data, you might want to look into so-called heavy-tailed distributions (http://en.wikipedia.org/wiki/Heavy-tailed_distribution), such as the log-normal distribution (http://en.wikipedia.org/wiki/Log-normal_distribution).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 04:20:05 pm
Spoiler (click to show/hide)

I liked best fit approach, irregardless of whether the dwarf in the long run was a bad pick, as overtime, you really only wish to compare with fellow dwarves, and new dwarves will always adjust the calculation...  Take for example a lot full of old beat up cars.  Your job is to find the best car, not their ranking to all cars ever (which is far harder to calculate anyways), because you only have these set of cars to work with. 
What else is one trying to compare it to?  Is it worth knowing he's a bad fighter just because you know a static mean and sdev?  Maybe, but to me I want a dwarf for the job regardless of my forts progression state.

Well, I think I found a partial solution.  How to get shape parameter, which means a weibull function can be applied now.

http://www.qualitydigest.com/jan99/html/body_weibull.html

which means you can use the weibull function to get % for skewed distributions.

This doesn't figure out how to do deviations from means... but you can do weighted averages with these.

You might be able to do a deviations from mean's using a distance from 50%, but... I don't think that would work the same, as it would start throwing ranges off that I don't know how to reconcile like I did with z-scores.

btw, I LOVE MASTERS OF MAGIC!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on March 29, 2012, 04:57:39 pm
earlier today i altered the code to do as you proposed dreiche2, and it does seem to balance aspects out better. i just implemented the simplest version of what we talked about by specifying static absolute ranges to compare each aspect to for each dwarf, and then at the end adjusted all the final ratings via normal distribution. i haven't had enough time to play with it to see if it's resolving all the skill / weight issues, but it seems to so far.

it would be nice to incorporate something that gives a bit more value the farther from the average, but the only way this will work is if there's a way to transform or handle the massive skewing that skills have. we'll see...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 05:12:26 pm
thanks for the lognormal tip dreiche2

info of which can be found here.
  http://www.itl.nist.gov/div898/handbook/eda/section3/eda3669.htm

i wonder if I can use the info in the prior excel post on getting the shape... if so.  Then I think I can get a working formula up.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: dreiche2 on March 29, 2012, 05:33:52 pm
thistleknot:

For your future tests, just keep in mind that this issue wasn't about whether to ultimately compare the score to that of the other dwarves -- this was about whether computing the score initially from the relative values makes sense.

Let me give you an example. Let's say you want to decide who's a good dwarf for a job based on an equal weighting of their strength and agility. Let's say dwarf Urist here has agility of 10.1 (never mind the values DF actually uses) and a strength of 5. Let's say for simplicity that there are 100 other dwarves; in terms of agility, say all of them have agility 10. In terms of strength, let's say half of them have strength 5 and half have strength 15 [or something like that with larger stdev -- doesn't matter].

For agility across the population (including Urist), that gives me a stdev of about 0.01. For strength, a stdev of 5. If I normalise the values by dividing by their respective stdevs, this will essentially give a 5./0.01 = approx 500 times higher effective weight to the difference in agility compared to that in strength. I.e., if I'm not mistaken, your formula essentially assumes that the situation above is equivalent to one that looks like this (normalising by subtracting means and dividing by stdevs):

Urist has agility of about 10, while everyone else has one of -0.1.
Urist has strength of -1., while half of the population also has -1., and the other half +1.

Hence, as far as I can see in that case your formula would recommend us Urist over any other dwarf (in normalised terms, he's one stdev (=1.) below average in strength, but a whopping 10 stdevs above average in agility). In particular, it would prefer Urist at agility 10.1 and strength 5. over one of the dwarves with agility 10. and strength 15 (!) -- just because Urist happened to be 'so much better' in agility when measured in population stdevs.

Hope I didn't make a mistake somewhere, but if not, then that's maybe something to think about (or otherwise, to correct me on!).

Edit: typo etc.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: osmo on March 29, 2012, 06:25:29 pm
I really like the current direction in relaying attribute information and matching dwarves to roles in Dwarf Therapist. It looks to make it an even more useful (even indispensable) tool. I would like to contribute a few points.

The first few are about presentation. The way I look at it, Dwarf Therapist presents data to inform player decisions, then facilitates the implementation of these. The latter aspect is achieved through a skills-oriented tab, by activating or deactivating individual labours. Now, in the branch splinterz and others have been working on, there is an added roles tab. Most, though not all, of these roles map to a labour just like the skills presented on the standard labour tab. To me it would thus make sense, and enhance the usefulness of the tool, to replace the 'roles' indicator by a duplicate of the first tab, with the same capabilities in terms of directly activating and deactivating labours, just with a different set of data being showcased, whatever you eventually decide it to be. This way you could easily implement your choices, just based on different information. As a bonus, you could optionally present the second data set on either tab through a colour code, like a temperature scale. Say, tab 1 indicates skill and tab 2 a weighted 'fitness' score. Then tab 1 could show the familiar squares and diamonds, but colour-coded on a temperature scale from cold purple to hot red. This would make all the information accessible on both tabs, with a different focus. In the long run you could even have a chooser menu allowing you to customize your tabs to present any two datasets relating to individual dwarves. So your custom tab could, for example, offer two differently weighted fitness functions indicated by square size and colour, respectively.
I've excluded roles that aren't directly tied to labours in this. Those are military functions and those appointed through the nobles screen. You could tack them on at the end of the labours grid, but without the option to activate the jobs. But a separate, special roles tab seems preferable. The selection of relevant information offered would be largely identical to the labour-tied roles.
This takes me to another consideration - what information should one focus on in the first place for any second tab? Here, I think the enhanced Therapist can help with two key questions. Which dwarves are good at a job, and which dwarves have great potential for a job. Which ones can I make good use of right now (and maybe should relieve from other duties like hauling) and which ones could be trained to be the legends of the future? I think it would be great if the two tabs could focus on these individual aspects. My impression is that the former is chiefly a function of skill, whereas the latter largely depends on attributes and maybe traits. So, as a first approximation, having two tabs showcase those properties looks like a good plan to me. That is, I would probably want to disentangle skills from the mix shown on the second one. If my suggestion about colour-coding in the respective other dataset were to be implemented, switching back and forth shouldn't really be necessary anyway to confirm your choices.
Finally, some thoughts on the details of the data. I would generally advocate to try to keep matters simple and do as little as possible to the data as offered up by the game. That is, avoid weighing data, taking means into consideration and so forth. If you do, however, wish to improve things I could think of two very good metrics for the two key features I mentioned above, capability and potential. The first would be the rate at which a dwarf can do a job. The second would be a rate at which a dwarf gains experience whilst doing a job. Both can be measured in-game. As exact attribute and skill values at any one point can also be determined, it should be feasible to work out their exact relationships by relating those properties and then to model them. All it takes is a great measuring exercise. A rather laborious task, mind, but a possible one.

I'll offer a few TLDR takeaways
-replace roles tab with a second labour tab with the same capabilities in terms of assignments, just different data shown
-integrate information shown in tab 2 into tab 1 through colour coding, and vice versa.
-have separate tab for special roles that cannot be assigned as labours.
-create customizable tabs allowing for choice of data source and form of presentation
-have labour tab 1 generally focus on actual capability, tab 2 on potential. I.e. tab 1 skills, tab 2 attributes as a first guess.
-don't convolute, average, apply statistics or w.e. unless it clearly improves the quality of data presented to the user in informing his choices.
-determine the exact relationship of job speed/ rate of experience gain and skills/attributes/traits through measurement. Then make these metrics available in Dwarf Therapist
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 07:38:41 pm
I see where your going with this.  First, stdevs aren't that disparate, but ur saying stdev differences in sizes end up multiplying the results against each other.  I'm not entirely sure that is true cuz a new stdev is combined from the old ones... but I'll have to check ur claim out.  According to your example, str has a sdev of 5 and agil .01.  Any deviation from mean of 5 /.001 would and should rightfully give a 500 weight... cuz its 500 deviations from .01.  The examples provided were kind of screwy, but if you meant divided by .01 you were prolly referring to an agil score of around 15 compared to a mean of 10 w a sdev of .01

Update:
Basically, a sdev of .01 means that ~90% of the values are within .04 (or -2/+2 sdev's), so when you have 5 compared to .01, then you are talking about a x500 ratio!  That's all a z-score is, a ratio to a stdev, a 1 sdev represents ~34%, -1 to 1 sdev's represents about 66%, -2 to 2 represents ~90%.  So when you are 500 sdev's away, you should be weighted appropriately.

Update 2:
Yeah, okay, I see what your talking about.
Quote
Urist has agility of about 10, while everyone else has one of -0.1.
Urist has strength of -1., while half of the population also has -1., and the other half +1.

Hence, as far as I can see in that case your formula would recommend us Urist over any other dwarf (in normalised terms, he's one stdev (=1.) below average in strength, but a whopping 10 stdevs above average in agility)

And yes, this is exactly what I was going for.  Why?  Because he was far far out there on a stat that other dwarve's were not, and this is true for ALL STAT'S that the dwarf is far out on.  So it's equally applied to all stats.  I wanted to weight the distance from the mean at a (dare I say exponential) rate, which also applies to values below the average as well.

Which is why I think my formula was working, or should have worked regardless of skewed skill distribution.  As Splinterz had pointed out before, that the mean was still the mean of skills, i.e. the mean average value, so half the values were below the mean, and half above, so they would be rated exponentially the further they were away from this, but... I never thought a normal distribution should have been applied, but I didn't know how to do a skewed, I do now, but I'm not 100% sure on how to do a weighted deviation from mean with a skewed distribution, but... your log-normal distribution is showing promise as the log of values is supposedly a normal distribution, so I have some tests to run...

thistleknot:

For your future tests, just keep in mind that this issue wasn't about whether to ultimately compare the score to that of the other dwarves -- this was about whether computing the score initially from the relative values makes sense.

Let me give you an example. Let's say you want to decide who's a good dwarf for a job based on an equal weighting of their strength and agility. Let's say dwarf Urist here has agility of 10.1 (never mind the values DF actually uses) and a strength of 5. Let's say for simplicity that there are 100 other dwarves; in terms of agility, say all of them have agility 10. In terms of strength, let's say half of them have strength 5 and half have strength 15 [or something like that with larger stdev -- doesn't matter].

For agility across the population (including Urist), that gives me a stdev of about 0.01. For strength, a stdev of 5. If I normalise the values by dividing by their respective stdevs, this will essentially give a 5./0.01 = approx 500 times higher effective weight to the difference in agility compared to that in strength. I.e., if I'm not mistaken, your formula essentially assumes that the situation above is equivalent to one that looks like this (normalising by subtracting means and dividing by stdevs):

Urist has agility of about 10, while everyone else has one of -0.1.
Urist has strength of -1., while half of the population also has -1., and the other half +1.

Hence, as far as I can see in that case your formula would recommend us Urist over any other dwarf (in normalised terms, he's one stdev (=1.) below average in strength, but a whopping 10 stdevs above average in agility). In particular, it would prefer Urist at agility 10.1 and strength 5. over one of the dwarves with agility 10. and strength 15 (!) -- just because Urist happened to be 'so much better' in agility when measured in population stdevs.

Hope I didn't make a mistake somewhere, but if not, then that's maybe something to think about (or otherwise, to correct me on!).

Edit: typo etc.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Chagen46 on March 29, 2012, 08:10:18 pm
I've unzipped the .rar with both Winrar and Zipeg and both of them cannot extract QtNetwork4.dll from the .rar, making the whole program useless.

Is there any particular reason why?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Weazal on March 29, 2012, 08:16:28 pm
Is there a listing of all the different user releases for Therapist?

Since mainly I seem to be using Splinterz releases, for simplicity's sake I'm looking for a spot to check for a latest release pushed by him if there is one, rather than browsing through the thread each time to check for the same. If there's not I'm fine with browsing as necessary. Just thought I might inquire and see if there is listing of sorts


Thanks for your hard work guys.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 29, 2012, 10:21:08 pm
Finally, some thoughts on the details of the data. I would generally advocate to try to keep matters simple and do as little as possible to the data as offered up by the game. That is, avoid weighing data, taking means into consideration and so forth. If you do, however, wish to improve things I could think of two very good metrics for the two key features I mentioned above, capability and potential. The first would be the rate at which a dwarf can do a job. The second would be a rate at which a dwarf gains experience whilst doing a job. Both can be measured in-game. As exact attribute and skill values at any one point can also be determined, it should be feasible to work out their exact relationships by relating those properties and then to model them. All it takes is a great measuring exercise. A rather laborious task, mind, but a possible one.

Blasphemy!  I will defend my analysis of my new convoluted formula, why?  Because it's the only such analysis of data I've ever seen that attempts to weight deviations from mean (averaged weights does not do this).  And it took me a long time to come up with.

IF it is calculated wrong... well, that's another story, or if it's bad math... well, then that's another story.

But... I always was pushing for alternative formula's as being an option to choose from, as I believed weighted averages were an accurate description of stats, but... I thought that some descriptions of stats were more beneficial than others (especially for selection purposes).

So... your point of exp acceleration, and how quickly one does a job, those are nice... I think my formula tends to lead to the latter, but... your formula is hard to test and quantify (I think mine does quickness of job completion, but see my comment on weights), that's where the weights came in, the users could select them.

Maybe I'll push Splinterz to do multiple formula's...  Not a ton, but weighted averages would be one for sure...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: dreiche2 on March 30, 2012, 04:28:28 am
Most, though not all, of these roles map to a labour just like the skills presented on the standard labour tab. To me it would thus make sense, and enhance the usefulness of the tool, to replace the 'roles' indicator by a duplicate of the first tab, with the same capabilities in terms of directly activating and deactivating labours, just with a different set of data being showcased, whatever you eventually decide it to be. This way you could easily implement your choices, just based on different information.

Agreed, that's what I meant earlier with "there's not much of a reason to treat that score differently from skills etc.".

Blasphemy!  I will defend my analysis of my new convoluted formula, why?  Because it's the only such analysis of data I've ever seen that attempts to weight deviations from mean (averaged weights does not do this).  And it took me a long time to come up with.

(emphasis mine) :) Yes, and I appreciate that! And I understand the intuition behind your choices, but I think at this point it might be useful to take a step back from different kinds of distribution and all those technical things and think about what outcome you actually want. In particular, do you really want a measure that does this:

In particular, it would prefer Urist at agility 10.1 and strength 5. over one of the dwarves with agility 10. and strength 15 (!) -- just because Urist happened to be 'so much better' in agility when measured in population stdevs.

Because no matter what distribution you use etc., as long as you do everything in terms of relative stdevs, this is what you're going to get. I mean if that's what you want, that's fine! I just think most other people will prefer other options  ;)

Btw:

it would be nice to incorporate something that gives a bit more value the farther from the average, but the only way this will work is if there's a way to transform or handle the massive skewing that skills have. we'll see...

Could you elaborate a bit on what kind of behaviour you're looking for? What kind of situation gives you less weighting on exceptional values than desired?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: DwarfEngineer on March 30, 2012, 09:42:30 am
I'm actually in the process of moving right now - Toady's timing is impeccable, as usual.
Long story short, you guys are on your own regarding offsets until Monday.
Sorry!  :'(
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: narhiril on March 30, 2012, 10:29:18 am
I'm actually in the process of moving right now - Toady's timing is impeccable, as usual.
Long story short, you guys are on your own regarding offsets until Monday.
Sorry!  :'(

No problemo.  Good luck with the move an thanks, as always, for the hard work.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 30, 2012, 10:37:16 am
dreiche2,

when splinterz mentioned

Quote
it would be nice to incorporate something that gives a bit more value the farther from the average, but the only way this will work is if there's a way to transform or handle the massive skewing that skills have. we'll see...

he was referring to the way my formula works (i.e. urist agility examples) (although, the same could be done using static means and stdev's vs populations).

Update:
Btw, I propopsed a quick fix to the skill issue to Splinterz.  Just assume their is only 1 0 skilled dwarf when calculating skills distributions.  It will put all 0 dorfs at 0% and scale a normal curve for those with ranking in skills.

Btw, I'm working on a log normal curve for skills, the above proposed fix may be a good temp fix in the meantime
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: melkor on March 30, 2012, 01:03:22 pm
i dont know if somebody spotted this but il just say it.

i have used the highlight cured dwarves ( i'm a dirty cheater) and spotted a vampire. his age was 337. when i turn of the option his age is still 337.
i dont know if you will see the vampire real age when you never turn on the option, but that should be fixed when you turn the option of
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: slink on March 30, 2012, 01:49:08 pm
This might be the correct addresses for 34_07 on Windows.

[info]
checksum=0x4f7592fe
version_name=v0.34.07 (graphics)
complete=true

[addresses]
translation_vector=0x0182f670
language_vector=0x00182f650
creature_vector=0x017eb758
dwarf_race_index=0x01617ebc
squad_vector=0x01829a58
current_year=0x0101e1f0
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Lockyy on March 30, 2012, 01:52:55 pm
[snipped]

Seems to work fine for me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Garath on March 30, 2012, 02:00:35 pm
a bit more info on what to do for us knowledgeless?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Lockyy on March 30, 2012, 02:19:58 pm
a bit more info on what to do for us knowledgeless?
Follow the four steps in the image below
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Balin on March 30, 2012, 02:56:31 pm
Thanks, was able to copy save over from DF_Phoebus_34_06v00 into 0.34.07_win and connect with DT!

P.S. already slab-ed two ghostly dwarven invaders bothering my fort. What's up with that? Were they janissaries kidnapped at young age?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Garath on March 30, 2012, 03:49:06 pm
y'know, saying "go to this and this folder and copy the 34.06 file, paste it as a double then rename it as 34.07" would probably have been less work for you.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: slink on March 30, 2012, 03:51:04 pm
I think his instructions were wonderful.   ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Garath on March 30, 2012, 03:54:41 pm
didn't work for me though, did I forget anything?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: quintilius on March 30, 2012, 04:10:21 pm
Would it be possible to add 'skill rust' to this thing?  I think a couple tabs showing who's 'very rusty' in what labor/military skill might be useful in a 'you - go make me a bucket so you dont forget how to craft' sort of way
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: slink on March 30, 2012, 04:13:05 pm
didn't work for me though, did I forget anything?
How would we know the answer to that question?   :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: shovelmonkey on March 30, 2012, 04:25:30 pm
Jonesing for the update :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: slink on March 30, 2012, 05:14:59 pm
Jonesing for the update :)
If you are on Windows, read up for the 34_07 DT information.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Simokon on March 30, 2012, 05:23:36 pm
am I missing something, I have 6.12 but my config settings only go up to 34.02.

Does it matter if I change that one or is there another version of DT somewhere I am not finding.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Malthore on March 30, 2012, 05:26:13 pm
Hey i'm new here just had the same problem as the last guy so i went to About and tried auto updating up to 34.06 to do the copy and paste thing noted before but it says Version check failed
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: slink on March 30, 2012, 05:34:29 pm
I am using DT 6.12 on Windows, but it is DwarfEngineer's version.  Not splinterz or anyone else's.  They will have to update theirs because I don't use those.   :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Aeon Blue on March 30, 2012, 05:42:43 pm
Thank you, Slink and Lockyy - you guys made my weekend!

Garath, did you follow all 4 steps in Lockyy's instruction image? I ask because the first time I tried it, I missed step number 4. It's easy to miss all the way on the right side of the image.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Malthore on March 30, 2012, 06:04:31 pm
Thank you for the fast reply i have version 0.6.12 and in DT i go to help than about and in there where it says update beside that it is telling me that version check failed.  I downloaded it from th link in the first post of this thread if that helps.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: xordae on March 30, 2012, 06:05:23 pm
Thanks for the .07 values!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Lockyy on March 30, 2012, 06:21:34 pm
y'know, saying "go to this and this folder and copy the 34.06 file, paste it as a double then rename it as 34.07" would probably have been less work for you.

Personally I think visual instructions like that are better. Especially when some people might be a bit less proficient with this than others.

But whatever floats your boat.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: khearn on March 30, 2012, 06:36:54 pm
I'm having trouble getting DT to work with 34.07. I'm on Unbuntu Linux 10.04, running a version I compiled from the mainline 0.6.12 sources. It used to work with 34.06, but now when I run it I get "ptrace attach: No such process" to stderr. The DT window does open up and give me an empty labor matrix. The "Connect To DF" button is enabled, but clicking it just gives the same message to stderr. I've searched this thread for that message and didn't find it.

FAKEEDIT: Whoops, I just realized that I had two DFs running, one 34.06 and one 34.07. I guess that confused DT. The error message could be clearer. Instead of "no such process" it should realize that there are two processes and do, um, something. My guess it that it checks for processes with the correct name and if it doesn't get exactly one, it gives that error message, assuming it got none. The simplest thing would be give an appropriate error if it sees more than one, but that means DT can't be used if you are running a fort and looking at legends at the same time in a different process. Ideally it would allow the user to choose which process to connect to. But that would be more work to implement.

So. Now I can connect to 34.07, but of course I don't have the correct offsets. Oh well, it's about time to head home. I can play on a Windows machine there, and I see the offsets are already available for Windows. Heck, by the time I get home, someone will probably post the linux offsets, too. :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: ZeeDubs on March 30, 2012, 08:08:45 pm
Worked for me, thanks for the information.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 30, 2012, 08:13:39 pm
I found a c++ implementation of the Weibull distribution http://www.codecogs.com/code/statistics/distributions/continuous/weibull/cdf.php (http://www.codecogs.com/code/statistics/distributions/continuous/weibull/cdf.php), which can be applied to skills.  I'm still working on deriving the shape and scale parameter having worked with this http://www.qualitydigest.com/jan99/html/body_weibull.html (http://www.qualitydigest.com/jan99/html/body_weibull.html), it should work with skills!  I used easyfit for a made up sample of skills, and weibull worked well.  I'm still trying to get dwarfexport to export my 255 dwarf skills to an xml and then into easyfit.

Holy Rusted Metal Batman
http://www.codecogs.com/code/statistics/distributions/continuous/logistic/index.php

http://www.codecogs.com/code/statistics/distributions/continuous/burr/index.php

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Horizons on March 30, 2012, 08:24:03 pm
Thank you to both Slink and Lockyy for the contributions, however currently I am seeing that my dwarves are at zero happiness and have no assigned jobs. Could someone please post a pastebin with the contents of the latest file; I seem to be unable to get it working.

Edit: Alright; seems taking the Lazy Newb Pack's DFTherapist files won't make it work either. Still waiting on someone to clarify what is actually going on.

Another Edit: Managed to cobble something together; will not crash DF as far as I can see. Manages to see their happiness too, only issue is current job has a value of -1, if anyone wants to give it a look; here is the pastebin.
Code: [Select]
http://pastebin.com/UqrXd6mW
One More: Slink posted the correct offsets; this post is invalid.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: shovelmonkey on March 30, 2012, 08:37:10 pm
Thank you to both Slink and Lockyy for the contributions, however currently I am seeing that my dwarves are at zero happiness and have no assigned jobs. Could someone please post a pastebin with the contents of the latest file; I see to be unable to get it working.

Pretty much the same problem here. Using DwarfEngineer's DT (from the op of this thread) my DF version number only goes through 34.02, using that file as the template it loads names but nothing else and crashes the game when I commit changes. Wish someone could just post a working file to use, would make it so much easier, unless that's some kind of breach of the rules here.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: slink on March 30, 2012, 10:14:41 pm
Put this in a file named v0.34.07_graphics.ini, in the etc\memory_layouts\windows sub-directory under the directory from which you run DT.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Balin on March 30, 2012, 10:49:35 pm
Boost is an extension of the C++ STL and it has packages for dealing with distributions (confidence intervals, etc)

http://www.boost.org/doc/libs/1_49_0/libs/math/doc/sf_and_dist/html/math_toolkit/dist/dist_ref/dists/weibull_dist.html

and for generating random numbers with required distributions

http://www.boost.org/doc/libs/1_49_0/doc/html/boost/random/weibull_distribution.html
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: diegokilla on March 30, 2012, 11:23:09 pm
Thanks slink and lockyy for the quickfix :D
I was about to have to call it quits on DF for the night :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: hello_asdf on March 30, 2012, 11:24:25 pm
Has anyone had any luck with the Linux memory offsets? I've been trying for the past hour, and I'm completely stuck. I've gotten the language (I think), and the current year. That's it though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Schaluck on March 31, 2012, 02:57:26 am
os x layouts:

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Schaluck on March 31, 2012, 03:00:13 am
and @hello_asdf, if you've got the language vector, you can use the previous .ini file to get the difference of the other offsets to the language offset and then add these to the new language offset to get a complete .ini file.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Slitherrr on March 31, 2012, 03:27:04 am
The auto-updater doesn't seem to be pulling any of the layouts--I'm stuck at .02. Are the layouts the same for .03-.07, or alternatively, could someone throw up a zip somewhere?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Ratherford on March 31, 2012, 05:54:34 am
The auto-updater doesn't seem to be pulling any of the layouts--I'm stuck at .02. Are the layouts the same for .03-.07, or alternatively, could someone throw up a zip somewhere?

see slink's latest post on this site. worked perfectly for me ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Slitherrr on March 31, 2012, 06:34:51 am
Ah, thanks, I had completely missed it. It does work perfectly, cheers to that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Raven on March 31, 2012, 06:49:21 am
it doesn't work

it says "I don't know how to talk to this version of DF.
checksum:0x4f7592fe"

I tried creating an .ini copy of 34.05 (the last one I have) but it doesn't work either...

whut?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: slink on March 31, 2012, 06:58:45 am
9 posts up is the complete file.  Enjoy.   :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 31, 2012, 07:58:52 am
much thanks to Thuvian, we brainstormed a way to not have to use frequency distributions, now we can get exact % by taking (instance-mean)/range = a perfect of ~-50%/~+50%, which will also work for skewed distributions!  the distribution is the exact distribution of the sample!  no guessing with frequency distributions!

top is mean, bottom is median

Spoiler (click to show/hide)

I was afraid originally that it was going to give a flat distribution curve, but after a lot of thinking, I realized it wouldn't and then graphed it.  It's also a perfect histogram.  This is an example of agility.  and I did abs(cell)-.5 to get the results, then flipped it.  I'll have to figure the exact details out
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Kon on March 31, 2012, 08:29:31 am
Thanks, slink!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: dreiche2 on March 31, 2012, 08:40:50 am
much thanks to Thuvian, we brainstormed a way to not have to use frequency distributions, now we can get exact % by taking (instance-mean)/range = a perfect of ~-50%/~+50%, which will also work for skewed distributions!  the distribution is the exact distribution of the sample!  no guessing with frequency distributions!

Sorry, that was a bit difficult to comprehend. Is "range" relative to the population or the absolute range of the aspects? What's "a perfect of ~-50%/~+50%" supposed to mean?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Raven on March 31, 2012, 08:55:38 am
Thanks, slink!

yeah thanks a lot :)

it seems that I tried to paste another code and the right one was the one in your post :)

I suggest placing that stuff in the open post until the next version
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: slink on March 31, 2012, 10:07:58 am
Er, well, if you mean the opening post of this thread, I can't.  It belongs to DwarfEngineer and if he was available you wouldn't need my post.   :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: miauw62 on March 31, 2012, 10:53:56 am
Thanks slink!
(oh god, this is getting horribly repetive)
Anywayz, have a nice vacation (or whatever) dwarfengineer, and thanks slink so we can play df without bashing our heads against the walls.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: i2amroy on March 31, 2012, 10:55:36 am
The OS X values are up, sweet! This way I can actually get some play time in rather then wasting all of my weekend on more graphically (but less awesomely) advanced games.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: maseck on March 31, 2012, 11:13:50 am
So, that lua scripting I was talking about, I actually got it to do something useful. Given a file with the following code, only dwarves who are the most skilled in a skill are shown.
Spoiler (click to show/hide)
I was discouraged a little bit when I noticed that Qt Creator has a bit of a script engine built in. It makes me feel unsure if any of my changes will be considered for implementation.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: shovelmonkey on March 31, 2012, 11:29:25 am
Thank you, slink, now works like a charm. My weekend is saved!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Edv1819 on March 31, 2012, 11:31:35 am
Thank you slink for the values
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Blaises on March 31, 2012, 12:18:40 pm
I think I found the layout for Linux.  It's my first time finding the offsets for DF so let me know if it works or not:

[info]
checksum=0x61b4fa72
version_name=v0.34.07
complete=true

[addresses]
translation_vector=0x9653ee0
language_vector=0x09653ec8
creature_vector=0x09612b8c
dwarf_race_index=0x095fa500
squad_vector=0x9650a94
current_year=0x095f8000
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on March 31, 2012, 12:31:47 pm
much thanks to Thuvian, we brainstormed a way to not have to use frequency distributions, now we can get exact % by taking (instance-mean)/range = a perfect of ~-50%/~+50%, which will also work for skewed distributions!  the distribution is the exact distribution of the sample!  no guessing with frequency distributions!

Sorry, that was a bit difficult to comprehend. Is "range" relative to the population or the absolute range of the aspects? What's "a perfect of ~-50%/~+50%" supposed to mean?

It could go either way, I'm going to calculate it from the population (which I know some of you guys hate).  For two reasons.

One is only traits are static

skills and attributes change, attributes are trained by skills, and vice versa, and player strategy can result in different ranges for different players.

This new approach should account for skew bias (without the need for fancy distribution frequencies which are not as accurate anyways).

And instead of ~-50%/~+50%, I'm gonna calculate a 0-50% and a 50-100%, 0 representing population minimum, and 50% representing median, and 100% representing population max.

Lastly,
Skills will now be based on a skill (non 0) median.

The same concept can be applied using averages.  However, I feel median's are more appropriate for "skewed" data.

Perfect meant that if you added the - % to the + % (if they were absolute values), they would equal 100%.  but... I decided that's not good, even though a max may be 53% above average, that 3% will bias that scale towards combining it with other attributes... So I scaled them down from median to max and median to min by dividing by median-instance by (median-min) and (max-median)

Update:

What I could do Dreiche2,

Is use the median from the wiki (or mean), and then take the min/max I have already for the various stat's (as taken from a sample of 3300 dwarves) and increase/decrease them by 10% for error, and that should be good.  There you go, everyone's happy.  Min's/max's/median's/mean's are all static.  I would still let skills be determined dynamically, but attributes/traits could use a static/means setup.  I would need to collect some data on traits though.

I was considering modifying the formula to say that anything between the median/mean was 50% but I'm not really all for that, but it would bridge the gap between median/mean.

Currently the min's max's I have are:
Code: [Select]
          -                +       ++
Min's   146   198    444     695
Max's  1595   2108   2250  2537

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: hello_asdf on March 31, 2012, 04:17:57 pm
I think I found the layout for Linux.  It's my first time finding the offsets for DF so let me know if it works or not:

[info]
checksum=0x61b4fa72
version_name=v0.34.07
complete=true

[addresses]
translation_vector=0x9653ee0
language_vector=0x09653ec8
creature_vector=0x09612b8c
dwarf_race_index=0x095fa500
squad_vector=0x9650a94
current_year=0x095f8000

Thank you!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: daftfad on March 31, 2012, 09:09:59 pm
I'm on linux 64-bit - these don't work. Can't connect.

I think I found the layout for Linux.  It's my first time finding the offsets for DF so let me know if it works or not:

[info]
checksum=0x61b4fa72
version_name=v0.34.07
complete=true

[addresses]
translation_vector=0x9653ee0
language_vector=0x09653ec8
creature_vector=0x09612b8c
dwarf_race_index=0x095fa500
squad_vector=0x9650a94
current_year=0x095f8000
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Blaises on March 31, 2012, 10:24:15 pm
Hmm, are you playing DF in graphics mode or are you playing with the original ascii?

I am on 64-bit Arch Linux, so unless there's a difference in the version of the builds we're using I may have to do some extra digging to figure out why it can't connect.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: daftfad on March 31, 2012, 10:57:25 pm
Ascii. Vanilla DT 0.6.12

Hmm, are you playing DF in graphics mode or are you playing with the original ascii?

I am on 64-bit Arch Linux, so unless there's a difference in the version of the builds we're using I may have to do some extra digging to figure out why it can't connect.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: cousac on April 01, 2012, 12:42:58 am
I have 64bit openSUSE and worked perfectly...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 01, 2012, 06:00:26 am
Current Job: Drinking Blood(223)

Not exactly hidden well? :D

Edit: I'll add that DT shows 125 people in my fort, in game 124. I'm guessing this guy up here ^ is one of those roaming vamps that pops in for a quick suck as i can't find him in my units list at all?

Edit 2: nm the guy is my mayor just with a different name. In game he's even showing up as "mayor vampire" and he's currently sucking one of my archer's dry.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Blaises on April 01, 2012, 07:42:48 am
Does DT mention the checksum when you try to connect, or does it just not show anything?

You may wish to check and see if you added in the rest of the memory layout from the last version entirely.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: starvingpoet on April 01, 2012, 08:48:52 am
I just did a search and nothing came up, but using the 34.07 graphics offests, I'm having some ghosts show up as living dwarves in DF.  Not too big of a deal now that slabbing has been fixed (Best fix ever); just a heads up.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Gurgle on April 01, 2012, 11:37:14 am
Is it just me or is there still something not-quite-right with the 34.07 Windows offsets?
I used DT 0.7 (the March 15th version), and applied Slink's offsets.
Most things are OK, but not all.
DT reports all my dwarves having -1 agility, strength between 1 and 2, they all have the age of the world (even babies).
Digging deeper, the attributes all seem screwy: a dwarf in DF described as 'strong, great kinesthetic sense, iron weel, great feel for surrounding space and good feel for social relationships and poor focus' is described in DT as 'unquestionably weak, totally clumsy, basically unbreakable, indefatigable, possed of amazing recup powers, almost never sick'. Yes, I triple-checked it's the same dwarf. The traits are all ok and match what DF says.
All errors seem to be with data that DT0.7 shows but DT 0.6.12 does not show such as age and some attributes.
Additionally, Vampires are not highlighted correctly.
Tested with IronHand and Phoebus (although I wouldn't think this matters). Tested with both pre-0.7 worlds and newly created ones.
Any thoughts?
 
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Gurgle on April 01, 2012, 12:35:49 pm
Well, knowing nothing about how DT works I sniffed around a bit, and through a lot of trial-and-error discovered that some of the offsets are indeed wrong.
Setting
physical_attrs=0x03FC
works wonders on those physical attributes on my build. Anyone else have the same symptoms? Does this help on your setup?
I'm off to try the others and crunch some aspirin.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: MonkeyHead on April 01, 2012, 12:51:48 pm
Slink's offsets are for the official DwarfEngineer build, not the offshots made by others...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on April 01, 2012, 02:13:03 pm
I was doing a scaled %, until I realized how the bin's work for attributes, I'm hoping to use these as a basis for how to calculate % for attributes...

The solution for skill that I hope to code is to get an average or median of dwarf's excluding all 0 skilled dwarf's, this will give a proper % to dwarf's in relation to other dwarf's with skills.  Rather than a dwarf with 1 exp in a skill suddenly getting a 50% rating.

Traits... I still need to collect data on, I don't know how the distributions of traits works yet (hmm, maybe I'll check the wiki).

UPDATE: Their r bins for traits!

Spoiler (click to show/hide)


-    0 Physical    0 Mental    +    ++    %
<150=    <200=    <200=    <450=    <700=    Below 0 %
150=    200=    200=    450=    700=    0.00%
600=    700=    800=    950=    1200=    16.67%
800=    900=    900=    1150=    1400=    33.33%
900=    1000=    1000=    1250=    1500=    50.00%
1000=    1100=    1100=    1350=    1600=    66.67%
1100=    1300=    1300=    1550=    1800=    83.33%
1500=    2000=    2000=    2250=    2500=    100.00%
>1500=    >2000=    >2000=    >2250=    >2500=    Above 100%

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Anathema on April 01, 2012, 05:47:13 pm
I posted a complete Dwarf Therapist updated to 34.07 (http://dffd.wimbli.com/file.php?id=6064) to DFFD, using the 34.07 .ini slink posted. Just for the convenience of anyone that doesn't want to dig through several pages of posts about statistical distributions in order to find that .ini and edit it in manually .. people are lazy, ya know :P

The license seems to allow me to do this, but let me know if any of you (i.e. those actually involved in developing this version of DT including its config .ini's) have any complaints.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: thistleknot on April 01, 2012, 09:57:34 pm
Here's some new code that can be tweaked to work inside Dwarf Therapist script editor (this code should run, I haven't tested it though) that I'm proposing to Splinterz for inclusion in dt v10, it uses trait and attribute bins to calculate % rather than a normalcdf function.

Spoiler (click to show/hide)

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Rybec on April 01, 2012, 10:52:23 pm
Updated v0.34.07_graphics.ini for Splinterz's branch v9.
Got lucky, the offsets from .06 seem to still work. Be warned, on my end (win x64, DT9), the physical attribute offset from DF.06 DOES work correctly, whereas the one posted by Gurgle causes me to have the problems he was describing. Maybe this will work for you, maybe not.
Everything seems fully functional so far, but I've only just embarked.

EDIT:Current Job fixed and confirmed working.

Code: [Select]
[info]
checksum=0x4f7592fe
version_name=v0.34.07 (graphics)
complete=true

[addresses]
translation_vector=0x0182f670
language_vector=0x00182f650
creature_vector=0x017eb758
dwarf_race_index=0x01617ebc
squad_vector=0x01829a58
current_year=0x0101e1f0

[offsets]
word_table=0x0000003c
string_buffer_offset=0x0000

[word_offsets]
base=0x0000
noun_singular=0x001C
noun_plural=0x0038
adjective=0x0054
verb=0x008C
present_simple_verb=0x00A8
past_simple_verb=0x00C4
past_participle_verb=0x00E0
present_participle_verb=0x00FC

[dwarf_offsets]
first_name=0x0000
nick_name=0x001C
last_name=0x0038
custom_profession=0x006C
profession=0x0088
race=0x008C
flags1=0x00E0
flags2=0x00E4
flags3=0x00e8
sex=0x00F8
mood=0x214
caste=0x00f8
id=0x00FC
recheck_equipment=0x01C0
birth_year=0x0240
current_job=0x0320
physical_attrs=0x3F8
turn_count=0x067c
states=0x06D0
souls=0x0778
likes=0x07B4
labors=0x07A0
squad_ref_id=0x08c0
happiness=0x0840
curse=0x5b8

[soul_details]
skills=0x0200
traits=0x0224
mental_attrs=0x0098

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x003C
members=0x0088

[position_offsets]
token=0x0000
flags=0x0020
general_name_singular=0x00E8
general_name_plural=0x0104
male_name_singular=0x0158
male_name_plural=0x0174
female_name_singluar=0x0120
female_name_plural=0x013C
custom_color_red=0x0382
custom_color_green=0x0380


[valid_flags_2]
size=0

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000
8\name=a merchant escort
8\value=0x00000080
9\name="Dead, Jim."
9\value=0x00000002

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

[invalid_flags_3]
size=1
1\name=a ghost
1\value=0x00001000
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: kingubu on April 02, 2012, 06:58:54 am
I think I found the layout for Linux.  It's my first time finding the offsets for DF so let me know if it works or not:

[info]
checksum=0x61b4fa72
version_name=v0.34.07
complete=true

[addresses]
translation_vector=0x9653ee0
language_vector=0x09653ec8
creature_vector=0x09612b8c
dwarf_race_index=0x095fa500
squad_vector=0x9650a94
current_year=0x095f8000

Works like a charm, thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 02, 2012, 07:04:41 am
whew, seems a lot has gone on over the weekend! as coincidence would have it, i have also been moving over this weekend so i haven't been able to keep up with the new layouts but i'll get around to it as soon as i can for my branched build.

for those who have been wondering where to look for updates/changes on the different branches you can either check the dwarf therapist clones (http://code.google.com/p/dwarftherapist/source/clones), or if you're specifically looking for my branch, i keep a running change log on the main page here. (http://code.google.com/r/splintermind-attributes/)

thanks again to those finding and posting the offsets  :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 02, 2012, 10:44:35 am
The offsets for your version are a bit iffy still, phys attributes not working for both those posted previously, and for some reason i'm getting merchants listed as being mine and i can change their jobs etc ;p equipment_recheck is another query as i've seen several different offsets for it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vhappylurker on April 02, 2012, 11:37:26 am
Eh, I hate to sound like a newbie, but does anyone know how to use the "auto-update"? Or at least have a memory lay-out for 34.06?

I seriously cannot figure this out.


Never mind, I'm an idiot.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: narhiril on April 02, 2012, 11:47:58 am
The offsets for your version are a bit iffy still, phys attributes not working for both those posted previously, and for some reason i'm getting merchants listed as being mine and i can change their jobs etc ;p equipment_recheck is another query as i've seen several different offsets for it.

[ETHIC:ENLIST_MERCHANTS:ACCEPTABLE]
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Quietust on April 02, 2012, 11:52:02 am
The offsets for your version are a bit iffy still, phys attributes not working for both those posted previously, and for some reason i'm getting merchants listed as being mine and i can change their jobs etc ;p equipment_recheck is another query as i've seen several different offsets for it.

[ETHIC:ENLIST_MERCHANTS:ACCEPTABLE]
Captain Mayday (the overseer of Nist Akath) certainly thought so.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Felgard on April 02, 2012, 12:00:30 pm
hello FIRST POST for me!

well lets forget that

anyways i was using the ini that rybec posted and noticed that assigning mining to the dorfs did nothing (all other jobs worked fine) and did a little experiment with the "recheck_equipment" line and changed the offset to "0x01D4" (same as .06) and now my dorfs finally realizes that they should get their equipment.

before they got the job assigned but did not pick up their equipment.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: sekullbe on April 02, 2012, 12:26:18 pm
I think I found the layout for Linux.  It's my first time finding the offsets for DF so let me know if it works or not:

 I'm running 07 from the Linux Phoebus package on 64 bit Ubuntu 10.04. DT is installed from .deb.

I have only the .05 DT .ini, so I replaced the top of the file with these values. That loaded some info about the dwarves but not everything- looks like their jobs but not skills. (I didn't check this carefully though).  I had the same problem on Windows, probably because I missed changes in .06.  Slink's .07 file fixed it there. So I tried that here, with the Linux values as the first config stanzas. DT now fails to connect at all- says DF isn't running. I've probably missed something- should I force an update through .06 maybe to get the correct file? I haven't seen a full linux .07 ini here.

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Gurgle on April 02, 2012, 12:46:10 pm
Following Rybec's solution worked wonders for me, all problems gone.
Thanks!

Updated v0.34.07_graphics.ini for Splinterz's branch v9.
Got lucky, the offsets from .06 seem to still work. Be warned, on my end (win x64, DT9), the physical attribute offset from DF.06 DOES work correctly, whereas the one posted by Gurgle causes me to have the problems he was describing. Maybe this will work for you, maybe not.
Everything seems fully functional so far, but I've only just embarked.

EDIT:Current Job fixed and confirmed working.


Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 02, 2012, 02:03:09 pm
Unsure why other people's phys attribs work and mine don't. I even did a fresh install of DF .07 and DT, with and without dfhack.

I am using XP but that shouldn't matter at all as i rarely boot into win7 and never had any issue before.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: LoSboccacc on April 02, 2012, 02:17:35 pm
I've two dwarves not listed in therapists. Vampires?

Need the save?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vityav on April 02, 2012, 02:34:08 pm
I think I found the layout for Linux.  It's my first time finding the offsets for DF so let me know if it works or not:
Thanks! Adding these to DwarfEngineer's 36.06 offsets and my splinterz's 36.06 offsets seems to have it all back up and running for me.

For those looking for the entirety of a splinterz compatible linux ini, this should work (haven't had any curses to test yet, but works for physical and mental attributes):

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Kaos on April 02, 2012, 02:37:01 pm
Bug Report: DF 34.06 with DT 34.06 (autoupdate), I embarked near a tower, necros sent an ambush, at least 1 human necro and 2 necro dwarves, the necro dwarves show up on DT even thought they are hostile and cloaked in ambush mode, even after I got one of the necro dwarves caged in one of my traps he still shows in DT  as another dwarf assigned to my last wave, which consists of the babies born in my fortress since the last migration wave.

They also show in DT when discovered and not cloaked.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: asmodai on April 02, 2012, 05:43:05 pm
Rybec's don't work for me, happiness is wrong, physical attributes are wrong, skills are wrong, jobs are wrong, ergo a lot needs to be changed. Not to mention every dwarf is in a separate wave.

I can confirm the following at least:

Code: [Select]
[dwarf_offsets]
first_name=0x0000
nick_name=0x001C
last_name=0x0038
custom_profession=0x006C
profession=0x0088
sex=0x00F8

Can somebody explain to me why the last_name works even though the memory scan's read of std::string of address+offset for last name gives me nothing?

Also, it seems as if sex is a short and not an int, is that right?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vityav on April 02, 2012, 06:32:03 pm
Can somebody explain to me why the last_name works even though the memory scan's read of std::string of address+offset for last name gives me nothing?

Also, it seems as if sex is a short and not an int, is that right?

If you look through the src/dwarf.cpp file, it has pretty straightforward functions for reading everything to give you a clue as to what's happening. Best I can tell though, a dwarf can have many names (think legendary dwarves), so the last name may be in a word_chunk anywhere from the start of the last name offset to 0x18 past it (read_last_name() to read_chunked_name() ).

Sex seems to just be a boolean byte (read_sex() ).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: zach123b on April 02, 2012, 08:01:09 pm
i can't seem to get stats/physical attributes to be shown properly
i copied the stuff from an earlier post
Spoiler (click to show/hide)
with a newly copied v0.34.07_legacy.ini from the last version of .06
has anyone gotten stats/physical attributes to be shown properly? i use to be able to see physical attributes in the combat tab but now i don't see them, never checked the show details page
i tried finding it on the wiki for this but i gave up after trying the scan memory stuff which i only got 3 vectors and i tried searching this topic but got lost and confused ending with frustration :s

edit: forgot to say i'm running windows 7, if it matters
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Darthlawsuit on April 02, 2012, 09:33:49 pm
"I cannot find the PEB address of DF"

Keep getting that
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: kingubu on April 02, 2012, 10:47:54 pm
This is my full v0.34.07.ini for 32bit linux text mode that works for me.  In case anyone is still trying to assemble the pieces.
Goes in /usr/share/dwarftherapist/etc/memory_layouts/linux/, at least on Ubuntu 11.10

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Meph on April 03, 2012, 12:41:25 am
@splinterz (or anyone else that does know):

I do bundle your version in my mod, since it shows castes as well. This feature is very dear to my users, so I wanted to ask if an updated version for 34.07 with a caste tab does exist. I found a 34.06 version by you, DF Therapist 9, and will try this out for now. :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: asmodai on April 03, 2012, 01:02:08 am
If you look through the src/dwarf.cpp file, it has pretty straightforward functions for reading everything to give you a clue as to what's happening. Best I can tell though, a dwarf can have many names (think legendary dwarves), so the last name may be in a word_chunk anywhere from the start of the last name offset to 0x18 past it (read_last_name() to read_chunked_name() ).
Silly me, totally did no think of using the DT source as inspiration for an idea about the memory model. Thanks for reminding me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 03, 2012, 06:01:41 am
i've added the 34.07 layout to my branched build. download the packaged version here. (http://www.mediafire.com/?fkhbjvkigo4kew8)

below is the raw text if you're comfortable updating manually.


as always if you find any issues let me know and i'll update it asap.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 03, 2012, 07:56:00 am
i've added the 34.07 layout to my branched build. download the packaged version here. (http://www.mediafire.com/?fkhbjvkigo4kew8)

below is the raw text if you're comfortable updating manually.


as always if you find any issues let me know and i'll update it asap.

Still no phys here :/ shows agil as -1 and str as 1 on every dwarf.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 03, 2012, 08:33:28 am
i've added the 34.07 layout to my branched build. download the packaged version here. (http://www.mediafire.com/?fkhbjvkigo4kew8)

below is the raw text if you're comfortable updating manually.


as always if you find any issues let me know and i'll update it asap.

Still no phys here :/ shows agil as -1 and str as 1 on every dwarf.

just tested again with .06 and .07 and all is fine. you must have a version/layout mixup
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Skasi on April 03, 2012, 09:30:47 am
Yay, thanks splinterz! Love your DT9 version. Layout works fine here.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Weazal on April 03, 2012, 09:58:37 am
Had a conclusion been come to regarding the calculation method for roles?

Also, I'm curious as to whether we'll be able to set up viewing whether a dwarf is,
A.) a good fit for the role looking at every dwarf in your fortress currently? and
B.) is this dwarf a good fit for a role, universally? (A mediocre soldier may still be the best choice out of many other terrible soldiers. I want to know if they're good for the role altogether)

If I really need the job filled, the best dwarf in the fort is good to know.
but if it's something I can wait on, I'd like to be checking if they're a good match for the job besides being the best choice amongst my horde.

Hope that makes sense.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 03, 2012, 12:00:04 pm
i've added the 34.07 layout to my branched build. download the packaged version here. (http://www.mediafire.com/?fkhbjvkigo4kew8)

below is the raw text if you're comfortable updating manually.


as always if you find any issues let me know and i'll update it asap.

Still no phys here :/ shows agil as -1 and str as 1 on every dwarf.

just tested again with .06 and .07 and all is fine. you must have a version/layout mixup

Yeah it must be something odd going on. It's defo your v9 version but the one thing different is i'm trying Ironhand's tileset pre-packaged distribution. But i've tried a fresh install of that and DT(even wiping out the ini in DnS') I'll have to grab your 9.1 and see how it goes. Maybe i'll just grab the LNP and see how that goes.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Rybec on April 03, 2012, 12:15:32 pm
Also, I'm curious as to whether we'll be able to set up viewing whether a dwarf is,
A.) a good fit for the role looking at every dwarf in your fortress currently? and
B.) is this dwarf a good fit for a role, universally? (A mediocre soldier may still be the best choice out of many other terrible soldiers. I want to know if they're good for the role altogether)

Calculation accuracy aside, this is already fairly easy to do if you set your grid display to be numbers. If you click on a role name, it'll re-order your dorfs to put either the best, or on a second click, worst dwarves at the top. You can immediately and clearly find who is the best suited out of everyone in the fort.

I've also cobbled together a gridview that puts the roles next to their labors for ease of assingment. May as well throw it up in case anyone wants it.
It's based off a reordered labor list that is also included. I made a reordered view to make common tasks easier on my laptop, which is limited to 1024x768 and therefore doesn't fit all the labors at once even if I shrink the grid size. I removed labors from the combination view that don't have an associated role yet (e.g. hauling, cleaning, bowyer)

http://dl.dropbox.com/u/9066646/laborrolesReordered.dtg
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Maklak on April 03, 2012, 01:57:22 pm
I installed the Linux version with the following commands:

$ sudo apt-get install mercurial
$ hg clone https://code.google.com/p/dwarftherapist/ (wait for a bit, it displays blinking cursor)

$ cd dwarftherapist/
$ qmake
$ make (this takes a while)
$ sudo make install

I then added ini for 34.07 in /usr/share/dwarftherapist/etc/memory_layouts/linux/ (I took the contents from this thread. To add the file I used (because without sudo access is denied on saving file)
$ sudo gedit

Specs: Linux Mint 9, 32 bit, Pentium 4, 1 GB RAM, Radeon 9700 Pro with 128 MB RAM.
It runs and changes jobs in 0.34.07
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 03, 2012, 02:39:26 pm
i've added the 34.07 layout to my branched build. download the packaged version here. (http://www.mediafire.com/?fkhbjvkigo4kew8)

below is the raw text if you're comfortable updating manually.


as always if you find any issues let me know and i'll update it asap.

Still no phys here :/ shows agil as -1 and str as 1 on every dwarf.

just tested again with .06 and .07 and all is fine. you must have a version/layout mixup

Found the problem...i had copies of the 34.07 ini's which i was testing out various offsets with, and DT was reading everything in that directory, and obviously came across the older versions first/last and used those in preference to the file just named v0.34.07_graphics.ini, ie it was using "Copy of v0.34.07_graphics.ini" instead of the main file ;p so a tiny lil bug there.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: LoSboccacc on April 03, 2012, 03:03:47 pm
As a layout user I've a new smallish pet peeve: please try to state the os your layout targets, it's getting very hard to find the right one using the search function.

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: asmodai on April 03, 2012, 03:23:52 pm
i've added the 34.07 layout to my branched build.

Works for me man. Thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Werra on April 03, 2012, 06:27:28 pm

Found the problem...i had copies of the 34.07 ini's which i was testing out various offsets with, and DT was reading everything in that directory, and obviously came across the older versions first/last and used those in preference to the file just named v0.34.07_graphics.ini, ie it was using "Copy of v0.34.07_graphics.ini" instead of the main file ;p so a tiny lil bug there.

Aaaagh. I couldn't work out what was wrong with mine, and was just suffering in silence until someone smarter came up with a new clean release... I always make copies before changing anything, and couldn;t work out what I had done wrong  :'(

Thanks Intrinsic
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: hello_asdf on April 03, 2012, 07:21:28 pm
@splinterz

Hey, would you mind uploading the source code for your branch to github or something?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vityav on April 03, 2012, 09:21:44 pm
@splinterz

Hey, would you mind uploading the source code for your branch to github or something?
He has been here:
http://code.google.com/r/splintermind-attributes/source/checkout
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Alkhemia on April 03, 2012, 10:47:45 pm
hmmm this is odd last night when I played it work fine but now it says it does not work with .34.07.  ???

Edit: Derp I downloaded a new version after I went to bed I was playing 34.06, ha-ha my bad ignore me and my stupidity.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 04, 2012, 02:43:54 am

Found the problem...i had copies of the 34.07 ini's which i was testing out various offsets with, and DT was reading everything in that directory, and obviously came across the older versions first/last and used those in preference to the file just named v0.34.07_graphics.ini, ie it was using "Copy of v0.34.07_graphics.ini" instead of the main file ;p so a tiny lil bug there.

Aaaagh. I couldn't work out what was wrong with mine, and was just suffering in silence until someone smarter came up with a new clean release... I always make copies before changing anything, and couldn;t work out what I had done wrong  :'(

Thanks Intrinsic

Yep same here, I always back something up i'm fiddling with incase i break it :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Mr.Elendig on April 04, 2012, 07:56:35 am
As a layout user I've a new smallish pet peeve: please try to state the os your layout targets, it's getting very hard to find the right one using the search function.
+1

It is so hard to find a working layout for gnu/linux now because no one says what os their layout is for. Having to compare the hash as search is troublesome.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Kaos on April 04, 2012, 07:56:58 am
Feature request: since we already are able to read the squad names and tell which dwarves are assigned to each squad, why not allow to edit the squad names? or maybe let us select from the possible pool of names so we can build up our own names by choosing the elements instead of getting lucky with the RNG.

Also allowing to move dwarves from one squad to the other and an indication of which one is the captain of the squad.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Daenyth on April 04, 2012, 08:52:34 am
Feature request: Can we get the ability to add dwarves to existing burrows? I'd really like that for vampire control
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Nix725 on April 04, 2012, 11:51:50 am
Can anyone please walk me through how to get DT to work with DF v34.07 on OSX? I am new to this and need some simple instructions.

Thank you!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: i2amroy on April 04, 2012, 01:20:58 pm
Steps for OSX
1) Download latest version of DT.
2)Ctrl+click on DT and choose "Show package contents"
3)Go to Contents/MacOS/etc/memory_layouts/osx
4)Open up text edit
5)Paste this into a new text document
Code: [Select]
[info]
checksum=0x20d42b0f
version_name=v0.34.07
complete=true

[addresses]
translation_vector=0x015bf940
language_vector=0x015bf928
creature_vector=0x0157e5ec
dwarf_race_index=0x01565f60
squad_vector=0x015bc4f4
current_year=0x01563a20

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0158
current_job=0x0284
turn_count=0x052b
states=0x0
souls=0x05f8
labors=0x0614
happiness=0x06a4
squad_ref_id=0x0708

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
6)Save the file and ctrl+click on it and choose "Get info"
7)Change the "Name & Extension" field to "v0.34.07.ini". It might ask you to confirm, choose yes if it does.
8)Move the file into Contents/MacOS/etc/memory_layouts/osx
9)Close the window and open up DT.

On a questioning side, does the vanilla DT show vampires? I've been having some dwarves show up recently that don't appear in DT, but they still get hungry so I'm not sure if it's just DT glitching out or not. They also all seem to show up with mostly yellow body parts and at least one body part missing, be it an ear or a tooth.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Kogut on April 04, 2012, 01:56:37 pm
Feature request: Can we get the ability to add dwarves to existing burrows?
A great idea!
I'd really like that for vampire control
Rather poor idea, vampire will ignore burrows on feeding.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vityav on April 04, 2012, 03:34:55 pm
Rather poor idea, vampire will ignore burrows on feeding.
They'll comply for long enough to lock them in, raise the only accessible bridge, or violently murder them, though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: khearn on April 04, 2012, 03:37:03 pm
Rather poor idea, vampire will ignore burrows on feeding.
They'll comply for long enough to lock them in, raise the only accessible bridge, or violently murder them, though.
Just create a new military squad and assign the vampire(s) to it. Then station the squad wherever you like.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Maklak on April 04, 2012, 06:37:57 pm
Feature request: Dump a png file with whatever is currently displayed in the current Grid Layout. We can make nice pictures for Let's plays, but it takes some editing with a graphic program. This feature would make that instantaneous.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Daenyth on April 04, 2012, 06:56:25 pm
Feature request: Can we get the ability to add dwarves to existing burrows?
A great idea!
I'd really like that for vampire control
Rather poor idea, vampire will ignore burrows on feeding.

I'm aware of that, but as soon as migrants come, I assign the whole wave to a room that I can lock. The vampires aren't hungry when they enter the map, and mortal dwarves show "Thirsty" before the vampires strike.

Regardless, the burrow interface is a giant clusterfuck, so having DT manage it would be better anyway.

Next feature request: Have a "group by" dropdown menu entry for "Highest moodable skill". Would be useful when trying to make sure my peasants end up mooding candy cane sticks rather than another ☼Lignite Left Sock☼
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: wzam on April 04, 2012, 08:20:41 pm
Steps for OSX
1) Download latest version of DT.
2)Ctrl+click on DT and choose "Show package contents"
3)Go to Contents/MacOS/etc/memory_layouts/osx
4)Open up text edit
5)Paste this into a new text document
Code: [Select]
[info]
checksum=0x20d42b0f
version_name=v0.34.07
complete=true

[addresses]
translation_vector=0x015bf940
language_vector=0x015bf928
creature_vector=0x0157e5ec
dwarf_race_index=0x01565f60
squad_vector=0x015bc4f4
current_year=0x01563a20

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0158
current_job=0x0284
turn_count=0x052b
states=0x0
souls=0x05f8
labors=0x0614
happiness=0x06a4
squad_ref_id=0x0708

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
6)Save the file and ctrl+click on it and choose "Get info"
7)Change the "Name & Extension" field to "v0.34.07.ini". It might ask you to confirm, choose yes if it does.
8)Move the file into Contents/MacOS/etc/memory_layouts/osx
9)Close the window and open up DT.

Oh my god, thank you!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: rethnor on April 05, 2012, 12:38:57 am
not sure if this is the right place to ask this. I compiled DT on Linux following the instructions in the comments and it worked great. DT appears to work correctly except for one very important aspect enabling jobs. if I click on a dwarfs job it simply selects the dwarf in the list, as if I clicked on their name. if I right click on a job it will show the option the enable the whole category for that dwarf.

Has any one ran into this issue before?I gave a quick search through the bug tracker but couldn't quite find the same issue.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 05, 2012, 12:55:31 am
Feature request: Dump a png file with whatever is currently displayed in the current Grid Layout. We can make nice pictures for Let's plays, but it takes some editing with a graphic program. This feature would make that instantaneous.

Should be easy as pie:

With DT active press ALT+Print screen
Switch to your program of choice(use IrfanView, as it's the best! ;p ) press CTRL+V
Press CTRL+S and give it a name and where you want to save it, choosing PNG as the filetype.
Profit!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Maklak on April 05, 2012, 04:50:34 am
Next feature request: Have a "group by" dropdown menu entry for "Highest moodable skill". Would be useful when trying to make sure my peasants end up mooding candy cane sticks rather than another ☼Lignite Left Sock☼

How about making a custom grid layout with "moodable skills", then sorting it by "sum of skills", would this work?

Feature request: Dump a png file with whatever is currently displayed in the current Grid Layout. We can make nice pictures for Let's plays, but it takes some editing with a graphic program. This feature would make that instantaneous.

Should be easy as pie:

With DT active press ALT+Print screen
Switch to your program of choice(use IrfanView, as it's the best! ;p ) press CTRL+V
Press CTRL+S and give it a name and where you want to save it, choosing PNG as the filetype.
Profit!

Your method doesn't work, and you offend me by suggesting I didn't know about making several print screens and glueing them together in a graphics program. About the only difference <ALT+Print screen> makes, is that under Gnome I get a dump of current program window, and under Windows XP the whole screen (which is the same as using print screen). My feature request was about not needing to edit several print screens to get a nice dump like this:

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 05, 2012, 05:44:47 am
@Maklak - with gnome i think you can do things similar to vista's snipping tool via gnome-screenshot --interactive, otherwise perhaps try shutter?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 05, 2012, 06:12:52 am
Next feature request: Have a "group by" dropdown menu entry for "Highest moodable skill". Would be useful when trying to make sure my peasants end up mooding candy cane sticks rather than another ☼Lignite Left Sock☼

How about making a custom grid layout with "moodable skills", then sorting it by "sum of skills", would this work?

Feature request: Dump a png file with whatever is currently displayed in the current Grid Layout. We can make nice pictures for Let's plays, but it takes some editing with a graphic program. This feature would make that instantaneous.

Should be easy as pie:

With DT active press ALT+Print screen
Switch to your program of choice(use IrfanView, as it's the best! ;p ) press CTRL+V
Press CTRL+S and give it a name and where you want to save it, choosing PNG as the filetype.
Profit!

Your method doesn't work, and you offend me by suggesting I didn't know about making several print screens and glueing them together in a graphics program. About the only difference <ALT+Print screen> makes, is that under Gnome I get a dump of current program window, and under Windows XP the whole screen (which is the same as using print screen). My feature request was about not needing to edit several print screens to get a nice dump like this:


Yes you'll still need to stick them together, but alt+print screen certainly does only capture the currently active window but yes only under windows and not Linux.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Maklak on April 05, 2012, 06:40:20 am
@Maklak - with gnome i think you can do things similar to vista's snipping tool via gnome-screenshot --interactive, otherwise perhaps try shutter?

I don't care about snipping tool, or better ways to capture screen. It is just as easy to
1) <(Alt +) Print Screen> (which works under Gnome, but works as normal Print Screen under Windows),
2) run GIMP,
3) new image (name: Screens),
4) paste,
5) new layer from paste,
6) resize image to layers,
7) rectangular select whatever I need,
8) new image (name: DT_dump)
9) paste
a) new layer from paste

After that I move what is seen in DT, take another screenshot, and paste is as a new layer on top of 'Screens', cut what I need, and paste it to DT_dump, while resizing DT_dump image to fit layers, and zooming 8 times to align pixels prefectly. I repeat this several times, as necessary, but it is tedious, even when I have access to 1920x1200 screen.

So no, to do this faster I don't need a better Print Screen, or better cut tool. What I need is either Dwaft Therapist feature for dumping image from current grid layout, or a desktop with resolution approaching 2500 x 3000 pixels, where I could maximize DT and see everything at once.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Daenyth on April 05, 2012, 10:32:06 am
Next feature request: Have a "group by" dropdown menu entry for "Highest moodable skill". Would be useful when trying to make sure my peasants end up mooding candy cane sticks rather than another ☼Lignite Left Sock☼

How about making a custom grid layout with "moodable skills", then sorting it by "sum of skills", would this work?


How would I go about doing that? I haven't used the custom grids ever. Is there any doc/howto on using them?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Tres on April 05, 2012, 11:51:33 am
Hi,
seems I have a problem with DT, I'm using 34.07 DF version, I did update the .ini file etc. according to instructions written earlier, though somethings wrong: I can't see my dwarves' skills. All of my guys have zero experience in everything according to the grid. Seems that DT fails to read skill attributes.

Any idea how to fix this?

Update 1:
Oh, and it seems that moods aren't right either.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: drh on April 05, 2012, 11:54:09 am
Anyone have 34.07 Linux memory layouts for the splinterz build?

Quote
As a layout user I've a new smallish pet peeve: please try to state the os your layout targets, it's getting very hard to find the right one using the search function.

This. Sadly it seems splinterz doesn't include Linux layouts in recent versions of the git tree. But I'm a diehard for this fork of DT. This alone is what's keeping me in 34.06.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 05, 2012, 12:01:45 pm
Anyone have 34.07 Linux memory layouts for the splinterz build?

Quote
As a layout user I've a new smallish pet peeve: please try to state the os your layout targets, it's getting very hard to find the right one using the search function.

This. Sadly it seems splinterz doesn't include Linux layouts in recent versions of the git tree. But I'm a diehard for this fork of DT. This alone is what's keeping me in 34.06.

sorry about that. i just don't feel i should be including linux/osx layouts if i can't test them.  :-\ if anyone wants to pm me layouts they know work i have no qualms bundling them in!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: 0x517A5D on April 05, 2012, 12:22:20 pm
What I need is [...] a desktop with resolution approaching 2500 x 3000 pixels, where I could maximize DT and see everything at once.

In Gnome, which uses X Windowing System, you should be able to create a virtual desktop of that size which your physical screen pans around via moving the mouse "off the screen".

You might be able to do it from this control panel:
http://library.gnome.org/users/gnome-help/stable/look-resolution.html.en (http://library.gnome.org/users/gnome-help/stable/look-resolution.html.en)

You might be able to mess around with xrandr:
http://www.thinkwiki.org/wiki/Xorg_RandR_1.2 (http://www.thinkwiki.org/wiki/Xorg_RandR_1.2)

Or you might have to manually use the --fb and --panning command-line options when X Windows starts.

As for this:

<(Alt +) Print Screen> (which works under Gnome, but works as normal Print Screen under Windows),

Alt-PrintScreen certainly does capture a single window under MS Windows.  It is definitely different than PrintScreen with no modifier key.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: khearn on April 05, 2012, 12:45:36 pm
When I originally saw Maklak's request for a grid dump, I also thought that he should just use printscreen. But after reading his explanations, I think I agree with him. It would be useful. Trying to paste a bunch of shots together would be a pain, and having to change one's virtual screen to whatever mammoth proportions would be needed is also a pain.

On the other hand, I don't think it's a very high priority compared to other features. It's not just tweaking existing functionality, it's adding something completely new. And it's not something the majority of the users will use. So Maklak, how are your coding skills? I'm sure if you submitted a patch to DwarfEngineer or splinters, they'd be happy to add it in.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vityav on April 05, 2012, 12:49:40 pm
Anyone have 34.07 Linux memory layouts for the splinterz build?

I posted my layouts that work with the splinterz release here:
http://www.bay12forums.com/smf/index.php?topic=66525.msg3153962#msg3153962

Like I said though, haven't tested curses in .07, but everything else I know works.

sorry about that. i just don't feel i should be including linux/osx layouts if i can't test them.  :-\ if anyone wants to pm me layouts they know work i have no qualms bundling them in!

I can send you mine for at least .05 to .07 if it helps. I've been using them in a local clone of your code, but could also make a github branch of it (if anybody wants a DT plugin for instantly invulnerable dwarves :P )
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: i2amroy on April 05, 2012, 12:58:44 pm
Hi,
seems I have a problem with DT, I'm using 34.07 DF version, I did update the .ini file etc. according to instructions written earlier, though somethings wrong: I can't see my dwarves' skills. All of my guys have zero experience in everything according to the grid. Seems that DT fails to read skill attributes.

Any idea how to fix this?

Update 1:
Oh, and it seems that moods aren't right either.
What OS are you running? If you are on mac then there is a bug where DT will sometimes not read new immigrant skill levels correctly. Just restart DT and it will fix that. If you aren't then I don't know what the problem is.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Tres on April 05, 2012, 01:16:21 pm
I'm running Win7. All boxes which should be indicating the skill in given profession are maximum in my case, ie. I can't figure which dwarf is good at what and assign him correctly.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: i2amroy on April 05, 2012, 01:33:05 pm
Have you updated your checksums? I'm not sure if the latest download has the right ones or not.

You can find the values here (http://www.bay12forums.com/smf/index.php?topic=66525.msg3146407#msg3146407) with pictures on how to do it here (http://www.bay12forums.com/smf/index.php?topic=66525.1680).
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Tres on April 05, 2012, 01:38:19 pm
Oh.

In fact I did, but I guess the values I input were for 34.06.

Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: LoSboccacc on April 05, 2012, 01:57:57 pm
Have you updated your checksums? I'm not sure if the latest download has the right ones or not.

You can find the values here (http://www.bay12forums.com/smf/index.php?topic=66525.msg3146407#msg3146407) with pictures on how to do it here (http://www.bay12forums.com/smf/index.php?topic=66525.1680).

Still no migration wave :(
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Anrock on April 05, 2012, 04:19:27 pm
I think i found a bug in DT regarding migration wave sorting.
i.e. migration wave of 10 arrives, in DT as one wave of 10 dwarfs, save-quit-load game, reread dwarfs in DT and that very wave of 10 appears as 4 separate waves of 3, 3, 3 and 1 dwarfs. Is that really a bug or i don't know something? OS is Gentoo linux x64, DT build from sources.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: asmodai on April 05, 2012, 06:04:39 pm
splinterz, I think there's one bug left at the moment. The social tab stays a dull grey, but when you hover over certain blocks you do get an on-hover which details the experience.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: kingubu on April 06, 2012, 01:27:01 am
I think i found a bug in DT regarding migration wave sorting.
i.e. migration wave of 10 arrives, in DT as one wave of 10 dwarfs, save-quit-load game, reread dwarfs in DT and that very wave of 10 appears as 4 separate waves of 3, 3, 3 and 1 dwarfs. Is that really a bug or i don't know something? OS is Gentoo linux x64, DT build from sources.

I'm getting the same effect Ubuntu 11.10 .deb x32.  Waves are splitting for some reason.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: notfood on April 06, 2012, 04:11:24 am
Same random splitting waves under Archlinux.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: walberg on April 06, 2012, 08:30:18 am
I think i found a bug in DT regarding migration wave sorting.
i.e. migration wave of 10 arrives, in DT as one wave of 10 dwarfs, save-quit-load game, reread dwarfs in DT and that very wave of 10 appears as 4 separate waves of 3, 3, 3 and 1 dwarfs. Is that really a bug or i don't know something? OS is Gentoo linux x64, DT build from sources.

For what it's worth, that seems to happen in the "official" release, as well, so it's probably not something that splinterz did...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Anrock on April 06, 2012, 10:57:30 am
@walberg, DT is "official" indeed, not splinterz.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vorpal+5 on April 07, 2012, 01:10:29 am
I have a bug to report. Some entities show in DF as pseudo-dwarves but are not. They almost never have names but sometime can, and all their stats are at -1 (or 0, anyway they show as red diamonds). I play in an evil biome, so this can be either ghosts or zombies.

I think it would be fairly easy to not display them, there is no Dorf who can be alive with all stats at -1 I believe (or perhaps one chance in 100 millions!), so if you see such creature, don't display it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 07, 2012, 04:48:16 am
I have a bug to report. Some entities show in DF as pseudo-dwarves but are not. They almost never have names but sometime can, and all their stats are at -1 (or 0, anyway they show as red diamonds). I play in an evil biome, so this can be either ghosts or zombies.

I think it would be fairly easy to not display them, there is no Dorf who can be alive with all stats at -1 I believe (or perhaps one chance in 100 millions!), so if you see such creature, don't display it.

if this is occurring in my branch i'd appreciate the save to take a more detailed look.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: iXen on April 07, 2012, 09:42:10 am
Steps for OSX
1) Download latest version of DT.
2)Ctrl+click on DT and choose "Show package contents"
3)Go to Contents/MacOS/etc/memory_layouts/osx
4)Open up text edit
5)Paste this into a new text document
Code: [Select]
[info]
checksum=0x20d42b0f
version_name=v0.34.07
complete=true

[addresses]
translation_vector=0x015bf940
language_vector=0x015bf928
creature_vector=0x0157e5ec
dwarf_race_index=0x01565f60
squad_vector=0x015bc4f4
current_year=0x01563a20

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0158
current_job=0x0284
turn_count=0x052b
states=0x0
souls=0x05f8
labors=0x0614
happiness=0x06a4
squad_ref_id=0x0708

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
6)Save the file and ctrl+click on it and choose "Get info"
7)Change the "Name & Extension" field to "v0.34.07.ini". It might ask you to confirm, choose yes if it does.
8)Move the file into Contents/MacOS/etc/memory_layouts/osx
9)Close the window and open up DT.

On a questioning side, does the vanilla DT show vampires? I've been having some dwarves show up recently that don't appear in DT, but they still get hungry so I'm not sure if it's just DT glitching out or not. They also all seem to show up with mostly yellow body parts and at least one body part missing, be it an ear or a tooth.

Thank you very much!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Wonderboygod on April 07, 2012, 12:22:51 pm
Hey, I'm having a problem using "Legends of Forlorn Realms" with Dwarf Therapist, I keep having the message "Dwarf Therapist cannot talk with this version of Dwarf Fortress" pop up.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: BinaryBeast1010011010 on April 07, 2012, 01:48:20 pm
I have the same problem running vanilla df last version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: i2amroy on April 07, 2012, 02:45:37 pm
What OS are you running, what error message do you get, and which version of DT do you have?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: boathouse2112 on April 07, 2012, 03:51:38 pm
I'm using the newest DF and newest DT with the LOFR IRONHAND version

I know the LOFR creator said it was compatible so i'm wondering if its ironhand's doing
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: BinaryBeast1010011010 on April 07, 2012, 04:07:04 pm
windows 7 and df last version
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: GavJ on April 07, 2012, 07:48:13 pm
06.12 is not auto-updating for me to 34.06 compatibility, thus I can't follow instructions for the 34.07 compatibility.  Just says that it cannot read DF and gives a huge list of files in a popout.  The files in the therapist folder only show graphics up to DF 34.02.

The "auto-update on startup" is checked in options.

OS is Windows 7.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Weaselcake on April 07, 2012, 08:01:05 pm
Waves passed the 10/12th wave seem to be broken. At least for me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: WaffleEggnog on April 07, 2012, 08:11:26 pm
Excuse me, sorry to be a complete idiot, but how do i manualy update the 34.06 version to work with 34.07, or atleast were i can find instructions on how to? Iv heard people talking about it, but im an idiot.

Again, im sorry if i seem like a total idiot, but i really am unable to play DF without it. Thanks, and please dont eat me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: ShinWalks on April 07, 2012, 08:20:44 pm
Excuse me, sorry to be a complete idiot, but how do i manualy update the 34.06 version to work with 34.07, or atleast were i can find instructions on how to? Iv heard people talking about it, but im an idiot.

Again, im sorry if i seem like a total idiot, but i really am unable to play DF without it. Thanks, and please dont eat me.

Earlier in this thread...

Follow the four steps in the image below
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Darthlawsuit on April 07, 2012, 08:30:35 pm
I'm using the newest DF and newest DT with the LOFR IRONHAND version

I know the LOFR creator said it was compatible so i'm wondering if its ironhand's doing
I dunno what LOFR is but I am running DF with the lazy noob pack and using ironhand's interface. Dwarf therapist will not work.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: i2amroy on April 07, 2012, 08:52:36 pm
Excuse me, sorry to be a complete idiot, but how do i manualy update the 34.06 version to work with 34.07, or atleast were i can find instructions on how to? Iv heard people talking about it, but im an idiot.

Again, im sorry if i seem like a total idiot, but i really am unable to play DF without it. Thanks, and please dont eat me.

Or if you are on OSX
Steps for OSX
1) Download latest version of DT.
2)Ctrl+click on DT and choose "Show package contents"
3)Go to Contents/MacOS/etc/memory_layouts/osx
4)Open up text edit
5)Paste this into a new text document
Code: [Select]
[info]
checksum=0x20d42b0f
version_name=v0.34.07
complete=true

[addresses]
translation_vector=0x015bf940
language_vector=0x015bf928
creature_vector=0x0157e5ec
dwarf_race_index=0x01565f60
squad_vector=0x015bc4f4
current_year=0x01563a20

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0158
current_job=0x0284
turn_count=0x052b
states=0x0
souls=0x05f8
labors=0x0614
happiness=0x06a4
squad_ref_id=0x0708

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x000C
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
6)Save the file and ctrl+click on it and choose "Get info"
7)Change the "Name & Extension" field to "v0.34.07.ini". It might ask you to confirm, choose yes if it does.
8)Move the file into Contents/MacOS/etc/memory_layouts/osx
9)Close the window and open up DT.
On a questioning side, does the vanilla DT show vampires? I've been having some dwarves show up recently that don't appear in DT, but they still get hungry so I'm not sure if it's just DT glitching out or not. They also all seem to show up with mostly yellow body parts and at least one body part missing, be it an ear or a tooth.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: BinaryBeast1010011010 on April 08, 2012, 04:20:57 am
Sorry but the four step method does not work, still get the same result

edit, I see why : I do not have 34.06, it stop at 34.02, where can I find the 34.06 file?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: BinaryBeast1010011010 on April 08, 2012, 04:43:29 am
It does not auto update, I think that's the thing... can anyone give me a link to download the v.34.06_graphics?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: BinaryBeast1010011010 on April 08, 2012, 05:46:12 am
No one can help me it seems. maybe I should create another topic... I already feel bad about triple posting but with the forum Old Ones hanging around I rarely dare hit the post button at all... Please delete my posts if you feel like it or pm me
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: uggi on April 08, 2012, 08:04:24 am
No one can help me it seems.

Instructions for Windows:

Option 1:
Download Dwarf Therapist from the first post of this thread.
Then update it for 0.34.07 by following slink's instructions in page 114 (http://www.bay12forums.com/smf/index.php?topic=66525.msg3146407#msg3146407).

Option 2:
Download splinterz's build of DT (http://www.bay12forums.com/smf/index.php?topic=66525.msg3156344#msg3156344), it has 0.34.07 support out of the box.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: BinaryBeast1010011010 on April 08, 2012, 09:28:44 am
I never tried dt, now I can, thanks a lot!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: revenant on April 09, 2012, 12:22:51 am
<void>
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: revenant on April 09, 2012, 04:43:31 am

Or if you are on OSX
Steps for OSX


Thank You!
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vorpal+5 on April 09, 2012, 08:20:21 am
I have a bug to report. Some entities show in DF as pseudo-dwarves but are not. They almost never have names but sometime can, and all their stats are at -1 (or 0, anyway they show as red diamonds). I play in an evil biome, so this can be either ghosts or zombies.

I think it would be fairly easy to not display them, there is no Dorf who can be alive with all stats at -1 I believe (or perhaps one chance in 100 millions!), so if you see such creature, don't display it.

if this is occurring in my branch i'd appreciate the save to take a more detailed look.

I'm using DF for 34.07 taken from archive named dfhack-0.34.05-r1-Windows.zip, is it your branch?

I'm also playing with LFR mod. Do you want the save?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 09, 2012, 09:00:49 am
I have a bug to report. Some entities show in DF as pseudo-dwarves but are not. They almost never have names but sometime can, and all their stats are at -1 (or 0, anyway they show as red diamonds). I play in an evil biome, so this can be either ghosts or zombies.

I think it would be fairly easy to not display them, there is no Dorf who can be alive with all stats at -1 I believe (or perhaps one chance in 100 millions!), so if you see such creature, don't display it.

if this is occurring in my branch i'd appreciate the save to take a more detailed look.

I'm using DF for 34.07 taken from archive named dfhack-0.34.05-r1-Windows.zip, is it your branch?

I'm also playing with LFR mod. Do you want the save?

i meant which version of dwarf therapist you're using. if you have roles and attributes (my branch) and it's showing dwarves with -1 stats, then yes, i'd appreciate the save. if it's the 'official' main branch build, then this issue should be resolved when we finally get around to merging the branches.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Captainguy on April 09, 2012, 07:08:53 pm
Double post sorry
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Captainguy on April 09, 2012, 07:11:05 pm
http://i.imgur.com/3LdpU.png
There's my Dwarf Therapist screen at this time. Neither the names nor the dwarfs or labors they have activated are showing. I've tried re-installing it multiple times and with multiple versions of DF and DT and this keeps happening. It didn't always do this when I first installed DT it was working perfectly, but when I turned it on later it wasn't working properly. If anyone has a clue as to what else I should try I'd appreciate it.

DF Version: 0.34.06 DT Version: 0.6.12b04 Mac Version: 10.7.2

Edit: Actually the DF version is 0.34.05 as Kingubu pointed out.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: kingubu on April 09, 2012, 07:50:08 pm
Screenshot says connected to 34.05 and you say you're running 34.06. 
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Captainguy on April 09, 2012, 08:07:25 pm
So I am, sorry I forgot what version I was running. Yes it is 34.05.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: zwei on April 10, 2012, 08:03:29 am
I admit not really following development, so:

What is relationship with "dwarf couselor" fork (and possibly other enhancement) and official releases? Will it eventually be merged to "The" Therapist?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vorpal+5 on April 10, 2012, 11:30:04 am
I downloaded from your branch and there is the bug, now 33 pseudo dwarves show.

This is with LFR mod, current version.

http://www.mediafire.com/?e763g9sm9kcxe60
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 10, 2012, 03:51:48 pm
I downloaded from your branch and there is the bug, now 33 pseudo dwarves show.

This is with LFR mod, current version.

http://www.mediafire.com/?e763g9sm9kcxe60

yeah i see the problem. i'm not sure if it's the mod or the game but a lot of those undead corpses aren't marked as zombies/skeletons/dead/killed/etc. so they're not caught by the flag checks. however, as you noted they don't have any attributes and can be filtered based on that. the only other strangeness i'm noticing in the save is that there's one baby that's being picked up by dt that i can't find in the game. his name is Ordir Sterusonul (accents on the o's), and if you can find him let me know so i can see if i can figure out why he's showing up.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: AriRashkae on April 10, 2012, 04:08:22 pm
http://i.imgur.com/3LdpU.png
There's my Dwarf Therapist screen at this time. Neither the names nor the dwarfs or labors they have activated are showing. I've tried re-installing it multiple times and with multiple versions of DF and DT and this keeps happening. It didn't always do this when I first installed DT it was working perfectly, but when I turned it on later it wasn't working properly. If anyone has a clue as to what else I should try I'd appreciate it.

DF Version: 0.34.06 DT Version: 0.6.12b04 Mac Version: 10.7.2

Edit: Actually the DF version is 0.34.05 as Kingubu pointed out.

Click "Options" (the color wheel)

Click "Restore Defaults"

Re-toggle any check boxes you prefer

Click "OK"

I'm a Mac user, and it does it to me, too, every so often. A petty annoyance, all things considered.  ;D
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Thuvian on April 10, 2012, 06:24:06 pm
splinterz version issue report

Adventure Trait is glitched. For the raw skill value, some dwarves have negative numbers. Others have normal in range numbers. Incorrect memory offset?
Vampire Names are mismatched. The dwarf alias that the vampire is using doesn't show up in DT. I think DT is using his real name?
Failure to pick up tools. This was reported earlier by someone else. In the early days of my fort I assigned miners, but had no pickaxes. Later on I made pickaxes, but the dwarves assigned to the mining task (via DT) didn't go and pick them up. Unassigning them in DF and reassigning them in DF made them go get pickaxes. Unassigning them in DT and reassigning them in DT did not. Although I didn't check what would happen if I waited a while before reassignment.
Nonexisting dwarves: DT reports more dwarves than I have. Possibly due to kidnapping?
Migrant wave ordering: My dwarves no longer show up in the correct Migrant waves. Possibly because some are historical figures? I don't know.

Feature Requests
With today's new dwarven lifestyle 33% of the dwarves in my fort are babies & children. Can you make the dwarf count in DF report Adults/Babies/Children?

Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Anrock on April 10, 2012, 09:35:21 pm
Can someone post a link to splinterz repository, please?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Andir on April 10, 2012, 09:44:10 pm
Can someone post a link to splinterz repository, please?
Going just one page back yields a download link: http://www.bay12forums.com/smf/index.php?topic=66525.msg3174037;topicseen#msg3174037

Assuming you don't want the download and you want a source code repository, I simply clicked on his profile, selected Show Posts...
Found on page 2: http://code.google.com/r/splintermind-attributes/source/browse/#hg%2Fetc%2Fmemory_layouts%2Fwindows

So one could deduce that the repository is located here:
http://code.google.com/r/splintermind-attributes/

(Which is also on page 5 of his post history.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Anrock on April 10, 2012, 09:49:40 pm
Can someone post a link to splinterz repository, please?
Going just one page back yields a download link: http://www.bay12forums.com/smf/index.php?topic=66525.msg3174037;topicseen#msg3174037

Assuming you don't want the download and you want a source code repository, I simply clicked on his profile, selected Show Posts...
Found on page 2: http://code.google.com/r/splintermind-attributes/source/browse/#hg%2Fetc%2Fmemory_layouts%2Fwindows

So one could deduce that the repository is located here:
http://code.google.com/r/splintermind-attributes/

(Which is also on page 5 of his post history.)
Thanks for help :3
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Tylermon on April 11, 2012, 12:20:30 am
Is there any estimated release date for a 34.07 version of Dwarf Therapist?
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 11, 2012, 01:58:42 am
Is there any estimated release date for a 34.07 version of Dwarf Therapist?

err like minus 1.5 weeks ago...
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Tylermon on April 11, 2012, 02:21:25 am
Is there any estimated release date for a 34.07 version of Dwarf Therapist?

err like minus 1.5 weeks ago...

Ok then I'm slightly confused because every time I try to use it it says something like unable to connect to this version of dwarf fortress.
And I've been under the assumption it wasn't updated yet due to first post saying "Latest Supported Dwarf Fortress: 0.34.06"

I will try downloading it again later in the day.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Intrinsic on April 11, 2012, 02:57:33 am
Yeah 1st page isn't the best place to look atm ;p browse back through recent pages and you'll find all that you need :) i think the latest LNP has DT for 34.07 too.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 11, 2012, 04:42:53 am
splinterz version issue report

Adventure Trait is glitched. For the raw skill value, some dwarves have negative numbers. Others have normal in range numbers. Incorrect memory offset?
Vampire Names are mismatched. The dwarf alias that the vampire is using doesn't show up in DT. I think DT is using his real name?
Failure to pick up tools. This was reported earlier by someone else. In the early days of my fort I assigned miners, but had no pickaxes. Later on I made pickaxes, but the dwarves assigned to the mining task (via DT) didn't go and pick them up. Unassigning them in DF and reassigning them in DF made them go get pickaxes. Unassigning them in DT and reassigning them in DT did not. Although I didn't check what would happen if I waited a while before reassignment.
Nonexisting dwarves: DT reports more dwarves than I have. Possibly due to kidnapping?
Migrant wave ordering: My dwarves no longer show up in the correct Migrant waves. Possibly because some are historical figures? I don't know.

Feature Requests
With today's new dwarven lifestyle 33% of the dwarves in my fort are babies & children. Can you make the dwarf count in DF report Adults/Babies/Children?

well good news, most of these are already fixed and will be in the next update!

fixed
- the adventure trait (and there was one other i don't recall) have been capped at 0 and 100. i originally thought it was a memory issue as well, but no, those are actually the correct values from memory, i compared against dfhack as well.

- the pickup issue should only occur if the 'equipment_recheck' offset is incorrect, but perhaps more testing is due if this doesn't seem to be the case.

- i'm making progress on the kidnapping, but there's no real way to identify them via flags. the 'rider' flag appears to be unchecked for kidnapped babies, but it's also removed if a parent drops a baby. so DT won't show kidnapped babies, but it also won't show babies rolling around on the floor. best i can do so far.

- Shishimar recently sent me a code snippet that should resolve the migration wave issues

pending
- i've been working on vampire names between things, but i haven't been able to figure out how the assumed names are linked to the dwarves

- i'll see what i can do about modifying the count
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vrga on April 11, 2012, 05:54:07 am
Nonexisting dwarves: DT reports more dwarves than I have. Possibly due to kidnapping?
- i'm making progress on the kidnapping, but there's no real way to identify them via flags. the 'rider' flag appears to be unchecked for kidnapped babies, but it's also removed if a parent drops a baby. so DT won't show kidnapped babies, but it also won't show babies rolling around on the floor. best i can do so far.
These might actually be necromancer dwarves, who remain hidden until discovery, sorta like ambushers. Are you near a Tower and do you get the occasional "The dead walk" message or somesuch? If yes, thats your extra dorf right there.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: splinterz on April 11, 2012, 06:20:26 am
Nonexisting dwarves: DT reports more dwarves than I have. Possibly due to kidnapping?
- i'm making progress on the kidnapping, but there's no real way to identify them via flags. the 'rider' flag appears to be unchecked for kidnapped babies, but it's also removed if a parent drops a baby. so DT won't show kidnapped babies, but it also won't show babies rolling around on the floor. best i can do so far.
These might actually be necromancer dwarves, who remain hidden until discovery, sorta like ambushers. Are you near a Tower and do you get the occasional "The dead walk" message or somesuch? If yes, thats your extra dorf right there.

i was testing with the recently posted save for the LFR mod and once i got all the zombie dwarves cleared, i had a single baby that showed up in DT but not in the game, anywhere. so i'm assuming it was kidnapped. unless of course it's a hiding baby necromancer... i'll have to do more testing with that save, since it is in an evil biome, but i don't know if there's a tower nearby.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Tylermon on April 11, 2012, 10:55:52 am
Yeah 1st page isn't the best place to look atm ;p browse back through recent pages and you'll find all that you need :) i think the latest LNP has DT for 34.07 too.

Thanks, found the download and it worked.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: vorpal+5 on April 12, 2012, 02:07:17 am
Hey that's my save!  :D And I did not found the baby either.

Any chance to have a magic button in the 'show dwarf details' window (or whatever you name it) that would zero all skills of a dwarf? I'm mightily confused when the haulers are not peasants but have all sort of dwarfy icons (cheesemaker, recordkeeper, whatever). This is not to cheat really, as I'm not asking you to be able to up any skill, but I would really like this 'zero the skills' button.
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: Shishimaru on April 12, 2012, 05:12:51 pm
Hey that's my save!  :D And I did not found the baby either.

I've found the baby!!! He is the son of 'Farmer' Lelumuthir and 'Marksdwarf' Athelvutok. Look at the relationships of one of his parents to find him.

"Òrdir Sterusònul has been ecstatic lately. He is happy to be free!"

More than kidnapped it seems to me that he ran away from his parents  :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/23/12 see first post)
Post by: DwarfEngineer on April 12, 2012, 05:58:25 pm
v0.34.07 Layouts Updated

Layouts are posted for all 3 operating systems and should download automatically.
Note, this is for vanilla Dwarf Therapist only, see post above for splinterz' release.

Direct Download Links:

There is also a new version for OSX (http://dwarftherapist.googlecode.com/files/DwarfTherapist-0.6.12b05.dmg) which fixes migrant waves with 34.06.

Sorry for the very long delay! Starting from moving day, my time has been consumed with hauling and building tasks. Now it's time for some On Break and Drink. :)
With summer and the new house, my time will be limited for a while, but I'll still be watching for new releases & getting ready to merge Splinterz' branch.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: vorpal+5 on April 13, 2012, 02:10:25 am
Thanks you!

Your links point to .ini though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Kami on April 13, 2012, 04:04:14 am
Good Job! Thanks a lot.

Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: notfood on April 13, 2012, 10:44:33 pm
Thank you.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Deon on April 14, 2012, 01:07:46 am
I've got a problem with another version of Therapist... I think it was 0.6.12, with caste support, I don't remember where did I get it from exactly.

Any way, after a syndrome added some text to a creature name ("vault dweller infected"), they stopped appearing in the list, even after cured. Was it ever fixed for the latest versions?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 14, 2012, 03:53:41 am
I've got a problem with another version of Therapist... I think it was 0.6.12, with caste support, I don't remember where did I get it from exactly.

Any way, after a syndrome added some text to a creature name ("vault dweller infected"), they stopped appearing in the list, even after cured. Was it ever fixed for the latest versions?

that was probably my branch. i haven't heard of this happening until now so it probably hasn't been fixed. i have been filtering out cursed dwarves (excluding vampires), but i'm not sure that's the same as syndromes. if you happen to have a save available i can do more testing.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: vorpal+5 on April 15, 2012, 03:24:59 am
Splinterz, any ETA on your branch which can efficiently remove ghosts/zombies/fake dwarves? I have just too many detected by DT in my game (evil biome)

Zeroing a dwarf skill is a possibility you envision or this is a no-no? Please I beg you, Master  :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Ninjamestari on April 15, 2012, 04:55:13 am
How do you make it work with DF 34.07? Dumb question I know, but I haven't really used many mods yet.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 15, 2012, 05:20:45 am
Splinterz, any ETA on your branch which can efficiently remove ghosts/zombies/fake dwarves? I have just too many detected by DT in my game (evil biome)

Zeroing a dwarf skill is a possibility you envision or this is a no-no? Please I beg you, Master  :P

the build i'm working on now should filter out all those negative attribute creatures. i'm just putting the finishing touches on a few more things and i hope to get the release out today! at the moment i won't be adding the zeroing out skills to this build, and i'm not sure i want to go down the route of those kinds of modifications. i feel  DT was intended to be a tool to help you make decisions and manage your fort, not memory hack your dwarves.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 15, 2012, 12:17:01 pm
alright so i've got another version packaged up full of shinies! there are a lot of changes so i'll just highlight the main points here, and you can read the rest on the download/source page!


Branch Project Home (downloads, change logs, source) (http://code.google.com/r/splintermind-attributes/)

as always please let me know of any problems, feature requests, or just general feedback you may have! enjoy!
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: vityav on April 15, 2012, 02:53:57 pm
alright so i've got another version packaged up full of shinies! there are a lot of changes so i'll just highlight the main points here, and you can read the rest on the download/source page!
...
as always please let me know of any problems, feature requests, or just general feedback you may have! enjoy!

Did a fresh clone and attempting to build gives:
Code: [Select]
WARNING: Failure to find: ui/roledialog.h
from qmake, and it won't build with or without that dependency.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 15, 2012, 03:22:29 pm
give it another go now vityav, i'm not sure why it wasn't picking up roledialog.h so i've moved the files back into the main directories and updated the source files
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: vityav on April 15, 2012, 04:07:06 pm
give it another go now vityav, i'm not sure why it wasn't picking up roledialog.h so i've moved the files back into the main directories and updated the source files

Works wonderfully now. Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: BigFatStupidHead on April 15, 2012, 06:05:13 pm
Hey Splinterz, if you do not already, could you have an option to turn off role recalculation? I don't really need for DT to check roles each and every time I make a change or two in my labours. Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: vorpal+5 on April 16, 2012, 02:46:07 am
Hi Splinterz,

Thank you very much for your work. The new DT works rather well!

A few remarks:
I have now a ton of dwarves listed which are in fact missing dwarves (most, if not all, of them dead).
Waves are still indicated even if there is no one alive in it
Roles calculation should be optional. Some won't use it, or only rarely, but it is twice as slow as the reading of dwarves, making a x3 refresh time overall.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Intrinsic on April 16, 2012, 03:18:50 am
A button to click to recalculate roles would be ideal. As yeah with 200+ dorfs in my fort it makes it a lot slower just to make some quick role changes as i go, i micro a lot so time taken now is much longer :)

Both for splinterz and official:
Is it possible to move Dwarf Therapist.ini inside the DT directory? files being strewn all over the system is annoying and makes it a pain in the arse to switch between trying out different versions :) plus i can be booted into any one of 3 OSs on my machine and it'd be nice to not have to setup each one again when i make any changes.

Thanks for another excellent update!
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 16, 2012, 04:12:23 am
Hi Splinterz,

Thank you very much for your work. The new DT works rather well!

A few remarks:
I have now a ton of dwarves listed which are in fact missing dwarves (most, if not all, of them dead).
Waves are still indicated even if there is no one alive in it
Roles calculation should be optional. Some won't use it, or only rarely, but it is twice as slow as the reading of dwarves, making a x3 refresh time overall.

ah yeah sorry. i was trying out a new method of checking for migrants, and apparently the flag i was looking at is also set on the undead?  ::)  i've  updated the package  (http://code.google.com/r/splintermind-attributes/) and it should resolve that for you.

i was afraid some people might have a big performance hit with the roles calculation but i thought i'd wait and see how bad it was. i'll see what i can do about optimization, and worst case i'll have to set an option for role calculations.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Intrinsic on April 16, 2012, 10:49:15 am
Idea if it's not ideal have a separate button to recalc:

LMB click on Read Dwarves = read and recalc
RMB click on Read Dwarves = only read
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 16, 2012, 06:27:00 pm
i've patched the latest version with some optimization to the role calculations. it made a fairly significant difference in my testing but let me know if that's still not sufficient and i may have a few more tricks up my sleeve.  ;D

download (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: BigFatStupidHead on April 16, 2012, 06:47:43 pm
The role calculations are now blazingly fast; I don't even notice the time it takes. Thanks, Splinterz!
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: daftfad on April 16, 2012, 11:48:13 pm
Anyone else having trouble getting migration waves to work on the latest splinter build? (Linux 64-bit) It lumps everyone into wave 0.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Intrinsic on April 17, 2012, 02:21:26 am
Anyone else having trouble getting migration waves to work on the latest splinter build? (Linux 64-bit) It lumps everyone into wave 0.

Migration waves haven't worked at all for me since 31.25, someone mentioned something about DF itself not tracking or doing something right, as opposed to a DT issue.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 17, 2012, 03:12:29 am
Anyone else having trouble getting migration waves to work on the latest splinter build? (Linux 64-bit) It lumps everyone into wave 0.

i don't have a linux box setup at the moment to test the offsets so they may be off. try editing the layout ini file and change the turn_count to: turn_count=0x053c and see if that works.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Intrinsic on April 17, 2012, 04:46:32 am
Ideas to add to DT or for other users to implement themselves if they want.

Using Soap related stuff as an example:
Strength, Toughness, Endurance, Kinesthetic Sense:
Lye maker, Potash maker, Soaper, Wood burner

I've started adding(as i need them) the following kind of setup(in the red box) On the left we have their rating, and on the right shows their current skill.
(http://www.zenadsl5706.zen.co.uk/DF/NewRoles.png)

I started trying out this kind of setup because as we know certain attribute combinations cover many skills, and this gave me an easy way to both see their potential and how good they were currently, and set their labours all from one screen which saves me a lot of time hoping about from one tab to the other.

Similarly for the military screen i added their current Teacher and Student skills, and to the right their rating.
(http://www.zenadsl5706.zen.co.uk/DF/NewMilitary.png)

These are still in v9, yet to port them to v10 which will be a lot easier thanks to the custom roles editting from within DT, thanks spliterz!


And a bug: Copying from or setting up roles with "NOT attribute", like Lawdwarf (Weak) doesn't work currently.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 17, 2012, 05:31:42 am
are you actually typing NOT strength for the attribute? if you are, you need to do -strength instead. just the negative sign is needed to value aspects inversely, NOT is just how it displays it in the tooltip.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Intrinsic on April 17, 2012, 05:48:09 am
are you actually typing NOT strength for the attribute? if you are, you need to do -strength instead. just the negative sign is needed to value aspects inversely, NOT is just how it displays it in the tooltip.

Yep i know to use - when editing the ini manually, but using the new roles setup UI you implemented you can't do that. Try "Copy From" Lawdwarf yourself and you'll see what i mean.

Bug: If you add to or remove a skill from a custom role the tooltip does not update to reflect this but the rating calculation still seems to update and work. You need to either restart DT or click options and then exit out for it to update.

Bug: On several occasions now when i go to edit a custom role the window just comes up with no entires, but only on the last custom role created? as it's just happened again while typing this out but the 1st role i created appears fine(i only have 2 created atm). The window that comes up instead is as if you'd just clicked New Custom Role. Restarting DT resolves this.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 17, 2012, 05:54:07 am
and this is happening on the last release from just yesterday (10.1 on the source page)?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Intrinsic on April 17, 2012, 06:03:47 am
Yep, freshly downloaded only 3 or 4 hours ago.

Edit: And i'll add, that the 2nd bug i mentioned above about the role box coming up unpopulated, it seems to happen after a certain amount of time? as i can go away for a few mins, come back and it's gone wonky again even without me using it. ie this current session it's just gone again, and all i was doing was had the animals tab open, and was looking for stuff to butcher ingame and thought i'd check to see if i could still edit the last role i made but nope a blank box again.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 17, 2012, 06:16:31 am
Yep, freshly downloaded only 3 or 4 hours ago.

Edit: And i'll add, that the 2nd bug i mentioned above about the role box coming up unpopulated, it seems to happen after a certain amount of time? as i can go away for a few mins, come back and it's gone wonky again even without me using it. ie this current session it's just gone again, and all i was doing was had the animals tab open, and was looking for stuff to butcher ingame and thought i'd check to see if i could still edit the last role i made but nope a blank box again.

i'll try and get some fixes out later today. so to reproduce the issue i just need to add a few roles, and it's always/only the last one added that glitches? thanks for the testing/reports btw!
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Intrinsic on April 17, 2012, 06:17:56 am
Well i've only added 2 so far to test things out, and it's always the 2nd one i've added that goes, yet to add more than 2. I can check that out later though, off out now.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 17, 2012, 12:55:39 pm
i've got all the role issues you've mentioned fixed up. i also updated that linux offset i mentioned earlier. finally i've started adding in some new animal stuff (trained level in the name, not hiding children, hiding hostile/wild animals) so we'll see how that goes...

Download it here. (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Intrinsic on April 17, 2012, 12:57:05 pm
Update, it just started doing it on the 1st role i added also, so not just the last one. Although i've only noticed it doing this since i added some custom grid views.

Lol, seems you were posting as i am writing this one :) i'll give the new one a go and see how it turns out. ta!

Edit: I found this one in the previous version but checked the new one before posting it.

Bug: add a new custom set to a grid view, add dodger skill, and then dodger role to it, or any skill and role that has the same name. They'll appear as dodger, and dodger 1. When you restart DT dodger 1 will be blank, ie no rating etc.


NOT stuff works great now thanks! still waiting to experience any odd custom role stuff as previously reported.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: GoldenShadow on April 17, 2012, 02:08:58 pm
I noticed that squads weren't being sorted. I created a new squad(fresh embark) and Dwarf Therapist had the 2 soldiers bolded, but they were under the NoSquad (7) instead of the name of the squad, like the older versions. I haven't tried the one you just posted today, is it fixed?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 17, 2012, 03:22:29 pm
I noticed that squads weren't being sorted. I created a new squad(fresh embark) and Dwarf Therapist had the 2 soldiers bolded, but they were under the NoSquad (7) instead of the name of the squad, like the older versions. I haven't tried the one you just posted today, is it fixed?

no i hadn't noticed that, but it's fixed now  :-\
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Shishimaru on April 17, 2012, 03:51:07 pm
finally i've started adding in some new animal stuff (trained level in the name, not hiding children, hiding hostile/wild animals) so we'll see how that goes...
to hide hostile/wild animals you can filter the civilization id adding in the layout (for the windows version):
[addresses]
current_civ_index=0x01617eb0

[dwarf_offsets]
civ_id=0x010C

and checking the creature civ_id against the player current_civ at the beginning of the Dwarf::get_dwarf

Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: walberg on April 18, 2012, 08:57:29 am
I noticed that squads weren't being sorted. I created a new squad(fresh embark) and Dwarf Therapist had the 2 soldiers bolded, but they were under the NoSquad (7) instead of the name of the squad, like the older versions. I haven't tried the one you just posted today, is it fixed?

no i hadn't noticed that, but it's fixed now  :-\

Not sure exactly when this fix went in, and maybe it hasn't made it into the repository yet - but as of changeset 0f99f37c81f7 ("always show animal children regardless of options" dated 4/17 19:49:49 +0200), it appears to still be broken (Linux, QT 4.6.3). Maybe I'll have to download the posted source and try that instead.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on April 18, 2012, 11:15:45 am
no i hadn't pushed it to the repository yet as it was a minuscule change i was going to wait for more changes first. i've just updated the repository now with the fix to the squads not loading properly for you
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Bodyless on April 18, 2012, 10:48:34 pm
edit: wrong thread
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: anqxyr on April 22, 2012, 02:20:51 pm
I've build both vanilla DT and splinterz's branch from source, then copied the layout for 34.06 from vanilla to splinterz's version, since it doesn't have one by default. My fort have 10 dwarves, and vanilla shows all of them, but the splinterz's DT shows only 8 - all 3 migrants, bun only 5 of starting 7. Am I doing something wrong here, or is this a bug?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Shishimaru on April 24, 2012, 06:28:59 am
I've build both vanilla DT and splinterz's branch from source, then copied the layout for 34.06 from vanilla to splinterz's version, since it doesn't have one by default. My fort have 10 dwarves, and vanilla shows all of them, but the splinterz's DT shows only 8 - all 3 migrants, bun only 5 of starting 7. Am I doing something wrong here, or is this a bug?
The splinterz's version layout has a few more offsets. For linux they should be (the sex offset is different from the one in the vanilla DT):

Code: [Select]
[dwarf_offsets]
flags3=0x0094
sex=0x00a6
mood=0x01a0
caste=0x00a4
curse=0x4d4
body_size=0x410
animal_type=0xb0

[soul_details]
mental_attrs=0x0068

[invalid_flags_3]
size=1
1\name=a ghost
1\value=0x00001000
 
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: uggi on April 24, 2012, 12:34:50 pm
Splinterz's build on Linux: my resident vampire is correctly highlighted as being cursed, but my were-panda-child isn't.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Shishimaru on April 28, 2012, 09:40:25 am
In DT (both versions) you can assign a dwarf to mining and hunting or to hunting and wood cutting, but (quoting from the wiki):

Quote
The mining, wood cutting, and hunting labors require the dwarf to either pick up and wield a pick, battle axe, or crossbow. For this reason, a dwarf cannot be assigned to any combination of mining, wood cutting, or hunting at the same time.

To fix this just change the Mining, Wood Cutting and Hunting labors in the file game_data.ini with:

Code: [Select]
1/name = Mining
1/id = 0
1/skill = 0
1/requires_equipment = true
1/excludes/size=2
1/excludes/1/labor_id = 10
1/excludes/2/labor_id = 44

4/name = Wood Cutting
4/id = 10
4/skill = 1
4/requires_equipment = true
4/excludes/size=2
4/excludes/1/labor_id = 0
4/excludes/2/labor_id = 44

9/name = Hunting
9/id = 44
9/skill = 57
9/requires_equipment = true
9/excludes/size=2
9/excludes/1/labor_id = 0
9/excludes/2/labor_id = 10
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Kuromimi505 on May 02, 2012, 03:27:38 pm
Wonderful work keeping Therapist updated, great job!

The only thing I could ask for is a "likes" listing in with the individual Dwarf traits box.

Liking Axes, Hammers, Crossbows, Steel, ect has a definite impact on Armorsmithing, Weaponsmithing, and other crafting; and has a likely impact on weapon choice effectiveness in combat.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: King Mir on May 02, 2012, 07:05:24 pm
I compiled and ran DT on kubuntu windows, but there are some problems:
1) I can't click to toggle labors. I can however right click to get a menu to toggle the whole group.
(solved)
2) I can't change the nicknames of dwarves.

I know these things work on the windows version. Anybody have any clue what's up?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: kingubu on May 02, 2012, 11:20:37 pm
I compiled and ran DT on kubuntu windows, but there are some problems:
1) I can't click to toggle labors. I can however right click to get a menu to toggle the whole group.
(solved)
2) I can't change the nicknames of dwarves.

I know these things work on the windows version. Anybody have any clue what's up?

I got DT running on ubuntu, and no, there is no nickname option.  Bug or unimplemented, I don't know.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Shishimaru on May 03, 2012, 07:58:00 am
I got DT running on ubuntu, and no, there is no nickname option.  Bug or unimplemented, I don't know.

Looking into DT code (in the statetableview.cpp) there are these lines:

Code: [Select]
#ifndef Q_WS_X11
        m.addAction(tr("Set Nickname..."), this, SLOT(set_nickname()));
        m.addSeparator();
#endif

that make the "Set nickname" option unavailable to linux users. I don't know why it is this way and don't have a linux machine available right now to check it.
There is anyone who knows why this option is disabled in linux or willing to try to compile the DT code without the ifndef lines?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: ab9rf on May 04, 2012, 08:45:14 am
that make the "Set nickname" option unavailable to linux users. I don't know why it is this way and don't have a linux machine available right now to check it.
There is anyone who knows why this option is disabled in linux or willing to try to compile the DT code without the ifndef lines?
Because gcc stores strings as a pointer, while MSVC stores them as a length plus a union of 16 bytes of storage and a pointer.  This means that on Linux, to store a string requires doing memory allocation (which DT cannot do; it cannot call malloc as it is not in-process), but on Windows short strings (up to 15 bytes) can be forced into the union.  (Note that if there is already a value and it is longer than 15 bytes, forcibly changing it to a short string will cause memory to leak.  But as DF already leaks memory like a sieve anyway, it's unlikely anyone will notice.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: allison on May 06, 2012, 10:23:52 pm
Thanks to the Engineer for maintaining this awesome utility  :-*

Small feature request: would it be possible to allow sorting by age?
Title: Re: Dwarf Therapist (LATEST 0.6.10 3/15/11 see first post)
Post by: James009 on May 08, 2012, 03:43:26 pm
Greetings, fellow beard-bearers,

I've got a Problem that dont seem to be able to solve by myself:

After another crash which killed my save including my entire world, i decidedto set up some mods to my game, or to be more specific the Fortress Defense mod and the Termitefolk Colony mod (http://www.bay12forums.com/smf/index.php?topic=91853.0).

Since i've always been using Dwarf Therapist, pretty much al the time since i started playing DF, i looked  in this thread to see if there was any way to get castes to work. I downloaded the DwafTherapistClone.

Now here's the Problem: It doesnt seem to recognize any of the Termite castes, i guess that's because the  game_data.ini only contains the race-index for the dwarven race. Now what would i have to do to find the race index for those termites, or any other custom-made race? I've had some difficulties there, since i've only got very rough to no knowledge about searching memories, and similar things. Only having access to a 6-year-old laptop which was originally designed to be just a terminal-pc doesnt really help either.

Can anyone of you help me with this issue?
Has anyone come up with a solution to the custom races issue? I seem to remember this being rather easy but having not played for a while I do not remember how to address this.

Where does one find dwarf_race_index or any race index for that matter?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Shishimaru on May 08, 2012, 06:27:57 pm
The dwarf_race_index in the address section of the layout is the address of memory which contains the id of the controlled race.

If you have a windows pc and play with 0.34.7 you can try this version:

http://dl.dropbox.com/u/33938794/DTClone.zip (http://dl.dropbox.com/u/33938794/DTClone.zip)

it is based on splinterz version with some change (reads reactions, creatures and castes from the memory, group by migration shows season and year of the migrant arrival and shows if a creature is born in the fortress, reads the correct names also for non dwarven languages)

In the option menu there is an option to show all castes (in some mod such as LFR without this option all dwarf are common dwarf, but in some other mod such as MasterWork with this option you can find the secrete castes losing some fun)

It is a work in progress so I'm not sure it will work as intended. If you try this let me know how it work for you.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see THIS post)
Post by: James009 on May 09, 2012, 04:27:54 am
No idea where you found this but it works BRILLIANTLY. Thanks a lot!
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see THIS post)
Post by: Shishimaru on May 09, 2012, 05:28:41 am
No idea where you found this but it works BRILLIANTLY. Thanks a lot!
I've made it myself. Happy to hear that it works well.

Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: thistleknot on May 09, 2012, 09:59:17 am
I've been working with Splinterz (yet again) for some tiny itsy bitsy changes to the way traits are calculated in the overall %.  Certain traits (stress, urge, honesty) do not have a center mean of 50, but rather either 45 or 55.

Using a lot of memory dumps of dwarve's and running analysis on them, I came up with concrete % to use for normal, negative, and positive trait %.   Initially (the %'s used in v10.2) I never really liked the negative and positive trait results, as some "bins (i.e. range of values)" had too small of a % to accurately say that's indeed the range it covered.

However, I more recently found a rather symmetrical breakdown of how the numbers were laid out.

Can see my wiki contribution here
http://dwarffortresswiki.org/index.php/DF2012:Personality_trait#Trait_bins_as_found_examining_16000_dwarves (http://dwarffortresswiki.org/index.php/DF2012:Personality_trait#Trait_bins_as_found_examining_16000_dwarves)

Unfortunately.  The non symmetrical ones (the means of 45 and 55 respectively) did not appear to have a symmetrical breakdown.  However, there were patterns emerging from within the matrix.  I noticed that there were always 7 bins, center was always ~78.5%, the ones just adjacent to center always added up to ~17%, and the next set added to ~4%, and the last ~1% (using a histogram to breakdown the data, it was possible to find the height occurrences that were the same, which helped identify the jumps in %).  Symmetrical, or non...

So I tried a simple formula that skewed the non symmetrical ones to symmetrical, and voila, the numbers then matched the symmetrical breakdown.

example excel formula:
=IF(Value<=55,(Value/55)*50,(((Value-55)/45)*50)+50)

I actually abandoned my requests for scriptable arrays in the script editor to test my results (which I would still love to have access to) and delved into the code and made the changes myself!

I think Splinterz has found it to his liking and will be implementing it soon.

Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: thistleknot on May 12, 2012, 08:53:45 am
A cool feature would be able to modify column by dragging them around on the main screen (i.e. not within the grid views).  For example, if I wanted to re-arranged roles on the main interface without having to go into windows - docks - grid views...)

Hell, it would be nice to just right click on the vertical column's and be able to add from right there to the grid views.  Just have an immediate pop-up asking me what I want to add (trait, role, attribute, etc).
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Xen0n on May 12, 2012, 02:11:10 pm
Sorry for the stupid questions:



EDIT:  OMG This Splinterz DT is absolutely incredible; it's everything I have been looking for in a Dwarf Fortress Utility ever since I started playing.  Shows skills, traits, AND Attributes etc.!  And even rates dwarves based on a fit for a job!  Just started playing around and made a custom role, but for some reason it doesn't show up in my 'Roles' tab...
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: kingubu on May 12, 2012, 02:30:17 pm
Get splinters and run it.  It's just DT plus extras.  And it has all the stats you're looking for.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: thistleknot on May 12, 2012, 03:03:07 pm
A way to mass assign labors

So you're looking at roles

and you see a bunch of dorf's and you see there a good fit for a role

so...

select them all, then right click, and assign labor!

That would be nice.  Rather than

highlighting them all, then...

going to labors

and having to click each individually.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on May 12, 2012, 05:10:12 pm
snip

Just started playing around and made a custom role, but for some reason it doesn't show up in my 'Roles' tab...

glad you're enjoying it :)  the only way to have a custom role show up in the default roles tab is to name it the same as an existing default role (it will override the default). otherwise you'll have to create a custom view, and add your custom role columns to it. from what you're describing, the easiest way would probably be to copy the default 'roles' view, and then add your newly created custom roles to it.

on a side note i'm working on getting the changes Shishimar sent me/posted for castes and races, as well as the corrected trait stuff for the next release.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Xen0n on May 12, 2012, 06:45:51 pm
snip

Just started playing around and made a custom role, but for some reason it doesn't show up in my 'Roles' tab...

glad you're enjoying it :)  the only way to have a custom role show up in the default roles tab is to name it the same as an existing default role (it will override the default). otherwise you'll have to create a custom view, and add your custom role columns to it. from what you're describing, the easiest way would probably be to copy the default 'roles' view, and then add your newly created custom roles to it.

on a side note i'm working on getting the changes Shishimar sent me/posted for castes and races, as well as the corrected trait stuff for the next release.

Thanks!  I'm already having a blast with the default setup!  Is the copying view thing you're mentioning accomplished by the "Export View," then 'Import View'?  And I guess at some point it'll let me edit it?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Rhenaya on May 14, 2012, 06:54:58 am
where is my df .08 the rapist upgrade? :x
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Rose on May 14, 2012, 07:10:49 am
wait for somebody to realize that connecting to DFhack makes upgrading a lot less an issue of shotting around in the dark. ;)

Actually they generally take the same amount of time.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: LoSboccacc on May 14, 2012, 08:42:49 am
wait for somebody to realize that connecting to DFhack makes upgrading a lot less an issue of shotting around in the dark. ;)

Actually they generally take the same amount of time.

Because it runs so well on macs?

 :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Natti on May 14, 2012, 09:01:14 am
You're treading on treacherous ground there, buddy. Watch your step.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Jacko13 on May 14, 2012, 10:59:54 am
Has anybody tried using the current DT with DF 0.34.08?  Limited functionality or no function?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Natti on May 14, 2012, 11:02:08 am
Doesn't know how to talk to the newest version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Darnis on May 14, 2012, 11:02:30 am
doesn't work.. renaming the game data files didn't work either ;/
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Lockyy on May 14, 2012, 11:15:42 am
Anyone aware of if anyone is making an update for the memory locations?

If not, anyone got a place I can learn how to do it?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: ab9rf on May 14, 2012, 11:20:14 am
Has anybody tried using the current DT with DF 0.34.08?  Limited functionality or no function?
Won't work; the offsets will be all wrong.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Iceflame on May 14, 2012, 11:47:50 am
I hope there will be a new version up soon - withoup therapist, labor management sucks a little
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Balin on May 14, 2012, 12:01:40 pm
I'm going to set [POPULATION_CAP:0], and let the first two waves ride minecarts until DT offsets are updated :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: LoSboccacc on May 14, 2012, 12:03:40 pm
Seriously, every time?
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Jon-Ace on May 14, 2012, 12:18:43 pm
The bane of new DF releases: Bugs and lack of DT...  :'(
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: plaidman on May 14, 2012, 12:19:16 pm
Seriously, every time?

Yes. That's how it works.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Intrinsic on May 14, 2012, 12:40:05 pm
There is plenty of information through this thread about how to find the offsets if you want em so bad :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: ab9rf on May 14, 2012, 12:40:43 pm
Seriously, every time?
Yup.  At least until Toady starts publishing the symbol tables.  (Please?)
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Rose on May 14, 2012, 12:54:47 pm
wait for somebody to realize that connecting to DFhack makes upgrading a lot less an issue of shotting around in the dark. ;)

Actually they generally take the same amount of time.

Because it runs so well on macs?

 :P

We just need a mac dev.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: splinterz on May 14, 2012, 01:33:59 pm
here's a first set of offsets. there may still be issues, and not all the offsets are there (current_year for example). i don't have a packaged version, so you'll have to create the file named:

v034.08_graphics.ini

in your dwarf therapist's

../etc/memory_layouts/windows/ folder,

and then paste the following into it:
Spoiler (click to show/hide)

most of these offsets should work with the vanilla dwarf therapist, however they're intended for my branched build. (http://code.google.com/r/splintermind-attributes/)

if you're using the vanilla dwarf therapist and you don't want to risk anything going wrong, wait for dwarf engineer to release the updated offsets.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Draevos on May 14, 2012, 01:40:24 pm
It works... so far. Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Natti on May 14, 2012, 01:42:03 pm
Yeah, thanks for answering the plead for help!
Now I can properly enjoy smashing goblins to small pieces with mining carts full of silver warhammers...
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: Darnis on May 14, 2012, 02:44:54 pm
AWWWWWWWWWWWWWWWWWW YEAAAAAAAAAAAAAAAAAAAAA

Splinterz you are the MAN. Thank you thank you thank you thank you thank youuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: uggi on May 14, 2012, 03:01:30 pm
Built the latest Linux versions of both vanilla DT and Splinterz's build. Vanilla runs but it can't find all the vectors needed (for 0.34.08), Splinterz's version crashes immediately and gives some warnings too:
Code: [Select]
warning: the debug information found in "/usr/lib/debug//usr/lib/libxml2.so.2.7.8" does not match "/usr/lib/libxml2.so.2" (CRC mismatch).

warning: the debug information found in "/usr/lib/debug/usr/lib/libxml2.so.2.7.8" does not match "/usr/lib/libxml2.so.2" (CRC mismatch).

And the very long crash report:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: notfood on May 14, 2012, 03:12:31 pm
Linux's... version... offsets... I am sorry, I can't live without the magic. Once you have used it, it's impossible to go back to the old ways. Dark magic, indeed.
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: greenskye on May 14, 2012, 03:34:37 pm
Thanks for all your hard work, can't wait for the .08 version!
Title: Re: Dwarf Therapist (LATEST 0.6.12 4/12/12 see first post)
Post by: DwarfEngineer on May 14, 2012, 05:53:51 pm
v0.34.08 Layouts Updated

Layouts are posted for all 3 operating systems and should download automatically.
Note, this is for vanilla Dwarf Therapist only, see post above for splinterz' release.

Direct Download Links:

Edit: This doesn't include any new jobs/skills. I won't have much time to play this week (*cough*diablo3*cough*) but if someone can put together a save game with a few dwarves doing the new cart-related jobs, I would appreciate it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: slink on May 14, 2012, 06:30:56 pm
You wonderful man.   ;)

Now I can restart my new fortress from the first spring save, being able to properly manage them.   :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: thistleknot on May 14, 2012, 06:45:19 pm
Diablo 3?

An inferior game?

What?

omg...

I saw through diablo 3 in 5 minutes...

Oh well, to each his own.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: GoldenShadow on May 14, 2012, 06:49:12 pm
Dwarf fortress with minecarts is way more entertaining.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: khearn on May 14, 2012, 07:55:48 pm
Here's a set of linux values that are working for me for splinterz' version:
Spoiler (click to show/hide)
I took the 34.07 values from splinterz and adjusted based on the values DwarfEngineer just posted for linux in the official version. I'm pretty sure of everything down to (and including) the squad_offsets, but the various valid and invalid flags were fairly different between the two versions, so they may be off. So if you start seeing zombies or merchants showing up in your dwarf list, that's probably it. But this at least works for most stuff.

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: GoldenShadow on May 14, 2012, 08:54:30 pm
There is a new vehicle hauling labor missing from DT that I don't think can be corrected with an ini upgrade.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: khearn on May 14, 2012, 09:23:24 pm
No, but an ini update can at least let us use the old functionality until new code gets written.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: ab9rf on May 14, 2012, 10:42:35 pm
There is a new vehicle hauling labor missing from DT that I don't think can be corrected with an ini upgrade.
Jobs 227 through 230 are Carve Track, Push Track Vehicle, Place Track Vehicle, and Store Item in Vehicle, respectively.  Adding these to the appropriate place in game_data.ini should be enough to resolve that.  (My copy of game_data.ini has wrong values for a lot of the jobs, but I've never bothered to fix this.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: HammerDave on May 14, 2012, 11:00:41 pm
Linux worked great, thanks for the fast update!   8)

If the new jobs are controlled by existing labor preferences, then maybe few or no code changes?  I haven't run through the in-game menus completely to see if anything new popped up.

I checked, "Push/Haul Vehicles" is a new labor preference, so that would be a new column.  The other jobs seem to be controlled by existing choices, but unconfirmed.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: notfood on May 15, 2012, 12:20:18 am
Linux user here.

After wave 3, DwarfTherapist stopped being able to change professions, not sure what happened. The changes don't happen even though Therapist is showing they did.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Shishimaru on May 15, 2012, 02:52:30 am
There is a new vehicle hauling labor missing from DT that I don't think can be corrected with an ini upgrade.

The new labor can be added modifiying the game_data.ini and adding a custom gridview based on the labors view.
In the game_data.ini paste these lines after the "Wax working" labor:

Code: [Select]
74/name = Push/Haul Vehicles
74/id = 73
74/skill = -1

then start DT and copy the "Labors" gridview, edit the new gridview and add the column of the new labor.

If you compile your version of DT you can add the column directly to the default gridview changing the default_gridviews.dtg:
find these lines
Spoiler (click to show/hide)

and change them with these:

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: HammerDave on May 15, 2012, 09:12:21 am
Linux user here.

After wave 3, DwarfTherapist stopped being able to change professions, not sure what happened. The changes don't happen even though Therapist is showing they did.

Try to save; close Therapist; load; open Therapist.  Sometimes that fixes glitches like this.
I'm into wave 3, but have saved/loaded so can't check on this fort if 3rd wave arrival breaks it for me.  Can check if it's till good after loading though...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: thistleknot on May 15, 2012, 10:01:32 am

If you compile your version of DT you can add the column directly to the default gridview changing the default_gridviews.dtg:
find these lines

I compile mine, you mentioned a dtg file, but what .cpp or .h file do I need to change to add the labor?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: splinterz on May 15, 2012, 10:42:47 am

If you compile your version of DT you can add the column directly to the default gridview changing the default_gridviews.dtg:
find these lines

I compile mine, you mentioned a dtg file, but what .cpp or .h file do I need to change to add the labor?

there's nothing you need to change in the source files. just game_data.ini and the .dtg file.

i've updated the last build of my branched version to include the new labor columns in both default labor views, the new jobs, layout files for windows and the layout file for linux that was posted.

DOWNLOAD (http://code.google.com/r/splintermind-attributes/)

no source yet as i'm still in the process of merging other changes.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: SauliusTheBlack on May 15, 2012, 11:27:58 am
download link does not work for me(chrome on win7 if it matters)
EDIT: now it does for some reason(Middle Mouse Button maybe)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: expwnent on May 15, 2012, 12:41:58 pm
Works fine for me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Shishimaru on May 15, 2012, 12:47:28 pm

If you compile your version of DT you can add the column directly to the default gridview changing the default_gridviews.dtg:
find these lines

I compile mine, you mentioned a dtg file, but what .cpp or .h file do I need to change to add the labor?

I should have said this: the default_gridviews.dtg file doesn't shows himself in the IDE, but you can find it in the same folder of the dwarftherapist.pro file
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: DemDorfs on May 15, 2012, 06:06:57 pm
May I ask in general as a layman how you coding dwarves manage to find the memory positions for all the data that programs like Dwarf Therapist edit? This magic is quite fascinating.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Lich180 on May 15, 2012, 06:16:27 pm
Oh thank you, codedwarves, for making this tool available for us...

So much easier with this utility than without, just because it takes less keystrokes to arrange jobs
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: thistleknot on May 15, 2012, 07:51:00 pm
There is a new vehicle hauling labor missing from DT that I don't think can be corrected with an ini upgrade.

The new labor can be added modifiying the game_data.ini and adding a custom gridview based on the labors view.
In the game_data.ini paste these lines after the "Wax working" labor:

Code: [Select]
74/name = Push/Haul Vehicles
74/id = 73
74/skill = -1

then start DT and copy the "Labors" gridview, edit the new gridview and add the column of the new labor.

If you compile your version of DT you can add the column directly to the default gridview changing the default_gridviews.dtg:
find these lines
Spoiler (click to show/hide)

and change them with these:

Spoiler (click to show/hide)

I tried modifying the original dtg file, didn't get a push vehicle labororer

I'd use Splinterz version, but I got my own version with some trait id fixes.  So...

I guess I have to add it to the .ini?

I even tried

74/name = Push/Haul Vehicles
74/id = 73
74/skill = -1

in the gamedata.ini

what am I doing wrong.  I don't see a labor (when I try to add one to my custom gridview) called Push anything, or Vehicle anything, or Haul anything.  I do have Item Hauling (but that's a skill).  Is that it?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: GoldenShadow on May 15, 2012, 08:41:31 pm
Hey splinterz, I am using the version you just posted with the vehicle hauling labors added. Sorting by squad does nothing, just like last time.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Azated on May 15, 2012, 11:30:04 pm
Oh thank you, codedwarves, for making this tool available for us...

So much easier with this utility than without, just because it takes less keystrokes to arrange jobs

Have a look over the posts during the week or so before the Therapist 2012 compatibility was added. That should give you some idea. :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: splinterz on May 16, 2012, 05:35:19 am
The new labor can be added modifiying the game_data.ini and adding a custom gridview based on the labors view.
In the game_data.ini paste these lines after the "Wax working" labor:

Code: [Select]
74/name = Push/Haul Vehicles
74/id = 73
74/skill = -1

then start DT and copy the "Labors" gridview, edit the new gridview and add the column of the new labor.

If you compile your version of DT you can add the column directly to the default gridview changing the default_gridviews.dtg:
find these lines
Spoiler (click to show/hide)

and change them with these:

Spoiler (click to show/hide)

I tried modifying the original dtg file, didn't get a push vehicle labororer

snip

what am I doing wrong.  I don't see a labor (when I try to add one to my custom gridview) called Push anything, or Vehicle anything, or Haul anything.  I do have Item Hauling (but that's a skill).  Is that it?

you're probably forgetting to increase the size of the arrays
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: thistleknot on May 16, 2012, 07:30:57 am
That woulld have been nice to have in the instructions, does the array need to be adjusted in the dtg file as well?

So here's my dtg file
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: thistleknot on May 16, 2012, 08:12:48 am
Spoiler (click to show/hide)

still no push/haul vehicle
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Shishimaru on May 16, 2012, 08:29:11 am
That woulld have been nice to have in the instructions, does the array need to be adjusted in the dtg file as well?

Sorry about that, I forgot that point...

Anyway your problem is in this line:
Code: [Select]
3\sets\13\columns\11\width=43\sets\14\name=Other Jobs
It should be:

Code: [Select]
3\sets\13\columns\11\width=4
3\sets\14\name=Other Jobs
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: thistleknot on May 16, 2012, 08:35:38 am
oops, that was a rooky mistake,

thanks.  I was hitting some keys and was unsure what happened.  Thanks I can see it now!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: splinterz on May 16, 2012, 08:46:32 am
Hey splinterz, I am using the version you just posted with the vehicle hauling labors added. Sorting by squad does nothing, just like last time.

yeah i missed the squad offset again :P edit the layout file and update the squad_ref_id to:

squad_ref_id=0x08c4

and you'll have your squad sorting back
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: plaidman on May 16, 2012, 09:04:43 am
Hey DE, Just thought I'd let you know that the OP has b3 listed as the Mac download, but the google code page is already to b5. Great work though, and thanks a ton for supporting us mac users!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Anrock on May 16, 2012, 02:43:28 pm
i've updated the last build of my branched version to include the new labor columns in both default labor views, the new jobs, layout files for windows and the layout file for linux that was posted.

DOWNLOAD (http://code.google.com/r/splintermind-attributes/)

no source yet as i'm still in the process of merging other changes.
Yeah, but where is linux build?
And no layouts.
WHY ._.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: splinterz on May 16, 2012, 03:10:15 pm
oh nevermind..
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Meph on May 16, 2012, 11:18:52 pm
Do you even do a mac/linux support for your special version ? That would be new to me... I can only report that the offsets you posted work beautifully with win/legacy and df 34.08. :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: King Mir on May 17, 2012, 12:44:06 am
Sort by migration wave started working with the new layout on linux for me. That was nice because I got a big wave of 25 migrants pretty quick.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Shishimaru on May 17, 2012, 08:14:12 am
Layout for 0.34.09 Windows:

copy and paste the layout for 0.34.08 (in the "DwarfTherapist\etc\memory_layouts\windows" folder) then change these lines:

Spoiler (click to show/hide)

with these:

Spoiler (click to show/hide)


I can't test right now if there are other changes but with these values it seems to work for me
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: slink on May 17, 2012, 08:42:21 am
Thank you for the layout, Shushimaru.   :)

Did you really mean

creature_vector=0x01828998

or did you mean

creature_vector=0x01828988

because all of the others (except year) are 0x1000 higher and this one is 0x1010 higher.

Both values work, btw.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Jon-Ace on May 17, 2012, 10:55:16 am
splinterz, your branch of DT crashes immediately after trying to open it with 0.34.09 (Windows 7, 32-bit).

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: splinterz on May 17, 2012, 11:15:58 am
splinterz, your branch of DT crashes immediately after trying to open it with 0.34.09 (Windows 7, 32-bit).

yeah that version will do that without proper layout files. it will be fixed in the upcoming release.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: TerryDactyl on May 17, 2012, 11:21:38 am
splinterz, your branch of DT crashes immediately after trying to open it with 0.34.09 (Windows 7, 32-bit).

yeah that version will do that without proper layout files. it will be fixed in the upcoming release.

That said, I punched in the layouts, and it works fine.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Shishimaru on May 17, 2012, 12:01:34 pm
Did you really mean

creature_vector=0x01828998

or did you mean

creature_vector=0x01828988

Ops.. the first value points to the active creatures vector that I use because it automatically excludes kidnapped babies, the second value points to the standard creatures vector.
The issue with the first value is that if you are at the embark screen the active creature vector is empty, so I actually use the second value if using the first value leads to an empty vector (an additional check in the load_dwarves routine)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Jon-Ace on May 17, 2012, 12:45:17 pm
DT tells me that my fort is not loaded using Shishimaru's info.

Going to redownload DT.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: HammerDave on May 17, 2012, 01:12:04 pm
Weird, I've been able to use the memory scan procedure before, but this time it doesn't find a single thing for creature, dwarf race.  Brute force can find the "this_is_a_long_name" though, in 3 places.

I'm on Linux, anyone have any progress on a layout?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Shishimaru on May 17, 2012, 01:24:37 pm
DT tells me that my fort is not loaded using Shishimaru's info.
Which version of DT are you using?

With the original version the creatures vector address must be

creature_vector=0x01828988

instead of the one I posted (at least if you are at the embark screen, I think after the embark both values are ok for both versions)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: rtg593 on May 17, 2012, 10:41:08 pm
Sigh... I had what must have been the most beautiful fluke ever. When I moved an adventurer save over to 08, I tried DT for the fun of it, and it pulled up a dorf! Humored, I considered posting on here to see what would happen if I enabled, say, mining on him, figuring nothing.

Well, the dude sucked with the changes made to the materials (or at least, that's the explanation they gave me on the adventurer thread), so I deleted it, and made a new world...

Now it doesn't pull anything up, just says load a fort first. I'm guessing that's normal behavior... Any way to make it pull up the adventurer, again? It was really handy being able to look at his stats with DT's interface...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: plaidman on May 18, 2012, 07:59:57 am
I've done some quick calculations for the mac client and I think I have everything in order for v0.34.09.ini. Brief testing tells me these are probably good but I'm quite new to this and made a few assumptions based on other posts for the windows version, so tread carefully.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Drug_unit on May 18, 2012, 09:03:02 am
How do you exactly use the autouptater for this?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: TheCoolSideofthePIllow on May 18, 2012, 09:19:37 am
Is there a way to have DT display more skills? Like Organizer, Bookkeeper, and all the other administrative labors?

I am tired of not having a definitive stock count and it would be much simpler to see who (if any) dorf has the highest Bookkeeper skill if DT actually showed that skill.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Aerval on May 18, 2012, 09:46:00 am
Is there a way to have DT display more skills? Like Organizer, Bookkeeper, and all the other administrative labors?

I am tired of not having a definitive stock count and it would be much simpler to see who (if any) dorf has the highest Bookkeeper skill if DT actually showed that skill.
It's there under social skills. Maybe you didn't find it since in uses record keeper skill?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: splinterz on May 18, 2012, 09:46:29 am
Is there a way to have DT display more skills? Like Organizer, Bookkeeper, and all the other administrative labors?

I am tired of not having a definitive stock count and it would be much simpler to see who (if any) dorf has the highest Bookkeeper skill if DT actually showed that skill.

add the social tab
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: TeleDwarf on May 18, 2012, 10:10:40 am
splinterz, can I somehow add animal attributes to the animals gridview? When I copy animals gridview and add attributes - it starts to display dwarves instead of dogs :(
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Hamsmagoo on May 18, 2012, 10:22:56 am
I've done some quick calculations for the mac client and I think I have everything in order for v0.34.09.ini. Brief testing tells me these are probably good but I'm quite new to this and made a few assumptions based on other posts for the windows version, so tread carefully.

Spoiler (click to show/hide)
I've been waiting for one that works with osX, so if noone else tries this today, I can confirm it after work, tonight.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: splinterz on May 18, 2012, 10:44:58 am
splinterz, can I somehow add animal attributes to the animals gridview? When I copy animals gridview and add attributes - it starts to display dwarves instead of dogs :(

at the moment no. the animals tab and columns are kind of a hack right now. i've been debating creating some new columns for animal related things with the new changes to training and such, but i'm on the fence about whether or not it's really useful. i usually don't train a lot of animals when i play but if there's enough demand i'll look into it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: TeleDwarf on May 18, 2012, 11:46:41 am
mass training/butchering/petting is good, but I would like a good way to sort animals by body fat, muscle ammount and overall size for breading beefy pigs or pocket ponies. Also it would be good to sort dogs for training by  strength and agility.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Heedicalking on May 18, 2012, 01:05:40 pm
How do I update this to the latest version? I know how to edit the ini files but the latest ini i have is for 34.02
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: thereadlines on May 18, 2012, 02:27:56 pm
Confirming that it works in Linux just fine with the latest build, and with the Masterwork mod. Here's a step-by step for Linux folks needing help (reiteratng from BUILDING.TXT)

# Install the qt4 dev tools:
     > sudo apt-get install qt4-qmake qt4-dev-tools
# Install mercurial:
     > sudo apt-get install mercurial
#Checkout the project
     > hg clone https://dwarftherapist.googlecode.com/hg/ dwarftherapist
#Build the project
   > qmake
   > make
#copy /etc from ./splintermind-attributes to /bin/release/ and make a new directory /bin/release/log 

Now run the program **without an active DF session**. It will download the newest "updates", I'm guessing these are new layouts (is that right?). Once this is done, it will work just fine -- well, at least it hasn't crashed on me yet.

#To run the program:

      > sudo ./DwarfTherapist

You do have to run this with superuser permissions, and if you start it with an active DF session without allowing it to update first, it will immediately crash. Hope that helps.

Thanks to all of the programmers here.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Theropod Watcher on May 18, 2012, 03:14:38 pm
Heedicalking, apparently you need to connect to the version you want any memory layout for, meaning you'll have to download .034.08 and connect Therapist so it'll auto download the memory layout.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: DwarfEngineer on May 18, 2012, 03:48:44 pm
v0.34.09 Layouts Updated

Layouts are posted for all 3 operating systems and should download automatically.
Note, this is for vanilla Dwarf Therapist only, see post above for splinterz' release.

Direct Download Links:

Will work on a new release with the new skill(s) added to the grid layout & labor updates for next week.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: GoldenShadow on May 18, 2012, 04:00:59 pm
When will the 2 split builds merge together?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: thistleknot on May 18, 2012, 04:56:08 pm
I think someone pointed out when their's a lull in the releases.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: notfood on May 18, 2012, 06:43:56 pm
Linux user here of official branch.

Latest Therapist disconnects on each migrant wave, saying dwarf fortress is no longer running even though it is.

Reloading fixes it though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: demise_ on May 18, 2012, 06:46:47 pm
Hi there, returning to DF after awhile and this time im back with 64bit wind 7 which is a change. Big Fan of DT and very grateful for what you guys do.

ATM I cant seem to get DT to work though. After dumping the new ini files into the memory_layouts folder (which is the only change im making from a fresh download from code.google) and running DF i get an error complaining the version isn't correct.
It says the checksum of df(v0.34.09) has a check sum of 0xf36bac23.

Is there some part of the update process I'm skipping? or is it just bugged for me?

Edit: Problem solved! If I run Dwarf Fortress in Admin mode (Was already running DT in Admin mode) it all works OK!
Non-Admin mode must change somethings in Dwarf Fortress coding :S
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: kousoku on May 18, 2012, 06:54:05 pm
Same problem as above. Is their a place I can go to get step by step directions on how to update to 0.34.09? Thanks.

edit: figured it out. It was a sort of imatotalnewb moment...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: CLA on May 18, 2012, 07:07:45 pm
Same problem as above. Is their a place I can go to get step by step directions on how to update to 0.34.09? Thanks.
Download DF 0.34.09 or your favorite graphic pack prepacked version
unpack in new folder
copy over saves from your old version (in data/save)

Download The Rapist from the google code page
install it where ever you want
put the new memory layout posted in this thread and put it in etc/memory_layouts (or whatever it's called) in the rapist folder.
start the rapist
start DF
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: profit on May 18, 2012, 07:09:21 pm
I do not have to run either DF or DT in admin mode, however, I believe that it might be because both of them are run on the desktop away from the virtualization that happens in the program files area.  Dont know for certain but I have not had to deal with a UAC prompt from either of them ever and they just work on winders 7-64bit
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: Hamsmagoo on May 18, 2012, 07:29:14 pm
v0.34.09 Layouts Updated

Layouts are posted for all 3 operating systems and should download automatically.
Note, this is for vanilla Dwarf Therapist only, see post above for splinterz' release.

Direct Download Links:
  • Windows (Graphics) v0.34.09 (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.09_graphics.ini)
  • Windows (Legacy) v0.34.09 (http://www.dwarftherapist.com/memory_layouts/windows/v0.34.09_legacy.ini)
  • Linux v0.34.09 (http://www.dwarftherapist.com/memory_layouts/linux/v0.34.09.ini)
  • Mac OSX v0.34.09 (http://www.dwarftherapist.com/memory_layouts/osx/v0.34.09.ini)

Will work on a new release with the new skill(s) added to the grid layout & labor updates for next week.
:P!!!!!!
so happy!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: J75Ghost on May 18, 2012, 08:18:01 pm
 :D RAIN OF BLOOD, MISTS OF GOBLINS, RIVERS OF PUKE  ;D

Dwarf Therapist is working again in 34.09!!!

...And Armok smiles down from his Gold and Platinum encrusted ADAMANTINE Throne on high.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ag on May 19, 2012, 04:09:11 am
I have just generated DT ini files from DFHack structure definitions:


Found that the official windows offsets above have current_year and sex wrong, while linux ones have creature_vector wrong. This wrong vector is very deceptive in that it is initially identical to the real one, but is only valid during serialization and deserialization of game data.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: TeleDwarf on May 19, 2012, 04:30:43 am
splinterz, what does lawdwarf (weak) mean in the profession affinity? is it a sheriff?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/14/12 see first post)
Post by: TheCoolSideofthePIllow on May 19, 2012, 05:16:38 am
Is there a way to have DT display more skills? Like Organizer, Bookkeeper, and all the other administrative labors?

I am tired of not having a definitive stock count and it would be much simpler to see who (if any) dorf has the highest Bookkeeper skill if DT actually showed that skill.
It's there under social skills. Maybe you didn't find it since in uses record keeper skill?

D'oh!

I don't know why I thought the skill was "bookkeeper."
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 19, 2012, 01:35:30 pm
splinterz, what does lawdwarf (weak) mean in the profession affinity? is it a sheriff?

yeah, or i suppose hammerer. anyone you want in a law position that essentially won't punch people through the skull when administering justice  ;D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: SuicideJunkie on May 19, 2012, 02:15:21 pm
Built and ran the linux version.

I was able to start therapist, and it is able to read my existing dwarves.
However, as soon as I click on the labor grid, the app closes.

The skill legend popup is full of "UNKNOWN"s

Also, when I go to the help->about, it says 0.6.12-  and at the bottom "version check failed".
Clicking "check for updates" does nothing.  Doubleclicking the button gives "unknown error" in the console.

Any idea what might have gone wrong?

edit:
I checked the run.log file, and it had no further entries after (load_squads).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: daftfad on May 20, 2012, 10:55:33 am
Linux: DT refuses to connect whenever migrants come, presumably because of the problem ag outlined above. Anyone else having this problem on linux?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: notfood on May 20, 2012, 11:27:17 am
Linux: DT refuses to connect whenever migrants come, presumably because of the problem ag outlined above. Anyone else having this problem on linux?

Same issue here.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 20, 2012, 11:45:00 am
Linux: DT refuses to connect whenever migrants come, presumably because of the problem ag outlined above. Anyone else having this problem on linux?

Same issue here.

try changing squad_ref_id=0x070c to squad_ref_id=0x08c4 and see if that works (for linux 34.09 vanilla DT)

edit: disregard. as ag has so politely pointed out, this isn't the correct offset.

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ag on May 20, 2012, 12:43:44 pm
try changing squad_ref_id=0x070c to squad_ref_id=0x08c4 and see if that works (for linux 34.09 vanilla DT)

*facepalm*

May I ask what may be the purpose of using a windows offset in linux? That offset is 20 bytes bigger than the whole length of the unit structure there.

The reason stuff breaks once the unit set changes is almost certainly that the 'vanilla' offsets use the unit vector that is only used during game loading or saving, and ceases to be updated after that.

Specifically, this is the correct value, and not what is in those offsets:

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 20, 2012, 02:39:24 pm
try changing squad_ref_id=0x070c to squad_ref_id=0x08c4 and see if that works (for linux 34.09 vanilla DT)

*facepalm*

May I ask what may be the purpose of using a windows offset in linux? That offset is 20 bytes bigger than the whole length of the unit structure there.

The reason stuff breaks once the unit set changes is almost certainly that the 'vanilla' offsets use the unit vector that is only used during game loading or saving, and ceases to be updated after that.

Specifically, this is the correct value, and not what is in those offsets:

  • creature_vector=0x096789cc

obviously i wasn't referencing the proper offsets. hardly worth ridiculing me over.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ag on May 20, 2012, 03:11:50 pm
obviously i wasn't referencing the proper offsets. hardly worth ridiculing me over.

Yeah, sorry for the extreme reaction, but, having already posted the correct value two days ago, this whole situation was a bit too much for me.  ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 20, 2012, 04:12:39 pm
obviously i wasn't referencing the proper offsets. hardly worth ridiculing me over.

Yeah, sorry for the extreme reaction, but, having already posted the correct value two days ago, this whole situation was a bit too much for me.  ;)

ah yeah. i figured they'd have already tried that and it wasn't working... :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: TheCoolSideofthePIllow on May 21, 2012, 01:09:07 am
There doesn't appear to be a "Push/Haul Vehicle" labor tab.

Is there a way to add it? Or will the program need to be updated?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Shishimaru on May 21, 2012, 07:20:07 am
There doesn't appear to be a "Push/Haul Vehicle" labor tab.

Is there a way to add it? Or will the program need to be updated?
http://www.bay12forums.com/smf/index.php?topic=66525.msg3284854#msg3284854 (http://www.bay12forums.com/smf/index.php?topic=66525.msg3284854#msg3284854)

You may need to update the layouts
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Shishimaru on May 21, 2012, 07:38:02 am
The layout for DF 34.10 seems to be identical to the layouts for 34.09

copy and paste the layout for 0.34.09 (in the "DwarfTherapist\etc\memory_layouts\windows" folder) then change these lines:

Spoiler (click to show/hide)

with these

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: TheCoolSideofthePIllow on May 21, 2012, 08:15:43 am
There doesn't appear to be a "Push/Haul Vehicle" labor tab.

Is there a way to add it? Or will the program need to be updated?
http://www.bay12forums.com/smf/index.php?topic=66525.msg3284854#msg3284854 (http://www.bay12forums.com/smf/index.php?topic=66525.msg3284854#msg3284854)

You may need to update the layouts

I'll try it. I tried doing the edit thing, but it didn't work. If you have to edit some "DTG" file, then that was not explained, nor can I find any in the DT folders.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ag on May 21, 2012, 08:31:59 am
The windows layout for DF 34.10 seems to be identical to the layouts for 34.09

Confirming that (with the underlined addition). These ones should work for linux:

https://github.com/angavrilov/df-structures/blob/master/linux/therapist.ini (https://github.com/angavrilov/df-structures/blob/master/linux/therapist.ini)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 21, 2012, 09:35:16 am
Shishimar has been kind enough to send me a huge amount of fantastic changes recently and i've finally gotten around to merging them all to create another release. Thistleknot has also contributed to this release with some updated/fixed trait issues as well. here are some highlights:


Project Home // Download (http://code.google.com/r/splintermind-attributes/)

as always, please report any problems and i'll try to get them resolved as soon as i can. there are a lot of new offsets in this release, and i'm unable to test the linux ones so things may explode violently. there's also some delay on the initial load for the reactions and caste data and if you find it unbearable speak up and i'll see what i can do.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ag on May 21, 2012, 09:50:41 am
there's also some delay on the initial load for the reactions and caste data and if you find it unbearable speak up and i'll see what i can do.

Re performance, I see that on linux it still reopens the memory file every time it tries to read a few bytes.

See this patch from last year:

http://code.google.com/p/dwarftherapist/issues/attachmentText?id=175&aid=5269343667341637806&name=linux-performance.patch&token=TCejWaHb-AhytBPAVzvB1w2roLE%3A1337453272258 (http://code.google.com/p/dwarftherapist/issues/attachmentText?id=175&aid=5269343667341637806&name=linux-performance.patch&token=TCejWaHb-AhytBPAVzvB1w2roLE%3A1337453272258)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: thistleknot on May 21, 2012, 09:54:26 am
I'm in the works of trying to figure out a way to "efficiently" assign labors to dorf's.

I had an idea this past Friday on a few ideas.  I thought if labors had a few variables assigned to them...

such as
A. "Attention required", a float from 0 to 1, when a dorf is assigned to a labor, this value is added to that dorf's attention available pool, when that dorf is filled up to 1, it means he is near capacity.

A few variables could affect this, such as # of workshops that are fed from this labor, as well as the # of dorfs, but these additional concepts are unnecessary for initial understanding of the concept.

Two other variables that kind of tie into each other, that would affect how important the dorf's role % is for this rating:

B1. Speed required for the job (i.e. a fast miner) a value from 0 to 1, or 0 to 100%

B2. Quality required for the job (i.e. a quality mason or carpenter). 0 to 1 or 100%
  If a value of 0 is used for both B1 and B2, it means role rating % for this labor is unimportant (this is useful information for the next category C, because this means "attention required" can be spent more efficiently on a higher priority role if this role is a lower priority.
In other words.  The worst dorf for the job can be used if B1 and B2 are 0, of course one would only want to do this to save on a dorf's A variable for a job that is more important (C Variable).

C. Also, a priority sorter.  A list of labors would have priorities assigned to them, and how many of them one would need (i.e. 2 carpenters vs 3)
After priorities are set for jobs, the sorter would take the above B values, transform role %'s, and try to fill in the priority sorter first, filling up the "attention available" of dorf's until their rating is 1.

I was hoping to do some spreadsheet work on it, but it requires role %'s being outputted to a csv sheet.  I asked Shishimar if he knew of a way to export grid views to csv's

Anyone got some ideas

BTW, thanks for the update Splinterz.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 21, 2012, 11:00:53 am
there's also some delay on the initial load for the reactions and caste data and if you find it unbearable speak up and i'll see what i can do.

Re performance, I see that on linux it still reopens the memory file every time it tries to read a few bytes.

See this patch from last year:

http://code.google.com/p/dwarftherapist/issues/attachmentText?id=175&aid=5269343667341637806&name=linux-performance.patch&token=TCejWaHb-AhytBPAVzvB1w2roLE%3A1337453272258 (http://code.google.com/p/dwarftherapist/issues/attachmentText?id=175&aid=5269343667341637806&name=linux-performance.patch&token=TCejWaHb-AhytBPAVzvB1w2roLE%3A1337453272258)

nice find. have you happened to try the nickname patch posted in the same topic?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Quietust on May 21, 2012, 11:32:55 am
there's also some delay on the initial load for the reactions and caste data and if you find it unbearable speak up and i'll see what i can do.

Re performance, I see that on linux it still reopens the memory file every time it tries to read a few bytes.

See this patch from last year:

http://code.google.com/p/dwarftherapist/issues/attachmentText?id=175&aid=5269343667341637806&name=linux-performance.patch&token=TCejWaHb-AhytBPAVzvB1w2roLE%3A1337453272258 (http://code.google.com/p/dwarftherapist/issues/attachmentText?id=175&aid=5269343667341637806&name=linux-performance.patch&token=TCejWaHb-AhytBPAVzvB1w2roLE%3A1337453272258)

nice find. have you happened to try the nickname patch posted in the same topic?
In case you weren't aware, ag is the one who wrote all of those patches ("ag" == "angavrilov").
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: thistleknot on May 21, 2012, 12:17:54 pm
anyone know how & care to write an xml parser for dfhack's dwarfexport .xml file?

I'm looking for the attribute values, trait values, skill exp, dorf name values exportable to a csv file, or importable into scalc.

Maybe I should ask this in the dfhack thread...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Abysium on May 21, 2012, 12:43:42 pm
Lately (with the new minecart versions) I tend to test features on small forts that are only meent to last a year or two. To get good production speeds with a small number of dwarves, I'm using a socialist work scheme (everyone does everything)
The problem is that to do this, I still need to group the dwarves by sex (makes only 2 groups), and check every job twice(once for each sex)... now thats still a lot of clicking
my question is, is it possible to enable all jobs for everyone (except mining/woodcuting obviusly) with as few clicks as possible? preferably one?

I dont know if it would be a very much used feature, but its worth it when you only want to test some cart mechanics and want a track carved/constructed real fast...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 21, 2012, 01:17:08 pm
Lately (with the new minecart versions) I tend to test features on small forts that are only meent to last a year or two. To get good production speeds with a small number of dwarves, I'm using a socialist work scheme (everyone does everything)
The problem is that to do this, I still need to group the dwarves by sex (makes only 2 groups), and check every job twice(once for each sex)... now thats still a lot of clicking
my question is, is it possible to enable all jobs for everyone (except mining/woodcuting obviusly) with as few clicks as possible? preferably one?

I dont know if it would be a very much used feature, but its worth it when you only want to test some cart mechanics and want a track carved/constructed real fast...

if you have them grouped you can click on the header cell/square to toggle labor for the entire group. i believe this works with vanilla as well. in the version i just released you can select multiple dwarfs and then toggle the labor for all of them.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Quietust on May 21, 2012, 01:40:08 pm
my question is, is it possible to enable all jobs for everyone (except mining/woodcuting obviusly) with as few clicks as possible? preferably one?
For the record, I made this same suggestion (http://code.google.com/p/dwarftherapist/issues/detail?id=283) over a year and a half ago.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Abysium on May 21, 2012, 01:42:53 pm
great, I have to try it:)
only we just got the vanila .10
now im shaking and waiting for therapist compatible with .10

dwarf withdrawl syndrome....



also:
For the record, I made this same suggestion (http://code.google.com/p/dwarftherapist/issues/detail?id=283) over a year and a half ago.
GO SOCIALIST BUTTON:D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Shishimaru on May 21, 2012, 02:32:58 pm
great, I have to try it:)
only we just got the vanila .10
now im shaking and waiting for therapist compatible with .10
The last Splinterz version already have the layout for .10
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: slink on May 21, 2012, 04:19:49 pm
great, I have to try it:)
only we just got the vanila .10
now im shaking and waiting for therapist compatible with .10

dwarf withdrawl syndrome....


The layout for DF 34.10 seems to be identical to the layouts for 34.09

copy and paste the layout for 0.34.09 (in the "DwarfTherapist\etc\memory_layouts\windows" folder) then change these lines:

Spoiler (click to show/hide)

with these

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Abysium on May 21, 2012, 04:43:51 pm
seems so easy its almost a crime to ask:
Change the line in which file Theres probably around twenty here
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Shishimaru on May 21, 2012, 04:57:09 pm
seems so easy its almost a crime to ask:
Change the line in which file Theres probably around twenty here

1. copy the file "v0.34.09_graphics.ini" in the (in the "DwarfTherapist\etc\memory_layouts\windows" folder)
2. paste it in the same folder
3. rename this new file as "v0.34.10_graphics.ini"
4. open the file "v0.34.10_graphics.ini" and change the first lines with these:
Code: [Select]
[info]
checksum=0x4fba073a
version_name=v0.34.10 (graphics)
complete=true

or you can download the last Splinterz version of DT, it has the layouts for the 34.10

http://code.google.com/r/splintermind-attributes/ (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Abysium on May 21, 2012, 05:22:27 pm
got it
thnx
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: GoldenShadow on May 21, 2012, 05:45:54 pm
Hey splinterz, I have a bug report. I'm using your new version. When i click on the column heading to sort by skill level, some skills don't do anything. The ones I notice are:

Crossbow Making
Hunting
Trapping
Small Animal Dissection
Dyeing
Wood burning
Cheese Maker
Milker
Shearer
Spinner
Fish Cleaner
Fish Dissection
Clothes Making
Pottery
Glazing
Wax working
Siege Engineering


It seems like the one thing these all have in common is they don't have an associated role in the Role tab.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: SuicideJunkie on May 21, 2012, 06:18:05 pm
Hrm.  Maybe I'm going blind, but I can't seem to find Swimmer skill in the list.

I'm trying to dig through an aquifer and that skill is somewhat important here :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: thistleknot on May 21, 2012, 07:44:29 pm
Hey splinterz, I have a bug report. I'm using your new version. When i click on the column heading to sort by skill level, some skills don't do anything. The ones I notice are:

Crossbow Making
Hunting
Trapping
Small Animal Dissection
Dyeing
Wood burning
Cheese Maker
Milker
Shearer
Spinner
Fish Cleaner
Fish Dissection
Clothes Making
Pottery
Glazing
Wax working
Siege Engineering


It seems like the one thing these all have in common is they don't have an associated role in the Role tab.

I think it's cuz he copied shish's layouts which was missing these.  You can fix it by dl'ing an earlier version of splinterz branch, and overwriting the .ini with an older... or maybe that will fuck shit up.  you can try a pspad file comparison between the two, I'm about too...

Update:

I take that back... I don't know why there missing.  Guess time to manually put them back in...

Update again:

Yeah, I've had to manually add a bowyer role
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Anathema on May 21, 2012, 10:40:53 pm
seems so easy its almost a crime to ask:
Change the line in which file Theres probably around twenty here

1. copy the file "v0.34.09_graphics.ini" in the (in the "DwarfTherapist\etc\memory_layouts\windows" folder)
2. paste it in the same folder
3. rename this new file as "v0.34.10_graphics.ini"
4. open the file "v0.34.10_graphics.ini" and change the first lines with these:
Code: [Select]
[info]
checksum=0x4fba073a
version_name=v0.34.10 (graphics)
complete=true

I did this and uploaded Dwarf Therapist for 34.10 (http://dffd.wimbli.com/file.php?id=6064) to DFFD, for anyone that wants to avoid the hassle of downloading DF 34.09 just to get the config auto-update to edit it to 34.10. It's easy enough to edit 34.09 to work for 34.10, but apparently you can't get the 34.09 config to start with unless you auto-update with the appropriate (now outdated) DF version running? I feel like I'm missing the easy way to update :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: kingubu on May 21, 2012, 10:48:12 pm
Hrm.  Maybe I'm going blind, but I can't seem to find Swimmer skill in the list.

I'm trying to dig through an aquifer and that skill is somewhat important here :)

There has never been swimming skill in the time I've been playing.  Someone smarter than me should fix that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: runlvlzero on May 22, 2012, 01:50:09 am
seems so easy its almost a crime to ask:
Change the line in which file Theres probably around twenty here

1. copy the file "v0.34.09_graphics.ini" in the (in the "DwarfTherapist\etc\memory_layouts\windows" folder)
2. paste it in the same folder
3. rename this new file as "v0.34.10_graphics.ini"
4. open the file "v0.34.10_graphics.ini" and change the first lines with these:
Code: [Select]
[info]
checksum=0x4fba073a
version_name=v0.34.10 (graphics)
complete=true

I did this and uploaded Dwarf Therapist for 34.10 (http://dffd.wimbli.com/file.php?id=6064) to DFFD, for anyone that wants to avoid the hassle of downloading DF 34.09 just to get the config auto-update to edit it to 34.10. It's easy enough to edit 34.09 to work for 34.10, but apparently you can't get the 34.09 config to start with unless you auto-update with the appropriate (now outdated) DF version running? I feel like I'm missing the easy way to update :P

I had this problem, thanks for taking the time to upload a working version =)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 22, 2012, 03:30:11 am
Hrm.  Maybe I'm going blind, but I can't seem to find Swimmer skill in the list.

I'm trying to dig through an aquifer and that skill is somewhat important here :)

There has never been swimming skill in the time I've been playing.  Someone smarter than me should fix that.

the swimming skill isn't on any of the default views, but it's there. you can add it to any custom view you create.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ag on May 22, 2012, 03:39:25 am
the swimming skill isn't on any of the default views, but it's there. you can add it to any custom view you create.

Why can't it be in the military page, right next to crutch walker?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Tierre on May 22, 2012, 03:49:12 am
Splinterz i got a question. I tried yout DT and i have a question about traits used for labor assistant. Some of my dwarfes got 17% for fighting roles but they got all attributes to 5000 and all skills to 16 and all traits changed to suit my needs. For example they are incredibly calm and never rage. But DT says that they got only 17% affinity for fighting role O_O and for nursing too though they are fullfilled by helping others. What can cause this?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 22, 2012, 04:14:48 am
Splinterz i got a question. I tried yout DT and i have a question about traits used for labor assistant. Some of my dwarfes got 17% for fighting roles but they got all attributes to 5000 and all skills to 16 and all traits changed to suit my needs. For example they are incredibly calm and never rage. But DT says that they got only 17% affinity for fighting role O_O and for nursing too though they are fullfilled by helping others. What can cause this?

yeah that does sound strange. i'd like to take a look at the roles and dwarfs' stats... if it's not too much trouble would you mind uploading your save so i can take a closer look?

Why can't it be in the military page, right next to crutch walker?

it will be in the next patch
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ag on May 22, 2012, 04:28:14 am
have you happened to try the nickname patch posted in the same topic?

Re this: I did write it for the vanilla v0.31.25 dwarf therapist, and used my own build with it until v0.34 came out without any noted problems. It might need re-merging now though, if any related code was changed. It also doesn't address the true complexity of setting a nickname properly: :)

https://github.com/angavrilov/dfhack/blob/f37f708b37bf21ded2ca99fac6db3facd7a05fcf/library/modules/Units.cpp#L554 (https://github.com/angavrilov/dfhack/blob/f37f708b37bf21ded2ca99fac6db3facd7a05fcf/library/modules/Units.cpp#L554)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: uggi on May 22, 2012, 04:58:43 am
I'm trying to get Splinter'z build (revision 5f2c8d1b9f2b) running on Linux. It connects to DF and starts loading reactions, then races and classes, and when it tries to load dwarves, it pops up the "Unable to talk to DF" dialog. Meantime, vanilla DT works fine.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 22, 2012, 05:10:23 am
have you happened to try the nickname patch posted in the same topic?

Re this: I did write it for the vanilla v0.31.25 dwarf therapist, and used my own build with it until v0.34 came out without any noted problems. It might need re-merging now though, if any related code was changed. It also doesn't address the true complexity of setting a nickname properly: :)

https://github.com/angavrilov/dfhack/blob/f37f708b37bf21ded2ca99fac6db3facd7a05fcf/library/modules/Units.cpp#L554 (https://github.com/angavrilov/dfhack/blob/f37f708b37bf21ded2ca99fac6db3facd7a05fcf/library/modules/Units.cpp#L554)

as far as i can tell it wasn't ever merged into DT. i'm going to give it a try and i'll finally have to bite the bullet and setup a vmware with linux to test it out. thanks for the reference to that code as well, i wasn't aware the nickname was also set in the soul and historical figure id. i'll have to try that as well...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Shishimaru on May 22, 2012, 06:19:00 am
I'm trying to get Splinter'z build (revision 5f2c8d1b9f2b) running on Linux. It connects to DF and starts loading reactions, then races and classes, and when it tries to load dwarves, it pops up the "Unable to talk to DF" dialog. Meantime, vanilla DT works fine.
Which version of DF are you using?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Captain Goatse on May 22, 2012, 06:19:22 am
Thanks for your time and effort! I would like to help, but I cannot tell a line of code from a wheelbarrow.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: uggi on May 22, 2012, 06:43:50 am
I'm trying to get Splinter'z build (revision 5f2c8d1b9f2b) running on Linux. It connects to DF and starts loading reactions, then races and classes, and when it tries to load dwarves, it pops up the "Unable to talk to DF" dialog. Meantime, vanilla DT works fine.
Which version of DF are you using?

Sorry, forgot to mention it. 0.34.10. Here's an excerpt of run.log:

Code: [Select]
2012-May-22 14:44:02.869 DEBUG core Connection to DF version "v0.34.10" established. [src/mainwindow.cpp:301] (connect_to_df)
2012-May-22 14:44:02.928 DEBUG core Loading language translation tables [src/languages.cpp:53] (load_data)
2012-May-22 14:44:02.930 DEBUG core Loading generic strings from 96bb130 [src/languages.cpp:66] (load_data)
2012-May-22 14:44:02.934 DEBUG core generic words 2173 [src/languages.cpp:68] (load_data)
2012-May-22 14:44:06.322 INFO core Reading reactions names... [src/dfinstance.cpp:295] (load_game_data)
2012-May-22 14:44:07.571 INFO core Reading races and castes... [src/dfinstance.cpp:316] (load_game_data)
2012-May-22 14:44:10.320 INFO core Reading some game raws... [src/dfinstance.cpp:279] (read_raws)
2012-May-22 14:44:10.331 DEBUG core Reading from file:  "/home/uggi/df_linux_34_10/raw/objects/item_weapon.txt" [src/raws/rawreader.cpp:219] (read_weapons)
2012-May-22 14:44:10.417 INFO core Loaded 8 views from disk [src/viewmanager.cpp:133] (reload_views)
2012-May-22 14:44:10.517 DEBUG core loading creatures from  "0x09679db8" "0x09679db8" (UNCORRECTED) [src/dfinstance.cpp:379] (load_dwarves)
2012-May-22 14:44:10.518 DEBUG core dwarf race index "0x09661640" "0x09661640" (UNCORRECTED) [src/dfinstance.cpp:381] (load_dwarves)
2012-May-22 14:44:10.518 DEBUG core current year "0x0965f140" "0x0965f140" (UNCORRECTED) [src/dfinstance.cpp:383] (load_dwarves)
2012-May-22 14:44:10.518 DEBUG core civilization id: "0x0000000a" [src/dfinstance.cpp:389] (load_dwarves)
2012-May-22 14:44:10.518 DEBUG core dwarf race: "0x000001d1" [src/dfinstance.cpp:393] (load_dwarves)
2012-May-22 14:44:10.518 DEBUG core current year: 100 [src/dfinstance.cpp:396] (load_dwarves)
2012-May-22 14:44:10.519 WARNING core vector at "0x09679da8" has over 5000 entries! ( 40448574 ) [src/dfinstancelinux.cpp:66] (enumerate_vector)
2012-May-22 14:44:11.918 WARNING core Tried to read 161794296 bytes but only got 112597240 [src/dfinstancelinux.cpp:87] (enumerate_vector)
2012-May-22 14:44:15.958 INFO core found 0 dwarves out of 0 creatures [src/dfinstance.cpp:440] (load_dwarves)
2012-May-22 14:44:15.959 WARNING core not connected [src/dfinstance.cpp:497] (load_squads)
2012-May-22 14:44:15.963 WARNING core lost connection to DF [src/mainwindow.cpp:335] (lost_df_connection)
2012-May-22 14:44:16.033 DEBUG core DFInstance baseclass virtual dtor! [src/dfinstance.cpp:120] (~DFInstance)
2012-May-22 14:44:25.756 INFO core Beginning shutdown [src/mainwindow.cpp:232] (closeEvent)
2012-May-22 14:44:25.756 DEBUG core beginning to write settings [src/mainwindow.cpp:208] (write_settings)
2012-May-22 14:44:25.757 DEBUG core finished writing settings [src/mainwindow.cpp:227] (write_settings)
2012-May-22 14:44:25.757 INFO core Closing Dwarf Therapist normally [src/mainwindow.cpp:238] (closeEvent)

I've tried to locate the vectors with the scan memory tool. These are my results:

Code: [Select]
Dwarf Race = 0x09661640 (uncorrected:0x09661640)
language_vector = 0x096bb130 (uncorrected:0x096bb130)
word_table = 0x0000001c
translation_vector = 0x096bb148 (uncorrected:0x096bb148)

Can't find creature vector, and searching for squad vector eats up all the RAM and crashes.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ag on May 22, 2012, 07:00:05 am
Code: [Select]
2012-May-22 14:44:10.517 DEBUG core loading creatures from  "0x09679db8" "0x09679db8" (UNCORRECTED) [src/dfinstance.cpp:379] (load_dwarves)
...
2012-May-22 14:44:10.519 WARNING core vector at "0x09679da8" has over 5000 entries! ( 40448574 ) [src/dfinstancelinux.cpp:66] (enumerate_vector)

The first offset is a correct address of the units.active vector of units on the map. The second one is junk.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 22, 2012, 07:30:34 am
Code: [Select]
2012-May-22 14:44:10.517 DEBUG core loading creatures from  "0x09679db8" "0x09679db8" (UNCORRECTED) [src/dfinstance.cpp:379] (load_dwarves)
...
2012-May-22 14:44:10.519 WARNING core vector at "0x09679da8" has over 5000 entries! ( 40448574 ) [src/dfinstancelinux.cpp:66] (enumerate_vector)

The first offset is a correct address of the units.active vector of units on the map. The second one is junk.

yeah there's one bad offset, and an offset missing in the layout file. hopefully i'll have a fix up soon.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Shishimaru on May 22, 2012, 07:37:21 am
@uggi: in the dfinstance.cpp file find the DFInstance::get_creatures() function and change this line

Code: [Select]
VIRTADDR all_units = active_units - 0x10;
with these

Code: [Select]
VIRTADDR all_units = active_units - 0xC;
The relative offsets for the two vectors are different in linux and windows. That line actually should be:

Code: [Select]
#ifdef Q_WS_WIN
    VIRTADDR all_units = active_units - 0x10;
#else
#ifdef Q_WS_MAC
    VIRTADDR all_units = active_units - 0xC;                  <-- I don't know if this is the correct value for Mac
#else
#ifdef Q_WS_X11
    VIRTADDR all_units = active_units - 0xC;
#endif
#endif
#endif
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ag on May 22, 2012, 07:46:35 am
The relative offsets for the two vectors are different in linux and windows. That line actually should be:

Actually, they should be two different offsets: leave creature_vector to mean units.all for backward compatibility with vanilla DT, and add active_creature_vector or whatever.  ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 22, 2012, 07:55:48 am
The relative offsets for the two vectors are different in linux and windows. That line actually should be:

Actually, they should be two different offsets.  ;)

yeah that was a very bad decision to use a relative offset. i can't believe i left that in there  :-\
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Shishimaru on May 22, 2012, 07:58:11 am
My bad, that was the fastest way to test it and I was too lazy to change it afterwards...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: uggi on May 22, 2012, 09:30:31 am
@uggi: in the dfinstance.cpp file find the DFInstance::get_creatures() function and change this line

Ok, changed that, compiled and tried again. Now instead of this:

Code: [Select]
2012-May-22 14:44:10.518 DEBUG core current year: 100 [src/dfinstance.cpp:396] (load_dwarves)
2012-May-22 14:44:10.519 WARNING core vector at "0x09679da8" has over 5000 entries! ( 40448574 ) [src/dfinstancelinux.cpp:66] (enumerate_vector)
2012-May-22 14:44:11.918 WARNING core Tried to read 161794296 bytes but only got 112597240 [src/dfinstancelinux.cpp:87] (enumerate_vector)
2012-May-22 14:44:15.958 INFO core found 0 dwarves out of 0 creatures [src/dfinstance.cpp:440] (load_dwarves)
2012-May-22 14:44:15.959 WARNING core not connected [src/dfinstance.cpp:497] (load_squads)
2012-May-22 14:44:15.963 WARNING core lost connection to DF [src/mainwindow.cpp:335] (lost_df_connection)

I now got this:

Code: [Select]
2012-May-22 17:23:07.131 DEBUG core current year: 100 [src/dfinstance.cpp:396] (load_dwarves)
2012-May-22 17:23:07.744 INFO core found 0 dwarves out of 61 creatures [src/dfinstance.cpp:440] (load_dwarves)
2012-May-22 17:23:07.744 DEBUG core loading squads from  "0x096b7cc0" "0x096b7cc0" (UNCORRECTED) [src/dfinstance.cpp:520] (load_squads)
2012-May-22 17:23:07.758 INFO core Found 1 squads out of 1 [src/dfinstance.cpp:545] (load_squads)
2012-May-22 17:23:07.763 WARNING core lost connection to DF [src/mainwindow.cpp:335] (lost_df_connection)

So, it's a little better but still throwing the "Unable to talk to DF" dialog. I played around with the scan memory tool, getting the same results. Still can't find the creature vector, and trying to find the squad vector crashes DT. Here's the long crash report if needed:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 22, 2012, 09:38:49 am
@uggi: in the dfinstance.cpp file find the DFInstance::get_creatures() function and change this line

Ok, changed that, compiled and tried again. Now instead of this:

Code: [Select]
2012-May-22 14:44:10.518 DEBUG core current year: 100 [src/dfinstance.cpp:396] (load_dwarves)
2012-May-22 14:44:10.519 WARNING core vector at "0x09679da8" has over 5000 entries! ( 40448574 ) [src/dfinstancelinux.cpp:66] (enumerate_vector)
2012-May-22 14:44:11.918 WARNING core Tried to read 161794296 bytes but only got 112597240 [src/dfinstancelinux.cpp:87] (enumerate_vector)
2012-May-22 14:44:15.958 INFO core found 0 dwarves out of 0 creatures [src/dfinstance.cpp:440] (load_dwarves)
2012-May-22 14:44:15.959 WARNING core not connected [src/dfinstance.cpp:497] (load_squads)
2012-May-22 14:44:15.963 WARNING core lost connection to DF [src/mainwindow.cpp:335] (lost_df_connection)

I now got this:

Code: [Select]
2012-May-22 17:23:07.131 DEBUG core current year: 100 [src/dfinstance.cpp:396] (load_dwarves)
2012-May-22 17:23:07.744 INFO core found 0 dwarves out of 61 creatures [src/dfinstance.cpp:440] (load_dwarves)
2012-May-22 17:23:07.744 DEBUG core loading squads from  "0x096b7cc0" "0x096b7cc0" (UNCORRECTED) [src/dfinstance.cpp:520] (load_squads)
2012-May-22 17:23:07.758 INFO core Found 1 squads out of 1 [src/dfinstance.cpp:545] (load_squads)
2012-May-22 17:23:07.763 WARNING core lost connection to DF [src/mainwindow.cpp:335] (lost_df_connection)

So, it's a little better but still throwing the "Unable to talk to DF" dialog. I played around with the scan memory tool, getting the same results. Still can't find the creature vector, and trying to find the squad vector crashes DT. Here's the long crash report if needed:
Spoiler (click to show/hide)

add these offsets in the [dwarf_offsets] section in your layout file (34.10):
civ=0x00b8
mood=0x01a0
caste=0x0a4
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: uggi on May 22, 2012, 09:47:02 am
add these offsets in the [dwarf_offsets] section in your layout file (34.10):
civ=0x00b8
mood=0x01a0
caste=0x0a4

Lo and behold, it works now! Thanks for all the help!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: splinterz on May 22, 2012, 10:28:29 am
ok i've updated the source and zip package with linux fixes among other things:


Project Home // Download! (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: iXen on May 22, 2012, 12:07:27 pm
Have smb got worked it on Mac with 0.34.10? I found these indexes:
Code: [Select]
[info]
checksum=0x633f1fd3
version_name=v0.34.10
complete=false

[addresses]
translation_vector=0x01634a88
language_vector=0x01634a70
creature_vector=0x0
dwarf_race_index=0x0
squad_vector=0x0
current_year=0x01f5030c

...and so on...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: Durian Hohlades on May 22, 2012, 01:59:39 pm
34.10 when u come? :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: khearn on May 22, 2012, 03:20:36 pm
Thanks for all the effort, splinterz.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: thistleknot on May 22, 2012, 11:09:51 pm
so apparently, there already is a Dwarf Organizer program that does what I was trying to think up.

It has a "attention variable" a "priority variable", just no quality/speed weighted variable.

huh, go figure.

I'm still pushing for an implementation into DT though.  I worked on a spreadsheet that does what I need, and even typed up a dfhack plugin to export some attributes/traits properly.

http://www.mediafire.com/view/?o5rvjg74aq714lx

I'm including all updates to this concept on dwarf organizers thread
http://www.bay12forums.com/smf/index.php?topic=105530.msg3308534#msg3308534

Here's a sheet that can be used with Splinterz version of dwarf therapist
http://www.mediafire.com/?k8lx43i9rk768c3

Update:
If anyone's interested, I took my latest sheet, changed it up to include ALL labors.  It does a great job of creating a sorted drop down list, that you merely go through, and assign dwarf's to roles based on the drop down, until they are "filled" up attention wise.

Such a process would have to be redone from scratch every (so few) migrant wave(s) for optimization, as well as adjusting the variables on the 2nd sheet (but no need to add new labors).

What's nice is if you don't assign certain labor values, they are pushed down to the bottom of the list (in essence, excluding them from the dropdown), so it's tailorable to only include the labors you care about (i.e. the one's you set variables on)., when you care about new labors, they appear in the drop down.

I'm at work, so I can't upload until tonight, but I think it's a great add on for DT.


Update again:
Here it is super charged (all labors) <- see the f7 cell for instructions on how to copy stuff
http://www.mediafire.com/?8c3twchdb0bqgbe

I think though, that priority is not needed.  Before I thought about basing it on attention (like Antalia does)...
but, what if it's a job that is not that important.  Like a low priority.  I mean... what if making armor is more important than plant gathering?  What if armoring is less important than woodcutting (cuz it takes wood to make fuel?).  I don't know, that's why I had it, but I still think a quality/speed variable is important to adjust it by to sort the jobs to be assigned first.  If it takes a non skilled dwarf to do it, then best assign it last.F
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: ivanthe8th on May 23, 2012, 12:34:19 pm
I've been reading through the posts, and a lot of the work towards updating for DF 0.43.10 seems to be windows-based. So far all I've seen for mac users is iXen's unanswered post a while ago.

Would someone who knows please post what's necessary to update DT for Macs for the newest release?

Thank you.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/18/12 see first post)
Post by: DwarfEngineer on May 23, 2012, 04:46:08 pm
v0.34.10 Layouts Updated

Layouts are posted for all 3 operating systems and should download automatically.
Note, this is for vanilla Dwarf Therapist only, see post above for splinterz' release.

Direct Download Links:
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Isher on May 23, 2012, 05:16:36 pm
What is the difference between regular and splinterz? I can't seem to find an exact summary of what's different.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ivanthe8th on May 23, 2012, 05:23:39 pm
Thank you very much DwarfEngineer!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: iXen on May 24, 2012, 03:59:01 am
Hell yeah, thank you! Now I can update my pack to be compatible with 0.34.10!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: quandasim on May 24, 2012, 06:19:54 am
thanx for the linux memmory layout;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vrga on May 24, 2012, 09:10:24 am
okay, since i'm apparently retarded, how do i install splinterz version after compiling on linux? make install makes some noise about not being able to copy readme and copyright and stops there.

also, how do i disable that ptrace limitation so i dont have to run DT as root?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DwarfEngineer on May 24, 2012, 09:16:30 am
okay, since i'm apparently retarded, how do i install splinterz version after compiling on linux? make install makes some noise about not being able to copy readme and copyright and stops there.

also, how do i disable that ptrace limitation so i dont have to run DT as root?
Not sure that splinterz version has all the offsets you will need for linux, but you should be able to get it running by creating the directory structure described here (https://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist). (Basically it's a manual install step, make install doesn't have the instructions to do it)

As far as ptrace goes, this (https://wiki.ubuntu.com/SecurityTeam/Roadmap/KernelHardening#ptrace%20Protection) article covers it, but in summary:
Either do this (as root):
Code: [Select]
$ echo 0 > /proc/sys/kernel/yama/ptrace_scope…or make it permanent by setting ptrace_scope to 0 in /etc/sysctl.d/10-ptrace.conf
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vrga on May 24, 2012, 09:21:00 am
okay, since i'm apparently retarded, how do i install splinterz version after compiling on linux? make install makes some noise about not being able to copy readme and copyright and stops there.

also, how do i disable that ptrace limitation so i dont have to run DT as root?
Not sure that splinterz version has all the offsets you will need for linux, but you should be able to get it running by creating the directory structure described here (https://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist). (Basically it's a manual install step, make install doesn't have the instructions to do it)

As far as ptrace goes, this (https://wiki.ubuntu.com/SecurityTeam/Roadmap/KernelHardening#ptrace%20Protection) article covers it, but in summary:
Either do this (as root):
Code: [Select]
$ echo 0 > /proc/sys/kernel/yama/ptrace_scope…or make it permanent by setting ptrace_scope to 0 in /etc/sysctl.d/10-ptrace.conf
Thank you so very much :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: walberg on May 24, 2012, 12:08:17 pm
okay, since i'm apparently retarded, how do i install splinterz version after compiling on linux? make install makes some noise about not being able to copy readme and copyright and stops there.

also, how do i disable that ptrace limitation so i dont have to run DT as root?

To install, I usually just:
Code: [Select]
touch README COPYRIGHT; make INSTALL_ROOT=<wherever> install
The README and COPYRIGHT files are an artifact of qmake's idea of a "standard installation", which neither splinterz fork nor the "official" DT really adhere to.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: rynait on May 24, 2012, 03:31:20 pm
Splinterz

have not found your stand alone forum here.  However I would like to know where the customized role (created by adding new role in your version of DT) is saved in?

I wanted to reuse it with your newest update, rather than re-select information again.

R
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 24, 2012, 03:44:13 pm
Splinterz

have not found your stand alone forum here.  However I would like to know where the customized role (created by adding new role in your version of DT) is saved in?

I wanted to reuse it with your newest update, rather than re-select information again.

R

custom roles are saved in the dwarf therapist.ini file. if you download the latest update, you won't lose any custom roles you've already created.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: rynait on May 24, 2012, 03:47:31 pm
splinterz

I looked in the created folder "dwarf therapist" that contains your version,  and did not find the dwarf therapist.ini

Is this file saved elsewhere? 

R
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 24, 2012, 05:28:54 pm
splinterz

I looked in the created folder "dwarf therapist" that contains your version,  and did not find the dwarf therapist.ini

Is this file saved elsewhere? 

R

%appdata%\UDP Software\Dwarf Therapist.ini
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: rynait on May 24, 2012, 08:00:51 pm
Thank you... It is where you said the file is at.

R
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vrga on May 25, 2012, 07:06:15 am
okay, since i'm apparently retarded, how do i install splinterz version after compiling on linux? make install makes some noise about not being able to copy readme and copyright and stops there.

also, how do i disable that ptrace limitation so i dont have to run DT as root?
Not sure that splinterz version has all the offsets you will need for linux, but you should be able to get it running by creating the directory structure described here (https://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist). (Basically it's a manual install step, make install doesn't have the instructions to do it)
well, it works so far, with the occasional segfault when i click on a box to tick a job enabled or not, or if i manage to click between two blocks sometimes.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on May 25, 2012, 08:45:57 am
i don't know if anyone's been following or not, but shish has been coding up a way to export grid views to .csv (thank you shish) for a project I have going on, it's basically a version of Dwarf Organizer, but uses this new csv list as an input.

I'm also talking with Antalia about it.  I hope that she can do the project better than myself.  We've started a discussion on the Dwarf ORganizer thread.

Anyway's, here's my latest iteration of spreadsheet magic that can be used to currently assign dwarf's to roles, it's got a lot of developer notes in there.  I was hoping to use it as a template to make my own C Sharp version of Dwarf Organizer, but I don't see any point in stealing thunder from Antalia, especially since her's is pretty cool and she's already thought about all the ideas I did.  :'(

http://www.mediafire.com/?749ntki9c2cx882
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Tirion on May 25, 2012, 12:19:43 pm
So, how can I get my Dwarf Therapist, downloaded from the first link on the first page, to read caste and attributes? Also, how to do that update thing, it still reads Bring Crutch instead of (probably) wheelbarrow.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: N35t0r on May 25, 2012, 02:05:36 pm
Hey Splinterz, the mediafire links to your version of the tool are down for ToS violation.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on May 25, 2012, 04:16:29 pm
Any word on when the Push/Haul Vehicles skill will be added to DT?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on May 25, 2012, 09:08:44 pm
Splinterz

 a few others I can recall
  ambusher
  clothier
  plant gatherer
  cheese maker

there was a few more (if you took the patch file I sent you from shish, and made a version of DT based on it, you'd see the labor roles missing stat's)

I made a few custom roles that you might find useful, but... I don't think they should be default labor's
  nurse (combination of all the nurse labors, they are all almost similar, but using my SPREADSHEET analysis, I found only one used strength, where the rest didn't so I truncated it.)
  hauler (doing jobs that don't have related aspects) I gave all equal weight, but gave that all the "junk" work that doesn't require speed/quality.

Seriously, DT continues to improve itself thanks to your contributions.

The way I see it, you got an Executive Cabinet.  You being the Executive, you have a cabinet.  You have a % of contributor's for ideas to develop this shit.

The community is a major contributor.

Shish' as well

I like to think of myself as one (even tho my deviation from mean didn't work out, but it was a learning process).

I hope with this labor organizer, we can make DT that much more awesome.

Right now, (with my spreadsheet ANALYSIS on my Labor Organizer), military contributions makes things a bit difficult.  With what I got , chaos would ensue if war would happen.  I have a way to check for that, just include military labor, or assume a certain % of the labor force is committed to the military.  It's preliminary, but I'll get it, as I always do.

Continuous learning...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on May 26, 2012, 02:37:13 am
Just trying out latest DF and DT, and notice that the animals tab doesn't list their children in it's own section, and doesn't sort on age anymore. Is there an option to set this or can it be restored?

ta
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 26, 2012, 03:53:26 am
@Thistleknot: check the patch notes, i added a bunch of missing roles in the last release. if there are different stats you'll have to send me this mysterious patch file you mentioned

@Intrinsic: i'll see what i can do about grouping castes or races with the child/baby in separate groups. for the sorting i'm not sure it was ever sorting on age, looks like it defaulted to id number? but i'll check it out
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on May 26, 2012, 04:07:11 am
Heya thanks. I forgot to say in the v9 version under 34.07 it listed for example Cat, and then in the next collapsable section Cat Child(or Children), and i guess if it was by ID then an animals ID was incremented each time one was born so essentially it's age :) i had over 330 animals at one point lol so had to do a massive cull, makes it a lot easier :) and my stock of 8k+ turkey eggs was a bit overkill ;p
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 26, 2012, 04:32:23 am
Heya thanks. I forgot to say in the v9 version under 34.07 it listed for example Cat, and then in the next collapsable section Cat Child(or Children), and i guess if it was by ID then an animals ID was incremented each time one was born so essentially it's age :) i had over 330 animals at one point lol so had to do a massive cull, makes it a lot easier :) and my stock of 8k+ turkey eggs was a bit overkill ;p

yeah that's a lot of eggs :P.... try right clicking on the header of the name column and sorting it by the id numbers, that should give you the same sort order.

as for the child/baby splitting, it's easy to do, just a matter of which grouping we should put it on. caste? race? profession? at the moment i've got it so if grouped by caste, it uses the specific caste names: cat, kitten, dog, puppy... if you sort by race, it will group by: cat, cat (kitten), dog, dog (puppy) so that it keeps the races together when it sorts the groups alphabetically. if that doesn't make sense let me know and i'll put up some screenshots.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on May 26, 2012, 04:37:40 am
...i had forgotten we could do that(right click to sort) that works a treat ta :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on May 26, 2012, 06:29:14 am
Here it is.  My finished spreadsheet'er

I just assigned all my dwarf's to individual labors (in the spreadsheet) in the hopes that no one is over assigned.

I'm going to try my hand at coding up the algorithm for use in DT.

If anyone's interested, you guys can "optimize" your fort using this spreadsheet and a version of DT Shish coded up that allows exporting of grid views to CSV's (which is needed for the spreadsheet)

Old update history
Spoiler (click to show/hide)

I added a Dwarf Therapist Grid Layout so assigning labors is easier to do by hand
http://www.mediafire.com/?6znle279i4voxjs

See pic here
Spoiler (click to show/hide)

shish's csv dt based on splinterz 11.1
http://www.mediafire.com/?v02nwj1arncnpxn

Unfortunately, you need office 2010 (sorry guys).

It may work without office 2010, but there is a vbs script to sort.

I removed the google link because it's too much hassle without the sort script.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on May 26, 2012, 10:23:23 am
Hi splinterz, i think that the reason why animals aren't grouping is that from the drop-down dox "Race" isn't sorting them as it didn't previously for dwarves, ie it used to group them as Dwaves, Children, Babies.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 26, 2012, 10:48:38 am
Hi splinterz, i think that the reason why animals aren't grouping is that from the drop-down dox "Race" isn't sorting them as it didn't previously for dwarves, ie it used to group them as Dwaves, Children, Babies.

the races and castes were recently overhauled, so it's actually grouping properly now on the race name. but as you pointed out this is something of a loss of functionality in easily distinguishing between the adults/children/babies as they're all in a single group. i'll have this fixed up in the next update.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: xJack on May 26, 2012, 06:39:54 pm
I seem not to be able to get this to work on adventure mode. Is there a way to fix this?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: bitesh on May 26, 2012, 06:42:42 pm
Is it supposed to work in adventure mode?
Title: New Ubuntu 12.04 version?
Post by: Somnus on May 26, 2012, 09:20:19 pm
Hello! I was wondering if there were plans to update this for use with the new Ubuntu 12.04 as well? There's repositories for 10.04 and 11.10 but now 12.04. Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Tirion on May 27, 2012, 01:40:32 am
So, how can I get my Dwarf Therapist, downloaded from the first link on the first page, to read caste and attributes? Also, how to do that update thing, it still reads Bring Crutch instead of (probably) wheelbarrow.

Bump for lack of answers.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on May 27, 2012, 11:45:06 am
I haven't done any coding on this thing yet (Meph came a day early!)

hehe, but I was working on the sheet some more.

It works better now.  I had an issue where I'd end up with like 26-32 hauler's when my target rate was 8.

I fixed it by ensuring the proportion of dwarve's matches the proportion of labor's assigned.

Took me a whole night to figure out.

I also had to set a targetAtt level on the variable's sheet.  Should be set to .75, I set it to .85 cuz I'm a greedy bastard and now I have less than optimal hauler's, but everything else is going ok.

Anyways... It's ready for you guys if you want to mess with it some more.
http://www.mediafire.com/?634da0o7tvn7cbu

Update
I added a much needed "Actual Coverage" sheet that shows the real coverage of labors by dwarve's.  It's a cross sheet of dwarf's labor/# of labor's, summed up for each labor.  To give you an idea of how many dwarve's are essentially assigned to each labor.
http://www.mediafire.com/?b2s6m97r8rcehxh

It takes about 45 minutes to go through the entire process of setting, and then setting inside DT the layout that the sheet comes up with.

Some tips to make it go quicker, use the sort function on the grid sheet to sort large grouping of near 1 attention last.  Then you can mass assign them at the end.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Shishimaru on May 27, 2012, 12:55:50 pm
So, how can I get my Dwarf Therapist, downloaded from the first link on the first page, to read caste and attributes? Also, how to do that update thing, it still reads Bring Crutch instead of (probably) wheelbarrow.

Bump for lack of answers.
you have to download the Splinterz version from here http://code.google.com/r/splintermind-attributes/ (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Tirion on May 27, 2012, 02:40:19 pm
Thanks! That's an awesome version. :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on May 27, 2012, 08:43:50 pm
So I made another update.

A list of %'s for each role listed in the spreadsheet once they are assigned, I created a Percents tab...

I sure wish there was a way to straight export this stuff to a portable executable program...

http://www.mediafire.com/?h0wo8c77cpcm6sb

I was able to use the tool to assign specifically 10 military dwarve's, archer's, and still have good %'s for ratings for the rest of my dwarves.

It requires Shish's update to Splinters 11.2 to export grid views too.

AND OFFICE 2010  (sorry, I don't know or care to implement functions into openoffice, if someone else does, please post).

http://www.mediafire.com/?v02nwj1arncnpxn

I need to find some time to start coding it rather than adding fluff...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 28, 2012, 11:07:43 am
new version:

i haven't had time to do massive testing, but that's what all these beta testers community members are for right?  ;D

Project Home // DOWNLOAD (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: GoldenShadow on May 28, 2012, 01:57:17 pm
new version:
  • renamed traits to match the wiki/token names
  • fixed a few job names
  • castes, races and reactions loading optimized 
  • dwarfs can be assigned/removed from squads via right-click menu. you can assign/remove multiple dwarfs at once. this is done immediately and if grouping by squad the view will be refreshed automatically. only squads with positions available are shown. there may be some invalid squads, i haven't sorted out a way to filter them yet.
  • squads can be renamed by right-clicking on the squad name (when grouping by squad)
  • when grouping by squad, squads are sorted by position, captains are italicized and prefixed with *
  • vampires now show their fake names/ages to match DF
  • nicknames are now set properly and won't disappear after notable kills
  • animals can be grouped on caste
  • grouping animals on race groups by the race name, then child/baby name: dog (puppy)
  • grouping on migration wave will properly hide child/baby groups according to options
  • fixed improperly drawn sort arrow on first column for linux
  • fixed nicknames applying even after clicking cancel
  • added some additional flags to filter out dwarfs (courtesy of ag, i haven't tested them)

i haven't had time to do massive testing, but that's what all these beta testers community members are for right?  ;D

Project Home // DOWNLOAD (http://code.google.com/r/splintermind-attributes/)

I love the ability to draft dwarves into squads. It was such huge pain in the ass to find a good candidate in the Dwarf Therapist roles, then scroll through 200 dwarfs to find their name in the list. Thanks so much.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DuineAnaithnid on May 28, 2012, 08:16:58 pm
Any chance of getting .deb files for Ubuntu 12.04?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on May 29, 2012, 02:31:55 am
  • dwarfs can be assigned/removed from squads via right-click menu. you can assign/remove multiple dwarfs at once. this is done immediately and if grouping by squad the view will be refreshed automatically. only squads with positions available are shown. there may be some invalid squads, i haven't sorted out a way to filter them yet.
  • squads can be renamed by right-clicking on the squad name (when grouping by squad)
  • when grouping by squad, squads are sorted by position, captains are italicized and prefixed with *

OH...MY...GOOOSE! i love yoU!

Quote
  • vampires now show their fake names/ages to match DF

For this too!

Quote
  • nicknames are now set properly and won't disappear after notable kills

DT was causing this? O.o i stopped even bothering to rename them as they always lost them so thought it was a DF problem.


Quote
  • animals can be grouped on caste
  • grouping animals on race groups by the race name, then child/baby name: dog (puppy)
  • grouping on migration wave will properly hide child/baby groups according to options

Thanks! :D

What a brilliant update, now to download and try it :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: SalmonGod on May 29, 2012, 03:21:18 am
This is incredible stuff.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DrKillPatient on May 29, 2012, 03:34:13 am
Any chance of getting .deb files for Ubuntu 12.04?

I've recently compiled DT manually* on Debian-- it's very quick (EDIT: and easy), perhaps 5 minutes at the most. You may want to try that first, unless you really need a .deb for some reason.

*Tutorial here (http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist), with a specific entry for Ubuntu (10.04, but the process should be the same for 12.04). If you choose to do so, feel free to message me for any necessary assistance.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vrga on May 29, 2012, 06:33:29 am
am i the only person who's getting crashes with DT after its been open for a time? i have them happening on windows as well as linux, and they most often manifest when i leave DT for a while and go build in DF, then come back and go to reassign some jobs by just clicking at the boxes, then it just dies.

i'll post a run.log next time it does that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on May 29, 2012, 07:04:10 am
am i the only person who's getting crashes with DT after its been open for a time? i have them happening on windows as well as linux, and they most often manifest when i leave DT for a while and go build in DF, then come back and go to reassign some jobs by just clicking at the boxes, then it just dies.

i'll post a run.log next time it does that.

Sounds very familiar, i think i posted about this a few months back but it was fixed. Maybe it's re-appeared?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: GoldenShadow on May 29, 2012, 10:40:28 am
If you have DT open and connected to dwarf fortress then save your current game and then quickly continue from the main menu. You will be back in-game before DT knows you it is disconnected, if you try to commit any changes, then DT crashes.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vrga on May 29, 2012, 11:01:46 am
If you have DT open and connected to dwarf fortress then save your current game and then quickly continue from the main menu. You will be back in-game before DT knows you it is disconnected, if you try to commit any changes, then DT crashes.
my crash has nothing to do with it. besides, thats avoided by not being braindead :p
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DuineAnaithnid on May 29, 2012, 11:35:52 am
Any chance of getting .deb files for Ubuntu 12.04?

I've recently compiled DT manually* on Debian-- it's very quick (EDIT: and easy), perhaps 5 minutes at the most. You may want to try that first, unless you really need a .deb for some reason.

*Tutorial here (http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist), with a specific entry for Ubuntu (10.04, but the process should be the same for 12.04). If you choose to do so, feel free to message me for any necessary assistance.

Ah, thanks, I guess I missed where I could download the source, I only saw the .deb files
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Jon-Ace on May 29, 2012, 12:35:10 pm
new version:
  • renamed traits to match the wiki/token names
  • fixed a few job names
  • castes, races and reactions loading optimized 
  • dwarfs can be assigned/removed from squads via right-click menu. you can assign/remove multiple dwarfs at once. this is done immediately and if grouping by squad the view will be refreshed automatically. only squads with positions available are shown. there may be some invalid squads, i haven't sorted out a way to filter them yet.
  • squads can be renamed by right-clicking on the squad name (when grouping by squad)
  • when grouping by squad, squads are sorted by position, captains are italicized and prefixed with *
  • vampires now show their fake names/ages to match DF
  • nicknames are now set properly and won't disappear after notable kills
  • animals can be grouped on caste
  • grouping animals on race groups by the race name, then child/baby name: dog (puppy)
  • grouping on migration wave will properly hide child/baby groups according to options
  • fixed improperly drawn sort arrow on first column for linux
  • fixed nicknames applying even after clicking cancel
  • added some additional flags to filter out dwarfs (courtesy of ag, i haven't tested them)

i haven't had time to do massive testing, but that's what all these beta testers community members are for right?  ;D

Project Home // DOWNLOAD (http://code.google.com/r/splintermind-attributes/)

I shall make a tower in my current fort in your name for such a glorious change log.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Tierre on May 30, 2012, 03:42:21 am
Great work:) I have a request: can noble positions be showed near you dwarfes, so that you won't conscript your manager in the squad by incident and them start trying to understand why are those job not assigned to workshps.

Thanks for your work.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Rose on May 30, 2012, 04:41:46 am
Noble positions are stored very differently from job positions, and I'm not sure if therapist can support them yet.

DFhack does, though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Tierre on May 30, 2012, 04:50:11 am
Well it is only a humble request that's it:) But knowing that THIS one is your manager can make you reconsider making him a hunter:) Just a simple (not so simple to implement though) usability upgrade to DT. Also having some role evaluation to noble positions could be quite awesome too;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 30, 2012, 08:39:39 am
thanks for all the support! :)

@Tierre: i'd like to show the noble positions, but as Japa has pointed out, it may be tricky to find them. i'll have to dig through dfhack's offsets and see if i can figure out how/where they're using them
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ab9rf on May 30, 2012, 08:45:52 am
thanks for all the support! :)

@Tierre: i'd like to show the noble positions, but as Japa has pointed out, it may be tricky to find them. i'll have to dig through dfhack's offsets and see if i can figure out how/where they're using them
Autolabor applies an assignment penalty based on responsibilities, which are derived from nobles, and has special cases for the CMD and broker.  See https://github.com/peterix/dfhack/blob/master/plugins/autolabor.cpp, lines 779 to 807.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Jon-Ace on May 30, 2012, 07:16:33 pm
Another bug for you splinterz:

Started a new fort and upon going to squads, I see garbage left over from my last fort. Namely the squad names I used:

(http://i.imgur.com/DnYxf.png)


Upon unpausing after looking at this issue, two of my dwarfs randomly turned into recruits. I didn't even go into the military screen in DF yet!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: GoldenShadow on May 30, 2012, 09:06:39 pm
Another feature request:
Can we have a list of happy and bad thoughts listed in a good and bad categories with a number that shows how strong of an effect that thought has? It could be hidden in a right click menu like you did with the squad assignments.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Grax on May 31, 2012, 12:21:52 am
Upon unpausing after looking at this issue, two of my dwarfs randomly turned into recruits. I didn't even go into the military screen in DF yet!
In Soviet Russia you become a recruit upon your birth.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ag on May 31, 2012, 01:13:56 am
  • dwarfs can be assigned/removed from squads via right-click menu. you can assign/remove multiple dwarfs at once. this is done immediately and if grouping by squad the view will be refreshed automatically. only squads with positions available are shown. there may be some invalid squads, i haven't sorted out a way to filter them yet.

To find which squads actually belong to the current fortress, you need to use ui->main.fortress_entity->squads (contains ids). The same fortress_entity thing also contains noble positions and assignments, but they are more complicated to understand.

Also, you may want to disable changing the squad commander, because that entails appointment as the commander/captain, and DT can't do that, since it involves creating objects - although just simply opening the military screen in-game fixes any mismatch automatically.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: MaxxK on May 31, 2012, 01:28:48 am
I've tried to merge splintermind-attributes branch with mainstream to get OS X support and now I'm trying to find correct offsets for 0.34.10.

If anyone can correct me, it would be great:


And is it normal that DT crashes and hangs DF when I'm trying to read dwarves? It looks like creature_vector and active_creature_vector have the same lengths in Windows and Mac versions for the same save. Log:
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 31, 2012, 04:56:54 am
  • dwarfs can be assigned/removed from squads via right-click menu. you can assign/remove multiple dwarfs at once. this is done immediately and if grouping by squad the view will be refreshed automatically. only squads with positions available are shown. there may be some invalid squads, i haven't sorted out a way to filter them yet.

To find which squads actually belong to the current fortress, you need to use ui->main.fortress_entity->squads (contains ids). The same fortress_entity thing also contains noble positions and assignments, but they are more complicated to understand.

Also, you may want to disable changing the squad commander, because that entails appointment as the commander/captain, and DT can't do that, since it involves creating objects - although just simply opening the military screen in-game fixes any mismatch automatically.

ah i see. at first i tried comparing them with the 'bad squads' vector but that wasn't working consistently. yeah i was actually surprised to see that changing the commander seemed to work. originally i intended not to assign them, but after trying it out i thought it might be alright. do you think it'll potentially cause problems?

i've taken a look at the autolabor script link posted before for the nobles, but i've been getting hung up on how to read the assignment_id for a histfig_entity_link_positionst.

anyway thanks for all the help.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ag on May 31, 2012, 05:24:28 am
ah i see. at first i tried comparing them with the 'bad squads' vector but that wasn't working consistently. i didn't even try the ui vector as i saw the note about it only being valid when the ui was displayed. thanks for the help.

Don't ever look at those 'bad' vectors: they are 'bad' because they are serialization/deserialization temporaries and basically contain garbage once anything changes. Can even contain dangling pointers if/when some objects get deleted.

Re ui: that's a different vector altogether. I pointed you at the vector inside the fortress entity (object of the same general kind as civilization).

yeah i was actually surprised to see that changing the commander seemed to work. originally i intended not to assign them, but after trying it out i thought it might be alright. do you think it'll potentially cause problems?

It can be surprising. Maybe it should warn that you should open the military screen in-game and look at the squad to finalize changes if you change the commander.

i've taken a look at the autolabor script link posted before, but i've been getting hung up on how to read the assignment_id for a histfig_entity_link_positionst.

hm?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 31, 2012, 05:31:35 am
ah i see. at first i tried comparing them with the 'bad squads' vector but that wasn't working consistently. i didn't even try the ui vector as i saw the note about it only being valid when the ui was displayed. thanks for the help.

Don't ever look at those 'bad' vectors: they are 'bad' because they are serialization/deserialization temporaries and basically contain garbage once anything changes. Can even contain dangling pointers if/when some objects get deleted.

Re ui: that's a different vector altogether. I pointed you at the vector inside the fortress entity (object of the same general kind as civilization).

yeah i was actually surprised to see that changing the commander seemed to work. originally i intended not to assign them, but after trying it out i thought it might be alright. do you think it'll potentially cause problems?

It can be surprising. Maybe it should warn that you should open the military screen in-game and look at the squad to finalize changes if you change the commander.

i've taken a look at the autolabor script link posted before, but i've been getting hung up on how to read the assignment_id for a histfig_entity_link_positionst.

hm?

haha i was just editing my post as i realized the mistake about the squad vector. for the nobles i was assuming i'd have to walk through similar to this (https://github.com/peterix/dfhack/blob/master/plugins/autolabor.cpp#L779)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ag on May 31, 2012, 05:50:51 am
for the nobles i was assuming i'd have to walk through similar to this (https://github.com/peterix/dfhack/blob/master/plugins/autolabor.cpp#L779)

The game does it that way, yes; that's because it has to be able to deal with foreign nobles, e.g. diplomats and similar. If you are only interested in local ones, you can directly use fortress_entity->positions.own and fortress_entity->positions.assignments.

Edit: also, see here: https://github.com/peterix/dfhack/blob/master/library/modules/Units.cpp#L710 (https://github.com/peterix/dfhack/blob/master/library/modules/Units.cpp#L710). That autolabor code was copy&pasted from here.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on May 31, 2012, 09:57:19 am
for the nobles i was assuming i'd have to walk through similar to this (https://github.com/peterix/dfhack/blob/master/plugins/autolabor.cpp#L779)

The game does it that way, yes; that's because it has to be able to deal with foreign nobles, e.g. diplomats and similar. If you are only interested in local ones, you can directly use fortress_entity->positions.own and fortress_entity->positions.assignments.

Edit: also, see here: https://github.com/peterix/dfhack/blob/master/library/modules/Units.cpp#L710 (https://github.com/peterix/dfhack/blob/master/library/modules/Units.cpp#L710). That autolabor code was copy&pasted from here.

to indicate which dwarfs are nobles that should work perfectly! thanks again.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: orius on June 01, 2012, 09:11:13 am
Here's an issue I've been having with splinterz' branch:

(http://i.imgur.com/CBanE.png)

The labor group cells are being highlighted with a deep blue color and a dark navy when some but not all dwarves in the group have a particular labor turned on.  I checked vanilla Therapist, but it's not happening there.  I also switched my settings back to the defaults in case it was the result of some option I switched on unaware, but that didn't fix the problem.  Anyway, the blue colors are making it difficult to see if labors are tunred on when I highlight a group.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 01, 2012, 09:59:36 am
try changing the colour of the partial group cell in the options and see if that helps
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: orius on June 02, 2012, 08:19:41 am
That looks like it might work, though I didn't change that color, it was on default.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: LuRockz on June 02, 2012, 05:03:54 pm
Spoiler (click to show/hide)

I downloaded the latest version of DT and DF and tried connecting, this is what I got.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: MaxxK on June 03, 2012, 02:54:34 am
So, there is working DT for OS X with splinterz' modifications:

https://docs.google.com/open?id=0BwEa50ni6h2NUmFuZE9IcVoxNzg

Use with caution, I didn't have any time to play and check :) I've switched autoupdate off.

And this is ini-file for 34.10 OS X, if anyone wants to merge and compile DT on his own (based on linux version):
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Purple_Drink on June 03, 2012, 07:14:17 pm
Spoiler (click to show/hide)

I downloaded the latest version of DT and DF and tried connecting, this is what I got.

I had the same problem. i downloaded the ini files on the link below into   C:\DwarfTherapist-0.6.12/etc/memory_layouts/windows

http://www.bay12forums.com/smf/index.php?topic=66525.2055 (http://www.bay12forums.com/smf/index.php?topic=66525.2055)

hope that helps.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on June 04, 2012, 12:18:18 pm
Thank you so much for your work on DT.  It makes many additional aspects of DF interesting and engaging instead of a chore.

There is one thing in DT that drives me crazy though - the way the main grid scrolls back to the top when you change tabs.  Once a fort gets to 200+ dwarves, it seems I spend half my time in DT scrolling back down to the dwarf I want when I change tabs, commit pending changes or read dwarves.

I presume this is an automatic behavior of the grid UI element when it is refreshed, but would it be possible in code to record your viewing position in the list and then force the grid back to that position after it refreshes?

This would save me and I'm sure many others so much time and annoyance, not to mention wear and tear on our mouse wheels.   :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Bohandas on June 04, 2012, 07:21:57 pm
This is a great utility; Dwarf Fortress would probably be completely unplayable without it.

That said, would it be at all possible for you to add the ability have it read dwarves' attributes in addition to their skill levels and personality traits?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: slink on June 04, 2012, 10:07:04 pm
This layout appears to work with DF 34.11, for the DwarfEngineer version of DT under Windows.  Name it v0.34.11_graphics.ini

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: leafbarrett on June 05, 2012, 12:25:21 am
This layout appears to work with DF 34.11, for the DwarfEngineer version of DT under Windows.  Name it v0.34.11_graphics.ini

Spoiler (click to show/hide)
Uhh... do what with what? I'd like to know, because as is, I can't use DT anymore. Does it work for vanilla DT, or do I have to go hunting through the topic for a specific thing? (I already tried the search function, it didn't work, so don't even go there)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Anathema on June 05, 2012, 02:43:13 am
I've uploaded Dwarf Therapist for 34.11 (http://dffd.wimbli.com/file.php?id=6064&posted=true#c_510) to DFFD using the .ini file provided by Slink, for the good of all.

Uhh... do what with what? I'd like to know, because as is, I can't use DT anymore. Does it work for vanilla DT, or do I have to go hunting through the topic for a specific thing? (I already tried the search function, it didn't work, so don't even go there)

It's actually very easy, although the instructions on how to do so (probably repeated a few dozen times) are buried deep within this thread, somewhere between cavern layer 3 and the magma sea. Which is why I upload a complete working version, as seen above, as a stopgap until DwarfEngineer gets the autoupdate.. well, updated.

So feel free to use the link above, but just for your enlightenment, here's how it's done:
-Download the old Dwarf Therapist from page 1
-Navigate to DwarfTherapist-0.6.12\etc\memory_layouts\windows (assuming you're using windows, of course, you'll have to ask someone else about Mac or Linux)
-Copy/paste one of the old .ini and rename it to "v0.34.11_graphics.ini" or whatever the latest version is
-Open it with a text editor and replace the code in there with that stuff Slink posted (someone, often Slink, will post this shortly after any DF update)
-Save.

Naturally these instructions - like all the ones before them - will quickly be lost to the mists of time, so you may look forward to me keeping that listing on DFFD updated. If I miss an update just comment on DFFD or PM me here to nudge me - or do it yourself, now that you are among the enlightened :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: yamamushi on June 05, 2012, 07:30:13 am
Any chance someone has the layouts for 34.11 on OSX?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: leafbarrett on June 05, 2012, 09:51:08 am
Thanks muchly!

Maybe the OP should add that to the first post?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: LordBaal on June 05, 2012, 11:04:00 am
I have a question, how can we manage squads from therapist? Or that feature was completely removed?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: khearn on June 05, 2012, 11:16:46 am
You can manage squads in splinterz branched version, but that hasn't made it back to the official version yet.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Socializator on June 05, 2012, 11:50:13 am
You can manage squads in splinterz branched version, but that hasn't made it back to the official version yet.

Does anyone have working ini for it? Posted one doesnt work for it - I guess it is for DT only
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 05, 2012, 11:58:12 am
I've uploaded Dwarf Therapist for 34.11 (http://dffd.wimbli.com/file.php?id=6064&posted=true#c_510) to DFFD using the .ini file provided by Slink, for the good of all.

Hello there :)

Any chance a tweak will make this work for the splintermind (http://code.google.com/r/splintermind-attributes/) version? I did add this v0.34.11_graphics.ini file with your text, but I guess the checksum will be wrong, no? sorry, stupid idea, this beeing the checksum of DF 34.11
Is this something I can fine easely, waiting to splinter for an update?

Quote
[info]
checksum=0x4fcc9488
version_name=v0.34.11 (graphics)
complete=true
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Shishimaru on June 05, 2012, 12:16:03 pm
These should work with the splinterz version (I haven't tested the linux version)

Windows layout

Spoiler (click to show/hide)

linux layout

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 05, 2012, 01:27:16 pm
These should work with the splinterz version (I haven't tested the linux version)
Windows layout

You're a bless you know?
I was scratching my head to find a bloody mechanist in the loooong list of dwarves, and here you come with this solution for splinter's therapist! Thanks a lot :)

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ivanthe8th on June 05, 2012, 04:16:02 pm
Any chance someone has the layouts for 34.11 on OSX?
I've found we need to wait on DwarfEngineer for osx layouts. Wonderful people like Slink seem to work primarily on windows machines.

Many thanks to all those involved!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: MaximumZero on June 05, 2012, 07:15:40 pm
You guys are the greatest, you know that?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 05, 2012, 11:09:34 pm
I'm working with Splinterz on getting a version of Dwarf Organizer implemented into DT.

Really, just doing a console version (at the moment) thanks to a patch file Shishimaru gave me, I'm able to csv export Role %'s.

I've got the prototype to load up all my objects just right, initialized just right.  Now time to work on the algorithm (sweet).

I hope to figure out how to import a csv of dwarf and respective labors to auto'magically' assign the labors...

and then slowly but surely work with Splinterz to get it implemented into DT.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DwarvesAtWork on June 06, 2012, 11:39:10 pm
First off - thank you for creating and maintaining this mod!!

I was hoping to get some help with Linux. I'm a Windows professional, but a Linux newbie. I cannot get it to install on Linux Mint 12. I've followed the install instructions here using Oneiric:
http://code.google.com/p/dwarftherapist/wiki/LinuxVersion

I do sudo apt-get update. And then I go to the software manager to install it. Dwarftherapist is listed. Then I click the install button, the system prompts for password and the install appears to start. But it never finishes.

I've restarted and tried the Lucid repository line. But it just won't install.

I had dwarf therapist installed previously for version 31.25. But I removed that version so I could install the latest for 34.10.

Any pointers would be appreciated.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: khearn on June 07, 2012, 12:17:14 am
I've always had problems getting the linux package to install. So I just download the sources and compile. It's a very easy build, once you get the prerequisites installed (but don't ask me what they are, I've forgotten). Just 'qmake' then 'make'.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 07, 2012, 06:55:04 am
i've finished up another version for you ladies and gentlemen:

v13 34.07-34.11

Project Home // Download (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DwarvesAtWork on June 07, 2012, 07:32:19 am
I've always had problems getting the linux package to install. So I just download the sources and compile. It's a very easy build, once you get the prerequisites installed (but don't ask me what they are, I've forgotten). Just 'qmake' then 'make'.
Thanks. I've tried some of that too. Qmake seems to work fine, but Make gives me an error 127.
Going off the Dwarf Therapist google code wiki pages, I've installed all the dependencies listed. But I still get error 127 on Make.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: toasteur on June 07, 2012, 07:48:02 am
i've finished up another version for you ladies and gentlemen:

v13 34.07-34.11
  • the tabs/views will remember their sort and scroll positions (tab/view specific)


very nice, it was quite annoying when going back and forth between the job tab and the role tab to re-sort each time.

seing all these new awesome features, i was wondering if at some point dwarfs preferences could be brought to DT since i think it's now the only missing piece of information when deciding to assign jobs to dwarfs (an armorsmith/weaponsmith who likes adamantium/steel gives non-negligible bonus to the final product for example) i couldn't see objects to preferences in dfhack, some it may be hard to add if nobody knows where to look in memory for theses.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: walberg on June 07, 2012, 08:04:03 am
i've finished up another version for you ladies and gentlemen:

v13 34.07-34.11

@splinterz - Something not quite right in the new version. Haven't had a chance to track it down yet, but my Linux build (debian 5.0.8, Qt 4.6.3 - I know, it's a little behind on updates), it goes through the process of loading dwarves, squads, etc with the expected progress bar display, but then hangs before it actually draws the grid. Not sure if that suggests an obvious place to look - I'll try to get a little more info later if necessary. Same results with DF 0.34.07 and 0.34.11 - didn't try all the intermediates...

Edit: had a closer look, and it seems it wasn't actually hanging - it just took that much longer to calculate everything, and it didn't help that I was testing on my slow-ish laptop instead of my main machine. Seems to work ok on this system, aside from other niggly bits already mentioned by other folk.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: caddybear on June 07, 2012, 08:13:40 am
Is there any way to make therapist read family data ... to keep track of families?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 07, 2012, 08:34:03 am
i've finished up another version for you ladies and gentlemen:

v13 34.07-34.11

@splinterz - Something not quite right in the new version. Haven't had a chance to track it down yet, but my Linux build (debian 5.0.8, Qt 4.6.3 - I know, it's a little behind on updates), it goes through the process of loading dwarves, squads, etc with the expected progress bar display, but then hangs before it actually draws the grid. Not sure if that suggests an obvious place to look - I'll try to get a little more info later if necessary. Same results with DF 0.34.07 and 0.34.11 - didn't try all the intermediates...

yeah i was afraid the drawing changes might have broken something  :-[  it seemed to be alright on my linux virtual machine, but i'll play with it some more, please let me know if you discover anything. maybe take a look at the log file or send it to me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 07, 2012, 10:40:48 am
Is there any way to make therapist read family data ... to keep track of families?

Legends Viewer is hoping to have Family Tree's at some point, i'm not sure it fits the scope for DT though unless it had a plugin system and someone rolled their own.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 07, 2012, 12:15:06 pm
yeah i was afraid the drawing changes might have broken something  :-[  it seemed to be alright on my linux virtual machine, but i'll play with it some more, please let me know if you discover anything. maybe take a look at the log file or send it to me.

Speaking of changes:
Do you know what give the white gray letter color on top of white for the detail of dwarves? I'm struggling to read :)
While I'm at it, thanks for the good work, I can play without your version and the squad management!

(http://tof.canardpc.com/preview/74ed3869-7503-4489-8864-d996ce0ecefa.jpg) (http://tof.canardpc.com/view/74ed3869-7503-4489-8864-d996ce0ecefa.jpg)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 07, 2012, 12:40:22 pm
yeah i was afraid the drawing changes might have broken something  :-[  it seemed to be alright on my linux virtual machine, but i'll play with it some more, please let me know if you discover anything. maybe take a look at the log file or send it to me.

Speaking of changes:
Do you know what give the white gray letter color on top of white for the detail of dwarves? I'm struggling to read :)
While I'm at it, thanks for the good work, I can play without your version and the squad management!
Spoiler (click to show/hide)

yeah that's awful, was that just with this last update? is that on linux?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 07, 2012, 01:11:14 pm
It'd running on windows 7, and yes, the very last update v13 34.07-34.11 (with DF 34.10)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Jon-Ace on June 07, 2012, 01:36:33 pm
Yay! Another splinterz release! Will edit this post if I find any bugs.


EDIT1: Having Argelle's same problem. Windows 7, DF 34.11
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 07, 2012, 02:21:20 pm
is it only showing light text on the tooltip over the dwarf name, or is it all tooltips?

edit: ok i've fixed the tooltip color issue, please verify that it's working properly.  DOWNLOAD  (https://rapidshare.com/files/685926344/Dwarf_Therapist-13.zip)

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Jon-Ace on June 07, 2012, 02:24:23 pm
is it only showing light text on the tooltip over the dwarf name, or is it all tooltips?

As far as I can tell, only on the dwarf tooltips.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: caddybear on June 07, 2012, 02:36:47 pm
is it only showing light text on the tooltip over the dwarf name, or is it all tooltips?

edit: ok i've fixed the tooltip color issue, please verify that it's working properly.  DOWNLOAD  (https://rapidshare.com/files/685926344/Dwarf_Therapist-13.zip)


It appears fixed, thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on June 07, 2012, 02:51:05 pm
Finally got round to updating from .04 to .11...

I'm loving the new 'can wield these weapons' feature even though it's about half a dozen ticks after embark. No more hoarding human weapons and seeing who takes one when ordered to!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 07, 2012, 03:31:12 pm
is it only showing light text on the tooltip over the dwarf name, or is it all tooltips?

edit: ok i've fixed the tooltip color issue, please verify that it's working properly.  DOWNLOAD  (https://rapidshare.com/files/685926344/Dwarf_Therapist-13.zip)


It appears fixed, thanks.

fantastic, let me know if anything else comes up. i'm also curious as to what you guys think of the icons/color stuff, good bad, irrelevant? :)

Finally got round to updating from .04 to .11...

I'm loving the new 'can wield these weapons' feature even though it's about half a dozen ticks after embark. No more hoarding human weapons and seeing who takes one when ordered to!

good to hear it's useful. i'm not sure if it was you who originally brought up the idea, but i did see it in this thread.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: khearn on June 07, 2012, 04:24:30 pm
Splinterz,

I just did an hg clone and build on linux (ubuntu). It works fine for me. I love having the sort preserved, thanks for implementing it.

Since you asked for feedback on them, I'll say I'm not thrilled with the new job icons. But that may just be because I was familiar with the old ones and don't know the new ones yet. So please don't take any of these comments as criticism, except in the constructive sense. I'll probably like them more as I get used to them.

The smelt ore and make charcoal icons seem to be the same, and the icon doesn't make sense for charcoal making (and I'm not too sure about it for smelting, I thought it was brewing at first). I'm guessing the charcoal making will be changed at some point, since you did say it's a work in progress.

For some of them I just can't tell what it's supposed to be. Drink and eat seem clear enough. Sleep seems to be a circle with maybe clouds and a sun in it. I'm not sure why that's sleep, the old Z was pretty clear.

I'm guessing "fish" is the tail end of a fish that's been chopped in half (or else the head of a desk lamp). The half fish interpretation would make sense for fish cleaning or dissecting, but a whole fish would more sense for fishing. The desk lamp interpretation makes no sense, so I'm assuming that's completely off base.

I have no clue what "store item in stockpile" is supposed to be. "Pickup equipment" appears to be the same thing as "store item in stockpile", but I still have no idea what it is. Looks kind of like a big wall-mounted alarm bell, like schools used to have, but I doubt that's what it's supposed to be. :)

"Store item in bin" seems fairly clear, a bin with a green +. I assume "store item in barrel" will be changed to a barrel with a + when you get a chance.

"Pen/Pasture large animal" must be a pasture gate with a green +, but it looks to me more like a computer punch card, except that it's the wrong color. But I suspect that not many people would think of a punched card, so that probably says more about me than it does about the icon. :)

"Train War Animal" seems to be a kitty. I guess that's generic for all the training tasks, but I don't have many war kitties in my fort. Of course, I guess it could also be a War Giant Tiger, which does make perfect sense. At least I can see that it's an animal, so it must be a train animal task. So it's fine as far as I'm concerned.

The "detail wall" icon seems to be a paintbrush, which kind of makes sense. Trying to do a recognizable hammer and chisel that small would be difficult. The paintbrush does imply artistic imaging, and I can't think of anything better for engraving.

I also note that when I sort by job, "no job" and "on break" are intermingled, but the icons do make sense.

That's everything that my dwarves are doing at the moment. I guess I should work on getting them to do other things so I can tell you what's wrong with other icons as well. ;) But seriously, I do appreciate the effort. There were many tasks that all had the same icons like a blue triangle in a circle, or a blue dot, so a revamp is certainly a good thing.

Regarding the noble highlighting, i like the concept but I think the colors are too dark. I know I can create custom colors, and I'm trying out some that are much lighter. The trouble I was having is that when I have a dwarf selected, it was getting lost amongst the nobles that were all similar darkness. By having the nobles be lighter shades, the selected dwarf stands out better. It might be good to have more pastels in the non-custom colors.

The happiness icons don't appeal to me too much, either (boy, I'm sure negative today, sorry). It's too hard for my eyes to tell a yellow circle with a smile from a yellow circle with a scowl. The solid colors were much easier for me to distinguish. But you've given the option to use the icons or colors, so people can pick whichever they prefer.

The gradients also don't work too well in the happiness boxes, they're just too small for gradients to work well. The gradients do look good for larger areas, like the dwarf names.

All-in-all, a very nice set of new features, even if I mostly seem to be saying what I don't like. Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 08, 2012, 03:55:45 am
edit: ok i've fixed the tooltip color issue, please verify that it's working properly.  DOWNLOAD  (https://rapidshare.com/files/685926344/Dwarf_Therapist-13.zip)

Nice fix, it works!
As for the feed back you ask, I'd say I like very much the new feeling globally, but I would not give a detail icon by icon as khearn did, since it seems a bit subjective. On top of it, one has to get use to it, so let it be for a moment ;-)
Current jobs : nicer, clear, but I really only look at idle dwarves or mouse other to see the job in hand.
Happiness : for me it was a nice improvement, and smileys talk more to me than colors. Sure if you have time to do, icons AND color code would be great (from yello smiling to red pissed off).
Nobles and squad : that is the very reason I use your branche of DT. A real +++.
Quote
Regarding the noble highlighting, i like the concept but I think the colors are too dark.
huh? I do not see what you refer to. For me, nobles are highlighted by * * and italics. *Stephanie de Monaco*
Roles tab : so usefull that I feel like cheating instead of reading the wiki to hire a noble :) Why are "broker" and "bookeeper" there, but not other nobles role?

EDIT : Just notice that sorting out by migration wave is wrong when another classification is set. Here : 518/518/519/518 because I classified by "miners". It is fine otherwise (all 518 then 519 in military). I not not know if it's specific to your branch, nor do I found how to "deselect" a classification (like "miners" here).

(http://tof.canardpc.com/preview/f4be5f1f-cf13-4655-bc4a-4a3f082ee9b5.jpg) (http://tof.canardpc.com/view/f4be5f1f-cf13-4655-bc4a-4a3f082ee9b5.jpg)

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Rose on June 08, 2012, 04:22:30 am
If you need some happiness icons, Stonesense has some that look pretty good, and are both color coded and smileys.

(https://github.com/peterix/stonesense/raw/master/resources/SSStatusIcons.png)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 08, 2012, 08:32:44 am
@khearn: whew, that's a lot to take in, thanks for taking the time to reply in such detail.
job and on break i'll see about changing the id number so they're separated. i'm not sure i can set the color chooser, i think it's automatically grabbing 'defined' colors. are the gradients on the happiness squares inhibiting you from distinguishing the level, or you simply don't like it?

@Argelle: you can turn on highlighting for nobles and choose colors for them in the options. i only created default roles for noble positions have have related labors. you can however create your own custom roles! i'll look into fixing the sorting when grouped by migration.

@Japa: thanks, i think those happiness icons will be much easier to distinguish
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 08, 2012, 09:01:42 am
@Argelle: you can turn on highlighting for nobles and choose colors for them in the options. i only created default roles for noble positions have have related labors. you can however create your own custom roles!

I did see "custom professions", assumed it was for exemple a "woodgaterer" (woodcutter and herborist) but overlooked the same for roles. It is kind of way beyond my level for now, as the wiki, DF itself showing some skills for the role and my brain tell all different stories about what make a good, say, bookeeper, or a bookeeper able to gain experience.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 08, 2012, 02:57:31 pm
@splinterz
Can you make labors, attributes and roles use a stable sort like military currently does?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 08, 2012, 03:07:59 pm
@splinterz
Can you make labors, attributes and roles use a stable sort like military currently does?

sorry, you'll have to elaborate for me exactly what you're talking about. i'm unaware of any change in sorting on the military tab.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 08, 2012, 03:17:52 pm
In the military tab, if I sort by any skill, then sort by another skill, the order of same value skills (in particular 0 value skills) remains unchanged. So If I sort by dodger then by siege operator, all 0 skill siege operators will be sorted by their dodge skill. This is called a stable sort.

I don't know if you're using the STL, but if you are, there is a stable sort algorithm in the standard library.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 08, 2012, 03:32:07 pm
In the military tab, if I sort by any skill, then sort by another skill, the order of same value skills (in particular 0 value skills) remains unchanged. So If I sort by dodger then by siege operator, all 0 skill siege operators will be sorted by their dodge skill. This is called a stable sort.

I don't know if you're using the STL, but if you are, there is a stable sort algorithm in the standard library.

yes i'm aware of the stablesort, that's why i'm surprised that's somehow working for the military tab, as i'm fairly certain there's no stable sort used anywhere.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 08, 2012, 03:36:06 pm
It's definitely stable sorting on the military tab. If I click siege operator multiple times it will move the dwarves with that skill around, but not the dwarves with 0 skill.

And the social tab too.

EDIT: On further inspection, it seems to be working on the labor tab, but if there is a role associated with a skill, it'll use role as a secondary sorting criteria. And since most dwarves have some aptitude for any particular role, this means that the 0 skill dwarves will no longer preserve their old order.

It's a bit of a loss of functionality because I can't for example move all my miners and Engravers to the top at once. I'm sure it has it's benefits though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 08, 2012, 03:50:29 pm
that was a patch or two ago, it will sort by whether or not the labor is enabled, and then by the role rating. if you turn off showing related roles in labors in the options, it'll be back to the original functionality. i changed it because i figured it would be useful to sort the labors by who was best rated based on the roles, for easy assignment without having to check the roles tab.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 08, 2012, 03:55:00 pm
Ok I get it now. No change required.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ludsoe on June 09, 2012, 01:32:46 am
When will it be compatible with 0.34.11? I get cant communicate errors on start up while using the new DF version
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: eataTREE on June 09, 2012, 02:31:39 am
If anyone's interested, I have working offsets for v0.34.11 on OSX. These are for vanilla Dwarf Therapist; at the moment I can't make Splinterz's version build.

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: yamamushi on June 09, 2012, 03:10:17 am
If anyone's interested, I have working offsets for v0.34.11 on OSX. These are for vanilla Dwarf Therapist; at the moment I can't make Splinterz's version build.



Thank you!!!!! :D :D :D :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 09, 2012, 09:51:23 am
When will it be compatible with 0.34.11? I get cant communicate errors on start up while using the new DF version

It was compatible with 34.11 on the day 34.11 was released...just go back a few pages for the layouts or use the one in the LNP.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sebovzeoueb on June 09, 2012, 02:25:18 pm
I'm on OS X, and Dwarf Therapist doesn't seem to be working for me with 0.34.11 currently. What do I do with the OS X offsets to make it work?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: eataTREE on June 09, 2012, 02:55:18 pm
I'm on OS X, and Dwarf Therapist doesn't seem to be working for me with 0.34.11 currently. What do I do with the OS X offsets to make it work?
You would have to paste them into your Dwarf Therapist application manually. While not a particularly difficult process, it involves use of the command line. Command-line environments have been found to cause panic and anxiety in the technologically challenged. Proceed at your own risk; consult your local Mac or Linux/Unix guru if symptoms persist:)

First, select the stuff in that 'code' block -- all of it -- and copy it to clipboard with Apple-C. Then open a terminal window (Applications/Launchpad -> Utilities -> Terminal) and, in the terminal window, proceed as follows (text in parenthesis are instructions for you to follow, text outside parenthesis are commands for you to type as shown):

Code: [Select]
cat > v0.34.11.ini
(Now press Apple+V on your keyboard to paste the offset text, then RETURN followed by Control+D. You should get the terminal prompt back at that point.)
cd /Applications/DwarfTherapist.app/Contents/MacOS/etc/memory_layouts/osx
sudo cp ~/v0.34.11.ini .
(It will ask you for your password, type it, your keystrokes will not show up on the screen. Once you hit RETURN and see the terminal prompt again, you're done and can press Control+D to end your terminal session.)

Now launch Dwarf Therapist like you normally would and it should connect to v0.34.11.


Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Geleihoofd on June 09, 2012, 04:50:13 pm
@splinterz

There seems to be a little problem with the info in the mouse-overs sometimes. At least after changing some options and re-read the dwarfs.
The related roles percentages in the cell mouse-over seems to differ until you switch to the roles tab and back. The same for the top 3 roles in the name mouse-over, first there are zero roles, after switching to the roles tab and back there are three again...

Running @ Win7 x64
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sebovzeoueb on June 09, 2012, 04:59:08 pm
@eataTREE

Thanks very much, while I wouldn't exactly define myself as 'technologically challenged', I definitely have no idea what I'm doing when it comes to using the command line.

Your step by step guide is very precise and well explained in layman's terms, and Dwarf Therapist now appears to be running correctly with the latest version of DF.

10/10 would follow instructions again.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ivanthe8th on June 09, 2012, 06:12:55 pm
I'm on OS X, and Dwarf Therapist doesn't seem to be working for me with 0.34.11 currently. What do I do with the OS X offsets to make it work?
You would have to paste them into your Dwarf Therapist application manually. While not a particularly difficult process, it involves use of the command line. Command-line environments have been found to cause panic and anxiety in the technologically challenged. Proceed at your own risk; consult your local Mac or Linux/Unix guru if symptoms persist:)

First, select the stuff in that 'code' block -- all of it -- and copy it to clipboard with Apple-C. Then open a terminal window (Applications/Launchpad -> Utilities -> Terminal) and, in the terminal window, proceed as follows (text in parenthesis are instructions for you to follow, text outside parenthesis are commands for you to type as shown):

Code: [Select]
cat > v0.34.11.ini
(Now press Apple+V on your keyboard to paste the offset text, then RETURN followed by Control+D. You should get the terminal prompt back at that point.)
cd /Applications/DwarfTherapist.app/Contents/MacOS/etc/memory_layouts/osx
sudo cp ~/v0.34.11.ini .
(It will ask you for your password, type it, your keystrokes will not show up on the screen. Once you hit RETURN and see the terminal prompt again, you're done and can press Control+D to end your terminal session.)

Now launch Dwarf Therapist like you normally would and it should connect to v0.34.11.

There is an easier approach for osx. If you right-click on Dwarf Therapist in your applications folder, click "show package contents" it shows you all the files associated with the program.

That shows you the myriad of folders associated with the Therapist. To find the memory layouts, go through MacOS>etc>memory_layouts>osx There you'll find the .ini files for the current version. You can open textedit and copy/paste the data and save it as an appropriately-named .ini file into the folder.

It seems a little bit complex, digging through all those folders. But at least you aren't using the command line.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 09, 2012, 06:31:12 pm
Rememberer folks: When you use the command line, you're in command.

But here the command line is a convenience for navigating to the correct folder and not opening a text editor. You can instead navigate to the folder through the gui, and then use a text editor to save the information under the proper name.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 09, 2012, 06:34:40 pm
@splinterz

There seems to be a little problem with the info in the mouse-overs sometimes. At least after changing some options and re-read the dwarfs.
The related roles percentages in the cell mouse-over seems to differ until you switch to the roles tab and back. The same for the top 3 roles in the name mouse-over, first there are zero roles, after switching to the roles tab and back there are three again...

Running @ Win7 x64

do you need to go to the roles tab, or does selecting another dwarf on the current tab refresh it after a read?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: plaidman on June 09, 2012, 08:20:45 pm
Did I miss something? Have the OSX offsets for .11 been posted?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Geleihoofd on June 09, 2012, 09:49:59 pm

do you need to go to the roles tab, or does selecting another dwarf on the current tab refresh it after a read?

Yes, I have to go to the roles tab.

To be more precise, I have to go to the roles tab every time I've commited some changes to DF, otherwise the top 3 (I use 10) roles are gone and the role percentages are scaled down (since it doesn't make any difference in sorting).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 10, 2012, 01:02:06 am
Same observation than Geleihoofd there, on win 7, 32 bits.
Pop up on a dwarf : 0 top 3 roles, change tab, going back : top 3 displayed in pop up.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ludsoe on June 10, 2012, 01:41:44 am
If anyone's interested, I have working offsets for v0.34.11 on OSX. These are for vanilla Dwarf Therapist; at the moment I can't make Splinterz's version build.


How do i make windows 7 compatible offsets? Im very confused.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Rose on June 10, 2012, 01:44:17 am
You don't, you download the ones posted previously.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ludsoe on June 10, 2012, 01:51:10 am
You don't, you download the ones posted previously.


I get this with and with out the Mac OSX offsets. Were the windows ones already posted a few pages back?
(http://i831.photobucket.com/albums/zz239/Ludsoe/what.png)


Edit: I didn't look back far enough sorry for wasting your time.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Rose on June 10, 2012, 07:28:57 am
Yes, yes they were. They were posted the day that 0.34.11 came out.

The OSX offsets won't work because, well, they're the OSX offsets, not the windows offsets.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Thorik on June 10, 2012, 01:45:47 pm
Here's the download for windows again so you don't have to look around http://dffd.wimbli.com/file.php?id=6064&posted=true#c_510
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: chrisadams3997 on June 10, 2012, 05:07:54 pm
Hey Splinterz, you've been doin' a great job expanding what dwarf therapist can do.  I love it.

However... lol, I've got the same role bug reported by others recently, and in addition migration waves aren't displaying properly.  I haven't done any testing to see just what they are doing wrong, but it's definitely getting all jumbled up.  That's on DT 13, 34.10, Windows 7 64 bit.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 10, 2012, 05:23:18 pm
Hey Splinterz, you've been doin' a great job expanding what dwarf therapist can do.  I love it.

However... lol, I've got the same role bug reported by others recently, and in addition migration waves aren't displaying properly.  I haven't done any testing to see just what they are doing wrong, but it's definitely getting all jumbled up.  That's on DT 13, 34.10, Windows 7 64 bit.

yeah i'll have a fix out for the roles problem as well as the migration wave sorting soon™

edit: in the mean time for the migration sorting, clicking the column header for the dwarf names seems to fix up the grouping sort
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: chrisadams3997 on June 10, 2012, 05:43:15 pm
Nice  :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 10, 2012, 09:17:07 pm
Here it is guys, I coded this up from scratch

This is my proposal for Dwarf Therapist (Splinterz is aware of it, I just needed to get the last idea of coverage in their correctly).

Idea is similar to Dwarf Organizer.

http://www.mediafire.com/?z4xnzb28qx6xwqr
http://www.mediafire.com/?e6khcaecehpke6s

Spoiler (click to show/hide)

Someone pointed out I wasn't too clear on what this does from this post.

So, it analyzes your dwarf's based on role %'s, and uses a pre-defined list (which a user would create, preferrably inside DT) that filters dwarf's based on role % and then eliminates them from future labor assignments as they are "assigned" up to jobs.

That's basically what it does, optimal labor assignment.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 11, 2012, 01:36:23 am
Hello thistleknot,
Can you say a little bit more for the laymandwarf that I am, if it's a DFtherapist branche, a plug in or a side programm?
Argelle
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on June 11, 2012, 01:42:57 am
Currently it is a command box that uses data from exel spreadsheets, but he hopes to build it into Dwarf Therapist as a tab, similar to the role tab. What it does is this:

Lets say you have 4 Masonries, and want all of them being worked at at all times, you just say: Mason 4 and it will assign labors to as many dwarves as necessary to cover that. At least when it is done it should be able to do this.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 11, 2012, 02:40:53 am
Until the dwarves' armies is fully professional (at a 100 pop, they still run two jobs alternatively by me :) swordwarf and bucher for exemple... wait, wrong example, it's the same :s ) it could be 4 masons on paper, but only 3 working and another weapon trainning, right? Do you plan to take this into account?
Related question, if I want 4 masons, until now I hit "group by nothing" in DFtherapist, then click on "mason" to classified what I think is by professional mason and afterthat by the ability to become one, and then click in the box of the candidates until I reach 4: is it the right way and how will it differs with the new comand box?

On a side, larger suggestion for DFtherapist: it would be usefull to add a line (top or buttom) with the number of each professions, no? So far it's cover by classified by profession, and the numbers are in the right colum but it's still no obvious how many professions are vacant. edit: one less question, the answer is that DF itself provide a list in the [Z] menu  :-[
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on June 11, 2012, 03:34:45 am
I cant answer all these questions correctly, sorry. I had a few looks at his code, and have seen the spreadsheets, but you better wait for thistleknot.

I do know that it takes military assignments and miner/woodcutter/hunter into account. As in: Miners cant be woodcutters and to forth.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 11, 2012, 09:15:20 am

Hello thistleknot,
Can you say a little bit more for the laymandwarf that I am, if it's a DFtherapist branche, a plug in or a side programm?
Argelle

What it does is asks a user to assign to each labor/role he wants to use a: rank, a coverage value, and a number of dwarfs to be assigned.

Rank is the order in which the labors r assigned.  The dwarfs r sorted by matching role to fill those spots.

Then, a cost value is assigned to each dwarf when he's assigned a labor based on the desired coverage / dwarfs assigned.

Coverage = number of desired dwarfs at any given time available to do that job.

Hope that helps.

What this does is ensure multiple labors can be assigned to dwarfs while maintaining a desired coverage factor for each labor.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: helmacon on June 11, 2012, 11:17:58 am
dawrf, the rapist
  :o
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Andir on June 11, 2012, 11:28:57 am
dawrf, the rapist
  :o
Um, welcome to last year?

Also, I'm a firm believer in "you read what you want"... I never saw TheRapist until someone mentioned it in a video being overly dramatic.  (I think his wife was also along for the joke.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 11, 2012, 02:21:56 pm
i've fixed the migration sorting and the role tooltip issue. let me know if you find any other bugs/problems!

download (https://rapidshare.com/files/2248257065/Dwarf_Therapist-13.zip)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 11, 2012, 04:59:29 pm
Until the dwarves' armies is fully professional (at a 100 pop, they still run two jobs alternatively by me :) swordwarf and bucher for exemple... wait, wrong example, it's the same :s ) it could be 4 masons on paper, but only 3 working and another weapon trainning, right? Do you plan to take this into account?
Related question, if I want 4 masons, until now I hit "group by nothing" in DFtherapist, then click on "mason" to classified what I think is by professional mason and afterthat by the ability to become one, and then click in the box of the candidates until I reach 4: is it the right way and how will it differs with the new comand box?

On a side, larger suggestion for DFtherapist: it would be usefull to add a line (top or buttom) with the number of each professions, no? So far it's cover by classified by profession, and the numbers are in the right colum but it's still no obvious how many professions are vacant. edit: one less question, the answer is that DF itself provide a list in the [Z] menu  :-[

this program will allow you to do your labor assignments this way.  You would just set coverage to half the number of dwarf's assigned for the labors you want to split up in such a fashion.

So you have melee/butcher's?  That would require an attention score of near .5 (i.e. 50% melee 50% butcher).
Example:

Butcher
  Coverage: 10
  # Dwarves: 20
  Attention = 10/20 = .5

Melee soldier
  Coverage: 10
  # Dwarves: 20
  Attention = 10/20 = .5

That would allow a dwarf to take both those position (.5 +.5 = 1) and he would have no other labors/roles/jobs assigned to him.  It would also allow you to maintain a coverage of 10 melee soldier's at one time, and 10 butcher's at one time.

However... such a concept requires you only having half your military active at any one time (I have 6 month rotations for my military, so I target an attention rate of .5).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Isher on June 11, 2012, 07:54:40 pm

Um, welcome to last year?


Um, welcome to 1998.

http://www.youtube.com/watch?v=htoFkn6S0H8

:P

Sorry for crap video but the alternative is a 6 minute video.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: cybergon on June 11, 2012, 09:21:15 pm
Suggestion here: Make an option to limit the 'Group by' drop list by certain tabs. Perhaps a checkbox on each tab.

It would be useful specifically when you're trying to sort your dwarves by labor skills but not military or social skills.

I hope it's not too hard to implement.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 12, 2012, 03:48:47 am
Suggestion here: Make an option to limit the 'Group by' drop list by certain tabs. Perhaps a checkbox on each tab.

It would be useful specifically when you're trying to sort your dwarves by labor skills but not military or social skills.

I hope it's not too hard to implement.

that's not a bad idea. i'll see if i can make the grouping tab/view specific as well like i did with the sorting, that should suffice for what you'd like right?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 12, 2012, 08:33:00 am
I'd love this too. Currently I only use "nothing", "profession" "migration waves" and "squad". The "migration" order seems to be repared now btw.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 12, 2012, 08:40:10 am
I have an issue with splinterz's where the window will resize to a larger size durring use. This happens when the window is already maximized, so it resizes beyond the size of the screen. I haven't identified when this happens, I just notice that it's sometimes bigger.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: daftfad on June 12, 2012, 11:30:52 am
I have an issue with splinterz's where the window will resize to a larger size durring use. This happens when the window is already maximized, so it resizes beyond the size of the screen. I haven't identified when this happens, I just notice that it's sometimes bigger.

Same here. Usually happens when I open another panel, like the dwarf detail.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: khearn on June 12, 2012, 01:33:25 pm
I get the resizing when I right-click on a dwarf who is close to the bottom of the screen. Then my windows expands to full screen (was less than full screen before). This is on linux, BTW.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Ploder on June 12, 2012, 08:13:10 pm
I recently updated to 34.11. DT, which has kept up with all the 34.00 versions for me, is suddenly unable to detect DF or read dwarves. I've scanned this thread, but so much has happened in the last few days that I may have overlooked something.

Any help?

Oh--I'm running Windows 7.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Kaelem Gaen on June 12, 2012, 10:18:54 pm
We'll probably have to wait till the next memory.xml pops out somewhere for a manual update for Dwarf Fortress 34.11

With DFhack having become a tie-in to the SDL the memory.xml probably won't be got as fast


Unless they still use Memory.xml in it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Rose on June 12, 2012, 10:29:44 pm
They do not. there's like 5 or so global addresses, and pages and pages describing all the data structures used by the game, which is both good and bad.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Brandon816 on June 13, 2012, 01:47:03 am
I cobbled together a layout file from a pre-release version of the offsets in the DFHack thread for Windows 34.11 SDL. It works well enough for assigning job labors and picking up current jobs, but still, use at your own risk and make sure to get the official layout whenever it is released. http://dffd.wimbli.com/file.php?id=6488
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 13, 2012, 03:16:12 am
New sleep icon back to Z's please :D
Eat icon is fine, drink is meh, just needs more contrast, a frothy flagon would be great!
Attend Party icon could be balloons, instead of what looks like a traffic cone ;p
Pen Pasture could just a cow icon, it looks like a clothesmaking type thing atm.

New icons may look a bit prettier, but they just seem to blend into the background a bit to much. Adding missing icons for existing stuff is good, but these new ones are very elf like heh.

I'd much prefer solid colour blocks instead of the new gradient style for enabled roles etc. Can this be an option please it just looks far better.

And there seems to be some rendering issues, v12 compare to v13 below. And those un-symmetrical skill level thingies(see Animal Training below) are gonna send my brain potty, as is the grid lines themselve *twitch* it's 1 pixel horizontally and 2 vertically. Setting cell padding to 1 makes the grid look a bit better, but then the Current Job icons are resized and then become all blurry which makes them even worse, and then the diamonds(for leg skills) go wonkey lol...

And the font rendering, i was wondering why it wasn't as clear before i took these 2 screenshots. It seems compacted uuurgggh.

V12
(http://www.zenadsl5706.zen.co.uk/DF/v12.png)

V13
(http://www.zenadsl5706.zen.co.uk/DF/v13.png)


Please please please revert the UI rendering on the grids etc back to what they were, new icons i can live with but the UI uurrrrgghh.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 13, 2012, 03:36:06 am

And the font rendering, i was wondering why it wasn't as clear before i took these 2 screenshots. It seems compacted uuurgggh.

If clear type is off, it may cause the ugly font, not Therapist :
Left, on my computer :
(http://tof.canardpc.com/preview2/e3c883a2-a273-44d8-93d7-136bb97cf43c.jpg) (http://tof.canardpc.com/view/e3c883a2-a273-44d8-93d7-136bb97cf43c.jpg)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 13, 2012, 04:51:33 am
The letters are 1 pixel closer together which is what's making it harder to read all cramped up, nothing todo with cleartype. And i like to see my pixels anyways so cleartype looks ugly to me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 13, 2012, 05:26:54 am
@Intrinsic

the header font is the same as the dwarf name/row font now, previously it was a set default. if it's that much of an issue i can add another setting to specify the header font. the icon blurriness shouldn't occur unless the cell size is too small (less than 16/16 for most icons). if you add cell padding, the cell size shrinks so you may have to play with it to get it just right with padding and clear icons. the font also seems to sometimes affect the row height slightly. i know it will be hard as you seem to fight change, but try changing the font perhaps.

i'll change the party hat to balloons, the mug is here to stay for a while (i'm no graphic artist). but elf like!? now you're just being offensive! really though if you know of a comprehensive 'dwarfish' icon set, let me know. yes, i know the sleep icon isn't obvious i'll figure out something else, worst case, back to z's.

i'll add an option for the cell gradients as there have been a few people complaining about it. for that awful, horrible, garish, massive 1 pixel border issue, we'll see... i had to make some changes for the padding to work properly which might have affected them. i'll work on getting the skill drawings centered though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 13, 2012, 06:43:38 am
The font looks the same it's just for some reason the letters are closer together, just looks cramped and less easy on the eyes. The dwarves names didn't get squished like that for some reason. And yeah i tried changing the font size already to get around the resize issue Tahoma 8, Cell Padding 1, Cell Size 18 works well, and then it's only some of the skill level display that are slightly off center, but it's minor really. And it's not about being resistant to change, it's just that it looked great as it was, as the saying goes "if it ain't broke, don't fix it".

The liquid in the mug just needs to be more brown then it'll stand out great, the icons you've done are really nice. And lol the elf like was just a reference to stuff being made more "pretty" :) The sleep icon is really nicely drawn, maybe adding a little Z to it in the top right hand corner could help?

The grid is great as long as i keep it at 1 cell padding, i just had it at 0 so i could fit everything on the screen so i didn't have to scroll across to see arch/alch/clean.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 13, 2012, 07:11:56 am
i know what you mean, i think it's because of the vertical drawing that seems to squish the font. i think i'll just add an additional font option and be done with it.

oh but it was broken, that cell padding was messed up something fierce. i'm sure the border lines problem is something that can be fixed.

no that's what i mean, i haven't done the icons at all, i've just used a free set i found. making it a brown ale is a good idea though, i think i can handle that!

yeah it's the cell padding 0 that seems to cause the most grief, as cell edges are drawn on top of each other so lines have to be force drawn over top etc. regardless, input is always valued, so thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ab9rf on June 13, 2012, 08:14:02 am
We'll probably have to wait till the next memory.xml pops out somewhere for a manual update for Dwarf Fortress 34.11

With DFhack having become a tie-in to the SDL the memory.xml probably won't be got as fast


Unless they still use Memory.xml in it.
The DFHack peeps had working offsets (https://raw.github.com/angavrilov/df-structures/master/windows/therapist.ini) for DwarfTherapist within hours of the DF .34.11 release.  Been available now for over a week.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: plaidman on June 13, 2012, 02:43:13 pm
I got tired of waiting for the "official" OSX offsets, so I made an attempt to do them myself. Based on personal quick tests, these look to be working fine, but no guarantees this won't make your mac warp to another dimension.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Xilikraz on June 13, 2012, 05:05:33 pm
I don't mean to sound dumb..but where do I put that?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: eataTREE on June 13, 2012, 07:54:28 pm
Heh. You coulda just used mine from a few pages back in the thread. I promise yours won't warp your mac into another dimension, since they appear to be the same as mine :)

I got tired of waiting for the "official" OSX offsets, so I made an attempt to do them myself. Based on personal quick tests, these look to be working fine, but no guarantees this won't make your mac warp to another dimension.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 14, 2012, 03:51:51 am
I just came up with a very quick and easy way to efficiently assign a fortress to labors without the need for all this extra coding. I may have to explain in more detail later, but it now involves only 3 variables.

Desired coverage of job (i.e. how many dwarf's available at any given time do you want to be able to do it).

How many labor's do you want to assign per dwarf (doesn't really matter, but values from 5 to 10 are good).

Coverage / (1/labor's per dwarf) = # dwarf's to assign to each role

sort your role's out from most important to least important

then start assigning that # to each role until you hit the # of dwarf's per labor, and ensure you don't exceed that number for each dwarf...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 14, 2012, 12:12:44 pm
Thanks to Splinterz for showing me the function!

This is how it works
  1.  You have to create a ranked list of labors where the 1st item is the highest priority of assigning high % dwarf's to, and the last is least priority.
  Example: at the top of mine, I had miner's, farmer's, at the top, and I had shearer's and milker's at the bottom.

  2.  Coverage: Then you need to decide how much coverage you want per labor.  For example, do I want 2 miner's available at all times?  Well, then I set coverage to 2.  Coverage determines the # of dwarf's to assign to that labor...  coverage / (1/number of dwarfs per labor (step3) can't be larger than population).
 
  3.  Labors Per Dwarf:  Then you decide how many labor's you want per dwarf.   I recommend a low # of labor's per dwarf for small populations, and more? for large populations.  I have 100 population, so I set my labors to 10 each. Labors per dwarf has to be less than the highest value derived in step 3a
  3a.  Dwarfs Per Labor: Each labor has it's own # of dwarf's to assign:  Calculate by taking the labor's coverage / (1/# of labors per dwarf).  For maximum efficiency I recommend multiplying (and rounding) this number by population/(sum of coverages), sum of the rounded numbers should equal: population * labor's per dwarf.
  Example: 2 coverage for mining, at 10 labors for each dwarf.  Is 20 dwarf's for mining.

  4.  Now you unassign everyone's labor (create a custom profession that you want to use a base labor set, for example, mine included all hauling jobs, recovering wounded, burying, architecture, etc.).  Apply this custom profession to everyone...

  5.  Now see how many labors are assigned to each dwarf by sorting by total labor's assigned (use the filter drop down).  This is your base #.  Important for next step.  Unapply sort.

  6.  Now take the # of labors you wish to assign to each dwarf established in step 3 and add this to the number you got in step 5.

  7.  Apply this filter script (save it too!) d.total_assigned_labors()<# derived in step 6.

  8.  Now sort each labor by % highest to lowest.  Start assigning the # of dwarf's established in step 3a.

Special note:
  Nobles, militia: you can assign militia at the end (and unassign labors, or... you can assign them first and just exclude them by name in your filter script...
  Same with nobles.  I personally selected my nobles at the end by sorting by # of labors, and picking a low # of labor dwarf with a good fit for a noble position to fill that position, therefore preserving my super dwarf's (i.e. a good % fit for a lot of roles) who had a lot of labors assigned to keep doing there super dwarf labors.
  There's an optional way of handling militia as well as Nobles.  You can assign them a cost.  For example, a manager you can safely assume is a cost of 1 (100% of their time is consumed doing work).  This cost kind of equals coverage.  All it means is you subtract 1 from the population in your calculations above... then you don't assign him to any other labors and everyone else is still assigned.
  You can kind of do this with the military as well if you have half active/half inactive like I do... You can then assign them a cost of .5, so they could still be assigned 1/2 of the labors per dwarf that the other dwarf's can have.  Originally I didn't want to say anything about this cuz it's confusing, but... in Splinterz version of DT, militia dwarf's are highlighted.  And if they are your highest priority to assign, you can keep an eye on them until they reach there 50% labor mark, and then add their names to the filter script to exclude them from future assignments!

  Custom Professions:  If you have custom professions, as I do with Nurses, craftsdwarfs, and metalsmiths.  Do not assign their custom profession during this process, if you do it will add say 5-6 labors at once, and you may only wish to count nursing as 1 labor for the purposes of the ranked labor list (step 1).  If you want to count nursing as 1 labor, assign just 1 labor in the meantime (example diagnosis) until you finish assigning everyone, then apply the custom profession that applies the 5-6 labors.

  Incompatible Labors:  This is important, these 3 are incompatible: Woodcutting, hunting, and mining.  When you get to these roles, you need to filter by the other incompatible labors by adding this to the filter script (step 7).  d.has_labor(00) for mining, or d.has_labor(44) for hunting.  So when you get to woodcutting, and you already have your miner's and ambusher's assigned, then you need to add to the filter script (!d.has_labor(00)) && (!d.has_labor(44)), this will filter out those dwarf's so you can assign the correct # of dwarf's without accidentally unassigning the incompatible labor dwarf's, be sure to remove that additional filter part when not needed

That's it.  With practice, you can efficiently assign your whole fortress in less than 5 minutes!  I was doing it (finally at the end) in 10 minutes after about 10 failed attempts without the d.total_assigned_labors()<# function, which was a pain, I was manually filtering by names that had exceeded the # of labor's assigned...

Here's a csv sheet of my stuff (without the military/noble stuff described above)
Code: [Select]
Population,,95,,,Dwarfs per labor,10,,Pop/Cov,1.210191083
Name,P Weight,Coverage,# of Dwarfs,x Pop/Cov,Labor,,,,
Miner,0.5625,2.5,25,30,Mining,,,,
Farmer,0.5625,2.5,25,30,Farming (fields),,,,
Metalsmith,0.523437,2.5,25,30,Custom Profession,,,,
Leatherworker,0.523437,2,20,24,Leatherworking,,,,
Bowyer,0.471094,2,20,24,Crossbow-making,,,,
Carpenter,0.46875,2,20,24,Carpentry,,,,
Mason,0.46875,2,20,24,Masonry,,,,
Brewer,0.46875,2,20,24,Brewing,,,,
Gem Cutter,0.468749,2,20,24,Gem cutting,,,,
Thresher,0.421875,2,20,24,Plant processing,,,,
Craftsdwarf,0.421874,2,20,24,Custom Profession,,,,
Mechanic,0.421874,3,30,36,Mechanics,,,,
Plant Gatherer,0.390625,4,40,48,Plant gathering,,,,
Cook,0.390624,2,20,24,Cooking,,,,
Engraver,0.375,3,30,36,Stone detailing,,,,
Ambusher,0.375,3,30,36,Hunting,,,,
Nurse,0.375,6,60,73,Custom Profession,,,,
Woodcutter,0.34375,2,20,24,Wood cutting,,,,
Trapper,0.328125,2.5,25,30,Trapping,,,,
Lyemaker,0.328125,2,20,24,Lye making,,,,
Fisherdwarf,0.312499,3,30,36,Fishing,,,,
Fish Cleaner,0.281249,2.5,25,30,Fish cleaning,,,,
Spinner,0.273437,2,20,24,Spinning,,,,
Butcher,0.25,3,30,36,Butchery,,,,
Tanner,0.234375,2.5,25,30,Tanning,,,,
Soaper,0.1875,2,20,24,Soap making,,,,
Cheesemaker,0.140624,2,20,24,Cheese making,,,,
Animal Caretaker,0,4,40,48,Animal care,,,,
Wood Burner,0,2.5,25,30,Wood burning,,,,
Milker,-0.000001,2,20,24,Milking,,,,
Shearer,-0.000001,2,20,24,Shearing,,,,
,Sum,78.5,,,,,,,
Need to apply custom professions last!,,,,,,,,,
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: plaidman on June 14, 2012, 04:17:10 pm
Heh. You coulda just used mine from a few pages back in the thread. I promise yours won't warp your mac into another dimension, since they appear to be the same as mine :)

I got tired of waiting for the "official" OSX offsets, so I made an attempt to do them myself. Based on personal quick tests, these look to be working fine, but no guarantees this won't make your mac warp to another dimension.

Spoiler (click to show/hide)

Aww crap, I wish I would have seen that. Oh well, thanks for your work. At least now I know my numbers aren't bad!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: TerryDactyl on June 15, 2012, 07:27:32 am
I haven't been following this thread very closely, so my apologies if this is already known/addressed, or if there is a better place to report peculiar behaviours.

In splinterz' build, I've set up some custom roles. They don't appear on the 'roles tab', but they're coming up in the corner window. I copied the 'melee soldier' role, removed the 'rage' trait, and called it 'calm soldier'. Now the odd part: despite rage being unweighted, I have a dwarf with a 91.83 'calm soldier' rating, against a 31.76 'melee soldier' rating. His lack of rage dropped him a full 60 points! This does not seem like intended behaviour.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 15, 2012, 08:57:39 am
I haven't been following this thread very closely, so my apologies if this is already known/addressed, or if there is a better place to report peculiar behaviours.

In splinterz' build, I've set up some custom roles. They don't appear on the 'roles tab', but they're coming up in the corner window. I copied the 'melee soldier' role, removed the 'rage' trait, and called it 'calm soldier'. Now the odd part: despite rage being unweighted, I have a dwarf with a 91.83 'calm soldier' rating, against a 31.76 'melee soldier' rating. His lack of rage dropped him a full 60 points! This does not seem like intended behaviour.

you can override roles in the default role tab by adding a custom role with the same name. it will replace the default roles. what weights are you using for the roles, specifically the traits?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: TerryDactyl on June 15, 2012, 09:28:46 am
Melee soldier is the default role,
Calm soldier is the default melee role with rage removed.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 15, 2012, 10:38:46 am
Icon issue: Milk Creature shows what looks like a Bow icon.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 15, 2012, 11:11:15 am
Melee soldier is the default role,
Calm soldier is the default melee role with rage removed.
i still don't know what weights you're using but try changing the global weight of the traits if you don't want them to affect ratings as much (options->roles tab). in your example, the lower you set the trait weight, the closer those two roles should come in ratings.

Icon issue: Milk Creature shows what looks like a Bow icon.
thanks, will be fixed in the next update.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: TerryDactyl on June 15, 2012, 12:47:11 pm
Default everything. Across the board.

Attributes:1, Skills:1, Traits:1. The melee soldier role, as well, has weight:1 set to everything.

Are attributes, skills and traits each being compared against each other as averaged sums, or are all such values being considered individually?

It seems like traits are being weighed against attributes and against skills. Since there is only 1 trait and 6 attributes, I think that means that every one of those attributes is being considered only 1/6th as valuable as that 1 trait. I have not performed maths to confirm this notion.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 15, 2012, 01:39:01 pm
Default everything. Across the board.

Attributes:1, Skills:1, Traits:1. The melee soldier role, as well, has weight:1 set to everything.

Are attributes, skills and traits each being compared against each other as averaged sums, or are all such values being considered individually?

It seems like traits are being weighed against attributes and against skills. Since there is only 1 trait and 6 attributes, I think that means that every one of those attributes is being considered only 1/6th as valuable as that 1 trait. I have not performed maths to confirm this notion.

it takes a weighted average of all attributes, all traits and all skills to get three total ratings. it then uses the global weights to take a weighted average of the 3 totals. finally it adjusts it with a cdf to acquire a rank relative to the population.

so in your example, the single trait is valued equally to all the attributes, and equally to any/all skills, as they're all set to 1.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 16, 2012, 02:51:17 am
BUG: If an animal is set as "Available" to be tamed ingame and then you set it to butcher it in DT then it is already treated as owned and so when it dies it gets put in the corpse stockpile and then given a tomb...it works fine if you butcher it from ingame. I'm guessing there is a flag that isn't being cleared which makes it get treated this way.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 16, 2012, 04:33:22 am
BUG: If an animal is set as "Available" to be tamed ingame and then you set it to butcher it in DT then it is already treated as owned and so when it dies it gets put in the corpse stockpile and then given a tomb...it works fine if you butcher it from ingame. I'm guessing there is a flag that isn't being cleared which makes it get treated this way.

just to be sure, you mean 'Toggle pet availability' to available, and then slaughter?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 16, 2012, 05:24:25 am
BUG: If an animal is set as "Available" to be tamed ingame and then you set it to butcher it in DT then it is already treated as owned and so when it dies it gets put in the corpse stockpile and then given a tomb...it works fine if you butcher it from ingame. I'm guessing there is a flag that isn't being cleared which makes it get treated this way.

just to be sure, you mean 'Toggle pet availability' to available, and then slaughter?

Yep on the Status->Animals screen.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 16, 2012, 07:18:40 am
BUG: If an animal is set as "Available" to be tamed ingame and then you set it to butcher it in DT then it is already treated as owned and so when it dies it gets put in the corpse stockpile and then given a tomb...it works fine if you butcher it from ingame. I'm guessing there is a flag that isn't being cleared which makes it get treated this way.

just to be sure, you mean 'Toggle pet availability' to available, and then slaughter?

Yep on the Status->Animals screen.

bah. i'm not sure what's going on then. i did some comparisons of the 'ready to slaughter' flag, setting it from DF and then from DT and it was identical. there must be something else happening  :-\

just to make certain i'm following your actions: set animal to available, then set to slaughter in DT results in corpse stockpile->tomb right?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Shishimaru on June 16, 2012, 08:47:12 am
When you set an animal as available DF adds a pointer to the unit.specific_refs vector.
The specific_ref is of type 7 (PETINFO_PET)

I don't think there is a way to change this through DT, but you can check this reference to disable "set to slaughter" if the pet is available
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 16, 2012, 09:36:50 am
BUG: If an animal is set as "Available" to be tamed ingame and then you set it to butcher it in DT then it is already treated as owned and so when it dies it gets put in the corpse stockpile and then given a tomb...it works fine if you butcher it from ingame. I'm guessing there is a flag that isn't being cleared which makes it get treated this way.

just to be sure, you mean 'Toggle pet availability' to available, and then slaughter?

Yep on the Status->Animals screen.

bah. i'm not sure what's going on then. i did some comparisons of the 'ready to slaughter' flag, setting it from DF and then from DT and it was identical. there must be something else happening  :-\

just to make certain i'm following your actions: set animal to available, then set to slaughter in DT results in corpse stockpile->tomb right?

Yep correct.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: TerryDactyl on June 16, 2012, 10:59:14 am
Default everything. Across the board.

Attributes:1, Skills:1, Traits:1. The melee soldier role, as well, has weight:1 set to everything.

Are attributes, skills and traits each being compared against each other as averaged sums, or are all such values being considered individually?

It seems like traits are being weighed against attributes and against skills. Since there is only 1 trait and 6 attributes, I think that means that every one of those attributes is being considered only 1/6th as valuable as that 1 trait. I have not performed maths to confirm this notion.

it takes a weighted average of all attributes, all traits and all skills to get three total ratings. it then uses the global weights to take a weighted average of the 3 totals. finally it adjusts it with a cdf to acquire a rank relative to the population.

so in your example, the single trait is valued equally to all the attributes, and equally to any/all skills, as they're all set to 1.

Okay, we're on the same page. I don't think this is the right way to do it because it results in traits, skills and attributes being weighted differently depending on how many values belong to each category.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 16, 2012, 11:20:53 am
Default everything. Across the board.

Attributes:1, Skills:1, Traits:1. The melee soldier role, as well, has weight:1 set to everything.

Are attributes, skills and traits each being compared against each other as averaged sums, or are all such values being considered individually?

It seems like traits are being weighed against attributes and against skills. Since there is only 1 trait and 6 attributes, I think that means that every one of those attributes is being considered only 1/6th as valuable as that 1 trait. I have not performed maths to confirm this notion.

it takes a weighted average of all attributes, all traits and all skills to get three total ratings. it then uses the global weights to take a weighted average of the 3 totals. finally it adjusts it with a cdf to acquire a rank relative to the population.

so in your example, the single trait is valued equally to all the attributes, and equally to any/all skills, as they're all set to 1.

Okay, we're on the same page. I don't think this is the right way to do it because it results in traits, skills and attributes being weighted differently depending on how many values belong to each category.
Individual attribute are weighted less, but attributes as a whole are weighed as the settings indicate. It's intuitive.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: TerryDactyl on June 16, 2012, 12:38:53 pm
Individual attribute are weighted less, but attributes as a whole are weighed as the settings indicate. It's intuitive.

It isn't intuitive. For starters, I had no idea that the global settings existed. Secondly, it results in variable weights for every role depending on how many values exist in each field. Third, there is no indication the game evaluates skill, traits and attributes in this way. We have already established that this is what is going on with therapist, and that is what we are discussing. Welcome to the conversation. I wasn't talking to you.  >:(
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 16, 2012, 12:53:27 pm
That was rude. I was just pointing out, at the very least to splinterz, that I do find his way intuitive.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 16, 2012, 01:18:29 pm
first, there's plenty of documentation on the project home (http://code.google.com/r/splintermind-attributes/) site about the roles and how they work. second, it's still a weighted average rating for the attributes, and while it may change per role, the end rating for each role is relative to the population. you can still tweak each role individually as you'd like or create custom roles.

third, the game doesn't provide you with any indication whatsoever on who may be best for a job, however we do know (see the wiki) that skills and attribute can affect jobs. we also know that some jobs may be affected in different ways by traits (ie. rage for military, compassion or whatever it is for doctors). it's still subjective, which is why all the different weights are there to allow players to decide what makes up a good rating.

you bring up an interesting point about taking each component and valuing them equally. i don't know if it's necessary, and i also don't know how much of an impact it would have on the rating without doing some testing. as they're ranked relative to each other at the last step, i don't think it's going to make a difference in the rankings.

finally, no offense, but if you don't want other people chiming in on a public forum perhaps private messages would be more suited to your needs. personally i like to hear that for some people the roles are intuitive and they've got no problems as much as i want to hear the concerns of people who think it's totally inaccurate.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on June 16, 2012, 01:26:55 pm
Would it be possible to have an arena mode, in which all creatures are read as though they're fortress mode dwarves?

Third, there is no indication the game evaluates skill, traits and attributes in this way.
Traits can make a difference to the quality of created goods. I once had a dwarf with a bunch of green mental stats step in as a mechanic, and he started producing high-quality mechanisms right away despite having no preferences for mechanisms or relevant stone types.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: TerryDactyl on June 16, 2012, 02:48:50 pm
In-this-way meaning lumped in this fashion. I'm not arguing that traits influence certain elements of the game.

I felt it was rude that this fella comes in and completely invalidates the points I was making, despite my presenting evidence that one trait (or the lack thereof) influenced role score by a full 60 (!!!) points.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: expwnent on June 16, 2012, 03:04:20 pm
Would it be possible to have a feature that exports all available dwarf information to a simple text file? I'd like to do some heredity science (http://www.bay12forums.com/smf/index.php?topic=111624.0) and I'm unfamiliar with the memory layout of dwarves.

I tried exporting grid views, but it seems to only export information about what property goes where in the Therapist GUI, not about the actual dwarves.


Never mind, DFHack does it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 16, 2012, 03:38:34 pm
In-this-way meaning lumped in this fashion. I'm not arguing that traits influence certain elements of the game.

I felt it was rude that this fella comes in and completely invalidates the points I was making, despite my presenting evidence that one trait (or the lack thereof) influenced role score by a full 60 (!!!) points.

in your calm soldier role, you're excluding traits, so it's only taking into account skills and attributes, so this dwarf who receives a 91.83 rating, has great attributes and skills relative to the other dwarves.

the base melee role rates him at 31.76 because you've told it to value traits as being worth 1/3 of the rating. because he's got a very low trait rating, that 1/3 trait part of the rating isn't going to contribute very much. furthermore as the final ranking, once again, is relative to the population, with that low trait number, he's probably going to be ranked near the bottom.

valuing the trait the same as each individual attribute will most likely increase the 31.76 rating, but it will probably make no difference in his ranking relative to the others.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 16, 2012, 03:59:13 pm
In-this-way meaning lumped in this fashion. I'm not arguing that traits influence certain elements of the game.

I felt it was rude that this fella comes in and completely invalidates the points I was making, despite my presenting evidence that one trait (or the lack thereof) influenced role score by a full 60 (!!!) points.
I don't see the problem. Melee soldier is an unusual role because no melee soldier will use all of the skills listed under the role. So using it as a model for how other roles should behave is a bad idea. However, given this particular fact, having the 1 associated trait be 6 times more important than all the military skills makes sense, assuming that the relative importance of traits to skills should be 1 to 1 in the first place.

I quite simply find your point to be wrong. I suppose I could have elaborated more on why I found it wrong, but that would require anticipating your objections, and in this case I would not have properly. Please don't take offense to my brevity. And don't take offense in that I disagree with you.

EDIT:
It's also possible to add aspect group weights to to individual roles, like is done for Lawdwarf, and for this role it might be a good idea to do so. It might be better to split the role into 1 for each weapon type though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 16, 2012, 04:20:14 pm
yeah i considered creating separate roles for each weapon type, but it adds a lot of extra roles.. maybe it would be better to create a special military roles tab...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 16, 2012, 04:27:40 pm
Yeah, you could add a separate tab for civilian, noble, and military roles. Then sort the civilian like the labor tab, the military roles like the military tab, and the nobles by the order they appear on the noble screen. It's an idea.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: khearn on June 17, 2012, 12:38:47 am
I wouldn't mind having the military roles on the military skills tab. There's plenty of room for them, and it would save having to switch between the tabs a lot. I've seriously considered making a custom tab to do so.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 17, 2012, 03:17:57 am
hrmm what about leaving the generic melee/ranged military roles in the default roles tab, add individual weapon skill roles to the military tab, and put the noble roles first on the default tab, followed by the civilian roles?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: miscsubbin on June 17, 2012, 11:15:59 am
How can I install this on Gentoo? There seems to be no ebuild in the main portage tree that I can see. Is it in an overlay somewhere?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 17, 2012, 12:53:31 pm
hrmm what about leaving the generic melee/ranged military roles in the default roles tab, add individual weapon skill roles to the military tab, and put the noble roles first on the default tab, followed by the civilian roles?
How about making the roles tab look like the labors tab, except with a purple category for nobles at the end (so that most of the rest of is the same), and an other category too for roles that are neither noble related nor map to labors?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 17, 2012, 01:14:22 pm
the only thing that drives me crazy with the labor tab is that it's not in alphabetical order though! but having them match up would be a good idea..
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 17, 2012, 01:26:00 pm
Heh. Alphabetical order is good for finding things that you don't know where they are, but its a very arbitrary order for comparing things. I like the order of the labor tab, it matches the game.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 17, 2012, 01:28:08 pm
yeah fair enough, i'll see about reordering the default roles tab and adding more weapon roles to the military tab
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: darkrider2 on June 17, 2012, 02:25:24 pm
Dwarves have a Push/Guide Minecart job somewhere in the labors tab, but I couldn't find it as a settable labor in the therapist. Is this supported in the current version?

Also the therapist somehow allowed me to rename some merchant bodyguard dwarves from a caravan, but only after said guards had killed a couple goblins, I could also set their labors, it didn't change anything in-game other than their name, and it confused me for a while.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DuineAnaithnid on June 17, 2012, 10:59:35 pm
I have not used DT in a while, but last I remember when you assigned a custom profession, it would start grouping them by said professions. I am using the current linux version (the last version did this too) and it does not change their profession names. Anybody else?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 17, 2012, 11:40:52 pm
It doesn't change nicknames and profession names on linux. It's because strings are stored differently on gcc compiled linux version, and the MSVS compiled windows version. Windows stings are easier to hack.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 18, 2012, 02:26:54 am
Dwarves have a Push/Guide Minecart job somewhere in the labors tab, but I couldn't find it as a settable labor in the therapist. Is this supported in the current version?

Also the therapist somehow allowed me to rename some merchant bodyguard dwarves from a caravan, but only after said guards had killed a couple goblins, I could also set their labors, it didn't change anything in-game other than their name, and it confused me for a while.

I'm not sure the official DT supports the new jobs, splinterz certainly does.

I've had that merchant issue pop up before, but only once.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 18, 2012, 02:51:25 am
i'm working on adding role information to the tooltips of the military tab columns, rather than a complete additional set of role columns as it's redundant. however this brings up a few questions on preference:

should i add armor and shield skills to all weapon roles (axedwarf, speardwarf..) or only the weapon skill itself?

should it be sorted by total skill experience, and then role rating, or sorted by whether they have any experience at all, and then role rating? the latter is subtly different in that dwarves with any xp at all are still at the top of the list, but they're sorted by role rating (labor columns currently sort like this).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: SmileyMan on June 18, 2012, 06:37:12 am

Um, welcome to last year?


Um, welcome to 1998.

http://www.youtube.com/watch?v=htoFkn6S0H8

:P

Sorry for crap video but the alternative is a 6 minute video.
Welcome to 1955

http://quipsandquiddities.tumblr.com/post/329078592/to-quote-nabokov-the-only-thing-that-separates
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: TerryDactyl on June 18, 2012, 09:02:50 am
i'm working on adding role information to the tooltips of the military tab columns, rather than a complete additional set of role columns as it's redundant. however this brings up a few questions on preference:

should i add armor and shield skills to all weapon roles (axedwarf, speardwarf..) or only the weapon skill itself?

should it be sorted by total skill experience, and then role rating, or sorted by whether they have any experience at all, and then role rating? the latter is subtly different in that dwarves with any xp at all are still at the top of the list, but they're sorted by role rating (labor columns currently sort like this).

Pretty tricky issue, since military/squad customizations are going to be different for every player, if not every game. A long-term goal may be to read the uniforms from memory and create dynamic roles based on what's there. And then... custom weights, since players may prefer high dodging/agility on their leather users, high toughness/endurance on their tin can soldiers, and so on and so forth.

*waves a magic wand*
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 18, 2012, 09:32:22 am
the intent is to add a set of default weapon skill roles and show the information in the military tab's cell tooltip. like all other default roles they can still be overridden. if users end up wanting to do a ton of customized roles as you're describing, they're probably going to be creating their own military view anyway. this is in regards to defaults, and the default military tab.

reading uniforms won't get around the problem of subjectivity you've mentioned. just because you'd like to assign dodge to all leather wearing melee soldiers, doesn't mean the next guy will. i don't intend to try and dynamically create dozens combat role combinations hoping that one will fit the player's ideals, that's what the custom roles, or tweaking default roles, is for.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 18, 2012, 10:54:15 am
should i add armor and shield skills to all weapon roles (axedwarf, speardwarf..) or only the weapon skill itself?
I would say do add shield and armor skills to all weapon roles.

Quote
should it be sorted by total skill experience, and then role rating, or sorted by whether they have any experience at all, and then role rating? the latter is subtly different in that dwarves with any xp at all are still at the top of the list, but they're sorted by role rating (labor columns currently sort like this).
That's the problem with using the skill indicators to also show roles. A dwarf with experience should be the most fit for the job, so would appear on the top of the role rating anyway, under default settings. And if that's not the case, then clearly the player thinks that some other qualities, other than experience are more important and has balanced the roles for that. But if the display shows the skills, not the role, then you'd expect it to sort by experience first.

That's why I think you need separate columns for military skills and roles. They show different information.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 18, 2012, 11:03:48 am
it's not a problem to show more columns, i'm just debating whether it's worth trying to save the space or not, as literally every weapon skill column will be duplicated. it's the same reason i added the role info on the labor columns, it was just way too many columns in my opinion. maybe i'll just add another option to show the role information in skill columns and then people can choose the display they prefer.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: khearn on June 18, 2012, 12:15:19 pm
Choice is good.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 18, 2012, 01:25:14 pm
yeah but it'll be the same kind of option that's there for showing role information in the labor columns. the more i look at it, it just seems to make sense to sort by role, and keeping anyone with any experience up at the top. i haven't heard any complaints about the labor columns which do the same type of thing. it's still very obvious with the drawing methods who has higher a skill, but at a glance i can also tell who the best fits for the associated role(s) are.

it's win-win for myself, but i'll have to include an option for those who want to keep skill column solely for showing skills. as a side bonus it should also work on all the social tab columns too, finally that tab may be useful!  :P
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 18, 2012, 02:03:57 pm
Small feature request:
Allow DT to reconnect to DF when DF restarts without doing a failed read. This could be done by not disabling the connect button when connected, or by changing it to a reconnect button.

yeah but it'll be the same kind of option that's there for showing role information in the labor columns. the more i look at it, it just seems to make sense to sort by role, and keeping anyone with any experience up at the top. i haven't heard any complaints about the labor columns which do the same type of thing. it's still very obvious with the drawing methods who has higher a skill, but at a glance i can also tell who the best fits for the associated role(s) are.

it's win-win for myself, but i'll have to include an option for those who want to keep skill column solely for showing skills. as a side bonus it should also work on all the social tab columns too, finally that tab may be useful!  :P
I think it's important to allow sorting by roles only, not just sorting by skills then roles. That doesn't apply to the labor tab, because the role tab exists. But if the military roles are moved to the military tab, we don't want to lose the ability to sort by roles.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 18, 2012, 03:25:50 pm
Feature Request: When i choose Set Nickname can DT populate that box with the existing Nickname please.

And are you aware the alert on lost connection doesn't work a lot of the time these days? i think since v10 or v11. Can't remember if this coincided with 34.11 release or not, but i think so. I've seen it literally only once since it's release.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Isher on June 18, 2012, 04:57:07 pm
Since people are requesting all sorts of features I don't care about (no offense people) I figure I'll go ahead and ask that you allow me to equip squads :P

But seriously, is it possible to create a program that will do that? I imagine it would take a lot of work, I just don't know how much it would take, and I am curious.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: TerryDactyl on June 18, 2012, 08:36:11 pm
I'm sorry, but I'm sure this can't be right.

I've got this dwarf, basically just endurance that's in the red, and no value provided for 'rage'. I've set the weights as follows:
Attributes: 1
Skills: 0 (because I have yet to embark)
Traits: 0

I modified the default 'melee soldier' to weigh double on recuperation, saved it, copied the parameter set, removed 'rage' from traits and called it 'calm soldier'.

Ratings:
Calm soldier: 83.66
Melee soldier: 29.97

Weight for 'traits' was initially set to 0.15, but when I noticed what little effect it was having, I tried pulling it right down to 0, and.... the ratings did not change.

solved: I was only changing 'default' roles, which does not retroactively change the custom 'melee soldier' role.

when 'melee soldier' trait-weights are properly assigned to 0.14, the difference in ratings is reduced to 2.5 (calm:83.66, melee:81.16)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 19, 2012, 01:59:27 pm
alright, new version!


Project Home // Download (http://code.google.com/r/splintermind-attributes)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Somnus on June 19, 2012, 03:47:55 pm
Forgive me for my ignorance, but I'm using linux and have just built the newest splintermind-attributes version. After I build it though... how do I actually run it? I think this is only the second time I've ever built something from souce.

EDIT: Okay I found the executable and I get this:

Code: [Select]
2012-Jun-19 16:55:52.787 INFO core Dwarf Therapist "0.6.12" starting normally. [src/dwarftherapist.cpp:103] (setup_logging)
2012-Jun-19 16:55:52.885 INFO core Loaded 8 views from disk [src/viewmanager.cpp:134] (reload_views)
2012-Jun-19 16:55:52.886 DEBUG core group_by now set to 0 [src/models/dwarfmodel.cpp:624] (set_group_by)
2012-Jun-19 16:55:52.889 DEBUG core group_by now set to 0 [src/models/dwarfmodel.cpp:624] (set_group_by)
2012-Jun-19 16:55:52.889 DEBUG core "redrew views in 4ms" [src/viewmanager.cpp:254] (draw_views)
2012-Jun-19 16:55:53.002 DEBUG core setting up connections for MainWindow [src/mainwindow.cpp:124] (MainWindow)
2012-Jun-19 16:55:53.005 DEBUG core group_by now set to 8 [src/models/dwarfmodel.cpp:624] (set_group_by)
2012-Jun-19 16:55:53.005 DEBUG core group_by now set to 8 [src/models/dwarfmodel.cpp:624] (set_group_by)
2012-Jun-19 16:55:53.005 DEBUG core beginning to read settings [src/dwarftherapist.cpp:125] (read_settings)
2012-Jun-19 16:55:53.005 DEBUG core finished reading settings [src/dwarftherapist.cpp:173] (read_settings)
2012-Jun-19 16:55:53.034 DEBUG core attempting connection to running DF game [src/mainwindow.cpp:243] (connect_to_df)
2012-Jun-19 16:55:53.036 ERROR core No valid memory layouts found in the following directories... () [src/dfinstance.cpp:113] (DFInstance)
2012-Jun-19 16:55:53.055 DEBUG core executable "0x08048000-0x08eac000 (15,089,664 bytes) /home/zach/Games/Dwarf Fortress/libs/Dwarf_Fortress HEAP: 0" [src/dfinstancelinux.cpp:436] (map_virtual_memory)
2012-Jun-19 16:55:53.067 ERROR core Could not attach to PID 22625 [src/dfinstancelinux.cpp:197] (attach)
2012-Jun-19 16:55:53.067 ERROR core Unable to open "/proc/22625/mem" [src/dfinstancelinux.cpp:230] (read_raw)
2012-Jun-19 16:55:53.067 DEBUG core base_addr: 0 HEX 0 [src/dfinstancelinux.cpp:356] (find_running_copy)
2012-Jun-19 16:55:53.103 DEBUG core DF's checksum is "0x71406692" [src/dfinstancelinux.cpp:360] (find_running_copy)
2012-Jun-19 16:55:53.103 INFO core Dwarf fortress path: "/home/zach/Games/Dwarf Fortress" [src/dfinstancelinux.cpp:367] (find_running_copy)

I found instructions on how you can get the memory layout and what not from here: http://code.google.com/p/dwarftherapist/wiki/MappingNewVersion

I'll try this real quick!

Second Edit:

Well, that didn't work. Any ideas? When I try to run the bin/release/DwarfTherapist executable the window pops up, then closes immediately
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: khearn on June 19, 2012, 04:16:07 pm
To build on linux, I just do the qmake and make, then run ./bin/release/DwarfTherapist

It will complain about not finding the logfile, but that's (mostly) harmless. If you mkdir log in the top directory you can avoid that warning, too.

I just built version 14 and it seems to work fine. Haven't had enough chance to play with it to give much feedback. I'm at work, so compiling doesn't raise any eyebrows, but playing DF or using DT would get noticed. The Military-alt tab looks pretty nice at first glance. Sleep icon is better, but is the same as rest. Maybe rest should be a red cross? But it needs to be distinct from the red X for "no job". Maybe a brighter red, or just bigger?

BTW, splinterz, is there any way to tell what version of your code one if running? Help->about just says VERSION 0.6.12. It would be nice if you added a line with your version under that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Somnus on June 19, 2012, 04:18:44 pm
Hey, I was posting while you were replying. When I open it, the window pops up then disappears immediately. Not sure why!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Somnus on June 19, 2012, 04:26:59 pm
Hrm. I got it working after rebuilding it. Dont' know why, but as long as it works, that's okay!

I do have one other, pretty minor question. If I try to run it without sudo it'll load up and be skinned with my system theme, however it wont' be allowed to access DF to grab the dwarf data. If I run it with sudo however, it will access the data, but it skins looking like something from Windows 95. Any idea why this is or how to correct it?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 19, 2012, 05:57:18 pm
Another feature request: Can you make the "about" dialog display the version of the executable? When trying to update DT it's nice to be able to confirm that it updates properly.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Peaceful Slugman on June 20, 2012, 12:06:44 pm
Hrm. I got it working after rebuilding it. Dont' know why, but as long as it works, that's okay!

I do have one other, pretty minor question. If I try to run it without sudo it'll load up and be skinned with my system theme, however it wont' be allowed to access DF to grab the dwarf data. If I run it with sudo however, it will access the data, but it skins looking like something from Windows 95. Any idea why this is or how to correct it?


breadman wrote up a bash script that allows one to run therapist without sudo. The script allows you to get around ptrace, which blocks the non-sudo program from accessing DF memory, and you won't need to use sudo anymore.

His post is here: http://www.bay12forums.com/smf/index.php?topic=65326.msg2565429#msg2565429

I have been getting trouble adapting his solution to work with dfhack, though... replacing df with dfhack doesn't work as well as I would like... I wish I knew more about bash scripting.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ag on June 20, 2012, 12:59:00 pm
You probably also need to make the dfhack script exec df, i.e. "exec setarch i386 -R env ...".
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: King Mir on June 20, 2012, 01:04:36 pm
The latest few versions DF hack don't require root access, since they make DF lanch DF hack as a dll or shared library.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Somnus on June 20, 2012, 04:27:10 pm
breadman wrote up a bash script that allows one to run therapist without sudo. The script allows you to get around ptrace, which blocks the non-sudo program from accessing DF memory, and you won't need to use sudo anymore.

His post is here: http://www.bay12forums.com/smf/index.php?topic=65326.msg2565429#msg2565429

I have been getting trouble adapting his solution to work with dfhack, though... replacing df with dfhack doesn't work as well as I would like... I wish I knew more about bash scripting.

That worked perfectly for me, thank you.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Peaceful Slugman on June 20, 2012, 05:43:17 pm
I'm still not sure how to run dfhack, df, and DT without sudo or disabling ptrace.

When I replace df with dfhack in breadman's script, I get "DFhack do help or ? for the list of available commands" repeated in the terminal many times per second ad infinitum, and thus dfhack is unusable.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Xen0n on June 20, 2012, 06:28:46 pm
alright, new version!

  • added new default military-alt view which includes individual weapon roles
  • color coded the existing default roles tab to match the labor colors/ordering
  • added a ton more default roles for individual crafting labors and weapon skills
  • added teacher, student, armor, shield roles to default military tab
  • added option to apply gradients on happiness, job and enabled labor cells
  • grids/views remember their group setting
  • updated sleep, beer icon and fixed milking job icon
  • added option to show role information in skill columns
  • column header text is always centered
  • added option choose column header font
  • cell drawing stuff is properly centered once again
  • fixed cell drawing/painting (borders, sizes)
  • pets are no longer butcherable, indicated by a red shaded square
  • DF connection alert will occur immediately now upon DF exiting
  • on break and idle will sort/group separately
  • fixed a bug causing the details pane to show multiple dwarf details (i think this will resolve the re-sizing issue, let me know if it doesn't)
  • fixed role sorting in context menus
  • when changing a nickname the current nickname is shown in the edit box
  • dwarf name on the details pane is now word wrapped

Project Home // Download (http://code.google.com/r/splintermind-attributes)

Really appreciate it; has made my dorfing much easier and enjoyable! 

One question, on the project page, where it says "see commit log for offset changes," if I don't know exactly what this means and can't find a 'commit log,' does that mean I don't need to worry about it?  (i.e. it's intended for modders or something beyond my skill level) :P

Also, I assume I can use this with 34.07, based on the project page?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 20, 2012, 06:51:40 pm
I really like your role view, I was doing something similar with my spreadsheet... so nice!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 21, 2012, 12:27:52 am
Looks like a great update Splinterz!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 21, 2012, 02:26:45 am

Really appreciate it; has made my dorfing much easier and enjoyable! 

One question, on the project page, where it says "see commit log for offset changes," if I don't know exactly what this means and can't find a 'commit log,' does that mean I don't need to worry about it?  (i.e. it's intended for modders or something beyond my skill level) :P

Also, I assume I can use this with 34.07, based on the project page?

i try to make note of the offset changes (http://code.google.com/r/splintermind-attributes/source/list) and their dfhack references primarily for ag as he's been generating layout files from the dfhack structures (https://github.com/angavrilov/df-structures), which is incredibly helpful when updates are released. it should be fine with 34.07, although i haven't tested that version extensively, so if you find something amiss let me know.

Looks like a great update Splinterz!
I really like your role view, I was doing something similar with my spreadsheet... so nice!

thanks! :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 21, 2012, 03:38:51 am
Very low pri request, as i can easily scroll down :) On the squad sort setting, can the squads be at the top please.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ag on June 21, 2012, 03:50:17 am
i try to make note of the offset changes (http://code.google.com/r/splintermind-attributes/source/list) and their dfhack references primarily for ag as he's been generating layout files from the dfhack structures (https://github.com/angavrilov/df-structures), which is incredibly helpful when updates are released. it should be fine with 34.07, although i haven't tested that version extensively, so if you find something amiss let me know.

There is so much going on in this thread that I can't always watch for changes. It may be better if you cloned the structures and patched the perl script. It is pretty straightforward for the most part:

https://github.com/angavrilov/df-structures/blob/master/make-dt.pl (https://github.com/angavrilov/df-structures/blob/master/make-dt.pl)

Also, one suggestion: don't change the meaning of old offsets under the same name, like with 'name' in squad_offsets. That is the only type of change that blocks using the same ini file with all DT versions.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: khearn on June 21, 2012, 10:41:30 am
splinterz, I can confirm that the window resizing issue seems to be gone now. Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Xen0n on June 21, 2012, 09:46:22 pm
i try to make note of the offset changes (http://code.google.com/r/splintermind-attributes/source/list) and their dfhack references primarily for ag as he's been generating layout files from the dfhack structures (https://github.com/angavrilov/df-structures), which is incredibly helpful when updates are released. it should be fine with 34.07, although i haven't tested that version extensively, so if you find something amiss let me know.

Ah, thanks!  Really digging all the little UI upgrades, even on 34.07!  The nicknames glitch fix and "On Break" vs. "Idle" are awesome too! 

So far I've noticed that unlike other nobles, monarchs / royalty don't seem to get get highlighted with their special colours (not really important to me, just messing around with all the cool features :D).  Not sure if that's just since I'm using 34.07, though.

Thanks again for all the work put into this!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 21, 2012, 10:30:55 pm
I love the new tool, but...

it still keeps crashing after sorting by labors...

I click on a labor to sort

which does one of 3 things

works...

works and resizes the first row height if the dwarf is a noble (which doesn't happen if not in the first row).

or crashes.

damn, extra rework of loading filter scripts and re-assigning labors.

love it tho!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 22, 2012, 01:30:52 am
Hello :)
Just reporting a minor glitch: when assigning a Dwarf into a squad, the page goes blank (except header) and one needs to change tab (military -> labor -> military) to get the list back on.
BTW I like the advances in splinter's branch, the new military-alt is useful for displaying different infos.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Tierre on June 22, 2012, 02:06:47 am
I had a problem with Jdwarf utility yesterday, but i think it is a general issue. Then i resurrected my dead dwarfes they never reappeared in DT. I even reloaded the game - no luck:( Maybe some flag checking issue?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 22, 2012, 05:37:20 am
Hello :)
Just reporting a minor glitch: when assigning a Dwarf into a squad, the page goes blank (except header) and one needs to change tab (military -> labor -> military) to get the list back on.
BTW I like the advances in splinter's branch, the new military-alt is useful for displaying different infos.

Yeah this is a pain :) Clicking read dwarves works too.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 22, 2012, 05:45:19 am
@Argelle: thanks for the report, i'll have a fix up for the squad assignment asap

@thistleknot: i'm unable to reproduce this with or without filter scripts running. are you sure this isn't related to the extra stuff you've patched in?

@Tierre: more than likely it's a flag issue. DT uses death/killed flags to filter out those dwarves. i'll have to see if i can find out what flags Jdwarf is setting

@Xen0n: i don't currently have a fort with a monarch to test with, so if you wouldn't mind uploading your save i'll get to the bottom of the highlighting issue. otherwise it might be a while  ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Tierre on June 22, 2012, 05:50:18 am
Thanks Splinterz:) Actually funny thing - this is a Jdwarf bug:) It should heal, but can resurrect ercently deceased too (author didn't intended that to be i think). Masterwork mod has interactions on resurrecting dwarfes - will DT see those too? I think it is really interesting to see how DT reacts to resurrection by any means, not only Jdwarf:) But that's really not urgent;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 22, 2012, 06:01:30 am
Thanks Splinterz:) Actually funny thing - this is a Jdwarf bug:) It should heal, but can resurrect ercently deceased too (author didn't intended that to be i think). Masterwork mod has interactions on resurrecting dwarfes - will DT see those too? I think it is really interesting to see how DT reacts to resurrection by any means, not only Jdwarf:) But that's really not urgent;)

yeah i took a quick look and he's setting the dead flag, but DT also checks a killed flag which may cause it them to not show. you can test whether or not it's this specific flag by editing the layout file for the version you're running in the memory layout folder, and changing the [invalid_flags_2] section to this:

Spoiler (click to show/hide)

Edit: actually Tierre, it would be easier just to edit JDwarf.lua and add this line:
unit.flags2.killed=false
after
unit.flags1.dead=false
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Tierre on June 22, 2012, 07:14:48 am
I will try that at home in another 5 hours or so (they don't really like me playing at work heh). Thanks a lot in advance.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 22, 2012, 07:51:26 am
@thistleknot: i'm unable to reproduce this with or without filter scripts running. are you sure this isn't related to the extra stuff you've in?

Aww damn, no I'm not.

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 22, 2012, 08:46:17 am
I have a nice feature request.

A number next to a labor to show how many of that labor is assigned (in the current view grid).

It's actually so when I find I need to unassign some labors', I can start from the highest count first.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Xen0n on June 22, 2012, 09:46:12 am
@Argelle: thanks for the report, i'll have a fix up for the squad assignment asap

@Xen0n: i don't currently have a fort with a monarch to test with, so if you wouldn't mind uploading your save i'll get to the bottom of the highlighting issue. otherwise it might be a while  ;)

Here's the save (http://dffd.wimbli.com/file.php?id=6546), using the latest version of Splinterz DT.  I have a few Mods installed (Modest Mod (http://www.bay12forums.com/smf/index.php?topic=105871), Higher Learning (http://www.bay12forums.com/smf/index.php?topic=60853.0), Seasonal Crops (http://www.bay12forums.com/smf/index.php?topic=61293.0)) and one or two tweaks (I want me some war wolves).

I also noticed that same, "page goes blank" when assigning dwarves to squads, but like Intrinsic says, doing another Read or switching tabs refreshes the page.

Thanks again!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Bifidus on June 22, 2012, 01:06:16 pm
Glad to see there's a place to report bugs for splinterz version of DT (i should have searched here first ^^) - but use of the google code site web feature to track bugs would be better, imo.

So, here is my problem : the last version of splinterz DT do not sort columns, most of the time. It's a new problem, previous version was ok. I use no other mod, i play under windows (any chance to have a linux version of DT - for ubuntu users, the kind who absolutely don't understand anything to things like "compile" "make" and other nighmares... ?).

Good luck !
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 22, 2012, 02:34:46 pm
Glad to see there's a place to report bugs for splinterz version of DT (i should have searched here first ^^) - but use of the google code site web feature to track bugs would be better, imo.

So, here is my problem : the last version of splinterz DT do not sort columns, most of the time. It's a new problem, previous version was ok. I use no other mod, i play under windows (any chance to have a linux version of DT - for ubuntu users, the kind who absolutely don't understand anything to things like "compile" "make" and other nighmares... ?).

Good luck !

as far as i'm aware google code doesn't support issue tracking on project clones, hence the lack of issue tracking. can you elaborate more on exactly how to reproduce the problem? what columns (labor, skills, roles, all?) is this happening on windows an ubuntu?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Bifidus on June 22, 2012, 03:27:56 pm
I can use it on Ubuntu ?  :o
Without Wine ? How ?

And i just discover my problem isn't really one... when a job is inactivate, DT seem to prefer sorting by attribute than by level of the job. It's not a bug, it's a feature ? ;) It could make sense but... can we have that behaviour as an option ?

Thank you again for the good job (having theses "Dwarven Guidance Counselor" features again are so cool, and far better directly in DT).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 22, 2012, 03:37:06 pm
I can use it on Ubuntu ?  :o
Without Wine ? How ?

And i just discover my problem isn't really one... when a job is inactivate, DT seem to prefer sorting by attribute than by level of the job. It's not a bug, it's a feature ? ;) It could make sense but... can we have that behaviour as an option ?

Thank you again for the good job (having theses "Dwarven Guidance Counselor" features again are so cool, and far better directly in DT).

there are some instructions here (http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist) that should work. i think i know what you mean about the sorting. it will sort labor columns by 'labor enabled' and then by role rating. skill columns are sorted by 'has any experience at all' and then by role rating. you can turn off both these features under options->roles.

thanks for the kind words :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: khearn on June 22, 2012, 03:38:24 pm
Bifidus: Ok, I wave my magic wand and it's now an option! In fact, my magic is so powerful, you don't even need to download a new version! Just open the options screen, go to the Roles tab and uncheck "Show role information in labor columns" (or maybe "Show role information in skill columns", depending on what kind of column you're having the problem with). Voila! now the columns sort like they used to.

Don't thank me, just send some money to splinterz. :)

(darn, ninja'd by splinterz)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 22, 2012, 06:39:25 pm
I know it's in the ini file, but can I have a checkbox that allows me to assign incompatible labors?  Such as mining, woodcutting, and ambushing?

I know the reason they are in place, but it's throwing me of from my optimal labor assignments with low populations.  At such low populations I'll accept the risk.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 23, 2012, 11:18:08 am
v15 Released!


Project Home // Download (http://code.google.com/r/splintermind-attributes/)

thanks again for all the feedback! it was a bit of a rush (but i really wanted to fix that cursed squad issue) so please let me know if i broke anything else in the process! :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Xen0n on June 23, 2012, 12:09:52 pm
Thanks again!  Especially for:

  • added tooltips to labor column headers showing how many dwarves currently have the labor enabled
  • added an additional option to show the enabled labor count on the column header text (ie. 5 Mining, 17 Woodcutting..)

I'm always having to switch back to the "Nothing" sort list to find out how many leatherworkers I currently have etc., this will help a lot!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 23, 2012, 12:13:17 pm
Thanks again!  Especially for:

  • added tooltips to labor column headers showing how many dwarves currently have the labor enabled
  • added an additional option to show the enabled labor count on the column header text (ie. 5 Mining, 17 Woodcutting..)

I'm always having to switch back to the "Nothing" sort list to find out how many leatherworkers I currently have etc., this will help a lot!

yeah i know what you mean :)  by the way, thanks for that save (bonus points for the alliteration) it helped out a ton with the noble stuff and adjusting the details pane for those dwarves with massive nicknames
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Xen0n on June 23, 2012, 12:32:07 pm
Thanks again!  Especially for:

  • added tooltips to labor column headers showing how many dwarves currently have the labor enabled
  • added an additional option to show the enabled labor count on the column header text (ie. 5 Mining, 17 Woodcutting..)

I'm always having to switch back to the "Nothing" sort list to find out how many leatherworkers I currently have etc., this will help a lot!

yeah i know what you mean :)  by the way, thanks for that save (bonus points for the alliteration) it helped out a ton with the noble stuff and adjusting the details pane for those dwarves with massive nicknames


Of course! (http://i.imgur.com/6hwcL.png)
Haha, yeah I began to notice some of my soldiers racked up some big nicknames, edging all columns over to the right in the labor view.
And as for alliteration, I assumed anything aside from an almost audacious amount of audibly alike words to not be adequately awesome.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinteredmind on June 23, 2012, 02:44:13 pm
Splinterz, your code page confused the fuck out of me for about five minutes.. I was thinking, how does it know?


 - Splinter
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 23, 2012, 03:42:32 pm
Some very odd stuff going on with v15, here is what i get when i load DT up. I've even tried wiping out the ini so it starts fresh but i get exactly the same problems. Screenshot should show you everything i mean :)

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 23, 2012, 03:58:33 pm
whoa. that's just starting it up? not doing anything?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 23, 2012, 04:04:34 pm
Yeah load up DF, load in fort, then start up DT and that's what i get :) i tried changing the Group By to different stuff but nothing makes a difference with regards to the names and it trying to set nickname many many times, although as you can see the Commit Changes button isn't even highlighted.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 23, 2012, 04:14:06 pm
Yeah load up DF, load in fort, then start up DT and that's what i get :) i tried changing the Group By to different stuff but nothing makes a difference with regards to the names and it trying to set nickname many many times, although as you can see the Commit Changes button isn't even highlighted.

see if this build resolves it. (https://rapidshare.com/files/272912307/Dwarf_Therapist-15.1.zip)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 23, 2012, 04:46:36 pm
Yeah load up DF, load in fort, then start up DT and that's what i get :) i tried changing the Group By to different stuff but nothing makes a difference with regards to the names and it trying to set nickname many many times, although as you can see the Commit Changes button isn't even highlighted.

see if this build resolves it. (https://rapidshare.com/files/272912307/Dwarf_Therapist-15.1.zip)

Seems to, although haven't had a chance to use it for anything, it's time for my beauty sleep, should get a chance to try it tomorrow.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 23, 2012, 05:30:39 pm
ooh, ooh a bug.

#1.

When I go to assign my "blank" custom profession, it loops indefinately.

My custom profession is no labors enabled (I use it to start re-assigning my labors).

...

Oh shit... it did finally work.

Okay, takes WAY TOO LONG.  Before it would be immediately, now it took almost 2 minutes to complete.

#2.

Btw, it's still doing that noble resizing [when noble is first position in list] (and it's your unadulterated version).

Spoiler (click to show/hide)

Update: cell size was too small, increase cell size (not font) fixes

#3

Btw, it's still crashing when I do the sorts inbetween labor assignments

Here's what I do:

I set a filter script

d.total_assigned_labors()<5
//&&
//!d.labor_enabled(00)
//&&
//!d.labor_enabled(44)

and then I start assigning labor's one at a time:

latest example was:
clear all labors to blanker's (i.e. custom profession, no labors).

Then...

I sort by mining, set 10

sort by farming, set 10

sort by role metalsmith, select top 7, jump back to labor grid, right click on weaponsmith's (placeholder for later assigning to metalsmithing custom profession, but that's irrelevant).

sort by leatherworking... pauses... then crashes.

have to reload my filter script upon reload of DT

Update:

The crash seems to happen when I jump from a role view to a labor view and then try to sort.

Update:

I think it crashes because from the last set of dwarf's I have highlighted (that I selected from the roles grid view) are still selected when I attempt a new sort in the labor view.  I deselected the dwarf's by clicking on a new dwarf, and then I was able to sort in the labor grid view immediately after the role grid view sort.

Update: Splinterz is aware of bug and is not it.  Yay!

Note:
  It would be nice to incorporate Shish's patch file to assign top x # of dwarf's to a role, but it's kind of a pain because you have to minimize the current grouping of dwarf's to assign it...  that's why I was pushing for a total # of dwarf's selected option as well.

#4
Lastly:

  How do I get my militia (assigned) dwarf's to highlight properly.  I assigned some dwarfs to the militia (game is paused) and yet, they are not highlighted.  I chose red to highlight them... I could sort by squads...
 nevermind, noble highlights is for militia leaders
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 24, 2012, 02:24:20 pm
Feature request:

Exclude nobles filter function?

Would be nice to not see them when I'm sorting by total assigned labors...  Although, if it's too much a pain, noble highlighting serves same function.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 24, 2012, 04:30:16 pm
update for bug fixes and performance issues


Project Home // Download (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on June 24, 2012, 05:08:17 pm
Where are you getting the info for weapon sizing? I bought a halberd from the human caravan and nobody wants to equip it. DT seems able to tell whether a dwarf will multigrasp a longsword or pick, and I can get dwarves to equip them with no problem. It's just the human-sized weapons giving me trouble. With 34 dwarves I'd expect at least one of them to be 5% bigger than the average dwarf, so I'm not sure where the problem really is.

I'm using v15.2.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 24, 2012, 05:31:55 pm
Where are you getting the info for weapon sizing? I bought a halberd from the human caravan and nobody wants to equip it. DT seems able to tell whether a dwarf will multigrasp a longsword or pick, and I can get dwarves to equip them with no problem. It's just the human-sized weapons giving me trouble. With 34 dwarves I'd expect at least one of them to be 5% bigger than the average dwarf, so I'm not sure where the problem really is.

I'm using v15.2.

it reads in the raws for the weapon details, and then compares that to the size of the dwarf.

see:
http://dwarffortresswiki.org/index.php/DF2012:Weapon_token
http://dwarffortresswiki.org/index.php/DF2012:Weapon#Size
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on June 24, 2012, 06:39:48 pm
So the size of a dwarf is a number that DT reads? I know how weapon sizing works, I'm just trying to figure out why they're ignoring the halberd.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 24, 2012, 06:46:39 pm
So the size of a dwarf is a number that DT reads? I know how weapon sizing works, I'm just trying to figure out why they're ignoring the halberd.

exactly, it reads the size of the dwarf, and the weapon columns compare their size to the weapons' 1h/2h minimum required sizes
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on June 24, 2012, 07:05:17 pm
Alright then, seems like it's purely an in-game problem.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 24, 2012, 07:07:21 pm
Alright then, seems like it's purely an in-game problem.

couldn't it just be bad luck that you don't have a dwarf large enough to use it yet?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on June 24, 2012, 09:02:58 pm
Spoiler (click to show/hide)

All three military dwarves should be large enough. The comment about expecting at least one of thirty-four dwarves being able to wield a halberd was just in case DT was reading the dwarves wrong, but if it's looking at a number provided by the game itself then there shouldn't be an issue.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sarkovar on June 24, 2012, 11:06:42 pm
Hey I'm an Ubuntu user and I have a quick/stupid question, am I able to update the Splinterz version by simply replacing the /etc folder or do I need to replace the actual executable as well?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 25, 2012, 07:25:53 am
Spoiler (click to show/hide)

All three military dwarves should be large enough. The comment about expecting at least one of thirty-four dwarves being able to wield a halberd was just in case DT was reading the dwarves wrong, but if it's looking at a number provided by the game itself then there shouldn't be an issue.

hrmm i've had a chance to do a bit of testing, and i think you're on to something. DT reads the broadness and height from memory, but how they're applied may be incorrect. i'm going to do some more testing and see if i can figure out what's going on.

edit: i'm actually using your work from here (http://www.bay12forums.com/smf/index.php?topic=101379.msg3029579#msg3029579) but i'm wondering if perhaps they need both broadness and height over the minimum weapon sizes...

edit2: i've just found your thread (http://www.bay12forums.com/smf/index.php?topic=112093) about the problem...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 25, 2012, 08:15:22 am
a few more minor fixes released if they're annoying you, plus some tooltip info on weapons to help sort out what's going on hopefully


Project Home // Download (http://code.google.com/r/splintermind-attributes/)

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 25, 2012, 09:29:16 am
thanks splinterz!

Btw, I now only use your version.  I don't bother with the patches I had before, yours seems to work well enough with my own sheets.

I'd still like:

1. an assign top x number of (visible) dwarf's per labor option, i.e. I have a filter excluding dwarf's over x number of labors, so what I see on the screen is what I want to assign, I sort by labor, and then choose the top x (x varies per labor) number of dwarf's that r at the top of my sort.  It would be a lot faster if I didn't have to do the sort as well as the counting of those top x (I sent a patch file that Shish had, this kind of does it, but I have to do two things with it, filter by race, minimize the grouping, then sort by labor, then I can right click a box by the race grouping underneath the labor column, and choose assign top x, enter a number, hit enter, commit... but as soon as I do this, I have to repeat those steps for the next labor, very tedious).

2. and somewhere on the screen showing the number of currently selected dwarf's (so I can stop counting them manually).

Update:

I've decided to use shish's patch, it's too much of pain not to with the way I assign labors.

BUILD BABY BUILD!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 25, 2012, 08:49:38 pm
sometimes, when I update a script, it gets buggy...

I want to make new script, but the old one get's overwritten :(

I remember this happening with an older version...

sometimes the only way to get around it was to close, and reopen and create a new one.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: JarinArenos on June 25, 2012, 10:34:10 pm
Regarding the splinterz version, and dwarf sizes specifically, has anyone had any luck getting this to work? I've traded for two-handed weapons, and attempted to assign them to dwarves listed with the ability to wield them, but I can't seem to get them to arm themselves.

Edit: Just saw the thread in the gameplay questions forum. I'll track the discussion there.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Canageek on June 26, 2012, 05:00:23 pm
Alright, so splinterz puts out an awesome variant of DT from what I can see, with on problem: When I click on a column header in the labour tab, it doesn't sort the dwarves by skill anymore. Right now, if I click on Blacksmith, it puts my 7 Blacksmith at the top, but leaves my 2 Blacksmith who doesn't have the labour assigned down near the bottom; Is there a way to get this to go back to the vanillia DT behaviour? I liked having that for assigning more and less of a labour as needed, and checking if I should replace dwarves with my new migrants.

Thanks; Sorry if I didn't take the time to read 150+ pages looking for this, but I'm hoping with all the people here I'll have an answer soon.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 26, 2012, 05:57:13 pm
Alright, so splinterz puts out an awesome variant of DT from what I can see, with on problem: When I click on a column header in the labour tab, it doesn't sort the dwarves by skill anymore. Right now, if I click on Blacksmith, it puts my 7 Blacksmith at the top, but leaves my 2 Blacksmith who doesn't have the labour assigned down near the bottom; Is there a way to get this to go back to the vanillia DT behaviour? I liked having that for assigning more and less of a labour as needed, and checking if I should replace dwarves with my new migrants.

Thanks; Sorry if I didn't take the time to read 150+ pages looking for this, but I'm hoping with all the people here I'll have an answer soon.

I was thinking about that as well, basically the labors are based on roles rather than skills (or use an old version)

You can get around that by setting the global weights for roles as such, traits:0, skills: 1, attributes: 0.

I prefer the new method though, that's the whole point, the old version only relied on skills.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Canageek on June 26, 2012, 05:58:53 pm
Can you point me to a wiki page explaining how the traits and attributes factor into a Dwarf doing his or her job?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 26, 2012, 06:01:31 pm
I created a new spreadsheet (in ods!) that allows you to assign labors efficiently and much quicker than before.

http://www.mediafire.com/?b8tdwkp7vdkg81g

sumif in ods wasn't working right, here is an excel and ods file
http://www.mediafire.com/?3fjh9p62yw25xme

http://www.mediafire.com/?usyu3qcwie5qikk

hopefully you can figure it out, but basically I have the labors on the second sheet setup the way I want it, the order is based on the variables assigned in the first sheet (based on the MPWeight column), you can just ignore this and reorder the labors on the second sheet to your liking.

The bordered box's on the second sheet is what you set, and the gray column represents the # of dwarf's you should assign to each labor.

The jobs per box is a filter you need to set in the script editor as such
d.total_assigned_labors()<5

and start assigning labors one at at time!

btw my filter script looks like this (for miners vs ambushers vs woodcutters, I edit as needed when I assign those labors)
d.total_assigned_labors()<5
//&&
//(!d.labor_enabled(00))
//&&
//(!d.labor_enabled(44))
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 26, 2012, 06:03:05 pm
Can you point me to a wiki page explaining how the traits and attributes factor into a Dwarf doing his or her job?

check each labor on the wiki

http://dwarffortresswiki.org/index.php/v0.31:Wood_cutter

you'll see attributes listed.

The traits... well, those are guess's.  I don't know what traits are set for most of them (if any), but I do know that the Chief Medical Dwarf has helpful set.

The melee soldier I created has quite a few traits, one of which is rage :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 26, 2012, 06:17:13 pm
in the options you can just turn off showing roles in labor and/or skills and the columns will sort by default again, however you won't see related role information in the labor/skill column tooltips. this has come up a few times so i may add additional options to choose to sort by role ratings if you've turned on showing role info in labor/skill columns.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Canageek on June 26, 2012, 06:59:07 pm
Thanks, I was confused as to why three dwarves were listed as better bonecrafters then my new legendary bonecrafter.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 26, 2012, 07:23:31 pm
yeah for labor columns it sorts by those who have it enabled, and then role ratings. maybe i'll change the labor ones to work like the skill columns and sort by skill level rather than labor enabled...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Canageek on June 26, 2012, 07:25:40 pm
How accurate are the default setting on who is best at a labour? Is some dwarf with 0 in bonecrafting actually better then a legendary bonecrafter? (I can look up stats if you want)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 26, 2012, 07:28:38 pm
No!!!!

Don't do that splinterz...

that would screw me all up...

:(

I like skills, don't get me wrong, but then I can't assign directly from the labors screen (based on role, I'd have to jump back and forth)

Give me an option please!

And... I think it would be nice to have a legendary superseding all else as being a 100% fit :)

Or a 99.99% fit maybe?

Wait:

I don't know if I got that correctly, sounds like something totally diff... but the 99.99% fit I think is a good idea for those with legendary skill, it just means there attributes/traits aren't 100% (or something similar to 99.99%, maybe 99% for skill only?  I dunno).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Canageek on June 26, 2012, 07:34:55 pm
I mean, if a 0 skill dwarf IS actually better then 12, sure, I'll make that guy my carver, but it seems...unlikely. Or is DF just that non-intuitive?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 26, 2012, 07:48:42 pm
I mean, if a 0 skill dwarf IS actually better then 12, sure, I'll make that guy my carver, but it seems...unlikely. Or is DF just that non-intuitive?

it's really pretty subjective. if you care more about attributes and traits, then yes it's possible for 0 skill to be better than 12. depending on what weights you set for the different aspects, you'll can potentially have completely opposite role rankings.

i think the problem right now is that the sorting isn't intuitive. a labor column has 3 different data it can be sorted on: labor enabled, skill level and role rating, which is why i'll probably have to add more sort options as aforementioned.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 26, 2012, 08:53:45 pm
btw, I'm still having occasionall crashes, but I'd have to send you a save, and a video to show you where, cuz it's only when i'm assigning militia.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on June 27, 2012, 01:45:51 am
I mean, if a 0 skill dwarf IS actually better then 12, sure, I'll make that guy my carver, but it seems...unlikely. Or is DF just that non-intuitive?

Toady stated in a FotF post that skills > attributes. But there is a cut off point where attribs will enable your guy to skill up fasters. For example if you get a migrant with 5 or 6 in a skill then stick with him unless his attributes really suck, ie for a crafter creativity is a very important stat which is why it's valued in DT as being twice as important, so DT would rate him down anyways but eventually his skill would override the creativity.
Agility is another attrib people favour highly, as it dictates a dwarves "speed". Not just in running around but every action(skills) ie swinging something(weapon/pick) and of course because they move faster they'll skill up faster, ie going to and from stockpile to workshop.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on June 27, 2012, 05:59:12 am
btw, I'm still having occasionall crashes, but I'd have to send you a save, and a video to show you where, cuz it's only when i'm assigning militia.

I think it did happen to me as well, during LONG sessions of DF and lots of fiddling with therapist for squads, plus moving a militia captain by mistake from his squad to another (got a warning message from therapist). Hence I more or less stopped assigning squads or nickname with therapist, but use it to have the dwarf listed as I want somewhere on my screen, and doing the job inside DF.
Problem is, it's difficult to reproduce the crash, going back to the last save and trying to repeat the same actions more (except for moving the captain) or less, never got me to a second crash. Therefore, difficult to put the blame on DT.


EDIT: minor bug, monkey not showing ("stray ??")
(http://tof.canardpc.com/preview/519b97cf-f57c-4609-ba88-041ef3b1023f.jpg) (http://tof.canardpc.com/view/519b97cf-f57c-4609-ba88-041ef3b1023f.jpg)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: ghostwoods on June 27, 2012, 07:31:28 am
I know I'm greedy, but it would be nice to see some sort of weighting-based labor auto-assignment feature. I can imagine that it would be a serious PITA to have to code, though :/
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Andir on June 27, 2012, 08:50:34 am
I thought that's what splinterz version did... or it at least helped you a ton by weighing each skill based on the assignment so you can pick the "top dwarf" for some jobs.   (I haven't yet run his version, but it was talked about some 15 pages back.)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: guitarxe on June 27, 2012, 09:11:59 am
Thank you for keeping this updated :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 27, 2012, 09:27:52 am
I think by auto, he means auto assignment of labors (like a Dwarf Organizer implemented into DT).  I've been working on a few ideas, but god knows if I'm ever gonna implement it.  I can't get dt to compile on my portable version of qt creator so I can try do stuff at work on it.  Splinterz is onto the idea, so maybe...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Cespinarve on June 27, 2012, 01:37:03 pm
So I find out that Dwarf therapist was finally blessed with an OSX version, but from what I can tell DT doesn't work with 34.11?


WHY MUST YOU BE SO CRUEL, WORLD, WHY?

EDIT: Problem Solved after crawling through the thread. DT is fantastic!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: alesia on June 28, 2012, 06:00:47 pm
FINAL EDIT:
I have no idea what I was doing wrong, but things are working fine now after recompiling and rebooting, then swapping out the offset .ini file with the Github version.  So.  Thanks, folks, for such a wonderful program!

(Old 'please help' message under the spoiler, in case some other poor bastard is having the same issue.)

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 28, 2012, 07:32:17 pm
minor feature request.

maintain "group by" inbetween (grid view) tabs.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on June 29, 2012, 01:08:15 am
maintain "group by" inbetween (grid view) tabs.

Actually, what would be brilliant would be the ability to select which tabs you want to lock in sync in terms of viewing (both for "group by" settings AND the current row viewing position).

For example, you could choose to have say the Labor, Military and Weapons tab locked together in one "viewing group", and Roles, Attributes and Social in another viewing group.  Then when you Group By Profession on the Labor tab and scroll down to the dwarf you want, when you switch to the Military or Weapons tab it's already sitting at the same row with the same grouping.

Would save a hell of a lot of scrolling up and down and also selecting the same "group by" for tab after tab.  Those who like the User Interface behaviour the way it is now could just not "lock" their tabs and the behaviour would remain the same as it currently is.

One way of implementing this in the UI could be through right-clicking on a tab header, and having an in-place pop up menu listing "Lock to Viewing Group 1", ... , "Lock to Viewing Group 4", "Unlock from Viewing Group".  Or if that wasn't possible, just set up through a menu or the options.  Locked tabs could have their title backgrounds subtly coloured or something to show which viewing group they were currently in. 
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 29, 2012, 04:32:51 am
minor feature request.

maintain "group by" inbetween (grid view) tabs.

yeah i should have added an option to apply the grouping to all views when i implemented the grouping per tab. i'll have to add that in.

@Nkosi_SW: i'll look into this, no promises for the immediate future though :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on June 29, 2012, 11:27:03 am
No worries.  I'm sure you have a long list of "feature requests".  ;)

As a more limited request, while you're adding an option for thistleknot to apply the grouping to all views, would it be feasible to also add an option to apply the row viewing position (ie the scroll position of the grid) of the current view to all views?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 29, 2012, 01:21:39 pm
No worries.  I'm sure you have a long list of "feature requests".  ;)

As a more limited request, while you're adding an option for thistleknot to apply the grouping to all views, would it be feasible to also add an option to apply the row viewing position (ie the scroll position of the grid) of the current view to all views?

i like that one.  I've noticed that the sort order gets thrown off inbetween views, would make things a lot easier if the sort order/dwarf selected were consistent between grid views.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on June 29, 2012, 01:31:17 pm
No worries.  I'm sure you have a long list of "feature requests".  ;)

As a more limited request, while you're adding an option for thistleknot to apply the grouping to all views, would it be feasible to also add an option to apply the row viewing position (ie the scroll position of the grid) of the current view to all views?

i like that one.  I've noticed that the sort order gets thrown off inbetween views, would make things a lot easier if the sort order/dwarf selected were consistent between grid views.

it's not so much 'thrown off' as it's saving your scroll position and grouping per view. selection shouldn't change if you're not re-reading.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 29, 2012, 07:26:28 pm
I made a new openoffice document sheet to help assign labors more efficiently

http://www.reddit.com/r/dwarffortress/comments/vtlr6/labor_optimizer_v12_openoffice_document_please/

here's a video
http://www.mediafire.com/?hqvc9lqlqs8na5i
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on June 29, 2012, 07:45:04 pm
btw Splinterz, shish's patch for selecting the top x of dwarf's works flawlessly.  I don't think you would need to implement anything other than the patch I sent you.  I wasn't aware I didn't have to minimize the 'group by' (race) when I was using it, makes it much faster/easier to use... :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Bifidus on June 30, 2012, 10:28:44 am
there are some instructions here (http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist) that should work.
As a Ubuntu user, that's exactly what i try to avoid... but anyway, i did it. And it almost worked :)
I obtained a linux native DT. It launch, but don't see DF running. If i clic the "connect to DF" button, it become gray, nothing happen. If i clic the "read dwarves" button, it complain of "Dwarf Fortress has either stopped running, or you unloaded your game. Please re-connect when a fort is loaded."

I tried to make the vanilla DT, and i also obtain a linux native DT. But it crash right after launch ("ptrace attach: Opération non permise" - translate as "ptrace attach: operation not allowed", i suppose).

So... if annyone got an idea...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: drh on June 30, 2012, 02:03:28 pm
there are some instructions here (http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist) that should work.
As a Ubuntu user, that's exactly what i try to avoid... but anyway, i did it. And it almost worked :)
I obtained a linux native DT. It launch, but don't see DF running. If i clic the "connect to DF" button, it become gray, nothing happen. If i clic the "read dwarves" button, it complain of "Dwarf Fortress has either stopped running, or you unloaded your game. Please re-connect when a fort is loaded."

I tried to make the vanilla DT, and i also obtain a linux native DT. But it crash right after launch ("ptrace attach: Opération non permise" - translate as "ptrace attach: operation not allowed", i suppose).

So... if annyone got an idea...

You need to set the kernel.yama.ptrace_scope sysctl to 0. Echo '0' to /proc/sys/kernel/yama/ptrace_scope for a temporary fix, or modify the relevant sysctl.conf or sysctl.d/ config file to set the appropriate value for a permanent fix at boot.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: g1real on June 30, 2012, 03:43:09 pm
For some reason I can't really get an answer myself so I'll have to ask.

(I'm using masterwork, alchemy is actually used in that mod)
Is Alchemy bugged in Therapist or are dwarves unable to gain experience in it? For some reason all my alchemy dwarves still show 0 experience in it even though they've used the skill repeatedly.
Due to masterwork's nature I'm still on 34.10 unfortunately, but still.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Bifidus on June 30, 2012, 04:53:34 pm
You need to set the kernel.yama.ptrace_scope sysctl to 0. Echo '0' to /proc/sys/kernel/yama/ptrace_scope for a temporary fix, or modify the relevant sysctl.conf or sysctl.d/ config file to set the appropriate value for a permanent fix at boot.
UristMacUbuntu has been miserable lately.
Just wanted to dig holes and punch some goblins, but is about to toy with kernel security. Feel like UristNotmyfaultFukushima.
Anyway... can't do it, even with sudo (bash: /proc/sys/kernel/yama/ptrace_scope: Permission non accordée).

Edit : ok, Google tell me than "echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope" should work.
And... it work. Thank you ! But gaming under Linux is still such a PITA.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 01, 2012, 06:51:39 pm
No worries.  I'm sure you have a long list of "feature requests".  ;)

As a more limited request, while you're adding an option for thistleknot to apply the grouping to all views, would it be feasible to also add an option to apply the row viewing position (ie the scroll position of the grid) of the current view to all views?

i like that one.  I've noticed that the sort order gets thrown off inbetween views, would make things a lot easier if the sort order/dwarf selected were consistent between grid views.

it's not so much 'thrown off' as it's saving your scroll position and grouping per view. selection shouldn't change if you're not re-reading.

I think it saves the last sort done in that specific grid view.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Porterhaus on July 01, 2012, 09:40:12 pm
Any idea what would cause this?
Spoiler (click to show/hide)
Just upgraded to a Macbook Pro with Retina display.  It was working perfectly on my older (non-Retina) MBP.
Obviously pretty unusable since you cannot see what is selected and what isn't.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 02, 2012, 12:29:37 am
No worries.  I'm sure you have a long list of "feature requests".  ;)

As a more limited request, while you're adding an option for thistleknot to apply the grouping to all views, would it be feasible to also add an option to apply the row viewing position (ie the scroll position of the grid) of the current view to all views?

i like that one.  I've noticed that the sort order gets thrown off inbetween views, would make things a lot easier if the sort order/dwarf selected were consistent between grid views.

it's not so much 'thrown off' as it's saving your scroll position and grouping per view. selection shouldn't change if you're not re-reading.

I think it saves the last sort done in that specific grid view.

it saves the last sort, the last grouping and the scroll positions for each individual view. as aforementioned i'll be sure to add an option to revert to the previous functionality of applying the grouping to all views, and hopefully the sorting/scroll positions. the sorting is a bit of an issue across views with different columns so we'll see.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 03, 2012, 09:35:11 am
I updated my labor optimizer spreadsheet and made a youtube video describing all the bells and whistles inside (links are in the video)

http://www.youtube.com/watch?v=YWYSYR66oMU


Update:

When it's quite here... things are working... ironic.

I meant to say

When things are working, it's quite quiet in here... ironic. (corrected)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on July 04, 2012, 04:03:36 am
Just to let you know, thistleknot, that your addition to DF is quite useful ti some of us :)

Anyway, within DFTherapist per se, I realize, looking at a video of a french guy (http://www.youtube.com/watch?v=LXQqCbjpIyU&feature=youtu.be&hd=1) playing hardcore (naked embark), that some do have plenty of choices for weapons' skills, whereas for the last two fortress of mine, up to 140 and 80 dwarves, I only see red dots in one and only column:



(http://tof.canardpc.com/preview/e32b072b-cea6-40b0-8ea1-daa0287013de.jpg) (http://tof.canardpc.com/view/e32b072b-cea6-40b0-8ea1-daa0287013de.jpg)

Bug? Very unliky?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 04, 2012, 05:09:28 am
Just to let you know, thistleknot, that your addition to DF is quite useful ti some of us :)

Anyway, within DFTherapist per se, I realize, looking at a video of a french guy (http://www.youtube.com/watch?v=LXQqC...=youtu.be&hd=1) playing hardcore (naked embark), that some do have plenty of choices for weapons' skills, whereas for the last two fortress of mine, up to 140 and 80 dwarves, I only see red dots in one and only column:
Spoiler (click to show/hide)
Bug? Very unliky?

if you haven't modded anything dwarves won't be able to use those large weapons, as their body size is too small to wield them. there is a related bug however in that the weapon columns will sometimes show that a few dwarves can wield those weapons. this is incorrect as we've since realized (http://www.bay12forums.com/smf/index.php?topic=112093.msg3399744) it's based on the castes average size, not the dwarf's actual size as modified by broadness and height.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 04, 2012, 06:11:15 am
Just to let you know, thistleknot, that your addition to DF is quite useful ti some of us :)

thanks, you just made my day (early morning, before second bedtime).  It's nice to hear some feedback.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 04, 2012, 08:16:31 pm
Spoiler (click to show/hide)

Re-clarified

Issue 1:
  If I apply a script...
  Then I try to create a new script, it will merely overwrite the last applied script.
  It is very difficult to create a new script if I've ever applied one.  Even reseting the applied script to "None" manually, and then trying to create a new one, merely just edits the last script applied.  I have to close and re-open Dwarf Therapist to create a new script.

Issue 2:
  If I edit a script, and then hit apply.  The applied script field resets to "None" even though the applied script is running.

Issue 3:
  It would be nice to be able to delete a script from within the gui (like how we can delete custom role's).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: drh on July 06, 2012, 04:43:38 pm
By the way, whatever happened to the ability to assign dorfs to squads in splinterz build? The last few source builds I've used haven't given me the ability to assign anyone to a squad.

Also, I've noticed that the roles screen has been redone and that 'Melee Soldier' and 'Ranged Soldier' are no longer in the mix. This makes choosing militia candidates inconvenient, and when I attempt to create a similar custom role, it won't show up anywhere.

My friend uses the precompiled Windows build and retains the ability to assign to squads. I'm running a source build on linux pulled from the repository.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 06, 2012, 06:02:43 pm
By the way, whatever happened to the ability to assign dorfs to squads in splinterz build? The last few source builds I've used haven't given me the ability to assign anyone to a squad.

Also, I've noticed that the roles screen has been redone and that 'Melee Soldier' and 'Ranged Soldier' are no longer in the mix. This makes choosing militia candidates inconvenient, and when I attempt to create a similar custom role, it won't show up anywhere.

My friend uses the precompiled Windows build and retains the ability to assign to squads. I'm running a source build on linux pulled from the repository.

i'm unaware of problems assigning squads on linux. i'll do some testing to verify, but can you elaborate on what the problem is? it doesn't work, or you don't have a menu option? what version are you running and are you using mods?

the generic melee and ranged roles have been split into individual roles based on weapon skills which is much more accurate when searching for potential militia than the previous roles with every skill. check the alternate military view included.

if you create a custom role, you'll need to add it to a custom view for it to show up, or name it the same name as one of the roles on the default roles tab to override it on that tab. let me know if you have more questions.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 06, 2012, 09:40:19 pm
Someone on reddit posted a bug http://i.imgur.com/D1NZE.jpg
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: drh on July 07, 2012, 12:24:23 am
i'm unaware of problems assigning squads on linux. i'll do some testing to verify, but can you elaborate on what the problem is? it doesn't work, or you don't have a menu option? what version are you running and are you using mods?

RIght, sorry, that wasn't very clear, was it?

The option doesn't even show up in the context menu. I'm running the latest commit (2a6f5078039e (http://code.google.com/r/splintermind-attributes/source/browse/?r=2a6f5078039ee1208216cd69bd23ca89ed725109)) built from source. I'm running vanilla DF (34.11) with (Golden Shadow's) Ironhand's graphics and with dfhack. It's worked for me before, but somewhere along the way it stopped showing up in the right-click menu, though I'm not exactly certain when; I've only really noticed it since I started taking some casualties from FB syndromes since gobbos weren't doing it. I've also tried earlier tagged commits equivalent to versioned releases (15.2). I'll try more, as well as cross-test against Ironhand. Now that I think of it, it may have started after I compiled and started using dfhack. I'll cross-test against that as well.

Quote
the generic melee and ranged roles have been split into individual roles based on weapon skills which is much more accurate when searching for potential militia than the previous roles with every all skills. check the alternate military view included.

if you create a custom role, you'll need to add it to a custom view for it to show up, or name it the same name as one of the roles on the default roles tab to override it on that tab. let me know if you have more questions.

Okay, thanks! Despite this mystery, you've got a great edition of an already great tool. Much appreciated.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 07, 2012, 03:41:57 am
Someone on reddit posted a bug http://i.imgur.com/D1NZE.jpg

yeah that's not really any help at all without details.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on July 07, 2012, 07:26:27 pm
Someone on reddit posted a bug http://i.imgur.com/D1NZE.jpg

yeah that's not really any help at all without details.

Looks like the bug that happened to me, is their version upto date as splinterz fixed that.

Edit: speeling mistake. AGAIN...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 08, 2012, 09:51:28 am
it's prolly the old version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 08, 2012, 10:24:14 am
Spoiler (click to show/hide)
Nevermind... nothing to see here, I checked the units screen, and I see all 12
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: BlackTalos on July 10, 2012, 07:33:03 am
Hi all, sorry to disturb with such small concerns, but i get this on Rapidshare when i try to get the latest version (15.3):

(http://img703.imageshack.us/img703/8089/23596579.jpg)

I managed to get a version here:
http://115.com/file/c2ekl7w5

But in addition to being a dubious site, i would rather credit the author.
Could you get the original file working Splinterz? =)

Regards
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Rose on July 10, 2012, 08:03:08 am
Um... I just checked the first post, and I didn't see any rapidshare links there.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 10, 2012, 08:45:52 am
he's talking about the links on the branch's project page here (http://code.google.com/r/splintermind-attributes/). i'm not having any issues downloading the files, so i think you'll have to take it up with rapidshare unfortunately.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: krenshala on July 10, 2012, 08:35:16 pm
I wasn't able to find anything recent (as in, less than 24 months old) via Google, so I thought I'd ask here - whats the status of DT in linux? I miss using it since I stopped having a reason to boot to Windows, and while I don't require it to play (obviously) it definitely makes some tasks much easier.

I'm running Gentoo 64bit with a 3.2.1-gentoo-r2 kernel (compiled, not gen-kernel).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Urist MacFrench on July 10, 2012, 08:40:14 pm
whats the status of DT in linux?
Splinterz's version works fine under Linux.
Don't ask me more, i'm a Ubuntu user ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: krenshala on July 11, 2012, 07:03:19 pm
Is there a tarball for the latest linux version?  I can't figure out the google code page (probably because its been a long day, and I'm sick of fighting with other people's code).  I hate Mondays.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on July 12, 2012, 03:37:08 am
Ok, there something amiss between therapist (latest splinter's) and DF (34.11). I do not know if dead soldiers into a squad leaving blanks (available) or lack of communication between programs are the culpits but despite DF restart or Therapist reset ("read dwarves") info is different between the two. I think it can ultimately lead to DF crash to desktop if one start to move dwarf between squad in this context using Therapist.

(http://tof.canardpc.com/preview2/18921eac-2a7c-4cd3-a1ef-e4af5b53e032.jpg) (http://tof.canardpc.com/view/18921eac-2a7c-4cd3-a1ef-e4af5b53e032.jpg)

Legend: (left) Therapist displays (2) marksdwarves for "The Dignity of Mine" versus DF (6) names displayed (right).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 12, 2012, 04:46:49 am
thanks for the report Argelle, i'll see if i can reproduce it. although if you've got any idea how you might have ended up in that state, that would be immensely helpful :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on July 12, 2012, 05:14:12 am
As simple as a first encounter with a forgotten beast breathing deadly dust into my soldier's lung :(
Oh, you do not mean the weak state of my squads? :)
As for therapist & DF inconstancy, I wish I could pin point what lead to it or an action before a crash. Maybe now more therapist's users will be aware of it, so instead of looking at Therapist only, they will compare to DF own panel and someone will report the same situation with more details.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 12, 2012, 08:59:45 am
so those dwarfs that aren't showing up, were they already dead and just not found yet?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Tierre on July 12, 2012, 09:02:05 am
Maybe they have a tag killed? That was my case then i revived a dwarf?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on July 12, 2012, 09:27:31 am
Good pick, I've compared DT and DF: Zanek et Dumed not listed in the first program. Then locked at my job list in DF: nowhere to be seen. But, they are in the "engraved memorial" list at the craftsman workshop!
I'm not using any mod, or DFHack command, so they died "honestly". DT is aware of it, but seem the body wan't discover yet, and they still show in DF. May be manipulating dead dwarves in DT is the culprit?
Weird thing, under "u" = 74 citizens and for Therapist = 63/9/2. Therapist is easy to find a dwarf by name, how do I do this in DF?


EDIT: Just as I typed here, someone gave the answer in a parallel topic :)
If you're playing 34.11, and you have dfhack, there is a new "sort" command that organizes the unit list, and even some other lists, too. GODSEND!
This forum is as much amazing/great as DF itself!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Andir on July 12, 2012, 10:26:29 am
Could DF still be reporting dwarfs that are dead because they have not been discovered to be dead yet?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 12, 2012, 10:31:11 am
well you can't manipulate dead dwarfs in DT as they're filtered out via the killed/dead flags. when i've got time i'll have to try getting a dwarf in a squad killed and replacing him or something. unless of course you'd like to upload your save :D

in regards to the unit counts, the 63/9/2 represents adults/children/babies so it should equal the DF count in the 'u' screen (which it does in your example) so i'm not sure what you're finding weird there.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on July 12, 2012, 11:26:04 am
Weird is that the dead guys Zanek & Dumed do not show up in Therapist (74 citizen), but they do in the militia screen of DF, hence DF should display 74+2 citizen (in u screen). But no, there are no Zanek nor Dumed in (u) screen. Hence DF is schizophrenic :)
Hum, that means there is nothing wrong in Therapist, I guess  ???

(http://tof.canardpc.com/preview2/717e3e9f-0998-4bd4-8118-f4e80f88f32f.jpg) (http://tof.canardpc.com/view/717e3e9f-0998-4bd4-8118-f4e80f88f32f.jpg)

Anyway, I've uploaded my save, if needed: http://dl.free.fr/fGMYvT3p5 (DF 34.11, Phoebus graphic 34.11)
I did reorganized my squad so no gap is present in the squad name list, but still DT and DF differ (see image).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 12, 2012, 11:53:52 am
that's perfect thanks. yeah that's got to be at least part of the problem. as DT is filtering out that dead dwarf, it's not showing the correct number in the squad, and thus when assigning a new member it's may be attempting to overwrite and causing a crash. possibly. i'll check it out. thanks for taking the time to post and upload the save.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 12, 2012, 08:23:58 pm
Spoiler (click to show/hide)

nevermind... can do by sorting by race...

new bug:

cursed dwarf check... not working...  where should i be looking for the highlight?  On the unit name?  I have it set to purple, and I have a cursecheck command showing 1 (and 1 reported drained of blood) and yet... no one is highlighted.

yes... I'm a dirty cheater...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: knutor on July 12, 2012, 11:43:48 pm
Is it possible to add roles for haulers?  Some, like the haulers who leave the fort, outdoors, would need caution, observation and agility.  In order to outrun and out think ambushers.  Maybe also make those outdoor haulers, MALE, to protect the children from snatchers.  Thanks, Knutor
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 13, 2012, 04:17:29 am
Spoiler (click to show/hide)

nevermind... can do by sorting by race...

new bug:

cursed dwarf check... not working...  where should i be looking for the highlight?  On the unit name?  I have it set to purple, and I have a cursecheck command showing 1 (and 1 reported drained of blood) and yet... no one is highlighted.

yes... I'm a dirty cheater...

yes they should be highlighted like nobles. i may have to check another offset if it's not working. at the moment it's checking the curse name and i have no idea if there are curses without names. send me the save?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Urist MacFrench on July 13, 2012, 04:32:54 am
Dt (Splinterz's one) stoped working for me, for no apparent reason.
I'm on Ubuntu 12.04.
I haven't played during more than a week, and several updates came to Ubuntu during that time (it's the only things that have changed, i can't see other reason).
Today, DT just crash at launch. I try re download it and compile it again, but it still crash right after launch.
I tried to launch DT via CLI, to have an error message on terminal, but there isn't any.
What can i do to have more valuable information to give to you ?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 13, 2012, 05:18:34 am
Dt (Splinterz's one) stoped working for me, for no apparent reason.
I'm on Ubuntu 12.04.
I haven't played during more than a week, and several updates came to Ubuntu during that time (it's the only things that have changed, i can't see other reason).
Today, DT just crash at launch. I try re download it and compile it again, but it still crash right after launch.
I tried to launch DT via CLI, to have an error message on terminal, but there isn't any.
What can i do to have more valuable information to give to you ?

check the log folder and see what the log file has in it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Urist MacFrench on July 13, 2012, 05:52:45 am
My fault. I forget the last part (hiden in the comments) : "cp -r ../../etc/ ."
Sorry ^^

To make my post less useless :

- DT under Linux read dwarves far slower than under Windows (the more dwarves you have, the slower it is vs nearly instant for Windows).

- i thought a good hunter should be good in marksdwarf and in ambush. DT tell me than one of my dwarve is supposed to be a good hunter but he is bader than the others at ambush and marksdwaf (all have no skill - i start naked; no stuff, no skill). How can this be possible ? Are there other things than ambush and marksdwarf to consider to be a good hunter ?

- requested feature : totally replace the military in game UI (that's the worst part of DF, imo). No idea if it can be done, but i wish you good luck...

And thank you for all the nice additions in DT !
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: knutor on July 13, 2012, 02:01:12 pm
- i thought a good hunter should be good in marksdwarf and in ambush. DT tell me than one of my dwarve is supposed to be a good hunter but he is bader than the others at ambush and marksdwaf (all have no skill - i start naked; no stuff, no skill). How can this be possible ? Are there other things than ambush and marksdwarf to consider to be a good hunter ?

Urist MacFrench, I was surprised at the role requirements for Hunter, too.  With all the footfalls required in stalking; I'd think they would need lots more Agility.  Maybe Agility doesn't affect their stealth travel speed.  Its logical to have the others, Focus, Spatial and Kinestetic. 

Marksdwarf requirement would be redundant, since it requires the same thing as Hunter, minus the military skills and some people prefer player squad-hunting over AI hunter-hunting, so the separation is necessary to please them.  I'm happy with the Hunter Role. 

Except, I would think it would need a Not Sympathy requirement.  Since so often, Hunters traverse the Butchershop, the corpse stockpiles and take part in seeing gruesome body parts and death, often.  Hard to imagine a Hunter as compassionate.  Know what I mean?  Butcher isn't even Not Sympathy.  Butcher role I think should get tweaked before Hunter role, however.  If Sympathy even does anything.  *shrug*  Knutor
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 13, 2012, 04:52:39 pm
Spoiler (click to show/hide)

nevermind... can do by sorting by race...

new bug:

cursed dwarf check... not working...  where should i be looking for the highlight?  On the unit name?  I have it set to purple, and I have a cursecheck command showing 1 (and 1 reported drained of blood) and yet... no one is highlighted.

yes... I'm a dirty cheater...

yes they should be highlighted like nobles. i may have to check another offset if it's not working. at the moment it's checking the curse name and i have no idea if there are curses without names. send me the save?

here's a masterwork save
http://www.mediafire.com/?m1nh2i5c0ph28hl
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Iysif on July 13, 2012, 10:10:58 pm
I don't know if this has been addressed, but I keep having ghosts show up in my list of dwarves with assignable labors.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 16, 2012, 06:24:49 pm
it would be nice if I could nest by group by

and if squad grouping was by squad assignment, and not by active military (I can get around it by ordering a squad to do something, but if someone is sleeping...)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Urist MacFrench on July 16, 2012, 07:56:48 pm
Is it possible to avoid puting strangers (like caravane merchants and their bodyguards) in DT ? They seem to not do what i tell them to do ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Vehudur on July 17, 2012, 04:25:14 am
I can't get the autoupdate to work for some reason unknown to me so I have not been able to use this for the lastest version. Any ideas? :(
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 17, 2012, 05:30:49 am
...squad grouping was by squad assignment, and not by active military...

i don't know what this means, please elaborate.

Is it possible to avoid puting strangers (like caravane merchants and their bodyguards) in DT ? They seem to not do what i tell them to do ;)

this definitely shouldn't be happening if you're using my branch. if you've updated the ini files manually double check the flags here  (http://code.google.com/r/splintermind-attributes/source/browse/etc/memory_layouts/linux/v034.11.ini)(near the end). otherwise upload the save and i'll take a closer look.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Urist MacFrench on July 17, 2012, 08:43:56 am
this definitely shouldn't be happening if you're using my branch.
I do :)

Quote
if you've updated the ini files manually
I don't (just copied them from a place to another, as said in the wiki comments - if not, DT did not launch).

Quote
double check the flags here  (http://code.google.com/r/splintermind-attributes/source/browse/etc/memory_layouts/linux/v034.11.ini)(near the end)
They seem to be the same.

Quote
otherwise upload the save and i'll take a closer look.
By "the save", you mean, the "region" folder ?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 17, 2012, 09:10:44 am
Quote
By "the save", you mean, the "region" folder ?

yes the region folder in data/save/ which has the problem.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Greenalien on July 17, 2012, 10:24:17 am
Hi, is there such a thing as a simple guide to getting Dwarf Therapist run on linux? I'm running ubuntu 12.04, the linux versions seem to be for different distros. When I try and run Dwarf Fortress and Dwarf Therapist in Wine (both latest versions), it tells me that Dwarf Therapist can't find a "PEB" address.

So...hlp pls? My apologies if this has been already answered.

Alternatively I would really welcome any tips on how to manage the fortress when it grows big. I've had it grow to about 80 dwarfs and it turns quite unmanageable by hand at those numbers.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Urist MacFrench on July 17, 2012, 10:27:39 am
Quote
By "the save", you mean, the "region" folder ?

yes the region folder in data/save/ which has the problem.
Here it is : https://www.dropbox.com/sh/qx2togqprh8xlna/yPjaOyDwwM
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 17, 2012, 10:53:06 am
Oh... you know what... I think I was mixing up the filter script with squad grouping's.

It would be nice if the filter script active_military was filtering squads and not military that are currently active.

I believe as it is, it does not filter dwarf's that are assigned to a squad, but have no scheduled order.

...squad grouping was by squad assignment, and not by active military...

i don't know what this means, please elaborate.

Is it possible to avoid puting strangers (like caravane merchants and their bodyguards) in DT ? They seem to not do what i tell them to do ;)

this definitely shouldn't be happening if you're using my branch. if you've updated the ini files manually double check the flags here  (http://code.google.com/r/splintermind-attributes/source/browse/etc/memory_layouts/linux/v034.11.ini)(near the end). otherwise upload the save and i'll take a closer look.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: knutor on July 17, 2012, 11:19:16 am
TIP:  If anyone else is having this problem with Vista 32bit and the latest Therapist.  Try increasing Therapists priority to High. 

Problem:  Therapist window nonresponsiveness.  Can task to it, and away from it, but nothing in it does anything.  When Commit button is moused over and clicked, everything gets highlighted, but nothing gets commited.  No popup messages appear over dwarfs.  Repeat attempts to click in the Therapist window, fail, regardless of what is clicked.  Only button that works, is the resize, maximize and X buttons in the corner.  All this happens while other windows work fine.  While task manager window is open and operational.  No log entries, of issue appear in Therapist log. 

Must be a DLL power or priority issue.  *shrug*  Toggling Therapist process in Task Manager up to High fixed it for me.  Running Therapist on High priority, got the responsiveness back.  I've got a bazillion SVCHOST processes running lord only knows what, for Windows.  One of them is prolly hogging up resources.  Wish I could turn some of those to LOW priority.  Take care, Knutor
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 17, 2012, 11:21:25 am
Oh... you know what... I think I was mixing up the filter script with squad grouping's.

It would be nice if the filter script active_military was filtering squads and not military that are currently active.

I believe as it is, it does not filter dwarf's that are assigned to a squad, but have no scheduled order.

...squad grouping was by squad assignment, and not by active military...

i don't know what this means, please elaborate.

Is it possible to avoid puting strangers (like caravane merchants and their bodyguards) in DT ? They seem to not do what i tell them to do ;)

this definitely shouldn't be happening if you're using my branch. if you've updated the ini files manually double check the flags here  (http://code.google.com/r/splintermind-attributes/source/browse/etc/memory_layouts/linux/v034.11.ini)(near the end). otherwise upload the save and i'll take a closer look.

you can use d.squad_id() in scripts to filter out dwarves in squads. -1 is the returned value for a dwarf who hasn't been assigned to a squad.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 18, 2012, 11:17:19 am
another release for you fine folks. mostly fixes and tweaks this time around. as always thanks for the bug reports and input! summary:



Project Home // Full Patch Notes // Download (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 18, 2012, 09:16:50 pm
Thank you.  I wish shishs patch was a bug fix... haha
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: knutor on July 18, 2012, 09:43:13 pm
Thanks, cannot wait to try it out.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on July 19, 2012, 04:40:03 am
Merci, splinterz! Nice to see you work hard to follow up on your branch.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on July 19, 2012, 08:23:13 am
Crashes on startup for me with my existing ini file, if i remove it then it works fine. I guess it doesn't like one of my custom views.

This is the only line it lists in the log when it crashes:
Code: [Select]
2012-Jul-19 14:20:00.671 INFO core Dwarf Therapist "0.6.12" starting normally. [..\dwarftherapist-splintermind-copy\src\dwarftherapist.cpp:104] (DwarfTherapist::setup_logging)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 19, 2012, 08:24:55 am
Crashes on startup for me with my existing ini file, if i remove it then it works fine. I guess it doesn't like one of my custom views.

This is the only line it lists in the log when it crashes:
Code: [Select]
2012-Jul-19 14:20:00.671 INFO core Dwarf Therapist "0.6.12" starting normally. [..\dwarftherapist-splintermind-copy\src\dwarftherapist.cpp:104] (DwarfTherapist::setup_logging)

would you mind sending me your ini?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 19, 2012, 08:26:23 am
someone on reddit suggested an old suggestion.  the ability to change the orientation of profession names (I believe he was referring to the 90 degree angle of labor/role names).  Similar to how excel lets you change the angle.

Also...

it would be awesome to have a number next to a dwarf's name showing the number of labors he has assigned...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 19, 2012, 08:28:43 am
someone on reddit suggested an old suggestion.  the ability to change the orientation of profession names (I believe he was referring to the 90 degree angle of labor/role names).  Similar to how excel lets you change the angle.

Also...

it would be awesome to have a number next to a dwarf's name showing the number of labors he has assigned...

are you talking about column headers when you say profession names?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on July 19, 2012, 08:32:52 am
Crashes on startup for me with my existing ini file, if i remove it then it works fine. I guess it doesn't like one of my custom views.

This is the only line it lists in the log when it crashes:
Code: [Select]
2012-Jul-19 14:20:00.671 INFO core Dwarf Therapist "0.6.12" starting normally. [..\dwarftherapist-splintermind-copy\src\dwarftherapist.cpp:104] (DwarfTherapist::setup_logging)

would you mind sending me your ini?

Sent, it's got some views that i setup in v13/14 in it so i guess they are the problem. I can recreate them np if needed.

Feature request: On the animals page is it possible we can set the pet availability. I've been doing this to keep track of the breeding pairs i want to keep which have juicy attribs.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 19, 2012, 09:50:27 am
Crashes on startup for me with my existing ini file, if i remove it then it works fine. I guess it doesn't like one of my custom views.

This is the only line it lists in the log when it crashes:
Code: [Select]
2012-Jul-19 14:20:00.671 INFO core Dwarf Therapist "0.6.12" starting normally. [..\dwarftherapist-splintermind-copy\src\dwarftherapist.cpp:104] (DwarfTherapist::setup_logging)

would you mind sending me your ini?

Sent, it's got some views that i setup in v13/14 in it so i guess they are the problem. I can recreate them np if needed.

Feature request: On the animals page is it possible we can set the pet availability. I've been doing this to keep track of the breeding pairs i want to keep which have juicy attribs.

ok the problem is with those weapon columns which have multiple weapon names ('Scourges, Whips', etc.) i've fixed it from crashing but i'll have to look into adding support to add those grouped columns. for now you can still add the weapon columns, but only the individual weapons, the groups aren't available. for you this only affects the 'Military (v13)' tab you had setup i believe.

Here's the updated zip. (https://rapidshare.com/files/1369237444/Dwarf Therapist-16.zip)

if it's still broken let me know. i'll see if it's possible to toggle the pet state on animals, but no promises. :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on July 19, 2012, 10:10:42 am
Crashes on startup for me with my existing ini file, if i remove it then it works fine. I guess it doesn't like one of my custom views.

This is the only line it lists in the log when it crashes:
Code: [Select]
2012-Jul-19 14:20:00.671 INFO core Dwarf Therapist "0.6.12" starting normally. [..\dwarftherapist-splintermind-copy\src\dwarftherapist.cpp:104] (DwarfTherapist::setup_logging)

would you mind sending me your ini?

Sent, it's got some views that i setup in v13/14 in it so i guess they are the problem. I can recreate them np if needed.

Feature request: On the animals page is it possible we can set the pet availability. I've been doing this to keep track of the breeding pairs i want to keep which have juicy attribs.

ok the problem is with those weapon columns which have multiple weapon names ('Scourges, Whips', etc.) i've fixed it from crashing but i'll have to look into adding support to add those grouped columns. for now you can still add the weapon columns, but only the individual weapons, the groups aren't available. for you this only affects the 'Military (v13)' tab you had setup i believe.

Here's the updated zip. (https://rapidshare.com/files/1369237444/Dwarf Therapist-16.zip)

if it's still broken let me know. i'll see if it's possible to toggle the pet state on animals, but no promises. :)

Will check it later. The v13 is obsolete, it was only there while i ported that setup to the newer versions so it's a non-issue really, i never used those weapon columns anyways they were just there for completeness :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 19, 2012, 10:29:52 am
Yes

someone on reddit suggested an old suggestion.  the ability to change the orientation of profession names (I believe he was referring to the 90 degree angle of labor/role names).  Similar to how excel lets you change the angle.

Also...

it would be awesome to have a number next to a dwarf's name showing the number of labors he has assigned...

are you talking about column headers when you say profession names?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 19, 2012, 06:28:45 pm
Arrghhh!!!

I'm on a mini vacation, but there's still a problem with the script editing.

Yes, I can change, and delete...

but if

I have an active running script.

then try to create a new one

the new one overwrites the old one

update...

oh man... closing and re-opening to create a new script... can't create any new script, only overwrites the 1st position...

oh man oh man oh man oh man oh man... no!!!!!!!!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 19, 2012, 07:08:06 pm
Arrghhh!!! I'm on a mini vacation, but there's still a problem with the script editing. Yes, I can change, and delete but if I have an active running script, and then try to create a new one the new one overwrites the old one. oh man... closing and re-opening to create a new script... can't create any new script, only overwrites the 1st position... oh man oh man oh man oh man oh man... no!!!!!!!!

this should fix it. (https://rapidshare.com/files/4103961805/Dwarf Therapist-16.zip)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 19, 2012, 09:07:27 pm
Arrghhh!!! I'm on a mini vacation, but there's still a problem with the script editing. Yes, I can change, and delete but if I have an active running script, and then try to create a new one the new one overwrites the old one. oh man... closing and re-opening to create a new script... can't create any new script, only overwrites the 1st position... oh man oh man oh man oh man oh man... no!!!!!!!!

this should fix it. (https://rapidshare.com/files/4103961805/Dwarf Therapist-16.zip)
Took me a while to read this thru my tears... but i think i can pull the gun out of my mouth. ;) jk...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Chromasphere on July 20, 2012, 01:37:08 pm
Hi splinterz.  I am using your latest dt from a couple posts above.  Everything was working fine until a migration wave came (this was the fourth wave).  At this point I refreshed dt to see the new immigrants (as I had done before with the other waves) and that's when dt crashed.  This is a modded DF (LFR plus my own mods).  Any ideas why would be very welcome as I quite like your version.  Here's the log:

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 20, 2012, 04:21:47 pm
Hi splinterz.  I am using your latest dt from a couple posts above.  Everything was working fine until a migration wave came (this was the fourth wave).  At this point I refreshed dt to see the new immigrants (as I had done before with the other waves) and that's when dt crashed.  This is a modded DF (LFR plus my own mods).  Any ideas why would be very welcome as I quite like your version.  Here's the log:

Spoiler (click to show/hide)

i'll do some testing this weekend and see if i can reproduce it. if you've got a save that would be mighty helpful though. the only changes that should directly impact LFR are the ones to the castes, but it shouldn't be crashing.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Chromasphere on July 20, 2012, 04:47:20 pm
Yup, got one.  Where do I upload it?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 20, 2012, 05:48:52 pm
Yup, got one.  Where do I upload it?

anywhere will work. dwarf fortress specific stuff can always go here: http://dffd.wimbli.com/.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Chromasphere on July 20, 2012, 09:39:57 pm
OK, here you go.  It's at http://dffd.wimbli.com/file.php?id=6695 (http://dffd.wimbli.com/file.php?id=6695)  with the heading: splinterz DT crash savegame chromasphere
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 21, 2012, 07:41:14 am
OK, here you go.  It's at http://dffd.wimbli.com/file.php?id=6695 (http://dffd.wimbli.com/file.php?id=6695)  with the heading: splinterz DT crash savegame chromasphere

alright so the problem was due to names belonging to invalid languages. i suspect this is due to your modding, so you may want to look into it further. what DF does (and now DT too) in this case is uses the last language as it can't find the correct one. so in your current for you've got a bunch of creatures either without last names or with 'void language' last names.

i've updated the source and the packaged file for this issue. (https://rapidshare.com/files/3714897111/Dwarf Therapist-16.zip)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Urist MacFrench on July 21, 2012, 08:52:39 am
First, thank you for the new version.

Second, i got a little bug : i can't make disapear the dabbling skills in the main view (check or uncheck the option has no effect).
I use the DT version just before the last you did.

Good luck !
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 21, 2012, 11:13:25 am
Oh... you know what... I think I was mixing up the filter script with squad grouping's.

It would be nice if the filter script active_military was filtering squads and not military that are currently active.

I believe as it is, it does not filter dwarf's that are assigned to a squad, but have no scheduled order.

...squad grouping was by squad assignment, and not by active military...

i don't know what this means, please elaborate.

Is it possible to avoid puting strangers (like caravane merchants and their bodyguards) in DT ? They seem to not do what i tell them to do ;)

this definitely shouldn't be happening if you're using my branch. if you've updated the ini files manually double check the flags here  (http://code.google.com/r/splintermind-attributes/source/browse/etc/memory_layouts/linux/v034.11.ini)(near the end). otherwise upload the save and i'll take a closer look.

you can use d.squad_id() in scripts to filter out dwarves in squads. -1 is the returned value for a dwarf who hasn't been assigned to a squad.

thanks

this did the trick
d.squad_id()<0

=-1 didn't work, so I had to do that
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 21, 2012, 11:40:32 am
Quote
thanks

this did the trick
d.squad_id()<0

=-1 didn't work, so I had to do that

if you want to do that you need ==
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 21, 2012, 11:45:41 am
rookie mistake
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 21, 2012, 01:38:08 pm
I know this sounds crazy, but...

I have a filter script that filters melee soldier's and ranged soldier's accordingly.  There rankings are similar.... so I have a hard time deciding who should go to what... If there was a way to filter the two against each other...

They clearly have different stats, but if there was a way to distinguish them against each other to clearly show who belongs to what...

I know, it's a way way meta- analysis, but I hope to figure it out
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 21, 2012, 01:51:35 pm
bug

here's the upload (masterwork)
http://www.mediafire.com/?cvgcr2mcmwrc1n5

so, when I add Ber Ebalreg to the squad "Scars of Shielding", crash of DT
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 21, 2012, 05:32:23 pm
bug

here's the upload (masterwork)
http://www.mediafire.com/?cvgcr2mcmwrc1n5

so, when I add Ber Ebalreg to the squad "Scars of Shielding", crash of DT

yeah that dwarf is apparently assigned to a squad which no longer exists. had you assigned/unassigned him to squad(s) before updating to the latest DT build? regardless here's the fix:

download (https://rapidshare.com/files/556789431/Dwarf Therapist-16.zip)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 21, 2012, 07:36:23 pm
I ws using latest build and no.  All w latest build (I don't believe he was assigned to a squad before attempting to assign him to a new squad, I had removed all dwarf's from squads and began assigning them).

btw, things are slow... i'll assign 20 dwarf's, and it's slow...  it might be my pc and game, but things are sluggish.  Taking me about 5x as long to assign my dwarf's

update:
nm, throttlestop put an end to that
bug

here's the upload (masterwork)
http://www.mediafire.com/?cvgcr2mcmwrc1n5

so, when I add Ber Ebalreg to the squad "Scars of Shielding", crash of DT

yeah that dwarf is apparently assigned to a squad which no longer exists. had you assigned/unassigned him to squad(s) before updating to the latest DT build? regardless here's the fix:

download (https://rapidshare.com/files/556789431/Dwarf Therapist-16.zip)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 21, 2012, 08:54:19 pm
can you do a right click assign to noble position like you did with military?

that would be awesome!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Chromasphere on July 21, 2012, 09:08:21 pm
OK, here you go.  It's at http://dffd.wimbli.com/file.php?id=6695 (http://dffd.wimbli.com/file.php?id=6695)  with the heading: splinterz DT crash savegame chromasphere

alright so the problem was due to names belonging to invalid languages. i suspect this is due to your modding, so you may want to look into it further. what DF does (and now DT too) in this case is uses the last language as it can't find the correct one. so in your current for you've got a bunch of creatures either without last names or with 'void language' last names.

i've updated the source and the packaged file for this issue. (https://rapidshare.com/files/3714897111/Dwarf Therapist-16.zip)


Thank-you so much.  I'm sorry for getting you to spend time on a problem that was due to my modding and not DT itself.  I appreciate your time and patience... and fix!  :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Urist MacFrench on July 22, 2012, 12:28:32 am
can you do a right click assign to noble position like you did with military?

that would be awesome!
That would be great :)
I recently discover you can assign dwarfs to squads like that, that's such a time saver... if only you could create squads right in DT, that would be even better ^^
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DrKillPatient on July 22, 2012, 09:33:22 pm
Hello! I've created a bash script to automatically download and build Dwarf Therapist in case the binary packages are not sufficient. This might help people who are running older versions of Ubuntu or those who use non-Debianlike distros. I hope it's okay if I post it here.

See the second entry in my post here (http://www.bay12forums.com/smf/index.php?topic=113300) for the script.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: WealthyRadish on July 25, 2012, 09:46:11 pm
I've started using the splinterz clone, and so far love the additions made. However, there is one piece of information that I think should be vital to the roles system that I haven't been able to find; preferences. Maybe I've just been looking in the wrong place, but being able to find a dwarf's preferences somewhere through therapist would be amazing. The effect it has on the quality of items produced is rather profound, and is often the deciding factor when I choose dwarves for specific roles in the fort. Aside from that minor request, loving the work put into it! Awesome job, really. :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on July 26, 2012, 02:09:16 pm
I've started using the splinterz clone, and so far love the additions made. However, there is one piece of information that I think should be vital to the roles system that I haven't been able to find; preferences. Maybe I've just been looking in the wrong place, but being able to find a dwarf's preferences somewhere through therapist would be amazing. The effect it has on the quality of items produced is rather profound, and is often the deciding factor when I choose dwarves for specific roles in the fort. Aside from that minor request, loving the work put into it! Awesome job, really. :D

Is this what your referring to? (excerpt from v16 synoposis)

* added grouping by moodable skill
* highest moodable skill is highlighted in the dwarf details pane
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on July 26, 2012, 03:42:31 pm
I've started using the splinterz clone, and so far love the additions made. However, there is one piece of information that I think should be vital to the roles system that I haven't been able to find; preferences. Maybe I've just been looking in the wrong place, but being able to find a dwarf's preferences somewhere through therapist would be amazing. The effect it has on the quality of items produced is rather profound, and is often the deciding factor when I choose dwarves for specific roles in the fort. Aside from that minor request, loving the work put into it! Awesome job, really. :D

Is this what your referring to? (excerpt from v16 synoposis)

* added grouping by moodable skill
* highest moodable skill is highlighted in the dwarf details pane

no he's talking about adding preferences (likes/dislikes) to further aid in choosing a dwarf for a job. for example find someone who has a preference for beds to be your carpenter.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on July 27, 2012, 04:36:45 am
Crashes on startup for me with my existing ini file, if i remove it then it works fine. I guess it doesn't like one of my custom views.

This is the only line it lists in the log when it crashes:
Code: [Select]
2012-Jul-19 14:20:00.671 INFO core Dwarf Therapist "0.6.12" starting normally. [..\dwarftherapist-splintermind-copy\src\dwarftherapist.cpp:104] (DwarfTherapist::setup_logging)

would you mind sending me your ini?

Sent, it's got some views that i setup in v13/14 in it so i guess they are the problem. I can recreate them np if needed.

Feature request: On the animals page is it possible we can set the pet availability. I've been doing this to keep track of the breeding pairs i want to keep which have juicy attribs.

ok the problem is with those weapon columns which have multiple weapon names ('Scourges, Whips', etc.) i've fixed it from crashing but i'll have to look into adding support to add those grouped columns. for now you can still add the weapon columns, but only the individual weapons, the groups aren't available. for you this only affects the 'Military (v13)' tab you had setup i believe.

Here's the updated zip. (https://rapidshare.com/files/1369237444/Dwarf Therapist-16.zip)

if it's still broken let me know. i'll see if it's possible to toggle the pet state on animals, but no promises. :)

Sorry for the late reply, your most recent DT update doesn't crash now fyi :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on July 29, 2012, 06:12:39 am
Because i multi boot i had to write this short script so that i could play DF using the same DT settings on whatever OS i happened to be booted into at the time. Posting it here incase anyone else needs something like this. I've been using it for a few months now without issue and has been tested on XP and Win7. I just have this as DT.bat in my DT directory, with a shortcut to it in my DF directory.

Code: [Select]
IF NOT EXIST "INI" md "INI"

IF NOT EXIST "%APPDATA%\UDP Software" md "%APPDATA%\UDP Software"

IF NOT EXIST "%APPDATA%\UDP Software\Dwarf Therapist.ini" (
    move /-Y "INI\Dwarf Therapist.ini" "%APPDATA%\UDP Software\Dwarf Therapist.ini" )

DwarfTherapist.exe

move /-Y "%APPDATA%\UDP Software\Dwarf Therapist.ini" ".\INI\Dwarf Therapist.ini"
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: SuicideJunkie on July 29, 2012, 07:14:16 pm
Say, is it normal for Therapist to show dead dwarves?
I can see "21 dwarfs" in the therapist screen including "Glassy" Asdugonul.

In-game, I have only 14 citizens.
Glassy, the Ghostly Glassmaker is in the Dead list.

My Xbowdwarf and Speardwarf, on the other hand, who both died of old age and left no ghost, do not show up in therapist.

Edit:
Ooop, the speardwarf just arose as a ghost, and now DT says I've got 22 citizens
All the ghosts are Content(100) it seems.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Canageek on July 30, 2012, 06:18:39 pm
Hey, Splintrz, have you considered making your own thread, so that we can track the latest version more easily?

Anyway, thanks for keeping it updated.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: SalmonGod on July 31, 2012, 12:55:41 am
Hey, Splintrz, have you considered making your own thread, so that we can track the latest version more easily?

Anyway, thanks for keeping it updated.

This would be great.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on July 31, 2012, 05:50:15 pm
  • added options to synchronize scrolling and grouping between all views

Wow.  This option is saving me so much time and scrolling.  :)   It resolves the last issue in the DT UI that drove me bonkers.

Just wanted to say thank you, Splinterz, for all your great work, your patience with the endless (and sometimes silly) feature requests, your openess to suggestions and the speed of implimentation and rapid release cycle.

You make DF far more enjoyable for this dwarf, and I'm sure for many others too.

Thanks again!

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Moggers on August 02, 2012, 06:57:24 am
Hi, I haven't been playing Dwarf Fortress for very long and found Splinterz' DT, as well as general DT on /v/'s Dwarf Fortress thread, just wanted to say thank you for making such a useful tool, it really helps with the tremendous learning curve the game, and especially the military screen has been presenting.

If I can make a request, I know that it'd be difficult, if it's even possible, but could there be some way to handle equipment management and squad schedules through Dwarf Therapist?

Cheers, Moggers
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Raven on August 03, 2012, 12:37:11 am
hi, what is the state of the project? i see a Dorf therapist version for 34.10 in the opening post, is it ok to use it for 34.11 or do I have to look around or modify something?

thanks in advance :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Argelle on August 03, 2012, 01:45:04 am
You can happily use the splinter's branch of therapist with DF 34.11 :
download (https://rapidshare.com/files/556789431/Dwarf Therapist-16.zip)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Raven on August 03, 2012, 02:46:00 am
You can happily use the splinter's branch of therapist with DF 34.11 :
download (https://rapidshare.com/files/556789431/Dwarf Therapist-16.zip)
thank you kind sir

i hope the project will continue without troubles :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: CatkinsFTW on August 03, 2012, 06:43:28 am
splinter,
  Thanks to you I pulled and compiled your clone of DT. 
  I found that highest moodable skill was correctly finding the moodable skills but incorrectly sorting for lowest moodable skill. 
  I couldn't find a location to submit a patch on google code, so here is a patch that fixed the problem for me.

Spoiler (click to show/hide)

If you have a preferred way of people submitting bug reports/patches I'm all ears.

Thanks

p.s. DwarfEngineer thanks for your work as well.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on August 03, 2012, 08:18:57 am
splinter,
  Thanks to you I pulled and compiled your clone of DT. 
  I found that highest moodable skill was correctly finding the moodable skills but incorrectly sorting for lowest moodable skill. 
  I couldn't find a location to submit a patch on google code, so here is a patch that fixed the problem for me.

Spoiler (click to show/hide)

If you have a preferred way of people submitting bug reports/patches I'm all ears.

Thanks

p.s. DwarfEngineer thanks for your work as well.

thanks for the report, i'll be sure to fix it in the upcoming release (it's going to be awesome!) unfortunately your fix will still have problems, this is what you need:
Spoiler (click to show/hide)

@Nkosi_SW: thanks for all the kind words, i'm glad you're enjoying the changes  ;D

@Moggers: thanks for the support. unfortunately i don't think i'll be able to setup scheduling and uniforms as i can't directly modify DF like dfhack does.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on August 04, 2012, 05:57:10 am
new version is up!


Project Home // Download (https://rapidshare.com/files/2839750514/Dwarf%20Therapist-17.zip)

let me know what you think. i'm concerned with the tooltips getting too large with all the additional information, so i'm considering putting in options to choose which information is shown in the tooltips.

please report any bug reports and i'll fix things up asap.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on August 05, 2012, 02:23:23 am
Holy shite that is awesome, i was thinking about this just the other day. Brilliant addition!

Feature request: Is it possible to display a dwarfs speed? this is another thing i was thinking about, useful for military !!SCIENCE!! maybe this is best left to something like dfhack though.

Edit: One issue just now, DT seemed to hang on exit. The process still existed but all windows had gone, so i thought i'd exit DF before killing off the process and then pop everything came back on screen and i could exit safetly. I have been unable to reproduce this. Hadn't noticed this behaivour before.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on August 05, 2012, 03:52:30 pm
Holy shite that is awesome, i was thinking about this just the other day. Brilliant addition!

Feature request: Is it possible to display a dwarfs speed? this is another thing i was thinking about, useful for military !!SCIENCE!! maybe this is best left to something like dfhack though.

Edit: One issue just now, DT seemed to hang on exit. The process still existed but all windows had gone, so i thought i'd exit DF before killing off the process and then pop everything came back on screen and i could exit safetly. I have been unable to reproduce this. Hadn't noticed this behaivour before.

hrmm i'll have to try and reproduce that process hang myself. i'm not sure about the speed, isn't it directly correlated to agility?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on August 06, 2012, 02:44:59 am
Holy shite that is awesome, i was thinking about this just the other day. Brilliant addition!

Feature request: Is it possible to display a dwarfs speed? this is another thing i was thinking about, useful for military !!SCIENCE!! maybe this is best left to something like dfhack though.

Edit: One issue just now, DT seemed to hang on exit. The process still existed but all windows had gone, so i thought i'd exit DF before killing off the process and then pop everything came back on screen and i could exit safetly. I have been unable to reproduce this. Hadn't noticed this behaivour before.

hrmm i'll have to try and reproduce that process hang myself. i'm not sure about the speed, isn't it directly correlated to agility?

Agility+what they are carrying/holding afaik. Ie shifting furniture/blocks around slows them. And for the military it's mainly to see how Armour User effects speed, as if you load up new recruits with metal armour they'll not only move like a hippo they'll also swing like one too and anything related to movement, ie dodge...they are almost useless ;p Plus Armour User itself will increase super slow if you give them the best armour from the start.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on August 06, 2012, 09:25:11 pm
Quote
in the dwarf details pane (grouped by type). note: this is hidden by default, it's at the very bottom, drag it up to see it

I looked through all the menu's, and looked at a few dwarf's detail pane's... scrolled all the way to the bottom of each of 4 menu's...

am I missing how to find this preference area... I'm new to the concept of preference
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on August 07, 2012, 02:05:52 am
Quote
in the dwarf details pane (grouped by type). note: this is hidden by default, it's at the very bottom, drag it up to see it

I looked through all the menu's, and looked at a few dwarf's detail pane's... scrolled all the way to the bottom of each of 4 menu's...

am I missing how to find this preference area... I'm new to the concept of preference

I don't think it's just you! i couldn't either :) the prefs do show in tooltips though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on August 07, 2012, 02:43:46 am
Quote
in the dwarf details pane (grouped by type). note: this is hidden by default, it's at the very bottom, drag it up to see it

I looked through all the menu's, and looked at a few dwarf's detail pane's... scrolled all the way to the bottom of each of 4 menu's...

am I missing how to find this preference area... I'm new to the concept of preference

the panes themselves can be completely collapsed. you should get a different resize/expand cursor at the very bottom of the container pane itself (just below the roles pane if it's showing) and be able to drag up from there to show the preferences. so the ordering is skills->attributes->traits->roles->preferences.

the dock window is in the menu under windows->docks->preferences.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: WealthyRadish on August 07, 2012, 03:07:47 am
preferences (drink, items, materials, etc.) have been added

:D!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on August 07, 2012, 08:42:45 pm
Quote
in the dwarf details pane (grouped by type). note: this is hidden by default, it's at the very bottom, drag it up to see it

I looked through all the menu's, and looked at a few dwarf's detail pane's... scrolled all the way to the bottom of each of 4 menu's...

am I missing how to find this preference area... I'm new to the concept of preference

the panes themselves can be completely collapsed. you should get a different resize/expand cursor at the very bottom of the container pane itself (just below the roles pane if it's showing) and be able to drag up from there to show the preferences. so the ordering is skills->attributes->traits->roles->preferences.

the dock window is in the menu under windows->docks->preferences.

I see the preferences dock window.

However, it doesn't change as I select different dwarf's.

I also don't see any resize or close option other than the ....

okay... I can select a preference, and then it applies a filter...

okay, but I don't see any resize option other than the dock windows...

I'm looking to find this
Quote
in the dwarf details pane (grouped by type). note: this is hidden by default, it's at the very bottom, drag it up to see it

oh... I see it.

I have to resize the bottom window of the last box in the details pane, there is no resize button, it's just the bottom solid line of the last textbox...

it would be nice to see it from the details pane from the grid view, rather than having to look at details  (but I bet that's crowded already... a slider bar would be nice).

Also... it would be nice to have some of grid view of those numbers if possible... I'm so new to this concept Preferences

so preferences might be useful for filling mayor's orders... I get it...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vadia on August 07, 2012, 10:30:49 pm
Am I correct that Spinterz'es and Standard DT are not yet compatable with the current version of df?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on August 08, 2012, 02:26:39 am
They've been compatible since the day the new DF was released...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Raven on August 08, 2012, 05:41:45 am
new version is up!

  • preferences (drink, items, materials, etc.) have been added
  • preferences can be viewed multiple ways:
    • simple list in the tooltip
    • in the dwarf details pane (grouped by type). note: this is hidden by default, it's at the very bottom, drag it up to see it
  • a new dockable window has been added to show all preferences of the current population, and their respective likes/dislikes. selecting preferences will filter the view to only show those dwarfs who have the preference. this filtering should also work in conjunction with any currently running scripts.
  • added file->snapshot menu to take a snapshot image of the current view

Project Home // Download (https://rapidshare.com/files/2839750514/Dwarf%20Therapist-17.zip)

let me know what you think. i'm concerned with the tooltips getting too large with all the additional information, so i'm considering putting in options to choose which information is shown in the tooltips.

please report any bug reports and i'll fix things up asap.
so u are the new guy in charge of the project? :) welcome, sir :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on August 08, 2012, 05:42:47 am
Quote
it would be nice to see it from the details pane from the grid view, rather than having to look at details  (but I bet that's crowded already... a slider bar would be nice).

which grid view are you talking about here? labour, military, etc. views? a slider bar where?

Quote
Also... it would be nice to have some of grid view of those numbers if possible... I'm so new to this concept Preferences

well the dock window is for showing each preference and how many like/dislike it. the problem with creating columns in a new view is that it's not really practical as there are so many and often times a preference only belongs to a single dwarf. i debating on generating histograms, but again, so many of them only have a single count.

Quote
so preferences might be useful for filling mayor's orders... I get it...

yeah, or who should be an engraver, or what booze will give you the most happy thoughts, etc.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on August 08, 2012, 09:56:39 am
The pop up pane when u hover your cursor over a dorf is the area i was referring to for the slider bar. The one that shows the top x number of roles.

I was also speaking of a preference 'grid view'. Basically a grid view where the top column are the preference items and the rows are the dorfs
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Kaiser Reinhard on August 09, 2012, 03:02:02 am
Could someone upload splinter's dwarf therapist to mediafire? I can't use rapidshare
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on August 09, 2012, 05:30:17 am
Could someone upload splinter's dwarf therapist to mediafire? I can't use rapidshare

i'll start uploading again to mediafire as well now that they seem to have fixed their site's issues. here is the mediafire download link to the most recent version. (http://www.mediafire.com/?veivu76nmat7avf)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Kaiser Reinhard on August 09, 2012, 10:13:09 am
Could someone upload splinter's dwarf therapist to mediafire? I can't use rapidshare

i'll start uploading again to mediafire as well now that they seem to have fixed their site's issues. here is the mediafire download link to the most recent version. (http://www.mediafire.com/?veivu76nmat7avf)


Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: JanusTwoface on August 09, 2012, 11:11:41 am
Could someone upload splinter's dwarf therapist to mediafire? I can't use rapidshare
i'll start uploading again to mediafire as well now that they seem to have fixed their site's issues. here is the mediafire download link to the most recent version. (http://www.mediafire.com/?veivu76nmat7avf)

Any particular reason that you don't want to use the Dwarf Fortress File Depot (http://dffd.wimbli.com/)? It's kind of what it was designed for.

Alternatively, it seems that DwarfEngineer seems to have wondered off, but perhaps you could merge your branch into the main branch and use the Google Code page for development and hosting?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on August 09, 2012, 12:40:23 pm
Could someone upload splinter's dwarf therapist to mediafire? I can't use rapidshare
i'll start uploading again to mediafire as well now that they seem to have fixed their site's issues. here is the mediafire download link to the most recent version. (http://www.mediafire.com/?veivu76nmat7avf)

Any particular reason that you don't want to use the Dwarf Fortress File Depot (http://dffd.wimbli.com/)? It's kind of what it was designed for.

Alternatively, it seems that DwarfEngineer seems to have wondered off, but perhaps you could merge your branch into the main branch and use the Google Code page for development and hosting?

i've always had terrible download speeds on dffd, but this is small enough it wouldn't be a bad idea... i believe it is planned to merge at some point, originally when i was finished up with the new features... which just kept growing :D

i don't have any access to the main branch so it'll be up to DwarfEngineer to perform the merge whenever he's got time and if he wants to.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Raul on August 09, 2012, 02:45:18 pm
i don't have any access to the main branch so it'll be up to DwarfEngineer to perform the merge whenever he's got time and if he wants to.
I don't know why he wouldn't wanna merge, your branch is awesome ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Xgamer4 on August 09, 2012, 05:27:34 pm
At the risk of looking dumb, is there a native version of Dwarf Therapist for Linux? I download the supposed Windows SDL & Linux version, but it just opens in Wine and doesn't see a running version of Linux DF. Do I need to compile it by hand, or is this just a case of me being dumb?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Mr.Elendig on August 11, 2012, 05:45:45 pm
At the risk of looking dumb, is there a native version of Dwarf Therapist for Linux? I download the supposed Windows SDL & Linux version, but it just opens in Wine and doesn't see a running version of Linux DF. Do I need to compile it by hand, or is this just a case of me being dumb?
What distro are you on? It is packaged for some distroes (I maintain it for archlinux (https://aur.archlinux.org/packages.php?ID=60079))


@splinterz

There is a problem with 'DFInstanceLinux::find_running_copy'. It naively calls `pidof` which doesn't exist on all systems, which causes it to error. For some reason the app then later still tries to ptrace(..., m_pid, ...) without checking its value , which since it has been initialized to 0, fails horribly. (disclaimer: I suck at c++ so my mind might have failed to parse the code correct)
Edit: best way to get the pid is probably to trawl /proc, it's fast and doesn't rely on anything external.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Xgamer4 on August 12, 2012, 11:18:02 am
At the risk of looking dumb, is there a native version of Dwarf Therapist for Linux? I download the supposed Windows SDL & Linux version, but it just opens in Wine and doesn't see a running version of Linux DF. Do I need to compile it by hand, or is this just a case of me being dumb?
What distro are you on? It is packaged for some distroes (I maintain it for archlinux (https://aur.archlinux.org/packages.php?ID=60079))

Ubuntu. I can't seem to find a package, but I'm also not sure where I'd look, either.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Mr.Elendig on August 12, 2012, 12:23:23 pm
splintermind-attributes is fairly easy to compile by hand. Just clone the hg repo and run qmake && make  (you need qt4 devel headers etc ofcourse)

If you need help poke me in #dwarffortress on freenode


ppa (https://launchpad.net/ubuntu/+ppas) would be the place for look for packages, but the last time I checked noone had packaged it yet.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Xgamer4 on August 13, 2012, 01:50:31 pm
splintermind-attributes is fairly easy to compile by hand. Just clone the hg repo and run qmake && make  (you need qt4 devel headers etc ofcourse)

If you need help poke me in #dwarffortress on freenode


ppa (https://launchpad.net/ubuntu/+ppas) would be the place for look for packages, but the last time I checked noone had packaged it yet.

Ok, I got it compiled and running just fine. The only slight hiccup is that I need to run it with sudo so it can attach to the Dwarf Fortress process. I'm not sure if that's normal or not, but other than that, it works just fine. Thanks for the help.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Mr S on August 13, 2012, 02:02:45 pm
That's normal.  There's a file permission command to always have it start as sudo without having to open it in a seperate shell specifically to do so, but the syntax escapes me just now.  It's in this thread somewhere however.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Peaceful Slugman on August 13, 2012, 02:04:50 pm
Here is a script that allows you to use DT and dwarf fortress without sudo:
http://www.bay12forums.com/smf/index.php?topic=65326.msg2565429#msg2565429
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vadia on August 13, 2012, 08:00:54 pm
is there a way to ignore military when looking at the list of labors?

or look acording to migrant wave?

or filter out nicknamed dwarves?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: acetech09 on August 13, 2012, 10:33:59 pm
I can't find the Mac-version .ini for 34.11. I know it's in there somewhere but I can't find it. Can anyone link/post it?

I've tried updating it the ye-olde way, but it fails to find the creature vector (nickname) for 34.11
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: walberg on August 14, 2012, 06:16:01 am
is there a way to ignore military when looking at the list of labors?

Group by Squad using the Group By drop-down box in the top left (roughly under the Connect to DF button) - all non-military will be in the No Squad group.

or look acording to migrant wave?

There is also a group by Migration Wave option.

or filter out nicknamed dwarves?

This is a little more difficult but can probably be done by writing a custom filter under the Scripting menu option.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Raven on August 15, 2012, 05:48:24 am
the new reading options seem very useful

about how a dwarf is fit for a role for example... how does that count anyway? is it based on traits and attribute calculation perhaps?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Dutchling on August 16, 2012, 03:37:54 pm
Is it possible to make DT not show certain skills in the skill list? My screen isn't wide enough for the program and I am not interested in half the skills anyway.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Urist MacFrench on August 16, 2012, 04:13:26 pm
Is it possible to make DT not show certain skills in the skill list? My screen isn't wide enough for the program and I am not interested in half the skills anyway.
That would be great :)
What about another panel in the options, named "skills you want to see in the labor panel", with everything marked "on" by default ?

Btw, about the options panel, here is a tiny bug : part of the words don't appear on top. 100% reproductible, Linux only bug, not Windows.

(http://img15.hostingpics.net/pics/851573Capturedu20120804180937.png) (http://www.hostingpics.net/viewer.php?id=851573Capturedu20120804180937.png)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on August 17, 2012, 09:54:47 am
Is it possible to make DT not show certain skills in the skill list? My screen isn't wide enough for the program and I am not interested in half the skills anyway.

are you talking about the tooltip, or the columns themselves in a particular view?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Dutchling on August 17, 2012, 11:39:45 am
The columns themselves. Fro all I know there might be an option for it but I didn't find it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on August 17, 2012, 04:14:14 pm
The columns themselves. Fro all I know there might be an option for it but I didn't find it.

just make a copy of the view, or create your own view and choose whatever columns, colors, etc. you'd like.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: acetech09 on August 17, 2012, 07:21:26 pm
So no answer for my question? I still can't find the mac 34.11 patch.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Zanzetkuken The Great on August 18, 2012, 11:24:48 am
So no answer for my question? I still can't find the mac 34.11 patch.

It appears that it hasn't been updated past version 34.10.[/obvious]
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on August 18, 2012, 01:06:28 pm
So no answer for my question? I still can't find the mac 34.11 patch.

It appears that it hasn't been updated past version 34.10.[/obvious]

As has been stated a million times already when asked, it was working with 34.11 on the day it was released...splinterz version is the most recent and upto date just go back a few pages and download that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Slyjoker87 on August 22, 2012, 02:46:59 am
So no answer for my question? I still can't find the mac 34.11 patch.

It appears that it hasn't been updated past version 34.10.[/obvious]

As has been stated a million times already when asked, it was working with 34.11 on the day it was released...splinterz version is the most recent and upto date just go back a few pages and download that.

Tried downloading it, but it appears to be the .exe version - not a mac version. Le sigh :(
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Mr S on August 22, 2012, 08:12:03 am
Are you looking for a Mac executable or ready to compile?  If the latter, I do believe Splinterz branch has a Google Code page (I may be out to lunch on the code repository of choice), so I'd say search this thread back through the last dozen pages or so (could be less, not sure) for a link to the project page.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Slyjoker87 on August 22, 2012, 11:16:55 am
Are you looking for a Mac executable or ready to compile?  If the latter, I do believe Splinterz branch has a Google Code page (I may be out to lunch on the code repository of choice), so I'd say search this thread back through the last dozen pages or so (could be less, not sure) for a link to the project page.

http://code.google.com/r/splintermind-attributes/

Here is the Google Code page. I have no idea what to do with the source code. I just don't have time to mess around with it. If anyone has time to post a tutorial for the mac users that would be awesome.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: zenerbufen on August 28, 2012, 07:22:59 am
Has anyone gotten this working on the mac for .34.11? I couldn't get the one on the first post to download the updated id file.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: LoSboccacc on August 28, 2012, 07:31:16 am
Has anyone gotten this working on the mac for .34.11? I couldn't get the one on the first post to download the updated id file.

Heh. You coulda just used mine from a few pages back in the thread. I promise yours won't warp your mac into another dimension, since they appear to be the same as mine :)

I got tired of waiting for the "official" OSX offsets, so I made an attempt to do them myself. Based on personal quick tests, these look to be working fine, but no guarantees this won't make your mac warp to another dimension.

Spoiler (click to show/hide)

Aww crap, I wish I would have seen that. Oh well, thanks for your work. At least now I know my numbers aren't bad!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: eataTREE on August 31, 2012, 12:29:31 pm
Hey guys! I have this great idea for a new invention! It's called the wheel!

;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Rose on August 31, 2012, 01:26:52 pm
Hey guys! I have this great idea for a new invention! It's called the wheel!

;)

Your post would have more merit if the only other option weren't sledges.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: zenerbufen on September 01, 2012, 05:29:19 am
Thanks for the quick assistance!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Cespinarve on September 02, 2012, 01:27:04 pm
A little help for an idiot.

I USED to know how to get the latest DT to work on my Mac, but I have a new laptop now and no memory of what I did. Something something offsets is all I know. I did download the Dwarf Therapist-17.zip but its not MAc formatted, and now I just feel dumber than usual.

Any help?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Slyjoker87 on September 02, 2012, 03:09:08 pm
A little help for an idiot.

I USED to know how to get the latest DT to work on my Mac, but I have a new laptop now and no memory of what I did. Something something offsets is all I know. I did download the Dwarf Therapist-17.zip but its not MAc formatted, and now I just feel dumber than usual.

Any help?

1. Open package contents of dwarf therapist.

2. Goto Contents/MacOS/etc/memory_layouts/osx

3. Copypasta the 34.11 offsets into one of the existing ini files

Try that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: redshield3 on September 03, 2012, 05:57:08 pm
Quote
I'm sorry but I don't know how to talk to this version of Dwarf Fortress! (checksum:0x8f421f9c)

Supported Versions:
v0.34.05(0x3db6627a)
v0.34.06(0x8a93b19d)
v0.34.04(0xdf8202f3)
v0.34.07(0x20d42b0f)

So I'm getting this after going into /Applications/DwarfTherapist.app/Contents/MacOS/etc/memory_layouts/osx , making a copy of the 0.34.07 ini file, and then editing that file by replacing the 0.34.07 checksum with the reported one (0x8f421f9c) and changing the version number within the INI file, and then finally renaming the file to v0.34.11.ini.

So... what did I do wrong?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Slyjoker87 on September 03, 2012, 06:09:31 pm
Quote
I'm sorry but I don't know how to talk to this version of Dwarf Fortress! (checksum:0x8f421f9c)

Supported Versions:
v0.34.05(0x3db6627a)
v0.34.06(0x8a93b19d)
v0.34.04(0xdf8202f3)
v0.34.07(0x20d42b0f)

So I'm getting this after going into /Applications/DwarfTherapist.app/Contents/MacOS/etc/memory_layouts/osx , making a copy of the 0.34.07 ini file, and then editing that file by replacing the 0.34.07 checksum with the reported one (0x8f421f9c) and changing the version number within the INI file, and then finally renaming the file to v0.34.11.ini.

So... what did I do wrong?

I tried that, and it didn't work. So instead I directly replaced one of the existing files - I went in and copied over and then resaved. Try that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: zenerbufen on September 04, 2012, 02:18:39 am
None of that works for me, I simply get a crash on launch:

9/4/12 12:15:41.364 AM ReportCrash[23509]: failed looking up LS service ( scCreateSystemService returned MACH_PORT_NULL, called from SetupCoreApplicationServicesCommunicationPort, so using client-side NULL calls.

Dwarf Fortress and dfhack both work fine.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Slyjoker87 on September 04, 2012, 11:37:37 am
None of that works for me, I simply get a crash on launch:

9/4/12 12:15:41.364 AM ReportCrash[23509]: failed looking up LS service ( scCreateSystemService returned MACH_PORT_NULL, called from SetupCoreApplicationServicesCommunicationPort, so using client-side NULL calls.

Dwarf Fortress and dfhack both work fine.

No idea on that. I'm still running snow leopard though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vonduus on September 18, 2012, 09:28:16 am
Hi, I am trying out the splinterz clone because of the animal features, and it is a great utility. Deciding which animals to butcher has never been easier.

I have one problem though. I am trying to set up an early warning system inspired by Girlinhats Animal Powered Watchtower. I have built a series of towers, and bred 5 Roosters, 5 Drakes and 3 Ganders to work there as guards. Each tower has a one-tile pasture zone, and the idea was to assign one animal to each tower.

Problem is: All five roosters have got the same name: "Stray Rooster", so after assigning two-three of them I have no idea which of the roosters are actually assigned and which aren't, so I typically end up with reassigning the same rooster again and again. I tried giving them nicknames ("EW01" etc.) in DT, but there seems to be no way to see animal nicknames in DF.

So my question is: Is there a way to see animal nicknames in DF? And if not, are there other ways of making animals unique?

edit: I just found a way to get the job done. I first unassign all roosters, and then only assign those that are not marked as assigned in the DF zoning menu. Which is a pain, given the DF zoning interface with all the unsorted animals, goblins and what-know-I. So my question still stands.

Partially unrelated request: Is it possible to have a column showing which animals are chained? And another one, showing which animals are zoned? In addition to the cage column?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Lesconrads on September 21, 2012, 06:04:19 am
I've played DF vanilla for the entire time I've played it - now I'm looking into dwarf the rapist.
It looks amazing! My only problem on first start up though: having the names of the jobs so that I have to tilt my head is super distracting. Do you get used to it?
Can I do anything about it?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Murmur on September 21, 2012, 06:08:10 am
I've played DF vanilla for the entire time I've played it - now I'm looking into dwarf the rapist.
It looks amazing! My only problem on first start up though: having the names of the jobs so that I have to tilt my head is super distracting. Do you get used to it?
Can I do anything about it?

I had that very same problem at first too! But after a little while I got used to it. Now I can use the program without tilting my head at all!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Lesconrads on September 21, 2012, 06:50:26 am
Thats kind of what I expected... it is the same thing with DF I guess - you really need some time to get used to the interface and the "graphics".
Nevertheless I wish there was any other option. My suggestion would be some icons additionally to the text with the option to only use the icons (+ mouse over tool tip, I guess), flipped Text abbreviation
l
i
k
e
^ that or something.
I hope I'm not stirring up a much discussed topic again - I did not read all the 160 pages of this thread but only the last few.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: DNK on September 21, 2012, 07:23:45 am
I'd settle for a table where each section had columns with two colors (or two shades of the same color), so it was just easier to differentiate dozens of rows removed from the labels. For example:
 X=dark blue, O = navy blue
(for the smithing labors)
XOOOXOOOX
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on September 21, 2012, 08:02:56 am
if you're using my build (http://code.google.com/r/splintermind-attributes/), try switching the header text to draw from bottom to top in the options. depending on which eye is dominant and which way you're more inclined to naturally tilt your head this may be easier for you to read.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: decev on September 25, 2012, 05:26:14 am
I much prefer the splinterz version, but it has two problems for me. First is that the size of the grid changes back and forth between squares and tall rectangles, about half the time when I click on it. For example, I'll want to enable all the medical labors on a dwarf. When I click "diagnosis" all of the squares will change to rectangles which moves the labor checkbox for surgery down about an inch or two on my screen. When I click that one they change back into squares and move back up. It's way more annoying than it sounds.

The other problem is that dwarf fortress seems to crash sometimes when saving and I have the splinterz version running. It's very intermittent so I can't even be sure that DF is the problem, but it seems like it.

I built this for use on Ubuntu 12.04 32 bit. I don't see either of these problems on the "normal" DF.

Has anyone else had these issues at all?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on September 25, 2012, 09:23:20 am
try changing your font sizes/cell sizes/cell padding in the options for the resizing problem. if the font (or some characters) are larger than the cell sizes, it will automatically resize the cell to accommodate the font/characters.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: knutor on September 25, 2012, 01:32:01 pm
Windows, Ease of Access, also has a Font size adjustment that carries over globally, into Dwarf Therapist, but not Dwarf Fortress.  Something to think about, if its not just the DT applet.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Justiceface on October 23, 2012, 07:31:14 pm
Is it possible to make DT not show certain skills in the skill list? My screen isn't wide enough for the program and I am not interested in half the skills anyway.
That would be great :)
What about another panel in the options, named "skills you want to see in the labor panel", with everything marked "on" by default ?

Btw, about the options panel, here is a tiny bug : part of the words don't appear on top. 100% reproductible, Linux only bug, not Windows.

(http://img15.hostingpics.net/pics/851573Capturedu20120804180937.png) (http://www.hostingpics.net/viewer.php?id=851573Capturedu20120804180937.png)
Augh, I only wish I could see this on my machine!  I downloaded Splinterz' DF, but it's a .zip and runs in Mono or Wine, so naturally it can't see the native Linux DF session that's running.  I've gotten used to running DF without this tool, but after I hit 50 or so dwarves it's something I would find very handy.  How on earth did you get DT running on Ubuntu?  >:(
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on October 25, 2012, 08:32:22 am
Augh, I only wish I could see this on my machine!  I downloaded Splinterz' DF, but it's a .zip and runs in Mono or Wine, so naturally it can't see the native Linux DF session that's running.  I've gotten used to running DF without this tool, but after I hit 50 or so dwarves it's something I would find very handy.  How on earth did you get DT running on Ubuntu?  >:(

you'll have to grab the source and compile it as per the instructions here. (http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist) just make sure to change the clone address from https://dwarftherapist.googlecode.com/hg/ to https://splintermind@code.google.com/r/splintermind-attributes/
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on October 26, 2012, 12:22:06 pm
I much prefer the splinterz version, but it has two problems for me. First is that the size of the grid changes back and forth between squares and tall rectangles, about half the time when I click on it. For example, I'll want to enable all the medical labors on a dwarf. When I click "diagnosis" all of the squares will change to rectangles which moves the labor checkbox for surgery down about an inch or two on my screen. When I click that one they change back into squares and move back up. It's way more annoying than it sounds.

Has anyone else had these issues at all?

yes. me. i think it has to do with the nobles special chars in the front that cause all other cells to resize. something like that. the cells r based on the 1sr rows height
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on October 26, 2012, 10:17:04 pm
um... what's up with no gui?  I don't know how to use this new alpha version.  the python file doesn't open up anything.

meant for masterwork mod
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: proxn_punkd on October 30, 2012, 03:43:03 pm
Hey, does this version work on .31.25? I'm not comfortable with DF 2012 so I'm going back to a version I am comfortable with.

If not, can I get a link to the .31.25-compatible version?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Aerval on October 30, 2012, 03:59:03 pm
Hey, does this version work on .31.25? I'm not comfortable with DF 2012 so I'm going back to a version I am comfortable with.

If not, can I get a link to the .31.25-compatible version?

It's all there (http://code.google.com/p/dwarftherapist/wiki/SupportedGameVersions). Not sure about splinterz version, u would have to check the memory layouts (Hack folder: /etc/memory_layouts)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: proxn_punkd on October 30, 2012, 04:12:52 pm
Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on October 30, 2012, 07:04:09 pm
Feature request

Is there a way to get the group by to nest?

such as if I want

group by migration wave
  then group by # of labors per dwarf.
    then by militia?

get my meaning?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 04, 2012, 11:56:37 am
I did some minor updates to my labor optimizer, link with video explaining v13
v14 has a new straight column, which shows what the #'s would look like without any buffer

and on the second sheet, there's explanations of what each of the configurable fields mean.

http://youtu.be/YWYSYR66oMU
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 05, 2012, 03:53:43 pm
Feature request:

To avoid having to figure out who should be archer/melee

have a way to show who is best at what job out of what jobs is displayed on the grid view.

For example, I have a custom view that shows melee, and ranged custom roles.  Since there attributes/traits are very similar, and their skills share half the skills needed for these roles, they score around each other.

But... if I could easily see who was best fit for melee and ranged (which I can, I have to extend the top x number of roles in the detail pane, which is a pain, because it uses all roles, what I want is to limit it to the roles in the grid view).  Then I can assign to the position I want more efficiently.

Update:
The feature is nice, but I was able to get it to work without it, by comparing it to the next column in my grid view... I just wish there was a way to show who is best melee (top 10, BUT ONLY IF melee score is higher than their range role), got to be a way to filter it.  But I guess I could use custom scripts (not sure how, I got to get one custom role to be second to the other)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: walberg on November 06, 2012, 06:54:03 am
@thistleknot Is what you're looking for somehow different than the stuff splinterz fork has in it? There's a separate grid that you can sort by the dwarves "appropriateness" for each military role... Although I guess that was a bit more recent, and came after the more simple "top 10" display, so maybe you just need to pull and recompile the latest...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 06, 2012, 12:08:26 pm
I am using Splinterz version.  The problem I'm having is I only want it to display the roles that I have in the specific gridview, but it displays all roles that I have programmed into therapist.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 06, 2012, 12:13:03 pm
Shishamaru made this patch for me back when Splinterz was version 15.  I updated it so it works with v17, but it crashes after 2 exports.

It is supposed to export the current grid view values into a csv format.

But it doesn't work in v17 (maybe because the grid views have different calculations?)

Anyone who wants to take a look at it and let me know what you think is the issue, I'd be in your debt.  I hope to use this csv export for an autolabor type plugin for dfhack.

http://dffd.wimbli.com/file.php?id=7102

Update:

It's a segmentation fault happening in viewcolumn.cpp, apparently some cell is being referenced that shouldn't be.

Update:

Figured it out :)

need to update my code to include this...
Code: [Select]
if(DT->user_settings()->value("options/hide_children_and_babies",true).toBool() == false
                        || (d->profession()!="Child" && d->profession()!="Baby"))
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 06, 2012, 10:06:57 pm
feature request:

a way to search for preferences (rather than just show), like a grid view of sorts.  It seems preferences are multi-dimensional (since there's multiple categories of preferences. almost would need a very large grid view that showed Materials, Items, Food & Drink, Dislikes, Creatures, etc... and each specific item PER dwarf)., so I'm not sure how one could do a grid view, it would be huge, but without it, one would have to view each dwarf for there preferences and assign them...  kind of like the old way of doing stuff inside Dwarf Fortress.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Mr S on November 06, 2012, 10:21:31 pm
How do you view them at all from within DT?  I haven't found that yet evidently.  I'd love to have a popup window option for a given dwarf to look into thier psyche from time to time.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 06, 2012, 11:06:51 pm
window (splinterz branch) meneu, show preferences
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Mr S on November 06, 2012, 11:18:43 pm
Meh, would help if I was running the most recent version.  Still running .16.  Ooops.  I'll try that, thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on November 07, 2012, 06:15:37 am
feature request:

a way to search for preferences (rather than just show), like a grid view of sorts.  It seems preferences are multi-dimensional (since there's multiple categories of preferences. almost would need a very large grid view that showed Materials, Items, Food & Drink, Dislikes, Creatures, etc... and each specific item PER dwarf)., so I'm not sure how one could do a grid view, it would be huge, but without it, one would have to view each dwarf for there preferences and assign them...  kind of like the old way of doing stuff inside Dwarf Fortress.

yeah i considered creating a huge grid, but even with large populations, most preferences only belong to a few dwarves, which results in a lot of wasted/empty space. under the assumption that you want to check preferences for role/job/labor assignments, i figured that the combination of showing the preferences for each dwarf, and the window to show totals would be sufficient.

perhaps you can explain what you're trying to accomplish so i can better understand where improvements could be made?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 07, 2012, 08:53:59 am
if I wanted to find bed constructing as a preference, the only way I know how to do it is look through every dwarf.  That's the main issue.  A search feature would be nice if a grid can't be accomodated.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 07, 2012, 09:03:12 am
Could dwarf therapist.ini be moved into the dwarf therapist folder, rather be buried in some deep app data folder.  The main reasoning I ask is because sometimes I have custom roles saved in there, and when moving the dwarf therapist folder from pc to pc, I have to dig this file out to and replace it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on November 07, 2012, 12:57:08 pm
if I wanted to find bed constructing as a preference, the only way I know how to do it is look through every dwarf.  That's the main issue.  A search feature would be nice if a grid can't be accomodated.

use the preferences window. sort by the name, scroll down to 'Beds' and click on the row. the current grid will filter to only show those dwarves who have beds in their preferences. alternatively you can hover the cursor over the numbers and it will give you the names of the dwarves.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: martinuzz on November 07, 2012, 10:21:49 pm
Do I understand correctly that DT does not work yet for the latest version of DF? (0.34.11)?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Raul on November 07, 2012, 10:23:28 pm
Do I understand correctly that DT does not work yet for the latest version of DF? (0.34.11)?
Did you try using splinterz's version?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: martinuzz on November 07, 2012, 10:31:59 pm
Could you provide a link? Typing 'splinter' in the search bar gives too many results to be of help.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Raul on November 07, 2012, 10:34:39 pm
Rapidshare and Mediafire links here (https://code.google.com/r/splintermind-attributes/).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: martinuzz on November 07, 2012, 10:35:23 pm
Thanks for your quick reply!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: falconne on November 07, 2012, 10:43:06 pm
I think it's about time splinterz' version had its own thread, so it's easier to find info on it without searching this thread. I reckon there's a lot of people who're looking for the functionality it provides but don't know it exists.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on November 08, 2012, 05:38:07 am
Could dwarf therapist.ini be moved into the dwarf therapist folder, rather be buried in some deep app data folder.  The main reasoning I ask is because sometimes I have custom roles saved in there, and when moving the dwarf therapist folder from pc to pc, I have to dig this file out to and replace it.

I asked for this months ago but it was a no go ;p so i wrote a lil script with which i launch DT:

Code: [Select]
IF NOT EXIST "INI" md "INI"

IF NOT EXIST "%APPDATA%\UDP Software" md "%APPDATA%\UDP Software"

IF NOT EXIST "%APPDATA%\UDP Software\Dwarf Therapist.ini" (
    move /-Y "INI\Dwarf Therapist.ini" "%APPDATA%\UDP Software\Dwarf Therapist.ini" )

DwarfTherapist.exe

move /-Y "%APPDATA%\UDP Software\Dwarf Therapist.ini" ".\INI\Dwarf Therapist.ini"


Edit: i should add that you put this in your DT directory and i just have a shortcut to it on my desktop.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: knutor on November 08, 2012, 11:29:03 am
I just removed a virus, pretending to be a virus scanner, from my AppData folder, the other night. 

I agree it would be nice to have all Therapist in the same place. 

Last time that AppData virus infected me, I lost my user profile and all its contents.  This time I caught it, trying to take over in time to lock the user profile and end its task from a safe user profile, one of course with privileges. 

Don't do what I did and foolishly hit that mini icon in the panel by clock, did that the first time.  I got it from an .mp3 file site and a dirty .mp3 file.  *blush*
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: malmstrom on November 08, 2012, 12:21:53 pm
Dears, is there a DT or similar that work with the last DF version under OSX?
Thanks for the support!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 08, 2012, 11:17:13 pm
fyi, I'm working on a weighted matrix labor assignment program

either will be in dfhack, or more preferably therapist.

I think i'm on my own, but I may have the tools to get it up at least with dfhack, I think I have the tools for Therapist as well, but reading advanced qt code is a bit much for me.  I might post a snippet of what I got when I finish the prototype tonight.

here's my code for anyone that know's programming

Spoiler (click to show/hide)

I've hit my beer limit for coding tonight/today... will try to implement this hopefully soon.

Update:

Now it outputs some relevant information...

What it does:

Creates a 1 dimensional array sorting highest role rating to lowest role rating (after multiplying each role rating by a role weight), then assigns starting from the top of the list on down until is finishes going through the list.  So it doesn't do it by dwarf or by role, but highest % first and working down.

The role weight is used to weight some roles as more important than others, effectively reducing the role % (and it's position in the 1 dimensional list).  I think I have the prototype working satisfactory that I can now go to a production version inside DT.

Update:
w00t!  Got a clear_Labors button working!
now onto creating my superStruct inside DT...

then the optimize_Labors button and matching function!

Update:
My clear_Labors only works on ALL dwarves... which is no good.  I need to limit it to filtered dwarves... which is a pain in the ass!

Update:
clear_labors works on only selected dwarf's!  Now the real fun begins!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: dreamt on November 13, 2012, 01:30:16 pm
I'm running Snow Leopard, 10.6.8. The version of DT that comes with MacNewbie fails to launch for me, so I poked around here and tried updating the memory offsets but no dice. I decided to try compiling it myself and managed to get it to build, updated the memory offsets, and now when it runs it freezes Dwarf Fortress (the music stops and the game stops and I get a spinning cursor), then DT hangs and then quits. DF remains frozen until I force quit it.

I tried compiling splinterz's version, but it won't build for me.

Any ideas?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: knutor on November 13, 2012, 01:49:58 pm
My version craps out at that point, just when you describe, Dreamt, when my graphics settings in the DF init files are set too optimistic for my machine. 

Or more specifically when my graphics folder doesn't contain the tileset, the init files thinks it should contain.  Maybe check that MacNewbie doesn't call the wrong tileset, or something similar in the init settings. 
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: dreamt on November 13, 2012, 02:12:54 pm
I just tried resetting my graphics settings to default using MacNewbie and had no success. DF and DT both still crash right when DT tries to connect. Is there anything in particular that I should look for in my init file to change by hand? It's presently running at 80x25, using curses_640x300.png.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: knutor on November 13, 2012, 04:40:32 pm
Yes.  Linux/OS X users may also use PRINT_MODE:TEXT for primitive ncurses output.

By default this is 2D.  Try TEXT.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: dreamt on November 13, 2012, 06:05:12 pm
Strangely, it tells me TEXT is unsupported and defaults back to 2D. I tried several other graphics modes and saw no change in the crashing.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 16, 2012, 12:07:12 am
Follow-up

http://www.bay12forums.com/smf/index.php?topic=66525.msg3773408#msg3773408

Here's me loading up roles into DT via a csv file... (csv file consists of these entries role_name, labor_id, priority_weight, num_to_assign)

Code: [Select]
void MainWindow::initializeSuperStruct()
{
    QList<Dwarf*> m_selected_dwarfs = m_view_manager->get_selected_dwarfs();
    int d_count = m_selected_dwarfs.size();

    //get labors per dwarf
    bool ok;
    QString labors_p = QInputDialog::getText(0, tr("Labors per dwarf"),
         tr("How many dwarves do you want to assign per labor?"), QLineEdit::Normal,"", &ok);
    if (!ok)
        return;
    int labors_per = labors_p.toInt();

    //get csv filename
    ok = 0;

    QString file_name = QInputDialog::getText(0, tr("CSV input file"),
         tr("Name of input file for assigning labors?"), QLineEdit::Normal,"", &ok);
    if (!ok)
        return;
    //int file_name = csv_n.toInt();

    using namespace std;
    //dwarf count, to be pulled from selection
    //labor count, to be pulled from init .csv
    int role_count = 0;
    //does not work

    string st;

    //SUPERSTRUCT!
    QVector <superStruct> sorter;

    QVector <roles> ListOfRolesV;

    //ifstream f( filename.c_str() );
    //ifstream f("role_labor_list.csv");
    string f_holder = file_name.toStdString();
    ifstream f(f_holder.c_str());
    //ifstream f (file_name.c_str());


      //loops through each line in the file
      while (getline (f, st))
      {
          int pos = 1;
          //placeholder
          roles p_holder;

          //gets the line for processing
          istringstream iss( st );

            //loops through each , in one line
            while (getline (iss, st, ','))
            {
                //role_name, labor_id, priority_weight, num_to_assign
                if (pos == 1)
                {
                    p_holder.role_name = QString::fromStdString(st);
                }
                else if (pos == 2)
                {
                    int fieldValue = 0;
                    istringstream (st) >> fieldValue;

                    p_holder.labor_id = fieldValue;
                }
                else if (pos == 3)
                {
                    float fieldValue = 0.0f;
                    istringstream (st) >> fieldValue;

                    p_holder.priority = fieldValue;
                }
                else if (pos == 4)
                {
                    int fieldValue = 0;
                    istringstream (st) >> fieldValue;

                    p_holder.numberToAssign = fieldValue;
                }
                p_holder.numberAssigned = 0;
                pos++;
            }
            ListOfRolesV.push_back(p_holder);
            pos = 1;
        }

        f.close();

        role_count = ListOfRolesV.size();

    //now time to initialize the superStruct

        //count # dwarf's
        //foreach(Dwarf *d, m_view_manager->get_selected_dwarfs()) {d_count++;}

        //resize based on # dwarfs * # of roles
        sorter.resize(d_count*role_count);
        QString *temp;

        int sstruct_pos = 0;
        //for(int sstruct_pos = 0; sstruct_pos < sorter.size(); sstruct_pos++)
        {
            //cycle through each Dwarf,
            foreach (Dwarf *d, m_view_manager->get_selected_dwarfs())
            {
                int dwarf_count = 0;
                //cycle through each Role in ListOfRolesV
                for (int role_entry = 0; role_entry < ListOfRolesV.size(); role_entry++)
                {
                    //problem here... need a role per dwarf which I have, but Dwarf doesn't have anywhere to save a w_percent...
                    //Could just load into superStruct, but it won't be a pointer...
                    sorter[sstruct_pos].d_id = d->id();
                    sorter[sstruct_pos].labor_id = ListOfRolesV[role_entry].p_l_id();
                    //QString role_name = ListOfRolesV[role_entry].p_r_name();
                    //not sure if this is what I want
                    sorter[sstruct_pos].role_name = ListOfRolesV[role_entry].p_r_name();

                    //can't use pointers with this
                    sorter[sstruct_pos].r_percent = d->get_role_rating(ListOfRolesV[role_entry].role_name);
                    sorter[sstruct_pos].w_percent = ListOfRolesV[role_entry].priority * d->get_role_rating(ListOfRolesV[role_entry].role_name);

                    sstruct_pos++;
                }
                //probably not needed
                dwarf_count ++;

            }
        }
        //used for debug pause
        int test = 0;

        //sort superstruct by w_percent

        //runs through list
        for (int i = 0; i < sorter.size(); i++)
        {
            //checks against lower element
            //cout << *s->at(i).pPercent << endl;
            for (int j = 1; j < (sorter.size()-i); j++)
            {
                //using pointer dereferences messed this up, but, not using them doesn't sort right
                if (sorter[j-1].w_percent < sorter[j].w_percent)
                {
                    swap(sorter[j-1], sorter[j]);
                }
            }
        }

    //now to assign labors!

        //vs running through each labor, and assigning up to max # dwarf's...
          //1. need to start from top of allRoles
          //2. see what labor is, see if goal is met.
            //DONE (via csv input) for DEPLOY APP, need to change this to see if labor is asked for
          //3. Y - Skip (use while statement)
          //4. N -
            //a. Check Dwarf to see if he is available (again, while Statement),
                //not available if has conflicting labor
            //  Y - Assign
            //  N - Skip

        //start from top of list.
        for (int sPos = 0; sPos < sorter.size(); sPos++)
        {

            //dwarf position (used for searching of name)

            //I would like to set these to pointers, but I was getting out of bound issues...
            int dPos = 0;
            //role position
            int rPos = 0;
            //cycle through each dwarf? I should, but, I can use the *s->at(x).name to find the Dwarf #
            //no, need to compare roleName to dwarfName

            //search for Dwarf (y) for that role           

            for (int d = 0; d < d_count; d++)
            {
                //dPos is never getting updated.
                //int temp = d->id();
                if (sorter[sPos].d_id == m_selected_dwarfs.at(d)->id())
                {
                    dPos = d;
                    //break;
                };
                //dPos++;
            }

            //match superStruct roleName to myRoles name position (to check if filled up)
            for (int r = 0; r < ListOfRolesV.size(); r++)
            {
                if (sorter[r].role_name == ListOfRolesV[r].role_name)
                {
                    rPos = r;
                    //break;
                };

            };

            //search if role @ rPos is filled up
            //role check started...
            if (ListOfRolesV[rPos].numberAssigned < *ListOfRolesV[rPos].n_assign())
            {

                //need to compare to total_assigned_labors,
                //this will be used for Custom Professions

                int currentAssigned = m_selected_dwarfs.at(dPos)->total_assigned_labors();

              //is Dwarf (d) laborsAssigned full? Used in proto-type
              if (currentAssigned < labors_per)
              {
                  //another check to check for conflicting laborid's,
                  //AND
                  //to see if labor_id flag is checked in Options.
                  int debug = ListOfRolesV[rPos].labor_id;
                  //m_selected_dwarfs.at(dPos)->toggle_labor(ListOfRolesV[rPos].labor_id);
                  m_selected_dwarfs.at(dPos)->toggle_labor(debug);
                  //assign labor (z) to Dwarf @ dPos
                  //add labor (z?) to Dwarf's (d) labor vector

                  //m_selected_dwarfs.at(dPos).laborsAssigned.push_back(r->at(rPos).name);

                  //increase labors assigned to roles vector
                  //role check completed
                  ListOfRolesV[rPos].numberAssigned++;
                }
            }

        }
     m_model->calculate_pending();


};

If I didn't have kids, I could probably finish it tonight... but they crawl all over me likes monkeys and I'm made out of banana's...

But... I am making progress...  I think by next weekend I'll have a version to post up that people can try out that will optimize labors...

I only need to do two more things to get it to work

1. Clear labors - check
2. Load roles from CSV - check
3. Load dwarf values into superStruct & sort by weighted_percent - started...  the dwarf ID is loaded at the moment...
4. Assign Labors by going through superStruct weighted_percent descending...

btw, loading all your libraries/ide onto an ssd, and building on a ramdrive SERIOUSLY decreases the build time of DT.  I can go to the bathroom and rebuild all vs waiting 15-20 minutes.

Update:
step 3 looks like it's completely loaded :)  46 roles were completely loaded, and my superstruct was completely setup for a ton of dwarfs and all values were present, there was a minor bug I fixed in a loop operation where it skipped the first role, but that was fixed :)

Just need to sort by w_percent, and then optimize the labors!  I'll have to have a flag to check for the Miner, Ambusher/Hunter, Woodcutter labors, but that should be REALLY easy since I only have to do simple checks for laborID's

there is a good chance this will be completed this weekend!

Update:
I don't have much time this morning before my Pathfinder game, but... I was able to ask the player for how many labors per dwarf once he clicks optimize, as well as the name of the .csv input file (that contains all the roles, labors, priority, number to assign per labor).

Maybe before I leave, I can get it to sort...

Update:
fyi, if you've been following the spreadsheet version... this actually does some things that the spreadsheet can't, such as sort by role % vs sort by roles.

Example... before, each labor was assigned as such

x = labor colum
y = dwarf row
role % (z) = x,y

labors were assigned by x column, picking top num per role

now...
labors are assigned by
z = x,y position

so now assignments are assigned by z vs x

so all role %'s are sorted, and then the matching x,y is looked up, and assign up to number of dwarfs per x, and number of labors per y.

Update:

I'm kind of stuck right now... Splinterz says I shouldn't bother with pointers... but even the dwarf object is a pointer in most things, and that's an issue as well.

So... have to work through this, but I'm on the labor optimization.  Chances are, I'll still have it done this weekend.  Going to sleep, I sent him a notice on it, I only had about an hour to work on this today.

Update:
I've finished the coding, now to debugging...having weird problems...
labor 11 maps to carpentry and not farming... I know it does because I hard coded 11 into QT creator and it still enables carpentry, but 12 is stone detailing (i.e. engraving), yet, that one matches the script editor's labor_id map...

and not just that... it's not assigning all my labors right... I think it's a loop issue, but... making progress.

Update: updated code posted...
Here's a link to the updated code (not working correctly!) but you can see where I'm going with this
http://www.mediafire.com/?46zx8x6tt8ennb7

AND SUCCESS!

http://tinypic.com/m/fvwz86/4

So... the problems were.
I had an rPos not getting updated correctly due to a wrong counter variable.
and my labor_id's were off because I was using skill_id's.

fixed, now all I have to do is implement the Miner, Hunter, Woodcutter check, and it's ready!

Update:

it's not respecting labor per dwarf, will have to get back to that this eve

Update:
IT WORKS NOW!

So far what it does

is clear currently assigned labors
assign labors based on a role that maps to a labor_id (specified by the user).

currently does not support custom professions.

Here it is!
http://www.mediafire.com/?9wwp1xo6ws9ls5h

source
http://www.mediafire.com/?dnnqqv9pmiin1j9
 
intro
http://www.youtube.com/watch?v=Hm0X6LWsNpg&feature=youtu.be
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 22, 2012, 12:56:18 am
I'd probably have a lot more updates if I was single... or at least without kids...

anyways...

Splinterz has seen my code, and is appalled (implementation, not concept) by most of it, but that's ok.   I don't do it for a living, only aspire to... right now it's a hobby/interest (which is a shame, because so many of my friends, at least 2, who didn't know shit about computers before joining the Corps are making 150k each... yet, I was the computer guy in High School)...  I know networking, but that's not what I want to do.

Wow, soapbox...

anyways, I'm thinking of updating the code to actually include the spreadsheet...

I'll still have to rely on a .csv input sheet... but I intend on eventually using a form for input variables (vs a csv sheet), and the input variables will be: role name, labor id, priority weight (which will simply be an input number specified by the user, probably simply values of 1 to .25), and a value that is proportionate to the rest of the values (or a straight %) problem is with c++... rounding (excel has nicer rounding features), which will be used to calculate matching % of the total jobs to assign

lastly a
%jobs
%jobs will be a % of...

total jobs

will be based on
jobs per dwarf
*
number of dwarfs

Update
...and done (source only)...
will send a new video and stuff possible this eve or tomorrow morning.

http://www.mediafire.com/?x21b1g4ey8xh5nv

what this does is essentially prevent one from having to use a new file as the population is changed.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 23, 2012, 02:25:47 pm
here's the updated .zip

http://www.mediafire.com/?13v28jjdbhw1ph4

Instructions are inside

took me about 5 minutes to assign everyone. I used the military.csv to assign melee to Wax working ranged to architect then I cleared all current military ingame used the right click option in DT to assign to Squads

then I excluded militia using filter scripts. then I assigned my new_roles.csv to the rest at .7 then I did nobles by sorting by total_assigned_labors then I did haulers to those not nobles and less than 4 labors :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: dnatabar on November 24, 2012, 04:00:16 am
That looks highly interesting :3

I'l certainly try it out later today ^_^
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 24, 2012, 09:17:44 pm
here's another updated version that checks if miner, hunter, woodcutter would exceed population counts, and to adjust the ratio accordingly.

I would say my spreadsheet is now obsolete :)

it served it's purpose well though

http://www.mediafire.com/?tksyzvgpkkkjlzm

Updated:
This is some really nifty if statements... there's 3 conditions it has to check for.

Code: [Select]
            if ( (MHWExceed) && ((labor == 0) || (labor == 10) || (labor == 44)))
            {
                //truncate miner, hunter, woodcutter to population size
                pre_number_to_assign = ListOfRolesV[x].coverage / MHWCoverage * m_selected_dwarfs.size();
            }
                else if (MHWExceed)
                {
                    //since miner, hunter, woodcutter are being truncated down to population size, we need to remove that from the jobs to assign
                    pre_number_to_assign = ListOfRolesV[x].coverage / modifiedTotalCoverage * (jobs_to_assign - m_selected_dwarfs.size());
                }
            else
            {
                //normal
                pre_number_to_assign = (ListOfRolesV[x].coverage / modifiedTotalCoverage) * jobs_to_assign;
            }

Basically some if checks for what my spreadsheet did to keep miner's, hunter's, and woodcutter's below population size...

Now it matches what I had for my spreadsheet (more so than it did before, I noticed some numbers were off)

ALSO, VERY IMPORTANT...

Since Splinterz version was using a CDF function to scale the %'s to the other values in a given role, that meant that comparing roles against each other using the %'s values was BAD!  So... I removed it from my calculations for optimizations and used raw non CDF values... (CDF, cumulative distribution function, was used to make nice scaling ranges from 0 to 100% and to show who was good/bad in a given population for given task)


http://www.mediafire.com/?spqagsksyskxdda

Updated again to include raw role rating in dwarf details pane right next to the cdf rating, so you guys can see what I'm talking about...
http://www.mediafire.com/?nrzyv3njp06f0zs

fixed a spelling, should have been reading how many labors per dwarf, not how many dwarfs per labor...
http://www.mediafire.com/?ni1ptuuvzh5h01c

one more change... added tooltip for raw role rating in custom roles now...
http://www.mediafire.com/?fppcm82nt52blcp
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 26, 2012, 07:44:51 pm
splinterz just coded up his beta...

messed with a lil, still prefer mine due to some rounding issues and the miner, woodcutter, hunter...

but!  it works just like mine AND BETTER...

can't wait to see those few items tweaked, but one can always rely on him to make shit look professional!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nostril actor on November 26, 2012, 08:08:52 pm
So despite it looking like maybe in the near future I won't need to organize my dwarves myself (although this might be a bit undwarfy), I downloaded splinterz's most recent build and I'm really missing the sort by profession option. I've sorted my dwarves by profession for a while now and am wondering if there's is any way for me to somehow add it in myself, or if doing something like that would be very complicated, perhaps the feature could be readded to the new build?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on November 27, 2012, 04:57:22 pm
So despite it looking like maybe in the near future I won't need to organize my dwarves myself (although this might be a bit undwarfy), I downloaded splinterz's most recent build and I'm really missing the sort by profession option. I've sorted my dwarves by profession for a while now and am wondering if there's is any way for me to somehow add it in myself, or if doing something like that would be very complicated, perhaps the feature could be readded to the new build?

is this when you've got them grouped by profession and you try to sort the first column?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nostril actor on November 27, 2012, 07:40:39 pm
I found it, seems I've just been a bit dumb and overlooked it. Thanks anyway!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 27, 2012, 10:22:50 pm
just looked at splinterz new beta, and it's looking great!

his numbers are a little different then mine, but only on labors that were low priority  (and were coincidentally low skilled, such as shearer, spinner, i.e. I don't have many dwarf's with any skill in it, so I think he's doing some weird back end optimization on dwarf's with same role ratings on those labors, WHICH IS GREAT!!!, WHICH I had no suggestions really on how to do that other than pick dwarf's that were already assigned up with labors to take those on).

all the numbers were spot on though, I spent a lot of time to ensure maximum assignment, and I'm glad to see it was implemented correctly... not saying there can't be room for improvement, but the initial beta had lower #'s...

so moving in the right direction.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on November 29, 2012, 09:41:08 am
i had an idea for how to calculate preferences into role calculations... so now the optimizer versions gonna be delayed a bit pending splinterz mastermind working on adding preference calculations.

hehe. i had an idea to group the preferences into their sub categories such as material or item.

splinterz says its a lot of work for such a small addition of happy thoughts.

something beneficial will result though

Update:
Okay, Splinterz and I came up with a great easy way to do this that allows for accurate results.

A preference ratio system that converts to a %.

Example:

Palm: 2
Beds: 1
Chairs: 1

If a Dwarf has a preference of Palm wood, then he has 2 / (2 + 1 + 1) = 50% rating for preferences.

The above example gives a 1:1 ratio of material:item types.

I guess I'll use a / for annotating type differences...

if I wanted to add more tree types and keep the ratio intact, I would merely do this
Cedar: 1 Palm: 1 / Beds: 1 Chairs: 1

So if I had another item type I'd like to add...

Cedar: 1.5 Palm: 1.5 / Beds: 1 Chairs: 1 Doors: 1

so now I have a 3 / 3 (i.e material/item) type ratio.

If I wanted to increase the weight of the materials, I could get a 2 / 1 ratio by doing the following

Cedar: 3 Palm: 3 / Beds: 1 Chairs: 1 Doors: 1

The resulting matches will be added together, and divided by the sum of all possible (above example for Cedar would be 3 / (3 + 3 + 1 + 1 + 1) = 33%

will be added into the rest of the categories (attributes, skills, traits), average will be reported to Dwarf Therapist

UPDATE:

on second thought, this awesome idea might not work out so well.

It will always produce in lower % for the preference rating for roles that have a complete listing of all items and materials... which means no direct comparison between roles that do not have preferences holding them back.

So... instead Splinterz is thinking it's best to just add a small # to the current raw % if a preference is found, which is not statistical at all, but it's the only good idea we can think of.

Update:

not sure what direction Splinterz is working on, but I had this discussion with him. (paraphrased to another person)

we're thinking of a diminishing return straight additive bonus.

it's kind of complicated, but works like my bud said, first is 5%, second preference is 7.5%, 3rd is 8.75%

however, each diminishing return can have a different value, default is half the original if the value set by user is 1, but the user can set different values...

so yeah, kind of hard to explain.

The logic though is that multiple preferences affecting a role only really make a dwarf happy to do that job, and have a chance at producing masterwork items.

producing masterwork is a skill ability, so should it outweigh skills?  A high skill in carpentry will always produce masterwork items.

happiness is also contributed by traits (such as patience).

So... preferences are a two for one deal, but not as powerful as the quantifiable statistics like traits, and skills.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on December 01, 2012, 07:33:26 am
another new version with some tweaks and the all new labor optimizer.



Project Home // Download (https://code.google.com/r/splintermind-attributes/)

hopefully all the tooltips and status messages on the labor optimization planner are sufficient to get an idea on how to use the tool. as always feedback is encouraged!

please report any bug reports and i'll fix things up asap.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on December 01, 2012, 11:20:33 pm
the big x button should clear the preferences filter

otherwise I have to open preferences and clear it from within preferences
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on December 02, 2012, 06:29:24 pm
Branched version of Dwarf Therapist for Dwarf Fortress 34.07-34.11.

Version 18.1 Change Log

    bug fixes for optimization
    fix for 'wood' showing up in english for other translations of the game

DOWNLOAD - Rapidshare (http://dffd.wimbli.com/file.php?id=7184)
DOWNLOAD - Mediafire (http://www.mediafire.com/?laqlaj96pts9m62)
DOWNLOAD - DFFD (http://rapidshare.com/files/1289334811/Dwarf%20Therapist-18.1.zip)

Project Home // Download (https://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on December 19, 2012, 02:18:48 pm
Looks like great work guys.  The optimizer is impressive - can't wait to start using it.  Thanks heaps!   :)

Minor bug report: The dwarven caravan members are now showing up in DT when they visit to trade.  I have 190 dwarves in my fort.  The caravan has just arrived, and now I'm showing 204 in DT (an extra seven guards and seven merchants are fully listed).

I have a save if you want it, but I guess it can be replicated pretty easily.  I'm running DT 18.1 and DF 34.11 SDL.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on December 19, 2012, 05:19:32 pm
Looks like great work guys.  The optimizer is impressive - can't wait to start using it.  Thanks heaps!   :)

Minor bug report: The dwarven caravan members are now showing up in DT when they visit to trade.  I have 190 dwarves in my fort.  The caravan has just arrived, and now I'm showing 204 in DT (an extra seven guards and seven merchants are fully listed).

I have a save if you want it, but I guess it can be replicated pretty easily.  I'm running DT 18.1 and DF 34.11 SDL.

i'll have another update finished soon, and it has some important fixes to optimization, so watch for it if you're interested in that feature!

thanks for the report, unfortunately i have a save with merchants, but they don't show up in DT, so i may still need you to upload that save if it's not too much trouble.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on December 19, 2012, 08:04:15 pm
thanks for the report, unfortunately i have a save with merchants, but they don't show up in DT, so i may still need you to upload that save if it's not too much trouble.

The caravan was halfway through arriving when I "Read Dwarves" in DT and it showed the extra 14 from the caravan.  However, a minute or two later after the whole caravan had arrived, DT stopped showing the caravan members.  My save is exactly when those extra 14 are showing, so hopefully it can help diagnose the problem.

Here is the save file (http://rapidshare.com/files/232603802/SavedGame.zip).

I can't remember where the screen is centered, but F7 is the hotkey for the Traders Depot in the unlikely event you need to look at it in-game.

Good luck and thanks again!  Let me know what happens and if I can provide any other info.  I'm also running DFHack, but hopefully that hasn't made a difference - I don't use it for much.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on December 20, 2012, 05:25:39 am
thanks for the report, unfortunately i have a save with merchants, but they don't show up in DT, so i may still need you to upload that save if it's not too much trouble.

The caravan was halfway through arriving when I "Read Dwarves" in DT and it showed the extra 14 from the caravan.  However, a minute or two later after the whole caravan had arrived, DT stopped showing the caravan members.  My save is exactly when those extra 14 are showing, so hopefully it can help diagnose the problem.

Here is the save file (http://rapidshare.com/files/232603802/SavedGame.zip).

I can't remember where the screen is centered, but F7 is the hotkey for the Traders Depot in the unlikely event you need to look at it in-game.

Good luck and thanks again!  Let me know what happens and if I can provide any other info.  I'm also running DFHack, but hopefully that hasn't made a difference - I don't use it for much.

so it turns out that those merchants had the same flags as migrants, but no merchant flags while off the map. once they appeared on the map, they were then flagged as merchants and DT hid them correctly. i think i've found a solution and i'll put it in the next release. thanks for sending the save file and the detailed report, it's a huge help.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on December 20, 2012, 12:22:13 pm
thanks for sending the save file and the detailed report, it's a huge help.

No problem at all.  Thank YOU for the quick response and fix, and for making my DF experience far more enjoyable with your wonderful DT.  :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on December 21, 2012, 02:18:12 pm
I have some suggestions that I thought I'd run past you splinterz and see what you thought.  Make of them what you will.  :)

The first suggestion is (hopefully) relatively minor.  The "Group By" drop down box can list 10 categories, which I think back in the day used to be all of them.  But there are now 16 categories, which necessitates much scrolling up and down over the course of a DF session.  Would it be possible to make the number of concurrently displayed categories (ie the size of the drop down box) equal to the total number of categories?

The second suggestion is a bit more beefy.  I put a fair bit of effort in to managing the highest moodable skills on all my dwarves to ensure I get the maximum number of artifact weapons and armour, and the minimum number of artifact toy forges.  With around 200 dwarves, it's a big job, but it's made a lot harder because I can't directly tell who has already had a mood from the main view.

For example, I have twelve dwarves in the "Metalworker" custom profession and I want to set three of them to do metalcrafting, but I don't want any of the three to be ones who haven't yet had a mood, because the experience gain in metalcrafting skill could overtake the current highest moodable skill (say weaponsmith or armoursmith) and result in an artifact goblet.  The only ways for me to tell who has already had a mood that I know about are to change Group By to Highest Moodable Skill, multi-select all the dwarves who have already had a mood, change back to group by Profession, and then enable the metalcrafting labour on the highlighted dwarves.  Seeing as the multi-highlighting is lost as soon as I click to enable a labour, I have to go through the whole process again and again if I forget which dwarves are highlighted or there are a lot of dwarves to set labours for.

The other way to tell is to right-click on each dwarf in the "Metalworker" custom profession sequentially and select Show Details, scroll down the Skill list until I find the one that's highlighted in blue, hover the cursor over it until the tooltip appears and tells me if they've already had a mood, and then close the Details box.  This gets pretty tedious pretty fast for lots of dwarves.

If I could tell who has had a mood from the main grid view that would save me so much time and fiddly effort.  It seems to me the best solution would be a new column, "Highest Moodable Skill".  It could re-use some of the icons from the "Current Job" column to indicate what is the current highest moodable skill, or the "No Job" icon to indicate there has already been a mood.  An added advantage of this method would be the you could sort on this column.

Another way I can think of to do it would be to put a coloured border around the labour cells for the highest moodable skill, in the same way as for "Pending Changes", but with different colours.  Say a blue border around the cell for the labour that is the current highest moodable skill, or a green border if they have already had a mood for that skill.  The red of a pending change would take precedence over either of these.  This method would not allow sorting.

A couple of minor ancillary suggestions are in the Details of a dwarf under Skills to change the highlight colour of the highest moodable skill if the have already had a mood (so you don't have to hover for the tooltip), and to add text to the header section of Details (around the Name and Age section) to say "Creator of <artifact name>" in the same way as the [v]iew - [g]eneral header section of DF (though this last suggestion might be a bit tricky I would guess and is not really important).

Anyway, just thought I'd make some suggestions that would make managing Highest Moodable Skills a whole lot easier.  Look forward to hearing your thoughts, and thanks in advance for considering them. 
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on December 22, 2012, 12:43:05 am
I commend these detailed requests... but... they are a lot to code...  good job, I need to re-read in the morn... this is how I play df... resort, resort, resort, 1 requirement is met.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on December 22, 2012, 05:00:22 am
I have some suggestions that I thought I'd run past you splinterz and see what you thought.  Make of them what you will.  :)

The first suggestion is (hopefully) relatively minor.  The "Group By" drop down box can list 10 categories, which I think back in the day used to be all of them.  But there are now 16 categories, which necessitates much scrolling up and down over the course of a DF session.  Would it be possible to make the number of concurrently displayed categories (ie the size of the drop down box) equal to the total number of categories?

The second suggestion is a bit more beefy.  I put a fair bit of effort in to managing the highest moodable skills on all my dwarves to ensure I get the maximum number of artifact weapons and armour, and the minimum number of artifact toy forges.  With around 200 dwarves, it's a big job, but it's made a lot harder because I can't directly tell who has already had a mood from the main view.

For example, I have twelve dwarves in the "Metalworker" custom profession and I want to set three of them to do metalcrafting, but I don't want any of the three to be ones who haven't yet had a mood, because the experience gain in metalcrafting skill could overtake the current highest moodable skill (say weaponsmith or armoursmith) and result in an artifact goblet.  The only ways for me to tell who has already had a mood that I know about are to change Group By to Highest Moodable Skill, multi-select all the dwarves who have already had a mood, change back to group by Profession, and then enable the metalcrafting labour on the highlighted dwarves.  Seeing as the multi-highlighting is lost as soon as I click to enable a labour, I have to go through the whole process again and again if I forget which dwarves are highlighted or there are a lot of dwarves to set labours for.

The other way to tell is to right-click on each dwarf in the "Metalworker" custom profession sequentially and select Show Details, scroll down the Skill list until I find the one that's highlighted in blue, hover the cursor over it until the tooltip appears and tells me if they've already had a mood, and then close the Details box.  This gets pretty tedious pretty fast for lots of dwarves.

If I could tell who has had a mood from the main grid view that would save me so much time and fiddly effort.  It seems to me the best solution would be a new column, "Highest Moodable Skill".  It could re-use some of the icons from the "Current Job" column to indicate what is the current highest moodable skill, or the "No Job" icon to indicate there has already been a mood.  An added advantage of this method would be the you could sort on this column.

Another way I can think of to do it would be to put a coloured border around the labour cells for the highest moodable skill, in the same way as for "Pending Changes", but with different colours.  Say a blue border around the cell for the labour that is the current highest moodable skill, or a green border if they have already had a mood for that skill.  The red of a pending change would take precedence over either of these.  This method would not allow sorting.

A couple of minor ancillary suggestions are in the Details of a dwarf under Skills to change the highlight colour of the highest moodable skill if the have already had a mood (so you don't have to hover for the tooltip), and to add text to the header section of Details (around the Name and Age section) to say "Creator of <artifact name>" in the same way as the [v]iew - [g]eneral header section of DF (though this last suggestion might be a bit tricky I would guess and is not really important).

Anyway, just thought I'd make some suggestions that would make managing Highest Moodable Skills a whole lot easier.  Look forward to hearing your thoughts, and thanks in advance for considering them.

i think these are some great ideas. first, for the dropdown, it's trivial to increase the amount of visible items, and i'll be sure to fix that in the next release. i like the idea of adding the highest moodable skill column, specifically because of the ability to sort. it's also easy to add additional column types so this is very feasible. i'll also try to change the color of the background for skills which have already had a mood in the details pane, that makes sense as well. i'll also see about adding some extra information about the highest moodable skill in some of the tooltips.

i can't comment on the artifact idea as i'd need to look into if it's possible, but it might be. i was hoping to get the next release out by now, but i noticed there's a nasty memory leak every time a read is performed that i'm trying to hunt down. hopefully i'll get it sorted soon before it drives me insane.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on December 22, 2012, 03:45:54 pm
I commend these detailed requests...
i think these are some great ideas.

Thanks for the positive feedback guys.  :) 

first, for the dropdown, it's trivial to increase the amount of visible items, and i'll be sure to fix that in the next release. i like the idea of adding the highest moodable skill column, specifically because of the ability to sort. it's also easy to add additional column types so this is very feasible. i'll also try to change the color of the background for skills which have already had a mood in the details pane, that makes sense as well. i'll also see about adding some extra information about the highest moodable skill in some of the tooltips.

Great to hear that these ideas are not completely unfeasible!

i can't comment on the artifact idea as i'd need to look into if it's possible, but it might be.

Yeah, that one's not too important at all.  A nice touch, but probably not worth spending much time on.

i was hoping to get the next release out by now, but i noticed there's a nasty memory leak every time a read is performed that i'm trying to hunt down. hopefully i'll get it sorted soon before it drives me insane.

Ouch!  Mysterious memory leaks are an enourmous pain in the arse.  I haven't been tormented by one for a long time now, knock on wood.  Good luck tracking it down.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on December 23, 2012, 11:40:01 am
I just tired building the default branch from splintermind-attributes on Linux and it failed with this error.
Code: [Select]
src/laboroptimizer.cpp: In member function ‘void LaborOptimizer::optimize_labors(QList<Dwarf*>)’:
src/laboroptimizer.cpp:133:5: error: ‘sort’ is not a member of ‘std’
make: *** [bin/release/laboroptimizer.o] Error 1
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on December 23, 2012, 08:24:24 pm
I just tired building the default branch from splintermind-attributes on Linux and it failed with this error.
Code: [Select]
src/laboroptimizer.cpp: In member function ‘void LaborOptimizer::optimize_labors(QList<Dwarf*>)’:
src/laboroptimizer.cpp:133:5: error: ‘sort’ is not a member of ‘std’
make: *** [bin/release/laboroptimizer.o] Error 1
I was able to build it using a different distro.
It works there but not on my 64bit computer.
Code: [Select]
2012-Dec-23 22:11:21.252 INFO core Dwarf Therapist "0.6.12" starting normally. [src/dwarftherapist.cpp:103] (setup_logging)
2012-Dec-23 22:11:21.313 INFO core Loaded 8 views from disk [src/viewmanager.cpp:136] (reload_views)
2012-Dec-23 22:11:21.314 DEBUG core group_by now set to 0 [src/models/dwarfmodel.cpp:782] (set_group_by)
2012-Dec-23 22:11:21.317 DEBUG core group_by now set to 0 [src/models/dwarfmodel.cpp:782] (set_group_by)
2012-Dec-23 22:11:21.317 DEBUG core "redrew views in 4ms" [src/viewmanager.cpp:258] (draw_views)
2012-Dec-23 22:11:21.361 DEBUG core setting up connections for MainWindow [src/mainwindow.cpp:140] (MainWindow)
2012-Dec-23 22:11:21.362 DEBUG core group_by now set to 0 [src/models/dwarfmodel.cpp:782] (set_group_by)
2012-Dec-23 22:11:21.363 DEBUG core beginning to read settings [src/dwarftherapist.cpp:125] (read_settings)
2012-Dec-23 22:11:21.363 DEBUG core finished reading settings [src/dwarftherapist.cpp:173] (read_settings)
2012-Dec-23 22:11:21.387 DEBUG core attempting connection to running DF game [src/mainwindow.cpp:262] (connect_to_df)
2012-Dec-23 22:11:21.389 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.389 DEBUG core adding valid layout "v0.34.11" "0xe966ee88" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.389 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.389 DEBUG core adding valid layout "v0.34.10" "0x71406692" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.390 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.390 DEBUG core adding valid layout "v0.34.09" "0xde041bf6" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.390 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.390 DEBUG core adding valid layout "v0.34.08" "0xe4a4d9c6" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.391 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.391 DEBUG core adding valid layout "v0.34.07" "0x61b4fa72" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.391 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.391 DEBUG core adding valid layout "v0.31.25" "0xfc15065c" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.391 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.391 DEBUG core adding valid layout "v0.31.24" "0xa47468ce" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.392 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.392 DEBUG core adding valid layout "v0.31.22" "0xc8e82e6e" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.392 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.392 DEBUG core adding valid layout "v0.31.22" "0xc7319be1" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.392 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.392 DEBUG core adding valid layout "v0.31.21" "0xc3d2af10" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.392 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.392 DEBUG core adding valid layout "v0.31.20" "0x6d33ec73" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.393 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.393 DEBUG core adding valid layout "v0.31.19" "0x8fcb1f10" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.393 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.393 DEBUG core adding valid layout "v0.31.18" "0x884f794d" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.393 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.393 DEBUG core adding valid layout "v0.31.17" "0x03afc836" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.393 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.393 DEBUG core adding valid layout "v0.31.16" "0x9cca2fa5" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.394 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.394 DEBUG core adding valid layout "v0.31.15" "0x1cd8dc24" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.394 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.394 DEBUG core adding valid layout "v0.31.08" "0xe3775089" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.394 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.394 DEBUG core adding valid layout "v0.31.05" "0xfea3801a" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.394 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.394 DEBUG core adding valid layout "v0.31.04" "0x1d759a11" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.394 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:21.394 DEBUG core adding valid layout "v0.28.181.40d16" "0xdab3ce6b" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:21.400 ERROR core Unable to open "/proc/0/maps" [src/dfinstancelinux.cpp:381] (map_virtual_memory)
2012-Dec-23 22:11:21.400 ERROR core Could not attach to PID 0 [src/dfinstancelinux.cpp:192] (attach)
2012-Dec-23 22:11:21.400 ERROR core Unable to open "/proc/0/mem" [src/dfinstancelinux.cpp:225] (read_raw)
2012-Dec-23 22:11:21.400 DEBUG core base_addr: 0 HEX 0 [src/dfinstancelinux.cpp:351] (find_running_copy)
2012-Dec-23 22:11:21.402 DEBUG core DF's checksum is "0x00000000" [src/dfinstancelinux.cpp:355] (find_running_copy)
2012-Dec-23 22:11:21.402 INFO core Dwarf fortress path: "/media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/0_Build/dwarftherapist_2012-12-23/bin/release" [src/dfinstancelinux.cpp:362] (find_running_copy)
2012-Dec-23 22:11:24.532 DEBUG core attempting connection to running DF game [src/mainwindow.cpp:262] (connect_to_df)
2012-Dec-23 22:11:24.532 DEBUG core already connected, disconnecting [src/mainwindow.cpp:264] (connect_to_df)
2012-Dec-23 22:11:24.532 DEBUG core DFInstance baseclass virtual dtor! [src/dfinstance.cpp:123] (~DFInstance)
2012-Dec-23 22:11:24.534 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.534 DEBUG core adding valid layout "v0.34.11" "0xe966ee88" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.534 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.534 DEBUG core adding valid layout "v0.34.10" "0x71406692" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.535 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.535 DEBUG core adding valid layout "v0.34.09" "0xde041bf6" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.535 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.535 DEBUG core adding valid layout "v0.34.08" "0xe4a4d9c6" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.535 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.535 DEBUG core adding valid layout "v0.34.07" "0x61b4fa72" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.536 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.536 DEBUG core adding valid layout "v0.31.25" "0xfc15065c" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.536 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.536 DEBUG core adding valid layout "v0.31.24" "0xa47468ce" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.536 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.536 DEBUG core adding valid layout "v0.31.22" "0xc8e82e6e" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.536 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.536 DEBUG core adding valid layout "v0.31.22" "0xc7319be1" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.536 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.536 DEBUG core adding valid layout "v0.31.21" "0xc3d2af10" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.536 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.536 DEBUG core adding valid layout "v0.31.20" "0x6d33ec73" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.536 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.536 DEBUG core adding valid layout "v0.31.19" "0x8fcb1f10" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.537 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.537 DEBUG core adding valid layout "v0.31.18" "0x884f794d" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.537 DEBUG core valid_flags_2 count:  1 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.537 DEBUG core adding valid layout "v0.31.17" "0x03afc836" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.537 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.537 DEBUG core adding valid layout "v0.31.16" "0x9cca2fa5" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.537 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.537 DEBUG core adding valid layout "v0.31.15" "0x1cd8dc24" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.537 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.537 DEBUG core adding valid layout "v0.31.08" "0xe3775089" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.537 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.537 DEBUG core adding valid layout "v0.31.05" "0xfea3801a" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.537 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.537 DEBUG core adding valid layout "v0.31.04" "0x1d759a11" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.537 DEBUG core valid_flags_2 count:  0 [src/memorylayout.cpp:85] (load_data)
2012-Dec-23 22:11:24.537 DEBUG core adding valid layout "v0.28.181.40d16" "0xdab3ce6b" [src/dfinstance.cpp:108] (DFInstance)
2012-Dec-23 22:11:24.543 ERROR core Unable to open "/proc/0/maps" [src/dfinstancelinux.cpp:381] (map_virtual_memory)
2012-Dec-23 22:11:24.543 ERROR core Could not attach to PID 0 [src/dfinstancelinux.cpp:192] (attach)
2012-Dec-23 22:11:24.543 ERROR core Unable to open "/proc/0/mem" [src/dfinstancelinux.cpp:225] (read_raw)
2012-Dec-23 22:11:24.543 DEBUG core base_addr: 0 HEX 0 [src/dfinstancelinux.cpp:351] (find_running_copy)
2012-Dec-23 22:11:24.544 DEBUG core DF's checksum is "0x00000000" [src/dfinstancelinux.cpp:355] (find_running_copy)
2012-Dec-23 22:11:24.544 INFO core Dwarf fortress path: "/media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/0_Build/dwarftherapist_2012-12-23/bin/release" [src/dfinstancelinux.cpp:362] (find_running_copy)
2012-Dec-23 22:11:24.547 DEBUG core Connection to unknown DF Version established. [src/mainwindow.cpp:292] (connect_to_df)
2012-Dec-23 22:11:29.270 WARNING core lost connection to DF [src/mainwindow.cpp:355] (lost_df_connection)
2012-Dec-23 22:11:29.279 DEBUG core group_by now set to 0 [src/models/dwarfmodel.cpp:782] (set_group_by)
2012-Dec-23 22:11:29.280 DEBUG core DFInstance baseclass virtual dtor! [src/dfinstance.cpp:123] (~DFInstance)
2012-Dec-23 22:11:32.677 INFO core Beginning shutdown [src/mainwindow.cpp:252] (closeEvent)
2012-Dec-23 22:11:32.677 DEBUG core beginning to write settings [src/mainwindow.cpp:228] (write_settings)
2012-Dec-23 22:11:32.677 DEBUG core finished writing settings [src/mainwindow.cpp:247] (write_settings)
2012-Dec-23 22:11:32.677 INFO core Closing Dwarf Therapist normally [src/mainwindow.cpp:258] (closeEvent)
That is the computer I need it to work on, any ideas on how to get it to work there?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: xiziz on December 27, 2012, 05:40:24 pm
I just tired building the default branch from splintermind-attributes on Linux and it failed with this error.
I was able to build it using a different distro.
It works there but not on my 64bit computer.

That is the computer I need it to work on, any ideas on how to get it to work there?

Saw you were having trouble, I just managed to bypass the exact same thing a few weeks back. Found the solution here (http://"http://www.bay12forums.com/smf/index.php?topic=118567.msg3845991#msg3845991"). Simple as adding a line to src/laboroptimizer.cpp with any text editor prior to running through the building process.

Good Luck!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on December 28, 2012, 05:29:18 pm
I just tired building the default branch from splintermind-attributes on Linux and it failed with this error.
I was able to build it using a different distro.
It works there but not on my 64bit computer.

That is the computer I need it to work on, any ideas on how to get it to work there?

Saw you were having trouble, I just managed to bypass the exact same thing a few weeks back. Found the solution here (http://"http://www.bay12forums.com/smf/index.php?topic=118567.msg3845991#msg3845991"). Simple as adding a line to src/laboroptimizer.cpp with any text editor prior to running through the building process.

Good Luck!
Okay I figured out the problem.
I was running some test builds of dfhack earlier and one of them had left a stuck process but no window when it died.
Killing that got it to work.

After looking at the code
Code: [Select]
    args << "Dwarf_Fortress"; // 0.31.05+
    proc->start("pidof", args);
    proc->waitForFinished(1000);
    if (proc->exitCode() == 0) { //found it
        QByteArray out = proc->readAllStandardOutput();
        QString str_pid(out);
        m_pid = str_pid.toInt();
I can see that there is no check for there being multiple processes with "Dwarf_Fortress" in the name there and it fails trying to read a non-existent process because of that.
If this was not C++ I would make a patch to fix that but I don't know how to do anything in that language.

Ideally a fix for this would either popup and say
Quote
Error: Multiple Running Dwarf Fortresses Detected
Please close all but one Dwarf Fortress process and try to connect again.
or
Quote
Error: Multiple Running Dwarf Fortresses Detected
Please select the correct process from this list.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on December 30, 2012, 07:10:31 pm
new version is ready for release testing!  ;)

summary of main highlights (see link below for full patch notes)
there will probably be some bugs with this version as quite a lot was updated and adjusted, especially for a few memory leaks. just let me know in as much detail as possible and i'll get things fixed up when i can.

happy new year's eve!

Download // Project Home // Full Patch Notes (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on December 30, 2012, 07:32:15 pm
there will probably be some bugs with this version as quite a lot was updated and adjusted, especially for a few memory leaks. just let me know in as much detail as possible and i'll get things fixed up when i can.
Any chance you could address the lack of a check for multiple detected processes in Linux I mentioned in my previous post?
pidof can give false positives so it is more serious than failing if you have two copies of Dwarf Fortress running at the same time.
All you need to do to check for multiple returns by "pidof" is to split the string it returns on the space " " character and check how many pieces you get from that split.
If you get more than one piece after that split "pidof" returned the PID of more than one process.

Right now "str_pid.toInt()" returns "0" when "pidof" returns multiple PIDs and fails trying to read "/proc/0/maps" since it does not exist (at least on my system).
The code does not stop when this fails so it goes on to try connection to a "0x00000000" process with ptrace.
Unless you read the log file this error looks like a ptrace control issue so it has the potential to be very frustrating unless you know to look for it.

You may also want mark the downloads on your release page as "Windows Only" in some way since the "v19.0 (DF 34.07 - DF 34.11 Windows SDL & Linux)" right above them is misleading about the contents of the file.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on December 30, 2012, 08:51:43 pm
yes i've read your post and i'm aware of the issue. ideally it may be better to remove the dependency on pidof in the first place since it's been pointed out that it's not available on all flavours of linux.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on December 30, 2012, 08:52:41 pm
it would be nice to see the % in the role editor update as I change options.  basically to recalculate the role % for the selected dwarf based on the weights that are changed.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on December 30, 2012, 09:31:37 pm
yes i've read your post and i'm aware of the issue. ideally it may be better to remove the dependency on pidof in the first place since it's been pointed out that it's not available on all flavours of linux.
There is also "ps aux" though its output will need some parsing and filtering.
It probably works on more systems but I can't say if it is "Universal" or if its output is consistent across different types of Linux.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on December 31, 2012, 06:36:30 pm
OH NO!  MY LEADER/MANAGER DWARF ROLE IS BROKEN (from the default Roles screen).  What is a dwarf to do?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 01, 2013, 08:24:01 am
update for the linux multiple processes and manager/leader issues. the role issue is minor, you can update it yourself by editing the etc/game_data.ini and changing "Leader\Manager" to "Leader/Manager" if you don't want to download the file again.

Download // Project Home // Full Patch Notes (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 01, 2013, 10:47:18 am
update for the linux multiple processes and manager/leader issues. the role issue is minor, you can update it yourself by editing the etc/game_data.ini and changing "Leader\Manager" to "Leader/Manager" if you don't want to download the file again.

Download // Project Home // Full Patch Notes (http://code.google.com/r/splintermind-attributes/)
Have you pushed those changes to the repository?
I don't see anything new there.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 01, 2013, 12:24:16 pm
update for the linux multiple processes and manager/leader issues. the role issue is minor, you can update it yourself by editing the etc/game_data.ini and changing "Leader\Manager" to "Leader/Manager" if you don't want to download the file again.

Download // Project Home // Full Patch Notes (http://code.google.com/r/splintermind-attributes/)
Have you pushed those changes to the repository?
I don't see anything new there.

yes the repository has been updated (http://code.google.com/r/splintermind-attributes/source/detail?r=096c2cf9fa3ecedf437d5356f232f698e80b3396)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 01, 2013, 12:33:05 pm
update for the linux multiple processes and manager/leader issues. the role issue is minor, you can update it yourself by editing the etc/game_data.ini and changing "Leader\Manager" to "Leader/Manager" if you don't want to download the file again.

Download // Project Home // Full Patch Notes (http://code.google.com/r/splintermind-attributes/)
Have you pushed those changes to the repository?
I don't see anything new there.

yes the repository has been updated (http://code.google.com/r/splintermind-attributes/source/detail?r=096c2cf9fa3ecedf437d5356f232f698e80b3396)
It was not showing up when I checked before.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Elarys on January 01, 2013, 06:39:21 pm
I've tried to latest version of Therapist from http://code.google.com/p/dwarftherapist/wiki/BuildingDwarfTherapist

I downloaded via hg clone. I built using the instructions provided.

qmake only made a release build, no debug build. I'm using gentoo 32bit and my qmake version reports

Code: [Select]
QMake version 2.01a
Using Qt version 4.8.4 in /usr/lib/qt4

gcc is 4.5.4

When I run ./DwarfTherapist the window loads briefly for a split second, before crashing with an unknown error.

The ./log/run.log file is uploaded to the filed issue at http://code.google.com/p/dwarftherapist/issues/detail?id=451
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 01, 2013, 06:59:01 pm
I see at least one major problem in your log.
Code: [Select]
No valid memory layouts found in the following directories... () [src/dfinstance.cpp:106] (DFInstance)
This means Dwarf Therapist did not find the memory layouts from the "etc" directory located in the root of the directory you cloned the repository into.
Those are required to read the memory of the Dwarf_Fortress process once you find it.

The problem is that the Dwarf Threrapist executable only looks in "~/dwarftherapist/bin/release" where they would only be if you put them there and "./etc/memory_layouts/linux" in the current working directory which is almost assured to not work if you install Dwarf Therapist with "make install".
This is poorly explained in the "Debugging" section of the build instructions page.

What I do is copy the "etc" folder to the "bin/release" folder the Dwarf Therapist executable is placed in when you compile with "make" and then cd to to the "bin/release" folder and run "./DwarfTherapist" so it is able to find the memory layouts in the "bin/release/etc/memory_layouts/linux" directory.
You can make a shell script like this
Code: [Select]
cd /path/to/bin/release
./DwarfTherapist
that "cd"s to the correct directory before starting "DwarfTherapist" and put it in you path if you want to start Dwarf Therapist with a single command.

I am not sure if that is why it crashes though.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 01, 2013, 07:57:56 pm
I just built again and it is not working since the last bug fix.
Never mind it was because I broke my memory layout somehow.

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 02, 2013, 12:23:27 pm
i had this prob b4 too. splinterz prolly packaged a new etc folder in the source. got to plug that in. i learned that the hard way
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 02, 2013, 02:45:30 pm
new version is ready for release testing!  ;)

I'm loving the new version!  It makes managing artifact production in a large fortress SO much easier.

As my fort and projects get bigger, its only DT and DFHack that reduce the grind burden and allow me to continue to enjoy playing the game.  Thank you so much splinterz.  Happy New Year to you, and best wishes for 2013!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 02, 2013, 03:01:01 pm
new version is ready for release testing!  ;)

I'm loving the new version!  It makes managing artifact production in a large fortress SO much easier.

As my fort and projects get bigger, its only DT and DFHack that reduce the grind burden and allow me to continue to enjoy playing the game.  Thank you so much splinterz.  Happy New Year to you, and best wishes for 2013!

great to hear! let me know if the cell highlighting for the highest moodable skills and/or artifact name displays need any tweaking. since you made the suggestions i'm relying on you for feedback :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 02, 2013, 05:06:28 pm
So far, so perfect.  I'll definitely let you know if I notice anything.  ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on January 02, 2013, 06:06:48 pm
Looks like I have to update my modpack again ;) Keep up the good work. :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on January 03, 2013, 12:57:10 am
BTW, traits and attributes are without any effect on quality of items produced by legendary dwarves.

I forgot to ask
Does legendary trump everything else?

If it does, then AS LONG AS A DWARF DOESN'T GET ANGRY doing the job, then he should be 100%  I know a chief medical dwarf (i.e. a legendary diagnoser who doesn't enjoy helping people) might not be beneficial
Title: Re: Dwarf Therapist (LATEST 0.6.12 3/6/12 see first post)
Post by: thistleknot on January 03, 2013, 01:00:57 am
I feel I should step into the discussion to say some things.

First of all, splinterz's above quote is correct. I've not changed the README however my current version of DGC still uses the old formula. (though refactored!)

This formula assumes that information in the wiki is correct, and without seeing more well documented tests with evidence I think they are correct. Attributes get raised by using skills and I believe thistleknot used dwarves from two large fortresses which would have seen attribute growth.

The DGC formula takes an attribute that falls within the generated range and maps it from 0-100. This roughly is how much of the population this is better than. If it's 80% it means that given 100 generated dwarves this will be above ~80 of them.

This is a very good formula to use when embarking! However it suffers huge problems as soon as you get immigrants, babies or any of your dwarves do anything since attributes will deviate from the generated averages.

If you have a very large fort you don't want to know how good your dwarves are above the generated average, you want to know how good they are in relation to all your other dwarves. Hence, two formula are needed, one for embark and one afterwards.

A third formula may be useful and can also be used on any other creatures. This is to say that attributes are between 0-5000 so weight all attributes by dividing by 500. 100 will be the maximum value possible and 0 the minimum.

So yeah, I'm planning on having all three formula in the next release of DGC. Hopes this info helps people! :)

wow, old shiz revisited.

we actually decided that basing on embark was better.  I was assuming migrants were based on embark dwarves... if there not... then there's a whole ball of wax that may need to be adjusted... how does one incorporate 3 diff formulas?  sounds like a mess... and if that is the case, then maybe adjusting the %'s based on the current population are called for... but we know what the values are limited to.  stats can only reach x2 of starting
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 03, 2013, 11:18:35 am
to try and remove the process of checking out the source and compiling manually for linux users, i've got a dwarf therapist package for you to try out. it seems to work alright on my flavour of linux, but i'd like to get some more people to try it out before i start building a linux package consistently in my releases.

download it here (http://rapidshare.com/files/1897783581/dt_linux_v19.1.tar.gz)

extract, and run with the DT script inside. let me know if anything explodes or if you have other ideas on a packaging up a linux release (i really don't know what i'm doing haha)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 03, 2013, 11:29:07 am
to try and remove the process of checking out the source and compiling manually for linux users, i've got a dwarf therapist package for you to try out. it seems to work alright on my flavour of linux, but i'd like to get some more people to try it out before i start building a linux package consistently in my releases.

download it here (http://rapidshare.com/files/1018477247/dt_linux%20v19.1.tar.gz)

extract, and run with the DT script inside. let me know if anything explodes or if you have other ideas on a packaging up a linux release (i really don't know what i'm doing haha)
I have been experimenting with doing that as well for the Linux version of Mephs Masterwork mod.
The first version of mine is in the latest Linux version, 2c, of Masterwork.
I tried to include all the libraries that are version dependent or need to be 32bit in mine to make it easy for others to use.
I did find that a 32bit build could not detect the users QT theme on a 64bit computer but it otherwise worked fine.

I will look at yours when I get home (no Linux here) and see if I see anything obvious wrong with it.
Hopefully you did not build on Ubuntu 12.04 or later, or a recent Fedora because they use a newer glibc (eglibc), 2.15, than many distros.
This means programs built on them won't work on many peoples Linux installs.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 03, 2013, 12:44:42 pm
to try and remove the process of checking out the source and compiling manually for linux users, i've got a dwarf therapist package for you to try out. it seems to work alright on my flavour of linux, but i'd like to get some more people to try it out before i start building a linux package consistently in my releases.

download it here (http://rapidshare.com/files/1018477247/dt_linux%20v19.1.tar.gz)

extract, and run with the DT script inside. let me know if anything explodes or if you have other ideas on a packaging up a linux release (i really don't know what i'm doing haha)
I have been experimenting with doing that as well for the Linux version of Mephs Masterwork mod.
The first version of mine is in the latest Linux version, 2c, of Masterwork.
I tried to include all the libraries that are version dependent or need to be 32bit in mine to make it easy for others to use.
I did find that a 32bit build could not detect the users QT theme on a 64bit computer but it otherwise worked fine.

I will look at yours when I get home and see if I see anything obvious wrong with it.
Hopefully you did not build on Ubuntu 12.04 or later, or a recent Fedora because they use a newer glibc (eglibc), 2.15, than many distros.
This means programs built on them won't work on many peoples Linux installs.

ah dammit, i think it was on ubuntu 12.10.. i'll have to get an older version then and recompile, thanks for the heads-up. as for the method, i'm just packaging the qt libraries indicated after running ldd on the executable, and using a script to set the ld_library_path. from all the qt documentation i've read it seems this is the most flexible (and simple) solution.

for the ptrace kernel hardening issue i read somewhere on the forums here about using a script to launch therapist and then fortress as a work around. however i'm not sure if you can daisy chain multiple things like stonesense and dfhack into it as well.

i'm not knowledgeable as to exactly what distros require which other additional libraries so any advice is much appreciated.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 03, 2013, 01:12:48 pm
I will look at yours when I get home and see if I see anything obvious wrong with it.
Hopefully you did not build on Ubuntu 12.04 or later, or a recent Fedora because they use a newer glibc (eglibc), 2.15, than many distros.
This means programs built on them won't work on many peoples Linux installs.

ah dammit, i think it was on ubuntu 12.10.. i'll have to get an older version then and recompile, thanks for the heads-up. as for the method, i'm just packaging the qt libraries indicated after running ldd on the executable, and using a script to set the ld_library_path. from all the qt documentation i've read it seems this is the most flexible (and simple) solution.
You only need to go back to Ubuntu 11.10, that has glibc 2.13 which should work unless someone has not updated their Linux install in several years.

I use a 32bit xubuntu 11.10 VM to build updated versions of dfhack for Masterwork since it has glibc 2.13 and gcc 4.5.
The current version of Dwarf Fortress was built with gcc 4.5 so it is best to build dfhack with it, Debain does not have gcc 4.5 so I used xubuntu.
You can use any gcc version you want for Therapist as long as it compiles.

I use a script to load the libs as well, it is the easiest way to do it.
I included more libs than that for ease of use on non-Debian based systems.
I put in pretty much everything but the X11 stuff for now, you should use the system version of those and they can be 64bit.
I am sure some of them are unneeded but I have not had time to work out which ones yet.

for the ptrace kernel hardening issue i read somewhere on the forums here about using a script to launch therapist and then fortress as a work around. however i'm not sure if you can daisy chain multiple things like stonesense and dfhack into it as well.
I put some documentation on ways to allow ptrace in the Linux instructions I wrote for Masterwork.
I will post them here when I get home, I can't get at them here.

I have seen the script you are talking about but I have not had any luck trying to employ it with dfhack and therapist at the same time.
The problem is that dfhack takes over your terminal now and that holds your script at the line where you start dfhack until Dwarf Fortress is closed.
Stonesense is part of dfhack now so you don't have to daisychain it in anymore.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 03, 2013, 04:45:19 pm
for the ptrace kernel hardening issue i read somewhere on the forums here about using a script to launch therapist and then fortress as a work around. however i'm not sure if you can daisy chain multiple things like stonesense and dfhack into it as well.
I put some documentation on ways to allow ptrace in the Linux instructions I wrote for Masterwork.
I will post them here when I get home, I can't get at them here.
Here is what I have about allowing ptrace.
Code: [Select]
Depending on your kernel version and build settings you may need to enable Dwarf Therapist to use ptrace on other processes.
You may get a error like this

ptrace attach: Operation not permitted

or this

ptrace: Permission denied

in your terminal when you run Dwarf Therapist if you are experiencing this problem.

If your kernel does not have an extra LSM enabled or you are running the Yama LSM (Ubuntu and others) you can enable ptrace by running this command as root in the "MasterworkDwarfFortress/Utilities/Dwarf_Therapist" directory.

sudo setcap cap_sys_ptrace=ep DwarfTherapist

This will allow the DwarfTherapist executable to ptrace other processes but will not turn off ptrace protection for the rest of your system.

If your kernel is running SELinux (Fedora and others) you can enable ptrace by running this command as root.

setsebool deny_ptrace 0

This turns off all ptrace protection, ptrace protection will be reactivated if you reboot or run "setsebool deny_ptrace 1" as root.
It is also possible to completely turn off ptrace protection when running Yama but it is not necessary to do that.

as for the method, i'm just packaging the qt libraries indicated after running ldd on the executable, and using a script to set the ld_library_path. from all the qt documentation i've read it seems this is the most flexible (and simple) solution.
Your script looks fine but I thought I would show you the one I am going to use in future Masterwork Linux releases.
Code: [Select]
#!/bin/sh
appname="DwarfTherapist"

dirname=`dirname $0`
tmp="${dirname#?}"

if [ "${dirname%$tmp}" != "/" ]; then
dirname=$PWD/$dirname
fi
cd "$dirname"
LD_LIBRARY_PATH="$dirname/libs":$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
$dirname/$appname "$@"
It will work no matter what your current working directory is when you start it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Bot Hack on January 03, 2013, 05:12:41 pm
Wow thank you this works great!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Antalia on January 03, 2013, 08:12:38 pm
Could someone point me to a resource that shows the mapping of labors to the indices used in an exported custom_professions.dtp? (I can read code or human, doesn't matter.)

I can extract what I'm looking for by brute force, but a clue would save some time. :) Thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 04, 2013, 05:44:27 am
@arclance - well i've got the older version of ubuntu installed to recompile. having some nasty issues getting qt upgraded to 4.8.4 so i may have to abandon that and just package with 4.7.4. thanks for the script, that's a bit more robust. i'll have to try out the setcap method, although it would be nice to allow DT to run without root permissions..

Could someone point me to a resource that shows the mapping of labors to the indices used in an exported custom_professions.dtp? (I can read code or human, doesn't matter.)

I can extract what I'm looking for by brute force, but a clue would save some time. :) Thanks.

in DT, edit a script, there's a list on the right hand pane, or you can use the game_data.ini in the etc folder:

http://code.google.com/r/splintermind-attributes/source/browse/etc/game_data.ini#903 (http://code.google.com/r/splintermind-attributes/source/browse/etc/game_data.ini#903)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 04, 2013, 08:44:41 am
@arclance - well i've got the older version of ubuntu installed to recompile. having some nasty issues getting qt upgraded to 4.8.4 so i may have to abandon that and just package with 4.7.4. thanks for the script, that's a bit more robust. i'll have to try out the setcap method, although it would be nice to allow DT to run without root permissions..
The setcap command does not run Therapist is just marks the executable as "allowed to use ptrace".
You can run it as a regular user and it will work, you just need to be root to use the setcap command.

You could also build in Debian Testing and get glibc 2.13 and QT 4.8.2.
It not 4.8.4 but Debian is not quite as gun ho about updating core packages as Ubuntu.
The relevant package names are the same.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 04, 2013, 09:10:42 am
@arclance - well i've got the older version of ubuntu installed to recompile. having some nasty issues getting qt upgraded to 4.8.4 so i may have to abandon that and just package with 4.7.4. thanks for the script, that's a bit more robust. i'll have to try out the setcap method, although it would be nice to allow DT to run without root permissions..
The setcap command does not run Therapist is just marks the executable as "allowed to use ptrace".
You can run it as a regular user and it will work, you just need to be root to use the setcap command.

You could also build in Debian Testing and get glibc 2.13 and QT 4.8.2.
It not 4.8.4 but Debian is not quite as gun ho about updating core packages as Ubuntu.
The relevant package names are the same.
i realize setcap doesn't run therapist, however i'm forced to run therapist as root after running setcap it appears. same as another user described here (http://code.google.com/p/dwarftherapist/issues/detail?id=438&q=ptrace).

so far the 4.8.4 libraries aren't working; it's not decorating the window/graphics properly (looks like windows 95 :D) maybe something went wrong when compiling the libraries, i don't know yet.

Quote
I put in pretty much everything but the X11 stuff for now, you should use the system version of those and they can be 64bit.
can you elaborate on how you determined which shared libraries to package?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 04, 2013, 09:28:18 am
@arclance - well i've got the older version of ubuntu installed to recompile. having some nasty issues getting qt upgraded to 4.8.4 so i may have to abandon that and just package with 4.7.4. thanks for the script, that's a bit more robust. i'll have to try out the setcap method, although it would be nice to allow DT to run without root permissions..
The setcap command does not run Therapist is just marks the executable as "allowed to use ptrace".
You can run it as a regular user and it will work, you just need to be root to use the setcap command.

You could also build in Debian Testing and get glibc 2.13 and QT 4.8.2.
It not 4.8.4 but Debian is not quite as gun ho about updating core packages as Ubuntu.
The relevant package names are the same.
i realize setcap doesn't run therapist, however i'm forced to run therapist as root after running setcap it appears. same as another user described here (http://code.google.com/p/dwarftherapist/issues/detail?id=438&q=ptrace).
Try
Code: [Select]
sudo setcap cap_sys_ptrace=eip DwarfTherapist
That sets all the ptrace premissions possible, maybe it needs more than "ep" to work.
Make sure you run that command in the "bin/release" folder so it gets applied to the correct executable.
You can use
Code: [Select]
sudo getcap DwarfTherapist
to check if the setcap command worked.

There are other things you can set with setcap and it might need one of them.
I believe that sudo runs things with all of the setcap controlled stuff set to the most permissive values.

so far the 4.8.4 libraries aren't working; it's not decorating the window/graphics properly (looks like windows 95 :D) maybe something went wrong when compiling the libraries, i don't know yet.
Do you have a QT theme set on that system?
You might just be seeing the default theme, I remember it being pretty terrible.

Quote
I put in pretty much everything but the X11 stuff for now, you should use the system version of those and they can be 64bit.
can you elaborate on how you determined which shared libraries to package?
I used "ldd" on the "DwarfTherapist" executable to see what it depended on and copied them all (following links and renaming) to a "libs" folder.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 04, 2013, 07:09:43 pm
@arclance: well it turned out that i had to recompile the libraries for qt, seems i was missing some of the prerequisites before i compiled the first time. looks like everything is running well without funky graphics anymore. i had to slightly modify the script to surround the last line with" marks when i had a space in the folder name. just something to be aware of.

i've packaged up another version with the qt 4.8.4 libraries as well as every other system library ldd reported for more testing, so if anyone wants to try it out, here it is:

Download Dwarf Therapist Linux v19.1 (http://rapidshare.com/files/1897783581/dt_linux_v19.1.tar.gz)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 05, 2013, 12:01:59 am
Just letting you know that I've noticed two minor problems in the latest version.

The first is that on my setup, the happiness column is blacked out when I start DT:
Spoiler (click to show/hide)

If I go and change an option, any option (eg the "Show profession desciption in the tooltip"option, either enabling or disabling) and then say "Yes" to "Would you like to apply the new options now (Read Dwarves)?", then the column changes back to it's usual state (ie yellow for Content, dark green for Happy etc) and continues to display correctly until DT is closed.  When DT is started again, the problem reappears.  Just doing a "Read Dwarves" does not fix the problem.

The second problem is that DT no longer maintains the vertical scroll position of the main grid of dwarves when a "Read Dwarves" is performed.  Instead, the grid repositions to the top of the list of dwarves on every Read, which was the old behaviour a few versions back before this was fixed.

Not too serious, but the second problem especially is annoying.  Let me know if I can provide any more details.

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 05, 2013, 04:29:02 am
I use the branch 16.1 and noticed something rather annoying. When I sort by skill, instead of the current XP for that skill, it actually sorts by a routine using the current level in that skill and stats to determine, who is the best candidate for that labour. It would be fine, except this routine doesn't take into account the skill rates. I play a mod with heavy emphasis on castes and the learning rates are in the 50-300 range, so they matter even more than stats.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 05, 2013, 10:53:12 am
I use the branch 16.1 and noticed something rather annoying. When I sort by skill, instead of the current XP for that skill, it actually sorts by a routine using the current level in that skill and stats to determine, who is the best candidate for that labour. It would be fine, except this routine doesn't take into account the skill rates. I play a mod with heavy emphasis on castes and the learning rates are in the 50-300 range, so they matter even more than stats.

adjust your global weights, set your skill to 1, attributes to 0.  Problem solved?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 05, 2013, 11:58:34 am
@Nkosi_SW: i've been able to reproduce both the issues you've brought up and i'll should have a fix out soon

@Maklak: i think i see what you mean. i guess you could get around this by grouping by caste and then sorting, but you'd have to know which caste's have which skill rates, which i'd imagine is a pain. i've poked around a bit and it should be fairly easy to add skill rate information to the skill/labor columns, as well as modifying the sort value to accommodate the rate gain as well.

this is also interesting for the roles and their rating system. i think it would make sense to take into account the skill rates when determining the ratings... as a higher skill rate should be better in all cases. obviously all this is more useful in mods, so i don't think vanilla should be affected much.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 05, 2013, 01:28:28 pm
@arclance: well it turned out that i had to recompile the libraries for qt, seems i was missing some of the prerequisites before i compiled the first time. looks like everything is running well without funky graphics anymore. i had to slightly modify the script to surround the last line with" marks when i had a space in the folder name. just something to be aware of.

i've packaged up another version with the qt 4.8.4 libraries as well as every other system library ldd reported for more testing, so if anyone wants to try it out, here it is:

Download Dwarf Therapist Linux v19.1 (http://rapidshare.com/files/1897783581/dt_linux_v19.1.tar.gz)
That does not work for me, I get a "Segmentation fault".
With gdb I get this backtrace.
Code: [Select]
_linux_v19.1_2/dt_linux_v19.1$ ./DT
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/dt_linux_v19.1_2/dt_linux_v19.1/DwarfTherapist...(no debugging symbols found)...done.
(gdb) run
Starting program: /media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/dt_linux_v19.1_2/dt_linux_v19.1/DwarfTherapist
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0xf6b7619a in __libc_start_main ()
   from /media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/dt_linux_v19.1_2/dt_linux_v19.1/./libs/libc.so.6
(gdb) bt full
#0  0xf6b7619a in __libc_start_main ()
   from /media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/dt_linux_v19.1_2/dt_linux_v19.1/./libs/libc.so.6
No symbol table info available.
#1  0x08063411 in _start ()
No symbol table info available.
(gdb)

What is the purpose of the
Code: [Select]
export QT_PLUGIN_PATH=
in your launch script?

You can download my build here if you want to look at it. (https://dl.dropbox.com/u/69178231/Dwarf_Therapist/Dwarf_Therapist_19.1_arclance.tar.gz)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 05, 2013, 01:55:57 pm
@arclance: well it turned out that i had to recompile the libraries for qt, seems i was missing some of the prerequisites before i compiled the first time. looks like everything is running well without funky graphics anymore. i had to slightly modify the script to surround the last line with" marks when i had a space in the folder name. just something to be aware of.

i've packaged up another version with the qt 4.8.4 libraries as well as every other system library ldd reported for more testing, so if anyone wants to try it out, here it is:

Download Dwarf Therapist Linux v19.1 (http://rapidshare.com/files/1897783581/dt_linux_v19.1.tar.gz)
That does not work for me, I get a "Segmentation fault".
With gdb I get this backtrace.
Code: [Select]
_linux_v19.1_2/dt_linux_v19.1$ ./DT
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/dt_linux_v19.1_2/dt_linux_v19.1/DwarfTherapist...(no debugging symbols found)...done.
(gdb) run
Starting program: /media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/dt_linux_v19.1_2/dt_linux_v19.1/DwarfTherapist
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0xf6b7619a in __libc_start_main ()
   from /media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/dt_linux_v19.1_2/dt_linux_v19.1/./libs/libc.so.6
(gdb) bt full
#0  0xf6b7619a in __libc_start_main ()
   from /media/Linux_Data/Dwarf_Fortress/Utilities/DwarfTherapist/dt_linux_v19.1_2/dt_linux_v19.1/./libs/libc.so.6
No symbol table info available.
#1  0x08063411 in _start ()
No symbol table info available.
(gdb)

What is the purpose of the
Code: [Select]
export QT_PLUGIN_PATH=
in your launch script?

You can download my build here if you want to look at it. (https://dl.dropbox.com/u/69178231/Dwarf_Therapist/Dwarf_Therapist_19.1_arclance.tar.gz)

the plugin_path was recommended on another forum, but i don't believe it's necessary. could the error be a 32/64 bit issue? i just tried out your build, and i can't launch it either i get this error:

Cannot mix incompatible Qt library (version 0x40704) with this library (version 0x40802)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 05, 2013, 02:34:34 pm
the plugin_path was recommended on another forum, but i don't believe it's necessary.
I looked it up and it looks like people include it to stop QT from loading parts of KDE.
I would leave it in then, it should not cause any problems if that is the case.

could the error be a 32/64 bit issue?
Could be a 32/64 bit issue.
What did you build 32 or 64bit?
If you made a 32 bit build and included a 64bit library or included 32bit libs in a 64bit build it might just crash like that.
It usually complains about the "ELF Class" being wrong if you do that though.
If you built 32bit did you cross-compile or not?
I don't know what kind of shenanigans that could cause since I have never done it.

i just tried out your build, and i can't launch it either i get this error:

Cannot mix incompatible Qt library (version 0x40704) with this library (version 0x40802)
That could be caused it trying to load parts of your QT build that I did not know need to be included in the "libs" folder.

Could you try adding
Code: [Select]
export QT_PLUGIN_PATH=""
to my launch script to see if does anything.

If that does not work could you run Dwarf Therapist with this script
Code: [Select]
#!/bin/sh
appname="DwarfTherapist"

dirname=`dirname $0`
tmp="${dirname#?}"

if [ "${dirname%$tmp}" != "/" ]; then
dirname=$PWD/$dirname
fi
cd "$dirname"
LD_LIBRARY_PATH="$dirname/libs":$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
strace $dirname/$appname "$@"
and post the output here so I can see what it is trying to load?

It might also be a problem with your QT build (possibly just because it is a newer version than mine) or from the little research I did from having parts of KDE installed.

I have tested my build on Fedora 14, Xubuntu 11.10, Debian Testing, and Debian Unstable so I suspect it has to do with your QT version or build options.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 05, 2013, 03:10:31 pm
the plugin_path was recommended on another forum, but i don't believe it's necessary.
I looked it up and it looks like people include it to stop QT from loading parts of KDE.
I would leave it in then, it should not cause any problems if that is the case.

could the error be a 32/64 bit issue?
Could be a 32/64 bit issue.
What did you build 32 or 64bit?
If you made a 32 bit build and included a 64bit library or included 32bit libs in a 64bit build it might just crash like that.
It usually complains about the "ELF Class" being wrong if you do that though.
If you built 32bit did you cross-compile or not?
I don't know what kind of shenanigans that could cause since I have never done it.

i just tried out your build, and i can't launch it either i get this error:

Cannot mix incompatible Qt library (version 0x40704) with this library (version 0x40802)
That could be caused it trying to load parts of your QT build that I did not know need to be included in the "libs" folder.

Could you try adding
Code: [Select]
export QT_PLUGIN_PATH=""
to my launch script to see if does anything.

If that does not work could you run Dwarf Therapist with this script
Code: [Select]
#!/bin/sh
appname="DwarfTherapist"

dirname=`dirname $0`
tmp="${dirname#?}"

if [ "${dirname%$tmp}" != "/" ]; then
dirname=$PWD/$dirname
fi
cd "$dirname"
LD_LIBRARY_PATH="$dirname/libs":$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
strace $dirname/$appname "$@"
and post the output here so I can see what it is trying to load?

It might also be a problem with your QT build (possibly just because it is a newer version than mine) or from the little research I did from having parts of KDE installed.

I have tested my build on Fedora 14, Xubuntu 11.10, Debian Testing, and Debian Unstable so I suspect it has to do with your QT version or build options.

your build works fine if i remove the Qt libraries from the libs folder. adding the plugin export had no effect. here's a link to the strace log (http://dl.dropbox.com/u/185441/strace.log). i have both qt 4.7.4 libraries and 4.8.4 libraries.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 05, 2013, 03:45:10 pm
^
From the strace I think the problem happens when it loads qt plugins from "qt4/plugins" (in "/usr/lib/i386-linux-gnu/qt4/plugins" on you computer) from your installed QT.
Because your install is of a different enough version it is unable to do that.
I have found that it also needs "libQtSvg.so.4", "libQtDBus.so.4", and "libQtXml.so.4" which did not show up in my ldd from the strace.

Here is a new version which I think should not use your system QT libs or plugins anymore. (https://dl.dropbox.com/u/69178231/Dwarf_Therapist/Dwarf_Therapist_19.1_arclance_3.tar.gz)
I put the "qt4/plugins" folder in the libs folder and made a qt.conf file to make DwarfTherapist only load the plugins from that folder.
Code: [Select]
[Paths]
Libraries = ./libs
Plugins = ./libs/qt4/plugins
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 05, 2013, 03:54:08 pm
^
From the strace I think the problem happens when it loads qt plugins from "qt4/plugins" (in "/usr/lib/i386-linux-gnu/qt4/plugins" on you computer) from your installed QT.
Because your install is of a different enough version it is unable to do that.
I have found that it also needs "libQtSvg.so.4", "libQtDBus.so.4", and "libQtXml.so.4" which did not show up in my ldd from the strace.

Here is a new version which I think should not use your system QT libs or plugins anymore. (https://dl.dropbox.com/u/69178231/Dwarf_Therapist/Dwarf_Therapist_19.1_arclance_3.tar.gz)
I put the "qt4/plugins" folder in the libs folder and made a qt.conf file to make DwarfTherapist only load the plugins from that folder.
Code: [Select]
[Paths]
Libraries = ./libs
Plugins = ./libs/qt4/plugins

i noticed those extra libraries as well in the strace. these changes work though, the script launches DT now without issue.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 05, 2013, 08:10:08 pm
@Nkosi_SW: i've been able to reproduce both the issues you've brought up and i'll should have a fix out soon

Sounds good.  Thanks splinterz.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 05, 2013, 10:40:25 pm
here's a weird bug

I used to be able to create a military labor optimization plan (I can do it manually by editing an exported optimization plan, however).

I add an "architect" job, assign it to my "ranged combat" custom role

then go to add a second, and it crashes
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on January 06, 2013, 05:22:48 am
I noticed two things while playing a testfort. Dont know if known issues or not.

1: Alchemy Savant has 0 xp in Alchemy? Description says he is good in alchemy, the tab shows no experience in it.
 - The alchemy savant has natural skill 10 in alchemy. He arrived with the skill. Therapist shows NO skill and NO Exp in the tab. (there should be a black box showing skill in the tabs, but it is blank.) Mouseover tooltip on the dwarf itself will show that he is lvl10 in alchemy.

2: Legion dwarf has 2000 strength, is "weak" for a legion dwarf (max 5000) Is protrait in the therapist as weak, while being twice as strong as other dwarves.
 - Legion dwarves are way stronger then normal dwarves. But since the unit description compares inside the caste, they are weak even with 2000-3000 strength, because their maximum is 5000. In the Therapist he is shown as weak as well, while being the strongest dwarf by far in the fortress. Maybe the Therapist should show dwarves on a relative scale from 0 to 5000.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 06, 2013, 07:19:22 am
I noticed two things while playing a testfort. Dont know if known issues or not.

1: Alchemy Savant has 0 xp in Alchemy? Description says he is good in alchemy, the tab shows no experience in it.
 - The alchemy savant has natural skill 10 in alchemy. He arrived with the skill. Therapist shows NO skill and NO Exp in the tab. (there should be a black box showing skill in the tabs, but it is blank.) Mouseover tooltip on the dwarf itself will show that he is lvl10 in alchemy.

2: Legion dwarf has 2000 strength, is "weak" for a legion dwarf (max 5000) Is protrait in the therapist as weak, while being twice as strong as other dwarves.
 - Legion dwarves are way stronger then normal dwarves. But since the unit description compares inside the caste, they are weak even with 2000-3000 strength, because their maximum is 5000. In the Therapist he is shown as weak as well, while being the strongest dwarf by far in the fortress. Maybe the Therapist should show dwarves on a relative scale from 0 to 5000.

1. this should be an easy fix, in game_data.ini the under [labors] scroll down to 65/name = Alchemy and change the skill from -1 to 15. since this wasn't used in vanilla i don't think it was ever set. i'll make sure to fix it as well in the next release.

2. if it's compared on a absolute scale of 0-5000, then the descriptions (ie. very weak, strong, etc..) don't match the descriptions in the game, which may lead to confusion, that's why i ended up putting in the caste attribute descriptors. i also assumed that if someone is playing a mod with a crapton of castes, they'll probably be paying attention to what castes are being assigned to what labors/military. (ie. look for warrior castes and assign them to military first, then look elsewhere)

this also only affects the descriptor, and the drawn square/number/thinger in the box. sorting always uses the absolute values.

now to aid in this confusion, i could add extra caste information on the tooltips such as 'very weak, for a warrior caste' or something along those lines. the other last resort if it's too painful is to add in an option in to draw/describe attributes based on the absolute scale.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on January 06, 2013, 03:15:55 pm
Ok, thanks for the quick answer. First one is an oversight that is irrelevant to vanilla DF, so it was overlooked and will be fixed. Good. Second one is a design choice to meet ingame description with therapist. Understandable from my point of view as well. I just wanted to report both, because I didnt knew if it was a design choice, or not.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Relnor on January 06, 2013, 03:27:49 pm
Sorry if anyone else asked, but - Therapist seems to stop showing Migration waves after the 10th. Once it reaches the 10th it just starts adding new dwarves to the bottom of the 10th wave.

Is there any way to make the Therapist show waves after 10, or should I just start marking the last dwarf in the wave with a nickname to know where the next migrant wave starts ?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on January 06, 2013, 06:16:25 pm
Would it be possible to make the Professions pictures editable?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 06, 2013, 06:50:06 pm
Ok, thanks for the quick answer. First one is an oversight that is irrelevant to vanilla DF, so it was overlooked and will be fixed. Good. Second one is a design choice to meet ingame description with therapist. Understandable from my point of view as well. I just wanted to report both, because I didnt knew if it was a design choice, or not.
no worries, thanks for the reports :)

Would it be possible to make the Professions pictures editable?
if you meant the custom professions, you can to a degree. if you meant the default profession icons, yes it's possible. right now they're packaged as an internal resource, but i suppose i could just leave them in a folder and they could be replaced.

Sorry if anyone else asked, but - Therapist seems to stop showing Migration waves after the 10th. Once it reaches the 10th it just starts adding new dwarves to the bottom of the 10th wave.

Is there any way to make the Therapist show waves after 10, or should I just start marking the last dwarf in the wave with a nickname to know where the next migrant wave starts ?
which Therapist / OS are you using?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 06, 2013, 07:31:33 pm
version 19.2 has been released:

Patch Summary

see the project home for full patch notes and more details on the skill rate experience bonuses.

Project Home // Download // Full Patch Notes (http://code.google.com/r/splintermind-attributes/)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on January 06, 2013, 10:50:41 pm
Yeah, I meant just the pictures themselves. I'd find the professions much easier to read if they were solid blocks (like the happiness indicators) with symbols inside. For example:

Weaponsmith: dark grey with a /
Armoursmith: dark grey with a [
Warsmith (custom): dark grey with a / and a [

I did a tileset like this way back but can't find it. It must be on another hard drive...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 07, 2013, 05:29:33 am
I think I've found a problem with Highest Moodable Skills, but the problem may be with DF itself rather than DT.  Anyway, I thought I'd post here first and get people's opinions.

I had a dwarf who was Legendary +5 in Armouring and Metalcrafting (as well as a couple of other non-moodable skills), but I deliberately manipulated his experience so that his Armouring had higher skillpoints (31,332 to Metalcrafting's 30,838), and DT dutifully reported that the highest moodable skill was Armouring.

However, when that dwarf had a mood, he created a Metalcraft artifact (an earring).

Does anyone have an idea why this happened?  Does DF take something besides numerical skill level in to account when determining Highest Moodable Skill?

I have screenshots and a save if anyone needs to have a look.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 07, 2013, 06:07:44 am
I think I've found a problem with Highest Moodable Skills, but the problem may be with DF itself rather than DT.  Anyway, I thought I'd post here first and get people's opinions.

I had a dwarf who was Legendary +5 in Armouring and Metalcrafting (as well as a couple of other non-moodable skills), but I deliberately manipulated his experience so that his Armouring had higher skillpoints (31,332 to Metalcrafting's 30,838), and DT dutifully reported that the highest moodable skill was Armouring.

However, when that dwarf had a mood, he created a Metalcraft artifact (an earring).

Does anyone have an idea why this happened?  Does DF take something besides numerical skill level in to account when determining Highest Moodable Skill?

I have screenshots and a save if anyone needs to have a look.

was it possible that his armouring skill had become rusty?

edit: looking at the wiki, armorer and metalsmith both have the same chance to have a mood, however it also states that the deciding factor is the dwarf's actual profession (not the custom profession) at the time the mood hits. it also doesn't say if 'highest' is determined by actual experience, or simply the rating (legendary +5).

check the actual profession of the dwarf when the mood hit?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on January 07, 2013, 06:36:24 am
The higher the skill level, the longer it takes to get rusty. Unfortunately I don't have any child moods that weren't either fairly recent or possessions, but maybe someone else can chime in on how long it takes for a non-working dwarf to lose that level of skill.

I've had moods that didn't use the skill with the highest raw XP. Maybe it has something to do with the skill ID numbers.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 07, 2013, 07:30:50 am
was it possible that his armouring skill had become rusty?

Neither Armourer nor Metalcrafter skills were rusty.

edit: looking at the wiki, armorer and metalsmith both have the same chance to have a mood, however it also states that the deciding factor is the dwarf's actual profession (not the custom profession) at the time the mood hits. it also doesn't say if 'highest' is determined by actual experience, or simply the rating (legendary +5).

check the actual profession of the dwarf when the mood hit?

When I deleted his custom profession, the profession shown was "Metalsmith".  The wiki (http://dwarffortresswiki.org/index.php/Metalsmith) says this is shown when a dwarf has skills in more than one metalsmith catergory, so this is not much use.

I've had moods that didn't use the skill with the highest raw XP. Maybe it has something to do with the skill ID numbers.

This is the crux of the matter.  If DT is using highest raw XP to determine Highest Moodable Skill, but DF is using something else in certain situations, then we need to determine what criteria DF is using and duplicate it so DT accurately reports the Highest Moodable Skill.

Should I post in the Dwarf Mode forum asking for help about how DF determines Highest Moodable Skill in this situation?  Would it help if I uploaded the save for you to have a look at splinterz? 
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 07, 2013, 08:03:58 am
was it possible that his armouring skill had become rusty?

Neither Armourer nor Metalcrafter skills were rusty.

edit: looking at the wiki, armorer and metalsmith both have the same chance to have a mood, however it also states that the deciding factor is the dwarf's actual profession (not the custom profession) at the time the mood hits. it also doesn't say if 'highest' is determined by actual experience, or simply the rating (legendary +5).

check the actual profession of the dwarf when the mood hit?

When I deleted his custom profession, the profession shown was "Metalsmith".  The wiki (http://dwarffortresswiki.org/index.php/Metalsmith) says this is shown when a dwarf has skills in more than one metalsmith catergory, so this is not much use.

I've had moods that didn't use the skill with the highest raw XP. Maybe it has something to do with the skill ID numbers.

This is the crux of the matter.  If DT is using highest raw XP to determine Highest Moodable Skill, but DF is using something else in certain situations, then we need to determine what criteria DF is using and duplicate it so DT accurately reports the Highest Moodable Skill.

Should I post in the Dwarf Mode forum asking for help about how DF determines Highest Moodable Skill in this situation?  Would it help if I uploaded the save for you to have a look at splinterz?

definitely ask in the other forum as someone may have more insight as to what's happening. maybe it's randomly choosing between the two skills? i can poke around a bit if you upload the save.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 07, 2013, 01:21:50 pm
version 19.2 has been released

Working like a charm for me.  Thanks splinterz!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 07, 2013, 01:30:46 pm
definitely ask in the other forum as someone may have more insight as to what's happening.

I've created a new thread (http://www.bay12forums.com/smf/index.php?topic=121433.0) in the Dwarf Mode Forum.

i can poke around a bit if you upload the save.

Save is here (http://rapidshare.com/files/2185308983/HMS.zip).  The strange mood has already struck but the forge hasn't been claimed yet.

maybe it's randomly choosing between the two skills?

Might be hard to tell if this is the case, as I think the skill for the mood is choosen when the mood strikes, at the same time as the dwarf is chosen?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 07, 2013, 03:42:13 pm
version 19.2 has been released:

Patch Summary
  • added skill rates (experience bonuses) for castes. this includes a new column in the dwarf details, and tooltip information. normally this isn't visible at all in vanilla.
  • fixed some formatting issues on the column headers and counts
  • fixed alchemy skill and added missing military tactician skill (exclusively for mods)
  • fixed the happiness column showing black squares instead of colors on the initial load
  • fixed a crash when adding labors to an optimization plan
  • fixed the scroll bars not returning to their saved positions after a fresh read

see the project home for full patch notes and more details on the skill rate experience bonuses.

Project Home // Download // Full Patch Notes (http://code.google.com/r/splintermind-attributes/)
I only see one small cosmetic problem so far.
The column header text is slightly under the column header toggle indicator at the top of the label box.
(http://t.imgbox.com/adzugczM.jpg) (http://imgbox.com/adzugczM)
The skill rate changes seem to be working for mod casts.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: feelotraveller on January 07, 2013, 03:53:26 pm
I think I stumbled across a loose end.  One of my dwarfs had 'test2' listed as a role that they would be good at.  Only had agility as a contributing factor.  Perhaps a remnant?  (Although the therapist would not be wrong in this case to be suggesting her as a test crash dwarf.   ;))

Also I wonder if it would be possible to incorporate information about personality attributes blocking skill experience where relevant?  Case in point is when selecting a dwarf as broker/leader.  I would like to know that they can't gain pacifier experience or conversationalist skill when that is the case.

Kudos splinterz for your work on this.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Lycaeon on January 07, 2013, 04:44:25 pm
I was wondering whether it would be possible to list the syndromes each dwarf is afflicted with. Many mods use syndromes to give temporary or permanent boosts/debuffs to their citizens, but at the moment there's no direct way of telling what a dwarf has, so a toolbar that pulls this information would be very helpful.

Many thanks for your work on this invaluable resource, splinterz! :) I especially appreciate the addition of the new caste skill rates.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 07, 2013, 06:30:09 pm
@arclance: ok, i'll move it down a few more pixels.

@feelotraveller: dammit... i must have accidentally copied over a few test roles when i was adding preferences to the default roles, i'll make sure they're removed. i'll look into the conflicting traits and see what i can do.

@Lycaeon: i think that should be feasible, i'll check into it.

for anyone who's interested in the moodable skill problem brought up by Nkosi_SW, i posted an explanation in the dedicated thread. (http://www.bay12forums.com/smf/index.php?topic=121433.msg3934759#msg3934759)

as always, thanks for all the reports, it helps to improve DT all the time!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 08, 2013, 12:32:13 am
Thank you for quickly implementing skill rates. I just wanted the "sort by fitness for a job" to take into account the skill rates, but the tooltips are also useful.

Quote
Maybe the Therapist should show dwarves on a relative scale from 0 to 5000.
Seconded. In the military tab there are a few columns with Agility, Recuperation and so on. They display a number from -20 to +20, but that's relative to their caste, so it isn't really telling me much when I have lots of castes and I have to use tooltips to see the real values. I don't want to sort by one of the stat columns, because I already sort by other things. Just having these columns display 0-00 (((stat + 25)/50) and 00 for >99) would be much more useful. I simply don't care about values relative to the average for that caste. It is absolute values that matter anyway.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: laularukyrumo on January 08, 2013, 01:57:39 am
so....

the latest build isn't the 5/23/12 version.

odd.

You should really make a new thread if you've taken the reigns from Hecaterus/DwarfEngineer.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Lycaeon on January 08, 2013, 03:13:04 am
I realize this has been pointed out before, but dwarves that have name changes imposed by the syndrome CE_DISPLAY_NAME:X:Y:Z (Including vampires and werewolves) no longer show up in Dwarf Therapist.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 08, 2013, 09:28:36 am
I simply don't care about values relative to the average for that caste. It is absolute values that matter anyway.
I have to agree with this at least on the military screen.
Having both displayed would be nice though so you could compare absolute value between casts and relative values within casts.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 08, 2013, 01:55:37 pm
are you talking about attribute and trait default values? it was a mess tryi g to figure out the default trait values initially.  no work was ever done to categorize the modded castes, everything is scaled against a normal dwarf.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 08, 2013, 11:55:44 pm
are you talking about attribute and trait default values? it was a mess tryi g to figure out the default trait values initially.  no work was ever done to categorize the modded castes, everything is scaled against a normal dwarf.
The military screen has a bunch of stats: Strength, Agility, Toughness, Endurance, Recuperation, Disease Resistance. The tooltips display them properly (I think), but the grid view shows some wacky values: {-11, -7, -3, 0, 6, 9, 13, 20}. In the picture below, sorted by Disease Resistance and the order is correct, but the values tell me nothing and are sometimes out of order. I'm guessing they are based on things like "incredibly strong" in the description, which are relative to castes. Having absolute values, such as ((stat + 25) / 50) and 00 for > 99, would be much more useful. Another grid view with just stats, or adding things like Focus, Kinesthetic Sense and Spatial Sense to the military grid view would also be nice. If you want relative values, it would be more useful to base them on average for all current citizens, not castes they belong to.
(http://tnypic.net/yy6cr.png)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 09, 2013, 12:00:19 am
are you talking about attribute and trait default values? it was a mess tryi g to figure out the default trait values initially.  no work was ever done to categorize the modded castes, everything is scaled against a normal dwarf.
The military screen has a bunch of stats: Strength, Agility, Toughness, Endurance, Recuperation, Disease Resistance. The tooltips display them properly (I think), but the grid view shows some wacky values: {-11, -7, -3, 6, 9, 13, 20}. In the picture below, sorted by Disease Resistance and the order is correct, but the values tell me nothing and are sometimes out of order. I'm guessing they are based on things like "incredibly strong" in the description, which are relative to castes. Having absolute values, such as ((stat + 25) / 50) and 00 for > 99, would be much more useful. Another grid view with just stats, or adding things like Focus, Kinesthetic Sense and Spatial Sense to the military grid view would also be nice. If you want relative values, it would be more useful to base them on average for all current citizens, not castes they belong to.
To add to that it would be nice to have a grid view that shows what cast each dwarf is so you don't have to read their tooltips one at a time.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 09, 2013, 02:27:14 am
right now what's happening is that it's using the caste's defined bins to figure out the attribute descriptor (strong, weak, etc..) so it matches the text in game. for the actual drawing, the value is scaled down between -20 to 20, again based on the caste's bins. the other downside to doing this, other than the obvious confusion, is that the descriptor bins also only range from 0 to ~2500, not the potential cap of 5000.

using an absolute scale of 0-5000 will work, but most a fort's population (especially playing vanilla) will never reach close to that. so you'll have a lot of very small squares, and 4 digit numbers are too big to draw in most, if not all, people's grid cell dimensions.

so i'll try changing the drawing stuff to scale based on the population values, and then draw with 0-99/100 values, as you're right that the current -20 to 20 values are pretty useless for people using numbers in the grid.

a caste column for the grid is interesting as well. i'd like to modify the profession column to allow users to override the current icons with just colors and text or choose an icon and text like the custom profs if they want, and maybe the same sort of thing could be done with castes.

so many ideas, so little timmeee....

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 09, 2013, 11:53:13 am
a work around would b to create roles based on the attributes
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 10, 2013, 04:09:38 pm
v19.3

Download (DFFD) (http://dffd.wimbli.com/file.php?id=7184)


so changing the experience and skill levels to show the actual value rather than capping it had an unwanted side effect for vampires. it's pretty easy to spot them as they'll have crazy large skill ratings and experience values. there's a few ways to handle this, the easiest is simply hiding all the raw and actual values again, and only use the actual xp for the moodable skill stuff. i kind of like being able to see the raw values and the real experience numbers though.

another alternative would be to just set a value in the options to show those numbers, but it still conflicts with hiding/showing vampires. the most complex solution may be to modify the skill experience and rating for vampires if they're hidden. it's only for skills over the max (legendary +5) this has to be done for. any other ideas or input?

the traits in the tooltip is getting pretty huge now with the addition of conflicting skills and notes. is this even useful to have a block of text in the tooltip? should it be in a list like skills/roles? limited to top/bottom 20%? only show traits with conflicts/notes?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 11, 2013, 11:18:01 am
Sorting by skill is still bogus. All it does is it puts those with a selected labour above those with it deselected, but otherwise it is still useless and a regression. I remember some earlier version of Dwarf Therapist that at least were sorting skills by XP.

Quote
tweaked the skill/labour column sorting to weight skill rates and skill level equally
??? I haven't seen the code that does this, but this sounds like an incorrect way to sort by a skill, to put it politely.
The correct way is to divide the dwarves into two groups: labour enabled or disabled, in addition to any other grouping of them (by migration wave or whatever). Then sort each sub-group the following way:
This way dwarves who will take fewer jobs to make it to legendary + 5 are listed higher, which is exactly what I want. These "Related Roles" and their arbitrarily weighted percent values are bogus. As an example, when I sort by "Marksdwarf", I have a dwarf with 9 crossbow and 85% skill rate on top with 99% and my best marksdwarf with 230% learning rate and 80k XP is listed as 12th with 45% "Related Roles". This is a dwarvenly stupid way to show me who is best for the job!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 11, 2013, 12:05:43 pm
Sorting by skill is still bogus. All it does is it puts those with a selected labour above those with it deselected, but otherwise it is still useless and a regression. I remember some earlier version of Dwarf Therapist that at least were sorting skills by XP.

Quote
tweaked the skill/labour column sorting to weight skill rates and skill level equally
??? I haven't seen the code that does this, but this sounds like an incorrect way to sort by a skill, to put it politely.
The correct way is to divide the dwarves into two groups: labour enabled or disabled, in addition to any other grouping of them (by migration wave or whatever). Then sort each sub-group the following way:
  • Put Legendary + 5 on top and don't order them if you want to hide vampires. Otherwise skip this part.
  • If skill_rate is set to 0, don't divide by 0 and just put those dwarves last, but sort them by any XP they may have.
  • Sort the rest by minimum of (29000 - current_XP ) / (real_skill_rate) If the formulas on how stats affect XP per job and speed of the job are known, those should be factored into the real_skill_rate. 29000 is the XP needed for Legendary +5. If a skill rate is unknown, assume the same as others with that caste or 100% as a last resort.
This way dwarves who will take fewer jobs to make it to legendary + 5 are listed higher, which is exactly what I want. These "Related Roles" and their arbitrarily weighted percent values are bogus. As an example, when I sort by "Marksdwarf", I have a dwarf with 9 crossbow and 85% skill rate on top with 99% and my best marksdwarf with 230% learning rate and 80k XP is listed as 12th with 45% "Related Roles". This is a dwarvenly stupid way to show me who is best for the job!

there sorted by the calculated role fitting, which is based on a combination of skills, attributes, traits, preferences...

if you wanted it to sort by skill, then set the weights of attributes, traits, and preferences to 0.

your other suggestions are good ones, but the way Splinterz Dwarf Therapist is setup is to sort things based on the calculated role %.

There is an option inside that allows you to sort by skill exp (i.e. the old way of doing it).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 11, 2013, 12:36:59 pm
I missed this before, but you are correct, thistleknot. These settings are in File->Options->Roles.
I set the values to: Attributes 0.15, Skills 1.0, Traits 0.05 and Role preferences to 0.05 and sorting by skills is now saner, but still incorrect.

My assertion that this method of doing it is bogus still stands, however. Things like Starts, Skills and Traits are fundamentally different and you cannot make a weighted arithmetic average out of them, same as you can't make a weighted arithmetic average of temperature and mass and claim it means something.

Even if you could, there is no way to do it without knowing the formulas or at least substantial research into how skills influence stats. All I ever found was that high stats increase the speed of a job (but by how much is unknown) and of course that agility, strength and carry weight influence walking speed (there are formulas for this somewhere). There is some scattered data on things like "creativity makes engravings more varied" and some old research suggesting that material and item preferences influence quality of the item by a small margin, but beyond that I found nothing.

My conclusion so far is that (at least in my mod's case) skill level and skill rate are everything and stats barely even matter, except for soldiers and for walking speed.

Quote
the way Splinterz Dwarf Therapist is setup is to sort things based on the calculated role %.
I've noticed and am very unhappy about it. I'm trying to convince splinterz to fix it. How come no one noticed this bug before?

Quote
There is an option inside that allows you to sort by skill exp (i.e. the old way of doing it).
I haven't found it, but setting everything except skill to low weights alleviated the problem.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 11, 2013, 12:46:11 pm
thats why weights r user adjustable.

the option i believe to sort the old way is a checkbox in the options window

update:
mistaken, there is no old option (at least from the version I was using, v16.1), I think the only way to get it to sort by skill only is to set all non skill weights to 0.

the reason we have role %s is because we know some attributes train skills faster & some traits give dwarf's happy thoughts from doing that job.

any dwarf can gain skills, so if you want a great dwarf doing a job, then it's important to take into consideration his attributes which don't change as easily as skills do.

I remember when my highest skilled diagnoser HATED helping people and went insane and killed everyone.

that's why these role calculations exist, to help prevent angry CMD's.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 11, 2013, 01:43:26 pm
No. A way to search for a particular trait or material / item preference or sort by them would be useful. Forcing bogus "Related Roles" based on some arbitrary weights is counter-productive. Those values mean nothing and people trust them, so they are misleading. I was mislead by them!

For your CMD example, at the very least you want those weights set per-skill and not globally, but a way to sort the list of dwarves by "finds helping others very rewarding" and "devoted to duty" would be better.

Skills matter. Attributes may increase the speed some things are done, but aren't as important as skills. Heck, with Legendary skill most civilian jobs are blazing fast regardless of stats and military gains the important stats quickly anyway. CMD is an exception rather than the rule (so your argument is invalid) and you still want decent Diagnosis on that CMD, which trains slowly.

Quote
we know some attributes train skills faster & some traits give dwarf's happy thoughts from doing that job.
Where is this information? Wiki is useless as usual and I haven't been able to find any conclusive research on the forum.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 11, 2013, 01:59:52 pm
wow you're really going off on this stuff eh? alright so first, turn off the role sorting in the roles tab and see if that helps. skill, attributes, traits and preferences mean different things to different people. i prefer something similar to what you've got, with most of the emphasis on the skills. some other people i talked to preferred a higher weight on attributes, so i think i ended up leaving them all equally weighted. this is probably misleading for new users and i'll adjust it. what's really needed is some better documentation so that people can educate themselves on how the roles work.

if you've got any suggestions for changes to the default roles, by all means let me know and i'll make adjustments. it's a lot of bloody roles to go through myself. otherwise, make your own or modify the existing ones, you've got plenty of options! what exactly is your problem with roles that makes them so bogus? is it the default weights? the calculations?

you can find dwarfs by preference by using the preference window and clicking on a preference. traits are more involved in that you'd need to create a new grid full of trait columns and/or create a filter script.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 11, 2013, 02:50:24 pm
well, I disagree whole heartedly.

Yes, a legendary dwarf does build faster.  However, in my head.  A dwarf who has higher strength when masonry uses strength http://dwarffortresswiki.org/index.php/v0.31:Mason to do masonry, I imagine the higher the strength, the faster it goes (I have no reference for this other than the wiki has attributes for certain skills).

So I could have a legendary person doing the job, or I could have a BETTER dwarf in terms of mason attributes doing the job as well in hopes that he would be a better fit when he becomes legendary.

I tend to assume that certain traits, which control a dwarf's behavior fit to certain jobs.  CMD was a great example.  However, there are other labors, such as feed prisoner that relies on traits as well.

Now this is all subjective.  And there is a solution for it if you don't like it.  Disable the weights.  But I disagree that it is misleading.  Because if Dwarf A has better attributes than legendary Dwarf B, then I can train Dwarf A up to be legendary.  Traits affect a dwarf's thoughts, that can not be modified in game, hence there inclusion.

Now with legendary, just because a dwarf is legendary in a skill, DOESN'T mean he likes the job.

I think "satisfied with work lately" might have something to do with preferences as well as traits.

Quote
we know some attributes train skills faster & some traits give dwarf's happy thoughts from doing that job.
Quote
Where is this information? Wiki is useless as usual and I haven't been able to find any conclusive research on the forum.

see wiki
http://dwarffortresswiki.org/index.php/DF2012:Skill

Quote
    Traits:
        cannot be modified in-game.Verify
        affect which social skills gain experience (if the dwarf has X trait it will not gain experience in X skill) at all.
        have other in-game effects that can be useful for certain professions.
        give thoughts when performing certain activities.


No. A way to search for a particular trait or material / item preference or sort by them would be useful. Forcing bogus "Related Roles" based on some arbitrary weights is counter-productive. Those values mean nothing and people trust them, so they are misleading. I was mislead by them!
For your CMD example, at the very least you want those weights set per-skill and not globally, but a way to sort the list of dwarves by "finds helping others very rewarding" and "devoted to duty" would be better.

that used to be the way preferences were done, via built in filter.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 11, 2013, 02:54:40 pm
Quote
wow you're really going off on this stuff eh?
Yes, I tend to feel strongly and overreact about some things. Especially when they are wrong and it is so obvious that they shouldn't be wrong in the first place. In case of Dwarf Therapist I respect your work on maintaining it, but not the decision to port the roles from dwarven guidance councillor and make them so important.

Quote
alright so first, turn off the role sorting in the roles tab and see if that helps.
I deselected "Include role ratings when sorting labour columns" and "Include role ratings when sorting skill columns" and it didn't help. Well, after changing the weights it works slightly better.

Quote
if you've got any suggestions for changes to the default roles, by all means let me know and i'll make adjustments.
Other than gutting it out completely because the system is inherently wrong and adjustments won't help much? Well, these are some ideas, but they will make comparing suitability to different roles impossible:

* For most civilian labours, like Masonry use just XP and skill rates, I've already given you the formula.
* For stone detailing creativity may be important, but not to me.
* For military I guess at least average physical stats and recuperation and disease resistance are important, but I just don't see a way of making a weighted average based on them. Different things are important to different people.

My way of doing this would be:
* Assume that using a skill gives constant amount of XP, regardless of stats and traits and sort all skills and labours in grid view by XP and learning rates only.
* Include a sortable grid view with stats. (The one we have works for sorting, but not displaying stats.)
* Include a sortable grid view with traits. That way people can sort by helpfulness, choose a dutiful dwarf near the top of the list and make her the CMD.
Give warning to any tooltips with the roles that the values there are arbitrary and should not be relied upon.

Quote
what exactly is your problem with roles that makes them so bogus? is it the default weights? the calculations?
I already explained that you cannot just make a weighted arithmetic average out of skills and stats, because it is meaningless. Even if you could, the weights are unknown. For things like probability of a disease based on blood pressure, temperature, weight, age and so on you can use optimisation or data mining to find something that works, but here there doesn't seem to be any data, just people and their preferences. The entire way of thinking that lead to introducing these roles is fundamentally wrong and based on wrong assumptions. A dead give-away was that you wanted to include skill rates with a weight, instead of tying them with current level of skill, as they no longer matter after Legendary +5.

Quote
you can find dwarfs by preference by using the preference window and clicking on a preference.
Lol, this is kinda fun for jokes. I never explored that part of DT, because I never needed it for anything.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 11, 2013, 03:10:30 pm
Quote
well, I disagree whole heartedly.
Likewise.

Quote
Yes, a legendary dwarf does build faster.  However, in my head.  A dwarf who has higher strength when masonry uses strength http://dwarffortresswiki.org/index.php/v0.31:Mason to do masonry, I imagine the higher the strength, the faster it goes (I have no reference for this other than the wiki has attributes for certain skills).
Keywords: "imagine" and "in your head". You have no evidence to back it up. I've seen skill levels do wonders to how fast something is done. Mining and cutting wood are the easiest to notice, but a legendary crafter will often barely enter the workshop when he is done. If stats have any influence on how fast the work is done, it is overshadowed by the skill anyway.

Quote
So I could have a legendary person doing the job, or I could have a BETTER dwarf in terms of mason attributes doing the job as well in hopes that he would be a better fit when he becomes legendary.
I can agree with you on this: a very strong and agile worker is better at the same skill level, because he walks faster both when and when not carrying heavy materials. Even if something is done slightly faster at legendary skill thanks to high stats, it still won't matter as much as say, efficient fort layout.

Quote
see wiki http://dwarffortresswiki.org/index.php/DF2012:Skill
You think I haven't seen it? This is useless. There are no formulas or numbers or links to research with them.

True, traits cannot be modified in game, influence which social skills can be learned (like liar) and can decide how likely a dwarf is to take a break or ignore a patient. The things like "likes tradition" can give good or bad thoughts when talking to nobles. So what? It only really matters for doctors and they are an exception rather than the rule.

Stats do matter for the military, I have to admit that much. Strength and Agility give better walking and swinging speed, Endurance means fighting longer before getting exhausted and Toughness, Recuperation and Disease Resistance increase resistance to harm. "Prone to anger" trait may lead to rages which can help too.

I think I see why we disagree. When selecting a Dwarf for a job, I think you ask "Which one of you will work the best what Legendary +5?" For me the question is "Which one of you will get to Legendary +5 the fastest and wasting the least materials?"
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 11, 2013, 03:13:54 pm

Keywords: "imagine" and "in your head". You have no evidence to back it up. I've seen skill levels do wonders to how fast something is done. Mining and cutting wood are the easiest to notice, but a legendary crafter will often barely enter the workshop when he is done. If stats have any influence on how fast the work is done, it is overshadowed by the skill anyway.

well, lets disagree then.  I see the wiki, the wiki has attributes for skills.  We used them.

But you can adjust their attribute weight, which you already have to compensate for this.

you acknowledge some attributes are useful for speed (such as walking).  I believe they are useful for the workshops as well.  I have no info to tell me they are not, I have info telling me they are used for skills on the wiki.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Intrinsic on January 11, 2013, 04:15:47 pm
Found a crash bug in 19.3. When i go to open the Skill Legend the 1st time the program just crashed, the 2nd time it openned the window but upon resizing it gets sort of corrupted, then i clicked the X to close it and bam another crash. Just now it didn't crash but again the window still got corrupted(not really corrupted, but i guess you'll see the issue when you try)

Edit: Just to say i don't know how long this bug has been present as i've been away for a while, the last version i had is 17 and that works fine.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 11, 2013, 04:28:52 pm
Quote
I deselected "Include role ratings when sorting labour columns" and "Include role ratings when sorting skill columns" and it didn't help. Well, after changing the weights it works slightly better.
if you have the role stuff off of the labor columns the weights don't affect anything. it's purely sorting on the rating and the skill rate. the problem is that it's combining those two elements, which you disagree with. i'll run some tests to compare with your suggested method and consider changing it, since i think it was you who asked for it in the first place.

hey i've got no problem gutting the default roles if people think they're downright awful. you're the first one to complain so vehemently, and i'm willing to look past the blatant insults to listen to what you've got to say.
Quote
For most civilian labours, like Masonry use just XP and skill rates, I've already given you the formula.
according to the wiki, these labors don't exclusively use only skill rates/xp. yes it's assumed that skills use the attributes associated with them. not every skill may be accurate. it's true that most, if not all the roles are based on wiki/forum information found because i've got no other data. if you're saying the wiki is full of shit, well i guess i'd like a few other people to back that up. again it sounds like you're have a major issue with the default roles right? have you overridden most of them, or you're just upset because you feel it misleads new users?
Quote
Include a sortable grid view with stats. (The one we have works for sorting, but not displaying stats.)
what stats aren't capable of sorting? do you mean attributes?
Quote
Include a sortable grid view with traits. That way people can sort by helpfulness, choose a dutiful dwarf near the top of the list and make her the CMD.
sure, this isn't an issue, you can already do this yourself. i can include a view in the default set though, that's a good idea.
Quote
I already explained that you cannot just make a weighted arithmetic average out of skills and stats, because it is meaningless. Even if you could, the weights are unknown. For things like probability of a disease based on blood pressure, temperature, weight, age and so on you can use optimisation or data mining to find something that works, but here there doesn't seem to be any data, just people and their preferences. The entire way of thinking that lead to introducing these roles is fundamentally wrong and based on wrong assumptions. A dead give-away was that you wanted to include skill rates with a weight, instead of tying them with current level of skill, as they no longer matter after Legendary +5.
you don't need to know the weights, the weights are whatever a user decides. the system doesn't care. you love your skills, go ahead, weigh them as 10x that of everything else. maybe you want to override that on a specific role, or leave skills out of the next role. what's so wrong with that? what's wrong with the design that a user should be able to decide what to value more for a particular job?

speaking of wrong assumptions, in the role calculations, the raw level and experience are never used. it's capped at legendary +5, since for a job in DF higher than 20 doesn't matter. they are tied to the current level of skill, they're just valued equally (which i think i clearly mentioned may need adjustment).
Quote
Give warning to any tooltips with the roles that the values there are arbitrary and should not be relied upon.
really now, if you can't compose yourself enough to have a decent discussion i'll be hard pressed to keep taking you seriously.

Edit:
Quote
I think I see why we disagree. When selecting a Dwarf for a job, I think you ask "Which one of you will work the best what Legendary +5?" For me the question is "Which one of you will get to Legendary +5 the fastest and wasting the least materials?"
i think this is key. you don't want attributes, traits or preferences in your roles at all. so is the system totally flawed in it's concept, or are you just unable to figure out how to make it work for you?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Lycaeon on January 11, 2013, 05:01:49 pm
Though I disagree with Maklak's argument of the concept, I do see his point about caste skill rates being weighted more highly than attributes and traits. Over the course of a fortress's lifetime, most dwarves, barring the rarity of strange moods, will reach legendary through sheer effort, repeating dozens of reactions to produce goods in order to gain enough experience. This is the most time-consuming portion of training a dwarf to legendary, and it is to this portion that skill rates have the highest contribution, and so should be duly considered when assigning unskilled dwarves belonging to a caste-system with differing skill rates.

Of course, attributes, traits, and preferences have significant roles as well, and so must also be weighted (Especially as the majority of DF games played have no differing skill rates). As such, perhaps an option to weigh/not weigh skill rates would serve as a compromise?

In the end, it is your effort splinterz, and so it is entirely up to you how you want Dwarf Therapist to work. Regardless of what happens, I will greatly appreciate the end result. Thank you! :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 11, 2013, 05:17:25 pm
Quote
I think I see why we disagree. When selecting a Dwarf for a job, I think you ask "Which one of you will work the best what Legendary +5?" For me the question is "Which one of you will get to Legendary +5 the fastest and wasting the least materials?"

yes.  That's why skill ratings (before being combined into a role rating) take into account the caste's skill rate learning.  I believe it's something like skill rating * % of skill increase rating.  Example, if a wood savant (not sure if wood savants learn carpentry faster) has a 130% increase in skill learning, than the skill % * 130% would be the new skill rating before being combined with attributes and traits and preferences % before being combined into an overall percent.

Again, I'm not entirely sure, but that was my general idea of it when talking with Splinterz.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: feelotraveller on January 11, 2013, 05:23:35 pm
Have I missed the point?

Creativity (in my experience, repeatedly, but I have not kept hard numbers  :)) leads to much higher quality works in Masons/Carpenters/Craftsdwarf's/Weaponsmiths etc., and Analytic Ability to higher quality meals and mechanisms.  At least for moderately skilled dwarfs.  Perhaps this effect disappears at Legendary+5?

I find attributes important, traits well worth considering and preferences 'can' be make or break.  Sure it is comparing plump helmets to prickle berries but that they are all factors in the equation of the best dwarf for the job seems beyond doubt.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 11, 2013, 05:28:54 pm
Though I disagree with Maklak's argument of the concept, I do see his point about caste skill rates being weighted more highly than attributes and traits. Over the course of a fortress's lifetime, most dwarves, barring the rarity of strange moods, will reach legendary through sheer effort, repeating dozens of reactions to produce goods in order to gain enough experience. This is the most time-consuming portion of training a dwarf to legendary, and it is to this portion that skill rates have the highest contribution, and so should be duly considered when assigning unskilled dwarves belonging to a caste-system with differing skill rates.

Of course, attributes, traits, and preferences have significant roles as well, and so must also be weighted (Especially as the majority of DF games played have no differing skill rates). As such, perhaps an option to weigh/not weigh skill rates would serve as a compromise?

In the end, it is your effort splinterz, and so it is entirely up to you how you want Dwarf Therapist to work. Regardless of what happens, I will greatly appreciate the end result. Thank you! :)
personally i agree completely with skills and their rates being worth more than attributes, traits and preferences. i usually set the skill weight very high and drop the others much lower to achieve this. the nice thing about applying the skill rates with a weight is it's easy to allow the user to set a weight themselves. the bad thing is that it adds more ui clutter, especially if the skill rate weight is allowed to be overridden for every skill! however Maklok's suggestion may give better results for the ratings, i need to test it out.

there's been a lot of effort (myself and others) put into the branch, but the direction is always community driven. regardless of the amount of tact when providing feedback, i still appreciate it and try to make whatever changes are necessary.
Quote
I think I see why we disagree. When selecting a Dwarf for a job, I think you ask "Which one of you will work the best what Legendary +5?" For me the question is "Which one of you will get to Legendary +5 the fastest and wasting the least materials?"
... skill rating * % of skill increase rating.  Example, if a wood savant (not sure if wood savants learn carpentry faster) has a 130% increase in skill learning, than the skill % * 130% would be the new skill rating...
no it's not doing that, and that's one of the major problems he's got. i used an equally weighted average between the skill experience and the skill rate, because i figured i wouldn't want a low level with high skill rate jumping up over a higher skill level with lower rate. this may not have been the best decision, which is fine! that's the reason there's patch notes and i asked for feedback, so it can be adjusted, because i don't get to play to know, i'm always coding :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 11, 2013, 05:48:55 pm
Thanks for the latest build, splinterz.  Highest moodable skill now working beautifully for my dwarves with raw skill levels above 20.

Malak, I think you need to pull your head in a bit mate, as we say here in Australia.  Coming in to a thread demanding that the volunteer developer change his code to what you want, questioning why nobody has noticed this obvious bug before (and therefore implying everyone else in the thread is an idiot), and generally using confrontational, aggressive and overbearing language is no way to win friends and influence people.

The real answer to your demands isn't within unknown formulas buried in DF.  It's that everyone plays DF differently and therefore uses DT differently too.  The reason us poor idiots haven't noticed this "obvious bug" before you came along in all your brilliance and revealed it to us is that for some of us, it's not a bug at all.  When I play, I actually have the role skill weighting set to zero, and other roles weighted at various levels to achieve what I want in DF.  Others can do differently if they want.  We don't all do things your way.

Why not be more constructive to get things working the way you want, such as learning more about the program (you apparently weren't even aware about the Default Rating settings under options), modifying these and the settings in the config files, and then if if all that fails, politely suggesting some changes to the code that will still allow others to do things the way they want too?  If you still aren't happy with the outcome, well, you are quite free to go and fork the code for DT and make it work exactly the way you want.



Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 11, 2013, 05:56:52 pm
Quote
i used an equally weighted average between the skill experience and the skill rate, because i figured i wouldn't want a low level with high skill rate jumping up over a higher skill level with lower rate
can you give an example?  This intrigues me, as I too wouldn't want a higher skilled dwarf to be outranked by a lower skilled dwarf with a higher learning rate.

In my eyes, two equally skilled dwarfs would be outranked by the higher learning rate
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on January 11, 2013, 06:59:29 pm
I wouldn't mind a pre-made option for Raw XP in the same vein as the options for caste, migration wave, squad, etc. I liked the old behaviour because it allowed me to see who could be nudged from Dabbling general handydwarf to a Novice able to be taught the job as a trade (it just bugs me seeing old first-year skills hanging around at Dabbling. I wish Toady would make them rust away to nothing). Mostly this was used for Masonry, since it's one of those jobs that's both useful on everyone and better done by a skilled dwarf.

Speaking of workshop skill limits, have you made any headway on determining skill rust? There's pretty good evidence that at higher skill levels, rust doesn't work properly. The game doesn't display a (Rusty) note, but the skill is still treated as Dabbling for the purposes of workshop assignments. I don't know if this translates into quality loss the way 'proper' rust does, but it does make a mess of workshop profiles.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 11, 2013, 07:09:17 pm
Quote
i used an equally weighted average between the skill experience and the skill rate, because i figured i wouldn't want a low level with high skill rate jumping up over a higher skill level with lower rate
can you give an example?  This intrigues me, as I too wouldn't want a higher skilled dwarf to be outranked by a lower skilled dwarf with a higher learning rate.

In my eyes, two equally skilled dwarfs would be outranked by the higher learning rate
yeah i explained it poorly, it works more like a bonus now if it helps to think of it that way. since the rates can range from 0 to 500% i was tentative in applying it directly to the skill level/xp by doing something like current xp/29k * skill rate. you can easily have situations where a lower level with a high skill rate will rank higher than an almost maxed skill with a normal skill rate.

it's also important to note that what's used in the roles doesn't have to be used for the sorting. they're calculated separately.

currently if the levels/xp are equal the higher rate will end up with a bonus and thus a higher rating.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 11, 2013, 07:24:23 pm
I wouldn't mind a pre-made option for Raw XP in the same vein as the options for caste, migration wave, squad, etc. I liked the old behaviour because it allowed me to see who could be nudged from Dabbling general handydwarf to a Novice able to be taught the job as a trade (it just bugs me seeing old first-year skills hanging around at Dabbling. I wish Toady would make them rust away to nothing). Mostly this was used for Masonry, since it's one of those jobs that's both useful on everyone and better done by a skilled dwarf.

Speaking of workshop skill limits, have you made any headway on determining skill rust? There's pretty good evidence that at higher skill levels, rust doesn't work properly. The game doesn't display a (Rusty) note, but the skill is still treated as Dabbling for the purposes of workshop assignments. I don't know if this translates into quality loss the way 'proper' rust does, but it does make a mess of workshop profiles.
for the option were you talking about another way to group dwarves? did i break one of them?

as far as i can tell the rusting is totally broken. the only thing that seems to work is checking for skills actually degrading and losing xp. at higher levels i believe what happens is the rust level tops out. what it does is it increases a last used counter to the skills unused limit, then it increases a rust counter. once the rust counter hits it's max, it increases a demotion counter. once that hits it's max, it adds a 'layer' of rust.

i tested with fast rusting, and the rust on a skill won't go over 6 'layers'. when it attempts to, the tag is removed from the skill (rusty, v.rusty) as you described, and from that point on, rusting seems to be completely ignored. no new layers, no counters increase or anything.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 11, 2013, 09:10:55 pm
I was looking at the code for how skill rates are included.

here it is
Code: [Select]
            if(m_df->show_skill_rates()){
                skill_rate_value = s->skill_rate() / 500; //skill rate is capped at 500%, default is 100%
                aspect_value += skill_rate_value;
                aspect_value /= 2.0f; //equally weigh skill rate gain and the actually skill rating, may need adjustment
            }

So if I'm reading this correctly
it's skill rate / 500 (vanilla would be 100 / 500)
Vanilla skill_rate_value = .2
then the aspect_value (which is the skill exp / 29k) = aspect_value + skill_rate_value (so far, for vanilla, (skill exp / 29k) + .2)
then divide this by 2?

how does that make sense?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 11, 2013, 11:17:54 pm
I did some research on the subject http://www.bay12forums.com/smf/index.php?topic=121573.msg3944723#msg3944723 and my conclusions are that:
* Speed (based on agility, strength and encumberance) and not attributes directly influence how fast a task at a workshop is performed.
* Much to my surprise, attributes seem to influence quality, but I didn't make enough beds to be certain.

Quote
if you have the role stuff off of the labour columns the weights don't affect anything. it's purely sorting on the rating and the skill rate. the problem is that it's combining those two elements, which you disagree with. I'll run some tests to compare with your suggested method and consider changing it, since I think it was you who asked for it in the first place.
I agree with combining skill and skill rate, I just disagree with combining them incorrectly.
Yes, I asked for skill rates, but I won't be the only one benefiting from them. For example Masterwork Mod has castes and learning rates too.

Quote
hey i've got no problem gutting the default roles if people think they're downright awful. you're the first one to complain so vehemently, and i'm willing to look past the blatant insults to listen to what you've got to say.
Hey, I was restraining myself, damnit. Well, I guess some of what I said may have been seen as insults. Anyway, at my best I can provide lots of useful feedback and at my worst I get into arguments.

Quote
if you're saying the wiki is full of shit, well i guess i'd like a few other people to back that up. again it sounds like you're have a major issue with the default roles right? have you overridden most of them, or you're just upset because you feel it misleads new users?
Well, I said that some info on the wiki is useless, but overall I think the wiki is good, it just doesn't have all the data and formulas, even those it used to have for 40d. Vague statements that "Archery affects ranged combat", when the research says it barely influences enemies' dodge chance or "These attributes are related to this skill" just don't tell me much when I need numbers and formulas for calculations. Don't tell me, this wasn't frustrating when you were implementing the hints for best roles.

As to roles, well I used to rely on them, because "hey, a guy with 80% marksdwarf has to better than one with 20%, right?" For unmodded game it didn't really matter much. Besides I assumed that whoever implemented this feature based it on some solid information and not guesswork. Even when DT sorted things mixing high and low skills, I still believed that it was because attributes changed the amount of XP per job (they don't). I only discovered how flawed this system was when I got a mod with skill rates and the recommendations became too misleading to bear. My guess is that most people either ignore the recommendations or assume they're right and don't question them. Besides, providing hints based on some heuristics is OK, but sorting by them should be an option with sorting by XP as default.

Quote
Quote
Include a sortable grid view with stats. (The one we have works for sorting, but not displaying stats.)

what stats aren't capable of sorting? do you mean attributes?
Yes, I meant attributes. They are sorted correctly, they are just displayed with a few discrete values tied to descriptions in the character sheet and it can and should be improved. I already gave you an idea to just put numbers from 0 to 00. Another possibility is to find the minimum and maximum for current population and scale that from -20 to +20. The only downsides are that this will be weird for a small number of dwarves (could be remedied by say, having minimum be no greater than 700 and maximum no less than 1200) and that as the military progresses, the civilians will seem to regress.

Quote
you don't need to know the weights, the weights are whatever a user decides. the system doesn't care. you love your skills, go ahead, weigh them as 10x that of everything else. maybe you want to override that on a specific role, or leave skills out of the next role. what's so wrong with that? what's wrong with the design that a user should be able to decide what to value more for a particular job?
There are default weights. My guess is that few users will be capable of improving them. I also don't think an aggregating function based on weighted arithmetic mean is much good here. However, after all this discussion, I'm inclined to agree that this system can be usable for some things, tweaked or even "disabled". Oh, and since I'm a user, this is a contradiction: "you don't need to know the weights, the weights are whatever a user decides".

Quote
speaking of wrong assumptions, in the role calculations, the raw level and experience are never used. it's capped at legendary +5, since for a job in DF higher than 20 doesn't matter. they are tied to the current level of skill, they're just valued equally (which i think i clearly mentioned may need adjustment).
If the XP level for a Legendary +5 is listed as "29000+" or "MAX" and all those dwarves are treated as equals, I'm fine with it. However for two nearly identical dwarves, one of whom is 90% to next level and the other 10% to next level, the more advanced one should be higher. This is why I think sorting by (capped) XP rather than skill level would be a good idea. 

Quote
Quote
Give warning to any tooltips with the roles that the values there are arbitrary and should not be relied upon.
really now, if you can't compose yourself enough to have a decent discussion i'll be hard pressed to keep taking you seriously.
So now you're insulting me back. I am serious, at least add this info about roles to the manual. Speaking of which, a manual for DT would be a good idea. It is easy to just use DT for labour management, but it has some more esoteric stuff. For example I've read somewhere that it is possible to make lists of skills and assign those lists to dwarves, which would be faster than clicking each square separately for each wave of migrants.

Quote
Quote
I think I see why we disagree. When selecting a Dwarf for a job, I think you ask "Which one of you will work the best at Legendary +5?" For me the question is "Which one of you will get to Legendary +5 the fastest and wasting the least materials?"
I think this is key. you don't want attributes, traits or preferences in your roles at all. so is the system totally flawed in it's concept, or are you just unable to figure out how to make it work for you?
I had to think a bit on this one. The system has been working against me so far and I still say it is flawed in it's concept. There are some ways to aggregate functions: first normalise them, then use arithmetic, geometric or max / min methods. There is also a method with distance from an "I'm happy with this" spot. All of them have their own problems, if only in choosing weights that make sense.

Quote
Of course, attributes, traits, and preferences have significant roles as well, and so must also be weighted (Especially as the majority of DF games played have no differing skill rates). As such, perhaps an option to weigh/not weigh skill rates would serve as a compromise?
They are either different and matter or uniform and don't matter. It is automatic; making an option for this would be pointless, except maybe to avoid dwarves with low skills being above those with higher skills, but poor learning rates.

Quote
That's why skill ratings (before being combined into a role rating) take into account the caste's skill rate learning.  I believe it's something like skill rating * % of skill increase rating.  Example, if a wood savant (not sure if wood savants learn carpentry faster) has a 130% increase in skill learning, than the skill % * 130% would be the new skill rating before being combined with attributes and traits and preferences % before being combined into an overall percent.
This is wrong, because for very low skill the skill rate wouldn't matter, while an unskilled wood savant is obviously a better choice for a carpenter than a Novice, since he will get to Legendary +5 faster. You want to take ((29000 - current_XP) / skill_rate), since that's all the skill rates affect in the end. Now, for this not to screw up your current system and assuming you want to normalise to <0,1> at 100 skill rate, where 1 is more desired than 0, you'd have to take (1 - ans/290.0). So this should work:
Code: [Select]
int XP = (current_XP > 29000) ? 29000 : current_XP;
int rate = (skill_rate < 1)? 1: skill_rate;   // 0 or 1 doesn't really matter.
double jobs_left = (29000 - XP) / rate;  // Ignore division by 60.
double normalised_XP = 1.0 - jobs_left/290.0;    // This can be as low as -28999, but you don't want to train a skill with 1% learning rate anyway.
    // For things like 0 skill and 30% learning rate this will be -2.3333, which is quite sane, but you might still want to "cap the bottom".
    // For good learning rates, like 200%, this formula "pretends" that half the XP has already been generated.
Well, some edge cases, like a Legendary+5 at 1% learning rate and fast skill rust aren't considered, but for most things this should be fine.

Quote
Creativity (in my experience, repeatedly, but I have not kept hard numbers   leads to much higher quality works in Masons/Carpenters/Craftsdwarf's/Weaponsmiths etc., and Analytic Ability to higher quality meals and mechanisms.  At least for moderately skilled dwarfs.  Perhaps this effect disappears at Legendary+5?
My own research inconclusively indicates that you are correct. I assumed the info for 40d about quality was still valid, because newer versions of it don't have a nice spreadsheet.

Quote
the nice thing about applying the skill rates with a weight is it's easy to allow the user to set a weight themselves.
You might as well say that the nice thing in trying to emulate multiplication with weighted addition is that the user can adjust the weights himself. It just doesn't work that way. What you might do with your current system is to include weights for raw skill and the value that my formula spits out. That way it is easy to disable one of them, but for 100% learning rates they are synonymous anyway. Once you have access to the learning rates, using them for calculations and adding things to options are a low hanging friut.

Quote
there's been a lot of effort (myself and others) put into the branch, but the direction is always community driven. regardless of the amount of tact when providing feedback, i still appreciate it and try to make whatever changes are necessary.
Thank you. I am more rude than I need to be, but it stems from me wanting DT to work better, for me at least.

Quote
no it's not doing that, and that's one of the major problems he's got. i used an equally weighted average between the skill experience and the skill rate, because i figured i wouldn't want a low level with high skill rate jumping up over a higher skill level with lower rate. this may not have been the best decision, which is fine! that's the reason there's patch notes and i asked for feedback, so it can be adjusted, because i don't get to play to know, i'm always coding.
I've actually considered the problem of unskilled peasant jumping ahead of someone experienced, when the skill rates are different enough. On one hand, the dwarf who is skilled now can already produce better items faster, on the other a high skill rate will let someone else catch up and exceed his skill relatively quickly. My conclusion is to allow "jumping ahead" for these reasons: 
* Whoever wins the race to Legendary +5 should get the job anyway.
* I can easily see out-of order skill levels in the grid. I cannot see out-of order skill rates, except by looking at lots of tooltips.
* Meaningless in vanilla and people with mods and castes will likely want to use them to their fullest anyway.
* As of now, the grid sorts by a compound value rather than skills, so this is already happening.

Quote
Malak, I think you need to pull your head in a bit mate, as we say here in Australia.  Coming in to a thread demanding that the volunteer developer change his code to what you want, questioning why nobody has noticed this obvious bug before (and therefore implying everyone else in the thread is an idiot), and generally using confrontational, aggressive and overbearing language is no way to win friends and influence people.
I know I'm antagonising people and that this is a recurring pattern, no matter the social group. To date, I haven't found a solution to this problem. If I just wrote what I wanted to say, waited for two days, edited it and posted it then, this discussion might have looked differently, but what's done is done. There isn't even much room for "damage control".

Quote
current xp/29k * skill rate.
Incorrect and I explained it above as well as gave the formula for determining who maxes out the skill the fastest. One way of looking at it is that XP rates generate "virtual XP".

Quote
it's also important to note that what's used in the roles doesn't have to be used for the sorting. they're calculated separately.
I don't mind hints about roles in tooltips much, even those I disagree with. It is just that everything is sorted by them, but as someone already explained, the workaround is to set weights to 0 to everything except skills.

Quote
currently if the levels/xp are equal the higher rate will end up with a bonus and thus a higher rating.
Well, I still have tooltips to hunt down a candidate for a job, but sadly they don't display XP rates for skills at 0. Even then, I have the bigger tooltips to guess the caste by description and check it in the big file in the RAWs if I have doubts, it is just time-consuming and inconvenient.

Quote
So if I'm reading this correctly [...] how does that make sense?
It doesn't, that's part of the point I'm trying to make.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 11, 2013, 11:52:14 pm
I'm sure splinterz will love your formula!
Quote
This is wrong, because for very low skill the skill rate wouldn't matter, while an unskilled wood savant is obviously a better choice for a carpenter than a Novice, since he will get to Legendary +5 faster. You want to take ((29000 - current_XP) / skill_rate), since that's all the skill rates affect in the end. Now, for this not to screw up your current system and assuming you want to normalise to <0,1> at 100 skill rate, where 1 is more desired than 0, you'd have to take (1 - ans/290.0). So this should work:
Code: [Select]

int XP = (current_XP > 29000) ? 29000 : current_XP;
int rate = (skill_rate < 1)? 1: skill_rate;   // 0 or 1 doesn't really matter.
double jobs_left = (29000 - XP) / rate;  // Ignore division by 60.
double normalised_XP = 1.0 - jobs_left/290.0;    // This can be as low as -28999, but you don't want to train a skill with 1% learning rate anyway.
    // For things like 0 skill and 30% learning rate this will be -2.3333, which is quite sane, but you might still want to "cap the bottom".
    // For good learning rates, like 200%, this formula "pretends" that half the XP has already been generated.

btw, normalizing from 0 to 100, with 50 representing average is always the desired result.  We have it done for attributes and traits... trying to quantify skills and adding in skill rates was hard, but your crazy ass formula worked (maybe we can do something similar for preferences as well....)  I don't see how one can get negative numbers (unless some castes have below 100 learning rates).

btw, we're working on introducing more attribute bins for modded games, so the attribute %'s scale to all castes (no more -20 to +20 squares drawn to each caste, but now a % from lowest possible to highest possible based by combining all castes into a super binary distribution).  Each bin is factored by that castes frequency in the population, then a master bin layout is created (bin as in binary frequency distribution).

I'm going to code your little quip in right now, I can upload it for you if you'd like.

btw, I think who is currently best at a job is more important.  If I want to create high quality items now, then I want to see who's best now.  Naturally, learning rates should be considered, but... I think that as they are considered, they will eventually supplement and surpass my slower learning rate dwarf's.

Update:

Well, I modded in your suggestion, here's what the code looks like
Spoiler (click to show/hide)

I'm not exactly sure what it's doing, or how it does it, I know it scales from 0 to 100, and giving preference to those with higher learning rates... it also seems to take learning rates below 100% and sets them to 100% (I'm not sure that's necessary).

Update:
Well here's your version.

Thanks for that code snippet.

I see now what happens with low skilled dwarf's that have below 100% skill learning rate...  They get a negative # that means # * 100%, which could have a detrimental affect on role calculations since it's not 0 to 1 (but to be honest, it doesn't really matter, because in the end, there's a cdf function that's done on everything, although... my labor optimizer, uses the raw values before it's ran through a cdf...).
What could be done, is scale anything below 0 to .01 to .1, -99 would be .01, -2.33 would be .9767.  The frequency of such dwarf's is probably minimal that this wouldn't mess up your formula.

here's the code built.

personally, I still prefer a current highest, as I want to know who's currently best, as the current best dwarf will change over time, I update my dwarf's accordingly (thanks to the labor optimizer, mass reassigning labors is a snap).

http://www.mediafire.com/?672ff04vcbmww7d
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 12, 2013, 06:14:45 am
Damnit, the browser just hanged and ate what I wrote  >:(

It is good that we are finally having a conversation. I'm supposed to be good at math, at least with optimisation, multi-criteria optimisation, heuristics, operations research and similar fields. My formulas are rather obvious if you think in terms of distance from the sweet spot (legendary +5), with "distance" being the number of jobs it will take to get there. Sadly, you still don't get what it does and how it works, so I'll try to explain. Using formulas without understanding them and obfuscating that with code, then fixing that in the wrong places is a big problem.

Quote
btw, normalizing from 0 to 100, with 50 representing average is always the desired result.
Well, you could simply multiply this by a 100, but it won't be enough if you want to get rid of negative values so much.
-  double normalised_XP = 1.0 - jobs_left/290.0;
+  double normalised_XP = 100.0 - jobs_left/2.9;

50 doesn't represent "the mean", but rather being halfway there.
Therefore a Dwarf with 29000/2 XP and 100% learning rate is halfway there.
So is a Dwarf with 29000/4 XP and 150% learning rates.
So is a Dwarf with 0 XP and 200% learning rates.
So is a Dwarf with 29000 *.75 XP and 50% learning rates. Come to think of it, this one is actually preferable to the rest, since he can make quality items now and will continue to be better until the others catch up, so aggregating this with pure skill level / capped XP is a good idea.
Is this clearer now?

Quote
I don't see how one can get negative numbers (unless some castes have below 100 learning rates).
Of course I can have learning rates below 100%. Just look at Masterwork Mod castes. https://lh4.googleusercontent.com/-PwhM3DFdPo8/UOJQ16NWd-I/AAAAAAAALkI/7vXBQLy85GQ/s1020/Caste%2520Guide.jpg Half of them have "Slow learner, 50% skills" for most skills. Part of the point of having "savant" castes is that they are good at something, but not much good at anything else. There is similar balance in the FoE mod I play, otherwise I'd have "Dwarves, only better". The negative normalised_XP represents "penalty XP". An unskilled Dwarf with 50% learning rates gets -1 (or -100 if you normalise to a 100), because -1 is twice as far from 1 as 0 is rom 1. By capping skill rates at minimum 100% you ignore that information, which is incorrect.

Quote
btw, we're working on introducing more attribute bins for modded games, so the attribute %'s scale to all castes (no more -20 to +20 squares drawn to each caste, but now a % from lowest possible to highest possible based by combining all castes into a super binary distribution).  Each bin is factored by that castes frequency in the population, then a master bin layout is created (bin as in binary frequency distribution).
I don't really understand any of that and neither wikipedia nor wolfram alpha has any info on "binary frequency distribution". It feels like an overly complex solution to a simpler problem. I would prefer to see real values, but if you want to go for maximum and minimum for all castes and scale the results to <-20, +20>, just remember to also find the minimum and maximum for current citizens. Some may rust below the racial minimum and soldiers are likely to exceed the normal racial maximum, at least for some attributes. I don't care about the frequency of castes, just that I can look and see who is the strongest among my population at a glance, without sorting by strength.
After thinking about it for a while, I think I understand. Rather than scaling linearly between maximum and minimum for an attribute, you compute the probability distribution for an attribute based on values for and frequencies of castes, then slice the cumulative distribution function into 41 or whatever equal pieces (from 0 to 1). If that's what you're doing, it IMO is an overkill, but may have some nice properties. I suppose you can just display minimum or maximum for those dwarves who are outside of your intervals. The easiest way to do this is by "brute force". Just have an array of 5000 doubles and for each caste add a few thousands of: probability_of_attribute_value * probability_of_caste. It will be easy to find your intervals from there.

Quote
btw, I think who is currently best at a job is more important.  If I want to create high quality items now, then I want to see who's best now.  Naturally, learning rates should be considered, but... I think that as they are considered, they will eventually supplement and surpass my slower learning rate dwarf's.
This is fully doable with your normalised, weighted arithmetic mean. Just have the weight for unmodified skill be an order of magnitude higher than for what my formula spits out. But, like I said, you'll easily notice out-of order skills in grid view (0 above 5 or whatever) and your factoring in attributes already does this sort of thing anyway. You won't notice a wood savant so easily when looking for a new carpenter. (Well, you would in masterwork, but in FoE citizens have no natural skills from their castes, just different learning rates.)

I've read the code and the biggest issue is that you cap learning rates at a minimum of 100%. Since I'm proposing a "fix", if you want to even give my ugly bastard the curtsy of calling it a fix, I won't get into more details here.

Quote
I'm not exactly sure what it's doing, or how it does it, I know it scales from 0 to 100, and giving preference to those with higher learning rates... it also seems to take learning rates below 100% and sets them to 100% (I'm not sure that's necessary).
That's a big problem. Those are simple and obvious formulas and I didn't even expect, I'd have to write them down myself, much less explain them is such detail. :( Once again, the negative values are essential and it really is a linear scale best understood in terms of distance to 1 (or a 100). Negative values are just further away and you don't want to assign dwarves with big skill penalties to labours anyway.

Quote
What could be done, is scale anything below 0 to .01 to .1, -99 would be .01, -2.33 would be .9767.  The frequency of such dwarf's is probably minimal that this wouldn't mess up your formula.
Facepalm. -99 (when scaled to 1) for 0 skill means 1% learning rate (My previous code snippet had an error in the comment). -2.33 for 0 skill means 30% learning rates. Both are trivial to calculate in memory. What you're saying here is that assuming you scale to <0,100> both 1% learning rate and no skill and 30% rate and no skill are about as good as a dabbling Dwarf with 100% learning rate, which is obviously not the case.

My formula with negative values has elegance, but fine. If you want to pervert it and force it to fit into <0, 100> with 50 being an "average" value, I can still do that better than your proposal. It will of course still be bogus, in addition to being disgusting and not as simple as what I proposed in the first place, but it can be aggregated with the rest of your criteria without crippling them for low learning rates. (And since I'm insulting my own work here, no one should object much). (That was a joke.)

Code: [Select]
int XP = (current_XP > 29000) ? 29000 : current_XP;
int rate = (skill_rate < 1)? 1: skill_rate;   // 0 or 1 doesn't really matter.
double jobs_left = (29000.0 - XP) / rate;  // Ignore division by 60.
double normalised_XP = 50.0 * (1.0 - jobs_left/290.0);    // Scaled to <-4950...50>
if (normalised_XP >= 0)
  normalised_XP += 50.0;    // Values <50..100> reserved for those suitable for a task.
else
  normalised_XP = -50.0 / (normalised_XP - 1.0);   // Best I can do is a multiplicative inverse, really better suited for geometric means.
    // It should be barely acceptable for learning rates no lower than 30%.
With this, 50 is no longer "halfway there", it is what you get for 100% rates and 0 skills. The closer you are to legendary +5, the closer this is to a 100, and the lower the learning rate, the closer you are to 0. Well, not the first and not the last hax in multicriterial optimisation.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 12, 2013, 09:38:59 am
im not against negstive numbers. maybe a -100 to 100. negative is any value below 100% learnig rate. i can prolly use ur last formula to set 0 xp 100% learning rate to 0

the more and more i think about it. the more i dislike skill % being modified by skill rate.

skill % is already modified by skill rate by attaining skill faster.  to me it would b better to have a group by option for it, ot own category (such as attributes, skills, traits, preferences, skill rate), or an option to modify existing skill by skill rate (but not enabled by default)

Update:
what could be done to make it it's own category

is to read all rate modifiers for castes, multiply this rate modifier by the castes frequency

then do something like set the lowest value to 0, highest to 100

Something similar is being done for attributes

and a mean of 50 is not important for skills, it was more-so for traits/attributes

here's the code for attribute bins
Spoiler (click to show/hide)

traits
Spoiler (click to show/hide)

the traits and attributes use known knowledge to find their mean of 50.  I did the research on the traits myself using 16,000 dwarf's, which provided me with about 46k data points to draw the statistics from.

The attributes were verified once it was found dfhack was exporting names of attributes in the wrong order, I started a big fight on the wiki saying stuff was inaccurate...  the attributes follow a simple 1/6 breakdown per bin category (remember what I was saying about frequency bins, at least that's what I told a frequency bin was).

we hope to incorporate better traits for castes by incorporating the castes min/max values that vanilla traits don't have.  The formula is pretty basic, it's
Spoiler (click to show/hide)
what this does is convert any non symmetrical trait to a symmetrical one (works for vanilla means of 45 and 55) to have it match the distribution of a normal trait, then the number is plugged into the trait bin that I pasted above in this post.  The numbers were verified to match using "skewed" traits, i.e. mean of 45 or 55, once "normalized", the distribution matched a normal distribution.

we hope to multiply these values by the castes frequency, so we can see where a dwarf fits within the whole fortress mode race.

trait bins
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Rowanas on January 12, 2013, 10:40:35 am
I'm getting pretty much to the end of my tether trying to make Dwarf TheRapist read my dwarves. I own a mac, so all of those helpful "34.11 included" versions like the splinterz branch, won't work for me. After searching a while, I found someone asking the same thing, and I've done both. Either way, DT connects to my game, but when I try to read my dwarves, it tells me that my game isn't running, or that I've unloaded the fort. I brought the fort out of my sidebar, just in case that was screwing it up, but it gives me the same message every time and it's driving me nuts. It's like DT is aware that I'm playing, but can't see the actual game. Any help?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: MaxZero on January 12, 2013, 11:04:55 am
I'm getting pretty much to the end of my tether trying to make Dwarf TheRapist read my dwarves. I own a mac, so all of those helpful "34.11 included" versions like the splinterz branch, won't work for me. After searching a while, I found someone asking the same thing, and I've done both. Either way, DT connects to my game, but when I try to read my dwarves, it tells me that my game isn't running, or that I've unloaded the fort. I brought the fort out of my sidebar, just in case that was screwing it up, but it gives me the same message every time and it's driving me nuts. It's like DT is aware that I'm playing, but can't see the actual game. Any help?

This topic is a bit too technical for easy reading so I haven't bothered to read back to the posts from June to see if the situation is any different from when I was first trying to get it to work. If it is, please dont moan.


To get Therapist to work properly with 34.11 on the mac, you will need to manually insert the required memory layout into the program's 'package contents'. To get there, right cilck on the Dwarf Therapist application, click show package contents and navigate to Contents>MacOS>etc>Memory_Layouts>osx

Within that you will see that there haven't been any added to the program since .07
Amending the download would save a lot of people a lot of hassle

I dont know where to find the .11 memory layout online but you can make it yourself by opening textedit and pasting the following into a document

Code: [Select]
[info]
checksum=0x8f421f9c
version_name=v0.34.11
complete=false

[addresses]
translation_vector=0x01636a88
language_vector=0x01636a70
creature_vector=0x015f56ec
dwarf_race_index=0x015dcf80
squad_vector=0x01633600
current_year=0x01fb1f21

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0158
current_job=0x0288
turn_count=0x0540
states=0x0
souls=0x05fc
labors=0x0618
happiness=0x06a8
squad_ref_id=0x070c

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x0004
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

Save it as the following:

v0.34.11.ini

and then put it into the folder navigated to above.
This makes Dwarf Therapist useable, but it still has a tendency to be temperamental.




(This must have been typed out several times in this thread now)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 12, 2013, 11:27:57 am
Maklak:

I finally get what your formula is doing
double jobs_left = (29000 - XP) / rate;  // Ignore division by 60.

means treat each job * rate as the # of exp gained.

Interesting concept.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Rowanas on January 12, 2013, 11:33:35 am
I'm getting pretty much to the end of my tether trying to make Dwarf TheRapist read my dwarves. I own a mac, so all of those helpful "34.11 included" versions like the splinterz branch, won't work for me. After searching a while, I found someone asking the same thing, and I've done both. Either way, DT connects to my game, but when I try to read my dwarves, it tells me that my game isn't running, or that I've unloaded the fort. I brought the fort out of my sidebar, just in case that was screwing it up, but it gives me the same message every time and it's driving me nuts. It's like DT is aware that I'm playing, but can't see the actual game. Any help?

This topic is a bit too technical for easy reading so I haven't bothered to read back to the posts from June to see if the situation is any different from when I was first trying to get it to work. If it is, please dont moan.


To get Therapist to work properly with 34.11 on the mac, you will need to manually insert the required memory layout into the program's 'package contents'. To get there, right cilck on the Dwarf Therapist application, click show package contents and navigate to Contents>MacOS>etc>Memory_Layouts>osx

Within that you will see that there haven't been any added to the program since .07
Amending the download would save a lot of people a lot of hassle

I dont know where to find the .11 memory layout online but you can make it yourself by opening textedit and pasting the following into a document

Code: [Select]
[info]
checksum=0x8f421f9c
version_name=v0.34.11
complete=false

[addresses]
translation_vector=0x01636a88
language_vector=0x01636a70
creature_vector=0x015f56ec
dwarf_race_index=0x015dcf80
squad_vector=0x01633600
current_year=0x01fb1f21

[offsets]
word_table=0x001C

[word_offsets]
base=0x0000
noun_singular=0x0004
noun_plural=0x0008
adjective=0x000C
verb=0x0014
present_simple_verb=0x0018
past_simple_verb=0x001C
past_participle_verb=0x0020
present_participle_verb=0x0024

[dwarf_offsets]
first_name=0x0000
nick_name=0x0004
last_name=0x0008
custom_profession=0x003c
profession=0x0040
race=0x0044
flags1=0x008C
flags2=0x0090
sex=0x00A6
id=0x00A8
recheck_equipment=0x0158
current_job=0x0288
turn_count=0x0540
states=0x0
souls=0x05fc
labors=0x0618
happiness=0x06a8
squad_ref_id=0x070c

[soul_details]
skills=0x01D4
traits=0x01EC

[job_details]
id=0x0008
on_break_flag=0x0011
sub_job_id=0x0040

[squad_offsets]
id=0x0000
name=0x0004
members=0x0044

[valid_flags_1]
size=1
1\name=Not from around these parts
1\value=0x80000000

[valid_flags_2]
size=1
1\name=Dead. Deceased. An Undwarf!
1\value=0x02000000

[invalid_flags_1]
size=7
1\name=a zombie
1\value=0x00001000
2\name=a skeleton
2\value=0x00002000
3\name=a merchant or diplomat
3\value=0x00000040
4\name=outpost liason
4\value=0x00000800
5\name=an invader or hostile
5\value=0x00020000
6\name=an invader or hostile
6\value=0x00080000
7\name=an invader or hostile
7\value=0x000C0000

[invalid_flags_2]
size=2
1\name="dead, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000

Save it as the following:

v0.34.11.ini

and then put it into the folder navigated to above.
This makes Dwarf Therapist useable, but it still has a tendency to be temperamental.




(This must have been typed out several times in this thread now)

I'll try that. I did search back to page 162, but when you've got so many pages to read over, it's easier just to ask again :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: walberg on January 12, 2013, 11:50:57 am
Here's another hopefully simple suggestion (should be much easier to fix than the current optimization/sorting formulas discussion). The optimizer has an "exclude active military" option. How hard would it be to change that to (or add an additional) "exclude squad members" option to avoid having soldiers that just happen to not have active orders at the moment getting included for optimization? That wouldn't be ideal for those who tend to form civilian squads for the sake of uniforms, etc., but for those like me who tend to only use squads for military use, having to clean up a few soldiers every time you optimize takes a bit of extra time. The ability to just exclude them if they're in a squad would be nice to have.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 12, 2013, 01:14:17 pm
Here's another hopefully simple suggestion (should be much easier to fix than the current optimization/sorting formulas discussion). The optimizer has an "exclude active military" option. How hard would it be to change that to (or add an additional) "exclude squad members" option to avoid having soldiers that just happen to not have active orders at the moment getting included for optimization? That wouldn't be ideal for those who tend to form civilian squads for the sake of uniforms, etc., but for those like me who tend to only use squads for military use, having to clean up a few soldiers every time you optimize takes a bit of extra time. The ability to just exclude them if they're in a squad would be nice to have.
i concur whole heartedly
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 12, 2013, 01:50:37 pm
Here's another hopefully simple suggestion (should be much easier to fix than the current optimization/sorting formulas discussion). The optimizer has an "exclude active military" option. How hard would it be to change that to (or add an additional) "exclude squad members" option to avoid having soldiers that just happen to not have active orders at the moment getting included for optimization? That wouldn't be ideal for those who tend to form civilian squads for the sake of uniforms, etc., but for those like me who tend to only use squads for military use, having to clean up a few soldiers every time you optimize takes a bit of extra time. The ability to just exclude them if they're in a squad would be nice to have.
sure, i'll just add another option so you can exclude squads, active military or both.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on January 12, 2013, 03:14:50 pm
Quote
Malak, I think you need to pull your head in a bit mate, as we say here in Australia.  Coming in to a thread demanding that the volunteer developer change his code to what you want, questioning why nobody has noticed this obvious bug before (and therefore implying everyone else in the thread is an idiot), and generally using confrontational, aggressive and overbearing language is no way to win friends and influence people.
I know I'm antagonising people and that this is a recurring pattern, no matter the social group. To date, I haven't found a solution to this problem. If I just wrote what I wanted to say, waited for two days, edited it and posted it then, this discussion might have looked differently, but what's done is done. There isn't even much room for "damage control".
No problem mate.  We all do this at one time or another: post in haste and repent at leisure.  ;)

Nice to see the conversation becoming more constructive.  It seems like some real progress is being made now.  I don't have anything much to add on the actual mechanics, as none of this affects me too much the way I use DT, but good luck to all in working through this.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 12, 2013, 09:08:38 pm
Maklak,

I think I like your initial formula may work

at 50% learning rate, and 0 XP, it's -1.

Masterwork mod has 50% as it's lowest learning rate for a caste.

So... it should work I think.

If anyone is lower than that, then it's possible to get a number worse than -1, but I think we'll just cap it at that.

Spoiler (click to show/hide)

examples

rates   
1% 50% 100% 150% 200% 500%
0.01 0.5 1 1.5 2 5
Jobs Left/rate   
29k   58k   29k   19.3k 1.45k 5.8k
%   
-99   -1   0   0.33   0.5   0.8
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: CatkinsFTW on January 13, 2013, 01:41:46 pm
Splintermind, I pulled the latest version a few days ago.  I most liked the ability to adjust the font from the options pages, without editing the QT form code.  Also searching preferences is awesome. 

I made a simple change to add a hotkey for commit,  Ctrl+T. This means that I can turn off the main tool bar and read dwarves with Ctrl+R and write/commit changes with Ctrl+T.

Here is the diff of the code if you want to include it.

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 13, 2013, 08:28:55 pm
minor annoyance to report

when I sort by name (I did a startdwarf of 2000 dwarfs, similar to dfusion simple embark), it resizes the column of names by the largest name that is drawn on screen, but doesn't if that name is offscreen.

like I said a minor annoyance.

it would be nice if the name column was just drawn to a certain # regardless of longest name shown on screen (this is a remnant concern I've had with rows being resized...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 14, 2013, 02:06:12 am
minor annoyance to report

when I sort by name (I did a startdwarf of 2000 dwarfs, similar to dfusion simple embark), it resizes the column of names by the largest name that is drawn on screen, but doesn't if that name is offscreen.

like I said a minor annoyance.

it would be nice if the name column was just drawn to a certain # regardless of longest name shown on screen (this is a remnant concern I've had with rows being resized...
i'm not sure it's a good idea to cut-off the name in the grid. the thing that annoys me is when the details pane resizes to long noble lists though. this isn't related in any way to the cells resizing on large fonts.

again, cells resizing to rectangles happens when you use a typeface that has a height larger than the cell width you've specified.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 14, 2013, 05:06:12 am
Thistleknot, it takes most of my focus, concentration and linguistic ability for me to understand you, but I'll try to answer nonetheless.

Quote
the more and more i think about it. the more i dislike skill % being modified by skill rate. skill % is already modified by skill rate by attaining skill faster.  to me it would b better to have a group by option for it, ot own category (such as attributes, skills, traits, preferences, skill rate), or an option to modify existing skill by skill rate (but not enabled by default)
Current skill and the speed of gaining that skill are two different things. Both matter and should be separate categories.

Quote
what could be done to make it it's own category is to read all rate modifiers for castes, multiply this rate modifier by the castes frequency then do something like set the lowest value to 0, highest to 100 Something similar is being done for attributes
That could work, but this method ignores how skill rates really work. If you had two castes: one with 80% and another with 130% learning rates, the relative difference is +0.625 / -0.385. With your method one would be be set to 0 and the other to 100, which looses information about their relative importance. For a more extreme example, consider two castes having 95 and 105 learning rates in some other skill. That's not that big of a difference, but they still get set to 0% and 100%.
One way to fix this method would be to set minimum to 0 and bottom-cap maximum to 100. That way with the first example, you'd get weights 61.5 and 100, while for the second example 90 and 100, respectively. If for all castes the highest learning rate of something was 10%, you'd get 10 or less for all. Come to think of it, setting the minimum to always 0 is more important with this method than what you do with maximum.
Even with all that, I still say my proposition is better.

Quote
here's the code for attribute bins[...]
I don't see why you'd need bins like this for learning rates. I don't care about probability distributions. For traits, attributes and learning rates, just knowing min and max for all castes and everyone in the fort would be enough. Yes, you can get a nicer curve with bins and set the average properly, but I don't need this kind of behaviour. Besides, it might look nice in the grid view, but for weighting attributes and traits into recommendations, just multiplying their values by weights should be better.

"Cumulative distribution function" is What you call "density". Probability density would be (temp.probability / ((temp.max - temp.min !=0) ? (temp.max - temp.min) : 1)), since DF assumes uniform distributions within bins.

The code for traits looks OK, but the code for attributes looks strange. Here is what I see in there:
* Cumulative distribution function, which you for some reason call density, doesn't add up. For each bin it should be equal to that bin's probability plus it's value from the previous bin. Just needs two fixes.
* Why do you need a zeroth bin? By your code a Dwarf has a 0.01 chance of getting an attribute below the minimum for that caste. Is this the case? Does this emulate attribute rust? What is it?
* If you have the zeroth bin, why not also add a last one with min as the caste maximum and max as 5000? NVM, the code after the loop seems to be responsible for this, assuming raws[7] is always 5000. It seems to forget to add 0.01 to temp.density, though. There is nothing above it anyway.
* What is 0.16333333333? Did you mean (1.0 - 0.01 - 0.01) / 6.0 ? Just let the compiler calculate that for you.
* The fist bin generated by the loop has "density" 0. Did you mean 0.01? If so, delete the "if(i>0)".
* The max value for this bin should be one less than the min value for next bin.

Quote
the traits and attributes use known knowledge to find their mean of 50.  I did the research on the traits myself using 16,000 dwarf's, which provided me with about 46k data points to draw the statistics from.
Ah, so you did the research. The 0.01 probabilities for being below or above the racial minimum and maximum were there, yes?

Quote
The attributes were verified once it was found dfhack was exporting names of attributes in the wrong order, I started a big fight on the wiki saying stuff was inaccurate...  the attributes follow a simple 1/6 breakdown per bin category (remember what I was saying about frequency bins, at least that's what I told a frequency bin was).
I remember dfhack (the command to dump Dwarves to xml), Dwarf Therapist and Runesmith not quite agreeing on what attributes of my Dwarves were in 31.25. I didn't know which was correct, but I think I assumed dfhack to be wrong. 

Quote
we hope to incorporate better traits for castes by incorporating the castes min/max values that vanilla traits don't have.  The formula is pretty basic, it's[...]
Yeah, so long as Min and Max are correct, this will behave well. The Mean will be correct and everything above and below will scale linearly. That said, I'd be content with just:
Code: [Select]
return 100 * (Value-Min) / (Max-Min);
Quote
we hope to multiply these values by the castes frequency, so we can see where a dwarf fits within the whole fortress mode race.
Yes, that's the logical thing to do once you went that far to get the average. I imagine you get your averages by taking the middles of all bins, multiplying that by their probability, then dividing that by the number of bins (or rather 6/8 the number of bins).
But once again, I'd be pretty content with just linear scaling between absolute minimum and maximum for all castes and current citizens or displaying rounded values when I set the grid to display numbers.




Quote
I finally get what your formula is doing
double jobs_left = (29000 - XP) / rate;  // Ignore division by 60.
means treat each job * rate as the # of exp gained.
Interesting concept.
Yes, I omitted the 60 XP per job (or 120 per three mugs or whatever you get per weapon swing), but those are constants for any given skill (or reaction, in case of mugs) and therefore don't matter for comparison. All skill learning rates do is alter the number of XP gained. My formula is just an approximation, since I imagine XP is integer, while I use doubles. My formula is an answer to a question "How many jobs will it take this dwarf to max out his skill?" (except it ignores the 60 XP per job). It is also a good reason to ignore probability distribution for learning rates. You simply don't need this information to decide who is better for a job.




Quote
Here's another hopefully simple suggestion (should be much easier to fix than the current optimization/sorting formulas discussion). The optimizer has an "exclude active military" option. How hard would it be to change that to (or add an additional) "exclude squad members" option to avoid having soldiers that just happen to not have active orders at the moment getting included for optimization?
When I look for dwarves to assign them civilian labours, a workaround I use is to sort by military status, but I don't use the "train all the time" schedule, so the soldiers get off-duty and get mixed up with civilians. It would be useful to have an option to treat everyone having a squad as military, regardless of schedules, or if their alert is set to active/training.
I just use the grid view to do this, I didn't even know there was a job optimizer other than all the suggestions for roles and sorting by them.




I propose "soft capping" learning rates by 1/x function, not just cutting them off at 50%. That way for things like 0-10% learning rates you get values close to -2 (and you normally really don't want a dwarf with learning rate below 50 to perform a job) and for 50 and above you get a nice linear progression. While Masterwork never goes below 50%, I've seen people "disabling" skills in their mods by setting their rates to 0 or 10 or something like that, therefore for generality you want to take that possibility it into account. To patch this in replace with:
Code: [Select]
if(aspect_value < -1.0)
  aspect_value = -1.0;
Code: [Select]
if(aspect_value < -1.0)
  aspect_value = -2.0 - 1.0/aspect_value;

Looking at the code some more:
Code: [Select]
skill_rate_value = (skill_rate_value < 100) ? 100: skill_rate_value;Wait, what? You're capping skill rate at 100%?! It should be capped at 1% and only to avoid division by 0!
Code: [Select]
if(a->is_neg)
    aspect_value = 1-aspect_value;
This looks suspicious, but I have no idea what it is.

Ah, so skill ratios are factored in last... Hm, looking at this, if skill ratios are very low, then the Recomendation can go below 0%. If this is a desired behaviour is up for debate.



Well, since I can't fight job recommendations, I might as well try to help you improving them. I believe the choice of the right Dwarf for the job (or the military) comes down to answering and prioritising these fundamental questions:

1) "Which one of you has the highest skill now?"
2) "Which one of you has the best attributes and traits and likes for the job?" OR "Which one of you will make the most quality items when you max out your skill?"
3) "Which one of you can get to legendary+5 with the fewest number of jobs, thus wasting the least materials?"
4) "Which one of you is the fastest?"

Are there any more fundamental questions?

I'll give you my perspective on them:

1) Old DT used to sort by this exclusively. You already have this included, but I'd like to add a twist. I was wrong when I wanted this to be sorted by XP, because that would work for sorting by skills alone, but not when this has to be aggregated with other criteria. I have another proposal. Instead of just taking integer skill levels into consideration, scale them linearly to next level according to XP. Just have an array with it, except set 0 as the minimum for Dabbling. http://dwarffortresswiki.org/index.php/Experience Instead of using just skill levels, scale them linearly according to XP. You might do something more sophisticated here, like fit a spline, but the old good linear interpolation is simple and good enough. An examples:
A Proficient (lvl5) Dwarf having 3600 XP, has effective lvl 5.1.
A Proficient (lvl5) Dwarf having 4000 XP, has effective lvl 5.5.
Code: [Select]
double eff_skill_level = dwarf.getSkill(skill_no);
if (eff_skill_level < 20.0)    // Don't care anymore for Legendary +5
{ double skill_xp = dwarf.getSkillXP(skill_no); // double is important. You want floating point arithmethic for this.
  double min_XP = XP_per_level[(int) eff_skill_level];  // static_cast<int>(eff_skill_level) if the compiler screams.
  double max_XP = XP_per_level[1 + (int) eff_skill_level];
  eff_skill_level += skill_xp / (max_XP - min_XP);
}
// Scale eff_skill_level from <0, 20> to whatever you need.
// Take it into account for recommendations, sorting or whatever.
If you want to make skill levels more apart, choose and alpha from  <0.5, 1> and use this instead:
Code: [Select]
eff_skill_level += alpha * skill_xp / (max_XP - min_XP);
2) This is actually a series of questions about attributes and traits and likes. I have very little clue to how this works, you are away ahead of me and so I don't have anything to contribute. In DT you can already have a grid view with attributes and see personality traits. There is even a normally hidden window where preferences can be seen and filtered by.

3) For Vanilla this is the same as 1, really. For mods with learning rates, this is a separate category, because a dwarf with 29000/2 XP and 50% learning rate is obviously better than one with 0 XP and 100% learning rate; even though they will both reach Legendary+5 after the same number of jobs, the first one will be better up to that point and work faster, while creating higher quality items. We have recently discussed this point.

4) Speed affects everything: Walking to the workshop, gathering materials and completing the job itself. There should be some way to get it from the game and I wouldn't mind a column in the grid view with speed. The speed that corresponds to "wait 9 frames" should be considered average. I'd scale the rest with 1/x function before using it for your aggregated goal function, but I would need some additional data to submit a proposal. A downside of using speed from the game might be that a dwarf's speed drops drastically when he is carrying a heavy cage or bin or something.



Right, so unless someone wants to discuss any of this, that's it from me for now.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on January 14, 2013, 05:16:25 am
Thistleknot, it takes most of my focus, concentration and linguistic ability for me to understand you, but I'll try to answer nonetheless.
It's good that I'm not the only one.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 14, 2013, 06:53:15 am
@Maklak: i'll chime in here with some more information on the points you've brought up. first about the attribute bins, the code posted has some flaws/bugs in it, so i wouldn't worry about that. second, the bins described there are the available values when a dwarf is created, so the 1% above and below (if i remember) was used simply to accommodate the other values in the complete range of 0-5000. now, i'm not sure this is entirely correct, but it seems to work fairly well. i have a working alpha right now which takes castes into account and draws/sorts attributes on a 0-100 scale.

i also agree that applying this method to anything other than traits and attributes probably won't work. skill rates may need to be factored in separately rather than attempting to roll them into the skill level. i honestly hacked that in pretty quickly to get the release out with the bug fixes, but in my brief tests, i was happy with applying the skill rate as a bonus/penalty to the current skill's level.

i did some testing with the sorting on skills/labors with one of the formulas you supplied in particular: [50.0f * (1.0f - (((29000-current skill xp)/skill rate)/290.0f))]. now for me, this isn't very intuitive. i had a level 8.3 with 50% learn rate ranked below ~60 dwarves with ~0xp and 100% learn rate. personally it seems like it punishes skill rates below normal far too much. now if i compare with the current weighted method, sorry, current incredibly flawed incorrect method, the same dwarf gets ranked near the top (perhaps too near) but is still outranked by those with over 100% learn rate and a few levels less xp.

so thinking about this more, there's still two parts to the skill rates: the column sorting method, and how to add it into the roles. for the sorting, i'm trying to get something setup so you could right click on a column header, and choose the sorting method, either for all columns of that type, or that particular column. for example:
this way, there's no messing around with merging sort values, and it's very clear what you're sorting by.

for roles, well that's another issue, and i'm not completely decided on what to do there. your comment about skill ratings dropping below 0, i assume is also related to your function returning negative values. this is why it was mentioned that we prefer values are all normalized to an equivalent scale of 0-1.
Quote
1) "Which one of you has the highest skill now?"
2) "Which one of you has the best attributes and traits and likes for the job?" OR "Which one of you will make the most quality items when you max out your skill?"
3) "Which one of you can get to legendary+5 with the fewest number of jobs, thus wasting the least materials?"
4) "Which one of you is the fastest?"
1) the role calcs don't use the integer level, they already use the actual current xp.
2) as you said, the gridview can handle this somewhat
3) it may be best to consider the skill rate as a separate section of the roles, i'm not sure
4) getting the base speed is trivial, however the current speed is based on many factors: (environment, mood, race, caste, exhaustion, hunger, strength, agility, etc) if i add this i'll probably just show the base (race/caste) + attribute modifications and note that it's the uninfluenced speed or something

Thistleknot, it takes most of my focus, concentration and linguistic ability for me to understand you, but I'll try to answer nonetheless.
It's good that I'm not the only one.
yes this is normal :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 14, 2013, 08:05:19 am
Quote
i did some testing with the sorting on skills/labors with one of the formulas you supplied in particular: [50.0f * (1.0f - (((29000-current skill xp)/skill rate)/290.0f))]. now for me, this isn't very intuitive. i had a level 8.3 with 50% learn rate ranked below ~60 dwarves with ~0xp and 100% learn rate. personally it seems like it punishes skill rates below normal far too much. now if i compare with the current weighted method, sorry, current incredibly flawed incorrect method, the same dwarf gets ranked near the top (perhaps too near) but is still outranked by those with over 100% learn rate and a few levels less xp.
Level 8.3 with 50% learn rate will max out his skill slower, but will continue to be better most of the way there. If you use your weighted arithmetic means for some weights this formula should still be OK, although a more intuitive formula for skill rates would have to sort-of simulate getting to Legendary +5 and give points for how high the skill is along the way... or maybe just pretend performing 500 jobs at (60.0 / 100.0) * skill rate and add skill levels along the way, then divide them by 500. (with some optimisations to substitute multiplication for addition where applicable). The basic formula for current skill and skill rates would therefore be: 
Code: [Select]
double sr_factor = 0;
int xp = dwarf.get_xp_per_skill(skill);
for (int i=0; i<500; i++)
{ sr_factor += get_skill_level_from_XP(xp);
  xp += 60 * skill_rate;
}
sr_factor /= 500.0;
You get a number in <0, 20> This is the simple and stupid version, without speed optimisations.

Quote
so thinking about this more, there's still two parts to the skill rates: the column sorting method, and how to add it into the roles. for the sorting, i'm trying to get something setup so you could right click on a column header, and choose the sorting method, either for all columns of that type, or that particular column. for example:
I'm guessing most people would want to apply the same method to all columns, so a radio button in the options would work better. Or maybe even your arithmetic mean with setting the weights, like it does now. I did some thinking on this and while there are other methods of aggregating goal functions, and some might be better, none is as intuitive as weighted arithmetic mean. It is for this reason that I changed my mind about it being "flawed and incorrect beyond redemption".

Quote
for roles, well that's another issue, and i'm not completely decided on what to do there. your comment about skill ratings dropping below 0, i assume is also related to your function returning negative values. this is why it was mentioned that we prefer values are all normalized to an equivalent scale of 0-1.
The "simulation" method above will always return values >=0. It may even replace both a goal function for skill rates and goal function for current skill levels as a suitable alternative for both.

Thistleknot couldn't quite make up his mind where he wanted me to scale those values, which caused some confusion. This is an example mapping into <0,1>. It even punishes low learning rates somewhat less.
Code: [Select]
int XP = (current_XP > 29000) ? 29000 : current_XP;
int rate = (skill_rate < 1)? 1: skill_rate;   // 0 or 1 doesn't really matter.
double jobs_left = (29000.0 - XP) / rate;  // Ignore division by 60.
double normalised_XP = 0.5 * (1.0 - jobs_left/290.0);    // Scaled to <-49.5, 0.5>
if (normalised_XP >= 0)
  normalised_XP += 0.5;    // Values <0, 0.5> reserved for those suitable for a task.
else
  normalised_XP = -0.5 / (normalised_XP - 1.0);

Quote
2) as you said, the gridview can handle this somewhat.
For better or worse, it also makes me prioritising attributes in my head rather than present me with an aggregating function. But I only ever care about attributes for my military and even that takes the form of "no penalties and preferably good recuperation and disease resistance".

Quote
4) getting the base speed is trivial, however the current speed is based on many factors: (environment, mood, race, caste, exhaustion, hunger, strength, agility, etc) if i add this i'll probably just show the base (race/caste) + attribute modifications and note that it's the uninfluenced speed or something.
You could get some error reports about the speed being incorrect, but if you can get it or dig up the formulas, it would be useful. If possible, I'd like this to factor in the carried equipment.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 14, 2013, 09:03:55 am
i'll take another look at those skill rate functions later in more detail, thanks.
Quote
I'm guessing most people would want to apply the same method to all columns, so a radio button in the options would work better
i think it may be useful to change up the sorting on the fly, without having to go into the options. this would also be easier to add additional sort values in the future, potentially without having to modify the options. i'll wait and see if anyone else weighs in.
Quote
For better or worse, it also makes me prioritising attributes in my head rather than present me with an aggregating function. But I only ever care about attributes for my military and even that takes the form of "no penalties and preferably good recuperation and disease resistance".
why doesn't a custom role column work for this?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 14, 2013, 09:38:11 am
maklak:
as to assigning rate its own category (i.e. attribute, skill xp, trait, preferences, skill rate)
u touched on minor rate differences having large affects (i.e. 80% vs 90%). i wouldnt think this would b an issue since its merely a min/max approach (which you recommended for attributes). however. i was thinking of using a skill rate category that instead shows how many jobs is needed until legendary (similar to your original formula).

The reason I don't think a min/max approach would matter, is because the max represents the highest skill learner in the game... which uni formally applies throughout the game.  A different mod, would have a different feel for this value, but it would still mean the fastest learner.

alternatively... according to splinterz, max skill rate possible is 500%. maybe that can b the defacto 100%


also, we used to use min/max for attributes...  that was my original idea... but we changed it since the wiki had good information on bin's... and since the bins are not symmetrical, it makes more sense to use them.
the 0-1% and 99-100% represents dwarf's who have fallen below minimum, or gained above maximum attribute value (as defined in bin's).  This never happens on embark, it only happens through the life of the dwarf, and it is a good approximation of the # of current dwarf's at this level (there is no real way to calculate the possible gain a dwarf can get and throw it into this mix, so if you see a dwarf at 99.1%, it means he's above the bin maximum).  The wiki does state a dwarf can gain half his starting value (I believe it's half), but we just opted for this method instead, and it works.

as to the 16.333, I originally had it 98/6, but SOMEBODY changed it, supposedly makes for faster code.

I wasn't showing you the bins for learning rate purposes... I was just showing you the research we've put into coding up each different category.

Maklak:
Code: [Select]
[spoiler]int XP = (current_XP > 29000) ? 29000 : current_XP;
int rate = (skill_rate < 1)? 1: skill_rate;   // 0 or 1 doesn't really matter.
double jobs_left = (29000.0 - XP) / rate;  // Ignore division by 60.
double normalised_XP = 0.5 * (1.0 - jobs_left/290.0);    // Scaled to <-49.5, 0.5>
if (normalised_XP >= 0)
  normalised_XP += 0.5;    // Values <0, 0.5> reserved for those suitable for a task.
else
  normalised_XP = -0.5 / (normalised_XP - 1.0);[/spoiler]

I came up with this on my own, I just did a /2 at the end, and then added .5
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 14, 2013, 12:32:28 pm
Quote
why doesn't a custom role column work for this?
I've never used custom roles before. I don't even know what those are. I'm mostly fine doing this on my own anyway.

Quote
u touched on minor rate differences having large affects (i.e. 80% vs 90%). i wouldnt think this would b an issue since its merely a min/max approach (which you recommended for attributes). however. i was thinking of using a skill rate category that instead shows how many jobs is needed until legendary (similar to your original formula).
If you just add skill rates on their own to a weighted arithmethic average, then yes, both methods are equivalent, but for <0, 100> you would want smaller weights. In any case I disagree with this approach. Time and time again I explained that skill learning rate only means something when you know the skill level. For a Legendary +5, skill rate 30% or 300% is irrelevant, but close to 0 XP those are very different. Therefore any method for taking skill rates into account must take skill levels into consideration as well and not just scale skill rates to some interval and add that with a weight to the goal function.

Quote
The reason I don't think a min/max approach would matter, is because the max represents the highest skill learner in the game... which uni formally applies throughout the game.  A different mod, would have a different feel for this value, but it would still mean the fastest learner.
Splinterz just bashed me for this with his example of a Dwarf with Level 8.3 with 50% learn rate and I must agree with him. The "simulation" method is the best I can think of, when it comes to skill level and it's learning rate. My formulas aggregated with current skill level are a distant second.

Quote
also, we used to use min/max for attributes...  that was my original idea... but we changed it since the wiki had good information on bin's... and since the bins are not symmetrical, it makes more sense to use them.
The way I see it, you did something stupid in a smart way. I'll try to explain the flaws of the current system from a user's standpoint.
1) The most recent DT only uses a few discrete values to represent attributes. There should be more of them.
2) Dwarves are scaled according to their castes, so you can't compare their attributes by just glancing at the grid. (Well, you can in vanilla, but not in caste-heavy mods.)

Quote
the 0-1% and 99-100% represents dwarf's who have fallen below minimum, or gained above maximum attribute value (as defined in bin's).
Except military dwarves will usually go above their maximum and there are more than 1% of them.

Quote
The wiki does state a dwarf can gain half his starting value (I believe it's half), but we just opted for this method instead, and it works.
I think it says that for adventurer mode. I've never seen a military dwarf cap agility in fortress mode, but I wasn't looking very closely. I would prefer to see the whole range of attributes, but capping them at max and min for all castes works too.

Quote
as to the 16.333, I originally had it 98/6, but SOMEBODY changed it, supposedly makes for faster code.
0.98/6.0 :D Compilers calculate constants and macros made of constants during compilation, so the speed is the same. Even if it wasn't, this is not a place where you need all the speed you can get, like the inside of a loop inside a loop. In most cases it is better to make code human-readable rather than micro-optimise it.

Quote
I wasn't showing you the bins for learning rate purposes... I was just showing you the research we've put into coding up each different category.
Well, there is no talking you out of this now, so have fun. I just want to add a few things:

Just remember to handle things like [1000:1000:1000:1000:1000:1000:1000] or [3000:3000:4000:5000:5000:5000:5000] and other edge cases gracefully.

My first method for attributes would be to just display real values, where 0 is min and 5000 is max. The problem here is that with the square / diamond method pretty much everyone would have a red square, so OK, this wouldn't work so good and you want the graphical and numerical representations to be consistent.

My second approach would be to find:
* Min of attribute for { all caste minimums, regardless of frequency; all current citizens }.
* Max of attribute for { all caste maximums, regardless of frequency; all current citizens }.
If Min and Max are very close, scale them further away from their mean. Say at least 300 points apart.
This would work better, except for two problems:
1) As military skills up agility, the others appear to be regressing in it.
2) 0 is not the average. This could be fixed by finding the average, like you do, and scaling everything above and below linearly. Personally I'd settle for this. 

Whatever you do with attributes, just keep these things in mind:
* The more values we get, the easier it is to compare dwarves at a glance. To keep attributes consistent with skills, you could use -20 to -1 (red), 0 (empty), 1 to 20 (blue). 41 different values would be enough for clarity.
* If dwarf A has a higher attribute than dwarf B, the value displayed in grid view for A should be at least as much as B, so I can see the difference at a glance. Don't just scale them inside their own castes.
* Average for entire population / all castes being displayed as 0 with red below and blue above has a lot of appeal... Though I think you want the median, not average for this.

As long as whatever method you use satisfies the first two guidelines, I should be happy with it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 14, 2013, 12:43:44 pm
Quote
My second approach would be to find:
* Min of attribute for { all caste minimums, regardless of frequency; all current citizens }.
* Max of attribute for { all caste maximums, regardless of frequency; all current citizens }.
If Min and Max are very close, scale them further away from their mean. Say at least 300 points apart.
This would work better, except for two problems:
1) As military skills up agility, the others appear to be regressing in it.
2) 0 is not the average. This could be fixed by finding the average, like you do, and scaling everything above and below linearly. Personally I'd settle for this. 

my initial idea was to use 10% below lowest bin, and 10% above highest bin for the final %

but we opted for the code the way it is now.


Quote
If dwarf A has a higher attribute than dwarf B, the value displayed in grid view for A should be at least as much as B, so I can see the difference at a glance. Don't just scale them inside their own castes.

this is now fixed, splinterz shared an alpha w me.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 14, 2013, 02:18:36 pm
Quote
Splinterz just bashed me for this with his example of a Dwarf with Level 8.3 with 50% learn rate and I must agree with him. The "simulation" method is the best I can think of, when it comes to skill level and it's learning rate. My formulas aggregated with current skill level are a distant second.
Code: [Select]
double sr_factor = 0;
int xp = dwarf.get_xp_per_skill(skill);
for (int i=0; i<500; i++)
{ sr_factor += get_skill_level_from_XP(xp);
  xp += 60 * skill_rate;
}
sr_factor /= 500.0;

i'd really like to try implementing this, but 60xp isn't a constant rate per job. it's different depending on the skill, and even varied for any military skill experience (training vs actual combat). (http://dwarffortresswiki.org/index.php/Experience)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 14, 2013, 02:52:12 pm
Quote
i'd really like to try implementing this, but 60xp isn't a constant rate per job. it's different depending on the skill, and even varied for any military skill experience (training vs actual combat).
You're right, of course, it was too good to be true and I got too fixated on crafting. I made several beds and got 60 XP for each (so the wiki must be incorrect with 30 XP for some reason), so I guess 60 XP should be correct for most crafting skills and for things like smoothing, farming, etc, there are just different values, maybe even 10 XP per job, like the wiki says. For social skills this is probably different and military skills are notorious for erratic learning. There are different values for combat, sparring, different attacks with the same weapon, demonstration XP scales with several skills, etc.
Since it would be overly complex to have different methods of taking learning rates into account, just try adding the formula that spits out <0, 1> along with what you have for current skill level to your weighted average and see what happens. For some combination of weights level 8.3 with 50% learn rate should come ahead of 0 skill with 100%, which is what you want. My guess is this should happen around 75% skill formula, 25% rate formula.

While I would like the part based on learning rates to behave as nicely as possible, truth be told, a lot of time I'm just looking at lots of dwarves with 0 skill to choose whomever seems like a good replacement for my recently deceased worker. For this, even most Thistleknot's proposals (such as about scaling learning rates to <0, 1>, regardless of skill) would be enough. They just don't have as nice properties for skill levels in-between 0 and 20, so this is what should be a true test for learning rates formulas.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 14, 2013, 06:37:41 pm
i havent tested but that formula should work w 1 vs 60 as well

nevermind, I just noticed the skill level variable in there.


I need to read this more

Well I tried a few things (after giving up on the above, here's the code I was using to test it, I'm not sure what numbers I'm supposed to be getting.
Spoiler (click to show/hide)

I tried the
Spoiler (click to show/hide)

* straight xp / 29000

as well as
averaging it with straight xp /29000

for 18000 xp out of 29000:
0.6206896552

I got these %'s

Rate Series
50, 100, 150, 200, 500

Initial formula (interesting to note the 1st value matches my exp value)
0.6206896552   0.8103448276   0.8735632184   0.9051724138   0.9620689655

Factored:
0.385255648   0.5029726516   0.5422116528   0.5618311534   0.5971462545
Averaged:
0.6206896552   0.7155172414   0.7471264368   0.7629310345   0.7913793103

but this still doesn't solve the issue with learning rates below 50%.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 15, 2013, 02:00:39 am
Thistleknot:
While Splinterz rejected the simulation approach on the grounds that it cannot be done for military skills (which is true), if you implemented it in a short program, you might as well get the proper numbers out of it. You want to print the "sr_factor", which is the average skill level over 500 jobs. This is obviously higher for better skill rates and skill levels. With this method "sr_factor" would be a good benchmark for both.
In a production code, you'd want to replace as many additions as you can with multiplications, but for testing, simplicity of a loop is OK.
I'd also use an array with XP levels and a function searching over them with bisection method, rather than hard-code lots of ifs into a function. That way it is easier to answer other questions, such as "How much XP till next level" by re-using the array.
Instead of using integer values for levels, it would also be OK to use interpolated ones based on XP, like I've shown in one of my earlier posts. The only difference is that the "sr_factor" would be slightly higher.

In your example using my formula the "Initial formula" looks good and this is what you want. I don't even know where "Factored" and "Averaged" come from.

Quote
but this still doesn't solve the issue with learning rates below 50%.
It does. You just neglected to test it for skill rates such as 35% or 20%. Even for the 50% rate you chose 18000 XP, which is closer to Legendary+5 than to Dabbling, so of course the formula gave you something above 0.5.
So what exactly makes you think that this is wrong?

Oh, and as for displaying skill rates, I recommend the following: If any skill rate is other than 100%, display it, even for dwarves with 0 experience in that skill. The 25% threshold in the big tooltip over a dwarf that recommends skills is good.

EDIT: After some thinking about it, I've come to the conclusion that the simulation method can still be used for military skills. Granted, it won't be using the exact number of jobs, but the slopes are the same and there will still be multiple (measuring pints? what word?) and the proportions between their number will be correct, which is what matters. With the simulation method for military skills the numbers will be distorted from what actually happens, but I believe they will still have enough value to be reliably used for comparison. I've come to this conclusions after staring at level(jobs, initial_lvl) graphs and thinking how to calculate integrals on them. Simulation method FTW! Try it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 15, 2013, 09:29:05 am
Maklak

the factored average numbers were based on the second spoilered code in response to you stating this
Spoiler (click to show/hide)
, thanks the tip on the sr_factor (such an idiot).

I'm working up the array with the interpolated values ;)


Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 15, 2013, 11:57:26 am
I generalised the simulation method of factoring in both current skill level and skill rate. I'm pretty sure this method is fine, but the code itself may need cleaning up. It may not even compile the first time and I might have missed some bugs.

Code: [Select]
const int max_xp = 29000;

const int xp_levels [] = {0, 500, 1100, 1800, 2600, 3500, 4500, 5600, 6800, 8100, 9500,
11000, 12600, 14300, 16100, 18000, 20000, 22100, 24300, 26600, 29000};


// xp(lvl) = 500*lvl + 100 * (lvl * (lvl -1)) / 2

// const int lev_size = sizeof(xp_levels) / sizeof(int);   // 21 , unused

int get_level_from_xp(int xp)   // Uses busection method. Assumes xp >= 0.
{ if (xp >= max_xp)
    return 20;

  int min = 0;
  int max = 19;
  int current = 10;

  while (1)
  { if (xp < xp_levels[current])
    { max = current;
      current = (min + max)/2;
    } else if (xp > xp_levels[current+1])
    { min = current;
      current = (min + max)/2;
    } else
      return current;
  }
}

/* Simulation method for judging a dwarf's skill level and rate.
   Inputs: dwarf's current xp and learning rate for a skill.
   Output: rating based on simulating gaining experience in that skill.
*/
double simulate_skill_gain(int xp, int rate)
{ if (xp >= max_xp)
    return 20;

  if (rate == 0)
    return get_level_from_xp(xp);       // Obviously stays the same.

  int sim_xp = max_xp;    // 29k seems like a good value to me.
  sim_xp = (sim_xp / 100.0) * rate; // This is how much XP will go towards skill learning.
  int total_xp = sim_xp;
  double ret = 0.0;
  int curr_level = get_level_from_xp(xp);
  int curr_xp = xp;


/*  // Version of the while loop interpolating the level. It may be smoother.
  while ((sim_xp > 0) && (curr_level < 20))
  { int xp_gap = xp_levels[curr_level+1] - curr_xp;         // How much XP till mext level?
    if (xp_gap > sim_xp)   
      xp_gap = sim_xp;
    double low = (0.0 +curr_xp -xp_levels[curr_level]) / (xp_levels[curr_level+1] -xp_levels[curr_level]);
    double high = (0.0 +curr_xp + xp_gap -xp_levels[curr_level]) / (xp_levels[curr_level+1] -xp_levels[curr_level]);
    double avg_level = curr_level + (low + high) / 2.0;   // Average scaled level for this iteration.
    ret += xp_gap * avg_lvl;
    curr_level++;
    curr_xp = xp_levels[curr_level];
    sim_xp -= xp_gap;
  }
*/

//  Alternate, simple version of the while loop, without the interpolation.
  while ((sim_xp > 0) && (curr_level < 20))
  { int xp_gap = xp_levels[curr_level+1] - curr_xp;         // How much XP till mext level?
    if (xp_gap > sim_xp)   
      xp_gap = sim_xp;
    ret += xp_gap * curr_level;
    curr_level++;
    curr_xp = xp_levels[curr_level];
    sim_xp -= xp_gap;
  }

  if (sim_xp > 0)
    ret += 20 * sim_xp;
  ret /= total_xp;
  return ret;
}
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 15, 2013, 06:44:19 pm
I think the answer is in a exponential curve of some sort...

we shouldn't focus on raw 60 exp points, but some sort of curve that is adjusted from 1 to 100% at a low rate (i.e. exponential), and then jumps from 100% to 500% (at a higher rate), of course this has to be considered with the amount of experience a dwarf currently has in that skill... I'm not a math major, but I know an exponential fit based on rate would be the answer.

Update:
I think I'm wasting too much time on this and not playing...

anyways, here's my latest failed attempt on a program (maklak's simulated approach) I don't think best explains this problem, I still think an exponential approach is best, yet I have no idea how to implement it
Spoiler (click to show/hide)

heres an idea

rate:
0 to 100% = 0 to 50% (2:1 ratio)
100% to 500% = 50% to 100% (5:1 ratio)

exp = xp / 29000

factored = rate * exp

update:
nm... bad idea. .5 x 100% xp = 50%
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 16, 2013, 02:39:42 am
Sigh.

Code: [Select]
            lowerValue = exp [x-1];
            upperValue = exp [x]-1;
exp[ x ] is the threshold value and the lowest value for a level, not the highest value for a threshold level. Even so, I gave you a more elegant function to get_skill_level_from_XP(int xp) based on bisection. Didn't it work?
Oh, and that array with xp levels should be outside of any function. Otherwise at least make it static.

Quote
we shouldn't focus on raw 60 exp points, but some sort of curve that is adjusted from 1 to 100% at a low rate (i.e. exponential), and then jumps from 100% to 500% (at a higher rate), of course this has to be considered with the amount of experience a dwarf currently has in that skill... I'm not a math major, but I know an exponential fit based on rate would be the answer.
No, I don't think exponential function is the answer here.

The rest of the simulation program you posted is based on assuming that you get 60 XP per job. A newer version I posted yesterday doesn't care about it. It just multiplies total XP by xp_rate (which may introduce errors due to rounding) and then pretends you get XP in chunks of 1. Therefore it should be quite accurate, regardless of XP per job. I estimated less than 5% error based on levelling up and less than 10% error based on rounding, assuming you normally get at least 10 XP per job.

Quote
heres an idea

rate:
0 to 100% = 0 to 50% (2:1 ratio)
100% to 500% = 50% to 100% (5:1 ratio)

exp = xp / 29000

factored = rate * exp

update:
nm... bad idea. .5 x 100% xp = 50%
Dammit, I told you several times already, why this is a bad idea and you're still fixated on it. You didn't even learn that you should operate on xp left to Legendary +5 as skill rate has no influence on the xp that's already there.
Your method of scaling 1-500 to 0-100 introduces an undesired property: slopes around 100% are different, so 80 skill rate is 40% and 120 skill rate is 55%. Now, 120/80 = 1.5, while 55/40 = 1.375. This is not exactly what you want here.
I've already given you a method to do this using 1/x. It is not perfect either, but at least it uses skill rates in tandem with skill level, as they should be.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 16, 2013, 06:48:22 am
maklak: no need to get testy. im just trying sh** out (u have a bad habit of commenting negative things even when i posted/realized it didnt work). i have a learning process here.  i havent tried ur latest formula yet.

and yes i did learn to use distance from legendary.

if u had read my earlier post correctly i was messing w trying to use this as a weight against raw exp/29k which i still think is a good idea (which i took queue from you) but like i said i havent tried ur latest invention.

to be honest. it sounds like youve hit on something i was thinking/ said earlier. 60 xp shouldnt matter. i had no idea how to implement it so good on you.

i just realised your original formula
http://www.bay12forums.com/smf/index.php?topic=66525.msg3945110#msg3945110

if i add 99 and then divide by 100
results in a .01 to 1 scale for rates of 1 to 500

i dont know if this will resolve much but it could be used as a weight.

just fyi.
ill mess w ur latest formula laters
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 16, 2013, 07:50:07 am
Quote
maklak: no need to get testy. im just trying sh** out (u have a bad habit of commenting negative things even when i posted/realized it didnt work). i have a learning process here.  i havent tried ur latest formula yet.
Well, I suppose maybe I owe you an apology.

For both:
a) Skill level
b) Skill rate, factoring in skill level
You want for the current system with weighted arithmetic means:
1) a value, mapped to <0, 1> and bigger means better.
2) a weight, chosen arbitrarily, but adjustable by the user.

For skill level, I think Splinterz already mentioned having a value that works. I submitted a sensible proposal, where you sort by interpolated skill levels, which may even be how it currently works.

For Skill Rates, I submitted the generalised simulation approach and a method for using 1/x for unfavourable rates.

Weights for aggregating those values into your goal function are something entirely different.

Maybe I should just write a program myself, that takes a file with lines "xp rate\n" as input and prints values for different forumlas in the output.  I'm pretty sure I gad a working gcc on this computer. Maybe even one of them fancy text editors that can highlight syntax.

EDIT: Here is my program with these formulas. sim1 (without slopes) seems to be the most sensible: http://pastebin.com/XAypc3Ka
It can accept a file with "xp rate\n" in each line and produce a CSV that you can use for Libre Office Calc or whatever. I didn't bother with all the fancy things, like options and reading / writing to / from a file, so you have to use it like this: "$ rates <input.txt >output.txt". It ends when a line contains anything but two integers. I didn't even add any safeguards against negative numbers. It is easily extensible with other formulas. Just add more functions.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 16, 2013, 09:30:52 am
thanks for the additional formulas Maklak.

so the plan is to fix the sorting by separating the skill rates from the skill level. the distinct column sorting methods would be as previously described: total experience, skill rate and whatever else. i don't know if i'll include an option to sort based on a merge of skill rate and experience as it's not entirely intuitive what's happening.

for the role calculations, i see less of an issue combining the skill rate and the skill experience as the roles are already something of a black box. if the results of the simulated method look good, then i'll use it. i haven't tested it yet, but my intent is to implement the simulated rating in place of the current skill rate/level weight system.

the only reason i see to use both a current xp/total xp rating and a merged xp/skill rate rating with weights applied would be to allow the user to adjust, or flat out remove the skill rate addition to the skill rating for the role. since the skill rate has a direct and significant impact on the experience gained and resulting level, i'm not sure this should even be optional.

those are my current thoughts and intended direction, if this doesn't seem sound or i'm misunderstanding anything please let me know.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 16, 2013, 10:09:55 am
Splinterz, looks like our ideas of how this should work are converging.

If I get the options to sort a column by either skill level or skill rate, well, I'll sort by skill rate (which should be visible in tooltips even for 0 xp), then look at the top and see, if there's anyone with good skill level. There should be few enough for me to decide if I prefer lvl 5, 80% or lvl 0 120%, even without any formula that combines them (but it would be more handy for skill rates than just rates).

Quote
the only reason i see to use both a current xp/total xp rating and a merged xp/skill rate rating with weights applied would be to allow the user to adjust, or flat out remove the skill rate addition to the skill rating for the role. since the skill rate has a direct and significant impact on the experience gained and resulting level, i'm not sure this should even be optional.
That was the idea to combat your lvl 8.1 50% rave vs lvl 0 100% rate problem. You can have skill level formula and skill level plus skill rate formula and weight them. With the simulation approach, you could just lower the number of earned XP. Values within <5000, 30000> seem sensible. For lower ones higher skills would win. For higher ones it could go both ways.

Oh and of course anything related to skill rates should only be visible / usable if any rate for any skill is not 100. That would disable it for vanilla and enable it for caste-heavy mods, which may be what you want to avoid screen clutter. The downside is confusing users who use a mod for the first time.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 16, 2013, 10:12:20 am
Quote
the only reason i see to use both a current xp/total xp rating and a merged xp/skill rate rating with weights applied would be to allow the user to adjust, or flat out remove the skill rate addition to the skill rating for the role. since the skill rate has a direct and significant impact on the experience gained and resulting level, i'm not sure this should even be optional.

well that was my big beef, but if the #'s aren't too ridiculous, it's not a big deal.  I just think that there should be a way for dwarf's who have a significantly higher skill, but marginally lower rate, will be ranked higher, if this is done correctly, then great!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 16, 2013, 04:27:43 pm
Maklak
I couldn't figure out how to input values into your app.

I tried at the console (win32):
$ rates input.txt output.txt
rates input.txt output.txt
rate input.txt output.txt

I tried nameofexe.exe input.txt output.txt

input.txt file is

#, #
#, #
#, #

also tried
# #
# #
# #


anything I'm missing?


thanks splinterz

I now figured out rates was the name of your app, not a function call of your program
rates <input.txt >output.txt
worked with no comma's

thanks
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 16, 2013, 06:03:55 pm
I did some numbers

I updated the numbers (because I noticed a pattern...) originally, had lower levels...

Spoiler (click to show/hide)

here's a chart of columns 5-6 (the default output)

Spoiler (click to show/hide)

It appears that the closer one gets to higher levels, the less the rate counts.  Which I guess is good.  However, rate pretty much dominates lower levels...

Idea #1:

I also did something that maklak would hate.  I wanted to see what would happen if I used these %'s as a basis for factoring a standard % against, respective columns are the last 3.

See chart

Spoiler (click to show/hide)

Not really what I was expecting...  Not dynamic enough (my modification).  I think the formula requires more than a simple a * b to do what I was hoping for...

Idea #2:

However,  I found what I was hoping for, by averaging this factor with Maklak's original numbers.

Check it out.

Spoiler (click to show/hide)

I'm working on getting this done with a way less convoluted formula, but still using Maklak's original

1-(((max xp - current xp)/rate)/290)

I'm hoping to combine it with my idea of scaling 1 to 100 from 0 to 50%, and from 100 to 500 using 50% to 100%...

we'll see if I can get it done before maklak can comment on it.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 17, 2013, 02:14:50 am
Quote from: Maklak
That was the idea to combat your lvl 8.1 50% rave vs lvl 0 100% rate problem. You can have skill level formula and skill level plus skill rate formula and weight them. With the simulation approach, you could just lower the number of earned XP. Values within <5000, 30000> seem sensible. For lower ones higher skills would win. For higher ones it could go both ways.
right, i see exactly what you mean after looking at a few of the outputs from the little simulator program. i also agree that sim1 is looking pretty good!
Quote
Oh and of course anything related to skill rates should only be visible / usable if any rate for any skill is not 100. That would disable it for vanilla and enable it for caste-heavy mods, which may be what you want to avoid screen clutter.
this is actually already done in the last version. it does a check for any significant (>=25%) experience bonuses in the castes and if none are found (vanilla) it hides all skill rate displays and doesn't bother using them in the role calculations. i'll probably adjust that 25% figure or improve the check.

Quote from: Thistleknot
It appears that the closer one gets to higher levels, the less the rate counts.  Which I guess is good.  However, rate pretty much dominates lower levels...
seems the whole purpose of this discussion was to have a model where learning rate was worth less the closer to the legendary +5 experience cap a dwarf is... anyway it seems to me the rest of this averaging with 'regular' (which appears to be current/total xp) is exactly what was meant with combining an experience rating with a simulated rating, so i guess this is proof of concept? again this could be expanded upon to allow a user defined weight or ratio to value the 'regular' vs simulated ratings. that might just be overkill though, i'm not sure it needs to be that flexible.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 17, 2013, 02:52:35 am
I told you my program was quick and dirty, without command line options and what have you and I thought "$ ratings <in.txt >out.txt" was clear enough. Why write functions to use files when you can just redirect input and output streams :P

Quote
seems the whole purpose of this discussion was to have a model where learning rate was worth less the closer to the legendary +5 experience cap a dwarf is... anyway it seems to me the rest of this averaging with 'regular' (which appears to be current/total xp) is exactly what was meant with combining an experience rating with a simulated rating, so i guess this is proof of concept? again this could be expanded upon to allow a user defined weight or ratio to value the 'regular' vs simulated ratings. that might just be overkill though, i'm not sure it needs to be that flexible.

Yes, except for the current skill level I'd use interpolated levels, like 8.1, not however much XP that is. In theory if that was the only criteria the order would be the same, but when you're aggregating with other things, it is the level that matters, not XP. If you sort by XP, then adding 2k at low level may mean 2 or 3 level ups, while at Legendary it may be one. This is an undesired property. Skill level and not XP directly is what decides the quality of items, so skill level is what should be factored in.

Yes, I eventually settled for one formula based on interpolated skill level and one formula based on current xp and skill rate (where skill rate matters less and less the higher the xp), both aggregated into the goal function.

Quote
I also did something that maklak would hate.  I wanted to see what would happen if I used these %'s as a basis for factoring a standard % against, respective columns are the last 3.
Not really what I was expecting...  Not dynamic enough (my modification).  I think the formula requires more than a simple a * b to do what I was hoping for...
Good, now you understand why I was so against it. I foresaw it wouldn't work.

The sim1 formula takes some number of XP, which can be lower than 29000 to get more varied results (see what happens for 5000, 10000, 15000 and 20000, you just need to change "int sim_xp = max_xp;" to whatever you want), multiplies that with the skill rate, then simulates getting that many xp in very small chunks. It calculates the average level by multiplying current level by the amount of xp needed for the next one, adds those up and divides them by total gained XP. Then it normalises that to <0, 1>. This may be the most sensible approach, but the problem of how much XP to earn remains. 29000 is a good value, but it may not be the best value and something less may be better.

Quote
I'm hoping to combine it with my idea of scaling 1 to 100 from 0 to 50%, and from 100 to 500 using 50% to 100%...
we'll see if I can get it done before maklak can comment on it.

I've already commented on it. Anyway, now you can have fun and throw whatever formulas you can think of at the problem and see results, but I very much doubt you'll outperform sim1. I suggest that you make a version of sim1 that accepts sim_xp as the third parameter and run a few tests on that.

It is surprising how coding three functions and a simple loop for main() was something of a breakthrough for this discussion. :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 17, 2013, 03:27:57 am
thanks, this has been a learning experience.

I believe your normalizing by dividing by 20 levels.  nice.

I was working on finishing up your coded version originally, but eh, you got it done way faster than I could have.

I hope we can apply a way to merge current level/simulated level to help with ranking dwarfs.

I did a spreadsheet merge using interpolated levels vs xp/29k

I did two types of averaging

one involves factoring (interpolated % * interpolated level %) then adding this to interpolated % again, and dividing by 2.

the second was merely a combination of (interpolated level % + interpolated level %) / 2

updated:
included maklak's interpolated values (I might update his program to include these averages, so I don't have to create them in scalc)
made an error with my original interpolated levels based on interpolated level % (didn't do a (next level exp - current)/(current - lower level xp) ).

Updated again:
had the decimal of the level %'s inverted... doh!  Fixed

Spoiler (click to show/hide)

Hopefully final update:

Here's sim2 averaged with the interpolated level % (which is probably what should be used) compared to the interp distance from legendary averaged with interpolated level %
Note: no factoring graph is shown, as is shown above.
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Grumpy on January 17, 2013, 08:54:51 am
New user trying to figure out a basic feature: How do I see attributes (not traits) in DT?  I have DT 0.6.12 installed on a Mac using Dwarf Builder.
I've seen screenshots of them displayed in the grid for example. I did a search but it seemed to mostly turn up discussion about user-modified versions or advanced questions. I tried filtering based on attributes but it always results in 0 dwarves in the list.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 17, 2013, 10:23:30 am
Quote
New user trying to figure out a basic feature: How do I see attributes (not traits) in DT?  I have DT 0.6.12 installed on a Mac using Dwarf Builder.
I've seen screenshots of them displayed in the grid for example. I did a search but it seemed to mostly turn up discussion about user-modified versions or advanced questions. I tried filtering based on attributes but it always results in 0 dwarves in the list.

attributes are only available in splinterz branch

http://code.google.com/r/splintermind-attributes/

be mindful, if you intend on using it with mods, don't throw the towell in when you see the castes being drawn funny, wait until next release, that'll be fixed (but if your playing vanilla, then disregard)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 18, 2013, 09:43:51 am
I've been working on your code maklak

I'm getting get_level to return a decimal version
http://pastebin.com/CdGs1gHn
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 18, 2013, 01:32:29 pm
I don't see any problems with what you did, except for trivial things, such as using printf and cout in one program. You did something very similar to what I proposed near the bottom of this post (http://www.bay12forums.com/smf/index.php?topic=66525.msg3950510#msg3950510). It looks good, except I wouldn't subtract 1 from upperDiff, so that when you are 1 XP from the next level you still don't get a number equal to that next level.

Once you have the get_double_level_from_xp function, it is a good idea to use it instead of XP for sorting by skill and suggested roles. Oh and of course comment out the couts when you know it works. In any case, it will help you to learn gdb (http://darkdust.net/files/GDB%20Cheat%20Sheet.pdf) rather than rely on gratuitous printing of variables.

I'm not sure what you want from me? To run the program and see how well it interpolates levels? It looks fine.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 19, 2013, 11:31:32 am
Maklak:
I removed the -1,
I also think I noticed a bug in your code (let me know if I'm totally wrong about this)

I propose this fix (but still am not getting the same #'s as sim1 with what I believe should be the fix)

Spoiler (click to show/hide)

Spoiler (click to show/hide)

for 10000 50
your avg_level is 10.666 when it should be 10.333

I made the same mistake when I was posting averaged results and using the spreadsheet to record the interpolated levels.

Then I inversed the levels decimal formula.

btw, I got my debugging working with codeblocks, so no more need for cout.

I'm gonna propose the fix inside the code, and see if it remedies it.

I noticed the issue when I converted your function to do interpolation automatically, but was not getting the EXACT same results as sim2

Spoiler (click to show/hide)

and splinterz had this neat formula that worked, and mine was matching his
Spoiler (click to show/hide)

Update:
wow, I love this part of the code

I was trying to figure this out the guessing way
  if (normalised_XP >= 0)
    normalised_XP += 0.5;    // Values <0, 0.5> reserved for those suitable for a task.
  else
    normalised_XP = -0.5 / (normalised_XP - 1.0);

it's beautiful.

here's a pic of it in action
the numbers on the bottom represent #x500xp

updated to include up to 29k

Spoiler (click to show/hide)

I'm not sure if that's right though, looking at my spreadsheet, I was assuming everyone would approach 1 near the end).  looking at the sheet (you guys can't see it), 1 skill exp 1 rate % even at 29k is only 36.71%

looking at my sheet, I realized I failed to put the 29k column in (58 *500 = 28500), but when I did, all the #'s jumped straight to 1.5, or 150%
I just realized if xp >= 29k, it returns 1.

btw, your code (untouched) won't run 27000 or 28000 exp at 100% rate...

Here's some final results on the interp1 output
averaged (.5 skill .5 rate)
Spoiler (click to show/hide)

.25 skill .75 rate
Spoiler (click to show/hide)

.75 skill .25 rate
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 19, 2013, 06:26:08 pm
Ah, nice progress. I get the feeling that we're spending a bit too much effort here, but is doubles up as learning experience, so OK.

Quote
for 10000 50
your avg_level is 10.666 when it should be 10.333
Working as intended and there is nothing to fix. 10.3333 is the current interpolated level for 10000 XP, so low is equal to 0.3333. High is equal to 1, since we have enough sim_xp left to gain next level. I could just add 1 XP each time, then add the interpolated level for that, but I do the smart thing instead. Low, high and xp_gap form a trapezoid with two right angles and I calculate it's surface area. The "slope" of interpolated level stays the same until a level up. Just think of it as changing lots of additions into a multiplication by "average level" from 10000 to 11000 XP, which is 10.66666 for 10500 XP.

Actually sim1 makes more sense exactly because it always uses the current level without any interpolation. For any given level the quality and speed will be the same, no matter how close you are to the next level. I made sim2 first, then reconsidered, but left it in for comparison.

After you changed the formula for sim1, it uses the interpolated level for the current XP, then keeps on using non-interpolated level, as if it couldn't make up it's mind. Of course after your modification it does a different thing than both sim1 and sim2, so the numbers will be different. I'd not use your changes for production code, but by all means, play around with it, see what it does and ask me questions. It would be even better if you understood what these things are supposed to do, not treat them as black boxes with parameters. Try drawing sim1 and sim2 on a piece of paper. They divide XP from here to 29000 into trapezoids by level (or rectangles in case of sim1), then calculate the surface area of that (which is what happens when you compute and integral), then add a rectangle for lvl 20 if it it reached and finally normalise the result, dividing it by the simulated XP and 20.

Quote
LevelFromXP = (double(xp) /(225.0f + 5.0f*sqrt(2025.0f + (2.0f*double(xp)))));
I haven't figured out where it came from, but it looks very good on a graph. It gives the right numbers for all levels and there are only minor differences between this and my "linear between levels" approach. Plugging this directly into sim2 will introduce up to 2% additional error, which is OK. Good job on this one, Splinterz.

Quote
wow, I love this part of the code
Well, I think sim1 is better overall, but for this formula I had a piece of code that said how much effort it will take to get to Legendary+5 with current xp and skill rate. The problem was that for very poor rates it returned too negative values. One solution was to cap it at say 50% skill rate and call it a day, as you proposed, but I wanted something more elegant, so instead I used http://en.wikipedia.org/wiki/1/x When used properly, it can map a finite interval into an infinite one, or vice-versa and near the "fat part" it looks pretty nice. So I made a continuous function by glueing it with linear function for really good rates. That way I still have some kind of comparison going on for very low skill rates and nice linear properties if Legendary+5 is closer than 29000 xp after factoring in the skill rate. It could be further tweaked to make the linear part longer, but I'm unsure what would be better.
Your graph for this will look even better if you put more horizontal lines there, so you can see what skill levels and rates match each other according to this formula.
With 28500 XP and 1% rate you are still 500*100 = 50000 XP away from legendary+5 (and depending on how XP gains are rounded, will never get there, because for example 60/100 = 0). Legendary+4 is still very good, that's why for "best roles" you'd want to aggregate both this formula and current skill level to make a judgement. I'd be pretty happy with instant Legendary+4 myself, if it doesn't rust.
Both my simulation formulas would still return 19/20 or more in this situation, which means they aggregate skill levels and rates more how a player would want them to.

Quote
btw, your code (untouched) won't run 27000 or 28000 exp at 100% rate...
Come again?
Hm, infinite loop for 26601 XP to 28999 XP, which is level 19.
Damn it, no gdb on this computer :(
OK, the error was in get_level_from_xp where max should be initialised to 20, not 19. That removes the infinite loop. Sorry for the bug.

Quote
.25 skill .75 rate
This one looks the best to me, except 1% rate sucks no matter what, but then you normally don't get that low in mods. These graphs are why the pseudo-simulation approach is better. No matter how you tweak the weights for skill and skill_rate_eval, it still won't give you exactly what you want for all xp and skill rate values.

I suggest that you experiment with simulate_skill_gain, but change int sim_xp = max_xp; to less, say 20000, 15000 and 10000.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 19, 2013, 08:52:49 pm
I'm still a bit confused then as to how your formula does that advanced math stuff on triangles and mine and splinterz come out the same...

but...

I guess that's not where the issue is at?

the issue is at where your formula follows up with a drawing of the difference to next level.

where mine doesn't do that, because mine is called before?

to be honest, I've had some fun with friends tonight with drinks and all

so to try and figure it out before I know you'll check it out around 3 AM my time will mean I haven't had the fortitude to figure it through yet.

so if you can understand my miscomprehension, and explain in detail why Splinterz sqrt formula is drawing the level at around the right range, yet is not enough to produce sim2 results, would be awesome!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 20, 2013, 02:52:00 am
Quote
I'm still a bit confused then as to how your formula does that advanced math stuff on triangles and mine and splinterz come out the same...
Hey, last time you said, they weren't exactly the same. Anyway, my sim1 and sim2 formulas pretend they perform numerical integration (http://en.wikipedia.org/wiki/Numerical_integration), sim1 uses something similar to the rectangle method (http://en.wikipedia.org/wiki/Rectangle_method), while sim2 uses trapezoid rule (http://en.wikipedia.org/wiki/Trapezoidal_rule), but in this particular case sim1 is better, I think. sim1 only cares about current level rounded down. Wikipedia has some nice pictures on numerical integration.

If you want to plug Splinterzes formula into sim2 (there is no reason to do it for sim1, except if you take the floor of it), here's how to do it: 
Code: [Select]
double getLevelFromXP (int xp)
{ return (double(xp) /(225.0f + 5.0f*sqrt(2025.0f + (2.0f*double(xp)))));
}

double simulate_skill_gain_slopes_2(int xp, int rate)
{ if (xp >= max_xp)
    return 20.0 / 20.0;
  if (rate == 0)
    return getLevelFromXP(xp) / 20.0;       // Obviously stays the same.

  int sim_xp = max_xp;    // 29k seems like a good value to me.
  sim_xp = (sim_xp * rate) / 100; // This is how much XP will go towards skill learning.
  int total_xp = sim_xp;
  double ret = 0.0;
  int curr_level = getLevelFromXP(xp); // Convert to int
  int curr_xp = xp;

  while ((sim_xp > 0) && (curr_level < 20))
  { int xp_gap = xp_levels[curr_level+1] - curr_xp;         // How much XP till mext level?
    if (xp_gap > sim_xp)
      xp_gap = sim_xp;
    double low = getLevelFromXP(curr_xp);
    double high = getLevelFromXP(curr_xp + gap_xp);
    double avg_level = (low + high) / 2.0;  // Average scaled level for this iteration.
    ret += xp_gap * avg_level;
    curr_level++;
    curr_xp = xp_levels[curr_level];
    sim_xp -= xp_gap;
  }
  if (sim_xp > 0)
    ret += 20 * sim_xp;

  ret /= total_xp;
  ret /= 20.0;
  return ret;
}
It uses the exact same method as sim2, but the output will be slightly different.

EDIT: BTW, this is my formula for lvl(xp), from solving the quadratic equation:
Code: [Select]
min_xp_for_this_lvl = 500 * lvl + 100 * (lvl * (lvl -1))/2
interpolated_level(xp) = (-9.0 + sqrt(81.0 + (2.0*xp)/25.0)) /2
It gives exactly the same results as Splinterzes formula, but I don't know why the two are equivalent.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 20, 2013, 09:54:39 pm
Okay, sobered up (man, too much tequila...)

So.  I realized why my question was stupid.  I was thinking that my formula and splinterz were doing something correct, but as you pointed out, sim1 is truncating the xp to the starting point for each level?  Which is why they are getting values NEAR each other (splinterz code, and mine), but are not the same as sim2.

I guess what I'm hoping to resolve is how to make it work like sim2, because I am having a hard time reading it.  But I think I might be able to get it up.  I think I just need to add to the current xp (of sim1) the interpolated amount of xp no?

I'm leaning more towards sim2, merely because an interpolated value more represents a dwarf's actual progress, combined with averaging it with just a dwarf's interpolated level, this will "reduce" the effect of sim2.  I'm not sure why you like sim1 more than sim2.

btw,
when I mentioned that i was thinking rate of 0 to 100 could be .01 to .5, and 100 to 500 could be .5 to 1, I was thinking along the lines of multiplicative inverse (and mentioned exponential methods), but I'm not so good with math as you are.  I was trying to create some #'s using logs, but it wasn't working.  that's why I was like "this is so beautiful"

update:
i see now that ur code isnt adding xps.... i think u mentioned that.
Title: Optimization Plans
Post by: gn0rt0n on January 21, 2013, 11:41:28 am
Hi everyone. I wanted to say thanks for all your hard work. I am amazed at the effort you all put in to this project. It is a must-have for me as I play DF.

I'm still quite new to DF, but have put a lot of time into research as I generally enjoy meta-gaming as much or more than the actual game itself. I like to work to automation as much as possible and don't like the overwhelming micro of certain tasks.

To this end, my games usually end after the first couple large migrant waves since I now tend to start to micro job management. I think that Optimization Plans are exactly what I am looking for. However, I would like to look over some sample plans from others on the forum to get a feel for how others are implementing the priority/ratio system.

If any of you have some plans you would be willing to share, I would love to look them over. As I mentioned, just having the auto assign feature is only part of what I am looking for. I want to understand the logic behind other players priority/ratio system as I feel I could be a bit more efficient.

Also, I love the request from a few days ago to add Exclude options for those in Squads in addition to active Military. I think that would help my calculations as well.

Thanks again,
G
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 21, 2013, 03:55:30 pm
sim1 vs sim2:
I like sim1 more for 2 reasons:
1) The returned numbers are lower, so the results for all kinds of xp and rates should be slightly more spaced out. This is a good thing for comparison.
2) sim1 works a bit like the game. Yes, you have xp, but until a dwarf makes it to another level, his speed and quality and chance to hit and other things are based (presumably) on the current skill level, not some interpolated value. sim1 pretty much thinks "OK, so you get this much utility form this level, this much from the next one, this one from the level after that and so on." Then it averages that.

I made sim1 and sim2 as close as possible. Less than 10 lines of code are different between them. To make sim2 that looks more like sim1, I gave you some code recently, namely this:
Code: [Select]
    double low = getLevelFromXP(curr_xp);
    double high = getLevelFromXP(curr_xp + gap_xp);
    double avg_level = (low + high) / 2.0;
There is no reason to make sim1 work like sim2 when you already have sim2 and the above replacement for it's interpolation.

Quote
i see now that ur code isnt adding xps.... i think u mentioned that.
Adding them to what? The "beautiful" formula actually subtracts current xp, while sim1 and sim2 add xp just fine.

gn0rt0n, I don't fully understand your question, but I think the answer might have something to do with a few last pages in this thread. We were discussing recommendations for jobs and sorting by skills and other factors quite furiously.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 21, 2013, 06:21:17 pm
maklak:

your very original formula did a 500 run loop of adding factored xps (60 * rate).  Thats what i was referring to when i said sim1 and sim2 don't seem to be adding xps (everytime a new xp is calculated (at least for sim1), it's only the rounded down version of the next level (i.e. based on the array).  I was trying to figure out where I could include an option to add accrued xp (you mentioned that my modded sim1 formula starts with an interpolated level, but afterwards, all the levels are rounded down (xp wise)), I was trying to remedy that, but your sim formulas r doing geometric "shortcuts"

gn0rt0n: is referring to the labor optimizer (my latest and greatest contribution to dt, of course Splinterz recoded it optimally ;), I've been going on for months about it on this thread using a over complicated spreadsheet, but finally had the balls to sit down and hard code it in).

And the ability of the labor optimizer to exclude dwarfs assigned to squads vs just active militia (something I was bringing up to Splinterz attention when he was originally coding it, but since I knew the filter script to filter by active squads, it was a non issue for me, but it seems to be an issue for those who don't know how to do the scripting).

Here's my exported labor plan (note, a priority merely factors a dwarf's raw fit % down vs other roles)
Spoiler (click to show/hide)

Update:
Maklak, okay, I think I see what I need to change
ret += xp_gap * curr_level;

to something else, in sim2 it's
ret += xp_gap * avg_level;

so I'm thinking I need to add the xp to curr_level but interpolate curr_level?

arghhh... not sure, because then the level is still reset in the following statement
curr_xp = xp_levels[int(curr_level)];

okay, I think I got it... it's ret that I need to mess with

ah, nm.  I have no idea what to mess with to try to get sim1 to be more like sim2, but using actual increases in xp vs the geometric methods...  I'm not really sure what some of these different xp values are supposed to represent.

I guess sim_xp is supposed to be the distance from 29k?  But is updated using only the gp gap to next level?

Is this measuring the avg # of jobs to reach next level or something?

update:
okay. i see ur code on using splinterz formula.
its doing one iteration per level until it hits 20. that should help me figure things out.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 22, 2013, 04:36:23 am
Quote
your very original formula did a 500 run loop of adding factored xps (60 * rate).  Thats what i was referring to when i said sim1 and sim2 don't seem to be adding xps (everytime a new xp is calculated (at least for sim1), it's only the rounded down version of the next level (i.e. based on the array).  I was trying to figure out where I could include an option to add accrued xp (you mentioned that my modded sim1 formula starts with an interpolated level, but afterwards, all the levels are rounded down (xp wise)), I was trying to remedy that, but your sim formulas r doing geometric "shortcuts"
Ah yes, my original formula was quick and dirty and I mentioned, it had obvious optimisations by substituting division with addition. For example when you have 10000 xp, at 60 xp per job and 130% rate, you get (11000 - 10000) / ((60 * 130)/100) = 12, but since (((11000 - 10000) % ((60 * 130)/100)) != 0) you need more than 12 jobs to get to next level, so it it actually 13 jobs at level 10 to get to level 11.
So instead of adding ((60 * 130)/100) xp 13 times, you can multiply it by 13, add it once, add 10 13 times to the sum of levels and subtract 13 from the number of iterations left. This is more complex than a simple addition loop, but works the same and for a large number of additions it should be faster. Oh yeah, and you want to check if ((60 * 130)/100) == 0 and treat it as a special case.

Quote
Here's my exported labor plan
You haven't written what those numbers are.

I thought this was quote self-explanatory, but I'll add even more comments.
Code: [Select]
double simulate_skill_gain(int xp, int rate)
{ if (xp >= max_xp)
    return 20.0 / 20.0;    // Already at max level. Getting more XP won't change the skill level.

  if (rate == 0)
    return get_level_from_xp(xp) / 20.0;       // Obviously stays the same.

  int sim_xp = max_xp;  // This is how much xp will be simulated. 29k seems like a good value to me. 10000 or 20000 might also work.
  sim_xp = (sim_xp / 100.0) * rate; // This is how much XP will go towards skill learning after factoring in the rate.
  int total_xp = sim_xp;                         // This is just used for division at the end.
  double ret = 0.0;                               // return value, based on the average level for this simulation.
  int curr_level = get_level_from_xp(xp);   // current (non-interpolated) level for our xp.
  int curr_xp = xp;                               // current xp in that skill.

  while ((sim_xp > 0) && (curr_level < 20))     // while there is xp to simulate gaining skill and not yet legendary +5
  { int xp_gap = xp_levels[curr_level+1] - curr_xp;         // How much XP till next level?
    if (xp_gap > sim_xp)               // If we run out of sim_xp before reaching the next level, we just use it all up and not get to next level.
      xp_gap = sim_xp;
    ret += xp_gap * curr_level;   // We stay on this level until enough xp is accumulated, so we use that xp as the weight for current level.
    curr_level++;                          // This is only correct if we make it to the next level, but if we don't the loop ends here anyway. 
    curr_xp = xp_levels[curr_level];  // This is the lowest amount of xp on next level, but really curr_xp += xp_gap;
    sim_xp -= xp_gap;                  // We subtract the amount of xp spent on this level from the total number of xp to simulate.
/* More correct formulas here, but since the loop ends when sim_xp runs out, what I have here now works just fine:
    ret += xp_gap * curr_level;
    curr_xp += xp_gap;
    curr_level = get_level_from_xp(curr_xp);  // Function call here, so you might preffer the ++.
    sim_xp -= xp_gap;
*/
  }

  if (sim_xp > 0)
    ret += 20 * sim_xp;    // Any leftover sim_xp means Legendary +5, so we take that into account.
  ret /= total_xp;            // Divide by total xp to get the average level for this simulation.
  ret /= 20.0;                // Normalise to <0, 1>
  return ret;
}

Quote
ah, nm.  I have no idea what to mess with to try to get sim1 to be more like sim2, but using actual increases in xp vs the geometric methods...  I'm not really sure what some of these different xp values are supposed to represent.
I have no idea why to mess with sim1 to be more like sim2 when you already have sim2 and I've even given you a sim3, which is sim2 using the sqrt formula for level from xp.
I use multiplication instead of addition, because:
1) It is faster for a large number of additions.
2) The "pseudo-integral" methods (sim1 and sim2) don't care if you get xp in chunks of 60, 10 or whatever else. Splinterzes criticism of the "add 60 500 times" method stemmed from things like military skill gains being erratic. sim1 and sim2 pretend that xp is earned in chunks of 1, but the total amount of it gained is governed by xp rate.
As I already told you, this introduces two errors:
1) Rounding of XP rates. I'm pretty sure the actual xp used after factoring in xp rates stays integer, so for exaple 104% * 60 is 62 and not 62.4. This can't be avoided by sim1 and sim2, because we don't know how much is 60, but should be relatively small and therefore the outcomes for sims with different methods should be in correct order, regardless of method used, except for very close values.
2) Rounding around levels. When you are very close to the next level, sim1 and sim2 will make that small amount count towards this level and jump to the next one. The "add 500 times" method will make 1 job count towards this level and add the xp, landing us well inside the next level.

Trying to fix something you don't understand is a recipe for a disaster.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 22, 2013, 08:21:17 am
thx. ur clarifications helped a lot.  i knew it had something to do with jobs till next level. thanks again

if u import the csv sheet into a labor optimization plan. the numbers become clear.
in some order its name of role (actually the name is not so important as it can be anything, the labors r actually assigned via labor id, this field is merely a descriptor), then the labors id, the ratio to assign (translates to a number based on dwarves selected) and a priority (ie factor to reduce a roles % by, which is used in relation to other roles/jobs)

update:
maklak:
now that I see your formula, I see trying to carry xp over into next iteration was silly, since each iteration starts at it's own level (although, starting at the midpoint of the 1st iteration kind of makes sense, but since that's already considered in the calculation... maybe not)

I had some ideas, the first one I think is a non starter, but what about a sim3 that measured average level each iteration from current to level 20 (i.e. distance from max skill), I figured the end result would be a higher rating, which probably wouldn't serve any purpose.

secondly, I don't know if this formula would help in optimizing your formula's.
XP=((50 * LEVEL) * (LEVEL + 9))

Which is very interesting, such a simple foil formula, basic algebra (not that I recall any of it).  Splinterz thought it wouldn't work for getting interpolated levels, but it does.  I don't know if it would help identifying the curve for your calculations, either way, it does away with an array, and splinterz other formula does away with the need for your binary search (which I ALSO thought was neat, never seen it, but makes perfect sense.

Update:

wow, the formula for xp is so friggin simple
500 xp for 1st level, +100/lvl (+ initial 500) for every level afterwards...

Update:
Here's maklak's original code with his updated posts (lacking mine)

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 23, 2013, 07:27:40 pm
if traits modify eligibility for skills. maybe they should affect the rate of learning?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 24, 2013, 04:27:36 am
Splinterz said sim1 is good enough, so perhaps it it time to move on. We've spent what, 2 weeks and 3 pages tuning this? I'm sure there are other things on the TODO list for Dwarf Therapist.

Quote
if traits modify eligibility for skills. maybe they should affect the rate of learning?

They don't affect the rate of learning. AFAIK you get the same XP regardless of stats and traits. Well, there are exceptions, like honesty (straightforwardness?) affecting the ability to lie, but those are few. They do affect how good a Dwarf is at a job, so they should be factored in separately. I actually prefer the current system with arithmethic means for this than what you propose.

Quote
I had some ideas, the first one I think is a non starter, but what about a sim3 that measured average level each iteration from current to level 20 (i.e. distance from max skill)

I would have to see it to comment on it, but I think sim1 is good enough.

Quote
secondly, I don't know if this formula would help in optimizing your formula's.
// xp(lvl) = 500*lvl + 100 * (lvl * (lvl -1)) / 2;
// xp(lvl) = 50 * lvl * (10 + 2*(lvl -1)/2);
// xp (lvl) = 50 * lvl * (lvl + 9);   // Is legit.
// max_xp_gap(lvl) = 500 + 100*lvl;
Hm... to find the initial level from xp, you could use Splinterzes formula for level_from_xp, then round it to int.
To get the xp gap to next level you could use this.
Yes, you could skip the array and binary search with these two. There would be less code, but more comments that way.

EDIT:
Quote
so i was proposing modifying the rate (ie learning rate) of those skills to 0 if those skills couldnt be learned...

Ah, then I agree. If you can't learn liar because of honesty, set the learning rate for that to 0 (inside DT, not inside game) and proceed.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 24, 2013, 06:40:59 am
maklak
i wasnt proposing to change the arithmetic mean method. however, after reading the wiki. traits dont affect eligibility of labor skills but social skills that can be learned.  so i was proposing modifying the rate (ie learning rate) of those skills to 0 if those skills couldnt be learned...

but... since there social skills and not labor skills... they could only really affect some noble positions such as some mwmod nobles like the psychatrist that rely on social skills

Splinterz:
ctrl-a for selecting all currently listed dwarfs would be cool (I use script filters to exclude militia, nobles, and this simple hack would let me select the rest of dwarf's listed)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on January 24, 2013, 07:50:47 pm
1. Is skill rust displayed by default? I have dwarves that are rusty in various minor skills and one who's definitely lost a level to rust, but I don't see any orange highlights anywhere.

2. Where's the manual? I've forgotten how to do some things.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 25, 2013, 05:55:54 am
1. Is skill rust displayed by default? I have dwarves that are rusty in various minor skills and one who's definitely lost a level to rust, but I don't see any orange highlights anywhere.

2. Where's the manual? I've forgotten how to do some things.

1. unfortunately i've found no reliable way of determining rust vs very rust and as far as i can tell there are bugs with rusting skills that make this even more difficult. the only thing i'm able to detect is if a skill has already begun losing xp. those skills will be orange in the tooltip and in the dwarf detail pane.

2. i know, i know it's sorely needed with the new features, i just haven't had the time. after this next patch goes out i'll try to get a little webpage setup or something, as well as moving these discussions about the branched version to a new thread. i haven't heard anything from DwarfEngineer for over 6 months, so it's looking less and less like a merge will ever happen.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: zwei on January 25, 2013, 09:06:39 am
1. Is skill rust displayed by default? I have dwarves that are rusty in various minor skills and one who's definitely lost a level to rust, but I don't see any orange highlights anywhere.

2. Where's the manual? I've forgotten how to do some things.

1. unfortunately i've found no reliable way of determining rust vs very rust and as far as i can tell there are bugs with rusting skills that make this even more difficult. the only thing i'm able to detect is if a skill has already begun losing xp. those skills will be orange in the tooltip and in the dwarf detail pane.


Actually, Quietust just figured it out:

rusty = skill.rating > 0 and skill.rating * 0.5 <= skill.rusty
very_rusty = skill.rating >= 4 and skill.rating * 0.75 <= skill.rusty
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 25, 2013, 09:43:05 am
1. Is skill rust displayed by default? I have dwarves that are rusty in various minor skills and one who's definitely lost a level to rust, but I don't see any orange highlights anywhere.

2. Where's the manual? I've forgotten how to do some things.

1. unfortunately i've found no reliable way of determining rust vs very rust and as far as i can tell there are bugs with rusting skills that make this even more difficult. the only thing i'm able to detect is if a skill has already begun losing xp. those skills will be orange in the tooltip and in the dwarf detail pane.


Actually, Quietust just figured it out:

rusty = skill.rating > 0 and skill.rating * 0.5 <= skill.rusty
very_rusty = skill.rating >= 4 and skill.rating * 0.75 <= skill.rusty

well i'll be damned, that's great news, thanks! i'd asked a while ago in the dfhack thread and on irc but nobody responded. ;P
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: gn0rt0n on January 25, 2013, 02:19:46 pm
Are there any versions of the current build available for OSX? All I am finding is old stuff. I thought I had a link for it in the past, but can't find it now. Maybe I'm just remembering incorrectly.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 25, 2013, 07:26:27 pm
request:
option to delete labor optimization plan

derp

I have an idea for a great great great great feature

the thoughts of a dwarf

I.e. the z screen...

normally to find my angry dwarf's, I have to view him in DT, see who's angry, and then open up DF and find him via the Unit screen (after sorting the units)...

imagine... I could do this all from within DT... (I could read the negative thoughts from DT and then focus on the dwarf afterwards, rather than reading in DT, and trying to hunt him within DF)

it would even be nicer if DT could center on the dwarf.  Wow, what a great idea.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 26, 2013, 05:04:11 am
yeah it's been asked a few times before to include the recent thoughts... we'll see..
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 26, 2013, 05:30:36 am
An option to cheat and change a Dwarf's skills, attributes and personality, like Runesmith did and JDwarf does would be useful for some kinds of science and testing.

In my opinion, displaying thoughts in the big tooltip over a Dwarf would be useful, but I would rather have a dfhack command to display thoughts and the number of dwarves that have them.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on January 26, 2013, 08:50:21 pm
1. unfortunately i've found no reliable way of determining rust vs very rust and as far as i can tell there are bugs with rusting skills that make this even more difficult. the only thing i'm able to detect is if a skill has already begun losing xp. those skills will be orange in the tooltip and in the dwarf detail pane.
I still can't see it anywhere... I don't know if I'm missing something obvious.

Spoiler (click to show/hide)
Skills in yellow are Rusty in-game, and skills in orange are Very Rusty. The skill with the red box around the XP total is the one that's lost a level. All of this is my highlighting.

I'm using branch 19.3 and DF 34.11.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: feelotraveller on January 27, 2013, 01:03:27 am
I would like to be able to see my Dwarves starting or maximum attributes in addition to what their current value is.  Wouldn't matter which and I'm guessing that starting values would be easier.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 27, 2013, 02:59:47 am
maklak:
attributes. i like feelots... idea of starting max tracking.
u think theres a way to combine (maybe some sort of weighted average?) this into attribute % by

1. using a value derived from placement in raw bins with (current method), possible weight .5
2. placement from initial starting value and max value (ie 200% of initial would be 100% for this, initial would be 50%).  What would need to be known here is what is the minimal value a dwarf can fall below initial.  This represents how much a dwarf can actually train up/down, possible weight .25
3. possibly a 0 to 5000 scale (50% would be based on bin median)
3. a value based on max possible for that attribute (i.e. 100% would be 200% of last raw value).  What would need to be known here is what is minimal value a dwarf can fall below lowest bin (i.e. below 1st value defined in raws for that attribute), this represents how much a dwarf is out of possible max of an entire population (i.e. 200% of maximum possible starting value is the max any dwarf can hope to attain, and is relative to all dwarfs). possible weight .25

Update:
I don't think 3 is needed.  It can be accounted for in 2.
Example:
Two dwarf's with the same current value would different in their attribute % by comparing their initial values to current possible max.  Almost like a learning rate.
A dwarf that was at it's current possible max, would have his current value / 1 (or something like that).  These values need to be normalized.
A dwarf that was not at his current possible max would have a lower divisor, and hence a higher end result #.

currently attributes are determined by where they fall within the starting bins. if they exceed or drop below possible starting bin values, the go into the <1% or >99% values.

For the answer to 2 and 3, I see there are tokens that define the "rust" of an attribute
MENT_ATT_RATES
Mental attribute gain/decay rates. Defaults are 500:4:5:4.

and

Phys_att_rates
Physical attribute gain/decay rates. Defaults for STRENGTH, AGILITY, TOUGHNESS, and ENDURANCE are 500:3:4:3, while RECUPERATION and DISEASE_RESISTANCE default to 500:NONE:NONE:NONE.

looks like default rust is 4.

Whatever that means, it's possible the decay formula is the same as Q's as pointed out earlier.

If it is (testing I guess?), maybe we can come up with a more comprehensive formula for identifying attribute %s.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 27, 2013, 06:27:56 am
i think in 19.3 the only place the 'lost xp' is indicated is on the dwarf panel, not in the tooltips. since the conditions of rust were figured out recently, i've already incorporated them into the next build, and they'll also highlight the tooltip too.

all the decay variables do is set limits on a set of counters. each counter increments to it's max and then the next counter is incremented, etc.. all this is for the purpose of adding layers of rust. the number of rust layers is what's used to determine if a skill is rusty or very rusty. now that this can be determined, it should probably be considered when finding ratings for skills (specific to role calculations)

the maximum attribute values for a caste shouldn't be too difficult to display, but i'm not sure of the best way to roll them into role calculations, or if it's necessary.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 28, 2013, 03:57:39 pm
on all that stuff about attributes.

splinterz and i after a lot of discussion, decided to extend the last frequency bin to double the last value. (a dwarf can attain twice his initial starting value in attributes, so it goes to show the max a dwarf can achieve is 200% max embark possible value).

see
PHYS_ATT_CAP_PERC
http://dwarffortresswiki.org/index.php/DF2012:Creature_token

so, strength, that max embark value is 2250, then a new binary frequency will account for 2250 to 4500.

so now instead of being
<1% 0 to 1st bin (below lowest embark possible value)
1 to 99% being the 6 bins (old 98/6% per bin)
>99% past 6th bin (i.e. past 2250)

will now be
<1% below lowest embark possible value)
1 to 99% being 7 bins (so 98/7) 7th bin being 2250-4500 for strength
>99% beyond last bin

it's important to have a 99%+ for multiple castes (like mwmod) because the castes bin's values are factored by the caste frequency (which is kind of confusing, but anyways).

Just posting this for anyone who cares.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 28, 2013, 05:06:15 pm
Well, as long as I get enough different displayed values for attributes and I can see who is better at a glance, I can manage.

Regarding your previous post, I really see no point in using different methods for this and taking an arithmetic weight for them. I didn't answer it, because it was quite difficult for me to figure out what you wanted me to do. The way I see it, you're over-thinking a problem with a simple solution. You may want something complex for advice on what to assign to a Dwarf, but the part that just picks what values to display for an attribute need not be that way.

Yes, you can compute the median, assume it's 50 and actually do a lot of calculations on bins, get the cumulative distribution function for an attribute that takes into account the caste frequencies, then use it to map that attribute values to their cumulative distribution function, so that for each attribute the displayed value is it's probability of being equal to this or less for a starting dwarf. But:
1) You still have a problem with high physical attributes from military training and 1% above starting maximum is a very conservative estimate, so you'll still end up with some "99+" after a few years, which is against the point of displaying so many values. 
2) Some other methods would be simpler and more intuitive, take less effort, coding time, debugging, etc, while being effective too.

Consider my proposal from some time ago:
int disp = (attr + 25) / 50;    // Use "00" for >99
It has a resolution of 50, which to me is sufficient.
You can guestimate the attribute at a glance, unlike the bin method. 20 is obviously around a thousand.
The density is the same everywhere, so 30 is 1.5 +- 0.06 as much as 20, while with the bin method you only know that bigger is better, but not by how much.
No "Dead zone" between 39 and 63.
Yes, it will almost never use the full spectrum of numbers, but it doesn't need to. For a normal population you should get values in <500, 2000>, perhaps more, which maps to <10, 40>. 30 values with resolution 50 would suffice for me here.
Yes, you loose the information about the median (or average), but it could be displayed in an extra row, like those that are above dwarves in labour assignment grid.
You have no irregularities for weird attribute distributions, such as [1000:1000:1000:1000:1000:1000:1000] or [1000:2000:3000:4000:5000:5000:5000] or whatever else the modders come up with.

So to me, the simple method is preferable here, but I can manage with other methods, as long as with what you use:
1) Higher value always means higher attribute - v 20 beta satisfies this.
2) A lot of different values are used and they are easy to read at a glance.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 28, 2013, 05:24:37 pm
99% is double starting (which is based on PHYS_ATT_CAP_PERC token) maximum possible embark
example
strength
450:950:1150:1250:1350:1550:2250
double 2250 is 4500

0-450 is <1%
450-4500 is 1-99%
4500-5000 is 99%+

the importance of bins is to allow us to compare place markers between diff attributes. those place markers r defined in the raws and represent a populations breakdown of probability and offer meaningful tracking of progression.

place markers means
take agility
150:600:800:900:1000:1100:1500
1500 agility is the same % wise as 2250 strength
which matches probability of distribution (at least concerning embark, and what can be expected each migrant wave)

what i was trying to do w the starting value (the post u didn't comment on) was to somehow include a dwarfs possible max attribute he can train up to. ie max potential (which is 200% starting).  so two dwarfs at 2500 strength would be rated differently by comparing their max attainable strength.

This is where I was hoping you could help Maklak.
comparing their starting values shows what their max value could be.  Two dwarf's with the same current value would be compared by: A dwarf with a higher max potential value would be rated higher than a dwarf with a lower max value.


Kind of similar to how skill rating was adjusted by comparing their rate.  Of course the rate formula was a bit complex, I was hoping you could help offer an idea for this as well.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 28, 2013, 08:25:00 pm
minor feature request

when I apply a custom profession

it renames my dwarf's description to the custom profession.

I don't care for that, especially with the labor optimizer and then trying to set a default hauler at the end.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Itnetlolor on January 28, 2013, 09:39:47 pm
Just a small question:
Has anyone made a pre-set list of filter scripts, roles, and optimizers (like a packaged file of them, or a sort of plugin pack)?

I already crafted a few of my own, like filters to find out dwarves that are more/less than 50 happiness, Dwarves with no employment whatsoever (or cleared, and forgot to assign), and a few others. However, with the optimizer and roles, I don't have all that much pre-set; or at least, I'm not clear on how the optimizer optimizes (and how it ties in with the roles and whatnot). I test-optimized, and it pretty much auto-assigned my entire fort into hauling duties.

I wasn't sure if the optimizer auto-assigned dwarves to what they're best suited for or not, or what kind of parameters I needed to set to make it work properly, though the profiles of the dwarves stated such.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 29, 2013, 04:06:08 am
Just a small question:
Has anyone made a pre-set list of filter scripts, roles, and optimizers (like a packaged file of them, or a sort of plugin pack)?

I already crafted a few of my own, like filters to find out dwarves that are more/less than 50 happiness, Dwarves with no employment whatsoever (or cleared, and forgot to assign), and a few others. However, with the optimizer and roles, I don't have all that much pre-set; or at least, I'm not clear on how the optimizer optimizes (and how it ties in with the roles and whatnot). I test-optimized, and it pretty much auto-assigned my entire fort into hauling duties.

I wasn't sure if the optimizer auto-assigned dwarves to what they're best suited for or not, or what kind of parameters I needed to set to make it work properly, though the profiles of the dwarves stated such.

I haven't had much luck figuring out the haulers and I use a custom profession to assign hauler's afterwards.
Max Jobs per dwarf to something like 12 to 20 (I recommend 12 due to rusting of skills)
Auto-assign labors sets any dwarf that doesn't meet % of labors assigned.
Example, at 12 labors per dwarf, and 50% auto assign haulers.
anyone who has 6 labors or less will become a hauler.
Lastly.
percent total jobs.  Set this somewhere between 50 to 75% (or whatever you want), and it will assign more labors to dwarfs.  100% means every dwarf will have 12 labors (if you have 12 Max Jobs Per Dwarf)

I have a ton of scripts btw.
these are the ones I mainly use from my %appdata%\udp software\dwarf therapist.ini file
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 29, 2013, 04:13:50 am
Splinterz
an ability to choose what labors to assign to my haulers (i.e. from the labor optimizer editor). Maybe allow a user to define a custom profession to apply for the hauling?

also an ability to assign everyone to hauling (I tried to set it to both my jobs to assign and haulers to 100% and it assigned 2 out of 13 dwarfs, weird). 

for example:
my haulers I like to also assign feed patients/prisoners
push/haul vehicles
and architect
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 29, 2013, 04:41:14 am
Tthistleknot, is there a way for you to get the starting attribute for current dwarf? If there isn't then all you have is the current value. Another problem is that some attributes train fast (for military), some slowly and some are only supposed to rust (musicality), except in the mod I play, there are concerts that boost attributes for a while. Another possible problem is that some syndromes can temporarily change attributes. Or even change them for good, if you mod in something like a potion of +200 strength [CE_PHYS_ATT_CHANGE:STRENGTH:100:200:START:0].

If you can get the current value and the cap on an attribute and really want to, you can use something similar to sim1.
Code: [Select]
input: int att, int att_cap;  // Current attribute value and cap.
int att_sim = 2000; // Or whatever you think is prudent.
int max_delta = (att_cap -att) > att_sim? att_sim : (att_cap -att); // min {att_sim, att_cap -att}
double ret = ((att + att + max_delta) * max_delta) / 2.0;   //  Or  att * max_delta + (max_delta * max_delta) / 2.0
// if (max_delta != att_sim)
  ret += (att_sim - max_delta) * att_cap;
ret /= att_sim;   // Ret is now the average value for this attribute when you gain 2000 times in it and cap at some point.
return ret;

That said, I've never seen a dwarf stop gaining a physical attribute from military training, the gains are rather slow anyway and for this reason I care about the current value more than about the hypothetical maximum.

> filters to find out dwarves that are more/less than 50 happiness
Sort by happiness in DT, then check the unhappy ones in-game.

> Dwarves with no employment whatsoever (or cleared, and forgot to assign)
I think there was an option to sort by the number of assigned labours, but this includes hauling of course. Military dwarves will deselect all their civilian labours repeatedly after getting to 11 weapon skill, so for now there is nothing to be done here. Someone's hypothesis is that this is a leftover from 40d that should be removed to allow for civilian defence programs, but there was no definitive answer on the mantis. 

I assign labours manually in the grid view. I usually want 2 or 3 for each quality improving labour (crafting, farming, etc.), a few miners, a few woodcutters and a few extra masons who are locked out of workshops by setting profiles to high skill only. The rest get assigned to hauling, butchering, threshing, glazing and so on as generalists. I don't trust auto-optimizers. Besides, they usually say that my best military is also very good at everything else, due to their high agility. Yes, you can base the selection on attributes and "Likes steel and helmets" and get a quality boost in the end, but for me the most practical method of choosing professionals is estimating how fast they'll get to Legendary+5. Because even with different attributes, with maxed out skill, they will work blazing fast, make about 25-30% masterworks, lots of exceptional items and items 1-5% worse than that, which to me is both acceptable and not worth the trouble of factoring in attributes and personality. 
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 29, 2013, 04:45:33 am
Tthistleknot, is there a way for you to get the starting attribute for current dwarf?
yes.  splinterz has it in his latest beta.

THANK YOU FOR THE FORMULA.  What does 2000 represent?  I see you stated, when you gain 2000 times in it... so each dwarf is different (basically they can double their initial value).  I'll have to read into your code a bit.

PM me if you want the beta, I'll be up for prolly another hour.

concerning attribute rust, q had this to say
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 29, 2013, 07:09:36 am
@Itnetlolor: i'd like to include more defaults, but what i may end up doing is just putting some examples into the documentation when i get around to it. that said if you (or anyone else) has scripts/roles/optimization plans they'd like to contribute, by all means send them my way.

@thistleknot: custom professions are intended to override the dwarf's profession. it sounds like you're using it as a work around for another problem. what's the actual issue? push/haul vehicles is already marked as a hauling labor. the only different hauling labor from DF is cleaning. feed/recover patients i disagree on, as i like to have dedicated nurses for that, same for architects. i'd rather keep the hauling similar to what's in the hauling labor category in game. the current beta also doesn't get the starting attribute values, although it can be calculated.

@Maklak: thanks for the additional work with attributes. i've been working on getting happiness thoughts into the next version. the scripting can accomplish most of what you want. you can check the raw happiness level with d.get_raw_happiness() < X for example. the scripts can also get a count of the total assigned labors, i'm going to modify this so you can exclude hauling. you could then create a filter script that shows all non-squad dwarfs with x total assigned labors: d.total_assigned_labors(false) <= 1 && d.squad_id() < 0
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 29, 2013, 04:53:27 pm
I think I worked up your program

Spoiler (click to show/hide)

I was talking with splinterz, I was thinking of putting it into the frequency bin formula's we have setup. 

I'm not sure what 2000 is for, so instead I set it to what a dwarf can possibly gain, his max - initial

I made a sim2 that replaces 2000 with max - current.

let me know if I fucked it up
Spoiler (click to show/hide)

example:
attributes.exe <input.txt >output.csv

input.txt formatted as such
current initial
sets att_cap to initial x 2, caps at 5000

here's some #'s (no sim2 in this set)
Spoiler (click to show/hide)

I tried 50 25 50 (which is 50 current, 25 initial, 50 max), which reads 50.
I also tried this with the arbitrary 2000 number, reports the same 50.

So the results will output a value less than max, but greater than current.

errors on 2500 5000 as input values...

now the million dollar question is, how do we calculate rust into all these formula's?  subtract rust from current value obviously, but also maximum value?

according to splinterz, rust isn't permanent on attributes.

new million dollar question
what about modifying the above formula for attribute rate gain?  Some mods have the ability to increase attributes at a faster rate.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 29, 2013, 09:53:50 pm
Maklak:
I read your post about auto optimizer's.

I felt the same way about autolabor via dfhack (which matches your skill concerns exactly, but I didn't like the fact it didn't figure in attributes, and traits).

Anyways.  If DT could auto-optimize in a way that you would like, how would it go about it?  I mean if we're hitting on the skill thing you want, then can't you just weights skills the most important and then auto-optimize?

You said something about assigning the undesirable effect of militia dwarf's being assigned to labors?  Couldn't you use assign

militia first
nobles second? (filter out militia)
laborers last? (filter out nobles)

that's how I handle it.

I hope the labor optimizer can be used for everyone.  The limit I see with it right now is # of labor's per dwarf (but there is a workaround, using the highlighted dwarf's and changing the # in the labor plan).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 30, 2013, 10:05:42 am
Damn it, the browser hanged on me when I was writing... again.  >:(

> I was talking with splinterz, I was thinking of putting it into the frequency bin formula's we have setup.
The bin method and simulation method are different and don't mix. The bin method is about what you can get from migrants. The simulation method is about what you can can do with what you have now.

> I'm not sure what 2000 is for, so instead I set it to what a dwarf can possibly gain, his max - initial
It is an arbitrary number of attribute points to gain. It must be the same for all dwarves for the simulation method to work properly. The only reason I can think of that you would set this to something dependant on att and initial is that you don't understand these lines, because they take care of capping the attribute already. 
int max_delta = ...
ret += (att_sim - max_delta) * att_cap;
2000 is pretty high, actually. Only the military has a hope of gaining this much and only in some attributes.

> I made a sim2 that replaces 2000 with max - current.
This won't fix it. It will only reverse a small anomally, depending if att or initial is bigger, because depending on that you cap out and "ret += (att_sim - max_delta) * att_cap;" kicks in.

> let me know if I fucked it up
Yes. I explained it above. With different numbers of attribute points gained by different dwarves, this method no longer works properly.

This is what I would do:
Code: [Select]
int sim3 (int att, int initial)
{   int att_cap = initial * 2;  // Actually: int att_cap = initial + ((initial > median) ? initial : median);
    att_cap = (att_cap > 5000) ? (5000) : (att_cap);  //caps at 5000
   
    // If att > att_cap, there can be no gain, except by interactions.
    if (att > att_cap)
       return att;     
   
    int att_sim = 2000; // Or whatever you think is prudent. This is where you can factor in attribute rates.
    int max_delta = (att_cap -att) > att_sim? att_sim : (att_cap -att); // min {att_sim, att_cap -att}
    long long ret = ((att + att + max_delta) * max_delta) / 2;   //  Or  att * max_delta + (max_delta * max_delta) / 2
    ret += (att_sim - max_delta) * att_cap;
    ret /= att_sim;   // Ret is now the average value for this attribute when you gain 2000 times in it and cap at some point.
    return (int)ret;
}

> errors on 2500 5000 as input values...
int att_sim = att_cap - initial; //  = 5000 - 5000 and later causes division by 0.

> new million dollar question
You lie. I won't get a million dollars for answering this.

> what about modifying the above formula for attribute rate gain?
Simple, if you know how those work. "int att_sim = 2000;" Modify 2000 by the gain rate, similar to sim1 for skills. You want to use the first number, the "cost to improve". I think it should be "att_sim = att_sim * 500.0 / CTI;" assuming the lower cost the better.

> Anyways.  If DT could auto-optimize in a way that you would like, how would it go about it?
* Highlight labours with no assigned dwarves in the grid view. (Or fewer than a set number)
* Let me sort dwarves by suitability for a labour, so I can manually pick however many I want.
* Have an option to quickly select multiple labours for a single dwarf. I think this is possible now, but I haven't figured it out.
In other words, I prefer to do this manually, just have a few shortcuts.

> I mean if we're hitting on the skill thing you want, then can't you just weights skills the most important and then auto-optimize?
If sim1 is going to be there with a settable weight, I can sort by mostly it, yes.

> You said something about assigning the undesirable effect of militia dwarf's being assigned to labors?
If I have a DT option to filter out military (all of them, not just the ones currently on duty), then I can manage. Nobles are less important, because I only have a few of them, overlap their responsibilities (manager + record keeper) and can remember or rename them.
I don't mind the military as haulers, butchers and so on, but I don't want them to do any of the important jobs, unless they mood out.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: arclance on January 30, 2013, 10:41:32 am
> You said something about assigning the undesirable effect of militia dwarf's being assigned to labors?
If I have a DT option to filter out military (all of them, not just the ones currently on duty), then I can manage. Nobles are less important, because I only have a few of them, overlap their responsibilities (manager + record keeper) and can remember or rename them.
I don't mind the military as haulers, butchers and so on, but I don't want them to do any of the important jobs, unless they mood out.
You can sort by squad and you will get a list of every dwarf not in the military first followed by the rest grouped into their squads active or not.
This won't work if you use squads to assign uniforms to civilians but I don't think there is any way around that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 30, 2013, 11:31:40 am
update:
since someone corrected me

squad _id()>0 is military
d.squad_id() > 0 is military (sorry for forgetting the d, I didn't have a copy of dt in front of me to verify, I figured someone with a brain would figure it out if viewing the script editor and if they were slightly familiar with syntax of dt scripts)
the opposite are non military.


Non military
d.squad_id()<0

Not noble
!d.noble_position()


there's also a noble_id() d.noble_id() I believe.
<0 is non nobles

btw. these r also built into the labor optimizer editor

if u highlight one dwarf and run an optimizer on him. it will assign the best labors that fit in the optimization plan up to the max number of labors per dwarf you have set.

and yes, latest beta has your sim1 formula in there, you can weight it to 100% and it will completely disable current skill level and just use your sim1 method :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 30, 2013, 02:47:09 pm
squad _id()>0 is military
the opposite r civvies
theres also a noble_id()
unfortunately, these are all incorrect. check my post above for the proper syntax.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 30, 2013, 08:33:17 pm
Maklak:
Okay, I tried again.  This time I didn't fuck with it the way I did last time, I changed 2000 to 5000 (since skills based sim_xp on 29k, I figured why not base attributes on 5k).
Changing the number to a higher number seems to lower the increase(seems to be lower numbers do this), which fits the concept of trying to keep these numbers not jumping too high due to the fact that attributes don't train as fast as skills (albeit the new rate concept...)

an att_sim value of 100 seemed to produce good numbers.  Now I'm concerned about skills using 29000 for there sim value... oh well, as long as a weight is introduced, players can mess with this as much as they want.
Although I like 100 as an att_sim value, setting the att_sim to this number, and then setting weights that combines current attribute % with sim3, means the cieling of sim3 results will be that much shorter when using 100, so I recommend a high value, like 5000, and a player can then adjust the weights between attribute/sim3.

Spoiler (click to show/hide)

I modified your formula for CTI, but it comes out the same
att_sim = (att_sim / 100.0) * CTI; (which is how sim1 looked).


You said
Quote
> what about modifying the above formula for attribute rate gain?
Simple, if you know how those work. "int att_sim = 2000;" Modify 2000 by the gain rate, similar to sim1 for skills. You want to use the first number, the "cost to improve". I think it should be "att_sim = att_sim * 500.0 / CTI;" assuming the lower cost the better.

I think when you say "lower cost the better" you mean  cost to improve attributes, such as 1:1 vs 5:1, which confuses me why we're dividing by 100 then multiplying.  Say my rate is 500%, so if the att_sim is 5000, shouldn't it be 5000/5 (i.e. 500%) but we're doing 5000 / 100 (to normalize 100% to 1) then MULTIPLYING by rate... therefore increasing sim.

Maybe a large sim is good in this case?

Update:
Well testing these three
Code: [Select]
    att_sim = (att_sim / 100.0) * CTI;
    //att_sim = att_sim / (CTI/100);
    //att_sim = att_sim * 500.0 / CTI;
the uncommented one went higher with higher skill rates, which is exactly what you had typed.

So I guess larger att_sim is better (for the dwarf)

thanks for this clarification
Quote
// Actually: int att_cap = initial /+ ((initial > median) ? initial : median);
Splinterz was saying something about something that looked similar.

we're probably going to have to generate that based on the raws.  It might be really easy just to take the middle frequency bins (i.e. 3rd+4th value /2 to get the median, otherwise it'll require factoring each middle range x 1/6 and sum them up.)  See, I can do a lil math. ;)

reference for finding mean based on frequency distributions (http://infinity.cos.edu/faculty/woodbury/stats/tutorial/CT_MeanGroup.htm)
example
200:700:900:1000:1100:1300:2000
midpoints
450:800:950:1050:1200:1650
x (1/6)
75:133.33:158.33:175:200:275
Sum
1016.66

verified (http://dwarffortresswiki.org/index.php/v0.31:Attribute#How_Your_Dwarf_Gets_Attributes)

Update:
I guess that finds the mean, not the median, but eh.  Such a small difference in numbers to be concerned with.  I'm sure the mean is probably what was meant by whoever realized the formula, because I doubt the median is hard coded into ram, and finding the median via a frequency distribution, I'm not sure how it would be done.
I figured how to find the median from watching this video
start at 4:20 (hehe) (http://www.youtube.com/watch?v=vqHEFqKU5gQ)
however, it describes adding up the frequency's of each category, how do we do that since the frequencies are 1/6 for each bin?
Well, I was going to use an arbitrary number (like 600), but I came up with a better idea (one might be able to do it with 600, IDK).  I took the largest # in the bin, and the lowest number.  Example
150:600:800:900:1000:1100:1500
1500-150=1350
1350/2 = 675
so the 675 value is the median
you can't just take 150+675 though
so if there's 1350 values per bin


well, I just realized something.
The median is the 4th value in the raw's, everytimeThis is only because each bin has exactly 1/6 chance of occuring, so the median is the 3/6 value, which is the 4th bin value
I was going to say to count up to 6/2 = 3, 3rd value in the frequency bin, but then I realized the simplicity of it all.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: hops on January 31, 2013, 02:29:20 am
Is there any way to use this with 0.34.11?

Never mind. I found out how.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 31, 2013, 02:41:47 am
I used 2000 for att_sim because that is about as much as you'll ever gain from military training. It may be too high, but I definitely not too low. 5000 is too high. By choosing lower att_sim, the current attribute value is more important. By choosing higher att_sim, the cap becomes more important.
100 is pretty low even for civilians, but it does say the most about the attribute value in the near future, capped or not. 500 to 2000 are reasonable values, I think.
For 5000 the cap will weight in the most. If want to have some kind of slider between current attribute value and the cap, I'd sooner just change the att_sim value to whatever the user wants (self-explanatory enough) rather than use an arithmetic mean.

CTI is the first number in MENT_ATT_RATES and PHYS_ATT_RATES which are usually something along the lines of 500:4:5:4 The 500 is the CTI, the rest of them is for rust. This is why I used 500 as default. It is the default value. Since it is called "cost to improve", I assume the lower the better, but I'd have to run tests by setting it for agility to some low value, like 10 and observing military training. Very fast increase would mean I'm right, almost no increase would mean I'm not and this should be used instead:
att_sim = (att_sim * CTI) / 500;

Yes, the median is the middle value in these things: [200:800:900:1000:1100:1300:2000]

Also, the att_cap is affected by this tokens: MENT_ATT_CAP_PERC, PHYS_ATT_CAP_PERC 

Quote
I think when you say "lower cost the better" you mean  cost to improve attributes, such as 1:1 vs 5:1, which confuses me why we're dividing by 100 then multiplying.  Say my rate is 500%, so if the att_sim is 5000, shouldn't it be 5000/5 (i.e. 500%) but we're doing 5000 / 100 (to normalize 100% to 1) then MULTIPLYING by rate... therefore increasing sim.
I did no such thing. You're commenting about your own formula here.

> the uncommented one went higher with higher skill rates, which is exactly what you had typed.
No. I typed "assuming the lower cost the better". You assumed CTI works exactly like learning rates for skills, which I don't think it does. Maybe the simplest way to resolve it is to ask in the modding forum. 

Quote
regarding ATT_RATES: the first value (cost to improve) is indeed better the lower the value is. what happens in the background is that a counter is incremented up to the CTI and then the attribute is increased. i haven't tested it, but assuming it works like rust, the increase is only by 1 point each time the CTI maximum is reached. this is definitely different from skills, as the skill rate is modifying the amount of xp gained, while the CTI is basically just modifying a counter's limit.
This is what I thought, based on the name "cost to improve".
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 31, 2013, 03:21:00 am
regarding ATT_RATES: the first value (cost to improve) is indeed better the lower the value is. what happens in the background is that a counter is incremented up to the CTI and then the attribute is increased. i haven't tested it, but assuming it works like rust, the increase is only by 1 point each time the CTI maximum is reached. this is definitely different from skills, as the skill rate is modifying the amount of xp gained, while the CTI is basically just modifying a counter's limit.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 31, 2013, 04:23:07 am
if att_sim is based on theoretical max possible gain. why not set it to median (or on last raw value). actually. a good marker for possible gain would be the 3rd median quartile, ie (6th raw +5th raw )/2. as it would be 50% between the median nd max possible gain.  which would b about avg possible gain for that attribute (wait. since all values lower than median have a gain possible of median... that means median is weighted more used, i.e. at least 50% the 3rd median quartile would be the other 50%))

is it bad to have diff att_sim used for diff attributes? ie str vs agi (since they both have diff ranges of possible values they can gain).

if it is bad to change att_sim between attributes. then 2000 seems good
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 31, 2013, 04:30:20 am
> if att_sim is based on theoretical max possible gain. why not set it to median.
Or rather your mean based on bins, to make it caste-independent. Seems reasonable, at least for those attributes that you can gain fast.

> is it bad to have diff att_sim used for diff attributes? ie str vs agi
It is OK to have different att_sim for different attributes. Just have the same att_sim for the same attribute for all Dwarves.

Quote
i did a quick bit of testing on the attribute rate gains with a woodcutter at 500 and 100 rates. the improvement counter gain was the same: +1 per 10 game steps while cutting trees. this resulted in a gain of 37 to the counter per tree the dwarf cut down. so at 500 it required 13.51 trees to increase strength by 1, while at 100 it only required 2.702 (or the expected 1/5 of 13.51).
This means I was right and (if you can get CTI for an attribute):
att_sim = (att_sim * 500) / CTI;    // Assume no one would set CTI to 0.
It will make the cap much more important for mods with improved learning rates for attributes.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on January 31, 2013, 04:52:11 am
i did a quick bit of testing on the attribute rate gains with a woodcutter at 500 and 100 rates. the improvement counter gain was the same: +1 per 10 game steps while cutting trees. this resulted in a gain of 37 to the counter per tree the dwarf cut down. so at 500 it required 13.51 trees to increase strength by 1, while at 100 it only required 2.702 (or the expected 1/5 of 13.51).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 31, 2013, 09:31:06 am
Maklak:
quick pre correction
4500 is 99% 2250 is 85%《(see below)

Still on the fence about feeding the value back into the original bins.

I understand the concern of these values represent values after embark, but our frequency bin has a range of %s reserved for this area.

Yes, the values are newly generated.  But the frequency bins already account for max possible value.
Take strength of 4500 (vanilla) for example.  In our frequency distribution, that maps to 85%.
if we take a sim1 of 4500/5k, then that value comes out to be 90%.

Also, the sim approach has an att_cap included now that is inclusive of a dwarf's max possible gain, further allowing integration into our original % distribution scheme.

The frequency distribution we have setup already accounts for values that are generated after embark, we just try to fit it into our distribution scheme, whether values less than lowest raw are a certain %, and values above last raw are a new 98/7% range (i.e. a 14% range).

by mixing in a sim1/5k, we're basically introducing new values and saying their higher than a normal 4500 (which would be 85% vs 90%).

So by converting sim1 (actually sim3, modified) back to our frequency distribution, we are converting this new number back into a matching # in our frequency distribution, before averaging them

To be honest, I don't think it matter's so much, as we still get a value between 0 and 100, and the order is still preserved, but I think the value should be rescaled to match our distribution.  The max possible values will still be the same in both %, i.e. max for strength in our frequency bin is 4500, max generated with this sim3 approach I guess is 4500 (not sure since the question on att_sim posed below as to whether is should be be based on max possible gain, or average possible gain).

Anyways, I know it's confusing.  Two questions though.

1.
What to base att_sim on, avg, median gain, or max gain?

2.
Merge ret result back into frequency bin?


here's code that uses median potential gain for att_sim
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 31, 2013, 10:11:49 am
UGH, I find it extremely difficult to figure out what your post is about, but I'll try to clarify. Also, re-read my last post.

sim3 is supposed to simulate some time spent gaining an attribute, then tell you what was the average value for that attribute during that time. This much should be obvious from the trapezoid + rectangle formulas for ret. Anyway, what the sim3 returns, you need to treat as a predicted attribute value a few years ahead.

I don't know what any of this has to do with producing values for bins. I think taking this and accounting for vampires and other attribute-boosting interactions will suffice:
int att_cap = initial + ((initial > median) ? initial : median);

> I understand the concern of these values represent values after embark, but our frequency bin has a range of %s reserved for this area.
You mean the 1% assumed frequency for attributes above the maximum?

> Take strength of 4500 (vanilla) for example.  In our frequency distribution, that maps to 85%.
> if we take a sim1 of 4500/5k, then that value comes out to be 90%.
85% ow what? 90% of what. What does any of this have to do with anything?  ???

> Also, the sim approach has an att_cap included now that is inclusive of a dwarf's max possible gain, further allowing integration into our original % distribution scheme.
See above.

> The frequency distribution we have setup already accounts for values that are generated after embark, we just try to fit it into our distribution scheme, whether values less than lowest raw are a certain %, and values above last raw are a new 98/7% range (i.e. a 14% range).
 ??? This looks like something from the way you construct bins. It has nothing to do with sim3 as far as I'm concerned.

> by mixing in a sim1/5k, we're basically introducing new values and saying their higher than a normal 4500 (which would be 85% vs 90%).
> So by converting sim1 (actually sim3, modified) back to our frequency distribution, we are converting this new number back into a matching # in our frequency distribution, before averaging them
Ah, I think I understand what you're trying to do now. You want to assume some attribute gain over time and modify the attribute bins accordingly. Well, for current population and a selected attribute you can calculate the average attribute gain so far:
sum = sum by all dwarves { ((att -initial)*CTI_for_his_caste*caste_frequency)/500 }
average = sum / number_of_dwarves.
Heck, you can even feed that to sim3, assuming you get a reasonable value (above 100).

> max for strength in our frequency bin is 4500
OK, but what about a very strong Dwarf becoming a vampire and having 5000 strength? This is not a hypothetical question. The FoE mod I play has "Power Armour Potion" - one use per dwarf, but boosts some attributes by 2000.

> max generated with this sim3 approach I guess is 4500
Unless att >= 4500, the value generated by sim3 will be <= 4500.

> What to base att_sim on, avg, median gain, or max gain?
Keep in mind that really big gains in attributes, exceeding a thousand, are rare. They only really happen for military ponies. Gaining 4000 or 5000 in an attribute never ever happens, so be a realist here. I think this should either be some arbitrary value for each attribute or something based on the "average median" for all castes. (I'm not kidding, take medians for all castes and get their arithmetic average, based on caste frequencies.)

> Merge ret result back into frequency bin?
It might work with caution and knowing exactly what you do, but looking at your mathematical recklessness so far, don't bother or you will get it wrong.

Your program still uses the wrong formula for factoring in CTI, as proven by Splinterz and explained by me. The correct one is this:
att_sim = (att_sim * 500) / CTI;
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 31, 2013, 10:52:02 am
mk
i get my math right in the end thru trial and error

when i said i wanted to feed the value back into the frequency bin.
i meant take ret and instead of divide by 5000 to get a percent
run it through our already established formula for deriving percents based on value.  because our formula already accounts for values above the 7th raw. i.e. 85% to 99% is 7th raw to 7th raw * 2 (or the 200% perc token value)

i was proposing a att_sim based on median *.5 and 3rd median quartile*.5
agil would b 975
str would be 1375
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on January 31, 2013, 11:51:39 am
Ugh, remind me, what do you need to do with the attributes again and why? I think displaying them is already handled, so now you want something to decide which dwarf has better attributes for a job and to do that you want to factor in potential attribute gain over time, yes?

> i get my math right in the end thru trial and error
I don't like the sound of that, but I sometimes do this myself.

> when i said i wanted to feed the value back into the frequency bin.
> i meant take ret and instead of divide by 5000 to get a percent
I don't divide ret by 5000, so you probably mean "take the average value of this attribute for this Dwarf after some gains and compare it to the highest possible value for that attribute".

> run it through our already established formula for deriving percents based on value.  because our formula already accounts for values above the 7th raw. i.e. 85% to 99% is 7th raw to 7th raw * 2 (or the 200% perc token value)
OK, I guess, but what exactly do you want to accomplish?

> i was proposing a att_sim based on median *.5 and 3rd median quartile*.5
> agil would b 975
> str would be 1375
I don't know why you need quartiles for this, but most any value around a thousand should work. Just keep these in mind:
* Sensible values are in the <100, 2500> range.
* The att_sim for an attribute, before factoring in CTI, must be the same for all Dwarves.

I still think that taking an old fort and looking at attribute gains there (att -initial) would be a good way to make an informed guess on good att_sim values. They would be good for agility, strength, endurance and so on, OK for things like memory and creativity and negative for musicality.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 31, 2013, 02:33:33 pm
MK:
First, I'd like to say, that most of these posts are from my phone.  Right now I'm at a PC, so I have some time to explain in more detail, but sometimes I try to hit on specific points as quickly as possible which seems to only add to your confusion.

Quote
Ugh, remind me, what do you need to do with the attributes again and why? I think displaying them is already handled, so now you want something to decide which dwarf has better attributes for a job and to do that you want to factor in potential attribute gain over time, yes?

I want to create a weighted average, for attributes , similar to how skills are using (sim1 normalized to a % value) with (current % method using frequency bins, see as formerly described here (http://www.bay12forums.com/smf/index.php?topic=66525.msg3945716;topicseen#msg3945716) or just see below).

Wo when I said
Quote
i wanted to feed the value back into the frequency bin.
I meant take your sim3 approach, and put the # back into the formula as described below.

Example for finding % based on an attribute's frequency bin.
The formula uses 98/7 vs 98/6% for each frequency bin, as we've created a new bin for the values past the 7th raw.

Strength:
450:950:1150:1250:1350:1550:2250
There are 6 bin frequencies, we add a 7th by doubling the last value (2250-4500)

98/7=14% per frequency bin.

<450 = <1%
450-950 = 1 - 15%
950-1150 = 15 - 29%
1150-1250 =  29 - 43%
1250-1350 =  43 - 57%
1350-1550 =  57% - 71%
1550 - 2250 = 71% - 85%
2250 - 4500 = 85% - 99%
>4500 = 99%+
Spoiler (click to show/hide)

The 4500 is derived from the max possible value a dwarf can have (if he started with the max possible initial value, which is defined in the raw's as 2250)  I.e. 2250 x 2 = 4500.

ATT_Sim: (median*.5) + (3rd quartile median*.5)
I just realized I may be wrong about this.
If half the dwarf's have a max gain value of median (because initial embark value is below median)
and the other half have a max value of initial embark value x 2.
Then the halfway point would be median no?  If so, then disregard the spoiler which describes what I was trying to do with 3rd quartile and just use median.

Spoiler (click to show/hide)

Code: [Select]
I still think that taking an old fort and looking at attribute gains there (att -initial) would be a good way to make an informed guess on good att_sim values. They would be good for agility, strength, endurance and so on, OK for things like memory and creativity and negative for musicality. Originally DT used to use statistics and the current population to derive %s from.  However, since we've deviated from that and tried to hard code everything (see above frequency bin as reference), we were hoping to derive an att_sim based on the raws of an attribute.

So the question I was proposing earlier.
Would it be better to use
  median of an attribute's possible gain,
  average of an attribute's possible gain (would certainly be higher than median),  Useful for finding the middle value for att_sim based on any embark dwarf.
  max of an attribute's possible gain (i.e. 7th raw value)

The average of an attribute's possible gain could be derived by

Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 31, 2013, 07:16:15 pm
this pic should work for a day or two, but here's some methods involving including the median as att_sim

 (pic won't be up forver)
http://i50.tinypic.com/o5artj.jpg

thanks to splinterz

so the distribution only slightly changes using median as the att_sim.  So I recommended Splinterz use either the avg potential gain (as described in post above), or max possible gain (i.e. 7th bin).

actually, looking how the ordering isn't changed, differences between median based vs 2000 just seems to grow/shrink with edge cases.  After comparing the differences between an att_sim of 900 vs 2000, the ordering between the 2 does not change.    So I don't think worrying about the att_sim value really has much of an effect on anything, especially the order (i.e. ranking)
http://i45.tinypic.com/9powon.jpg (agility) 2000 vs 900 att_sim

So Idk, maybe try max possible value, and see if the ranking differences is more profound (see ranking differences in next picture)

here's a picture showing the order differences (i.e. rank) of agility (2nd sheet)
left is regular rank compared with att_sim
the right is regular rank compared with att_sim averaged back with the non att_sim derived percent (i.e. original)
http://i46.tinypic.com/141oyg6.jpg
a regular 1-77, and the second is att_sim= 2000

So it shows the order is slightly different (may not even need averaging, but I'd still prefer it), and only gives slight boosts to dwarf's who have a higher potential gain than those without.  I.e. a few cases.

ranking diff of attribute rating vs sim_rating
29/75

when averaged back with rating
11/75

ranking diff
http://i47.tinypic.com/4gkkmu.jpg

histogram diff
http://i49.tinypic.com/25ip74j.jpg
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on January 31, 2013, 10:03:55 pm
Can we have an option to sort dwarves by age? It's kind of a niche use, but if you're trying to get dwarves to socialise and marry they have to be fairly close in age (and also not be siblings or parents. Cousins and aunts/uncles may be fine though).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on January 31, 2013, 10:38:56 pm
Can we have an option to sort dwarves by age? It's kind of a niche use, but if you're trying to get dwarves to socialise and marry they have to be fairly close in age (and also not be siblings or parents. Cousins and aunts/uncles may be fine though).

what state do you live in ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on February 01, 2013, 12:50:26 pm
All this talk about attributes makes my head hurt, but I'll try to answer as best as I can.

sim3 gives you the predicted average attribute value during some some hypothethical gain. If you don't hit a cap, it returns "att + att_sim/2" (the formulas it uses do exactly this, except are more complex to handle the second part. After you hit the cap, value returned by sim3 is between "(att_cap+att)/2" and  "att_cap". It increases with att_sim at the speed of "x/(1+x)" (If you really want me to, I can derive the formula for this).
If you don't cap for attribute, then sorting by sim3 is pretty much sorting by att + att_sim/2 and since att_sim is the same for all dwarves, it is the same as sorting by att. I argued with you to get this property. This is why for reasonably low (resembling actual potential to gain for most attributes, like creativity) att_sim, the order doesn't change much and getting att_sim right is not that important.
If some Dwarves start capping out on the attribute because att_sim is big, the caps come into play and those with higher caps can come ahead of those with higher attributes, but lower caps.

Now, why do you need the bins for attributes anyway? For ranking them for the labour optimizer? You said you wanted weighted averages for attributes, but why do you need them in the first place? Unless I understand your motivation and the reasoning behind it, I'm stumbling in the dark here.

> The formula uses 98/7 vs 98/6% for each frequency bin, as we've created a new bin for the values past the 7th raw.
Assuming that 1/7 of each attribute will go above their maximums is rather arbitrary, but I have no suggestions here. 
You also need to account for the fact that some interactions (Vampirism in Vanilla, Power Armour Training in FoE) can raise attributes above this value and possibly even above 5000.

> Note: There is talk of changing the 98/7 to something lower like 90/7 to give values <lowest bin (450 in this case) a larger percent, although not by much, since dwarf's can rust away to 0 attributes).
Attribute rust is quite slow, even for things that aren't ever used, like musicality. I've seen less than 50 point drop over 4 years. I'd say starting really low and rusting below the lowest value for migrants is pretty rare, unless you play for tens of years. It has to be accounted for in some way of course.
For most attributes I counteract the rust by setting a lot of labours not influencing quality for my haulers. They will sometimes butcher an animal or smelt some ore and not rust.

> Then the halfway point would be median no?
Lol, yes. Surprisingly enough the median is... median. That's why I told you that it might be a good idea to compute the "average median" for all castes.
I understand your (median + 3rd_quartile)/2 idea. Yes, this would be the average potential for attribute gain for a dwarf, but again, you would want to average it for all castes. 

> > I still think that taking an old fort and looking at attribute gains there (att -initial) would be a good way to make an informed guess on good att_sim values. They would be good for agility, strength, endurance and so on, OK for things like memory and creativity and negative for musicality.
This is not about current population. This is about assessment of how much each attribute can rust or increase over the course of normal gameplay. I still think it would be very educational in regard to attribute gain to take a 200+ dwarf fort with 10+ years of history and at least 10 multiple legendary champions and for each attribute dump:
max { att - initial }  // maximum gain
min { att - initial }  // worst rust
I'm pretty sure this would shed a lot of light over what att_sim values to choose for each attribute. For example if median is 1000 and maximum gain was around 300, you can pretty much assume dwarves will never cap and simply sort them by current values for that attribute. It is only strength, agility, endurance, toughness, willpower, focus, kinesthethic sense and spatial sense that ever increase by enough to make caps relevant. Well, unless someone mods some attributes to be abysmally low.

> Would it be better to use: median of an attribute's possible gain, [...]
Doesn't matter much in my opinion. All of those are pretty close and pretty high. I'd say try to go for realistic (and different for different attributes) values of att_sim and almost never cap, except in rare circumstances.

> The average of an attribute's possible gain could be derived by [...]
Correct, but as I said, realistic gains would be even better (from an old fort).
I don't even know where to look for it in DT code, but once you can get to att and initial, doing a loop over dwarves and writing the results to a file or log or whatever is maybe 50 lines of extra throwaway code.

> I can't do much with those graphs. They have no labels for x or y, no data sets. I don't even know what I'm looking at. I can only assume you took some attribute, made about 70 values increasing from min to max for it, then fed that and the median to sim3. Maybe you even cross the median around value number 45. If this is the case, then well, it looks as I would expect it to.
Speaking of graphs, those things are ugly. Even in something as crude as Excel you can use lines instead of bars, add more horizontal lines and put dataset values on x.

> actually, looking how the ordering isn't changed, differences between median based vs 2000 just seems to grow/shrink with edge cases.
Working as intended, right?

> So Idk, maybe try max possible value, and see if the ranking differences is more profound
For att_sim up to the median, sim3 ordering is very similar to ordering by current attribute value. For att_sim of 2000 or more, caps become important as well. Since you will hardly ever cap an attribute in Fortress Mode, realistic att_sim are below a thousand. Minor differences in att_sim aren't important, but it still should be the same for all dwarves (well, you could argue that this depends on speed and therefore isn't the same, but let's not go there).

> So it shows the order is slightly different (may not even need averaging, but I'd still prefer it), and only gives slight boosts to dwarf's who have a higher potential gain than those without.  I.e. a few cases.
I have no explanation for irregularities, unless you didn't use att == initial.
Since you will almost never cap an attribute anyway (I think I never did), I'd say the current attribute value is more important than the cap.

> here's a histogram of the ranking shift (just with att_sim 2000)
Results of sim3 depend on both att and initial. Were they different? Which one did you sort by? If they were different and you sorted by initial, that would explain the irregularities. If you sorted by att or att and initial were the same, there shouldn't be any irregularities and there is a (small) error, either on my or on your part.

sim3 is not some tool that will solve your problems with attributes. All it does is simulate attribute gain and return the average attribute value during that time. You could rewrite sim3 with a loop like this (but this is not a smart way to do it):
Code: [Select]
input: att, initial, att_sim, CTI, median
// CTI, att_sim, yada yada.
att_cap = initial + max {initial, median}
int sum = 0;
for (int i=0; i<att_sim; i++)
{ sum += att;
   att++;
   att = min {att, att_cap}
}
sum /= att_sim;
return sum;
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 01, 2013, 01:17:20 pm
mk
Quote
now, why do you need the bins for attributes anyway? For ranking them for the labour optimizer? You said you wanted weighted averages for attributes, but why do you need them in the first place? Unless I understand your motivation and the reasoning behind it, I'm stumbling in the dark here.

because we want to match the raw values between attributes to each other in terms of percents.

i.e.
strength
450:950:1150:1250:1350:1550:2250

agility
150:600:800:900:1000:1100:1500

we want 450 strength's percent to equal 150 agility's percent
same for the rest of the attribute's raw values.
so 2250 strength = 1500 agility in terms of percent

okay, I think I understand now about attributes and att_sim.  I guess median value is the highest we need to go to then (mainly because they'll hardly ever cap, or possible even hit that much gain).  Sorry I didn't post the sheet that I gen'ed the numbers off of.  I could later if your interested.

The sheet was sorted by attributes rating (or you could say highest attribute value to lowest attribute).

I believe splinterz modded sim3 to not use initial, and instead use the ingame memory value for att_cap that was already derived ingame.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on February 01, 2013, 02:31:51 pm
> because we want to match the raw values between attributes to each other in terms of percents.
Ah, OK. I finally get it.

The one problem I see with that is that agility and strength are the most important attributes anyway because they influence speed and faster dwarves are better at everything (walk faster, finish working at workshops faster, better military, everything). Still, DT with high weight for attributes likes to pick my military for all sorts of labours, so it kinda works now.

Well, I'm not sure if sim3 can help you with what you want to do. I believe you're computing a value in <0, 100> for an attribute (the higher the better), then take an unweighed arithmetic average for all relevant attributes.
If values slightly below 0 or slightly above a 100 are not a problem, then a very straightforward method would be to take
(att - min) / (max - min), so for Strength (att -450) / (2250 -450). You would have to check for some edge cases (max == min), or the result of this formula exceeding <-100, 200>, but other than that it should work for all attribute values. Use min and max average for all castes and based on their frequency.

I understand your motivation for attribute bins now, but I am at a loss on how to make it right.

Another simple solution would be to just use att / 5000 for everything, then maybe scale the results to 100%, allowing values above 5k to be above 100%. Sure, you won't get 50% to be the same as median, but you'll get a nice property: linearity. With this simple method 80 is exactly +25% / -20% as good as 100, while with the bin method you don't know.

There are a few things to keep in mind here:
* You are really comparing Dwarves to each other. It doesn't matter if the highest suitability ranking for some dwarf is 100 or 63.8, he is still the best candidate, so he gets the job.
* Extraordinarily good attributes should be rewarded.
* In the end +20% in whichever attribute should get the same ranking improvement for a related job for a dwarf, regardless of which attribute got boosted. The (att - min) / (max - min) formula doesn't have this property.

sim3 can't help much here, I'm afraid. It kinda factors in the cap for an attribute, but sim1 for skill gains and rates was much more useful.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 01, 2013, 02:49:39 pm
Code: [Select]
The one problem I see with that is that agility and strength are the most important attributes anyway because they influence speed and faster dwarves are better at everything (walk faster, finish working at workshops faster, better military, everything). Still, DT with high weight for attributes likes to pick my military for all sorts of labours, so it kinda works now. This is a custom role issue, you can weight strength/agility higher for the roles that you feel it's important for INSIDE the role editor.

Quote
(att - min) / (max - min), so for Strength (att -450) / (2250 -450). You would have to check for some edge cases (max == min), or the result of this formula exceeding <-100, 200>, but other than that it should work for all attribute values. Use min and max average for all castes and based on their frequency.

remember what you said about dwarf's above max bin (i.e. 7th raw?)  that wouldn't account for it, it would if we extended it.  but that's kind of what we do now.  We squeeze 98% of values inbetween 1st bin and double last bin.  The remaining 2% are values outside of it.  It's the best system we can come up with without using min/max.

Code: [Select]
sim3 can't help much here, I'm afraid. It kinda factors in the cap for an attribute, but sim1 for skill gains and rates was much more useful. This is why I wanted to feed the return value (wether it's sim1 or sim3) back into the frequency bin's to get a # that is scaled back to our distribution.

UPDATE:
Here's a good formula... so simple in it's simplicity

both attribute values are converted to %'s via the frequency bin's

((Current Attribute * Weight A) + (Max Attribute possible for that Dwarf * Weight B))/(Weight A + Weight B)

It's merely measuring the halfway point between current and max possible for that dwarf. 
Currently there is no CTI factor... I would like to figure out a CTI factor, in the end it should be based on (max possible - current)*whatever we want CTI factor to do for us.

Maybe
att_sim = (att_sim * 500) / CTI;
Can be
add value to current (%) =
(((Max - current) * 500) / CTI) (* Weight)

So the whole formula would be

((Current Attribute * Weight A) + ((
    (Max Attribute possible for that Dwarf - Current Attribute) * 500 / CTI ) * Weight B))
/
(Weight A + Weight B)


that's it.

it does produce higher numbers on average (as expected), but the rankings do differ.


If we can mitigate this:
(Max Attribute possible for that Dwarf - Current Attribute) * 500 / CTI )

from ever being greater than (max - current), we're good, but now that I'm looking at it, I don't think it can...

I think the answer might be in your formula here
Quote
double normalised_XP = 0.5 * (1.0 - jobs_left/290.0);    // Scaled to <-49.5, 0.5>
where whatever value you get, you factor it down to <.5
maybe something like this
.5 * (1-((Max - current)*(500/CTI)))[/s]
Yeah, I don't think that was the answer...

I think i I'm onto something, but I can't figure out how to incorporate CTI

I think the answer is here
normalised_XP = -0.5 / (normalised_XP - 1.0);
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Ryusho on February 02, 2013, 05:24:00 am
I know I feel slightly stupid right now, for asking this, but may I ask if there are any recomendations on how to set up the optimizer for your forts? I was trying to figure it otu a bit ago, and...I saw some strange selections by it, so I feel I was being absolutely -stupid- with what I was telling it to keep an eye open for >.< then again I was playing Kobold camp with Masterwork at the time so that might be one reason I felt like I did so stupidly with the setup @_@
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 02, 2013, 03:13:59 pm
I did it!

deletes a bunch of erroneous code

tada!
Code: [Select]
float mod_att_value(int CTI, int max, int current)
{
  const int defaultCTI = 500; //set as default... values above/below will adjust accordingly.

  //int CTI; //Cost to improve as described via tokens.
  //int max; //dwarf's max attribute
  //int current; //dwarf's current attribute
  float mod_Att_Value;
  float add_value;
 
 
  float gap = (float(max) - float(current)) * defaultCTI / CTI;
 
  float normalized_gap = 0.5 * (1 - gap / (float(max) - float(current)));
 
  if (normalized_gap >= 0)
    normalized_gap += 0.5;    // Values <0, 0.5> reserved for those suitable for a task.
  else                                                               
    normalized_gap = -0.5 / (normalised_gap - 1.0);
   
  add_value = normalized_gap * gap;
 
  mod_Att_Value = current + add_value; //can weight mod_Att_Value against current value for weighted average
 
  return mod_Att_Value;

   
   
}

so the only issue with this... is IT WILL NOT WORK WITH ANY NEGATIVE CTI.  I had a formula that was kind of working for negative CTI's but not really.  This seems to work for any positive CTI.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 03, 2013, 11:46:12 am
I know I feel slightly stupid right now, for asking this, but may I ask if there are any recomendations on how to set up the optimizer for your forts? I was trying to figure it otu a bit ago, and...I saw some strange selections by it, so I feel I was being absolutely -stupid- with what I was telling it to keep an eye open for >.< then again I was playing Kobold camp with Masterwork at the time so that might be one reason I felt like I did so stupidly with the setup @_@
the optimizer sets up pairings between labors and either their related skill, or a chosen role. the skill or role chosen determines 'how to score' each dwarf for the labor or job that needs to be done. the priority column can kind of be thought of as a ranking of importance for the jobs/labors in the optimization plan. a higher priority means there's a better chance of assigning a highly rated worker to the job. the ratio is a way to setup approximately how many workers will actually be assigned to the job or labor.

there are tooltips on everything and the columns will update as you change values so you can get an idea of what will happen. i'm not sure if this helps as i don't know exactly what problems you were having. i'm working on getting a little webpage/manual setup which will explain all the new features i've implemented and in time have examples and samples you can try.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Gobolinno on February 04, 2013, 01:09:54 am
Excuse me for asking, A couple of pages ago Maklak asked or thought about making it able to edit values.
(as jdrwaf)...

then everyone started talking about scripts and 2000 values and much more complicated stuff (for me!) than
even dwarf fortress itself...

I'm sorry if the answer is somewhere in these last pages but... this feature (aka: edit... yes, cheat!)
is available somewhere, somehow in any release?

O.o?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 04, 2013, 11:47:54 am
I do not think dwarf therapist should be used as a tool to cheat (I'm kind of on the fence about highlighting cursed dwarfs, I use it, but... I wouldn't cry if it wasn't there).

there's a lot of flack already about how this tool "cheats" even though it doesn't (really), but if it were enabled to do what you speak of, edit attributes... then a lot of people probably wouldn't use it.

it's a philosophical standpoint.

I for one liked those tools you spoke of, and I hope the developers get it working again, but I don't think it belongs in DT.

I think rather if you REALLY want to do what you speak of, use cheat engine and use splinterz version of dwarf therapist .ini files for the memory address

IMO
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Sutremaine on February 04, 2013, 12:50:22 pm
Yeah, I think DT should just be for observation and for doing stuff that you can do in-game. At the moment the only DT options that DF doesn't have are 'highlight cursed dwarves' and 'allow child labour', and that's okay.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Gobolinno on February 04, 2013, 08:17:47 pm
Could someone point me to the memory adresses to use with Cheat Engine?.   :'(
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 04, 2013, 09:04:42 pm
now when I did this, i searched for an attribute value
say
a dwarf's strength value


open a process by using window list (if your using dfhack, dfhack shows up as "dwarf fortress (somenumber)" don't choose the window with the number.
try using a dwarf's experience in a skill instead

and then when it increased by a number, I searched for the increased value

once I finally found a dwarf, then I was able to use

v0.34.11_graphics.ini

and it specified the exact difference between dwarf's

(I never figured out how to save cheat engine tables for use with DF :(, i remember they changed when i fired up a new fort).

Another thing you could do is change a dwarf's squad id.  I'll post some more when I figure some stuff out

You know, I think it's a counter... their probably isn't a value that stores actual xp...  but when the counter reaches a point, the level goes up.

Yeah, it's a counter.

woohoo, found my old notes

Splinterz said
Quote
for memory locations you can't just save the address of an attribute, as when you start a program it will load into memory in (potentially) a different base address each time. you'll need to use the right click in dt and look at the memory dump, plug in the base address for the dwarf, and then the offsets to get to the attributes, each time you want to mess around with cheat engine.

Okay, getting somewhere
right click on the dwarf you want, copy address to clipboard, inside cheat engine click "add address manually" (bottom right) then choose text value type.

Voila, you just got the start of the dwarf's memory address layout (so you can now use the offsets defined in the .ini file, example 0x000 = name, or the starting position).  The rest of the offsets can be found from the name starting address.

For example, fire up the windows calculator, copy and paste that value in that you copied from DT (make sure you have the calculator set to programmer and set it to hex mode), and add the offsets to find the other address...  the first phys attr is strength.  Found it, just set mine to 6000 (to see what happens, but it did have the correct 1st value).  try changing the record offsets by 4 to get each new attribute.  I'm not sure what the size of a dwarf's object is inside DT, but if you "recalculate new address" you can set the offset to ...

I tried to find the difference in dwarf's, but i was getting b08 (in hex) as the difference between dwarf's... or 2824 decimal address difference.  So if you define all the values for one dwarf, you can cycle through them by changing the offset for all the address.

beyond that, i'm not sure how to use cheat enginge (although you can also use it to freeze your fortress' value, embark points, adventurer points!)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 05, 2013, 05:22:18 am
Yeah, I think DT should just be for observation and for doing stuff that you can do in-game. At the moment the only DT options that DF doesn't have are 'highlight cursed dwarves' and 'allow child labour', and that's okay.
yes i agree. it's never been intended to turn it into something like runesmith. i also believe there are a quite a few dfhack scripts and plugins for tweaking values already.

Could someone point me to the memory adresses to use with Cheat Engine?.   :'(
here you go: https://github.com/angavrilov/df-structures
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on February 05, 2013, 05:08:17 pm
I sometimes get posts by people saying that they can see my custom written "cursed dwarves" with dfhack. Which is not true. My disease carriyng migrants, cults, possessed dwarves, and so forth ARE invisible. They use a caste system, but the caste name is identical to the normal dwarves, so the Therapist sorts them to the normal castes.

We did talk about this a long time ago, and I think it is just perfect as it is. ;) But for testing, bugfixing and people that like to use this "highlight cursed dwarves" it would be nice to have the option to see them. I dont know of any other mod using this system (I think LFR is planning on an addition though) so I dont know if you want to add it as a feature.

If yes, all you would have to do is add an option to sort dwarves by caste-id. I think some people that play my mod, including me, would be greatful for the option. :)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 05, 2013, 05:59:18 pm
I sometimes get posts by people saying that they can see my custom written "cursed dwarves" with dfhack. Which is not true. My disease carriyng migrants, cults, possessed dwarves, and so forth ARE invisible. They use a caste system, but the caste name is identical to the normal dwarves, so the Therapist sorts them to the normal castes.

We did talk about this a long time ago, and I think it is just perfect as it is. ;) But for testing, bugfixing and people that like to use this "highlight cursed dwarves" it would be nice to have the option to see them. I dont know of any other mod using this system (I think LFR is planning on an addition though) so I dont know if you want to add it as a feature.

If yes, all you would have to do is add an option to sort dwarves by caste-id. I think some people that play my mod, including me, would be greatful for the option. :)

by sort, do you mean group by? so these special caste dwarves don't actually have a curse, they're just a special caste?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 05, 2013, 08:04:35 pm
New Feature request... not sure if anyone wants it. (and I'd hate to hold up a new release)

a status icon column.

I'm wondering how many of my dwarf's are thirsty

http://dwarffortresswiki.org/index.php/DF2012:Status_icon

i don't see any thirsty icons, but I'm wondering if anyone is still thirsty after my supposed wells are in place).
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 06, 2013, 05:23:07 am
New Feature request... not sure if anyone wants it. (and I'd hate to hold up a new release). a status icon column. I'm wondering how many of my dwarf's are thirsty (http://dwarffortresswiki.org/index.php/DF2012:Status_icon) i don't see any thirsty icons, but I'm wondering if anyone is still thirsty after my supposed wells are in place).

most of the status icons are spread among different properties of a dwarf (health, happiness, thoughts, statuses, moods, etc..) most of these are already accessible in DT in some form or another. for example you could probably gauge the amount of thirsty dwarves by monitoring the amount of thirsty/dehydrated thoughts in the population (thoughts are in the upcoming release!), but obviously that will have a bit of a delay. a dwarf will also often have multiple status icons that will cycle in DF, which isn't really practical to implement in DT.

that said, health statuses like hunger and thirst will be visible when i get around to attempting a health grid view so you can also see who is injured, and how badly (similar to the z->health overview within DF). it's been asked for multiple times and may be a nice addition.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on February 07, 2013, 07:57:53 am
I finally have some time to look into this, but I'm afraid, I won't be of much help.

> the formula is quite simple... involves ((max possible - current value) + current value) /2
If this is what you want to use for attributes, sim3 with 2000 simulated gains will do a better job. Caps don't even matter most of the time and when they do, it is only when a dwarf is close to his cap. This thing is like using sim3, with simulating different gains for different dwarves (and not because of different CTI for castes), which I already argued against.

If you want me to map an interval into another interval, with some values mapped to fixed points, I can construct a transformation for you, but I need to understand exactly what you want.

> on the cheating df2012 thread, it was mentioned that the CTI could be negative... I hope not.
Personally I'd lower cap the CTI at +1. There is some evidence that this is a counter and attribute improves when that counter exceeds CTI. That means values below 0 would be meaningless and anything below a 100 would make for very fast gains anyway.

> > (att - min) / (max - min), so for Strength (att -450) / (2250 -450). You would have to check for some edge cases (max == min), or the result of this formula exceeding <-100, 200>, but other than that it should work for all attribute values. Use min and max average for all castes and based on their frequency.
> Remember what you said about dwarf's above max bin (i.e. 7th raw?)  that wouldn't account for it, it would if we extended it.  but that's kind of what we do now.  We squeeze 98% of values inbetween 1st bin and double last bin.  The remaining 2% are values outside of it.  It's the best system we can come up with without using min/max.
I can't really tweak your system to be better. I'm just arguing that it isn't linear, which is a nasty property and try to propose something else. I also disagree with how you map attributes to <0, 100> as it isn't linear, but for the most part your approach might be OKayish.

> ((Current Attribute * Weight A) + (Max Attribute possible for that Dwarf * Weight B))/(Weight A + Weight B)
sim3 is still better than this. It factors in the CTI and returns higher values for lower CTI.

> (((Max - current) * 500) / CTI) (* Weight)
Wrong. For low CTI this can return values well above Max, which is an error. The formula that follows is erroneous for the same reason.
> If we can mitigate this: from ever being greater than (max - current), we're good, but now that I'm looking at it, I don't think it can.
> I think the answer is here: normalised_XP = -0.5 / (normalised_XP - 1.0);
No, it's not. It is true that you could take var = (((Max - current) * 500) / CTI) (* Weight), then use (x / (1+x)) to force it to stay below Max, but this is bogus. I really don't like it when you play around with math without understanding the reasons behind this math.

Ah, you did just that with your code. Well, I haven't made a graph of it. By the looks of it, for the same CTI the order will be correct, but it will have some irregularities and will definitely not be linear.

I still say it would be a better idea to just use sim3 for attributes, taking the att_sim values as either maximums or minimums from an old fort and call it a day.
* sim3 will always give you a value between current and max.
* It factors in CTI the way it is used.
* It is linear if you don't cap an attribute.
* When you do cap, it increases slower.

As a side not, if you map all attributes to <0, 100> but let people set weights when aggregating them into "how good are these attributes for this job", some irregularities can be fixed by correct weights, but finding those correct weights is no easy task.

> Dwarf Therapist as a tool to cheat.
For me it could go both ways. As long as I have a tool to "cheat" (that I'd use for testing rather than cheating), I'm fine. If DF does allows cheating, like it does with child labour now, but has a clearly labelled option to enable it, that's disabled by default, I'm also fine.
> yes i agree. it's never been intended to turn it into something like runesmith. i also believe there are a quite a few dfhack scripts and plugins for tweaking values already.
Well, I guess that settles it, then.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 07, 2013, 09:20:37 am
Ah, you did just that with your code. Well, I haven't made a graph of it. By the looks of it, for the same CTI the order will be correct, but it will have some irregularities and will definitely not be linear.

I still say it would be a better idea to just use sim3 for attributes, taking the att_sim values as either maximums or minimums from an old fort and call it a day.

It factors in the CTI and returns higher values for lower CTI.

well I was proposing a weight of 1 to .5 which would give values of 12.5% between current and max rather than trying to find values from old forts (what of users that use training rooms?)

I never expected it to be linear, how can it be linear if a max cti value is not known?  So I based it around 500 CTI.

Mine returns higher values for lower CTI's as well.

So what are the irregularities?  Have you graphed it (I have, they seem pretty similar in ranking).  I know what your formula (the one I based this one off of) does, it takes an infinite scale and makes it finite.  That much I learned from your example.  I based it from 0 to 500, and 500 to infinite.  I don't see anything wrong with that.  I just don't understand the sim3 as much and didn't like the arbitrary 2000 att_sim value, although you had a proposed fix for it, I had one that didn't need a fix. 

Which was to base it on (current value + max value)/2

I used your infinite mapping method to account for CTI values, and using weights, a player can set what he thinks his max possible progression should be.  default is 25% between current and max since it's
(((current value + max value)/2 ) * weightA) + (current value * weightb) / (weighta + weightb)
if weights are equal, it's really doing (((current value + max value)/2) + current value) /2

btw, you like to read and type as you respond, ever consider to read the entire email first and then respond on a second read?  I'm not sure if I do this... I know I don't go back and edit my emails once I figure something out (I try to using strikethrough)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on February 07, 2013, 01:38:13 pm
> well I was proposing a weight of 1 to .5 which would give values of 12.5% between current and max rather than trying to find values from old forts (what of users that use training rooms?)
Values from old forts would just help to differentiate attributes and not treat them all equally. Coin tossers and danger rooms would just train some attributes to their maximums (if threre indeed are caps in Fortress Mode), which is even better to have an educated guess on how which high attributes can improve during gameplay.

> I never expected it to be linear, how can it be linear if a max cti value is not known?  So I based it around 500 CTI.
For very high CTI, an attribute shouldn't improve at all and current value should be the only one important. sim3 does exactly this, as it should. What does your piece of code do?
First it makes gap into a small positive value.
It makes normalised_gap to be just below 0.5, then just below 1. 
add_value becomes a small positive number.
mod_Att_Value becomes just above current and is returned.
OK, this test passed.

What about the other extreme, (CTI == 1) ? The correct return value is max. Sim3 returns max -1 or similar.
gap = (max - curr) * 500 / CTI
normalised_gap = 0.5 - 500 / CTI
normalised_gap = 0.5 / (0.5 + 500/CTI)
add_value = (max - curr) * (500 / CTI) * 0.5 / (0.5 + 500/CTI)
For small CTI that's slightly below (max-curr) * 0.5
mod_Att_Value = 0.5 * (max + curr) or slightly below.
Test failed. And I didn't even get into what happens for other values. For very low CTI only the maximum and not the current value matters. For your method the maximum value is (current + max) /2.

This approach produces some numbers and may be OK for sorting attributes, but it has weird properties. No, I haven't even bothered to graph it.

BTW, in case you didn't notice this yourself, your graphs for sim3 had 2 intervals where they were linear: before the cap and after the cap.

> Mine returns higher values for lower CTI's as well.
Monotonicity of this function is necessary, so are the correct edge values, but it isn't good enough for aggregating it with an arithmetic mean with other things.

> I just don't understand the sim3 as much and didn't like the arbitrary 2000 att_sim value, although you had a proposed fix for it, I had one that didn't need a fix.   
I agree, but only because it cannot be fixed, much as my method for skill gain using a similar formula couldn't be fixed and I called it ugly. To remove the arbitrary 2000 att_sim I proposed getting some values from an old fort and having different att_sim values for different attributes, to which you objected.

(((current value + max value)/2 ) * weightA) + (current value * weightb) / (weighta + weightb)
Well, at least I can set weightb to be much higher than weightA and be done with it.

BTW, your method breaks for current > max (possible with syndromes) and low CTI, while sim3 doesn't. It just returns current.

> you like to read and type as you respond, ever consider to read the entire email first and then respond on a second read?
I always read both what I respond to and my response several times.


I grew tired of arguing over this and want to move on to other things. I cared about the skill learning rates because it's going to be useful to me. I don't really use the role recommendations and while I would like that part done as best as it can be, I can just take them with a big grain of salt and hand-pick the dwarves I want. Do what you think is best.

EDIT: Well, OK, maybe I'm wrong here somewhere. I was wrong before a few times. Thing is, it no longer matters to me. If it did, I'd make some graphs and study them.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 07, 2013, 02:41:41 pm
mk
im pretty sure your wrong. only for cti 500 is max (current + max)/2

for cti of 1 it does return close to max value

ex.
current 1500 max 3000 cti 1
returns 2994.0299

theres a gap value thats multiplied against and this creates an add value that closes the gap.
so it does pass your second test.  i tested all this myself in a similar fashion to ensure it reached near max.  ill have to post the google sheet later.

btw. we did a simple fix for values over or at max. we just returm current.

man... all that talk about my method, and a 1500/3000 on sim3 is 2250 (i.e. (current + max)/2)
not sure on this one

the problem with all this code, is we need to figure it out, because Splinterz is on the cusp of his next release, and you keep getting my formula wrong...  dogging it and all is frustrating when your saying incorrect things about it.

I don't really care what formula we use, but it irks me when you say it's broken, but you point out things that aren't broken.

so it makes it harder for Splinterz to figure out what goes into v20.

I'm working on getting a comparison between your sim3 and mine right now, going to graph it and display it.

update:
now it's my turn.

yours and mine seem to be on par with each other... until you get to 1 CTI, then what happens?

your's goes negative...  in all fairness though, it only does it for 1, and not 2...

This all started because I want to feed the values back into the bins (which I now firmly believe can be done safely), so I came up with a formula I understood in order to do so, but now I understand how att_sim works... so I don't think it matters if we feed it in or not, it just scales things back down to the normal bin frequencys (Splinterz concern all along was your formula was producing really large #'s... which to be honest, could have just been re-merged with the original value, which I was doing... so like I said, I don't care what value we use).

here's sim3 vs my code, and to be honest, they produce VERY SIMILAR NUMBERS, yet mine produces numbers that work with any range of CTI 1 to 1000+... to be honest, the code is in your credit, I had no idea how to reduce the scale, but it's more workable, and doesn't need to cap any values to work

Code: [Select]
#include <iostream>
#include<stdio.h>
#include <math.h>

using namespace std;

const int default_cti = 500; //set as default... values above/below will adjust accordingly.

int sim3 (int att, int cap, int CTI)
{
    if (att > cap)
        return att;

    int sim_value = 2000;

    int att_sim = sim_value * default_cti / CTI; //default_cti could be a weighted average of all cti's.
    int max_delta = (cap - att) > att_sim? att_sim : (cap - att);
    long ret = ((att + att + max_delta) * max_delta) /2 ;
    ret += (att_sim - max_delta) * cap;
    ret /= att_sim;
    return (int)ret;
}

int mySim (int att, int cap, int CTI)
{

  //int CTI; //Cost to improve as described via tokens.
  //int max; //dwarf's max attribute
  //int current; //dwarf's current attribute
  float mod_Att_Value;
  float add_value;

  if(att>=5000)
  {
      return 5000;
  }

  float gap = (float(cap) - float(att)) * default_cti / CTI;

  float normalized_gap = 0.5 * (1 - gap / (float(cap) - float(att)));

  if (normalized_gap >= 0)
    normalized_gap += 0.5;    // Values <0, 0.5> reserved for those suitable for a task.
  else
    normalized_gap = -0.5 / (normalized_gap - 1.0);

  add_value = normalized_gap * gap;

  mod_Att_Value = att + add_value; //can weight mod_Att_Value against current value for weighted average

  return int(mod_Att_Value);
}

int main()
{
    int ret = 3;
    int att;
    int cap;
    int CTI;

    //att_sim is based on median possible gain, not sure if it should be based on average possible gain, or median possible gain, or max possible gain
    //formula is ((median*.5) + (((5th bin + 6th bin)/2) *.5)
    /*
        450:950:1150:1250:1350:1550:2250
        (1250*.5)+((1350+1550)/2)*.5
                  =1350
    */
    printf("input:\n current, cap, CTI\n\n");
    printf("output:\n current, cap, CTI, sim3, mine\n\n");
    while (ret = scanf("%d %d %d", &att, &cap, &CTI) == 3)
    {
        printf("%d, %d, %d, %d, %d\n", att, cap, CTI, sim3(att, cap, CTI), mySim(att, cap, CTI));
    }
    return 0;
}


I will post some sheets to show comparisons.

and here's a spreadsheet

https://docs.google.com/spreadsheet/pub?key=0AvBdaXUaNVMndEFqV2pkckJjeFFvRkM4RjBNcjU1WEE&output=html

just in case this didn't get posted on google docs and linked properly
Spoiler (click to show/hide)

we're honestly crying over small differences... I'm just going to chock it up to you not following my formula through all the way.  However, you seem to be quite aloof to reading about things you have an understanding of (I'm choosing my words carefully here)...

which means you miss the details (hence the comment on reading/responding to emails).

I'm saying here, that my formula does account for low CTI's, as you can see, as well as high CTI's...

so what's the diff.  The only reason I created it was to feed it back into the frequency bins... I know what mine's doing, yours is doing some area measurements under some sort of curve that I don't get, but they do the same thing in the end, graph it any which way you want, and give some honest feedback (please, lets just comment and be honest in the shortcomings).

question?
Quote
BTW, in case you didn't notice this yourself, your graphs for sim3 had 2 intervals where they were linear: before the cap and after the cap.
??? link please?

Hey Maklak...
I don't want you thinking I'm hating on you, I'm just trying to figure this shit out.  If we can't implement it without not knowing how it works, it's like magic to us...

I've been rereading, and you posted this
Quote
sim3 gives you the predicted average attribute value during some some hypothethical gain. If you don't hit a cap, it returns "att + att_sim/2" (the formulas it uses do exactly this, except are more complex to handle the second part. After you hit the cap, value returned by sim3 is between "(att_cap+att)/2" and  "att_cap". It increases with att_sim at the speed of "x/(1+x)" (If you really want me to, I can derive the formula for this).

which looks quite similar to my (current + max)/2 concept...

so I think we're hitting on the same things, maybe you can explain SUPER LAMEN terms how what I conjured compares with yours (I know you don't owe us that, but if you present it, then Splinterz will understand, and be that much better to make his decision on v20!)...

Update:
Here's a pic of it graphed (sorted by current smallest to largest, cap smallest to largest, cti largest to smallest)
Spoiler (click to show/hide)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on February 08, 2013, 02:35:38 am
Quote
by sort, do you mean group by? so these special caste dwarves don't actually have a curse, they're just a special caste?

Yes, exactly. They have not been cursed, but instead are a caste with an interaction. This way I can affect the chance of them arriving (with population ratio). If I would use curses it would be completely random.

Oh, I also have another report: When I leftclick on the grid, for example for "toggle farming" then it only turns all farming on for all dwarves. But it cant turn it off.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Raven on February 08, 2013, 06:55:18 am
Hi all, one of my friends is having a strange problem with the version 0.6.12, it seems that is lists even dead dwarves in the dwarf tabel

what is the lates version? is it possible to update the opening post with the lates news?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 08, 2013, 07:19:09 am
Quote
by sort, do you mean group by? so these special caste dwarves don't actually have a curse, they're just a special caste?

Yes, exactly. They have not been cursed, but instead are a caste with an interaction. This way I can affect the chance of them arriving (with population ratio). If I would use curses it would be completely random.

Oh, I also have another report: When I leftclick on the grid, for example for "toggle farming" then it only turns all farming on for all dwarves. But it cant turn it off.
for this bug, you're just clicking an individual cell to turn on the labor, but you can't click it again to turn it off? does it flicker off and then back on? if you wait a second before clicking to turn it off does it work?

Hi all, one of my friends is having a strange problem with the version 0.6.12, it seems that is lists even dead dwarves in the dwarf tabel

what is the lates version? is it possible to update the opening post with the lates news?
unfortunately DwarfEngineer hasn't been around for quite some time. i've branched the 'official' version and you can check it out in my signature. if you want to keep the old version, but fix the problem with the dead dwarves showing up, you'll need to copy the flags sections at the bottom of the ini files from my branch (http://code.google.com/r/splintermind-attributes/source/browse/#hg%2Fetc%2Fmemory_layouts%2Fwindows%253Fstate%253Dclosed) to your current version.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on February 08, 2013, 07:40:49 am
It is not when I click on a cell, or even a singular labor (like left-clicking on "mason" and it turns on/off mason labor for all dwarves)

What I mean is RIGHT-Clicking, which opens a little menu that says: Toggle "labor-group-name-here". For example toggle all farming labors, or toggle all hauling labors. When I press on it, all labors of that group are turned on. But it wont turn them off. Its not the little delay that you usually have when left-clicking on the labor name.

Here is a screenshot:
(http://i.imgur.com/AgZbW8e.png)

I did a quick testrun, and it works up to 11 dwarves in one group. If I try to toggle groups with 1-11 dwarves, it works, it toggles both on and off. If I try on a group with 12+ dwarves, it only toggles it on, but not off. Strange.

Edit: oh, and once I am here already: Is there a hotkey (or option) to toggle ALL labors, for all dwarves?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 08, 2013, 07:47:06 am
that's definitely strange.. so far i'm unable to reproduce it. i just tried grouping by caste, and toggling the the 'Dwarf' caste group's farming labors, which has 359 dwarfs in it. no problems so far turning it on and off... is it possible it's just really delayed? if you collapse the group and try on the aggregate row does it work?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on February 08, 2013, 07:52:43 am
Its not delayed, it simply does not happen. I tried several groups, castes... but anyway, if you cant reproduce it, it is my system or mod. Either way not a big issue. I wouldnt think about. I will see if it works with a different save, once I play a bit more.

Quote
Edit: oh, and once I am here already: Is there a hotkey (or option) to toggle ALL labors, for all dwarves?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Raven on February 08, 2013, 07:55:00 am
Quote
by sort, do you mean group by? so these special caste dwarves don't actually have a curse, they're just a special caste?

Yes, exactly. They have not been cursed, but instead are a caste with an interaction. This way I can affect the chance of them arriving (with population ratio). If I would use curses it would be completely random.

Oh, I also have another report: When I leftclick on the grid, for example for "toggle farming" then it only turns all farming on for all dwarves. But it cant turn it off.
for this bug, you're just clicking an individual cell to turn on the labor, but you can't click it again to turn it off? does it flicker off and then back on? if you wait a second before clicking to turn it off does it work?

Hi all, one of my friends is having a strange problem with the version 0.6.12, it seems that is lists even dead dwarves in the dwarf tabel

what is the lates version? is it possible to update the opening post with the lates news?
unfortunately DwarfEngineer hasn't been around for quite some time. i've branched the 'official' version and you can check it out in my signature. if you want to keep the old version, but fix the problem with the dead dwarves showing up, you'll need to copy the flags sections at the bottom of the ini files from my branch (http://code.google.com/r/splintermind-attributes/source/browse/#hg%2Fetc%2Fmemory_layouts%2Fwindows%253Fstate%253Dclosed) to your current version.

if I recall correctly, your version has more options than the base version so I'll simply suggest your branch version ;) thanks
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 08, 2013, 07:57:27 am
Its not delayed, it simply does not happen. I tried several groups, castes... but anyway, if you cant reproduce it, it is my system or mod. Either way not a big issue. I wouldnt think about. I will see if it works with a different save, once I play a bit more.

Quote
Edit: oh, and once I am here already: Is there a hotkey (or option) to toggle ALL labors, for all dwarves?

weird... the next version will have CTRL+A set to select all dwarfs, so i'll add another menu in the right click to assign all labors, similar to the current one to clear all labors. should be sufficient yeah?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nkosi_SW on February 08, 2013, 03:01:24 pm
Just a minor bug report: When you go to "Set Nickname..." in DT through right-clicking on a Dwarf's name, you aren't allowed to enter nicknames longer than 16 characters, getting the message "Nickname must be under 16 characters long".  But in DF itself, you can set nicknames up to 39 characters long.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 08, 2013, 03:15:00 pm
Just a minor bug report: When you go to "Set Nickname..." in DT through right-clicking on a Dwarf's name, you aren't allowed to enter nicknames longer than 16 characters, getting the message "Nickname must be under 16 characters long".  But in DF itself, you can set nicknames up to 39 characters long.
this is a technical barrier, not a bug. since dwarf therapist doesn't run within the address space of dwarf fortress, it's unable to allocate any new memory, which is necessary for strings longer than the normal buffer size.

once i figure out a way to use dfhack as a back-end (haha, i can dream right?) issues like these will disappear.

Edit: i've changed the message to explain better that it's a technical issue and to set the nickname in game if a long name is required for clarity
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Skin36 on February 09, 2013, 06:13:48 am
I found several errors in game_data.ini
http://code.google.com/r/splintermind-attributes/source/browse/etc/game_data.ini


5\attributes\2\id=kinesthetic ability

kinesthetic sense
may be ?

60\attributes\1\id=creatvity
creativity
may be ?

71\attributes\2\id=toughess
toughness
may be ?

Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Parhelion on February 10, 2013, 07:10:03 pm
EDITED:  The issue described below was resolved after I created another user account on my PC.  My original was an Administrator, so it wasn't an access issue.  My next question would be if Dwarf Therapist requires the creation of registry keys, which is an issue I have had in the past with the computer.

------

I am cross-posting this from the Masterwork thread, since I'm still not entirely sure which dev team would be most likely to know what's going on here --

When I attempt to run the copy of Dwarf Therapist bundled with the current version of Masterwork (alpha 2f), I get a "DwarfTherapist.exe has stopped working" error the moment after the screen for it pops up.  This occurs regardless of whether DF is running or where the exe is placed.  I also rebooted my PC (because turning it off and on again is the best IT advice I've ever given).

When I attempt a version of Dwarf Therapist (Version 0.6.12 - Branch 16.1) that was bundled with an older copy of Masterwork, it runs as expected.

The following is the log from D Therapist:


Code: [Select]
2013-Feb-10 18:06:12.327 INFO core Dwarf Therapist "0.6.12" starting normally. [src\dwarftherapist.cpp:123] (setup_logging)
2013-Feb-10 18:06:12.463 INFO core Loaded 8 views from disk [src\viewmanager.cpp:139] (reload_views)
2013-Feb-10 18:06:12.464 DEBUG core group_by now set to 0 [src\models\dwarfmodel.cpp:766] (set_group_by)
2013-Feb-10 18:06:12.468 DEBUG core group_by now set to 0 [src\models\dwarfmodel.cpp:766] (set_group_by)
2013-Feb-10 18:06:12.468 DEBUG core "redrew views in 5ms" [src\viewmanager.cpp:259] (draw_views)
2013-Feb-10 18:06:12.477 DEBUG core setting up connections for MainWindow [src\mainwindow.cpp:141] (MainWindow)
2013-Feb-10 18:06:12.480 DEBUG core group_by now set to 1 [src\models\dwarfmodel.cpp:766] (set_group_by)
2013-Feb-10 18:06:12.480 DEBUG core group_by now set to 1 [src\models\dwarfmodel.cpp:766] (set_group_by)
2013-Feb-10 18:06:12.481 DEBUG core beginning to read settings [src\dwarftherapist.cpp:145] (read_settings)
2013-Feb-10 18:06:12.515 DEBUG core finished reading settings [src\dwarftherapist.cpp:201] (read_settings)
2013-Feb-10 18:06:12.559 DEBUG core attempting connection to running DF game [src\mainwindow.cpp:263] (connect_to_df)
2013-Feb-10 18:06:12.563 DEBUG core adding valid layout "v0.34.11 (graphics)" "0x4fcc9488" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.564 DEBUG core adding valid layout "v0.34.10 (graphics)" "0x4fba073a" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.565 DEBUG core adding valid layout "v0.34.09 (graphics)" "0x4fb4c506" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.566 DEBUG core adding valid layout "v0.34.08 (graphics)" "0x4fb0ccba" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.566 DEBUG core adding valid layout "v0.34.07 (legacy)" "0x4f7592fe" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.567 DEBUG core adding valid layout "v0.34.07 (graphics)" "0x4f7592fe" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.567 DEBUG core adding valid layout "v0.34.06 (legacy)" "0x4f6c279c" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.568 DEBUG core adding valid layout "v0.34.06 (graphics)" "0x4f6c34ca" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.569 DEBUG core adding valid layout "v0.34.05 (legacy)" "0x4f55e19c" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.569 DEBUG core adding valid layout "v0.34.05 (graphics)" "0x4f55f23e" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.570 DEBUG core adding valid layout "v0.34.04 (legacy)" "0x4f4d8635" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.570 DEBUG core adding valid layout "v0.34.04 (graphics)" "0x4f4d9726" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.571 DEBUG core adding valid layout "v0.34.03 (legacy)" "0x4f4cd85b" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.571 DEBUG core adding valid layout "v0.34.03 (legacy)" "0x4f4cd85b" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.572 DEBUG core adding valid layout "v0.34.02 (legacy)" "0x4f3f76bf" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.572 DEBUG core adding valid layout "v0.34.02 (graphics)" "0x4f3f88bc" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.573 DEBUG core adding valid layout "v0.34.01 (legacy)" "0x4f390718" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.573 DEBUG core adding valid layout "v0.34.01 (graphics)" "0x4f391a33" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.574 DEBUG core adding valid layout "v0.31.25 (legacy)" "0x4d9068da" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.574 DEBUG core adding valid layout "v0.31.25 (graphics)" "0x4d90764f" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.575 DEBUG core adding valid layout "v0.31.24 (legacy)" "0x4d8f2994" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.575 DEBUG core adding valid layout "v0.31.24 (graphics)" "0x4d8f39f9" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.575 DEBUG core adding valid layout "v0.31.23 (legacy)" "0x4d8dd5a2" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.576 DEBUG core adding valid layout "v0.31.23 (graphics)" "0x4d8de854" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.576 DEBUG core adding valid layout "v0.31.22 (legacy)" "0x4d8b1dce" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.577 DEBUG core adding valid layout "v0.31.22 (graphics)" "0x4d8b30fc" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.577 DEBUG core adding valid layout "v0.31.21 (legacy)" "0x4d743206" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.578 DEBUG core adding valid layout "v0.31.21 (graphics)" "0x4d743da7" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.578 DEBUG core adding valid layout "v0.31.20 (legacy)" "0x4d72f10d" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.579 DEBUG core adding valid layout "v0.31.20 (graphics)" "0x4d734fb5" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.579 DEBUG core adding valid layout "v0.31.19 (legacy)" "0x4d5b9f3c" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.580 DEBUG core adding valid layout "v0.31.19 (graphics)" "0x4d5bc345" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.580 DEBUG core adding valid layout "v0.31.18 (legacy)" "0x4ce278c2" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.580 DEBUG core adding valid layout "v0.31.18 (graphics)" "0x4ce2841d" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.581 DEBUG core adding valid layout "v0.31.17 (legacy)" "0x4cdc0c76" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.581 DEBUG core adding valid layout "v0.31.17 (graphics)" "0x4cdc27a0" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.582 DEBUG core adding valid layout "v0.31.16 (legacy)" "0x4ca9c859" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.582 DEBUG core adding valid layout "v0.31.16 (graphics)" "0x4ca9d544" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.583 DEBUG core adding valid layout "v0.31.15 (legacy)" "0x4ca859cd" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.583 DEBUG core adding valid layout "v0.31.15 (graphics)" "0x4ca869ea" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.583 DEBUG core adding valid layout "v0.31.14 (legacy)" "0x4c9b4c27" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.584 DEBUG core adding valid layout "v0.31.14 (graphics)" "0x4c9b6efb" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.584 DEBUG core adding valid layout "v0.31.13 (legacy)" "0x4c908b66" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.584 DEBUG core adding valid layout "v0.31.13 (graphics)" "0x4c90ada8" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.585 DEBUG core adding valid layout "v0.31.12 (legacy)" "0x4c4c1527" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.585 DEBUG core adding valid layout "v0.31.12 (graphics)" "0x4c4c32e7" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.586 DEBUG core adding valid layout "v0.31.11 (legacy)" "0x4c495d9f" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.586 DEBUG core adding valid layout "v0.31.11 (graphics)" "0x4c496d93" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.586 DEBUG core adding valid layout "v0.31.10 (legacy)" "0x4c397516" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.587 DEBUG core adding valid layout "v0.31.10 (graphics)" "0x4c398089" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.587 DEBUG core adding valid layout "v0.31.08 (legacy)" "0x4c1d60a0" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.588 DEBUG core adding valid layout "v0.31.08 (graphics)" "0x4c1d69fe" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.588 DEBUG core adding valid layout "v0.31.06 (legacy)" "0x4c0f6a01" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.589 DEBUG core adding valid layout "v0.31.06 (graphics)" "0x4c0f83d5" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.589 DEBUG core adding valid layout "v0.31.05 (legacy)" "0x4c090730" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.589 DEBUG core adding valid layout "v0.31.05 (graphics)" "0x4c091569" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.590 DEBUG core adding valid layout "v0.31.04 (legacy)" "0x4befdde5" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.590 DEBUG core adding valid layout "v0.31.04 (graphics)" "0x4bf014fa" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.590 DEBUG core adding valid layout "v0.31.03" "0x4bc3c470" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.591 DEBUG core adding valid layout "v0.31.02" "0x4bbdf378" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.591 DEBUG core adding valid layout "v0.31.01" "0x4bb45f99" [src\dfinstance.cpp:111] (DFInstance)
2013-Feb-10 18:06:12.591 DEBUG core attempting to find running copy of DF by window handle [src\dfinstancewindows.cpp:191] (find_running_copy)
2013-Feb-10 18:06:12.591 DEBUG core found copy with HWND:  0x3033a [src\dfinstancewindows.cpp:207] (find_running_copy)
2013-Feb-10 18:06:12.591 DEBUG core PID of process is:  2052 [src\dfinstancewindows.cpp:214] (find_running_copy)
2013-Feb-10 18:06:12.591 DEBUG core PROC HANDLE: 0x560 [src\dfinstancewindows.cpp:222] (find_running_copy)
2013-Feb-10 18:06:12.591 DEBUG core PEB is at:  0xfffde000 [src\dfinstancewindows.cpp:228] (find_running_copy)
2013-Feb-10 18:06:12.591 DEBUG core read 12 bytes BASE ADDR is at:  0xdc0000 [src\dfinstancewindows.cpp:241] (find_running_copy)
2013-Feb-10 18:06:12.592 DEBUG core Target EXE was compiled at  "2012-06-04T05:57:12" [src\dfinstancewindows.cpp:70] (calculate_checksum)
2013-Feb-10 18:06:12.592 DEBUG core DF's checksum is: "0x4fcc9488" [src\dfinstance.cpp:1254] (get_memory_layout)
2013-Feb-10 18:06:12.592 INFO core Detected Dwarf Fortress version "v0.34.11 (graphics)" using MemoryLayout from "C:/Users/Sarah/Desktop/DwarfTherapist/etc/memory_layouts/windows/v0.34.11_graphics.ini" [src\dfinstance.cpp:1266] (get_memory_layout)
2013-Feb-10 18:06:12.592 DEBUG core base address: "0x00dc0000" [src\dfinstancewindows.cpp:263] (find_running_copy)
2013-Feb-10 18:06:12.592 DEBUG core memory correction: "0x009c0000" [src\dfinstancewindows.cpp:264] (find_running_copy)
2013-Feb-10 18:06:12.598 DEBUG core MEMORY SEGMENT SUMMARY: accepted 844 rejected 298 total 1142 [src\dfinstancewindows.cpp:370] (map_virtual_memory)
2013-Feb-10 18:06:12.598 DEBUG core GetModuleFileNameEx returned:  "C:\Users\Sarah\Desktop\MasterworkDF 2f\Dwarf Fortress\Dwarf Fortress.exe" [src\dfinstancewindows.cpp:277] (find_running_copy)
2013-Feb-10 18:06:12.598 INFO core Dwarf fortress path: "C:/Users/Sarah/Desktop/MasterworkDF 2f/Dwarf Fortress" [src\dfinstancewindows.cpp:280] (find_running_copy)
2013-Feb-10 18:06:12.602 DEBUG core Connection to DF version "v0.34.11 (graphics)" established. [src\mainwindow.cpp:322] (connect_to_df)
2013-Feb-10 18:06:12.607 DEBUG core MEMORY SEGMENT SUMMARY: accepted 844 rejected 298 total 1142 [src\dfinstancewindows.cpp:370] (map_virtual_memory)
2013-Feb-10 18:06:12.607 DEBUG core Loading language translation tables [src\languages.cpp:53] (load_data)
2013-Feb-10 18:06:12.607 DEBUG core Loading generic strings from 222e8e0 [src\languages.cpp:67] (load_data)
2013-Feb-10 18:06:12.607 DEBUG core generic words 0 [src\languages.cpp:69] (load_data)
2013-Feb-10 18:06:12.645 INFO core Loaded 8 views from disk [src\viewmanager.cpp:139] (reload_views)
2013-Feb-10 18:06:12.651 DEBUG core MEMORY SEGMENT SUMMARY: accepted 844 rejected 298 total 1142 [src\dfinstancewindows.cpp:370] (map_virtual_memory)
2013-Feb-10 18:06:12.651 DEBUG core loading creatures from  "0x021ea988" "0x0182a988" (UNCORRECTED) [src\dfinstance.cpp:372] (load_dwarves)
2013-Feb-10 18:06:12.651 DEBUG core dwarf race index "0x02016ffc" "0x01656ffc" (UNCORRECTED) [src\dfinstance.cpp:374] (load_dwarves)
2013-Feb-10 18:06:12.651 DEBUG core current year "0x01a1d32c" "0x0105d32c" (UNCORRECTED) [src\dfinstance.cpp:376] (load_dwarves)
2013-Feb-10 18:06:12.651 DEBUG core civilization id: "0x00000000" [src\dfinstance.cpp:382] (load_dwarves)
2013-Feb-10 18:06:12.651 DEBUG core dwarf race: "0x00000000" [src\dfinstance.cpp:386] (load_dwarves)
2013-Feb-10 18:06:12.651 DEBUG core current year: 0 [src\dfinstance.cpp:389] (load_dwarves)
2013-Feb-10 18:06:12.651 DEBUG core no active units (embark) using full unit list [src\dfinstance.cpp:788] (get_creatures)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 11, 2013, 02:16:51 am
EDITED:  The issue described below was resolved after I created another user account on my PC.  My original was an Administrator, so it wasn't an access issue.  My next question would be if Dwarf Therapist requires the creation of registry keys, which is an issue I have had in the past with the computer.

------

I am cross-posting this from the Masterwork thread, since I'm still not entirely sure which dev team would be most likely to know what's going on here --

When I attempt to run the copy of Dwarf Therapist bundled with the current version of Masterwork (alpha 2f), I get a "DwarfTherapist.exe has stopped working" error the moment after the screen for it pops up.  This occurs regardless of whether DF is running or where the exe is placed.  I also rebooted my PC (because turning it off and on again is the best IT advice I've ever given).

When I attempt a version of Dwarf Therapist (Version 0.6.12 - Branch 16.1) that was bundled with an older copy of Masterwork, it runs as expected.

The following is the log from D Therapist:
Spoiler: log file (click to show/hide)
no there aren't any registry keys written by DT. try renaming your Dwarf Therapist.ini file (users\your_username_here\appdata\roaming\udp software\dwarf therapist.ini) and run DT.

if that works, then there's a problem in the ini file, which is probably the case as creating a new user account resolved the issue. i've encountered this issue once recently and it was caused by the [window] section in the ini file being corrupted or something, so you can try removing that in the original ini file and see if that resolves the issue as well.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on February 12, 2013, 03:25:49 pm
Sigh, I'll look at this again, but I'm so fed up with our arguments that my head hurts. That's why I took a long break.

> im pretty sure your wrong. [Estimating Thistleknot's function return value]
A miscalculation on my part? Let me see.

What about the other extreme, (CTI == 1) ? The correct return value is max. Sim3 returns max -1 or similar.
gap = (max - curr) * 500 / CTI
normalised_gap = 0.5 - 250 / CTI           // There was an error here and it propagated.
normalised_gap = 0.5 / (0.5 + 250/CTI)
normalised_gap = 1 / (1 + 500/CTI)
add_value = (max - curr) * (500 / CTI) * 1 / (1 + 500/CTI)
For small CTI that's slightly below (max-curr)
mod_Att_Value is slightly below max.
Yes, I admit, that this edge value is correct.

> btw. we did a simple fix for values over or at max. we just returm current.
Good. Small things like this tend to lead to bugs. The code you provided also lacks things like capping cap at 5000, capping the CTI at 1, checking if current attribute value is positive. You know, the sanity checks.

> the problem with all this code, is we need to figure it out, because Splinterz is on the cusp of his next release, and you keep getting my formula wrong...  dogging it and all is frustrating when your saying incorrect things about it.
Sigh. Well, yes, I admit, I should have spent some time playing around with it and making graphs. I just like it less than sim3 on principle; in my experience current value of attributes is what matters most. 

> so it makes it harder for Splinterz to figure out what goes into v20.
Yeah, about that. I get into heated discussions with Thistleknot. I'm often right, but also sometimes wrong. There is some bad emotional fallout from that and it is counter-productive to make Dwarf Therapist better. Sorry about that, Splinterz.

> This all started because I want to feed the values back into the bins (which I now firmly believe can be done safely)
I seem to fail to make a thought leap here. On one side you have your bins that try to approximate attribute distribution and map it to probability of value this or smaller. On the other side there are methods to factor in current value of an attribute as well as it's max value and CTI. I fail to see how to connect them. I'm not saying there is no connections, just that I lack an epiphany here.

I think the "normal" values for CTI would be 100 to 2000, even for mods. 1 CTI or less is a really abnormal case. The 1/x function behaves nicely enough where x is within an order of magnitude from 1. In other words, you may be somewhat off from what a human would pick, but the order will be correct at least.


Looking at the code:
> In sim3: //default_cti could be a weighted average of all cti's.
Personally I'd leave it at 500, but as long as you're using the same value the same attribute for all castes, you should be good.

> if(att >= 5000) return 5000;
Well, for such stellar attributes there should probably be a bonus (for example to roles), but this is quite rare, even with modding in "Strength potions" and similar interactions. If values above 5000 would screw something up on a higher level, this is fine.

//att_sim is based on median possible gain, not sure if it should be based on average possible gain, or median possible gain, or max possible gain
Any of the above will work, but I really had "expected average gain for this attribute over a few years" in mind.

> However, you seem to be quite aloof to reading about things you have an understanding of.
I have some degree of mathematical intuition, but in this case the output of both functions looks similar. I should have made some graphs before bashing what you did.
It may be that I understand exactly what I did, but fail to see the logic behind what you did. To me it looks as if you fiddled with formulas at random and got something that worked.

> > BTW, in case you didn't notice this yourself, your graphs for sim3 had 2 intervals where they were linear: before the cap and after the cap.
> Link, please.
Well, there wasn't one. And come to think of it, this is untrue. If sim_gain after factoring in CTI won't cap, then you the function basically returns (curr + sim_gain /2). After it caps, the return value becomes ((cap-curr)*(curr + cap)/2 + (sim_gain -(cap-curr))*cap) / sim_gain, so as sim_gain increases, the return value changes at the speed of (1 + x)/x, which isn't linear.

> I don't want you thinking I'm hating on you, I'm just trying to figure this shit out.  If we can't implement it without not knowing how it works, it's like magic to us.
I've already explained the trapezoid method. I guess to explain it again, I'd need a drawing. Here, I made one. Sim3 computes the average value of an attribute as it trains by att_sim. To do that, you can make a loop that goes on for 2000 or so times or use a smart method. The field of trapezoid is h*(a + b)/2 (or you can think of it as a sum of arithmethic series: (b-a) * (a+b)/2, same thing really). The field of a rectangle is b*c. You add the fields under the graph (as if computing an integral), then divide it by att_sim to get the average value. The slope before capping is always 45 degrees and att_sim is the only thing that depends on CTI. To compute the average value of a function over some interval, you calculate the surface area between the "x" axis and the function graph, then divide that by the length of the interval. I don't think, I can put this in simpler terms.
(http://www.img.ie/o05ti.png)

> so I think we're hitting on the same things, maybe you can explain SUPER LAMEN terms how what I conjured compares with yours (I know you don't owe us that, but if you present it, then Splinterz will understand, and be that much better to make his decision on v20!).
Lol, the problem here is that I understand exactly how my method works, but your formulas look magic to me. Still, the output is pretty similar.

Since you were kind enough to provide me with some source code, I guess, I'll go ahead and make some graphs of my own. Yours are jumping all over the place. Man, I got rusty with gnuplot and Matlab. I guess, I'll just use Open Office Calc. I only made any meaningful changes to the main function to give it a loop changing either att or CTI and print the values to a csv. 

(http://www.img.ie/isc88.png)
The first graph was made by taking Starting Attribute for [450:950:1150:1250:1350:1550:2250], computing cap from that and using CTI of 500. Up to attribute value 1250 the cap is 1250 + att and after that it becomes 2*att. At that point the slope changes very little for sim3, while the change is greater for your function. For sim3 the current attribute value is much more important, while your function values the cap more. 

(http://www.img.ie/3ez5h.png)
For the second graph I kept the attribute value at 1250, the cap at 2500 and manipulated the CTI from 50 (ten times faster gain) to 2000 (four times slower gain). For fast attribute gain the cap is more important, while for slow gain the current attribute value wins and both functions got that right. It is just that sim3 looks much smoother and "prettier", while your has some kind of irregularity around 500 (where it it most important to get things right). In retrospect, maybe I should have used a logarithmic scale for CTI here.

All in all I still prefer sim3, but the difference is not as great as I expected and both methods will get the job done.

EDIT: > Just out of mild curiosity: What are you (maklak), thistleknot and to some extend, splinterz, trying to do with this?  I saw long posts by all three of you for pages without end.
I think this is about a method for taking attribute values, then mapping them to <0, 100> for the purpose of factoring that into suggestions of roles for Dwarves. Not sure.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on February 12, 2013, 03:35:09 pm
Just out of mild curiosity: What are you (maklak), thistleknot and to some extend, splinterz, trying to do with this?  I saw long posts by all three of you for pages without end...
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 12, 2013, 04:32:55 pm
Just out of mild curiosity: What are you (maklak), thistleknot and to some extend, splinterz, trying to do with this?  I saw long posts by all three of you for pages without end...
Maklak is correct in what he answered in his edit in the last post. currently role calculations just take into account the attribute's value. the idea was to see if there was a way to incorporate both the cost to improve an attribute, and a creature's maximum attainable value into the role's rating system for attributes. to put it bluntly, i wanted to know if there was a way to value a dwarf with very fast attribute gain, or a high potential attribute value in addition to the raw value.

since i'm terrible at the maths, i'd hoped that Maklak and thistleknot would reach an agreed upon solution to this problem, which after following the results i believe they have. it's not a huge deal for the roles, but it adds an extra level of depth and accuracy that some users may appreciate.

on a side note, are you still having problems toggling the labors?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on February 12, 2013, 04:36:11 pm
Thanks...

About the labors: I did download 19.3 (I was running 19.1 before) but have not yet have the time to play or test.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: smakemupagus on February 12, 2013, 04:41:58 pm
Don't attributes train really slowly? I can see why an advanced user might say Oh I sort of care what their potential is, but then a very advanced user might say Who cares who will potentially be better in 35 years, both dwarfs will be dead by then ^^  I guess you guys are taking all that in to account, or trying your best to at least.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 12, 2013, 04:47:22 pm
Don't attributes train really slowly? I can see why an advanced user might say Oh I sort of care what their potential is, but then a very advanced user might say Who cares who will potentially be better in 35 years, both dwarfs will be dead by then ^^  I guess you guys are taking all that in to account, or trying your best to at least.
it's pretty much for you modders. the default game rates are pretty slow and won't have an effect (for the cost to improve that is) since they're virtually all the same. the maximum values for each attribute change for each dwarf, so that can give a bit of a bonus. i'm adding in an option to choose a weight setting for this stuff like all the other role mechanics, so you have the option to ignore the potential rating entirely.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: smakemupagus on February 12, 2013, 04:52:22 pm
i'm adding in an option to choose a weight setting for this stuff like all the other role mechanics, so you have the option to ignore the potential rating entirely.

Sounds great!

.. The effort you're are putting in to this makes me want to think about mod in some school for learning rate boosting :D
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Meph on February 12, 2013, 04:58:53 pm
Learn rate boosting can only be done by transformation.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: smakemupagus on February 12, 2013, 04:59:45 pm
Ahh, too bad :(
Sorry for mini-derail!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 12, 2013, 05:05:52 pm
mk. i noticed yours and my formulas graphed more similar when att_sim was 5000

btw mk. thats your formula im using. its from ur sim1 sim2 int code. its the interpolated formula

edit:
see http://pastebin.com/XAypc3Ka
skill_rate_eval
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on February 12, 2013, 05:18:51 pm
Quote
Don't attributes train really slowly? I can see why an advanced user might say Oh I sort of care what their potential is, but then a very advanced user might say Who cares who will potentially be better in 35 years.
I've brought this up already and it was discussed. My solution was to take a 10 year old fort and dump maximum gains and maximum rust for all Dwarves for each attributes to have a good estimate of what an average overseer might expect, then use similar values to simulate gaining attributes, which factors in current attribute value, cap and cost to improve. My proposal was shot down, but it looks like the counter-proposal will work too, just not as smoothly.

> Learn rate boosting can only be done by transformation. 
Yes, but I was thinking about castes rather than transformation; some mods already have some Dwarves who make great soldiers or administartors or masons. You can compliment that by giving both starting value and learning rate boosts for relevant attributes for those castes.

> mk. i noticed yours and my formulas graphed more similar when att_sim was 5000
5000 is too unrealistic and even 2000 is already on the high side. Even the soldiers usually gain "only" 1000-1500 within a few years. By setting att_sim to 5000 the cap becomes more important than the current value. This may be what you're aiming for, but I find using the current value to be more practical than the cap. Smaller att_sim makes the cap important if you're already close to it, but otherwise it's return value is based on the current attribute value.

> btw mk. thats your formula im using. its from ur sim1 sim2 int code. its the interpolated formula
It is similar. You've told me this already.

> ye but you said my formula was like magic to you... so i wasnt sure why u were saying that.
Well, I can't visualize the logic behind it and am quite surprised it works at all, but my graphs don't lie. By saying "this is like magic" I meant "I don't understand how and why this works". When I proposed it for skills, it was mapping distance to a shorter scale.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 12, 2013, 05:46:14 pm
mk.
ye but you said my formula was like magic to you... so i wasnt sure why u were saying that.

the problem with the logic of
Quote
> mk. i noticed yours and my formulas graphed more similar when att_sim was 5000
5000 is too unrealistic and even 2000 is already on the high side. Even the soldiers usually gain "only" 1000-1500 within a few years. By setting att_sim to 5000 the cap becomes more important than the current value. This may be what you're aiming for, but I find using the current value to be more practical than the cap. Smaller att_sim makes the cap important if you're already close to it, but otherwise it's return value is based on the current attribute value.

is this is for mod's, not just vanilla.  So it may be entirely possible for someone to train the full capacity of their potential.  Vanilla alone has shown danger rooms have a significant increase on skills/attributes in a short amount of time.  Using something like pumps exclusively for militia dwarfs could potentially allow a dwarf to hit his max strength in a few years.
see http://dwarffortresswiki.org/index.php/DF2012:Cross-training

Quote
For sim3 the current attribute value is much more important, while your function values the cap more. 

I found this weird since my results consistently reported lower values than yours.
update: i think this is only true at higher ctis when att_sim is 2000. see graph

On a side note, if you take my sheet (posted here http://www.bay12forums.com/smf/index.php?topic=66525.msg4012285#msg4012285) and use in place filters to filter by CTI, you'll notice that yours and mine spike around the same data points, but until you reach higher CTI's, your's cease to spike.  I found increasing the att_sim to 5000 retained the spiking nature.

Top compares att_sim of 5000 at 600 cti vs 50 CTI
bottom compares att_sim of 2000 at 600 cti vs 50 CTI
(http://i45.tinypic.com/yey4j.jpg)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vrga on February 14, 2013, 01:30:33 pm
to derail the current discussion which i honestly cant wrap my head around, the military role advisor is kinda missing... (in the military tab, the whole melee, ranged, blah, blah stuff)

if its related to what's currently being discussed, okay.

also, for brevity's sake, self-compiled DT v0.19.3 on linux.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on February 14, 2013, 02:53:14 pm
> the problem with the logic of
> > 5000 is too high and even 2000 is higher than it should be...
> is this is for mod's, not just vanilla.  So it may be entirely possible for someone to train the full capacity of their potential.
If they have a high median and low minimum value then maybe, but it will take a very long time and isn't that relevant. For a very long time that dwarf will have that attribute below maximum value. For example a worker is lucky to gain 50 points per year. I still say, what I said before.

If someone mods CTI, sim3 will factor that in, but otherwise a realistic value for sim_gain would be maybe a thousand and that only for attributes that the military trains. There is simply no point in caring about max_value so much if it won't be achieved before the inevitable FPS death in 5 years. 

> Vanilla alone has shown danger rooms have a significant increase on skills/attributes in a short amount of time.
My experience with them was that they trained skills very fast, as well as Endurance and were somewhat faster at improving other attributes than military training, but weren't as great as the hype would suggest.

> Using something like pumps exclusively for militia dwarfs could potentially allow a dwarf to hit his max strength in a few years.
I tried that and got around 50-200 after training to Legendary+5, endurance increasing the fastest. This was better than normal labour, but military works much better for attributes.

> > For sim3 the current attribute value is much more important, while your function values the cap more. 
> I found this weird since my results consistently reported lower values than yours.
This was my conclusion from graphing both in relation to growing starting value. After the median, your function growed faster and eventually overtook sim3. Yes, most of the time sim3 return value will be above yours. If you increase the sim_gain further, sim3 will hog the cap even more.

> Graphs.
Well, they are more readable in this form.

> you'll notice that yours and mine spike around the same data points, but until you reach higher CTI's, your's cease to spike.  I found increasing the att_sim to 5000 retained the spiking nature.
I've told you this several times already. When you have current value 2000 and simulate a gain of 2000, it doesn't matter if the cap is at 4000 or 5000, sim3 will still return 3000, because it won't cap either way. You may find "not spiking" an undesirable property, but I like it. It means that you are so far from the cap, that it doesn't even matter at this point and only the current value is important. sim3 will only notice a change in the cap if ((cap -curr) > sim_gain). Even if it notices, a higher current attribute value can compensate the difference pretty quickly. In the first of your graphs I can see that current increases pretty steadily, while cap jumps all over the place. If you kept graph of current in your two bottom graphs, sim3 would closely follow the current value by the looks of it, which is what I want.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 14, 2013, 04:48:57 pm
to derail the current discussion which i honestly cant wrap my head around, the military role advisor is kinda missing... (in the military tab, the whole melee, ranged, blah, blah stuff)

if its related to what's currently being discussed, okay.

also, for brevity's sake, self-compiled DT v0.19.3 on linux.
i'm not sure what you're asking here. if you're talking about a lack of default military roles, have you tried the alternate military view?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: vrga on February 14, 2013, 06:14:17 pm
to derail the current discussion which i honestly cant wrap my head around, the military role advisor is kinda missing... (in the military tab, the whole melee, ranged, blah, blah stuff)

if its related to what's currently being discussed, okay.

also, for brevity's sake, self-compiled DT v0.19.3 on linux.
i'm not sure what you're asking here. if you're talking about a lack of default military roles, have you tried the alternate military view?
ah, yes, i've managed to totally miss the lack of that tab -.-
sorry bout that.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 15, 2013, 09:55:34 am
to derail the current discussion which i honestly cant wrap my head around, the military role advisor is kinda missing... (in the military tab, the whole melee, ranged, blah, blah stuff)

if its related to what's currently being discussed, okay.

also, for brevity's sake, self-compiled DT v0.19.3 on linux.
i'm not sure what you're asking here. if you're talking about a lack of default military roles, have you tried the alternate military view?
ah, yes, i've managed to totally miss the lack of that tab -.-
sorry bout that.
no worries, you're certainly not the first one :) additionally if you find the roles, or the view lacking, you can always create custom military roles, and then add them to your own custom view.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: splinterz on February 15, 2013, 06:59:14 pm
i've started a new thread over here for questions, bugs, updates etc. pertaining to my branched version

http://www.bay12forums.com/smf/index.php?topic=122968.0
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: thistleknot on February 15, 2013, 10:35:34 pm
and so we die
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: zackattack on February 23, 2013, 09:44:18 pm
Hi, I recently encountered a problem with dwarf fortress. I am running a windows 7 OS and when I try to run dwarf fortress, I encounter a strange problem that I have not been able to solve. I start up DT, and it starts off just fine, it recognizes all of the dwarfs and has all of the info. Two things happen, one, the slider bar on the bottom does not work in anyway at all. That is really bad because I can't access the hauling labors to turn them off. Two, after I click on any of the buttons and preform an action, it will not respond to my mouse in anyway. I am not sure if it is a bug with the program or a bug withing my computer as a whole.

While I am capable with computers on the whole, programming is beyond me at this point. Please let me know what you need to see and I will send it to you as fast as possible. I am a relatively new player who is really wanting to play this game but this error is absolutely crippling. Playing without Therapist is extremely tedious and I want to enjoy this game.

Thank your for your time
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Thundercraft on February 26, 2013, 01:06:22 am
What version of Dwarf Fortress are you using? And what version of Dwarf Therapist?  ???
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: zackattack on February 26, 2013, 09:20:55 am
I tried it with multiple versions of both DF and DT, same problem. Right now, I am able to use the arrow keys and keyboard shortcuts to confirm jobs. I am currently using the latest DF with splinterz latest version of DT. I already have been talking with splinterz about it lately and he doesn't know what is wrong with it.

I am running windows 7 and I am using DF 34.11 and DT (splinterz branched version) 20.1
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: semm11 on March 05, 2013, 10:09:41 pm
My Dwarf therapist does not have an Attributes Tab (I only see Military, Labors, Social)  Why is this?  How can I turn it on?

Thanks!
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: mordrax on March 21, 2013, 01:42:14 am
Quote
My Dwarf therapist does not have an Attributes Tab (I only see Military, Labors, Social)  Why is this?  How can I turn it on?
there should be an "Add" option to the left of your first tab, which is usual Labors, that drops down to list all the tabs you can add, one of which is attributes


Now for my question, I'm on ubuntu 12.10, checked out and compiled 20.4 build to work with dfhack r3 and phoebus graphics set, all 0.34.11
Everything starts off well, but after the first migration wave, normally i pause the game and assign professions or add nicknames etc..., DT crashes, log shows:

Spoiler (click to show/hide)

And the next time i open DT, all the non-normal attributes (that is below or above average) are shown as fully colored red boxes (even if you are strong or tough it comes up as if you were extremely weak). Hovering over the box will give the correct attribute description and score. This happens regardless of how the skills are drawn, if numbers, they are all 0.

(http://i48.tinypic.com/24y1khw.png)

This has happened twice in two games so I'd say it's fairly reproduceable.


EDIT: running DwarfTherapist -trace fixes the above issue... this is not the first time that turning on logging has fixed issues for me :p
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: kabads on March 21, 2013, 04:12:39 pm
I've just compiled the latest version on Linux mint 14 and everything runs OK apart from writing changes. Dwarf Therapist runs and reads the running game. When I attempt to change the profession of a dwarf, I press commit changes and then the usual progress bar moves, but nothing changes on Dwarf Therapist. I have to run DTherapist as root, otherwise it doesn't pick up the game that's running (as my normal user).

Any advice on what I need to do to get it to write changes to DF?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: mordrax on March 21, 2013, 07:21:23 pm
Not sure if your write issue is related to the running as root, but here's another way to 'solve' the ptrace issue:

Note: Other comments on that thread have led me to think this command is bad for security.
http://www.bay12forums.com/smf/index.php?topic=65326.0

and repeated in the last comment here
https://code.google.com/p/dwarftherapist/wiki/LinuxVersion

Why would this work? I have no evidence but perhaps root isn't giving you all the permissions you think you have... yeah clutching at straws here
Worse come to worse, you could always try -trace, worked for me ;)
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: kabads on March 22, 2013, 03:17:43 am
You're right running as root is not good. I'd prefer to run as my normal user, but that crashes instantly.

I also tried the tee command at http://www.bay12forums.com/smf/index.php?topic=65326.0 with no different result.

I didn't realise that ubuntu (which mint is a derivative of) had implemented this memory security. I will carry on researching to see if I can find a fix. The ptrace definitely seems like the issue and I will carry on down this avenue.

Many thanks.
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Nokao on March 22, 2013, 06:52:53 am
Are this software / thread / download links updated ?
Title: Re: Dwarf Therapist (LATEST 0.6.12 5/23/12 see first post)
Post by: Maklak on March 22, 2013, 06:59:07 am
> Are this software / thread / download links updated?

No, the maintained branch is here: http://www.bay12forums.com/smf/index.php?topic=122968.0