For some reason, no dwarves appear on the screen for the latest version. I had no trouble with the previous version but this one appears troublesome.
Oh, I had to clear user settings (and then restart the program...twice!?). It was very, very strange. Now annoying too, as I'll need to replace all my lovely custom professions and color coding :p
But otherwise looks good.
Hmm, now I'm getting crashes every time I try to create a custom profession from a dwarf.hrmm i haven't been able to reproduce these yet, any other information? send me the bad ini and/or save?
1 error remainsargh i thought i got them all! i better take another run through that file... thanks for bringing it to my attention (again).
http://www.bay12forums.com/smf/index.php?topic=66525.2820
gamedata.ini
71\attributes\2\id=toughess
(d.skill_rating(30) < 4 ||
d.skill_rating(16) < 4 ||
d.skill_rating(08) < 4 ||
d.skill_rating(15) < 4 ||
d.skill_rating(14) < 4 ||
d.skill_rating(47) < 4 ||
d.skill_rating(71) < 4 ||
d.skill_rating(71) < 4 ||
d.skill_rating(54) < 4 ||
d.skill_rating(24) < 4 ||
d.skill_rating(03) < 4 ||
d.skill_rating(24) < 4 ||
d.skill_rating(11) < 4 ||
d.skill_rating(36) < 4 ||
d.skill_rating(04) < 4 ||
d.skill_rating(33) < 4 ||
d.skill_rating(38) < 4 ||
d.skill_rating(54) < 4 ||
d.skill_rating(17) < 4 ||
d.skill_rating(21) < 4 ||
d.skill_rating(63) < 4 ||
d.skill_rating(34) < 4 ||
d.skill_rating(22) < 4 ||
d.skill_rating(42) < 4 ||
d.skill_rating(43) < 4 ||
d.skill_rating(41) < 4 ||
d.skill_rating(04) < 4 ||
d.skill_rating(45) < 4 ||
d.skill_rating(07) < 4 ||
d.skill_rating(50) < 4 ||
d.skill_rating(51) < 4 ||
d.skill_rating(55) < 4 ||
d.skill_rating(64) < 4 ||
d.skill_rating(44) < 4 ||
d.skill_rating(06) < 4 ||
d.skill_rating(27) < 4 ||
d.skill_rating(62) < 4 ||
d.skill_rating(13) < 4 ||
d.skill_rating(60) < 4 ||
d.skill_rating(44) < 4 ||
d.skill_rating(37) < 4 ||
d.skill_rating(34) < 4 ||
d.skill_rating(00) < 4 ||
d.skill_rating(40) < 4 ||
d.skill_rating(35) < 4 ||
d.skill_rating(61) < 4 ||
d.skill_rating(68) < 4 ||
d.skill_rating(70) < 4 ||
d.skill_rating(65) < 4 ||
d.skill_rating(73) < 4 ||
d.skill_rating(23) < 4 ||
d.skill_rating(05) < 4 ||
d.skill_rating(14) < 4 ||
d.skill_rating(66) < 4 ||
d.skill_rating(57) < 4 ||
d.skill_rating(58) < 4 ||
d.skill_rating(26) < 4 ||
d.skill_rating(31) < 4 ||
d.skill_rating(67) < 4 ||
d.skill_rating(12) < 4 ||
d.skill_rating(01) < 4 ||
d.skill_rating(53) < 4 ||
d.skill_rating(56) < 4 ||
d.skill_rating(18) < 4 ||
d.skill_rating(20) < 4 ||
d.skill_rating(28) < 4 ||
d.skill_rating(25) < 4 ||
d.skill_rating(72) < 4 ||
d.skill_rating(46) < 4 ||
d.skill_rating(32) < 4 ||
d.skill_rating(64) < 4 ||
d.skill_rating(10) < 4 ||
d.skill_rating(02) < 4 ||
d.skill_rating(52) < 4)
(d.skill_rating(30) < 9 && d.skill_rating(30) > 5 ||
d.skill_rating(16) < 9 && d.skill_rating(16) > 5 ||
d.skill_rating(08) < 9 && d.skill_rating(08) > 5 ||
d.skill_rating(15) < 9 && d.skill_rating(15) > 5 ||
d.skill_rating(14) < 9 && d.skill_rating(14) > 5 ||
d.skill_rating(47) < 9 && d.skill_rating(47) > 5 ||
d.skill_rating(71) < 9 && d.skill_rating(71) > 5 ||
d.skill_rating(71) < 9 && d.skill_rating(71) > 5 ||
d.skill_rating(54) < 9 && d.skill_rating(54) > 5 ||
d.skill_rating(29) < 9 && d.skill_rating(29) > 5 ||
d.skill_rating(03) < 9 && d.skill_rating(03) > 5 ||
d.skill_rating(24) < 9 && d.skill_rating(24) > 5 ||
d.skill_rating(11) < 9 && d.skill_rating(11) > 5 ||
d.skill_rating(36) < 9 && d.skill_rating(36) > 5 ||
d.skill_rating(09) < 9 && d.skill_rating(09) > 5 ||
d.skill_rating(33) < 9 && d.skill_rating(33) > 5 ||
d.skill_rating(38) < 9 && d.skill_rating(38) > 5 ||
d.skill_rating(59) < 9 && d.skill_rating(59) > 5 ||
d.skill_rating(17) < 9 && d.skill_rating(17) > 5 ||
d.skill_rating(21) < 9 && d.skill_rating(21) > 5 ||
d.skill_rating(63) < 9 && d.skill_rating(63) > 5 ||
d.skill_rating(39) < 9 && d.skill_rating(39) > 5 ||
d.skill_rating(22) < 9 && d.skill_rating(22) > 5 ||
d.skill_rating(42) < 9 && d.skill_rating(42) > 5 ||
d.skill_rating(43) < 9 && d.skill_rating(43) > 5 ||
d.skill_rating(41) < 9 && d.skill_rating(41) > 5 ||
d.skill_rating(04) < 9 && d.skill_rating(04) > 5 ||
d.skill_rating(45) < 9 && d.skill_rating(45) > 5 ||
d.skill_rating(07) < 9 && d.skill_rating(07) > 5 ||
d.skill_rating(50) < 9 && d.skill_rating(50) > 5 ||
d.skill_rating(51) < 9 && d.skill_rating(51) > 5 ||
d.skill_rating(55) < 9 && d.skill_rating(55) > 5 ||
d.skill_rating(69) < 9 && d.skill_rating(69) > 5 ||
d.skill_rating(44) < 9 && d.skill_rating(44) > 5 ||
d.skill_rating(06) < 9 && d.skill_rating(06) > 5 ||
d.skill_rating(27) < 9 && d.skill_rating(27) > 5 ||
d.skill_rating(62) < 9 && d.skill_rating(62) > 5 ||
d.skill_rating(13) < 9 && d.skill_rating(13) > 5 ||
d.skill_rating(60) < 9 && d.skill_rating(60) > 5 ||
d.skill_rating(49) < 9 && d.skill_rating(49) > 5 ||
d.skill_rating(37) < 9 && d.skill_rating(37) > 5 ||
d.skill_rating(34) < 9 && d.skill_rating(34) > 5 ||
d.skill_rating(00) < 9 && d.skill_rating(00) > 5 ||
d.skill_rating(40) < 9 && d.skill_rating(40) > 5 ||
d.skill_rating(35) < 9 && d.skill_rating(35) > 5 ||
d.skill_rating(61) < 9 && d.skill_rating(61) > 5 ||
d.skill_rating(68) < 9 && d.skill_rating(68) > 5 ||
d.skill_rating(70) < 9 && d.skill_rating(70) > 5 ||
d.skill_rating(65) < 9 && d.skill_rating(65) > 5 ||
d.skill_rating(73) < 9 && d.skill_rating(73) > 5 ||
d.skill_rating(23) < 9 && d.skill_rating(23) > 5 ||
d.skill_rating(05) < 9 && d.skill_rating(05) > 5 ||
d.skill_rating(19) < 9 && d.skill_rating(19) > 5 ||
d.skill_rating(66) < 9 && d.skill_rating(66) > 5 ||
d.skill_rating(57) < 9 && d.skill_rating(57) > 5 ||
d.skill_rating(58) < 9 && d.skill_rating(58) > 5 ||
d.skill_rating(26) < 9 && d.skill_rating(26) > 5 ||
d.skill_rating(31) < 9 && d.skill_rating(31) > 5 ||
d.skill_rating(67) < 9 && d.skill_rating(67) > 5 ||
d.skill_rating(12) < 9 && d.skill_rating(12) > 5 ||
d.skill_rating(01) < 9 && d.skill_rating(01) > 5 ||
d.skill_rating(53) < 9 && d.skill_rating(53) > 5 ||
d.skill_rating(56) < 9 && d.skill_rating(56) > 5 ||
d.skill_rating(18) < 9 && d.skill_rating(18) > 5 ||
d.skill_rating(20) < 9 && d.skill_rating(20) > 5 ||
d.skill_rating(28) < 9 && d.skill_rating(28) > 5 ||
d.skill_rating(25) < 9 && d.skill_rating(25) > 5 ||
d.skill_rating(72) < 9 && d.skill_rating(72) > 5 ||
d.skill_rating(46) < 9 && d.skill_rating(46) > 5 ||
d.skill_rating(32) < 9 && d.skill_rating(32) > 5 ||
d.skill_rating(64) < 9 && d.skill_rating(64) > 5 ||
d.skill_rating(10) < 9 && d.skill_rating(10) > 5 ||
d.skill_rating(02) < 9 && d.skill_rating(02) > 5 ||
d.skill_rating(52) < 9 && d.skill_rating(52) > 5)
(d.skill_rating(30) > 10 ||
d.skill_rating(16) > 10 ||
d.skill_rating(08) > 10 ||
d.skill_rating(15) > 10 ||
d.skill_rating(14) > 10 ||
d.skill_rating(47) > 10 ||
d.skill_rating(71) > 10 ||
d.skill_rating(48) > 10 ||
d.skill_rating(54) > 10 ||
d.skill_rating(29) > 10 ||
d.skill_rating(03) > 10 ||
d.skill_rating(24) > 10 ||
d.skill_rating(11) > 10 ||
d.skill_rating(36) > 10 ||
d.skill_rating(09) > 10 ||
d.skill_rating(33) > 10 ||
d.skill_rating(38) > 10 ||
d.skill_rating(59) > 10 ||
d.skill_rating(17) > 10 ||
d.skill_rating(21) > 10 ||
d.skill_rating(63) > 10 ||
d.skill_rating(39) > 10 ||
d.skill_rating(22) > 10 ||
d.skill_rating(42) > 10 ||
d.skill_rating(43) > 10 ||
d.skill_rating(41) > 10 ||
d.skill_rating(04) > 10 ||
d.skill_rating(45) > 10 ||
d.skill_rating(07) > 10 ||
d.skill_rating(50) > 10 ||
d.skill_rating(51) > 10 ||
d.skill_rating(55) > 10 ||
d.skill_rating(69) > 10 ||
d.skill_rating(44) > 10 ||
d.skill_rating(06) > 10 ||
d.skill_rating(27) > 10 ||
d.skill_rating(62) > 10 ||
d.skill_rating(13) > 10 ||
d.skill_rating(60) > 10 ||
d.skill_rating(49) > 10 ||
d.skill_rating(37) > 10 ||
d.skill_rating(34) > 10 ||
d.skill_rating(00) > 10 ||
d.skill_rating(40) > 10 ||
d.skill_rating(35) > 10 ||
d.skill_rating(61) > 10 ||
d.skill_rating(68) > 10 ||
d.skill_rating(70) > 10 ||
d.skill_rating(65) > 10 ||
d.skill_rating(73) > 10 ||
d.skill_rating(23) > 10 ||
d.skill_rating(05) > 10 ||
d.skill_rating(19) > 10 ||
d.skill_rating(66) > 10 ||
d.skill_rating(57) > 10 ||
d.skill_rating(58) > 10 ||
d.skill_rating(26) > 10 ||
d.skill_rating(31) > 10 ||
d.skill_rating(67) > 10 ||
d.skill_rating(12) > 10 ||
d.skill_rating(01) > 10 ||
d.skill_rating(53) > 10 ||
d.skill_rating(56) > 10 ||
d.skill_rating(18) > 10 ||
d.skill_rating(20) > 10 ||
d.skill_rating(28) > 10 ||
d.skill_rating(25) > 10 ||
d.skill_rating(72) > 10 ||
d.skill_rating(46) > 10 ||
d.skill_rating(32) > 10 ||
d.skill_rating(64) > 10 ||
d.skill_rating(10) > 10 ||
d.skill_rating(02) > 10 ||
d.skill_rating(52) > 10)
https://raw.github.com/angavrilov/df-structures/master/windows/all.csv
"job_type","1","","","enum-item","MakeRawGlass","82",""
why
83/name = "Make Raw ??"
still an error
gamedata.ini
6/title=Thrist
6/thought="has complained of thirst lately"
https://raw.github.com/angavrilov/df-structures/master/windows/all.csv
"job_type","1","","","enum-item","MakeRawGlass","82",""
why
83/name = "Make Raw ??"
still an error
gamedata.ini
6/title=Thrist
6/thought="has complained of thirst lately"
the ?? should be replaced by the material (clear, green, etc.) this might not apply to all the jobs, but i wasn't able to test them all. so if you see ?? in any job within DT a material probably wasn't able to be found.
https://raw.github.com/angavrilov/df-structures/master/windows/all.csv
"job_type","1","","","enum-item","MakeRawGlass","82",""
why
83/name = "Make Raw ??"
still an error
gamedata.ini
6/title=Thrist
6/thought="has complained of thirst lately"
the ?? should be replaced by the material (clear, green, etc.) this might not apply to all the jobs, but i wasn't able to test them all. so if you see ?? in any job within DT a material probably wasn't able to be found.
I mean why
83/name = "Make Raw ??"
rather than
83/name = "Make Raw Glass"------>https://raw.github.com/angavrilov/df-structures/master/windows/all.csv
Thanks! I'm a newb.And a question about the Therapist: When my cursor hang on A profession icon,a tooltip shows. What does the VALUE after the PROFESSION NAME mean?
Such as miner(0), farmer(39) woodworker(1)
(sorry i don't know how to upload my screenshot)
Are there any plans to release for OSX or are there any directions to compile for OSX? Thanks for your work.
Thanks! I'm a newb.And a question about the Therapist: When my cursor hang on A profession icon,a tooltip shows. What does the VALUE after the PROFESSION NAME mean?
Such as miner(0), farmer(39) woodworker(1)
(sorry i don't know how to upload my screenshot)
that's the id number of the profession. it's mostly useful if you're writing filter scripts to show/hide particular professions. ie. only show miners with d.raw_profession() == 0
Are there any plans to release for OSX or are there any directions to compile for OSX? Thanks for your work.
I dream of this.
In the current version, 20.1, under the Military-Alt tab, if you look at the role for Marksdwarf the weighting is .15 *Anxiety*. Every other military role is .15 Anger. I assume this is a typo? Why would anxiety make your dwarf better as a crossbowman? Is there a way to change this in the settings somewhere?
*edit*
I looked through the game_data.ini file and found the offending line:
"9\traits\1\id=0"
I changed it to
"9\traits\1\id=1"
why DT shows "does not mind being outdoors" instead "likes working outdoors " ?There are two levels of outdoors tolerance in DF. "Likes working outdoors and grumbles only mildly at inclement weather", and "does not mind being outdoors, at least for a time". I don't know if DT handles those separately or not.
did I lose the ability to add custom roles via scripts? I'm trying to see if I can create a custom role that returns the highest weapon skills so I can create a generic melee/ranged dwarf again vs these custom ones.i think when i added the interface for the role editing i may have removed the script stuff since i didn't have a ui for it. i'll have to double check.
Minor bug: Misc. Object User skill shows as 0XP in the table, but correctly in the tooltips.ok i'll get that fixed up
i didn't know about the two different descriptions. i'll have to look into this more and find out what the threshold is.why DT shows "does not mind being outdoors" instead "likes working outdoors " ?There are two levels of outdoors tolerance in DF. "Likes working outdoors and grumbles only mildly at inclement weather", and "does not mind being outdoors, at least for a time". I don't know if DT handles those separately or not.
How do I fix that bug then, because I do want traits to be more relevant to my roles, but if i set it any higher it breaks the calculation.i've just tested and can reproduce this, it shouldn't be affecting vanilla df, but it's screwing up mods with multiple castes at the moment. i may release a hotfix later today to addresses all these little issues that have been reported.
Also, it does say "This value is prior to comparison with other dwarves" if that matters.
I also would love an OSX version of this. Any plans to move towards this eventually?if i can get some kind of vmware setup to run osx or something i may give it a go.
I'm playing masterwork with castes disabled, yet I still get that bug. Any quick workaround I can do in between updates?i just tried this myself, and the castes still seem to be present, even if they're disabled. it seems that what masterwork does is leave the castes in, but just sets the frequency to zero, which makes sense. i'll have to modify the check for multiple castes to take this into account. short of applying a fix yourself there's not much you can do, sorry.
Awesome. Can we help you create new default roles for military positions?absolutely, just post any findings or ideas for roles. after looking around a bit, i think i'd like to add some specialized military roles as well. for example some kind of drill instructor, essentially a teacher with some array of combat skills. as another example, perhaps a guard role, where the emphasis is on observer (to spot thieves/stealth units) and combat skills.
Is there a way to export customized roles to csv?not at the moment. you'll have to copy them from your Dwarf Therapist.ini file under the [custom_roles] section. i've made a note to see about adding import/export functionality similar to custom professions.
why DT shows "does not mind being outdoors" instead "likes working outdoors " ?There are two levels of outdoors tolerance in DF. "Likes working outdoors and grumbles only mildly at inclement weather", and "does not mind being outdoors, at least for a time". I don't know if DT handles those separately or not.
i didn't know about the two different descriptions. i'll have to look into this more and find out what the threshold is.
why DT shows "does not mind being outdoors" instead "likes working outdoors " ?There are two levels of outdoors tolerance in DF. "Likes working outdoors and grumbles only mildly at inclement weather", and "does not mind being outdoors, at least for a time". I don't know if DT handles those separately or not.
i didn't know about the two different descriptions. i'll have to look into this more and find out what the threshold is.
yeah, DF shows two different descriptions, depending on the value. currently in DT, i'm not checking what the value is, only if it exists, so DT only has a single description. what i may do is show the two descriptions in DT, so it matches DF, but still have them as the same preference, since a dwarf can't have both descriptions.why DT shows "does not mind being outdoors" instead "likes working outdoors " ?There are two levels of outdoors tolerance in DF. "Likes working outdoors and grumbles only mildly at inclement weather", and "does not mind being outdoors, at least for a time". I don't know if DT handles those separately or not.
i didn't know about the two different descriptions. i'll have to look into this more and find out what the threshold is.
I'm talking about
DT show->does not mind being outdoors
DF show->likes working outdoors
or no ?
i for one would like an option to select highest weapon (one for ranged weapons, one for melee)skill when creatimg a role so i can make better default melee/ranged dwarfs.you'll have to elaborate
the problem is i want the ggeneric melee and ranged back so i can have squads w melee weapons n ranged weapons.what? you can add your own role columns! now i'm not saying i won't add something like that back to the default roles, but what exactly are you on about?
what? you can add your own role columns! now i'm not saying i won't add something like that back to the default roles, but what exactly are you on about?
yeah, if there's more applications for setting up groups of skills within roles i may have to consider a rewrite of that area... i usually setup squads by weapon types so i haven't run into this kind of problem myself.what? you can add your own role columns! now i'm not saying i won't add something like that back to the default roles, but what exactly are you on about?
I'm not entirely sure, but I think he means that weighing different overlapping skills will skew the role rating. A dwarf with level 4 spear, hammer and axe will rate higher than one with level 6 hammerdwarf skill.
He can accomplish what he wants, but would need to set up a different role for each weapon type.
Stuff was saidThanks for the reply and answers.
I fired up 0.20 tonight, and when the UI starts up there are no dwarves listed. It shows the correct number, but no rows in the main table. At the bottom of the screen I noticed it says "Setting up interface...", and it stays like that forever.try changing the 'group by'
when i setup the default craft roles, i assumed that creativity would affect crafting quality, while spatial sense probably doesn't, hence the additional weight on creativity. however it does seem that this is such a minuscule effect that it's probably not worth having an increased weight.Stuff was saidmore stuff was said
How did you do that? When did the 20.2 update happen?it's not 'officially' out. i still push changes to the repository while working on things to keep a backup and allow any users who want the absolute most up to date version (which is usually in testing and may have bugs). that said, expect an update soon :)
var skills = new Array(d.skill_level(38,false,true), d.skill_level(39,false,true), d.skill_level(40,false,true), d.skill_level(41,false,true), d.skill_level(42,false,true), d.skill_level(43,false,true));
//skills.sort();
skills.reverse();
skills[0];
//highest weapon, axedwarf (38), speardwarf (43), hammerdwarf (42), swordsdwarf (39), macedwarf (41), knife user (40)
var skills = {
new Array(d.skill_level(43,false,true));
skills.sort();
skills.reverse();
skills[0]
};
Custom grid view I added, doesn't show up in the grid view window. I created a new "custom" named gridview that never appears to be edited, which means I have to recreate it everytime. The grid view name also doesn't appear in the list of gridviews next to the add buttonfixed in the update today
Yeah, I've failed miserably to add a custom scripted role. It would be nice if I could add a scripted role when: defining the grid view and adding a scripted role. Instead I have to jump into the right .ini file and make changes... and even when I think I make the right changes, I don't see the script showing as a role to add...if you don't know what you're doing, you really shouldn't edit the ini directly. you can edit your script in the custom role editor. once you've added a custom role, it will be available as a column to add to any custom views, just like any other column.
argh...I don't know what I'm fucking up, but here is my script that does show in the grid view but as nan (albeit the prior mentioned bugs)this isn't going to do what you want. you should have just used the code i sent you in the pm. reverse simply reverses the values in the array, it's not sorted in any way doing this. furthermore, i already sent you better code with a function to sort it with a comparison function, which is a better solution.Code: [Select]//highest weapon, axedwarf (38), speardwarf (43), hammerdwarf (42), swordsdwarf (39), macedwarf (41), knife user (40)
var skills = new Array(d.skill_level(38,false,true), d.skill_level(39,false,true), d.skill_level(40,false,true), d.skill_level(41,false,true), d.skill_level(42,false,true), d.skill_level(43,false,true));
//skills.sort();
skills.reverse();
skills[0];
this also isn't going to work, because you're attempting to assign the entire script as a variable, of an array type, with code statements as the values. read the documentation on the qscript language (http://doc.qt.digia.com/qsa-1.2.2/language.html), it's very similar to javascript. edit the custom role from the menu, and add this into the script section:Code: [Select]//highest weapon, axedwarf (38), speardwarf (43), hammerdwarf (42), swordsdwarf (39), macedwarf (41), knife user (40)
var skills = {
new Array(d.skill_level(43,false,true));
skills.sort();
skills.reverse();
skills[0]
};
function float_desc(a,b) {return a < b ? 1 : a > b ? -1 : 0;}
var skills = new Array(d.skill_level(38,false,true), d.skill_level(43,false,true), d.skill_level(42,false,true), d.skill_level(39,false,true), d.skill_level(41,false,true), d.skill_level(40,false,true));
skills.sort(float_desc);
skills[0] <= 0 ? 0 : skills[0] / 20 * 100;
the first line declares a function to use for comparison. the second line loads an array of the melee skills, with interpolated values. the next line sorts the array with the comparison function from the first line. finally the first item (highest skill) of the array is checked for negatives, and if it's a positive value, returns a percent as the rating for the role.
DAMN. I came here to congratulate you on how much better the 20.1 version in comparison to the 18 is, and find 2 more updates waiting already. :)excellent! let me know if i broke anything else masterwork-wise if you notice :D yeah i've been considering adding some kind of group by relations or something, but i was thinking of going further and grouping within groups to add children etc. i'm not sure if it'll be possible though.
So yeah, I like it. Especially the red ! for the caste sorting. Perfect for the Kobold Camp mod I am doint atm. The normal caste system couldnt catch those... awesome and thanks that you did this :)
I also have a suggestion for another sort-function: Group by marriage status. "Single/Married" and then the two people that are married together in one block/group. That way people can see: Ah, I have 20 singles, 3 couples (couple1, dwarf A and B, couple2, dwarf C and D, couple3, dwarf E and F). Not all too much functionality, more of a roleplay, succession fort feature I guess... but if you want to add another item to your to-do list, there it is. ;)
Color me confused, I used to be able to right click on a dwarf in order to mess with custom professions, now I can't find the stuff anywhere. Am I missing something?yeah i broke something there. fix will be up shortly.
Anyways... I looked at the source, I don't see functions to return %'s for the attributes or traits... I suspect this will have to be done manually with the script editor, as if I'm calling functions within QT to accomplish the same thing?the only available values for scripts are the raw values. attribute adjusted could be made available, but skill and trait ratings aren't stored so they'll require a bit more work.
Minor bug: in DT it says 'happy to have been able to give food / water lately' (in grey), and in DF it says 'irritated at having to give somebody food / water lately'.yeah it's grey because it may be positive or negative depending on the individual. i'll have to see about checking traits for certain thoughts or changing the description.
Hi,i've only tested with ubuntu, but perhaps this memory layout (https://code.google.com/r/splintermind-attributes/source/browse/etc/memory_layouts/linux/v034.11.ini) will help you, if you're using this version. if you're using the old DT, they may not work.
first, thank you so much for all the work!
Now, my question: I'm running linux (mint), DF 34.11, and I can't connect DT to my fortress. I've tried replacing the ini file (the one called 34.11), with one posted somewhere in another thread (hmm), without success.
Any "official" memory layout that would work? Should I absolutely use ubuntu for it to work?
How do I get Therapist to show the different skill rates and to sort by them in the newest version? The new features are pretty awesome, but you seem to have removed that one.to sort by skill rates, right click on the column header and choose that method. however, skill rate information is only available when using mods with multiple castes, as in vanilla, all the skill rates are the same.
Would it be possible to restore size readings? Not for weapon useage, because that doesn't work properly, but just the raw figures. Size is an important combat modifier, and it's pretty easy for one dwarf to be 3/4 the size of another. It's also the one weakness of uberdwarves -- they can last all day against an enemy that keeps knocking them over, but they won't be able to get on the offensive.sure. the only reason i disabled it was because i figured it was exclusively used for determining what weapons could, or could not, be equipped, but that turned out to be untrue.
Would it be possible to restore the old size readings, but updated to use racial size (or caste size) for wielding at all and individual size for 1H/2H? I'm not sure how much of a big deal it is in Fortress Mode -- adventurers can hold a shield and an oversized weapon in one hand, but dwarves might not.what i've got setup at the moment is that it will use the caste's size to determine weapon usage, however in the weapon column's tooltip, it will show the actual dwarf's size. additionally i've added options to show the dwarf's size in the regular tooltip, and i've added a sort type in the right click menu on the main column.
Is it possible to have a global option to ignore preferences? If a dwarf has a preference for something that isn't on your map and can't be brought onto the map, it's practically the same thing as having no preference at all.you can temporarily do this by setting the global weight for preferences to zero in the options under the roles tab.
http://shot.qip.ru/00b0A8-2VVx8escK/ (http://shot.qip.ru/00b0A8-2VVx8escK/)
http://shot.qip.ru/00b0A8-3VVx8escI/ (http://shot.qip.ru/00b0A8-3VVx8escI/)already fixed for the next version ;)
Hi Splinterz etc,the attribute weight is its importance relative to skills, preferences and traits. a higher attribute weight means attributes are worth more when determining the rating.
How would i change the Role weights to show nothing but pure potential as the two seperate "attribute weight" and "potential weight" seem sort of odd seeing as it's the dwarfs attributes which dictate how good they'll be at something. Or does "potential weight" include Traits and Preferences?
Many thanks.
I think i understand.the attribute weight of 1.0 will give attributes the most importance if the weights for traits, preferences and skills are lower than 1.0. the potential weight may give a lower rating, since it uses a different method to calculate the rating, but the dwarf rankings should still be correct. i'll take a look anyway since it sounds like it may be weird.
So basically if i set Attrib Weight & Potential Weight to 1.0, and Skill Weight to 0.00 that would give me the desired effect?
It just seems odd though, and if i have PW at 1.00 my people actually get rated worse, and if i lower PW they get better...but i'm not a maths guy and maybe this is intended and makes sense to those that are ;p
http://shot.qip.ru/00b0A8-1VVx8eslC/ (http://shot.qip.ru/00b0A8-1VVx8eslC/)the numbers in brackets are the effect on happiness.
What are the numbers in brackets?
Just wanted to say that I like how your poll is a total stalemate. :)i know. kind of shot myself in the foot with that one, now i'm going to have to do all of them :(
Any chance for a mac version or a wiki file to get the *nix version to run on OSX?
@Dradis, i realize there's a lot of people who would appreciate an osx port, unfortunately at the moment i don't have any means to develop nor test on that platform, so i can't really move forward with anything. however, i believe the last 'official' DT version did support osx, and if that's the case it should be possible to merge those changes into this branch. again though, i can't verify this.
@Dradis, i realize there's a lot of people who would appreciate an osx port, unfortunately at the moment i don't have any means to develop nor test on that platform, so i can't really move forward with anything. however, i believe the last 'official' DT version did support osx, and if that's the case it should be possible to merge those changes into this branch. again though, i can't verify this.
so I got it working but how to I change the labors so they are not sideways haha, neck is starting to hurt a little.you can change the orientation of the text from top to bottom or bottom to top, but that's all.
Hi, Splinterz! I'm a newbie and there's a question.
My fortress population has grown to 50+,so I decide to choose some of my dwarves to be in a squad, using his suitable weapon.
I decide equip them with different weapon(Battle Axe,Mace,Spear,Shortsword,Crossbow) , due to the highest "role weight"(In "Military-Alt." Tab: Axedwarf,macedwarf,speardwarf,sworddwarf,marksdwarf).
However,I find the therapist give a weight of item preference in these columns,which may influence the final result.
There isn't anything about that the preference for a given weapon may influence the effect of a soldier using it in the wiki ( http://dwarffortresswiki.org/index.php/Preference (http://dwarffortresswiki.org/index.php/Preference))
May I ask you why count this?
should benoble_position returns a string, not a boolean
!d.noble_position()
not !d.noble_position()=="" or whatever it is in the help for scripting
whoa, weird bug, some labors are not clearing from my militia dwarfs, particularly one squad, there stuck as read-only, no more write of labor changes within dt allowed. here's my save, using my latest version of accelerated mod mod: http://www.mediafire.com/?lojckoo943tl2kb it was the m scourges squad, removing the military members from it solved it, but that's a weird workaround/bugi haven't looked at the save, but once a dwarf reaches a master level in a military profession, DT will disallow the changing of labors, as within DF itself those dwarfs who reach a master/lord level in military skills will ignore/disable any labors set. you could try applying this binary patch (http://www.bay12games.com/dwarves/mantisbt/view.php?id=3100#c23111), and see if it resolves it for you.
whoa, weird bug, some labors are not clearing from my militia dwarfs, particularly one squad, there stuck as read-only, no more write of labor changes within dt allowed. here's my save, using my latest version of accelerated mod mod: http://www.mediafire.com/?lojckoo943tl2kb it was the m scourges squad, removing the military members from it solved it, but that's a weird workaround/bugi haven't looked at the save, but once a dwarf reaches a master level in a military profession, DT will disallow the changing of labors, as within DF itself those dwarfs who reach a master/lord level in military skills will ignore/disable any labors set. you could try applying this binary patch (http://www.bay12games.com/dwarves/mantisbt/view.php?id=3100#c23111), and see if it resolves it for you.
you may be able to work around it by editing the game_data.ini and removing the can_assign_labors flag from the professions in question. i still haven't had time to sit down with the save and check to see that for sure that's the cause, so you'll have to give it a go. have you checked within DF that changing labors for those military professions (without the binary patch) actually works? if that's the case then i can remove this can_assign_labors check entirely from DT.whoa, weird bug, some labors are not clearing from my militia dwarfs, particularly one squad, there stuck as read-only, no more write of labor changes within dt allowed. here's my save, using my latest version of accelerated mod mod: http://www.mediafire.com/?lojckoo943tl2kb it was the m scourges squad, removing the military members from it solved it, but that's a weird workaround/bugi haven't looked at the save, but once a dwarf reaches a master level in a military profession, DT will disallow the changing of labors, as within DF itself those dwarfs who reach a master/lord level in military skills will ignore/disable any labors set. you could try applying this binary patch (http://www.bay12games.com/dwarves/mantisbt/view.php?id=3100#c23111), and see if it resolves it for you.
Applying that patch was a pain, but when I got it implemented, the exact same squad had issues (I'm not sure if it has something to do with it, but it's the active ones (at least on my latest save)). I would figure DT would allow assignments regardless, and that's where the problem is at, I can't check/uncheck boxes INSIDE DT. It's not something I'm noticing after assignments...
the problem persists even when I remove them from the squad... I'm not sure what's causing it... Darnit... I'm using the dfhack dt plugin to accomodate for this...
Hi, how can I view a dwarf's physical attributes in Dwarf Therapist? Here's a screenshot of it only showing the skills and mental traits, but not physical:
The dwarf himself in-game profile shows he is (http://i.cubeupload.com/vSgSmY.png)
Is there a way to use Therapist to set embark skills, preferably from the result of an optimization plan? That would be a killer feature.
It also would be nice if we could sort the Labors tab by role ranking, to make it easier to go from "who is best for this labor" to enabling the labor.
you can sort labor columns by role rating. right click on the column header and choose your sort method.It also would be nice if we could sort the Labors tab by role ranking, to make it easier to go from "who is best for this labor" to enabling the labor.
Yes, merging the labors and roles tabs would be epic.
you can sort labor columns by role rating. right click on the column header and choose your sort method.It also would be nice if we could sort the Labors tab by role ranking, to make it easier to go from "who is best for this labor" to enabling the labor.
Yes, merging the labors and roles tabs would be epic.
Hello, thanks for spending time on this tool for me in your spare time! I would appreciate it if perhaps you could indicate on the first post the availability for different operating systems, thanks again!ah well it's DF, so all things by proxy should have a learning curve right? ;) anyway, i assumed most people just went immediately to the project page for information, but i'll make the o/s information more apparent in the original post.
Hello,
Wonderful work!
Your guidance would be gratefully received. I recently had six dwarves afflicted with a blistering syndrome - they all swelled up and bled everywhere & had to have surgery. All six survived. However, Dwarf Therapist is not showing them any longer, as thought they had died. I recall seeing something like this before, but I've not been able to find it: is there a way of making DT 'check again' / 'check more carefully' to realise the error of its ways? Sorry if it's very obvious - I think I have a bit of a blind spot for this one. My search for 'therapist' & 'syndrome' didn't lead me anywhere useful....
Thank you.
Reading the words Therapist and Syndrome next to each other... is it possible to show the syndromes that affect dwarves? I like how you can see those in Arena Mode, but dislike that you can never tell in Fortress Mode. That would be a very big change indeed. It wouldnt just ease things you can already do, but open up new informations, previously unreachable to the player. So, to make it short, I hope your answer is yes. ^^yes it's possible to some degree. i've tried out showing the name/description of a syndrome and that works out alright. unfortunately i can't really show much more than the names and whether or not it's bad (needs hospitalization).
I've been dealing with a weird bug that at first I was like, "oh, no biggie, I can just close and re-open dt". What happens is I jump to some roles, and see a bunch are all the same (as if they all got assigned the same value)...reading dwarf's doesn't fix it...I have to close/re-open.is this perhaps when you've reconnected to DF after closing and then reloading a save?
Problem is, I don't always see it, I don't see it on the labors screen, only when I go to roles... probably because the labors screen is using skills to draw squares... where-as roles is doing something different? I dont know, but the roles are not updating right...Next time I see it, I'll make a video and show you what's going on. It's happened quite a few times btw... so there's some sort of "stopping of reading of values" going on. The reason it can be a problem is... sometimes I don't even know it's happening until I go to the roles screen. I've done a before/after labor optimization, and they come out quite different due to the roles being read wrong. So there's potential for non optimal labor assignments...and we know we don't want that now :)
With name you mean the SYN_NAME? That would be more then enough, because the name does not have to be "poison", modders could simply rename it to "Desert Scorpion Sting; Very poisonous, affects lungs and heart, can cause paralysis. Resistable, Size dilutes."yes that's right, the syn_name. so as you've described you could give it a more detailed name/description. after that it's just a matter of adding in some code to read the active syndromes on a unit and displaying them.
Same trick I use for the rune coatings. I just called the materials "blablabla bonus given by the intricate runes coating", done.
Even all vanilla syndromes (at least those in creatures) can be given a more descriptive name, if so desired.
[dwarf_jobs]
size=231
1/name = "Carve Fortification"
1/type = FORTIFICATION
2/name = "Detail Wall"
2/type = ENGRAVE
3/name = "Detail Floor"
3/type = ENGRAVE
4/name = "Dig"
4/type = DIG
Lukego, I am not 100% sure, but this (http://dffd.wimbli.com/file.php?id=5672) should have a mac version of splinterz branch included. I cant really check if it works, because I dont have a Mac...
Found a bug that causes crashing. Right-clicking a dwarf and going into "Create Custom Profession from Dwarf", typing in something for the name, then using backspace to delete the characters crashes DT when you try to backspace the first character. Reproduced multiple times.yeah someone mentioned that previously, it'll be fixed in the next release.
I've gone through several pages of this topic, but can't find an answer to my question. Anyways, I keep getting dead dwarves sticking around in the list. They're pretty much all migrants that showed up at...inopportune times. I've had to go through and nickname them all "dead". I've tried restarting and all that but the dead dwarves stay. Any way to clear these guys out? The list is pretty long, lol!what version of DT and DF are you using? what operating system are you running? are you using mods?
I've gone through several pages of this topic, but can't find an answer to my question. Anyways, I keep getting dead dwarves sticking around in the list. They're pretty much all migrants that showed up at...inopportune times. I've had to go through and nickname them all "dead". I've tried restarting and all that but the dead dwarves stay. Any way to clear these guys out? The list is pretty long, lol!what version of DT and DF are you using? what operating system are you running? are you using mods?
I don't know if anyone knows this or not, but with the latest DF and latest of this.. i have frequently had dwarves that are dead showing up as alive in DT. Several times I've been looking for someone who had skill X, found them in DT, assigned them to something it never got done. Went scrolling through the graveyard and found them there.a few posts up Tanaman mentioned the same thing. if anyone can upload a save exhibiting this behaviour it would be much appreciated.
Crossmr, Tanaman, et al
I got to wondering how this could be, but I have to ask for due dilligence. Have you made certain to "Read Dwarves" before assigning a dead dorf labors? Or seen when they deceased to see that it was before the most recent save/load?
I'll try to upload when I get home tonight. They're defiantly staying around through multiple save and loads. It's fairly easy to duplicate, though. It's always migrants showing up when invaders are present or showing up on the heels of the migrants and slaying them before they can trickle into the fort. Happened to me under the same circumstances multiple times over two entirely separate games. One time I even kept save scumming it to try to save the migrants because I knew that their deaths would screw up DT.That would explain it. I had ambushes all show for like 3 straight migrant waves, lost like 20-30 dwarves as they were big waves, which came very early before I had a competent military (still don't really). About 90% of the deaths in my fort have been brand new migrants wiped out.
Should I keep looking for Xcode 3.2.6?Luke, I can get you XCode 3.2.6 if you want. Not sure how I'd get it to you though, since it's over 4 GB... any ideas?
Splinterz, now that the other DT got on it's feet again, do you think on merging? Which one do you recommend?
Please tell me, why arent you using the native linux DF and DT?Splinterz, I run linux, and the 20.4 version of this works on one of my computers using wine but not the other. Both are the same linux version, and both use the same wine. I have no idea why one works and one doesn't.
I tried to compile the linux version my self, I might not have done it correctly because I ran DT and DT would close right away like the windows version. Here is the log output from the windows version.https://gist.github.com/Rsgm/8103881c7afaf9d2de0a (https://gist.github.com/Rsgm/8103881c7afaf9d2de0a)
Could you please either update the linux download link, or try your best to fix the windows version (assuming the windows version is the only affected one.)
EDIT - fixed
So for anyone else with this problem, wine does not work with this if it is set to windows 7 or 8; Vista and lower works(I have only tested the non-server OSs). For some reason in windows 7 and higher, it can't locate the memory config files. My guess is an update to path systems in win7.
I have tried a few times to build it myself but I am unable to. I have linux mint, which is built on ubuntu.
I play Dwarf Fortress (quite a lot) on my MacBook and I was searching these forums to see if there was a new version of DT that works with Mac.
I read through this whole thread but there still doesn't appear to be a working version?
I'm also a CS student, and I've got a lot of experience programming C++ and Objective-C, and a bit of experience using QT.
I updated Splinterz' version of DT to work with Mac but I can't get it to connect to DF properly (it just crashes when trying to connect). I did however manage to get the old Mac-version (the one by Chmod and/or DwarfEngineer) to work properly with v. 0.34.11.
The memory-layout used in df_structures (someone linked it higher up in this thread) wasn't completely right (though most of it is). I had to change a few memory locations, but now everything works (I think).
Anyway, here's the correct v0.34.11.ini file: http://pastebin.com/GNwG2ti2 (http://pastebin.com/GNwG2ti2)
It works with version 0.6.12b05 of the original DT fork: https://code.google.com/p/dwarftherapist/downloads/list (https://code.google.com/p/dwarftherapist/downloads/list)
To add the new memory-layout to DwarfTherapist, download and install v.0.6.12b05 like you normally would. Once installed, locate it in the Applications folder and right-click -> show package content. Then navigate to "Contents/MacOS/etc/memory_layouts/osx" and paste the file "v0.34.11.ini".
That should be all you have to do. It now works exactly as it used to work under Windows on my old pc.
I will look into updating Splinterz version to work with Mac OSX as well, but it'll probably take some time since I'm in the middle of my finals at Uni and I'll have to "get used" to DT's code. Anyway, this is a quick fix to get the old version working again in the meantime.
So I successfully built DT from source for Linux using GiantUrist's instructions, but it crashes straight away.
Log output here:Spoiler (click to show/hide)
Any ideas?
make install
line at the end of the instructions. Could you try that and let me know?
So I successfully built DT from source for Linux using GiantUrist's instructions, but it crashes straight away.
Log output here:Spoiler (click to show/hide)
Any ideas?
I think I forgot to add aCode: [Select]make install
line at the end of the instructions. Could you try that and let me know?
So before reading your post I got it to work by:
Moving the executable out of /bin/release to the top dwarf therapist folder, and then running it as the super user (sudo).
Found a bug that causes crashing. Right-clicking a dwarf and going into "Create Custom Profession from Dwarf", typing in something for the name, then using backspace to delete the characters crashes DT when you try to backspace the first character. Reproduced multiple times.
Is it possible to provide the ability to assign dwarfs to burrows from therapist?
Could there be an option to have the optimizer not change existing roles when it runs? For example, if the optimizer says there should be 3 miners, and one guy has mining already enable, he is one of those 3.
The attributes and roles tabs (with regards to attributes) don't seem to work correctly on the embark screen. Has somebody else noticed this?
Dwarf Therapist appears to not be out of active development at the moment, so non-trivial bugfixes like this probably aren't going to happen anytime soon. :/or is it... thanks for the work on the user guide by the way.
I found something odd in DT's log file:yeah there's an issue right now where migrants are automatically assumed to be alive, which apparently is not always the case. in your fort these dead dwarfs that are showing up have both the dead/ghost flags and the migrant flag. it should be fixed for the next update.
2013-Aug-30 13:36:26.454 DEBUG core Found migrant "Zaneg Inethrôber" [src\dwarf.cpp:1121] (get_dwarf)
2013-Aug-30 13:36:26.454 DEBUG core FOUND DWARF "0x173c13e8" "Zaneg Inethrôber" [src\dfinstance.cpp:475] (load_dwarves)
If I'm not mistaken our little buddy Zaneg was a buggy merchant migrant who had to be tweaked with DFhack (tweak fixmigrant) so there could be a flag uncleared by DFhack or DT is reading it wrong. I did skim a bit over the sources but couldn't find the migrant entry. I have no clue about how DFhack handles migrant merchants so I leave it to you to solve. I suspect he's being loaded twice. One a dead refrence and one a buggy merchant refrence that is in limbo from DFhack but still loaded by DT.
I'm having a weird bug with Therapist, when I alt-tab it sometimes locks my mouse in the top left corner of the screen. No matter what I do it returns there a few times. Then it stops.
I haven't found anything with the Search, but I can't be the only one that's experiencing it?
edit: Nobody??? I have to alt-tab all the time to use the Therapist, and every second time I can't even tab back into the game, because clicking on the game tab is sending the mouse cursor into the upper left corner of the screen.
Yeah, you are back :)
Suggestions: How about a military equip or uniform template option? Its probably a big project, but the ingame system gets very complicated if you have a lot of dwarves and a lot of items/Materials. You already read out weapon raws and compare them, and issue labors, so can you not do equipping too?
A tab with "Military", rightclick on dwarf, assign "full metal armor", or "custom armor set 1", things like that.
Your Dwarf Therapist fork is a wonderful tool, Splinterz! Now like everybody else, I have a complaint. :Di believe that's the same issue i responded to here (http://www.bay12forums.com/smf/index.php?topic=122968.msg4600748#msg4600748). however, if you've got a save you can upload to dffd, i'd be happy to have another test sample to verify the fix will work for this case as well.
Something that has become an issue for me in a "Single-Pick Evil Tundra" challenge-game is that waves of migrants will be regularly massacred by hordes of the undead on the surface.
This results in a large "missing" population which shows up in DT's population count. Since the corpses reanimate, there is no way for these unfortunate dwarves to be "found dead", and so there is a steadily growing population of non-existent dwarves that show up in Dwarf Therapist.
I've had no luck filtering by custom profession, and have resorted to simply sticking them into squads called "Missing Dead".
Is there any way that dwarves who are officially "Missing" (as shown on the Missing/Dead Unit list) could be properly pruned from DT's displayed population?
I wasn't sure if it was the same or not. However, I just compared the Missing dwarves from the unit list with the dead who appear in Dwarf Therapist, and the error applies only to dead migrants.yeah it looks like it's the same issue. the current build i've got now is filtering out those dead dwaves, and animals as well.
I'll try to get the save uploaded so you can have more material to test with. Will the fact that I've given all the missing dwarves a custom profession interfere with anything?
Ok, here it is!
http://dffd.wimbli.com/file.php?id=7998
The updated LNP by Peridexis includes a very detailed 3,5mb PDF manual. Its really nice and I think you could either link to it, or include it in the download. I saw it today for the first time and damn... its not bad. I for one will certainly include it in the Masterwork Download.i checked out his thread, and i think he's using the one that resmar posted. i've only taken a quick look at it, but it seems pretty comprehensive, albeit... quite opinionated (stupid icons, useless labors, pointless gradients...)
The goal of Dwarf Therapist is (should be?) to make it so that using it takes up as little time as possible.
In UI terms that means that Functional > Pretty, and that Information Density > Feature Creep.
I don't need grinning emoticons: a color gradient would be a vastly more useful feature.
I don't need to know whether or not my dwarves have Animal Care, a labor with no associated jobs, enabled in the default Labor screen.
Functionless gradients to make everything look "glossy" just make the screen more crowded and detract from the program's value.
I don't need to know whether or not my dwarves have Animal Care, a labor with no associated jobs, enabled in the default Labor screen.
QuoteI don't need to know whether or not my dwarves have Animal Care, a labor with no associated jobs, enabled in the default Labor screen.
Because people might play mods using these labors. :P
Alas, I've mostly stopped playing and never got around to
So is there any specific editing that you want me to do? I can balance the document better, but it's not always easy to avoid awkward disconnects like the role weight issue or the role-profession-view juncture fault.can you elaborate more on the awkward disconnects you mention? also, what did you mean in the document where you talk about the preferences and thoughts not reporting correct numbers? is there a bug, and/or something reproducible i can test? same applies to why you think grouping by total skill levels and total assigned labors is incorrect?
Fun fact: this was originally supposed to be a demonstratatory LaTeX project for myself (I was/am learning the language), and got a little out of hand :P.
So is there any specific editing that you want me to do? I can balance the document better, but it's not always easy to avoid awkward disconnects like the role weight issue or the role-profession-view juncture fault.can you elaborate more on the awkward disconnects you mention? also, what did you mean in the document where you talk about the preferences and thoughts not reporting correct numbers? is there a bug, and/or something reproducible i can test? same applies to why you think grouping by total skill levels and total assigned labors is incorrect?
Fun fact: this was originally supposed to be a demonstratatory LaTeX project for myself (I was/am learning the language), and got a little out of hand :P.
Splinterz, a few more traits that need work. Depression needs to be inversed, check immoderation? I'm assuming drinking alcohol in excess is not a good thing, and the game sets the dwarf's at slightly a higher rate. however, you still have immoderation set to high = good, which I'm thinking means drunk dwarfs are good dwarfs. I guess it's subjective...anxiety, depression, self-consciousness and vulnerability are the traits that have been inverted. i was on the fence about anger, since it's a good thing to have for combat, but i suppose that overall, it's a bad trait to have. liberalism supposedly determines happy or unhappy thoughts from talking with nobles, but it seems it's unverified (wiki). immoderation and intellectual curiosity, as far as i'm aware, doesn't affect anything at all.
- Assertive: pop ups have no description in the GUI on my dwarf's values
- Anger: I think should be reversed. Anger should only be beneficial for combat dwarfs
- Intellectual Curiosity: Not sure what's beneficial. Dumb dwarf's might be better
- Liberalism: Not sure
Wow, this is awesome. A new version of my LNP will go up sometime next week when I have a connection with stable upload - should I include both and tag 20.6 'BETA', or just go for it and replace? (I might only have space for one).thanks, i'll clean that stuff up. the crash on exit bug is still there, but otherwise it's pretty solid. i'll still increment the version with any other changes, so feel free to use it as is, beta tag or not, if you're finding it stable enough.
There are a number of old bits that have stuck around, for example: half the help menu links point to the old DT (forum and bug report) and help-about lists it as fork 20.4 - nothing big, but worth fixing if possible.
Compile error: http://bpaste.net/show/137970/ (click 'raw' to get non-parsed output)i've updated the source with a fix (i hope)
GNU/Linux
changeset: 579:6c9761f8ec20
gcc 4.8.1.
qmake 3.0 / qt 5.1.1
Assertiveness shows no tooltip.tooltips seem fine to me, again please specify which tooltip you're talking about. anger has been changed.
Anger default should be low=good. Combat dwarfs should use the role editors invert option.
Can't build linux versionlatest version is built with qt 5.1.1
Ubuntu 12.04
It can't found qt widgets
$ qmake
Project MESSAGE: Release Mode
Project MESSAGE: Setting up for Linux
Project MESSAGE: Setting up for Linux Install
Project MESSAGE: Warning: unknown QT: widget
But libqt4-dev(and all other dependent packages) installed and header files existing
$ find /usr -iname "QWidget.h" -type f
/usr/include/qt4/QtGui/qwidget.h
/usr/include/qt4/Qt/qwidget.h
Google not answered, anybody have ideas?
PS: original builded successfully
Hello, I have a little problem : I have no text in my menu.probably an issue with the default font that's hardcoded in. i've just updated the source and it inadvertently includes some changes to the default font stuff which may fix it, so give that a try.
(http://www.zimagez.com/miniature/capturedcran-10102013-104710.png) (http://www.zimagez.com/zimage/capturedcran-10102013-104710.php)
I compiled the latest version under manjaro (based on arch linux). And even older version (up to 20.3) doesn't work.
However, the old dwarftherapist work, and if I build it form a virtual machine, it is OK.
What could be the reason of this bug ?
probably an issue with the default font that's hardcoded in. i've just updated the source and it inadvertently includes some changes to the default font stuff which may fix it, so give that a try.No, it doesn't still work.
currently it's just the trait drawing that's inverted, the actual raw rating is still used for roles and such. i didn't want to break any custom roles, and with the changes Toady is making to personalities, that'll be the time to revisit this again i think.
it's in the patch notes, maybe it wasn't clear enough?currently it's just the trait drawing that's inverted, the actual raw rating is still used for roles and such. i didn't want to break any custom roles, and with the changes Toady is making to personalities, that'll be the time to revisit this again i think.this might be important to include in the release notes. So people don't try to create roles based on inverted traits. This can currently be accounted for by manually inverting in the role though (I believe).
If you hover over the individual gridviews it will present the dwarf's role fitness. You can also sort the columns by row fitness. Check the user manual for help with this stuff, when you put together the various sorting mechanisms it's actually very convenient. Check the user manual for help with this (it's linked somewhere earlier in this thread).
Once you get the hang of it, linked sorting doesn't make too much sense anymore, because each individual view presents its own information. If anything you can make a custom view and smush together the info you want displayed side-by-side in a more convenient manner.
I think mwmod has the manual included. Resmar is the author. U can find it on reddit searching in the df subreddit
I posted it earlier in the thead (http://www.bay12forums.com/smf/index.php?topic=122968.msg4627781#msg4627781). Thistle, never suggest anyone search for anything on reddit, their search algo is somewhere between abysmal and non-existent.
At one point I thought there was a Masterwork version of DT, that had the new Masterwork roles, etc added in. Am I imagining that, or did that stop getting supported?
actually, the next version will support replacing/adding default views and roles. currently there's a packaged DT with special roles for the masterwork labours, as well as views to replace the defaults. normally Meph will include it in the next version(s) once it's completed, but if you'd like to test it out now, here you go (http://www.mediafire.com/download/z26a7hpz6rl20w4/MW_Dwarf_Therapist_20.6.4.zip).At one point I thought there was a Masterwork version of DT, that had the new Masterwork roles, etc added in. Am I imagining that, or did that stop getting supported?it's just an ini add in based on this version
what about adding in status icons?you'll have to elaborate. for me, statuses are a type of health information (hunger, thirst, drowsiness) which are already available via health columns.
Is there a list of profession icons and their associated profession? Nothing in the guide.no there's nothing yet, you'll have to make do with the tooltips for now.
Is there a list of profession icons and their associated profession? Nothing in the guide.
they're actually the same icons that stonsense uses. (https://github.com/peterix/stonesense/blob/master/resources/SSProfIcons.png)Is there a list of profession icons and their associated profession? Nothing in the guide.
You can find and edit the ID list for things in the .ini file, which I reference in the appendix (but don't cover in much depth: not terribly useful imo). No list for the actual icons, afaik. Splinterz, if you have a "sticker sheet" for the icons it would definitely help with the guide.
what about adding in status icons?
what about adding in status icons?
http://dwarffortresswiki.org/index.php/DF2012:Status_icon
it's not always just health, but if all those icons are in health, then great. But if a dwarf has gone berserk, is that in the health screen?
GREAT FEATURE REQUEST: assign dwarves to burrow(s).
Is military squad creation also outside of the technical scope of DT? Currently you can add dwarfs to a squad through the interface, but not create them.yeah that's right. because there are designations for 10 members, it's just a matter of placing a unit into an empty spot. a unit's burrow assignments on the other hand, requires the extension of the unit's list of burrows, which DT can't do.
I assume it is.
to be honest, it would be much more practical and ideal to integrate DT with dfhack, but i've no idea how to do it.
it's ratio based labor assignments based on your top dwarf for the job
You calculate every dwarf's raw role % (which means the role for a job based on values that are comparative to all other roles, i.e. not run through a CDF function that only compares the role to itself). Then you sort all (your dwarfs) jobs in a big list, from highest % to lowest %, the optimizer goes down the list and starts picking jobs (i.e. dwarfs) and filling up queues (i.e max # to assign based on ratio) until the queue is full or the dwarf's # of max labors are full.
priorities adjust the % by multiplying the raw role % by the priority
I have a suggestion after seeing the DT version for MW. Is there a possibility to create a in-build thing than allows the sheets creates by reading any mod?that masterwork DT version was created by me (views by JodGap), and the way it supports replacing/adding default views will be in the next version.
So is like the modder add a special file than could help DT read it and successfully import all the labor sheets automatically?
Sorry for my ignorance about this, just asking if exists a posibility.
is there a (highly cheaty) non cursed filter script I can run?you can use d.curse_name() != "" to check for cursed dwarves. i'll be adding d.is_cursed() for convenience in the upcoming version.
btw, toady truly owes this tool a great acknowledgement (as well as other plugins, falconne's comes to mind) in how much this helps manage the game.
wva@yuppy:~/splintermind-attributes$ qmake
Project MESSAGE: Release Mode
Project MESSAGE: Setting up for Linux
Project MESSAGE: Setting up for Linux Install
Project MESSAGE: Warning: unknown QT: widgets
wva@yuppy:~/splintermind-attributes$ make
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_SCRIPT_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtScript -I/usr/include/qt4 -Iinc -Iinc/models -Iinc/grid_view -Iinc/docks -Iui -Ithirdparty/qtcolorpicker-2.6 -Ibin/release -Ibin/release -o bin/release/dfinstancelinux.o src/dfinstancelinux.cpp
src/dfinstancelinux.cpp:23:21: fatal error: QtWidgets: No such file or directory
compilation terminated.
make: *** [bin/release/dfinstancelinux.o] Error 1
wva@yuppy:~/splintermind-attributes$ tail -12 BUILDING.txt
# Install the qt4 dev tools. You're on your own for non debian/apt systems
> sudo apt-get install qt4-qmake qt4-dev-tools
#Checkout the project
> hg clone https://dwarftherapist.googlecode.com/hg/ dwarftherapist
#Build the project
> cd dwarftherapist
> qmake
> make
wva@yuppy:~/splintermind-attributes$ sudo apt-get install qt4-qmake qt4-dev-tools qt5-qmake | grep version
qt5-qmake is already the newest version.
qt4-dev-tools is already the newest version.
qt4-qmake is already the newest version.
The following packages were automatically installed and are no longer required:
$ qmake
Project MESSAGE: Release Mode
Project MESSAGE: Setting up for Linux
Project MESSAGE: Setting up for Linux Install
$ make
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_SCRIPT_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/opt/Qt5.1.1/5.1.1/gcc_64/mkspecs/linux-g++ -I. -Iinc -Iinc/models -Iinc/grid_view -Iinc/docks -Iui -Ithirdparty/qtcolorpicker-2.6 -I/opt/Qt5.1.1/5.1.1/gcc_64/include -I/opt/Qt5.1.1/5.1.1/gcc_64/include/QtWidgets -I/opt/Qt5.1.1/5.1.1/gcc_64/include/QtScript -I/opt/Qt5.1.1/5.1.1/gcc_64/include/QtNetwork -I/opt/Qt5.1.1/5.1.1/gcc_64/include/QtGui -I/opt/Qt5.1.1/5.1.1/gcc_64/include/QtCore -Ibin/release -Ibin/release -o bin/release/scriptdialog.o src/scriptdialog.cpp
In file included from src/scriptdialog.cpp:25:0:
bin/release/ui_scriptdialog.h:14:25: fatal error: QtGui/QAction : no such file or directory
compilation terminated.
make: *** [bin/release/scriptdialog.o] Error 1
$ find /opt -name QtGui
/opt/Qt5.1.1/5.1.1/gcc_64/include/QtGui
/opt/Qt5.1.1/5.1.1/gcc_64/include/QtGui/QtGui
/opt/Qt5.1.1/5.1.1/gcc_64/include/QtGui/5.1.1/QtGui
$ find /opt -name QAction
/opt/Qt5.1.1/5.1.1/gcc_64/include/QtWidgets/QAction
wva@yup:~/splintermind-attributes$ hg up -C 577
128 files updated, 0 files merged, 21 files removed, 0 files unresolved
wva@yup:~/splintermind-attributes$ qmake
Project MESSAGE: Release Mode
Project MESSAGE: Setting up for Linux
Project MESSAGE: Setting up for Linux Install
wva@yup:~/splintermind-attributes$ hg up -C 578
129 files updated, 0 files merged, 0 files removed, 0 files unresolved
wva@yup:~/splintermind-attributes$ qmake
Project MESSAGE: Release Mode
Project MESSAGE: Setting up for Linux
Project MESSAGE: Setting up for Linux Install
Project MESSAGE: Warning: unknown QT: widgets
wva@yup:~/splintermind-attributes$ hg log -r 578
changeset: 578:4294379f597b
user: joshb
date: Thu Oct 03 17:39:35 2013 +0200
summary: v.20.6 ** updated the project to qt 5.1.1 **
$ sudo apt-get remove --purge qt4-default qt4-designer qt4-dev-tools qt4-qmake qt4-doc qt4-linguist-tools qtchooser
[..]
$ sudo apt-get install qt5-qmake qt5-default qttools5-dev-tools libqt5script5 libqt5scripttools5 qtscript5-dev
[..]
$ qmake
Project MESSAGE: Release Mode
Project MESSAGE: Setting up for Linux
Project MESSAGE: Setting up for Linux Install
$
As is, I have no way to find where my mages are inside DTyou should be able to find them by grouping by caste.
As is, I have no way to find where my mages are inside DTyou should be able to find them by grouping by caste.
As is, I have no way to find where my mages are inside DTyou should be able to find them by grouping by caste.
As is, I have no way to find where my mages are inside DTyou should be able to find them by grouping by caste.
Not so sure on that, but I'll check into it
follow up:
Gem setting vs gem cutting.
I always use gem setting, but turns out a lot of dorfs are gem cutters in mwmod
so what does this mean for me?
well my labor optimizer is set to just exclude gem cutters... which means i'm missing out on gem setters.
my initial guess was to merge a new role that accounted for both labors... but...
I can't pick the higher labor to assign (i.e. matching skill).
Not sure what the problem/solution really is, but I know what the problem is, two skills that do the same thing, and I need to assign the best of two labors... I guess I just need to half the ratio between the two, and pick the higher of the two?
It's just weird that mw uses only one labor (gem cutter?)
yeah i'll need to see it then, as i see arcane, wavekin, etc. caste groupings. maybe that's not the same as mages?As is, I have no way to find where my mages are inside DTyou should be able to find them by grouping by caste.
confirmed not the case. If you want further proof, I could upload
I can see them, simply sort by caste. I cannot see the hidden castes, the ones where the name is the same, but the ID is different.
For example
CASTE:MALE
CASTE_NAME:dwarf:dwarves:dwarven
and
CASTE:EVIL_STUFF_WILL_HAPPEN
CASTE_NAME:dwarf:dwarves:dwarven
CAN_DO_INTERACTION:EVIL_STUFF
These two the Therapist will group into one group. I thought you had one that sorts by caste name and one by caste id? One for regular play, the other for testing/bugfixing/cheating. I vaguely remembering talking to you about that, but that was a year ago. ;)
Anyway, I was just told that the Therapist now shows syndromes, which is godsend. Thanks so much for that :)
maybe the guy I'm looking at isn't a wizkid..looks like a priest to me, which is a profession in masterwork. a dwarf can belong to a caste but have a completed unrelated profession. in DT if you hover over the name, the tooltip should show (near the very bottom) the description of the caste as well.
vessel callfrey...
shows up as a regular caste dwarf
http://imgur.com/30ppB0e
sudo su
echo 0 > /proc/sys/kernel/yama/ptrace_scope
exit
Now you should be able to start Dwarf Therapist without trouble
using mw mod's custom grid view and ini for dwarf therapist, I was wondering if udp software .ini file will get messed up between non mw mod and vanilla. For example, I have my labor optimizer mapping to certain roles and I had to switch them to mw role's... wondering if this would have to be done everytime between mods.roles are the main problem. since mw has different labors and professions, it's also got different roles. it would probably be best to keep separate optimization plans for vanilla and any other mods.
I dont think its a big issue... the download here has the best fitted for vanilla, as does the one included in the LNP. The only mod that is using custom labors is MDF, which has its own roles/labors grids already included. I dont see a conflict.the conflict with the optimization plans is that it expects a labor to be mapped to a role. so in the case of MW, some roles have been changed and it may not find a match.
That's quite the changelist, splinterz! Nice to see things rolling smoothly.
I've promised to myself that I will finish basic revision on the doc this weekend.
On that timetable, I should be able to update it to reflect changes by next weekend.
If I wanted a filter script to exclude those with missing limbs, how could I accomplish that?31 is the health category for missing/severed/leaking body parts. the first item in the category is severed (0), the second is missing (1) and the third is leaking (2) so:
Unassigning labors "From everyone" should apply to the filtered view... as is, it literally applies to everyone :(ok i'll take a look at it.
I can't apply an opt plan and disable mining on my militia filtered dwarfsare you saying that the optimization plan isn't working with filtering, or just repeating the previous problem?
Question: What does the scripting box in the Custom Role dialogue do, exactly? I pay it lip service in the guide but don't go into any level of detail.rather than using the built-in aspects to create a role from, you could do something else entirely with a script instead, as long as it results in a number to use a rating. so for example, you could do something like give a rating based on whether or not a dwarf has a noble position. it's very niche and i'm unaware of how many people actually use it, so i wouldn't worry about it too much.
If I wanted a filter script to exclude those with missing limbs, how could I accomplish that?31 is the health category for missing/severed/leaking body parts. the first item in the category is severed (0), the second is missing (1) and the third is leaking (2) so:
!d.has_health_issue(31,0) && !d.has_health_issue(31,1)
if you wanted to exclude leaking as well, you could use:
!d.has_health_issue(31,-1)Unassigning labors "From everyone" should apply to the filtered view... as is, it literally applies to everyone :(ok i'll take a look at it.I can't apply an opt plan and disable mining on my militia filtered dwarfsare you saying that the optimization plan isn't working with filtering, or just repeating the previous problem?
Crash Bug:
Btw, copying from the script editor still results in a crash.
Man... injured has alot more to it. A dwarf is only resting until he is actually deposited into a bed huh? I'm asking because I currently exclude resting, but a dwarf with missing limb might not be resting, but then again a dwarf with leaking isn't resting or missing a limb...
So after combat I need to constantly re-adjust, but missing limbs are a big one. btw, this worked for me: Missing limbs d.has_health_issue(31,1)
Update:
I mean seriously... I had an archer (crossbowman) with a fucking missing limb before this script!
I play Dwarf Fortress (quite a lot) on my MacBook and I was searching these forums to see if there was a new version of DT that works with Mac.
I read through this whole thread but there still doesn't appear to be a working version?
I'm also a CS student, and I've got a lot of experience programming C++ and Objective-C, and a bit of experience using QT.
I updated Splinterz' version of DT to work with Mac but I can't get it to connect to DF properly (it just crashes when trying to connect). I did however manage to get the old Mac-version (the one by Chmod and/or DwarfEngineer) to work properly with v. 0.34.11.
The memory-layout used in df_structures (someone linked it higher up in this thread) wasn't completely right (though most of it is). I had to change a few memory locations, but now everything works (I think).
Anyway, here's the correct v0.34.11.ini file: http://pastebin.com/GNwG2ti2 (http://pastebin.com/GNwG2ti2)
It works with version 0.6.12b05 of the original DT fork: https://code.google.com/p/dwarftherapist/downloads/list (https://code.google.com/p/dwarftherapist/downloads/list)
To add the new memory-layout to DwarfTherapist, download and install v.0.6.12b05 like you normally would. Once installed, locate it in the Applications folder and right-click -> show package content. Then navigate to "Contents/MacOS/etc/memory_layouts/osx" and paste the file "v0.34.11.ini".
That should be all you have to do. It now works exactly as it used to work under Windows on my old pc.
I will look into updating Splinterz version to work with Mac OSX as well, but it'll probably take some time since I'm in the middle of my finals at Uni and I'll have to "get used" to DT's code. Anyway, this is a quick fix to get the old version working again in the meantime.
Is there a definitive place to share custom professions, optimization plans, and filter scripts?
If not, could we make one? Perhaps a wiki page?
Is there a definitive place to share custom professions, optimization plans, and filter scripts?
If not, could we make one? Perhaps a wiki page?
No, but a package marketplace might not be a bad idea in the future. I just used DFFD (http://dffd.wimbli.com/file.php?id=7880).
I think that a wiki repo is fine for now, but a more permanent solution should be sought out in the future, preferably some sort of in-program marketplace.
Do I plan to make the LaTeX available? Hmm. Dunno, maybe. Right now I'm mostly focused on working with Splinterz to update it and brush it to form.
in game marketplace?
Bit of a bug: it seems thralls don't get removed from Dwarf Therapist. You can continue to make changes to them.what the hell are those and how do i test them? :D
[SYN_NAME:profane murk sickness]
[SYN_AFFECTED_CLASS:GENERAL_POISON]
[SYN_INJECTED]
[SYN_CONTACT]
[SYN_INHALED]
[SYN_INGESTED]
[CE_FLASH_TILE:TILE:165:3:0:0:FREQUENCY:2000:1000:START:0]
[CE_DISPLAY_NAME:NAME:profane murk thrall:profane murk thralls:profane murk thrall:START:0]
[CE_PHYS_ATT_CHANGE:STRENGTH:120:300:TOUGHNESS:200:400:START:0]
[CE_ADD_TAG:NO_AGING:NOT_LIVING:OPPOSED_TO_LIFE:STERILE:EXTRAVISION:NOEXERT:NOPAIN:NOBREATHE:NOSTUN:NONAUSEA:NO_DIZZINESS:NO_FEVERS:NOEMOTION:PARALYZEIMMUNE:NOFEAR:NO_EAT:NO_DRINK:NO_SLEEP:NO_PHYS_ATT_GAIN:NO_PHYS_ATT_RUST:NOTHOUGHT:NO_THOUGHT_CENTER_FOR_MOVEMENT:NO_CONNECTIONS_FOR_MOVEMENT:START:0]
[CE_REMOVE_TAG:HAS_BLOOD:TRANCES:LIKES_FIGHTING:MISCHIEVOUS:START:0]
Horrible, hard to kill things that evil mists spawn. Here's a save (http://dffd.wimbli.com/file.php?id=8126).Bit of a bug: it seems thralls don't get removed from Dwarf Therapist. You can continue to make changes to them.what the hell are those and how do i test them? :D
Horrible, hard to kill things that evil mists spawn. Here's a save (http://dffd.wimbli.com/file.php?id=8126).Bit of a bug: it seems thralls don't get removed from Dwarf Therapist. You can continue to make changes to them.what the hell are those and how do i test them? :D
The fort's not doing so well, and there are more thralls than living dwarves. All Thralls have nicknames that start with "Ex" like "ExDwarf" or "ExCook".
it would be nice to see enemy units in dt.i've thought about doing this, and maybe a page for dead units. i constantly seem to have this problem where a dwarf dies, and i have no idea who they were or what they were doing haha..
i've uploaded another beta version. highlights:
- grouping is saved/loaded for each tab/view
- skilled labors (above dabbling) can be toggled by row or by column
- labors can be enabled/disabled by columns
- commit/clear pending changes can be performed on individual dwarves (right click menu)
- the custom profession section of the right click menu can be 'torn off'
- GUI enhancements to tooltips and the dwarf details pane (standardized colors, caste information, extra trait info)
- modders can include a file to override/add custom views (see masterwork for an example)
OSX should be supported now. i can't compile it to confirm, but all the code changes have been merged, and the memory layout file has been completed.
Hello everyone! I'm new to the forum and, first of all, I would like to thank the guy who maintain DT. You gives us some of your time so we can save some of ours on playing DF. Your work is much appreciated!
[excellent explanation and images]
And, since I'm already here, is there anyone having trouble to assign dwarves to squads from DT? Mine shows greyed option on that righ button menu, even if I clearly have an active, not full squad. I can remove from squad, but not assign... :'( Edit: Yes, mine is the nwest version, 20.6.6, i think.. Edit 2: Nevermind... It happens that you can't assign a dwarf to a sqad if you are on the military tab, because DT for some reason greys out the option, but it works on the other tabs.
Compiles fine for me on linux. Two questions, tho:i'll see if i can find anything on the mouse buttons, i think someone mentioned it before as well.
1. Only the middle button (button 2) will toggle labors. Turning off single-click option allows left button to work, but is not draggable. I haven't been able to find out why this is.
2. Is there an option to display castes? I play Masterwork, and find that very useful.
castes should be detected and shown automatically. you'll see the caste name in the details pane, and on the tooltip (optional). if you group by caste it should also break them into their respective masterwork castes.
there should definitely be a group by caste option in the drop down, are you certain you didn't compile the old version accidentally?castes should be detected and shown automatically. you'll see the caste name in the details pane, and on the tooltip (optional). if you group by caste it should also break them into their respective masterwork castes.
That's the confusing bit - there is no option to group by caste, and they don't show in the popup tooltip.
I've cleared User Settings ... wondering if there's some compile option I missed ... ?
i've played with this a bit today, and it seems i've been able to get it working as you've demonstrated. i'm not sure if the behaviour will be consistent across platforms, so we'll have to see. essentially it changes the dock to a true window when you 'float' it, allowing you to minimize it. once minimized, it creates a little bar you can drag around and place where you'd like on the screen. so we'll try that out for the next release and see how it goes.
Is there a way to import a dwarf's raw role % into the script editor?i'll expose the function to get raw or adjusted role ratings in the next update.
I have this idea for a script that compares ustom roles I would have for each weapon type, and then pick the highest one.
Would it be possible to extend the age ranges to have individual years from 0 to 10? For dwarves, it would make it easier to see just how long it is before Urist McUseless grows up, and for animals, it would make keeping track of them a lot easier.yeah i noticed this as well, with some mods < 10 isn't a child anymore. consider it done for the next update.
since meph has diseases (edit: in his mod). an ability to see active syndromes in DT would be nice.Which is already included in the DT. Just hover your mouse over a dwarf.
you can also filter them out with is_buffed() via a script. currently i'm only showing syndromes that don't require healthcare. however, it appears a lot of negative/bad syndromes may not require healthcare, so i might just include them all and rename it to a generic 'syndromes' section in DT.since meph has diseases (edit: in his mod). an ability to see active syndromes in DT would be nice.Which is already included in the DT. Just hover your mouse over a dwarf.
The horror, oh the horror...you can also filter them out with is_buffed() via a script. currently i'm only showing syndromes that don't require healthcare. however, it appears a lot of negative/bad syndromes may not require healthcare, so i might just include them all and rename it to a generic 'syndromes' section in DT.since meph has diseases (edit: in his mod). an ability to see active syndromes in DT would be nice.Which is already included in the DT. Just hover your mouse over a dwarf.
The horror, oh the horror...you can also filter them out with is_buffed() via a script. currently i'm only showing syndromes that don't require healthcare. however, it appears a lot of negative/bad syndromes may not require healthcare, so i might just include them all and rename it to a generic 'syndromes' section in DT.since meph has diseases (edit: in his mod). an ability to see active syndromes in DT would be nice.Which is already included in the DT. Just hover your mouse over a dwarf.
(some complex mechanisms in genesis, lrf, mdf use more or less inactive syndromes that affect a lot of dwarves, for status effects and adding syn-classes to build logic gates. Will be a long list in some of them :) Still, a nice idea. I can guess what you are thinking right now: Uff, someone requests A for Y, and first response is: A is bad for X. Sorry for that, I get that myself often enough.)
I see your latest build allows me to apply multiple filter scripts... how is that done?you mean in the next update? i don't think i committed those changes yet, did i?
on my point on syndromes.You can already do this to some extent with the aforementioned d.buffs but I could expand the scripts to include any syndromes not just those that appear beneficial.
I guess because a lot of syndromes are "placeholders", then... it would be nice to filter by syndromes... So I could type something in, say "bubonic" or "influenza" and find out who is "sick" and assign them to a burrow. As is, I don't think influenza or bubonic plague show up (blind, insomnia, and schizo show up).
I could be wrong about bubonic plague, maybe I just haven't endured it yet. but a feature that could search those with enabled syndromes would be awesome vs me manually using showunitsyndromes and dumping to a text editor for searching.
well... I'm not sure what "(d.is_buffed())" does, but a lot of these syndromes are not beneficial with halfling's disease mod.
So, searching by "name" would be a tremendous help with filtering bad from good
is_sick flag? I didn't even know about this flag.i'm pretty sure the syntax is right there in the script gui with all the other commands. if you're not getting any results, then the syndrome probably doesn't have a name, or requires healthcare.
Anyways, it appears that a lot of interactions/syndromes don't have syn_names (for example, influenza didn't).
Is there a way to filter by interactions? As these tend to be like function calls and are generally the "name" of the group of syndromes applied (at least with influenza)
btw, I tried d.is_buffed() d.is_buff() d.is_buffs() and d.buff() d.buffed() d.buffs() with no luck
Anyways, it appears that a lot of interactions/syndromes don't have syn_names (for example, influenza didn't). Is there a way to filter by interactions? As these tend to be like function calls and are generally the "name" of the group of syndromes applied (at least with influenza)i had some time to poke around this a bit more, and what i'll change is to read the SYN_CLASS names from the syndromes, and use that if the syndrome itself doesn't have a name. this certainly helps to differentiate between copy/pasted syndromes, but you'll still probably have to hunt through the raws to find out what exactly the class is referring to. i might add in an option to choose to use SYN_NAME, SYN_CLASS or both, so you can work around poor syndrome names.
yeah, some syndromes don't have syn_class... so I was thinking using the interaction:"name" instead, if that were possible (that themselves had syndromes defined inside them).
Anyways, awesome pawsome sauce.
[OBJECT:INTERACTION]
[INTERACTION:SPREAD_BLACK_PLAGUE]
[I_SOURCE:DEITY]
[IS_USAGE_HINT:MAJOR_CURSE]
[IS_HIST_STRING_1: cursed ]
[IS_HIST_STRING_2: with sores, fevers, aches and rot, causing their body parts to swell with infectious pus]
[I_TARGET:A:CREATURE]
[IT_LOCATION:CONTEXT_CREATURE]
[IT_REQUIRES:CAN_LEARN]
[IT_CANNOT_HAVE_SYNDROME_CLASS:PLAGUE]
[I_EFFECT:ADD_SYNDROME]
[IE_TARGET:A]
[IE_IMMEDIATE]
[IE_ARENA_NAME:Plague 1]
[SYNDROME]
[SYN_NAME:bears the black plague] ## the black death is a mysterious disease - it can be reasonably assumed bubonic plague was a major component, but this mod assumes black plague to be a more virulent variant
[SYN_CLASS:PLAGUE]
[SYN_AFFECTED_CLASS:GENERAL_POISON]
[CE_CAN_DO_INTERACTION:START:1200]
[CDI:INTERACTION:SPREAD_BLACK_PLAGUE]
[CDI:TARGET:A:TOUCHABLE]
[CDI:FREE_ACTION]
[CDI:MAX_TARGET_NUMBER:A:1]
[CDI:WAIT_PERIOD:1200]
[CDI:ADV_NAME:Spread black plague]
[CDI:TARGET_VERB:feel sick to your stomach:looks pale and sickly]
[CE_CAN_DO_INTERACTION:START:0]
[CDI:INTERACTION:DISEASE_BLACK_PLAGUE]
[CDI:TARGET:A:SELF_ONLY]
[CDI:FREE_ACTION]
[CDI:MAX_TARGET_NUMBER:A:1]
[CDI:WAIT_PERIOD:33600]
[CDI:ADV_NAME:Suffer from black plague (yes, it's a choice, dwarves just never choose not to)]
[CDI:TARGET_VERB:feel sick to your stomach:looks pale and sickly]
[CE_DISPLAY_NAME:NAME:ghastly plaguebearer:ghastly plaguebearers:plagued:START:0:CAN_BE_HIDDEN]
[INTERACTION:DISEASE_BLACK_PLAGUE]
[I_TARGET:A:CREATURE]
[IT_LOCATION:CONTEXT_CREATURE]
[IT_REQUIRES:CAN_LEARN]
[I_EFFECT:ADD_SYNDROME]
[IE_TARGET:A]
[IE_IMMEDIATE]
[SYNDROME]
[SYN_NAME:is sick with the black plague]
[SYN_CLASS:PLAGUE]
[SYN_AFFECTED_CLASS:GENERAL_POISON]
[CE_NAUSEA:SEV:50:PROB:33:START:1200:PEAK:16800:END:33600]
[CE_DIZZINESS:SEV:50:PROB:33:START:1200:PEAK:16800:END:33600]
[CE_PAIN:SEV:100000:PROB:20:START:1200:PEAK:16800:END:33600]
[CE_SWELLING:SEV:100:PROB:100:START:1200:PEAK:16800:END:33600]
[CE_OOZING:SEV:50:PROB:100:START:1200:PEAK:16800:END:33600]
[CE_NECROSIS:SEV:100:PROB:10:BP:BY_CATEGORY:ALL:SKIN:START:1200:PEAK:16800:END:33600]
[CE_NECROSIS:SEV:100:PROB:1:BP:BY_CATEGORY:LUNG:ALL:START:1200:PEAK:16800:END:33600]
[CE_NECROSIS:SEV:100:PROB:1:BP:BY_CATEGORY:EYE:ALL:START:1200:PEAK:16800:END:33600]
[CE_NECROSIS:SEV:100:PROB:1:BP:BY_CATEGORY:HEART:ALL:START:1200:PEAK:16800:END:33600]
[CE_NECROSIS:SEV:100:PROB:1:BP:BY_CATEGORY:BRAIN:ALL:START:1200:PEAK:16800:END:33600]
[CE_NECROSIS:SEV:100:PROB:1:BP:BY_CATEGORY:GUT:ALL:START:1200:PEAK:16800:END:33600]
[CE_NECROSIS:SEV:100:PROB:1:BP:BY_CATEGORY:STOMACH:ALL:START:1200:PEAK:16800:END:33600]
[CE_NECROSIS:SEV:100:PROB:1:BP:BY_CATEGORY:ALL:NERVE:START:1200:PEAK:16800:END:33600]
[CE_NECROSIS:SEV:100:PROB:1:BP:BY_CATEGORY:ALL:MUSCLE:START:1200:PEAK:16800:END:33600]
bad news my friend.
Looks like next version is going to have 2 new personality like facets...
http://www.bay12forums.com/smf/index.php?topic=100851.msg4649312#msg4649312
well, to my understanding. A syndrome is contained inside an interaction
HUGE AMAZON LIKE FEATURE REQUEST
a delay in switching focus to context menu.
I.e. when I move my mouse from one menu to another, it would be nice if there was a delay when I go outside of the menu to drop the menu. Like say a 3 second delay. That way, I can drag my mouse towards (as is, once I leave the menu box's, the MENU'S COLLAPSE) the menu and pick the item I want without having to stay within the boundaries of the menu's when I wish to make my selection.
when i try to apply an opt plan and my mouse goes outside of the menu. the menu collapses. its annoying as i try to drag the mouse cursor at a 45 degree angle to select an option in the submenu but im forced to consciously remember the menu behavior and have to keep the cursor inside the menus (ie drag the cursor 90 degrees to stay inside the menus/submenus)ok so we're talking about the optimize button's dropdown list on the main toolbar then? i still can't reproduce this. if i click on the arrow to show the list of optimization plans, it stays there. i can move my mouse outside of the menu or wherever, and it doesn't close.
Note: the project has been upgraded to qt5, but the building documentation still says to use qt4. The documentation should be updated.i can't update the build documentation for linux, it's on an entirely different site. i should probably move things somewhere else where i have more control over such things.
there currently is a feature to export to CSV. view under file menu
you can filter by them, make a script.how do I filter by syndromes?
its not in the health window...
I thought it was.
feature request.
Showing syndromes is great, I dont have to rely on non working showunitsyndromes.lua in r4 that also caps out based on my console size.
BUT FILTERING like the health window would be a great asset as I can single out dwarfs with plagues to a militia and expel them vs having to find them AFTER they start to show symptoms.
Hello! I have two questions.
First, does anyone know how I can run the "splintermind-attributes" command so that I don't need sudo permissions? I'm using Openbox (linux) as my window manager and would like to be able to run it from the Menu.
Second, is there a way to change the font that used, or is there a font that I should have in order to see things properly? Currently the font is very small and if there's a character with an accent mark or anything like that, it just shows up as a question mark. Thank you in advance for the help!
Hello, first of all thanx a lot for maintaining and farther developing this program. I wish to propose a minor interface improvement. Could you disable (or at least make it not modal) message box about loosing connection ("Unable to talk to Dwarf Fortress" title). It's kinda obvious that connection lost when it lost anyway, but this modal window is a bit annoying if you have to reconnect often.Try disabling the 'alert on disconnect' in the options.
Try disabling the 'alert on disconnect' in the options.Thanks )
Hey guys, I'm having problems assigning dwarfs to squads via DT.if you group by squad, do you see a notification on the squads that the count doesn't match? did you possibly have children in the selection when you assigned multiple dwarves to squads?
I'm currently trying to equip all of my dwarves to stop the clothing wear problems, and I was mass-assigning via DT. I was able to do it with no problems for 2 squads with DT, but on the 3rd squad after assigning the seventh member, the option "assign to squad" that appears when you right click is greyed out. For all the 150 dorfs. I tried making a new squad, but it's still greyed out.
What can I do? I'm using 20.6.
Dwarf Therapist still lists opposed-to-life skeletons as being fortress-members for some reason, and trying to alter their labors when they're not on the in-game unit list crashes the game.
Just a random question out of nowhere. Can anyone point me to where I can read more about printing out the information of individual creatures (realtime or not). An XML dump doesn't seem to give that info, so I gather that it'll require reading the memory and since DwarTherapist seems to be specialised in that...preferences are actually stored for the individual units, not historical figure information. you can use df-structures to find any offsets you want to read (https://github.com/angavrilov/df-structures), and if you're looking to export data it's probably easiest to write a script for DFHack. a good place to start would probably be to convert the dwarf export plugin (https://github.com/DFHack/dfhack/tree/master/plugins/dwarfexport) to a lua/ruby script.
Not RAW stuff, but specifically individual historical figure info like preferences (a la DT), description, family members etc.
Thanks!
Just a random question out of nowhere. Can anyone point me to where I can read more about printing out the information of individual creatures (realtime or not). An XML dump doesn't seem to give that info, so I gather that it'll require reading the memory and since DwarTherapist seems to be specialised in that...preferences are actually stored for the individual units, not historical figure information. you can use df-structures to find any offsets you want to read (https://github.com/angavrilov/df-structures), and if you're looking to export data it's probably easiest to write a script for DFHack. a good place to start would probably be to convert the dwarf export plugin (https://github.com/DFHack/dfhack/tree/master/plugins/dwarfexport) to a lua/ruby script.
Not RAW stuff, but specifically individual historical figure info like preferences (a la DT), description, family members etc.
Thanks!
2014-Feb-05 19:41:09.971 INFO core Dwarf Therapist "0.6.12" starting normally. [src\dwarftherapist.cpp:140] (setup_logging)
2014-Feb-05 19:41:10.478 DEBUG core setting up connections for MainWindow [src\mainwindow.cpp:148] (MainWindow)
2014-Feb-05 19:41:10.490 DEBUG core beginning to read settings [src\dwarftherapist.cpp:162] (read_settings)
2014-Feb-05 19:41:10.514 DEBUG core finished reading settings [src\dwarftherapist.cpp:227] (read_settings)
2014-Feb-05 19:41:10.554 DEBUG core attempting connection to running DF game [src\mainwindow.cpp:306] (connect_to_df)
2014-Feb-05 19:41:10.556 DEBUG core adding valid layout "v0.34.11 (graphics)" "0x4fcc9488" [src\dfinstance.cpp:118] (DFInstance)
2014-Feb-05 19:41:10.557 DEBUG core adding valid layout "v0.34.10 (graphics)" "0x4fba073a" [src\dfinstance.cpp:118] (DFInstance)
2014-Feb-05 19:41:10.558 DEBUG core adding valid layout "v0.34.09 (graphics)" "0x4fb4c506" [src\dfinstance.cpp:118] (DFInstance)
2014-Feb-05 19:41:10.559 DEBUG core adding valid layout "v0.34.08 (graphics)" "0x4fb0ccba" [src\dfinstance.cpp:118] (DFInstance)
2014-Feb-05 19:41:10.559 DEBUG core adding valid layout "v0.34.07 (graphics)" "0x4f7592fe" [src\dfinstance.cpp:118] (DFInstance)
2014-Feb-05 19:41:10.560 DEBUG core attempting to find running copy of DF by window handle [src\dfinstancewindows.cpp:189] (find_running_copy)
2014-Feb-05 19:41:10.560 DEBUG core found copy with HWND: 0x1804cc [src\dfinstancewindows.cpp:205] (find_running_copy)
2014-Feb-05 19:41:10.560 DEBUG core PID of process is: 4352 [src\dfinstancewindows.cpp:212] (find_running_copy)
2014-Feb-05 19:41:10.560 DEBUG core PROC HANDLE: 0x1d8 [src\dfinstancewindows.cpp:220] (find_running_copy)
2014-Feb-05 19:41:10.560 DEBUG core PEB is at: 0x7efde000 [src\dfinstancewindows.cpp:226] (find_running_copy)
2014-Feb-05 19:41:10.560 DEBUG core read 12 bytes BASE ADDR is at: 0x13c0000 [src\dfinstancewindows.cpp:239] (find_running_copy)
2014-Feb-05 19:41:10.561 DEBUG core Target EXE was compiled at "2012-05-21T03:13:30" [src\dfinstancewindows.cpp:70] (calculate_checksum)
2014-Feb-05 19:41:10.561 DEBUG core DF's checksum is: "0x4fba073a" [src\dfinstance.cpp:1366] (get_memory_layout)
2014-Feb-05 19:41:10.561 INFO core Detected Dwarf Fortress version "v0.34.10 (graphics)" using MemoryLayout from "C:/Users/James/Desktop/Games/Dwarf Therapist 20.7.1/etc/memory_layouts/windows/v0.34.10_graphics.ini" [src\dfinstance.cpp:1378] (get_memory_layout)
2014-Feb-05 19:41:10.561 DEBUG core base address: "0x013c0000" [src\dfinstancewindows.cpp:261] (find_running_copy)
2014-Feb-05 19:41:10.561 DEBUG core memory correction: "0x00fc0000" [src\dfinstancewindows.cpp:262] (find_running_copy)
2014-Feb-05 19:41:10.578 DEBUG core MEMORY SEGMENT SUMMARY: accepted 481 rejected 257 total 738 [src\dfinstancewindows.cpp:368] (map_virtual_memory)
2014-Feb-05 19:41:10.578 DEBUG core GetModuleFileNameEx returned: "C:\Users\James\Desktop\Games\df_34_10_win\Dwarf Fortress.exe" [src\dfinstancewindows.cpp:275] (find_running_copy)
2014-Feb-05 19:41:10.578 INFO core Dwarf fortress path: "C:/Users/James/Desktop/Games/df_34_10_win" [src\dfinstancewindows.cpp:278] (find_running_copy)
2014-Feb-05 19:41:10.580 DEBUG core Connection to DF version "v0.34.10 (graphics)" established. [src\mainwindow.cpp:333] (connect_to_df)
2014-Feb-05 19:41:10.597 DEBUG core MEMORY SEGMENT SUMMARY: accepted 481 rejected 257 total 738 [src\dfinstancewindows.cpp:368] (map_virtual_memory)
2014-Feb-05 19:41:10.597 DEBUG core Loading language translation tables [src\languages.cpp:58] (load_data)
2014-Feb-05 19:41:10.597 DEBUG core Loading generic strings from 282c8e0 [src\languages.cpp:72] (load_data)
2014-Feb-05 19:41:10.600 DEBUG core generic words 2173 [src\languages.cpp:74] (load_data)
2014-Feb-05 19:41:10.778 WARNING core vector at "0x00fbffff" has over 5000 entries! ( 1073717568 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Feb-05 19:41:10.820 DEBUG core dwarf race index "0x02614ffc" "0x01654ffc" (UNCORRECTED) [src\dfinstance.cpp:376] (load_game_data)
2014-Feb-05 19:41:10.820 DEBUG core dwarf race: "0x000001d1" [src\dfinstance.cpp:381] (load_game_data)
2014-Feb-05 19:41:10.822 WARNING core vector at "0x2170005b" has over 5000 entries! ( 750780768 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Feb-05 19:41:10.822 WARNING core vector at "0x21703263" has over 5000 entries! ( 753904801 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Feb-05 19:41:10.823 WARNING core vector at "0x2170646b" has over 5000 entries! ( 58836000 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Feb-05 19:43:40.577 WARNING core vector at "0x073bec2f" has over 5000 entries! ( 1027733892 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Feb-05 19:43:40.577 WARNING core vector at "0x21709673" has over 5000 entries! ( 750780768 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Feb-05 19:43:40.577 WARNING core vector at "0x2170c87b" has over 5000 entries! ( 753904801 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Feb-05 19:43:40.577 WARNING core vector at "0x073c2237" has over 5000 entries! ( 54622531 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
well i've finally finished up another new version. there are quite a few major changes, so you can probably expect a few bugs. here's a short highlight:
- equipment columns are now available (see here for examples and details (http://imgur.com/a/xCEHz#0))
- the attribute changes that syndromes apply are now shown
- squad changes are now applied like every other change: you need to commit them
- the linux (and osx?) accent issue has been fixed
- units without a gender should be shown correctly (untested)
as i don't have access to any osx machines, the offsets have not been updated. if anyone wants to update them, you can use this script from dfhack to export the offsets (https://code.google.com/r/splintermind-attributes/source/browse/export-dt-ini.lua).
Tareq has been kind enough to update the offsets for OSX and package everything up! (http://dffd.wimbli.com/file.php?id=8418)
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Application Specific Information:
objc[5970]: garbage collection is OFF
*** error for object 0x1003a7d70: pointer being freed was not allocated
thanks for the report. let me know when you've got the save uploaded and i'll take a look.
Tareq has been kind enough to update the offsets for OSX and package everything up! (http://dffd.wimbli.com/file.php?id=8418)
Would you mind forwarding this crashlog (http://pastebin.com/sJ78msjD) to Tareq? Happens after DT asks for the admin password.
This seems to be the relevant section:Code: [Select]Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Application Specific Information:
objc[5970]: garbage collection is OFF
*** error for object 0x1003a7d70: pointer being freed was not allocated
Tareq has been working on this and it should be resolved. give the new build a try and see how it goes. (http://dffd.wimbli.com/file.php?id=8418)
Hey me again.
This time DT 21.2 don`t start at all. Here is what Win7 is throwing at meSpoiler (click to show/hide)
Write if you need any additional information (and how to get them).
Tareq has been working on this and it should be resolved. give the new build a try and see how it goes. (http://dffd.wimbli.com/file.php?id=8418)
Thx, this one works more or less. After asking for the admin pass it takes a long time to connect to the game - about 1-2 minutes. During this time it eats a lot of CPU time, totally saturating one of the cores of my macbook. After it finishes loading the CPU usage goes back to normal, and DT works correctly.
post your dwarf therapist log. i just tested with 21.2 and the save you sent me, and i can't get it to crash.
Tareq has been working on this and it should be resolved. give the new build a try and see how it goes. (http://dffd.wimbli.com/file.php?id=8418)
Thx, this one works more or less. After asking for the admin pass it takes a long time to connect to the game - about 1-2 minutes. During this time it eats a lot of CPU time, totally saturating one of the cores of my macbook. After it finishes loading the CPU usage goes back to normal, and DT works correctly.
i still have no idea what's going on here. i tried downloading and running 21.2 on two other machines, and still haven't had a crash. the version just previous to this one has no problems on your machine?
post your dwarf therapist log. i just tested with 21.2 and the save you sent me, and i can't get it to crash.
I am afraid i can`t as run.log for 21.2 has not been created.
So only i can describe symptoms of a crash.
While opening DT window appears saying normally that application crashed and i have either option to look for solution online or end program.
In Win Manager DwarfFortress.exe thread takes 116 KB of memory and does not respond on termination attempts.
I think DT dosen`t get to the point of creation a log.
I have few copies downloaded and between them, beside first error window i posted, second reoccursSpoiler (click to show/hide)
If you`ll get any more idea of how can i help you with recreation of this crash or methods of reporting mine, i'll be happy to help tomorrow.
the dffd file has been updated with another version with some optimizations, give it another go and let us know if it's loading faster for you.
i still have no idea what's going on here. i tried downloading and running 21.2 on two other machines, and still haven't had a crash. the version just previous to this one has no problems on your machine?
21.2 works for me (Windows 7), and the funniness with sorting by migration wave is gone.thanks for the feedback! unfortunately i don't think i can remove other people's comments from the file listing on dffd :-\
You may want to remove the "latest doesn't work" someone posted at wimbli, since it's no longer true for latest.
It would be nice if there was a column somewhere that would let you sort the dorfs by size. (Maybe on the weapons page? You can see sizes there by hovering, but it's kind of tedious.)right click the very first column header (dwarf names), and you can sort by body size.
Ok, so i downloaded qt5gui.dll and copied it to system directory and the original v21.2 is working, but not the second exec you`ve sent me on email.can you send me a link to where you downloaded it from so i can compare the dll files?
Is it normal this takes several minutes to read / commit (on linus)? Vanilla DT is a a lot faster... any specific features I need to disable to make the splintermind version faster?no that's not normal! i'm not sure how i managed it, but there was a typo in one of the linux offsets in the 34.11 ini file.
can you send me a link to where you downloaded it from so i can compare the dll files?
i do use a different dll, as i have a 'minimal' compiled version of QT that i use so that i can reduce the overall size of the zip file in the packaged release. it's mainly to remove the ICU libraries (http://site.icu-project.org/), but maybe that's causing an issue on some machines...
can you send me a link to where you downloaded it from so i can compare the dll files?
http://www.opendll.com/index.php?file-download=qt5gui.dll&arch=32bit&version=5.1.1.0&dsc=C++-application-development-framework.#
As i understand it is earlier version than copy included with DT
Yes, works a lot faster now, thx!Is it normal this takes several minutes to read / commit (on linus)? Vanilla DT is a a lot faster... any specific features I need to disable to make the splintermind version faster?no that's not normal! i'm not sure how i managed it, but there was a typo in one of the linux offsets in the 34.11 ini file.
i've fixed that and also made a small performance tweak that should help it load a little faster. i've updated the source, so give it another go and let me know if it's better.
when you used this new dll file, did you need to add any other libraries to get it run?
I have some issues with Therapist on the new release. On my MacBook Air, Therapist runs really sluggish and crashes every so often with no error at all. Can anyone confirm those issues? I'm running 10.9.1
How does DT access grid views made in previous versions of DT? It's getting a little cluttered, and some of the views I've made in earlier versions are nearly the same as the default ones in this version. You can't edit or delete them from within DT.i'm not sure if you're referring to custom or default views, but you can't remove the default views. however, the custom views you can remove through the grid view dock.
@splinterz, Tareq: Setting a nickname in DT 21.2 OSX doesn't work, the nick doesn't show up in either DT or DF. Confirmed on 10.7.5.i'm not sure if you've got the latest build. there was a commit from Tareq on the 16th that should have fixed the loading speed and that crash.
and:I have some issues with Therapist on the new release. On my MacBook Air, Therapist runs really sluggish and crashes every so often with no error at all. Can anyone confirm those issues? I'm running 10.9.1
It's a bit vague I know, I hope I get more details on this one.
i'm not sure if you've got the latest build. there was a commit from Tareq on the 16th that should have fixed the loading speed and that crash.
I had some issues with building this last night/today. I submitted a pull request to fix the instructions in BUILDING.txt to include qtchooser and the flag to build with qt version 5 (it didn't seem to like version 4).if you run it from /bin/release it's probably looking for the /etc and memory layouts in the release folder. i've merged your changes, thanks for the help!
I then belatedly realized that there are also instructions in the readme. I'll fix those in a moment.
If you have both qt4 and qt5 installed, often qt4 is considered the "default".
Also, I'm not sure what was going on, but when I try to run the executable in Dwarf-Therapist/bin/release, the program crashes instantly. However, if I just run dwarftherapist (which was registered in /usr/bin) then it works just fine.
if you run it from /bin/release it's probably looking for the /etc and memory layouts in the release folder. i've merged your changes, thanks for the help!
Is there a compiled version that will run on Ubuntu 12.04? I've been trying to build it, but the number of code changes required is prohibitive. (Mostly related to reorganization of includes in Qt5.)
Or did someone lead me astray when I read that you have to use Qt5 to build it?
I think custom profession display is broken in this Dwarf Therapist release on the Mac. Are any of you able to see dwarves grouped by custom professions in the Dwarf Therapist labors tab?
I'm able to add a new custom profession and apply it to dwarves, but those dwarves remain grouped under the profession they had and the new profession doesn't appear. I've followed the same procedure (below) on the Windows version and it works there, so I assume it's not the way I'm doing it.
I've tried deleting DT (and ~/.config/UDP Software/Dwarf Therapist.ini) then re-installing and the custom professions still don't work.
Will you try to verify and report your results and or tell me what I'm doing wrong?
Here's the procedure I'm trying:
1. Switch to the labors tab.
2. Set "Group By" dropdown to "Profession"
3. Create a new custom profession, say "Tester" with a skill or two.
4. Uncheck "Apply as a mask?" checkbox.
5. Click "OK" button
6. Assign the custom profession to a dwarf
7. Commit the change(s)
8. Observe whether the dwarf appears grouped under the new custom profession or not
Hi again, I suppose it's the same bug as with the custom nicknames in DT 21.2.currently osx doesn't support writing any string values (nickname, custom profession, squad name, etc.) i have no idea why it's been disabled, so i'll pass it on to tareq to see if he can test it out.Spoiler (click to show/hide)
Just posting to say: thank you for you wonderful tool. 8)when you create an optimization plan, you also map roles to the labors. the rating of the role associated to a labor is what the optimizer uses (in addition to ratio, priority, etc.) to determine which dwarves should be assigned to the labor. so yes, traits are used, but indirectly via a role.
I wish there will be more tools like yours (with a nice UI~) around for other stuff.
I just have a question about your optimizer: does the optimizer take in account dwarf traits/tastes?
I'm sorry to ask this, it's just that I'm curious to know how it works and if it will only distribute randomly labor based on the ratio and priority.
Sorry for my bad english.
Bug Report:what version of DT are you using?
DT will not read exp/skill level for the alchemy skill. I had a legendary alchemist and he was still reported as having "0 exp" in Therapist
Thank you for your reply.it's a role for a weak sheriff/guard captain/hammerer (http://dwarffortresswiki.org/index.php/DF2012:Fortress_guard) so that when they deal out punishment (no jail available) there's less of a chance of them actually killing the criminal.
I've another question : the role "Lawdwarf" what is it ? I couldn't find any explanation of this trait on the wiki.
Is it it for the Sheriff or the captain of militia ? Why is it written weak next to it ?
Few questions...i'd built a packaged version a long while back, and after getting exactly no feedback about whether it was working or not on different distributions, i just stopped doing it. i'm by no means a linux guru but my experience trying to get a packaged build setup for linux has been... well it's been a pain in the ass, to put it simply. if you want to package things up and place it on dffd or somewhere else, feel free.
- Couldn't find a compiled linux version for download anywhere... why? Is it heavily dependant on the versions I compiled it with or something? Can I just put some license file (which one?oh, MIT I guess...) into my therapist folder + upload it somewhere (where?) or will I only make a mess of some sort if I try that?
- Have not been able to figure out what that "checksum" checks... oh *wait* the source... ok... looked in the code and now I have figured it out... but still: WHYYYYYY (not just md5 and where does the "0x" come from)? xD
i didn't write the checksum code and haven't touched it, but i don't really understand what your gripe is; are you reporting some kind of bug regarding the checksum?No, sorry. I just didn't realize that it's (truncated part of) md5 (with "0x" in front of it) after all from the looks of it at first and I found myself reading weird and unnecessary manuals about "process memory fingerprinting" while trying to generate the same checksum in a script xD
ah yeah, i see what you mean about the checksum after looking over the code.. i really cant say about the AUR suggestion, i've no experience with it. however, that you've referenced splintermind-attributes is a concern, as that's most likely the old googlecode source. Adam has been working on getting the linux build documentation cleaned up and fixing the makefile though, if that's of help to you. (https://github.com/splintermind/Dwarf-Therapist/blob/master/BUILDING.txt)Quotei didn't write the checksum code and haven't touched it, but i don't really understand what your gripe is; are you reporting some kind of bug regarding the checksum?No, sorry. I just didn't realize that it's (truncated part of) md5 (with "0x" in front of it) after all from the looks of it at first and I found myself reading weird and unnecessary manuals about "process memory fingerprinting" while trying to generate the same checksum in a script xD
Uhm... I wasn't really talking about "proper packaging"... more like... "uploading the file that I found in '/var/cache/packages' after compiling splintermind-attributes from AUR" :3 *sigh* no idea if that's a bad idea.
Thaat didn't work out too well.this is the documentation for linux qt packages. (http://qt-project.org/doc/qt-4.8/deployment-x11.html#creating-the-application-package) i used the library path solution they propose and it appeared to work (again, no feedback so i don't really know).
I uploaded a messy testing version here: http://dffd.wimbli.com/file.php?id=8462
I have no idea how to compile it in a way that will work on someone elses machine. Guess I need to compile with statically linked libs only? That would be mostly qt5 I guess... maybe I'll try again tomorrow....
edit: gnnn, no idea how qmake works either. At this point I'm just doing random things like: qmake set "CONFIG=create_prl"; qmake set "CONFIG+=link_prl" - no idea if that even does anything xD
edit2: And also, I didn't manage to replace the default gridviews. Well, I can replace the file (with the one from masterwork), but the default gridviews don't change (there are no other *dtg files anywhere on the hd, still the old grid). Do I have to replace that file before compiling? Can't even import the masterwork grid due to the name conflict.
i used the library path solution they propose and it appeared to work (again, no feedback so i don't really know).Thanks, I'll try that again with an extra startup script then! Might have not worked the first time due to problems with how I set cap_sys_ptrace if I understand that doc correctly.
and simply add a default_gridviews.dtg to the /etc folder instead.Tried that... segfaults on start, couldn't figure out why so I thought I'd try the other way first. Strace said:
stat("/home/yaymeh/DF_Masterwork/Dwarf-Therapist/etc/default_gridviews.dtg", {st_mode=S_IFREG|0644, st_size=60754, ...}) = 0
lstat("/home/yaymeh/DF_Masterwork/Dwarf-Therapist/etc/default_gridviews.dtg", {st_mode=S_IFREG|0644, st_size=60754, ...}) = 0
open("/home/yaymeh/DF_Masterwork/Dwarf-Therapist/etc/default_gridviews.dtg", O_RDONLY|O_CLOEXEC) = 11
fcntl(11, F_SETFD, FD_CLOEXEC) = 0
fstat(11, {st_mode=S_IFREG|0644, st_size=60754, ...}) = 0
fstatfs(11, {f_type="EXT2_SUPER_MAGIC", f_bsize=4096, f_blocks=232154255, f_bfree=89941989, f_bavail=78143473, f_files=58974208, f_ffree=57728075, f_fsid={-1073198243, -447652414}, f_namelen=255, f_frsize=4096}) = 0
fcntl(11, F_SETLKW, {type=F_RDLCK, whence=SEEK_SET, start=0, len=0}) = 0
stat("/home/yaymeh/DF_Masterwork/Dwarf-Therapist/etc/default_gridviews.dtg", {st_mode=S_IFREG|0644, st_size=60754, ...}) = 0
fstat(11, {st_mode=S_IFREG|0644, st_size=60754, ...}) = 0
fstat(11, {st_mode=S_IFREG|0644, st_size=60754, ...}) = 0
brk(0x2b70000) = 0x2b70000
read(11, "[info]\r\nDT_version\\major=0\r\nDT_v"..., 60754) = 60754
close(11) = 0
brk(0x2b91000) = 0x2b91000
brk(0x2bb2000) = 0x2bb2000
brk(0x2bd3000) = 0x2bd3000
#### and here all the config files are read... lots other stuff... aaaand far far far below: ####
open("/proc/1147/mem", O_RDONLY|O_CLOEXEC) = 11
fcntl(11, F_SETFD, FD_CLOEXEC) = 0
fstat(11, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
lseek(11, 3707240036, SEEK_SET) = 3707240036
read(11, "\1\2\0\0\17\0\217\0\3\0\17\0\217\0\3\0\3\0\0\0\377\377\231\335\2\0\0\0\320\212\320\212"..., 16384) = 16384
close(11) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2309, ...}) = 0
write(9, "2014-M?r.-05 18:44:58.224 DEBUG\t"..., 98) = 98
open("/sys/devices/system/cpu/online", O_RDONLY|O_CLOEXEC) = 11
read(11, "0-5\n", 8192) = 4
close(11) = 0
mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f3424b77000
mprotect(0x7f3424b77000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f3425376f70, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f34253779d0, tls=0x7f3425377700, child_tidptr=0x7f34253779d0) = 1549
futex(0x2daf060, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x2daee1c, FUTEX_WAIT_PRIVATE, 1, NULL) = 0
futex(0x2daedf0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x2daebec, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2daebe8, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x2daebc0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x2daef30, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x2cd57bc, FUTEX_WAIT_PRIVATE, 1, NULL) = 0
futex(0x2cd5790, FUTEX_WAKE_PRIVATE, 1) = 0
brk(0x2dd9000) = 0x2dd9000
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2309, ...}) = 0
write(9, "2014-M?r.-05 18:44:58.270 INFO\tc"..., 112) = 112
ptrace(PTRACE_DETACH, 1147, 0, SIG_0) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2309, ...}) = 0
write(9, "2014-M?r.-05 18:44:58.271 DEBUG\t"..., 126) = 126
stat("/usr/lib/qt/plugins/imageformats/.", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
openat(AT_FDCWD, "/usr/lib/qt/plugins/imageformats", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 15
statfs("/usr/lib/qt/plugins/imageformats/", {f_type="EXT2_SUPER_MAGIC", f_bsize=4096, f_blocks=232154255, f_bfree=89941987, f_bavail=78143471, f_files=58974208, f_ffree=57728075, f_fsid={-1073198243, -447652414}, f_namelen=255, f_frsize=4096}) = 0
getdents(15, /* 5 entries */, 32768) = 144
getdents(15, /* 0 entries */, 32768) = 0
close(15) = 0
lstat("/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib", {st_mode=S_IFDIR|0755, st_size=176128, ...}) = 0
lstat("/usr/lib/qt", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib/qt/plugins", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib/qt/plugins/imageformats", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib/qt/plugins/imageformats/libqgif.so", {st_mode=S_IFREG|0755, st_size=27088, ...}) = 0
lstat("/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib", {st_mode=S_IFDIR|0755, st_size=176128, ...}) = 0
lstat("/usr/lib/qt", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib/qt/plugins", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib/qt/plugins/imageformats", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib/qt/plugins/imageformats/libqico.so", {st_mode=S_IFREG|0755, st_size=27224, ...}) = 0
lstat("/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib", {st_mode=S_IFDIR|0755, st_size=176128, ...}) = 0
lstat("/usr/lib/qt", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib/qt/plugins", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib/qt/plugins/imageformats", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/usr/lib/qt/plugins/imageformats/libqjpeg.so", {st_mode=S_IFREG|0755, st_size=39928, ...}) = 0
stat("/home/yaymeh/DF_Masterwork/Dwarf-Therapist/bin/release/imageformats/.", 0x7fff1f7fcc80) = -1 ENOENT (No such file or directory)
brk(0x2e06000) = 0x2e06000
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x38} ---
+++ killed by SIGSEGV (core dumped) +++
+program log:2014-M?r.-05 18:44:58.053 DEBUG core FOUND BEAST "0xd67df518" "Steppe Auroch Bull" [src/dfinstance.cpp:491] (load_dwarves)
2014-M?r.-05 18:44:58.172 DEBUG core FOUND BEAST "0xdcf3c2d0" "Steppe Auroch Cow" [src/dfinstance.cpp:491] (load_dwarves)
2014-M?r.-05 18:44:58.224 DEBUG core read 9 in 5560 ms [src/dfinstance.cpp:496] (load_dwarves)
2014-M?r.-05 18:44:58.270 INFO core found 9 dwarves out of 45 creatures [src/dfinstance.cpp:520] (load_dwarves)
2014-M?r.-05 18:44:58.271 DEBUG core group_by now set to 0 for view "Labors" [src/models/dwarfmodel.cpp:689] (set_group_by)
addLibraryPath("./")
into a random line in dwarftherapist.cpp near those objectoriented looking things that are commented out (one of them says "QApplication" and I read somewhere that QApplication needs a Library path added or something) - don't know if that's a good idea, but bundled libs work without Problems now. what version of DT are you using?
hrmm that's really strange, it should have been fixed quite a few versions ago, and since there are mods that use those labors/skills i'm sure it would have been reported again before now. do you have a save i can take a look at?what version of DT are you using?
Umm... I forget, I just upgraded 2-3 weeks ago though.
(It has been like that for as long as I have used DT, aka 34.7, but I always thought that something was wrong with the alchemy skill in DF not DT so I never reported it)
Found a crash bug with 21.2. If you have a item that's being worn and is made out of... I dunno, something or nothing, DT crashes upon connection to the fortress. I did this by using the following reaction:could you upload a save that i can debug with?Spoiler (click to show/hide)
That made -brigandine- instead of -waxed leather brigandine-.
In the meantime, my segfault problem somehow disappeared. No idea why.great, sounds like you're slowly but surely making progress! i know what you mean about the qt5 libraries... i actually had to get a smaller compiled version to cut out a bunch of the libraries (specifically the *.icu ones) due to the way they setup the new dependencies. for the licensing i think just leaving the licenses in their respective folders as you've described would be sufficient, but i'll admit i'm not 100% certain.
Also managed to bundle the qt5 libs. I guess the only thing left to do is the license stuff now. I just have to put a lgpl-2.1.txt and a LGPL_EXCEPTION.txt into the same directory as "libQt5Core.so.5 libQt5Gui.so.5 libQt5Script.so.5 libQt5Widgets.so.5" and leave the MIT license in the main folder alone, right? Or do I have to write that MIT does not affect qt somewhere (or the other way around)?
(edit: Noooo...! Now it's so big I keep failing to upload it with my sucky ISP T_T ...stupid qt5... *grml*)
*sigh* after a clean reinstall, the segfault is back. It happens as soon as I put the default_gridviews.dtg in the ./etc folder and DFT works again as soon as I delete that.is it a set of custom views you created, or just the packaged masterwork ones?
Have not been able to un-segfault it again (no idea what did that).
Just the one from masterwork. I think it was just a problem with an obsolete game_data.ini for masterwork though - probably noone updated the download (after I grabbed the one from windows Therapist bundled with the latest masterwork release, everything seems to be working again). Will try a clean install later to see if that was the only problem or if the segfaults return (the "animals" tab was segfaulting too and is now working again).that's quite possible, they certainly need to match, as the default views may use roles which exist in the game_data.ini.
Hey, sorry if this has been covered, but is there any chance we can group by role potential or something? Constantly switching between labour and roles is kinda annoying. What would be best and most intuitive, I think, is that, when you clicked on a job and it sorts all the people with the job enable to the top, it ranked those with no experience by potential.you'll have to correct me if i'm wrong, but i think what you're looking for is to sort by role rating. right click any labor column and choose to sort by the role rating.
you'll have to correct me if i'm wrong, but i think what you're looking for is to sort by role rating. right click any labor column and choose to sort by the role rating.Nice!
Looks like it sorts low-to-high rather than the expected high-to-low. Is that intentional?you'll have to correct me if i'm wrong, but i think what you're looking for is to sort by role rating. right click any labor column and choose to sort by the role rating.Nice!
Compiles, installs, and runs OK. I haven't had time to test much - wanted to post before I forget what I did.Well, it was fun while it lasted. I decided it was time to quit fooling with tools and get some play in, but it won't even run now. When I try to start it I get:
Building under Ubuntu 12.04 LTS / 64-bit:ok i'll see about adding that to the documentation. if i remember the ptrace/sudo stuff was there before i even forked the code, so i'm not sure how that precompiled version doesn't require it.
Followed the instructions at https://github.com/splintermind/Dwarf-Therapist/blob/master/BUILDING.txt (https://github.com/splintermind/Dwarf-Therapist/blob/master/BUILDING.txt), *except* prior to doing that I had to do:
sudo apt-add-repository ppa:ubuntu-sdk-team/ppa
sudo apt-get update
Those are necessary because they intend Qt 5 for use on more recent releases of Ubuntu. If you build other stuff that uses Qt, you may want to read up on the above before doing it.
Compiles, installs, and runs OK. I haven't had time to test much - wanted to post before I forget what I did.
I'm suprised at the requirement for running it as root. The old precompiled verision that I was using on Ubuntu 10.04 did not require it. Was use of ptrace added since the fork?
I see the suggestion for running it as a child of df, but I start df with dfhack, and ./dfhack& causes problems because you need the terminal. Any ideas for how to launch it as a child when using dfhack?
Splintermind, are you interested in talking to the dfhack people about converting it to a plug-in?
http://dffd.wimbli.com/file.php?id=8466great thanks. it looks like the sockplate isn't made of anything (no material type) which is causing the crash. i've got that fixed up, and i'm looking into the health issues you hinted at. there are some strange things going on:
Crash save.
QBackingStore::flush() called with non-exposed window, behavior is undefined
Under the Windows tab, the Dock drop-down menu does work properly.currently osx doesn't support writing any string values (nickname, custom profession, squad name, etc.) i have no idea why it's been disabled, so i'll pass it on to tareq to see if he can test it out.
it's not so much a bug, as there is literally no code there. it's a totally unsupported feature at the moment. i've asked tareq to take a look, but he hasn't been able to get working.currently osx doesn't support writing any string values (nickname, custom profession, squad name, etc.) i have no idea why it's been disabled, so i'll pass it on to tareq to see if he can test it out.
Any way I can help fix this bug?
Feature Request:hrmm i see. what color background do your regular windows tooltips have?
Can you make DT (Windows) not use the current Windows color scheme, or at least give the option to change colors in the program? I'm using a dark Windows color scheme and it makes DT nigh unusable, especially the tooltips: https://www.dropbox.com/s/3v6f6kij1xv6gb2/Screenshot%202014-03-19%2003.01.12.png
I'm playing beta build off of githubmasterwork uses a different game_data.ini and has different default views. it hasn't been updated to include the 'detachment' trait in the last update, so you'll have to manually merge the game_data.ini to get the masterwork settings and the new detachment trait. you'll also want to put the default_views.dtg from masterwork into the /etc folder to get the mw default gridviews.
and I noticed the Magic Skill is missing.
I know this is as much a mod question as it is a dwarf therapist question. But where can I change the labor id # of a labor to match the magic id # specified by mw mod?
It is the mw gridviews already (beta build of the studded with patches build).if you've already got the magic and other mw skills/professions/labors, then you're probably just missing the views
but it sounds like your saying I need to dl the standard mw mod, and pull the gamedata.ini and gridviews and put it in this build of beta?
I think what I was trying to do was add the magic skill to a custom role and I wasn't finding the magic skill inside the custom role editor. So I'm not sure what the magic skill id # is so I can manually edit the .ini file to update whatever current skill is mismapped back to what it should be (i.e. magic)I'm trying to explain to you that it's not mismapped. If you're playing masterwork, then you need the masterwork game_data and default_gridviews to see the magic skill/labor/profession. if you don't see them, you've got your files mixed up.
OK. Have u DL d beta or gold? Beta is 0 commits behind gold. Sorcery shows up in the grid views just not in role editor. So ye it is missing something. But I thought beta/gold was/is based on meph's latest release. which means his latest release is missing the INI info as well. I'm playing unmodified beta as found on github.if you look at the game_data.ini on either SWP beta or gold, you'll see they have the necessary sorcerer skill/labour/profession. i'm the one that packaged up the last 4j fixed version on dffd, and i've just checked and it's the exact same game_data.ini as SWP beta/gold.
Well that makes no sense. Have you verified you can create a custom role that includes sorcery? I'm not home so I can't check all these versions but I have unmodified beta and you say the dffd INI matches beta. So I'm guessing that the dffd ver would have the same issue. I.e. not able to create a custom role w magic skillsall the mw skills show up in the custom role editing, yes.
Recently picked up this off shoot and have been having a problem. I've used the older version of Therapist in the past before with no problems but I'm one of those that likes to make custom job sets and I've ran into some sort of bug I believe.what version of therapist are you using, and what O/S? i tried toggling multiple labors on and off and creating a 'new profession from dwarf' and the correct labors were always toggled. any other info you can provide so i can possibly duplicate the issue?
I was trying to make custom Jobs by turning on off Jobs on a dwarf right clicking on the dwarf and choosing "New Custom Profession From This Dwarf". This should have the boxes marked that are turned on the dwarf checked in the list. But when I try to do this the boxes are unmarked and then I have to dig through the list to mark what I want that job to have turned on.
Don't know if this is an active bug that other people have had problems with or not. Just decided to mention it though.
Playing on win7, masterwork DF SWP-gold release (no additional mods, changes or things like that), downloaded 2 weeks ago I'm having a really annoying issue:it's most likely an issue with materials or certain wounds. i've fixed them up in the github branch, but i haven't packaged it up yet. i'll see about getting a new version up soon.
It's now the second kobold fort where dt suddenly doesn't work anymore. Both times i were still in first spring when i wanted to reread the bolds and suddenly got the message "dwarf therapist doesn't work anymore"
On the first page of this thread i read that deleting the .ini files would help - no success
Furthermore i read that there might be an issue with items that have no material and thus i encountered that in the 'bone chipper' when using 'make armourset (bone)' produces items without any material ('dogshaped helm' instead of 'bone dogshaped helm')
oh thanks :)even forbidding them may work. the material bug is caused when they're actually wearing an item with no material type. DT now has that equipment column and when it checks a unit's inventory that's when that particular crash occurs. if it's the health/wound bug, then you'd have to heal the unit with dfhack/dfusion.
so... is there any way I (total modding noob) could get around with this?
just atomsmashing/burning/trading said material-less armor would like be to easy right?^^
I have recently been having some issues with Dwarf Therapist and cannot for the life of me figure out what is going on.what o/s? what DT version? what DF version?
I have an optimization plan that I spent some time working on and it appears to be as I want it. The only issue is that,
I select all my Dwarfs and hit the optimization plan, everything looks good so I commit, I then immediately refresh and the changes revert or go completely haywire.
Anyone have any idea what's going on? It is incredibly irritating when my Dwarfs lose almost all their labors except for one who does everything.
Makes it almost unplayable at that point.
Thanks for your time and consideration,
Laysira
Freshly compiled v21.7 on linux, using with MDF V4j, seeing odd display bug - if I choose the "Don't display children or babies" option, DT will reread and correctly display the headings (for instance, "Dwarves (7)", "Engineer Guild Dwarves (1)"), but it won't show any actual dwarves.you need to update your memory layout files to get the new offsets for the child/baby ages. copy the ini from the source's /etc folder to wherever you're running DT from.
There's no arrows to the left to expand/collapse. Unsetting the option re-reads and correctly displays all dwarves.
Freshly compiled v21.7 on linux, using with MDF V4j, seeing odd display bug - if I choose the "Don't display children or babies" option, DT will reread and correctly display the headings (for instance, "Dwarves (7)", "Engineer Guild Dwarves (1)"), but it won't show any actual dwarves.you need to update your memory layout files to get the new offsets for the child/baby ages. copy the ini from the source's /etc folder to wherever you're running DT from.
There's no arrows to the left to expand/collapse. Unsetting the option re-reads and correctly displays all dwarves.
hi splinterzthanks for the report, i'll get that fixed up for the next version.
im find mistake in game_data.ini
http://shot.qip.ru/00knEU-6tfn6TwmP/
hi splinterz, u miss value ?yep, should be the same as the one above it
http://shot.qip.ru/00knEU-6tfn6TwoE/
william:~/Applications/df_linux$ sudo setcap cap_sys_ptrace=eip ./Dwarf-Therapist/bin/release/DwarfTherapist
william:~/Applications/df_linux$ sudo ./Dwarf-Therapist/bin/release/DwarfTherapist
QProcess: Destroyed while process ("/usr/bin/env") is still running.
william:~/Applications/df_linux$ dwarftherapist
bash: /usr/bin/dwarftherapist: Permission denied
william:~/Applications/df_linux$ echo "Silly me, I needed sudo." > /dev/null
william:~/Applications/df_linux$ sudo dwarftherapist
sudo: dwarftherapist: command not found
I got a proposal, but first of all - thanks for maintaining this masterwork. Every new version provides more features than one can imagine. Suggestion is about preferences page, one thing I suggest to improve - exclude babies/childrens from it if they are excluded in options page.good suggestion. i'm going to apply it to the thoughts summary dock as well.
http://shot.qip.ru/00knEU-5tfn6Twu7/i don't understand the question.
Boulder may be ?
sorri, its correct:ah ok, got it. i should update those entries to use the built in translation stuff while i'm at it..
http://shot.qip.ru/00knEU-6tfn6Twv8/
it is not plural
I'm having some trouble running Dwarf Therapist on Ubuntu 13.10 (64 bit). I successfully built and installed it, got around Ubuntu's memory protection features (I think) by running:
...
http://shot.qip.ru/00knEU-5tfn6Tww2/did you update your memory layout files in the build directory?
I compiled code of the program and got an error at the age of dwarves. When using the finished program-there is no error.
I was playing around with giving children notes about what to do with them when they were older and became frustrated when I wanted to expand my military or pick the best choice for a profession as it made them lose their distinction as children. I am leaning towards the idea that this was intentional in order to allow for greater compatibility with mods but thought it would bring it up in case it wasn't.originally DT used the profession to determine if a unit was a child or baby, but it's already been fixed (https://github.com/splintermind/Dwarf-Therapist/commit/88cf834a5511458fea768e8fe4ea098cf4534364), as i just had another report about it a few weeks ago. i'm just making a few more fixes/changes and i should have another update out soon.
I was playing around with giving children notes about what to do with them when they were older and became frustrated when I wanted to expand my military or pick the best choice for a profession as it made them lose their distinction as children. I am leaning towards the idea that this was intentional in order to allow for greater compatibility with mods but thought it would bring it up in case it wasn't.originally DT used the profession to determine if a unit was a child or baby, but it's already been fixed (https://github.com/splintermind/Dwarf-Therapist/commit/88cf834a5511458fea768e8fe4ea098cf4534364), as i just had another report about it a few weeks ago. i'm just making a few more fixes/changes and i should have another update out soon.
hi splinters !i can't reproduce that, my testing has the correct adult/child/babies counts. are you sure you've updated the memory layout files?
im compil version 21.7, animal age not correct:
http://shot.qip.ru/00knEU-5tfn6Twws/
for dwarf it correct:
http://shot.qip.ru/00knEU-5tfn6Twwt/
u can start new game, for test, and see animals age ?i just fired up a new game and the animal ages seem ok.
where's the mwdf release? I dl'd a copy of the latest patched build and it's on 21.2it's really just two files; the game_data.ini and the default_gridviews.dtg that separates the MW version from the vanilla version. i was really hoping jodgap would keep the mw files updated as new versions of DT were released, but it was getting so far behind i figured it should be done.
update:
nevermind. found it in another MWDFT thread
http://www.bay12forums.com/smf/index.php?topic=132010.msg5218106#msg5218106
I think the version should be sourced on your first page.
http://dffd.wimbli.com/file.php?id=8537
and...
I think the owner of the dt thread for mw should be sourcing it or ceding it to yourself and be hosted on your first thread
Request regarding the labor optimizer. (It may already be in, in which case point me in the right direction?)there currently isn't a way to explicitly set a number of workers for a particular job. this was primarily to keep the optimization plans scalable, so for now at least, you'll have to tinker with the ratios, etc. to get it to the number you want.
I don't like the percentage based system for all dwarves. There are a number of labors where it instead makes sense (to me at least) to have exactly n dwarves assigned - siege operating, etc.
Is there a way to do this with DT?
I saw a script being posted that shows the momentaey, encumbered speed of a dwarf. Maybe thats worth an addition? You could see just how fast/slow your armorusers, crutchwalkers and haulers really are.yeah i've made a note of this in the past to possibly create a 'speed' column. i just haven't gotten around to testing it out yet.
returning after a long... long break, trying to stay quiet this time.The drop down list under the toolbar. Group by -> Migration wave
i can't find out how to sort/group by migration wave. it used to be a thing.
the grid values are not drawn on role ratings, but rather skill ratingsthe grid values are drawn based on the adjusted role ratings. by adjusted i mean after they've been compared to all other unit's values.
I also think these values should be available to use with scripts.this already exists to some extent. when you call d.get_role_rating the second argument is a boolean flag that indicates whether or not you want the raw role rating, or the adjusted value.
Quotethe grid values are not drawn on role ratings, but rather skill ratingsthe grid values are drawn based on the adjusted role ratings. by adjusted i mean after they've been compared to all other unit's values.
QuoteI also think these values should be available to use with scripts.this already exists to some extent. when you call d.get_role_rating the second argument is a boolean flag that indicates whether or not you want the raw role rating, or the adjusted value.
because the grid currently draws 0-100 values, drawing the raw role ratings isn't very helpful. it's basically a sea of red because the role ratings are compared to the potential maximum values in everything, so nearly every role rating has a very low rating.
(http://imgur.com/a/uYLRK)
A. this can be done, the biggest issue is that the role ratings become much more polarized. almost no units end up in the 'middle ground' where nothing is drawn for the rating. they're either very well suited for the role, or very badly suited.
B. this would probably be better for the drawing, as you'd get the middle range back, but again, you're not going to have the transparency as to what the raw role ratings are in the optimizer. the downside is that there will be a bit of a performance hit to calculate all ratings a second time.
[/url]
**as you can see in the linked images, the sorting for the global vs global adjusted remains the same, it's more to have clearer drawings.
C. this is much more difficult to do, because every role for every dwarf has to be recalculated every time you change optimization plans.
for the optimization plan it might be possible to add another column to show something that could give you an idea of the prioritized ratings.
for example showing a column that has the average role rating * priority for the role selected. it wouldn't be precise, but it would give you something of an idea of what the priority would look like.
another thing that could be done with all these different role ratings would be to add a right click sort menu to role columns to choose to sort by the raw value or whatever, although i'm not sure how different the ordering would be.
My proposal instead, to avoid (long calculations of all values displayed), as well as to avoid MOSTLY RED VALUES; is two foldi ran some tests and the extra calculations to compare roles to every other role isn't that bad, so i don't think it's too worrisome.
I can see why using it as a default view would be dumb, but I think it would be useful in planning out an optimization plan...the averages at the top of role columns might be interesting to add, regardless of what method is used, so i might play around with that. i'm not entirely convinced that displaying the type A grid is that useful to see, especially since immediately after that you state that the data you really want to see is the average. wouldn't putting that into the optimizer and/or gridview column headers work?
"hover your cursor over said grid square", and see the raw role rating and/or labor...i can add the raw rating very easily to the tooltip, but again i'm not sure how this is exactly helpful? same goes for the rating * priority. these both seem like they should be within the optimization plan, not jammed into tooltips.
build a grid view, based on an optimization planare you talking about showing columns for each labor in the optimization plan, and then showing the rating*priority in each cell?
NOTE: I LOVE THESE PICS, BUT THE ORDER isn't the same between themthe ordering is the same, they're all sorted by mining. you can see the little indicator at the top of the column. the reason in the first view might have a different sorting is that the top dwarves probably have the same rating.
If the mean is not a meaningful summary of the centre of the data, then it follows that the standard deviation, which is calculated from distances around the mean, will not be a useful summary of the spread of the values.
Therefore, if distributional assumptions (data is symmetric) can be made and there are adequate numbers in the sample to check those assumptions (as a rule of thumb it is often said that a sample size of at least 20 would be adequate), then the mean and standard deviation should be used to quantify the centre and spread of the measurements.
Alternatively, if the data distribution is skew and/or the sample size is small then it is preferable to use the median and interquartile range to summarise the measurements.
And yet there's no way to do some of the things that I would view as "basic". Locking specific dwarves so that they won't be changed. Locking dwarves in a specific profession to specific burrows/workshops. Selecting exactly N dwarves to do something, or up to N.Do it manually, give them a Zz nickname, sort alphabetically, and just don't select them for optimising. Or make them a captain without a unit and don't optimise military. They're usually your legends anyway, so display by legends/losers and only automate the losers. Lots of ways, really, if you already know what you want.
I want a dwarf on several professions. Period. But there's no way to do that. You can jack up the priority, but that doesn't always work.
A simple "Assign dwarf X to this profession. Then assign the best N of what remains to this profession. Then assign the best M% of what remains to this profession. And so on." would be much better for my use. (Especially if it was either "Exactly N", "x% of what remains", or "x% of what remains, clamped to min/max")More toggles is going to take even longer to set up, and give you more things you miss or don't set right. To some extent the automation just needs to ensure everyone stops being a peasant sooner rather than later, gets some jobs to do some of the time, and it mostly already does that if you're careful with the priorities and proportions. If you're happy with some dorfs, don't let the optimiser at them in the first place. If you want exactly six miners, pick six miners, keep them out of your military, and don't let the optimiser pick any more.
I'm not sure if it would be better for others though.
I think I can derive default priority values based on old raw role rating averagesThe roles are garbage. Useful and stuff, but I mean, technically the numbers behind them, it's just nonsense. Deriving things from garbage data is not good for you. Like, I'm tempted to mess around and do some !!SCIENCE!! on which things really do work for some of the more important jobs, but ... hasn't someone decompiled the game and could just tell us what it's using? Meh, 2014's out soon.
The roles are garbage. Useful and stuff, but I mean, technically the numbers behind them, it's just nonsense. Deriving things from garbage data is not good for you.please elaborate on this. while admittedly some of the roles could use some tweaking, saying they're generally garbage is somewhat alarming, considering the numbers behind them are based on a lot of compiled !!SCIENCE!! already done on how attributes, preferences, traits and skill rates affect jobs and combat.
So I was trying to marry off my dwarves and thought it would be nice if I could sort them into partnered and single so I came here to suggest it but Meph already did over a year ago. Is this just not possible? or is it something that may still happen in the future?i don't remember the request, i thought it was something to do with showing family trees. grouping by married vs single might be doable though..
Shearer's a fine example, with it being mentioned here. There's no role there for if the dorfs like wool, sheep, goats, alpacas, and whatever else you can shear, because no one's put that in yet. Spinner doesn't care if they like/hate wool or hair or yarn. That's free happy thoughts, even if it doesn't make them work faster. Shearing is also typically a long-distance walking job, so benefits more from agility than other jobs.QuoteThe roles are garbage. Useful and stuff, but I mean, technically the numbers behind them, it's just nonsense. Deriving things from garbage data is not good for you.please elaborate on this. while admittedly some of the roles could use some tweaking, saying they're generally garbage is somewhat alarming, considering the numbers behind them are based on a lot of compiled !!SCIENCE!! already done on how attributes, preferences, traits and skill rates affect jobs and combat.
Is there a place I can see the pre-defined roles Therapist is using?
How does it calculate the % suitability a dwarf has for a given role? Traits and stats?
The roles are in the etc/game_data.ini file.alright so you can create roles yourself for shearer and hauling. not to say that they shouldn't be included by default, but i'm not sure what this is a good example of, other than that some roles could be added to the default set.Shearer's a fine example, with it being mentioned here. There's no role there for if the dorfs like wool, sheep, goats, alpacas, and whatever else you can shear, because no one's put that in yet. Spinner doesn't care if they like/hate wool or hair or yarn. That's free happy thoughts, even if it doesn't make them work faster. Shearing is also typically a long-distance walking job, so benefits more from agility than other jobs.QuoteThe roles are garbage. Useful and stuff, but I mean, technically the numbers behind them, it's just nonsense. Deriving things from garbage data is not good for you.please elaborate on this. while admittedly some of the roles could use some tweaking, saying they're generally garbage is somewhat alarming, considering the numbers behind them are based on a lot of compiled !!SCIENCE!! already done on how attributes, preferences, traits and skill rates affect jobs and combat.
There's no roles at all for the hauling labours, when dorfs who like cages should be priority Animal Haulers, dorfs who like minecarts should be vehicle pushers, dorfs who like assorted furniture should be furniture movers, weak dorfs shouldn't bother hauling stone but fat dorfs should. They're all just lumped on young dorfs who have no other skills yet, when really some of your multi-skilled dorfs would be happier doing some of it rather than sitting on "no job".
Like I say, they're useful as is, and I do appreciate the thought and effort that's gone into producing them. But when you do fancy math on numbers that are non-calibrated guesses, what you get is even worse numbers. Normalising them so they all run 1-100 or whatever, that's got thistleknot thinking he can use them as a comparison tool when they are not comparable.
I'm using "garbage data" as a semi-technical term, eh. You can't gain real information by doing math on guesswork. You can't actually compare if someone's going to be a more effective speardorf or sworddorf because we don't even know which weapons are better (or we do, and unless you come with a like for swords or a lot of sword skill you should be a speardorf).
The goal of an ecdf is to grab the real distribution of values. So I disagree with you on garbage data. The roles are whatever a player feels important for a role.You're assuming anyone actually uses the custom role editor? I suppose I've seen a couple sets for download.
Splinter z and I just found a reliable test that let's us find skewed distributions and preserve their low values properly. I have an even better proposal that truly works of the ecdf values (adjusted for skew) to create the true percent value of any given preference or attribute within a data set.I don't wish to dissuade your enthusiasm for fiddling, but you should be aware that it's not "true" anything, because your data is something you invented. It says that in your own readme and stuff. Yes, the stats and max and prefs and traits are real sampled data from a well-defined range, but then you go Stats * A + Max_Stats * B + Prefs * C + Traits * D. The letters there represent the bits you invented by feel, which means your final numbers are garbage.
That is the purpose if statistical analysis. To quantify unknown based on samples.That's not what you're doing here. You know the true limits of Stats and Max_Stats and Skills and Traits, sampling doesn't change those. Arbitrarily multiplying a sample of those by fudge factors and then combining them into new values and changing the range to fit those new values isn't a sample of anything: it's possibly useful but it's not valid data. You're not going to discover anything, other than how easy it is to obfuscate any real information.
https://github.com/splintermind/Dwarf-TherapistThank you. I'm currently using 0.6.12, and felt it was well past time to upgrade. ;)
Download zip
if a dwarf has a preference, then it's % value = 1/(# of preferences in role - # of preferences that don't exist in population) % for each preference he has. This can be used as a simple additive/subtractive value from the role calculation used for ((attributes * weight) + (skills * weight) + (traits * weight)) / (sum of weights) [...]Ah, you've figured out something like that already.
Max-min conversion = (x - min)/(max-min)For attributes, It would be easy to scale them to the current highest, maximum highest for the species (min {5k, 2*max_starting_attribute} or just 5k. Then just give everyone an "attribute rank" of att/max, which would always be bigger than 0 (except odd cases in mods).
But a high Agility skill 15 miner will easily beat a high Strength skill 25 miner to the job and also mine faster than them until their endurance and persistence comes into play and various ones head off for a drink before finishing.I've conclusively proven through tests that speed (factring in agility, strenght and SPEED token) improves the speed of working at workshops. My conclusion is that (almost) all actions take a certain amount of "turns" and speed lowers the delay between those turns. So speed should be a factor unto itself for any role and improve all roles equally.
Like, if my best dwarf is only 37% of the estimated maximum combination of numbers, that could be handy to know.Yes, this. Also, if I have someone at 235% I don't really care about it being higer than 100%, just that this guy is really good. http://en.wikipedia.org/wiki/Udarnik (That was a joke.)
Normalising everything, it just seems like you're taking what little accurate data you do have and hiding it under more layers of ... I struggle to find a kind word.Yep. Just keep it simple and scale by (value / max_value) for every number for everyone. Aggregating this will be more accurate than the complicated thing you're trying to do. Sure, you might not like having a 100% and a 0% everywhere, but I'd find it more informative to know that all my guys kinda suck at this job, so I can pick the most useless ones or that I gave a group of good candidates, then a gap, then poor ones.
Almost each and every question I've asked on stats.stackexchange I have failed miserably to communicate properly, but I have found my own answers.Yep, this is pretty much my argument why this skews the results as compared to simple (value / max).
The problem is how ecdf returns a %. It works fine when the data is somewhat distinct uniformly. [Distinct] Meaning more or less a majority of distinct comparable values. When you have a set of data that are all the same, or a majority are the same, and if these values are 0 or if these values are either low in the distribution or high in the distribution, can have an affect on the %.
Rank() in excel returns the ordinal position of a value from a set of values in a list. If there is a tie, it returns the earliest position, and skips the next position as it has been taken up by the tied value. So... if 2 values are ranked at rank 3, the next rank displayed is rank 5. Another example is if two values are ranked at rank 36, the next rank would be 38; if 3 values were tied at rank 36, the next rank position reported would be rank 39.Well then, learn some real math software or a scripting language and stop using Excell. Matlab / Scilab / Octave should work pretty well.
It also means the labor optimizer will treat a [starting embark] population with no shearer skills (a skill only role at the time of this writing) as a 50% drawn value vs 0%. It's basically saying, this person is neither bad, nor good at this job compared to the rest of the population (as in they are all tied). This is an important distinction in the behvaior of the labor optimizer, as before no skill meant 50%. However, as soon as a dwarf starts to improve in that skill, you'll notice a 100% value and a ~<50% value for the rest. This means during labor optimization, those who are considered truly bad at a job compared to the rest of the population will be scored lowered than these neutral values. Which means the labor optimizer will assign neutral jobs before bad jobs. It also means when looking at the screen 50% = good, and your labor optimizer shouldn't be overexhausted to assign values below 50% (as in trying to assign too many labors).I find this highly undesireable behaviour and it is not how my formula worked at all. For a skill, it was supposed to give 100% only for level 20, then lower (but never quite reaching 0) values as the skill and it's learning rate drop. Then 0 for 0 skill and 0 learning rate.
When you have all your dwarfs at the same skill level (whether their all level 20 or level 0). A player would see that all his dwarfs are equal if he sees them all at 50 percent. Unfortunately this is a behaviour of normalizing. Its not bad in itself. It just means it makes no difference who you assign to the task because they are all neutral for said skill.
i may end up trying to get speed in there as well, but after looking at some dfhack scripts, it's affected by a lot of variables (attributes, terrain, syndromes, curses, and more). but maybe to start just pulling the caste's speed token would help.There should be a final speed / turn delay somewhere in DF variables, unless it is calculated on the fly by a C function and not cached somewhere in Creature's struct. The important factors are SPEED token, agility, strength, weight of worn equipment and injury (Crutch walkers are slower), so I guess it makes sense if dfhack library can't fetch it.
your skill simulation is still in there as well, so if you changed the weight on the skill rate, it actually does what it sounds like you expect: simulated fast dwarves are instantly identifiable due to higher role ratings.Good to hear that. I came here in the first place because my guys had 0 skill, but vast differences in learning rates. Come to think of it, attributes have learning and decay rates too, but those are more difficult to factor in, because attributes train slowly for everyone except military.
"A player would also see a bunch of 10% OR (in another fort) a bunch of 70% to be about equal, without turning both groups into all 50% (where 50% means different thing in each group). "
"For me scaling these guys to 0->0, 3->100% is skewed because it hides the information about how good they are objectively, not just relative to each other. "
""I was going to propose that the aggregate function raises sub-ratings to the power determined by their weights, then takes a root of that value of the power of sum of those weights, but that would promote all-arounders (must have decent skill, stats and traits), while weighted arithmethic mean is more forgiving about really poor values when others are high to compensate. Plus it's weights are much simpler to understand. Anyway, I thing I'm blabbering and I'm tired. so goodnight. "
((raw value * weight) + (simulated value * weight) ) /sumOfWeights
sudo apt-add-repository ppa:ubuntu-sdk-team/ppa
and so it begins...
and so it begins...
Indeed.and so it begins...
<3
I know 2014 just hit, but how long is it expected for the new memory maps to be figured out? Is that like a week-long deal, or is it "yeah, we can pound those out in about half an hour!" kind of a situation?
I know 2014 just hit, but how long is it expected for the new memory maps to be figured out? Is that like a week-long deal, or is it "yeah, we can pound those out in about half an hour!" kind of a situation?
patience...we know splinterz is here and active and DT is probably the most used application besides DFhack...give it a few days at least.
I'm starting to mess with custom professions, and I'm running into some difficulties.Anyone know the answer to my questions?
1) How can I delete custom professions?
2) How can I modify existing custom professions?
Basically I'm making errors, and then I have bad custom professions sitting around.
Lower right corner -> custom professions -> right-clicking to edit.I'm starting to mess with custom professions, and I'm running into some difficulties.Anyone know the answer to my questions?
1) How can I delete custom professions?
2) How can I modify existing custom professions?
Basically I'm making errors, and then I have bad custom professions sitting around.
It doesn't help that he's been working on this new version of dt at this point. However, the beta we put up on dffd 95% works... but we were making some improvements on it, and he got stuck on something today.
However, I don't really think that's the hold up.
I think he's waiting for the dfhack community to find all the offsets of the NEW vars, not really sure.
So I guess if anyone wants, populate the #dfhack irc and see if they've found any of the new memory offsets, and reporting here with the results... but i'm sure there doing their own work anyways.
Blah blah blah.
the one thing I know that will take more time is [the] new vars. Identifying the # of new var's (aka the ~60 or new trait like vars), their names, and the memory locations; would be a huge first step.
update:
not spam the thread, but here's the list [thanks to putnam]
http://www.reddit.com/r/dwarffortress/comments/2a7cbj/anyone_know_the_name_of_the_new_vars_used_in_the/
*snip*
It doesn't help that he's been working on this new version of dt at this point. However, the beta we put up on dffd 95% works... but we were making some improvements on it, and he got stuck on something today.
However, I don't really think that's the hold up.
I think he's waiting for the dfhack community to find all the offsets of the NEW vars, not really sure.
So I guess if anyone wants, populate the #dfhack irc and see if they've found any of the new memory offsets, and reporting here with the results... but i'm sure there doing their own work anyways.
Blah blah blah.
the one thing I know that will take more time is [the] new vars. Identifying the # of new var's (aka the ~60 or new trait like vars), their names, and the memory locations; would be a huge first step.
update:
not spam the thread, but here's the list [thanks to putnam]
http://www.reddit.com/r/dwarffortress/comments/2a7cbj/anyone_know_the_name_of_the_new_vars_used_in_the/
*snip*
the beta is up where? is there a link to this? me and a friend of mine are really aching for any kind of job setting that doesn't move through the df interface. I can handle it up to 30 ish dwarves, but he's already givein up on it.
Did anybody else just say "F* it", mod their dwarves to have natural skill 1 in everything, and enable starting labors on skills? At least while waiting for DT.
No specializations, but also no labor assignments needed.
After following these steps, you can then find the offsets using therapist. If it's just a minor update to DF, you can use the Create New Layout functionality from the Scan Memory screen. This will automatically scan all of the vectors and create a new memory offsets ini file for you (if all goes well.) Otherwise you have to check run.log for the new checksum, and start hand editing a new offsets ini file.
I've never played DF without therapist before, and my is it a pain, more so than not having a tileset :( I'm waiting!
I can't imagine how toady and tarn play the game.Toady is Tarn. His brother is Threetoe, or Zach.
(bzzt)
That's not as simple as just commenting out a bunch of code since the DFHack team is only about 6% done mapping out the DF data structures. DT doesn't directly depend on DFHack, but they both work through DF's data structures.(bzzt)
I don't mean to sound ungrateful, because holy shit you make this game playable. And I would be happy to help if there's anything I can help with.
It's just, I'm facing the prospect of recreating Therapist's functionality by manually entering my dwarves and their professions into a spreadsheet, and, yeah. I would love you forever for even a skeletal profession tracker right now.
They're 16% done now!That's not as simple as just commenting out a bunch of code since the DFHack team is only about 6% done mapping out the DF data structures. DT doesn't directly depend on DFHack, but they both work through DF's data structures.(bzzt)
I don't mean to sound ungrateful, because holy shit you make this game playable. And I would be happy to help if there's anything I can help with.
It's just, I'm facing the prospect of recreating Therapist's functionality by manually entering my dwarves and their professions into a spreadsheet, and, yeah. I would love you forever for even a skeletal profession tracker right now.
But I imagine a labors-only version would be feasible before 100% of the mapping is done. It might even make me feel a little better about my dorfs if I can't flip over to Roles and see that one worthless guy with red in just about every box.
*obligatory promotion of sig-linked progress bar*
Yes there is:The port number appears to be confusing the IMG tag.
(http://skycoders.no-ip.org:60001/images/progressbar.png)
You need to enable sig images.*obligatory promotion of sig-linked progress bar*
...there's no bar down there. :|
It seems to work fine for me. There's a direct link in my sig now, too.Yes there is:The port number appears to be confusing the IMG tag.
(http://skycoders.no-ip.org:60001/images/progressbar.png)
You need to enable sig images.*obligatory promotion of sig-linked progress bar*
...there's no bar down there. :|
(if people want their posts to remain in this topic, they should keep the assault jokes out of them)Thank you!
I don't think I could play fortress mode without Therapist.
I did. Not patient enough. It is difficult to get anything done.I don't think I could play fortress mode without Therapist.
You could try.
I did. Not patient enough. It is difficult to get anything done.I don't think I could play fortress mode without Therapist.
You could try.
I did. Not patient enough. It is difficult to get anything done.I don't think I could play fortress mode without Therapist.
You could try.
I'm in the same boat as you. At the beginning of the game it's quite simple to handle micromanaging every job; however, after the first wave of immigrants it's just too much. I've definitely been spoiled by DT.
The third one is between 25-40 for me nearly every time, though.I did. Not patient enough. It is difficult to get anything done.I don't think I could play fortress mode without Therapist.
You could try.
I'm in the same boat as you. At the beginning of the game it's quite simple to handle micromanaging every job; however, after the first wave of immigrants it's just too much. I've definitely been spoiled by DT.
The first wave is rarely more than 7. Same with the second.
For all of you fellas who are having trouble without DT I want to share with you a little challenge that I've had quite a bit of fun with in the past. It is simple: turn on all labors for all dwarves. It sounds crazy hectic, but there are many tools in the game that previously you may have largely ignored because of the comforts of DT. Organizing your jobs, using workshop profiles, and learning to use smaller more strategic designations and orders can make your output much stronger.I can see that working with certain jobs (I like to have hordes of untrained masons for fast walls/floors myself), but absolutely not with other. Turning on mining for all dwarves doesn't seem like it's ever going to end well, since skill is so vastly important for that job.
For all of you fellas who are having trouble without DT I want to share with you a little challenge that I've had quite a bit of fun with in the past. It is simple: turn on all labors for all dwarves. It sounds crazy hectic, but there are many tools in the game that previously you may have largely ignored because of the comforts of DT. Organizing your jobs, using workshop profiles, and learning to use smaller more strategic designations and orders can make your output much stronger.
For all of you fellas who are having trouble without DT I want to share with you a little challenge that I've had quite a bit of fun with in the past. It is simple: turn on all labors for all dwarves. It sounds crazy hectic, but there are many tools in the game that previously you may have largely ignored because of the comforts of DT. Organizing your jobs, using workshop profiles, and learning to use smaller more strategic designations and orders can make your output much stronger.
Is there an easy way to do this?
[NATURAL_SKILL:MINING:1]
[NATURAL_SKILL:WOODCUTTING:1]
[NATURAL_SKILL:CARPENTRY:1]
[NATURAL_SKILL:DETAILSTONE:1]
[NATURAL_SKILL:MASONRY:1]
[NATURAL_SKILL:ANIMALTRAIN:1]
[NATURAL_SKILL:ANIMALCARE:1]
[NATURAL_SKILL:DISSECT_FISH:1]
[NATURAL_SKILL:DISSECT_VERMIN:1]
[NATURAL_SKILL:PROCESSFISH:1]
[NATURAL_SKILL:BUTCHER:1]
[NATURAL_SKILL:TRAPPING:1]
[NATURAL_SKILL:TANNER:1]
[NATURAL_SKILL:WEAVING:1]
[NATURAL_SKILL:BREWING:1]
[NATURAL_SKILL:ALCHEMY:1]
[NATURAL_SKILL:CLOTHESMAKING:1]
[NATURAL_SKILL:MILLING:1]
[NATURAL_SKILL:PROCESSPLANTS:1]
[NATURAL_SKILL:CHEESEMAKING:1]
[NATURAL_SKILL:MILK:1]
[NATURAL_SKILL:COOK:1]
[NATURAL_SKILL:PLANT:1]
[NATURAL_SKILL:HERBALISM:1]
[NATURAL_SKILL:FISH:1]
[NATURAL_SKILL:SMELT:1]
[NATURAL_SKILL:EXTRACT_STRAND:1]
[NATURAL_SKILL:FORGE_WEAPON:1]
[NATURAL_SKILL:FORGE_ARMOR:1]
[NATURAL_SKILL:FORGE_FURNITURE:1]
[NATURAL_SKILL:CUTGEM:1]
[NATURAL_SKILL:ENCRUSTGEM:1]
[NATURAL_SKILL:WOODCRAFT:1]
[NATURAL_SKILL:STONECRAFT:1]
[NATURAL_SKILL:METALCRAFT:1]
[NATURAL_SKILL:GLASSMAKER:1]
[NATURAL_SKILL:LEATHERWORK:1]
[NATURAL_SKILL:BONECARVE:1]
[NATURAL_SKILL:AXE:1]
[NATURAL_SKILL:SWORD:1]
[NATURAL_SKILL:DAGGER:1]
[NATURAL_SKILL:MACE:1]
[NATURAL_SKILL:HAMMER:1]
[NATURAL_SKILL:SPEAR:1]
[NATURAL_SKILL:CROSSBOW:1]
[NATURAL_SKILL:SHIELD:1]
[NATURAL_SKILL:ARMOR:1]
[NATURAL_SKILL:SIEGECRAFT:1]
[NATURAL_SKILL:SIEGEOPERATE:1]
[NATURAL_SKILL:BOWYER:1]
[NATURAL_SKILL:PIKE:1]
[NATURAL_SKILL:WHIP:1]
[NATURAL_SKILL:BOW:1]
[NATURAL_SKILL:BLOWGUN:1]
[NATURAL_SKILL:THROW:1]
[NATURAL_SKILL:MECHANICS:1]
[NATURAL_SKILL:MAGIC_NATURE:1]
[NATURAL_SKILL:SNEAK:1]
[NATURAL_SKILL:DESIGNBUILDING:1]
[NATURAL_SKILL:DRESS_WOUNDS:1]
[NATURAL_SKILL:DIAGNOSE:1]
[NATURAL_SKILL:SURGERY:1]
[NATURAL_SKILL:SET_BONE:1]
[NATURAL_SKILL:SUTURE:1]
[NATURAL_SKILL:CRUTCH_WALK:1]
[NATURAL_SKILL:WOOD_BURNING:1]
[NATURAL_SKILL:LYE_MAKING:1]
[NATURAL_SKILL:SOAP_MAKING:1]
[NATURAL_SKILL:POTASH_MAKING:1]
[NATURAL_SKILL:DYER:1]
[NATURAL_SKILL:OPERATE_PUMP:1]
[NATURAL_SKILL:SWIMMING:1]
[NATURAL_SKILL:PERSUASION:1]
[NATURAL_SKILL:NEGOTIATION:1]
[NATURAL_SKILL:JUDGING_INTENT:1]
[NATURAL_SKILL:APPRAISAL:1]
[NATURAL_SKILL:ORGANIZATION:1]
[NATURAL_SKILL:RECORD_KEEPING:1]
[NATURAL_SKILL:LYING:1]
[NATURAL_SKILL:INTIMIDATION:1]
[NATURAL_SKILL:CONVERSATION:1]
[NATURAL_SKILL:COMEDY:1]
[NATURAL_SKILL:FLATTERY:1]
[NATURAL_SKILL:CONSOLE:1]
[NATURAL_SKILL:PACIFY:1]
[NATURAL_SKILL:TRACKING:1]
[NATURAL_SKILL:KNOWLEDGE_ACQUISITION:1]
[NATURAL_SKILL:CONCENTRATION:1]
[NATURAL_SKILL:DISCIPLINE:1]
[NATURAL_SKILL:SITUATIONAL_AWARENESS:1]
[NATURAL_SKILL:WRITING:1]
[NATURAL_SKILL:PROSE:1]
[NATURAL_SKILL:POETRY:1]
[NATURAL_SKILL:READING:1]
[NATURAL_SKILL:SPEAKING:1]
[NATURAL_SKILL:COORDINATION:1]
[NATURAL_SKILL:BALANCE:1]
[NATURAL_SKILL:LEADERSHIP:1]
[NATURAL_SKILL:TEACHING:1]
[NATURAL_SKILL:MELEE_COMBAT:1]
[NATURAL_SKILL:RANGED_COMBAT:1]
[NATURAL_SKILL:WRESTLING:1]
[NATURAL_SKILL:BITE:1]
[NATURAL_SKILL:GRASP_STRIKE:1]
[NATURAL_SKILL:STANCE_STRIKE:1]
[NATURAL_SKILL:DODGING:1]
[NATURAL_SKILL:MISC_WEAPON:1]
[NATURAL_SKILL:KNAPPING:1]
[NATURAL_SKILL:MILITARY_TACTICS:1]
[NATURAL_SKILL:SHEARING:1]
[NATURAL_SKILL:SPINNING:1]
[NATURAL_SKILL:POTTERY:1]
[NATURAL_SKILL:GLAZING:1]
[NATURAL_SKILL:PRESSING:1]
[NATURAL_SKILL:BEEKEEPING:1]
[NATURAL_SKILL:WAX_WORKING:1]
To Dwarves, all Dwarves will start with every skill activated. It's how I started playing until DT is fixed so that I can have a lot of Dwarves running around at once without driving myself insane from the tedium of messing with all of their jobs individually.(You might want to remove fishing, as I found out the hard way. It seems really good at distracting them, and is an especially bad idea in the evil biome I picked.)
Actually, if you just have 2-3 picks, the dwarves will never put them down and only those three will train. At least I think thats how it works. Or, you know, just let 50 untrained dwarves smash into rocks. That works well too.For all of you fellas who are having trouble without DT I want to share with you a little challenge that I've had quite a bit of fun with in the past. It is simple: turn on all labors for all dwarves. It sounds crazy hectic, but there are many tools in the game that previously you may have largely ignored because of the comforts of DT. Organizing your jobs, using workshop profiles, and learning to use smaller more strategic designations and orders can make your output much stronger.I can see that working with certain jobs (I like to have hordes of untrained masons for fast walls/floors myself), but absolutely not with other. Turning on mining for all dwarves doesn't seem like it's ever going to end well, since skill is so vastly important for that job.
Would there be away to poke around in the source code so i can see how complicated this would be to get it working again. (P.S) me and coding are not friends :-[it's not the source code that's at issue, it's the memory mapping being done so DT can know where to look to find the information. once the map is complete, pointing DT in the right direction should be trivial. last I checked, they were about 33% done with it (I think somewhere in this thread was a sig that had an image of their progress)
My sig has the link to the inage! They're at 46% now.
http://www.reddit.com/r/dwarffortress/comments/2ajsoy/dwarf_therapist_df_v04001_success/Awesome! now I have to decide if I keep playing my 0.40.02 fort without DT, or the 0.40.01 fort with DT.
This might be of interest.
Heya peeps.... Can you all stop messaging me about Dwarf Therapist please? I am NOT Splinterz..... :D
and I am sure .04 will be out within a week as well...it wont slow down until the major crashes are fixed...and luckily after that it will be save compatible...but we shall see...
That was the plan from the start. It's still reasonably likely that there will be a compatibility break when Toady adds new features like job priorities.and I am sure .04 will be out within a week as well...it wont slow down until the major crashes are fixed...and luckily after that it will be save compatible...but we shall see...
Toady said that it should be save compatible from now on, unless they find another save corruption bug that causes them to break the save support.
It's still reasonably likely that there will be a compatibility break when Toady adds new features like job priorities.This doesn't necessarily follow - Toady has added plenty of significant features in past releases without breaking compatibility, such as Minecarts (0.34.08), Grazing (0.31.19), Civ Sprawl (0.31.13), Ethics (0.28.181.39), and even Temperature (0.22.120.23b).
I usually have a few jobs I specify, near constant demand skills that basically would assure nobody would get anything else done, Mining, Woodcutting, Hunting, FISHING (dwarves would ALWAYS rather be fishing), plant gathering, and sometimes hauling are the only skills I really change. That said, changing labors is far more painless than I remember it being and later on with more migrants, you can almost just let the migrants do whatever labors they come with creating jobs based upon their skills. When it comes to professions, you can have one unassigned workshop dedicated to "get this done now" and then another workshop assigned to a specific dwarf who is a professional. Another strategy I had considered was making my original 7 be the "every labor" dwarves then let migrants take up their jobs as they come in.Actually, if you just have 2-3 picks, the dwarves will never put them down and only those three will train. At least I think thats how it works. Or, you know, just let 50 untrained dwarves smash into rocks. That works well too.For all of you fellas who are having trouble without DT I want to share with you a little challenge that I've had quite a bit of fun with in the past. It is simple: turn on all labors for all dwarves. It sounds crazy hectic, but there are many tools in the game that previously you may have largely ignored because of the comforts of DT. Organizing your jobs, using workshop profiles, and learning to use smaller more strategic designations and orders can make your output much stronger.I can see that working with certain jobs (I like to have hordes of untrained masons for fast walls/floors myself), but absolutely not with other. Turning on mining for all dwarves doesn't seem like it's ever going to end well, since skill is so vastly important for that job.
Well, I only ever used this once, so I thought I'd try again. Back to spending 40 minutes organizing every 20 minutes.Quoted for truth. Also, I love your avatar.
http://www.mediafire.com/download/1le3tt4uwkmft1h/DwarfTherapist-0.6.12.zip
It's an older and less advanced version, but it has an important advantage: it works with DF 40_03.
Woo!http://www.mediafire.com/download/1le3tt4uwkmft1h/DwarfTherapist-0.6.12.zip
It's an older and less advanced version, but it has an important advantage: it works with DF 40_03.
PRAISE ARMOK
http://www.mediafire.com/download/1le3tt4uwkmft1h/DwarfTherapist-0.6.12.zip
It's an older and less advanced version, but it has an important advantage: it works with DF 40_03.
http://www.mediafire.com/download/1le3tt4uwkmft1h/DwarfTherapist-0.6.12.zipSorg cancels Work: Interrupted by Dwarf Fortress
It's an older and less advanced version, but it has an important advantage: it works with DF 40_03.
http://www.mediafire.com/download/1le3tt4uwkmft1h/DwarfTherapist-0.6.12.zipBest. Day. Evar.
It's an older and less advanced version, but it has an important advantage: it works with DF 40_03.
Is that the same Captnduck that did the youtube series?
I just got it off Cptn Duck (http://www.reddit.com/r/dwarffortress/comments/2aprtx/more_df_bugtesting_tonight_but_i_have_a_couple_of/), but I can't imagine it being a problem.
So...
Why an older version works better than a new one? I thought it was all about finding offsets?
I only use DT for labors anyway, so the old version is perfect for me!
I'm loving having it back, it made the 37 dwarf migrant wave tolerable.
http://www.mediafire.com/download/1le3tt4uwkmft1h/DwarfTherapist-0.6.12.zipYes! Thank you! :D
It's an older and less advanced version, but it has an important advantage: it works with DF 40_03.
when your first CHIEF medical dwarf kills his patient for being pissed off at having to treat another patient.Is that actually a thing? From what I recall, ALTRUISM affects thoughts about rescuing wounded dwarves, not treating their injuries.
when your first CHIEF medical dwarf kills his patient for being pissed off at having to treat another patient.Is that actually a thing? From what I recall, ALTRUISM affects thoughts about rescuing wounded dwarves, not treating their injuries.
when your first CHIEF medical dwarf kills his patient for being pissed off at having to treat another patient.Is that actually a thing? From what I recall, ALTRUISM affects thoughts about rescuing wounded dwarves, not treating their injuries.
I've had a dwarf go insane for treating dwarf's, maybe it wasn't due to being angry at doing the job; but rather not happy at doing it, either way, the way roles are calculated is it takes into consideration preferences and traits.
Those items [aka what are defined within roles] have been based upon "science" discoveries, at least as told to me.
I can't see the status sig. Whats the present status on the memory mapping? Ooooh! D: So excited.You mean this?
"I only really used DF to check out my migrants and swap labours"
You will find out the hard way when your first CHIEF medical dwarf kills his patient for being pissed off at having to treat another patient.
I'm sure that it's come up before, but I was thinking about dfhack integration last night. It could work similarly to Isoworld or (non overlay) Stonesense, as a separate program that has information sent to it by a plugin. Some incomplete thoughtsoriginally when i started working on DT there were few offsets and it seemed like the extra overhead of adapting everything to rely on dfhack wasn't really ideal.
Advantages:
- cuts out issues with implementing found offsets; once dfhack maps are complete it just works again
- avoids issues with ptrace on Linux systems and generally looks less like malware
- having a maintained plugin is basically an API, with all the benefits of that
- generally easier to maintain
Disadvantages:
- requires either dfhack or maintaining the new system as well as the old (though dfhack is nearly standard now)
- refactoring would require a fair bit of work
- slows down this update, but makes future ones easier
Is there some earlier post laying out the reasons not to go down this route? If not, what are they? Or would this be considered?
oh they're not all based on !!SCIENCE!! the community has performed. it was a while ago that i made that role, but i'd read through a bunch of threads on what traits people used for what jobs and why. the general consensus favoured altruism, sympathy and possibly self-discipline for the chief medical dwarf. however the effects of most of the personality traits were nebulous at best, but thankfully you can override the default roles right? :Dwhen your first CHIEF medical dwarf kills his patient for being pissed off at having to treat another patient.Is that actually a thing? From what I recall, ALTRUISM affects thoughts about rescuing wounded dwarves, not treating their injuries.
I've had a dwarf go insane for treating dwarf's, maybe it wasn't due to being angry at doing the job; but rather not happy at doing it, either way, the way roles are calculated is it takes into consideration preferences and traits.
Those items [aka what are defined within roles] have been based upon "science" discoveries, at least as told to me.
Will there be osx v.22.0 release too?only if some kind osx soul compiles the source and packages it up :-\
Will there be osx v.22.0 release too?only if some kind osx soul compiles the source and packages it up :-\
now, onward to DF2014!Huzzah!
i honestly don't know, i've never built the OSX version myself. Tareq (https://github.com/tareqak) was the one who was compiling and package things for a short while, so if you run into any trouble i'd ask him.Will there be osx v.22.0 release too?only if some kind osx soul compiles the source and packages it up :-\
Hmm. Any guide for idiots how to build it? I'm setting up a 10.9 testing os anyway, might as well install xcode too. Other dependencies beside qt5?
there is a pdf manual included in the zip files that does a pretty good job. i seem to have left it out of the github repo though.now, onward to DF2014!Huzzah!
Is there going to be a how-to for us n00bs who only use DT for labors because we didn't know it did all that other stuff?
now, onward to DF2014!Huzzah!
Is there going to be a how-to for us n00bs who only use DT for labors because we didn't know it did all that other stuff?
A question regarding Dwarf Therapist...not yet, but i'll see about adding it
Can I filter/search/find any or all Rusty or V. Rusty skills with Dwarf Therapist?
I'd hate for a dwarf to lose one of his/her (good) skills cause (s)he forgot to use it in due time. xD
A question regarding Dwarf Therapist...not yet, but i'll see about adding it
Can I filter/search/find any or all Rusty or V. Rusty skills with Dwarf Therapist?
I'd hate for a dwarf to lose one of his/her (good) skills cause (s)he forgot to use it in due time. xD
I'll try to make an OS X build tonight, if nobody else has.Thx, I ran into a hardware error, so project postponed. :(
well i've hesitantly put up a 40.03 version. i think i've run all the df-structures stuff properly and nothing has exploded on me yet, so.. there's that. any old views and roles etc may break things, so i'd recommend backing up and starting with a fresh Dwarf Therapist.ini.Hail to the victorious hero.
Download (http://dffd.wimbli.com/file.php?id=9040)
for now i've grouped the goals and beliefs in with the traits to create a rather large personality section in the tooltips. the dwarf details pane also lumps them in together and color codes them so they should stand out. splitting the trait descriptions from the rest in the tooltip will probably be a good idea (if people just want to see goals/beliefs). otherwise, i don't have any of the race/civs beliefs/values loading, nor comparing to check for conflicting beliefs with individual dwarves.
2014-Jul-17 16:24:49.241 INFO core adding valid layout "v0.40.03" "0xd3460da2" [src/dfinstance.cpp:118] (DFInstance)
2014-Jul-17 16:24:49.287 INFO core DF's checksum is: "0xdd544df6" [src/dfinstance.cpp:1441] (get_memory_layout)
2014-Jul-17 16:24:49.287 INFO core Could not find layout for checksum "0xdd544df6" [src/dfinstance.cpp:1448] (get_memory_layout)
2014-Jul-17 16:26:21.057 ERROR core "unable to identify version from checksum:" "0xdd544df6" [src/dfinstance.cpp:1521] (layout_not_found)
Did you rebuild anything for the Linux memory layout? I see the Linux memory layout is mapped, according to the memory map file. I'm using the version of 0.40.03 straight from the front page, and I'm getting non-matching version errors.ah no, that layout file is actually still for 40.01, things just got mixed up in the upload. offsets for 40.03 still need to be found for linux/osx.
Do the old instructions (from 2010) on the wiki still apply to mapping new layouts?
From the log (grepping for the word layout):Code: [Select]2014-Jul-17 16:24:49.241 INFO core adding valid layout "v0.40.03" "0xd3460da2" [src/dfinstance.cpp:118] (DFInstance)
2014-Jul-17 16:24:49.287 INFO core DF's checksum is: "0xdd544df6" [src/dfinstance.cpp:1441] (get_memory_layout)
2014-Jul-17 16:24:49.287 INFO core Could not find layout for checksum "0xdd544df6" [src/dfinstance.cpp:1448] (get_memory_layout)
2014-Jul-17 16:26:21.057 ERROR core "unable to identify version from checksum:" "0xdd544df6" [src/dfinstance.cpp:1521] (layout_not_found)
Errors aside, I'm really glad to see that there is a release for 0.40.03 already. Rock on for continuing to work on this excellent fork of an excellent utility.
2014-Jul-18 14:03:43.061 INFO core Connection to DF version "v0.40.01 (graphics)" established. [src\mainwindow.cpp:335] (connect_to_df)
2014-Jul-18 14:03:43.076 WARNING core vector at "0x020aa9d4" has over 5000 entries! ( 25759718 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
I'm trying to use DT 23.0 with DF 40.01, using the ini I found at https://gist.github.com/kiryl/0a99fdbd70fede3064c6.i've finally done away with an additional offset (-4) that was applied to every vector address in windows, so old layouts won't work with the latest version. i really didn't intend to support 40.01 since it's so broken, but i happened to find one i'd generated yesterday before the 40.03 offsets. try this (untested) layout (https://github.com/splintermind/Dwarf-Therapist/blob/7d18082255855d6fa25602a29371ab0bfda73d8d/etc/memory_layouts/windows/v0.40.01_graphics.ini).
But DT always crashes at start with this error:Code: [Select]2014-Jul-18 14:03:43.061 INFO core Connection to DF version "v0.40.01 (graphics)" established. [src\mainwindow.cpp:335] (connect_to_df)
2014-Jul-18 14:03:43.076 WARNING core vector at "0x020aa9d4" has over 5000 entries! ( 25759718 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
Apparently it is trying to load huge numbers of entries, over 25 million?
2014-Jul-18 15:33:33.219 INFO core Connection to DF version "v0.40.01 (graphics)" established. [src\mainwindow.cpp:335] (connect_to_df)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa9d0" has over 5000 entries! ( 1014274559 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa9f0" has over 5000 entries! ( 1049111560 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020b0430" has over 5000 entries! ( 1048397678 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020b15f0" has over 5000 entries! ( 1010619525 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa7d0" has over 5000 entries! ( 1047227577 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa7e0" has over 5000 entries! ( 1010422848 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa7f0" has over 5000 entries! ( 1047331942 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa800" has over 5000 entries! ( 1047331958 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa920" has over 5000 entries! ( 1016572235 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa930" has over 5000 entries! ( 1047331982 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa940" has over 5000 entries! ( 1014321115 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa950" has over 5000 entries! ( 1014807124 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa960" has over 5000 entries! ( 1047228907 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa970" has over 5000 entries! ( 1014273263 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa980" has over 5000 entries! ( 1010439079 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa990" has over 5000 entries! ( 1010487644 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa9a0" has over 5000 entries! ( 1047729037 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa9b0" has over 5000 entries! ( 1010438887 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fadfd0" has over 5000 entries! ( 652972795 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae030" has over 5000 entries! ( 676324707 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae750" has over 5000 entries! ( 682292993 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae760" has over 5000 entries! ( 682298897 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae770" has over 5000 entries! ( 650947358 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae060" has over 5000 entries! ( 651645186 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae0a0" has over 5000 entries! ( 650693835 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae270" has over 5000 entries! ( 652536518 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae0b0" has over 5000 entries! ( 651251334 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae7e0" has over 5000 entries! ( 992933866 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020b0400" has over 5000 entries! ( 1014971044 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020b0410" has over 5000 entries! ( 1047851053 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.255 WARNING core vector at "0x020aa68c" has over 5000 entries! ( 1048287584 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.255 WARNING core vector at "0x020aa6ac" has over 5000 entries! ( 1015764749 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.255 WARNING core vector at "0x020aa77c" has over 5000 entries! ( 997883959 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
Still crashes, but faster.ah sorry about that, i adjusted the vectors the wrong way (lack of coffee, certainly). try this one. (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/3def0bc2f3125a30764476ddbf1b4cb3f099e475/etc/memory_layouts/windows/v0.40.01_graphics.ini)
But there seems to be even more offsets, that have huge numbers in them:Code: [Select]2014-Jul-18 15:33:33.219 INFO core Connection to DF version "v0.40.01 (graphics)" established. [src\mainwindow.cpp:335] (connect_to_df)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa9d0" has over 5000 entries! ( 1014274559 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa9f0" has over 5000 entries! ( 1049111560 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020b0430" has over 5000 entries! ( 1048397678 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020b15f0" has over 5000 entries! ( 1010619525 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa7d0" has over 5000 entries! ( 1047227577 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa7e0" has over 5000 entries! ( 1010422848 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.239 WARNING core vector at "0x020aa7f0" has over 5000 entries! ( 1047331942 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa800" has over 5000 entries! ( 1047331958 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa920" has over 5000 entries! ( 1016572235 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa930" has over 5000 entries! ( 1047331982 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa940" has over 5000 entries! ( 1014321115 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa950" has over 5000 entries! ( 1014807124 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa960" has over 5000 entries! ( 1047228907 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa970" has over 5000 entries! ( 1014273263 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa980" has over 5000 entries! ( 1010439079 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa990" has over 5000 entries! ( 1010487644 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa9a0" has over 5000 entries! ( 1047729037 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020aa9b0" has over 5000 entries! ( 1010438887 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fadfd0" has over 5000 entries! ( 652972795 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae030" has over 5000 entries! ( 676324707 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae750" has over 5000 entries! ( 682292993 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae760" has over 5000 entries! ( 682298897 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae770" has over 5000 entries! ( 650947358 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae060" has over 5000 entries! ( 651645186 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae0a0" has over 5000 entries! ( 650693835 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae270" has over 5000 entries! ( 652536518 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae0b0" has over 5000 entries! ( 651251334 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x01fae7e0" has over 5000 entries! ( 992933866 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020b0400" has over 5000 entries! ( 1014971044 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.240 WARNING core vector at "0x020b0410" has over 5000 entries! ( 1047851053 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.255 WARNING core vector at "0x020aa68c" has over 5000 entries! ( 1048287584 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.255 WARNING core vector at "0x020aa6ac" has over 5000 entries! ( 1015764749 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
2014-Jul-18 15:33:33.255 WARNING core vector at "0x020aa77c" has over 5000 entries! ( 997883959 ) [src\dfinstancewindows.cpp:87] (enumerate_vector)
Is the linux memory layout still waiting on DFHack or can some kind soul upload the ini?kiryl just sent me a pull request for a 40.03 memory layout! (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/etc/memory_layouts/linux/v040.03.ini)
Why is there no dedicated Potter or Glazer role? There are material preferences for stoneware, porcelain and earthenware as well are both glaze types.probably just an oversight when i created the first roles. anything that didn't seem verified on the wiki i may have passed over. with the new personalities i'll be going through them all again anyway. in the meantime though, you can still create your own roles for those jobs.
The wiki says that attribute use for each skill is unresearched, not that it doesn't exist.
How much progress has been made for Linux and Mac Os 10?40.01 and 40.03 seem to be stable for linux. the osx ones should be able to be used by just updating the hash.
I extracted the linux DT from the lazy newb pack for 40.02 and got it to run with the posted layout here.the lnp DT is the old version from a few years ago. (https://code.google.com/p/dwarftherapist/)
Where is the LNP DT coming from?
I wanna include it in my autoupdater and share it with all of you!
Alright cool. One last thing, you might wanna remove Singing metal, Rusted metal, Multicolored metal, etc. as it's skewing the default metalworking roles.Why is there no dedicated Potter or Glazer role? There are material preferences for stoneware, porcelain and earthenware as well are both glaze types.probably just an oversight when i created the first roles. anything that didn't seem verified on the wiki i may have passed over. with the new personalities i'll be going through them all again anyway. in the meantime though, you can still create your own roles for those jobs.
The wiki says that attribute use for each skill is unresearched, not that it doesn't exist.
as it's skewing the default metalworking roles.?
Quoteas it's skewing the default metalworking roles.?
I found that gem cutter was "skewed" towards gem cutters, and it was due to a lot of dwarfs (all) had a preference for a gem
same went with some other role, not sure what it was.
Is this the "skewed" behaviour your talking about?
yeah i see what you mean, i'll remove that.Quoteas it's skewing the default metalworking roles.?
I found that gem cutter was "skewed" towards gem cutters, and it was due to a lot of dwarfs (all) had a preference for a gem
same went with some other role, not sure what it was.
Is this the "skewed" behaviour your talking about?
"Multicolored metal" aren't usable in fortress mode, so it should ignore this preference when calculating roles. It shouldn't show dwarfs with preferences of these types of metals as viable metalcrafters, weaponsmiths, armorsmiths, etc.
-snip-How much progress has been made for Linux and Mac Os 10?40.01 and 40.03 seem to be stable for linux. the osx ones should be able to be used by just updating the hash.
-snip-
Tested Linux 40.03, everything is running smoothly, no bugs so far.
Tested Linux 40.03, everything is running smoothly, no bugs so far.
Hmm. When I fire up Dwarf Therapist, DF stops updating the window and just goes blank. I'm running Debian Jessie, and I did notice that even though I followed the instructions in BUILDING.txt, there's no "dwarftherapist" script in /usr/bin, just the DwarfTherapist binary. Did I do something wrong here?
After I got 33 Dwarves, Dwarf Therapist started crashing when connecting to Dwarf Fortress. I looked in the log file and it says there are dozens of squads active, yet this is simply not the case. I do not have any squads at the moment.it would appear the aptly named 'Asshole' Cattentosed in your fort somehow belongs to a squad that doesn't exist (or is an old squad?). until i get a fix out for DT, you might be able to work around the issue by assigning and then removing him from a new squad in game, and then try firing up DT.
I've included my DF40.03 install and my DT23.0 install in their entirety if you'd like to investigate the problem.
http://www.mediafire.com/download/d8r88kvrhdsioa9/Debug_Octo's_crashing_DT23.0_&_Dwarf_Fortress_40.03.zip
I run Windows 7 Home Premium 64bit and have an Intel i3570k 3.40ghz processor if that helps any. Feel free to email me if you need more info: debugoctopus@gmail.com
40.01 and 40.03 seem to be stable for linux. the osx ones should be able to be used by just updating the hash.
the following offsets should work for os x. They are just linux offsets with a corrected checksum for 0.40.03. They shortly worked for me but I cant get them to work anymore with the old DT version.the global [addresses] section may be different and have to be verified. i don't remember if those were identical between osx and linux, but i don't believe they were. this is the df-structures guide to reset and find the global offsets. (https://github.com/DFHack/df-structures/blob/master/README.UPDATE)
How did you fix the Qt setuid issues?Spoiler (click to show/hide)
So... I'm maybe... dumb... but I can't figure out how to see Strength and Dexterity, etc. any more. I'm certain it used to be there somewhere... I've tried searching for a while, but I keep finding either really old posts from like 2012, or new stuff that doesn't have anything to do with the physical attributes.
Can anyone tell me what I'm missing?
I've got a build that works and deals with Qt's setuid defenses, but I need to figure out the offsets now. The memory scanner isn't giving me any love, I'm not sure if it's up-to-date with v40 anyway.
I understand that the Windows offsets were derived from the df-structures work. Could someone give me a bit of detail on that process so I could repeat it for OS X?
I've got a build that works and deals with Qt's setuid defenses.Can you post the changes somewhere? My build refuse to run because of setuid.
diff --git a/src/dfinstanceosx.mm b/src/dfinstanceosx.mm
index 919846a..3f9319f 100644
--- a/src/dfinstanceosx.mm
+++ b/src/dfinstanceosx.mm
@@ -381,6 +381,10 @@ bool DFInstance::authorize() {
dir.cdUp();
chdir(dir.absolutePath().toLocal8Bit());
fflush(stdout);
+
+ // Authorization for remote memory access on OS X trips Qt's setuid detection
+ QCoreApplication::setSetuidAllowed(true);
+
return true;
}
the following offsets should work for os x. They are just linux offsets with a corrected checksum for 0.40.03. They shortly worked for me but I cant get them to work anymore with the old DT version.the global [addresses] section may be different and have to be verified. i don't remember if those were identical between osx and linux, but i don't believe they were. this is the df-structures guide to reset and find the global offsets. (https://github.com/DFHack/df-structures/blob/master/README.UPDATE)
How did you fix the Qt setuid issues?Spoiler (click to show/hide)
I noticed that Running a large world made DT read and update dwarf data much much slower now compared to a pocket world. It takes maybe 20 seconds to update dwarves on my Wine setup for a large world. A pocket world is instant as before.can you check the log file and see if maybe it's loading a lot of squads? i'm testing this now to see if i can duplicate it.
I seem to have broken Dwarf Therapist 23.0...if you just got migrants, it's probably the same issue as above with a squad. try adding and removing the new migrants to a squad.
The last thing I did was enable the traits tab and reload my dwarves. It did a CTD, and keeps doing that on reload.
I have tried reinstalling.
I have tried removing the .ini from my appdata folder. (Dang if that thing isn't hard to find :P)
I have tried removing the .ini from appdata AND reinstalling.
Any further options? Is there some other file somewhere that I am missing? Perhaps one of the files in the main DF folder or something?
EDIT:
Further info...
I have attempted to run 0.6.12 and it works fine. So it's only the branch version that is broken.
It also loads if my fortress isn't running.
Windows crash log:
Problem Event Name: APPCRASH
Application Name: DwarfTherapist.exe
Application Version: 0.0.0.0
Application Timestamp: 53c830c5
Fault Module Name: DwarfTherapist.exe
Fault Module Version: 0.0.0.0
Fault Module Timestamp: 53c830c5
Exception Code: c0000005
Exception Offset: 0016ed82
OS Version: 6.1.7601.2.1.0.256.48
Locale ID: 1033
Additional Information 1: 0a9e
Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
Additional Information 3: 0a9e
Additional Information 4: 0a9e372d3b4ad19135b953a78882e789
And I have to attach the run.log because it's just too large. (even in spoilers)
https://drive.google.com/file/d/0B6E_9hy-_29ta3QxOHhTcGE0Z1U/edit?usp=sharing (https://drive.google.com/file/d/0B6E_9hy-_29ta3QxOHhTcGE0Z1U/edit?usp=sharing)
Another change I just realized: I had just had a wave of migrants come in. Could it have gotten overloaded?
I got the winedump part sorted out, but didn't have df_misc checked out on the plane. That'll be the next step. I have a Linux VM to hand at home if I end up needing to go that route, but I'm not home until Tuesday.this is the most recent make-dt.pl (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/make-dt.pl)
Splinter: is the make-dt.pl in df-structures up to date, in terms of which symbols map to which of the global addresses? I'm not sure how else to tell which addresses to use.
EDIT:Woops. Wrong save. The right one has a log too big to fit in a post.oh wow, that's a lot of squads! that's most likely the issue as it's building the uniforms and everything for every squad found there. i noticed this in one of my recent games as well and i've already implemented a fix (if that's the only cause).
Here's the right log:
http://pastebin.com/8zSvUX8P
Yeah there are a lot of squads found.
this is the most recent make-dt.pl (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/make-dt.pl)
Anybody had any luck getting DT to work on 40.04? Doesn't seem to for me, but won't promise that I'm not doing something wrong.you'll need new memory layout files. (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts) thankfully the df-structures/hack people are blazing fast!
@necrobear
Assign them to squads, then un assign them. That should fix it.
oh neat, 40_04 layouts already out? Thank you!should be fixed up now. the year and tick had been swapped which was causing the incorrect ages. the body sizes look ok though. ~60,000cm3 is a normal size for a dwarf.
Looks like something is wrong with the age and size in the memory layouts for Linux. All my dwarves are ridiculously huge and have negative ages.
(http://i.imgur.com/liEY1h3.png)
This has probably been asked before, but are you planning to make DT work with DF 40.02?
Oh, do we need an OS X build of the latest v34 release? I could do that more easily!
This has probably been asked before, but are you planning to make DT work with DF 40.02?
Please try reading the posts before and visit the dffd site of DT memory layouts.
The DT update was out only few hours after DF update and is available for 40.04.
Oh, do we need an OS X build of the latest v34 release? I could do that more easily!
After your help I managed to get one running. It's good to be able to build things, thx. :)
All I need for v23 is the offsets...
@splinterz: I think it's best if you upload the new version to dffd, though if you want me to I'll upload it.
DT osx v22 for df34.11 (https://dl.dropboxusercontent.com/u/36491887/DwarfTherapist.dmg)
tested on 10.7.5 and 10.9.3
thanks Fricy. i've uploaded it to the current OSX listing on dffd. (http://dffd.wimbli.com/file.php?id=8418)Oh, do we need an OS X build of the latest v34 release? I could do that more easily!
After your help I managed to get one running. It's good to be able to build things, thx. :)
All I need for v23 is the offsets...
@splinterz: I think it's best if you upload the new version to dffd, though if you want me to I'll upload it.
DT osx v22 for df34.11 (https://dl.dropboxusercontent.com/u/36491887/DwarfTherapist.dmg)
tested on 10.7.5 and 10.9.3
that's correct, 40.02 was passed over. i honestly wouldn't have added 40.01 either due to how broken it is, but those offsets happened to already be there.This has probably been asked before, but are you planning to make DT work with DF 40.02?
Please try reading the posts before and visit the dffd site of DT memory layouts.
The DT update was out only few hours after DF update and is available for 40.04.
(http://i.imgur.com/gYt5qS4.png)
Dwarf Therapist v.23.1 works with DF 40.01, 40.03, 40.04, but does not work with 40.02.
Quietust looks to be making progress on the offsets, but until he pushes his fix for world at least I can't do much but stay out of his way. (Which arguably will be my biggest contribution anyway, I suspect.)the custom groups concept sounds interesting. you'll probably have to add the offset to DT for world.cur_savegame.save_dir from df-structure's globals.csv to get the current saved game directory. i have no idea about the ^M thing.
I have a local patch that I've been working on (against the 34.11 version) that lets me assign dwarves to any number of custom groups. I can have haulers or craftsdwarves or unassigned militia or such, and filter on them. It's working pretty well as far as I can tell. I need to do two things now: save the group definitions (I can copy whatever custom profs do), and save the group<->dwarf membership information per-save. Is there a way to get the path to the currently loaded save? I can do it from dfhack (df::global::world->cur_savegame.save_dir), but I don't see how I would do it from within DT itself.
After that I might like to do burrow stuff, which I guess is more offset wrangling...
(QtCreator wants to put ^Ms at the end of all the lines it touches, which makes me somewhat cross. Anyone know how to prevent that?)
DT .23 (and .23.1) is crashing on my DF40.04 save (started in DF40.03)the squad crash should have been fixed with 23.1, so you might have found another problem due to the reclaim. best to upload the save if possible so i can take a look.
do you want to take a look? if so, where should I upload my save?
just read back a bit, maybe it's the migrants/squads thing.
how would I find which dwarfs are migrants/causing the problem so I can remove and add them to a squad?
maybe I should just remove everyone and re-add them.
edit again:
re-read all those posts about the crash and realised it's caused by a new migrant who's not yet been put in a squad, and I need to find that dwarf and put him in a squad in this fortress.
what am I looking for in the DF run.log? from what I understand from the other posts, he's a dwarf from a prior fort (maybe this one from before I abandoned, then reclaimed?) who was in a squad back then.
Howdy! Thanks for keeping Dwarf Therapist available to the public splinterz, would be lost without it.i'm not sure i follow. it's not sorting by the titles, it's actually sorting by the migration wave (100000 * arrival_year + 10000 * arrival_season + 100 * arrival_month + arrival_day). an example with my current fort:
I noticed that when sorting by migration wave it's ordered by season first, and then year. "Arrived in SEASON of the year NUMBER" and I was wondering if it was possible to get it to show in chronological order (i.e. "Arrived in year NUMBER of SEASON. Although autumn would still come before Spring and Summer in this ordering) It's nice to have the additional information, but I actually miss the chronological order of the original's simple "migration wave X".
Morning Splinterz. Love the new DT. on 23.1 I have developed an odd bug where it does not recognise any squad at all? Could it be an unintended consequence of the too many squads fix?indeed, i've broken it completely!
Howdy! Thanks for keeping Dwarf Therapist available to the public splinterz, would be lost without it.i'm not sure i follow. it's not sorting by the titles, it's actually sorting by the migration wave (100000 * arrival_year + 10000 * arrival_season + 100 * arrival_month + arrival_day). an example with my current fort:
I noticed that when sorting by migration wave it's ordered by season first, and then year. "Arrived in SEASON of the year NUMBER" and I was wondering if it was possible to get it to show in chronological order (i.e. "Arrived in year NUMBER of SEASON. Although autumn would still come before Spring and Summer in this ordering) It's nice to have the additional information, but I actually miss the chronological order of the original's simple "migration wave X".
Year 5 - Spring
Year 5 - Summer
Year 5 - Autumn
Year 6 - Spring
Year 6 - Summer
and then sorting the other direction reverses the list. what sorting would you expect to see in this example?
it sounds like it may be an issue with how it's sorting immediately after you choose a group? i've been able to reproduce that (choosing a group keeps the last sort order, instead of re-sorting based on the group aggregate values)Howdy! Thanks for keeping Dwarf Therapist available to the public splinterz, would be lost without it.i'm not sure i follow. it's not sorting by the titles, it's actually sorting by the migration wave (100000 * arrival_year + 10000 * arrival_season + 100 * arrival_month + arrival_day). an example with my current fort:
I noticed that when sorting by migration wave it's ordered by season first, and then year. "Arrived in SEASON of the year NUMBER" and I was wondering if it was possible to get it to show in chronological order (i.e. "Arrived in year NUMBER of SEASON. Although autumn would still come before Spring and Summer in this ordering) It's nice to have the additional information, but I actually miss the chronological order of the original's simple "migration wave X".
Year 5 - Spring
Year 5 - Summer
Year 5 - Autumn
Year 6 - Spring
Year 6 - Summer
and then sorting the other direction reverses the list. what sorting would you expect to see in this example?
I've had this to i went to sort after migration wave expecting the last one to be show furthest down the list instead it ended up second to the top clicking to sort by name fixed it but before that it was sorted like this
spring 1
spring 2
summer 1
Autumn 1
winter 1
DT .23 (and .23.1) is crashing on my DF40.04 save (started in DF40.03)the squad crash should have been fixed with 23.1, so you might have found another problem due to the reclaim. best to upload the save if possible so i can take a look.
do you want to take a look? if so, where should I upload my save?
just read back a bit, maybe it's the migrants/squads thing.
how would I find which dwarfs are migrants/causing the problem so I can remove and add them to a squad?
maybe I should just remove everyone and re-add them.
edit again:
re-read all those posts about the crash and realised it's caused by a new migrant who's not yet been put in a squad, and I need to find that dwarf and put him in a squad in this fortress.
what am I looking for in the DF run.log? from what I understand from the other posts, he's a dwarf from a prior fort (maybe this one from before I abandoned, then reclaimed?) who was in a squad back then.
that seems to be a shortcut to the zip, rather than the zip itself ;)DT .23 (and .23.1) is crashing on my DF40.04 save (started in DF40.03)the squad crash should have been fixed with 23.1, so you might have found another problem due to the reclaim. best to upload the save if possible so i can take a look.
do you want to take a look? if so, where should I upload my save?
just read back a bit, maybe it's the migrants/squads thing.
how would I find which dwarfs are migrants/causing the problem so I can remove and add them to a squad?
maybe I should just remove everyone and re-add them.
edit again:
re-read all those posts about the crash and realised it's caused by a new migrant who's not yet been put in a squad, and I need to find that dwarf and put him in a squad in this fortress.
what am I looking for in the DF run.log? from what I understand from the other posts, he's a dwarf from a prior fort (maybe this one from before I abandoned, then reclaimed?) who was in a squad back then.
ok I uploaded it to dropbox: https://www.dropbox.com/s/bdai61weo2erdj8/region1.zip%20-%20Shortcut.lnk
DT was working post reclaim (I think I wasn't even using DT before the reclaim anyway)
other than using Phoebus graphics set there's no mods.
Code: [Select]william:~/Applications/df_linux$ sudo ./Dwarf-Therapist/bin/release/DwarfTherapist
QProcess: Destroyed while process ("/usr/bin/env") is still running.
I also briefly saw the window open and close very quickly.
does running the dwarftherapist script in /usr/bin have the same problem?Code: [Select]william:~/Applications/df_linux$ sudo ./Dwarf-Therapist/bin/release/DwarfTherapist
QProcess: Destroyed while process ("/usr/bin/env") is still running.
I also briefly saw the window open and close very quickly.
Same here. Using Mint 17 which is a fork of Ubuntu Trusty. My (self-built) Dwarf Therapist is in /opt and owned by root, if that makes a difference. It makes no difference whether I run it as me or as root. I've enabled ptrace - the only error is this "Destroyed" message.
does running the dwarftherapist script in /usr/bin have the same problem?Um, there is no such script. I installed it under /opt.
Calling DwarfTherapist from /usr/share/dwarftherapist solved this for me, trying to invoke it from any other folder results in that problem. There's a shell script inside the dist folder(in the DT source tree) which handles that for you.Code: [Select]william:~/Applications/df_linux$ sudo ./Dwarf-Therapist/bin/release/DwarfTherapist
QProcess: Destroyed while process ("/usr/bin/env") is still running.
I also briefly saw the window open and close very quickly.
Any progress on a linux/OSX release? I *suppose* I could find the source and build it myself, but I only sort of know what I'm doing. No rush anyway, no fortress has even hit 20 dwarves yet.
Oh, I see. That actually makes a lot of sense. Well. I will be patient and appreciative of all the good work they do then.Any progress on a linux/OSX release? I *suppose* I could find the source and build it myself, but I only sort of know what I'm doing. No rush anyway, no fortress has even hit 20 dwarves yet.
I think linux should be good now. OS X release is waiting on the memory layout, which the folks at DFHack are working on. The current version of DT can be compiled on Mac, but won't recognize the DF app running.
DT crashing save:you found a new (un)happiness thought, congratulations! one of your dwarves had 'suffered through his spouse's miscarriage recently'. this is fixed in the new version.
https://www.dropbox.com/s/bgvelq88rptxrjz/region1.zip
Was using Therapist and having a good time. When i got to around 60 dwarves Therapist just suddently stopped working. I've tried closing and rebooting but nothing works. Also tried to retire fortress then unretire it. (It still works when i start a new game)see if it's still crashing on the last (23.2) version.
new version is up on dffd. (http://dffd.wimbli.com/file.php?id=9040)
Patch Notes
- adjusted preferences to even out roles with many preferences vs those with very few
- conflicting traits and beliefs are now shown in the dwarf detail pane (highlighted in red) along with their full descriptions of the conflict
- fixed active squads not showing up
- removed the background colors and used them for the text color in the dwarf details pane (rust, moodable skill, beliefs, goals) to prevent a rainbow atrocity
- trait cells are now highlighted with a dynamic opacity border (darker means more conflicts) if they conflict with a cultural belief
- changing the group by now resets the sorting to the group's aggregate values, rather than keeping the previous sort method
- added a new thought, and support for unknown thoughts
DT crashing save:you found a new (un)happiness thought, congratulations! one of your dwarves had 'suffered through his spouse's miscarriage recently'. this is fixed in the new version.
https://www.dropbox.com/s/bgvelq88rptxrjz/region1.zipWas using Therapist and having a good time. When i got to around 60 dwarves Therapist just suddently stopped working. I've tried closing and rebooting but nothing works. Also tried to retire fortress then unretire it. (It still works when i start a new game)see if it's still crashing on the last (23.2) version.
I have a "bug"?
when i use "tweak makeown" on an elf, he will be listed as an pet in DT.
ok, elves should be fine with that, but is there a way to change this?
(masterwork with 0.6.12/22.0)
excellent. it's possible he had an unknown thought and due to some shoddy coding it was causing a crash.DT crashing save:you found a new (un)happiness thought, congratulations! one of your dwarves had 'suffered through his spouse's miscarriage recently'. this is fixed in the new version.
https://www.dropbox.com/s/bgvelq88rptxrjz/region1.zipWas using Therapist and having a good time. When i got to around 60 dwarves Therapist just suddently stopped working. I've tried closing and rebooting but nothing works. Also tried to retire fortress then unretire it. (It still works when i start a new game)see if it's still crashing on the last (23.2) version.
Thanks man it actually works. I dont know if its because of the new version or if its retiring my fort made my king dissapear for some reason. Keep up the good work!
I've been putting out torrents for DF Starter Pack - is it worthwhile for DT too? I don't mind seeding if it's worth the time to create the torrent.totally up to you, i don't mind at all if you want to post it here or reddit or whatever.
reporting a bug by [df] reddit user McRalphneed the saveQuoteI have a "bug"?
when i use "tweak makeown" on an elf, he will be listed as an pet in DT.
ok, elves should be fine with that, but is there a way to change this?
(masterwork with 0.6.12/22.0)
I've been pretty useless finding offsets (Quietust is so much smarter than me...), but I've made progress on the custom-group stuff.
I can create custom groups, assign dwarves to one or more, delete groups, sort/group by custom group in the display, and save/restore group names between sessions.
My plan is that group names are global (like custom professions), but that dwarf-to-group assignments are stored per-fortress, keyed off the name of the fortress and maybe some other unique thing I can extract easily. (I don't want to dork around with finding the save dir yet, but that's probably where I should end up.)
I'll put up a pull request for review when I get the last bit wrapped up, but I had one question for now: to get the fortress name I need to wait until DFInstance is populated, which is after settings are normally read. One option is to load them all from the settings file and then use whichever ones when we connect. The other, which I prefer and which will fit better with the save-dir future, is to add a hook that gets called after connecting to DF, which will pull the right group info out of the settings file (I'd ignore it on the initial load). Splinterz, does that sound OK to you?
(Also, clang pointed out two warnings that look legit -- the code happens to work, but what's expressed is almost certainly not what's meant. I'll post a separate PR for those.)
This all sounds very exciting. Any way this can be tied in with dwarf's and burrow assignments? What if a dwarf is part of two burrows?
Burrow management from DT would be a very good feature!This all sounds very exciting. Any way this can be tied in with dwarf's and burrow assignments? What if a dwarf is part of two burrows?I don't know how DF would handle dwarves being part of two burrows. If it can handle that, then sure. (We'd need to do the dfhack/offset work to twiddle the burrow stuff, of course.)
Hey Splinterz,hrmm that's strange, they should all be that golden color and say 'Default'. i haven't change those colors.
I downloaded a clean version of the Dwarf Fortress starter pack and I'm seeing custom hexes defined under "Grid Colors" and "Nobles" in the Options menu. I assume these are new defaults? If so they should be treated as such in the settings.
I've been pretty useless finding offsets (Quietust is so much smarter than me...), but I've made progress on the custom-group stuff.that all sounds reasonable.
I can create custom groups, assign dwarves to one or more, delete groups, sort/group by custom group in the display, and save/restore group names between sessions.
My plan is that group names are global (like custom professions), but that dwarf-to-group assignments are stored per-fortress, keyed off the name of the fortress and maybe some other unique thing I can extract easily. (I don't want to dork around with finding the save dir yet, but that's probably where I should end up.)
I'll put up a pull request for review when I get the last bit wrapped up, but I had one question for now: to get the fortress name I need to wait until DFInstance is populated, which is after settings are normally read. One option is to load them all from the settings file and then use whichever ones when we connect. The other, which I prefer and which will fit better with the save-dir future, is to add a hook that gets called after connecting to DF, which will pull the right group info out of the settings file (I'd ignore it on the initial load). Splinterz, does that sound OK to you?
(Also, clang pointed out two warnings that look legit -- the code happens to work, but what's expressed is almost certainly not what's meant. I'll post a separate PR for those.)
Any chance of a Linux-native version?What do you mean by linux native? http://dffd.wimbli.com/file.php?id=9003
With the version from that link, when I doAny chance of a Linux-native version?What do you mean by linux native? http://dffd.wimbli.com/file.php?id=9003
sudo ./DwarfTherapist
I get this error:DwarfTherapist: Syntax error: ")" unexpected
sudo bash DwarfTherapist
gives me this:DwarfTherapist: DwarfTherapist: cannot execute binary file
Dwarf Therapist 23.2 OSX - v40.04 (http://dffd.wimbli.com/file.php?id=9127)Yes! Thank you so much! Something to look forward to once my shift is over.
And this is the ini. Soul offsets were missing, so I copied them from linux, all the other offset values were the same.Spoiler: v0.40.04_osx.ini (click to show/hide)
Dwarf Therapist 23.2 OSX - v40.04 (http://dffd.wimbli.com/file.php?id=9127)
And this is the ini. Soul offsets were missing, so I copied them from linux, all the other offset values were the same.
With the version from that link, when I doCode: [Select]sudo ./DwarfTherapist
I get this error:QuoteDwarfTherapist: Syntax error: ")" unexpected
./DwarfTherapist: symbol lookup error: ./DwarfTherapist: undefined symbol: _ZN11QHeaderView10setVisibleEb
I recommend you upload your save and specify the version your playingI think I get it. It's still strange that two dwarfs, one with a more desirable preference (I assume that's what weight models), have the same %.
btw, that's probably due to them being a single match, preferences are pretty much binary, but group matches are treated as single match + (1/(# off matches -1))
Dwarf Therapist 23.2 OSX - v40.04 (http://dffd.wimbli.com/file.php?id=9127)
And this is the ini. Soul offsets were missing, so I copied them from linux, all the other offset values were the same.Spoiler: v0.40.04_osx.ini (click to show/hide)
oh, you've got those assholes too? (http://www.bay12forums.com/smf/index.php?topic=122968.msg5491155#msg5491155) :DDwarf Therapist 23.2 OSX - v40.04 (http://dffd.wimbli.com/file.php?id=9127)
And this is the ini. Soul offsets were missing, so I copied them from linux, all the other offset values were the same.Spoiler: v0.40.04_osx.ini (click to show/hide)
I can verify this works a treat under osx 10.9.4 Mavericks. Thank you, my first serious 40.04 fort was juuuust about to crumble under two dozen fisherdwarves with no way of sorting them out.
Thankyou! works great.DT crashing save:you found a new (un)happiness thought, congratulations! one of your dwarves had 'suffered through his spouse's miscarriage recently'. this is fixed in the new version.
https://www.dropbox.com/s/bgvelq88rptxrjz/region1.zip
The 0.40 version I built by download the zip of the source off of github crashes on start up with only the cryptic (at least for me) message of "QProcess: Destroyed while process ("/usr/bin/env") is still running."I've gotten that message when it can't find the etc folder (included in the github repo), which contains the memory mappings.
Hey Splinterz,hrmm that's strange, they should all be that golden color and say 'Default'. i haven't change those colors.
I downloaded a clean version of the Dwarf Fortress starter pack and I'm seeing custom hexes defined under "Grid Colors" and "Nobles" in the Options menu. I assume these are new defaults? If so they should be treated as such in the settings.
Just a note, I noticed that it reports one of my soldiers "missing" his shield and sword, but when I check him in game, he has an adamantine short sword and bronze shield. Other soldiers are reporting correctly.uniform wasn't changed? does it say he's missing a specific weapon/shield?
Here are two screenshots showing what Therapist currently looks like, and what the custom settings in my options pane are:those look like the defaults, i don't know why it's showing HEX (probably a bug). i'll check it out.
http://i.imgur.com/DzqZUgM.png
http://i.imgur.com/m0zoH3K.png
- Is this unique to my instance of the program? (seems to be, yes)
- If so, what are the default settings? (a screenshot would be helpful)
I'm asking because I can't start updating the user guide to match the changes that have been made, without first determining whether or not I have all the defaults, and if not, what the new default looks like.
Is the menu bar being flush to the right of the screen also the default now? Sorry for all the questions but I haven't used Dwarf Therapist/Fortress in almost a year now. Been waiting for the update to drop.the default should be horizontally across the top. i've also been working on implementing your custom professions/roles/super labor relationships, so something to keep in mind for your screenshots.
A small tweak I would suggest at this time is to switch the names of the "Labors" and "Labors Alt" views, since their relative prominence in the program has been reversed.yeah i've actually already made that change on my development builds.
That sounds wonderful! I'm currently in the process of updating the guide again, and I'll keep it in mind for future versions.
Since the "Pending Labor Changes" dock includes changes that aren't labor-related (for instance, setting a nickname), another tweak would be to rename it to simply "Pending Changes"also already done (in the dev build) :)
Do you have an ETA for the next version yet?oh.. a few days? maybe i can get out a alpha/beta this weekend to get some testing going. yeah roles need quite a bit of work with the new personality changes so i've been holding off until more is known about the conflicts and happy thought relationships.
The "Role" view should be updated to use the same color and organizational scheme as the "Labor-Alt" (future "Labor") view.
Since the "Pending Labor Changes" dock includes changes that aren't labor-related (for instance, setting a nickname), another tweak would be to rename it to simply "Pending Changes".
Can anyone provide me with a decently large (70ish+ dwarves) fortress save in version 40.04?
oh man, why didn't anyone tell me committing changes reverts the sorting!? :(
Since the "Pending Labor Changes" dock includes changes that aren't labor-related (for instance, setting a nickname), another tweak would be to rename it to simply "Pending Changes".
Can anyone provide me with a decently large (70ish+ dwarves) fortress save in version 40.04?
Here you go, 100-ish dwarves. (http://dffd.wimbli.com/file.php?id=9152) Actually a 40.03 fort that ported over without any obvious problems, if that's relevant.
splinterz, how many of the following things have been included in the base installation:you need to find your Dwarf Therapist.ini and remove it if you want to start completely fresh, custom professions, roles, colors and scripts are all stored globally in that settings file.
- Optimization "Test Plan" for Wood Burning and Furnace Operating
- "Ranged" custom profession
- The four filter scripts
- The Hauler custom role
This seems like a silly question to ask since I don't see how, my having reinstalled the program two or three times since then, it could have kept my old custom definitions, and I've assumed these have all been included as program examples in editing the guide for the next version.
However, I found a functionless "R" custom profession template in my Therapist that I vaguely recall having written, but not having included anywhere in the guide. Also, the filter script for "Available for Work" is currently broken because of some strange problems on the beekeeping check of the script (my best guess, are filter scripts limited in character length?)
Since the "Pending Labor Changes" dock includes changes that aren't labor-related (for instance, setting a nickname), another tweak would be to rename it to simply "Pending Changes".
Can anyone provide me with a decently large (70ish+ dwarves) fortress save in version 40.04?
Here you go, 100-ish dwarves. (http://dffd.wimbli.com/file.php?id=9152) Actually a 40.03 fort that ported over without any obvious problems, if that's relevant.
Thanks!
Edit: what's with the naming scheme?
one question are births suposed to show up in the "Groped By: Migration wave"?currently if you have children/babies hidden it still shows the aggregate row for the group. i'll check it out.
i have a lot of lines like this:
Born on the 23rd of limestone in the year 195 (1)
add one line for every baby born in my fort since its founding
all of them have no dwarf associated with it but i am guessing it is since they still are a baby
wouldn't it be better if all dwarfs born in the fort instead show up in one migration group named something like "locally born dwarfs" and have that grouping only show up once there is someone old enough to be able to work?
Found it. Hmm. Alright.oof. are you sure you don't want to just use the old version? :P i'll see what i can do..
Ok, wow this changes a lot of things I have to say about the program.
Suggested changes:I didn't realize there was a phantom file controlling my settings still present on the computer from past versions, so had thought that you had made all of these changes already.
- Switch the Labor and Labor Alt views (done)
- Turn off gradient cell shading by default.
- Turn on synchronize view scroll positions.
- Make text (ae. numbers) the default information presentation option. None of the other options even come close.
- Turn on "highlight nobles" by default.
- I'd implement *some* sort of differentiation between noble highlighting---highlighting all nobles with the *same* color is just about totally useless since you still have to scroll over them to find out what kind of noble they are. I'd recommend magenta for nobility, dark green for militia and lawdwarves, and the default for everything else[/i].
One more thing: I'd recommend using the highlighting feature to demark nobles in the dwarf list, and removing the italic font and masterwork "nameplate" their name is displayed in. It breaks the appearance of a uniform list.
Splinterz, Dwarf Therapist seems to have trouble finding squads at the moment.which version are you using that you're encountering squad issues?
Thistle, how hard do you think it would be to modify the optimization plan engine so that it allows you to optimize a certain number of dwarves out of a set? For instance, I select thirty dwarves, make an optimization plan that finds the ten best marksmen of any large-enough selection, and then run that script.
Ratio-based selection is useful when you want to quickbuild an industry out of a certain group of dwarves.
But numerical picks are better when you want to find one dwarf for a particular job, and don't have a role weigh column open, and when you want to do something that's a little complicated to do with Dwarf Therapist at the moment, but is at the cusp of practicability: smart-assign dwarves to a military squad.
I'm using the fortress savefile provided to me by another user above (nearly gave myself carpal tunnel deleting all of the usernames). The Dwarf Therapist version I'm using is 23.1.0. To reproduce the bug, grab that savefile and load it into Dwarf Therapist. Check the Dwarf Fortress military screen (there are three squads defined in the save), and then check the dwarfwise squad assign menu.23.2 fixes that issue (https://github.com/splintermind/Dwarf-Therapist/wiki/Change-Log)
I'm using the fortress savefile provided to me by another user above (nearly gave myself carpal tunnel deleting all of the usernames). The Dwarf Therapist version I'm using is 23.1.0. To reproduce the bug, grab that savefile and load it into Dwarf Therapist. Check the Dwarf Fortress military screen (there are three squads defined in the save), and then check the dwarfwise squad assign menu.23.2 fixes that issue (https://github.com/splintermind/Dwarf-Therapist/wiki/Change-Log)
\section{Putting it all Together}
\label{sec:Putting it al Together}
We have now individually covered all of the features available to you in Dwarf Therapist, and so we are
ready to put togethor everything we have learned so far and employ towards solving a particularly complex
task---military recruitment and management.
\subsection{Military Recruitment}
\begin{enumerate}
\item Create a ``Recruitment custom view''.
\item Create a ``Lead Marksdwarf'' role.
\item Create ``Meleedwarf'' and ``Lead Meleedwarf'' roles.
\item Create ``Marksdwarf'' and ``Meleedwarf'' custom professions.
\item Bind the custom professions to the custom roles, and add them as columns in the
``Recruitment'' grid view.
\item Write the ``Military Assignment'' optimization plan.
\item Filter dwarves by those available.
\item Select twenty dwarves.
\item Optimize.
\item Set the selected dwarves' professions to their appropriate new military profession.
\item Commit changes.
\item Choose the highest-ranked lead marksman and lead meleedwarf from the group.
\item Create squads from these dwarves in the Dwarf Fortress UI.
\item Name the squads something functional.
\item Assign the selected dwarves to the squad via the dwarfwise click menu in Dwarf Therapist.
\item Commit changes.
\end{enumerate}
We're also now going to write a new military management view, to compliment the military recruitment
procedure we've created above\ldots
This one's for you, Splinterz.so you mean you'd start typing some kind of health symptom, for example, and it would let you choose an available filter that the dock is using on the back-end?
You currently have a huge "Filter Dwarves" bar whose only functionality is that it allows you to filter dwarves by name. I think you can do a lot better then that. I envision that you can type into the box and it will allow you to filter dwarves by name (one category), or to apply a filter script (another category), or to apply a health status filter (another category). Once you have the option you want, hit Enter and your choice appears in a little color-coded box in the textbox, with a little "X" next to it that allows you to close that filter. You can keep typing, and apply multiple filters concurrently this way. Once you're done, you can cancel each of them individually either within the textbox or using the Active Filters button that's already implemented.
This would make the health sorting options a lot more visible and easier to use (tbh you did all of that work on health filtering and I barely ever see it used because it's constricted to a dock), and allow the creation of dynamic filters.
i'm not sure what the optimize part in there is for? currently the optimization stuff is setup to assign jobs (labors) to dwarves. couldn't you just sort by your military role(s) and then assign the top x to your squad(s)?
This one's for you, Splinterz.so you mean you'd start typing some kind of health symptom, for example, and it would let you choose an available filter that the dock is using on the back-end?
You currently have a huge "Filter Dwarves" bar whose only functionality is that it allows you to filter dwarves by name. I think you can do a lot better then that. I envision that you can type into the box and it will allow you to filter dwarves by name (one category), or to apply a filter script (another category), or to apply a health status filter (another category). Once you have the option you want, hit Enter and your choice appears in a little color-coded box in the textbox, with a little "X" next to it that allows you to close that filter. You can keep typing, and apply multiple filters concurrently this way. Once you're done, you can cancel each of them individually either within the textbox or using the Active Filters button that's already implemented.
This would make the health sorting options a lot more visible and easier to use (tbh you did all of that work on health filtering and I barely ever see it used because it's constricted to a dock), and allow the creation of dynamic filters.
right but it's a labor optimizer. it seems like what you want to do is associate a custom profession with a (military) role, find those dwarves via optimization, and then assign them to custom professions, rather than assigning labors. is that it?i'm not sure what the optimize part in there is for? currently the optimization stuff is setup to assign jobs (labors) to dwarves. couldn't you just sort by your military role(s) and then assign the top x to your squad(s)?
This setup lets you do a bifurcated sort: one squad of meleedwarves, one squad of marksdwarves. If you're assigning squads individually, yes, optimization plans are useless, but in this case it's helpful because it means that dwarves with a higher meleedwarf skill than marksdwarf skill who are still in the top 50% of marksdwarves will not be left out of the former squad if marksdwarves are drafted first, and vice versa.
I did say "on the cusp of practicability", though. Got to hedge. If numerical optimization is implemented then that opens up a whole other ballgame.
right but it's a labor optimizer. it seems like what you want to do is associate a custom profession with a (military) role, find those dwarves via optimization, and then assign them to custom professions, rather than assigning labors. is that it?i'm not sure what the optimize part in there is for? currently the optimization stuff is setup to assign jobs (labors) to dwarves. couldn't you just sort by your military role(s) and then assign the top x to your squad(s)?
This setup lets you do a bifurcated sort: one squad of meleedwarves, one squad of marksdwarves. If you're assigning squads individually, yes, optimization plans are useless, but in this case it's helpful because it means that dwarves with a higher meleedwarf skill than marksdwarf skill who are still in the top 50% of marksdwarves will not be left out of the former squad if marksdwarves are drafted first, and vice versa.
I did say "on the cusp of practicability", though. Got to hedge. If numerical optimization is implemented then that opens up a whole other ballgame.
currently the way i've got it setup, it will allow you add either custom profession columns (mask or not) or super labor columns (exactly the same concept, but don't toggle/assign custom professions)right but it's a labor optimizer. it seems like what you want to do is associate a custom profession with a (military) role, find those dwarves via optimization, and then assign them to custom professions, rather than assigning labors. is that it?i'm not sure what the optimize part in there is for? currently the optimization stuff is setup to assign jobs (labors) to dwarves. couldn't you just sort by your military role(s) and then assign the top x to your squad(s)?
This setup lets you do a bifurcated sort: one squad of meleedwarves, one squad of marksdwarves. If you're assigning squads individually, yes, optimization plans are useless, but in this case it's helpful because it means that dwarves with a higher meleedwarf skill than marksdwarf skill who are still in the top 50% of marksdwarves will not be left out of the former squad if marksdwarves are drafted first, and vice versa.
I did say "on the cusp of practicability", though. Got to hedge. If numerical optimization is implemented then that opens up a whole other ballgame.
Yes, I'm (thinking of) using a labor column associated with a military profession (Hunting + Food Hauling for marksdwarves, Pump Operating + All Hauling for military types) as a stand-in for direct squad assignment, since I'm going to assign them those jobs anyway. Other players may have different off-duty regimens for their dwarves. Or you could use a null labor like Alchemy and then just turn it off when you're done. If you're interested in solving this issue, you should make custom professional masks generate labor columns as well. Toggling it wouldn't, um...do anything...but it'd be more elegant I suppose.
Just a note, I noticed that it reports one of my soldiers "missing" his shield and sword, but when I check him in game, he has an adamantine short sword and bronze shield. Other soldiers are reporting correctly.uniform wasn't changed? does it say he's missing a specific weapon/shield?
Splinterz, Dwarf Therapist seems to have trouble finding squads at the moment.
Thistle, how hard do you think it would be to modify the optimization plan engine so that it allows you to optimize a certain number of dwarves out of a set? For instance, I select thirty dwarves, make an optimization plan that finds the ten best marksmen of any large-enough selection, and then run that script.
Ratio-based selection is useful when you want to quickbuild an industry out of a certain group of dwarves, but is limited in that you can't smartly control how many dwarves you get. You use a predefined group and then distribute jobs within this group; it's easy to select a group of the best candidates for one job, with sorting by role rating, but it's difficult to select a group of the best candidates for a bunch of them. You can do this by defining a custom role that has all of the properties of all of the labors you want to assign, but you have to A, write this role, and B, implemented in a view somewhere.
A numerical optimizer would solve this problem by doing it for you automatically. How I envision it working:
- The optimizer takes all of the roles used in the optimization plan, and mashes them together into a temporary custom role.
- It sorts the selected dwarves by their fitness in this role, and then selects the top X dwarves out of this selection, where X is the number of dwarves to undergo optimization, as defined by the user in the plan.
- It does the standard optimization crunch on these dwarves.
What do you think?
Dwarf Therapist 23.2 OSX - v40.04 (http://dffd.wimbli.com/file.php?id=9127)Yes! Thank you so much! Something to look forward to once my shift is over.
And this is the ini. Soul offsets were missing, so I copied them from linux, all the other offset values were the same.Spoiler: v0.40.04_osx.ini (click to show/hide)
Splinterz, Dwarf Therapist seems to have trouble finding squads at the moment.
Thistle, how hard do you think it would be to modify the optimization plan engine so that it allows you to optimize a certain number of dwarves out of a set? For instance, I select thirty dwarves, make an optimization plan that finds the ten best marksmen of any large-enough selection, and then run that script.
Ratio-based selection is useful when you want to quickbuild an industry out of a certain group of dwarves, but is limited in that you can't smartly control how many dwarves you get. You use a predefined group and then distribute jobs within this group; it's easy to select a group of the best candidates for one job, with sorting by role rating, but it's difficult to select a group of the best candidates for a bunch of them. You can do this by defining a custom role that has all of the properties of all of the labors you want to assign, but you have to A, write this role, and B, implemented in a view somewhere.
A numerical optimizer would solve this problem by doing it for you automatically. How I envision it working:
- The optimizer takes all of the roles used in the optimization plan, and mashes them together into a temporary custom role.
- It sorts the selected dwarves by their fitness in this role, and then selects the top X dwarves out of this selection, where X is the number of dwarves to undergo optimization, as defined by the user in the plan.
- It does the standard optimization crunch on these dwarves.
What do you think?
^ Thistle.
40_05 is up! Any ETA on the memory layout?you people are slave-drivers...
40_05 is up! Any ETA on the memory layout?you people are slave-drivers...
I'm so lost on how to get this to work on Ubuntu.Just compiled from source on 14.04. Doesn't work. It can't recognize the version. Where is the memory layout for 0.40 exactly?
Splinterz, Dwarf Therapist seems to have trouble finding squads at the moment.
Thistle, how hard do you think it would be to modify the optimization plan engine so that it allows you to optimize a certain number of dwarves out of a set? For instance, I select thirty dwarves, make an optimization plan that finds the ten best marksmen of any large-enough selection, and then run that script.
Ratio-based selection is useful when you want to quickbuild an industry out of a certain group of dwarves, but is limited in that you can't smartly control how many dwarves you get. You use a predefined group and then distribute jobs within this group; it's easy to select a group of the best candidates for one job, with sorting by role rating, but it's difficult to select a group of the best candidates for a bunch of them. You can do this by defining a custom role that has all of the properties of all of the labors you want to assign, but you have to A, write this role, and B, implemented in a view somewhere.
A numerical optimizer would solve this problem by doing it for you automatically. How I envision it working:
- The optimizer takes all of the roles used in the optimization plan, and mashes them together into a temporary custom role.
- It sorts the selected dwarves by their fitness in this role, and then selects the top X dwarves out of this selection, where X is the number of dwarves to undergo optimization, as defined by the user in the plan.
- It does the standard optimization crunch on these dwarves.
What do you think?
^ Thistle.
Maybe I don't understand the question, but it seems to do that already.
You can select just a group of dwarf's, say 30, and apply an optmization plan, and if you wanted it to be say 10 out of 30, (and you selected, 30) you could set the % jobs to assign to 33% and it would assign the top 33% of 30 (aka top 10)
you can also do tricks like limit # of labors per dwarf to 1 per dwarf, that shows you what THEIR BEST job is out of the jobs you've assigned in the opt plan
well I used to create one plan for each ratio set. Then I decided that was too much work and I hand adjusted the % total jobs to assign each run (for militia dwarfs anyways).
I think I know what it is you want. You want the total jobs to assign to be a static number that you set, and on the backend, it adjusts the % total jobs to assign? That should be a pretty easy setup though. The numbers that need to be measured are total jobs (hard set number set by user), % total jobs to assign (adjust based on population selected), and # of labors per dwarf. Those 3 numbers should allow you to back update % total jobs to assign based on the other 2 vars.
The second issue, I did just mention a few posts back if the labor optimizer applied itself as a mask rather than resetting labors, that might allow one to do more with it.
originally when i started working on DT there were few offsets and it seemed like the extra overhead of adapting everything to rely on dfhack wasn't really ideal.
now though, with the amount of offsets i've added, i'm already pretty reliant on the df-structures to get things sorted out, and add new features. i already use a script to pull the specific offsets that DT requires from df-structures and generate the memory layout files. so there isn't really this issue of hunting down each offset, unless i'm feeling particularly masochistic. going this route would probably allow for other features that haven't been possible (creating squads, assigning uniforms, burrow manipulation, etc.)
the downside is mostly about the rewrite to the back-end, and actually figuring out how to do it and trying it out.
the script is packaged with the DT source (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/make-dt.pl)originally when i started working on DT there were few offsets and it seemed like the extra overhead of adapting everything to rely on dfhack wasn't really ideal.
now though, with the amount of offsets i've added, i'm already pretty reliant on the df-structures to get things sorted out, and add new features. i already use a script to pull the specific offsets that DT requires from df-structures and generate the memory layout files. so there isn't really this issue of hunting down each offset, unless i'm feeling particularly masochistic. going this route would probably allow for other features that haven't been possible (creating squads, assigning uniforms, burrow manipulation, etc.)
the downside is mostly about the rewrite to the back-end, and actually figuring out how to do it and trying it out.
Is the script to generate layouts from df-structures stored out there someplace? I started looking into doing it manually, and the names of things seem too different between the two layouts to be able to figure it out easily. Though whether having the script is useful also depends on what language / runtime it uses. ;)
version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
First : thank you ! :)
second : how does github reflect the changes ? I had an error message : "I'm sorry but I don't know how to talk to this version of Dwarf Fortress! (checksum:0x5612460b)", after compiling it a few minutes ago. I just grab the memory layout from github by hand, and it's ok, but you have done it 6 hours ago... why does my git cloning did'nt have it ? (very newbie question, of course)
third : are some linux players interrested by a very rough (and in very poor english) how to make it work under linux (x/l)ubuntu ? I find it quite hard to find all the pieces of information needed.
Are you using the "DF2014" branch from github? The "master" branch is the old version.I suppose so...
git clone git://github.com/splintermind/Dwarf-Therapist.git DF2014
version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
[OSX] Dwarf Therapist 23.3 for 40.05 (http://dffd.wimbli.com/file.php?id=9127)
Let's call it an alpha build until someone can do better. Soul addresses are still missing from df-structures, so I copied linux again, but this time lot's of offsets were different, and the dwarf detail popup is plain wrong... I searched for the missing offsets (https://github.com/fricy/df-structures/commit/a5fa17b561b6fc55686e69e8aa50db54fa2b1e64), but couldn't find everything. :(Spoiler: v0.40.05_osx.ini (click to show/hide)
Drat. Every time I try to load, it crashes, and then Dwarf Fortress stops responding. On the plus side, it means I can try again with the merchants that came & got pissed at me since my last save.
version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
Something wrong with this version.
I have mature fortress, 80 dwarves, no problem with civilians, but 3 of my soldiers from 10 person squad cannot set or remove any labor via Therapist - ingame labor works fine, only Therapist ignore them completelly. They display correct soldier age (60-80), so its not "child work issue", they are not wrongly identified as children. Its 3 of 7 "In Duty" soldiers, off duty ones works fine for now.
(fortress was created in 40.04 version, but updated to 40.05DF and working fine in 40.05)
I am going to try older one with 40.05 memory layout.
edit: Affected dwarves are all Master Wrestlers - I have 3 in squad and all of them cannot have any labor set/removed via recent Therapist.
yeah it has to be related to the changes with the professional soldiers. i'll check it out.version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
Something wrong with this version.
I have mature fortress, 80 dwarves, no problem with civilians, but 3 of my soldiers from 10 person squad cannot set or remove any labor via Therapist - ingame labor works fine, only Therapist ignore them completelly. They display correct soldier age (60-80), so its not "child work issue", they are not wrongly identified as children. Its 3 of 7 "In Duty" soldiers, off duty ones works fine for now.
(fortress was created in 40.04 version, but updated to 40.05DF and working fine in 40.05)
I am going to try older one with 40.05 memory layout.
edit: Affected dwarves are all Master Wrestlers - I have 3 in squad and all of them cannot have any labor set/removed via recent Therapist.
yeah it has to be related to the changes with the professional soldiers. i'll check it out.version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
Something wrong with this version.
I have mature fortress, 80 dwarves, no problem with civilians, but 3 of my soldiers from 10 person squad cannot set or remove any labor via Therapist - ingame labor works fine, only Therapist ignore them completelly. They display correct soldier age (60-80), so its not "child work issue", they are not wrongly identified as children. Its 3 of 7 "In Duty" soldiers, off duty ones works fine for now.
(fortress was created in 40.04 version, but updated to 40.05DF and working fine in 40.05)
I am going to try older one with 40.05 memory layout.
edit: Affected dwarves are all Master Wrestlers - I have 3 in squad and all of them cannot have any labor set/removed via recent Therapist.
I think I have everything done for custom groups except finding the save dir. Splinterz, should I just add the new offset to make-dt.pl? (I should test on Win32 and Linux too, since so far I've for some reason decided to do the work on the most awkward platform for debugging.)yeah the plan is to branch the current master to a 34.11 / 2012 branch. then i'll be merging the superlabors to the 2014, and the 2014 back into master and use it as the main branch again.
Somewhat crappy GIF showing adding to a group, selecting labors for a group, etc.Spoiler (click to show/hide)
Also, I'll need to rebase to the DF2014 branch I guess. Would it make sense to move the legacy stuff to a DF2012 tag (or branch if you think you'll need to do more work on it; seems unlikely unless there's some OS compatibility stuff?) and have master be the active stream of development?
Also also: my next idea is a way to typedown the names of professions so you could do something like "<Ctrl-P>craft" and just see the crafting columns. Scanning the list with the names rotated is pretty slow for me still, and involves a bunch of scrolling. Sound acceptable?
Drat. Every time I try to load, it crashes, and then Dwarf Fortress stops responding. On the plus side, it means I can try again with the merchants that came & got pissed at me since my last save.
Apparently I was blind earlier. :( Try the dffd link (http://dffd.wimbli.com/file.php?id=9127) again, new version is up with fixed memory_layouts. Get back to me if you still have crashes, because the previous version was not crashing for me despite the errors. Which OSX are you on?Spoiler: v0.40.05_osx.ini (fixed) (click to show/hide)
actually if you've got a save that would help for testing.yeah it has to be related to the changes with the professional soldiers. i'll check it out.version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
Something wrong with this version.
I have mature fortress, 80 dwarves, no problem with civilians, but 3 of my soldiers from 10 person squad cannot set or remove any labor via Therapist - ingame labor works fine, only Therapist ignore them completelly. They display correct soldier age (60-80), so its not "child work issue", they are not wrongly identified as children. Its 3 of 7 "In Duty" soldiers, off duty ones works fine for now.
(fortress was created in 40.04 version, but updated to 40.05DF and working fine in 40.05)
I am going to try older one with 40.05 memory layout.
edit: Affected dwarves are all Master Wrestlers - I have 3 in squad and all of them cannot have any labor set/removed via recent Therapist.
To be exact I downloaded "Dwarf Fortress 40_05 Starter Pack r1 from PeridexisErrant" and then overwrite Therapist dictionary there with your full package from http://dffd.wimbli.com/file.php?id=9040 (23.3 version) and run update for saves.
EDIT: Just tried delete Therapist disctionary and put clean redownloaded instalation there, and problem is still the same. I am using recent Phoebus tileset, but I think it should not be related...
you can add the offset to the script and/or mem files. the typedown idea is interesting. the new columns will help with that in a way; you shouldn't require nearly as many columns now that they can be grouped.
yeah i'm not sure what's up with the df-structure scripts. a few people were looking into it tonight, but i don't know if anything came of it. for your custom groups, yeah i'd put the ungrouped units last.you can add the offset to the script and/or mem files. the typedown idea is interesting. the new columns will help with that in a way; you shouldn't require nearly as many columns now that they can be grouped.
OK. I'm slightly stymied by the fact that the dfhack build doesn't generate globals.csv for osx, so I'll have to figure that out. I think I can compute it from the linux one, though.
Soon!
Should I make Ungrouped always sort last?
yeah i'm not sure what's up with the df-structure scripts. a few people were looking into it tonight, but i don't know if anything came of it. for your custom groups, yeah i'd put the ungrouped units last.you can add the offset to the script and/or mem files. the typedown idea is interesting. the new columns will help with that in a way; you shouldn't require nearly as many columns now that they can be grouped.
OK. I'm slightly stymied by the fact that the dfhack build doesn't generate globals.csv for osx, so I'll have to figure that out. I think I can compute it from the linux one, though.
Soon!
Should I make Ungrouped always sort last?
// load path to current save
VIRTADDR save_dir_addr = read_addr(m_memory_correction + m_layout->address("save_dir"));
m_save_dir = read_string(save_dir_addr);
LOGI << "save dir: " << m_save_dir << " from " << m_layout->address("save_dir");
i tested your code out on a windows build, and it's reading the save directory name correctly, so the offsets must be off. the offset calculation seems to be ok, if it were in the same relative position. so you may have to poke around in the memory and see :/yeah i'm not sure what's up with the df-structure scripts. a few people were looking into it tonight, but i don't know if anything came of it. for your custom groups, yeah i'd put the ungrouped units last.you can add the offset to the script and/or mem files. the typedown idea is interesting. the new columns will help with that in a way; you shouldn't require nearly as many columns now that they can be grouped.
OK. I'm slightly stymied by the fact that the dfhack build doesn't generate globals.csv for osx, so I'll have to figure that out. I think I can compute it from the linux one, though.
Soon!
Should I make Ungrouped always sort last?
The df-structure scripts just don't even try to generate globals.csv for osx, I guess because Linux can't handle Darwin binfmts. I probably need to set up sbcl, though I thought that doing the math from the Linux ones would work. Would you mind checking my work?
Comparing world_data addresses between osx and linux gives 0x09a217b4 - 0x019864b4 = 0x0809b300. Subtracting that from the linux address for world.cur_savegame.save_dir is 0x097fc4f0 - 0x0809b300 = 0x017611f0.
I have that (0x017611f0) as the save_dir address, and it's getting pulled from the config file correctly, but the string reads as empty. This is the reading code I have:Code: [Select]// load path to current save
VIRTADDR save_dir_addr = read_addr(m_memory_correction + m_layout->address("save_dir"));
m_save_dir = read_string(save_dir_addr);
LOGI << "save dir: " << m_save_dir << " from " << m_layout->address("save_dir");
I'm not sure what the layout of the std::string is, but this looks parallel to how dwarves read their names. I haven't tried stepping through and peeking at nearby memory yet.
actually if you've got a save that would help for testing.yeah it has to be related to the changes with the professional soldiers. i'll check it out.version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
Something wrong with this version.
I have mature fortress, 80 dwarves, no problem with civilians, but 3 of my soldiers from 10 person squad cannot set or remove any labor via Therapist - ingame labor works fine, only Therapist ignore them completelly. They display correct soldier age (60-80), so its not "child work issue", they are not wrongly identified as children. Its 3 of 7 "In Duty" soldiers, off duty ones works fine for now.
(fortress was created in 40.04 version, but updated to 40.05DF and working fine in 40.05)
I am going to try older one with 40.05 memory layout.
edit: Affected dwarves are all Master Wrestlers - I have 3 in squad and all of them cannot have any labor set/removed via recent Therapist.
To be exact I downloaded "Dwarf Fortress 40_05 Starter Pack r1 from PeridexisErrant" and then overwrite Therapist dictionary there with your full package from http://dffd.wimbli.com/file.php?id=9040 (23.3 version) and run update for saves.
EDIT: Just tried delete Therapist disctionary and put clean redownloaded instalation there, and problem is still the same. I am using recent Phoebus tileset, but I think it should not be related...
Hi there! I'm just getting back into Dwarf Fortress, and I found this tool to be incredible. But given Dwarf Fortress updated, I decide to update, too. But now I get the message "Unidentified game version". Is there any 'get around' this? Or do I need to wait for the next update? And when can I expect this update, ish?what DF version, DT version, OS version, etc. etc.
Thanks!
The July 27th update, so windows 0.40.05. I was using 23.0 Dwarf Therapist.For 40_05 you need v23.3+; update your DT.
i tested your code out on a windows build, and it's reading the save directory name correctly, so the offsets must be off. the offset calculation seems to be ok, if it were in the same relative position. so you may have to poke around in the memory and see :/
i tested your code out on a windows build, and it's reading the save directory name correctly, so the offsets must be off. the offset calculation seems to be ok, if it were in the same relative position. so you may have to poke around in the memory and see :/OK, maybe Fricy can help me out! Or I'll go groveling in memory like a barbarian.
Splinterz what's the new number crunch like for role ratings? I'm noticing that it's not nearly so sharp anymore. You rebased the starting point to 50, I'm guessing?the biggest difference is that they're no longer individually ranked from 0-100, but now it's the entire set of roles. so you won't have 0-100 for each role column you add to the view, but a 0-100 range across all role ratings. now though, you can compare role columns to each other, and the optimizer's priorities actually work.
save uploaded http://ag.kilitar.cz/MRLINEK%2013.zip , (as I said I am using Phoebus tileset, and I am not sure what modifications his tileset exactly do with vanilla raws.)actually if you've got a save that would help for testing.yeah it has to be related to the changes with the professional soldiers. i'll check it out.version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
Something wrong with this version.
I have mature fortress, 80 dwarves, no problem with civilians, but 3 of my soldiers from 10 person squad cannot set or remove any labor via Therapist - ingame labor works fine, only Therapist ignore them completelly. They display correct soldier age (60-80), so its not "child work issue", they are not wrongly identified as children. Its 3 of 7 "In Duty" soldiers, off duty ones works fine for now.
(fortress was created in 40.04 version, but updated to 40.05DF and working fine in 40.05)
I am going to try older one with 40.05 memory layout.
edit: Affected dwarves are all Master Wrestlers - I have 3 in squad and all of them cannot have any labor set/removed via recent Therapist.
To be exact I downloaded "Dwarf Fortress 40_05 Starter Pack r1 from PeridexisErrant" and then overwrite Therapist dictionary there with your full package from http://dffd.wimbli.com/file.php?id=9040 (23.3 version) and run update for saves.
EDIT: Just tried delete Therapist disctionary and put clean redownloaded instalation there, and problem is still the same. I am using recent Phoebus tileset, but I think it should not be related...
So the OP link is now good for 40_05? Grabbed it from this thread a couple of days ago for _04 and all sweet, didnt like the switch to _05. I'll regrab the file and see.
For what it's worth... The OP link and dffd file description still refer to 40_04, though i see an edit performed post-40_05. The only ref to _05 is the name of the actual download directory on dffd. Confuzzling.
ok, the problem is that i forgot to update the game_data.ini. :-\ if you've downloaded the zip from dffd, you'll see that in the main directory there's a game_data.ini. that should be moved into the /etc folder and replace the file that's there.save uploaded http://ag.kilitar.cz/MRLINEK%2013.zip , (as I said I am using Phoebus tileset, and I am not sure what modifications his tileset exactly do with vanilla raws.)actually if you've got a save that would help for testing.yeah it has to be related to the changes with the professional soldiers. i'll check it out.version 23.3 is up on dffd (http://dffd.wimbli.com/file.php?id=9040).
it's a few minor tweaks to the belief/trait conflicts stuff, and some updates to the game_data.ini for profession renaming and allowing hero labors. so if you'd prefer to just update the memory layout files for 40.05, you can get them here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts).
Something wrong with this version.
I have mature fortress, 80 dwarves, no problem with civilians, but 3 of my soldiers from 10 person squad cannot set or remove any labor via Therapist - ingame labor works fine, only Therapist ignore them completelly. They display correct soldier age (60-80), so its not "child work issue", they are not wrongly identified as children. Its 3 of 7 "In Duty" soldiers, off duty ones works fine for now.
(fortress was created in 40.04 version, but updated to 40.05DF and working fine in 40.05)
I am going to try older one with 40.05 memory layout.
edit: Affected dwarves are all Master Wrestlers - I have 3 in squad and all of them cannot have any labor set/removed via recent Therapist.
To be exact I downloaded "Dwarf Fortress 40_05 Starter Pack r1 from PeridexisErrant" and then overwrite Therapist dictionary there with your full package from http://dffd.wimbli.com/file.php?id=9040 (23.3 version) and run update for saves.
EDIT: Just tried delete Therapist disctionary and put clean redownloaded instalation there, and problem is still the same. I am using recent Phoebus tileset, but I think it should not be related...
Good day!will be fixed in the next release :)
Am I the only one who miss emoticons for "quite content" happiness level in 23.3?..
will be fixed in the next release :)Oh, that's good! Thanks for answer.
lynXsh has been quite content lately. He received good news from splinterz recently. He admired an exceptional software recently.will be fixed in the next release :)Oh, that's good! Thanks for answer.
I don't know if this is possible or not, but could we add a graphic burrow manager?yeah it's a pretty common request, but until i rewrite the back-end and turn it into a dfhack plugin, you're probably out of luck. viewing which burrows have which dwarves, and maybe removing them could be possible, but not adding them. so i'm not sure how useful that would be.
It can sometimes be annoying as shit to hunt and peck that list finding people for burrows, and if I had a list of burrows that I could just click and assign people to easily and commit the changes it would be infinitely more useful.
It would let me do much more sophisticated managing and controlling of dwarves and really fine tune who goes where and when, but it's a headache as it is now. i thought it might fit well with the existing interface in dwarf therapist.
All right, I'm sure the reason for this is just that I'm overlooking the obvious, but I'm going to ask anyway.which guide? the therapist manual? can you post one of the scripts that's not working for you?
Are filter scripts currently broken? I'm running both the latest Mac & Windows builds for 0.40.05 (2 different machines, 2 different games), and I copied the 4 scripts from the guide & saved them, but none of them do anything on either build. Is there a step - or post explaining this - I'm missing? (It would not be the first time!)
All right, I'm sure the reason for this is just that I'm overlooking the obvious, but I'm going to ask anyway.which guide? the therapist manual? can you post one of the scripts that's not working for you?
Are filter scripts currently broken? I'm running both the latest Mac & Windows builds for 0.40.05 (2 different machines, 2 different games), and I copied the 4 scripts from the guide & saved them, but none of them do anything on either build. Is there a step - or post explaining this - I'm missing? (It would not be the first time!)
change all instances of 'labour' to 'labor'All right, I'm sure the reason for this is just that I'm overlooking the obvious, but I'm going to ask anyway.which guide? the therapist manual? can you post one of the scripts that's not working for you?
Are filter scripts currently broken? I'm running both the latest Mac & Windows builds for 0.40.05 (2 different machines, 2 different games), and I copied the 4 scripts from the guide & saved them, but none of them do anything on either build. Is there a step - or post explaining this - I'm missing? (It would not be the first time!)
Yeah, the manual. (Which is awesome, BTW! Found stuff I never knew about, or forgot I knew! :D )
I got the "Key Dwarves", and the 2 "Hauling" scripts to work (on the Mac) by going through them character-by-character & double checking/fixing them. I'm guessing it's just Copy/Paste is misbehaving, and I'm going to tentatively say it's the same on the Windows version. I'm slogging through the "Available to Work" script, but my eyes are starting to cross. Never tried scripting before! :P
// hauling test
(d.total_assigned_labors(true) - d.total_assigned_labors(false) == 11) &&
// masonry and stone detailing test
(((d.labor_enabled(13) == true && d.labor_rating(13) < 3) ||
d.labor_enabled(13) == false) || ((d.labor_enabled(12) == true &&
d.labor_rating(12) < 4) || d.labor_enabled(12) == false)) &&
// nickname test
(d.nice_name == "") &&
// military duty test
!d.active_military() &&
// key dwarf test
(!d.labor_enabled(47) && !d.labor_enabled(48) && !d.labor_enabled(29)
&& !d.labor_enabled(11) && !d.labor_enabled(33) && !d.labor_enabled(38)
&& !d.labor_enabled(45) && !d.labor_enabled(50) && !d.labor_enabled(51)
&& !d.labor_enabled(49) && !d.labor_enabled(00) && !d.labor_enabled(53)
&& !d.labor_enabled(46)) &&
// useless labors test
((d.labor_rating(16) > 0 && d.labor_enabled(16)) || d.labor_rating(16) <= 0)
&& // Animal Tr.
((d.labor_rating(43) > 0 && d.labor_enabled(43)) || d.labor_rating(43) <= 0)
&& // Fish Diss.
((d.labor_rating(26) > 0 && d.labor_enabled(26)) || d.labor_rating(26) <= 0)
&& // Animal Diss.
((d.labor_rating(72) > 0 && d.labor_enabled(72)) || d.labor_rating(72) <= 0)
./DwarfTherapist: undefined symbol: _ZN11QHeaderView10setVisibleEb
Splinterz, where do you figure is a good place to set up an exported utilities list? The GitHub repo wiki could be used for it; so could that page on Dwarf Fortress Wiki that I accidentally visited (http://dwarffortresswiki.org/index.php/Utility:Dwarf_Therapist/Addons_Repository). Since the guide is meant to be static, I'd rather not post it there.yeah i can put them up on the wiki page on the DT github. i don't think i have much permission control over the github wiki, so for open access the df one is probably better though. i need to link to your manual as well..
Hi guys, recently reinstalled DF to give 2014 a shot but of course am missing Therapist badly. Unfortunately it's one utility thats caused me a lot of grief since the update.ExpHP had that exact same error that they were able to resolve somehow it seems. (http://www.bay12forums.com/smf/index.php?topic=122968.msg5504876#msg5504876)
At first it was failing to open because of a missing qt5 library - after much heartbreak and almost blundering into reinstalling Ubuntu because I somehow screwed up the packages I had, I finally seem to have all the right ones.
Now however DT gives this error when run from the command line:Code: [Select]./DwarfTherapist: undefined symbol: _ZN11QHeaderView10setVisibleEb
I'm noticing someone else mentioned running into this on Linux too a few pages back but didnt see a fix.
I'm running Ubuntu 12.04 LTS, AMD 64bit notebook. Any more info you need I can supply, and any help appreciated. I love your program btw, realised I literaly cant play the game without it.
Cheers!
ExpHP had that exact same error that they were able to resolve somehow it seems. (http://www.bay12forums.com/smf/index.php?topic=122968.msg5504876#msg5504876)
2014-aug-01 14:25:57.024 INFO core Dwarf Therapist "23.3.0" starting normally. [src\dwarftherapist.cpp:137] (setup_logging)
2014-aug-01 14:25:57.232 INFO core beginning to read settings [src\dwarftherapist.cpp:159] (read_settings)
2014-aug-01 14:25:57.260 INFO core finished reading settings [src\dwarftherapist.cpp:225] (read_settings)
2014-aug-01 14:25:57.286 INFO core attempting connection to running DF game [src\mainwindow.cpp:309] (connect_to_df)
2014-aug-01 14:25:57.289 ERROR core Skipping read of invalid memory layout in "E:/Dwarf Fortress 40_05 Starter Pack r2/LNP/utilities/Dwarf Therapist 23.3/game_data.ini" [src\memorylayout.cpp:39] (load_data)
2014-aug-01 14:25:57.290 INFO core adding valid layout "v0.40.05 (graphics)" "0x53d566b4" [src\dfinstance.cpp:118] (DFInstance)
2014-aug-01 14:25:57.292 INFO core adding valid layout "40.04 (graphics)" "0x53cc0058" [src\dfinstance.cpp:118] (DFInstance)
2014-aug-01 14:25:57.293 INFO core adding valid layout "v0.40.03 (graphics)" "0x53c2d20c" [src\dfinstance.cpp:118] (DFInstance)
2014-aug-01 14:25:57.294 INFO core adding valid layout "v0.40.01 (graphics)" "0x53bb189a" [src\dfinstance.cpp:118] (DFInstance)
2014-aug-01 14:25:57.295 INFO core attempting to find running copy of DF by window handle [src\dfinstancewindows.cpp:171] (find_running_copy)
2014-aug-01 14:25:57.295 INFO core found copy with HWND: 0x30368 [src\dfinstancewindows.cpp:187] (find_running_copy)
2014-aug-01 14:25:57.295 INFO core PID of process is: 4156 [src\dfinstancewindows.cpp:194] (find_running_copy)
2014-aug-01 14:25:57.295 INFO core PROC HANDLE: 0x1c0 [src\dfinstancewindows.cpp:202] (find_running_copy)
2014-aug-01 14:25:57.295 INFO core PEB is at: 0x7efde000 [src\dfinstancewindows.cpp:208] (find_running_copy)
2014-aug-01 14:25:57.295 INFO core read 12 bytes BASE ADDR is at: 0x1340000 [src\dfinstancewindows.cpp:221] (find_running_copy)
2014-aug-01 14:25:57.296 INFO core Target EXE was compiled at "2014-07-27T22:53:08" [src\dfinstancewindows.cpp:70] (calculate_checksum)
2014-aug-01 14:25:57.296 INFO core DF's checksum is: "0x53d566b4" [src\dfinstance.cpp:1487] (get_memory_layout)
2014-aug-01 14:25:57.296 INFO core Detected Dwarf Fortress version "v0.40.05 (graphics)" using MemoryLayout from "E:/Dwarf Fortress 40_05 Starter Pack r2/LNP/utilities/Dwarf Therapist 23.3/etc/memory_layouts/windows/v0.40.05_graphics.ini" [src\dfinstance.cpp:1499] (get_memory_layout)
2014-aug-01 14:25:57.296 INFO core base address: "0x01340000" [src\dfinstancewindows.cpp:243] (find_running_copy)
2014-aug-01 14:25:57.296 INFO core memory correction: "0x00f40000" [src\dfinstancewindows.cpp:244] (find_running_copy)
2014-aug-01 14:25:57.298 INFO core GetModuleFileNameEx returned: "E:\Dwarf Fortress 40_05 Starter Pack r2\Dwarf Fortress 0.40.05\Dwarf Fortress.exe" [src\dfinstancewindows.cpp:257] (find_running_copy)
2014-aug-01 14:25:57.298 INFO core Dwarf fortress path: "E:/Dwarf Fortress 40_05 Starter Pack r2/Dwarf Fortress 0.40.05" [src\dfinstancewindows.cpp:260] (find_running_copy)
2014-aug-01 14:25:57.299 INFO core Connection to DF version "v0.40.05 (graphics)" established. [src\mainwindow.cpp:336] (connect_to_df)
2014-aug-01 14:25:57.331 WARNING core unidentified column type in set "General" ! [src\grid_view\viewcolumnset.cpp:300] (read_from_ini)
2014-aug-01 14:25:57.334 INFO core Loaded 12 views from disk [src\viewmanager.cpp:192] (reload_views)
2014-aug-01 14:25:57.335 INFO core group_by now set to 0 for view "Labors" [src\models\dwarfmodel.cpp:738] (set_group_by)
2014-aug-01 14:25:57.346 INFO core group_by now set to 0 for view "Labors" [src\models\dwarfmodel.cpp:738] (set_group_by)
2014-aug-01 14:25:57.346 INFO core "redrew views in 12ms" [src\viewmanager.cpp:321] (draw_views)
2014-aug-01 14:25:57.346 INFO core FOUND 0 squads [src\dfinstance.cpp:954] (load_squads)
2014-aug-01 14:25:57.348 INFO core current year: 0 [src\dfinstance.cpp:484] (load_dwarves)
2014-aug-01 14:25:57.348 INFO core no active units (embark) using full unit list [src\dfinstance.cpp:1015] (get_creatures)
2014-aug-01 14:25:57.349 INFO core found 0 dwarves out of 0 creatures [src\dfinstance.cpp:549] (load_dwarves)
2014-aug-01 14:25:57.349 WARNING core lost connection to DF [src\mainwindow.cpp:376] (lost_df_connection)
2014-aug-01 14:25:57.360 INFO core group_by now set to 0 for view "Labors" [src\models\dwarfmodel.cpp:738] (set_group_by)
2014-aug-01 14:25:57.371 INFO core loaded rows for "Labors" 11 ms [src\models\dwarfmodel.cpp:744] (set_group_by)
2014-aug-01 14:26:11.286 INFO core attempting connection to running DF game [src\mainwindow.cpp:309] (connect_to_df)
2014-aug-01 14:26:11.286 ERROR core Skipping read of invalid memory layout in "E:/Dwarf Fortress 40_05 Starter Pack r2/LNP/utilities/Dwarf Therapist 23.3/game_data.ini" [src\memorylayout.cpp:39] (load_data)
2014-aug-01 14:26:11.287 INFO core adding valid layout "v0.40.05 (graphics)" "0x53d566b4" [src\dfinstance.cpp:118] (DFInstance)
2014-aug-01 14:26:11.288 INFO core adding valid layout "40.04 (graphics)" "0x53cc0058" [src\dfinstance.cpp:118] (DFInstance)
2014-aug-01 14:26:11.288 INFO core adding valid layout "v0.40.03 (graphics)" "0x53c2d20c" [src\dfinstance.cpp:118] (DFInstance)
2014-aug-01 14:26:11.289 INFO core adding valid layout "v0.40.01 (graphics)" "0x53bb189a" [src\dfinstance.cpp:118] (DFInstance)
2014-aug-01 14:26:11.290 INFO core attempting to find running copy of DF by window handle [src\dfinstancewindows.cpp:171] (find_running_copy)
2014-aug-01 14:26:11.290 INFO core found copy with HWND: 0x30368 [src\dfinstancewindows.cpp:187] (find_running_copy)
2014-aug-01 14:26:11.290 INFO core PID of process is: 4156 [src\dfinstancewindows.cpp:194] (find_running_copy)
2014-aug-01 14:26:11.290 INFO core PROC HANDLE: 0x1c0 [src\dfinstancewindows.cpp:202] (find_running_copy)
2014-aug-01 14:26:11.290 INFO core PEB is at: 0x7efde000 [src\dfinstancewindows.cpp:208] (find_running_copy)
2014-aug-01 14:26:11.290 INFO core read 12 bytes BASE ADDR is at: 0x1340000 [src\dfinstancewindows.cpp:221] (find_running_copy)
2014-aug-01 14:26:11.290 INFO core Target EXE was compiled at "2014-07-27T22:53:08" [src\dfinstancewindows.cpp:70] (calculate_checksum)
2014-aug-01 14:26:11.290 INFO core DF's checksum is: "0x53d566b4" [src\dfinstance.cpp:1487] (get_memory_layout)
2014-aug-01 14:26:11.290 INFO core Detected Dwarf Fortress version "v0.40.05 (graphics)" using MemoryLayout from "E:/Dwarf Fortress 40_05 Starter Pack r2/LNP/utilities/Dwarf Therapist 23.3/etc/memory_layouts/windows/v0.40.05_graphics.ini" [src\dfinstance.cpp:1499] (get_memory_layout)
2014-aug-01 14:26:11.290 INFO core base address: "0x01340000" [src\dfinstancewindows.cpp:243] (find_running_copy)
2014-aug-01 14:26:11.290 INFO core memory correction: "0x00f40000" [src\dfinstancewindows.cpp:244] (find_running_copy)
2014-aug-01 14:26:11.298 INFO core GetModuleFileNameEx returned: "E:\Dwarf Fortress 40_05 Starter Pack r2\Dwarf Fortress 0.40.05\Dwarf Fortress.exe" [src\dfinstancewindows.cpp:257] (find_running_copy)
2014-aug-01 14:26:11.298 INFO core Dwarf fortress path: "E:/Dwarf Fortress 40_05 Starter Pack r2/Dwarf Fortress 0.40.05" [src\dfinstancewindows.cpp:260] (find_running_copy)
2014-aug-01 14:26:11.300 INFO core Connection to DF version "v0.40.05 (graphics)" established. [src\mainwindow.cpp:336] (connect_to_df)
2014-aug-01 14:26:12.014 WARNING core unidentified column type in set "General" ! [src\grid_view\viewcolumnset.cpp:300] (read_from_ini)
2014-aug-01 14:26:12.017 INFO core Loaded 13 views from disk [src\viewmanager.cpp:192] (reload_views)
2014-aug-01 14:26:12.021 INFO core group_by now set to 0 for view "Labors" [src\models\dwarfmodel.cpp:738] (set_group_by)
2014-aug-01 14:26:12.031 INFO core loaded rows for "Labors" 10 ms [src\models\dwarfmodel.cpp:744] (set_group_by)
2014-aug-01 14:26:12.041 INFO core group_by now set to 0 for view "Labors" [src\models\dwarfmodel.cpp:738] (set_group_by)
2014-aug-01 14:26:12.059 INFO core loaded rows for "Labors" 18 ms [src\models\dwarfmodel.cpp:744] (set_group_by)
2014-aug-01 14:26:12.059 INFO core "redrew views in 42ms" [src\viewmanager.cpp:321] (draw_views)
2014-aug-01 14:26:12.064 INFO core FOUND 32 squads [src\dfinstance.cpp:954] (load_squads)
2014-aug-01 14:26:12.092 INFO core current year: 126 [src\dfinstance.cpp:484] (load_dwarves)
2014-aug-01 14:26:12.092 INFO core using active units [src\dfinstance.cpp:1024] (get_creatures)
2014-aug-01 14:26:12.129 INFO core FOUND UNIT "0x106a9e48" "B?mbul Atzuloslan" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.134 INFO core FOUND UNIT "0x106aab50" "Lokum ?nulastod" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.141 INFO core FOUND UNIT "0x106ab858" "Udib Geshudzal?s" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.146 INFO core FOUND UNIT "0x106ac560" "Kel M?zirlolok" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.151 INFO core FOUND UNIT "0x106ad268" "Zasit Kolothlest" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.156 INFO core FOUND UNIT "0x106adf70" "Kivish Idash?teb" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.161 INFO core FOUND UNIT "0x106aec78" "Udib Stelidkogan" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.163 INFO core FOUND BEAST "0x106af980" "Giant Cave Spider" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.163 INFO core FOUND BEAST "0x106b0ef0" "Giant Cave Spider" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.164 INFO core FOUND BEAST "0x106b1bf8" "Giant Cave Spider" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.165 INFO core FOUND BEAST "0x106b2900" "Giant Cave Spider" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.166 INFO core FOUND BEAST "0x106b3608" "Giant Cave Spider" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.167 INFO core FOUND BEAST "0x106b4310" "Giant Cave Spider" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.168 INFO core FOUND BEAST "0x106b5018" "Hunting Giant cave swallow" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.169 INFO core FOUND BEAST "0x106b5d20" "Hunting Giant cave swallow" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.170 INFO core FOUND BEAST "0x106b6a28" "Hunting Giant cave swallow" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.171 INFO core FOUND BEAST "0x106b7730" "Hunting Giant cave swallow" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.173 INFO core FOUND BEAST "0x106b8438" "Hunting Giant cave swallow" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.173 INFO core FOUND BEAST "0x106b9140" "Hunting Giant cave swallow" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.174 INFO core FOUND BEAST "0x106b9e48" "Hunting Giant cave swallow" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.175 INFO core FOUND BEAST "0x106bab50" "Hunting Giant cave swallow" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.177 INFO core FOUND BEAST "0x106bb858" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.178 INFO core FOUND BEAST "0x106bc560" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.179 INFO core FOUND BEAST "0x106bd268" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.181 INFO core FOUND BEAST "0x106bdf70" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.182 INFO core FOUND BEAST "0x106bec78" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.183 INFO core FOUND BEAST "0x106bf980" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.184 INFO core FOUND BEAST "0x106c0ef0" "War Giant lynx" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.185 INFO core FOUND BEAST "0x106c1bf8" "War Giant lynx" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.187 INFO core FOUND BEAST "0x106c2900" "War Giant lynx" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.188 INFO core FOUND BEAST "0x106c3608" "Hunting Giant lynx" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.189 INFO core FOUND BEAST "0x106c4310" "Hunting Giant lynx" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.190 INFO core FOUND BEAST "0x106c5018" "Hunting Giant lynx" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.191 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.191 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.200 INFO core FOUND UNIT "0x1060bea0" "Zan Delethled" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.205 INFO core FOUND UNIT "0x10652930" "Kib Rovododdom" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.211 INFO core FOUND UNIT "0x106a6a28" "Rith M?rulborush" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.216 INFO core FOUND UNIT "0x0dd3a470" "S?kzul Likotebal" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.222 INFO core FOUND UNIT "0x0dd397a8" "K?buk Avuz?nal" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.227 INFO core FOUND UNIT "0x0dd38ae0" "Avuz Stinth?dm?shos" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.232 INFO core FOUND UNIT "0x0dd37e18" "Iden Mebmebzuth" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.238 INFO core FOUND UNIT "0x0dd37150" "K?buk Kaboslan" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.244 INFO core FOUND UNIT "0x0dd36488" "M?thkat At?kshorast" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.245 INFO core FOUND BEAST "0x106f1bf8" "Large Rat (Zunt?r Mafol?rith)" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.248 INFO core FOUND BEAST "0x106fb858" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.250 INFO core FOUND BEAST "0x106fc560" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.251 INFO core FOUND BEAST "0x106fd268" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.252 INFO core FOUND BEAST "0x106fdf70" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.253 INFO core FOUND BEAST "0x106fec78" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.254 INFO core FOUND BEAST "0x106ff980" "Cat" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.255 INFO core FOUND BEAST "0x10700ef0" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.256 INFO core FOUND BEAST "0x10701bf8" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.257 INFO core FOUND BEAST "0x10705018" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.258 INFO core FOUND BEAST "0x10705d20" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.266 INFO core FOUND UNIT "0x0ec399c8" "Udil Konosrig?th" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.266 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.271 INFO core FOUND UNIT "0x106a4310" "Endok Nethobok" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.276 INFO core FOUND UNIT "0x106a2900" "Domas T?gumfath" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.282 INFO core FOUND UNIT "0x106542c0" "Oddom Letmosf?ker" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.282 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.283 INFO core Ignoring "Unknown (Kol L?rrurast)" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.288 INFO core FOUND UNIT "0x10600cd0" "Erush Kelcagith" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.292 INFO core FOUND UNIT "0x0ec34b98" "Reg Libashrulush" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.297 INFO core FOUND UNIT "0x105fffc8" "Cog Avuzlocun" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.302 INFO core FOUND UNIT "0x105ff2c0" "Rovod Zatkogan" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.304 INFO core FOUND BEAST "0x10712900" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.305 INFO core FOUND BEAST "0x10713608" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.306 INFO core FOUND BEAST "0x10714310" "Kitten" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.307 INFO core FOUND BEAST "0x10715018" "Kitten" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.308 INFO core FOUND BEAST "0x10715d20" "Kitten" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.309 INFO core FOUND BEAST "0x10716a28" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.310 INFO core FOUND BEAST "0x10717730" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.311 INFO core FOUND BEAST "0x10718438" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.312 INFO core FOUND BEAST "0x10719140" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.313 INFO core FOUND BEAST "0x10719e48" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.315 INFO core FOUND BEAST "0x1071ab50" "Giant Lynx Cub" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.320 INFO core FOUND UNIT "0x10607070" "Zefon Oltarazin" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.327 INFO core FOUND UNIT "0x106a8438" "Nil Sedilkivish" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.332 INFO core FOUND UNIT "0x106a7730" "Ed?m Ginetudil" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.338 INFO core FOUND UNIT "0x10607d78" "Mist?m Sazirabal" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.344 INFO core FOUND UNIT "0x105f8a80" "Rakust Olinzimesh" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.349 INFO core FOUND UNIT "0x105f4958" "At?r Litastem" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.354 INFO core FOUND UNIT "0x10604958" "Adil Kurikvutok" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.355 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.361 INFO core FOUND UNIT "0x105f6368" "Nil Semorbesmar" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.366 INFO core FOUND UNIT "0x105f2240" "Datan Adurvad" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.371 INFO core FOUND UNIT "0x105f5660" "Ingish Urmimk?buk" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.377 INFO core FOUND UNIT "0x10610cd0" "Bim Tobulkab" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.382 INFO core FOUND UNIT "0x105fbea0" "Astesh Kerber" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.383 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.383 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.388 INFO core FOUND UNIT "0x10608a80" "D?bar L?nemducim" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.393 INFO core FOUND UNIT "0x0ec37fb8" "Tirist Istamlitast" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.398 INFO core FOUND UNIT "0x106a3608" "Bomrek Kolat?r" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.399 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.400 INFO core FOUND BEAST "0x1071ec78" "Duck (As?n R?senast)" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.405 INFO core FOUND UNIT "0x10602f48" "Ducim Beridos" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.412 INFO core FOUND UNIT "0x105fcba8" "Kivish Tabarsazir" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.417 INFO core FOUND UNIT "0x106a5018" "D?shmab Okirlikot" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.422 INFO core FOUND UNIT "0x105fb198" "Kib Rodumoslan" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.427 INFO core FOUND UNIT "0x105fa490" "Monom Lektad?teb" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.428 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.429 INFO core FOUND BEAST "0x10720ef0" "Loon (Esht?n Lunkol)" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.435 INFO core FOUND UNIT "0x10603c50" "Kib Kobelurdim" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.437 INFO core FOUND BEAST "0x10721bf8" "Dingo (Tekkud Nilat?s)" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.437 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.442 INFO core FOUND UNIT "0x1060a490" "Ustuth Delern?les" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.447 INFO core FOUND UNIT "0x10609788" "Udib Tunineth" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.453 INFO core FOUND UNIT "0x1060f2c0" "Zaneg Avuzokang" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.458 INFO core FOUND UNIT "0x106a5d20" "Mafol N?ciktobul" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.464 INFO core FOUND UNIT "0x1060ffc8" "Lolor Dastotcud?st" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.469 INFO core FOUND UNIT "0x1060e5b8" "?ton R?berkogan" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.474 INFO core FOUND UNIT "0x1060d8b0" "Ingish R?shkikrost" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.479 INFO core FOUND UNIT "0x1060cba8" "Zuglar Kelfeb" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.484 INFO core FOUND UNIT "0x10655c50" "Geshud M?ruldural" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.488 INFO core FOUND UNIT "0x10669560" "Etur Delerliruk" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.493 INFO core FOUND UNIT "0x10656918" "Kadol Ushatgusgash" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.494 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.495 INFO core FOUND BEAST "0x10724310" "Giant Cave Swallow Hatchling" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.496 INFO core FOUND BEAST "0x10725018" "Giant Cave Swallow Hatchling" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.498 INFO core FOUND BEAST "0x10725d20" "Giant Cave Swallow Hatchling" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.499 INFO core FOUND BEAST "0x10726a28" "Giant Cave Swallow Hatchling" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.500 INFO core FOUND BEAST "0x10727730" "Giant Cave Swallow Hatchling" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.505 INFO core FOUND UNIT "0x0ec38cc0" "Kikrost Lenodkol" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.509 INFO core FOUND UNIT "0x106a1bf8" "Stukos Logemonshen" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.514 INFO core FOUND UNIT "0x0ec3a6d0" "R?sen Katthircilob" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.518 INFO core FOUND UNIT "0x106a0ef0" "Unib ?rithilrom" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.524 INFO core FOUND UNIT "0x105f2f48" "Vab?k R?tharoddom" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.529 INFO core FOUND UNIT "0x105f7d78" "Endok Dedukolon" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.529 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.530 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.535 INFO core FOUND UNIT "0x105f3c50" "Tekkud Sh?mmankad?l" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.540 INFO core FOUND UNIT "0x105f7070" "Dakost ?samost" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.541 INFO core FOUND BEAST "0x10729e48" "Cougar Cub (Oddom Konosdakas)" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.543 INFO core FOUND BEAST "0x1072ab50" "Grizzly Bear (Erush Atulgeshud)" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.548 INFO core FOUND UNIT "0x0ec33e90" "Cerol Mengasol" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.552 INFO core FOUND UNIT "0x105fe5b8" "Doren Lesasterib" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.557 INFO core FOUND UNIT "0x105fd8b0" "Olon ?td?nesht?n" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.557 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.558 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.563 INFO core FOUND UNIT "0x10668898" "Al?th Zanegzeg" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.567 INFO core FOUND UNIT "0x10654f88" "Lorbam Tom?mlitast" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.572 INFO core FOUND UNIT "0x106535f8" "Udib Dumattathtak" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.573 INFO core FOUND BEAST "0x10730ef0" "Kitten" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.574 INFO core FOUND BEAST "0x10731bf8" "Kitten" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.580 INFO core FOUND UNIT "0x105f9788" "Kel Romlam?blel" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.581 INFO core FOUND BEAST "0x10732900" "Wombat Joey (Zuglar Moziblogem)" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.583 INFO core FOUND BEAST "0x10733608" "Blue Peachick (Inod R?senzas)" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.588 INFO core FOUND UNIT "0x1066bbb8" "K?buk Zunt?rkad?l" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.593 INFO core FOUND UNIT "0x10602240" "Thob Kilrudmesir" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.597 INFO core FOUND UNIT "0x1066aef0" "Tun ?ngizalod" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.601 INFO core FOUND UNIT "0x1066a228" "Monom Al?thamas" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.606 INFO core FOUND UNIT "0x0ec358a0" "Monom Avuznakuth" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.611 INFO core FOUND UNIT "0x0ec372b0" "Uzol Udibfarash" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.615 INFO core FOUND UNIT "0x10605660" "Oddom Akmeshducim" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.621 INFO core FOUND UNIT "0x10606368" "Ingish Zonliruk" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.625 INFO core FOUND UNIT "0x0ec365a8" "Thob Oddomzeg" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.630 INFO core FOUND UNIT "0x1060b198" "M?thkat M?rultarmid" [src\dfinstance.cpp:502] (load_dwarves)
2014-aug-01 14:26:12.630 INFO core Ignoring "Unknown" who appears to be "Dead, Jim." [src\dwarf.cpp:234] (has_invalid_flags)
2014-aug-01 14:26:12.632 INFO core FOUND BEAST "0x10735018" "Bobcat (Lolor At?sz?god)" [src\dfinstance.cpp:515] (load_dwarves)
2014-aug-01 14:26:12.632 INFO core read 144 units in 537 ms [src\dfinstance.cpp:520] (load_dwarves)
2014-aug-01 14:26:12.636 INFO core loaded population data in 4 ms [src\dfinstance.cpp:530] (load_dwarves)
Hello, I'm having a bit of trouble with Therapist 23.3 in combination with 40.05... (using win7 x64) When I try to start it with my current fort, which is a few years in it crashes when I start Therapist.if you can upload the save that would be great, that log doesn't seem to have quite enough to debug with.
Windows says "program stopped responding" and I get no other error. When I start a new fort, it works again so it must be something that happens later in a fort in this new DF version. This is the log file:Spoiler (click to show/hide)
Hello, I'm having a bit of trouble with Therapist 23.3 in combination with 40.05... (using win7 x64) When I try to start it with my current fort, which is a few years in it crashes when I start Therapist.if you can upload the save that would be great, that log doesn't seem to have quite enough to debug with.
Windows says "program stopped responding" and I get no other error. When I start a new fort, it works again so it must be something that happens later in a fort in this new DF version. This is the log file:Spoiler (click to show/hide)
i tried using the dt in the package and everything worked just fine. maybe it's some permission issue with where you're running LNP from?Hello, I'm having a bit of trouble with Therapist 23.3 in combination with 40.05... (using win7 x64) When I try to start it with my current fort, which is a few years in it crashes when I start Therapist.if you can upload the save that would be great, that log doesn't seem to have quite enough to debug with.
Windows says "program stopped responding" and I get no other error. When I start a new fort, it works again so it must be something that happens later in a fort in this new DF version. This is the log file:Spoiler (click to show/hide)
I uploaded my whole starter pack folder, just to be sure because I'm using a few cheaty custom reactions and a graphics pack. It's the save from region 2. Thanks for the effort
dropbox 7zip:Spoiler (click to show/hide)
Dash, I have Ubuntu 12.04 as well, and ExpHP told my to cp the executable from /bin/release to the main folder like so:
cd to your DT folder (mine is called Dwarf-Therapist-2014, but change the name to whatever yours is)
'cp Dwarf-Therapist-2014/bin/release/DwarfTherapist Dwarf-Therapist-2014'
then run from your home directory like so 'sudo ./Dwarf-Therapist-2014/DwarfTherapist'
Apparantly, DT is having trouble finding some files when run from the original folder.
sudo apt-get install qtchooser qtbase5-dev qtbase5-dev-tools qtscript5-dev qt5-qmake libqt5script5 libqt5scripttools5 libqxt-core0 libqxt-gui0
./DwarfTherapist: symbol lookup error: ./DwarfTherapist: undefined symbol: _ZN11QHeaderView10setVisibleEb
Edit: I had some time to kill this morning, so I installed 12.04 into a VM and downloaded that PPA's packages. Same error. I then tried putting Trusty's main restricted repositories into sources.list and re-downloading the packages, however I got the same error. The only way I got DT to run was by building from source, and it started right up this time. The instructions for building are here and in case you're unfamiliar with installing from source I think the following commands will work for you:
https://github.com/splintermind/Dwarf-Therapist/blob/master/BUILDING.txt (https://github.com/splintermind/Dwarf-Therapist/blob/master/BUILDING.txt)Code: [Select]sudo apt-get install git make build-essential
git clone git://github.com/splintermind/Dwarf-Therapist.git
cd Dwarf-Therapist
qmake -qt=5
make
(Compiling will take a while)
sudo make install
cd /usr/bin
sh dwarftherapist
It only comes with 34.11 memory layouts, so after this you will want to copy the contents of your LNP DT memory_layouts folder inCode: [Select][Location of LNP]/LNP/utilities/dwarftherapist/etc/memory_layouts/linux
You will likely need to do this as root.
- to -
/usr/share/dwarftherapist/etc/memorylayouts/linux
What I think is going on is that the binary that ships with LNP is simply compiled on 14.04 or something similar and the binary does not know where to look for QT5 on any other setup. If this is the case it is likely the reason why the actual github page does not provide a Linux binary as with Win/OSX.
Worked like a charm, except I had to copy the memory layouts from the standalone download of DT not the one in the LNP (which didn't have the file for 40.05).
git clone git://github.com/splintermind/Dwarf-Therapist.git
git clone git://github.com/splintermind/Dwarf-Therapist.git DF2014
echo 0|sudo tee /proc/sys/kernel/yama/ptrace_scope
And then turning it on again after closing:echo 1|sudo tee /proc/sys/kernel/yama/ptrace_scope
sudo apt-get install libcap2-bin && sudo setcap cap_sys_ptrace=eip ./bin/release/DwarfTherapist
Changing the path in the last command to point to wherever your DFT executable is.It only comes with 34.11 memory layouts, so after this you will want to copy the contents of your LNP DT memory_layouts folderAnd that was the answer to my question. Thanks, IronSI, but I didn't have any problems with compiling or running executable.
What's preventing this memory layout to be added to the DT branch?https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts
Liking the more compact view a lot in latest git.
Liking the more compact view a lot in latest git.you mean the labor view?
Prepare for the rush of slave drivers. <3
While patienly waiting for 40.06-compatible version, can we please see the new Discipline skill somwhere in the grid? Now I only see it at dwarf's details and it's not easy sortable.until it's added to the default gridview(s) you can still copy a gridview (from the gridviews dock), and add the column wherever you'd like.
just for *sites and giggles, I did some stat analysis on the roles and mapped a histogram of the distribution curve.http://xkcd.com/833/ (http://xkcd.com/833/)
The double spike is how the algorithms split the data around .5 mean
http://imgur.com/vIBs3Hg
Thank you, that worked. Though I modified grid file manually instead of using Grid Editor that I've just discovered. :DWhile patienly waiting for 40.06-compatible version, can we please see the new Discipline skill somwhere in the grid? Now I only see it at dwarf's details and it's not easy sortable.until it's added to the default gridview(s) you can still copy a gridview (from the gridviews dock), and add the column wherever you'd like.
[OSX] Dwarf Therapist 23.3 for 40.06 (http://dffd.wimbli.com/file.php?id=9127)Ah curse you, didn't notice the OSX :(
[OSX] Dwarf Therapist 23.3 for 40.06 (http://dffd.wimbli.com/file.php?id=9127)Ah curse you, didn't notice the OSX :(
[OSX] Dwarf Therapist 23.3 for 40.06 (http://dffd.wimbli.com/file.php?id=9127)Ah curse you, didn't notice the OSX :(
Just copy memory layout from https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/etc/memory_layouts/windows if you use Windows version.
I downloaded the 40.04 and 40.06 files from that link (since they were the only two changed w/i the last 8 days) and overwrote the existing 40.04 and added the 40.06 to the etc->memory layout->windows folder in DT but it still comes up as error cannot talk to this version of DF? am i missing a file here? I have DT 23.3.0I did the same thing: I right clicked to save, but the link leads to a pretty viewing page, not the actual file, so I downloaded an 85kb html page.
edit: I'm actually pretty sure I downloaded the files wrong. I right-clicked and did save-as, but i got 85kb files (i think they should be ~7). Never used github before, could anyone tell me how to download those .ini files?
Alternately, you can pull up the pretty viewing page and copy the contents of the file into a blank text file then rename the file. Make sure its a .ini file and not a .ini.txt file to ensure DT can find it.I downloaded the 40.04 and 40.06 files from that link (since they were the only two changed w/i the last 8 days) and overwrote the existing 40.04 and added the 40.06 to the etc->memory layout->windows folder in DT but it still comes up as error cannot talk to this version of DF? am i missing a file here? I have DT 23.3.0I did the same thing: I right clicked to save, but the link leads to a pretty viewing page, not the actual file, so I downloaded an 85kb html page.
edit: I'm actually pretty sure I downloaded the files wrong. I right-clicked and did save-as, but i got 85kb files (i think they should be ~7). Never used github before, could anyone tell me how to download those .ini files?
Go to the pretty viewing page, and there's a button that says "raw".
Quick question, dunno if I missed a setting or choice somewhere, but I was wondering if you were planning on including the information such as how mighty or quick to tire they are and such when hovering over the dwarf?
Thank you, that worked. Though I modified grid file manually instead of using Grid Editor that I've just discovered. :DWhile patienly waiting for 40.06-compatible version, can we please see the new Discipline skill somwhere in the grid? Now I only see it at dwarf's details and it's not easy sortable.until it's added to the default gridview(s) you can still copy a gridview (from the gridviews dock), and add the column wherever you'd like.
[OSX] Dwarf Therapist 23.3 for 40.06 (http://dffd.wimbli.com/file.php?id=9127)Ah curse you, didn't notice the OSX :(
Splinterz we really need to work on the guide's visibility. What's the point of having all of these features if no one knows they exist? The menu re-arrangement and filter enhancement features I mentioned earlier would also help.yeah now that the superlabor stuff is in, i think next up is going to have to be the menu retooling. i've put the preference filtering in on the last release, so maybe we'll get some feedback on it.
i'll mess around and see if i can get a crash. if you've got some steps that can consistently reproduce it, let me know.[OSX] Dwarf Therapist 23.3 for 40.06 (http://dffd.wimbli.com/file.php?id=9127)Ah curse you, didn't notice the OSX :(
Yay!
On a related note: anyone have any ideas why DT crashes whenever I try to modify a grid view? Copying is fine. Changing the name is fine. Deleting a set is fine. But when I got to edit the columns in a set (right-click in the right pane, specifically), it crashes.
Why don't I see labours for recovering wounded and feeding patients?that's ResMar's new and improved view! the old one is still there as labors alt. though. i should probably move/recolor them to match ResMar's layout, provided it won't piss off too many players expecting columns in a particular place..
/snipYou need to compile the DF2014 branch, not the master:
How would someone go about compiling v23.4 in linux?
git clone git://github.com/splintermind/Dwarf-Therapist.git DF2014
orgit checkout DF2014
How would someone go about compiling v23.4 in linux?You need to compile the DF2014 branch, not the master:Code: [Select]git clone git://github.com/splintermind/Dwarf-Therapist.git DF2014
Is there any way to view Dwarf "Beliefs" (value token) in column form similar to how the traits tab shows their "Facets" (personality token).yeah i'm planning to be added them as columns like the others.
Or any chance for that to be added in the future?
I like to keep an eye out for TRADITION, INDEPENDENCE, and a few others when looking to assign Engravers, and Fortress Guard members respectively. Whether or not they have any real effect at the moment.
Being able to spot the outliers at a glance would make it a lot easier.
i'll mess around and see if i can get a crash. if you've got some steps that can consistently reproduce it, let me know.[OSX] Dwarf Therapist 23.3 for 40.06 (http://dffd.wimbli.com/file.php?id=9127)Ah curse you, didn't notice the OSX :(
Yay!
On a related note: anyone have any ideas why DT crashes whenever I try to modify a grid view? Copying is fine. Changing the name is fine. Deleting a set is fine. But when I got to edit the columns in a set (right-click in the right pane, specifically), it crashes.
do you have any custom professions or super labors?i'll mess around and see if i can get a crash. if you've got some steps that can consistently reproduce it, let me know.[OSX] Dwarf Therapist 23.3 for 40.06 (http://dffd.wimbli.com/file.php?id=9127)Ah curse you, didn't notice the OSX :(
Yay!
On a related note: anyone have any ideas why DT crashes whenever I try to modify a grid view? Copying is fine. Changing the name is fine. Deleting a set is fine. But when I got to edit the columns in a set (right-click in the right pane, specifically), it crashes.
It doesn't happen on the Windows one, only the OSX. (Note to self: don't post while tired. You forget key info.)
I copy a grid to edit, open it, and right click on the right pane, where the columns in sets are listed. It immediately crashes. I can change the name of the grid, change the sets, save the grid & reopen it, do nothing except try to edit the columns and it will still crash when I go to edit columns.
It's just an annoying thing, because I'd like to have a Roles grid that matches the Alt Labors grid, with the custom Bee Keeper, etc roles added in to match.
new and improved? I find it hard to see how removing access to labours we might want to disable (e.g. if we're setting up nurses) as an improvement..it's just a default they're (graciously and for free) providing. you can always create your own grids with whatever combination of jaunts you want.
do you have any custom professions or super labors?i'll mess around and see if i can get a crash. if you've got some steps that can consistently reproduce it, let me know.[OSX] Dwarf Therapist 23.3 for 40.06 (http://dffd.wimbli.com/file.php?id=9127)Ah curse you, didn't notice the OSX :(
Yay!
On a related note: anyone have any ideas why DT crashes whenever I try to modify a grid view? Copying is fine. Changing the name is fine. Deleting a set is fine. But when I got to edit the columns in a set (right-click in the right pane, specifically), it crashes.
It doesn't happen on the Windows one, only the OSX. (Note to self: don't post while tired. You forget key info.)
I copy a grid to edit, open it, and right click on the right pane, where the columns in sets are listed. It immediately crashes. I can change the name of the grid, change the sets, save the grid & reopen it, do nothing except try to edit the columns and it will still crash when I go to edit columns.
It's just an annoying thing, because I'd like to have a Roles grid that matches the Alt Labors grid, with the custom Bee Keeper, etc roles added in to match.
do you have any custom professions or super labors?It looks like a different problem, so far all of my build have this. I'm checking if it's something to do with QT 5.3, the last version without this is 21.2 built in february using QT 5.2.1.
The problem is not with QT 5.3 either.do you have any custom professions or super labors?It looks like a different problem, so far all of my build have this. I'm checking if it's something to do with QT 5.3, the last version without this bug is 21.2 built in february using QT 5.2.1.
new and improved? I find it hard to see how removing access to labours we might want to disable (e.g. if we're setting up nurses) as an improvement..
Why would ever want to turn Feed/Clothe Prisoners off (besides for RP purposes), and why does such a niche labor have to pollute the view?
Why would ever want to turn Feed/Clothe Prisoners off (besides for RP purposes), and why does such a niche labor have to pollute the view?
Because those are two more excuses for an important dwarf to not do their job.
That should not be a hoop I have to jump through by default.Then write your own app to manage this.
I have to second this sentiment.That should not be a hoop I have to jump through by default.Then write your own app to manage this.
I don't see why these labors should be hidden by default - whenever I turn off hauling and other labors for an important dwarf (e.g. a broker), I turn off hospital labors as well. I'm not opposed to allowing them to be hidden (although I doubt they take up enough space to make a difference), but I personally think hiding them by default will end up confusing players.I have to second this sentiment.That should not be a hoop I have to jump through by default.Then write your own app to manage this.
Thanks for all the hard work, guys! DT (and tilesets) allow me to actually play Dwarf Fortress! *blush*
I don't see why these labors should be hidden by default - whenever I turn off hauling and other labors for an important dwarf (e.g. a broker), I turn off hospital labors as well. I'm not opposed to allowing them to be hidden (although I doubt they take up enough space to make a difference), but I personally think hiding them by default will end up confusing players.I have to second this sentiment.That should not be a hoop I have to jump through by default.Then write your own app to manage this.
Thanks for all the hard work, guys! DT (and tilesets) allow me to actually play Dwarf Fortress! *blush*
The two missing labors is the one thing stopping me from using the new labor view at the moment. Once I figure out how to add them back in* I'll certainly switch since in every other way it does seem quite nice.As has been mentioned, check the manual on customizing grid views to your heart's content. It's chapter 9 in the latest manual.
* hopefully even grouped with the hauling labors if I can manage it.
There is simply no reason to arbitrarily pick two labours out of the entire list and hide them simply because someone doesn't think they're that "important".Gotta agree with that. Maybe someone should make a poll or something? It is clearly something that isn't appreciated by everyone.
What choices should be on the poll?There is simply no reason to arbitrarily pick two labours out of the entire list and hide them simply because someone doesn't think they're that "important".Gotta agree with that. Maybe someone should make a poll or something? It is clearly something that isn't appreciated by everyone.
Well, I can think of just a few, but feel free to add or comment on them. Also, I wasn't paying too much attention to the discussion, it's just that phrase that caught my attention.What choices should be on the poll?There is simply no reason to arbitrarily pick two labours out of the entire list and hide them simply because someone doesn't think they're that "important".Gotta agree with that. Maybe someone should make a poll or something? It is clearly something that isn't appreciated by everyone.
It should be "git clone git://github.com/splintermind/Dwarf-Therapist.git -b DF2014". Without the -b, git will clone DT to a folder named "DF2014".How would someone go about compiling v23.4 in linux?You need to compile the DF2014 branch, not the master:Code: [Select]git clone git://github.com/splintermind/Dwarf-Therapist.git DF2014
Nope. Like I said, if I do that, the compiled program says that it's version 22.0 of the branch, according to Help > About. This was the problem I was having before, it would always compile the oldest version of the branch, not the newest. I am right in thinking that github preserves all the old code, in addition to newer code?
Well, I can think of just a few, but feel free to add or comment on them. Also, I wasn't paying too much attention to the discussion, it's just that phrase that caught my attention.What choices should be on the poll?There is simply no reason to arbitrarily pick two labours out of the entire list and hide them simply because someone doesn't think they're that "important".Gotta agree with that. Maybe someone should make a poll or something? It is clearly something that isn't appreciated by everyone.
1) Hide every unimportant labour by default instead of picking 2 unimportant labours to hide;
2) Don't hide anything and let people decide what labours are unimportant for them, creating custom gridviews if needed;
3) Hide the 2 labours that were chosen as unimportant by ResMar by default and let people create custom gridviews for hiding other labours that they consider unimportant.
I see. Well, I'm a big fan of letting people decide what's best for them, so that's why I suggested a poll. This seems to be a thread that the newbies access a lot as well, so the poll results would probably be fairly representative of their opinion. Well, maybe. You guys probably understand the DF newbies better than me though, since I've never been much of an active community member, even though I've been a player since DF 31.04.Well, I can think of just a few, but feel free to add or comment on them. Also, I wasn't paying too much attention to the discussion, it's just that phrase that caught my attention.What choices should be on the poll?There is simply no reason to arbitrarily pick two labours out of the entire list and hide them simply because someone doesn't think they're that "important".Gotta agree with that. Maybe someone should make a poll or something? It is clearly something that isn't appreciated by everyone.
1) Hide every unimportant labour by default instead of picking 2 unimportant labours to hide;
2) Don't hide anything and let people decide what labours are unimportant for them, creating custom gridviews if needed;
3) Hide the 2 labours that were chosen as unimportant by ResMar by default and let people create custom gridviews for hiding other labours that they consider unimportant.
So, catching you up on the discussion so far - essentially there are two types of users of DT. I've yet to see anyone post anything wanting those two labors with a solid use-case for newbies, as opposed to ResMar's take on it. The bigger win is making the customization of gridviews more prominent/easier to use since those who know enough to have specific tweaks they prefer should be using customized views in the first place.
E: Wondering how hard it would be to have "community" views that you could subscribe to, a-la Steam Workshop.
...Once I figure out how to add them back in...
crossmr and salithus need to cool off. Please stop fighting in the thread.thanks for stepping in on that erm.. conversation.
Holy smokes, this really blew up while I was away. I actually rubbed my eyes a bit when I saw the Toady toad in the avatar.i think it's a valid concern that not every labor is accessible in the base view (especially for new players). nobody seems to be complaining about the column rearrangement nor the new colors, so let's keep that and just create a 'compact' and 'full' version of the view by default, as you've suggested. my arbitrary naming scheme probably didn't help either.
A solution would to split the view into two, one "compact" version which further compresses the hauling labors to one column (something I suggested in the guide that couldn't be implemented until recently with the introduction of super-labors, and which I have implemented in the latest versions of the guide), and an expanded view that basically lets it all hang out. It wouldn't be hard to do, and would address this...warring....Once I figure out how to add them back in...
So Splinterz, maybe a splash screen, so that when you load the program the first time, it prompts you with "FYI there's a guide"?
i think it's a valid concern that not every labor is accessible in the base view (especially for new players). nobody seems to be complaining about the column rearrangement nor the new colors, so let's keep that and just create a 'compact' and 'full' version of the view by default, as you've suggested. my arbitrary naming scheme probably didn't help either.
yeah that manual needs a button on the main toolbar for visibility.
I do not believe that any labors should be hidden be default.are those new views still hiding labours then? i haven't had a chance to look.
For one thing, I routinely toggle off all labors on someone or a group of dwarves and then manually turn on labors that I want the specific dwarf to have. Without all labors shown, this will get... Problematic.
DT used to be a useful tool for me, but the recent (or perhaps, "recent") updates have added nothing that is actually useful for me, while making it more tedious to use. If I had more time, I'd fork it. As-is... I don't know. I've largely simply stopped using it.
I got lost in the Farmer sublabors one too many times to tolerate the default labor arrangement. Toady's structure works when your labor toggles are a textual list---less so when they're in a matrix. Remember also that Toady limits himself to a certain restricted color pallet in the interface.the compact view will give anyone who doesn't have that specific hauling superlabor problems.
Here is the compact grid view:
http://dffd.wimbli.com/file.php?id=9233
Here is the expanded grid view:
http://dffd.wimbli.com/file.php?id=9314
If you're looking for opinions, in 23.4 I switched to "Labors Alt." and then settled on "Labors NO SPACERS" as my view after I discovered the loss of Cleaning as something I could adjust. (when migrating from 23.0)thanks for the encouragement :D for your feature request, i believe what you want to use are the new superlabors. you can create them from a dwarf via the right click menu, or from the button beside the new custom profession button on the customization dock. however they're really for toggling multiple labors, you can't (yet?) apply them as a mask like custom professions, if that's what you require.
My personal view is that I want to see ALL the labors by default. Having additional optional views with less information is great, but give it to me straight, up front. :)
Also, and I realize this is nitpicking..but I have a feature request;
When I set a custom profession, personally I just want to set the labors, and not adjust the profession/title. At the moment, this means I create a custom profession, apply it, and then as an additional step, I use the customization sub-menu and select "Reset to Default Profession" so the name is not applied.
I have to do this each time, which is a little bit tedious and to a degree, takes away some of the value or convenience of using Custom Professions, for me.
As an option, it would be nice if we could get a checkbox for "Apply Custom Profession Titles with Custom Profession Labors" and have it enabled by default. That way, for those of us content with the in-game professions, we would only have to de-select that and everything would be grand. When de-selected, only the labors would be applied.
( btw, I did read through and search the manual several times and couldn't find a way to do this, currently, but would be happy to be educated if the option already exists and I missed it. )
splinterz, this is a fantastic piece of software, and you're awesome for maintaining it. Good job, well done, thank you very much for all the time & effort to date. :D
I got lost in the Farmer sublabors one too many times to tolerate the default labor arrangement. Toady's structure works when your labor toggles are a textual list---less so when they're in a matrix. Remember also that Toady limits himself to a certain restricted color pallet in the interface.the compact view will give anyone who doesn't have that specific hauling superlabor problems.
Here is the compact grid view:
http://dffd.wimbli.com/file.php?id=9233
Here is the expanded grid view:
http://dffd.wimbli.com/file.php?id=9314
as soon as i figure out how to get more hours in a day i'll be able to appease all your whims and demands. until then, you may have to be patient. it shouldn't blow up or anything if it's missing the superlabor you've added to the view, but it won't do anything and just state it's an unknown column.I got lost in the Farmer sublabors one too many times to tolerate the default labor arrangement. Toady's structure works when your labor toggles are a textual list---less so when they're in a matrix. Remember also that Toady limits himself to a certain restricted color pallet in the interface.the compact view will give anyone who doesn't have that specific hauling superlabor problems.
Here is the compact grid view:
http://dffd.wimbli.com/file.php?id=9233
Here is the expanded grid view:
http://dffd.wimbli.com/file.php?id=9314
Well then, add superlabors to the import/export files. I did a quick test and deleted the superlabor, then imported the view, and it seemed to me like you had done this already?
hah, I didn't even notice cleaning was missing. I guess I never used it much.
I got lost in the Farmer sublabors one too many times to tolerate the default labor arrangement. Toady's structure works when your labor toggles are a textual list---less so when they're in a matrix. Remember also that Toady limits himself to a certain restricted color pallet in the interface.
Here is the compact grid view:
http://dffd.wimbli.com/file.php?id=9233
Here is the expanded grid view:
http://dffd.wimbli.com/file.php?id=9314
What I disliked about this discussion was that not everyone seems to realize that the old view hasn't been eliminated, only renamed: it's still in there, and you bring it up at any time using the view drop-down menu. Because if Therapist users don't realize they can do that, then they must not realize how to use any of the programs many other, advanced features as well; and that's a problem both for Splinterz, who spends god-only-knows how much time writing these features, and for me, who spent, by my count, close to 50 hours [learning how to use these features and] writing a guide specifically aimed at addressing this issue.Whether you are doing it for free or not, you still have a typical business/customer relationship with the users. If you're taking the time to do this and share it, it's because you want people to actually use it which means you actually have to listen to feedback and take people's needs into consideration. In business you never blame the customer, and in software you never blame the user. If users are struggling to find information and understand features that isn't their fault as a group. While you might actually get some utterly clueless users at times, for the most part you users are average people and those are the people who still have an issue with the way things are right now.
I did the following: export the compact labors gridview; delete the compact labors gridview; delete the hauling superlabor; import the compact labors gridview; open the compact labors gridview. The view works, and the hauling superlabor is added to the customizations dock. It doesn't appear that you have to do any additional work on this.there's something else, possibly a bug, happening with the deleting/loading then. if the superlabor doesn't exist in the dwarf therapist.ini, the view will not be able to find it. there's no way for it to create a superlabor from a gridview import, because the views only keep track of what columns they should have, not what every column consists of.
BUG: v23.4aren't working as in nothing happens, or a crash or what?
Under the Roles menu selection, the Edit and Remove custom roles selections aren't working.
Thanks for continuing and improving DT as I feel it is a necessity.
Nothing happens. It doesn't crash. It doesn't expand to the right like the arrow suggests.BUG: v23.4aren't working as in nothing happens, or a crash or what?
Under the Roles menu selection, the Edit and Remove custom roles selections aren't working.
Thanks for continuing and improving DT as I feel it is a necessity.
what kind of custom roles do you have? do you have some that override the default roles perhaps?Nothing happens. It doesn't crash. It doesn't expand to the right like the arrow suggests.BUG: v23.4aren't working as in nothing happens, or a crash or what?
Under the Roles menu selection, the Edit and Remove custom roles selections aren't working.
Thanks for continuing and improving DT as I feel it is a necessity.
I had used this feature in the past, but haven't made use of it until recently.
Windows 8
Whether you are doing it for free or not, you still have a typical business/customer relationship with the users. If you're taking the time to do this and share it, it's because you want people to actually use it which means you actually have to listen to feedback and take people's needs into consideration. In business you never blame the customer, and in software you never blame the user. If users are struggling to find information and understand features that isn't their fault as a group. While you might actually get some utterly clueless users at times, for the most part you users are average people and those are the people who still have an issue with the way things are right now.
Whether you are doing it for free or not, you still have a typical business/customer relationship with the users. If you're taking the time to do this and share it, it's because you want people to actually use it which means you actually have to listen to feedback and take people's needs into consideration. In business you never blame the customer, and in software you never blame the user. If users are struggling to find information and understand features that isn't their fault as a group. While you might actually get some utterly clueless users at times, for the most part you users are average people and those are the people who still have an issue with the way things are right now.I dont agree with that part all that much. I always go more for the Pareto Principle, which is the 20/80 rule. 20% of your users give you 80% of your feedback.
yeah it's that's something important to remember; the vocal minority. sometimes the ideas are great, other times, you look back and realize that if you'd listened to your customers and done everything they'd asked for, you'd be in a very bad place.QuoteWhether you are doing it for free or not, you still have a typical business/customer relationship with the users. If you're taking the time to do this and share it, it's because you want people to actually use it which means you actually have to listen to feedback and take people's needs into consideration. In business you never blame the customer, and in software you never blame the user. If users are struggling to find information and understand features that isn't their fault as a group. While you might actually get some utterly clueless users at times, for the most part you users are average people and those are the people who still have an issue with the way things are right now.I dont agree with that part all that much. I always go more for the Pareto Principle, which is the 20/80 rule. 20% of your users give you 80% of your feedback.
But as someone in a similar position as Splinterz: It can be hard sometimes when you get a bunch of negative comments or demands or misunderstandings thrown around, while you work hard and sacrifice your free time for something that only other people use. It can be taxing, but is usually resolved by just taking a day off. At least in my case. ;)
hah, I didn't even notice cleaning was missing. I guess I never used it much.
I still say that the compact view is the better default, but others are right in pointing out that there should be an expanded fancy crayola fill-on one as well.
What I disliked about this discussion was that not everyone seems to realize that the old view hasn't been eliminated, only renamed: it's still in there, and you bring it up at any time using the view drop-down menu. Because if Therapist users don't realize they can do that, then they must not realize how to use any of the programs many other, advanced features as well; and that's a problem both for Splinterz, who spends god-only-knows how much time writing these features, and for me, who spent, by my count, close to 50 hours [learning how to use these features and] writing a guide specifically aimed at addressing this issue.
I only created one role and only one shows up when right-clicking and assigning a role. So I can assign and create a role, but I can't delete or edit it. It's pretty much a straight oob installation. I only copy in my macros and keyboard settings for new releases of DF.what kind of custom roles do you have? do you have some that override the default roles perhaps?Nothing happens. It doesn't crash. It doesn't expand to the right like the arrow suggests.BUG: v23.4aren't working as in nothing happens, or a crash or what?
Under the Roles menu selection, the Edit and Remove custom roles selections aren't working.
Thanks for continuing and improving DT as I feel it is a necessity.
I had used this feature in the past, but haven't made use of it until recently.
Windows 8
only one shows up when right-clicking and assigning a rolethis almost sounds like you're talking about custom professions, can you explain how and what you're assigning a role to?
I just found your guide yesterday. After seeing a few mentions of a guide and how it should be more visible, I looked at the first post of this thread, went to the homepage linked from the first post, and couldn't find any mention of it in either place. Since I didn't know that the guide was something you (ResMar) had done, I didn't look at your signature (I tend to ignore them unless I'm looking for something specific, since they mostly contain useless stuff). So I finally ended up googling for "Dwarf Therapist Guide" and found it that way. Yeah, it really does need to be more visible.
Splinterz, How about adding a link to the guide from the first post, and also from the project home page (if that's doable)? Those are the first places people are likely to look for documentation.
BTW, It looks like a great guide for a great program. I've been using Therapist for years, but have taken a DF hiatus for a while, and lots has been added since I last used it. I've read a little over half of it so far, and it's pretty clear, and written in a very readable style. I hope the section on the optimizer is as good as what I've read so far, because it looks like it could be really useful, but when I tried messing with it a few days ago, I couldn't figure out what do do with it. Thanks to both Splinterz and ResMar for all of the work that has gone into both the guide and Dwarf Therapist.
For thios who haven't found it, the guide can be downloaded from http://dffd.wimbli.com/file.php?id=7889 (http://dffd.wimbli.com/file.php?id=7889) (or is there a better place?)
Seeing the discussions about the grid views, IMO the default should be the same as it has in the past and as has been covered in many LTP videos. The fact that it is only two clicks to change the view can also be applied as "Yes, it only takes two clicks for someone to pull up a new and improved view."
You are correct, my bad. I'm not defining any custom roles so that would explain why the items aren't expanding out for me.only one shows up when right-clicking and assigning a rolethis almost sounds like you're talking about custom professions, can you explain how and what you're assigning a role to?
Question/Feature Request:i think what might work for you is sorting by the body size. right click on the column header above the name, and you'll have special sort options, including body size.
Is it possible to tweak the Animals panel (either something that's already there that I'm overlooking, or something for a future release) to show the description of individual animals? You know, the stuff you get on their status screens: "gigantic", "enormous yet skinny" etc? It'd make it easier to decide who / how many to butcher. :)
(If this is something already brought up & discussed, sorry for missing it!)
yeah there's a lot of management that's directly through the docks at the moment. ResMar has also requested that the menus be retooled to have everything up in the top menu bar, so you could add/edit/remove custom professions like how you can access custom roles.You are correct, my bad. I'm not defining any custom roles so that would explain why the items aren't expanding out for me.only one shows up when right-clicking and assigning a rolethis almost sounds like you're talking about custom professions, can you explain how and what you're assigning a role to?
It's all starting to come back to me, now (been about 6 mo. since last played). So I have to open the Customizations window and then I can right-click the custom professions to edit / delete. Enhancement request would be to make that available from the same right-clicking on dwarf to create the custom profession from that dwarf's labors.
Question/Feature Request:i think what might work for you is sorting by the body size. right click on the column header above the name, and you'll have special sort options, including body size.
Is it possible to tweak the Animals panel (either something that's already there that I'm overlooking, or something for a future release) to show the description of individual animals? You know, the stuff you get on their status screens: "gigantic", "enormous yet skinny" etc? It'd make it easier to decide who / how many to butcher. :)
(If this is something already brought up & discussed, sorry for missing it!)
QuoteWhether you are doing it for free or not, you still have a typical business/customer relationship with the users. If you're taking the time to do this and share it, it's because you want people to actually use it which means you actually have to listen to feedback and take people's needs into consideration. In business you never blame the customer, and in software you never blame the user. If users are struggling to find information and understand features that isn't their fault as a group. While you might actually get some utterly clueless users at times, for the most part you users are average people and those are the people who still have an issue with the way things are right now.I dont agree with that part all that much. I always go more for the Pareto Principle, which is the 20/80 rule. 20% of your users give you 80% of your feedback.
But as someone in a similar position as Splinterz: It can be hard sometimes when you get a bunch of negative comments or demands or misunderstandings thrown around, while you work hard and sacrifice your free time for something that only other people use. It can be taxing, but is usually resolved by just taking a day off. At least in my case. ;)
not to say that this gridview fiasco is exactly one of those moments, just that unyielding mentally that 'the customer is always right' rubs me the wrong way (which is probably why i'm encouraged to avoid all contact with clients normally :D)There is a reason it's basically the number one rule in business. Because any company that doesn't follow that is pretty much setting themselves up for failure. It doesn't actually mean the customer is always right though. What it really means is that the customer should be made to feel like they're always right. We only need to look around the internet for tons of examples where creators ignored the users and it ended up essentially killing their project.
That URL is correct. Glad you like it, and that I (and/but moreso Splint) now understands where the issue is. Catching up the documentation to the program took me a lot of time because, like you, I've been waiting for DF2014 to drop. I give a fluid explanation of how optimization plans work, if you liked the rest of the explanations you'll like that one too: though the only usecase I have in the guide right now is the holistic "Putting it all Together" example of military drafting.
the group labors toggle swaps all labors
How do I disable giving food/water?you'll need to use the alt labor view, or create/copy a view to access all the labors until i get another release out with the updated 'compact' and 'full' gridviews. Edit: or you can just import the views linked up in the thread.
If you do some math I'm sure you can find the right ratios to get what you're looking for. Personally though I only ever use the optimizer to dedicate dwarves. I'd rather have a weaver who isn't employed that often, but jumps to it when it's time, then go through the efforts of intricately organizing labor sets that are easy to forget and hard to optimize (heh, get it?).
The usecases I'm looking at for optimization plans are standard industry-starter ones. Things like setting up a clothing industry or a metalsmith shop with a preset number of laboring dwarves. This'll be easier to do once numerical optimization is explicitly implemented, which'll take out the extra step of figuring out and implementing what percentage of the dwarves you have selected you want to get optimized.
Splint if you ever get burned out know this, once the current tasks are done you'll be feature complete and can go on vacation. The way forward at that point would require outsourcing Dwarf Therapist memory access to DFHack, which would be quite the task.
Am I missing seeing them, or are there no roles set up for Spinner or Shearer? Or or they covered in another role?You are quite correct. The current release doesn't have them built in, but you can make your own using the attributes listed in the wiki as well a few guesses on what types of items might be useful. The skills without roles are spinning, shearing, glazing, pressing, wax working and pottery.
Also, does anyone have any suggestions for using Dwarf Therapist for picking a Baron when the outpost liaison suddenly asks one to pick someone? I want to pick someone who doesn't have any awkward preferences. According to the wiki, item preferences lead to mandates, while material preferences lead to demands. I guess this is somewhat situation dependent, since if I have lots of copper I won't mind a Baron who demands copper items, but if I don't have any then I don't want a copper-lover. But I'm wondering if anyone has made a role or filter (or any other ideas) for this sort of thing?I would recommend making a custom role that gives negative weight to all items, positives to social/empathy attributes and positives to social skills. Then simply select the dwarf with the best match. If the dwarf doesn't have any item preferences then there will be neither mandates nor demands.
[info]
DT_version\major=23
DT_version\minor=3
DT_version\patch=0
export_date=@Variant(\0\0\0\x10\0%}0\0-G\xef\xff)
[custom_roles]
1\name=Wax Worker
1\attributes\size=4
1\attributes\1\id=spatial sense
1\attributes\2\id=agility
1\attributes\3\id=kinesthetic sense
1\attributes\4\id=creativity
1\attributes\4\weight=2
1\skills\size=1
1\skills\1\id=115
1\preferences\size=10
1\preferences\1\pref_category=4
1\preferences\1\item_type=36
1\preferences\1\exact=false
1\preferences\1\name=Amulets
1\preferences\1\weight=0.5
1\preferences\1\flags\size=0
1\preferences\2\pref_category=4
1\preferences\2\item_type=42
1\preferences\2\exact=false
1\preferences\2\name=Bracelets
1\preferences\2\weight=0.5
1\preferences\2\flags\size=0
1\preferences\3\pref_category=4
1\preferences\3\item_type=39
1\preferences\3\exact=false
1\preferences\3\name=Crowns
1\preferences\3\weight=0.5
1\preferences\3\flags\size=0
1\preferences\4\pref_category=4
1\preferences\4\item_type=41
1\preferences\4\exact=false
1\preferences\4\name=Earrings
1\preferences\4\weight=0.5
1\preferences\4\flags\size=0
1\preferences\5\pref_category=4
1\preferences\5\item_type=35
1\preferences\5\exact=false
1\preferences\5\name=Figurines
1\preferences\5\weight=0.5
1\preferences\5\flags\size=0
1\preferences\6\pref_category=4
1\preferences\6\item_type=12
1\preferences\6\exact=false
1\preferences\6\name=Goblets
1\preferences\6\weight=0.5
1\preferences\6\flags\size=0
1\preferences\7\pref_category=4
1\preferences\7\item_type=13
1\preferences\7\exact=false
1\preferences\7\name=Instruments
1\preferences\7\weight=0.5
1\preferences\7\flags\size=0
1\preferences\8\pref_category=4
1\preferences\8\item_type=40
1\preferences\8\exact=false
1\preferences\8\name=Rings
1\preferences\8\weight=0.5
1\preferences\8\flags\size=0
1\preferences\9\pref_category=4
1\preferences\9\item_type=37
1\preferences\9\exact=false
1\preferences\9\name=Scepters
1\preferences\9\weight=0.5
1\preferences\9\flags\size=0
1\preferences\10\pref_category=4
1\preferences\10\item_type=14
1\preferences\10\exact=false
1\preferences\10\name=Toys
1\preferences\10\weight=0.5
1\preferences\10\flags\size=0
2\name=Shearer
2\skills\size=1
2\skills\1\id=109
2\preferences\size=4
2\preferences\1\pref_category=1
2\preferences\1\item_type=-1
2\preferences\1\exact=true
2\preferences\1\name=Llama
2\preferences\1\weight=0.75
2\preferences\1\flags\size=3
2\preferences\1\flags\1\flag=53
2\preferences\1\flags\2\flag=88
2\preferences\1\flags\3\flag=29
2\preferences\2\pref_category=1
2\preferences\2\item_type=-1
2\preferences\2\exact=true
2\preferences\2\name=Sheep
2\preferences\2\weight=0.75
2\preferences\2\flags\size=3
2\preferences\2\flags\1\flag=53
2\preferences\2\flags\2\flag=88
2\preferences\2\flags\3\flag=29
2\preferences\3\pref_category=1
2\preferences\3\item_type=-1
2\preferences\3\exact=true
2\preferences\3\name=Alpaca
2\preferences\3\weight=0.75
2\preferences\3\flags\size=3
2\preferences\3\flags\1\flag=53
2\preferences\3\flags\2\flag=88
2\preferences\3\flags\3\flag=29
2\preferences\4\pref_category=0
2\preferences\4\item_type=-1
2\preferences\4\exact=false
2\preferences\4\name=Yarn
2\preferences\4\flags\size=1
2\preferences\4\flags\1\flag=62
3\name=Glazer
3\attributes\size=4
3\attributes\1\id=spatial sense
3\attributes\2\id=agility
3\attributes\3\id=kinesthetic sense
3\attributes\4\id=creativity
3\skills\size=1
3\skills\1\id=112
3\preferences\size=16
3\preferences\1\pref_category=4
3\preferences\1\item_type=85
3\preferences\1\exact=true
3\preferences\1\name=Jugs
3\preferences\1\weight=0.75
3\preferences\1\flags\size=0
3\preferences\2\pref_category=4
3\preferences\2\item_type=22
3\preferences\2\exact=false
3\preferences\2\name=Statues
3\preferences\2\weight=0.75
3\preferences\2\flags\size=0
3\preferences\3\pref_category=4
3\preferences\3\item_type=85
3\preferences\3\exact=true
3\preferences\3\name=Pots
3\preferences\3\weight=0.75
3\preferences\3\flags\size=0
3\preferences\4\pref_category=4
3\preferences\4\item_type=36
3\preferences\4\exact=false
3\preferences\4\name=Amulets
3\preferences\4\weight=0.5
3\preferences\4\flags\size=0
3\preferences\5\pref_category=4
3\preferences\5\item_type=42
3\preferences\5\exact=false
3\preferences\5\name=Bracelets
3\preferences\5\weight=0.5
3\preferences\5\flags\size=0
3\preferences\6\pref_category=4
3\preferences\6\item_type=39
3\preferences\6\exact=false
3\preferences\6\name=Crowns
3\preferences\6\weight=0.5
3\preferences\6\flags\size=0
3\preferences\7\pref_category=4
3\preferences\7\item_type=41
3\preferences\7\exact=false
3\preferences\7\name=Earrings
3\preferences\7\weight=0.5
3\preferences\7\flags\size=0
3\preferences\8\pref_category=4
3\preferences\8\item_type=35
3\preferences\8\exact=false
3\preferences\8\name=Figurines
3\preferences\8\weight=0.5
3\preferences\8\flags\size=0
3\preferences\9\pref_category=4
3\preferences\9\item_type=12
3\preferences\9\exact=false
3\preferences\9\name=Goblets
3\preferences\9\weight=0.5
3\preferences\9\flags\size=0
3\preferences\10\pref_category=4
3\preferences\10\item_type=13
3\preferences\10\exact=false
3\preferences\10\name=Instruments
3\preferences\10\weight=0.5
3\preferences\10\flags\size=0
3\preferences\11\pref_category=4
3\preferences\11\item_type=40
3\preferences\11\exact=false
3\preferences\11\name=Rings
3\preferences\11\weight=0.5
3\preferences\11\flags\size=0
3\preferences\12\pref_category=4
3\preferences\12\item_type=37
3\preferences\12\exact=false
3\preferences\12\name=Scepters
3\preferences\12\weight=0.5
3\preferences\12\flags\size=0
3\preferences\13\pref_category=4
3\preferences\13\item_type=14
3\preferences\13\exact=false
3\preferences\13\name=Toys
3\preferences\13\weight=0.5
3\preferences\13\flags\size=0
3\preferences\14\pref_category=4
3\preferences\14\item_type=85
3\preferences\14\exact=true
3\preferences\14\name=Hives
3\preferences\14\flags\size=0
3\preferences\15\pref_category=0
3\preferences\15\item_type=-1
3\preferences\15\exact=true
3\preferences\15\name=Ash glaze
3\preferences\15\flags\size=3
3\preferences\15\flags\1\flag=60
3\preferences\15\flags\2\flag=59
3\preferences\15\flags\3\flag=67
3\preferences\16\pref_category=0
3\preferences\16\item_type=-1
3\preferences\16\exact=true
3\preferences\16\name=Tin glaze
3\preferences\16\flags\size=3
3\preferences\16\flags\1\flag=60
3\preferences\16\flags\2\flag=59
3\preferences\16\flags\3\flag=67
4\name=Spinner
4\attributes\size=5
4\attributes\1\id=strength
4\attributes\2\id=endurance
4\attributes\3\id=spatial sense
4\attributes\4\id=agility
4\attributes\5\id=kinesthetic sense
4\skills\size=1
4\skills\1\id=110
4\preferences\size=1
4\preferences\1\pref_category=0
4\preferences\1\item_type=-1
4\preferences\1\exact=false
4\preferences\1\name=Yarn
4\preferences\1\flags\size=1
4\preferences\1\flags\1\flag=62
5\name=Royalty (No Item Prefs.)
5\attributes\size=3
5\attributes\1\id=-empathy
5\attributes\2\id=-social awareness
5\attributes\3\id=-linguistic ability
5\prefs_weight=1
5\preferences\size=143
5\preferences\1\pref_category=4
5\preferences\1\item_type=36
5\preferences\1\exact=false
5\preferences\1\name=-Amulets
5\preferences\1\flags\size=0
5\preferences\2\pref_category=4
5\preferences\2\item_type=19
5\preferences\2\exact=false
5\preferences\2\name=-Animal Traps
5\preferences\2\flags\size=0
5\preferences\3\pref_category=4
5\preferences\3\item_type=44
5\preferences\3\exact=false
5\preferences\3\name=-Anvils
5\preferences\3\flags\size=0
5\preferences\4\pref_category=4
5\preferences\4\item_type=32
5\preferences\4\exact=false
5\preferences\4\name=-Armor Stands
5\preferences\4\flags\size=0
5\preferences\5\pref_category=4
5\preferences\5\item_type=38
5\preferences\5\exact=true
5\preferences\5\name=-Arrows
5\preferences\5\flags\size=0
5\preferences\6\pref_category=4
5\preferences\6\item_type=60
5\preferences\6\exact=false
5\preferences\6\name=-Backpacks
5\preferences\6\flags\size=0
5\preferences\7\pref_category=4
5\preferences\7\item_type=63
5\preferences\7\exact=false
5\preferences\7\name=-Ballista Parts
5\preferences\7\flags\size=0
5\preferences\8\pref_category=4
5\preferences\8\item_type=17
5\preferences\8\exact=false
5\preferences\8\name=-Barrels
5\preferences\8\flags\size=0
5\preferences\9\pref_category=4
5\preferences\9\item_type=-1
5\preferences\9\exact=true
5\preferences\9\name=-Battle Axes
5\preferences\9\flags\size=1
5\preferences\9\flags\1\flag=51
5\preferences\10\pref_category=4
5\preferences\10\item_type=8
5\preferences\10\exact=false
5\preferences\10\name=-Beds
5\preferences\10\flags\size=0
5\preferences\11\pref_category=4
5\preferences\11\item_type=31
5\preferences\11\exact=false
5\preferences\11\name=-Bins
5\preferences\11\flags\size=0
5\preferences\12\pref_category=4
5\preferences\12\item_type=38
5\preferences\12\exact=true
5\preferences\12\name=-Blowdarts
5\preferences\12\flags\size=0
5\preferences\13\pref_category=4
5\preferences\13\item_type=-1
5\preferences\13\exact=true
5\preferences\13\name=-Blowguns
5\preferences\13\flags\size=1
5\preferences\13\flags\1\flag=52
5\preferences\14\pref_category=4
5\preferences\14\item_type=38
5\preferences\14\exact=true
5\preferences\14\name=-Bolts
5\preferences\14\flags\size=0
5\preferences\15\pref_category=4
5\preferences\15\item_type=85
5\preferences\15\exact=true
5\preferences\15\name=-Boning knives
5\preferences\15\flags\size=0
5\preferences\16\pref_category=4
5\preferences\16\item_type=85
5\preferences\16\exact=true
5\preferences\16\name=-Bowls
5\preferences\16\flags\size=0
5\preferences\17\pref_category=4
5\preferences\17\item_type=-1
5\preferences\17\exact=true
5\preferences\17\name=-Bows
5\preferences\17\flags\size=1
5\preferences\17\flags\1\flag=52
5\preferences\18\pref_category=4
5\preferences\18\item_type=30
5\preferences\18\exact=false
5\preferences\18\name=-Boxes
5\preferences\18\flags\size=0
5\preferences\19\pref_category=4
5\preferences\19\item_type=42
5\preferences\19\exact=false
5\preferences\19\name=-Bracelets
5\preferences\19\flags\size=0
5\preferences\20\pref_category=4
5\preferences\20\item_type=59
5\preferences\20\exact=true
5\preferences\20\name=-Braies
5\preferences\20\flags\size=0
5\preferences\21\pref_category=4
5\preferences\21\item_type=25
5\preferences\21\exact=true
5\preferences\21\name=-Breastplates
5\preferences\21\flags\size=0
5\preferences\22\pref_category=4
5\preferences\22\item_type=18
5\preferences\22\exact=false
5\preferences\22\name=-Buckets
5\preferences\22\flags\size=0
5\preferences\23\pref_category=4
5\preferences\23\item_type=27
5\preferences\23\exact=true
5\preferences\23\name=-Bucklers
5\preferences\23\flags\size=0
5\preferences\24\pref_category=4
5\preferences\24\item_type=34
5\preferences\24\exact=false
5\preferences\24\name=-Cabinets
5\preferences\24\flags\size=0
5\preferences\25\pref_category=4
5\preferences\25\item_type=16
5\preferences\25\exact=false
5\preferences\25\name=-Cages
5\preferences\25\flags\size=0
5\preferences\26\pref_category=4
5\preferences\26\item_type=25
5\preferences\26\exact=true
5\preferences\26\name=-Capes
5\preferences\26\flags\size=0
5\preferences\27\pref_category=4
5\preferences\27\item_type=28
5\preferences\27\exact=true
5\preferences\27\name=-Caps
5\preferences\27\flags\size=0
5\preferences\28\pref_category=4
5\preferences\28\item_type=85
5\preferences\28\exact=true
5\preferences\28\name=-Carving forks
5\preferences\28\flags\size=0
5\preferences\29\pref_category=4
5\preferences\29\item_type=85
5\preferences\29\exact=true
5\preferences\29\name=-Carving knives
5\preferences\29\flags\size=0
5\preferences\30\pref_category=4
5\preferences\30\item_type=62
5\preferences\30\exact=false
5\preferences\30\name=-Catapult Parts
5\preferences\30\flags\size=0
5\preferences\31\pref_category=4
5\preferences\31\item_type=85
5\preferences\31\exact=true
5\preferences\31\name=-Cauldrons
5\preferences\31\flags\size=0
5\preferences\32\pref_category=4
5\preferences\32\item_type=10
5\preferences\32\exact=false
5\preferences\32\name=-Chains
5\preferences\32\flags\size=0
5\preferences\33\pref_category=4
5\preferences\33\item_type=9
5\preferences\33\exact=false
5\preferences\33\name=-Chairs/Thrones
5\preferences\33\flags\size=0
5\preferences\34\pref_category=4
5\preferences\34\item_type=26
5\preferences\34\exact=true
5\preferences\34\name=-Chausses
5\preferences\34\flags\size=0
5\preferences\35\pref_category=4
5\preferences\35\item_type=25
5\preferences\35\exact=true
5\preferences\35\name=-Cloaks
5\preferences\35\flags\size=0
5\preferences\36\pref_category=4
5\preferences\36\item_type=25
5\preferences\36\exact=true
5\preferences\36\name=-Coats
5\preferences\36\flags\size=0
5\preferences\37\pref_category=4
5\preferences\37\item_type=21
5\preferences\37\exact=false
5\preferences\37\name=-Coffins
5\preferences\37\flags\size=0
5\preferences\38\pref_category=4
5\preferences\38\item_type=73
5\preferences\38\exact=false
5\preferences\38\name=-Coins
5\preferences\38\flags\size=0
5\preferences\39\pref_category=4
5\preferences\39\item_type=-1
5\preferences\39\exact=true
5\preferences\39\name=-Crossbows
5\preferences\39\flags\size=1
5\preferences\39\flags\1\flag=52
5\preferences\40\pref_category=4
5\preferences\40\item_type=39
5\preferences\40\exact=false
5\preferences\40\name=-Crowns
5\preferences\40\flags\size=0
5\preferences\41\pref_category=4
5\preferences\41\item_type=82
5\preferences\41\exact=false
5\preferences\41\name=-Crutches
5\preferences\41\flags\size=0
5\preferences\42\pref_category=4
5\preferences\42\item_type=-1
5\preferences\42\exact=true
5\preferences\42\name=-Daggers
5\preferences\42\flags\size=1
5\preferences\42\flags\1\flag=51
5\preferences\43\pref_category=4
5\preferences\43\item_type=6
5\preferences\43\exact=false
5\preferences\43\name=-Doors
5\preferences\43\flags\size=0
5\preferences\44\pref_category=4
5\preferences\44\item_type=25
5\preferences\44\exact=true
5\preferences\44\name=-Dresses
5\preferences\44\flags\size=0
5\preferences\45\pref_category=4
5\preferences\45\item_type=13
5\preferences\45\exact=true
5\preferences\45\name=-Drums
5\preferences\45\flags\size=0
5\preferences\46\pref_category=4
5\preferences\46\item_type=41
5\preferences\46\exact=false
5\preferences\46\name=-Earrings
5\preferences\46\flags\size=0
5\preferences\47\pref_category=4
5\preferences\47\item_type=67
5\preferences\47\exact=true
5\preferences\47\name=-Enormous corkscrews
5\preferences\47\flags\size=0
5\preferences\48\pref_category=4
5\preferences\48\item_type=28
5\preferences\48\exact=true
5\preferences\48\name=-Face veils
5\preferences\48\flags\size=0
5\preferences\49\pref_category=4
5\preferences\49\item_type=35
5\preferences\49\exact=false
5\preferences\49\name=-Figurines
5\preferences\49\flags\size=0
5\preferences\50\pref_category=4
5\preferences\50\item_type=-1
5\preferences\50\exact=true
5\preferences\50\name=-Flails
5\preferences\50\flags\size=1
5\preferences\50\flags\1\flag=51
5\preferences\51\pref_category=4
5\preferences\51\item_type=11
5\preferences\51\exact=false
5\preferences\51\name=-Flasks
5\preferences\51\flags\size=0
5\preferences\52\pref_category=4
5\preferences\52\item_type=7
5\preferences\52\exact=false
5\preferences\52\name=-Floodgates
5\preferences\52\flags\size=0
5\preferences\53\pref_category=4
5\preferences\53\item_type=13
5\preferences\53\exact=true
5\preferences\53\name=-Flutes
5\preferences\53\flags\size=0
5\preferences\54\pref_category=4
5\preferences\54\item_type=29
5\preferences\54\exact=true
5\preferences\54\name=-Gauntlets
5\preferences\54\flags\size=0
5\preferences\55\pref_category=4
5\preferences\55\item_type=67
5\preferences\55\exact=true
5\preferences\55\name=-Giant axe blades
5\preferences\55\flags\size=0
5\preferences\56\pref_category=4
5\preferences\56\item_type=29
5\preferences\56\exact=true
5\preferences\56\name=-Gloves
5\preferences\56\flags\size=0
5\preferences\57\pref_category=4
5\preferences\57\item_type=12
5\preferences\57\exact=false
5\preferences\57\name=-Goblets
5\preferences\57\flags\size=0
5\preferences\58\pref_category=4
5\preferences\58\item_type=78
5\preferences\58\exact=false
5\preferences\58\name=-Grates
5\preferences\58\flags\size=0
5\preferences\59\pref_category=4
5\preferences\59\item_type=-1
5\preferences\59\exact=true
5\preferences\59\name=-Great Axes
5\preferences\59\flags\size=1
5\preferences\59\flags\1\flag=51
5\preferences\60\pref_category=4
5\preferences\60\item_type=59
5\preferences\60\exact=true
5\preferences\60\name=-Greaves
5\preferences\60\flags\size=0
5\preferences\61\pref_category=4
5\preferences\61\item_type=-1
5\preferences\61\exact=true
5\preferences\61\name=-Halberds
5\preferences\61\flags\size=1
5\preferences\61\flags\1\flag=51
5\preferences\62\pref_category=4
5\preferences\62\item_type=13
5\preferences\62\exact=true
5\preferences\62\name=-Harps
5\preferences\62\flags\size=0
5\preferences\63\pref_category=4
5\preferences\63\item_type=77
5\preferences\63\exact=false
5\preferences\63\name=-Hatch Covers
5\preferences\63\flags\size=0
5\preferences\64\pref_category=4
5\preferences\64\item_type=28
5\preferences\64\exact=true
5\preferences\64\name=-Head veils
5\preferences\64\flags\size=0
5\preferences\65\pref_category=4
5\preferences\65\item_type=28
5\preferences\65\exact=true
5\preferences\65\name=-Headscarves
5\preferences\65\flags\size=0
5\preferences\66\pref_category=4
5\preferences\66\item_type=28
5\preferences\66\exact=true
5\preferences\66\name=-Helms
5\preferences\66\flags\size=0
5\preferences\67\pref_category=4
5\preferences\67\item_type=26
5\preferences\67\exact=true
5\preferences\67\name=-High boots
5\preferences\67\flags\size=0
5\preferences\68\pref_category=4
5\preferences\68\item_type=85
5\preferences\68\exact=true
5\preferences\68\name=-Hives
5\preferences\68\flags\size=0
5\preferences\69\pref_category=4
5\preferences\69\item_type=85
5\preferences\69\exact=true
5\preferences\69\name=-Honeycombs
5\preferences\69\flags\size=0
5\preferences\70\pref_category=4
5\preferences\70\item_type=28
5\preferences\70\exact=true
5\preferences\70\name=-Hoods
5\preferences\70\flags\size=0
5\preferences\71\pref_category=4
5\preferences\71\item_type=85
5\preferences\71\exact=true
5\preferences\71\name=-Jugs
5\preferences\71\flags\size=0
5\preferences\72\pref_category=4
5\preferences\72\item_type=85
5\preferences\72\exact=true
5\preferences\72\name=-Ladles
5\preferences\72\flags\size=0
5\preferences\73\pref_category=4
5\preferences\73\item_type=43
5\preferences\73\exact=false
5\preferences\73\name=-Large Gems
5\preferences\73\flags\size=0
5\preferences\74\pref_category=4
5\preferences\74\item_type=67
5\preferences\74\exact=true
5\preferences\74\name="-Large, serrated discs"
5\preferences\74\flags\size=0
5\preferences\75\pref_category=4
5\preferences\75\item_type=-1
5\preferences\75\exact=true
5\preferences\75\name=-Lashes
5\preferences\75\flags\size=1
5\preferences\75\flags\1\flag=51
5\preferences\76\pref_category=4
5\preferences\76\item_type=25
5\preferences\76\exact=true
5\preferences\76\name=-Leather armor
5\preferences\76\flags\size=0
5\preferences\77\pref_category=4
5\preferences\77\item_type=59
5\preferences\77\exact=true
5\preferences\77\name=-Leggings
5\preferences\77\flags\size=0
5\preferences\78\pref_category=4
5\preferences\78\item_type=59
5\preferences\78\exact=true
5\preferences\78\name=-Loincloths
5\preferences\78\flags\size=0
5\preferences\79\pref_category=4
5\preferences\79\item_type=-1
5\preferences\79\exact=true
5\preferences\79\name=-Long Swords
5\preferences\79\flags\size=1
5\preferences\79\flags\1\flag=51
5\preferences\80\pref_category=4
5\preferences\80\item_type=26
5\preferences\80\exact=true
5\preferences\80\name=-Low boots
5\preferences\80\flags\size=0
5\preferences\81\pref_category=4
5\preferences\81\item_type=-1
5\preferences\81\exact=true
5\preferences\81\name=-Maces
5\preferences\81\flags\size=1
5\preferences\81\flags\1\flag=51
5\preferences\82\pref_category=4
5\preferences\82\item_type=25
5\preferences\82\exact=true
5\preferences\82\name=-Mail shirts
5\preferences\82\flags\size=0
5\preferences\83\pref_category=4
5\preferences\83\item_type=28
5\preferences\83\exact=true
5\preferences\83\name=-Masks
5\preferences\83\flags\size=0
5\preferences\84\pref_category=4
5\preferences\84\item_type=-1
5\preferences\84\exact=true
5\preferences\84\name=-Mauls
5\preferences\84\flags\size=1
5\preferences\84\flags\1\flag=51
5\preferences\85\pref_category=4
5\preferences\85\item_type=85
5\preferences\85\exact=true
5\preferences\85\name=-Meat cleavers
5\preferences\85\flags\size=0
5\preferences\86\pref_category=4
5\preferences\86\item_type=67
5\preferences\86\exact=true
5\preferences\86\name=-Menacing spikes
5\preferences\86\flags\size=0
5\preferences\87\pref_category=4
5\preferences\87\item_type=80
5\preferences\87\exact=false
5\preferences\87\name=-Millstones
5\preferences\87\flags\size=0
5\preferences\88\pref_category=4
5\preferences\88\item_type=85
5\preferences\88\exact=true
5\preferences\88\name=-Minecarts
5\preferences\88\flags\size=0
5\preferences\89\pref_category=4
5\preferences\89\item_type=14
5\preferences\89\exact=true
5\preferences\89\name=-Miniforges
5\preferences\89\flags\size=0
5\preferences\90\pref_category=4
5\preferences\90\item_type=29
5\preferences\90\exact=true
5\preferences\90\name=-Mittens
5\preferences\90\flags\size=0
5\preferences\91\pref_category=4
5\preferences\91\item_type=-1
5\preferences\91\exact=true
5\preferences\91\name=-Morningstars
5\preferences\91\flags\size=1
5\preferences\91\flags\1\flag=51
5\preferences\92\pref_category=4
5\preferences\92\item_type=85
5\preferences\92\exact=true
5\preferences\92\name=-Mortars
5\preferences\92\flags\size=0
5\preferences\93\pref_category=4
5\preferences\93\item_type=85
5\preferences\93\exact=true
5\preferences\93\name=-Nest boxes
5\preferences\93\flags\size=0
5\preferences\94\pref_category=4
5\preferences\94\item_type=85
5\preferences\94\exact=true
5\preferences\94\name=-Pestles
5\preferences\94\flags\size=0
5\preferences\95\pref_category=4
5\preferences\95\item_type=13
5\preferences\95\exact=true
5\preferences\95\name=-Piccolos
5\preferences\95\flags\size=0
5\preferences\96\pref_category=4
5\preferences\96\item_type=-1
5\preferences\96\exact=true
5\preferences\96\name=-Picks
5\preferences\96\flags\size=1
5\preferences\96\flags\1\flag=51
5\preferences\97\pref_category=4
5\preferences\97\item_type=-1
5\preferences\97\exact=true
5\preferences\97\name=-Pikes
5\preferences\97\flags\size=1
5\preferences\97\flags\1\flag=51
5\preferences\98\pref_category=4
5\preferences\98\item_type=85
5\preferences\98\exact=true
5\preferences\98\name=-Pots
5\preferences\98\flags\size=0
5\preferences\99\pref_category=4
5\preferences\99\item_type=85
5\preferences\99\exact=true
5\preferences\99\name=-Pouches
5\preferences\99\flags\size=0
5\preferences\100\pref_category=4
5\preferences\100\item_type=14
5\preferences\100\exact=true
5\preferences\100\name=-Puzzleboxes
5\preferences\100\flags\size=0
5\preferences\101\pref_category=4
5\preferences\101\item_type=79
5\preferences\101\exact=false
5\preferences\101\name=-Querns
5\preferences\101\flags\size=0
5\preferences\102\pref_category=4
5\preferences\102\item_type=61
5\preferences\102\exact=false
5\preferences\102\name=-Quivers
5\preferences\102\flags\size=0
5\preferences\103\pref_category=4
5\preferences\103\item_type=40
5\preferences\103\exact=false
5\preferences\103\name=-Rings
5\preferences\103\flags\size=0
5\preferences\104\pref_category=4
5\preferences\104\item_type=25
5\preferences\104\exact=true
5\preferences\104\name=-Robes
5\preferences\104\flags\size=0
5\preferences\105\pref_category=4
5\preferences\105\item_type=26
5\preferences\105\exact=true
5\preferences\105\name=-Sandals
5\preferences\105\flags\size=0
5\preferences\106\pref_category=4
5\preferences\106\item_type=37
5\preferences\106\exact=false
5\preferences\106\name=-Scepters
5\preferences\106\flags\size=0
5\preferences\107\pref_category=4
5\preferences\107\item_type=-1
5\preferences\107\exact=true
5\preferences\107\name=-Scimitars
5\preferences\107\flags\size=1
5\preferences\107\flags\1\flag=51
5\preferences\108\pref_category=4
5\preferences\108\item_type=-1
5\preferences\108\exact=true
5\preferences\108\name=-Scourges
5\preferences\108\flags\size=1
5\preferences\108\flags\1\flag=51
5\preferences\109\pref_category=4
5\preferences\109\item_type=27
5\preferences\109\exact=true
5\preferences\109\name=-Shields
5\preferences\109\flags\size=0
5\preferences\110\pref_category=4
5\preferences\110\item_type=25
5\preferences\110\exact=true
5\preferences\110\name=-Shirts
5\preferences\110\flags\size=0
5\preferences\111\pref_category=4
5\preferences\111\item_type=26
5\preferences\111\exact=true
5\preferences\111\name=-Shoes
5\preferences\111\flags\size=0
5\preferences\112\pref_category=4
5\preferences\112\item_type=-1
5\preferences\112\exact=true
5\preferences\112\name=-Short Swords
5\preferences\112\flags\size=1
5\preferences\112\flags\1\flag=51
5\preferences\113\pref_category=4
5\preferences\113\item_type=59
5\preferences\113\exact=true
5\preferences\113\name=-Skirts
5\preferences\113\flags\size=0
5\preferences\114\pref_category=4
5\preferences\114\item_type=86
5\preferences\114\exact=false
5\preferences\114\name=-Slabs
5\preferences\114\flags\size=0
5\preferences\115\pref_category=4
5\preferences\115\item_type=85
5\preferences\115\exact=true
5\preferences\115\name=-Slicing knives
5\preferences\115\flags\size=0
5\preferences\116\pref_category=4
5\preferences\116\item_type=26
5\preferences\116\exact=true
5\preferences\116\name=-Socks
5\preferences\116\flags\size=0
5\preferences\117\pref_category=4
5\preferences\117\item_type=-1
5\preferences\117\exact=true
5\preferences\117\name=-Spears
5\preferences\117\flags\size=1
5\preferences\117\flags\1\flag=51
5\preferences\118\pref_category=4
5\preferences\118\item_type=67
5\preferences\118\exact=true
5\preferences\118\name=-Spiked balls
5\preferences\118\flags\size=0
5\preferences\119\pref_category=4
5\preferences\119\item_type=81
5\preferences\119\exact=false
5\preferences\119\name=-Splints
5\preferences\119\flags\size=0
5\preferences\120\pref_category=4
5\preferences\120\item_type=22
5\preferences\120\exact=false
5\preferences\120\name=-Statues
5\preferences\120\flags\size=0
5\preferences\121\pref_category=4
5\preferences\121\item_type=20
5\preferences\121\exact=false
5\preferences\121\name=-Tables
5\preferences\121\flags\size=0
5\preferences\122\pref_category=4
5\preferences\122\item_type=59
5\preferences\122\exact=true
5\preferences\122\name=-Thongs
5\preferences\122\flags\size=0
5\preferences\123\pref_category=4
5\preferences\123\item_type=25
5\preferences\123\exact=true
5\preferences\123\name=-Togas
5\preferences\123\flags\size=0
5\preferences\124\pref_category=4
5\preferences\124\item_type=85
5\preferences\124\exact=false
5\preferences\124\name=-Tools
5\preferences\124\flags\size=0
5\preferences\125\pref_category=4
5\preferences\125\item_type=58
5\preferences\125\exact=false
5\preferences\125\name=-Totems
5\preferences\125\flags\size=0
5\preferences\126\pref_category=4
5\preferences\126\item_type=14
5\preferences\126\exact=true
5\preferences\126\name=-Toy axes
5\preferences\126\flags\size=0
5\preferences\127\pref_category=4
5\preferences\127\item_type=14
5\preferences\127\exact=true
5\preferences\127\name=-Toy boats
5\preferences\127\flags\size=0
5\preferences\128\pref_category=4
5\preferences\128\item_type=14
5\preferences\128\exact=true
5\preferences\128\name=-Toy hammers
5\preferences\128\flags\size=0
5\preferences\129\pref_category=4
5\preferences\129\item_type=83
5\preferences\129\exact=false
5\preferences\129\name=-Traction Benches
5\preferences\129\flags\size=0
5\preferences\130\pref_category=4
5\preferences\130\item_type=-1
5\preferences\130\exact=true
5\preferences\130\name=-Training Axes
5\preferences\130\flags\size=1
5\preferences\130\flags\1\flag=51
5\preferences\131\pref_category=4
5\preferences\131\item_type=-1
5\preferences\131\exact=true
5\preferences\131\name=-Training Spears
5\preferences\131\flags\size=1
5\preferences\131\flags\1\flag=51
5\preferences\132\pref_category=4
5\preferences\132\item_type=-1
5\preferences\132\exact=true
5\preferences\132\name=-Training Swords
5\preferences\132\flags\size=1
5\preferences\132\flags\1\flag=51
5\preferences\133\pref_category=4
5\preferences\133\item_type=59
5\preferences\133\exact=true
5\preferences\133\name=-Trousers
5\preferences\133\flags\size=0
5\preferences\134\pref_category=4
5\preferences\134\item_type=13
5\preferences\134\exact=true
5\preferences\134\name=-Trumpets
5\preferences\134\flags\size=0
5\preferences\135\pref_category=4
5\preferences\135\item_type=25
5\preferences\135\exact=true
5\preferences\135\name=-Tunics
5\preferences\135\flags\size=0
5\preferences\136\pref_category=4
5\preferences\136\item_type=28
5\preferences\136\exact=true
5\preferences\136\name=-Turbans
5\preferences\136\flags\size=0
5\preferences\137\pref_category=4
5\preferences\137\item_type=-1
5\preferences\137\exact=true
5\preferences\137\name=-Twohanded Swords
5\preferences\137\flags\size=1
5\preferences\137\flags\1\flag=51
5\preferences\138\pref_category=4
5\preferences\138\item_type=25
5\preferences\138\exact=true
5\preferences\138\name=-Vests
5\preferences\138\flags\size=0
5\preferences\139\pref_category=4
5\preferences\139\item_type=-1
5\preferences\139\exact=true
5\preferences\139\name=-War Hammers
5\preferences\139\flags\size=1
5\preferences\139\flags\1\flag=51
5\preferences\140\pref_category=4
5\preferences\140\item_type=33
5\preferences\140\exact=false
5\preferences\140\name=-Weapon Racks
5\preferences\140\flags\size=0
5\preferences\141\pref_category=4
5\preferences\141\item_type=85
5\preferences\141\exact=true
5\preferences\141\name=-Wheelbarrows
5\preferences\141\flags\size=0
5\preferences\142\pref_category=4
5\preferences\142\item_type=-1
5\preferences\142\exact=true
5\preferences\142\name=-Whips
5\preferences\142\flags\size=1
5\preferences\142\flags\1\flag=51
5\preferences\143\pref_category=4
5\preferences\143\item_type=15
5\preferences\143\exact=false
5\preferences\143\name=-Windows
5\preferences\143\flags\size=0
6\name=Presser
6\attributes\size=4
6\attributes\1\id=strength
6\attributes\2\id=endurance
6\attributes\3\id=agility
6\attributes\4\id=kinesthetic sense
6\skills\size=1
6\skills\1\id=113
6\preferences\size=4
6\preferences\1\pref_category=2
6\preferences\1\item_type=-1
6\preferences\1\exact=true
6\preferences\1\name=Rock nuts
6\preferences\1\flags\size=0
6\preferences\2\pref_category=4
6\preferences\2\item_type=85
6\preferences\2\exact=true
6\preferences\2\name=Honeycombs
6\preferences\2\flags\size=0
6\preferences\3\pref_category=4
6\preferences\3\item_type=85
6\preferences\3\exact=true
6\preferences\3\name=Jugs
6\preferences\3\weight=0.25
6\preferences\3\flags\size=0
6\preferences\4\pref_category=2
6\preferences\4\item_type=-1
6\preferences\4\exact=true
6\preferences\4\name=Rock nut oil
6\preferences\4\flags\size=2
6\preferences\4\flags\1\flag=4
6\preferences\4\flags\2\flag=20
7\name=Bee Keeper
7\attributes\size=5
7\attributes\1\id=strength
7\attributes\2\id=analytical ability
7\attributes\3\id=endurance
7\attributes\4\id=agility
7\attributes\5\id=kinesthetic sense
7\skills\size=1
7\skills\1\id=114
7\preferences\size=4
7\preferences\1\pref_category=1
7\preferences\1\item_type=-1
7\preferences\1\exact=true
7\preferences\1\name=Honey bee
7\preferences\1\weight=1.2
7\preferences\1\flags\size=1
7\preferences\1\flags\1\flag=200
7\preferences\2\pref_category=4
7\preferences\2\item_type=85
7\preferences\2\exact=true
7\preferences\2\name=Hives
7\preferences\2\flags\size=0
7\preferences\3\pref_category=4
7\preferences\3\item_type=85
7\preferences\3\exact=true
7\preferences\3\name=Honeycombs
7\preferences\3\flags\size=0
7\preferences\4\pref_category=4
7\preferences\4\item_type=85
7\preferences\4\exact=true
7\preferences\4\name=Jugs
7\preferences\4\weight=0.25
7\preferences\4\flags\size=0
8\name=Potter
8\attributes\size=4
8\attributes\1\id=spatial sense
8\attributes\2\id=agility
8\attributes\3\id=kinesthetic sense
8\attributes\4\id=creativity
8\attributes\4\weight=2
8\skills\size=1
8\skills\1\id=111
8\preferences\size=17
8\preferences\1\pref_category=4
8\preferences\1\item_type=85
8\preferences\1\exact=true
8\preferences\1\name=Jugs
8\preferences\1\weight=0.25
8\preferences\1\flags\size=0
8\preferences\2\pref_category=4
8\preferences\2\item_type=22
8\preferences\2\exact=false
8\preferences\2\name=Statues
8\preferences\2\weight=0.75
8\preferences\2\flags\size=0
8\preferences\3\pref_category=4
8\preferences\3\item_type=85
8\preferences\3\exact=true
8\preferences\3\name=Pots
8\preferences\3\weight=0.75
8\preferences\3\flags\size=0
8\preferences\4\pref_category=4
8\preferences\4\item_type=36
8\preferences\4\exact=false
8\preferences\4\name=Amulets
8\preferences\4\weight=0.5
8\preferences\4\flags\size=0
8\preferences\5\pref_category=4
8\preferences\5\item_type=42
8\preferences\5\exact=false
8\preferences\5\name=Bracelets
8\preferences\5\weight=0.5
8\preferences\5\flags\size=0
8\preferences\6\pref_category=4
8\preferences\6\item_type=39
8\preferences\6\exact=false
8\preferences\6\name=Crowns
8\preferences\6\weight=0.5
8\preferences\6\flags\size=0
8\preferences\7\pref_category=4
8\preferences\7\item_type=41
8\preferences\7\exact=false
8\preferences\7\name=Earrings
8\preferences\7\weight=0.5
8\preferences\7\flags\size=0
8\preferences\8\pref_category=4
8\preferences\8\item_type=35
8\preferences\8\exact=false
8\preferences\8\name=Figurines
8\preferences\8\weight=0.5
8\preferences\8\flags\size=0
8\preferences\9\pref_category=4
8\preferences\9\item_type=12
8\preferences\9\exact=false
8\preferences\9\name=Goblets
8\preferences\9\weight=0.5
8\preferences\9\flags\size=0
8\preferences\10\pref_category=4
8\preferences\10\item_type=13
8\preferences\10\exact=false
8\preferences\10\name=Instruments
8\preferences\10\weight=0.5
8\preferences\10\flags\size=0
8\preferences\11\pref_category=4
8\preferences\11\item_type=40
8\preferences\11\exact=false
8\preferences\11\name=Rings
8\preferences\11\weight=0.5
8\preferences\11\flags\size=0
8\preferences\12\pref_category=4
8\preferences\12\item_type=37
8\preferences\12\exact=false
8\preferences\12\name=Scepters
8\preferences\12\weight=0.5
8\preferences\12\flags\size=0
8\preferences\13\pref_category=4
8\preferences\13\item_type=14
8\preferences\13\exact=false
8\preferences\13\name=Toys
8\preferences\13\weight=0.5
8\preferences\13\flags\size=0
8\preferences\14\pref_category=4
8\preferences\14\item_type=85
8\preferences\14\exact=true
8\preferences\14\name=Hives
8\preferences\14\weight=0.75
8\preferences\14\flags\size=0
8\preferences\15\pref_category=0
8\preferences\15\item_type=-1
8\preferences\15\exact=true
8\preferences\15\name=Earthenware
8\preferences\15\flags\size=3
8\preferences\15\flags\1\flag=60
8\preferences\15\flags\2\flag=59
8\preferences\15\flags\3\flag=67
8\preferences\16\pref_category=0
8\preferences\16\item_type=-1
8\preferences\16\exact=true
8\preferences\16\name=Porcelain
8\preferences\16\flags\size=3
8\preferences\16\flags\1\flag=60
8\preferences\16\flags\2\flag=59
8\preferences\16\flags\3\flag=67
8\preferences\17\pref_category=0
8\preferences\17\item_type=-1
8\preferences\17\exact=true
8\preferences\17\name=Stoneware
8\preferences\17\flags\size=3
8\preferences\17\flags\1\flag=60
8\preferences\17\flags\2\flag=59
8\preferences\17\flags\3\flag=67
size=8
I also have a custom role view that displays all these in the appropriate place and I've incorporated them into my optimization plan. Feel free to use.
I would recommend making a custom role that gives negative weight to all items, positives to social/empathy attributes and positives to social skills. Then simply select the dwarf with the best match. If the dwarf doesn't have any item preferences then there will be neither mandates nor demands.
I'm pretty sure I've seen a demand without any item preferences in a past fort though, so you might want to avoid any weird material preferences as well.
d.noble_position() == "" && (!d.has_preference('','Items',false) && !d.has_preference('','Materials',false)) || !d.has_preference('','Items',false) || !d.has_preference('','Materials',false)
Yeah, material based mandates were removed in 0.34.01. Item mandates are still in, including item + material together.I'm pretty sure I've seen a demand without any item preferences in a past fort though, so you might want to avoid any weird material preferences as well.
I think he(Toady) just fixed that recently?
[HFS] metal preferences were fixed in 40.06. (http://www.bay12games.com/dwarves/mantisbt/view.php?id=7590)Yeah, material based mandates were removed in 0.34.01. Item mandates are still in, including item + material together.I'm pretty sure I've seen a demand without any item preferences in a past fort though, so you might want to avoid any weird material preferences as well.I think he(Toady) just fixed that recently?
Required animal hauling labor for various jobs
Added new labors for hauling trade goods, pulling levers, removing constructions and hauling water
Made laborless building construct/destroy jobs take furniture hauling
Attached trap cleaning to clean labor
[HFS] metal preferences were fixed in 40.06. (http://www.bay12games.com/dwarves/mantisbt/view.php?id=7590)Note that, according to this report (http://www.bay12games.com/dwarves/mantisbt/view.php?id=7848), this fix only applies to worlds generated in 0.40.06+ - dwarves from worlds generated before 0.40.06 can still have preferences for HFS materials.
Building under Ubuntu 12.04 LTS / 64-bit:ok i'll see about adding that to the documentation. if i remember the ptrace/sudo stuff was there before i even forked the code, so i'm not sure how that precompiled version doesn't require it.
Followed the instructions at https://github.com/splintermind/Dwarf-Therapist/blob/master/BUILDING.txt (https://github.com/splintermind/Dwarf-Therapist/blob/master/BUILDING.txt), *except* prior to doing that I had to do:
sudo apt-add-repository ppa:ubuntu-sdk-team/ppa
sudo apt-get update
Those are necessary because they intend Qt 5 for use on more recent releases of Ubuntu. If you build other stuff that uses Qt, you may want to read up on the above before doing it.
Compiles, installs, and runs OK. I haven't had time to test much - wanted to post before I forget what I did.
I'm suprised at the requirement for running it as root. The old precompiled verision that I was using on Ubuntu 10.04 did not require it. Was use of ptrace added since the fork?
I see the suggestion for running it as a child of df, but I start df with dfhack, and ./dfhack& causes problems because you need the terminal. Any ideas for how to launch it as a child when using dfhack?
Splintermind, are you interested in talking to the dfhack people about converting it to a plug-in?
setting things up to use dfhack as a back-end would be very beneficial. i already use a dfhack script to generate another list of memory offsets to use, but it's all very redundant, and probably some code that could be removed entirely if there was access to a dfhack api. however, i honestly don't even know where to begin such a conversion.
I have not looked at how dfhack goes about this but it should be possible to just have these utilities be the parent of the df process (i.e. they start it) and do without the bad CAP_SYS_PTRACE.On Linux and OS X, DFHack is loaded as a shared (?) library (e.g. libdfhack.so, libdfhack.dylib).
I have not looked at how dfhack goes about this but it should be possible to just have these utilities be the parent of the df process (i.e. they start it) and do without the bad CAP_SYS_PTRACE.
diff --git a/src/main.cpp b/src/main.cpp
index 2aee63d..1fb1ed5 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -30,10 +30,36 @@ THE SOFTWARE.
*
*/
+
#include "dwarftherapist.h"
#include "dfinstance.h"
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/types.h>
+#include <unistd.h>
int main(int argc, char *argv[]) {
+ char *launcha_args[5];
+ pid_t pid;
+
+ launcha_args[0] = "/opt/pt/df/df_current/df_linux/df";
+ launcha_args[1] = "arg1";
+ launcha_args[2] = "arg2";
+ launcha_args[3] = NULL;
+
+ switch ((pid = fork()))
+ {
+ case -1:
+ perror ("fork");
+ break;
+ case 0:
+ execv ("/opt/pt/df/df_current/df_linux/df", launcha_args);
+ exit(EXIT_FAILURE);
+ break;
+ default:
+ ;
+ break;
+ }
if(!DFInstance::authorize()){
return 0;
}
Script:
39c39
< _DT_BINARY="/usr/bin/DwarfTherapist"
---
> _DT_BINARY="/opt/pt/df/therapist/installroot/usr/bin/DwarfTherapist"
45c45
< _ETC_BASE_FOLDER="/usr/share/dwarftherapist/"
---
> _ETC_BASE_FOLDER="/opt/pt/df/therapist/installroot/usr/share/dwarftherapist/"
49c49
< _NOTIFY_ICON="/usr/share/pixmaps/dwarftherapist.png"
---
> _NOTIFY_ICON="/opt/pt/df/therapist/installroot/usr/share/pixmaps/dwarftherapist.png"
234c234
< check_ptrace_state
---
> #check_ptrace_state
236c236
< provide_gui_to_setcap
---
> #provide_gui_to_setcap
0.40.07 is released, and it adds new labors. Hope this doesn't delay Dwarf Therapist too much ;)It shouldn't - according to Quietust, the ID's of new labors are added in order, and determining which ID corresponds to which labor is fairly easy with disassembly, since there's a switch statement that converts labor ID's to human-readable names.
0.40.07 is released, and it adds new labors. Hope this doesn't delay Dwarf Therapist too much ;)
I'm not sure what a beer costs in Canadian Dollars, so I just gave $10 CAD. I assume that will cover one or two. :)Depends on the beer. I know you can get $5 pitchers here in the US, though they're usually not very savory...
If you're like me and can hardly play DF without Dwarf Therapist, while you're waiting for Therapist to be updated for 40.07, you can always go to the project home page (https://github.com/splintermind/Dwarf-Therapist), scroll down to the "Buy me a beer!" button and donate whatever you think is appropriate.
I'm not sure what a beer costs in Canadian Dollars, so I just gave $10 CAD. I assume that will cover one or two. :)
Thanks for all the work you've given to us, and for all the enjoyment we've gotten as a result, Splinterz!
Keith
am I blind or do I not see recover wounded on the labours full tab?apparently it wasn't added to the full view. that's what i get for blind copy/pasting i suppose... uploading a fix..
Just did a quick test from current git source, and it works with 40.07 (linux). Great work splinterz!thanks for the confirmation! oh it's all due to those df-structure guys, they had things updated crazily fast!
Thanks!
am I blind or do I not see recover wounded on the labours full tab?apparently it wasn't added to the full view. that's what i get for blind copy/pasting i suppose... uploading a fix..
I just found a little problem with the Weapon & Shield indicators in the Military tab, for Squad members.
The indicators often says weapons and shields are missing while they aren't : I can see them in the dwarves inventory.
Just did a quick test from current git source, and it works with 40.07 (linux). Great work splinterz!thanks for the confirmation! oh it's all due to those df-structure guys, they had things updated crazily fast!
Thanks!
was this in the most recent release, or before?I just found a little problem with the Weapon & Shield indicators in the Military tab, for Squad members.
The indicators often says weapons and shields are missing while they aren't : I can see them in the dwarves inventory.
I've noticed this too, but I was too busy at the time to check the inventories to make certain.
Keith
Thank you so much guys! You make DF playable after you have more than 20 dwarves...or more than 6 dwarves even ;D
was this in the most recent release, or before?I just found a little problem with the Weapon & Shield indicators in the Military tab, for Squad members.
The indicators often says weapons and shields are missing while they aren't : I can see them in the dwarves inventory.
I've noticed this too, but I was too busy at the time to check the inventories to make certain.
Keith
Just did a quick test from current git source, and it works with 40.07 (linux). Great work splinterz!thanks for the confirmation! oh it's all due to those df-structure guys, they had things updated crazily fast!
Thanks!
This is why I'm not all that anxious for DT to rely on dfhack. DT has a day or so of lag after a new release, we still don't have a dfhack release for any 40.X version. I can play just fine without dfhack (although I do miss digv), but playing past the first couple of migrant waves without DT is just too painful.
Somebody has to play right after release, or bugs wouldn't ever be caught. There's nothing wrong with some people waiting like you, as long as a significant number are less patient.Just did a quick test from current git source, and it works with 40.07 (linux). Great work splinterz!thanks for the confirmation! oh it's all due to those df-structure guys, they had things updated crazily fast!
Thanks!
This is why I'm not all that anxious for DT to rely on dfhack. DT has a day or so of lag after a new release, we still don't have a dfhack release for any 40.X version. I can play just fine without dfhack (although I do miss digv), but playing past the first couple of migrant waves without DT is just too painful.
I don't think you're really supposed to play right after release, though, you're supposed to wait until all of the patches are in and *then* get off. I'm not going to do another DF play-though until Toady shifts to active development again, personally, because what's the point of exhausting myself playing this game now if I can do so on a more pristine version later?
I'm pretty sure it's because the recent addition of Strapped-to-body in 40.xx.indeed that was the cause. should be fixed up in the latest release ;)
It doesn't show they are missing when they have them in their hands.
Dang, you're fast.I'm pretty sure it's because the recent addition of Strapped-to-body in 40.xx.indeed that was the cause. should be fixed up in the latest release ;)
It doesn't show they are missing when they have them in their hands.
[OSX] Dwarf Therapist 23.5.1 | DF 40.08 (http://dffd.wimbli.com/file.php?id=9127)Thank you for this!
)
which: no kdesu in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/core_perl)
/usr/bin/dwarftherapist: line 182: xmessage: command not found
which: no kdesudo in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/core_perl)
)
which: no kdesu in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/core_perl)
/usr/bin/dwarftherapist: line 182: xmessage: command not found
which: no kdesudo in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/core_perl)
)
Am I doing something wrong or do I simply have to install kdesu?If you can find where it's mentioned you can replace it with pkexec which is better alternative for either gksu or kdesudo.
Is there a way to view the Discipline of a Dwarf in DT yet?check the military views
It seems my last embark has no enemies nearby and I have not pierced the caverns yet so there was nothing to be afraid of.
From what I read Discipline is quiet important now in order for Dwarfs to not run away from enemies and I would like to check my squads Discipline without reading through the complete char description :D
If there is an option for it already I didn't find it.
indeed that was the cause. should be fixed up in the latest releaseWoah already? Love you long time ! <3 <3
Hey, you may have noticed me asking questions about how to compile Dwarf Therapist properly in this thread before. I was finally able to compile the most recent version in Ubuntu 14.04. I downloaded the zip, and compiled normally from that. Beforehand, I was git cloning the project, and compiling that... and it always compiled the oldest available version. I still have no idea why this is, but whatever, compile from the zip if you have a problem like mine in future.
Works great, btw. Thanks for the good work.
I've noticed that some of my dwarves list prefences in triplicate in the tool-tip that pops up when you hover over their names.The skills are doubled-up, too. Maybe he's just really enthusiastic about those things?Toads, Toads, Toads.Spoiler (click to show/hide)
But not all of the dwarves are doing it. Some just list the preferences once. I haven't noticed anything that seems to be unique about those who have the triplicate preferences.
Also note that it seems to triplicate things by category. The material preferences (Giant aardvark leather ... Phyllite) are listed out in order three times, rather than each one being listed three times before the next.
Keith
so far i haven't been able to figure out how to reproduce this one, so if you've got a save that exhibits the bug that would be great.I've noticed that some of my dwarves list prefences in triplicate in the tool-tip that pops up when you hover over their names.The skills are doubled-up, too. Maybe he's just really enthusiastic about those things?Toads, Toads, Toads.Spoiler (click to show/hide)
But not all of the dwarves are doing it. Some just list the preferences once. I haven't noticed anything that seems to be unique about those who have the triplicate preferences.
Also note that it seems to triplicate things by category. The material preferences (Giant aardvark leather ... Phyllite) are listed out in order three times, rather than each one being listed three times before the next.
Keith
'Lo all, this might have been asked already, but is anyone else having problems with setting custom professions? I click the option and no text box pops up. The button doesn't seem to be doing anything.i just noticed that myself, seems i broke it ::)
Beforehand, I was git cloning the project, and compiling that... and it always compiled the oldest available version. I still have no idea why this is, but whatever, compile from the zip if you have a problem like mine in future.
It should be "git clone git://github.com/splintermind/Dwarf-Therapist.git -b DF2014"
Can you just zip the thing?1. It looks like it didn't really work, I've updated the previous post.
I have a very odd problem.you can try running it with the -debug argument to see more information in the log file, and/or upload the save so i can take a look.
I just downloaded 23.6 to test with my current 40.08 fortress and if i have DF running (it does not matter if i am in the main menu or with a loaded fortress) when i launch
DwarfTherapist.exe
( that i have in C:\df_40_08_win\Dwarf Therapist 23.6\ )
It just crash with the DwarfTherapist.exe has encountered an error :
(http://i.imgur.com/59pTx6W.jpg)
But if i do not launch DF but launch DwarfTherapist.exe , it works without error, but after i launch DF and load my fort if i click on "Connect to DF" button, Dwarf Therapist will crash with the same error.
I can't say for the Dwarf Therapist for 40.07 as i didn't played it with that version of DF, but it worked without problem for a previous 40.0x version
the run.log when it crashes while i launch DT when i have my fortress already loaded :Spoiler (click to show/hide)
The run.log when i am at DF main menu and i launch DT that then crash :Spoiler (click to show/hide)
the run.log when i start DT before DF and once i loaded my fortress i click on "Connect to DF"Spoiler (click to show/hide)
I upload the DwarfTherapist.ini file that was causing DT to crash, in case you want to look at what could be the actual source of that crash.thanks for the file and explanation. i was able to reproduce the crash, as you said, and will get it fixed. recently i renamed the default gridview to 'labors full' however your ini had only a single view, called 'labors'. normally with a couple views it would have been ok and just skipped loading the 'labors' view, however there was only a single view, and since it couldn't be found no views were loaded at all. having no views loaded at all was the cause of the problem.
http://dffd.wimbli.com/file.php?id=9381
With the ini recreated from scratch by 23.6, it works great, i've been running my fort with it since some time and still no problem, definitively something in the uploaded ini generate the crash as if i re-use it i can reproduce the crash everytime.
Another Linux option would be to setcap at install; you'd only have to run something as root once, and you'd never disable the global protection. With an rpm/deb package you could make it invisible even.
@splinterz: I can"t make the equipments show up on osx.any information in the log file? maybe try running with the -debug arg?
First I assumed that something is missing from the osx df structures, then that there's a problem with the .ini generator lua script, but no matter which script version I use I can't make them show up in DT.
Here's one .ini (http://pastebin.com/AuKTR8BK), this one is generated by the script in your repo. I had to disable the lines with fake identities and soul traits to generate, but I doubt they have anything to do with equipment. Any idea?
I'm having problems with comments in filter scripts.i'll see about providing errors when testing scripts and about counts.Spoiler (click to show/hide)
But adding a final comment line make it show everyone:
// Thirsty
d.has_health_issue(11)
// Hungry
|| d.has_health_issue(12)
//foo
BTW, it would be a nice feature if it told us how many dwarves are being displayed when we have filters on. Especially when debugging scripts, it's nice to see if a filter actually did anything, and how much.
@splinterz: I can"t make the equipments show up on osx.any information in the log file? maybe try running with the -debug arg?
First I assumed that something is missing from the osx df structures, then that there's a problem with the .ini generator lua script, but no matter which script version I use I can't make them show up in DT.
Here's one .ini (http://pastebin.com/AuKTR8BK), this one is generated by the script in your repo. I had to disable the lines with fake identities and soul traits to generate, but I doubt they have anything to do with equipment. Any idea?
2014-08-13 20:12:27.378 DwarfTherapist[31079:a03] Not authorized
libpng warning: Unknown iTXt compression type or method
libpng warning: Unknown iTXt compression type or method
AFAIK the not authorised error is from QT 5.2.1 (DT needs authorization flag when compiling with QT5.3, but only compiles without it with QT5.2.1)no that log is just the minimal information. what does it show in the tooltips? is it reading any items at all? do the squad members have uniforms that conflict with what they're currently wearing?@splinterz: I can"t make the equipments show up on osx.any information in the log file? maybe try running with the -debug arg?
First I assumed that something is missing from the osx df structures, then that there's a problem with the .ini generator lua script, but no matter which script version I use I can't make them show up in DT.
Here's one .ini (http://pastebin.com/AuKTR8BK), this one is generated by the script in your repo. I had to disable the lines with fake identities and soul traits to generate, but I doubt they have anything to do with equipment. Any idea?
Debug errors:Code: [Select]2014-08-13 20:12:27.378 DwarfTherapist[31079:a03] Not authorized
AFAIK the not authorised error is from QT 5.2.1 (DT needs authorization flag when compiling with QT5.3, but only compiles without it with QT5.2.1)
libpng warning: Unknown iTXt compression type or method
libpng warning: Unknown iTXt compression type or method
And here's a log, (http://pastebin.com/MsXvqf5d) I hope you find something relevant.
DT Screenshot. (http://i.imgur.com/68VB3N0.png) The civilians with the red equipment blocks are woodcutters, miners, hunters.
One soldier for reference. (http://imgur.com/cOHOMG7)
What do you mean by "any items"?if you hover over one of the item/equipment cells in the grid, does it show what they're currently wearing?
No. (http://imgur.com/a/pEqef#0)What do you mean by "any items"?if you hover over one of the item/equipment cells in the grid, does it show what they're currently wearing?
ok so either it's not reading the inventory, or it can't find the items/materials. are the material/item preferences showing up?No. (http://imgur.com/a/pEqef#0)What do you mean by "any items"?if you hover over one of the item/equipment cells in the grid, does it show what they're currently wearing?
Is opening the box for custom profession name still an issue? Would it be something a "novice" could fix before next update?if you're compiling it yourself, then yes, it's already been fixed. (https://github.com/splintermind/Dwarf-Therapist/commit/8b9c51e91958b08fb71fb0a63a65872e5c5d0dfb)
It looks all right for me. (http://imgur.com/a/aKXLN#0)ok so either it's not reading the inventory, or it can't find the items/materials. are the material/item preferences showing up?No. (http://imgur.com/a/pEqef#0)What do you mean by "any items"?if you hover over one of the item/equipment cells in the grid, does it show what they're currently wearing?
Another Linux option would be to setcap at install; you'd only have to run something as root once, and you'd never disable the global protection. With an rpm/deb package you could make it invisible even.
Care to elaborate? I do not quite get what you mean.
But it does not really matter, it does not need root privileges at all, the way I suggested and handle it.
What would be the exact command(s?) you would still need root for with your approach?
$ sudo setcap cap_sys_ptrace=eip DwarfTherapist
hrmm, then it may one of those last few offsets in the dwarf section that are off (inventory_item_mode, inventory, inventory_item_bodypart) or it could be it's not finding bodypart names to group them by. do you see any health info/wounds?It looks all right for me. (http://imgur.com/a/aKXLN#0)ok so either it's not reading the inventory, or it can't find the items/materials. are the material/item preferences showing up?No. (http://imgur.com/a/pEqef#0)What do you mean by "any items"?if you hover over one of the item/equipment cells in the grid, does it show what they're currently wearing?
hrmm, then it may one of those last few offsets in the dwarf section that are off (inventory_item_mode, inventory, inventory_item_bodypart) or it could be it's not finding bodypart names to group them by. do you see any health info/wounds?
alright then i guess it's just not finding the inventory. i don't think i'm outputting anything to the log currently that lists an inventory count or anything. are you building the source yourself? i could push a quick commit to add some debug info for the inventory counts and/or show you where to step through the code to check the inventories.hrmm, then it may one of those last few offsets in the dwarf section that are off (inventory_item_mode, inventory, inventory_item_bodypart) or it could be it's not finding bodypart names to group them by. do you see any health info/wounds?
Health screen looks to be in order - more or less: the population is healthy in my test fort, only one dwarf showing up in Therapist with Thisty, but not on the health screen. However when I sent my squad onto a drop-bridge the injuries and stunned statuses showed up correctly in DT. How do I check if the inventory address is correct?
Yes, building them myself, sounds like a plan, thx.alright then i guess it's just not finding the inventory. i don't think i'm outputting anything to the log currently that lists an inventory count or anything. are you building the source yourself? i could push a quick commit to add some debug info for the inventory counts and/or show you where to step through the code to check the inventories.hrmm, then it may one of those last few offsets in the dwarf section that are off (inventory_item_mode, inventory, inventory_item_bodypart) or it could be it's not finding bodypart names to group them by. do you see any health info/wounds?
Health screen looks to be in order - more or less: the population is healthy in my test fort, only one dwarf showing up in Therapist with Thisty, but not on the health screen. However when I sent my squad onto a drop-bridge the injuries and stunned statuses showed up correctly in DT. How do I check if the inventory address is correct?
ok i've pushed a small commit with some log messages for the inventory read. you'll have to run with the -debug argument to see them though. in the code it's this function (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarf.cpp#L1407) that reads the inventory if you want to break and step through.Yes, building them myself, sounds like a plan, thx.alright then i guess it's just not finding the inventory. i don't think i'm outputting anything to the log currently that lists an inventory count or anything. are you building the source yourself? i could push a quick commit to add some debug info for the inventory counts and/or show you where to step through the code to check the inventories.hrmm, then it may one of those last few offsets in the dwarf section that are off (inventory_item_mode, inventory, inventory_item_bodypart) or it could be it's not finding bodypart names to group them by. do you see any health info/wounds?
Health screen looks to be in order - more or less: the population is healthy in my test fort, only one dwarf showing up in Therapist with Thisty, but not on the health screen. However when I sent my squad onto a drop-bridge the injuries and stunned statuses showed up correctly in DT. How do I check if the inventory address is correct?
Nothing shows up about the inventory in the .log or in the terminal window. I tried building DT both with release and debug setting, but no difference. Then I set break-points at the new lines, and run the debug version, but - most likely - I have no idea what I'm doing... (http://www.rpgcodex.net/forums/index.php?attachments/i_have_no_idea_what_i_m_doing-jpg.3808/)ok i've pushed a small commit with some log messages for the inventory read. you'll have to run with the -debug argument to see them though. in the code it's this function (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarf.cpp#L1407) that reads the inventory if you want to break and step through.Yes, building them myself, sounds like a plan, thx.alright then i guess it's just not finding the inventory. i don't think i'm outputting anything to the log currently that lists an inventory count or anything. are you building the source yourself? i could push a quick commit to add some debug info for the inventory counts and/or show you where to step through the code to check the inventories.hrmm, then it may one of those last few offsets in the dwarf section that are off (inventory_item_mode, inventory, inventory_item_bodypart) or it could be it's not finding bodypart names to group them by. do you see any health info/wounds?
Health screen looks to be in order - more or less: the population is healthy in my test fort, only one dwarf showing up in Therapist with Thisty, but not on the health screen. However when I sent my squad onto a drop-bridge the injuries and stunned statuses showed up correctly in DT. How do I check if the inventory address is correct?
Edit: cleaned up the inventory logging and added a few more details on what exactly the items are
in qtcreator go to the projects, then choose the run settings. you'll have a bunch of options below for the environment, etc. add -debug into the arguments like this (http://imgur.com/i3wSIbR). then you should have a crapload of stuff in the log file.Nothing shows up about the inventory in the .log or in the terminal window. I tried building DT both with release and debug setting, but no difference. Then I set break-points at the new lines, and run the debug version, but - most likely - I have no idea what I'm doing... (http://www.rpgcodex.net/forums/index.php?attachments/i_have_no_idea_what_i_m_doing-jpg.3808/)ok i've pushed a small commit with some log messages for the inventory read. you'll have to run with the -debug argument to see them though. in the code it's this function (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarf.cpp#L1407) that reads the inventory if you want to break and step through.Yes, building them myself, sounds like a plan, thx.alright then i guess it's just not finding the inventory. i don't think i'm outputting anything to the log currently that lists an inventory count or anything. are you building the source yourself? i could push a quick commit to add some debug info for the inventory counts and/or show you where to step through the code to check the inventories.hrmm, then it may one of those last few offsets in the dwarf section that are off (inventory_item_mode, inventory, inventory_item_bodypart) or it could be it's not finding bodypart names to group them by. do you see any health info/wounds?
Health screen looks to be in order - more or less: the population is healthy in my test fort, only one dwarf showing up in Therapist with Thisty, but not on the health screen. However when I sent my squad onto a drop-bridge the injuries and stunned statuses showed up correctly in DT. How do I check if the inventory address is correct?
Edit: cleaned up the inventory logging and added a few more details on what exactly the items are
Here's the debug log from QT Creator: 1 (http://pastebin.com/pkZWgQYH) and 2 (http://pastebin.com/0KFbJNM0)
Maybe it has some clues I fail to see.
I just discovered the "Thoughts" dock. I was about to suggest adding something like it when I discovered it. I wish I'd found it yesterday, when my tantrum spiral started that has (so far) brought me down from 97 to 13. That's just counting adults, I'm not sure how many kids/babies I started with, but I only have one kid and no babies now, so at least it did some good.
Thanks for implementing it.
Keith
in qtcreator go to the projects, then choose the run settings. you'll have a bunch of options below for the environment, etc. add -debug into the arguments like this (http://imgur.com/i3wSIbR). then you should have a crapload of stuff in the log file.derp
dwarftherapist-Desktop_Qt_5_2_1_clang_64bit-Debug/bin/debug/DwarfTherapist.app/Contents/MacOS/etc/memory_layouts/osx/v0.40.08_osx.ini" [../DwarfTherapist-git/src/dfinstance.cpp:1484] (get_memory_layout)
2014-Aug-14 21:41:18.644 INFO core Connection to DF version "v0.40.08 osx" established. [../DwarfTherapist-git/src/mainwindow.cpp:345] (connect_to_df)
2014-Aug-14 21:41:18.655 WARNING core vector at "0x00048200" has over 500000 entries! ( 462829616 ) [../DwarfTherapist-git/src/dfinstance.cpp:156] (check_vector)
2014-Aug-14 21:41:18.655 INFO core vector at "0x00048200" was not read due to an unacceptable size! ( 462829616 ) [../DwarfTherapist-git/src/dfinstance.cpp:168] (check_vector)
2014-Aug-14 21:41:18.663 WARNING core unidentified column type in set "General" ! [../DwarfTherapist-git/src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
2014-Aug-14 21:41:18.667 WARNING core unidentified column type in set "General" ! [../DwarfTherapist-git/src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
still no debug info. you should see lines with DEBUG in addition to INFO or WARNING, and there should be quite a few.in qtcreator go to the projects, then choose the run settings. you'll have a bunch of options below for the environment, etc. add -debug into the arguments like this (http://imgur.com/i3wSIbR). then you should have a crapload of stuff in the log file.derpCode: [Select]dwarftherapist-Desktop_Qt_5_2_1_clang_64bit-Debug/bin/debug/DwarfTherapist.app/Contents/MacOS/etc/memory_layouts/osx/v0.40.08_osx.ini" [../DwarfTherapist-git/src/dfinstance.cpp:1484] (get_memory_layout)
2014-Aug-14 21:41:18.644 INFO core Connection to DF version "v0.40.08 osx" established. [../DwarfTherapist-git/src/mainwindow.cpp:345] (connect_to_df)
2014-Aug-14 21:41:18.655 WARNING core vector at "0x00048200" has over 500000 entries! ( 462829616 ) [../DwarfTherapist-git/src/dfinstance.cpp:156] (check_vector)
2014-Aug-14 21:41:18.655 INFO core vector at "0x00048200" was not read due to an unacceptable size! ( 462829616 ) [../DwarfTherapist-git/src/dfinstance.cpp:168] (check_vector)
2014-Aug-14 21:41:18.663 WARNING core unidentified column type in set "General" ! [../DwarfTherapist-git/src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
2014-Aug-14 21:41:18.667 WARNING core unidentified column type in set "General" ! [../DwarfTherapist-git/src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
Line 3-4 only appeares if DT can't connect to a loaded world upon initialisation, line 5-6 is always there. Here is a full log. (http://pastebin.com/jhE10q2y) and the v0.40.08_osx.ini (http://pastebin.com/AuKTR8BK) again.
still no debug info. you should see lines with DEBUG in addition to INFO or WARNING, and there should be quite a few.in qtcreator go to the projects, then choose the run settings. you'll have a bunch of options below for the environment, etc. add -debug into the arguments like this (http://imgur.com/i3wSIbR). then you should have a crapload of stuff in the log file.derpCode: [Select]dwarftherapist-Desktop_Qt_5_2_1_clang_64bit-Debug/bin/debug/DwarfTherapist.app/Contents/MacOS/etc/memory_layouts/osx/v0.40.08_osx.ini" [../DwarfTherapist-git/src/dfinstance.cpp:1484] (get_memory_layout)
2014-Aug-14 21:41:18.644 INFO core Connection to DF version "v0.40.08 osx" established. [../DwarfTherapist-git/src/mainwindow.cpp:345] (connect_to_df)
2014-Aug-14 21:41:18.655 WARNING core vector at "0x00048200" has over 500000 entries! ( 462829616 ) [../DwarfTherapist-git/src/dfinstance.cpp:156] (check_vector)
2014-Aug-14 21:41:18.655 INFO core vector at "0x00048200" was not read due to an unacceptable size! ( 462829616 ) [../DwarfTherapist-git/src/dfinstance.cpp:168] (check_vector)
2014-Aug-14 21:41:18.663 WARNING core unidentified column type in set "General" ! [../DwarfTherapist-git/src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
2014-Aug-14 21:41:18.667 WARNING core unidentified column type in set "General" ! [../DwarfTherapist-git/src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
Line 3-4 only appeares if DT can't connect to a loaded world upon initialisation, line 5-6 is always there. Here is a full log. (http://pastebin.com/jhE10q2y) and the v0.40.08_osx.ini (http://pastebin.com/AuKTR8BK) again.
no, that means that it's not recognizing the -debug arg... ermm.. well shit. i guess you can try manually setting it to debug mode by addingstill no debug info. you should see lines with DEBUG in addition to INFO or WARNING, and there should be quite a few.in qtcreator go to the projects, then choose the run settings. you'll have a bunch of options below for the environment, etc. add -debug into the arguments like this (http://imgur.com/i3wSIbR). then you should have a crapload of stuff in the log file.derpCode: [Select]dwarftherapist-Desktop_Qt_5_2_1_clang_64bit-Debug/bin/debug/DwarfTherapist.app/Contents/MacOS/etc/memory_layouts/osx/v0.40.08_osx.ini" [../DwarfTherapist-git/src/dfinstance.cpp:1484] (get_memory_layout)
2014-Aug-14 21:41:18.644 INFO core Connection to DF version "v0.40.08 osx" established. [../DwarfTherapist-git/src/mainwindow.cpp:345] (connect_to_df)
2014-Aug-14 21:41:18.655 WARNING core vector at "0x00048200" has over 500000 entries! ( 462829616 ) [../DwarfTherapist-git/src/dfinstance.cpp:156] (check_vector)
2014-Aug-14 21:41:18.655 INFO core vector at "0x00048200" was not read due to an unacceptable size! ( 462829616 ) [../DwarfTherapist-git/src/dfinstance.cpp:168] (check_vector)
2014-Aug-14 21:41:18.663 WARNING core unidentified column type in set "General" ! [../DwarfTherapist-git/src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
2014-Aug-14 21:41:18.667 WARNING core unidentified column type in set "General" ! [../DwarfTherapist-git/src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
Line 3-4 only appeares if DT can't connect to a loaded world upon initialisation, line 5-6 is always there. Here is a full log. (http://pastebin.com/jhE10q2y) and the v0.40.08_osx.ini (http://pastebin.com/AuKTR8BK) again.
Sadly no, that's the only extra info in the log with -debug args. (DwarfTherapis/MacOS/log/run.log)
Doesn't that indicate that something is wrong with the memory structures on osx?
debug_logging = true;
here, just before the comment (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarftherapist.cpp#L136)
I'd like to check, is QT5 absolutely necessary for building on linux? I can get QT4 on Gentoo but getting QT5 on a 64bit Gentoo is really an absolute troll.there was actually a pull request this morning that allows DT to compile with QT4 as well as QT5 (https://github.com/splintermind/Dwarf-Therapist/pull/104). i plan to get it merged in today with the other pull for faster reads, so you can wait for that or try out that branch yourself.
no, that means that it's not recognizing the -debug arg... ermm.. well shit. i guess you can try manually setting it to debug mode by addingI hate to say it, but no change in the logs. Built a debug version with debug_logging = true; nothing, tried adding the -debug arg, tried compiling with 5.3 and 5.2.1 both, no change.Code: [Select]debug_logging = true;
here, just before the comment (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarftherapist.cpp#L136)
i don't know how that's even possible... this may be a stupid question but are you sure you're looking at the right log file? there should be entries within the first ~50 lines like:no, that means that it's not recognizing the -debug arg... ermm.. well shit. i guess you can try manually setting it to debug mode by addingI hate to say it, but no change in the logs. Built a debug version with debug_logging = true; nothing, tried adding the -debug arg, tried compiling with 5.3 and 5.2.1 both, no change.Code: [Select]debug_logging = true;
here, just before the comment (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarftherapist.cpp#L136)
2014-Aug-15 13:23:34.055 DEBUG core Loading language translation tables [src\languages.cpp:58] (load_data)
Are there any other log files besides DwarfTherapist.app/Contents/MacOS/log/run.log ? I already checked the ~/.config/UDP Software folder for logs, but there's none. Nothing in the system logs (Console.app) either.i don't know how that's even possible... this may be a stupid question but are you sure you're looking at the right log file? there should be entries within the first ~50 lines like:no, that means that it's not recognizing the -debug arg... ermm.. well shit. i guess you can try manually setting it to debug mode by addingI hate to say it, but no change in the logs. Built a debug version with debug_logging = true; nothing, tried adding the -debug arg, tried compiling with 5.3 and 5.2.1 both, no change.Code: [Select]debug_logging = true;
here, just before the comment (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarftherapist.cpp#L136)Code: [Select]2014-Aug-15 13:23:34.055 DEBUG core Loading language translation tables [src\languages.cpp:58] (load_data)
if you're building the source there should be a log file in the location where qtcreator is running it from. you should see where it's building/running it from in the project settings where you put the -debug arg as executable: path here.Are there any other log files besides DwarfTherapist.app/Contents/MacOS/log/run.log ? I already checked the ~/.config/UDP Software folder for logs, but there's none. Nothing in the system logs (Console.app) either.i don't know how that's even possible... this may be a stupid question but are you sure you're looking at the right log file? there should be entries within the first ~50 lines like:no, that means that it's not recognizing the -debug arg... ermm.. well shit. i guess you can try manually setting it to debug mode by addingI hate to say it, but no change in the logs. Built a debug version with debug_logging = true; nothing, tried adding the -debug arg, tried compiling with 5.3 and 5.2.1 both, no change.Code: [Select]debug_logging = true;
here, just before the comment (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarftherapist.cpp#L136)Code: [Select]2014-Aug-15 13:23:34.055 DEBUG core Loading language translation tables [src\languages.cpp:58] (load_data)
I checked an old copy of 6.12 and there I can see the debug messages in the .log, for eg. there's the "Loading language..." line you quoted.
if you're building the source there should be a log file in the location where qtcreator is running it from. you should see where it's building/running it from in the project settings where you put the -debug arg as executable: path here.If really hope you mean this (http://imgur.com/mJaq3wD), because I fail to find any other log files.
older versions had the default logging level set to DEBUG. recent versions have it set to INFO, and the debug logging is enabled with the -debug arg. i'm really at a loss here. if you set a breakpoint here (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarftherapist.cpp#L138) what's the value of min_level?if you're building the source there should be a log file in the location where qtcreator is running it from. you should see where it's building/running it from in the project settings where you put the -debug arg as executable: path here.If really hope you mean this (http://imgur.com/mJaq3wD), because I fail to find any other log files.
I tried the same .ini with DT 20.4 (http://pastebin.com/FE2rbj55) and DT 21.2 (http://pastebin.com/SAqcm00A), both have debug info in the .log. 22.0+ does not.
Hey guys,thanks, i took another look at the full view (again). seems it's also missing burial, animal care and alchemy. the last two i think can be omitted as they don't actually do anything, but burial needs to be there for sure.
Sorry if you were already aware of this but I didn't see anyone mention it in the thread. I'm using v. 23.6 and it's missing push/haul vehicles in the All Labors view.
Thanks for all your hard work :)
older versions had the default logging level set to DEBUG. recent versions have it set to INFO, and the debug logging is enabled with the -debug arg. i'm really at a loss here. if you set a breakpoint here (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarftherapist.cpp#L138) what's the value of min_level?Finally, some progress:
alright i'll go over the logging stuff to see about those uninitialized values. that's my fault with the hard-coded debugging true variable, i referenced the wrong line number! :-[ setting it to LL_DEBUG that way is better anyway.older versions had the default logging level set to DEBUG. recent versions have it set to INFO, and the debug logging is enabled with the -debug arg. i'm really at a loss here. if you set a breakpoint here (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarftherapist.cpp#L138) what's the value of min_level?Finally, some progress:
I'm not exactly sure this is correct (http://i.imgur.com/KYfZlL7.png), as I was stepping through the breakpoint I've seen minimum level of 1 and 32767 as well.
But I was able to turn on debugging by editing this line (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/dwarftherapist.cpp#L130) to LL_DEBUG.
DT_23.6_run.log (https://dl.dropboxusercontent.com/u/36491887/DT_23.6_run.log)
Looks like DT has a problem determining the item type.
And here's an extra one to look at (https://dl.dropboxusercontent.com/u/36491887/DT-inventory_breakpoints.txt), I set up breakpoints for the inventory logs in dwarf.cpp and saved the debugger output.
emit_addr 'item_type',%all,'item::vtable','getType';
but anyway, progress indeed. try adding this to the df-structures script and see if the value is something other than 0x0:The df-structures script doesn't work on osx, because there are no .csv files to work on. The lips utils only generate them for linux and win, I tried editing them a few days ago to generate the necessary files, but gave up after a while.Code: [Select]emit_addr 'item_type',%all,'item::vtable','getType';
address('item_type',all,'item::vtable','getType')
...cnewbie/Dwarf Fortress/hack/scripts/export-dt-ini-fr.lua:40: attempt to index local 'base' (a nil value)
stack traceback:
...cnewbie/Dwarf Fortress/hack/scripts/export-dt-ini-fr.lua:40: in function 'address'
...cnewbie/Dwarf Fortress/hack/scripts/export-dt-ini-fr.lua:374: in main chunk
(...tail calls...)
oh right.. well this is where the item's type is set (https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/src/item.cpp#L136), but since the offsets seem to be off, then you'll have to poke around in the memory there and see if you can find where it's returning the item's type.but anyway, progress indeed. try adding this to the df-structures script and see if the value is something other than 0x0:The df-structures script doesn't work on osx, because there are no .csv files to work on. The lips utils only generate them for linux and win, I tried editing them a few days ago to generate the necessary files, but gave up after a while.Code: [Select]emit_addr 'item_type',%all,'item::vtable','getType';
Tried this with the export-dt-ini script, but doesn't work:Code: [Select]address('item_type',all,'item::vtable','getType')
Code: [Select]...cnewbie/Dwarf Fortress/hack/scripts/export-dt-ini-fr.lua:40: attempt to index local 'base' (a nil value)
stack traceback:
...cnewbie/Dwarf Fortress/hack/scripts/export-dt-ini-fr.lua:40: in function 'address'
...cnewbie/Dwarf Fortress/hack/scripts/export-dt-ini-fr.lua:374: in main chunk
(...tail calls...)
Interestingi'm having a hard time reproducing this, any other things you're doing before/after you edit? sorting on any particular columns, what kind of stuff do you change in the opt plan?bugfeature: When I go to tweak my optimization plans, a lot of the roles get messed up, ex: Job: Blacksmith/Role: Miner, Job: Miner/Role: Herbalist, etc. They aren't that way when I save, but if I go back in (to add a job/ change the #'s of jobs) they're all mesticatedSpoiler (click to show/hide)
While the prospects for !!Fun!! are tempting (does the shuffling get worse each time if I don't correct it? How badly matched will my dwarves end up?), I am still cleaning up from a rogue weremongoose walled in my new hospital. (The old one has an enormous, eyeless kinglet of a titan walled in it)
Interestingi'm having a hard time reproducing this, any other things you're doing before/after you edit? sorting on any particular columns, what kind of stuff do you change in the opt plan?bugfeature: When I go to tweak my optimization plans, a lot of the roles get messed up, ex: Job: Blacksmith/Role: Miner, Job: Miner/Role: Herbalist, etc. They aren't that way when I save, but if I go back in (to add a job/ change the #'s of jobs) they're all mesticatedSpoiler (click to show/hide)
While the prospects for !!Fun!! are tempting (does the shuffling get worse each time if I don't correct it? How badly matched will my dwarves end up?), I am still cleaning up from a rogue weremongoose walled in my new hospital. (The old one has an enormous, eyeless kinglet of a titan walled in it)
thanks, i took another look at the full view (again). seems it's also missing burial, animal care and alchemy. the last two i think can be omitted as they don't actually do anything, but burial needs to be there for sure.
Are you guys still looking for the cause of that duplicate preferences bug? I stumbled upon a way to reproduce it today. Assign a dwarf to a custom profession, then clear all pending changes, and the dwarf will show double preferences, skills, etc.great, thanks! this will be fixed in the next version, along with some other optimization for commit/clearing pending changes which were related.
Windows 7, Therapist version 23.6.
I'm having trouble getting the nice_name() function in filters to work.the nice_name() function returns the name that you see in the first column. so doing a == comparison only matches the exact name, not a partial match. however, it looks like what you really want is the ability to check the nickname, so i've exposed that function to the scripting in the next release.
d.nice_name() == "" is the example in the Guide, but it matches none of my dwarves (and some have nicknames, and some don't).
d.nice_name()!="" matches everyone, even those without nicknames.
d.nice_name()=="Carpenter" matches nobody, even though I have 2 dwarves with that nickname.
Basically, I can't get nice_name() to match anything. Am I doing something wrong, or is it just not working correctly?
Grouping by nickname is working fine, though.
Keith
Due to an unfortunate incident with a weremoose, one of my dwarves ended up in a cage (which almost certainly saved his life). He no longer showed up in Dwarf Therapist as long as he was inside the cage. Once I released him he showed up in DT again. The population count was also down by one while he was in the cage.this should be fixed in the next release, but i wasn't able to test it.
Keith
Trying to pull and build from the repository I get an error:yes, you'll need qtdeclarative5-dev (https://github.com/splintermind/Dwarf-Therapist/issues/111)
Project ERROR: Unknown module(s) in QT: qml
Is there a new dependency?
yeah i'd wanted to add another grouping for total assigned skilled labors, but i'd forgotten about it. i'll add it to the tracker now.thanks, i took another look at the full view (again). seems it's also missing burial, animal care and alchemy. the last two i think can be omitted as they don't actually do anything, but burial needs to be there for sure.
One thing they do do is contribute to sorting by "Total Assigned Labors". I noticed that as I use Total Assigned Labors to find underutilized dwarves who might be interested in joining the military, and was surprised to find that some were dodging the draft by claiming to be animal caretakers.
That's not to say that animal care and alchemy should be displayed in the "Labors Full" list, but if we can't turn them off from there then maybe they shouldn't be counted towards TAL?
Cool, that worked.Trying to pull and build from the repository I get an error:yes, you'll need qtdeclarative5-dev (https://github.com/splintermind/Dwarf-Therapist/issues/111)
Project ERROR: Unknown module(s) in QT: qml
Is there a new dependency?
the nice_name() function returns the name that you see in the first column. so doing a == comparison only matches the exact name, not a partial match. however, it looks like what you really want is the ability to check the nickname, so i've exposed that function to the scripting in the next release.
<snip>I'm not sure I see a use case for the current implementation for nice_name() (or am I missing something?). Thanks for exposing the more useful functionality.
the nice_name() function returns the name that you see in the first column. so doing a == comparison only matches the exact name, not a partial match. however, it looks like what you really want is the ability to check the nickname, so i've exposed that function to the scripting in the next release.
<snip>
this should be fixed in the next release, but i wasn't able to test it.
yeah for scripting it's pretty useless, i should add something to search the nice names instead. if you don't need a script though, the filter box at the top should do what you want.<snip>I'm not sure I see a use case for the current implementation for nice_name() (or am I missing something?). Thanks for exposing the more useful functionality.
the nice_name() function returns the name that you see in the first column. so doing a == comparison only matches the exact name, not a partial match. however, it looks like what you really want is the ability to check the nickname, so i've exposed that function to the scripting in the next release.
It would be nice if there was a way to do partial matches for strings, though. Not a must-have, or even a high priority, but if you are bored some day and looking for something to do... :)<snip>
this should be fixed in the next release, but i wasn't able to test it.
Thanks. It was a minor issue, but I thought it was worth mentioning.
BTW, I actually use the Alchemy skill as a flag sometimes. For example, when I find someone drained of blood and I start searching for potential vampires, I go down the list and look at happy thoughts. Anyone who doesn't have any drink/eat/sleep related thoughts is a suspect and I flag them by turning on alchemy. It's the one skill that is always off by default and won't change anything if I turn it on. I guess I could turn off everyone's fish dissecting or animal care and use that, though.
Keith
yeah for scripting it's pretty useless, i should add something to search the nice names instead. if you don't need a script though, the filter box at the top should do what you want.
amd64 deb > http://dffd.wimbli.com/file.php?id=9441
If it works for you, please confirm.
$ make
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_QML_LIB -DQT_WIDGETS_LIB -DQT_NETWORK_LIB -DQT_CONCURRENT_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I. -Iinc -Iinc/models -Iinc/grid_view -Iinc/docks -Iui -Ithirdparty/qtcolorpicker-2.6 -I/usr/include/qt5 -I/usr/include/qt5/QtQml -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtConcurrent -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtCore -Ibin/release -Ibin/release -o bin/release/main.o src/main.cpp
src/main.cpp: In function ‘int main(int, char**)’:
src/main.cpp:37:5: error: ‘setSetuidAllowed’ is not a member of ‘QCoreApplication’
QCoreApplication::setSetuidAllowed(true);
^
make: *** [bin/release/main.o] Error 1
I have a problem building on Linux (Mint 17). Last time I successfully built was for the 40.05 release.nope, nothing wrong on your end. that line of code shouldn't be there, it slipped in when the OSX offsets were merged, and i hadn't tested the merge yet. grab the most recent code or just delete that line.
I was getting the missing `qml` problem and tried installing qml which didn't solve it. I then found that the list of packages to install had been updated, and needed to get qtdeclarative5-dev. This allowed me to run qmake.
Now I get this error when compiling main:Code: [Select]$ make
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_QML_LIB -DQT_WIDGETS_LIB -DQT_NETWORK_LIB -DQT_CONCURRENT_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I. -Iinc -Iinc/models -Iinc/grid_view -Iinc/docks -Iui -Ithirdparty/qtcolorpicker-2.6 -I/usr/include/qt5 -I/usr/include/qt5/QtQml -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtConcurrent -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtCore -Ibin/release -Ibin/release -o bin/release/main.o src/main.cpp
src/main.cpp: In function ‘int main(int, char**)’:
src/main.cpp:37:5: error: ‘setSetuidAllowed’ is not a member of ‘QCoreApplication’
QCoreApplication::setSetuidAllowed(true);
^
make: *** [bin/release/main.o] Error 1
The first time I ran make I may have accidentally interrupted it (I was focused on the wrong terminal and hit Ctrl+D; I didn't see if make had finished yet). I tried cloning a fresh repository and I still get the error.
Edit: I think I found the problem: Qt 5.3 hasn't been updated by apt-get upgrade. Do I need to use the Online Intaller from the Qt website? Or do I need to add some kind of development version to my packages?
I'm not able to set nicknames on DF40.09, on linux. Console outputs: process_vm_writev: Bad address.yeah it's broken (https://github.com/splintermind/Dwarf-Therapist/issues/123)
Could you add an option to conceal vampires and such?it should be doing that already. what version of DT are you using, and have you turned off the option to highlight cursed units?
I recently had DT report that a certain person is 500 years old and his name does not match up with DF name, and it feels kinda cheaty to see it just like that.
Is it possible for DT to report the same age and name as is shown in DF, or are there technical difficulties in the way?
Could you add an option to conceal vampires and such?it should be doing that already. what version of DT are you using, and have you turned off the option to highlight cursed units?
I recently had DT report that a certain person is 500 years old and his name does not match up with DF name, and it feels kinda cheaty to see it just like that.
Is it possible for DT to report the same age and name as is shown in DF, or are there technical difficulties in the way?
Would you mind uploading the save so I can take a closer look?Could you add an option to conceal vampires and such?it should be doing that already. what version of DT are you using, and have you turned off the option to highlight cursed units?
I recently had DT report that a certain person is 500 years old and his name does not match up with DF name, and it feels kinda cheaty to see it just like that.
Is it possible for DT to report the same age and name as is shown in DF, or are there technical difficulties in the way?
This occurred in version 23.6 with DF 40.08.
Screenshot of DF: https://dl.dropboxusercontent.com/u/76413808/Screenshot%202014-08-21%2015.38.45.png
Screenshot of DT: https://dl.dropboxusercontent.com/u/76413808/Screenshot%202014-08-21%2015.38.07.png
Screenshot of DT settings: https://dl.dropboxusercontent.com/u/76413808/Screenshot%202014-08-21%2015.39.18.png
Still works exactly the same way with DT 24.0 and DF 40.09 by the way.
Would you mind uploading the save so I can take a closer look?
there was a limit on how many historical figures could be read (100.000) and your world's history was just exceeding that (~102.000). so i'll have to make some adjustments :)Would you mind uploading the save so I can take a closer look?
Sure. Here's the save file: http://dffd.wimbli.com/file.php?id=9481
Edit: Anyone know where the settings are stored? I'd like to compare things between my linux and windows versions.~/.config/UDP Software/Dwarf Therapist.ini
Now I'm having trouble with d.total_assigned_labors(). It doesn't seem to matter (much) what I pass as an argument, it is always showing me the total including hauling labors. If I do 'true', 'false', 0, 1 or nothing at all, I get the total number of labors, including hauling. If I pass anything else, such as 'TRUE', 'FALSE', 'happy', or 'sad' I just get every dwarf, so that's evidently some sort of error.yeah it looks like the new scripting engine doesn't support function arguments with default values. i'll see about getting it fixed up in the next version. also, i've changed the total_assigned_labors function's option in the next version to include/exclude skill-less labors, so you shouldn't need to call it twice and check the difference anymore.
I'm trying to use it like the example in the Guide, subtracting d.total_assigned_labors(true) from d.total_assigned_labors(false) to see how many hauling labors are turned on. This worked in 23.6, but isn't working in 24.0. I know the number of hauling labors has changed, but the function doesn't seem to be giving different values for true and false.
Here's a final test:
d.total_assigned_labors(true) - d.total_assigned_labors(false) == 0
For 0 it returns every dwarf. For any other value ( I tried 1 through 20), it gives no dwarves.
Keith
I have a suggestion for a new tab (I'm not sure how to add it myself, or I would)you can use the dock windows to add/copy views. for the moodable skills, you can group by highest moodable skill, or you can add the special moodable skill column to one of your custom views.
In addition to Labors and Labors compact, could we have a Labors tab that only shows moodable skills (and possibly one that shows just unmoodable skills)
In my usual pattern, I'll manage how many dwarfs have skills (dabbling or better) to try to produce valuable moods. Such a view would let me see at a glance (collapse all who have a non-junk and non-crafting highest) who needs to do what jobs.
I also like to turn on all the unmoodable skills for everyone (especially those that don't result in quality-improved products) like wood burning, plant gathering, pump operating, etc.
Thoughts?
[OSX] Dwarf Therapist 25.0 | DF 40.10 (http://dffd.wimbli.com/file.php?id=9127)awesome, thanks again for the OSX packages. i've updated the main post with your DFFD link, as well as the repo's readme.
A zip of a bzip2 compressed tar file of a debian package.
Must go deeper.
;)
Can you just zip the thing?zip an ar archive with two other archives inside of it archived?
Will this work with DF 40.08? I saw that you didn't have a link for the old versions (unless there isn't one for 40.08?) other than the really old link to the original post.
Will this work with DF 40.08? I saw that you didn't have a link for the old versions (unless there isn't one for 40.08?) other than the really old link to the original post.
Yep, memory layouts for previous version are included so it should work fine.
Is there a 32-bit deb package? Or has anyone attempted to compile the latest version in 32-bit Linux?
DF is 32-bit, if you're asking how it runs on non-64-bit machines.
DF is 32-bit, if you're asking how it runs on non-64-bit machines.
i am referring to the half fps that I am sure is experienced on pentium 4 machines, seeing as DF is quite CPU-intensive.
Running DT version 25.0.0 and DF v40.10 on Unbuntu Linux, I got a new wave of migrants, waited for them to all get on the map, then clicked 'Read Dwarves'. It started to read, the progress bar on the bottom got to 73% and both DT and DF froze up. I was running dfhack, and its console was still responsive. Well, it was until I typed 'quicksave' in a vain attempt to save this season's work.
In the system monitor, I see that DF is using 0% of the CPU, but DT is using 25%, despite being frozen. I'm on a 4 processor system, so it appears that DT is stuck in a loop, totally using one of my CPUs. Nothing else on the system (except gnome-system-monitor) is using any CPU time.
I'm not sure what other info I can give you that might help debug this. I'll wait 10 or 15 minutes, on the off chance that someone reads this and can tell me something I can do that might be helpful. Otherwise i'll go ahead and kill DT and hope that DF can keep going. But I suspect that if DT has managed to stop DF, then DF won't start going again after DT is killed.
Keith
Has anyone had any confusion about jobs with dwarves in DT v.25?
I was wondering what might be wrong when I had a squad set for a barracks to train, but they seemed to do nothing in there, they always showed "no job" in DT. But examining them in game shows they are leading a demonstration or watching one.
[Linux] Dwarf Therapist 25.0 | 0.40.10 | amd64 deb (http://dffd.wimbli.com/file.php?id=9516)
/usr/bin/DwarfTherapist: error while loading shared libraries: libQt5Qml.so.5: cannot open shared object file: No such file or directory
Project MESSAGE: Release Mode
Project MESSAGE: Setting up for Linux
Project MESSAGE: Warning: unknown QT: concurrent
Project MESSAGE: Warning: unknown QT: widgets
make: *** [bin/release/dfinstancelinux.o] Error 1
make: *** Waiting for unfinished jobs....
[Linux] Dwarf Therapist 25.0 | 0.40.10 | amd64 deb (http://dffd.wimbli.com/file.php?id=9516)
Thank you for providing this.
I ran into some trouble running it; I'd be grateful for any help:Code: [Select]/usr/bin/DwarfTherapist: error while loading shared libraries: libQt5Qml.so.5: cannot open shared object file: No such file or directory
My distro is Crunchbang 11, based on Debian 7. As far as I understand it, Qt5 isn't supported. I tried following the instructions to build from source and "qmake" gave me this:Code: [Select]Project MESSAGE: Release Mode
Project MESSAGE: Setting up for Linux
Project MESSAGE: Warning: unknown QT: concurrent
Project MESSAGE: Warning: unknown QT: widgets
After that I ran "make -j$(nproc)" anyway to see what would happen. Result was a lot of output that looked promising but ended with:Code: [Select]make: *** [bin/release/dfinstancelinux.o] Error 1
make: *** Waiting for unfinished jobs....
Are there any relatively easy ways to fix this (that is, without installing a different distro or risking the operation of my current system)?
Thanks,
James
As a follow-up on my earlier post, I worked with Hello71 on IRC and got a stack trace, but since I had a binary with no debugging info, there wasn't anything we could really learn. A copy of the stack trace is at http://pastebin.com/Auj2MCPY.
Once I killed DT, thenDF started working normally again. I was then able to start a new DT process and it worked fine.
Keith
Is the role calculation working correctly? I'm currently using Dwarf Therapist v.25.0.0 for the first time in 0.40.x and most of my dwarfs who don't have a skill in a particular role, for example weaponsmith, get rated between 45% and 55%, while their attributes are very different.there's a bit of a disconnect at the moment, because the ratings are shown different ways. the values around 45-55 are the raw ratings, which are shown in the tooltip, on the details dock, and if you're using the 'text' cell drawing method.
I remember that in 0.34.x most dwarfs got rated between 20% and 80% for their possible roles, even if they had no skill for the role.
how about the option of displaying either
the raw value as numerical
or
the 0 to 100% conversion of the raw value as numerical?
Or is it due to extended decimal places that cause havoc when comparing?
I was originally comfortable with the raw ratings due to the way I used DT. However, I like the new "drawn" ratings, as they are based around an assumed mean of 50% and they are stretched from their respective min to 0 and max to 100%the 0-100 ratings would purely be used for display purposes (tooltips, dock, cells, etc.). anything in the back-end (csv export, optimization) would continue to use the raw ratings.
However... I think the raw rating was important to be exportable to csv, as when I was exporting the (0 to 100%) min to 50% to max method to csv, the middle numbers were not exhibiting the expected behaviour. I believe it might be due to rounding and pushing more numbers closer to the center.
How do I change the Labors Full grid to arrange the labors the way the game does?
The labors tab has weirdly rearranged the labors. So, for instance, woodcrafting is with wood cutting.How do I change the Labors Full grid to arrange the labors the way the game does?
What do you mean by that? Arrange them by how the game does?
Ah yes. Is a bit annoying.use the gridview dock and copy the labor view you want. then edit it and drag/drop to re-arrange the columns how you'd like.
File-export gridviews as .dtg
Select just one grdiview to export
Open gridview in notepad, edit name of gridview by appending a 2 to it
Import gridview
Click windows-grid views
You can edit your grid view via the grid views subwindow
Wow, more involved than I expected. Thanks for the replies.you don't need to fiddle with exporting and then importing. just copy the view you want (or create a new one) and then edit it to look however you'd prefer.
1409332012 20422 Solon Lumashilral job_initiate 37 StoreItemInStockpile
1409332012 15166 Reg Kosothdakost job_complete 87 EncrustWithGems
Is there anyway you could get DT to show the kill count on the militia page? I'd love to see easily who are my best militiadwarfs.sounds like a good idea for a new column type (https://github.com/splintermind/Dwarf-Therapist/issues/154).
Yup, broken down by notable kills and other kills?possibly, if i can figure out what the difference is.
Has anyone had any confusion about jobs with dwarves in DT v.25?
I was wondering what might be wrong when I had a squad set for a barracks to train, but they seemed to do nothing in there, they always showed "no job" in DT. But examining them in game shows they are leading a demonstration or watching one.
platform?
and those equipment problems are in the latest version (25)? what kinds of uniforms do you use?Has anyone had any confusion about jobs with dwarves in DT v.25?
I was wondering what might be wrong when I had a squad set for a barracks to train, but they seemed to do nothing in there, they always showed "no job" in DT. But examining them in game shows they are leading a demonstration or watching one.
platform?
Oops, sorry. Got pulled away and forgot.
Yes, Windows platform, Windows 7 x64.
I also noticed something odd in DT, when you view what each dwarf has via the Equipment popup text, they seem to never put on certian armor or gear they say they should. I look at the DF military screen and they say "Yes I have a metal helm and gauntlets on" but DT says they are missing. But when examined directly in DF, it says they have it.
I think I made a dozen extra steel helms because of coming back and seeing I was missing every so often, forgetting I made them last time.
DT will say "Missing Steel Helm, Missing Steel Gauntlett" but the dorf has them.
It also tends to not show anything of that sort when the equipment is "Green" but the pop up doesn't display any of them.
This feature is usually very handy for me to see what dwarves have and what is missing or wearing out since managing the clothing needs of a full fortress can be a real trial. My cloth and leather production is working as fast as I can find things wearing out to replace.
So far I've noticed it with Backpacks, quivers, ammo, helms, gauntlets, boots, maybe a few others.
Metal, but... Strike that. I might be having other issues.there was a problem with the equipment stuff a few versions ago, but it should be resolved in the latest version. anyway, if you do notice something weird again let me know and i'll look into it.
It might be with my dwarves not properly equipping some items, even though they should be. I might have been looking at dwarves wrong. I'll try to get back on this one. Very odd.
I could have sworn I saw it one way in DT and another in DF.
When right clicking a dwarf, all the custom professions are listed in a random order. Is there any way I can get them to be recognized alphabetically again?should be fixed for the next release (https://github.com/splintermind/Dwarf-Therapist/issues/78)
When right clicking a dwarf, all the custom professions are listed in a random order. Is there any way I can get them to be recognized alphabetically again?should be fixed for the next release (https://github.com/splintermind/Dwarf-Therapist/issues/78)
Again I cannot scan my memory for DF 40.11 Layout :(
Wish I could help.
Preference for spears does not seem to be used in the calculation for speardwarf. (Maces, hammers, and swords are effecting calculations properly.) v25.0can you elaborate? what does your role look like, and what dwarf doesn't seem to be matching? if you use the preference dock and/or the filter box to filter only a preference for spears, does it filter correctly?
The preference dock lists and selects my spear-lover properly. The filter box likewise. My dwarfs preference for spears which shows in the dwarf details screen, and in the tooltip.i double checked the default roles, and there doesn't seem to be any issue there. so your speardwarf has exactly the same role rating as the others without spears? if you want to upload a save i can take a closer look.
The role is the default one (Speardwarf) used in the default Military-alt screen. The number displayed for speardwarf is the same as that for all the other melee weapon types. 3 of my other dwarfs have weapon preferences (mace, shortsword, hammer) which do make a difference for their suitability for these roles.
My Region folder https://dl.dropboxusercontent.com/u/14105530/region1.rar (https://dl.dropboxusercontent.com/u/14105530/region1.rar)i checked this out, and it's due to a change made to preferences to attempt to balance roles with tons of preferences against those with few. previously the more preferences in a role the lower the rating would end up, due to a weighted average with many zeros. i made a change to exclude non-matches to help with this issue, but the side-effect is that in some cases (like this one) you end up with incorrect ratings. although the difference was only ~1% in the rating, it's still important to see, so i'll try to come up with a better solution.
If you need something else just let me know.
Save is from a couple of seconds after embark. The dwarf in question is Stakud. I ended up making them an Axedwarf but couldn't figure out what was going on.
Just in case it shows something different on your end this is a snapshot of my Military-Alt screen. You can see Stakud gets no increase in Speardwarf suitability, and you can also see the three dwarfs below him do get bonuses from their weapon preferences.
(http://i1122.photobucket.com/albums/l531/feelotraveller/Military-Alt_zps61560425.png)
Entirely separate from the above - would it be possible to add a column with the size stat we could add to custom grids. I'm thinking about it for breeding/slaughtering animals but perhaps others would find some military purpose for dwarfs?
while there's no column for body size (yet), you can right click on the first column (with the names) and sort by body size, which should help.
yeah the default roles view also needs to be retooled to match the labor views..
while there's no column for body size (yet), you can right click on the first column (with the names) and sort by body size, which should help.
Oh wow, fantastic! I had no idea that was there. :)
Just spent a few hours playing around with the grid views. It's really nice to be able to customise the views/information. This is how my roles tab ended up looking, at least for now.Spoiler (click to show/hide)
I was planning on going through the roles and customising them a bit in the nearish future. Any tips on what (not) to do to keep some balance between them?
The spread of figures in the above image is quite small (58 max, 44 min, disregarding the figures influenced by skills). I realise that it is a complicated matter of statistics and scaling to come up with a set of figures which are useful. Barring another solution would it be possible for users to scale the distribution (either scalar or some geometric expansion)? Much easier for simple heads like mine to pick the gaps and proportions if the spread was say 20 to 90 (i.e. 5x linear). Or to put it another way 1% difference (easily hidden on the spreadsheet) is currently so large that I feel like I should be looking at the unrounded figure on each and every occasion.
I would like it so that the tooltip does not display social skills. Would it be possible to add that in (or is it hiding somewhere I haven't found yet)?the best you can do is set the minimum level of skills to display in the tooltip. i'll make a note about the social skills.
traits have been removed from the default roles since 40.x since it was unknown what they might be affecting now. for military it's more obvious with things like bravery, violence, discipline, etc. but otherwise the default roles could really use some work in general. there are still some missing for spinner and shearer i think.
the roles have already been updated in the dev version to give better numbers in the display. (https://github.com/splintermind/Dwarf-Therapist/issues/152)
Screenshots of pref issuesno, it's broken, see the posts/explanation above about the speardwarf. dropping the zeros can result in an equal rating for a different number of matches.
J did a lot of testing of preferences around v23 to ensure we set it up right. The system I'd a bit hard to explain but it counts matches as either 1 for single (non group) matches and 1 +.1/ea for group matches.
That in turn is converted into 50%+ values
The method we use is rankecdf and it basically gives a proportional cumulative % based non the values frequency within the dataset. Prefs have approx 99% of their non null values as 1 match. So... It makes a 1 pref match for a role be a high %. But there is still room above this % for the matches such as 2 or 3.1 etc.
A dwarf w bismuth and spear prefs and aatch for both would return a higher # than a dwarf w just a spear match.
In fact this is exactly the problem which initially caused me to post. Since Stakud has a preference for bucklers as well as spears she ends up being shown as equally suitable for all melee roles (since bucklers count for all of them).
"More deeply though it would be problematic (in my opinion at least) for a dwarf with a preference for bismuth bronze to have a higher suitability since in the vast majority of cases they will not be equipped with bismuth bronze."It was in my prior post I addressed this concern with the ability to decrease group matches... however; to keep things simple, we opted for the matches as described. Suggestion for match changes are more than welcome. One can still set weights for their matches
But in most cases I'm not going to have the ability and/or desire to equip them with bismuth bronze so in these casesIt sounds like all these issues your describing can be solved with setting individual preference weights (possibly removing group match preferences altogether, and just opt for single matches)
...a dwarf with bed and wheelbarrow preferences is better off being a carpenter than a stone hauler (I'm assuming a custom stone hauler role with only the preference for wheelbarrows, which seems credible if not very useful). This is since the stone hauler will potentially be more happy but the carpenter will also produce enhanced quality beds. These beds are more valuable, but wait there is more, they also tend enhance room quality, and as a special offer if you read now, they also tend to be admired as fine pieces of furniture more. So that's two extra ways you can improve the happiness of your fortress.
I am proposing one thing. That the option to highlight preferences relevant to roles be added.i've had some time to look at this again, and the issue isn't directly caused by the exclusion of zero matches. the cause is more to do with the default weights that are applied to the role preferences.
Hopefully this could come with a filter to select only dwarfs which have one or more positive preferences (basically the ability to sort a role by this criteria).
I would prefer that this option also override the preference weightings for roles (i.e. set them all to zero) but that is merely for convenience.
Anything beyond that which I have said are descriptions of how I have seen Dwarf Therapist behaving at the moment or arguments/reasonings for why this option would be a good thing for players to have.
If all the weightings and mechanisms you are talking about are in some development version I can only shrug since I cannot check the validity of those assertions. If you are talking about the way the program (that is v25.0) works at the moment you are simply wrong.
I am happy for you to disagree with me about the ease and value of producing a numerical value for preferences. (I only hope that you do not insist that I use said schema.)
Edit: thinking about it a bit more, it might be worthwhile to modify the role cell tooltips to show the actual matching preferences...
I can only assume things have been set up this way in order to facilitate the preferences calculations but then I don't get them.
I'm not sure I understand the calculations for weighted averages (e.g. shouldn't the denominator in the final example be 2.0, leaving the speardwarf still at 0.75) but to be honest I am happy to leave that to the people who do have a head for it./sigh absolutely, what a shameful mistake on my part. i've updated the post to use the examples to demonstrate the problem (again, due to the zero-matches being removed, as i'd first figured). so back to square one, preferences still need a fix.
for the armor stuff especially, it was to aid in the previous problem where having lots of preferences pulled the rating way down. so only have one preference, even though it was a group, helped out significantly.Edit: thinking about it a bit more, it might be worthwhile to modify the role cell tooltips to show the actual matching preferences...
That would be excellent. :)
I'm not sure I understand the calculations for weighted averages (e.g. shouldn't the denominator in the final example be 2.0, leaving the speardwarf still at 0.75) but to be honest I am happy to leave that to the people who do have a head for it.
I started to make a pass through the roles but got quite unsure of myself. I started with armoursmith/weaponsmith roles but cannot understand why Metals is specified as a preference rather than only the six (or seven for the weaponsmith) applicable weapons-grade metals. Similarly for the armoursmith I did not understand why say Armour(Chest) was the preference criteria rather an enumeration of the chest armour pieces the smith can actually make (barring strange moods).
So I pulled up. I can only assume things have been set up this way in order to facilitate the preferences calculations but then I don't get them.
One positive addition I did make before bogging down was to add Cloth as a preference for Wound Dresser.
It is probably worth leaving the possibility to specify certain types of stone. E.g. for a custom stonecrafter role chewing through some excess economic stone, or whateveryou mean to have general categories for economic, non-economic stone?
foreach value: score = score + ((value* weight)/sumofWeights)
foreach value: value = value + ((value * weight))
I guess I should say, foreach value; prerankecdfscore = prerankecdfscore + ((value * weight))
score = rankecdf(prerankecdfscore)
((1*0.75)+(1 * 1.0))
the general food->alcohols category can probably also be removed since every dwarf has a preference for some type of booze (like stone/gems/metal). it makes sense to remove the consumable foods as you've suggested. the sole purpose of the role preferences is to aid in finding a dwarf for a job, and consumable preferences are useless in that sense.
I didn't think that through. It is probably better just to have the facility to specify a bunch of individual stones.It is probably worth leaving the possibility to specify certain types of stone. E.g. for a custom stonecrafter role chewing through some excess economic stone, or whateveryou mean to have general categories for economic, non-economic stone?
Here is my scenario:so something like right click -> update custom profession from dwarf?
I have a custom profession, lets call it 'craftmaster' which includes wood and stone crafting. I want to add metal crafting to it, using the right click customize dropdown menu, without going through the custom profession grid view (bear with me)
I understand that the proper way to do this would be to go into the custom profession grid, find the profession, edit it, and call it a day. However, from what I have seen in the latest version jump is that more professions are being added, probably with more to come. This can lead to scalability issues through version releases, especially when you have a couple dozen custom professions that would otherwise have to be updated via the view itself. If you find my proposal sound, would this be something that could be achieved?
TL;DR: Would it be possible to get a button to allow one click updating for custom professions?
...add hauling superlabors to default views...currently it's not possible to package customizations with DT, this includes scripts, custom professions and superlabors. once there's a way to include default versions of these (like roles are currently) this may become possible. for now, you're stuck with your custom views.
The tricky thing about a default grid view is that it is the default. So while I think that the superlabour groupings proposed are good/useful ones they are not going to appeal to players who tend to micromanage more (like myself). I say this not because it will effect me (I'm happy being able to customise my own grid views) but because I think that we need to decide what purpose the default grid view serves.ResMar has done a lot of work with the two new default labour views included to address this already. the full view has a column for every labour, so that's going to be the limiting factor in how small the view can be. the compact view is aimed at the mid-level users. it's got a hauling superlabor (even though it's not packaged) and the unused labors (animal care, alchemy) have been removed from it.
If I remember rightly earlier default grid views (20.x?) basically followed the schema used by DF itself. The advantage of this approach is that it makes it an easier transition for players used to the labour assignations used by the game itself. Its weakness, in my opinion, is that the default groupings supplied by the game are not on the whole that useful.
The current default grid view moves away from this somewhat without making much progress, imo again, in grouping the labours all that well. It differs enough to be somewhat confusing without gaining much in functional grouping. For me personally it also fails to achieve its aim of getting everything on one screen since I tend to play on a laptop with a 15.4 inch (16:9) screen.
I think that before a new labours grid view is devised we need to address the priority of issues like these. For example I think that the priority for the default view should be functionality for the mid-level user. My reasoning is that for many users their experience stops at plugging in the tool and using it. In this case any learning hump difficulties with differences from the default DF assignations quickly fade into the background. (I also think that in many ways having a distinctly different grouping to DF itself helps prevent confusion.) If there is agreement on this then we can start discussion about what a functional layout might look like. On the other hand if the consensus is that sticking as close as possible to the default grouping is best then we can discuss on what basis we are willing to make exceptions.
Similarly I think another thing to decide is if we want to try to restrict the width of the grid view to fit a single page at a given screen size/resolution. If we do then the question (after the size is decided...) becomes what is most important to fit into a given number of slots, or perhaps whether we should go for a lower pixel count. If not, which happens to be what I think, then in some senses the sky is the limit (although maybe 2 'pages' worth on the smallest screen we reckon anyone will use is more credible...) and we have a lot more latitude to include various supergroupings or alternative designations. The discussion will then tend to be about what slots should appear on the first page, or as first (or last) slots on the grid view, etc.
Personally I think that we should try to include a labour slot for every default labour in the game (even those not currently used like alchemy) along with a clear and up-to-date read me in the top level of the folder giving advice on prioritising which slots to delete, and how to do it. This has the advantage of introducing the user to the customisation features as well as allowing them to attempt fitting everything onto their specific-sized screen. I can see the advantage in including groups such as all hauling but for me they are a lower priority.
What do you think?
I have made a set of customised Civilian roles for Dwarf Therapist. Feel free to do whatever you want with them. :)this thread is just fine, it's directly related to DT.
They can be found at: http://dffd.wimbli.com/file.php?id=9661 (http://dffd.wimbli.com/file.php?id=9661) Read the notes there to find out a little more.
I welcome comments, criticisms, feedback, expressions of puzzlement, etc. either in the comments at DFFD or via PM here.
Depending on what splinterz thinks I am happy to respond in this thread too, but we should respect his wishes.
I have no short term plans to revise the military roles as it took me far longer than I originally envisaged. The civilian roles will be updated if they can be made better...
Here is my scenario:so something like right click -> update custom profession from dwarf?
I have a custom profession, lets call it 'craftmaster' which includes wood and stone crafting. I want to add metal crafting to it, using the right click customize dropdown menu, without going through the custom profession grid view (bear with me)
I understand that the proper way to do this would be to go into the custom profession grid, find the profession, edit it, and call it a day. However, from what I have seen in the latest version jump is that more professions are being added, probably with more to come. This can lead to scalability issues through version releases, especially when you have a couple dozen custom professions that would otherwise have to be updated via the view itself. If you find my proposal sound, would this be something that could be achieved?
TL;DR: Would it be possible to get a button to allow one click updating for custom professions?
"Helpful" pretty much means everyone has these labors enabled:
burial (burial is of high importance to happiness and miasma)
cleaning (cleaning I've found hasn't done much in 34.11; but... if I could clean up spills of blood on the floor [without dfhack], I'd gladly do so!!!)
feed patients/prisoners (important for some)
food hauling (optional, otherwise food will rot)
lever operation (high importance generally when asked for)
Push/haul vehicles (a rare event that should be enabled by default)
Recovery Wounded (rare event, high importance)
Refuse Hauling (preventing miasma is of high importance)
Hauling
I assign Hauling to pretty much everyone else.
I use these labors for those who don't meet a certain threshold of labors assigned.
Animal Hauling
Construction Removal
Food Hauling
Furniture Hauling
Haul Trade Good
Haul Water
Item Hauling
Stone Hauling
Wood Hauling
+
Helpful
I have made a set of customised Civilian roles for Dwarf Therapist. Feel free to do whatever you want with them. :)this thread is just fine, it's directly related to DT.
They can be found at: http://dffd.wimbli.com/file.php?id=9661 (http://dffd.wimbli.com/file.php?id=9661) Read the notes there to find out a little more.
I welcome comments, criticisms, feedback, expressions of puzzlement, etc. either in the comments at DFFD or via PM here.
Depending on what splinterz thinks I am happy to respond in this thread too, but we should respect his wishes.
I have no short term plans to revise the military roles as it took me far longer than I originally envisaged. The civilian roles will be updated if they can be made better...
- Brewer: you could keep the Plants (Alcohol) preference, since this is a plant preference, not a food/drink preference
- Butcher: i don't know if preferences count for non-item products, maybe having a domestic creature category would help here?
- Cheesemaker: no preferences (milk, cheese?)
- Clothier: no yarn preference?
- Cook: maybe food storage containers (pots/barrels) and i'll have to check the plant/crop preference (eg. cooking quarry bushes)
- Dyer: can yarn be dyed?
- Engraver: dislikes vermin removed?
- Farmer: looks like a crops category would be useful. seems there are a few negative preferences as well?
- Herbalist: same issues as farmer
- Leatherworker: perhaps some of the more common clothing items as well (cloaks, hoods, mittens, etc.)
- Lyemaker: uses a bucket in the reaction
- Shearer: i might be able to add a category for shearable creatures
- Small animal dissection: i've got the creatures with extracts split for fish vs land so the general category should be ok
- Spinner: i'll have to see about wool preferences (linked with shearing i believe)
i've been working on cleaning up the preference stuff in the role editor. many of the craft roles have the same set of preferences, so maybe it would be useful to also have a general 'crafts' category to include as well.
Heh. And here I was convinced it couldn't be DT and created a mantis bug about it. Let me know if you're sure it's a DT problem, so I can close the mantis bug.i'm certain it's a combination of unfinished code and incorrect offsets in DT.
Keith
When will this be updated for 40.12? Just wondering.I second this since I can't play DF without it. (You guys rock, FYI.)
When will this be updated for 40.12? Just wondering.I second this since I can't play DF without it. (You guys rock, FYI.)
40.12 layouts for windows/linux are available here for manual updating (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts)
hopefully i'll get around to another full release this weekend sometime.
Ok, I'll go ahead and close the mantis bug. Thanks for letting me know.Try the dfhack command "gui/unit-info-viewer"
Do you know of another way to check animal size values?
Keith
Ok, I'll go ahead and close the mantis bug. Thanks for letting me know.no i don't know another way to check, i guess with a dfhack script or lua to read a unit's body.size_info? at any rate, i think i've got it resolved now, however there may actually be a df bug with young creatures. i noticed that if the baby age was 0 and the child age was 1, it seemed that it may be rounding up to an age of 1 and using that body size. something like, at > 5 months, it's considered 1 year old and updates the body size to that of a child, even though it's still a baby.
Do you know of another way to check animal size values?
Keith
it appears that for the body size it's just reporting strength:agility?Ok, I'll go ahead and close the mantis bug. Thanks for letting me know.Try the dfhack command "gui/unit-info-viewer"
Do you know of another way to check animal size values?
Keith
I haven't looked at DT's code, but from what I've seen in scripts most add-ons calculate age in whole years ignoring the time of year (basically, current year - birth year), which can give very misleading results as DF itself respects age at a resolution of ticks. This would be more visible in the current version because new forts don't always start on the first of the year. (I've seen contradictory statements of how creatures' sizes change with age, either linearly or quantum leaps. Whatever it is, DF will return that when reporting a body size.)Ok, I'll go ahead and close the mantis bug. Thanks for letting me know.no i don't know another way to check, i guess with a dfhack script or lua to read a unit's body.size_info? at any rate, i think i've got it resolved now, however there may actually be a df bug with young creatures. i noticed that if the baby age was 0 and the child age was 1, it seemed that it may be rounding up to an age of 1 and using that body size. something like, at > 5 months, it's considered 1 year old and updates the body size to that of a child, even though it's still a baby.
Do you know of another way to check animal size values?
Keith
as another example, i had an alpaca that was 8 months old, so it's size should have been around ~7000 until 1 year old, where it's size is then ~35000. however at 8 months it was already ~28000.
this discrepancy was part of the DT issue, but the other part was that the body size code was incomplete. it had been simply taking the caste's default adult size, and dividing by 2 for children, and 4 for babies. using that base size, it was then applying the appearance modifiers to adjust the size accordingly. however, this doesn't seem to take into account fat layers? once i realized i could read the current body size directly (at least that's what i think unit.body.size_info.size_cur is, i couldn't get an answer from the dfhack guys) i switched to simply reading that instead of calculating it.
well that's what i assumed DF was doing as well.. until i saw the alpaca at 8 months with a year 1 body size (if the offset i referenced is correct..).I haven't looked at DT's code, but from what I've seen in scripts most add-ons calculate age in whole years ignoring the time of year (basically, current year - birth year), which can give very misleading results as DF itself respects age at a resolution of ticks. This would be more visible in the current version because new forts don't always start on the first of the year. (I've seen contradictory statements of how creatures' sizes change with age, either linearly or quantum leaps. Whatever it is, DF will return that when reporting a body size.)Ok, I'll go ahead and close the mantis bug. Thanks for letting me know. Do you know of another way to check animal size values?no i don't know another way to check, i guess with a dfhack script or lua to read a unit's body.size_info? at any rate, i think i've got it resolved now, however there may actually be a df bug with young creatures. i noticed that if the baby age was 0 and the child age was 1, it seemed that it may be rounding up to an age of 1 and using that body size. something like, at > 5 months, it's considered 1 year old and updates the body size to that of a child, even though it's still a baby.
Keith
as another example, i had an alpaca that was 8 months old, so it's size should have been around ~7000 until 1 year old, where it's size is then ~35000. however at 8 months it was already ~28000.
this discrepancy was part of the DT issue, but the other part was that the body size code was incomplete. it had been simply taking the caste's default adult size, and dividing by 2 for children, and 4 for babies. using that base size, it was then applying the appearance modifiers to adjust the size accordingly. however, this doesn't seem to take into account fat layers? once i realized i could read the current body size directly (at least that's what i think unit.body.size_info.size_cur is, i couldn't get an answer from the dfhack guys) i switched to simply reading that instead of calculating it.
Whatever it is, DF will return that when reporting a body size
what do you mean byIf the offset is correct, it should be possible to monitor the body size of a creature at intervals over time. DF knows what it's doing, so asking DF the current body size will follow the correct formula. That will settle the question of whether it grows linearly in each life stage or just pops into a new size at the correct age. But it's kind of irrelevant if you can just look up a creature's current size on the fly.QuoteWhatever it is, DF will return that when reporting a body size
ah yes ok. from what i could tell looking at specific animals and the body_size_info structure in dfhack, the base_size was very close, or exactly the caste's average size with body modifiers applied. the size_cur was usually larger (i don't remember if it was ever smaller) than the base size. so i believe that's the current size with fat/muscle the creature has gained, but again i'm not certain.what do you mean byIf the offset is correct, it should be possible to monitor the body size of a creature at intervals over time. DF knows what it's doing, so asking DF the current body size will follow the correct formula. That will settle the question of whether it grows linearly in each life stage or just pops into a new size at the correct age. But it's kind of irrelevant if you can just look up a creature's current size on the fly.QuoteWhatever it is, DF will return that when reporting a body size
Even without DFHack, it's conceivable to butcher the same animal every couple months with savescumming.
40.12 layouts for windows/linux are available here for manual updating (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts)
hopefully i'll get around to another full release this weekend sometime.
cd Dwarf-Therapist
git pull
qmake -qt=5
make
sudo checkinstall \
--pkgname="dwarf-therapist" \
--pkgversion="`date '+%Y-%m-%d'`-`git log --pretty=format:'%h' -n 1`" \
--pkgrelease=1 \
--nodoc \
--pkgsource="https://github.com/splintermind/Dwarf-Therapist" \
--maintainer="add@email"
P.S. I'm aware that using checkinstall for distribution is discouraged, but it works and requires much less time setting up.
40.12 layouts for windows/linux are available here for manual updating (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts)
hopefully i'll get around to another full release this weekend sometime.
Sorry for my noobness here, first time attempting to manually update Dwarf Therapist. I just add the graphics.ini for the version I need to etc\memory_layouts\windows and I am good to go, yes?
40.12 layouts for windows/linux are available here for manual updating (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts)
hopefully i'll get around to another full release this weekend sometime.
Sorry for my noobness here, first time attempting to manually update Dwarf Therapist. I just add the graphics.ini for the version I need to etc\memory_layouts\windows and I am good to go, yes?
Yep. Just make sure you save it as "all files" so it doesn't append '.txt' to the extension, which stops it working.
So I just lost all my custom gridviews. Between sessions they stopped showing and they are gone from the DT menu. Strangely my custom roles are all still present.
I cannot find the default_gridviews.dtg mentioned in the readme, where should I be looking?
The manual mentions a Dwarf_Therapist.ini in passing at the end, and I think I previously saw this when hunting through my AppData files for something else but no luck locating it presently. A search of my entire system did not find it either. Where would I expect to find it?
Just to be clear on what you did: in {DT}\etc\memory_layouts\windows you added a new file, v0.40.12_graphics.ini with the contents from either windows (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/share/memory_layouts/windows/v0.40.12_graphics.ini) or linux (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/share/memory_layouts/linux/v040.12.ini)?40.12 layouts for windows/linux are available here for manual updating (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts)
hopefully i'll get around to another full release this weekend sometime.
Sorry for my noobness here, first time attempting to manually update Dwarf Therapist. I just add the graphics.ini for the version I need to etc\memory_layouts\windows and I am good to go, yes?
Yep. Just make sure you save it as "all files" so it doesn't append '.txt' to the extension, which stops it working.
I've added the files to the folder as described above and dwarf therapist is still saying it does not recognize the version of dwarf fortress I'm running. Is there another file I need to edit to point to the new files? Sorry for the question and thanks in advance for any help you can offer.
Yes sir, I used the files for windows and placed it in the following location C:\Dwarf Therapist 25.0\etc\memory_layouts\windows file name is v0.40.12_graphics.iniNo idea - can you upload your v0.40.12_graphics.ini?
The error states it doesn't know how to talk to this version of dwarf fortress and it lists the known versions only up to 40.10 so obviously I'm doing something wrong. I went ahead and added the file for version before as well v0.40.11_graphics.ini. Any clues?
I've not made any changes to the file, it should be the same as the one found on the dwarf therapist manual update website linked on the previous page. For that matter it isn't reporting knowing about 40.11 either. Are there any other steps I'm missing other than just plugging the files into the right folder?No, that's all you have to do - that's why I'm wondering if the file you made has the right contents and was going to do a quick diff on it.
I didn't make the file, I downloaded it. Is that maybe where I went wrong, did I not understand what it was asking me to do? : P Not sure how to upload the file here don't see any attachment buttons.Depends on what you mean by "I downloaded it" - if you didn't go down to the raw itself, it's possible you grabbed the HTML for the page instead of the file contents. Just open it up, copy and paste what's in there to pastebin.com (or just compare it to what I linked which is a direct link to the raw) - if they don't match, replace it with the contents of the raw. If they do match, we'll need someone who knows more about DT than I do.
http://pastebin.com/K1QgieWYYeah, that's what I hate about online repos. Replace the contents of your file with the contents of this (just copy/paste all the text on the page):
I clicked on the file name itself and this is what it downloaded for me.
So I just lost all my custom gridviews. Between sessions they stopped showing and they are gone from the DT menu. Strangely my custom roles are all still present.
I cannot find the default_gridviews.dtg mentioned in the readme, where should I be looking?
The manual mentions a Dwarf_Therapist.ini in passing at the end, and I think I previously saw this when hunting through my AppData files for something else but no luck locating it presently. A search of my entire system did not find it either. Where would I expect to find it?
Mine is in %APPDATA%\UDP Software
i've had reports in the past-very rarely-of this happening, but never enough information on what may have caused it. if you have any idea what may have caused it, or if you can explain what you were doing at the time, it may help me track down this bug.So I just lost all my custom gridviews. Between sessions they stopped showing and they are gone from the DT menu. Strangely my custom roles are all still present.
I cannot find the default_gridviews.dtg mentioned in the readme, where should I be looking?
The manual mentions a Dwarf_Therapist.ini in passing at the end, and I think I previously saw this when hunting through my AppData files for something else but no luck locating it presently. A search of my entire system did not find it either. Where would I expect to find it?
Mine is in %APPDATA%\UDP Software
Thanks salithus. (Found my Dwarf_Therapist.ini in appdata/roaming/udp software.)
But the behaviour mentioned is looking curiouser and curiouser. When I opened the ini it had info on all my custom roles and also info on the first of the custom grid views which I am in the process of recreating.
what do you mean byIf the offset is correct, it should be possible to monitor the body size of a creature at intervals over time. DF knows what it's doing, so asking DF the current body size will follow the correct formula. That will settle the question of whether it grows linearly in each life stage or just pops into a new size at the correct age. But it's kind of irrelevant if you can just look up a creature's current size on the fly.QuoteWhatever it is, DF will return that when reporting a body size
Even without DFHack, it's conceivable to butcher the same animal every couple months with savescumming.
ah yes ok. from what i could tell looking at specific animals and the body_size_info structure in dfhack, the base_size was very close, or exactly the caste's average size with body modifiers applied. the size_cur was usually larger (i don't remember if it was ever smaller) than the base size. so i believe that's the current size with fat/muscle the creature has gained, but again i'm not certain.
um, you exported as csv vs dtgYes, woops! Here is dtg https://dl.dropboxusercontent.com/u/14105530/gridviews.dtg (https://dl.dropboxusercontent.com/u/14105530/gridviews.dtg)
I'm looking at an adult donkey (whose description makes no mention of size, muscle or fat) so it ought to be around 300,000 cm^3, but body_size_info.size_cur is 26060 and size_base is 27600. So it is certainly possible for the size_cur to be smaller than size_base.that's correct.
Both are about an order of magnitude smaller than the raws indicate they should be. So I'm guessing these values are in 10 cm^3 units.
I've got a 4 month old peacock that has (according to dfhack's gui/gm-editor) size_cur of 161 and size_base of 162. The raws are:nice work! for the fat/muscle i believe DF actually calculates additional mass by looking at body layers like fat/muscle and what material they're made of, so that a dwarf with muscle of iron would supposedly have a larger cur_size than a regular dwarf.
[BODY_SIZE:0:0:100]
[BODY_SIZE:0:168:2000]
[BODY_SIZE:1:0:4000]
So it should be born at 100 cm^3 and at 6 months (168 days) should be up to 2000 cm^3. Assuming a linear progression, and assuming that the 4 months reported by DT for the age is exact, it ought to be 100+(4/6 * (2000-100)) or 1367. Its description says it is "incredibly skinny yet gigantic overall." In appearance.body_modifiers there are 107,104,102 which I'm guessing are the length, height, and broadness from the raws' BODY_APPEARANCE_MODIFIER tags. The size_modifier is 113, and 1.07*1.04*1.02 is 1.13, so I suspect that's what size_modifier is. So that would mean that its size_base ought to be 1367 * 1.13, or 1544 cm^3, which is short of the 1620 I'm seeing. Ahh, but a little calculation shows that if it's actually 4.21 months (which DT would round to 4 months), then this comes out just right.
Looking back at the donkey above, it's size_modifier is 92, so .92 * 300000 = 276000, which matches up to the size_base value of 27600. So it does look like the size_base matches up to what one would expect. Your guess that size_cur takes into account fat/muscle seems to make sense, but I can't find anything in the data structures that seems to be the fat or muscle modifiers. Plus, I would expect an 'incredibly skinny' peacock to be smaller than 1610 if its base should be 1620. :-/
I've got to run catch a bus, but I'll keep looking at this.
Keith
And it's only been a few hours since I decided downloading by hand got so fiddly that I made updating not-manual (https://github.com/PeridexisErrant/Scripts-for-the-Starter-Pack/commit/28f456193ec73aa1c8567aa8acec4c19baa86f57).How do I use that not-manual link? We're past the weekend and I'd love to get back into DF. Especially since I finally found where the Save Updater was hiding.
And it's only been a few hours since I decided downloading by hand got so fiddly that I made updating not-manual (https://github.com/PeridexisErrant/Scripts-for-the-Starter-Pack/commit/28f456193ec73aa1c8567aa8acec4c19baa86f57).How do I use that not-manual link? We're past the weekend and I'd love to get back into DF. Especially since I finally found where the Save Updater was hiding.
Yeah, whoops. It's not at all portable, being a general script to prepare the starter pack for uploading. I'll do a general one to run from the DT folder and upload that later today.Thank you!
from __future__ import print_function
import os
import sys
try: # Python 2
from urllib2 import Request
except ImportError: # Python 3
from urllib.request import Request
print('A script to download the latest DT memory layouts.')
print('Run from the same folder as the Dwarf Therapist executable.\n')
version = input('What version of DF? For 40.12, enter "12":\n ')
if sys.platform().startswith('win32'):
platform = 'windows'
memory_layout_file = 'v0.40.' + version + '_graphics.ini'
elif sys.platform().startswith('darwin'):
platform = 'osx'
memory_layout_file = 'v0.40.' + version + '_osx.ini'
elif sys.platform().startswith('linux'):
platform = 'linux'
memory_layout_file = 'v0.40.' + version + '.ini'
else:
print('Weird OS, aborting...')
raise SystemExit
DT_layout_path = 'etc/memory_layouts/'+platform+'/'
if os.path.isfile(DT_layout_path + memory_layout_file):
print('Therapist memory layout is already in place.')
else:
url = str('https://raw.githubusercontent.com/splintermind/'
'Dwarf-Therapist/DF2014/share/memory_layouts/'
+ platform + '/' + memory_layout_file)
try:
url_content = urllib.request.urlopen(url).read().decode(encoding='UTF-8')
with open(DT_layout_path + memory_layout_file, 'w') as f:
f.write(url_content)
print('DT memory layout was downloaded OK.')
except:
print('DT memory layout unavailable for this version.')
if os.system() == 'nt':os.system() executes arbitrary external commands - you're probably looking for sys.platform (https://docs.python.org/2/library/sys.html#sys.platform).
...
elif os.system == 'posix':
from __future__ import print_function
import os
import sys
try: # Python 2
from urllib2 import Request
except ImportError: # Python 3
from urllib.request import Request
print('A script to download the latest DT memory layouts.')
print('Run from the same folder as the Dwarf Therapist executable.\n')
version = input('What version of DF? For 40.12, enter "12":\n ')
if sys.platform.startswith('win32'):
platform = 'windows'
memory_layout_file = 'v0.40.' + version + '_graphics.ini'
elif sys.platform.startswith('darwin'):
platform = 'osx'
memory_layout_file = 'v0.40.' + version + '_osx.ini'
elif sys.platform.startswith('linux'):
platform = 'linux'
memory_layout_file = 'v0.40.' + version + '.ini'
else:
print('Weird OS, aborting...')
raise SystemExit
DT_layout_path = 'etc/memory_layouts/'+platform+'/'
if os.path.isfile(DT_layout_path + memory_layout_file):
print('Therapist memory layout is already in place.')
else:
url = str('https://raw.githubusercontent.com/splintermind/'
'Dwarf-Therapist/DF2014/share/memory_layouts/'
+ platform + '/' + memory_layout_file)
try:
url_content = urllib.request.urlopen(url).read().decode(encoding='UTF-8')
with open(DT_layout_path + memory_layout_file, 'w') as f:
f.write(url_content)
print('DT memory layout was downloaded OK.')
except:
print('DT memory layout unavailable for this version.')
(I haven't tested this either, so I'm not sure if there are any other problems ;) )
Hello,
I got one stupid question about Dwarf Therapist - is there a chance, that any version of DT works with DF 0.40.11 under Windows? (I saw Linux version for 0.40.12).
I would be happy, if anyone could help me about that :)
Hello,
I got one stupid question about Dwarf Therapist - is there a chance, that any version of DT works with DF 0.40.11 under Windows? (I saw Linux version for 0.40.12).
I would be happy, if anyone could help me about that :)
Have you tried DF file depot?
I just found .12 there for windows.
Download the memory layout for whichever version you want.
https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts
@Splinterz - I'm noticing a theme here. Maybe it's a good idea to add an explanation and link to memory layouts to the OP, and/or release 25.1 including them?i'll consider adding a readme. next release is taking a bit more time than expected..
current git HEAD will not conpile on a linux system without pdflatex installed (complains about pdflatex is missing). removing the pdf doc target from the created Makefile solves the issue. i don't know anthing about qmake to provide a real solution.should be fixed with that last merge
I need help with a filtering script.what you'll have to use for now is:
I would like to create a filter that lists every Dwarf who has the preference "Likes working outdoors" or "Does not mind being outdoors".
I assume I would create a script using d.has_preference(), but I don't know what to put in the brackets. How exactly does this function work, and what are the values that I need to use to get my filter working?
d.find_preference('Does not mind being outdoors','Outdoors') || d.find_preference('Likes working outdoors','Outdoors')
what you'll have to use for now is:Code: [Select]d.find_preference('Does not mind being outdoors','Outdoors') || d.find_preference('Likes working outdoors','Outdoors')
there seems to be an issue with how the script engine handles (or rather doesn't handle) optional function parameters that i need to look into.
that's me listing the data probabilities (in a probability density function to each ATTRIBUTE point from 19 observed points) from 0 to 100%one day I will understand statistics. and then the four riders will come.
but I subtracted .5
then took the ABSOLUTE VALUE of that
subtracted .5 again!
and graphed it.
seriously, if you want the worksheet, pm me, otherwise I won't bore the readers
i haven't had a lot of playtesting with this version, and there's quite a lot of changes, so let me know if anything explodes. i'll also start adding releases on the github page from now on (https://github.com/splintermind/Dwarf-Therapist/releases).It's difficult to tell what "Dwarf-Therapist.26.0.0.zip" is from the filename (I'm assuming it's a compiled binary, in which case specifying the platform would be helpful).
i haven't had a lot of playtesting with this version, and there's quite a lot of changes, so let me know if anything explodes. i'll also start adding releases on the github page from now on (https://github.com/splintermind/Dwarf-Therapist/releases).It's difficult to tell what "Dwarf-Therapist.26.0.0.zip" is from the filename (I'm assuming it's a compiled binary, in which case specifying the platform would be helpful).
i've updated the .zip to indicate it's the windows package.i haven't had a lot of playtesting with this version, and there's quite a lot of changes, so let me know if anything explodes. i'll also start adding releases on the github page from now on (https://github.com/splintermind/Dwarf-Therapist/releases).It's difficult to tell what "Dwarf-Therapist.26.0.0.zip" is from the filename (I'm assuming it's a compiled binary, in which case specifying the platform would be helpful).
It is not working for me. DT launches and will connect to DF but whenever I try to read dwarfs it disconnects. DT 26.0 with DF 40.13 vanilla. Find the run log here: https://dl.dropboxusercontent.com/u/14105530/run.log (https://dl.dropboxusercontent.com/u/14105530/run.log)
I'm unable to set nicknames for dwarves in 26.0.0, using the version I built from the source .zip on linux. It pops up the window to set the name and I can type it in. If I then try to set the name again for the same dwarf i can see the name I already typed in. But when I commit, it doesn't change in the game nor show up in DT. I can set nicknames in DF and when I do a read they show up in DT.
Can someone try this out in the Windows release to see if this is something I did wrong in building, or maybe it's a linux-specific issue. The build was pretty straightforward, following the instructions in BUILDING.rst and using "-qt=4". So i doubt I messed anything up in the build.
Keith
It is not working for me. DT launches and will connect to DF but whenever I try to read dwarfs it disconnects. DT 26.0 with DF 40.13 vanilla. Find the run log here: https://dl.dropboxusercontent.com/u/14105530/run.log (https://dl.dropboxusercontent.com/u/14105530/run.log)what does your 40.13 memory layout look like?
I'm unable to set nicknames for dwarves in 26.0.0, using the version I built from the source .zip on linux. It pops up the window to set the name and I can type it in. If I then try to set the name again for the same dwarf i can see the name I already typed in. But when I commit, it doesn't change in the game nor show up in DT. I can set nicknames in DF and when I do a read they show up in DT.i tested setting nicknames on windows and linux without issue, but if you want to upload the problematic save i'll take a look.
Can someone try this out in the Windows release to see if this is something I did wrong in building, or maybe it's a linux-specific issue. The build was pretty straightforward, following the instructions in BUILDING.rst and using "-qt=4". So i doubt I messed anything up in the build.
Keith
Like this. It's what came bundled with 26.0.It is not working for me. DT launches and will connect to DF but whenever I try to read dwarfs it disconnects. DT 26.0 with DF 40.13 vanilla. Find the run log here: https://dl.dropboxusercontent.com/u/14105530/run.log (https://dl.dropboxusercontent.com/u/14105530/run.log)what does your 40.13 memory layout look like?
no, you no longer need the game_data.ini unless you're overriding. move DT from the desktop and/or run it as admin.Like this. It's what came bundled with 26.0.It is not working for me. DT launches and will connect to DF but whenever I try to read dwarfs it disconnects. DT 26.0 with DF 40.13 vanilla. Find the run log here: https://dl.dropboxusercontent.com/u/14105530/run.log (https://dl.dropboxusercontent.com/u/14105530/run.log)what does your 40.13 memory layout look like?Spoiler (click to show/hide)
Edit: what I appear to be missing that is present in 25.0 is a game_data.ini file. Do I need this? (and how do I get it...) Apologies in advance if I'm missing something simple.
Okay, that's not it then.can you run it with the -trace option and post the log file?
Something I just noticed is that DT is giving contrary information about it's connection status. The text in the bottom right says: 'Loading Weapons l Connected to DF v0.40.13 (graphics) - DT version 26.0.0' and the connect to DF icon and menu option are greyed and unselectable but the text at the top (with hammer icon and blue background) and the minimized window both say Dwarf Therapist -Disconnected.
Sorry to go on but I'm keen to play... a bit. :)
The -trace log. I renamed it run2.log.
This one is with the CLA graphics 40.13 version, just in case it matters. I was getting the same behaviour with bog standard vanilla though. Edit: with DF on the prepare carefully screen, but again I was seeing no difference...
https://dl.dropboxusercontent.com/u/14105530/run2.log (https://dl.dropboxusercontent.com/u/14105530/run2.log)
ugh. it's the 64-bit bug.
A question/request:yeah that's a good idea, i started considering something similar when i was adding the kill lists.
I would like to remove the tooltip pop up altogether and instead have all the info contained in it displayed in a docked windowed to the right or whatever might be possible. I haven't found a way to do this, and had no luck searching this thread.
My problem is I can't read the grid when the tooltip keeps blocking it, and I spend a alot more time reading the grid than the tooltip.
# chmod +x /usr/bin/dwarftherapist
Latest version doesn't make /usr/bin/dwarftherapist executable on Linux.
[Linux amd64 deb] Dwarf Therapist 26.0 | 0.40.13 http://dffd.wimbli.com/file.php?id=9747
yeah my bad, although completely unintentional. i didn't even notice the change (since i didn't touch it), nor do i have an idea why it happened in the first place. i'll have to check the git docs.Latest version doesn't make /usr/bin/dwarftherapist executable on Linux.
[Linux amd64 deb] Dwarf Therapist 26.0 | 0.40.13 http://dffd.wimbli.com/file.php?id=9747
this one I can finally blame on splinterz :P
c0421c0dba983324b727a564d907bd6c8b580c44 made dist/dwarftherapist +x and deleted chmod in dwarftherapist.pro
903e626d27177d221734524a9393a02106aab52f reverted the permission change but did not add back the chmod.
AFAIU, it's also partially qmake thing. INSTALL_FILE vs INSTALL_... something.i've reverted those permission changes, but i think it's something with windows permissions and git.
A question/request:yeah that's a good idea, i started considering something similar when i was adding the kill lists.
I would like to remove the tooltip pop up altogether and instead have all the info contained in it displayed in a docked windowed to the right or whatever might be possible. I haven't found a way to do this, and had no luck searching this thread.
My problem is I can't read the grid when the tooltip keeps blocking it, and I spend a alot more time reading the grid than the tooltip.
perhaps to start i could add another tab to the dwarf details dock (or a new dock?), and dump the current tooltip info there as a kind of overview/summary. with an option to hide the tooltips you'd have what you're asking for.
the space is limited on the dock as well, so i'm open to suggestions.
on a side note, if you'd like me to start adding your packages to the releases (https://github.com/splintermind/Dwarf-Therapist/releases) let me know.Not until they are packaged with debuild.
we do have that stuff in the tree, you know.on a side note, if you'd like me to start adding your packages to the releases (https://github.com/splintermind/Dwarf-Therapist/releases) let me know.Not until they are packaged with debuild.
I've tried it, it failed in my case and I don't have time to dig it, unfortunately. Maybe someday...Not until they are packaged with debuild.we do have that stuff in the tree, you know.
Dwarf Therapist won't work for me, it just crashes when i try to connect it to Dwarf Fortress. Nothing i can seem to do to fix it. Running Windows 7 64-bit.that might be related to a bug with foreign weapon preferences. if you can upload your save i'll take a look.
What about skills like 'Swim' and 'Climb'? Is there a way to show them in a grid or sort by them?yes. you'll need to copy or create a new view, and add the skill columns for climber and swimmer.
Dwarf Therapist won't work for me, it just crashes when i try to connect it to Dwarf Fortress. Nothing i can seem to do to fix it. Running Windows 7 64-bit.that might be related to a bug with foreign weapon preferences. if you can upload your save i'll take a look.
great, thanks for the save. it was indeed due to a weapon preference, so it's already been fixed in the dev build. i'll see about getting another version out soon™ to correct this and a few other bugs.Dwarf Therapist won't work for me, it just crashes when i try to connect it to Dwarf Fortress. Nothing i can seem to do to fix it. Running Windows 7 64-bit.that might be related to a bug with foreign weapon preferences. if you can upload your save i'll take a look.
My Dwarf Therapist v.26.0 with DF 40.13 is also crashing. It was crashing on connect, now its crashing on load. I am also running Windows 7 64-bit. I have uploaded my save:
http://dffd.wimbli.com/file.php?id=9756 (http://dffd.wimbli.com/file.php?id=9756)
v.25.0 loads and connects without crash using the memory layout from v.26.0 (Is that safe to do?)
p.s. Thank you for maintaining and improving this excellent tool
ver 26 for Win 76 4 bit isn't committing changes.can you run DT with the -trace arg and upload your log file?
Somehow I have a dwarf with 'every' skill enabled by default. I remove these roles or skills and add some others I want and commit them and nothing happens. Next read exactly nothing happens as it reverts it back to the original.
This is on a fresh install of everything.
so for anyone who wants nerdporn, here's some breakdown's of some % calculation changes [opens in LIBREOFFICE]All I hear is https://www.youtube.com/watch?v=sY_Yf4zz-yo
don't worry for everyone involved. Everything is still based on what it was based on before, but now a better .5 mean is achieved; and good 'ol rankecdf helps out along the way by being a center-stage transform method by accounting for frequency of a value (possibly averaged with another transformation method, depending on conditional flag/check status to determine aspect/category).
http://imgur.com/21caF2j
http://dffd.wimbli.com/file.php?id=9779
Hey, I wouldn't normally cross-post, and since I'm using a package (MacNewbie) I posted in their thread. But with the Windows folks seeing crashes, I wanted to call-out the weirdness with DT 26.0 that I've experienced. The short of it is it is as if the memory layout isn't matching what's in DF (moods, injuries, migrants having custom professions as soon as they step into the map, etc.).the memory layouts look ok from what i can tell, so it may be a problem with how data are being read.... was version 25.0 working properly? do these problem happen consistently over different saves, or is it one in particular which has these problems?
Here's the OP: http://www.bay12forums.com/smf/index.php?topic=128960.msg5683400#msg5683400 (http://www.bay12forums.com/smf/index.php?topic=128960.msg5683400#msg5683400)
new version up that should resolve the windows crashes and add a few other new thingsAhh, thanks! This version is working for me when the last one didn't.
the DFFD link returns server not found. Forgive me if someone's already answered this, but is there a mirror?https://github.com/splintermind/Dwarf-Therapist/releases
The roles spread looks much better now. :) Also the kills column is a nice touch.yeah the current social-alt view is outdated and broken. i still don't know if the personality traits from before 40.x effect social skills the same way, which is what that view was for. i also don't know if it's possible for a dwarf to have more than one dream, and with Toady's upcoming changes with emotions i'll wait and see.
Is the dataset all defined roles (whether they are included in a gridview or not) by all living dwarfs (presumably excluding babies but including children?)?
Is the social-alt gridview is outdated/defunct now? Maybe it could be replaced by a beliefs tab? One thing I would like to be able to add to such a tab would be dreams, maybe A for great artwork, S for skill, M for masterwork, F for family, W for warrior, L for love, P for peace, R for rule the world, and um, T for touring the great sites. Not sure that all these exist (yet) but it would be handy to be able to sort by category for picking engravers or apprentice masons from the mass of haulers.
p.s Thankyou Thistleknot for your above explanation. Unfortunately my days of Laplace transformations are a vestigial memory - about enough to read the notation - but the general comments, and the pictures 8) were enlightening.
Yep, fair enough. As long as it's on the wishlist. :)
I have experienced some strange behaviour with the version I am using. I played for several hours last night and one thing I noticed was at one point I selected one of my starting seven to shear a sheep. They all had role ratings (default role) in the 50's, 50 low and 54 high and no experience. As it happened I choose the 2nd best fitted (53.xx rating) and away they went. After one shearing job their suitability for the role had jumped to 80. Yes 80, I double, triple checked. The other dwarfs lost maybe 0.5 percent of suitability. A second shearing job by the same dwarf led to basically no change (there may well have been a very minor swing but only what you would expect). This odd situation persisted until the first wave of immigrants arrived whereupon the dwarf resettled in the high 50's (58 or 59) for suitability and everything returned to normal (or so it seemed) and I played on.
Then something happened, I don't know what - nothing notable in the game and I found that suitablity for roles for all dwarfs had significantly jumped in a whole heap of areas. It stayed this way. Just about no red anywhere in the gridview.Spoiler (click to show/hide)
So I quit for the night and figured it might all fix itself up with a reload in the morning. But it didn't... I played on a bit, getting used to my new do-everything-good dwarfs. Then I decided to start on the process of merging the default roles with my custom ones (basically deleting my custom roles in preparation for another pass sometime in the future). I added four default roles to my custom role gridview, compared them, then deleted the my old corresponding custom roles from the gridview and from the custom roles list. Upon rereading my dwarfs, lo and behold, things were back to what I take to be normal.Spoiler (click to show/hide)
So basically things went weird and did not right themselves until deleting a few custom roles caused a deeper recalculation? Thought it was worth noting...
Edit: on a different matter... I had modified my Engraver role (note this does not effect the current default role) so that dwarfs who have a preference for Creatures(Hateable) get a preference weighting of -1.00 (splinterz, right again) but the tooltip displays this as Dislikes Creatures(Hateable) weight +1.00 which is a different thing altogether (all dwarfs will get a match since they all hate a type of vermin...). I'm still waiting for a dwarf to spawn who likes a hateable vermin in my current game but either the tooltip needs changing, or more likely, the role editor needs tweaking.
attributes are tricky. as i understand it strength and agility effect the speed of performance of every task. so really they should be everywhere=nowhere. no doubt you know more about this than i do so perhaps i'm overlooking something? my focus was to get the preferences into somewhat better shape. for attributes i followed the information on the wiki but, a big but, that itself is based on the assumption, untested as far as i can tell, that skill use which trains certain attributes also benefits from them.it's true that since they're doing things faster strength and agility can be applied to every job, but i don't agree that it means they should be completely removed. it's not like preferences where either they have it or they don't; you still want to know who will work faster. yes, this often means that military end up with higher ratings in almost every role (especially if you have a high attribute weight), but it's legitimate, and easy to filter out.
science is needed both for the attributes and for further refining the preferences. not to mention the traits... i don't feel like i am up for that amount of rigour and counting of tic's at this point in time. probably means waiting until i am hit by a strange mood and hoping that dwarf therapist is involved. ;D or maybe someone else will get keen.
don't know how i did that with dodger... 1.01 version now up.
How do you prepare for the next "touchy feely" update? I imagine you doing some mental benchpresses or something with the eye of the tiger song in the background.haha, more like, gather up some whisky and pretend i haven't heard anything about it.
it's true that since they're doing things faster strength and agility can be applied to every job, but i don't agree that it means they should be completely removed. it's not like preferences where either they have it or they don't; you still want to know who will work faster. yes, this often means that military end up with higher ratings in almost every role (especially if you have a high attribute weight), but it's legitimate, and easy to filter out.
the only reason i brought it up was because it appeared you'd removed strength and/or agility from some of the military roles, which in my opinion, are the most important to have high movement speed in.
the preference changes look good, and traits are another unknown. i guess that for sure discipline could be added to military roles, since it's been proven that, in part at least, factors into whether or not a dwarf will flee from combat. there were a few others... bravery and violent maybe?
yes, something of a storm in a teacup. just the ranged roles and dodger. (i replied without looking at into the details.)to me, ensuring that dwarves aren't overloaded is either a decision made by the player, or the job of the labor optimizer; it's completely separate from a role rating. the rating is there to tell you 'this is the best dwarf for the job based on skills/attributes/traits/preferences'. what the player decides to do with that information has nothing to do with how the rating is derived.
more generally, i agree that a furnace operator with higher agility will be better at the job. i don't understand why it would not make a dwarf quicker at getting the items for all roles, or other forms of movement for that matter. (not sure about bookkeepers though). my reservation about including this as a relevant attribute is that with higher agility this dwarf will be better at all roles - or at least all roles which require movement and gathering... (quick thought experiment - leaving skill aside, with a crazy high weighting on agility - say 1000 - the highest agility dwarf will be best at every role.)
i do differ somewhat on the purpose of the roles. i see them as enabling informed choices/decisions about which dwarf to give which labours. knowing which dwarf is best for a job is definitely part of it. however sometimes it means not assigning the best dwarf for a job because they are already overloaded. urist is already the best armoursmith, weaponsmith, architect and cook, do i really want to make him milker as well? or deciding that for three dwarfs and three jobs that the best assignment is for each to do what they are close second best at since this best maximises their usefulness to the fortress (maybe avoiding having a dwarf doing something that they are 'really' bad at).
as an exampls from my current game at embark Onul was terrible at just about everything (but by far the best architect) and a decent carpenter. when she turned out to have a preference for beds she was in. she is weak and incredibly clumsy. given a weighting for strength and agility (on top of what is already in the carpenter role) she would have looked like the worst candidate for a carpenter. another of the starting seven was in the best couple of dwarfs for just about everything i might have spent points on (high strength and agility, excellent spatial sense) but ended up being mechanic/siege engineer because they had terrible kinesthetic sense and only decent creativity while several other dwarfs had really good creativity and passable kinesthetic. give all roles an extra weighting for strength and agility and this dwarf would end up as outright best for everything and probably assigned as a mason (by me) even though they are better suited doing something else. that is the sort of problem i see arising.
i am more on board with the disease resistance and recuperation for the military suggestion because these attributes are not that relevant for other roles (although weavers, gatherers and fishers come to mind...). a consequence of adding them, however, would be watering down the influence of strength (or focus), agility, kinesthetic sense, etc on suitability for these roles.
hope that makes sense. you don't have to agree. :)
Well, maybe a steel preference should have a large weight, since it is very valuable (most of the time). But a preference for, say, copper probably shouldn't have as much weight as good attributes.
Yes many preferences are highly situational. This is why a while back I suggested having an alternative which highlights dwarf roles which have a relevant preference and turns the preference weighting to zero.it will be in the next update, along with highlighting in the tooltips:
that looks really good. :D (highlighting in the tooltips is even better than setting the preference weight to zero, imo.)oh that's right, i'd kind of disregarded that point on the wiki since there was no discussion and nothing cited for the quality tests. i'm sure i'd found a thread about that at some point though... i'll see if i can dig it up.
my in game observation (quite "unscientific", i know) leads me to believe that metal (material) preferences effect the quality of item production. i could be wrong about this... certainly item preferences have this effect. (Edit; the wiki supports my observation! yay.)
Edit: for the leatherworker the suggestion is to add things back in. currently the role has only items which are unique to the leatherworker, quivers, backpacks, etc. i am responsible for this monstrosity. :P looking at it yet again perhaps all clothing items should be included in the role?
So.. Random bit I've noticed, and can't find explanation for in the thread -- What's up with the gender icons that aren't explicitly "Male" or "Female"? Like.. A double-"female" icon, or a melding of "male" and "female" icons? I've never noticed alternates to those, before.
That's what I thought was the case -- But honestly, I didn't even know that was a flag already in the system.It's fairly recent (with 0.40) and I think Dwarf Therapist only recently got those icons. If you open up a Details screen on the Dwarf, then the icon has a tooltip.
Playin' the game for two years, now, and I still learn new things. :)
oh that's right, i'd kind of disregarded that point on the wiki since there was no discussion and nothing cited for the quality tests. i'm sure i'd found a thread about that at some point though... i'll see if i can dig it up.
maybe i should see about adding a general clothing category for roles as well, that may be possible. i think it would be good to have the other types in the leatherworker role, but it's a bit unfortunate to have to add them all individually, since even a tiny mod to add another piece of clothing requires a new role.
Edit: well that was easy: http://www.bay12forums.com/smf/index.php?topic=96501.0
I've discovered something that should be a negative preference. Weaponsmiths (and no doubt armorsmiths) should have negative weighting for most non-weapons grade metals. In particular, a weaponsmith who likes aluminum is a bad thing. He'll get a strange mood and insist on using your one bar of aluminum to make a weapon. Trust me, I found this out yesterday. Aluminum is a really bad metal for weapons or armor. Lead would be really bad for armor, but at least it has a chance of becoming a decent hammer. Things like zinc or tin would also be bad for a weapon/armor smith to have.
It shouldn't be a huge weighting, but it should be there.
Keith
i've read that thread a couple of times. for me the most important point is what comes out in the quote from Toady in the final post. basically attributes matter a fair bit at lower skill levels but not that much at high skill levels. blue_dwarf's otherwise excellent research misses most of this since it is all carried out with a legendary +5 dwarf.*i see what you mean about splitting the global preference weight into two, that might work. but i agree, more testing is required, and i also try to get in some game time instead of just working on DT :D
observation leads me to believe that preferences have the same sort of relation to skill level as attributes in regard to quality. in my experience a valid preference for an item or material type makes roughly a level of quality difference, on average, when a dwarf has 0-10 levels of skill. the precise difference could be determined... but currently i am more inclined to play the game (or post here).
if preferences did not effect quality levels (and i assure you that there are many cases when they do even if the how much is not determined) then they would be far less important for the roles. unfortunately for us only about half of the roles have quality outcomes. so weaver, dyer and clothier preferences, effecting the quality of the item produced, are much more important to the role than the preferences of spinners, threshers and shearers. my quick personal solution has been to try to cover this distinction with how i lay out my grid views.
the deeper solution is probably to break the global preference weighting into two groups to reflect this. first up though, i am waiting to get back on the same page as everyone else (so no version confusion arises) to do some empirical testing of how sets of preferences behave both internal to a role and across a group of roles. (once i can see what happens in detail i can start making informed decisions about what/how many preferences to include in which roles.) then to play with the weightings which were deliberately left all set to 1.00 since v25 (the last standard version of dwarf therapist i have access to...) did not cope well when other weightings were used.
* hence my uneasiness above with the engraver role. the contribution from creativity is more significant at low skill levels, but at that point the dwarf is likely to be smoothing an activity where creativity is not a relevant attribute...
I think the most important thing is to make it easy for people to customize the weightings for roles on the fly. Currently (I think) that means creating a new role, copied from a default role, and creating a new grid, copied from a default grid, and replacing the default role with the new one. I'm not sure if there's a better way to do it.well, it could be something like adding roles to groups of roles. so you could have multiple roles for your weaponsmith, and then swap out the column (right click, choose role from the 'weaponsmith' group) for whatever fits your current fort.
New feature idea:someone recently had the same idea. (https://github.com/splintermind/Dwarf-Therapist/issues/201) although currently there isn't any data stored with the individual saves, so the first step may be just to have a history of commits or something, allow you to 'undo' a recent commit. i'm not sure.
It would be nice to be able to save the current labor assignments and restore them at a later time.
QuoteNew feature idea:someone recently had the same idea. (https://github.com/splintermind/Dwarf-Therapist/issues/201) although currently there isn't any data stored with the individual saves, so the first step may be just to have a history of commits or something, allow you to 'undo' a recent commit. i'm not sure.
It would be nice to be able to save the current labor assignments and restore them at a later time.
Is it possible to get the details of creatures that merchants have brought in DT?no, creatures not belonging to the fortress aren't shown.
In my latest case I'm trying to get a breeding pair of blue peafowl, and it'd be nice to be able to see if the peacock the traders are offering me is another asexual one.
Hi all, I've done a quick search but haven't read the whole 115 pages of this thread so forgive me if this has come up before.i'll see about adding it to it's own group in the next release. as a work-around for now you can still copy the view and move alchemy to it's own group.
In the current version it looks like the Alchemist labour has been lumped in with the hauling labours. This means that if you use the right click -> toggle all hauling then you need to do it twice before the hauling is actually disabled. Not the end of the world but it is a bit annoying.
Cheers
Is it possible to get the details of creatures that merchants have brought in DT?no, creatures not belonging to the fortress aren't shown.
In my latest case I'm trying to get a breeding pair of blue peafowl, and it'd be nice to be able to see if the peacock the traders are offering me is another asexual one.Hi all, I've done a quick search but haven't read the whole 115 pages of this thread so forgive me if this has come up before.i'll see about adding it to it's own group in the next release. as a work-around for now you can still copy the view and move alchemy to it's own group.
In the current version it looks like the Alchemist labour has been lumped in with the hauling labours. This means that if you use the right click -> toggle all hauling then you need to do it twice before the hauling is actually disabled. Not the end of the world but it is a bit annoying.
Cheers
What do you guys think of
multiplying aspects (attributes * traits * skills * preferences) %'s / 100 / 100 / 100 / (product of weights)
http://imgur.com/a/mWwlI
green/red 50%+ vs 50%-
Top is averaging
bottom is factoring (nice curve eh?)
The curve shows that values that are positive correlated matches get positive scores (the pic represents a grid from 1 to 100 x 1 to 100 vs 1 to 100 averaged with 1 to 100, and it's split around the median value red/green
Update
Apparently, weighted product is a standard model
http://en.wikipedia.org/wiki/Weighted_product_model
? I don't get it. Skill vargancies?
Vargancy has some relationship with homelessness
But the phrase doesn't translate...
into the homelessness of skill rankings?
Only thing I can gather from that is... too much time for too little reward? lol. Maybe, but I got time atm.
Or are you saying the numerical labor optimizer isn't being focused on and I'm specifically worried about skills? Yeah, SMH, the ideas I have are encompassing of all current aspects, which currently make up the numerical labor optimizer. I'd love to include more #'s... but so far I have not seen much discussion on how to introduce them (I believe skill and attributes have other features similar to rust).
Anyways, I sent a minor request for revision using excel because of the complexities of things atm. It's a simple way to shrink the distributions by *(nth/)(nth+1)+((1-(nth/)(nth+1))/2)
maintains same mean, just shrinks the distribution by a tiny bit based on matrix size (very negligible). That way values are never 0 or 100% and I can factor them against each other without the fear of the great equalizer... 0
it's supposed to read "vagaries" but with a levenshtein distance of 3
it's supposed to read "vagaries" but with a levenshtein distance of 3
Hi. This might be a bit of a noobish question, but I'm having some issues with dwarf therapist since switching to an apple macintosh. I get no text appearing whatsoever in the app (dwarf names, menus, icons etc.)something in the ini (~/.config/UDP Software/Dwarf Therapist.ini) has become corrupted. you can try:
Am I missing something from my installation? it doesn't seem like others are having the same issue. Happens with any recent version (25+)
hi, my dwarf therapist doesnt seem to work.provide what OS you're using, and the output log from DT.
i downloaded the latest version, 27.0.0, and am trying with DF 0.40.13 and i get an "unable to talk to dwarf fortress" error, my fort is loaded and everything and i have no idea whts wrong. i tried a re-download and it still wont work.
EDIT:
I went and tried the dwarf therapist with previous versions. 0.40.12 back to 0.40.10, didnt work at all. the exact same "cannot talk to fortress" problem. It knows dwarf fortress is open though, sometimes just once the briefest flicker of dwarf info appears just before the error pops up. It also gives a different message when i open dwarf therapist and dwarf fortress isnt open.
I've redownloaded both the dwarf fortress versions and the dwarf therapist multiple times, i've also tried to run both as administrator. I've tried leaving them in their default folders, tried placing them together, tried everything. What is wrong with it, i can't play at all without dwarf therapist i hate the skill management otherwise the moment the migrants show up, please help.
How much will the new thoughts have messed with Therapist, d'y'reckon?I'd estimate, on the lower end, maybe "completely." :)
i've released a new versionThank you! :D
Seconded!i've released a new versionThank you! :D
[OSX] Dwarf Therapist 28.pre-release | DF 40.14 (http://db.orangedox.com/64OBazhBn0ct7UnZ36/DwarfTherapist_v28.dmg)
How is emotional state representation looking at being addressed? It was simple to put an emoticon down regarding mood, but that's largely been done away with now.Quietust has done some work on this, and from what i gleaned it's something like this now: thoughts are tied to emotions which modify a stress level. depending on the personality, a thought can cause different emotions for an individual and change the stress level in different ways.
[OSX] Dwarf Therapist 28.pre-release | DF 40.14 (http://db.orangedox.com/64OBazhBn0ct7UnZ36/DwarfTherapist_v28.dmg)
Will the 40.10 version work okay with 40.14?Try to copy v040.14.ini file from "operating system name" folder from https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts)
[Geometric Mean]
...
AWa * BWb * CWc * DWd
where Wa + Wb + Wc + Wd = 1. Though I suspect this won't be what you actually need, either.
(if already compiled for osx and linux why no links on first post?)
Splinterz, could you update the link in the first post?[OSX] Dwarf Therapist 28.pre-release | DF 40.14 (http://db.orangedox.com/64OBazhBn0ct7UnZ36/DwarfTherapist_v28.dmg)
Let us assume that we evaluate solutions in a specific problem situation using several criteria. Let us further assume that more is better in each criterion. Then, among all possible solutions, we are ideally interested in those solutions that perform well in all considered criteria. However, it is unlikely to have a single solution that performs well in all considered criteria. Typically, some solutions perform well in some criteria and some perform well in others. Finding a way of trading off between criteria is one of the main endeavors in the MCDM literature.
Mathematically, the MCDM problem corresponding to the above arguments can be represented as
"max" q
subject to
q ∈ Q
Just in case I missed a feature somewhere (because DT has a lot :))), is there any way to check relationships between Dwarves? For examples, my Expedition Leader and Doctor are apparently holding mutual grudges, and none of my other Dwarves are more than "Friend" or "Friendly Terms" with each other.no, there's currently no way to view the relationships between dwarves.
But I didn't know about the grudge until I was individually checking my seven to see if anyone was getting interested in another Dwarf.
no, there's currently no way to view the relationships between dwarves.Okay. Thanks for confirming that. :) Sometimes I miss features because I don't know where to go looking.
QSpiAccessible::accessibleEvent not handled: "2" obj: QMessageBox(0x1553bd0) ""
FIXME: handle dialog start.
Is everyone here running debug builds? Because I get bitten byCode: [Select]QSpiAccessible::accessibleEvent not handled: "2" obj: QMessageBox(0x1553bd0) ""
FIXME: handle dialog start.
every time I rebuild the therapist and forget the -f Makefile.Debug part.
System's xubuntu 14.04.1
1. make debug
2. debug builds are automatically done through travis ci; I also use them by default when developing. however, I haven't had the time yet to test 28.0.
I got to play a few hours of DF over the last few days and I have to say that I love the ability to set animals to be butchered from DT itself. Much easier than trying to scroll the menus in game.Are you referring to the [v]-[p] menu or the [z]-animals menu?
I'm pretty sure you do it with [z]-animals in game. Either way, my animals never seem to properly be in order and there's no way to check sexuality in game either. DT all the way!I got to play a few hours of DF over the last few days and I have to say that I love the ability to set animals to be butchered from DT itself. Much easier than trying to scroll the menus in game.Are you referring to the [v]-[p] menu or the [z]-animals menu?
Is there a way to change their places so that the dwarves are at the top and roles etc. on the left?no there isn't.
Oh, and if it would be possible to have separate sorting for each tab (by migration wave for the Dwarves but age for the Animals, for example) that would be handy. It's currently possible to keep changing them back, but I thought I'd put that suggestion out there.sorting is maintained at a global level with groups. so turn off 'synchronize view grouping', and you should be able to choose a different group/sort for your animals, and your other views.
Ooh... Thank you!Oh, and if it would be possible to have separate sorting for each tab (by migration wave for the Dwarves but age for the Animals, for example) that would be handy. It's currently possible to keep changing them back, but I thought I'd put that suggestion out there.sorting is maintained at a global level with groups. so turn off 'synchronize view grouping', and you should be able to choose a different group/sort for your animals, and your other views.
When is the new version?probably not for a while, i'm still working on the new emotions:
Okay... I finally got my PC working again... How do you turn that off exactly?Ooh... Thank you!Oh, and if it would be possible to have separate sorting for each tab (by migration wave for the Dwarves but age for the Animals, for example) that would be handy. It's currently possible to keep changing them back, but I thought I'd put that suggestion out there.sorting is maintained at a global level with groups. so turn off 'synchronize view grouping', and you should be able to choose a different group/sort for your animals, and your other views.
1. make debug
2. debug builds are automatically done through travis ci; I also use them by default when developing. however, I haven't had the time yet to test 28.0.
Yeah, make debug. Whatever.
The question was - is the release build known to be broken?
Wow! That's a lot further along than I'd have imagined... nice work. As for suggestions, I'm thinking about something Toady said about the new emotion system - that dwarves with nicer things in their lives have more of a buffer to fall back on when times get tough. Maybe count up the lingering positive feelings from admiring good quality stuff and reporting that in summary views/tooltips?When is the new version?probably not for a while, i'm still working on the new emotions:Spoiler: emotions preview (click to show/hide)
the emotions stuff is still very much a work in progress, so if anyone has ideas on presentation i'm open to suggestions.
you can still manually update to 40.15 (still without happiness/emotions) with these layouts (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts) if you're running version 28. lower versions may work, but there's no guarantee.
i think that'll be handled with the happiness indicator. the emotion update introduced a new stress indicator which can be roughly converted back to the old happiness values. positive emotions resulting from circumstances like quality furniture/food, reduce a unit's stress. the stress indicator can go into the negatives which creates the buffer you're talking about.Wow! That's a lot further along than I'd have imagined... nice work. As for suggestions, I'm thinking about something Toady said about the new emotion system - that dwarves with nicer things in their lives have more of a buffer to fall back on when times get tough. Maybe count up the lingering positive feelings from admiring good quality stuff and reporting that in summary views/tooltips?When is the new version?probably not for a while, i'm still working on the new emotions:Spoiler: emotions preview (click to show/hide)
the emotions stuff is still very much a work in progress, so if anyone has ideas on presentation i'm open to suggestions.
you can still manually update to 40.15 (still without happiness/emotions) with these layouts (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts) if you're running version 28. lower versions may work, but there's no guarantee.
you can still manually update to 40.15 (still without happiness/emotions) with these layouts (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts) if you're running version 28.My first time doing this took me at least an hour of frustration and fiddling, but finally I figured out how.
DT 28.0 for macOS crashes on startup for me. It doesn't matter whether DF is running or not. I don't think it's getting that far along.
Are there any known issues? Searching this thread for "crash mac" gives no results.
Crash report:
https://drive.google.com/file/d/0BxWqgxeaMko1Q3ZNWGZMeVpDbDQ/view?usp=sharing (https://drive.google.com/file/d/0BxWqgxeaMko1Q3ZNWGZMeVpDbDQ/view?usp=sharing)
Is there smth for .16?Not quite yet, as far as I can tell.
DT 28.0 for macOS crashes on startup for me. It doesn't matter whether DF is running or not. I don't think it's getting that far along.
Are there any known issues? Searching this thread for "crash mac" gives no results.
Crash report:
https://drive.google.com/file/d/0BxWqgxeaMko1Q3ZNWGZMeVpDbDQ/view?usp=sharing (https://drive.google.com/file/d/0BxWqgxeaMko1Q3ZNWGZMeVpDbDQ/view?usp=sharing)
looks like your qt version doesn't match your cpu.
We are trying to stay away from spreadsheets and numbers approaches that kind of open up every single job to be ranked, you know, according to different numbers for each dwarf or workshop because that is unmanageable when the number of dwarves get high.
Is there smth for .16?Not quite yet, as far as I can tell.
Look at the following link - it should say "windows/linux 40.16 memory layouts" at some points in the near future (hopefully).
https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts
is there a way to tinker with the 40.15 file to make this compatible with 40.16?
Doing this stuff through the native ui is rough. But not having the goblins annihilate anyone that raid was a must.
is there a way to tinker with the 40.15 file to make this compatible with 40.16?
Doing this stuff through the native ui is rough. But not having the goblins annihilate anyone that raid was a must.
Unfortunately, no. We've got to wait until the new memory layouts get mapped out.
just out of curiosity, how does one map these layouts? where do they get the values like "translation_vector=0x01aeaaa8"?
I checked 2 layouts on a diff checker and there are only like 53 lines of difference out of 382, I'd be more then willing to update the file whenever a new version comes around.
unfortunately i haven't had a lot of time and i'm still tinkering with the emotions stuff, so you'll have to manually update for 40.16:Thank you for your work.
40.16 windows (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/share/memory_layouts/windows/v0.40.16_graphics.ini)
40.16 linux (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/share/memory_layouts/linux/v040.16.ini)
thank Quietust :)unfortunately i haven't had a lot of time and i'm still tinkering with the emotions stuff, so you'll have to manually update for 40.16:Thank you for your work.
40.16 windows (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/share/memory_layouts/windows/v0.40.16_graphics.ini)
40.16 linux (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/share/memory_layouts/linux/v040.16.ini)
0.40.16 OS X layout (https://raw.githubusercontent.com/lethosor/Dwarf-Therapist/0.40.16-osx-layout/share/memory_layouts/osx/v0.40.16_osx.ini)thanks again for the prompt OSX layout
to use the above quoted manual memory layout update link properly you must:
>Click< on the folder link on the lower left (e.g. "windows" written in blue),
then >click< the bottom left link named v0.40.15_graphics.ini (also blue)
rightclick-> save as... on the Raw button (top/middle/right, left of Blame and History),
this should give you a nice little file called v0.40.15_graphics.ini which you then shove in the folder address:
\Dwarf-Therapist-WIN-28.0.0\share\memory_layouts\windows
unfortunately i haven't had a lot of time and i'm still tinkering with the emotions stuff, so you'll have to manually update for 40.16:What would one do with that information? Just paste into existing files? Or replace them?
40.16 windows (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/share/memory_layouts/windows/v0.40.16_graphics.ini)
to manually update Dwarf Therapist using the [above] github link (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts): (Again many thanks to those who worked on this for us!)
>Click< on the folder link on the lower left (e.g. "windows" written in blue),
then >click< the bottom left link named v0.40.16_graphics.ini (also blue)
rightclick-> save as... on the Raw button (top/middle/right, left of Blame and History),
this should give you a file called v0.40.16_graphics.ini which must be placed in the folder of address:
\Dwarf-Therapist-WIN-28.0.0\share\memory_layouts\windows
(with the rest of the v0.40.xx)_graphics.ini files) and thus DT 28 should work with DF 40.16
Hey there, I'm using this with DF 0.40.16 and the memory layout from ... that link ... back in this thread a bit.yeah there's a problem with hunters 'ambushing' that will be fixed in the next version. i'll look into the ammo issue, but if you've got a save with the problem that would save me some time.
It doesn't seem to recognize that my dwarves have ammunition. I have seven dwarves with hunting labor enabled each has a steel crossbow, leather quiver and up to 25 steel bolts. The equipment column is shown in blue with "missing ammunition" in the detail pop-up.
Don't know if this is a known issue or not, but I thought I'd drop a note here.
[EDIT] Huh, also it seems that the dwarf that is hunting is not being picked up by Dwarf Therapist. It only shows six dwarves not the (actual) seven.
i'll look into the ammo issue, but if you've got a save with the problem that would save me some time.
which version of DT are you using, and on what O/S?i'll look into the ammo issue, but if you've got a save with the problem that would save me some time.
I'll hunt up a save sometime today, thanks.
[EDIT] OK, got one
http://dffd.wimbli.com/file.php?id=10099
Check the Expedition Leader. He has 25 steel bolts, but Dwarf Therapist doesn't recognize that.
Thank for the awesome tool. Now we just have to wait for 0.40.Yeah. I was all excited about the 40.16 memory layouts and working on a new world "prepare carefully" for a day or two now,1718 memory mapping/memory layouts.
which version of DT are you using, and on what O/S?
Thank for the awesome tool. Now we just have to wait for 0.40.Yeah. I was all excited about the 40.16 memory layouts and working on a new world "prepare carefully" for a day or two now,1718 memory mapping/memory layouts.
plus have start/update/ditched 2 forts in the last few weeks and now 40.18 !
Bah! ;D Heh heh.
How long can the new memory layouts take to craft?
Can I help in some way? (no programming experience but plenty of free time)
hrmm i haven't been able to reproduce it so far; the leader is showing 25 steel bolts... i have a few more things to check in case, but which column were you looking at (general equipment? ammunition or ranged equipment column?), and are the other items (pants, shirt, etc) showing up ok?which version of DT are you using, and on what O/S?
Dwarf Therapist 28, Windows 7 (64bit)
the leader is showing 25 steel bolts... i have a few more things to check in case, but which column were you looking at (general equipment? ammunition or ranged equipment column?), and are the other items (pants, shirt, etc) showing up ok?
At times like this I wonder, wouldn't it be better if DF used like an editable external file to keep track of job assignments? To have at least some basic DT compatibility with new versions.
Any update on when we might possibly have DT report on our dwarves moods again, instead of just falsely saying they're all miserable?
Greetings.definitely a bug with the script saving. i'll have it fixed in the next version, thanks for the report.
I'd like to use scripting in custom role, but, when I enter a script, it simply don't save it, and text box remain empty after window reopen. Do I do something wrong? [screenshot (http://postimg.org/image/ni2vti7xf/)]
well i'm at a loss for this one. i loaded up your save with the released DT 28.0 and the ammo is showing up just fine. the only two with missing equipment are adil datanorshar and erush rigothotung (missing crossbows). maybe it's the wrong save?the leader is showing 25 steel bolts... i have a few more things to check in case, but which column were you looking at (general equipment? ammunition or ranged equipment column?), and are the other items (pants, shirt, etc) showing up ok?
Looking at the equipment column on the the labor_full tab (there is only one equipment column there). The eq. column square was blue and it is the pop up window you get when hovering over that square that had 'ammunition: missing'. All other items show up fine.
Any update on when we might possibly have DT report on our dwarves moods again, instead of just falsely saying they're all miserable?hopefully this week. i've been playtesting the changes for the emotions/happiness and so far it seems ok.
well i'm at a loss for this one.
Any info on when DT will be updated to the most recent DF version?
Dwarf Therapist must be updated for the new emotion system, listing stress levels and thoughts by nature, as well as information on moods and so on.Wasn't there an update that still let you do the labour things though? Even after the emotions were first added? ??? (I may be remembering incorrectly?)
Indeed. The emotion changes were in 0.40.14, but df-structures and DT are updated for 0.40.16.Hmm... Is there a way for that to happen for the newer build? Or are the new changes more closely tied to mood?
Hmm... Is there a way for that to happen for the newer build? Or are the new changes more closely tied to mood?
/usr/bin/dwarftherapist: line 117: getcap: command not found
/usr/bin/DwarfTherapist: error while loading shared libraries: libQt5Qml.so.5: cannot open shared object file: No such file or directory
Hello! I installed the deb package in my debian jessie distro. Started dwarf fortress and rand dwarftherapist and then go the following errors. I was wondering anyone might be willing to help talk me through resolving this. Thanks in advance!Unfortunately, the package doesn't include any dependencies (and you can blame me for that, yeah), you'll have to install all needed libraries yourself. AFAIU on Debian Jessie you need libqt5qml5 and libcap2-bin packages. Let me know if there are any other deps, I'm not in the mood for digging this. Also, if it freezes upon committing changes, try running it throughCode: [Select]/usr/bin/dwarftherapist: line 117: getcap: command not found
/usr/bin/DwarfTherapist: error while loading shared libraries: libQt5Qml.so.5: cannot open shared object file: No such file or directory
$ sudo dwarftherapist
hey kind of on topic, what's a good way to get familiar to linux if you don't feel smart enough to just jump in head first?
AFAIU on Debian Jessie you need libqt5qml5 and libcap2-bin packages. Let me know if there are any other deps, I'm not in the mood for digging this. Also, if it freezes upon committing changes, try running it throughCode: [Select]$ sudo dwarftherapist
/usr/bin/dwarftherapist: line 117: getcap: command not found
hey kind of on topic, what's a good way to get familiar to linux if you don't feel smart enough to just jump in head first?I think that's offtopic, but still:
hey kind of on topic, what's a good way to get familiar to linux if you don't feel smart enough to just jump in head first?
hey kind of on topic, what's a good way to get familiar to linux if you don't feel smart enough to just jump in head first?
bash: ./DwarfTherapist.precompiled.notworking: cannot execute binary file
ptrace attach: Operation not permitted
2014-Dec-02 13:36:16.099 INFO core Dwarf Therapist "0.6.12" starting normally. [src/dwarftherapist.cpp:100] (setup_logging)
2014-Dec-02 13:36:18.205 INFO core Loaded 4 views from disk [src/viewmanager.cpp:128] (reload_views)
2014-Dec-02 13:36:18.318 DEBUG core "redrew views in 112ms" [src/viewmanager.cpp:160] (draw_views)
2014-Dec-02 13:36:18.336 DEBUG core setting up connections for MainWindow [src/mainwindow.cpp:105] (MainWindow)
2014-Dec-02 13:36:18.378 DEBUG core group_by now set to 0 [src/models/dwarfmodel.cpp:456] (set_group_by)
2014-Dec-02 13:36:18.425 DEBUG core beginning to read settings [src/dwarftherapist.cpp:122] (read_settings)
2014-Dec-02 13:36:18.426 DEBUG core finished reading settings [src/dwarftherapist.cpp:168] (read_settings)
2014-Dec-02 13:36:19.125 DEBUG core attempting connection to running DF game [src/mainwindow.cpp:216] (connect_to_df)
2014-Dec-02 13:36:19.126 ERROR core No valid memory layouts found in the following directories... () [src/dfinstance.cpp:106] (DFInstance)
2014-Dec-02 13:36:19.307 ERROR core Could not attach to PID 31208 [src/dfinstancelinux.cpp:158] (attach)
2014-Dec-02 13:36:19.308 ERROR core Unable to open "/proc/31208/mem" [src/dfinstancelinux.cpp:202] (read_raw)
2014-Dec-02 13:36:19.308 DEBUG core base_addr: 0 HEX 0 [src/dfinstancelinux.cpp:324] (find_running_copy)
2014-Dec-02 13:36:20.780 DEBUG core DF's checksum is "0x13cc404f" [src/dfinstancelinux.cpp:328] (find_running_copy)
2014-Dec-02 13:36:20.781 INFO core Dwarf fortress path: "/media/aglminor/nonsci/pelit/Dwarf_Fortress/df_linux" [src/dfinstancelinux.cpp:335] (find_running_copy)
sudo setcap cap_sys_ptrace=ep DwarfTherapist
, but it makes no difference.ptrace attach: Operation not permitted
the terminal gives a mysterious "Unknown error"
and the log file reads2014-Dec-02 15:43:17.813 INFO core Dwarf Therapist "0.6.12" starting normally. [src/dwarftherapist.cpp:100] (setup_logging)
2014-Dec-02 15:43:18.398 INFO core Loaded 4 views from disk [src/viewmanager.cpp:128] (reload_views)
2014-Dec-02 15:43:18.551 DEBUG core "redrew views in 152ms" [src/viewmanager.cpp:160] (draw_views)
2014-Dec-02 15:43:18.568 DEBUG core setting up connections for MainWindow [src/mainwindow.cpp:105] (MainWindow)
2014-Dec-02 15:43:18.580 DEBUG core group_by now set to 0 [src/models/dwarfmodel.cpp:456] (set_group_by)
2014-Dec-02 15:43:18.581 DEBUG core beginning to read settings [src/dwarftherapist.cpp:122] (read_settings)
2014-Dec-02 15:43:18.581 DEBUG core finished reading settings [src/dwarftherapist.cpp:168] (read_settings)
2014-Dec-02 15:43:18.942 DEBUG core attempting connection to running DF game [src/mainwindow.cpp:216] (connect_to_df)
2014-Dec-02 15:43:18.958 ERROR core No valid memory layouts found in the following directories... () [src/dfinstance.cpp:106] (DFInstance)
2014-Dec-02 15:43:19.264 DEBUG core base_addr: 134531536 HEX 804c9d0 [src/dfinstancelinux.cpp:324] (find_running_copy)
2014-Dec-02 15:43:19.714 DEBUG core DF's checksum is "0x13cc404f" [src/dfinstancelinux.cpp:328] (find_running_copy)
2014-Dec-02 15:43:19.714 DEBUG core DF's checksum is: "0x13cc404f" [src/dfinstance.cpp:876] (get_memory_layout)
2014-Dec-02 15:43:19.714 DEBUG core Could not find layout for checksum "0x13cc404f" [src/dfinstance.cpp:883] (get_memory_layout)
2014-Dec-02 15:43:19.715 INFO core Checking for layout for checksum: "0x13cc404f" [src/mainwindow.cpp:396] (check_for_layout)
2014-Dec-02 15:43:19.715 INFO core Dwarf fortress path: "/media/aglminor/nonsci/pelit/Dwarf_Fortress/df_linux" [src/dfinstancelinux.cpp:335] (find_running_copy)
Hi miauw62 and rmblr -- thanks for the replies. No luck yet though.
Yep, using the latest PyLNP; it did ask for the root password, which I gave, but perhaps that was before I compiled my own DwarfTherapist and so might not apply to the executable I substituted...
At any rate, I (re)ranCode: [Select]sudo setcap cap_sys_ptrace=ep DwarfTherapist
, but it makes no difference.
If I run DT as root, it doesn't work either (though, again, the program window appears briefly), but instead ofCode: [Select]ptrace attach: Operation not permitted
the terminal gives a mysteriousCode: [Select]"Unknown error"
and the log file readsCode: [Select]2014-Dec-02 15:43:17.813 INFO core Dwarf Therapist "0.6.12" starting normally. [src/dwarftherapist.cpp:100] (setup_logging)
2014-Dec-02 15:43:18.398 INFO core Loaded 4 views from disk [src/viewmanager.cpp:128] (reload_views)
2014-Dec-02 15:43:18.551 DEBUG core "redrew views in 152ms" [src/viewmanager.cpp:160] (draw_views)
2014-Dec-02 15:43:18.568 DEBUG core setting up connections for MainWindow [src/mainwindow.cpp:105] (MainWindow)
2014-Dec-02 15:43:18.580 DEBUG core group_by now set to 0 [src/models/dwarfmodel.cpp:456] (set_group_by)
2014-Dec-02 15:43:18.581 DEBUG core beginning to read settings [src/dwarftherapist.cpp:122] (read_settings)
2014-Dec-02 15:43:18.581 DEBUG core finished reading settings [src/dwarftherapist.cpp:168] (read_settings)
2014-Dec-02 15:43:18.942 DEBUG core attempting connection to running DF game [src/mainwindow.cpp:216] (connect_to_df)
2014-Dec-02 15:43:18.958 ERROR core No valid memory layouts found in the following directories... () [src/dfinstance.cpp:106] (DFInstance)
2014-Dec-02 15:43:19.264 DEBUG core base_addr: 134531536 HEX 804c9d0 [src/dfinstancelinux.cpp:324] (find_running_copy)
2014-Dec-02 15:43:19.714 DEBUG core DF's checksum is "0x13cc404f" [src/dfinstancelinux.cpp:328] (find_running_copy)
2014-Dec-02 15:43:19.714 DEBUG core DF's checksum is: "0x13cc404f" [src/dfinstance.cpp:876] (get_memory_layout)
2014-Dec-02 15:43:19.714 DEBUG core Could not find layout for checksum "0x13cc404f" [src/dfinstance.cpp:883] (get_memory_layout)
2014-Dec-02 15:43:19.715 INFO core Checking for layout for checksum: "0x13cc404f" [src/mainwindow.cpp:396] (check_for_layout)
2014-Dec-02 15:43:19.715 INFO core Dwarf fortress path: "/media/aglminor/nonsci/pelit/Dwarf_Fortress/df_linux" [src/dfinstancelinux.cpp:335] (find_running_copy)
which is similar to the issue I linked to. In particular, with sudo the "Could not attach to PID 31208" error is no longer there. But apparently the "No valid memory layouts found" error is by itself enough for breakdown.
Any more suggestions? cheers
you can try these layouts for 40.19, but i haven't tested them yet.:-\Spoiler: WINDOWS (click to show/hide)
you can try these layouts for 40.19, but i haven't tested them yet.:-\Spoiler: WINDOWS (click to show/hide)
So... If anyone knows what to do with these and does it, could you please post a link here for those who have no bloody clue? :D
you can try these layouts for 40.19, but i haven't tested them yet.Much praise and thanks to those who crafted us the memory layouts for 40.19!
To get the windows version working I followed these easy steps:you can try these layouts for 40.19, but i haven't tested them yet.:-\Spoiler: WINDOWS (click to show/hide)
So... If anyone knows what to do with these and does it, could you please post a link here for those who have no bloody clue? :D
Well done! I was working on it in this thread http://www.bay12forums.com/smf/index.php?topic=146143.0i cheat and run df-structure scripts :P
Looks like I was 10 off on the races offset which is why everything was breaking.
splinterz what tools do you use to find the memory offsets?
Right now I use a mix of QT debugging, WinDBG, Cheat Engine, and DF 25.00 (for corrected/uncorrected and vectors).
i haven't had a chance to look at this in detail, but the first line in the log "Dwarf Therapist "0.6.12" starting normally." indicates a pretty old version of DT.. since you're running 40.16 you should be building from here https://github.com/splintermind/Dwarf-Therapist with these instructions https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/BUILDING.rst
[ -d doc ] || mkdir doc; TEXINPUTS=.:/my therapist directories had spacey names/Dwarf-Therapist-DF2014/doc/images: pdflatex -output-directory=doc "/my therapist directories had spacey names/Dwarf-Therapist-DF2014/doc/Dwarf Therapist.tex"
/bin/sh: 1: therapist: not found
make[1]: *** [doc/Dwarf Therapist.pdf] Error 127
make[1]: Leaving directory `/my therapist directories had spacey names/Dwarf-Therapist-DF2014'
make: *** [release] Error 2
This was easily solved by removing spaces from the offending directory name.It LIVES!To get the windows version working I followed these easy steps:you can try these layouts for 40.19, but i haven't tested them yet.:-\Spoiler: WINDOWS (click to show/hide)
So... If anyone knows what to do with these and does it, could you please post a link here for those who have no bloody clue? :D
COPY one of the .ini files in your folder \Dwarf-Therapist-WIN-28.0.0\share\memory_layouts\windows
RENAME the file v0.40.19_graphics.ini
OPEN WITH NOTEPAD that file e.g. v0.40.19_graphics.ini and SELECT ALL
MANUALLY HIGHLIGHT ALL & COPY the text from the above spoiler
PASTE it into the notepad you still have open (with everything selected so that your new .ini file will now contain only the text from the spoiler and nothing from before).
SAVE/CLOSE v0.40.19_graphics.ini in notepad
make sure your new file (v0.40.19_graphics.ini) is in the [above mentioned] folder with the other v0.40.1x_graphics.ini files ...
and poof;
IT'S ALIVE!
Hurray! *dance of Therapist analysis goodness and joy* :D
the changes to include gelding are pretty minimal and enabling gelding on an older version (tested with 40.18) doesn't seem to break anything.Sweet. :)
so i'm going to add the 40.19 stuff, updated the views, and should have a new release incoming.
Fricy put up a layout (https://raw.githubusercontent.com/fricy/Dwarf-Therapist/DF2014/share/memory_layouts/osx/v0.40.19_osx.ini) for 0.40.19 on OS X.Plus seeing that splinterz tagged the code for release, here comes the compiled version. Tested only with 40.19 on OS 10.7.5.
alright versions 29 and 30 are up. (https://github.com/splintermind/Dwarf-Therapist/releases)Thank you! *bounces* This means I can play DF while I don't have the internet at home for who knows how many months! :D
if you have any issues with the new versions, or any suggestions/comments for the new emotions/thoughts don't hesitate to let me know.
Could you add Fricy's build to the first post?will do.
you're very welcome. thanks for the continued enthusiasm ;)alright versions 29 and 30 are up. (https://github.com/splintermind/Dwarf-Therapist/releases)Thank you! *bounces* This means I can play DF while I don't have the internet at home for who knows how many months! :D
if you have any issues with the new versions, or any suggestions/comments for the new emotions/thoughts don't hesitate to let me know.
i should have another minor release out soon to add a gelding column to the animal view (works like butchering) as well as a new health issue for gelding so you'll be able to see that as well.Oooh. Shiny.
sooo...since DT for 40.19 is up now (thanks for that!), what about lazy newb pack for 40.19? ...anyone?
sooo...since DT for 40.19 is up now (thanks for that!), what about lazy newb pack for 40.19? ...anyone?
The starter pack requires a DFHack for version 40.19, which isn't released yet.
sooo...since DT for 40.19 is up now (thanks for that!), what about lazy newb pack for 40.19? ...anyone?
The starter pack requires a DFHack for version 40.19, which isn't released yet.
Why?
sooo...since DT for 40.19 is up now (thanks for that!), what about lazy newb pack for 40.19? ...anyone?
The starter pack requires a DFHack for version 40.19, which isn't released yet.
Why?
It hasn't been released yet because it's not quite finished yet. I wait for dfhack because it's incredibly useful for background bugfixing, improves the interface in many important ways, and provides many useful tools. See here (https://www.reddit.com/r/dwarffortress/comments/2o3koh/dwarf_therapist_v30_new_happiness_roles_labors/cmjqijh) for a recent discussion.
Can we have a 'geld' column, similar to the 'butcher' column, for pets please? I would find this quite useful. As it is, I'm pausing the game, marking the animals I want to geld for butchering, and then going into the animals menu to replace the slaughter orders with geld orders. :)
i should have another minor release out soon to add a gelding column to the animal view (works like butchering) as well as a new health issue for gelding so you'll be able to see that as well.
When you hover over a dwarf's name and it gives you a little summary about them, their thoughts, their skills, and their attributes - is there any way to export that to a document? Like if I wanted to write that stuff down I have to hand retype it all. I'm sure there is or could be an easier way.not directly, however if you open the windows->docks->information dock, you can copy the information from there once you hover over the dwarf's name.
Thank you!
I'm running the latest version for 40.19 (V.30.0), but it seems to be missing a bunch of assignable jobs in the hauling field, such as trade goods hauling. Am I doing something wrong or is this a current engine limitation?i'm not sure what you mean. if you're talking about a view, and it's the 'labors compact' one, then it requires a superlabor column for the hauling. if you want individual labor columns for each hauling labor, try the 'labors full' view.
When you hover over a dwarf's name and it gives you a little summary about them, their thoughts, their skills, and their attributes - is there any way to export that to a document? Like if I wanted to write that stuff down I have to hand retype it all. I'm sure there is or could be an easier way.Similarly, would there be a way to have the animals display more information? Specifically related to their size and strength? (For gelding/butchering selection.) Or is that already in the rows in the animal tab and I'm just not reading things correctly?
Thank you!
you should be able to show bodysize in the tooltips, but currently there's no difference between animals and civilians as far as the tooltip is concerned. so for attributes, they've never been in the tooltip, so you'll have to use the gridview/detail dock to check things like str,agi,etc.When you hover over a dwarf's name and it gives you a little summary about them, their thoughts, their skills, and their attributes - is there any way to export that to a document? Like if I wanted to write that stuff down I have to hand retype it all. I'm sure there is or could be an easier way.Similarly, would there be a way to have the animals display more information? Specifically related to their size and strength? (For gelding/butchering selection.) Or is that already in the rows in the animal tab and I'm just not reading things correctly?
Thank you!
Okay, cool. Thanks. :Dyou should be able to show bodysize in the tooltips, but currently there's no difference between animals and civilians as far as the tooltip is concerned. so for attributes, they've never been in the tooltip, so you'll have to use the gridview/detail dock to check things like str,agi,etc.When you hover over a dwarf's name and it gives you a little summary about them, their thoughts, their skills, and their attributes - is there any way to export that to a document? Like if I wanted to write that stuff down I have to hand retype it all. I'm sure there is or could be an easier way.Similarly, would there be a way to have the animals display more information? Specifically related to their size and strength? (For gelding/butchering selection.) Or is that already in the rows in the animal tab and I'm just not reading things correctly?
Thank you!
When you hover over a dwarf's name and it gives you a little summary about them, their thoughts, their skills, and their attributes - is there any way to export that to a document? Like if I wanted to write that stuff down I have to hand retype it all. I'm sure there is or could be an easier way.not directly, however if you open the windows->docks->information dock, you can copy the information from there once you hover over the dwarf's name.
Thank you!
I'm running the latest version for 40.19 (V.30.0), but it seems to be missing a bunch of assignable jobs in the hauling field, such as trade goods hauling. Am I doing something wrong or is this a current engine limitation?i'm not sure what you mean. if you're talking about a view, and it's the 'labors compact' one, then it requires a superlabor column for the hauling. if you want individual labor columns for each hauling labor, try the 'labors full' view.
Building
qmake -qt=4 # Qt 4 on Debian-based
qmake -qt=5 # Qt 5 on Debian-based
qmake-qt5 # Qt 5 on Fedora
qmake # Qt 4 on most other distros
make -j$(nproc) # Run as many jobs as processing units
OSX version for .40.19 crashes too.
Hey, I just upgraded from the 40_16 r2 starter pack with therapist .28 (which worked great) to the 40_19 r2 with therapist .30 and the new one refuses to startup. It crashes to desktop immediately.does this happen with every save, or a particular one? can you post the log file?
This is what I get and I can't figure it out:
Problem Event Name: APPCRASH
Application Name: DwarfTherapist.exe
Application Version: 0.0.0.0
Application Timestamp: 547e250d
Fault Module Name: DwarfTherapist.exe
Fault Module Version: 0.0.0.0
Fault Module Timestamp: 547e250d
Exception Code: c0000005
Exception Offset: 00015248
OS Version: 6.1.7600.2.0.0.256.1
Locale ID: 1033
Additional Information 1: 0a9e
Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
Additional Information 3: 0a9e
Additional Information 4: 0a9e372d3b4ad19135b953a78882e789
OSX version for .40.19 crashes too.
Try deleting /Users/(your_name)/.config/UDP Software/Dwarf Therapist.ini
Hmm. Which was the latest version working for you?Thanks for your response :)OSX version for .40.19 crashes too.
Try deleting /Users/(your_name)/.config/UDP Software/Dwarf Therapist.ini
Deleting this file didn't help unfortunately, DT still crashes immediately on startup.
Hmm. Which was the latest version working for you?
Hey, Dwarf Therapist crashes on any save game. It also crashes if dwarf fortress is open, not in a game. The only way it will ever open if it is the first thing I start but will crash as soon as Dwarf Fortress opens. Here's the run log:that looks like the log before DF is open, post the log after the crash. alternatively run with the -debug argument and post that log instead.Spoiler (click to show/hide)
I'm at work at the moment and I won't be home until later but I greatly appreciate the help. Please let me know what you think.
That's the message that is printed when you aren't in a directory with a qmake project file (*.pro). Are you in the right directory?
OSX version for .40.19 crashes too.
Try deleting /Users/(your_name)/.config/UDP Software/Dwarf Therapist.ini
OSX version for .40.19 crashes too.
The directory with dwarftherapist.pro
Dwarf therapist needs to run as root because user ptrace is disabled
Could anyone please tell me exactly how on earth you tell the sexuality of your animals within the animal screen? I see that there are colors and symbols the clearly are intended to correspond in some way to their gender and sexuality, but it's not intuitive (to me) what each is supposed to mean. There's white, blue, and pink, plus the Mars, Venus, and Combo symbol. What does each signify?select a unit and there's a tooltip on the gender/orientation symbol in the dwarf details dock. i should probably add an option to include the description in the tooltip.
30.1 patch notesYes! Thank you! :D
- added a geld column to the animal view
- added new gelder profession icon
- added new health issue for gelded
- added misc. trait for 'detatched' to existing traits
- added cave adaption to traits
- added new job icon for caged units
- updated the aggregate tooltip for happiness to include stress
- fixed an issue with items not showing properly on OSX (Fricy)
- fixed the display of role groups with negative weights
- fixed the display of traits' special notes
- fixed duplicate health reading
- fixed caged civilians from not showing
- fixed the sorting of the happiness column
- fixed an issue where the last few icons couldn't be used when overriding profession icons
In case it helps, I have a 100% reproducible crash with OS X - if I make any modifications with Dwarf Therapist, then go to the units screen in DF, it immediately crashes (using latest version DF and DT). Let me know if you'd like a copy of the savefile or crash report.yes, please upload the save. which version of DF and which version of DT? did you manually update recently?
In case it helps, I have a 100% reproducible crash with OS X - if I make any modifications with Dwarf Therapist, then go to the units screen in DF, it immediately crashes (using latest version DF and DT). Let me know if you'd like a copy of the savefile or crash report.Can't reproduce. Anything specific modification in DT that you did to crash? I turned on/off various jobs, but nothing. Do you have to wait for some time for the crash? I got from your report that it happens immediately at invoking unit screen.
Jeez, I thought I'd thanked you here, but it turns out I forgot. Many thanks kind individual.Could anyone please tell me exactly how on earth you tell the sexuality of your animals within the animal screen? I see that there are colors and symbols the clearly are intended to correspond in some way to their gender and sexuality, but it's not intuitive (to me) what each is supposed to mean. There's white, blue, and pink, plus the Mars, Venus, and Combo symbol. What does each signify?select a unit and there's a tooltip on the gender/orientation symbol in the dwarf details dock. i should probably add an option to include the description in the tooltip.
single mars/venus= heterosexual
double mars/venus = homosexual
both combined = bisexual
blue = male
pink = female
white = asexual
I've just come back to playing DF, and using this branch of Therapist, I'm trying to understand the new happiness system. It's a tad opaque in Therapist though, as the coloured tile doesn't seem to change with "stress level" and I don't know which way stress scales. I.e, is negative stress = happiness?
I'm just a little confused and want to be able to tell if my dwarfs are happy or about to murder their children. :P
no problem. i've already added an option to include a gender/orientation description in the tooltip, so that will be in the next update.Jeez, I thought I'd thanked you here, but it turns out I forgot. Many thanks kind individual.Could anyone please tell me exactly how on earth you tell the sexuality of your animals within the animal screen? I see that there are colors and symbols the clearly are intended to correspond in some way to their gender and sexuality, but it's not intuitive (to me) what each is supposed to mean. There's white, blue, and pink, plus the Mars, Venus, and Combo symbol. What does each signify?select a unit and there's a tooltip on the gender/orientation symbol in the dwarf details dock. i should probably add an option to include the description in the tooltip.
single mars/venus= heterosexual
double mars/venus = homosexual
both combined = bisexual
blue = male
pink = female
white = asexual
I've just come back to playing DF, and using this branch of Therapist, I'm trying to understand the new happiness system. It's a tad opaque in Therapist though, as the coloured tile doesn't seem to change with "stress level" and I don't know which way stress scales. I.e, is negative stress = happiness?
I'm just a little confused and want to be able to tell if my dwarfs are happy or about to murder their children. :P
the new stress stuff is mapped to the old happiness system which is:
500.000 (miserable)
250.000 (very unhappy)
100.000 (unhappy)
...
and then the corresponding negative values for happiness (500.000=ecstatic). these ranges correspond with the boundaries where units can be prone to going into stress related moods. i don't know the exact values, but for example at 100.000 stress there's a 10% chance, at 250.000 a 25% chance, etc.
so until stress reaches 100.000 in either direction, your dwarves will show as 'Fine'. most of the time stress moves pretty slowly in either direction, if a dwarf has an average stress vulnerability. a very high stress vulnerability will cause (negative only?) thoughts to have a much greater effect on the dwarf and you'll see them get stressed much faster. a very high stress level (>500.000) and a high stress vulnerability can also cause a dwarf to become catatonic.
100.000 = 100k. that's my bad on the notation, i've updated the original post. so -4k is quite far from happy (-100k). similarly 200 is very distant to 100k (unhappy).I've just come back to playing DF, and using this branch of Therapist, I'm trying to understand the new happiness system. It's a tad opaque in Therapist though, as the coloured tile doesn't seem to change with "stress level" and I don't know which way stress scales. I.e, is negative stress = happiness?
I'm just a little confused and want to be able to tell if my dwarfs are happy or about to murder their children. :P
the new stress stuff is mapped to the old happiness system which is:
500.000 (miserable)
250.000 (very unhappy)
100.000 (unhappy)
...
and then the corresponding negative values for happiness (500.000=ecstatic). these ranges correspond with the boundaries where units can be prone to going into stress related moods. i don't know the exact values, but for example at 100.000 stress there's a 10% chance, at 250.000 a 25% chance, etc.
so until stress reaches 100.000 in either direction, your dwarves will show as 'Fine'. most of the time stress moves pretty slowly in either direction, if a dwarf has an average stress vulnerability. a very high stress vulnerability will cause (negative only?) thoughts to have a much greater effect on the dwarf and you'll see them get stressed much faster. a very high stress level (>500.000) and a high stress vulnerability can also cause a dwarf to become catatonic.
Thanks I think that makes it more clear. Most of my dwarfs are either showing 0 (fine) or -1 to -4k (fine) there is one guy who is +200 but is also shown as fine, so I suppose he's just lucky, or pretty good at handling stress? I guess one last question to nail it home, why do the high negative stress values like -4.1k, which one of my dwarfs shows, not cause a listed state like happy or ecstatic?
Love the new geld feature. I have a slight improvement idea though. Would it be possible to get columns in the animals tab for size, muscle level, and fat level? That way we can more-easily do selective breeding for big, strong war dogs or big, fat livestock.i'll have to look into it. i don't know what values may be available for muscle and/or fat.
Will the 4.20 layout work for 4.21?
Will the 4.20 layout work for 4.21?
Seems to work fine. Been playing for about an hour and haven't run into any crashes with it.
Taken from this post of Reddit,
http://www.reddit.com/r/dwarffortress/comments/2pu0ur/dwarf_therapist_memory_layouts_for_4020_now/
The 4.20 layout works for 4.21, just change the info section to this:
[info]
checksum=0x5494a491
version_name=v0.40.21 (graphics)
complete=true
I want to report a bug.If you use .20 layouts with .21 such problems are to be expected. If that's not the case please post your platform and version.
Some jobs show dabbling in game but they actually have 0 exp.
Those jobs show a legendary icon in DT, for some reason.
Looks like the code for generating layouts is a separate project that isn't included in DT...right?Yes...and no. :)
Taken from this post of Reddit,
http://www.reddit.com/r/dwarffortress/comments/2pu0ur/dwarf_therapist_memory_layouts_for_4020_now/
The 4.20 layout works for 4.21, just change the info section to this:
[info]
checksum=0x5494a491
version_name=v0.40.21 (graphics)
complete=true
Perfect, thank you!
So.. I guess it works fine with the .21 layout even without an official update?
I want to report a bug.If you use .20 layouts with .21 such problems are to be expected. If that's not the case please post your platform and version.
Some jobs show dabbling in game but they actually have 0 exp.
Those jobs show a legendary icon in DT, for some reason.
[info]
checksum=0x5497174e
version_name=v0.40.22 (graphics)
complete=true
size=10
1\name=a zombie
If not all dwarfs load (i have this problem): in layout file commit/delete:this will break the entire section and all the flags there will be ignored, so you'll also see invaders, merchants, dead, etc.Code: [Select]size=10
1\name=a zombie
Come back to DF after like 3-4 years and cant believe how DF is unfriendly without Dwartherapist . Great tool and hoping to see .22 update soon :)
At least on Windows and OS X, the layouts are identical (this may be true on Linux as well) - download the appropriate 0.40.20 layout from Github (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts/), change "version_name" from 0.40.20 to 0.40.22, and update the checksum, which is 0x16beede0 on OS X and 0xec989a28 on Linux. I'm not sure how the checksums are calculated on Windows, but I believe DT should tell you the correct checksum when attempting to connect to DF.
Edit: 0x5497174e should be the Windows checksum.
So can I get Dwarf Therapist 40.19 with 40.20 layout to work with windows on 40.23 by changing version numbers ?
I would try it but it's too late. So i'm just asking if anyone did it successfully.
THAT ARMY CAMPING FIX BUG, MUST UPDATE, MOAR SIEGES
I was actually able to use it for 40.22 i guess 40.23 is the same, despite that it works kind of awkward, showing dwarfs sometimes, and hiding them others, but still better than the in game function.work-around/fix for the flag/showing units issue here (https://github.com/splintermind/Dwarf-Therapist/issues/229).
I was actually able to use it for 40.22 i guess 40.23 is the same, despite that it works kind of awkward, showing dwarfs sometimes, and hiding them others, but still better than the in game function.work-around/fix for the flag/showing units issue here (https://github.com/splintermind/Dwarf-Therapist/issues/229).
i've done some testing for moods, migrants and caravans, and they seem to be ok. i briefly tested units turned undead and that was also alright but i haven't tested invaders/ambushers/lairs so any other reports would be helpful.
windows:0x549b0acbI was actually able to use it for 40.22 i guess 40.23 is the same, despite that it works kind of awkward, showing dwarfs sometimes, and hiding them others, but still better than the in game function.work-around/fix for the flag/showing units issue here (https://github.com/splintermind/Dwarf-Therapist/issues/229).
i've done some testing for moods, migrants and caravans, and they seem to be ok. i briefly tested units turned undead and that was also alright but i haven't tested invaders/ambushers/lairs so any other reports would be helpful.
Thanks, i supposed it was just a bug, do you happen to have v 40.23 checksum by the way? or is there anyway to look for it?
No, you need to run DT as root like it says..
Or read the documentation included in the files you downloaded: https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/README.rst#running-the-program
Just got a migrant wave with over 9000 migrants. :/Literally?
So.. wait, is there a way to use therapist with the current version, given the checksum? @__@
Just got a migrant wave with over 9000 migrants. :/ Can't handle it, cause I'm lazy and bad.
I'm sorry but I don't know how to talk to this version of Dwarf Fortress! (checksum:0x4e772755)
Supported Versions:
v0.40.11 osx(0x2e01a3fa)
v0.40.14 osx(0x12b45892)
v0.40.15 osx(0x9aa7bc3c)
v0.40.13 osx(0xcf35dbe9)
v0.40.16 osx(0x23f8911e)
v0.40.12 osx(0x701549c0)
v0.40.19 osx(0x21bff111)
v0.40.10 osx(0x89fa6d00)
v0.40.09 osx(0xa17cd1fc)
v0.40.08 osx(0xe0e2326f)
v0.40.07 osx(0x9e0e3385)
v0.40.06 osx(0x62455642)
v0.40.05 osx(0xdb0912dd)
v0.40.04 osx(0x06154bf5)
sudo (path to DT)
The DT binary (the executable file), in other words the one you clicked :p
I have an important question to the developers.most of the groundwork for translations has already been done. the game_data.ini can be replaced with a translated version, and QT has support for translations, and even an editor/manager.
Do we have such a perspective in future releases of the Dwarf Therapist, to move the entire text and captions in a separate, external text file for easy localization features into any language or simply add the ability to handle these external localization text files from a special sub-folder?
I see that Dwarf Therapist translation to Russian language project, unfortunately, turned down. But it would be very easy for anyone who wants to translate Dwarf Therapist at any desired language for personal convenience without having to view the entire code, edit and compile each new version of the Dwarf Therapist.
It'd just too bad that there isn't enough of the Dwarven language defined to run Dwarf Therapist in Dwarven.I have an important question to the developers.most of the groundwork for translations has already been done. the game_data.ini can be replaced with a translated version, and QT has support for translations, and even an editor/manager.
Do we have such a perspective in future releases of the Dwarf Therapist, to move the entire text and captions in a separate, external text file for easy localization features into any language or simply add the ability to handle these external localization text files from a special sub-folder?
I see that Dwarf Therapist translation to Russian language project, unfortunately, turned down. But it would be very easy for anyone who wants to translate Dwarf Therapist at any desired language for personal convenience without having to view the entire code, edit and compile each new version of the Dwarf Therapist.
so i think all that needs to be done is generate/update the translation file(s) and add a way to choose/set the language from within DT.
After reading this topic, I understood that I could somehow run DT with DF40.23. Like did everything as described, but it does not work (writing about version incompatibility and crashes).
Can anyone write a step by step instructions on how to do this? DF without DT too unfriendly to me.
After reading this topic, I understood that I could somehow run DT with DF40.23. Like did everything as described, but it does not work (writing about version incompatibility and crashes).Try copying the .23 memory layout ini's text into one of the compatible memory layout files, such as v0.40.19_graphics.ini. That worked for me.
Can anyone write a step by step instructions on how to do this? DF without DT too unfriendly to me.
So, if I may ask, exactly why is that if this is able to get working for the newest version of DF... It isn't updated to work with it and instead users have to try and figure it out?We could really use a "lite" version. Some of us don't need everything, just the ability to assign labors. That's really all I use.
So, if I may ask, exactly why is that if this is able to get working for the newest version of DF... It isn't updated to work with it and instead users have to try and figure it out?We could really use a "lite" version. Some of us don't need everything, just the ability to assign labors. That's really all I use.
Like DFHack's manipulator?So, if I may ask, exactly why is that if this is able to get working for the newest version of DF... It isn't updated to work with it and instead users have to try and figure it out?We could really use a "lite" version. Some of us don't need everything, just the ability to assign labors. That's really all I use.
well, the repository has been updated with the new memory layouts and some of us are on vacation. i figured copy/pasting a file for a few days or a week wasn't really a big deal... i may have been mistaken.So, if I may ask, exactly why is that if this is able to get working for the newest version of DF... It isn't updated to work with it and instead users have to try and figure it out?We could really use a "lite" version. Some of us don't need everything, just the ability to assign labors. That's really all I use.
That's all I use it for as well... So is it not updated because the other features are not working??? I'm kind of confused as to why it isn't updated yet?
well, the repository has been updated with the new memory layouts and some of us are on vacation. i figured copy/pasting a file for a few days or a week wasn't really a big deal... i may have been mistaken.It's all good, doodabuddy. Some folks don't know where to start looking and/or aren't comfortable with modifying files and such (and I'm lazy.) We'll make it work. Enjoy your vacation time.
well, the repository has been updated with the new memory layouts and some of us are on vacation. i figured copy/pasting a file for a few days or a week wasn't really a big deal... i may have been mistaken.So, if I may ask, exactly why is that if this is able to get working for the newest version of DF... It isn't updated to work with it and instead users have to try and figure it out?We could really use a "lite" version. Some of us don't need everything, just the ability to assign labors. That's really all I use.
That's all I use it for as well... So is it not updated because the other features are not working??? I'm kind of confused as to why it isn't updated yet?
Oh! I see this beautiful shiny file, very grateful! But when i try to rename, for example, in [skill_levels] section "12=Master" to "12=Мастер", in the dwarf therapist i was faced with the encoding problems. Instead of the correct word i see hieroglyphics. :(I have an important question to the developers.most of the groundwork for translations has already been done. the game_data.ini can be replaced with a translated version, and QT has support for translations, and even an editor/manager.
Do we have such a perspective in future releases of the Dwarf Therapist, to move the entire text and captions in a separate, external text file for easy localization features into any language or simply add the ability to handle these external localization text files from a special sub-folder?
I see that Dwarf Therapist translation to Russian language project, unfortunately, turned down. But it would be very easy for anyone who wants to translate Dwarf Therapist at any desired language for personal convenience without having to view the entire code, edit and compile each new version of the Dwarf Therapist.
so i think all that needs to be done is generate/update the translation file(s) and add a way to choose/set the language from within DT.
When 40.23 version is going to be?
ah right.. the file should be in UTF-8, but in the code the codec wasn't set when reading the file. so it's not a problem on your end, i just need to modify the code to properly set the codec before it starts reading the data.Oh! I see this beautiful shiny file, very grateful! But when i try to rename, for example, in [skill_levels] section "12=Master" to "12=Мастер", in the dwarf therapist i was faced with the encoding problems. Instead of the correct word i see hieroglyphics. :(I have an important question to the developers.most of the groundwork for translations has already been done. the game_data.ini can be replaced with a translated version, and QT has support for translations, and even an editor/manager.
Do we have such a perspective in future releases of the Dwarf Therapist, to move the entire text and captions in a separate, external text file for easy localization features into any language or simply add the ability to handle these external localization text files from a special sub-folder?
I see that Dwarf Therapist translation to Russian language project, unfortunately, turned down. But it would be very easy for anyone who wants to translate Dwarf Therapist at any desired language for personal convenience without having to view the entire code, edit and compile each new version of the Dwarf Therapist.
so i think all that needs to be done is generate/update the translation file(s) and add a way to choose/set the language from within DT.
I try to resave game_data.ini file in Unicode UTF-8, ANSI 1251 Cyrillic, 20866 (Russian KOI8), try to change fonts in "options" but it did not fix the problem. :(
I have been having a problem with Dwarf Therapist, Tooltips never show up and scrolling on the labor graph doesn't work. Also, every time I click on something the window freezes, but trying to close dwarf therapist fixes the freezing. The job assignments and nicknaming works even when nothing else does. I've been having this issue for awhile and I don't know whats causing it although I think it's something on my side I just don't know what or where to start. Could someone please help it makes using DT tough.provide your O/S, DF version, DT version, and the log file if possible
Please excuse my denseness :-[, but I can't find a clear (for me) answer: do the labor optimizer & nicknamer work properly on the Mac version now?
What exactly is the problem? Is it reported in the issue tracker (https://github.com/splintermind/Dwarf-Therapist/issues)? I don't really use DT (let alone the optimizer), but I could try to figure it out.
Edit: don't do this, it just freezesJust because changing the checksum worked a few releases ago doesn't mean it'll work this time. As far as I'm aware, there weren't any consecutive versions with identical offsets before 0.40.20-23 (where only a few changes were made to DF). Going by the bug tracker, 0.40.24 fixes 27 bugs (not to mention adding some new features), so you can't expect the positions of everything in the executable to remain the same.
If anyone is urking to use Dwarf Therapist with 40.24, the checksum for Windows is 0x54ad7e66
Edit: don't do this, it just freezesJust because changing the checksum worked a few releases ago doesn't mean it'll work this time. As far as I'm aware, there weren't any consecutive versions with identical offsets before 0.40.20-23 (where only a few changes were made to DF). Going by the bug tracker, 0.40.24 fixes 27 bugs (not to mention adding some new features), so you can't expect the positions of everything in the executable to remain the same.
If anyone is urking to use Dwarf Therapist with 40.24, the checksum for Windows is 0x54ad7e66
there is a report regarding setting nicknames (https://github.com/splintermind/Dwarf-Therapist/issues/230). there have been changes and bug fixes to the optimizer which may have resolved the issues you've described, but i don't recall specifically fixing mismatched roles to labors.What exactly is the problem? Is it reported in the issue tracker (https://github.com/splintermind/Dwarf-Therapist/issues)? I don't really use DT (let alone the optimizer), but I could try to figure it out.
I just remember a while back that nicknames wouldn't properly stick, and attempting to make custom roles & use the optimizer ended with the roles all kerflocked (a Glazer role would have Miner or Fisherdwarf stats after saving & reopening, e.g.) I haven't tried messing around with it myself because I remember how frustrated I got with it.
Why I don't have the "scan memory" button in Linux version?Because there's no memory in linux. ;D
Why I don't have the "scan memory" button in Linux version?you shouldn't have it on any o/s anymore. it was removed as it was obsolete with better memory mapping options available now (df-structures).
linux memory_layout for 40.24 would be highly appreciated! :)
Is there anywhere that has memory layouts for 40.24, Windows, available? Not that I ever seem to make it work right for some dumb reason when I update manually like that, but I'll give it another shot, har.
I thought that DFHack and Dwarf Therapist required overlapping-but-not-identical bits of the memory map to function. I'd expect the DFHack guys to concentrate on the DFHack requirements, but presumably there could be a situation where splinterz has enough to run his scripts but DFHack is not yet functional. This is sort of a middle ground among second-window DF tools... the extremes are Stonesense which cannot function at all without DFHack, and Soundsense which doesn't require DFHack at all.linux memory_layout for 40.24 would be highly appreciated! :)Is there anywhere that has memory layouts for 40.24, Windows, available? Not that I ever seem to make it work right for some dumb reason when I update manually like that, but I'll give it another shot, har.
Layouts will be available once df-structures (https://github.com/dfhack/df-structures) is updated and DFHack is working. Angavrilov is usually the one who updates df-structures, and he's been sick recently, but hopefully it'll be updated this weekend. As usual, you can check the DT repo (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts/) for new memory layouts.
Nope, DT requires a small subset of df-structures (while DFHack tools use all of it, or at least have all of it available). Usually, DFHack is mostly fully-functional by the time the DT offsets script can be run. Most of the work involved with df-structures for a new release is finding globals (in symbols.xml), most of which can be found automatically - once the remaining ones are manually located, DFHack is essentially fully-functional (although undetected structure changes can cause problems/crashes if the xml files aren't updated first).I thought that DFHack and Dwarf Therapist required overlapping-but-not-identical bits of the memory map to function. I'd expect the DFHack guys to concentrate on the DFHack requirements, but presumably there could be a situation where splinterz has enough to run his scripts but DFHack is not yet functional. This is sort of a middle ground among second-window DF tools... the extremes are Stonesense which cannot function at all without DFHack, and Soundsense which doesn't require DFHack at all.linux memory_layout for 40.24 would be highly appreciated! :)Is there anywhere that has memory layouts for 40.24, Windows, available? Not that I ever seem to make it work right for some dumb reason when I update manually like that, but I'll give it another shot, har.
Layouts will be available once df-structures (https://github.com/dfhack/df-structures) is updated and DFHack is working. Angavrilov is usually the one who updates df-structures, and he's been sick recently, but hopefully it'll be updated this weekend. As usual, you can check the DT repo (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts/) for new memory layouts.
Ah, I assumed you were using the DFHack script because the Perl script in df-structures is outdated. I haven't tried DT's version of the Perl script, but doesn't it require some globals to be located as well?yes it still needs some, i don't remember which exactly, but that's why DT can usually be updated before they're all found for dfhack. anyway, i just wanted to make it clearer that it's not necessary to wait on a working dfhack, but a mostly-mapped-df-structures.
Need the 40.24 version now.well since you asked so nicely, hold on while we drop everything and get to work.
Here have some alcohol, it always improves the speed of dwarvesNeed the 40.24 version now.well since you asked so nicely, hold on while we drop everything and get to work.
(It obviously didn't happen this weekend, but hopefully it'll be updated soon.)linux memory_layout for 40.24 would be highly appreciated! :)Is there anywhere that has memory layouts for 40.24, Windows, available? Not that I ever seem to make it work right for some dumb reason when I update manually like that, but I'll give it another shot, har.
Layouts will be available once df-structures (https://github.com/dfhack/df-structures) is updated and DFHack is working. Angavrilov is usually the one who updates df-structures, and he's been sick recently, but hopefully it'll be updated this weekend. As usual, you can check the DT repo (https://github.com/splintermind/Dwarf-Therapist/tree/DF2014/share/memory_layouts/) for new memory layouts.
Toady seems to be moving on from this version now so the next Therapist is probably gonna be the last in a long time.
Toady seems to be moving on from this version now so the next Therapist is probably gonna be the last in a long time.
Because he is working on taverns? Is this the start of DF2016 development? I know that there was a very long time between 34.11 and 40.01, and many bugs went unfixed (goblin lashers, anyone?).
So there may be a DF2015 coming out some time this summer. I presume it will have a different prefix if it contains taverns; what will it be? Version 42 would be very Douglas Adams.
40.24 memory layouts:Thank you so much!
windows (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/share/memory_layouts/windows/v0.40.24_graphics.ini)
linux (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2014/share/memory_layouts/linux/v040.24.ini)
(i'll try to package another release here soon, just working out a few more bugs)
copy the contents of the links to a new file in your <Dwarf Therapist directory>/share/memory_layouts/<your O/S>
...
My issue here is I'm not able to find any doc about how to use the "optimize" thing... How to create a new profile for it, etc... If you have any suggestion, link or file to suggest...
Thank you :)
A compiled version for windows: http://bnw.ddns.net/mirror/df/dt/Dwarf-Therapist-40.24-1.7z
This is unofficial of course, i take no responsibility if your dwarfs go mad :D.
A compiled version for windows: http://bnw.ddns.net/mirror/df/dt/Dwarf-Therapist-40.24-1.7z
This is unofficial of course, i take no responsibility if your dwarfs go mad :D.
Can't run your version (lack of some Qt plugin or such).
But after copying the memory layout files to 40.23 LNP, it seemed to work.
In the Dwarf Therapist download, there's a doc folder, with a PDF, it contains instructions :)
It says:
This application failed to start because it could not find or load the Qt platform plugin "windows".
Newbie Question (hope I got the right thread):by 'headlines' do you mean the column headers?
Is it possible to add "Tooltips" to the Headlines of Skills, Attributes etc? Would help newbies (like me) (especially not-english-natives) a lot to have a tooltip in the programm what the Attribute etc is usefull for (or is it usefull at all... ) when looking at the Grid... now I am struggeling with DF, DT and 100 Wiki-pages the same time -.-
after reading the manual I thought it should be change/addable in the game_data.ini, but (at least) my copy of DT from the Starter Pack doesn't have any ini ??
Does anyone know where I can find the ini and what I have to change/add where (as far as I know, the old DT which comes with Masterwork 6.2 does have a /etc folder with the ini but the Starter Pack version does not have the folder)
or - even better: has someone a file with the Tooltips included made before?
Maybe it would be great to include such tooltips (even if the non-noobs wouldn't need them) to the DT per se as a help for newbies at all - guess it has only be done 1 time...
is this compiled from the most recent DF2014 branch's commit?It says:
This application failed to start because it could not find or load the Qt platform plugin "windows".
Should now be fixed, i hope: http://bnw.ddns.net/mirror/df/dt/Dwarf-Therapist-40.24-1.7z
is this compiled from the most recent DF2014 branch's commit?It says:
This application failed to start because it could not find or load the Qt platform plugin "windows".
Should now be fixed, i hope: http://bnw.ddns.net/mirror/df/dt/Dwarf-Therapist-40.24-1.7z
for the most part... but you may want to backup your dwarf therapist.ini. if i was more certain everything was fine, i would have packaged up a release :Pis this compiled from the most recent DF2014 branch's commit?It says:
This application failed to start because it could not find or load the Qt platform plugin "windows".
Should now be fixed, i hope: http://bnw.ddns.net/mirror/df/dt/Dwarf-Therapist-40.24-1.7z
It is. At least on my DF it works. Shouldn't it?
for the most part... but you may want to backup your dwarf therapist.ini. if i was more certain everything was fine, i would have packaged up a release :Pis this compiled from the most recent DF2014 branch's commit?It says:
This application failed to start because it could not find or load the Qt platform plugin "windows".
Should now be fixed, i hope: http://bnw.ddns.net/mirror/df/dt/Dwarf-Therapist-40.24-1.7z
It is. At least on my DF it works. Shouldn't it?
there's still the aforementioned bugs which can corrupt your settings, custom views, etc. additionally, the gridviews have some new settings saved with them, so custom views may not be loaded properly if anyone uses this version, and then goes back to the past versions.
Newbie Question (hope I got the right thread):by 'headlines' do you mean the column headers?
Is it possible to add "Tooltips" to the Headlines of Skills, Attributes etc? Would help newbies (like me) (especially not-english-natives) a lot to have a tooltip in the programm what the Attribute etc is usefull for (or is it usefull at all... ) when looking at the Grid... now I am struggeling with DF, DT and 100 Wiki-pages the same time -.-
after reading the manual I thought it should be change/addable in the game_data.ini, but (at least) my copy of DT from the Starter Pack doesn't have any ini ??
Does anyone know where I can find the ini and what I have to change/add where (as far as I know, the old DT which comes with Masterwork 6.2 does have a /etc folder with the ini but the Starter Pack version does not have the folder)
or - even better: has someone a file with the Tooltips included made before?
Maybe it would be great to include such tooltips (even if the non-noobs wouldn't need them) to the DT per se as a help for newbies at all - guess it has only be done 1 time...
there aren't really any descriptions defined in the game_data.ini, so overriding it won't help with that. can you give an example of what you'd expect to see in these tooltips?
Hey, I know everyone is talking about 40.24, but does it work for 40.23 yet? And if yes, how do I get it to work?
Hey, I know everyone is talking about 40.24, but does it work for 40.23 yet? And if yes, how do I get it to work?
It does. You can use my build a few posts up, taking in mind the precautions to take that splinterz wrote.
So I just cannot get any version of DT to run for me and I am at my wit's end. Every time it tells me that it cannot talk to the version of DF that I am running, I can see that it is a checksum issue because it shows me the checksum I was running and the one it needs. But the problem is I have no god damn idea how to fix this, someone...halp.Well, did you acquire an ini file for the version of DF that you're running and fill in the correct checksum?
So I just cannot get any version of DT to run for me and I am at my wit's end. Every time it tells me that it cannot talk to the version of DF that I am running, I can see that it is a checksum issue because it shows me the checksum I was running and the one it needs. But the problem is I have no god damn idea how to fix this, someone...halp.what version of DT, what version of DF, what O/S? are you using the legacy version?
The checksums should already be filled in, so it's more likely a missing ini file.So I just cannot get any version of DT to run for me and I am at my wit's end. Every time it tells me that it cannot talk to the version of DF that I am running, I can see that it is a checksum issue because it shows me the checksum I was running and the one it needs. But the problem is I have no god damn idea how to fix this, someone...halp.Well, did you acquire an ini file for the version of DF that you're running and fill in the correct checksum?
I'm using the 30.1 version of DT with DF 40.19 (legacy, though I'm not quite sure what the difference is between SDL and legacy) on Windows 7 64 bit.So I just cannot get any version of DT to run for me and I am at my wit's end. Every time it tells me that it cannot talk to the version of DF that I am running, I can see that it is a checksum issue because it shows me the checksum I was running and the one it needs. But the problem is I have no god damn idea how to fix this, someone...halp.what version of DT, what version of DF, what O/S? are you using the legacy version?
The DT layouts are for the SDL version. (If you ask me, "v0.40.24 SDL.ini" would be much clearer than "v0.40.24 graphics.ini".)Oh, well shieet. Thanks for that, now I can actually use the tool, thanks!
I don't understand what I've just read, can I get this to work for 40.24 yet or not? How? Sorry, just don't know much computer-speak...
A few posts back, i linked a version that should work. Keep in mind it's unofficial, but it works for me and other people.
This: http://bnw.ddns.net/mirror/df/dt/Dwarf-Therapist-40.24-1.7z
It's working fine for me. Although it thinks that 'mining' is a moodable skill. ;)Mining is a moodable skill (http://dwarffortresswiki.org/index.php/DF2014:Strange_mood).
Mining is a moodable skill (http://dwarffortresswiki.org/index.php/DF2014:Strange_mood).
it uses the raw skill level, so it's still possible, you'll just have to get his weaponsmith skill higher than his mining... which may be difficult if he's been mining since the foundation of your fortress and has a raw skill level of 200 or something though :DMining is a moodable skill (http://dwarffortresswiki.org/index.php/DF2014:Strange_mood).
I sit corrected. Man it's going to be impossible to get that legendary +5 miner to make a weapon artifact now.
I don't understand what I've just read, can I get this to work for 40.24 yet or not? How? Sorry, just don't know much computer-speak...A few posts back, i linked a version that should work. Keep in mind it's unofficial, but it works for me and other people.
This: http://bnw.ddns.net/mirror/df/dt/Dwarf-Therapist-40.24-1.7z
(Edited to add link)
I don't understand what I've just read, can I get this to work for 40.24 yet or not? How? Sorry, just don't know much computer-speak...A few posts back, i linked a version that should work. Keep in mind it's unofficial, but it works for me and other people.
This: http://bnw.ddns.net/mirror/df/dt/Dwarf-Therapist-40.24-1.7z
(Edited to add link)
You're a beautiful person and I may or may not be in love with you. Thank you.
There's an error in the status displays for DT version 0.30.1, DF version 0.40.23. I have a dwarf possessed by a ghost, and Therapist says "fright after being haunted/tormented/possessed by their dead mother." I've doublechecked and the ghost in question is not the possessee's mother.can you upload the save so i can take a look?
2015-Jan-24 18:26:01.851 INFO core Dwarf Therapist "25.0.0" starting normally. [src/dwarftherapist.cpp:151] (setup_logging)
2015-Jan-24 18:26:01.958 WARNING core "Missing health information in game_data.ini!!" [src/gamedatareader.cpp:82] (GameDataReader)
2015-Jan-24 18:26:02.027 INFO core beginning to read settings [src/dwarftherapist.cpp:177] (read_settings)
2015-Jan-24 18:26:02.045 INFO core finished reading settings [src/dwarftherapist.cpp:205] (read_settings)
2015-Jan-24 18:26:02.105 INFO core attempting connection to running DF game [src/mainwindow.cpp:322] (connect_to_df)
2015-Jan-24 18:26:02.107 INFO core adding valid layout "v0.40.24" "0xc42f5594" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.110 INFO core adding valid layout "v0.40.23" "0x02ae0bd7" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.113 INFO core adding valid layout "v0.40.22" "0xec989a28" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.116 INFO core adding valid layout "v0.40.21" "0x0c517807" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.118 INFO core adding valid layout "v0.40.20" "0xc281d937" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.121 INFO core adding valid layout "v0.40.19" "0xb7bbe8a5" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.124 INFO core adding valid layout "v0.40.18" "0x25b761ee" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.126 INFO core adding valid layout "v0.40.16" "0x13cc404f" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.129 INFO core adding valid layout "v0.40.15" "0xf1049a2b" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.131 INFO core adding valid layout "v0.40.14" "0x8ab84807" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.134 INFO core adding valid layout "v0.40.13" "0xdb688bd7" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.136 INFO core adding valid layout "v0.40.12" "0x5ad26cb2" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.138 INFO core adding valid layout "v0.40.11" "0xffde0733" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.140 INFO core adding valid layout "v0.40.10" "0x0b7185da" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.142 INFO core adding valid layout "v0.40.09" "0x9e592efe" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.148 INFO core adding valid layout "v0.40.08" "0xa2f83bf8" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.150 INFO core adding valid layout "v0.40.07" "0x4d274c4d" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.151 INFO core adding valid layout "v0.40.06" "0x569f6c42" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.155 INFO core adding valid layout "v0.40.05" "0x5612460b" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.156 INFO core adding valid layout "v0.40.04" "0x9fdc4a78" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.157 INFO core adding valid layout "v0.40.03" "0xdd544df6" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.160 INFO core adding valid layout "v0.40.01" "0xd3460da2" [src/dfinstance.cpp:118] (DFInstance)
2015-Jan-24 18:26:02.244 INFO core DF's checksum is: "0xc42f5594" [src/dfinstance.cpp:1469] (get_memory_layout)
2015-Jan-24 18:26:02.244 INFO core Detected Dwarf Fortress version "v0.40.24" using MemoryLayout from "/media/Eientei/opt/DwarfFortress/dwarf_therapist/etc/memory_layouts/linux/v040.24.ini" [src/dfinstance.cpp:1481] (get_memory_layout)
2015-Jan-24 18:26:02.244 INFO core Dwarf fortress path: "/media/Eientei/opt/DwarfFortress/df_40_24" [src/dfinstancelinux.cpp:405] (find_running_copy)
2015-Jan-24 18:26:02.249 INFO core Connection to DF version "v0.40.24" established. [src/mainwindow.cpp:349] (connect_to_df)
2015-Jan-24 18:26:02.606 WARNING core unidentified column type in set "General" ! [src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
2015-Jan-24 18:26:02.608 WARNING core unidentified column type in set "General" ! [src/grid_view/viewcolumnset.cpp:307] (read_from_ini)
2015-Jan-24 18:26:02.620 INFO core Loaded 12 views from disk [src/viewmanager.cpp:198] (reload_views)
2015-Jan-24 18:26:02.625 INFO core group_by now set to 0 for view "Labors Compact" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.630 INFO core group_by now set to 0 for view "Roles" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.634 INFO core group_by now set to 0 for view "Military" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.639 INFO core group_by now set to 0 for view "Attributes" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.644 INFO core group_by now set to 0 for view "Traits" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.649 INFO core group_by now set to 0 for view "Social" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.654 INFO core group_by now set to 0 for view "Animals" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.660 INFO core group_by now set to 0 for view "Health" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.660 INFO core group_by now set to 0 for view "Labors Compact" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.661 INFO core "redrew views in 40ms" [src/viewmanager.cpp:332] (draw_views)
2015-Jan-24 18:26:02.663 INFO core FOUND 4 squads [src/dfinstance.cpp:938] (load_squads)
2015-Jan-24 18:26:02.671 INFO core current year: 50 [src/dfinstance.cpp:461] (load_dwarves)
2015-Jan-24 18:26:02.672 INFO core using active units [src/dfinstance.cpp:1006] (get_creatures)
2015-Jan-24 18:26:02.674 WARNING core vector at "0xe389e6af" has over 500.000 entries! ( 777019960 ) [src/dfinstance.cpp:157] (check_vector)
2015-Jan-24 18:26:02.674 ERROR core vector at "0xe389e6af" was not read due to an unacceptable size! ( 777019960 ) [src/dfinstance.cpp:168] (check_vector)
2015-Jan-24 18:26:02.674 ERROR core "Read unknown profession with id '0' for dwarf 'Stukos Vucarkathil'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.686 INFO core FOUND UNIT "0xe389e6b0" "Stukos Vucarkathil" [src/dfinstance.cpp:479] (load_dwarves)
2015-Jan-24 18:26:02.687 WARNING core vector at "0xe389f3ef" has over 500.000 entries! ( 773749816 ) [src/dfinstance.cpp:157] (check_vector)
2015-Jan-24 18:26:02.687 ERROR core vector at "0xe389f3ef" was not read due to an unacceptable size! ( 773749816 ) [src/dfinstance.cpp:168] (check_vector)
2015-Jan-24 18:26:02.687 ERROR core "Read unknown profession with id '7' for dwarf 'Melbil Bekardishmab'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.690 INFO core FOUND UNIT "0xe389f3f0" "Melbil Bekardishmab" [src/dfinstance.cpp:479] (load_dwarves)
2015-Jan-24 18:26:02.690 WARNING core vector at "0xe3ed0187" has over 500.000 entries! ( 772894776 ) [src/dfinstance.cpp:157] (check_vector)
2015-Jan-24 18:26:02.690 ERROR core vector at "0xe3ed0187" was not read due to an unacceptable size! ( 772894776 ) [src/dfinstance.cpp:168] (check_vector)
2015-Jan-24 18:26:02.690 ERROR core "Read unknown profession with id '14' for dwarf 'Kol Olinustan'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.697 INFO core FOUND UNIT "0xe3ed0188" "Kol Olinustan" [src/dfinstance.cpp:479] (load_dwarves)
2015-Jan-24 18:26:02.697 WARNING core vector at "0xe3ed0ec7" has over 500.000 entries! ( 769758264 ) [src/dfinstance.cpp:157] (check_vector)
2015-Jan-24 18:26:02.697 ERROR core vector at "0xe3ed0ec7" was not read due to an unacceptable size! ( 769758264 ) [src/dfinstance.cpp:168] (check_vector)
2015-Jan-24 18:26:02.698 ERROR core "Read unknown profession with id '50' for dwarf 'Uvash Degoltar'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.709 INFO core FOUND UNIT "0xe3ed0ec8" "Uvash Degoltar" [src/dfinstance.cpp:479] (load_dwarves)
2015-Jan-24 18:26:02.710 WARNING core vector at "0xe38cd7cf" has over 500.000 entries! ( 766643768 ) [src/dfinstance.cpp:157] (check_vector)
2015-Jan-24 18:26:02.710 ERROR core vector at "0xe38cd7cf" was not read due to an unacceptable size! ( 766643768 ) [src/dfinstance.cpp:168] (check_vector)
2015-Jan-24 18:26:02.710 ERROR core "Read unknown profession with id '39' for dwarf 'Ustuth Konosoltar'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.721 INFO core FOUND UNIT "0xe38cd7d0" "Ustuth Konosoltar" [src/dfinstance.cpp:479] (load_dwarves)
2015-Jan-24 18:26:02.722 WARNING core vector at "0xe38ce50f" has over 500.000 entries! ( 763442744 ) [src/dfinstance.cpp:157] (check_vector)
2015-Jan-24 18:26:02.725 ERROR core vector at "0xe38ce50f" was not read due to an unacceptable size! ( 763442744 ) [src/dfinstance.cpp:168] (check_vector)
2015-Jan-24 18:26:02.725 ERROR core "Read unknown profession with id '70' for dwarf 'Zas Mistemgim'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.734 INFO core FOUND UNIT "0xe38ce510" "Zas Mistemgim" [src/dfinstance.cpp:479] (load_dwarves)
2015-Jan-24 18:26:02.735 WARNING core vector at "0xe38cf24f" has over 500.000 entries! ( 760213048 ) [src/dfinstance.cpp:157] (check_vector)
2015-Jan-24 18:26:02.735 ERROR core vector at "0xe38cf24f" was not read due to an unacceptable size! ( 760213048 ) [src/dfinstance.cpp:168] (check_vector)
2015-Jan-24 18:26:02.735 ERROR core "Read unknown profession with id '102' for dwarf 'Tulon Zugobletmos'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.742 INFO core FOUND UNIT "0xe38cf250" "Tulon Zugobletmos" [src/dfinstance.cpp:479] (load_dwarves)
2015-Jan-24 18:26:02.742 ERROR core "Read unknown profession with id '102' for dwarf 'Unknown'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.743 INFO core FOUND BEAST "0xe38cff90" "Cat" [src/dfinstance.cpp:492] (load_dwarves)
2015-Jan-24 18:26:02.743 ERROR core "Read unknown profession with id '102' for dwarf 'Unknown'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.743 INFO core FOUND BEAST "0xe38d0cd0" "Cat" [src/dfinstance.cpp:492] (load_dwarves)
2015-Jan-24 18:26:02.744 ERROR core "Read unknown profession with id '102' for dwarf 'Unknown'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.744 INFO core FOUND BEAST "0xe38d1a10" "Alpaca" [src/dfinstance.cpp:492] (load_dwarves)
2015-Jan-24 18:26:02.744 ERROR core "Read unknown profession with id '102' for dwarf 'Unknown'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.745 INFO core FOUND BEAST "0xe38d2750" "Alpaca" [src/dfinstance.cpp:492] (load_dwarves)
2015-Jan-24 18:26:02.745 ERROR core "Read unknown profession with id '102' for dwarf 'Unknown'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.745 INFO core FOUND BEAST "0xe38d3490" "Yak Cow" [src/dfinstance.cpp:492] (load_dwarves)
2015-Jan-24 18:26:02.746 ERROR core "Read unknown profession with id '102' for dwarf 'Unknown'" [src/dwarf.cpp:795] (read_profession)
2015-Jan-24 18:26:02.746 INFO core FOUND BEAST "0xe38d41d0" "Yak Bull" [src/dfinstance.cpp:492] (load_dwarves)
2015-Jan-24 18:26:02.747 INFO core read 13 units in 74 ms [src/dfinstance.cpp:497] (load_dwarves)
2015-Jan-24 18:26:02.748 INFO core loaded population data in 1 ms [src/dfinstance.cpp:507] (load_dwarves)
2015-Jan-24 18:26:02.748 INFO core calculated roles in 0 ms [src/dfinstance.cpp:512] (load_dwarves)
2015-Jan-24 18:26:02.753 INFO core found 13 dwarves out of 41 creatures [src/dfinstance.cpp:526] (load_dwarves)
2015-Jan-24 18:26:02.754 INFO core group_by now set to 0 for view "Labors Compact" [src/models/dwarfmodel.cpp:758] (set_group_by)
2015-Jan-24 18:26:02.772 INFO core loaded rows for "Labors Compact" 18 ms [src/models/dwarfmodel.cpp:764] (set_group_by)
2015-Jan-24 18:26:02.917 INFO core completed read in 256 ms [src/mainwindow.cpp:531] (read_dwarves)
Segmentation fault
Will the thread title ever be updated to show that DT is compatible with 40.24, though there still seem to be some bugs?
Will the thread title ever be updated to show that DT is compatible with 40.24, though there still seem to be some bugs?
I'd say this is significant. Being able to use DT with the latest release of DF makes a big difference. DF version 40.24 fixes some big bugs.
Will the thread title ever be updated to show that DT is compatible with 40.24, though there still seem to be some bugs?I think that the title refers to the most recent build on Github, which only supports 0.40.19 and below.
hey guys,Looks like I haven't updated since 40.23 (http://dffd.bay12games.com/file.php?id=9127), so easiest solution I can recommend is to grab the Macnewbie pack from my sig, Therapist included among others. Installation is like any other mac app: mount the .dmg and drag and drop the app. As for running: use the Macnewbie launcher.
i'm a complete newb to dwarftherapsit. never used it before.
i have a couple of questions..
1) is there a version (mac compatible) that works with the current DF (0.40.24)? if not, can i run an older version or will i encounter some serious issues?
2) how do i go about installing & running the program?
sorry, i know this is very simple stuff -- but i looked around a bit and seemed to turn up more questions than answers..
hey guys,Looks like I haven't updated since 40.23 (http://dffd.bay12games.com/file.php?id=9127), so easiest solution I can recommend is to grab the Macnewbie pack from my sig, Therapist included among others. Installation is like any other mac app: mount the .dmg and drag and drop the app. As for running: use the Macnewbie launcher.
i'm a complete newb to dwarftherapsit. never used it before.
i have a couple of questions..
1) is there a version (mac compatible) that works with the current DF (0.40.24)? if not, can i run an older version or will i encounter some serious issues?
2) how do i go about installing & running the program?
sorry, i know this is very simple stuff -- but i looked around a bit and seemed to turn up more questions than answers..
Another suggestion: automatically download memory layouts that are available from Github but not locally. No difference for my pack since I have a script that does this, but a godsend to many players.yes, i know. (https://github.com/splintermind/Dwarf-Therapist/issues/184)
Wow!First thought was to ask you for LaTeX. But guy who actually translated decided the contrary ;).
Is there a way to remove all Hauling labours for a single dwarf without unchecking one by one the labours?
I feel like an idiot for asking
Is there a way to remove all Hauling labours for a single dwarf without unchecking one by one the labours?you can add a superlabor column with all the hauling labors. then clicking the cell will toggle all the hauling labors.
I feel like an idiot for asking
Not at all. Not all features in every piece of software is documented. If it is it's not always easy to find. I do a lot of searching forums for key presses and such.
I feel like an idiot for asking
Not at all. Not all features in every piece of software is documented. If it is it's not always easy to find. I do a lot of searching forums for key presses and such.
But...I spent all this time...
Sigh...
What's that down there in your sig? Oh, I had no idea that existed.ResMar, here's the magma cannon lever. I'll leave the decision up to you :)
Is there a way to remove all Hauling labours for a single dwarf without unchecking one by one the labours?I've found that it's usually easiest to right click their name, remove all labors, and manually add back the labors you want (usually only 1 or 2). Note that this removes Feed Patient and Recover Wounded, but if you have enough hauling grunts this isn't really an issue, and provides a nice visual indicator of whether or not you've removed hauling from a dwarf without having to scroll to the right.
I feel like an idiot for asking
Not at all. Not all features in every piece of software is documented. If it is it's not always easy to find. I do a lot of searching forums for key presses and such.
But...I spent all this time...
Sigh...
I got a question/sugestion, there is some way to enable in the tooltip on the name of the creatures, to show the proper description like the 'k' of DF ??i'd have to look into the descriptions as i believe their pieced together based on the size/muscle/fat. i assume this is mainly for butchering purposes? if that's the case then what i'd like to do eventually is include butchering information for animals in the main tooltip and/or on the butcher column.
the tooltip in 'animals' tab currently has:
Caste:
Age:
Size:
Train Level:
Description: <general description - all dogs have the same>
-----
I cant see if the animal its fat for example besides of current size compared to age and MAX_SIZE of that creature in wiki, or read it in the description of every animal, but there isn't a column for this ?
and there are some other attrs that are lost (muscular=strength?, color hair, etc),
but I mainly care if it is fat
splinterz, I am encountering a display bug in DT, with regards to the symbol displayed for skill levels. This bug only appears late in the 7th year of the fortress, for one or more dwarfs. It is reproducible. The save that displays the bug is at http://dffd.bay12games.com/file.php?id=10625. The description for that file, which for some reason DFFD won't take, is as follows:thanks for the save, i see what you mean. it looks like it's something to do with the skill being at dabbling, but due to rust it drops to 0xp. so it's an edge case where they have 0xp and still have a dabbling skill (normally dabbling >= 1xp).
In Dwarf Therapist, this save displays the wrong icons for the fishing group of skills for the dwarf named Mafol Rigòthothlest, who is a Planter. Although she is Dabbling in all three skills, the program displays the icons for Legendary. It only began displaying them this way when Autumn of 1056 arrived, and it did it both times when I tried playing 1056 over again from the initial save for that year. It also did this for several dwarfs in a previous fortress, on the same year. More dwarfs were affected in that game.
i'd have to look into the descriptions as i believe their pieced together based on the size/muscle/fat. i assume this is mainly for butchering purposes? if that's the case then what i'd like to do eventually is include butchering information for animals in the main tooltip and/or on the butcher column.ok, thanks for the answer,
also I have saw that my dogs (males one) have an male image, a blue one, sometimes for other male dogs the image its grey, and for the females, its pink for one and for others female dogs the image its grey, and in some weirds cases: they got two pink images, and case its one male-female image in pink color
I get the male blue image, female pink image... the other cases not :(, what those mean ??
Regarding DFFD, the accented character in Rigòthothlest could be a problem.
Grey symbol means the animal is asexual (and won't breed). A doubled symbol indicates the animal is exclusively homosexual, and won't breed. The combination male-female symbol indicates the animal is bisexual, and probably will breed.
Couldn't DT retain data on disconnecting from the fort? The data would still be useful to review without the ability to change it. When the game is shut down, all the information there is as up-to-date as it needs to be. The user would still need to reconnect when a fortress is running in memory again.
On my version of DT, The labor skill Blacksmithing is missing.
Is that is there a way to transfer custom jobs? Updated DT to DF:2014, and don't want to go through the hassle of remaking all my custom professions. Thanks!
I'm not sure if this is a known bug or not but dwarfs have a red square and show as missing trousers when wearing high boots and mail shirts. While they aren't technically wearing trousers they actually don't generate bad thoughts from this.are you sure about this? everything i've read indicates that having a missing PANTS item results in a bad thought about being uncovered. for example people have reported that having robes on only counts as upper body coverage, and you'll still get bad thoughts about having the lower body uncovered. maybe it's different for armor?
Just a minor issue: I noticed the kills of a dwarf are not updated on reread (ctrl-r), but on restart of DT.I couldn't reproduce this in version 31.0.
I have a small problem with therapist on windows7. I'm playing on a netbook so the therapist window is maximized to use whatever bit of screen space I have. Every so often it "forgets" how big my screen is and extends the window further down, making the horizontal scrollbar inacessable behind windows' taskbar.What resolution are you running, and what does your DT layout look like (what docks are you using, and where are they docked)
Toggling maximize resets things to normal. The problem seems to be triggered by doing random stuff in the therapist window itself, I never tabbed in to find it messed up but it happens all the time by clicking around in it, like every 20 clicks. Never saw it forget the horizontal size, only vertical has that problem.
Is there anything I can do to keep the therapist window size, besides not maximizing it in the first place?
Therapist 31.0.0 as it came with the starter pack, df in windowed mode, taskbar is default single height not set to hide, aero is on.
It could be helpful for some people to have "sex" field in detailed dwarf description, because it's not so clear from pictures.In the tooltip options you can toggle gender and orientation.
1366x768, changes, emotions and dwarf details docked on the right, most of the premade tabs for the main view... have a look (http://imgur.com/y6NwXoh). The pending changes listed were all the clicks it took to trigger the problem with everything freshly started. Seems to happen more often (only? not sure yet) from the roles tab.window size probsWhat resolution are you running, and what does your DT layout look like (what docks are you using, and where are they docked)
Sorry, but where precisely is the game_data.ini file the manual talks about? I need a peek at the Profession ID list within.
first of, thank you so much for maintaining this, for forts of a large number of dwarves this tool is one of my 'must haves' to keep things organized.
on that note, is there an option (or plans to make one) to set burrows for your dwarves through therapist? I know squads are in, but can't seem to find anything with burrows.
ahh, thanks for the answer. sorry for not searching thoroughly enough.first of, thank you so much for maintaining this, for forts of a large number of dwarves this tool is one of my 'must haves' to keep things organized.
on that note, is there an option (or plans to make one) to set burrows for your dwarves through therapist? I know squads are in, but can't seem to find anything with burrows.
http://www.bay12forums.com/smf/index.php?topic=122968.msg5527956;topicseen#msg5527956
Sometimes that message means that a dependency of the library in question isn't present, rather than the library itself being missing, but your package manager should take care of that. You could try reinstalling libqt5qml, or finding libQt5Qml.so (in /usr/lib, /lib, etc.) and ensuring that there's a libQt5Qml.so.5 symlink present in the same directory.I found libQt5Qml.so.5 in usr/lib, so the file is definitely there. ummmm...whats a symlink? :D
Regarding your issue, what architecture (32/64-bit) is your system? What do "file /usr/lib/libQt5Qml.so.5" and "file <path to DT>" return (when run in a terminal)?I'm running 15.04 64-bit.
> file /usr/lib/libQt5Qml.so.5 returnsOkay, that's probably because libQt5Qml.so.5 is a symlink to something that doesn't exist (try "readlink /usr/lib/libQt5Qml.so.5" and see if the path it gives you exists), so I'd try reinstalling that package. Also, you're using a 32-bit version of DT, so you'd need to install a 32-bit library for it to work (libqt5qml:i386 ought to work, assuming libqt5qml is the correct package name), or use a 64-bit DT build.
/usr/lib/libQt5Qml.so.5: cannot open `/usr/lib/libQt5Qml.so.5' (No such file or directory)
which is *really* strange, because when I follow the path with the file manager, I see the file there. huh. should I uninstall and reinstall the package?
Okay, that's probably because libQt5Qml.so.5 is a symlink to something that doesn't exist (try "readlink /usr/lib/libQt5Qml.so.5" and see if the path it gives you exists), so I'd try reinstalling that package. Also, you're using a 32-bit version of DT, so you'd need to install a 32-bit library for it to work (libqt5qml:i386 ought to work, assuming libqt5qml is the correct package name), or use a 64-bit DT build.
Here's an idea:
It would be cool if DT could show you where your dwarves are (e.g. coordinates, whether they are inside or outside a specific burrow, etc). That way I'll know if it's okay to close the gates or if someone is still wandering outside. I don't know if such a thing would be possible to code though.
file ./DwarfTherapist
./DwarfTherapist: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=c494a991a142f5acb5022fba3f90d98fea01cd75, not stripped
hopefully splinterz or someone who really knows what they are talking about will be along soon, but in the meantime...
@dman11235
it's been a while since i used lnp but my memory is that if you launch dwarf therapist via the lnp launcher it opens before you get to your fort (and hence finds no data to read). vague memory that just clicking to connect to dwarf fortess fixes the issue but definitely remember that i ended up not launching therapist via lnp but instead launching it manually once i got to my fort. perhaps try those methods? the only other suggestion i have is to try deleting (moving is probably better option though in case nothing changes and you want to restore it) your dwarf_therapist.ini. on vista to be found in /users/username/appdata/roaming/udp software/ (probably similar for 7) which basically holds your configurations - not sure but it might possibly cause problems from an older version?
Thanks for the reply, I'll try an earlier version of DT and see if that works.
Edit: Never mind, git hub's interface is a nightmare. I'll try one of the other utilities.
Thanks for the reply, I'll try an earlier version of DT and see if that works.All of the releases available on GitHub are listed under "Releases": https://github.com/splintermind/Dwarf-Therapist/releases (https://github.com/splintermind/Dwarf-Therapist/releases). 26.0 might work with 0.40.05, or there could be older ones on DFFD (http://dffd.bay12games.com/) that work.
Edit: Never mind, git hub's interface is a nightmare. I'll try one of the other utilities.
Using a Windows 8 touchscreen laptop, Dwarf Therapist will not respond to clicks from the stylus. You have to either enable the touchpad or use a regular mouse. Cause of bug unknown.Cause of bug is probably the first six words there. Microsoft hasn't shown 8.0 much love since 8.1 was launched, and it will only get worse as adoption of 10.0 picks up.
Using a Windows 8 touchscreen laptop, Dwarf Therapist will not respond to clicks from the stylus. You have to either enable the touchpad or use a regular mouse. Cause of bug unknown.Cause of bug is probably the first six words there. Microsoft hasn't shown 8.0 much love since 8.1 was launched, and it will only get worse as adoption of 10.0 picks up.
Still having the issue. I have no crash log to give, because it's not really crashing. I'll be trying to use an older version of DF and DT this weekend when I have time to check stuff, but if anyone has had this issue before, please let me know. It's almost like I run out of memory but I really shouldn't be, because I have so much available. So if there's an issue with DF or DT (or both) where it takes more memory than it should (or maybe if there's a way to adjust how much memory it claims on startup?), please let me know. I did attempt to look at memory usage during the issue, and while my memory (and processor) usage during was high, it wasn't maxing out. I'm out of ideas on what needs to change to fix it, hence the last resort downgrading potentially this weekend.is this happening only with a particular fort? if so, upload the fort so i can take a look in more detail.
New update after 302 days! Awesome, this is just in time to put in my final pack for 40.24 :DSure, rub it in! Thanks for the release warning so I could get my shit together ;D
When the new stuff will be implemented from the latest version of DF ? ;DDwarf Therapist uses a lot of the same memory mapping assets as DFHack, though not all of them. I would expect a new Dwarf Therapist to be feasible at roughly the same time a new DFHack becomes feasible, but each utility has its own unique !!FUN!! bits that can randomize the release times.
I'll try to get a version up with new skills/professions/labours ASAP (still reliant on df-structures), and then see about other features.When the new stuff will be implemented from the latest version of DF ? ;DDwarf Therapist uses a lot of the same memory mapping assets as DFHack, though not all of them. I would expect a new Dwarf Therapist to be feasible at roughly the same time a new DFHack becomes feasible, but each utility has its own unique !!FUN!! bits that can randomize the release times.
splinterz, are you planning to release-as-soon-as-possible the current DT for 0.42, or are you going to take it offline until the new 0.42 features can be addressed? I can respect either direction, just curious.
Before I knew Therapist existed my life was a living hell.1+
I also put my thanks in for continued work on this necessary tool. Long term Dorf management isn't really possible without it.
Is there some sort of option you could implement that can be selected so that it is not so easy to work out who the Vampires or Werecreatures are in Dwarf Therapist?DT already hides or changes some cursed creature attributes like names, jobs, etc. I could see about changing this for kills as well but... doesn't DF itself show the actual kills? I mean isn't that how most players identify vampires anyway? I suppose it is more obviously in DT with the gridview..
It kinda ruins the whole *FUN* of working out who the vampire might be when the dwarf's true kill number shows up in the military tab...
Could Dwarf Therapist check for immense kill numbers and hide them somehow, tracking only the kills in the line of duty in the current fortress?
There are a bunch of (non-cheaty) ways to assess vampire candidates but I've not heard of the kill list being used.Ok then I'll have to take a look and see if I can determine what they show for the kill list (maybe the assumed identity?). So if anyone has a suitable save with a vampire send it my way!
From the Wiki (under kill_list):
"Note that vampires will arrive at your fortress in disguise, and will not have their (usually extensive) kill list attached."
Good to hide it in DT if easy to do...
Hey when I download from the link in th first post my Panda antivirus flips out and says the .exe is infected with w32/exploit.genLike jaked122 said, it's a false-positive. I mean, DFHack is impersonating a DLL and manipulating memory, so it's malware by any technical definition. Antivirus tools come to accept it after enough users explicitly trust the executable.
Is anyone else having this problem?
An initial version (windows/linux) has been put up where most things should probably work and not explode. (https://github.com/splintermind/Dwarf-Therapist/releases)
I haven't had a chance to thoroughly test everything, but the basics like labors, professions, nicknames, etc. seem to be fine. Health issues, syndromes, thoughts and preferences may be messed up and haven't been completely verified. The new job stuff works completely different, so things like 'Worship!' will show as 'No Job' for now.
If you have any issues or notice any weirdness let me know and/or upload a save.
9 cheers for splinterz!shouldnt it be 12 then
(it would have been three but splinterz is quadratically awesome)
Is it just dwarves for now, or will fort members of other races show up too?I don't think it'll show other races... I haven't actually been able to play the new version at all yet, so if anyone has a save with different races, upload it for testing please.
2015-Dec-08 12:32:17.060 INFO core read 13 units in 27 ms [src/dfinstance.cpp:384] (load_dwarves)
2015-Dec-08 12:32:17.061 INFO core loaded population data in 1 ms [src/dfinstance.cpp:395] (load_dwarves)
2015-Dec-08 12:32:17.069 INFO core calculated roles in 8 ms [src/dfinstance.cpp:399] (load_dwarves)
2015-Dec-08 12:32:17.071 INFO core found 13 dwarves out of 54 creatures [src/dfinstance.cpp:413] (load_dwarves)
2015-Dec-08 12:32:17.073 INFO core completed read in 73 ms [src/mainwindow.cpp:584] (read_dwarves)
quadratic equations deal with squares, so no:9 cheers for splinterz!shouldnt it be 12 then
(it would have been three but splinterz is quadratically awesome)
quadratic equations deal with squares, so no9 cheers for splinterz!shouldnt it be 12 then
(it would have been three but splinterz is quadratically awesome)
An initial version (windows/linux) has been put up where most things should probably work and not explode. (https://github.com/splintermind/Dwarf-Therapist/releases)Thank you! :D
I have a fortress with a human here: http://dffd.bay12games.com/file.php?id=11424Is it just dwarves for now, or will fort members of other races show up too?I don't think it'll show other races... I haven't actually been able to play the new version at all yet, so if anyone has a save with different races, upload it for testing please.
Btw, pretty much all weapon preferences are being listed as "whips."
Thanks for all your hard work, Splinterz, and let us know if there's anything we can do to help that won't require us to know things about memory, etc.
An initial version (windows/linux) has been put up where most things should probably work and not explode. (https://github.com/splintermind/Dwarf-Therapist/releases)
I haven't had a chance to thoroughly test everything, but the basics like labors, professions, nicknames, etc. seem to be fine. Health issues, syndromes, thoughts and preferences may be messed up and haven't been completely verified. The new job stuff works completely different, so things like 'Worship!' will show as 'No Job' for now.
If you have any issues or notice any weirdness let me know and/or upload a save.
Great, thanks!I have a fortress with a human here: http://dffd.bay12games.com/file.php?id=11424Is it just dwarves for now, or will fort members of other races show up too?I don't think it'll show other races... I haven't actually been able to play the new version at all yet, so if anyone has a save with different races, upload it for testing please.
Btw, pretty much all weapon preferences are being listed as "whips."These kinds of reports are exactly what's needed for now. If it's possible to attach a save, even better.
Thanks for all your hard work, Splinterz, and let us know if there's anything we can do to help that won't require us to know things about memory, etc.
ETA: Bucklers are also being listed as shields.
Can the resident only dwarves be removed from the labor list and resident other races separated from the animals?The new features from this release will take time to discover and adjust DT to. Again I haven't had time to play the game since the update, so any details about how residency works and save files are very welcome.
Currently will the residents work if you assign labors to them? (cheat?)
Here's an untested OS X layout: https://gist.github.com/lethosor/40f04de30b8800751e13
These kinds of reports are exactly what's needed for now. If it's possible to attach a save, even better.
Are dwarves supposed to have some musical skills on embark?I've seen that they do, in 42.02, especially in worlds with very long histories.
Quietust identified a syndrome structure change, so I've updated the OS X layout here: https://gist.github.com/lethosor/40f04de30b8800751e13I pulled the changes and compared them and the windows/linux offsets are ok.
Windows and Linux layouts probably still have issues with syndromes, although it'll probably just result in strange output rather than crashes.
Using the 'Optimization' feature keeps crashing Therapist. At first I didn't get how it worked - I had an empty job list and clicking 'Optimize' or 'Test' several times crashed the program. Later when I did put in a number of jobs, it sometimes crashed after clicking 'Edit Plan'. This is with v.33.0 and DF 42.02.Can you also attach your optimization plan? I may also need your save if I still can't reproduce it from that.
And also props for this feature. It's going to be massively helpful.
The Exception Offset from the second log is the same in 3 other instances.Spoiler (click to show/hide)Spoiler (click to show/hide)
It works! Thanks for packaging it up like that- I've never had any luck building programs manually, and Dwarf Therapist was no exception.Here's an untested OS X layout: https://gist.github.com/lethosor/40f04de30b8800751e13 (https://gist.github.com/lethosor/40f04de30b8800751e13)
Thx. Hey everyone, let's test it together!
[OSX]Dwarf Therapist 33.0 (http://dffd.bay12games.com/file.php?id=11428) preliminary version for 42.02
If you grab that top toolbar (with the group by.. filter..) and move it below the buttons toolbar (connect.. read..), does it allow you to resize the window?It works! Thanks for packaging it up like that- I've never had any luck building programs manually, and Dwarf Therapist was no exception.Here's an untested OS X layout: https://gist.github.com/lethosor/40f04de30b8800751e13 (https://gist.github.com/lethosor/40f04de30b8800751e13)
Thx. Hey everyone, let's test it together!
[OSX]Dwarf Therapist 33.0 (http://dffd.bay12games.com/file.php?id=11428) preliminary version for 42.02
One bug I found very quickly: The main DT window, when it appears on first load, is quite a bit wider than my screen. I can scale it down somewhat, but not enough for the entire window to fit.
(http://imgur.com/cp6GmjG)
(if the image is broken, right-clicking it and telling your browser to open it in another tab should work)
If I try to shrink the window any farther, it just won't shrink. It appears to be capped at the width (partially) shown in that screenshot. I can expand it again just fine, but it still won't srink any farther than shown above.
Also, a similar thing happens with the Options menu, except the menus with a lot of entries go way off the bottom of the screen, rather than the side, and there's no way to scroll that I've found.
I'm running OSX El Capitan version 10.11.2 on a Macbook Pro with a Retina display. Probably relevant.
Could it be possible to view guests/visitors in future with Therapist?It's certainly possible. I have some ideas for different unit displays...
sorry if I use wrong thread.
Could it be possible to view guests/visitors in future with Therapist?It's certainly possible. I have some ideas for different unit displays...
sorry if I use wrong thread.
For now though, does anyone know the intricacies of the residency petitions and citizenship? Do they allow you to set labors on such units? Do other dwarves petition or is it only other races?
Hope this was not previously posted, I did try using both google and the forum searches to look for this. Anyway, here goes...No such feature currently exists in DT. It may be possible though..
Love the program, but I'd like to make a suggestion (one I hope I'm not missing in the utility already!):
Set it up, or give the option to setup an Excel-like "freeze panes" setting. Meaning when scrolling either horizontally or vertically the first column and first row will always stay frozen in view.
To those not used to spreadsheets and wondering exactly what I mean, fire up excel, put some titles in both column A and Row 1. Then throw some data out in that table. Next click on cell B2, and then click "Freeze Panes" from within the menus. From there when scrolling the columns and rows will slide up under both Row 1 and Column A, letting you more easily see what your data means. Or better yet, I just went and found this youtube video which displays my thoughts much better! :)
https://www.youtube.com/watch?v=yb7s7XIj6o8 (https://www.youtube.com/watch?v=yb7s7XIj6o8)
Again, I apologize if this is in and I'm being a dummy and can't figure it out. I'd appreciate any help there if true.
Might be a stupid question, but I can't find what to grab it by. Some parts of the toolbar area drag the whole window around; some (such as right on top of a button or label) don't.If you grab that top toolbar (with the group by.. filter..) and move it below the buttons toolbar (connect.. read..), does it allow you to resize the window?It works! Thanks for packaging it up like that- I've never had any luck building programs manually, and Dwarf Therapist was no exception.Here's an untested OS X layout: https://gist.github.com/lethosor/40f04de30b8800751e13 (https://gist.github.com/lethosor/40f04de30b8800751e13)
Thx. Hey everyone, let's test it together!
[OSX]Dwarf Therapist 33.0 (http://dffd.bay12games.com/file.php?id=11428) preliminary version for 42.02
One bug I found very quickly: The main DT window, when it appears on first load, is quite a bit wider than my screen. I can scale it down somewhat, but not enough for the entire window to fit.
(http://imgur.com/cp6GmjG)
(if the image is broken, right-clicking it and telling your browser to open it in another tab should work)
If I try to shrink the window any farther, it just won't shrink. It appears to be capped at the width (partially) shown in that screenshot. I can expand it again just fine, but it still won't srink any farther than shown above.
Also, a similar thing happens with the Options menu, except the menus with a lot of entries go way off the bottom of the screen, rather than the side, and there's no way to scroll that I've found.
I'm running OSX El Capitan version 10.11.2 on a Macbook Pro with a Retina display. Probably relevant.
Hrmm that's true, in your screenshot, it doesn't show a grippable area (normally it's just to the left of 'Group By'). The other toolbar should also be movable as well (grip area just to the left of 'Connect').Might be a stupid question, but I can't find what to grab it by. Some parts of the toolbar area drag the whole window around; some (such as right on top of a button or label) don't.If you grab that top toolbar (with the group by.. filter..) and move it below the buttons toolbar (connect.. read..), does it allow you to resize the window?It works! Thanks for packaging it up like that- I've never had any luck building programs manually, and Dwarf Therapist was no exception.Here's an untested OS X layout: https://gist.github.com/lethosor/40f04de30b8800751e13 (https://gist.github.com/lethosor/40f04de30b8800751e13)
Thx. Hey everyone, let's test it together!
[OSX]Dwarf Therapist 33.0 (http://dffd.bay12games.com/file.php?id=11428) preliminary version for 42.02
One bug I found very quickly: The main DT window, when it appears on first load, is quite a bit wider than my screen. I can scale it down somewhat, but not enough for the entire window to fit.
(http://imgur.com/cp6GmjG)
(if the image is broken, right-clicking it and telling your browser to open it in another tab should work)
If I try to shrink the window any farther, it just won't shrink. It appears to be capped at the width (partially) shown in that screenshot. I can expand it again just fine, but it still won't srink any farther than shown above.
Also, a similar thing happens with the Options menu, except the menus with a lot of entries go way off the bottom of the screen, rather than the side, and there's no way to scroll that I've found.
I'm running OSX El Capitan version 10.11.2 on a Macbook Pro with a Retina display. Probably relevant.
Nonetheless, I think you've nailed the cause of that particular problem. Unchecking "Show Toolbar Text" in the options to hide the labels under some of the buttons in the toolbar does allow me to shrink the window a little farther, but not enough to fit entirely on my screen.
A couple more very minor (don't bother with these if you've got more important stuff on your plate) quirks I've noticed:
If the program fails to connect to DF upon loading, for some reason (such as if I started DT before DF), clicking the Connect button again will instantly close DT, even if the problem has been resolved.
To reproduce: Open DT with DF not running, close the warning that appears, open DF, open up your fortress in DF, go back to DT, click "Connect to DF". DT exits with no obvious errors. Restart DT; everything's fine.
Not tested with the "Load Dwarves on Startup" option unchecked, but the same thing happens if I click Refresh then Connect after closing DF.
Also, when I move my mouse downward on the main grid screen, it leaves behind a thin blue line whenever the highlight border thingy moves to the next row. When I move my mouse upward, on the other hand, it clears any residual line that may have already been there. Curiously, neither of these happen when I move my mouse fast enough that the rows in question get skipped due to the program's refresh rate. It seems that the line is only placed or removed when two adjacent rows in the table are highlighted, one after the other.
Scrolling to move the blue lines off the top or bottom of the screen also clears them.
See here:
(http://i.imgur.com/PnjtO7v.png)
<deleted text>No such feature currently exists in DT. It may be possible though..
Set it up, or give the option to setup an Excel-like "freeze panes" setting. Meaning when scrolling either horizontally or vertically the first column and first row will always stay frozen in view.
<deleted text>
Again, I apologize if this is in and I'm being a dummy and can't figure it out. I'd appreciate any help there if true.
I caught the whim to dive into a fortress again, and decided to take a peek and see if anything had been updated. Lo and behold, new release! Hooray! Cue download > install > configure > time to get the new dwarf therapist
And then confusion because DT is not working, it is yelling at me about wrong versions! So, go back and read the DT thread -- no, everyone else is fine, maybe it's just me. Double check -- no, I've got the newest one.
Then I go and take a look at the actual DF version, and realize that my 'random whim to play Dwarf Fortress' happens to be on the day the newest bug patch came out and you hadn't had a chance to catch up quite yet.
Oops.
Now I have a quandary. Do I do without, something I haven't done for YEARS because it makes me twitchy and impatient, or do I downgrade DF and deal with possible bugs and crashes. Hmmmmm.
Really, though -- I can't remember if I've said it or not before, but thank you for keeping Therapist going! Other than a slightly customized font, this is the only thing I use to change the game at all. I may have to delay my playing until DT is updated, because of said twitchiness and impatience. ¬.¬
Personally I think it's a good idea, I just don't know how difficult it would be to implement (ie. the widgets don't do that sort of thing out of the box)<deleted text>No such feature currently exists in DT. It may be possible though..
Set it up, or give the option to setup an Excel-like "freeze panes" setting. Meaning when scrolling either horizontally or vertically the first column and first row will always stay frozen in view.
<deleted text>
Again, I apologize if this is in and I'm being a dummy and can't figure it out. I'd appreciate any help there if true.
Thanks for the reply, at least I know I'm not missing anything (about that topic at least.)
Has this been updated to 42.03 yet?I don't believe so. There's generally a post here when that happens.
I suppose we shall have to wait then. Dwarf Therapist is one of those tools that makes the game less tedious and more enjoyable for many players.*nodnods* Agreed.
there appears to be no way to know an animal's sexuality in the game itself
I'm still working on bugfixes and other tweaks and updates, but for now the layouts from here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts) should work with the current version:
windows 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/windows/v0.42.03_graphics.ini)
linux 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/linux/v042.03.ini)
Just place them in your Dwarf Therapists /share/memory_layouts/your_OS
I'm still working on bugfixes and other tweaks and updates, but for now the layouts from here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts) should work with the current version:
windows 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/windows/v0.42.03_graphics.ini)
linux 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/linux/v042.03.ini)
Just place them in your Dwarf Therapists /share/memory_layouts/your_OS
I'm still working on bugfixes and other tweaks and updates, but for now the layouts from here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts) should work with the current version:
windows 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/windows/v0.42.03_graphics.ini)
linux 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/linux/v042.03.ini)
Just place them in your Dwarf Therapists /share/memory_layouts/your_OS
Am I an idiot, or is this missing the .exe file?
Hmm... I'm not very techy. Maybe I'm just a bit too shit to fix Dwarf Therapist for 42.03. Hum.
Right click -> Save Link As -> Save to the folder indicatedAh, this was much easier than what I was trying to do. Thank you! It worked.
I'm still working on bugfixes and other tweaks and updates, but for now the layouts from here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts) should work with the current version:
windows 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/windows/v0.42.03_graphics.ini)
linux 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/linux/v042.03.ini)
Just place them in your Dwarf Therapists /share/memory_layouts/your_OS
No Linux love? :-\
You already do this for the column headers. Can't you do the same for the rows? Or is that a special out of the box widget?Personally I think it's a good idea, I just don't know how difficult it would be to implement (ie. the widgets don't do that sort of thing out of the box)<deleted text>No such feature currently exists in DT. It may be possible though..
Set it up, or give the option to setup an Excel-like "freeze panes" setting. Meaning when scrolling either horizontally or vertically the first column and first row will always stay frozen in view.
<deleted text>
Again, I apologize if this is in and I'm being a dummy and can't figure it out. I'd appreciate any help there if true.
Thanks for the reply, at least I know I'm not missing anything (about that topic at least.)
I'm still working on bugfixes and other tweaks and updates, but for now the layouts from here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts) should work with the current version:
windows 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/windows/v0.42.03_graphics.ini)
linux 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/linux/v042.03.ini)
Just place them in your Dwarf Therapists /share/memory_layouts/your_OS
How do we map it for our Macs? Is this still the process? https://code.google.com/p/dwarftherapist/wiki/MappingNewVersions
I'm still working on bugfixes and other tweaks and updates, but for now the layouts from here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts) should work with the current version:
windows 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/windows/v0.42.03_graphics.ini)
linux 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/linux/v042.03.ini)
Just place them in your Dwarf Therapists /share/memory_layouts/your_OS
It requires DFHack, which isn't usable with .03 yet. I'll upload a layout once it is, or see if I can figure out what the change from the last version is if it's a constant change.
Maybe I'm just dumb and I can't find it, but where are the "musician", "singer" and "dancer" abilities?
It requires DFHack, which isn't usable with .03 yet. I'll upload a layout once it is, or see if I can figure out what the change from the last version is if it's a constant change.
I am looking forward to that. I am getting really tired of investigating and changing labours with vpl&c. Building a military without DT is a pain.
I'm still working on bugfixes and other tweaks and updates, but for now the layouts from here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts) should work with the current version:
windows 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/windows/v0.42.03_graphics.ini)
linux 42.03 raw file (https://raw.githubusercontent.com/splintermind/Dwarf-Therapist/DF2016/share/memory_layouts/linux/v042.03.ini)
Just place them in your Dwarf Therapists /share/memory_layouts/your_OS
It's been posted just above your comment.No, it hasn't. larkvi is referring to OS X layouts, which do require DFHack.
Will this ever be updated for 42.03?read the above comments. The layouts for windows and linux are literally 3 posts above yours.
Right click -> Save Link As -> Save to the folder indicated
I had the same issue because I saved it as a .txt instead of a .ini Just check the extension is good.
The layouts for windows and linux are literally 3 posts above yours.What does that mean?
It means that when he asked "is this ever going to be updated to work with 42.03", just 3 posts before that someone had posted the layouts for 42.03. Putting that file in your dwarf therapist folder makes it work with 42.03The layouts for windows and linux are literally 3 posts above yours.What does that mean?
Could professions also be able to be put into subgroups groups instead of just being sorted by alphabetical order?You mean something like this? (http://dwarffortresswiki.org/index.php/DF2014:Labor#Labor.2C_Skill.2C_and_product_quality) Nothing is setup at the moment to allow groups within groups, but it's possible.
Being able to group all the smiths together and other professions that are similar would be great.
Could it be possible to look my citizens skill progress (even with graph)?Create a gridview of skills, and export it to csv.
With using internal snaphot to compare (or from save file for the game launched).
Or at least make possiblity to export(store) with snapshot such data like for labors to csv.
dwarf_name;brewer_skill;axe_skill and so on.
You mean something like this? (http://dwarffortresswiki.org/index.php/DF2014:Labor#Labor.2C_Skill.2C_and_product_quality) Nothing is setup at the moment to allow groups within groups, but it's possible.Yea pretty much that, the option to customize them would also great.
The layouts for windows and linux are literally 3 posts above yours.What does that mean?
[info]
checksum=0x566c7776
version_name=v0.42.03 (graphics)
complete=true
[addresses]
cur_year_tick=0x0134a218
current_year=0x0137c374
dwarf_civ_index=0x01976030
dwarf_race_index=0x0197603c
Eh.. I'm still having trouble making the .ini file. I'll just wait it out I guess. Sorry to be a bother, I know folks figure it's easy peasy.
edit: the post I was replying to seems to have disappeared or something, or I'm going crazy.
42_03 Therapist needs sorting methods. I can't sort by migrant waves at the moment DXI just grouped by migration wave and it seemed to work fine. Can you elaborate on the problem you're experiencing? Linux or windows?
I downloaded the v0.42.03_graphics file into my memory_layouts/windows folder, but I'm still getting the error that says, "I'm sorry but I don't know how to talk to this version of Dwarf Fortress. Supported versions 0.42.02 and 0.42.01." Not entirely sure what I'm doing wrong here ...Check the file extension, it should be .ini. Windows is notorious for appending .txt extension to text files, making them appear as somefile.ini.txt, which might be the cause of your troubles.
[OSX]Dwarf Therapist 33.0 (http://dffd.bay12games.com/file.php?id=11428) for 0.42.02-0.42.03Yay! Thank you!
First of all, thank you for the work you do.I will be replacing the obsolete built-in 'Social' view with a 'Skills' view at some point.
With the addition of performance skills and scholars would it be at all possible to add a couple new panes that contain performance skill and scholar skill information? Like the current social and military skill panes (sorry if that isn't what it is called, I'm talking about the grid).
Right now, unless I'm missing something, you need to scroll over each dwarf to see if they have scholar or performance skills. It would be nice if you could view this information. I suggest not lumping it with social or any category like that since these skills are specific to the zone occupations.
First of all, thank you for the work you do.I will be replacing the obsolete default 'Social' view with a 'Skills' view at some point. For now, you can create this view yourself, the skill columns should be available to add to a new gridview.
With the addition of performance skills and scholars would it be at all possible to add a couple new panes that contain performance skill and scholar skill information? Like the current social and military skill panes (sorry if that isn't what it is called, I'm talking about the grid).
Right now, unless I'm missing something, you need to scroll over each dwarf to see if they have scholar or performance skills. It would be nice if you could view this information. I suggest not lumping it with social or any category like that since these skills are specific to the zone occupations.
How does one get this working for linux?
My computer got melted like my fort did by a dragon the other day, laptop runs better with linux then did with windows.
(sudo) make install
as per BUILDING.rst and run as usual
I had no idea it was so terrible to get therapist running on linux, I had the same question. Well, guess it is adventure mode only for this guy.Its is pretty hard if you don't know linux at all, Though it does have its benefits. Linux one is pretty much updated with the lastest features because of compiling it.
Hey Splinterz,
Long time, no see. ;)
Your title on DFFD says Dwarf Therapist - v.33.0 WINDOWS (DF 42.01) , title of the thread says for 42.02, and newest DF release is 42.03. Which one is it? (Edit: downloaded, tested, it is 42.02. Edit2: Found the memory layout for 42.03, works. :) Internet is super slow here, sorry that I did not check the thread sooner.)
And do you by any chance still have the source of the VisualBasic UI for Masterwork DF? I had a copy on my harddrive, but I've been robbed, its among the things gone.
I did notice something else though. I have a rather high resolution on my laptop and therapist looks a bit weird. The columns are too small and close together to make them comfortable to read. See for yourself, it is with 3840x2160 pixels:Spoiler (click to show/hide)
I did notice something else though. I have a rather high resolution on my laptop and therapist looks a bit weird. The columns are too small and close together to make them comfortable to read. See for yourself, it is with 3840x2160 pixels:Spoiler (click to show/hide)
the memory scan functionThat sounds like what I was describing, only automated.
You can drop in v0.42.03_graphics.ini which is available in the past couple of pages of posts, somewhere. It works. I wish someone had done it for 42.04, because the memory scan function seems to have vanished from DT. Oh well, presumably DF will stabilize in a few months, and then DT and DH will catch up completely. ;)
It was there in August of 2014 but gone in February of 2015. I didn't need it during that interval, so I never noticed it had left.You can drop in v0.42.03_graphics.ini which is available in the past couple of pages of posts, somewhere. It works. I wish someone had done it for 42.04, because the memory scan function seems to have vanished from DT. Oh well, presumably DF will stabilize in a few months, and then DT and DH will catch up completely. ;)
The scan function has been gone for a while, I think.
I've released a new version for 42.04. Using this version for earlier DF versions may cause issues, so I'd advise against that for now. If anything explodes please let me know and/or post a save.
I've released a new version for 42.04. Using this version for earlier DF versions may cause issues, so I'd advise against that for now. If anything explodes please let me know and/or post a save.Thx Splinterz!
That layout is missing addresses and may cause crashes. The updated lua script is here. (https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/scripts/export-dt-ini.lua)I've released a new version for 42.04. Using this version for earlier DF versions may cause issues, so I'd advise against that for now. If anything explodes please let me know and/or post a save.Thx Splinterz!
[OSX]Dwarf Therapist 34.0 (http://dffd.bay12games.com/file.php?id=11579) for 0.42.04
/snipThat's problematic: the layout exported with the new script (latest dev version dfhack, compiled with 3571978 (https://github.com/DFHack/df-structures/commit/357197817bf05677ff51287b3015e1621f4c0888)) crashes upon startup after reading cur_year. Lethosor's earlier layout loads with the same DT build.
That layout is missing addresses and may cause crashes. The updated lua script is here. (https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/scripts/export-dt-ini.lua)
Then the issue is with the newly added addresses for occupations, activities and squads. Can you post the DT log running it with the -debug flag?/snipThat's problematic: the layout exported with the new script (latest dev version dfhack, compiled with 3571978 (https://github.com/DFHack/df-structures/commit/357197817bf05677ff51287b3015e1621f4c0888)) crashes upon startup after reading cur_year. Lethosor's earlier layout loads with the same DT build.
That layout is missing addresses and may cause crashes. The updated lua script is here. (https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/scripts/export-dt-ini.lua)Crashlog is (http://pastebin.com/RQ0MWi5L) on pastebin, I sent a pull with the layout in question.Spoiler: dt log (click to show/hide)
Then the issue is with the newly added addresses for occupations, activities and squads. Can you post the DT log running it with the -debug flag?Note: -debug flag still doesn't work on osx. I turned on debugging by editing line 147 in dwarftherapist.cpp. Let me know if it's problematic for some reason.
Then the issue is with the newly added addresses for occupations, activities and squads. Can you post the DT log running it with the -debug flag?This causes the crash in line 370 (https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/share/memory_layouts/osx/v0.42.04_osx.ini#L370):
participants=0x002c
In response to somebody's comment about Therapist's ability to identify a dwarf's highest mood skill, I decided to take a look at its logic and it turns out to be slightly incorrect - the game itself only considers the level of the skill (not the progress toward the next level), and if the highest level encountered comprises multiple skills, it will randomly select one of them when the mood actually begins.Ok, that shouldn't be too hard to adjust, thanks for the info!
In response to somebody's comment about Therapist's ability to identify a dwarf's highest mood skill, I decided to take a look at its logic and it turns out to be slightly incorrect - the game itself only considers the level of the skill (not the progress toward the next level), and if the highest level encountered comprises multiple skills, it will randomly select one of them when the mood actually begins.Thanks! I've been wondering about that detail.
Should 35.0.0 work with 0.42.03, or is it 42.04-only?It should work with 42.03.
Thank you for all your hard work, Splinterz!
Am I correct that animal people members of your fortress aren't supported yet? Cause if they're supposed to be supported, I have a special case that's not working.I've only tested with humans, dwarves and elves. Please send the save my way so I can take a look.
Are there instructions around for how to get this working on a mac, so we do not have to wait for an official mac release?
I built this from HEAD just after the 35.0 release: (unofficial) DF 35.0 for OSX (http://dffd.bay12games.com/file.php?id=11613)
(To answer your actual question, download Qt Creator and open the dwarftherapist.pro file, and then build.)
A feature request: would it be possible, in optimization, to assign roles, rather than jobs? I would like to assign combinations of jobs in one go (e.g. Spinner/Gelder/Miller/Thresher); though I can sort by the role and have it assign one skill as a stand-in, I then need to go and manually assign the role.So you mean to assign labors the same way as when you click a role cell? That might be possible.. but I think it would be quite a bit of work to re-work the optimizer to handle it as it currently isn't setup for 'groups' of labors. I'd considered trying to modify it to allow adding superlabors but I haven't attempted it yet.
Hey Splinterz, here's the save with the slug men. http://dffd.bay12games.com/file.php?id=11638 They were wild, then trained, then petitioned for citizenship. Neither Therapist nor the default labors will let me set labors on them, but they've been hauling using wheelbarrows, so presumably they are using dwarf-alike labors.Well this is due to a couple things. First, it's a modded DF, and the PET_EXOTIC tag marks creatures as non-civilians (ie. no labors). DT was recently updated to check the PET, PET_EXOTIC tag to determine if a creature is livestock...
CAN_SPEAK and CAN_LEARN would both include Gremlins, and unless their behavior has changed from 0.40.24 (I don't know) they're not supposed to become citizens or work (but could become Count/Duke/Baron). Just something to consider of, so solving a mod case doesn't break an exceptional vanilla one.I think this would still be ok because they'd show up in DT, but you wouldn't be able to set labors on them until they became a fortress member via a citizenship petition.
If you try to take into account every possible modded scenario you'll probably start pulling your hair out.Yeah I know, but if changing the checked tag is sufficient then I'd prefer that over removing previously existing features.
Hey Splinterz, here's the save with the slug men. http://dffd.bay12games.com/file.php?id=11638 They were wild, then trained, then petitioned for citizenship. Neither Therapist nor the default labors will let me set labors on them, but they've been hauling using wheelbarrows, so presumably they are using dwarf-alike labors.Well this is due to a couple things. First, it's a modded DF, and the PET_EXOTIC tag marks creatures as non-civilians (ie. no labors). DT was recently updated to check the PET, PET_EXOTIC tag to determine if a creature is livestock...
I may be able to get around this by checking a different tag to determine if a creature is livestock.. maybe CAN_SPEAK or CAN_LEARN instead.
does the newest version of DT (for 42.04) identify the non-job jobs--Socialize, Pray, Meditate, etc?
does the newest version of DT (for 42.04) identify the non-job jobs--Socialize, Pray, Meditate, etc?v35 should show the performance and other activities as well as squad training and orders.
I love seeing all the dwarves in a new wave of migrants as soon as I do a read after they're announced and before they straggle onto the map. It's nice to not have to watch and wait for them all to arrive when I've got other stuff I need to pay attention to, and it's nice to be able to just start sorting them without waiting.Yeah looks like the check for incoming migrants isn't being done for livestock, thanks for the info.
However, the animals that come with the wave don't show up in DT until they arrive on the map. I suspect this is just an oversight and will probably be pretty easy to fix, so I'm just letting you know. If it turns out to be a lot of effort, it's not a real high priority as far as I'm concerned.
Thanks again for all the work you've done on this, Splinterz.
Hi, I got a problem wiith some dwarfs with veeery long descriptions, that almost doesn't fit in my screen (1920x1080)Some of the tooltip options can help reduce the amount of text, and the 'Information' dock duplicates the tooltip text in a separate window.Spoiler (click to show/hide)
I was wondering if we could have also some new pop-up screen with this data (with something like ctrl+enter or in the right click menu), that let me copy&paste some of that info from the new window (?).
anyways, I really apreciate all your work and effort
thank you! =)
I've got a little confusion over skill names. I created a grid view with various scholarly skills, including one that shows up on the grid view as "Writing". I was just looking at the Dwarf Details pane for one of my dwarves, and he has a skill that is shown in that pane as "Writer", at level 5. But when I look at the Scholar grid, his Writing is only 1. Looking at the skills listed as being level 1 in the Dwarf Details, I see that Wordsmith is at 1, plus 2%. Hovering over the 1 for Writing in the grid, and it shows it to be 2.8% of the way to 2.Yeah those are two similar, but different skills which are weirdly named in DF: a Wordsmith uses the Writing skill, and a Writer uses the Prose skill.
So I looked in the grid view for a skill at level 5 for the dwarf, and I see Prose is at 5.
So I think what is called Wordsmith in Dwarf Details, is called Writing in the grid view, and what is called Writer in Dwarf Details is called Prose in the grid view. It's kinda confusing. Is it possible to get the same names in both places?
I never understood Dwarf Therapist on Linux: it spits out so many errors, seemingly abandons the qmake and make stuffs midway, gets a fatal error about some pdf file, but in the end, it works.
If someone were to ask me, "hey, what did you do to get DT working?" I'd most likely answer, I dunno! I have no idea what I did!
This thing thoroughly japes me at every release.
make clean
. It fixed a lot of errors that popped up the first time I compiled it on linux.
Try runningEh, if it ain't broken I sure as hell am not going to fix it.Code: [Select]make clean
. It fixed a lot of errors that popped up the first time I compiled it on linux.
I haven't tested what happens if I mark them for gelding using Therapist.Urist McGelder has been struck down.
Urist McGelder has been struck down.
Hey splinterz,Do you have a save with some of these animals I can take a look at?
Very minor bug report - I've noticed that Therapist doesn't disallow gelding for some giant ungeldable critters, including male giant adders and male giant rattlesnakes. I've confirmed in the raws and on the animal screen that they aren't geldable. I haven't tested what happens if I mark them for gelding using Therapist.
Hey splinterz,Do you have a save with some of these animals I can take a look at?
Very minor bug report - I've noticed that Therapist doesn't disallow gelding for some giant ungeldable critters, including male giant adders and male giant rattlesnakes. I've confirmed in the raws and on the animal screen that they aren't geldable. I haven't tested what happens if I mark them for gelding using Therapist.
Only a giant female hamster and weasel in that save.Hey splinterz,Do you have a save with some of these animals I can take a look at?
Very minor bug report - I've noticed that Therapist doesn't disallow gelding for some giant ungeldable critters, including male giant adders and male giant rattlesnakes. I've confirmed in the raws and on the animal screen that they aren't geldable. I haven't tested what happens if I mark them for gelding using Therapist.
I believe the giant adder was in that slug man save I gave you earlier. (Relink (http://dffd.bay12games.com/file.php?id=11638) for convenience). Let me know if it isn't and I can upload my current fort, which has the giant rattlesnake.
Here's the giant rattlesnake then: http://dffd.bay12games.com/file.php?id=11683Thanks. Should have it fixed for the upcoming release. Turns out creatures without a LOWERBODY tagged body part weren't being properly checked for gelding ::)
Is there a quick way to force DT to read an updated version of DF before an official update? I was able to do it once upon a time, but now it throws an error at me and crashes if I try to force it to read dwarves. I'm aware that there are limitations and risks when doing so, but I just like the DT ui for setting labors and looking at other dwarf stats, prefs, and condition.
Is there a quick way to force DT to read an updated version of DF before an official update? I was able to do it once upon a time, but now it throws an error at me and crashes if I try to force it to read dwarves. I'm aware that there are limitations and risks when doing so, but I just like the DT ui for setting labors and looking at other dwarf stats, prefs, and condition.
Version 36.0 is out to support 42.05 and otherwise is mostly bugfixes for the recently reported issues:
- livestock is determined by CAN_LEARN tag, which should allow for setting labor on modded intelligent creatures
- livestock incoming with a migration wave should appear now
- fixed audience job not showing for dances
- fixed gelding for creatures without LOWERBODY
I haven't had much time to test the CAN_LEARN and migrant livestock, so please let me know if creatures aren't showing up.
[OSX] Dwarf Therapist 36.0 (http://dffd.bay12games.com/file.php?id=11579)I'm seeing a repeat of the Labor cannot be changed for non-citizens (https://github.com/splintermind/Dwarf-Therapist/issues/287) issue I saw. Is this build working for anyone else?
EDIT: I should have refreshed the page first.I just checked the layout and there's at least one offset missing that's causing this, I'll let fricy know.[OSX] Dwarf Therapist 36.0 (http://dffd.bay12games.com/file.php?id=11579)I'm seeing a repeat of the Labor cannot be changed for non-citizens (https://github.com/splintermind/Dwarf-Therapist/issues/287) issue I saw. Is this build working for anyone else?
Fixed. Modified 0.42.05 ini is found here (https://github.com/fricy/Dwarf-Therapist/blob/DF2016/share/memory_layouts/osx/v0.42.05_osx.ini) for anyone wanting to do a manual update. The DFFD file is updated.EDIT: I should have refreshed the page first.I just checked the layout and there's at least one offset missing that's causing this, I'll let fricy know.[OSX] Dwarf Therapist 36.0 (http://dffd.bay12games.com/file.php?id=11579)I'm seeing a repeat of the Labor cannot be changed for non-citizens (https://github.com/splintermind/Dwarf-Therapist/issues/287) issue I saw. Is this build working for anyone else?
No it only supports .04-.05 and maybe .03. With all the bugs in DF 42.01-03 I'm not sure it's worth supporting.Fixed. Modified 0.42.05 ini is found here (https://github.com/fricy/Dwarf-Therapist/blob/DF2016/share/memory_layouts/osx/v0.42.05_osx.ini) for anyone wanting to do a manual update. The DFFD file is updated.EDIT: I should have refreshed the page first.I just checked the layout and there's at least one offset missing that's causing this, I'll let fricy know.[OSX] Dwarf Therapist 36.0 (http://dffd.bay12games.com/file.php?id=11579)I'm seeing a repeat of the Labor cannot be changed for non-citizens (https://github.com/splintermind/Dwarf-Therapist/issues/287) issue I saw. Is this build working for anyone else?
@splinterz: Just to confirm: DT 36.0 supports all 42.x release (except 42.01), and not just .04-.05, correct? So I can remove 33.0 (http://dffd.bay12games.com/file.php?id=11428) from DFFD?
With all the bugs in DF 42.01-03 I'm not sure it's worth supporting.Agreed. Though I'm sure if I remove it someone will pop-in and ask for it. ;D
The labors I assign to my dwarves are hauling for everyone, pump operating for all meleedwarves (pumps that don’t pump anything are a great physical training regimen), hunting for all marksdwarves, mining for all pickdwarves, and wood cutting for all axedwarves.Doesn't this cause uniform conflicts? Wood cutting doesn't even train axedwarf. (In addition, pumping isn't great training anymore, IIRC.)
Dwarves with crossbows elect to dole out physical punishment by beating dwarves with their crossbows, hence why they make good guards. Assuming you make your crossbows out of wood, this will have much less gruesome results then, say, hacking at the poor dwarf with a sword!They won't use swords for hammerings/beatings. I think they'll grab a spare hammer for hammerings. Will they still use a crossbow? It could be bad if your marksdwarf (skilled in hammering) goes and grabs
Would it be possible to expand the Experience value in a labor to show the full amount?
Right now it truncates the experience to things like "3.5k", which is not very helpful when a labor has a gain of other than 100 per labor.
Okay, so I gave up waiting for an official linux build, and attempted building it myself (on Linux Mint 17.3). The following are a few tips for anyone else trying to do likewise:
First off, it's not that hard.
Make sure you have the dependencies listed here (https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/BUILDING.rst). You may also need to install g++ for the compilation, and pdflatex (from texlive-latex-base) which I think qmake tries to use to produce documentation.
Part way through the build, make may start generating gazillions of missing .sty file errors. These are just latex packages it wants for the documentation; you can safely hit X to abort all this.
Once it's finished, the executables should be on your path (although it might depend on what you passed in as the PREFIX value). Run the dwarftherapist wrapper at least once before running DwarfTherapist directly as it will give you a couple of options for providing it with root access to the /proc/$pid/mem file of the Dwarf Fortress instance, otherwise it won't be able to attach.
And that's it.
PS: Oh yeah and, as people have mentioned above, if things go pear shaped, try make clean.
Just finished reading the entire manual. Some things that might be out of date:
It says on Page 57:QuoteThe labors I assign to my dwarves are hauling for everyone, pump operating for all meleedwarves (pumps that don’t pump anything are a great physical training regimen), hunting for all marksdwarves, mining for all pickdwarves, and wood cutting for all axedwarves.Doesn't this cause uniform conflicts? Wood cutting doesn't even train axedwarf. (In addition, pumping isn't great training anymore, IIRC.)
And on Page 58 (at the very bottom):QuoteDwarves with crossbows elect to dole out physical punishment by beating dwarves with their crossbows, hence why they make good guards. Assuming you make your crossbows out of wood, this will have much less gruesome results then, say, hacking at the poor dwarf with a sword!They won't use swords for hammerings/beatings. I think they'll grab a spare hammer for hammerings. Will they still use a crossbow? It could be bad if your marksdwarf (skilled in hammering) goes and grabsMaxwell'sa silver hammer and knocks the criminal's head off.
Okay, with that out of the way:
I haven't tried them yet, but optimization plans sound promising. From what I can glean from the manual, it works in proportions, but I didn't hear any mention of absolute values. Ideally what I'd want to be able to do is select a group of dwarves and have DT assign them to their optimal roles (including military and the new performers/scholars) based on their role fitness. I might want 0 fisherdwarves in my fort, 2 to 4 armorers (only 4 if they're all really fit to it,) and some large leftover percent of haulers that aren't fit for anything else (I might create a separate custom profession for those who have their moodable skill ready.) It sounds mostly doable already, with the exception of the absolute min/max laborers. The rest suffers a bit from a lack of research/presets, specifically on the new DF2016 professions.
anyone know if this current version works with the new version of DF?
Out of curiosity, what is memory layout? Are variables read by DT from DF unlabeled so that they have to be identified first?
Out of curiosity, what is memory layout? Are variables read by DT from DF unlabeled so that they have to be identified first?They're unlabeled and they move around each update. The layout tells DT where to find them. If the layout is wrong, DT reads in the wrong data and (in the best case*) crashes.
I do not understand why this still is not in the game.What in the world computer do you have that you don't get like 0.002 FPS with 200 dwarfs
It is essentially impossible to play a 200 dwarfs fortress without it.
can only stand playing them up to like 20 dwarves
So for now, I'm still sticking with .05 and letting .06 wait. As far as I'm concerned, .06 hasn't been released until Splinterz gives us a new memory layout. And since .06 hasn't been released yet, I'm not impatient.
Don't underestimate the power of Intel. ;-)I do not understand why this still is not in the game.What in the world computer do you have that you don't get like 0.002 FPS with 200 dwarfs
It is essentially impossible to play a 200 dwarfs fortress without it.
Pretty much bought a i7 6700K just for dwarf fortress. Can get it overclocked to 4.4 ghz with no problems.
AMD never liked to run that well.
https://dfhack.readthedocs.org/en/latest/library/xml/how-to-update.html
A post which was itself written for someone who already has the ability to read English. Sorry but sometimes it's not possible to make a task accessible to everyone... which is a shame.https://dfhack.readthedocs.org/en/latest/library/xml/how-to-update.html
As per normal, written for someone who already has a clue what they're doing.
now we just need a sorcerer who can read this infernal scripture that has been conjured for us.
https://dfhack.readthedocs.org/en/latest/library/xml/how-to-update.html
As per normal, written for someone who already has a clue what they're doing.
df-structures and forks github has been veeeery silent. I wonder if this version is more complex to disassemble than the last ones who usually were ready for testing a couple of days after release.
On a side note, that holiday has NOTHING to do with presidents.And I would have expected a three-day weekend to help with progress. It's not exactly family outing weather in most parts of the US right now (with the notable exception of skiing).
https://dfhack.readthedocs.org/en/latest/library/xml/how-to-update.html:-\
It's not possible on Windows, at all. Best just to wait for the official update, I think.Would it work on a virtual machine, or would that have complications to the memory offsets?
I try on a virtual PC and no matter update will be or not to be, already started to downloadIt's not possible on Windows, at all. Best just to wait for the official update, I think.Would it work on a virtual machine, or would that have complications to the memory offsets?
Retracted cause I am a jerk. But if you read the previous page you may find your answer...
Ok my new reply is still jerkish but cmon...
Retracted cause I am a jerk. But if you read the previous page you may find your answer...
Ok my new reply is still jerkish but cmon...
Yep you are still being a jerk, because you cannot expect people to read every damn page in a thread of dozens of pages now can you. Especially for threads like these you expect an updated OP.
The people who make these tools for free, for a game that is free, probably get sick of answering the same question over and over again (and then repeat for every DF update) when people could easily read a page or two backwards in the appropriate thread at the very least before posting.
Yep you are still being a jerk, because you cannot expect people to read every damn page in a thread of dozens of pages now can you. Especially for threads like these you expect an updated OP.
Okay the last words I'll waste on this before I drop the subject:
If I were developing this I'd put something in the OP for the newer players such as 'NOTE: This version is not compatible with the newest DF version number X, if you wish to use DT use DF version Y instead'
If you were a newbie following one of the tutorials which often tell you to use DT and you just downloaded the latest DF version in your ignorant bliss, carefully set up your first fort only to find out that DT doesn't work with it, that discourages this wonderful game.
But ok Ill drop it, good luck to the developer.
Okay the last words I'll waste on this before I drop the subject:
If I were developing this I'd put something in the OP for the newer players such as 'NOTE: This version is not compatible with the newest DF version number X, if you wish to use DT use DF version Y instead'
If you were a newbie following one of the tutorials which often tell you to use DT and you just downloaded the latest DF version in your ignorant bliss, carefully set up your first fort only to find out that DT doesn't work with it, that discourages this wonderful game.
But ok Ill drop it, good luck to the developer.
If you're a newbie, welcome! I recommend you consider the Lazy Newb Pack (http://www.bay12forums.com/smf/index.php?topic=126076.0), which bundles the latest release of the game for which there are stable utilities, in with those utilities, and includes a convenient GUI launcher to let you set your options.
Using Virtualbox is fine, if your hardware is good enough. gcc, lisp tool and even visual studio will not notice that they are in virtualised environment.
A lot of things changed in structures. Hopefully figured out all critical changes. It will not blowup immediatly, but cant guarantee it will not corrupt save later. Make backups. Report if it happened.
Save it as Dwarf-Therapist-WIN-36.0.0/share/memory_layouts/windows/v0.42.06_graphics.ini:Spoiler: v0.42.06 windows (click to show/hide)
In my case path was /usr/local/share/dwarftherapist/memory_layouts/linux/v042.06.iniSpoiler: v0.42.06 linux (click to show/hide)
Half the problem is its seen as a bit of a black art, ive queried previously about doing it and was pretty much told that if you dont know how then its pointless trying. How anyone learns with this sort of attitude is anyones guess. I guess another problem is requiring linux, im presuming that this is due to lack of tools for a windows environment. But anyway. Looks like sv-esk has saved the day. Thankyou for that ;-)
So....
I'm an utterly, complete noob in Linux. Started using Mint cinnamon 17.3 3 days ago, and so far, I've absolutely no idea how to build/compile/summon DT in Linux.
I've tried following the instructions on https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/BUILDING.rst, but after
sudo apt-get install qt4-qmake libqt4-dev # Qt 4
sudo apt-get install qt5-qmake qtbase5-dev qtbase5-dev-tools qtdeclarative5-dev # Qt 5
I've got stuck in qmake.
I didn't erase the # qtt 4 and 5 comments, but looks like it worked (copying and pasting in terminal, no idea what i was doing)
Can someone please point me to a linux ready to go linux version of DT, or, kindly teach me how to make it myself?
Yes, I'm way over my head... ???
DwarfTherapist
in the terminal
DwarfTherapist
in the terminalI've tried following the instructions on https://github.com/splintermind/Dwarf-Therapist/blob/DF2014/BUILDING.rst, but afterDF2014 - It also seems, you working with wrong branch. It shoud be DF2016.
git clone https://github.com/splintermind/Dwarf-Therapist.git
alternative(includes 42.06 layouts and small fix for new jobs):git clone https://github.com/sv-esk/Dwarf-Therapist.git -b 42_06
Move in Dwarf-Therapist directory:cd Dwarf-Therapist
Configure:qmake -qt=4
Build:make -j$(nproc)
Install:sudo make install
Or is it possible to 'downgrade' and play your save in an earlier version? I don't think so right?
make[1]: g++: Command not foundEssential compiling things are missing.
sudo apt-get install build-essential g++
Thank you for the help SV-ESK!
I've cloned the Dwarf Therapist folder, but then I got some errors:Not sure if I'm missing some library or some other application...Spoiler (click to show/hide)
Does anyone know why one of my dwarves' names is highlighted in red? She's my head doctor, but otherwise seems to have nothing special about her. I can't seem to find any documentation about highlighting and things, haha.
So trying to follow this, it's possible to get DF Therapist to work on Windows, for .42.06?It's already working. ;-)
Negative, cap'n... i've got a "cant talk, checksum error" thingSo trying to follow this, it's possible to get DF Therapist to work on Windows, for .42.06?It's already working. ;-)
Using Virtualbox is fine, if your hardware is good enough. gcc, lisp tool and even visual studio will not notice that they are in virtualised environment.
A lot of things changed in structures. Hopefully figured out all critical changes. It will not blowup immediatly, but cant guarantee it will not corrupt save later. Make backups. Report if it happened.
Save it as Dwarf-Therapist-WIN-36.0.0/share/memory_layouts/windows/v0.42.06_graphics.ini:Spoiler: v0.42.06 windows (click to show/hide)
In my case path was /usr/local/share/dwarftherapist/memory_layouts/linux/v042.06.iniSpoiler: v0.42.06 linux (click to show/hide)
sudo DwarfTherapist
This download fixes it for 42.06, are you using it?Using Virtualbox is fine, if your hardware is good enough. gcc, lisp tool and even visual studio will not notice that they are in virtualised environment.
A lot of things changed in structures. Hopefully figured out all critical changes. It will not blowup immediatly, but cant guarantee it will not corrupt save later. Make backups. Report if it happened.
Save it as Dwarf-Therapist-WIN-36.0.0/share/memory_layouts/windows/v0.42.06_graphics.ini:Spoiler: v0.42.06 windows (click to show/hide)
In my case path was /usr/local/share/dwarftherapist/memory_layouts/linux/v042.06.iniSpoiler: v0.42.06 linux (click to show/hide)
I just have a few questions to get my bearings regarding DT:1)I followed how-to-update.html (https://dfhack.readthedocs.org/en/latest/library/xml/how-to-update.html).
• I read earlier in the thread that DT is reliant on DFHack updating their memory layouts. If that is the case, how were you able to pull this code together before the DFHack devs?
• Does this code need more thorough testing before Splinterz is willing to post it as the v37.0 download? If so, is there a structured process that people go through to help Splinterz test?
• PeridexisErrant posted earlier that https://dfhack.readthedocs.org/en/latest/library/xml/how-to-update.html (https://dfhack.readthedocs.org/en/latest/library/xml/how-to-update.html) is how the utility devs update their memory layouts / programs for each new Dwarf Fortress release. Is the whole process best left to them, or is there any portion of it that non-devs can help out with?
Sadly the necessary skill level for most of the work updating is quite high. Only Quietust and Angavrilov can do the hard stuff.
Btw sv-esk, unless you've updated the 42.06 ini in the last few days, I noticed that my miners aren't changing to uniform-incomplete when they don't have picks.You are welcome. Did you checked it in 42.05? Its a DT bug. It assigns uniforms before reading labors. fix (https://github.com/sv-esk/Dwarf-Therapist/commit/5250b0749b5819940a37aae159ec9e0405c9b272).
Thanks so much for your hard work :)
I think that the latest version of Therapist might not be able to detect vampires in your current fort, specifically if they might be Goblin / Elf / Human as It seems someone is killing dwarves and at least they don't show up in Therapist.Upload your save and I'll take a look.
There's an possibility though that's the new Goblin citizens doing some of their evil stuff and I havent detected that part yet. Things are more complex now so hard to say.
Will test around a bit more and see.
I've updated the repo and the dffd links with a new version to support 42.06 with the layouts from sv-esk as well as the uniform fix and new jobs.This is awesome and I am gonna try it right away ! :D
- DF 42.06 memory layouts for windows and linux (sv-esk)
- added new jobs for crafting (sv-esk)
- added a global option to abbreviate experience and stress numbers
- added a rust description on the skill column information/tooltips
- fixed uniforms not displaying correctly for miners, woodcutters and hunters (sv-esk)
- fixed experience formatting
sudo add-apt-repository ppa:marian.kadanka/dwarf-therapist
sudo apt-get update; sudo apt-get install dwarf-therapist
No one managed to compile develop dfhack for the OS X so far?
Very briefly tested, since os x is not my primary os. Make beckups.In my case path was: /Applications/DwarfTherapist.app/Contents/MacOS/share/memory_layouts/osx/v0.42.06_osx.iniSpoiler: os x 0.42.06 offsets (click to show/hide)
Let us know if it's goblins, because that would be boss
I'm having some serious trouble with poor performance out of Dwarf Therapist. It starts with a surprising quarter-second or so delay in toggling jobs when you only have your seven dwarves all the way up to a second or more when you have 50+. I'm playing on OSX 10.11, is that known to be a problem? Does this happen on other platforms?
I've pulled down the github repo for DT to take a look at things. It's surprising to me that something relatively simple like toggling a few bits (not even committing the changes to DF) lags based on how many dwarves you have, so I'm planning on digging around a bit in the code to see what might be happening (C++ is not my native tongue, though). For all I know, it's a QT problem, not DT.
It doesn't sound normal (using Win10), I can toggle labors as fast as I could years ago.
Committing depends on the number of dwarves, it works reasonably fast for the first seven. Starting DT or even the LNP, on the other hand, has become very slow over the years.
No one managed to compile develop dfhack for the OS X so far?
Very briefly tested, since os x is not my primary os. Make beckups.In my case path was: /Applications/DwarfTherapist.app/Contents/MacOS/share/memory_layouts/osx/v0.42.06_osx.iniSpoiler: os x 0.42.06 offsets (click to show/hide)
I'm having some serious trouble with poor performance out of Dwarf Therapist. It starts with a surprising quarter-second or so delay in toggling jobs when you only have your seven dwarves all the way up to a second or more when you have 50+. I'm playing on OSX 10.11, is that known to be a problem? Does this happen on other platforms?
I've pulled down the github repo for DT to take a look at things. It's surprising to me that something relatively simple like toggling a few bits (not even committing the changes to DF) lags based on how many dwarves you have, so I'm planning on digging around a bit in the code to see what might be happening (C++ is not my native tongue, though). For all I know, it's a QT problem, not DT.
I too have serious 'lag/performance' issues on the OSX with DT. Definitely gets worse the more dwarfs I accumulate, taking 10-30secs to make a change.Same issue with Windows 7. Playing with 160+ dwarves.
How are you guys toggling labors when you notice delay/lag? Is it a specific way togging labors that you notice a delay (ie. columns, groups, individual cells, etc.)?I get a delay when reading dwarves, and any commit (regardless of number of changes.)
Is the delay when toggling the labors/cells, or when they're committed and a read is done?
Are there any warnings/errors in the log file? Would you mind uploading your save so I can take a look?How are you guys toggling labors when you notice delay/lag? Is it a specific way togging labors that you notice a delay (ie. columns, groups, individual cells, etc.)?I get a delay when reading dwarves, and any commit (regardless of number of changes.)
Is the delay when toggling the labors/cells, or when they're committed and a read is done?
Dragging the mouse across cells to select/deselect cells has never been particularly responsive, but that's a separate issue.
Are there any warnings/errors in the log file? Would you mind uploading your save so I can take a look?
2016-Mar-09 07:12:17.192 WARNING core vector at "0x018fed0c" has over 10.000 entries! ( 41897 ) [src\dfinstance.cpp:155] (check_vector)
There are also lots of entries like:2016-Mar-09 07:12:18.201 INFO core Ignoring id: 2714 name: "Unknown" who appears to be "Dead, Jim." flags: 67125250 [src\dwarf.cpp:269] (has_invalid_flags)
I'm beginning to suspect my dead units list might be partly to blame for the gradual deterioration of load time. Is it used for the purposes of kill lists?Thanks for the save, I'll run some tests. I think you may be right though; previously there weren't many units that required checking because they could be filtered based on the playable race. With the latest DF updates allowing multi-civ/races there's more to check.Are there any warnings/errors in the log file? Would you mind uploading your save so I can take a look?Code: [Select]2016-Mar-09 07:12:17.192 WARNING core vector at "0x018fed0c" has over 10.000 entries! ( 41897 ) [src\dfinstance.cpp:155] (check_vector)
There are also lots of entries like:Code: [Select]2016-Mar-09 07:12:18.201 INFO core Ignoring id: 2714 name: "Unknown" who appears to be "Dead, Jim." flags: 67125250 [src\dwarf.cpp:269] (has_invalid_flags)
I'm beginning to suspect my dead units list might be partly to blame for the gradual deterioration of load time. Is it used for the purposes of kill lists?
The delay time is spent Loading Units on commit.
Save+offsets: http://dffd.bay12games.com/file.php?id=11836
Offsets look fine, but that DT version is a few behind, so you might consider updating. I can't guarantee that will solve your lag issues though.Are there any warnings/errors in the log file? Would you mind uploading your save so I can take a look?Code: [Select]2016-Mar-09 07:12:17.192 WARNING core vector at "0x018fed0c" has over 10.000 entries! ( 41897 ) [src\dfinstance.cpp:155] (check_vector)
There are also lots of entries like:Code: [Select]2016-Mar-09 07:12:18.201 INFO core Ignoring id: 2714 name: "Unknown" who appears to be "Dead, Jim." flags: 67125250 [src\dwarf.cpp:269] (has_invalid_flags)
I'm beginning to suspect my dead units list might be partly to blame for the gradual deterioration of load time. Is it used for the purposes of kill lists?
The delay time is spent Loading Units on commit.
Save+offsets: http://dffd.bay12games.com/file.php?id=11836
I tested your save with both the latest DT and the version you specified, but it only takes ~4 seconds to refresh. Do you have a lot of custom roles/views?I have one hauling superlabor and a custom view that utilizes it and shows thirst. My computer might be getting a bit old (AMD FX-6100 Six-Core 3.3GHz).
I tested your save with both the latest DT and the version you specified, but it only takes ~4 seconds to refresh. Do you have a lot of custom roles/views?I have one hauling superlabor and a custom view that utilizes it and shows thirst. My computer might be getting a bit old (AMD FX-6100 Six-Core 3.3GHz).
Edit: Tried disabling anti-virus. Didn't help.
Is there a settings file somewhere I could share, or backup and try resetting? Only things I can think to note are that cell size is 15px and highest moodable skill highlighting is enabled.
%APPDATA%\UDP Software will have your Dwarf Therapist.ini that stores your settings
[General]
it_feels_like_the_first_time=false
[options]
colors\skill=@Variant(\0\0\0\x43\x1\xff\xff\xaa\xaa\xaa\xaa\xaa\xaa\0\0)
colors\active_labor=@Variant(\0\0\0\x43\x1\xff\xffxxxx\xb3\xb3\0\0)
colors\active_group=@Variant(\0\0\0\x43\x1\xff\xff\x33\x33\xff\xff\x33\x33\0\0)
colors\inactive_group=@Variant(\0\0\0\x43\x1 \0\0\0\0\0\0\0\0)
colors\partial_group=@Variant(\0\0\0\x43\x1``\0\0\0\0\0\0\0\0)
colors\guides=@Variant(\0\0\0\x43\x1\xff\xff\0\0\x99\x99\xff\xff\0\0)
colors\border=@Variant(\0\0\0\x43\x1\xff\xff\xd9\xd9\xd9\xd9\xd9\xd9\0\0)
colors\dirty_border=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\x66\x66\0\0\0\0)
colors\highest_mood_border=@Variant(\0\0\0\x43\x1\xff\xff\x32\x32\xcd\xcd\x32\x32\0\0)
colors\had_mood_border=@Variant(\0\0\0\x43\x1\xff\xffiiiiii\0\0)
colors\happiness\6=@Variant(\0\0\0\x43\x1\xff\xff\0\0\xff\xff\0\0\0\0)
colors\happiness\5=@Variant(\0\0\0\x43\x1\xff\xffqq\xcc\xcc\t\t\0\0)
colors\happiness\4=@Variant(\0\0\0\x43\x1\xff\xff\xdd\xdd\xdd\xdd\0\0\0\0)
colors\happiness\3=@Variant(\0\0\0\x43\x1\xff\xff\xe7\xe7\xe2\xe2\xab\xab\0\0)
colors\happiness\2=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\xaa\xaa\0\0\0\0)
colors\happiness\1=@Variant(\0\0\0\x43\x1\xff\xff\xcc\xcc\0\0\0\0\0\0)
colors\happiness\0=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\0\0\0\0\0\0)
colors\nobles\1=@Variant(\0\0\0\x43\x1\xb4\xb4\xff\xff\x99\x99\0\0\0\0)
colors\nobles\3=@Variant(\0\0\0\x43\x1\xb4\xb4\xff\xff\x99\x99\0\0\0\0)
colors\nobles\5=@Variant(\0\0\0\x43\x1\xb4\xb4\xff\xff\x99\x99\0\0\0\0)
colors\nobles\6=@Variant(\0\0\0\x43\x1\xff\xff\xed\xed\x43\x43SS\0\0)
colors\nobles\8=@Variant(\0\0\0\x43\x1\xb4\xb4JJ\x8f\x8f))\0\0)
colors\nobles\4=@Variant(\0\0\0\x43\x1\xb4\xb4JJ\x8f\x8f))\0\0)
colors\nobles\7=@Variant(\0\0\0\x43\x1\xb4\xb4\x85\x85\0\0\x83\x83\0\0)
colors\nobles\9=@Variant(\0\0\0\x43\x1\xb4\xb4\xff\xff\x99\x99\0\0\0\0)
colors\nobles\10=@Variant(\0\0\0\x43\x1\xb4\xb4\x18\x18uu\xff\xff\0\0)
colors\nobles\11=@Variant(\0\0\0\x43\x1\xb4\xb4\x85\x85\0\0\x83\x83\0\0)
colors\nobles\2=@Variant(\0\0\0\x43\x1\xb4\xb4\x85\x85\0\0\x83\x83\0\0)
colors\nobles\12=@Variant(\0\0\0\x43\x1\xb4\xb4\xff\xff\x99\x99\0\0\0\0)
colors\nobles\0=@Variant(\0\0\0\x43\x1\xb4\xb4ppttSS\0\0)
colors\cursed=@Variant(\0\0\0\x43\x1\xff\xff}}aa\xba\xba\0\0)
grid\skill_drawing_method=0
grid\cell_size=15
grid\cell_padding=0
grid\shade_column_headers=true
grid\shade_cells=true
grid\header_text_bottom=false
grid\font=@Variant(\0\0\0@\0\0\0\x10\0S\0\x65\0g\0o\0\x65\0 \0U\0I@ \0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
grid\header_font=@Variant(\0\0\0@\0\0\0\x10\0S\0\x65\0g\0o\0\x65\0 \0U\0I@\"\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
grid\happiness_icons=false
grid\color_mood_cells=true
grid\color_attribute_syns=true
grid\show_gender_icons=true
grid\color_health_cells=true
grid\show_labor_counts=true
grid\group_all_views=true
grid\scroll_all_views=true
grid\decorate_noble_names=false
read_on_startup=true
auto_contrast=true
show_aggregates=true
single_click_labor_changes=true
show_toolbutton_text=true
auto_expand_groups=false
show_full_dwarf_names=false
min_tooltip_skill_level=1
check_for_updates_on_startup=true
alert_on_lost_connection=false
allow_labor_cheats=false
hide_children_and_babies=false
use_generic_names=false
highlight_cursed=false
highlight_nobles=true
labor_exclusions=true
diagnosis_not_required=false
animal_health=false
tooltip_font=@Variant(\0\0\0@\0\0\0\x10\0S\0\x65\0g\0o\0\x65\0 \0U\0I@\"\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
main_font=@Variant(\0\0\0@\0\0\0\x10\0S\0\x65\0g\0o\0\x65\0 \0U\0I@\"\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
default_attributes_weight=0.25
default_skills_weight=1
default_traits_weight=0.2
default_prefs_weight=0.15
default_skill_rate_weight=0.25
default_attribute_potential_weight=0.5
role_count_tooltip=3
role_count_pane=10
show_custom_roles=false
show_roles_in_labor=true
show_roles_in_skills=true
tooltip_show_caste=true
tooltip_show_caste_desc=true
tooltip_show_happiness=true
tooltip_show_icons=true
tooltip_show_noble=true
tooltip_show_preferences=true
tooltip_show_traits=true
tooltip_show_profession=true
tooltip_show_roles=true
tooltip_show_skills=false
tooltip_show_artifact=true
tooltip_show_mood=true
tooltip_show_thoughts=true
tooltip_show_squad=true
tooltip_show_age=true
tooltip_show_size=true
tooltip_show_health=false
tooltip_health_colors=true
tooltip_health_symbols=false
tooltip_show_buffs=false
tooltip_show_kills=false
syndrome_display_type=0
colors\pending_color=@Variant(\0\0\0\x43\x1\xff\xff\xcb\xcb\xae\xae((\0\0)
colors\disabled_color=@Variant(\0\0\0\x43\x1}}\xbb\xbb\"\"\"\"\0\0)
grid\color_pref_matches=false
grid\show_tooltips=false
tooltip_show_orientation=false
tooltip_show_social_skills=true
tooltip_thought_weeks=1
[gui_options]
Labors%20Full_group_by=0
tab_order=Labors Full, Labors Custom, Military, Animals, Attributes, Roles, Traits, Health
Military_group_by=12
Social_group_by=0
Attributes_group_by=12
Roles_group_by=12
Animals_group_by=12
group_by=0
detailPanesSizes=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x6\0\0\0G\0\0\0G\0\0\0G\0\0\0G\0\0\0G\0\0\0G\x1\0\0\0\x5\x1\0\0\0\x2)
unit_detail_state=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x1\0\0\0\x2\0\0\an\0\0\0\x83\xfc\x2\0\0\0\x1\xfc\0\0\0\0\0\0\0\x83\0\0\0w\x1\0\0\x16\xfa\0\0\0\x1\x2\0\0\0\x6\xfb\0\0\0 \0\x64\0o\0\x63\0k\0_\0u\0n\0i\0t\0_\0s\0k\0i\0l\0l\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\0`\0\xff\xff\xff\xfb\0\0\0(\0\x64\0o\0\x63\0k\0_\0u\0n\0i\0t\0_\0\x61\0t\0t\0r\0i\0\x62\0u\0t\0\x65\0s\x1\0\0\0\0\xff\xff\xff\xff\0\0\0`\0\xff\xff\xff\xfb\0\0\0 \0\x64\0o\0\x63\0k\0_\0u\0n\0i\0t\0_\0t\0r\0\x61\0i\0t\0s\x1\0\0\0\0\xff\xff\xff\xff\0\0\0`\0\xff\xff\xff\xfb\0\0\0\x1e\0\x64\0o\0\x63\0k\0_\0u\0n\0i\0t\0_\0r\0o\0l\0\x65\0s\x1\0\0\0\0\xff\xff\xff\xff\0\0\0`\0\xff\xff\xff\xfb\0\0\0\x1e\0\x64\0o\0\x63\0k\0_\0u\0n\0i\0t\0_\0p\0r\0\x65\0\x66\0s\x1\0\0\0\0\xff\xff\xff\xff\0\0\0`\0\xff\xff\xff\xfb\0\0\0 \0\x64\0o\0\x63\0k\0_\0u\0n\0i\0t\0_\0h\0\x65\0\x61\0l\0t\0h\x1\0\0\0\0\xff\xff\xff\xff\0\0\0`\0\xff\xff\xff\0\0\an\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\0)
Health_group_by=12
Labors%20Compact_group_by=0
Traits_group_by=12
Labors%20Full%28COPY%29_group_by=0
Labors%20Abridged_group_by=0
Labors%20Compact%28COPY%29_group_by=0
Labors%20Custom_group_by=12
[window]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x2\0\0\xff\xff\xff\xf8\xff\xff\xff\xf8\0\0\a\x87\0\0\x4\x8f\0\0\0\x16\0\0\0r\0\0\ax\0\0\x3\x98\0\0\0\0\x2\0\0\0\a\x80)
state="@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\x1\0\0\x1\x10\0\0\x4\x16\xfc\x2\0\0\0\t\xfb\0\0\0,\0\x64\0o\0\x63\0k\0_\0p\0\x65\0n\0\x64\0i\0n\0g\0_\0j\0o\0\x62\0s\0_\0l\0i\0s\0t\x1\0\0\0H\0\0\x2\n\0\0\0\x92\0\xff\xff\xff\xfb\0\0\0.\0\x64\0o\0\x63\0k\0_\0\x63\0u\0s\0t\0o\0m\0_\0p\0r\0o\0\x66\0\x65\0s\0s\0i\0o\0n\0s\0\0\0\x1l\0\0\x1\xce\0\0\0\x92\0\xff\xff\xff\xfb\0\0\0\x18\0G\0r\0i\0\x64\0V\0i\0\x65\0w\0\x44\0o\0\x63\0k\0\0\0\0H\0\0\x3\x9e\0\0\0\x90\0\xff\xff\xff\xfb\0\0\0\"\0\x64\0o\0\x63\0k\0_\0s\0k\0i\0l\0l\0_\0l\0\x65\0g\0\x65\0n\0\x64\0\0\0\0H\0\0\x3\x9e\0\0\0\x8a\0\xff\xff\xff\xfb\0\0\0 \0\x64\0o\0\x63\0k\0_\0i\0n\0\x66\0o\0r\0m\0\x61\0t\0i\0o\0n\x1\0\0\x2V\0\0\x2\b\0\0\0\x85\0\xff\xff\xff\xfb\0\0\0 \0\x64\0o\0\x63\0k\0_\0p\0r\0\x65\0\x66\0\x65\0r\0\x65\0n\0\x63\0\x65\0s\0\0\0\x2\x19\0\0\x1\xcd\0\0\0\xab\0\xff\xff\xff\xfb\0\0\0\x1a\0\x64\0o\0\x63\0k\0_\0t\0h\0o\0u\0g\0h\0t\0s\0\0\0\0H\0\0\x3\x9e\0\0\0\xab\0\xff\xff\xff\xfb\0\0\0$\0\x64\0o\0\x63\0k\0_\0h\0\x65\0\x61\0l\0t\0h\0_\0l\0\x65\0g\0\x65\0n\0\x64\0\0\0\0H\0\0\x3\x9e\0\0\0\xab\0\xff\xff\xff\xfb\0\0\0,\0\x64\0o\0\x63\0k\0_\0\x65\0q\0u\0i\0p\0m\0\x65\0n\0t\0o\0v\0\x65\0r\0v\0i\0\x65\0w\0\0\0\0H\0\0\x3\x9e\0\0\0\xc4\0\xff\xff\xff\0\0\0\x3\0\0\a\x80\0\0\x1\0\xfc\x1\0\0\0\x1\xfb\0\0\0$\0\x64\0o\0\x63\0k\0_\0\x64\0w\0\x61\0r\0\x66\0_\0\x64\0\x65\0t\0\x61\0i\0l\0s\0\0\0\0\0\0\0\a\x80\0\0\0\xc1\0\xff\xff\xff\0\0\x6l\0\0\x4\x16\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x2\0\0\0\x2\0\0\0\x18\0m\0\x61\0i\0n\0_\0t\0o\0o\0l\0\x62\0\x61\0r\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1e\0\x66\0i\0l\0t\0\x65\0r\0s\0_\0t\0o\0o\0l\0\x62\0\x61\0r\x1\0\0\x2Q\xff\xff\xff\xff\0\0\0\0\0\0\0\0)"
[gridviews]
size=1
1\name=Labors Custom
1\active=true
1\animals=false
1\sets\size=20
1\sets\1\name=General
1\sets\1\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\xff\xff\xff\xff\0\0)
1\sets\1\columns\size=7
1\sets\1\columns\1\name=Current Job
1\sets\1\columns\1\type=IDLE
1\sets\1\columns\2\name=Hunger
1\sets\1\columns\2\type=HEALTH
1\sets\1\columns\3\name=Thirst
1\sets\1\columns\3\type=HEALTH
1\sets\1\columns\4\name=Happiness
1\sets\1\columns\4\type=HAPPINESS
1\sets\2\name=Mining
1\sets\2\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\x80\x80\x80\x80\x80\x80\0\0)
1\sets\2\columns\size=1
1\sets\2\columns\1\name=Mining
1\sets\2\columns\1\type=LABOR
1\sets\2\columns\1\skill_id=0
1\sets\2\columns\1\labor_id=0
1\sets\3\name=Woodworking
1\sets\3\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\x9c\x9c\x83\x83ii\0\0)
1\sets\3\columns\size=4
1\sets\3\columns\1\name=Carpentry
1\sets\3\columns\1\type=LABOR
1\sets\3\columns\1\skill_id=2
1\sets\3\columns\1\labor_id=11
1\sets\3\columns\2\name=Bowyery
1\sets\3\columns\2\type=LABOR
1\sets\3\columns\2\skill_id=49
1\sets\3\columns\2\labor_id=59
1\sets\3\columns\3\name=Wood Cutting
1\sets\3\columns\3\type=LABOR
1\sets\3\columns\3\skill_id=1
1\sets\3\columns\3\labor_id=10
1\sets\3\columns\4\name=Woodcrafting
1\sets\3\columns\4\type=LABOR
1\sets\3\columns\4\skill_id=32
1\sets\3\columns\4\labor_id=52
1\sets\4\name=Stoneworking
1\sets\4\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xc0\xc0\xc0\xc0\xc0\xc0\0\0)
1\sets\4\columns\size=3
1\sets\4\columns\1\name=Masonry
1\sets\4\columns\1\type=LABOR
1\sets\4\columns\1\skill_id=4
1\sets\4\columns\1\labor_id=13
1\sets\4\columns\2\name=Stone Detailing
1\sets\4\columns\2\type=LABOR
1\sets\4\columns\2\skill_id=3
1\sets\4\columns\2\labor_id=12
1\sets\4\columns\3\name=Stonecrafting
1\sets\4\columns\3\type=LABOR
1\sets\4\columns\3\skill_id=33
1\sets\4\columns\3\labor_id=53
1\sets\5\name=Ranger
1\sets\5\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xaf\xaf\xc3\xc3~~\0\0)
1\sets\5\columns\size=6
1\sets\5\columns\1\name=Animal Care
1\sets\5\columns\1\type=LABOR
1\sets\5\columns\1\skill_id=6
1\sets\5\columns\1\labor_id=16
1\sets\5\columns\2\name=Animal Training
1\sets\5\columns\2\type=LABOR
1\sets\5\columns\2\skill_id=5
1\sets\5\columns\2\labor_id=15
1\sets\5\columns\3\name=Hunting
1\sets\5\columns\3\type=LABOR
1\sets\5\columns\3\skill_id=57
1\sets\5\columns\3\labor_id=44
1\sets\5\columns\4\name=Trapping
1\sets\5\columns\4\type=LABOR
1\sets\5\columns\4\skill_id=11
1\sets\5\columns\4\labor_id=25
1\sets\5\columns\5\name=Small Animal Dissection
1\sets\5\columns\5\type=LABOR
1\sets\5\columns\5\skill_id=8
1\sets\5\columns\5\labor_id=26
1\sets\6\name=Healthcare
1\sets\6\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\x8c\x8cpprr\0\0)
1\sets\6\columns\size=5
1\sets\6\columns\1\name=Diagnosis
1\sets\6\columns\1\type=LABOR
1\sets\6\columns\1\skill_id=60
1\sets\6\columns\1\labor_id=17
1\sets\6\columns\2\name=Surgery
1\sets\6\columns\2\type=LABOR
1\sets\6\columns\2\skill_id=61
1\sets\6\columns\2\labor_id=18
1\sets\6\columns\3\name=Setting Bones
1\sets\6\columns\3\type=LABOR
1\sets\6\columns\3\skill_id=62
1\sets\6\columns\3\labor_id=19
1\sets\6\columns\4\name=Suturing
1\sets\6\columns\4\type=LABOR
1\sets\6\columns\4\skill_id=63
1\sets\6\columns\4\labor_id=20
1\sets\6\columns\5\name=Dressing Wounds
1\sets\6\columns\5\type=LABOR
1\sets\6\columns\5\skill_id=59
1\sets\6\columns\5\labor_id=21
1\sets\7\name=Farming
1\sets\7\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xda\xda\xb5\xb5\x87\x87\0\0)
1\sets\7\columns\size=7
1\sets\7\columns\1\name=Farming
1\sets\7\columns\1\type=LABOR
1\sets\7\columns\1\skill_id=22
1\sets\7\columns\1\labor_id=39
1\sets\7\columns\2\name=Soaping
1\sets\7\columns\2\type=LABOR
1\sets\7\columns\2\skill_id=67
1\sets\7\columns\2\labor_id=31
1\sets\7\columns\3\name=Wood Burning
1\sets\7\columns\3\type=LABOR
1\sets\7\columns\3\override_color=true
1\sets\7\columns\3\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xda\xda\xc7\xc7\xaf\xaf\0\0)
1\sets\7\columns\3\skill_id=65
1\sets\7\columns\3\labor_id=64
1\sets\7\columns\4\name=Potash Making
1\sets\7\columns\4\type=LABOR
1\sets\7\columns\4\override_color=true
1\sets\7\columns\4\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xda\xda\xc7\xc7\xaf\xaf\0\0)
1\sets\7\columns\4\skill_id=68
1\sets\7\columns\4\labor_id=61
1\sets\7\columns\5\name=Lye Making
1\sets\7\columns\5\type=LABOR
1\sets\7\columns\5\override_color=true
1\sets\7\columns\5\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xda\xda\xc7\xc7\xaf\xaf\0\0)
1\sets\7\columns\5\skill_id=66
1\sets\7\columns\5\labor_id=62
1\sets\7\columns\6\name=Milling
1\sets\7\columns\6\type=LABOR
1\sets\7\columns\6\skill_id=17
1\sets\7\columns\6\labor_id=34
1\sets\7\columns\7\name=Pressing
1\sets\7\columns\7\type=LABOR
1\sets\7\columns\7\skill_id=113
1\sets\7\columns\7\labor_id=70
1\sets\8\name=Food Processing
1\sets\8\bg_color=@Variant(\0\0\0\x43\x1\xff\xffUU\xaa\xaa\x7f\x7f\0\0)
1\sets\8\columns\size=6
1\sets\8\columns\1\name=Plant Gathering
1\sets\8\columns\1\type=LABOR
1\sets\8\columns\1\skill_id=23
1\sets\8\columns\1\labor_id=40
1\sets\8\columns\2\name=Plant Processing
1\sets\8\columns\2\type=LABOR
1\sets\8\columns\2\skill_id=18
1\sets\8\columns\2\labor_id=35
1\sets\8\columns\3\name=Brewing
1\sets\8\columns\3\type=LABOR
1\sets\8\columns\3\override_color=true
1\sets\8\columns\3\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xc1\xc1\xbf\xbf\xab\xab\0\0)
1\sets\8\columns\3\skill_id=14
1\sets\8\columns\3\labor_id=29
1\sets\8\columns\4\name=Cooking
1\sets\8\columns\4\type=LABOR
1\sets\8\columns\4\override_color=true
1\sets\8\columns\4\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xc1\xc1\xbf\xbf\xab\xab\0\0)
1\sets\8\columns\4\skill_id=21
1\sets\8\columns\4\labor_id=38
1\sets\8\columns\5\name=Milking
1\sets\8\columns\5\type=LABOR
1\sets\8\columns\5\skill_id=20
1\sets\8\columns\5\labor_id=37
1\sets\8\columns\6\name=Cheese Making
1\sets\8\columns\6\type=LABOR
1\sets\8\columns\6\skill_id=19
1\sets\8\columns\6\labor_id=36
1\sets\9\name=Meat Processing
1\sets\9\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xaa\xaa\xaa\xaa\x7f\x7f\0\0)
1\sets\9\columns\size=4
1\sets\9\columns\1\name=Butchery
1\sets\9\columns\1\type=LABOR
1\sets\9\columns\1\skill_id=10
1\sets\9\columns\1\labor_id=24
1\sets\9\columns\2\name=Tanning
1\sets\9\columns\2\type=LABOR
1\sets\9\columns\2\skill_id=12
1\sets\9\columns\2\labor_id=28
1\sets\9\columns\3\name=Leatherworking
1\sets\9\columns\3\type=LABOR
1\sets\9\columns\3\skill_id=36
1\sets\9\columns\3\labor_id=27
1\sets\9\columns\4\name=Bone Carving
1\sets\9\columns\4\type=LABOR
1\sets\9\columns\4\override_color=true
1\sets\9\columns\4\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xaa\xaa\xaa\xaa\x95\x95\0\0)
1\sets\9\columns\4\skill_id=37
1\sets\9\columns\4\labor_id=54
1\sets\10\name=Fishing
1\sets\10\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xc5\xc5\xe3\xe3\xff\xff\0\0)
1\sets\10\columns\size=3
1\sets\10\columns\1\name=Fishing
1\sets\10\columns\1\type=LABOR
1\sets\10\columns\1\skill_id=24
1\sets\10\columns\1\labor_id=41
1\sets\10\columns\2\name=Fish Cleaning
1\sets\10\columns\2\type=LABOR
1\sets\10\columns\2\skill_id=9
1\sets\10\columns\2\labor_id=42
1\sets\10\columns\3\name=Fish Dissection
1\sets\10\columns\3\type=LABOR
1\sets\10\columns\3\skill_id=7
1\sets\10\columns\3\labor_id=43
1\sets\11\name=Metalsmithing
1\sets\11\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xa0\xa0\xa0\xa0\xa4\xa4\0\0)
1\sets\11\columns\size=5
1\sets\11\columns\1\name=Furnace Operating
1\sets\11\columns\1\type=LABOR
1\sets\11\columns\1\skill_id=25
1\sets\11\columns\1\labor_id=45
1\sets\11\columns\2\name=Weaponsmithing
1\sets\11\columns\2\type=LABOR
1\sets\11\columns\2\skill_id=27
1\sets\11\columns\2\labor_id=46
1\sets\11\columns\3\name=Armoring
1\sets\11\columns\3\type=LABOR
1\sets\11\columns\3\skill_id=28
1\sets\11\columns\3\labor_id=47
1\sets\11\columns\4\name=Blacksmithing
1\sets\11\columns\4\type=LABOR
1\sets\11\columns\4\skill_id=29
1\sets\11\columns\4\labor_id=48
1\sets\11\columns\5\name=Metalcrafting
1\sets\11\columns\5\type=LABOR
1\sets\11\columns\5\skill_id=34
1\sets\11\columns\5\labor_id=49
1\sets\12\name=Jewelry
1\sets\12\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xac\xac\xab\xab\xce\xce\0\0)
1\sets\12\columns\size=3
1\sets\12\columns\1\name=Gem Cutting
1\sets\12\columns\1\type=LABOR
1\sets\12\columns\1\skill_id=30
1\sets\12\columns\1\labor_id=50
1\sets\12\columns\2\name=Gem Setting
1\sets\12\columns\2\type=LABOR
1\sets\12\columns\2\skill_id=31
1\sets\12\columns\2\labor_id=51
1\sets\12\columns\3\name=Glassmaking
1\sets\12\columns\3\type=LABOR
1\sets\12\columns\3\override_color=true
1\sets\12\columns\3\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xbe\xbe\xbd\xbd\xce\xce\0\0)
1\sets\12\columns\3\skill_id=35
1\sets\12\columns\3\labor_id=55
1\sets\13\name=Clothesmaking
1\sets\13\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\x9b\x9b\xcd\xcd\xff\xff\0\0)
1\sets\13\columns\size=6
1\sets\13\columns\1\name=Shearing
1\sets\13\columns\1\type=LABOR
1\sets\13\columns\1\skill_id=109
1\sets\13\columns\1\labor_id=66
1\sets\13\columns\2\name=Spinning
1\sets\13\columns\2\type=LABOR
1\sets\13\columns\2\skill_id=110
1\sets\13\columns\2\labor_id=67
1\sets\13\columns\3\name=Weaving
1\sets\13\columns\3\type=LABOR
1\sets\13\columns\3\skill_id=13
1\sets\13\columns\3\labor_id=32
1\sets\13\columns\4\name=Clothesmaking
1\sets\13\columns\4\type=LABOR
1\sets\13\columns\4\skill_id=16
1\sets\13\columns\4\labor_id=33
1\sets\13\columns\5\name=Dyeing
1\sets\13\columns\5\type=LABOR
1\sets\13\columns\5\skill_id=69
1\sets\13\columns\5\labor_id=63
1\sets\13\columns\6\name=Strand Extraction
1\sets\13\columns\6\type=LABOR
1\sets\13\columns\6\skill_id=26
1\sets\13\columns\6\labor_id=56
1\sets\14\name=Ceramics
1\sets\14\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\xe1\xe1\xf0\xf0\0\0)
1\sets\14\columns\size=2
1\sets\14\columns\1\name=Pottery
1\sets\14\columns\1\type=LABOR
1\sets\14\columns\1\skill_id=111
1\sets\14\columns\1\labor_id=68
1\sets\14\columns\2\name=Glazing
1\sets\14\columns\2\type=LABOR
1\sets\14\columns\2\skill_id=112
1\sets\14\columns\2\labor_id=69
1\sets\15\name=Engineering
1\sets\15\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xb0\xb0kk\x87\x87\0\0)
1\sets\15\columns\size=3
1\sets\15\columns\1\name=Mechanics
1\sets\15\columns\1\type=LABOR
1\sets\15\columns\1\skill_id=55
1\sets\15\columns\1\labor_id=60
1\sets\15\columns\2\name=Architecture
1\sets\15\columns\2\type=LABOR
1\sets\15\columns\2\override_color=true
1\sets\15\columns\2\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xb0\xb0kk\x87\x87\0\0)
1\sets\15\columns\2\skill_id=58
1\sets\15\columns\2\labor_id=14
1\sets\15\columns\3\name=Siege Engineering
1\sets\15\columns\3\type=LABOR
1\sets\15\columns\3\skill_id=47
1\sets\15\columns\3\labor_id=57
1\sets\16\name=Operating
1\sets\16\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xc0\xc0\xc0\xc0\xc0\xc0\0\0)
1\sets\16\columns\size=2
1\sets\16\columns\1\name=Siege Operating
1\sets\16\columns\1\type=LABOR
1\sets\16\columns\1\override_color=true
1\sets\16\columns\1\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xb0\xb0\x8e\x8e\x9c\x9c\0\0)
1\sets\16\columns\1\skill_id=48
1\sets\16\columns\1\labor_id=58
1\sets\16\columns\2\name=Pump Operating
1\sets\16\columns\2\type=LABOR
1\sets\16\columns\2\skill_id=70
1\sets\16\columns\2\labor_id=65
1\sets\17\name=Beekeeping
1\sets\17\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\xff\xff\x9d\x9d\0\0)
1\sets\17\columns\size=2
1\sets\17\columns\1\name=Bee Keeping
1\sets\17\columns\1\type=LABOR
1\sets\17\columns\1\skill_id=114
1\sets\17\columns\1\labor_id=71
1\sets\17\columns\2\name=Wax Working
1\sets\17\columns\2\type=LABOR
1\sets\17\columns\2\skill_id=115
1\sets\17\columns\2\labor_id=72
1\sets\18\name=Printing
1\sets\18\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xd3\xd3\xa9\xa9``\0\0)
1\sets\18\columns\size=2
1\sets\18\columns\1\name=Papermaking
1\sets\18\columns\1\type=LABOR
1\sets\18\columns\1\skill_id=133
1\sets\18\columns\1\labor_id=81
1\sets\18\columns\2\name=Bookbinding
1\sets\18\columns\2\type=LABOR
1\sets\18\columns\2\skill_id=134
1\sets\18\columns\2\labor_id=82
1\sets\19\name=Hauling
1\sets\19\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\xff\xff\xff\xff\0\0)
1\sets\19\columns\size=1
1\sets\19\columns\1\name=Hauling
1\sets\19\columns\1\type=SUPER_LABOR
1\sets\5\columns\6\name=Gelding
1\sets\5\columns\6\type=LABOR
1\sets\5\columns\6\skill_id=117
1\sets\5\columns\6\labor_id=78
1\sets\20\name=Misc
1\sets\20\bg_color=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\xff\xff\xff\xff\0\0)
1\sets\20\columns\size=0
1\sets\19\columns\1\id=Hauling
1\sets\1\columns\5\name=Equipment
1\sets\1\columns\5\type=EQUIPMENT
1\sets\1\columns\6\name=Profession
1\sets\1\columns\6\type=PROFESSION
1\sets\1\columns\2\id=12
1\sets\1\columns\3\id=11
[super_labors]
1\id=Hauling
1\role_name=
1\labors\1\id=23
1\labors\2\id=80
1\labors\3\id=8
1\labors\4\id=6
1\labors\5\id=7
1\labors\6\id=4
1\labors\7\id=79
1\labors\8\id=5
1\labors\9\id=76
1\labors\10\id=2
1\labors\11\id=3
1\labors\12\id=77
1\labors\13\id=74
1\labors\14\id=1
1\labors\15\id=73
1\labors\16\id=22
1\labors\size=16
size=1
How are you guys toggling labors when you notice delay/lag? Is it a specific way togging labors that you notice a delay (ie. columns, groups, individual cells, etc.)?
Is the delay when toggling the labors/cells, or when they're committed and a read is done?
one thing I have noticed is that the gelded status is not shown for any species of animal. As I geld my livestock to ensure the inferior ones don't breed it is frustrating to be unable to see which animals I have already gelded.I've believe it's actually a bit worse than that. It seems selecting to geld a creature that's already gelded results in an eternal spam of trying to geld: no creature, presumably because it's already gelded. Removing the gelding order from DT gets rid of the spam. Note that I'm still on 0.42.05, so things might have changed, although it seems it hasn't.
this could also be occurring for dwarves but i haven't noticed it yet.
You can also remove it via the animal screen in-game.one thing I have noticed is that the gelded status is not shown for any species of animal. As I geld my livestock to ensure the inferior ones don't breed it is frustrating to be unable to see which animals I have already gelded.I've believe it's actually a bit worse than that. It seems selecting to geld a creature that's already gelded results in an eternal spam of trying to geld: no creature, presumably because it's already gelded. Removing the gelding order from DT gets rid of the spam. Note that I'm still on 0.42.05, so things might have changed, although it seems it hasn't.
this could also be occurring for dwarves but i haven't noticed it yet.
Yes, I work around the DT deficiency by not using DT for gelding. Each time a cat adopts an owner I go to the DF animal screen and try to geld it. If that doesn't work I pasture it with the other female adopters in a small animal locked room, opened only to throw more buggers in and haul dead ones out.You can also remove it via the animal screen in-game.one thing I have noticed is that the gelded status is not shown for any species of animal. As I geld my livestock to ensure the inferior ones don't breed it is frustrating to be unable to see which animals I have already gelded.I've believe it's actually a bit worse than that. It seems selecting to geld a creature that's already gelded results in an eternal spam of trying to geld: no creature, presumably because it's already gelded. Removing the gelding order from DT gets rid of the spam. Note that I'm still on 0.42.05, so things might have changed, although it seems it hasn't.
this could also be occurring for dwarves but i haven't noticed it yet.
Definitely sounds bugged, I'll check it out.one thing I have noticed is that the gelded status is not shown for any species of animal. As I geld my livestock to ensure the inferior ones don't breed it is frustrating to be unable to see which animals I have already gelded.I've believe it's actually a bit worse than that. It seems selecting to geld a creature that's already gelded results in an eternal spam of trying to geld: no creature, presumably because it's already gelded. Removing the gelding order from DT gets rid of the spam. Note that I'm still on 0.42.05, so things might have changed, although it seems it hasn't.
this could also be occurring for dwarves but i haven't noticed it yet.
my workaround is to geld all the males with low stats every season leaving only the best ones to breed. That of course uses D then I check the livestock in df and remove the order if they are already gelded. Then all gelded males are gelded the season they grow up.If you don't mind seeing undiagnosed health issues for your dwarves, you can work around this bug by enabling the 'always show wound details' and 'read animal health information' in the general options.
How are you guys toggling labors when you notice delay/lag? Is it a specific way togging labors that you notice a delay (ie. columns, groups, individual cells, etc.)?
Is the delay when toggling the labors/cells, or when they're committed and a read is done?
For me, it's toggling any cell, whether by column or by individual cell. Reading and committing takes a second or two, which seems reasonable to me, but cell toggling is terrible.
OSX 10.11.2 here.
These will either be two questions about already-existing options or two requests for the future -- I can't seem to find these anywhere, but then I tend to be completely incapable of finding things that are right in front of me. :|
Anyway! I've never messed with filters or scripts or anything (too afraid of breaking something), so do please let me know if I've missed something stupidly obvious.
1) Is there a way to hide non-interactable entities in the list? For instance, performers and mercenaries that have joined your fort? Right now, they're just big red bars that take up space and make it harder to sift through my own dwarves when looking for someone to shove into an empty profession / role.
2) Is there anywhere that shows the new Location-based skills? Such as Writing, Musician, Poet, et cetera? I can see those skills by mousing over the individual dwarves, but am hoping there's an easy-to-see column like all the original labors and social skills.
Is there a mac version that can work with 0.42.06
Then a 20 and an 80 will have the same % value
2016-May-07 08:30:06.022 INFO core Dwarf Therapist "37.0.0" starting normally. [src\dwarftherapist.cpp:172] (setup_logging)
2016-May-07 08:30:06.024 INFO core Runtime QT Version 5.4.2 [src\dwarftherapist.cpp:173] (setup_logging)
2016-May-07 08:30:06.216 INFO core beginning to read settings [src\dwarftherapist.cpp:199] (read_settings)
2016-May-07 08:30:06.224 INFO core finished reading settings [src\dwarftherapist.cpp:249] (read_settings)
2016-May-07 08:30:06.277 INFO core attempting connection to running DF game [src\mainwindow.cpp:383] (connect_to_df)
2016-May-07 08:30:06.280 INFO core adding valid layout "v0.42.06 (graphics)" "0x56bba192" [src\dfinstance.cpp:106] (DFInstance)
2016-May-07 08:30:06.282 INFO core adding valid layout "v0.42.05 (graphics)" "0x569bf3df" [src\dfinstance.cpp:106] (DFInstance)
2016-May-07 08:30:06.286 INFO core adding valid layout "v0.42.04 (graphics)" "0x567ef345" [src\dfinstance.cpp:106] (DFInstance)
2016-May-07 08:30:06.287 INFO core adding valid layout "v0.42.03 (graphics)" "0x566c7776" [src\dfinstance.cpp:106] (DFInstance)
2016-May-07 08:30:06.288 INFO core attempting to find running copy of DF by window handle [src\dfinstancewindows.cpp:140] (find_running_copy)
2016-May-07 08:30:06.288 INFO core found copy with HWND: 0x406b6 [src\dfinstancewindows.cpp:156] (find_running_copy)
2016-May-07 08:30:06.288 INFO core PID of process is: 2332 [src\dfinstancewindows.cpp:163] (find_running_copy)
2016-May-07 08:30:06.288 INFO core PROC HANDLE: 0x370 [src\dfinstancewindows.cpp:169] (find_running_copy)
2016-May-07 08:30:06.290 INFO core Target EXE was compiled at "2016-02-10T15:46:10" [src\dfinstancewindows.cpp:68] (calculate_checksum)
2016-May-07 08:30:06.290 INFO core DF's checksum is: "0x56bba192" [src\dfinstance.cpp:1052] (get_memory_layout)
2016-May-07 08:30:06.290 INFO core Detected Dwarf Fortress version "v0.42.06 (graphics)" using MemoryLayout from "D:/Program Files (x86)/DwarfFortress4206/Dwarf-Therapist-WIN-37.0.0/share/memory_layouts/windows/v0.42.06_graphics.ini" [src\dfinstance.cpp:1064] (get_memory_layout)
2016-May-07 08:30:06.290 INFO core RAW BASE ADDRESS: 12058624 [src\dfinstancewindows.cpp:197] (find_running_copy)
2016-May-07 08:30:06.290 INFO core GetModuleFileNameEx returned: "D:\Program Files (x86)\DwarfFortress4206\Dwarf Fortress.exe" [src\dfinstancewindows.cpp:219] (find_running_copy)
2016-May-07 08:30:06.290 INFO core Dwarf Fortress path: "D:/Program Files (x86)/DwarfFortress4206" [src\dfinstancewindows.cpp:222] (find_running_copy)
2016-May-07 08:30:06.290 INFO core Connection to DF version "v0.42.06 (graphics)" established. [src\mainwindow.cpp:407] (connect_to_df)
2016-May-07 08:30:06.855 INFO core Loaded 12 views from disk [src\viewmanager.cpp:174] (reload_views)
2016-May-07 08:30:06.857 INFO core group_by now set to 0 for view "Labors Full" [src\models\dwarfmodel.cpp:783] (set_group_by)
2016-May-07 08:30:06.862 INFO core group_by now set to 0 for view "Military" [src\models\dwarfmodel.cpp:783] (set_group_by)
2016-May-07 08:30:06.865 INFO core group_by now set to 0 for view "Social" [src\models\dwarfmodel.cpp:783] (set_group_by)
2016-May-07 08:30:06.868 INFO core group_by now set to 0 for view "Attributes" [src\models\dwarfmodel.cpp:783] (set_group_by)
2016-May-07 08:30:06.871 INFO core group_by now set to 0 for view "Roles" [src\models\dwarfmodel.cpp:783] (set_group_by)
2016-May-07 08:30:06.875 INFO core group_by now set to 0 for view "Animals" [src\models\dwarfmodel.cpp:783] (set_group_by)
2016-May-07 08:30:06.878 INFO core group_by now set to 0 for view "Health" [src\models\dwarfmodel.cpp:783] (set_group_by)
2016-May-07 08:30:06.878 INFO core group_by now set to 0 for view "Labors Full" [src\models\dwarfmodel.cpp:783] (set_group_by)
2016-May-07 08:30:06.879 INFO core "redrew views in 24ms" [src\viewmanager.cpp:321] (draw_views)
2016-May-07 08:30:06.879 INFO core current year: 251 [src\dfinstance.cpp:771] (refresh_data)
2016-May-07 08:30:06.892 INFO core FOUND 198 squads [src\dfinstance.cpp:862] (load_squads)
2016-May-07 08:30:06.894 WARNING core vector at "0x022eb490" has over 10.000 entries! ( 21092 ) [src\dfinstance.cpp:155] (check_vector)
2016-May-07 08:30:06.895 INFO core using active units [src\dfinstance.cpp:929] (get_creatures)
2016-May-07 08:30:06.896 WARNING core vector at "0x023f4d8c" has over 10.000 entries! ( 47296 ) [src\dfinstance.cpp:155] (check_vector)
2016-May-07 08:30:06.980 INFO core "FOUND Dwarf (0x0b7f4008) name:Obok Balendok id:18642 histfig_id:47264" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:06.984 INFO core "FOUND Dwarf (0x05b0f008) name:Ustuth Dolildumat id:18643 histfig_id:47265" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:06.989 INFO core "FOUND Dwarf (0x05ccca90) name:Kib Inodgikut id:18644 histfig_id:47266" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:06.993 INFO core "FOUND Dwarf (0x05b4e010) name:Lorbam Lilumkeskal id:18645 histfig_id:47267" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:06.997 INFO core "FOUND Dwarf (0x05ba4008) name:Deler Mengsherik id:18646 histfig_id:47268" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:07.001 INFO core "FOUND Dwarf (0x2cd44dc0) name:Deduk Rodumgeshud id:18647 histfig_id:47269" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:07.005 INFO core "FOUND Dwarf (0x05c54008) name:Astesh Kilrudang id:18648 histfig_id:47270" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:07.005 INFO core "FOUND Dog (0x2984ec10) name:Dog id:18649 histfig_id:-1" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:07.006 INFO core "FOUND Dog (0x05bd1008) name:Dog id:18650 histfig_id:-1" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:07.006 INFO core "FOUND Cat (0x0b7e0430) name:Cat id:18651 histfig_id:-1" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:07.007 INFO core "FOUND Cat (0x0b7b0020) name:Cat id:18652 histfig_id:-1" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:07.007 INFO core "FOUND Horse (0x0b8d8030) name:Horse id:18653 histfig_id:-1" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:07.008 INFO core "FOUND Horse (0x0b8d8fe0) name:Horse id:18654 histfig_id:-1" [src\dwarf.cpp:293] (read_data)
2016-May-07 08:30:07.010 INFO core read 13 units in 115 ms [src\dfinstance.cpp:386] (load_dwarves)
2016-May-07 08:30:07.018 INFO core calculated roles in 8 ms [src\dfinstance.cpp:397] (load_dwarves)
2016-May-07 08:30:07.018 INFO core loaded population data in 0 ms [src\dfinstance.cpp:402] (load_dwarves)
2016-May-07 08:30:07.029 INFO core found 13 units out of 45 creatures [src\dfinstance.cpp:416] (load_dwarves)
2016-May-07 08:30:07.070 INFO core group_by now set to 0 for view "Labors Full" [src\models\dwarfmodel.cpp:783] (set_group_by)
2016-May-07 08:30:07.098 INFO core loaded rows for "Labors Full" 28 ms [src\models\dwarfmodel.cpp:789] (set_group_by)
2016-May-07 08:30:07.248 INFO core completed read in 369 ms [src\mainwindow.cpp:563] (read_dwarves)
Those warnings do seem like they could be relevant, but I don't see the addresses they refer to in https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/share/memory_layouts/windows/v0.42.06_graphics.ini (https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/share/memory_layouts/windows/v0.42.06_graphics.ini). What are you doing when DT freezes?
I spent the weekend playing and I figured out a few things. First I see that the Dwarf Therapist process does not lock up totally. Looking at it in task manager shows it is running and the memory values fluxuate. This is after the interface hangs and I can't click on anything. Often I am left with a stuck tooltip staying on screen. I have tried every compatability setting and running as admin. I see those same log errors in my working system so I don't think they are relevant. All I can say is while the main process continues working the interface (clicky bits) locks up. I am on a brand new MSI GT Series GT72S Dominator ProG Dragon-07 running Windows 10 Home 64-bit.
Oh and I got rid of all things Norton.
Try clearing your user settings by renaming (or deleting if you don't have custom roles, scripts etc.) %APPDATA%\UDP Software\Dwarf Therapist.ini
Wouldn't happen to be a touchscreen laptop would it?
If so trying enabling input through another means e.g. touchpad/regualr mouse.
And if you look here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts), you'll find newly created layouts for 43.02.8)
And if you look here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts), you'll find newly created layouts for 43.02.
If you're not using Linux I think you need to download the version here (http://dffd.bay12games.com/file.php?id=11420). That version in that other link doesn't look like it contains any files that windows can run, judging by the list of files contained in the zipAnd if you look here (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts), you'll find newly created layouts for 43.02.
How do I use this? I download what's in the first post in this thread and then what exactly?
Yeah, windows.43.03 layouts for win/linux are there now. I've added a readme with instructions and links to the most recent layouts to help people with manually downloading the layout files. Hopefully I'll get another release out soon™ but I've been crushed by work the last few months.
I just found the memory layouts in Dwarf Therapist. Copy pasted one of the files. Renamed it to "v0.43.02_graphics" and then copy pasted the info from here (https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/share/memory_layouts/windows/v0.43.02_graphics.ini). That seemed to work.
edit: It seems to be crashing when I select dwarves. Bleh. I'd rather wait for a new Therapist release proper before trying to get back into Dwarf Fortress. Tinkering with it to try and make it work isn't what I'm interested in with every new version of DF.
I think I've said this before, but adding an automatic memory-layout-downloader would avoid a lot of questions about this :)Pfft... just include the memory layouts for all of the future DF versions right in the download! :)
The links in the readme link to the HTML view of the ini files, which won't work. Also, are you sure about the OS X path? I was pretty sure it was inside the app bundle, which Dwarf-Therapist/share/memory_layouts/osx isn't.Yeah, windows.43.03 layouts for win/linux are there now. I've added a readme with instructions and links to the most recent layouts to help people with manually downloading the layout files. Hopefully I'll get another release out soon™ but I've been crushed by work the last few months.
I just found the memory layouts in Dwarf Therapist. Copy pasted one of the files. Renamed it to "v0.43.02_graphics" and then copy pasted the info from here (https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/share/memory_layouts/windows/v0.43.02_graphics.ini). That seemed to work.
edit: It seems to be crashing when I select dwarves. Bleh. I'd rather wait for a new Therapist release proper before trying to get back into Dwarf Fortress. Tinkering with it to try and make it work isn't what I'm interested in with every new version of DF.
I'll double check the osx path (no osx, so if someone can verify that would be nice). I have no idea what you mean about the readme link; using the 'save as' context menu as written works as expected no?The links in the readme link to the HTML view of the ini files, which won't work. Also, are you sure about the OS X path? I was pretty sure it was inside the app bundle, which Dwarf-Therapist/share/memory_layouts/osx isn't.Yeah, windows.43.03 layouts for win/linux are there now. I've added a readme with instructions and links to the most recent layouts to help people with manually downloading the layout files. Hopefully I'll get another release out soon™ but I've been crushed by work the last few months.
I just found the memory layouts in Dwarf Therapist. Copy pasted one of the files. Renamed it to "v0.43.02_graphics" and then copy pasted the info from here (https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/share/memory_layouts/windows/v0.43.02_graphics.ini). That seemed to work.
edit: It seems to be crashing when I select dwarves. Bleh. I'd rather wait for a new Therapist release proper before trying to get back into Dwarf Fortress. Tinkering with it to try and make it work isn't what I'm interested in with every new version of DF.
I believe the current issues are because you've set in the file itself, under Info, the Version to 43.02, rather than 43.03.
EDIT: Nope. It just tells you that it doesn't work on the version you're currently playing. Carry on.
DwarfTherapist.app/Contents/MacOS/share/memory_layouts/osx/v0.43.02.osx.iniThanks.
Do I want QT 4.8 or QT 5.6?Safest is 4.8 unfortunately due to a bug in 5.1.1 and higher that breaks the filtering (5.4.2 is ok).
Links are fixed now. Still missing the OSX 43.03 layout for now though.I believe the current issues are because you've set in the file itself, under Info, the Version to 43.02, rather than 43.03.
EDIT: Nope. It just tells you that it doesn't work on the version you're currently playing. Carry on.
Yeah that was my experience too. Following the Readme does NOT work. But the memory layout does if you copy it into a file with that name.
I think I've said this before, but adding an automatic memory-layout-downloader would avoid a lot of questions about this :)Yeah I know, the old code is still there, I think there was some issue with dependencies last time I looked. I should probably prioritize it...
Oops. Here's one for 0.43.03: https://github.com/splintermind/Dwarf-Therapist/pull/306
Do I want QT 4.8 or QT 5.6?Safest is 4.8 unfortunately due to a bug in 5.1.1 and higher that breaks the filtering (5.4.2 is ok).
I've built an unofficial DwarfTherapist v.37.0 for OS X with support for DF 43.03. You can get it here (http://dffd.bay12games.com/file.php?id=12116)
So everyone should go grab the 0.43.03 ini file from https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts , right?
So everyone should go grab the 0.43.03 ini file from https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts , right?How do you download it without slowly selecting and copy-pasting it into a new text file?
When you get to the page with the text of the ini file, instead of selecting it all, right-click on the "Raw" button and choose "Save link as…".So everyone should go grab the 0.43.03 ini file from https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts , right?How do you download it without slowly selecting and copy-pasting it into a new text file?
Would have never thought to click that button, let alone right-click. Thanks!When you get to the page with the text of the ini file, instead of selecting it all, right-click on the "Raw" button and choose "Save link as…".So everyone should go grab the 0.43.03 ini file from https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts , right?How do you download it without slowly selecting and copy-pasting it into a new text file?
I knew about raw, and still didn't think to right-click it. *facepalm*Would have never thought to click that button, let alone right-click. Thanks!When you get to the page with the text of the ini file, instead of selecting it all, right-click on the "Raw" button and choose "Save link as…".So everyone should go grab the 0.43.03 ini file from https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts , right?How do you download it without slowly selecting and copy-pasting it into a new text file?
Is there any way to make it show only citizens and not guests? I'm bad at filter scripts.No but in the next update I'll have an setting in the options (like children/babies) and a way to filter out visitors via scripts.
Is there any way to make it show only citizens and not guests? I'm bad at filter scripts.No but in the next update I'll have an setting in the options (like children/babies) and a way to filter out visitors via scripts.
Is there any way to make it show only citizens and not guests? I'm bad at filter scripts.No but in the next update I'll have an setting in the options (like children/babies) and a way to filter out visitors via scripts.
Edit: Do you guys who want this filter consider mercenaries as guests or citizens?
I'd call them guests. Since you can't give them labors.
Yes, you can currently assign citizens and mercenaries to squads via DT.As a third category ideally, but if limited to 2 categories, I'd call them guests. Since you can't give them labors.
That's what I was thinking.
Can Dwarf Therapist be used to manage squads? If so, it might be nice to see mercenaries with citizens in the military tab.
So everyone should go grab the 0.43.03 ini file from https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts , right?
Thing is, I've done that. There's an .ini file already in the memory_layouts/windows directory that's called v0.42.05_graphics, I download the .ini file from that github link (since they're named the same) and save over the old one, and then it comes up with .05 not in the supported versions list. I'm guessing I installed the new file incorrectly but I just did what it says to do on the site.Which version of Dwarf Fortress are you using? 0.42.05 is almost 6 months old.
v0.42.05, because I tried to pick one that matched the "supported versions" when the error message popped up.
1. downloaded DF 0.42.05 and DT
2. There's a 9kb file in the DT memory_layouts that's called 0.42.05_graphics.
3. I download a 139 kb file off the website with the same name, drag it to the folder, and when "these files have the same name what do" question comes up I click "replace".
4. 0.42.05 is now no longer in the "supported versions" error message.
I know I'm doing something wrong here- people were talking earlier in the thread about copying and pasting things to the .ini file. Is that what I do? Do I copy everything in the new file and paste it into the old? I opened both and they look nothing alike.
Auto-updating layouts is just about ready to release (in testing now).
:I hope not, at least not without the option of a complete download. Installing LNP on top of an existing install can cause all kinds of trouble, and forcing users to manually download and copy DT as a series of extra manual steps sort of defeats the purpose of LNP as a complete pre assembled package.
Maybe Lazy Newb Packs could take advantage of this feature somehow so that Dwarf Therapist doesn't have to be re-downloaded by users with every Newb Pack update.
Again, if on demand downloading is introduced, you still need to provide the full package as one of the options. Everyone isn't connected to the Internet at all times on all computers.Well, you'd have to be online to download the full package anyway. Just enable everything when you're connected and copy that to your destination of choice.
They probably meant these private tools (https://github.com/PeridexisErrant/starter-pack), which I use to create an up-to-date pack. No current plans to build anything like this into PyLNP, updating an existing install is a major PITA to do safely and automatically. In any case, I'd always provide the offline-capable version as the default.Could be. Here's the post I read:
An uncompressed copy of the Lazy Newb Pack can take up 300+ MB of hard drive space. That seems like a lot to me.
Also, many people in the world don't have the best internet ("third-world" internet) and have slow download speeds or low bandwidth caps. I think it's good to have a lite Newb Pack as an option for users. I think most users who look in the /LNP/utilities/ folder will find that they rarely use most of the apps included there. I think the plan is for PyLNP to eventually be able to install utilities and graphics packs only when the user double-clicks on them, which should solve the bandwidth/hard-drive-space issue.
How is the auto-updating layouts testing coming along? I'm really looking forward to it.It's going well, but it's becoming a major pain in the ass to continue supporting older versions of QT (prior to 5.0 which was released December 19th, 2012).
LNP does look for newer versions of LNP if that's enabled. If you want to assemble your tools yourself, rather than using PeridexisErrant's services, checks on the tool level would be useful. However, if you have a poor connection/low bandwidth/high price for bandwidth used, you probably don't want tools to try to use that connection for constant checks.
I'm not opposed to a smörgåsbord approach where you select which parts of the LNP you want to download, but that would be additional work for PeridexisErrant to firstly implement, and then to maintain. That approach would probably also lead to additional support requests, as people start to mix old versions of tools with newer versions of other tools and DF in an effort to save on bandwidth, but without enough knowledge to actually get compatible combinations every time.
I'm considering moving the current version to a 'QT4' branch, stopping support for it, and cleaning up the current branch to remove all the ugly checks for QT4. However, I don't know how many people would be affected by this (ie. how many linux distros do not have QT5?).
Bandwidth is a problem for some people. I would say that starter packs tend to be pretty large, at least when it comes to download size. PE's pack has grown to almost 140 MB, which is over 10 times larger than a DF download. It's understandable that people with slow or expensive connections would want a preconfigured option that isn't this large, especially if they don't use all of the utilities that are bundled in.LNP does look for newer versions of LNP if that's enabled. If you want to assemble your tools yourself, rather than using PeridexisErrant's services, checks on the tool level would be useful. However, if you have a poor connection/low bandwidth/high price for bandwidth used, you probably don't want tools to try to use that connection for constant checks.
I'm not opposed to a smörgåsbord approach where you select which parts of the LNP you want to download, but that would be additional work for PeridexisErrant to firstly implement, and then to maintain. That approach would probably also lead to additional support requests, as people start to mix old versions of tools with newer versions of other tools and DF in an effort to save on bandwidth, but without enough knowledge to actually get compatible combinations every time.
Bandwith should not be a problem today.
If people think Dwarf Fortress packs are "large downloads", maybe they should learn how to handle 7-zip instead.
Masterwork uses .RAR because Meph gets to many support requests for how to unzip a .7z when it was in 7-zip format. For masterwork that saves about 30MB on each download.
The savings is about the same for "PeridexisErrant's Starter Pack". About 30MB. That makes the starterpack a 110MB download without counting the extra 360MB you need if you want to use Soundsense.
I'm considering moving the current version to a 'QT4' branch, stopping support for it, and cleaning up the current branch to remove all the ugly checks for QT4. However, I don't know how many people would be affected by this (ie. how many linux distros do not have QT5?).
Bandwidth is a problem for some people. I would say that starter packs tend to be pretty large, at least when it comes to download size. PE's pack has grown to almost 140 MB, which is over 10 times larger than a DF download. It's understandable that people with slow or expensive connections would want a preconfigured option that isn't this large, especially if they don't use all of the utilities that are bundled in.LNP does look for newer versions of LNP if that's enabled. If you want to assemble your tools yourself, rather than using PeridexisErrant's services, checks on the tool level would be useful. However, if you have a poor connection/low bandwidth/high price for bandwidth used, you probably don't want tools to try to use that connection for constant checks.
I'm not opposed to a smörgåsbord approach where you select which parts of the LNP you want to download, but that would be additional work for PeridexisErrant to firstly implement, and then to maintain. That approach would probably also lead to additional support requests, as people start to mix old versions of tools with newer versions of other tools and DF in an effort to save on bandwidth, but without enough knowledge to actually get compatible combinations every time.
Bandwith should not be a problem today.
If people think Dwarf Fortress packs are "large downloads", maybe they should learn how to handle 7-zip instead.
Masterwork uses .RAR because Meph gets to many support requests for how to unzip a .7z when it was in 7-zip format. For masterwork that saves about 30MB on each download.
The savings is about the same for "PeridexisErrant's Starter Pack". About 30MB. That makes the starterpack a 110MB download without counting the extra 360MB you need if you want to use Soundsense.
is there an ETA on an update to the new version of DF?
is there an ETA on an update to the new version of DF?
The newest version of Dwarf Foress (v0.43.04) is a lot different from previous versions (with the new compiler and the additional 32 bits), so mapping it for Dwarf Therapist will take longer than normal. If you need Dwarf Therapist to play Dwarf Fortress, you might consider playing with Dwarf Fortress v0.43.03 instead of waiting for new memory maps for Dwarf Therapist.
is there an ETA on an update to the new version of DF?
The newest version of Dwarf Foress (v0.43.04) is a lot different from previous versions (with the new compiler and the additional 32 bits), so mapping it for Dwarf Therapist will take longer than normal. If you need Dwarf Therapist to play Dwarf Fortress, you might consider playing with Dwarf Fortress v0.43.03 instead of waiting for new memory maps for Dwarf Therapist.
Take the relevant mapping and add it to your /share/... folder:Wait, there is a version of this utility for 0.43.03? I can't seem to find it, only for 42.03-42.06.is there an ETA on an update to the new version of DF?The newest version of Dwarf Foress (v0.43.04) is a lot different from previous versions (with the new compiler and the additional 32 bits), so mapping it for Dwarf Therapist will take longer than normal. If you need Dwarf Therapist to play Dwarf Fortress, you might consider playing with Dwarf Fortress v0.43.03 instead of waiting for new memory maps for Dwarf Therapist.
Take the relevant mapping and add it to your /share/... folder:Wait, there is a version of this utility for 0.43.03? I can't seem to find it, only for 42.03-42.06.is there an ETA on an update to the new version of DF?The newest version of Dwarf Foress (v0.43.04) is a lot different from previous versions (with the new compiler and the additional 32 bits), so mapping it for Dwarf Therapist will take longer than normal. If you need Dwarf Therapist to play Dwarf Fortress, you might consider playing with Dwarf Fortress v0.43.03 instead of waiting for new memory maps for Dwarf Therapist.
https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts
Is there any chances to get memory for 43.05?When one becomes available, the answer is most probably yes. With normal luck probably within 2 months, longer with bad luck, and faster with good luck. The new compiler has resulted in a lot of things being shifted around, so discovering the memory locations used requires more work than it does usually.
Question: Is there any way to use this in arena mode?
If not, would it be possible to add that functionality, or is it fundamentally incompatible?
Question. How is the process of getting the memory locations? And how can one help?DT uses a subset of memory offsets that are typically generated from the df-structures project (https://github.com/DFHack/df-structures/blob/master/how-to-update.rst). This is primarily maintained by the DFHack people, since they require a more complete mapping of offsets and they've established the most efficient means to map the memory.
is there an ETA on an update to the new version of DF?
The newest version of Dwarf Foress (v0.43.04) is a lot different from previous versions (with the new compiler and the additional 32 bits), so mapping it for Dwarf Therapist will take longer than normal. If you need Dwarf Therapist to play Dwarf Fortress, you might consider playing with Dwarf Fortress v0.43.03 instead of waiting for new memory maps for Dwarf Therapist.
Uh...I might have encountered a bug? I'm not totally sure, but I'm going to post the log and explain what happened.
So, I opened the program and hit "Connect to DF". None of my dwarves were showing up, so I hit "Read Dwarves". Then Windows popped up saying the program crashed and made me close it. Any ideas what happened?
OHHHHH. That makes sense. Is there a memory map for 43.05 then?
So since I have tried Dwarf Therapist and can now not play without it, how long will it take to get it running for 0.43.05? Should I roll back to an earlier version or wait for the update?
We have a memory map for 43.03. We know 43.05 is 64 bit, so it's a different animal.43.05's 32-bit version will need a separate info file for Dwarf Therapist :-/
I don't think I've ever actually posted here. I can live without LNP options, without DFHack's 'clean all' and 'dig vein'. Heck, I'm even starting to learn how to read the matrix. The one utility I simply can't run a serious Fortress without however, is Dwarf Therapist. Managing the labor of more than 30 Dwarves tops is impossible. So props to everyone who keeps that tool going :) I am eagerly awaiting 64-bit.30? Wow... I barely do the starting 7. >_<
I don't think I've ever actually posted here. I can live without LNP options, without DFHack's 'clean all' and 'dig vein'. Heck, I'm even starting to learn how to read the matrix. The one utility I simply can't run a serious Fortress without however, is Dwarf Therapist. Managing the labor of more than 30 Dwarves tops is impossible. So props to everyone who keeps that tool going :) I am eagerly awaiting 64-bit.30? Wow... I barely do the starting 7. >_<
And then there's the fact that I can't selectively breed the fattest/strongest/etc animals without DF's help.
Heck...I can't even tell the animals that will breed from those who won't without DF!
:-[30? Wow... I barely do the starting 7. >_<
And then there's the fact that I can't selectively breed the fattest/strongest/etc animals without DF's help.
Heck...I can't even tell the animals that will breed from those who won't without DF!
I think you mean DT since, and I'm only guessing here, you need DFs help to do anything involving DF because Toady could just release a version of Dwarf Fortress with no UI and then you are left with yelling at the screen and hoping your dwarves don't starve to death.
Meh, this is how I normally play anyways, wouldn't be that much of a change.I don't think I've ever actually posted here. I can live without LNP options, without DFHack's 'clean all' and 'dig vein'. Heck, I'm even starting to learn how to read the matrix. The one utility I simply can't run a serious Fortress without however, is Dwarf Therapist. Managing the labor of more than 30 Dwarves tops is impossible. So props to everyone who keeps that tool going :) I am eagerly awaiting 64-bit.30? Wow... I barely do the starting 7. >_<
And then there's the fact that I can't selectively breed the fattest/strongest/etc animals without DF's help.
Heck...I can't even tell the animals that will breed from those who won't without DF!
I think you mean DT since, and I'm only guessing here, you need DFs help to do anything involving DF because Toady could just release a version of Dwarf Fortress with no UI and then you are left with yelling at the screen and hoping your dwarves don't starve to death.
I'm still running a 40..19 fort with Therapist 30.0, and I've ran into a problem with it.
If I try to sort by migrant wave it stops at year 1098, but the current year is 1108!
All births/ migrants are shown the list just ends at 1098.
I may not be receiving migrants, but I know I've had many births between 1098-1108.
Is this a known issue with ver. 30.0?
Could it be the sheer number of dwarfs I have?
If anyone can give some insight on this I'd truly appreciate it.
Goatmaan.
P.s. Anvillocked could not exist without Dwarf Therapist, and I will praise it at every opportunity!!
Many, many thanks to its creators/contributers!!
Think you can manage 800+ dwarfs without it? I KNOW you can't. :P
Ok. Thanks for the info Jecowa.
I appreciate that the people working on the update probably aren't getting paid for it, but am just wondering if there might be an estimated time frame for when I should be checking back to see if an update has come through. A week/a month/longer? :)
Can anyone give a rough estimate?
I'm not that much of a DT developer, really - I mostly just provide DT memory layouts by running scripts.I think that seems like a pretty important job. The memory map is a vital component of Dwarf Therapist.
DFHack is coming along well, both with 32-bit and 64-bit 0.43.05 support (except no 64-bit Linux offsets yet). We can definitely have a prerelease out in less than that time, if not a full release. I don't know about DT, though - last I checked, there wasn't any 64-bit support, and I'm not really familiar enough with its memory access to work on it much.I didn't consider that the DFHack app itself would need to be updated to recognize 64-bit memory address maps or whatever.
Now that there are both 64-bit and 32-bit versions of DF, will there need to be both 64-bit and 32-bit versions of Therapist?
If so, are there plans to support both? My DF machine is XP so it's 32-bit only for me.
On an entirely separate note does anyone have some tips for coordination between DT and DF for livestock. I want to dabble a bit in breeding (birds) in this fort but have memories that in the past I had trouble finding the same bird in each application. Long story short I want to be able find the bird I have picked in DT (so I can pick for size/characteristics) in DF to assign it to pasture. I remember having some difficulty in the past...That has been a pain for me in the past as well.
To get Dwarf Therapist to work, you need to download a slightly older version Dwarf Fortress - v0.43.03.
Then you need to manually update an ini file. Instructions here - https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts
Also, hopefully you haven't saved if you used a DF version newer than 0.43.03, because saves can't be backported (although they can easily be transferred between different builds of the same DF version).That's interesting.
Quick question: Would this version of DT be compatible be with 0.43.05?Dwarf Therapist is not compatible with Dwarf Fortress v0.43.05. The latest version it works with is v0.43.03.
If not, will it be compatible sometime in the future?Yes, once there's a working prototype of DFHack for Dwarf Fortress v0.43.05, then Dwarf Therapist can be updated to work with it.
Quick question: Would this version of DT be compatible be with 0.43.05?Dwarf Therapist is not compatible with Dwarf Fortress v0.43.05. The latest version it works with is v0.43.03.If not, will it be compatible sometime in the future?Yes, once there's a working prototype of DFHack for Dwarf Fortress v0.43.05, then Dwarf Therapist can be updated to work with it.
I'm not quite sure what you mean. Are you asking for a version of "0.43.03" that contains all of the 0.43.04-05 bugfixes? If you are, that already exists - it's 0.43.05. Making a new build of 0.43.03 that contains all of those bugfixes is something that's impossible for anyone but Toady to do, and he wouldn't do that because it would essentially involve reverting a few changes in 0.43.04-05 that weren't bugfixes. Also, even if he did that, the resulting executables would be just as different from the existing 0.43.03 build as 0.43.02, 0.43.01, 0.42.06, etc., so utilities that work with 0.43.03 wouldn't magically work with it.Yeah... I freely admit that I do not fully understand what all it is I am asking for, and I'm sure my entitled/priviledge needs to be checked here, just for asking this type of question,
is splintermind on haitus, gone, or quietly toiling away? No updates to github since July 19th, no posts in this thread since August..
This is the one utility I need above all else!
I've started work on this in the x64 branch. I'm not sure what adjustments need to be made in the pro for the qmake stuff yet though. Testing has been limited without offsets yet, so there will be more work for sure.
To sort of answer Chimerat from a month ago: You can use the DFHack naming function to give nicknames to creatures[...]
Select whatever you want to name and then press ctrl-shift-n to bring up the dialogue.Okay, thank you.
I think they might be waiting until there are 64-bit memory maps available to make testing easier.
Now that I'm done rambling about the grid layout editor, let's move on to superlabors. They're pretty neat. I was pretty sure old Therapist had, like, additional columns to toggle all jobs in a group for a dwarf. but haven't found any screenshot featuring that. Fever dream or not, that would be pretty nice and it's easy to implement with said superlabors. I know you can do that with a right click, but I think I've already made clear my opinion on right clicks...I think you need to create a custom view (clone the original) and add your superlabors to it.
Does the new "breakthrough" for DF Hack have any bearing on DT being brought up to the latest version?No, it doesn't. And it's not really a "breakthrough" - more of a bugfix for an issue that was causing DFHack to crash on Windows, but wasn't hindering 64-bit research elsewhere (and there had been some done on Windows before that issue showed up).
http://www.bay12forums.com/smf/index.php?topic=139553.msg7190743#msg7190743
If I'm understanding correctly, I think Lethosor had been using and making updates to some scripts to generate the DT memory layouts in the past, but with this new version, the scripts are completely out-of-date and need to be re-written.Just using the scripts, really. They definitely don't need to be completely rewritten at all, but they might need to be tweaked to get proper layouts generated.
With an almost-fully-functioning DFHack, the Dwarf Therapist team will probably have an easier time and maybe more motivation to try to make updated memory layouts for DF v0.43.05. I think there might still be some updating to do on the DT app itself to make it work with the 64-bit versions of Dwarf Fortress. So I'm wondering if we may see it updated to work with 32-bit Dwarf Fortress v0.43.05 before we see it working with 64-bit DF v0.43.05.
@gj39rtlpa - detailed reports are great, but please remember that you're talking to volunteers; please keep it civil.
@gj39rtlpa - detailed reports are great, but please remember that you're talking to volunteers; please keep it civil.I have worked in corporate America for >20 years, and I wish that the homegrown apps I had been exposed to were as professionally designed as DT.
Is it still possible to use Dwarf Therapist at all with the current versions? I'd hate to go back to the old way of managing labor; actually managing it from an individual unit lmao
No, DFHack being usable is not a requirement. DF globals and structure layouts being located is a requirement for both DT and DFHack, but in this case, DFHack is ahead of DT.Is it still possible to use Dwarf Therapist at all with the current versions? I'd hate to go back to the old way of managing labor; actually managing it from an individual unit lmao
To my understanding you cannot use Therapist with the most recent versions (hence the old version number in the title) due to a requirement for DFHack to be usable. There's been some progress recently but DFHack isn't quite there yet.
No, DFHack being usable is not a requirement. DF globals and structure layouts being located is a requirement for both DT and DFHack, but in this case, DFHack is ahead of DT.Is it still possible to use Dwarf Therapist at all with the current versions? I'd hate to go back to the old way of managing labor; actually managing it from an individual unit lmao
To my understanding you cannot use Therapist with the most recent versions (hence the old version number in the title) due to a requirement for DFHack to be usable. There's been some progress recently but DFHack isn't quite there yet.
By the way, the version number in the title corresponds to the last DF version supported out-of-the-box by DT. Basically, DT 37 contains memory layouts for 0.42.06. However, it will still work with 0.43.03, given memory layouts (which are available), since internal DT changes weren't required between 0.42.06 and 0.43.03.Is it still possible to use Dwarf Therapist at all with the current versions? I'd hate to go back to the old way of managing labor; actually managing it from an individual unit lmao
To my understanding you cannot use Therapist with the most recent versions (hence the old version number in the title) due to a requirement for DFHack to be usable. There's been some progress recently but DFHack isn't quite there yet.
Okay, what I should have said is that DFHack and DT depend on the same memory research, but also on people to do whatever work on DFHack/DT is necessary to make them work. Usually, DT requires less work than DFHack because it has a narrower scope, but in this case, it (and DFHack) have to be updated to work with 64-bit DF (not to mention the new compilers on Windows/Linux). The separate work, besides memory research, is farther along with DFHack than with DT, but those are two separate processes, and the progress on one at this point has little effect on progress on the other.By the way, the version number in the title corresponds to the last DF version supported out-of-the-box by DT. Basically, DT 37 contains memory layouts for 0.42.06. However, it will still work with 0.43.03, given memory layouts (which are available), since internal DT changes weren't required between 0.42.06 and 0.43.03.Is it still possible to use Dwarf Therapist at all with the current versions? I'd hate to go back to the old way of managing labor; actually managing it from an individual unit lmao
To my understanding you cannot use Therapist with the most recent versions (hence the old version number in the title) due to a requirement for DFHack to be usable. There's been some progress recently but DFHack isn't quite there yet.
Memory layouts are files that tell Dwarf Therapist how to talk to a particular version of Dwarf Fortress.
There are instructions for updating them here:
https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts
Sorry, those were instruction for installing the latest memory layouts into Dwarf Therapist. It would probably be kind of hard for you to get Dwarf Therapist working with Dwarf Fortress v0.43.05 at this point, especially if you are wanting to use the 64-bit version of the game.
I think you would need to compile a 32-bit version of the dev version of DFHack, then find and run the DT-memory-layout scripts (I'm not sure where they are). I'm guessing the scripts would give you some data that would need to be copy-pasted into the memory layout. Then you would need to install that updated memory layouts into Dwarf Therapist. That might give you partial Dwarf Therapist support in the 32-bit version of Dwarf Fortress v0.43.05. I think there's still stuff left to be mapped to get full support. Also the layout-mapping scripts might need some updating too.
I'm not trying to be mean, but unless you're a hacker or programmer, you might be better off waiting for someone else to get something working. I may be wrong about this, but I don't think people can really help map the memory unless they kind of already know what they're doing. I think they would appreciate any help, but I'm guessing it's not really worth their effort to train non-hackers to map the Dwarf Fortress memory.
I can only assume that there is something else that's looking for (and failing to find) the Visual C++ 2010 runtime.
Oh, that's great! Then i can play in 43.05 and assign dorfs in 40.24 ;-))
The thing i forget of.
Oh. Fck.
I didn't even realize there was a 32 bit version of DF 43.05. I thought it was all going to 64 now.I have not heard of that, but for my (our?) purposes, it wouldn't really matter [if 43.05 still does not work with DT].
so his playerbase can even use his opus.Many, many people already do?
[info]
checksum=0x577b57ff
version_name=v0.43.05 win32
complete=true
[addresses]
cur_year_tick=0x0188d6b0
current_year=0x018986b8
dwarf_civ_index=0x018b6090
dwarf_race_index=0x018b609c
fortress_entity=0x018bad24
historical_entities_vector=0x018d0b4c
creature_vector=0x018e43e8
active_creature_vector=0x018e43f4
weapons_vector=0x018e4494
shields_vector=0x018e44dc
quivers_vector=0x018e4500
crutches_vector=0x018e4524
backpacks_vector=0x018e4530
ammo_vector=0x018e453c
flasks_vector=0x018e4698
pants_vector=0x018e4a1c
armor_vector=0x018e4a4c
shoes_vector=0x018e4a58
helms_vector=0x018e4a64
gloves_vector=0x018e4a70
artifacts_vector=0x018e4ac4
squad_vector=0x019df2cc
activities_vector=0x019df2fc
fake_identities_vector=0x019e2680
poetic_forms_vector=0x019e2764
musical_forms_vector=0x019e277c
dance_forms_vector=0x019e2794
occupations_vector=0x019e27dc
world_data=0x019e5540
material_templates_vector=0x019e5cd8
inorganics_vector=0x019e5ce4
plants_vector=0x019e5cfc
races_vector=0x019e5d98
itemdef_weapons_vector=0x019e5dd8
itemdef_trap_vector=0x019e5de4
itemdef_toy_vector=0x019e5df0
itemdef_tool_vector=0x019e5dfc
itemdef_instrument_vector=0x019e5f10
itemdef_armor_vector=0x019e5f1c
itemdef_ammo_vector=0x019e5f28
itemdef_siegeammo_vector=0x019e5f34
itemdef_glove_vector=0x019e5f40
itemdef_shoe_vector=0x019e5f4c
itemdef_shield_vector=0x019e5f58
itemdef_helm_vector=0x019e5f64
itemdef_pant_vector=0x019e5f70
itemdef_food_vector=0x019e5f7c
language_vector=0x019e5f94
translation_vector=0x019e5fac
colors_vector=0x019ea578
shapes_vector=0x019ea584
reactions_vector=0x019ea59c
base_materials=0x019eab64
all_syndromes_vector=0x019eb5d4
events_vector=0x019ebb6c
historical_figures_vector=0x019ebb84
world_site_type=0x006c
active_sites_vector=0x00048228
[offsets]
word_table=0x0030
string_buffer_offset=0x0000
[word_offsets]
base=0x0000
noun_singular=0x0018
noun_plural=0x0030
adjective=0x0048
verb=0x0078
present_simple_verb=0x0090
past_simple_verb=0x00a8
past_participle_verb=0x00c0
present_participle_verb=0x00d8
words=0x0030
word_type=0x004c
language_id=0x005c
[general_ref_offsets]
ref_type=0x0008
artifact_id=0x0004
item_id=0x0004
[race_offsets]
name_singular=0x0018
name_plural=0x0030
adjective=0x0048
baby_name_singular=0x0060
baby_name_plural=0x0078
child_name_singular=0x0090
child_name_plural=0x00a8
pref_string_vector=0x0100
castes_vector=0x0118
pop_ratio_vector=0x0124
materials_vector=0x2250
flags=0x0130
tissues_vector=0x225c
[caste_offsets]
caste_name=0x0018
caste_descr=0x0198
caste_trait_ranges=0x0464
caste_phys_att_ranges=0x0f28
baby_age=0x03a8
child_age=0x03ac
adult_size=0x03c0
flags=0x0590
body_info=0x059c
skill_rates=0x06b8
caste_att_rates=0x113c
caste_att_caps=0x126c
shearable_tissues_vector=0x1364
extracts=0x2c38
[hist_entity_offsets]
histfigs=0x0098
beliefs=0x06d4
squads=0x09dc
positions=0x0958
assignments=0x0980
assign_hist_id=0x0004
assign_position_id=0x000c
position_id=0x0018
position_name=0x0054
position_female_name=0x0084
position_male_name=0x00b4
[hist_figure_offsets]
hist_race=0x0002
hist_name=0x0038
id=0x00bc
hist_fig_info=0x00e8
reputation=0x002c
current_ident=0x0018
fake_name=0x0004
fake_birth_year=0x0078
fake_birth_time=0x007c
kills=0x0018
killed_race_vector=0x000c
killed_undead_vector=0x0048
killed_counts_vector=0x0054
[hist_event_offsets]
event_year=0x0004
id=0x0014
killed_hist_id=0x0018
[item_offsets]
item_type=0x0001
item_def=0x00a4
id=0x0018
general_refs=0x0028
stack_size=0x005c
wear=0x0070
mat_type=0x0080
mat_index=0x0084
maker_race=0x0088
quality=0x008a
[item_subtype_offsets]
sub_type=0x001c
name=0x003c
name_plural=0x0054
adjective=0x006c
[item_filter_offsets]
item_subtype=0x0002
mat_class=0x0004
mat_type=0x0006
mat_index=0x0008
[weapon_subtype_offsets]
single_size=0x00a8
multi_size=0x00ac
ammo=0x0090
melee_skill=0x008c
ranged_skill=0x008e
[armor_subtype_offsets]
layer=0x0008
mat_name=0x0084
other_armor_level=0x0088
armor_adjective=0x009c
armor_level=0x00b8
chest_armor_properties=0x00c4
pants_armor_properties=0x00cc
other_armor_properties=0x0098
[material_offsets]
solid_name=0x0094
liquid_name=0x00ac
gas_name=0x00c4
powder_name=0x00dc
paste_name=0x00f4
pressed_name=0x010c
flags=0x0208
inorganic_materials_vector=0x00e0
inorganic_flags=0x0024
[plant_offsets]
name=0x0030
name_plural=0x0048
name_leaf_plural=0x00c0
name_seed_plural=0x0090
materials_vector=0x01ec
flags=0x0028
[descriptor_offsets]
color_name=0x0030
shape_name_plural=0x0048
[health_offsets]
parent_id=0x0030
body_part_flags=0x0034
layers_vector=0x003c
number=0x005c
names_vector=0x0064
names_plural_vector=0x0070
layer_tissue=0x0018
layer_global_id=0x0048
tissue_name=0x0020
tissue_flags=0x0018
[dwarf_offsets]
first_name=0x0000
nick_name=0x0018
last_name=0x0030
custom_profession=0x0064
profession=0x007c
race=0x0080
flags1=0x00c8
flags2=0x00cc
flags3=0x00d0
meeting=0x00d8
caste=0x00e4
sex=0x00e6
id=0x00e8
animal_type=0x00f0
civ=0x00f8
specific_refs=0x0134
squad_id=0x014c
squad_position=0x0150
recheck_equipment=0x019c
mood=0x0224
birth_year=0x0244
birth_time=0x0248
pet_owner_id=0x026c
current_job=0x0330
physical_attrs=0x03e0
body_size=0x04b8
size_info=0x0488
curse=0x0590
curse_add_flags1=0x057c
turn_count=0x0638
souls=0x0718
states=0x0680
labors=0x0734
hist_id=0x07fc
artifact_name=0x06b4
active_syndrome_vector=0x0844
syn_sick_flag=0x0030
unit_health_info=0x08a4
temp_mood=0x0568
counters1=0x0550
counters2=0x056c
counters3=0x0654
limb_counters=0x0804
blood=0x04a0
body_component_info=0x0340
layer_status_vector=0x0024
wounds_vector=0x03a0
mood_skill=0x0334
used_items_vector=0x08a8
affection_level=0x000c
inventory=0x02bc
inventory_item_mode=0x0004
inventory_item_bodypart=0x0006
[syndrome_offsets]
cie_effects=0x0018
cie_end=0x0014
cie_first_perc=0x0060
cie_phys=0x0078
cie_ment=0x0094
syn_classes_vector=0x006c
trans_race_id=0x0094
[unit_wound_offsets]
parts=0x0004
id=0x0004
layer=0x0006
general_flags=0x001c
flags1=0x003c
flags2=0x0040
effects_vector=0x002c
bleeding=0x0044
pain=0x0048
cur_pen=0x0070
max_pen=0x0072
[soul_details]
name=0x0004
orientation=0x0070
mental_attrs=0x0094
skills=0x0200
preferences=0x020c
personality=0x0218
beliefs=0x0000
emotions=0x0018
goals=0x0024
goal_realized=0x0018
traits=0x0040
stress_level=0x00c4
[emotion_offsets]
emotion_type=0x0000
strength=0x0008
thought_id=0x000c
sub_id=0x0010
level=0x0014
year=0x0020
year_tick=0x0024
[job_details]
id=0x000c
mat_type=0x0028
mat_index=0x002c
mat_category=0x0040
on_break_flag=0x0011
sub_job_id=0x0044
reaction=0x0018
reaction_skill=0x0050
[squad_offsets]
id=0x0000
name=0x0004
alias=0x0068
members=0x0080
orders=0x008c
schedules=0x0098
sched_size=0x0040
sched_orders=0x001c
sched_assign=0x0028
alert=0x00a4
carry_food=0x0110
carry_water=0x0112
ammunition=0x00d4
ammunition_qty=0x000c
quiver=0x00bc
backpack=0x00c0
flask=0x00c4
armor_vector=0x0040
helm_vector=0x004c
pants_vector=0x0058
gloves_vector=0x0064
shoes_vector=0x0070
shield_vector=0x007c
weapon_vector=0x0088
uniform_item_filter=0x0004
uniform_indiv_choice=0x0020
[activity_offsets]
activity_type=0x0004
events=0x0008
participants=0x002c
sq_lead=0x0068
sq_skill=0x0070
sq_train_rounds=0x007c
pray_deity=0x0064
pray_sphere=0x0068
knowledge_category=0x0074
knowledge_flag=0x0078
perf_type=0x0064
perf_participants=0x0094
perf_histfig=0x000c
[valid_flags_2]
size=0
[invalid_flags_1]
size=9
1\name=a skeleton
1\value=0x00002000
2\name=a merchant
2\value=0x00000040
3\name=outpost liason or diplomat
3\value=0x00000800
4\name=an invader or hostile
4\value=0x00020000
5\name=an invader or hostile
5\value=0x00080000
6\name=resident, invader or ambusher
6\value=0x00600000
7\name=part of a merchant caravan
7\value=0x00000080
8\name="Dead, Jim."
8\value=0x00000002
9\name=marauder
9\value=0x00000010
[invalid_flags_2]
size=5
1\name="killed, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
3\name=resident
3\value=0x00080000
4\name=uninvited visitor
4\value=0x00400000
5\name=visitor
5\value=0x00800000
[invalid_flags_3]
size=1
1\name=a ghost
1\value=0x00001000
I'm guessing the 64-bit branch of Dwarf Therapist still needs more fixes to be fully-compatible with 64-bit Dwarf Fortress, but do you think you would be able to make a 64-bit memory layout too? A partially-working Dwarf Therapist for 64-bit Dwarf Fortress would still be nice to have.
Yeah, it's not that simple. It should never use "long" to hold DF data, for one thing, because "long" varies in size with DF's compilers, and DT can be compiled as a 32-bit or 64-bit binary to work with 32-bit DF. DT doesn't even have to be compiled with the same compiler as DF either.
Anyway, hooking into 64-bit processes has some non-trivial differences, not to mention the fact that DT uses completely different APIs on every platform already. DT has probably also hardcoded the layouts of some DF structures (vectors, strings, etc.) that vary between 32-bit and 64-bit DF, as well as between MSVC 2010 and 2015, which probably aren't trivial to change. There's also the question of keeping 32-bit compatibility, which arguably makes debugging far easier, but also complicates support for both architectures somewhat.
Yeah, it's not that simple. It should never use "long" to hold DF data, for one thing, because "long" varies in size with DF's compilers, and DT can be compiled as a 32-bit or 64-bit binary to work with 32-bit DF. DT doesn't even have to be compiled with the same compiler as DF either.
Anyway, hooking into 64-bit processes has some non-trivial differences, not to mention the fact that DT uses completely different APIs on every platform already. DT has probably also hardcoded the layouts of some DF structures (vectors, strings, etc.) that vary between 32-bit and 64-bit DF, as well as between MSVC 2010 and 2015, which probably aren't trivial to change. There's also the question of keeping 32-bit compatibility, which arguably makes debugging far easier, but also complicates support for both architectures somewhat.
Unrelated: Here are OS X layouts that I generated with devel/export-dt-ini, after Quietust's fix (although that shouldn't make a difference on OS X). They are entirely untested, but may work somewhat if you're lucky. The 64-bit one is entirely useless at the moment, but might work once DT supports 64-bit DF.Spoiler: v0.43.05 osx32 (click to show/hide)Spoiler: v0.43.05 osx64 (click to show/hide)
I remember some conversations in the lead-up to DF 0.40, suggesting that Therapist might eventually be backed by DFHack instead of continuing to roll it's own memory access tools. Given the new challenges of 32/64 bit compatibility and a new compiler, this might be a good time to revisit the idea!Maybe. It would require some extra RPC work on the DFHack side and a rewrite of some of DT, and could open up new possibilities for bringing down DF, which is bad. However, it would probably reduce maintenance on the DT side, and it would get around the funky stuff DT has to do to hook in.
Attached below is a valid INI file for Dwarf Fortress 0.43.05-win32 which should work in Dwarf Therapist v.37.0:
Attached below is a valid INI file for Dwarf Fortress 0.43.05-win32 which should work in Dwarf Therapist v.37.0:
Yeah. That's mainly an issue on Windows because Microsoft likes to change the layouts of STL things between versions.Actually, the change made between MSVC 2012 and 2015 was quite benign - both strings and vectors shrunk in size, but they did so by eliminating a field at the end of the structure (the "allocator", which was just visible as padding anyways), so Therapist sees them exactly the same as before (since it keeps offsets of each individual field rather than a full structure layout like DFHack uses).
Attached below is a valid INI file for Dwarf Fortress 0.43.05-win32 which should work in Dwarf Therapist v.37.0:
I might be interested in converting Therapist to use DFHacks RPC functions, instead of the debugging stuff that it uses now, which will mean that it will automatically work with any version of DF that has DFhack installed, but would also mean that you wouldn't be able to use .ini files with it anymore.Wouldn't a non-DFHack version still need to be maintained, given how long it takes for DFHack to catch up with DF releases?
Attached below is a valid INI file for Dwarf Fortress 0.43.05-win32 which should work in Dwarf Therapist v.37.0:Code: [Select][info]
checksum=0x577b57ff
version_name=v0.43.05 win32
complete=true
[addresses]
cur_year_tick=0x0188d6b0
current_year=0x018986b8
dwarf_civ_index=0x018b6090
dwarf_race_index=0x018b609c
fortress_entity=0x018bad24
historical_entities_vector=0x018d0b4c
creature_vector=0x018e43e8
active_creature_vector=0x018e43f4
weapons_vector=0x018e4494
shields_vector=0x018e44dc
quivers_vector=0x018e4500
crutches_vector=0x018e4524
backpacks_vector=0x018e4530
ammo_vector=0x018e453c
flasks_vector=0x018e4698
pants_vector=0x018e4a1c
armor_vector=0x018e4a4c
shoes_vector=0x018e4a58
helms_vector=0x018e4a64
gloves_vector=0x018e4a70
artifacts_vector=0x018e4ac4
squad_vector=0x019df2cc
activities_vector=0x019df2fc
fake_identities_vector=0x019e2680
poetic_forms_vector=0x019e2764
musical_forms_vector=0x019e277c
dance_forms_vector=0x019e2794
occupations_vector=0x019e27dc
world_data=0x019e5540
material_templates_vector=0x019e5cd8
inorganics_vector=0x019e5ce4
plants_vector=0x019e5cfc
races_vector=0x019e5d98
itemdef_weapons_vector=0x019e5dd8
itemdef_trap_vector=0x019e5de4
itemdef_toy_vector=0x019e5df0
itemdef_tool_vector=0x019e5dfc
itemdef_instrument_vector=0x019e5f10
itemdef_armor_vector=0x019e5f1c
itemdef_ammo_vector=0x019e5f28
itemdef_siegeammo_vector=0x019e5f34
itemdef_glove_vector=0x019e5f40
itemdef_shoe_vector=0x019e5f4c
itemdef_shield_vector=0x019e5f58
itemdef_helm_vector=0x019e5f64
itemdef_pant_vector=0x019e5f70
itemdef_food_vector=0x019e5f7c
language_vector=0x019e5f94
translation_vector=0x019e5fac
colors_vector=0x019ea578
shapes_vector=0x019ea584
reactions_vector=0x019ea59c
base_materials=0x019eab64
all_syndromes_vector=0x019eb5d4
events_vector=0x019ebb6c
historical_figures_vector=0x019ebb84
world_site_type=0x006c
active_sites_vector=0x00048228
[offsets]
word_table=0x0030
string_buffer_offset=0x0000
[word_offsets]
base=0x0000
noun_singular=0x0018
noun_plural=0x0030
adjective=0x0048
verb=0x0078
present_simple_verb=0x0090
past_simple_verb=0x00a8
past_participle_verb=0x00c0
present_participle_verb=0x00d8
words=0x0030
word_type=0x004c
language_id=0x005c
[general_ref_offsets]
ref_type=0x0008
artifact_id=0x0004
item_id=0x0004
[race_offsets]
name_singular=0x0018
name_plural=0x0030
adjective=0x0048
baby_name_singular=0x0060
baby_name_plural=0x0078
child_name_singular=0x0090
child_name_plural=0x00a8
pref_string_vector=0x0100
castes_vector=0x0118
pop_ratio_vector=0x0124
materials_vector=0x2250
flags=0x0130
tissues_vector=0x225c
[caste_offsets]
caste_name=0x0018
caste_descr=0x0198
caste_trait_ranges=0x0464
caste_phys_att_ranges=0x0f28
baby_age=0x03a8
child_age=0x03ac
adult_size=0x03c0
flags=0x0590
body_info=0x059c
skill_rates=0x06b8
caste_att_rates=0x113c
caste_att_caps=0x126c
shearable_tissues_vector=0x1364
extracts=0x2c38
[hist_entity_offsets]
histfigs=0x0098
beliefs=0x06d4
squads=0x09dc
positions=0x0958
assignments=0x0980
assign_hist_id=0x0004
assign_position_id=0x000c
position_id=0x0018
position_name=0x0054
position_female_name=0x0084
position_male_name=0x00b4
[hist_figure_offsets]
hist_race=0x0002
hist_name=0x0038
id=0x00bc
hist_fig_info=0x00e8
reputation=0x002c
current_ident=0x0018
fake_name=0x0004
fake_birth_year=0x0078
fake_birth_time=0x007c
kills=0x0018
killed_race_vector=0x000c
killed_undead_vector=0x0048
killed_counts_vector=0x0054
[hist_event_offsets]
event_year=0x0004
id=0x0014
killed_hist_id=0x0018
[item_offsets]
item_type=0x0001
item_def=0x00a4
id=0x0018
general_refs=0x0028
stack_size=0x005c
wear=0x0070
mat_type=0x0080
mat_index=0x0084
maker_race=0x0088
quality=0x008a
[item_subtype_offsets]
sub_type=0x001c
name=0x003c
name_plural=0x0054
adjective=0x006c
[item_filter_offsets]
item_subtype=0x0002
mat_class=0x0004
mat_type=0x0006
mat_index=0x0008
[weapon_subtype_offsets]
single_size=0x00a8
multi_size=0x00ac
ammo=0x0090
melee_skill=0x008c
ranged_skill=0x008e
[armor_subtype_offsets]
layer=0x0008
mat_name=0x0084
other_armor_level=0x0088
armor_adjective=0x009c
armor_level=0x00b8
chest_armor_properties=0x00c4
pants_armor_properties=0x00cc
other_armor_properties=0x0098
[material_offsets]
solid_name=0x0094
liquid_name=0x00ac
gas_name=0x00c4
powder_name=0x00dc
paste_name=0x00f4
pressed_name=0x010c
flags=0x0208
inorganic_materials_vector=0x00e0
inorganic_flags=0x0024
[plant_offsets]
name=0x0030
name_plural=0x0048
name_leaf_plural=0x00c0
name_seed_plural=0x0090
materials_vector=0x01ec
flags=0x0028
[descriptor_offsets]
color_name=0x0030
shape_name_plural=0x0048
[health_offsets]
parent_id=0x0030
body_part_flags=0x0034
layers_vector=0x003c
number=0x005c
names_vector=0x0064
names_plural_vector=0x0070
layer_tissue=0x0018
layer_global_id=0x0048
tissue_name=0x0020
tissue_flags=0x0018
[dwarf_offsets]
first_name=0x0000
nick_name=0x0018
last_name=0x0030
custom_profession=0x0064
profession=0x007c
race=0x0080
flags1=0x00c8
flags2=0x00cc
flags3=0x00d0
meeting=0x00d8
caste=0x00e4
sex=0x00e6
id=0x00e8
animal_type=0x00f0
civ=0x00f8
specific_refs=0x0134
squad_id=0x014c
squad_position=0x0150
recheck_equipment=0x019c
mood=0x0224
birth_year=0x0244
birth_time=0x0248
pet_owner_id=0x026c
current_job=0x0330
physical_attrs=0x03e0
body_size=0x04b8
size_info=0x0488
curse=0x0590
curse_add_flags1=0x057c
turn_count=0x0638
souls=0x0718
states=0x0680
labors=0x0734
hist_id=0x07fc
artifact_name=0x06b4
active_syndrome_vector=0x0844
syn_sick_flag=0x0030
unit_health_info=0x08a4
temp_mood=0x0568
counters1=0x0550
counters2=0x056c
counters3=0x0654
limb_counters=0x0804
blood=0x04a0
body_component_info=0x0340
layer_status_vector=0x0024
wounds_vector=0x03a0
mood_skill=0x0334
used_items_vector=0x08a8
affection_level=0x000c
inventory=0x02bc
inventory_item_mode=0x0004
inventory_item_bodypart=0x0006
[syndrome_offsets]
cie_effects=0x0018
cie_end=0x0014
cie_first_perc=0x0060
cie_phys=0x0078
cie_ment=0x0094
syn_classes_vector=0x006c
trans_race_id=0x0094
[unit_wound_offsets]
parts=0x0004
id=0x0004
layer=0x0006
general_flags=0x001c
flags1=0x003c
flags2=0x0040
effects_vector=0x002c
bleeding=0x0044
pain=0x0048
cur_pen=0x0070
max_pen=0x0072
[soul_details]
name=0x0004
orientation=0x0070
mental_attrs=0x0094
skills=0x0200
preferences=0x020c
personality=0x0218
beliefs=0x0000
emotions=0x0018
goals=0x0024
goal_realized=0x0018
traits=0x0040
stress_level=0x00c4
[emotion_offsets]
emotion_type=0x0000
strength=0x0008
thought_id=0x000c
sub_id=0x0010
level=0x0014
year=0x0020
year_tick=0x0024
[job_details]
id=0x000c
mat_type=0x0028
mat_index=0x002c
mat_category=0x0040
on_break_flag=0x0011
sub_job_id=0x0044
reaction=0x0018
reaction_skill=0x0050
[squad_offsets]
id=0x0000
name=0x0004
alias=0x0068
members=0x0080
orders=0x008c
schedules=0x0098
sched_size=0x0040
sched_orders=0x001c
sched_assign=0x0028
alert=0x00a4
carry_food=0x0110
carry_water=0x0112
ammunition=0x00d4
ammunition_qty=0x000c
quiver=0x00bc
backpack=0x00c0
flask=0x00c4
armor_vector=0x0040
helm_vector=0x004c
pants_vector=0x0058
gloves_vector=0x0064
shoes_vector=0x0070
shield_vector=0x007c
weapon_vector=0x0088
uniform_item_filter=0x0004
uniform_indiv_choice=0x0020
[activity_offsets]
activity_type=0x0004
events=0x0008
participants=0x002c
sq_lead=0x0068
sq_skill=0x0070
sq_train_rounds=0x007c
pray_deity=0x0064
pray_sphere=0x0068
knowledge_category=0x0074
knowledge_flag=0x0078
perf_type=0x0064
perf_participants=0x0094
perf_histfig=0x000c
[valid_flags_2]
size=0
[invalid_flags_1]
size=9
1\name=a skeleton
1\value=0x00002000
2\name=a merchant
2\value=0x00000040
3\name=outpost liason or diplomat
3\value=0x00000800
4\name=an invader or hostile
4\value=0x00020000
5\name=an invader or hostile
5\value=0x00080000
6\name=resident, invader or ambusher
6\value=0x00600000
7\name=part of a merchant caravan
7\value=0x00000080
8\name="Dead, Jim."
8\value=0x00000002
9\name=marauder
9\value=0x00000010
[invalid_flags_2]
size=5
1\name="killed, Jim."
1\value=0x00000080
2\name=from the Underworld. SPOOKY!
2\value=0x00040000
3\name=resident
3\value=0x00080000
4\name=uninvited visitor
4\value=0x00400000
5\name=visitor
5\value=0x00800000
[invalid_flags_3]
size=1
1\name=a ghost
1\value=0x00001000
It took me a while to get a valid INI file - for whatever reason, the "devel/export-dt-ini" command was totally broken and completely ignored ASLR, thus producing bogus offsets that didn't work.
You need the 32-bit SDL version. (df_43_05_win32.zip)
(1A) Is it possible, and (1B) would there be any problems with, transferring my existing 64bit game save to use in the 32bit game version?Yes, and probably not. You should check to make sure your save isn't taking up multiple gigabytes of memory when it's loaded. If it is, 32-bit DF could crash if you load the save (or be on the verge of crashing if memory usage increases). That should be pretty unlikely, though.
(2) What do I do with this 32bit .ini fix? Am I supposed to replace an existing file with it? Do I name the file anything in particular? Do you just use notepad, or is there particular software.Save it as a new file to the appropriate folder listed at https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts). Ideally you should name it similarly to the existing one for 0.43.03 or whatever versions you have already.
(3) If I could transfer the 64 bit save to the 32 bit game, would there be any difficulties trying to transfer it back to use on the 64 bit game again once DT gets updated for 64 bit?Probably not. Since 64-bit DF can use more memory, the memory usage shouldn't be an issue the other way around.
Cheers for your response lesthosor.(1A) Is it possible, and (1B) would there be any problems with, transferring my existing 64bit game save to use in the 32bit game version?Yes, and probably not.
Attached below is a valid INI file for Dwarf Fortress 0.43.05-win32 which should work in Dwarf Therapist v.37.0:Just tested out an embark using that memory layout in Therapist 37, and it seems to work beautifully with 43.05 win32 ! THANK YOU SO MUCH!!!Spoiler (click to show/hide)
It took me a while to get a valid INI file - for whatever reason, the "devel/export-dt-ini" command was totally broken and completely ignored ASLR, thus producing bogus offsets that didn't work.
I may have encountered a bug of some sort. On the "Labours Full" tab, I right-click on Glassmaking and set it to sort by Role Rating. I then left-click on Glassmaking to refresh the sorting, and I also click "Read Dwarves" (just in case). But the dwarves are not sorted by their role rating. I see 97.34%, then 50.70%, then 53.95%, and so on down the list with no apparent sorting at all.you sorted by skill/role glassmaking and it sorted as good as possible with descending skill.
But the strangest part is... this only seems to apply to Glassmaking. I tested most of the other labours and they all correctly sorted by role rating, accurate down to the second decimal.
But another strange thing is that it does sort Glassmaking correctly by role rating on the Roles tab rather than the Labours Full tab, as long as you click Glassmaking while on the Roles tab.
The image below is what I see when sorting by Role Rating on the Labours Full tab.
(http://i.imgur.com/zgwKy0F.png)
The image below is what I see when changing to the Roles tab but not re-doing the sort. Notice how the numbers show that it's obviously not sorting correctly. Also notice how the names are all in the same location as in the previous image, suggesting that it's kept the sort results from the sorting done on the Labours Full tab.
(http://i.imgur.com/M8ZVxpY.png)
The image below is what I see when clicking "Glassmaking" once again, but this time now that I'm on the Roles tab. Notice how it correctly sorts
(http://i.imgur.com/XWq5wCb.png)
That's awesome, Hello71. I might install a Linux distribution later and try it out. Are you going to try to get the Labors pane to work too?
git clone https://github.com/Hello71/Dwarf-Therapist.git
cd Dwarf-Therapist
cmake . # out-of-tree builds work too, but you'll have to copy the "share" directory
make -j$(nproc)
curl -o share/memory_layouts/linux/0.43.05-linux64-therapist.ini https://gist.githubusercontent.com/lethosor/4ce2a574a510ddaadcbdfd829eac20c9/raw
./DwarfTherapist
Linux 64-bit now 'working' with https://github.com/Hello71/Dwarf-Therapist (use cmake) and https://gist.github.com/lethosor/4ce2a574a510ddaadcbdfd829eac20c9.Hi, DT was working for linux 43.05x64 until just before a dwarf went moody then it started crashing on the Read. It still crashed after the dwarf completed his mood (he created a musical instrument) so I ran this command (sudo strace -I 1 ./DwarfTherapist) and in the output DT appears to have failed during the read of the "Activities vector", marked in red.
Linux 64-bit now 'working' with https://github.com/Hello71/Dwarf-Therapist (use cmake) and https://gist.github.com/lethosor/4ce2a574a510ddaadcbdfd829eac20c9.Hi, DT was working for linux 43.05x64 until just before a dwarf went moody then it started crashing on the Read. It still crashed after the dwarf completed his mood (he created a musical instrument) so I ran this command (sudo strace -I 1 ./DwarfTherapist) and in the output DT appears to have failed during the read of the "Activities vector", marked in red.I have the saved game. I could fool with adding a feedback line to the DwarfTherapist code, recompile, and see what additional info I can get from it, but am looking for a better option.Spoiler (click to show/hide)
CMake ought to rebuild everything properly even if you don't remove the build folder first (although the time it would take to recreate a build folder is negligible compared to rebuild time).
It does for me, or at least CMAKE_BUILD_TYPE changes - I'm not sure about other settings, but since there are separate CMAKE_CXX_FLAGS settings for different build types, I think it should work. That could be an issue if other cached variables change depending on the build type, though.
I have only time on my hands. What can I do to help.
Linux 64-bit now 'working' with https://github.com/Hello71/Dwarf-Therapist (use cmake) and https://gist.github.com/lethosor/4ce2a574a510ddaadcbdfd829eac20c9. Only Social and Attributes panes load right, and it'll probably fuck up your DT ini, but if you just want to view the basic biographical information it'll probably work. Recommended only for DF/DT veterans, if it breaks you get to keep both pieces.
All of the warnings are still valid, especially those ones about memory corruption, eaten ini files, and crashing, but I'm using DT on Ubuntu 14.04 for DF linux 64bit 43.05 and have the basic functionality of DT without steady crashing. The changing of labors hasn't been causing crashes but something less common might (my first dwarf with a kill caused a crash but that bug was since fixed). My setup was built from the source links above. As changes have been made I've had to rebuild a few times and copy and paste this command list each time (which has links to where things are installed on my machine, yours may differ, etc, the goal is to show all the steps I take, not to give you an easy copy and paste list)That's awesome, Hello71. I might install a Linux distribution later and try it out. Are you going to try to get the Labors pane to work too?
All the panes work for displaying if you delete then re-add them, but tend to crash the program, including if you try to change anything, or even as I found when moving the cursor around. Unfortunately, fixing that will probably take a lot longer than adding the 64-bit support, because it disappears whenever using valgrind (damn heisenbugs...).
Instructions to use if anyone wants to try:Code: [Select]git clone https://github.com/Hello71/Dwarf-Therapist.git
cd Dwarf-Therapist
cmake . # out-of-tree builds work too, but you'll have to copy the "share" directory
make -j$(nproc)
curl -o share/memory_layouts/linux/0.43.05-linux64-therapist.ini https://gist.githubusercontent.com/lethosor/4ce2a574a510ddaadcbdfd829eac20c9/raw
./DwarfTherapist
warning: it will eat your DT INI and possibly (although probably not) your DF save. it will probably not be useful for anything due to crashing regularly.
I have only time on my hands. What can I do to help.
Why is it taking so long?
I'm about to go stark raving mad!
Is there an option to exclude non-citizens from the labors view? I have a very large number of visitors in my fortress and there isn't a lot of point in having them all listed when I can't do anything with them.Yeah, go to Options and check the box labeled "Don't display visitors/guests"
Is there an option to exclude non-citizens from the labors view? I have a very large number of visitors in my fortress and there isn't a lot of point in having them all listed when I can't do anything with them.Yeah, go to Options and check the box labeled "Don't display visitors/guests"
Also I'm getting a crash on reading. It's just after a new migrant wave came. Heres the gdb info:Backtrace:Spoiler (click to show/hide)Let me know if theres any other info I can post to help.Spoiler (click to show/hide)
src\dfinstancewindows.cpp(92) : error C2057: expected constant expression
src\dfinstancewindows.cpp(92) : error C2466: cannot allocate an array of constant size 0
src\dfinstancewindows.cpp(92) : error C2133: 'buf' : unknown size
int len = read_int(addr + memory_layout()->string_length_offset());
...
char buf[len];
Sorry if this is an obvious question, but I'm running into some trouble building the latest version for Windows. Getting this error:Code: [Select]src\dfinstancewindows.cpp(92) : error C2057: expected constant expression
src\dfinstancewindows.cpp(92) : error C2466: cannot allocate an array of constant size 0
src\dfinstancewindows.cpp(92) : error C2133: 'buf' : unknown size
The problem stems from https://github.com/splintermind/Dwarf-Therapist/blob/DF2016/src/dfinstancewindows.cpp#L92, which is trying to create an array with an unknown size:Code: [Select]int len = read_int(addr + memory_layout()->string_length_offset());
...
char buf[len];
I can see why this error is happening, I guess I'm more wondering how this code ever worked in the first place and why I'm just running into it now. I suppose I could submit a fix.
MSVC. I made a simple fix that makes it work without causing a memory leak. Will send a PR.Saying your compiler is "MSVC" is sort of like saying your operating system is "Windows" - the version number is very important when diagnosing problems.
It's MSVC 2015. That didn't seem relevant for this particular problem, as the issue is obviously support for VLAs, which aren't supported on any version of MSVC but are supported by GCC.MSVC. I made a simple fix that makes it work without causing a memory leak. Will send a PR.Saying your compiler is "MSVC" is sort of like saying your operating system is "Windows" - the version number is very important when diagnosing problems.
I'm on the latest version of Hello71's fork and getting a crash on reading. Idk if its something wrong on my end or not.Spoiler (click to show/hide)
Therapist crashes on connect, newest version of both therapist and dfAre you using 32-bit or 64-bit DF 0.43.05? What platform are you using? Are you referring to the newest released version of DT (37.0) or one you compiled yourself from source? v37.0 has no support for DF 0.43.05 at all, but it shouldn't crash. Hello71's fork has some 64-bit support, but I'm unsure if it works on Windows.
writing requires remote syscall in order to work reliably, and I haven't figured out how to do that yet. not a technical issue, just haven't bothered. if you can figure out how ptrace syscalls are supposed to work, fix DFInstanceLinux::remote_syscall.
edit: writing *strings*
I'm using the 64 bit Dwarf fortress with the 'recent version' link of therapist on Windows 10.
fixed
fixed
You're a gentleman and a scholar. Thank you very much!
EDIT: Welp. When I change a profession name and write back to DF, it crashes:
[xcb] Unknown request in queue while dequeuing
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
Dwarf_Fortress: ../../src/xcb_io.c:165: dequeue_pending_request: Assertion `!xcb_xlib_unknown_req_in_deq' failed.
Aborted
It happens a few seconds after unpausing, but I can trigger it by attempting to view the unit screen. Something's still wonky with writing strings back to DF.
I am now using the recent memory addresses and a 32 bit version of the game. Therapist can no longer find dwarf fortress.
fixed
You're a gentleman and a scholar. Thank you very much!
EDIT: Welp. When I change a profession name and write back to DF, it crashes:
[xcb] Unknown request in queue while dequeuing
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
Dwarf_Fortress: ../../src/xcb_io.c:165: dequeue_pending_request: Assertion `!xcb_xlib_unknown_req_in_deq' failed.
Aborted
It happens a few seconds after unpausing, but I can trigger it by attempting to view the unit screen. Something's still wonky with writing strings back to DF.
eh, right. crashed once when I tried that, but I forgot to check it again before posting. I'll check it out later.
Hey chaps. I just built the DF2016 branch on Linux here: https://github.com/splintermind/Dwarf-Therapist but when I try an connect to 43.05 it opens a pop-up saying a list of compatible versions the most recent one being 40.24. Do I need to swap to a different branch or repo or something? Thanks !
Oh & I'm on Linux Mint 18 running kernel 4.4.0-21-generic and Mate 1.14.1
There are memory layouts available elsewhere, otherwise it would have been impossible for people to work on and test 64-bit DT on Linux.Hey chaps. I just built the DF2016 branch on Linux here: https://github.com/splintermind/Dwarf-Therapist but when I try an connect to 43.05 it opens a pop-up saying a list of compatible versions the most recent one being 40.24. Do I need to swap to a different branch or repo or something? Thanks !
Oh & I'm on Linux Mint 18 running kernel 4.4.0-21-generic and Mate 1.14.1
There's no memory layout for 0.43.05 on linux, the latest available is 0.43.03: https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts/linux
git clone https://github.com/Hello71/Dwarf-Therapist.git
mkdir Dwarf-Therapist-build
cd Dwarf-Therapist-build
cmake ../Dwarf-Therapist
ln -s ../Dwarf-Therapist/share .
make -j$(nproc)
./DwarfTherapist
To all, when reporting issues, include the following information:
1. Exactly which DF version are you using? Not "latest", not "windows". "0.43.05 Windows 64-bit".
2. Exactly which DT version are you using? Not "latest", not "from the link" (what fucking link???). "37.0.0 from https://github.com/splintermind/Dwarf-Therapist/releases/" or "master from https://github.com/Hello71/Dwarf-Therapist", or better "c07ccde from https://github.com/Hello71/Dwarf-Therapist".
3. Exactly what memory layout are you using? "Included" if you didn't download one separately.
To all, when reporting issues, include the following information:
1. Exactly which DF version are you using? Not "latest", not "windows". "0.43.05 Windows 64-bit".
2. Exactly which DT version are you using? Not "latest", not "from the link" (what fucking link???). "37.0.0 from https://github.com/splintermind/Dwarf-Therapist/releases/" or "master from https://github.com/Hello71/Dwarf-Therapist", or better "c07ccde from https://github.com/Hello71/Dwarf-Therapist".
3. Exactly what memory layout are you using? "Included" if you didn't download one separately.
You don't have to be a cunt about it.
Version 0.43.05, 32-bit, as was suggested.
Windows 10, 64 bit,
The direct link that has been included in the very first post of this thread labeled "Latest Release", like anyone would.
The memory layout linked to me through lethosor. (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts.)
The direct link that has been included in the very first post of this thread labeled "Latest Release", like anyone would.I realize you might not know this if you're not involved in DT development, but in addition to the binaries splinterz posted (the ones in the first post), there are also several repositories on Github with additional changes (splinterz's and Hello71's in particular, and possibly some others). A number of people testing DT with 0.43.05 are using builds that aren't the ones in the first post, so we can't assume which one you're using. There's also a big difference between downloading the build on the first post yesterday and the one that was there two years ago. If you downloaded it within the last month, there's a very good chance you're using DT 37.0, but specifying the exact version can resolve issues where people have an older version that they think is the newest one fairly quickly (and I couldn't find a post where you mentioned the DT version you're using).
The memory layout linked to me through lethosor. (https://github.com/splintermind/Dwarf-Therapist/tree/DF2016/share/memory_layouts.)
@Hello71, I saw your instructions post, I checked your github, I saw https://github.com/Hello71/Dwarf-Therapist/blob/DF2016/share/memory_layouts/linux/v0.43.05.ini and I started compiling. I only did some basic testing, but it seems to work for me when running with root privileges on Arch Linux 64-bit. Thanks a lot!
@Hello71, I saw your instructions post, I checked your github, I saw https://github.com/Hello71/Dwarf-Therapist/blob/DF2016/share/memory_layouts/linux/v0.43.05.ini and I started compiling. I only did some basic testing, but it seems to work for me when running with root privileges on Arch Linux 64-bit. Thanks a lot!
don't run as root, turn off yama ptrace (the security gains are basically non-existent while we still use X)
# setcap cap_sys_ptrace=ep /usr/bin/dwarftherapist
Can someone give me a link to Hello71's compiled build or his guide how to do so? Didn't find it in the thread.
Can someone give me a link to Hello71's compiled build or his guide how to do so? Didn't find it in the thread.
it's on this page. (by 10 posts)
I also downloaded cmake and Qt5 for compiling DT and have used neither for anything else. I pasted your error message into google and arrived at stackexchange here (http://stackoverflow.com/questions/35049023/unknown-cmake-qt5-command), at github here here (https://github.com/Cockatrice/Cockatrice/issues/205), and again at stackexchange here (http://stackoverflow.com/questions/28247137/ubuntu-cmake-what-path-to-add-to-cmake-module-path). The important piece of info inCan someone give me a link to Hello71's compiled build or his guide how to do so? Didn't find it in the thread.
it's on this page. (by 10 posts)
I wouldn't call that post a guide, as you said, it is instruction. I never used qt or cmake, so it is not that clear. I am getting this error on cmake ../Dwarf-TherapistSpoiler (click to show/hide)
find_package(Qt5 REQUIRED COMPONENTS Qml Widgets)and if you check your ./Dwarf-Therapist/CMakeLists.txt, it is probably already set this way
I wouldn't call that post a guide, as you said, it is instruction. I never used qt or cmake, so it is not that clear.And how is saying that it should be called an "instruction" instead of a "guide" relevant to your gaining an understanding of what the listed steps will require you to do? Would changing the word give you a better ability to understand?
new instructions:Code: [Select]git clone https://github.com/Hello71/Dwarf-Therapist.git
mkdir Dwarf-Therapist-build
cd Dwarf-Therapist-build
cmake ../Dwarf-Therapist
ln -s ../Dwarf-Therapist/share .
make -j$(nproc)
./DwarfTherapist
And how is saying that it should be called an "instruction" instead of a "guide" relevant to your gaining an understanding of what the listed steps will require you to do? Would changing the word give you a better ability to understand?There is difference between these terms, you can google it. I've seen two of your links, but I don't understand how to "tell cmake where qt can be found". Is it something I have to do with environment variables? I installed both cmake and qt, Qt Creator was able to see cmake and it copied some files (Qt5Core.dll, Qt5Gui.dll etc.) into cmake\bin folder.
Any news on win x64 DF 0.43.05 memory layouts yet? Thanks in advance guys!64-bit layouts aren't hard to generate. The issue is actual support for 64-bit DF, which is still experimental.
You could add the QT filepath to your path environment variable, or when you run cmake you can add the path there using this...QuoteAnd how is saying that it should be called an "instruction" instead of a "guide" relevant to your gaining an understanding of what the listed steps will require you to do? Would changing the word give you a better ability to understand?There is difference between these terms, you can google it. I've seen two of your links, but I don't understand how to "tell cmake where qt can be found". Is it something I have to do with environment variables? I installed both cmake and qt, Qt Creator was able to see cmake and it copied some files (Qt5Core.dll, Qt5Gui.dll etc.) into cmake\bin folder.
So I think your issue goes back to "The Qt5 cmake modules are provided by Qt5 itself, so you need to tell cmake where qt can be found." and the solution may be to run cmake using the command line like "cmake -DCMAKE_PREFIX_PATH=<path_to_source>". The QT5 manual here (http://doc.qt.io/qt-5/cmake-manual.html) says "In order for find_package to be successful, Qt 5 must be found below the CMAKE_PREFIX_PATH, or the Qt5<Module>_DIR must be set in the CMake cache to the location of the Qt5WidgetsConfig.cmake file. The easiest way to use CMake is to set the CMAKE_PREFIX_PATH environment variable to the install prefix of Qt 5." I don't know which of the QT5 folders you need to point that setting at, but this seems like the step needed.When you run any application at the command line, there are usually switches or parameters values that can be added to the command line that will modify how the application runs. In this case, that "-DCMAKE_PREFIX_PATH=<path_to_source>" will cause cmake to look for files at the filepath you replace <path_to_source> with, and then cmake will use it to find the qt5 stuff in that folder tree). It is still a guess if it will work, but it is why the creators of cmake added CMAKE_PREFIX_PATH as an input for their program, so cmake can find files outside of the cmake folder structure. Your QT Creator likely did not add all of the files needed.
I got another instance of roles weighting being reported as unduly positive.While that definitely is a bug, it is a relatively harmless one, and might not get attention until it is irking someone who has the coding skills to hunt it down. :) I've noted something similar to it (or maybe it was the same issue) a couple of times but iirc, a re-read of the data while on the Roles tab fixed it also.Spoiler (click to show/hide)
I got another instance of roles weighting being reported as unduly positive.While that definitely is a bug, it is a relatively harmless one, and might not get attention until it is irking someone who has the coding skills to hunt it down. :) I've noted something similar to it (or maybe it was the same issue) a couple of times but iirc, a re-read of the data while on the Roles tab fixed it also.Spoiler (click to show/hide)
I think someone was working on 64-bit Windows support, but I don't know if there's a build anywhere.
so while the .ini is found, the memory addresses aren't? i'm feeling just how wonderful therapist is... fingers dieing trying to assign jobs.
I think someone was working on 64-bit Windows support, but I don't know if there's a build anywhere.
I'm not aware of any issues that would prevent my branch from working on Windows, as long as a suitable memory layout is provided. (but I haven't tried it, so it *probably* doesn't work.)
D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.cpp: In static member function 'static DFInstance* DFInstance::newInstance()':
D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.cpp:127:34: error: invalid new-expression of abstract class type 'DFInstanceWindows'
return new DFInstanceWindows();
^
In file included from D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.cpp:60:0:
D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstancewindows.h:33:7: note: because the following virtual functions are pure within 'DFInstanceWindows':
class DFInstanceWindows : public DFInstance {
^~~~~~~~~~~~~~~~~
In file included from D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.cpp:24:0:
D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.h:137:19: note: virtual USIZE DFInstance::write_string(VIRTADDR, const QString&)
virtual USIZE write_string(VIRTADDR addr, const QString &str) = 0;
^~~~~~~~~~~~
CMakeFiles/DwarfTherapist.dir/build.make:302: recipe for target 'CMakeFiles/DwarfTherapist.dir/src/dfinstance.cpp.obj' failed
make[2]: *** [CMakeFiles/DwarfTherapist.dir/src/dfinstance.cpp.obj] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/DwarfTherapist.dir/all' failed
make[1]: *** [CMakeFiles/DwarfTherapist.dir/all] Error 2
Makefile:105: recipe for target 'all' failed
make: *** [all] Error 2
I think someone was working on 64-bit Windows support, but I don't know if there's a build anywhere.
I'm not aware of any issues that would prevent my branch from working on Windows, as long as a suitable memory layout is provided. (but I haven't tried it, so it *probably* doesn't work.)
I tried building on Windows and it fails on dfinstance.cpp:Code: [Select]D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.cpp: In static member function 'static DFInstance* DFInstance::newInstance()':
D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.cpp:127:34: error: invalid new-expression of abstract class type 'DFInstanceWindows'
return new DFInstanceWindows();
^
In file included from D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.cpp:60:0:
D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstancewindows.h:33:7: note: because the following virtual functions are pure within 'DFInstanceWindows':
class DFInstanceWindows : public DFInstance {
^~~~~~~~~~~~~~~~~
In file included from D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.cpp:24:0:
D:/msys64/home/szymon/Dwarf-Therapist/src/dfinstance.h:137:19: note: virtual USIZE DFInstance::write_string(VIRTADDR, const QString&)
virtual USIZE write_string(VIRTADDR addr, const QString &str) = 0;
^~~~~~~~~~~~
CMakeFiles/DwarfTherapist.dir/build.make:302: recipe for target 'CMakeFiles/DwarfTherapist.dir/src/dfinstance.cpp.obj' failed
make[2]: *** [CMakeFiles/DwarfTherapist.dir/src/dfinstance.cpp.obj] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/DwarfTherapist.dir/all' failed
make[1]: *** [CMakeFiles/DwarfTherapist.dir/all] Error 2
Makefile:105: recipe for target 'all' failed
make: *** [all] Error 2
g++ 6.3 on MSYS2
linux, 32 bitSpoiler (click to show/hide)
[ 97%] Building CXX object CMakeFiles/DwarfTherapist.dir/src/dfinstancewindows.cpp.obj
D:/msys64/home/szymon/dt/src/dfinstancewindows.cpp:39:27: fatal error: memorysegment.h: No such file or directory
#include "memorysegment.h"
why are you building 64-bit version on 32-bit machinebecause i couldnt find any information that your fork is 64-bit only. updating the readme (including new build instructions) would probably be a good idea.
I wasnt playing df now for a very long time and a lot of changed
what im missing for the latest df version is dwarf therapist
What is the status of dwarf therapist is it chanceled?
new instructions:Code: [Select]git clone https://github.com/Hello71/Dwarf-Therapist.git
mkdir Dwarf-Therapist-build
cd Dwarf-Therapist-build
cmake ../Dwarf-Therapist
ln -s ../Dwarf-Therapist/share .
make -j$(nproc)
./DwarfTherapist
CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Qt5/Qt5Config.cmake:26 (find_package):
Could not find a package configuration file provided by "Qt5Qml" with any
of the following names:
Qt5QmlConfig.cmake
qt5qml-config.cmake
Add the installation prefix of "Qt5Qml" to CMAKE_PREFIX_PATH or set
"Qt5Qml_DIR" to a directory containing one of the above files. If "Qt5Qml"
provides a separate development package or SDK, be sure it has been
installed.
sudo apt-get install qt5-qmake qtbase5-dev qtbase5-dev-tools qtdeclarative5-dev # Qt 5
if the error mentions QT4 try: sudo apt-get install qt4-qmake libqt4-dev # Qt 4
Did something change in a recent version of either DF or DT? I know it used to be possible to connect when on the prepare for embark screen and see the attributes of your dwarves, which I found very useful in deciding who to assign what skill. This doesn't seem to work anymore though.
Is there a post somewhere with step-to-step instructions to get this to work?Did something change in a recent version of either DF or DT? I know it used to be possible to connect when on the prepare for embark screen and see the attributes of your dwarves, which I found very useful in deciding who to assign what skill. This doesn't seem to work anymore though.
Works for me on DF43.05 Linux 64bit.
Are you able to connect and use DT once properly embarked?
Is there a post somewhere with step-to-step instructions to get this to work?Did something change in a recent version of either DF or DT? I know it used to be possible to connect when on the prepare for embark screen and see the attributes of your dwarves, which I found very useful in deciding who to assign what skill. This doesn't seem to work anymore though.
Works for me on DF43.05 Linux 64bit.
Are you able to connect and use DT once properly embarked?
I couldn't even get DF 0.43.05 to work. Not to mention Therapist.
sudo setcap cap_sys_ptrace=ep /path/to/dwarftherapist
Assuming you get DF 43.05 linux64 working <snip>I have not, no. I'm sorry if that wasn't clear by my reply. :-\
Hi guys. Trying to make it work with x64 Win. Looking good so far... got it running, generated the offsets with dfhack, it reads the dwarfs and some other stuff. Can't display strings (names and castes). There are some offsets which I am stuck with but at least I've had some progress (see screenshot). What I've tested is... I've assigned fishing skills to my mason and after applying them, he went fishing and the skill went up. Don't have much free time during the week, so I will try to fix the stuff which I noticed is broken and put it out for other people.That's wonderful news PleaseBugMeNot. I'm glad that someone's working on it and you will be forever my hero if you can update it to x64.
I've used some of hello71's changes as I've had no idea what I'm doing. The last time I've used C++ for something serious, I've had Visual Studio 6 and there was no x64 Windows :) I am not even playing DF but always liked DT when playing it and sounded like a good challenge to make it work! Also I felt quite sad such a tool to die horribly.
This is on Win8 with 43.03. It does work once embarked.Did something change in a recent version of either DF or DT? I know it used to be possible to connect when on the prepare for embark screen and see the attributes of your dwarves, which I found very useful in deciding who to assign what skill. This doesn't seem to work anymore though.
Works for me on DF43.05 Linux 64bit.
Are you able to connect and use DT once properly embarked?
Got the Winx64 version working with strings and everything. Can't test it much. Sent a link to PeridexisErrant to test it and give me some feedback.Spoiler (click to show/hide)
Got the Winx64 version working with strings and everything. Can't test it much. Sent a link to PeridexisErrant to test it and give me some feedback.You are the best, PleaseBugMeNotSpoiler (click to show/hide)
Got the Winx64 version working with strings and everything. Can't test it much. Sent a link to PeridexisErrant to test it and give me some feedback.You are the best, PleaseBugMeNotSpoiler (click to show/hide)
Got the Winx64 version working with strings and everything. Can't test it much. Sent a link to PeridexisErrant to test it and give me some feedback.You are the best, PleaseBugMeNotSpoiler (click to show/hide)
The x64 bit Start Pack with DT is now out.
http://dffd.bay12games.com/file.php?id=12743
Cheers and please report the problems in DT. Too many changes... I hope I didn't break too many things :D
no such problems here, running windows 7 x64 with a seperate dwarf fortress 43.05
pleasebugnot, thanks for the effort put in on this!
When trying to run the x64 win version in the pack by PeridexisErrant I get 2 .dll system errors for missing VCRUNTIME140.dll and MSVCP140.dll
Windows 10 64bit
When selecting connect on therapist I get the following error:
memory layout error
error creating ssl
context ()
Then selecting read crashes therapist. DF 34.05, therapist 43.5.1, windows 8.1.
Here is run.log with connect and then exiting.Spoiler (click to show/hide)
And a run log with connecting and reading, which then crashes.Spoiler (click to show/hide)
When selecting connect on therapist I get the following error:
memory layout error
error creating ssl
context ()
Then selecting read crashes therapist. DF 34.05, therapist 43.5.1, windows 8.1.
Here is run.log with connect and then exiting.Spoiler (click to show/hide)
And a run log with connecting and reading, which then crashes.Spoiler (click to show/hide)
Forgot one thing. Can you install: http://slproweb.com/products/Win32OpenSSL.html (http://slproweb.com/download/Win64OpenSSL_Light-1_0_2k.exe)
And see how it goes. You probably miss the openssl libs. I need to include those next release.
When selecting connect on therapist I get the following error:you sure about that df version? that seems like the older version. might need the older version of therapist for that too.
memory layout error
error creating ssl
context ()
Then selecting read crashes therapist. DF 34.05, therapist 43.5.1, windows 8.1.
Here is run.log with connect and then exiting.Spoiler (click to show/hide)
And a run log with connecting and reading, which then crashes.Spoiler (click to show/hide)
you sure about that df version? that seems like the older version. might need the older version of therapist for that too.
QuoteForgot one thing. Can you install: http://slproweb.com/products/Win32OpenSSL.html (http://slproweb.com/download/Win64OpenSSL_Light-1_0_2k.exe)
And see how it goes. You probably miss the openssl libs. I need to include those next release.
That got rid of the error message, but it still crashes. Here is the save https://www.dropbox.com/s/qnao0mnqqnwo6y5/region4.zip?dl=0
Quoteyou sure about that df version? that seems like the older version. might need the older version of therapist for that too.
34.05 was typo, 43.05 is what it should have had.
Mate, the only thing I can think of is - you have to run DT from cmd console (Start->RUN->cmd) then go to the DT's directory and run DwarfTherapist.exe with the argument -trace (D:\Deployment\DwarfTherapist43.5.1X64>DwarfTherapist.exe -trace). Then read the dwarfs and when it crashes post the logs again. Trace gives us more info
QuoteMate, the only thing I can think of is - you have to run DT from cmd console (Start->RUN->cmd) then go to the DT's directory and run DwarfTherapist.exe with the argument -trace (D:\Deployment\DwarfTherapist43.5.1X64>DwarfTherapist.exe -trace). Then read the dwarfs and when it crashes post the logs again. Trace gives us more info
It crashes with every world I generate. Older versions of df/dt have worked without issue.
Here is log with -trace https://www.dropbox.com/s/0da3vaopqq43n78/run.zip?dl=0
Before going deeper into the logs, can you put the whole DF + tools folder into another drive different from C:\
I don't trust Windows and files put into C:... sometimes it makes weird stuff. I will try to investigate... hopefully I can find something. The whole read Dwarf info class is huuuuuuuuuuuuge and the fact that I can not reproduce the crash is even worse.
QuoteBefore going deeper into the logs, can you put the whole DF + tools folder into another drive different from C:\
I don't trust Windows and files put into C:... sometimes it makes weird stuff. I will try to investigate... hopefully I can find something. The whole read Dwarf info class is huuuuuuuuuuuuge and the fact that I can not reproduce the crash is even worse.
I moved it to another drive, still crashes. Here is a log https://www.dropbox.com/s/6959lvdx69flxb9/run%20p%20drive.zip?dl=0
What kind of regional settings is your Windows and language also?
QuoteWhat kind of regional settings is your Windows and language also?
Finland / Finnish.
When trying to run the x64 win version in the pack by PeridexisErrant I get 2 .dll system errors for missing VCRUNTIME140.dll and MSVCP140.dll
Windows 10 64bit
You need to install Microsoft Visual C++ 2015 Redistributable x64: https://www.microsoft.com/en-us/download/details.aspx?id=53587
With windows 10, and having downloaded the openssl libs, working perfectly so far. Great work, PleaseBugMeNot, and thank you!
@PleaseBugMeNot
I tried using your version on 0.43.05 64-bit (after importing the correct memory map) and it segfaults on reading dwarves. Here's a backtrace, if you get me a version with debug symbols I could get a better one.Spoiler (click to show/hide)
If you're asking me, I didn't compile it, I'm using PleaseBugMeNot's release. I don't know why it's 32-bit, but it's supposed to work with 64-bit DF.
$ file DwarfTherapist.exe
DwarfTherapist.exe: PE32 executable (GUI) Intel 80386 (stripped to external PDB), for MS Windows
(gdb) r
Starting program: /c/Users/szymon/Desktop/DT_with_debugsymb/DwarfTherapist.exe
[New Thread 1684.0xa04]
gdb: unknown target exception 0xc0000139 at 0x7ffa0fbacdd0
During startup program exited with code 0xc0000139.
It's definitely a 32-bit executable:Code: [Select]$ file DwarfTherapist.exe
DwarfTherapist.exe: PE32 executable (GUI) Intel 80386 (stripped to external PDB), for MS Windows
As for the debug versions, neither runs. The first:Code: [Select](gdb) r
Starting program: /c/Users/szymon/Desktop/DT_with_debugsymb/DwarfTherapist.exe
[New Thread 1684.0xa04]
gdb: unknown target exception 0xc0000139 at 0x7ffa0fbacdd0
During startup program exited with code 0xc0000139.
(BTW - can you make Visual Studio output some sort of portable debug info format? GDB can't read PDB. I could probably get another debugger going but I'd rather not if possible)
(Alternatively I'll just build it myself if you give me the source)
The second wants ucrtbased.dll... I'm not sure what that is. Googling suggests it might be a Windows 10 thing, I'm on 8.1.
Sorry, I should have been more specific. The one I pulled from the starter pack you posted on Friday, the one that runs but crashes on reading dwarves, that one is 32-bit. The two you posted today are both 64-bit.
That's not the same one that I have. I must have accidentally downloaded the wrong package back Friday. I re-downloaded and it works.
I'm sorry for wasting your time, PleaseBugMeNot.
Here is an exe file with the roleRatings disabled. https://dl.dropboxusercontent.com/u/94651132/DwarfTherapistNoRoleRatings.zip
Can you test if it runs?
Okay it is crashing again when attempting to read. Save and log: https://www.dropbox.com/s/q22qbpromzv838u/run%20%2B%20save.zip?dl=0
Hi, m8! Are you sure you used the exe without the RoleRatings? Because it crashes exactly there again
QuoteHi, m8! Are you sure you used the exe without the RoleRatings? Because it crashes exactly there again
Yes it is the one without roleratings. It works if I start a new save, but on this one it always crashes on read.
...it seems to correspond with the number of dwarves with the skill turned on in that group.
I dropped magma on the two children and now it loads again. So something there. !!BUGHUNT!!
Logs where the children are alive and it crashes and where they were killed and it works properly. It is the same save as before.
https://www.dropbox.com/s/8aeya110zctf7ug/run%20kids%20alive%20dead.zip?dl=0
I dropped magma on the two children and now it loads again. So something there. !!BUGHUNT!!
Logs where the children are alive and it crashes and where they were killed and it works properly. It is the same save as before.
https://www.dropbox.com/s/8aeya110zctf7ug/run%20kids%20alive%20dead.zip?dl=0
Those look like bitfields represented as hexadecimal, not pointers. The three unit flags bitfields (well, actually four, but nobody's identified anything in the fourth yet) are all 32 bits, so they should be 8 digits. I'm not sure why five of those are printed as 16 digits instead (i.e. 8 extra leading 0's). And even if they were addresses, leading zeros aren't required, although those would be invalid addresses with 64-bit Windows DF, since valid addresses start at/around 0x140000000 (which can't be represented with 32 bits).
I dropped magma on the two children and now it loads again. So something there. !!BUGHUNT!!
Logs where the children are alive and it crashes and where they were killed and it works properly. It is the same save as before.
https://www.dropbox.com/s/8aeya110zctf7ug/run%20kids%20alive%20dead.zip?dl=0
Please, try that version: https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist4_35_2.zip
If it doesn't work, I have no more ideas :(
PeridexisErrant - will you include last AV into pack?I'm not sure what you mean.
"maintained branch" / "version 42.0": Choose one.Yes - this version is compatible with 32bit 43.05 if you just download the memory layout from github. And there's an experimental 64-bit version just a few posts further up!
Joking apart, is there a version of DT available yet which is compatible with the version of the game which released last July?
"maintained branch"To clarify, when DT 37.0 was released, the newest version of DF was 0.42.06, and I think DT 37 only includes layouts for DF 0.42.06 and older by default, but it still works with newer DF versions (given appropriate layouts). In other words, there wasn't a need to build a new DT version, so the thread title didn't get updated.
"version 42.06"
new instructions:Code: [Select]git clone https://github.com/Hello71/Dwarf-Therapist.git
mkdir Dwarf-Therapist-build
cd Dwarf-Therapist-build
cmake ../Dwarf-Therapist
ln -s ../Dwarf-Therapist/share .
make -j$(nproc)
./DwarfTherapist
if you get an error like the following:Code: [Select]CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Qt5/Qt5Config.cmake:26 (find_package):
Could not find a package configuration file provided by "Qt5Qml" with any
of the following names:
Qt5QmlConfig.cmake
qt5qml-config.cmake
Add the installation prefix of "Qt5Qml" to CMAKE_PREFIX_PATH or set
"Qt5Qml_DIR" to a directory containing one of the above files. If "Qt5Qml"
provides a separate development package or SDK, be sure it has been
installed.
Then try:Code: [Select]sudo apt-get install qt5-qmake qtbase5-dev qtbase5-dev-tools qtdeclarative5-dev # Qt 5
if the error mentions QT4 try:Code: [Select]sudo apt-get install qt4-qmake libqt4-dev # Qt 4
then try the cmake ../Dwarf-Therapist again.
This is in the build instructions for linux in spinters fork.
@PleaseBugMN, an issue: (tame, penned) butcherable animals set to be butchered from your x64 DT version will set to be caged, not butchered
Certainly this bug is present WRT cattle cow/bull; possibly also extant with fowl cock/hen etc for all domesticat(ed/able) livestock; I haven't tested..
=Umm.. access needed to test pls ;)
Can you tell me if that is happening with this version too: https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist4_35_2.zip
Tnx! It is just the exe with some fixes and changes.
=Umm.. access needed to test pls ;)
Can you tell me if that is happening with this version too: https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist4_35_2.zip
Tnx! It is just the exe with some fixes and changes.
Ok, I will have to put loads of fine debug outputs in the Traits, skills, attributes, preferences loading and send you the debug exe, so we can see where does it crash. This thing is huge.. it might crash for whatever reason. But that I can't do right now because I have to go.
Here is an exe file with the roleRatings disabled. https://dl.dropboxusercontent.com/u/94651132/DwarfTherapistNoRoleRatings.zip
Can you test if it runs?
This is the whole package: https://www.dropbox.com/s/d0b01u8spidv0dn/DwarfTherapist43.5.1X64.zip?dl=0
This is the patched exe: https://www.dropbox.com/s/y0k4odt3356mc2y/DwarfTherapist4_35_2.zip?dl=0
You need MSVC 2015 runtimes and openssl. I am quite sick at the moment, when I feel better I will build another release and maybe an autoupdate.
=Umm.. access needed to test pls ;)
Can you tell me if that is happening with this version too: https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist4_35_2.zip
Tnx! It is just the exe with some fixes and changes.
Ok, new link: https://www.dropbox.com/s/y0k4odt3356mc2y/DwarfTherapist4_35_2.zip?dl=0
Close the popup for signup and click download below.
=Umm.. access needed to test pls ;)
Can you tell me if that is happening with this version too: https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist4_35_2.zip (https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist4_35_2.zip)
Tnx! It is just the exe with some fixes and changes.
Ok, new link: https://www.dropbox.com/s/y0k4odt3356mc2y/DwarfTherapist4_35_2.zip?dl=0 (https://www.dropbox.com/s/y0k4odt3356mc2y/DwarfTherapist4_35_2.zip?dl=0)
Close the popup for signup and click download below.
I can confirm this works for 43.05 x64 bit, on windows 10 x64.
It connects, it reads and it lets me alter jobs. Really neat, good job.
The application was unable to start correctly (0xc000007b). Click OK to close the application.
Anybody here know how to install DT in Linux (Fedora)?
I've downloaded a .zip and looked at Readme.pdf but it only linked to a google code page which was little help.
new instructions:Code: [Select]git clone https://github.com/Hello71/Dwarf-Therapist.git
mkdir Dwarf-Therapist-build
cd Dwarf-Therapist-build
cmake ../Dwarf-Therapist
ln -s ../Dwarf-Therapist/share .
make -j$(nproc)
./DwarfTherapist
if you get an error like the following:Code: [Select]CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Qt5/Qt5Config.cmake:26 (find_package):
Could not find a package configuration file provided by "Qt5Qml" with any
of the following names:
Qt5QmlConfig.cmake
qt5qml-config.cmake
Add the installation prefix of "Qt5Qml" to CMAKE_PREFIX_PATH or set
"Qt5Qml_DIR" to a directory containing one of the above files. If "Qt5Qml"
provides a separate development package or SDK, be sure it has been
installed.
Then try:Code: [Select]sudo apt-get install qt5-qmake qtbase5-dev qtbase5-dev-tools qtdeclarative5-dev # Qt 5
if the error mentions QT4 try:Code: [Select]sudo apt-get install qt4-qmake libqt4-dev # Qt 4
then try the cmake ../Dwarf-Therapist again.
This is in the build instructions for linux in spinters fork.
Normally my dwarf therapist grids are like this:
http://i.hizliresim.com/2rjX8L.png
But i want it to look like this:
http://i.hizliresim.com/qbEoMB.png
i saw this on youtube, when i ask to uploader he said: it came like that by default. But when i download from the same link it's still doesn't look like that.
when i turn on DT and try to connect it does nothing so i turn it off then it opens a new window saying memory layout error illegal value :(
This is the whole package: https://www.dropbox.com/s/d0b01u8spidv0dn/DwarfTherapist43.5.1X64.zip?dl=0
This is the patched exe: https://www.dropbox.com/s/y0k4odt3356mc2y/DwarfTherapist4_35_2.zip?dl=0
You need MSVC 2015 runtimes and openssl. I am quite sick at the moment, when I feel better I will build another release and maybe an autoupdate.
i was using the one from the 64-bit LNPwhen i turn on DT and try to connect it does nothing so i turn it off then it opens a new window saying memory layout error illegal value :(
Which version of DF are you playing? If it's the latest 64-bit, and it's windows, then this is the one you want.This is the whole package: https://www.dropbox.com/s/d0b01u8spidv0dn/DwarfTherapist43.5.1X64.zip?dl=0
This is the patched exe: https://www.dropbox.com/s/y0k4odt3356mc2y/DwarfTherapist4_35_2.zip?dl=0
You need MSVC 2015 runtimes and openssl. I am quite sick at the moment, when I feel better I will build another release and maybe an autoupdate.
i was using the one from the 64-bit LNPwhen i turn on DT and try to connect it does nothing so i turn it off then it opens a new window saying memory layout error illegal value :(
Which version of DF are you playing? If it's the latest 64-bit, and it's windows, then this is the one you want.This is the whole package: https://www.dropbox.com/s/d0b01u8spidv0dn/DwarfTherapist43.5.1X64.zip?dl=0
This is the patched exe: https://www.dropbox.com/s/y0k4odt3356mc2y/DwarfTherapist4_35_2.zip?dl=0
You need MSVC 2015 runtimes and openssl. I am quite sick at the moment, when I feel better I will build another release and maybe an autoupdate.
Is there a standalone version? I've tried the links posted here (http://"http://www.bay12forums.com/smf/index.php?topic=122968.msg7388917#msg7388917") (https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist43.5.1X64.zip (https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist43.5.1X64.zip)) and here (http://"http://www.bay12forums.com/smf/index.php?topic=122968.msg7389495#msg7389495") (https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist4_35_2.zip
(https://dl.dropboxusercontent.com/u/94651132/DwarfTherapist4_35_2.zip)), but neither of those links work for me.
Is there going to be a 64 bit Mac version coming?
Is there going to be a 64 bit Mac version coming?
Not from me, because I can't test it. However anyone else can build one manually, or try https://github.com/PeridexisErrant/starter-pack
Is there going to be a 64 bit Mac version coming?
Not from me, because I can't test it. However anyone else can build one manually, or try https://github.com/PeridexisErrant/starter-pack
A non-DFHack version isn't maintained anymore?
This is the DT thread. I'm not sure if both of you are talking about the same thing or not.Is there going to be a 64 bit Mac version coming?
Not from me, because I can't test it. However anyone else can build one manually, or try https://github.com/PeridexisErrant/starter-pack
So, the Butcher column doesn't seem to be working. When I click on the button, all it does is say "cancel cage" in the Pending Changes box. However, none of my animals are caged or marked to be put into cages. Nothing I do seems to let me butcher from within Therapist, which is becoming a bit of a pain. Any thoughts?See thread starting around http://www.bay12forums.com/smf/index.php?topic=122968.msg7391953#msg7391953 for the fix (the correct d/l link is 2 msgs below)
So, the Butcher column doesn't seem to be working. When I click on the button, all it does is say "cancel cage" in the Pending Changes box. However, none of my animals are caged or marked to be put into cages. Nothing I do seems to let me butcher from within Therapist, which is becoming a bit of a pain. Any thoughts?See thread starting around http://www.bay12forums.com/smf/index.php?topic=122968.msg7391953#msg7391953 for the fix (the correct d/l link is 2 msgs below)
This is the whole package: https://www.dropbox.com/s/d0b01u8spidv0dn/DwarfTherapist43.5.1X64.zip?dl=0
This is the patched exe: https://www.dropbox.com/s/y0k4odt3356mc2y/DwarfTherapist4_35_2.zip?dl=0
You need MSVC 2015 runtimes and openssl. I am quite sick at the moment, when I feel better I will build another release and maybe an autoupdate.
I am using the new 64 bit starter pack. I have a newer version of vc_redist.x64.exe install so that's up to date. However I am having the same issue as @Abalieno with the SSL errors. When I run the program with a fort loaded it insta-crashes. When I run it before loading a fort it yells at me with the SSL errors.
I downloaded the older 32-bit version of the DF starter pack and that runs just fine with the included Therapist. I've tried a bunch of stuff t the limit of my computer skills (which are not many). I think I have isolated it to being I need those SSL libraries.
Where do I get them? After I download them where do I put them? I also tried to download both those links from @PleaseBugMeNot and the same issues occurred. I'd really like some direction with my issue guys. BTW I am on Windows 7 64-bit Ultimate.
You are right it still crashes. Why won't this work for me?
Is there a 32 bit version of dwarf therapist I can use with the 64-bit application? I'd really like to play the 64-bit DF (I've never played before) but I am clear that I'd need Therapist. Anyone that could help me try to get this working I'd be super grateful toward.
You are right it still crashes. Why won't this work for me?
Is there a 32 bit version of dwarf therapist I can use with the 64-bit application? I'd really like to play the 64-bit DF (I've never played before) but I am clear that I'd need Therapist. Anyone that could help me try to get this working I'd be super grateful toward.
I'm using the dwarf therapist that comes in the latest masterwork pack, it works fine with DF 0.43.05.
32 bit and 64 bit won't work together.I think you might be thinking of DFHack. Technically, since DT and DF run in separate processes, DT could access DF's memory regardless of whether its architecture matches DF's or not. However, I believe there was some issue on Windows with 32-bit programs not being able to use the Windows APIs needed to access 64-bit DF's memory, or vice versa (but I imagine the first would be more likely).
Is there a 32 bit version of dwarf therapist I can use with the 64-bit application?Even if there were, I don't think it would help. Even though some of the issues with 64-bit DT could be due to it being 64-bit, more of them are likely due to DF itself being 64-bit, which requires significant changes to how DT reads data from DF. A 32-bit DT that interfaced with 64-bit DF would still have the same issues.
...it would have to somehow "understand" and navigate via the 64 bit pointers in the DF data structures. It's probably possible to do (as long as the resulting addresses are reachable by the 32 bit application)...Any memory addresses DT reads from DF aren't normal "pointers", so it doesn't matter whether DT can reach those addresses or not. For example, DT could tell the OS to read some bytes from DF's memory, get back "12345", and then tell the OS to read data from DF's address "12345".
I got it working... but I don't dare run it for more than necessary. Tends to cause BSOD's.Are you using the term "BSOD" as a synonym for "crash", or do you mean an actual blue screen? User programs, particularly ones like DT, should definitely not be able to cause blue screens on their own, although I suppose they could trigger one indirectly if you're having hardware issues.
Actual blue screen of death. I (almost) never get them on that PC, but got 2 or 3, running the bit DT.I got it working... but I don't dare run it for more than necessary. Tends to cause BSOD's.Are you using the term "BSOD" as a synonym for "crash", or do you mean an actual blue screen? User programs, particularly ones like DT, should definitely not be able to cause blue screens on their own, although I suppose they could trigger one indirectly if you're having hardware issues.
I'm aware that DT works with DF's memory (and aware of most of the other things you mentioned) but that's something the OS should be able to deal with (see debuggers, for example). Any "wrong memory writes" would at most crash DT and/or DF under normal circumstances. It's really hard to crash the kernel by doing what DT does.
On the other hand, I don't doubt that you're experiencing BSODs. Are you able to test on another machine to see if it's reproducible there?
This is the whole package: https://www.dropbox.com/s/d0b01u8spidv0dn/DwarfTherapist43.5.1X64.zip?dl=0
This is the patched exe: https://www.dropbox.com/s/y0k4odt3356mc2y/DwarfTherapist4_35_2.zip?dl=0
You need MSVC 2015 runtimes and openssl. I am quite sick at the moment, when I feel better I will build another release and maybe an autoupdate.
Since you can see the sexual orientation of any Dwarf via DT, is it also possible to see if a dwarf has the desire to get married? According to the wiki at least, about 20% of all Dwarves will never get married.No, the DT representation is incomplete. The display of the info would have to be changed, probably from one to two or three columns to cover all the possibilities (physical gender, and sexual relation level for each gender). Apart from not distinguishing between lover only or full marriage relations, DT also suppresses "minor" bi-sexual orientations, so an individual who is willing to marry one gender but only become lover with the other is shown as having the marriage orientation. I'd welcome such a change, though, but in the mean time DFHack directly or DFHack commands such as "gaydar" can give the full information.
So I've been waiting for DT to work on the new 64 bit DF. Has it reached that yet?Given that the Starter Pack is 64 bit and includes DT the answer should be yes.
By @PleaseBugMeNot, yes. Recent links are here. (http://www.bay12forums.com/smf/index.php?action=profile;area=showposts;u=118405) I don't know about source code, but I've PM'd them about it.So I've been waiting for DT to work on the new 64 bit DF. Has it reached that yet?Given that the Starter Pack is 64 bit and includes DT the answer should be yes.
but in the mean time DFHack directly or DFHack commands such as "gaydar" can give the full information.Yup. gaydar -all did the trick.
I've seen lots of reports of instability, however.So I've been waiting for DT to work on the new 64 bit DF. Has it reached that yet?Given that the Starter Pack is 64 bit and includes DT the answer should be yes.
Evening, fellow Elfslayers,I just wanted to add to this - also having crash on launch. Read the last twenty or so pages and tried all versions posted with the 0.43.05 PeridexisErrant LNP. Dwarf Therapist always stops working upon connecting. I'm willing to help out by posting logs or whatever could be of assistance. In fact, I registered specifically to try and get this sorted out.
I'm having a bit of an issue with LNP and the Dwarf Therapist. For some strange reason I can't seem to be able to use it at all. I've tried out versions 40_24 r16 and 40_24 r20, as well as 43.05 r05. With each of these releases of the LNP the same issue reoccured; I have started my game up, then I pressed "Connect to DF", and then Dwarf Therapist stopped working.
Is there anyone that might have an idea as to how to fix this issue? I cannot play the game without DT, and I am really craving some goblin smashing action right now.
Thanks for reading;
Dantez
I've got a pretty old PC, so I really need the x64 version, as my CPUs are fairly weak. Additionally, I'm trying to get into DF for the 2nd time and I remember how much Dwarf Therapist improved the game. I've been trying to make do with the DF Hack matrix, but after several immigrant waves I'm finding the interface cumbersome despite how good it is. I'll keep checking in on this thread, as I'm not likely to play any more DF until I can get a working version of Therapist.Just curious - what's clunky about DFHack's interface (manipulator)? It does support the mouse, in case you didn't know (and you can right-click to move the cursor to a cell instead of toggling it).
The latest version posted in the OP says it's for 42.06 but the pack I have is 43.03 and DT works just fine. What's up with that?The first post of this thread hasn't been updated in a long time, as you can tell from its timestamp (February 22, 2016). That build of DT does support newer versions of DF given the correct layouts, which your pack must include.
So... maybe the OP should be updated? Are people supposed to read 200 pages of the thread to see if their version is supported?DT's maintainer (splinterz (http://www.bay12forums.com/smf/index.php?action=profile;u=66082)) last visited this forum February 04, 2017, 07:21:25 am. No one else (except Toady maybe) can edit the OP.
So... maybe the OP should be updated? Are people supposed to read 200 pages of the thread to see if their version is supported?DT's maintainer (splinterz (http://www.bay12forums.com/smf/index.php?action=profile;u=66082)) last visited this forum February 04, 2017, 07:21:25 am. No one else (except Toady maybe) can edit the OP.
So deal with it.
I did not realize it had mouse support, I feel stupid now. Thank you, I'll give it another try. That said, a scroll bar would be nice, but the main hang up I have is the lack of white-space or gridlines. Just preference or my eyes, but I'm sure I could learn to like it.Garbage that Angry_Bucket wrote, yadda yadda yadda.Just curious - what's clunky about DFHack's interface (manipulator)? It does support the mouse, in case you didn't know (and you can right-click to move the cursor to a cell instead of toggling it).
If you have an old computer/weak CPU, I'm not sure how the 64-bit build would help over the 32-bit build. Any performance improvements from a 64-bit build are really small, and perhaps even more so on an older machine.
If the 64 bit version doesn't work, I'd suggest trying the 32 bit version (with the 32 bit version of DF, of course).I may try that. I would probably put up with a lower framerate, as I'm usually listening to an audio book/podcast or alt-tabbing unless there's immediate trouble.
You can also use the pop cap to stop migration when the number of dorfs makes the management unwieldy (and the FPS starts to drop). If you set a pop cap lower than 80 you should probably set goblin invasions to be allowed at a pop of 50 or 20, rather than the default value of 80. You'll also block the "normal" arrival of a monarch (but you can increase the pop cap later).
Posting to watch in anticipation of a working 64 bit version. (I can't play DF without this anymore)I'm using DFHack's labor manager. It's not DT, but it's close. Perhaps consider using that?
labormanager (the one that automatically assigns labors) or manipulator (the DT-like grid that you can access with u-l)?Posting to watch in anticipation of a working 64 bit version. (I can't play DF without this anymore)I'm using DFHack's labor manager. It's not DT, but it's close. Perhaps consider using that?
Posting to watch in anticipation of a working 64 bit version. (I can't play DF without this anymore)I'm using DFHack's labor manager. It's not DT, but it's close. Perhaps consider using that?
Posting to watch in anticipation of a working 64 bit version. (I can't play DF without this anymore)I'm using DFHack's labor manager. It's not DT, but it's close. Perhaps consider using that?
I'm currently using a working x64 version with 43.05, could post it to dropbox if you want
https://www.dropbox.com/sh/whn14i4fggudgq9/AAB6f18_tMtfpAO5CUPLGme7a?dl=0Where did you get this from, or did you build it yourself?
Ahha! It works!. Now, generous and noble champion of dwarves, whose attributes, both physical and mental, are superior to those of other, lesser man - do you know why this works? Is it just a nice new layout and all's good?It's more than just the layout - DT has to be updated for it work with 64-bit DF at all, and various people have done various things to get it to work (somewhat, depending on what Windows version you're using and what day it is).
https://www.dropbox.com/sh/whn14i4fggudgq9/AAB6f18_tMtfpAO5CUPLGme7a?dl=0Crashes on read for me. Thanks for offering though.
Okay I'm confused by DT every time I even consider looking at it, again... I'm not even sure where I got the current version I have... So who is really maintaining the code for this now and where can I get the most recent version of DT for DF x64 43.05.... confusion ensues when I read the posts here.As far as I know, right now nobody is really maintaining DT. For the most recent version, I think you can found it in this post (http://www.bay12forums.com/smf/index.php?topic=122968.msg7392985#msg7392985) (maybe there is newer one but I'm not sure) or this post (http://www.bay12forums.com/smf/index.php?topic=122968.msg7486228#msg7486228) (but I don't know if it's working).
Okay I'm confused by DT every time I even consider looking at it, again... I'm not even sure where I got the current version I have... So who is really maintaining the code for this now and where can I get the most recent version of DT for DF x64 43.05.... confusion ensues when I read the posts here.
where can I get the most recent version of DT for DF x64 43.05.... confusion ensues when I read the posts here.
As far as I can tell there are a few experimental versions but nobody is maintaining a 64-bit Therapist yet.
where can I get the most recent version of DT for DF x64 43.05.... confusion ensues when I read the posts here.
As far as I can tell there are a few experimental versions but nobody is maintaining a 64-bit Therapist yet.
On x64 linux DF 43.05 I've had the best luck with DanFritz's fork, due to a "participants" assertion failure he appears to have fixed: https://github.com/DanFritz/Dwarf-Therapist/commit/ea784aa347c618ce5ef21485f72c7995db6ea9bc
If you want the most recent version suitable for you, just look at the github's fork interface, and browse the recent forks. Realize they may just be fixing own their problems, e.g. x64 linux, not mac os: https://github.com/splintermind/Dwarf-Therapist/network Nobody appears to have a 43.05 x64 macos memory layout yet, you'd need to use an older DF in that case.
On x64 linux DF 43.05 I've had the best luck with DanFritz's fork, due to a "participants" assertion failure he appears to have fixed: https://github.com/DanFritz/Dwarf-Therapist/commit/ea784aa347c618ce5ef21485f72c7995db6ea9bcSeems like the wrong way to fix that to me, unless there's some meaning to 0x10 that I'm missing. Does Hello71's fork work?
If you want the most recent version suitable for you, just look at the github's fork interface, and browse the recent forks. Realize they may just be fixing own their problems, e.g. x64 linux, not mac os: https://github.com/splintermind/Dwarf-Therapist/network Nobody appears to have a 43.05 x64 macos memory layout yet, you'd need to use an older DF in that case.It's really easy to generate memory layouts using "devel/export-dt-ini" in DFHack. I have two for both OS X 0.43.05 builds sitting around in my main DF folders. I'm pretty sure I uploaded them a while ago, but I couldn't easily find them, so here (https://gist.github.com/lethosor/718e8c11dd4828ff1eadde73dc9bb039) they are.
Ok I tried Hello71's fork now, it works great! Looks like he did more x64 stuff. When I had initially glanced at Hello71's fork on github I didn't see any change there so I assumed only DanFritz's fork had fixed the error I had gotten.On x64 linux DF 43.05 I've had the best luck with DanFritz's fork, due to a "participants" assertion failure he appears to have fixed: https://github.com/DanFritz/Dwarf-Therapist/commit/ea784aa347c618ce5ef21485f72c7995db6ea9bcSeems like the wrong way to fix that to me, unless there's some meaning to 0x10 that I'm missing. Does Hello71's fork work?
I am not particularly interested in working on DT at this point (mainly because DF is closed source, but good luck convincing toady to open it), but I would be willing to answer questions about DT internals and review (and possibly pull in) patches in #dwarftherapist on freenode.I know what you mean, but it's probably best DF stays closed source. Far too often on open-source projects I'd get livid non-grateful developers blaming me for their workplace problems... their fault for using a free opensource utility/library in beta stage for their $$$ product in their workplace, then they have the nerve to blame me for their failure to meet deadlines and demand I immediately fix edge-case bugs which show up when it is integrated into *their*, not *my* systems for free!? I was idealistic before then, but I'm permanently turned off after those incredibly disrespectful experiences.
https://www.dropbox.com/sh/whn14i4fggudgq9/AAB6f18_tMtfpAO5CUPLGme7a?dl=0You appear to have removed this file, which really doesn't help people looking for DT.
I am not particularly interested in working on DT at this point (mainly because DF is closed source, but good luck convincing toady to open it), but I would be willing to answer questions about DT internals and review (and possibly pull in) patches in #dwarftherapist on freenode.I know what you mean, but it's probably best DF stays closed source. Far too often on open-source projects I'd get livid non-grateful developers blaming me for their workplace problems... their fault for using a free opensource utility/library in beta stage for their $$$ product in their workplace, then they have the nerve to blame me for their failure to meet deadlines and demand I immediately fix edge-case bugs which show up when it is integrated into *their*, not *my* systems for free!? I was idealistic before then, but I'm permanently turned off after those incredibly disrespectful experiences.
In Toady's case he'd probably just get a bunch of ripoff clones made by developers asking $10-20 on Steam for their rudimentary artwork/theme/style changes. It's happened with other open-sourced games, even when only a fraction of the codebase/art was open-sourced.
I would hope he has made plans for who has stewardship of the game when he passes on.
Also regarding the DT fork, the const function parameters in the DT code are best const for maintainability, as they both make the code clearer and make future accidental logic errors involving those parameters become compiler errors. It is good practice.
After i downloaded the lastest LNP pack, i cant use Dwarf Therapist, it crashes every time it tries to connect to DF, any ideas on what it could be?It's simply unstable. See the last 10 or so pages of this thread. I don't know why, sorry.
Hi,From the log, it looks like DT started up and was able to read units from your fort. Are you sure that's the right log?
I really like Dwarf Therapist because there's no easier way to organize 150 dwarves. However, I have no idea where to start using it for the latest 43.05, 64-bit version. I have downloaded the Peridexes' starter pack and the included Dwarf Therapist doesn't run. I've downloaded the 3.5.1X64 and 3.5.2X64 files linked here a couple pages back and it still doesn't work.
My VC redist is up to date, but I have no idea what is an opengssl or how is it relevant to dwarf therapist or where to get it.
Would it be possible to just put in one neat bunched up archive a fixed Dwarf Therapist for 64 bit, along with possible things needed to get it to run? Just something I could install and run with latest dwarf fortress? And get Splinterz to put it on the front page?
It's driving me nuts how completely fragmented it all is.
I am including my latest Dwarf therapist log:Spoiler (click to show/hide)
After i downloaded the lastest LNP pack, i cant use Dwarf Therapist, it crashes every time it tries to connect to DF, any ideas on what it could be?It's simply unstable. See the last 10 or so pages of this thread. I don't know why, sorry.Hi,From the log, it looks like DT started up and was able to read units from your fort. Are you sure that's the right log?
I really like Dwarf Therapist because there's no easier way to organize 150 dwarves. However, I have no idea where to start using it for the latest 43.05, 64-bit version. I have downloaded the Peridexes' starter pack and the included Dwarf Therapist doesn't run. I've downloaded the 3.5.1X64 and 3.5.2X64 files linked here a couple pages back and it still doesn't work.
My VC redist is up to date, but I have no idea what is an opengssl or how is it relevant to dwarf therapist or where to get it.
Would it be possible to just put in one neat bunched up archive a fixed Dwarf Therapist for 64 bit, along with possible things needed to get it to run? Just something I could install and run with latest dwarf fortress? And get Splinterz to put it on the front page?
It's driving me nuts how completely fragmented it all is.
I am including my latest Dwarf therapist log:Spoiler (click to show/hide)
Anyway, I have no idea why it needs OpenSSL - I don't recall previous builds needing it. Assuming you're referring to the builds from http://www.bay12forums.com/smf/index.php?topic=122968.msg7392774#msg7392774, those are "43.5.1" and "4_35_2" (no idea why the version number formats are different). Splinterz didn't post those builds, he hasn't been online for over 4 months, and hasn't posted here for almost a year, so it's unlikely that he'll be able to work with those builds. PleaseBugMeNot has also disappeared after posting those (almost 3 months ago). Also, even if you do manage to get it working with OpenSSL, it seems to be pretty unstable for some people, so there's no guarantee that it would work.
After i downloaded the lastest LNP pack, i cant use Dwarf Therapist, it crashes every time it tries to connect to DF, any ideas on what it could be?It's simply unstable. See the last 10 or so pages of this thread. I don't know why, sorry.Hi,From the log, it looks like DT started up and was able to read units from your fort. Are you sure that's the right log?
I really like Dwarf Therapist because there's no easier way to organize 150 dwarves. However, I have no idea where to start using it for the latest 43.05, 64-bit version. I have downloaded the Peridexes' starter pack and the included Dwarf Therapist doesn't run. I've downloaded the 3.5.1X64 and 3.5.2X64 files linked here a couple pages back and it still doesn't work.
My VC redist is up to date, but I have no idea what is an opengssl or how is it relevant to dwarf therapist or where to get it.
Would it be possible to just put in one neat bunched up archive a fixed Dwarf Therapist for 64 bit, along with possible things needed to get it to run? Just something I could install and run with latest dwarf fortress? And get Splinterz to put it on the front page?
It's driving me nuts how completely fragmented it all is.
I am including my latest Dwarf therapist log:Spoiler (click to show/hide)
Anyway, I have no idea why it needs OpenSSL - I don't recall previous builds needing it. Assuming you're referring to the builds from http://www.bay12forums.com/smf/index.php?topic=122968.msg7392774#msg7392774, those are "43.5.1" and "4_35_2" (no idea why the version number formats are different). Splinterz didn't post those builds, he hasn't been online for over 4 months, and hasn't posted here for almost a year, so it's unlikely that he'll be able to work with those builds. PleaseBugMeNot has also disappeared after posting those (almost 3 months ago). Also, even if you do manage to get it working with OpenSSL, it seems to be pretty unstable for some people, so there's no guarantee that it would work.
for downloading memory layouts. splinterz added "updater" in newest DT commits
interesting... because the main issue I'm having currently isn't about getting it to work... it's that for some reason it's not reading the skills correctly. It doesn't see the correct skills that have higher learning speeds, as in the guild system in MDF has so it's confusing players of the mod... would that have something to do with the memory layout?On x64 linux DF 43.05 I've had the best luck with DanFritz's fork, due to a "participants" assertion failure he appears to have fixed: https://github.com/DanFritz/Dwarf-Therapist/commit/ea784aa347c618ce5ef21485f72c7995db6ea9bcSeems like the wrong way to fix that to me, unless there's some meaning to 0x10 that I'm missing. Does Hello71's fork work?QuoteIf you want the most recent version suitable for you, just look at the github's fork interface, and browse the recent forks. Realize they may just be fixing own their problems, e.g. x64 linux, not mac os: https://github.com/splintermind/Dwarf-Therapist/network Nobody appears to have a 43.05 x64 macos memory layout yet, you'd need to use an older DF in that case.It's really easy to generate memory layouts using "devel/export-dt-ini" in DFHack. I have two for both OS X 0.43.05 builds sitting around in my main DF folders. I'm pretty sure I uploaded them a while ago, but I couldn't easily find them, so here (https://gist.github.com/lethosor/718e8c11dd4828ff1eadde73dc9bb039) they are.
Note that this obviously requires a DT that works with 64-bit DF, which is... hard to come by.
The original definately won't work.Thanks! I'll try to dig those others, then.
These others might work if you're lucky.
Are guilds implemented as castes? I have no clue what DT does with those, but it's unlikely that it has something to do with the memory layout unless it works as you're expecting in older versions of DF.
I'll echo a point I made above: while the DT build you have may work for you, if it's a 64-bit Windows build, chances are that it won't work at all for a number of other players.
What do these colours signify?It's nobles.
address('knowledge_category',df.activity_event_ponder_topicst,'knowledge_category')
address('knowledge_flag',df.activity_event_ponder_topicst,'knowledge_flag')
Each line give this error:E:\Games\Dwarf Fortress\hack\lua\memscan.lua:309: Cannot reference field activity_event_ponder_topicst.knowledge_category: not found.
stack traceback:
[C]: in method '_field'
E:\Games\Dwarf Fortress\hack\lua\memscan.lua:309: in function 'memscan.field_ref'
...ames\Dwarf Fortress/hack/scripts/devel/export-dt-ini.lua:54: in local 'address'
I commented them, but the offsets are still wrong because of "rdelta".Hi, I have some problems using the DFHack's export-dt-ini script. Maybe I should ask on DFHack thread, but since it is a DT specific script, I hope there is someone understanding it well reading this thread.The "export-dt-ini" script is part of DFHack, so you should report any problems with it in the DFHack thread, not here.
address('knowledge_category',df.activity_event_ponder_topicst,'knowledge','category')
address('knowledge_flag',df.activity_event_ponder_topicst,'knowledge','flags')
enable title-version
in the dfhack.init in or around line 214Just if someone else stumbles over this: using the newest (0.43.05-r07) Lazy Newb Pack/ PeridexisErrant's Starter Pack with its default settings of dfhack will prevent DT from connecting to DF, at least on Windows.
To get it working you have to comment out the lineCode: [Select]enable title-version
in the dfhack.init in or around line 214
The reason is probably that DT searches for a window with the name "Dwarf Fortress" and having the "title-version" plugin enabled changes the name of the window...
Just if someone else stumbles over this: using the newest (0.43.05-r07) Lazy Newb Pack/ PeridexisErrant's Starter Pack with its default settings of dfhack will prevent DT from connecting to DF, at least on Windows.No it doesn't. You're thinking of the title-folder plugin. "title-version" adds the DFHack version to the upper left corner screen. It doesn't change the window title at all.
To get it working you have to comment out the lineCode: [Select]enable title-version
in the dfhack.init in or around line 214
The reason is probably that DT searches for a window with the name "Dwarf Fortress" and having the "title-version" plugin enabled changes the name of the window...
Hello fellow Dwarf Therapist users,
I´ve already started a similar post in DF Gameplay Questions, but got no answer that would clarify my issue. So I try it here, sorry for double post.
Can someone please explain what "XP-Penalty -92% [RAW: 8%]" for all social and almost all non-weapon combat skills is actually meaning?
I´m seeing this with an unmodified creature_standard.txt. However, after adding [SKILL_RATES:100:NONE:NONE:NONE] to the RAW (in order to stopp decay) it changes to:
"XP-Penalty -101% [RAW: -1%]"
The DT Readme has nothing on this and searching the web does not show any information and I´ve really tried it for HOURS now.
Unfortunately, unlike XP from civil tasks combat XP is not fixed so I can´t make a simple test fight with and without the skill decay stopp entry.
Specifially I would like to know:
Does "XP-Penalty -92%" mean a dorf is only getting 8 % of the XP that he would normally gain from executing a task? That would be a quite serious XP cut for a default setting.Why are only combat and social skills affected? EDIT: I was wrong, also some of the civil labors are affected. But still, why not all skills?
Can I use [SKILL_RATES:100:NONE:NONE:NONE] safely without slowing down XP gain although DT reads it as -101%?
Thanks for your help.
Feeling kind of lost now. Not a single reply. Can someone at least confirm that in their DT session Potash Making does or does NOT look like this (without mods, vanilla raws):
http://imgur.com/a/oKyM0 (http://imgur.com/a/oKyM0)
Just if someone else stumbles over this: using the newest (0.43.05-r07) Lazy Newb Pack/ PeridexisErrant's Starter Pack with its default settings of dfhack will prevent DT from connecting to DF, at least on Windows.No it doesn't. You're thinking of the title-folder plugin. "title-version" adds the DFHack version to the upper left corner screen. It doesn't change the window title at all.
To get it working you have to comment out the lineCode: [Select]enable title-version
in the dfhack.init in or around line 214
The reason is probably that DT searches for a window with the name "Dwarf Fortress" and having the "title-version" plugin enabled changes the name of the window...
Somebody mentioned that worlds made in 32-bit then transferred to 64-bit may be the problem, and that is the case with my world.
Somebody mentioned that worlds made in 32-bit then transferred to 64-bit may be the problem, and that is the case with my world.
Whoever told you that was wrong. The issue you're having is inherent to your DT build on your machine, and isn't specific to a save.
Been working on this all day and I'm having a bunch of stupid problems preventing me from building it. Plan on maybe reinstalling Windows, but that's a bit of a hassle just to be able to work on fixing DT.. ( for reference, same install of Windows 7 since 09, seldom used since I've switched to Ubuntu about 2 years ago )
As for crashes, there is one I can reproduce every time. When you assign a labor but do not commit the changes and then switch to a different tab ( with pending changes ) it crashes. I don't know if it persists with your build.
I looked at a few and it seems that a lot of DF variables are uninitialized when they should be empty strings or null pointers. I don't much about DF internals so I don't how to properly fix that. As long as DT detects it is reading garbage, it should be fine.That's probably a DT issue. DFHack does care if DF strings/etc. aren't initialized, and would crash, so given that things like manipulator aren't crashing, uninitialized data is probably not the issue here.
Anyway, after months and months we finally have a working 64-bit DF (from what I've seen). Barring any other bug reports it might be time to poke the relevant channels like the OP and the LNP to have this included. Congrats. :)
Anyway, after months and months we finally have a working 64-bit DF (from what I've seen). Barring any other bug reports it might be time to poke the relevant channels like the OP and the LNP to have this included. Congrats. :)
Is it true? Link please!
That's probably a DT issue. DFHack does care if DF strings/etc. aren't initialized, and would crash, so given that things like manipulator aren't crashing, uninitialized data is probably not the issue here.
000000002CC58570 dq 1407131D8h ; vtable
000000002CC58570 db 'ENT216 INK1',0,0Dh,'¡¦' ; field_8.data
000000002CC58570 dq 0Bh ; field_8.length
000000002CC58570 dq 0Fh ; field_8.capacity
000000002CC58570 dw 0 ; subtype
000000002CC58570 db 0ADh, 0BAh, 0Dh, 0F0h, 0ADh, 0BAh, 0C0h, 71h, 0C5h, 2Ch, 0, 0, 0, 0
000000002CC58570 db 1, 0, 0, 0, 0Dh, 0F0h, 0ADh, 0BAh, 0FFh, 0FFh, 0FFh, 0FFh, 0D8h, 0
000000002CC58570 db 0, 0, 0C0h, 97h, 0C5h, 2Ch, 0, 0, 0, 0, 68h, 98h, 0C5h, 2Ch, 0, 0, 0
000000002CC58570 db 0, 0A0h, 98h, 0C5h, 2Ch, 0, 0, 0, 0
000000002CC58570 db 'sezuk',0,'¡¦',0Dh,'¡¦',0Dh,'¡¦' ; name.data
000000002CC58570 dq 5 ; name.length
000000002CC58570 dq 0Fh ; name.capacity
000000002CC58570 db 'sezuk',0,'¡¦',0Dh,'¡¦',0Dh,'¡¦' ; name_plural.data
000000002CC58570 dq 5 ; name_plural.length
000000002CC58570 dq 0Fh ; name_plural.capacity
000000002CC58570 db 'Éf+,',0,0,0,0,2,0,0,0,0Dh,'¡¦' ; adjective.data
000000002CC58570 dq 6A4BAAD0079h ; adjective.length
000000002CC58570 dq 300000032h ; adjective.capacity
Most fields look good, but there is uninitialized data in the middle of the object (but DT does not read that) and the name_adjective string is also uninitialized (causing the error message).00000000346CEF60 db 30h ; "½½½½½½½½½½½½½½½½"
00000000346CEF60 db 0CFh ; item_type
00000000346CEF60 db 6Bh, 40h, 1, 0, 0, 0, 3Bh, 0, 56h, 0, 0A2h, 0, 0ADh, 0BAh, 48h, 0, 0
00000000346CEF60 db 0, 0, 0, 0, 0, 18h, 97h, 2, 0
00000000346CEF60 dd 0BE1Eh ; id
00000000346CEF60 db 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
00000000346CEF60 db 0
00000000346CEF60 dq offset off_371607E0 ; general_refs.begin
00000000346CEF60 dq offset unk_371607F0 ; general_refs.end
00000000346CEF60 dq offset unk_371607F0 ; general_refs.field_10
00000000346CEF60 db 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0, 0, 0ADh, 0BAh, 0Dh
00000000346CEF60 db 0F0h, 0ADh, 0BAh, 0Dh, 0F0h, 0ADh, 0BAh, 0Dh, 0F0h, 0ADh, 0BAh, 0Dh
00000000346CEF60 db 0F0h, 0ADh, 0BAh, 0Dh, 0F0h, 0ADh, 0BAh, 0, 0, 0, 0, 0, 0, 0, 0
00000000346CEF60 dd 1 ; stack_size
00000000346CEF60 db 0Dh, 0F0h, 0ADh, 0BAh, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
00000000346CEF60 db 0, 20h, 8, 16h, 37h, 0, 0, 0, 0, 46h, 27h, 9Eh, 1
00000000346CEF60 dw 0 ; wear
00000000346CEF60 db 0ADh, 0BAh, 18h, 97h, 2, 0, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh
00000000346CEF60 db 0FFh, 0Dh, 0F0h, 0ADh, 0BAh
00000000346CEF60 dw 26h ; mat_type
00000000346CEF60 db 0ADh, 0BAh
00000000346CEF60 dd 16Bh ; mat_index
00000000346CEF60 dw 0FFFFh ; maker_race
00000000346CEF60 dw 3 ; quality
00000000346CEF60 db 1, 0, 0, 0, 5Dh, 6Ah, 0, 0, 0FFh, 0FFh, 0FFh, 0FFh, 0, 0, 0, 0, 0, 0
00000000346CEF60 db 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
00000000346CEF60 dq 0ABABABABABABABABh ; item_def
Now, that I try to look at the whole structures, I see that the problematic fields are both at the end. The uninitialized data in the middle is expected because mixing short and 64 bits pointer create a lot of padding.If you're looking at an itemdef_instrumentst, those don't have an adjective field (it's right below name_plural for other itemdef subtypes):
Edit: looking at the first invalid string, it happens while reading the adjective for an instrument. The object (item_subtype) as seen from IDA:
<itemdef_instrumentst: 0x11ebefcf0>
id = ENT12 INK1
subtype = 0
base_flags = <BitArray<>: 0x11ebefd08>
source_hfid = -1
source_enid = 12
raw_strings = <vector<string*>[17]: 0x11ebefd20>
name = nilim
name_plural = nilim
flags = <BitArray<>: 0x11ebefd48>
...
Anyway, after months and months we finally have a working 64-bit DF (from what I've seen). Barring any other bug reports it might be time to poke the relevant channels like the OP and the LNP to have this included. Congrats. :)Assuming you mean DT, I'd be wary of claiming that, at least for the time being. Other builds have appeared stable until people have gotten around to testing them on their machines and reporting crashes, so I don't think the fact that it didn't crash for you over a 3-hour period is enough to bug LNP people about including it (although it's certainly an improvement).
Anyway, after months and months we finally have a working 64-bit DF (from what I've seen). Barring any other bug reports it might be time to poke the relevant channels like the OP and the LNP to have this included. Congrats. :)
Is it true? Link please!
OMG, u people are so lazy ::)
check this post (http://www.bay12forums.com/smf/index.php?topic=122968.msg7528602#msg7528602)
Somebody who knows QT really needs to remake this to use DFhack.I am currently discovering the mess that is DT data structures, and I would not mind a complete rewrite, but that would be a lot of work. Personally, I will only make small patches: I don't know enough to be ambitious.
Somebody who knows QT really needs to remake this to use DFhack.I am currently discovering the mess that is DT data structures, and I would not mind a complete rewrite, but that would be a lot of work. Personally, I will only make small patches: I don't know enough to be ambitious.
process_uncovered(PANTS,tr("Legs Uncovered!"),(has_shirt ? 1 : 0),1);
process_uncovered(ARMOR,tr("Torso Uncovered!"),(has_pants ? 1 : 0),1);
A simple variable inversion, it should be "Legs Uncovered!".
//for shoes, compare how many they're wearing compared to how many legs they've still got
process_uncovered(SHOES,tr("Feet Uncovered!"),shoes_count,m_unit_health.limb_count());
If I understand correctly, socks count as "SHOES" type, so, if a dwarf wears only one sock and one shoe/boot on the same foot and nothing on the other, he would pass the test. But, he would still have a bad thought because of the naked other foot, wouldn't he?
Hello71, are you still reading this thread? While trying to merge everything, I discovered that you added some commits since I made my patches based on fd5d9a0 (https://github.com/Hello71/Dwarf-Therapist/commit/fd5d9a0fd7008b193a99112a762ca91a9f5030bd). I cannot rebase my patches because db7016a (https://github.com/Hello71/Dwarf-Therapist/commit/db7016ae951d58117b201a2abab8ac53288c77c2) broke the whole repo. You should really be more careful with your commits (and be more descriptive in the commit messages because they are really not helpful either). I was going to create a new upstream repo but I will wait for you tell me your plans for this project before going any further.
I don't have any plans for continuing DT. I think dfhack has most of DT's functions already, or something? (I don't actually play DF)Mostly, but disparate.
Clément, what do think about merge all changes in one repository?
I have some problem with running you branch on osx64 =)
as fix I started refactoring DT from memory patching to use DFHack as backend.
All communication over network in protobuf protocol.
I already implemented connection, load units, animals, basic information about world, etc.
My build it's pretty unstable now, but I think I can fix this problem soon.
Main benefit it's unification DT for work on all platforms without magic with Authorization and requirement admin permissions
It not possible keep current state and simple add new backend,
all classes use QPointer and memory vector for direct read-write in memory
for support both backend in the same time we need for first will do big refactoring and cut working with memory in separate module
but for me it's unnecessary work which will gone in trash soon.
2) I don't know about OSX, but on Linux you don't need root permission if you run DT as the parent of DF. But it is annoying as DT cannot be restarted without restarting DF at the same time.On OSX you must access to attach to separate process for reading memory from them.
QPointer are not related to DF memory, VIRTADDR is used for holding pointers to DF memory. But, yes, it is tightly coupled, and I am not fond of this. But since you need to refactor everything anyway, you might as well try to do it properly.
1) support for new versions can be added fast enough thanks to the dfhack script for generating DT inis.
[addresses]
fortress_entity=0x019865c4
historical_entities_vector=0x01b41280
[hist_entity_offsets]
histfigs=0x00a8
squads=0x0c60
positions=0x0930
assignments=0x0958
assign_hist_id=0x0004
assign_position_id=0x000c
position_id=0x001c
position_name=0x0068
position_female_name=0x00a0
position_male_name=0x00d8
list<history_figures_ids> = fortress_entity + histfigs
list<squiad_ids> = fortress_entity + squads
list<positions_offsets> = historical_entities_vector + positions
real_position = positions_offsets[index] + position_id
I suggest doing it incrementally. First write read_/write_raw that communicates with dfhack, then change the actual manipulations one by one.
Also, I suggested once to write df-structures using real C++ headers. Dunno what came of that, but I think it would make this easier (or not?).
i want use protobuf as transport protocol, current state of Basic.proto and BasicApi.proto can fill more then 70% оf requirements for DT. But yes, I must do some work for extend this proto (or develop custom plugin for DFHack) for fulfill all requirements.
Did PeridexisErrant include a broken version in the latest windows lnp?Yes. Well, it works fine for some people, sometimes, and that was the best that was available at the time. There are some newer experimental builds posted in the last couple pages of this thread that might work better for you.
A friend of mine had this happen to him: https://imgur.com/a/tgMzNI'd check that it's actually a normal DF cat, rather than one of the experiments with sapient cats (and other "animals") floating around currently. DT is the only way to set up jobs for Gremlins (which are the only vanilla sapient "animals") as DF itself doesn't make that available (I assume you can do it with DFHack as well). If it is a sapient animal, yes, DT is likely the only way to assign jobs to them, but it would also be legitimate, provided the "animals" are citizens.
Stray Cat (Tame) cancels Tame Kea: Too injured.
The Kea had "Any trainer" assigned to it.
I suspect it's a problem with Dwarf Therapist as opposed to the game itself. Is the Animal training skill being enabled for tamed animals or something?
My dwarf therapist autolabor system acting strangely. Whenever an immigration come, dwarf therapist assign labors to dwarves that don't have any skill points on it. But dwarves that have skills on a labor don't assigned automatically. It's annoying to organize everything when every immigration arrives.
Try this one (https://framadrop.org/r/THA3a4H4-C#8//GD+lS7o6oLLcPGZ6iVin3N0yjSpCi6trnOqMAvG4=).
You probably need the mingw version. Use LNP to open the utilities folder, make a backup of therapist if you care (doesn't work anyway, right?), then extract all the mingw files into that folder.
"Only parts of a ReadProcessMemory- or WriteProcessMemory-request has been completed." [E:/projects/Dwarf-Therapist/src/dfinstancewindows.cpp:138] (read_raw)
Edit: After your post in the DFHack thread I decided to compare this entry with the corresponding one in my old DT (37.0.0) layout file, and it's 0x40 in that file as well, without that version crashing. I don't know how to interpret that, though...
Anything else to add?
I also split the social skills using the Wiki categories. I posted a screenshot in the pull request (https://github.com/Dwarf-Therapist/Dwarf-Therapist/pull/7) comments. Does that look good?
a) preferences for cloth and paper are currently not distinguishable in the roles, e.g. a dwarf with a preference for kenaf paper will be considered a better clothesmakerWhen not doing exact matches, DT only compares material flags. A dwarf that likes linen paper has material PLANT:FLAX:THREAD (flags ITEMS_SOFT, THREAD_PLANT, STOCKPILE_GLOB_PASTE), the same as a dwarf that likes linen fabric. I think the material state need to be included in the comparison (PRESSED for the paper, SOLID for the fabric).
b) the role suitability calculations currently use every role. can we get the option/ability to specify which roles to use?
In the meantime I built a linux-64 version of DT from your git repository. At least for the basics of connecting and reading dwarfs from an old save there were no problems. When I find time to play again I'll give more feedback. But I wonder about the LaTeX? I did not build the manual since 400mb roughly for the software seems excessive to me (and I already have a copy). Would it not be easier to just include a PDF of the manual - or what am I missing? (You may already know - the author is still around and has dropped by a couple of times checking on how it's going, if there is some thought of an updated version...)
Sounds like you've got it covered for the paper/fabric distinction. :) (Fallback workaround could be to check the text strings of preferences for 'paper' or 'cloth' matches, but that is so ugly...).No, I don't think partially matching strings would be simpler.
For b) no, I have not been clear. The roles calculation spits out a number between 0 and 100 for how well each dwarf is suited for each role. Problems arise when adding custom roles. Say I add a role Carpenter+, which is a revision of the attributes, preferences, skill(s) I want in finding a carpenterdwarf. Now the data set for suitability includes both Carpenter and Carpenter+ and that has knock on effects as to the reported suitability for other roles - basically if the roles are minimally different then the weight of that role as a data point has just been doubled. (The calculation has always been opaque to me but includes various processes of 'normalisation' 'shaping' etc.) I would like to be able to specify which roles are to be used for the roles calculation. So following the example above I could tell DT not to use Carpenter as part of the data set for roles calculation but only Carpenter+. Or to put it another way (since I often struggle with clarity of expression): can we get the feature to ask DT to consider the suitability of dwarfs with respect to a limited - user specified - set of roles? Taking a concrete example (not that I would use it this way...) - lets say we have just embarked and know we want 7 jobs done and don't care whatsoever about future plans. We want a Miner, a Mason, a Woodcutter, a Fisher, a Herbalist, a Carpenter, and an Animal Trainer. So we want tell DT to limit the roles calculation to just those 7 roles (and not be worried by how suitable the various dwarfs are as Strand Extractors or Potters).I am even more confused now. I am not a advanced role user, so I may be missing something. The places I look for role suitability are dwarf details or the role tab (grid view). For dwarf details, a global filter list could be added in the options. For the role tab, you can replace it with a custom grid view with only the columns you are interested in. Or do you want a new dialog or dock?
It would be good to include a note on the github page about the availability of the manual from within DT (or even a link to the download on dffd) so that new users compiling it for themselves don't feel obligated to install latex just to get the manual.
Yes I agree totally.Sounds like you've got it covered for the paper/fabric distinction. :) (Fallback workaround could be to check the text strings of preferences for 'paper' or 'cloth' matches, but that is so ugly...).No, I don't think partially matching strings would be simpler.
For b) no, I have not been clear. The roles calculation spits out a number between 0 and 100 for how well each dwarf is suited for each role. Problems arise when adding custom roles. Say I add a role Carpenter+, which is a revision of the attributes, preferences, skill(s) I want in finding a carpenterdwarf. Now the data set for suitability includes both Carpenter and Carpenter+ and that has knock on effects as to the reported suitability for other roles - basically if the roles are minimally different then the weight of that role as a data point has just been doubled. (The calculation has always been opaque to me but includes various processes of 'normalisation' 'shaping' etc.) I would like to be able to specify which roles are to be used for the roles calculation. So following the example above I could tell DT not to use Carpenter as part of the data set for roles calculation but only Carpenter+. Or to put it another way (since I often struggle with clarity of expression): can we get the feature to ask DT to consider the suitability of dwarfs with respect to a limited - user specified - set of roles? Taking a concrete example (not that I would use it this way...) - lets say we have just embarked and know we want 7 jobs done and don't care whatsoever about future plans. We want a Miner, a Mason, a Woodcutter, a Fisher, a Herbalist, a Carpenter, and an Animal Trainer. So we want tell DT to limit the roles calculation to just those 7 roles (and not be worried by how suitable the various dwarfs are as Strand Extractors or Potters).
I am even more confused now. I am not a advanced role user, so I may be missing something. The places I look for role suitability are dwarf details or the role tab (grid view). For dwarf details, a global filter list could be added in the options. For the role tab, you can replace it with a custom grid view with only the columns you are interested in. Or do you want a new dialog or dock?
Anyway, I need to look more at how the roles work internally. And the custom role dialog looks like it needs some improvements.
It would be good to include a note on the github page about the availability of the manual from within DT (or even a link to the download on dffd) so that new users compiling it for themselves don't feel obligated to install latex just to get the manual.
I added the DFFD link in the Readme. As for the "Manual" button, it is clearly visible in the tool bar (and the help menu), and the best place to explain it would be... the manual (sections 5.5 and 5.7 are missing it).
<material 0:82 INORGANIC:JASPER OPAL>
ITEMS_HARD
IS_GEM
ITEMS_QUERN
Solid jasper opal
Liquid magma
Gas boiling magma
Powder jasper opal
Paste jasper opal
Pressed jasper opal
<material 38:343 CREATURE:GIANT_CHEETAH:LEATHER>
ITEMS_LEATHER
IMPLIES_ANIMAL_KILL
LEATHER
Solid leather
Liquid n/a
Gas n/a
Powder leather
Paste leather
Pressed leather
<material 37:476 CREATURE:SPIDER_PHANTOM:SILK>
ITEMS_SOFT
SILK
Solid silk
Liquid n/a
Gas n/a
Powder silk
Paste silk
Pressed silk
<material 425:29 PLANT:HEMP:THREAD>
ITEMS_SOFT
THREAD_PLANT
STOCKPILE_GLOB_PASTE
Solid hemp
Liquid none
Gas none
Powder fiber
Paste hemp slurry
Pressed hemp paper
I hope this is becoming clearer. I can post tomorrow but then will not be able to for some time.
Looking forward to custom role dialogue improvements. 8) In a couple of weeks time I could make some suggestion if you are interested.
I could be totally wrong, as always, but I don't remember seeing preferences for plant thread or animal fabric. Dwarfs definitely get preferences for plant cloth (fabric) and yarn (animal wool thread). The wiki http://dwarffortresswiki.org/index.php/Preferences (http://dwarffortresswiki.org/index.php/Preferences) seems to suggest this as well. I can't check any big forts right now as I've got my stuff strung out over three machines (in different location, at that). So no help there. :-\
2017-Oct.-24 03:14:19.743 WARNING core unidentified column type in set "Other Social" ! [/home/hope/Desktop/Dwarf-Therapist/src/viewcolumnset.cpp:153] (ViewColumnSet)Does this refer to the old 'Socai-Alt'?
2017-Oct.-24 03:14:19.748 WARNING core gridview "UNKNOWN" was not loaded because a view with this name already exists [/home/hope/Desktop/Dwarf-Therapist/src/viewmanager.cpp:185] (load_views)Checking gridviews shows there is a default gridview by name UNKNOWN that appears empty. Since it is default user cannot delete. Additionally it seems DT is trying to write a second copy of the gridview on connection to DF.
Excuse the double post, but a couple of minor issues I've not noticed before with gridviews: in order of ascending nuisance. (Using linux-64 version that I built yesterday with the offset fix.)I think double posting is required for me to receive the notification. It is not even the same day anyway.
a) The gridview Socail & Cultural (as displayed in tab) is called Social && Cultural in the Grid Views dock.In some Qt texts the ampersand is used for keyboard shortcuts (the underlined letter you often see in menus), it needs to be doubled to actually display. I would need to encode the string in these cases, but I don't know a Qt function that does that.
b)Typos I made in default_gridviews.dtg, that is what you get for editing this kind of file with a text editor (game_data.ini is even worse with some part out of order). I should find a better way to edit them.Quote2017-Oct.-24 03:14:19.743 WARNING core unidentified column type in set "Other Social" ! [/home/hope/Desktop/Dwarf-Therapist/src/viewcolumnset.cpp:153] (ViewColumnSet)Does this refer to the old 'Socai-Alt'?
c)Quote2017-Oct.-24 03:14:19.748 WARNING core gridview "UNKNOWN" was not loaded because a view with this name already exists [/home/hope/Desktop/Dwarf-Therapist/src/viewmanager.cpp:185] (load_views)Checking gridviews shows there is a default gridview by name UNKNOWN that appears empty. Since it is default user cannot delete. Additionally it seems DT is trying to write a second copy of the gridview on connection to DF.
2017-Oct.-29 11:42:27.853 ERROR core READ_RAW: "Bad address" READING 1024 BYTES FROM "0x007fffc22048a800" TO 0x7fff68aa5730 [/home/user/Desktop/Dwarf-Therapist/src/dfinstancelinux.cpp:156] (read_raw)
Segmentation fault
2017-Oct.-29 11:43:14.009 ERROR core READ_RAW: "Bad address" READING 1024 BYTES FROM "0x007fffc22048a800" TO 0x7ffc4ec2a390 [/home/user/Desktop/Dwarf-Therapist/src/dfinstancelinux.cpp:156] (read_raw)
Segmentation fault
2017-Oct.-29 11:51:08.364 ERROR core READ_RAW: "Bad address" READING 1024 BYTES FROM "0x007fffc22048a800" TO 0x7fff0369daf0 [/home/user/Desktop/Dwarf-Therapist/src/dfinstancelinux.cpp:156] (read_raw)
Segmentation fault
1) The building of the manual by latex gave me problems. I now have texlive-bin installed (need for qpdfview) but not the much larger texlive-core package. The cmake process detects /usr/bin/latex but then finds neither the htlatex command nor the biber command. The compile then fails to build the manual and fails to build therapist. (I got it to compile therapist by deleting 'add_subdirectory(doc)' from CMakeLists.txt.)
2) Once compiled therapist runs successfully but on attempting to connect to a fortress it crashes with segmentation fault. Results of three attempts below:Code: [Select]2017-Oct.-29 11:42:27.853 ERROR core READ_RAW: "Bad address" READING 1024 BYTES FROM "0x007fffc22048a800" TO 0x7fff68aa5730 [/home/user/Desktop/Dwarf-Therapist/src/dfinstancelinux.cpp:156] (read_raw)
Segmentation fault
2017-Oct.-29 11:43:14.009 ERROR core READ_RAW: "Bad address" READING 1024 BYTES FROM "0x007fffc22048a800" TO 0x7ffc4ec2a390 [/home/user/Desktop/Dwarf-Therapist/src/dfinstancelinux.cpp:156] (read_raw)
Segmentation fault
2017-Oct.-29 11:51:08.364 ERROR core READ_RAW: "Bad address" READING 1024 BYTES FROM "0x007fffc22048a800" TO 0x7fff0369daf0 [/home/user/Desktop/Dwarf-Therapist/src/dfinstancelinux.cpp:156] (read_raw)
Segmentation fault
grep reaction_class "/home/user/DwarfFortress/df_linux/share/memory_layouts/linux/v0.43.05.ini"
to be sure.Indeed you were right. :-[ I still had the memory layout from 38.0. Thank you for your patience.Why was it the old memory layout? Did you copy only the executable or use "make install"? If it is a broken script from me, I need to know.
I am assuming the the preference for papyrus sheet is included in the 'papers' general category?"papyrus" is in the "Papers" category, but you can also use "Paper plants" in "~ General Materials" to match any material with the PAPER_PLANT reaction. Only papyrus has this reaction in the current vanilla game, but mods or future version may add others.
Gridview/role feedbackBoth work for me. Wordsmith is the first skill in the last (fifth) group in "Social & Cultural" (you may need to add the tab since the name changed).
1) The Wordsmith skill is missing. (My scholars are waiting. ;))
2) Drag and drop is broken for me when editing gridviews. I was rearranging the order of roles in a custom gridview. Not sure when I last used it but it was working, potentially pre-64 bit?
And finally, could you say a bit more about DF crashing when quitting therapist. I've yet to experience it as therapist has closed without having this effect but I have yet to unpause a game with 38.1. What use conditions are likely to trigger it, and possible workarounds for safe(ish) use with linux 64 in the meantime.Writing strings on Linux replace the string data pointer with a buffer that was not properly allocated. This make DF crash when it try to deallocate the buffer, this can happen when quitting (destroying the string after saving), it doesn't seem to corrupt the save, or when replacing the string (changing the same string from the game after it was changed from DT). The safe workaround is to not change strings from DT.
(Sorry to be so high maintenance but I prefer to be on latest version and hope that the odd bits of feedback I can give will offset it to some extent.)The feedback is welcome. Actually, if you like testing, since you have to compile anyway, consider using the last version from the master git branch instead of releases (or even development branches if you feel adventurous). It can help detect new bugs earlier (and you also get the bug fixes earlier).
And finally, could you say a bit more about DF crashing when quitting therapist. I've yet to experience it as therapist has closed without having this effect but I have yet to unpause a game with 38.1. What use conditions are likely to trigger it, and possible workarounds for safe(ish) use with linux 64 in the meantime.Writing strings on Linux replace the string data pointer with a buffer that was not properly allocated. This make DF crash when it try to deallocate the buffer, this can happen when quitting (destroying the string after saving), it doesn't seem to corrupt the save, or when replacing the string (changing the same string from the game after it was changed from DT). The safe workaround is to not change strings from DT.
I am experimenting with injecting a call to std::string::assign instead so the memory is managed correctly.
/* Set the program counter for process PTID to PC. */
static void
i386_linux_write_pc (struct regcache *regcache, CORE_ADDR pc)
{
regcache_cooked_write_unsigned (regcache, I386_EIP_REGNUM, pc);
/* We must be careful with modifying the program counter. If we
just interrupted a system call, the kernel might try to restart
it when we resume the inferior. On restarting the system call,
the kernel will try backing up the program counter even though it
no longer points at the system call. This typically results in a
SIGSEGV or SIGILL. We can prevent this by writing `-1' in the
"orig_eax" pseudo-register.
Note that "orig_eax" is saved when setting up a dummy call frame.
This means that it is properly restored when that frame is
popped, and that the interrupted system call will be restarted
when we resume the inferior on return from a function call from
within GDB. In all other cases the system call will not be
restarted. */
regcache_cooked_write_unsigned (regcache, I386_LINUX_ORIG_EAX_REGNUM, -1);
}
Why was it the old memory layout? Did you copy only the executable or use "make install"? If it is a broken script from me, I need to know.Not your problem rather pebkac at this end. Copied executable and not share folder, automatic updates turned off again, probably by me. Even more embarrassingly went by terminal output in regard to finding ini rather than checking date/version manually.
Gridview/role feedbackBoth work for me. Wordsmith is the first skill in the last (fifth) group in "Social & Cultural" (you may need to add the tab since the name changed).
1) The Wordsmith skill is missing. (My scholars are waiting. ;))
2) Drag and drop is broken for me when editing gridviews. I was rearranging the order of roles in a custom gridview. Not sure when I last used it but it was working, potentially pre-64 bit?
Does anyone know why there is a special case for dwarves who already had a mood when generating skill/labor tool-tips (https://github.com/Dwarf-Therapist/Dwarf-Therapist/blob/master/src/skillcolumn.cpp#L253)? What I see is it replaces "No experience" with strings like "NO EXP Miner" or nothing for labor without skill (e.g. Hauling). I cannot understand the reason for that.A pure guess is that it's intended to help those who want to train dorfs in moodable skills in preparation for a mood to skip those that are beyond rescue (as they made a glumprong ring as a child already). There's no evidence behind that guess, though (and I don't do mood preparation either).
- 'Uniform equipment skill' is shield user and armour user. Did not notice anything wrong here.
Yeah, won't be getting DT for 44.02 until dfhack can import relevant offsets.
ERROR: not found.
Verify $_DT_BINARY defined in /Path/To/Dwarf-Therapist-38.1.0/dist/dwarftherapist script is set correctly.
Code: [Select]ERROR: not found.
Verify $_DT_BINARY defined in /Path/To/Dwarf-Therapist-38.1.0/dist/dwarftherapist script is set correctly.
[ 19.666] <I> attempting connection to running DF game (/home/scott/Dwarf-Therapist/src/mainwindow.cpp:403)
[ 19.666] <W> No valid layouts found in the following directories: ("/MyDFDirectory/Dwarf Fortress/LinuxLNP-0.43.05-r06/LNP/utilities/dwarf_therapist/share", "/home/lucas/Games/Dwarf Fortress/LinuxLNP-0.43.05-r06/LNP/utilities/dwarf_therapist/../share", "/home/lucas/Games/Dwarf Fortress/LinuxLNP-0.43.05-r06/LNP/utilities/dwarf_therapist/../share/dwarftherapist", "/home/lucas", "/home/lucas/share") (/home/scott/Dwarf-Therapist/src/dfinstance.cpp:119)
[ 19.672] <I> Dwarf fortress path: "/MyDFDirectory/Dwarf Fortress/LinuxLNP-0.43.05-r06/df_linux" (/home/scott/Dwarf-Therapist/src/dfinstancelinux.cpp:276)
[ 19.723] <I> Setting memory layout for DF checksum "0xaf8cc86c" (/home/scott/Dwarf-Therapist/src/dfinstance.cpp:1032)
[ 19.723] <I> Could not find layout for checksum "0xaf8cc86c" (/home/scott/Dwarf-Therapist/src/dfinstance.cpp:1055)
[ 19.723] <I> Checking for layout for checksum: "0xaf8cc86c" (/home/scott/Dwarf-Therapist/src/updater.cpp:136)
[ 20.021] <I> downloading layout "v0.43.02.ini" SHA: "efe236ee1921468def7d24f1018afcd912ca5042" (/home/scott/Dwarf-Therapist/src/updater.cpp:226)
[ 20.022] <I> downloading layout "v0.43.03.ini" SHA: "a79c9a734d3af0631e91a2c1aad5285c65ab200f" (/home/scott/Dwarf-Therapist/src/updater.cpp:226)
[ 20.022] <I> downloading layout "v042.01.ini" SHA: "00f2d47192b17c96b0787205b7b241ae15184233" (/home/scott/Dwarf-Therapist/src/updater.cpp:226)
[ 20.022] <I> downloading layout "v042.02.ini" SHA: "ec6a3c43d97c096f997bdd22e39921b065326ad9" (/home/scott/Dwarf-Therapist/src/updater.cpp:226)
[ 20.022] <I> downloading layout "v042.03.ini" SHA: "d81b90aafff9af84b4d6723a600f61099ea32da6" (/home/scott/Dwarf-Therapist/src/updater.cpp:226)
[ 20.022] <I> downloading layout "v042.04.ini" SHA: "cbce922a4dae18a4e59e5d904da96d01a5be7b2e" (/home/scott/Dwarf-Therapist/src/updater.cpp:226)
[ 20.022] <I> downloading layout "v042.05.ini" SHA: "9e0f2039f008546517997c08c41f318f98a79d7b" (/home/scott/Dwarf-Therapist/src/updater.cpp:226)
[ 20.022] <I> downloading layout "v042.06.ini" SHA: "10203b4ffa91ab6cc1e479dd6b809ef214cbb0fe" (/home/scott/Dwarf-Therapist/src/updater.cpp:226)
[ 20.071] <I> Setting memory layout for DF checksum "0xaf8cc86c" (/home/scott/Dwarf-Therapist/src/dfinstance.cpp:1032)
[ 20.071] <I> Could not find layout for checksum "0xaf8cc86c" (/home/scott/Dwarf-Therapist/src/dfinstance.cpp:1055)
[ 20.071] <W> lost connection to DF (/home/scott/Dwarf-Therapist/src/mainwindow.cpp:464)
[ 20.072] <C> ("No Layouts Found", "No valid memory layouts could be found to attempt connection to Dwarf Fortress.", "View the details below for the directories checked.", "/MyDFDirectory/Dwarf Fortress/LinuxLNP-0.43.05-r06/LNP/utilities/dwarf_therapist/share\n/MyDFDirectory/Dwarf Fortress/LinuxLNP-0.43.05-r06/LNP/utilities/dwarf_therapist/../share\n/MyDFDirectory/Dwarf Fortress/LinuxLNP-0.43.05-r06/LNP/utilities/dwarf_therapist/../share/dwarftherapist\n/home/lucas\n/home/lucas/share") (/home/scott/Dwarf-Therapist/src/mainwindow.cpp:486)
I don't know who Scott is, but he sure isn't getting his own acocunt on my computerDid you try the script that start DF as a child of DT (after the setcap part in the readme (https://github.com/Dwarf-Therapist/Dwarf-Therapist#running-the-program)).Yes. That is producing this error.
You could also try changing ptrace_scope (https://www.kernel.org/doc/Documentation/security/Yama.txt). 0 is the most permissive mode. "sysctl kernel.yama.ptrace_scope" to check the current value and "sudo sysctl kernel.yama.ptrace_scope=0" to change it.Tried, didn't work.
PS: Is "/Path/To/..." the real path to DT?It's the puedo-path, personal details ommitted.
Tentative untested Therapist INI files for Dwarf Fortress version 0.44.02:
Windows 32-bit:Spoiler (click to show/hide)
Windows 64-bit:Spoiler (click to show/hide)
If you decide to try using these, please provide feedback!
[dwarf_offsets]
first_name=0x0000
nick_name=0x0020
last_name=0x0040
Thanks! It works for me (at least at first glance). I'll provide feedback later if necessary.I think he ran "devel/export-dt-ini" in DFHack.
I don't want to be too inquisitive, but how did you reach these new addresses?
The win64 layout is missing "string_cap_offset=0x0018" in the "[offsets]" section.Both of them are missing that, which is because it's not in https://github.com/DFHack/scripts/blob/master/devel/export-dt-ini.lua
32-bit memory layout works for the SDL version, not for the legacy version.Right, Windows layouts are always for the SDL version unless specified otherwise (they can't work for both).
Dwarf Therapist seems to crash 100% of the time while testing on a 64 bit DF, both SDL and legacy, regardless of memory layout.
The win64 layout is missing "string_cap_offset=0x0018" in the "[offsets]" section.Both of them are missing that, which is because it's not in https://github.com/DFHack/scripts/blob/master/devel/export-dt-ini.lua
I can't believe I'm asking this, I'm such a scrub, but what specific ini file do I update with the untested 64x bit code?
I can't believe I'm asking this, I'm such a scrub, but what specific ini file do I update with the untested 64x bit code?
crashes when I try to read dwarves.
do I have to set an option so that therapist will use the new .ini i created?
For some reason, DT refuses to work with any 64-bit version of DF.32-bit memory layout works for the SDL version, not for the legacy version.Right, Windows layouts are always for the SDL version unless specified otherwise (they can't work for both).
Dwarf Therapist seems to crash 100% of the time while testing on a 64 bit DF, both SDL and legacy, regardless of memory layout.
Are you testing 64-bit 0.44.02 or something else?
crashes when I try to read dwarves.The following 3 steps gave me a positive outcome, tested for 3 hours, no crash:
do I have to set an option so that therapist will use the new .ini i created?
...
Windows 32-bit:Spoiler (click to show/hide)
...
If you decide to try using these, please provide feedback!
To every one with missing names on windows 64, use this fixed version (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/44.02_win/share/memory_layouts/windows/v0.44.02_x64_graphics.ini).
To every one with missing names on windows 64, use this fixed version (https://raw.githubusercontent.com/cvuchener/Dwarf-Therapist/44.02_win/share/memory_layouts/windows/v0.44.02_x64_graphics.ini).Or just add this missing line in [offsets] section:
Yes, I saw. It is not important for win32 since the default value (0x14) is the good one. I wonder if I should fix the DFHack script or just remove the requirement for it. I could hard-code this offset, since it is related to std::string ABI, if the values change it will surely break the code at the same time anyway.If it's something that won't change in different DF versions, it shouldn't be in the INI file. I'm not sure any of the three "string_*" entries in [offsets] would change (unless Toady's compiler changes, which typically requires significant DT changes anyway).
Tentative untested Therapist INI files for Dwarf Fortress version 0.44.02:
Windows 32-bit:Spoiler (click to show/hide)
Windows 64-bit:Spoiler (click to show/hide)
If you decide to try using these, please provide feedback!