Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 2 3 [4] 5 6 7

Author Topic: Dwarf Therapist - DFHack - 0.1.2 *Updated*  (Read 29413 times)

Belal

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist - DFHack Edition - Updated *v0.0.5*
« Reply #45 on: February 25, 2010, 01:10:44 pm »

The memory offsets for 40d17 from Belal's post weren't working for me, so I grabbed the Memory.xml file directly from the DFHack repository.  That seems to be working much better.

Here's the copy I'm using:
http://github.com/peterix/dfhack/raw/master/output/Memory.xml

You can do this, however be forewarned that Baughn changed the input code for d17 and d18 and it broke the custom name/profession key scripting.  Bascially it ignores rapid key sequences now, which breaks the input code.  So reading dwarves and changing their professions will work fine using an updated memory.xml, but changing their nicknames and custom professions will break.

We have a solution to this problem, I am currently in the process of updating my fork of dwarf therapist to the latest dfhack, as well as adding some improvements along the way.  Stay tuned :)
Logged

JanusTwoface

  • Bay Watcher
  • murbleblarg
    • View Profile
    • jverkamp.com
Re: Dwarf Therapist - DFHack Edition - Updated *v0.0.5*
« Reply #46 on: February 25, 2010, 02:22:16 pm »

You can do this, however be forewarned that Baughn changed the input code for d17 and d18 and it broke the custom name/profession key scripting.  Bascially it ignores rapid key sequences now, which breaks the input code.  So reading dwarves and changing their professions will work fine using an updated memory.xml, but changing their nicknames and custom professions will break.

Turns out, even changing professions wasn't working for me.  So I've gone back to the main branch of DT for now.  Seems to be working all right.

From what I read, is the DFHack branch designed to changed things through using the main interface rather than memory editing?  Interesting, but seems more prone to breakage.
Logged
You may think I'm crazy / And I think you may be right
But life is ever so much more fun / If you are the crazy one

My blog: Photography, Programming, Writing
Novels: A Sea of Stars, Confession

Belal

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist - DFHack Edition - Updated *v0.1.0*
« Reply #47 on: March 04, 2010, 10:21:15 am »

Just wanted to give some additional instructions on how to install the new version.  It uses a shared memory library that sits in between Dwarf fortress and the SDL library.  This allows shared use of the dwarf fortress memory by the shared memory library directly, which allows for greatly increased speed.  It also allows us to call stl functions from the shared memory, so we can modify strings without memory leaks.  In addition, down the line we will be able to call dwarf fortress functions directly in the shared memory library.

Anyway, to get this functionality you have to change a couple of files in you dwarf fortress directory.  On windows, you need to rename the SDL.dll in the Dwarf fortress directory to SDLreal.dll, and then copy the SDL.dll in the DT-dfhack download into the dwarf fortress directory.  On linux, you need to copy the libdfconnect.so library into the libs directory of your dwarf fortress directory, then add 'export LD_PRELOAD="./libs/libdfconnect.so"' to your dwarf fortress startup script.

There are more detailed instructions on installing this shared memory libarary (SHM) in INSTALL.txt
Logged

SeveQ

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist - DFHack Edition - Updated *v0.1.0*
« Reply #48 on: March 12, 2010, 06:07:17 am »

I tried this one today and have to report: it's much slower here than 0.4.2 without the dfhack backend. It takes 2 seconds to read the dwarfs. Refreshing doesn't even work at all.

I'm running it on Windows 7 Prof. 64bit. I have tried normal user and administrator rights to no avail.

Before starting DT I have of course copied the SDL.dll to the DF directory after renaming the original SDL.dll to SDLreal.dll.
Logged

BigD145

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist - DFHack Edition - Updated *v0.1.0*
« Reply #49 on: March 13, 2010, 03:51:36 pm »

The SDL from 0.1.0 will not even allow DF d16 to start. No error, no nothing. CTRL+ALT+DEL yields no DF entry on an XP64 machine. I'm not surprised this is the case, so I guess I'm just out of the mix on this tool.
Logged

peterix

  • Bay Watcher
    • View Profile
    • Dethware
Re: Dwarf Therapist - DFHack Edition - Updated *v0.1.0*
« Reply #50 on: March 13, 2010, 08:08:56 pm »

I tried this one today and have to report: it's much slower here than 0.4.2 without the dfhack backend. It takes 2 seconds to read the dwarfs. Refreshing doesn't even work at all.

I'm running it on Windows 7 Prof. 64bit. I have tried normal user and administrator rights to no avail.

Before starting DT I have of course copied the SDL.dll to the DF directory after renaming the original SDL.dll to SDLreal.dll.
It took me a while because I'm not really familiar with DT's code, but I tracked the problem to the fact that it does suspend/resume for each dwarf it updates.
With the shm, a S/R cycle takes a whole DF frame to complete (the time it takes for something to actually happen on DF's screen). This was a viable strategy with the old method, but that was fundamentally unsafe (bug reports about normal-mode reveal corrupting smelter reactions are no fun).
So... say you have 100 dwarves that need updating and your GFPS is set to 20. It will take 5 seconds to update everything, and it's stalling 99% of the time. With a huge fort that's running at 5 GFPS, it will be 20 seconds.

This should be fixed so that only one suspend/resume cycle is needed for each update.

fixed :)
The SDL from 0.1.0 will not even allow DF d16 to start. No error, no nothing. CTRL+ALT+DEL yields no DF entry on an XP64 machine. I'm not surprised this is the case, so I guess I'm just out of the mix on this tool.
Are you sure you didn't just overwrite it? The original dll is still required, only under a different name (SDLreal.dll).
« Last Edit: March 17, 2010, 02:10:21 pm by peterix »
Logged

Belal

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist - DFHack - 0.1.1 Supports All Versions > 39a!
« Reply #51 on: March 17, 2010, 07:37:03 am »

Just wanted to mention that the 0.1.1 release fixes all the speed issues people were having, this is now just as fast if not faster than the original Dwarf Therapist.  Plus it supports many more versions!
Logged

BigD145

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist - DFHack Edition - Updated *v0.1.0*
« Reply #52 on: March 17, 2010, 05:34:04 pm »

The SDL from 0.1.0 will not even allow DF d16 to start. No error, no nothing. CTRL+ALT+DEL yields no DF entry on an XP64 machine. I'm not surprised this is the case, so I guess I'm just out of the mix on this tool.
Are you sure you didn't just overwrite it? The original dll is still required, only under a different name (SDLreal.dll).

Aha. I'll bet that was my issue.
Logged

Bersken

  • Escaped Lunatic
    • View Profile
Re: Dwarf Therapist - DFHack - 0.1.1 Supports All Versions > 39a!
« Reply #53 on: March 21, 2010, 04:55:57 pm »

I'm having trouble with DF crashing whenever I try to connect to it with DT-DFHack.

OS: 64-bit Ubuntu 9.10 (Yeah... "There's yer problem; 64-bit!")
DF: 40d18_linux (tried with and without 40d18-head applied.)
DT: 0.1.1_linux

DF runs like a charm by itself. I've gotten Dwarf Therapist to start if DF isn't running, though I've noticed that it's trying to load the 64-bit versions of the gio modules instead of the 32-bit, even after I made sure I actually had the 32-bit libs and even tried putting links to the 32-bit versions in '~/dwarftherapist/.

Dwarf Fortress terminal output (before connecting):
Spoiler (click to show/hide)

Dwarf Therapist terminal output (before connecting):
Spoiler (click to show/hide)

Once I try to connect (or if DF is running when I start DT, so DT automatically tries to connect), Dwarf Fortress crashes with a "Segmentation fault". Dwarf Therapist prints out a few more lines to the terminal about Dwarf Fortress disappearing.

Spoiler (click to show/hide)

I'm thinking the problem is with the gio modules. How do I get the correct ones to load? ...or is there some other problem?
Logged

peterix

  • Bay Watcher
    • View Profile
    • Dethware
Re: Dwarf Therapist - DFHack - 0.1.1 Supports All Versions > 39a!
« Reply #54 on: March 21, 2010, 06:53:42 pm »

1. 64bit shouldn't be a problem. DFHack is developed primarily on a 64bit-only Linux distro ;)
2. GIO isn't used anywhere AFAIK.

I'm getting invalid memory accesses here for 40d18 and 40d19. Something must have slipped through... looks like bad offsets.

I just tested it with 40d16 and 40d17 and it works with those, so try using one of them until this is fixed.

Bersken

  • Escaped Lunatic
    • View Profile
Re: Dwarf Therapist - DFHack - 0.1.1 Supports All Versions > 39a!
« Reply #55 on: March 22, 2010, 12:32:23 am »

Thanks. After throwing a few tantrums, I seem to have gotten Dwarf Therapist working with 40d16. I haven't unpaused yet, but my dwarves are showing up in there. Dwarf Fortress 40d17 had a problem with depending on a library that isn't available (at least without a bit of hunting and patching) for Karmic.

Now to learn to use the utility and see how well it can help me manage my dwarves...  :D
Logged

Belal

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist - DFHack - 0.1.1 Supports All Versions > 39a!
« Reply #56 on: March 22, 2010, 12:36:51 pm »

Just wanted to mention for those of you trying the linux version for d18-d19, the creature vector offset was incorrect.  Please replace the existing Memory.xml in the /etc folder of dwarf therapist with the one at peterix's github
Logged

Zaranthan

  • Bay Watcher
  • Plump Helmet Smelter
    • View Profile
Re: Dwarf Therapist - DFHack - 0.1.1 Supports All Versions > 39a!
« Reply #57 on: March 22, 2010, 02:00:37 pm »

Woohoo! d19 is much better on my system, but I find migrant waves unmanageable without DT now. Mad props, Belal!
Logged
Quote from: Howard, Nerf This, by Scott D. Ferguson
Villains sleep with hookers, heroes sleep with destiny.

Boatmurdered

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist - DFHack Edition - Updated *v0.0.5*
« Reply #58 on: March 24, 2010, 10:40:23 pm »

Sorry  to be a pain but how do I install that file into my "shared libaries directory"?
I put it into /usr/lib didn't make a difference.
When i use the commandline you gave me, it doesnt do "./DwarfTherapist: error while loading shared libraries: libdfhack.so: cannot open shared object file: No such file or directory" it does the same thing but with "libQtScript.so.4"
I install Qt4 and i know that file is in /usr/lib but it still does it!

Running a fresh install Karmic Ubuntu
Sorry to bring up an old point, but I'm having the same problem. I can't find libQtScript.so.4 though. I'm pretty much at a loss as to what to do, as I've followed everything else correctly.
Logged
I think this is where the DF-players-are-Hitler jokes go from being just jokes to still jokes but lose some of their irony.

Still. Someone has to open up a chain of McUrist's sooner or later.

muty

  • Bay Watcher
    • View Profile
Re: Dwarf Therapist - DFHack - 0.1.1 Supports All Versions > 39a!
« Reply #59 on: March 25, 2010, 11:32:49 am »

I'm having trouble with DF crashing whenever I try to connect to it with DT-DFHack.

OS: 64-bit Ubuntu 9.10 (Yeah... "There's yer problem; 64-bit!")
DF: 40d18_linux (tried with and without 40d18-head applied.)
DT: 0.1.1_linux

DF runs like a charm by itself. I've gotten Dwarf Therapist to start if DF isn't running, though I've noticed that it's trying to load the 64-bit versions of the gio modules instead of the 32-bit, even after I made sure I actually had the 32-bit libs and even tried putting links to the 32-bit versions in '~/dwarftherapist/.

Dwarf Fortress terminal output (before connecting):
Spoiler (click to show/hide)

Dwarf Therapist terminal output (before connecting):
Spoiler (click to show/hide)

Once I try to connect (or if DF is running when I start DT, so DT automatically tries to connect), Dwarf Fortress crashes with a "Segmentation fault". Dwarf Therapist prints out a few more lines to the terminal about Dwarf Fortress disappearing.

Spoiler (click to show/hide)


I have the exact same problem with the same OS. Tried 4018 40d18HEAD and 40d19. When I start dwarf therapist, df crashes with segmentation fault.
« Last Edit: March 25, 2010, 11:34:44 am by muty »
Logged
Pages: 1 2 3 [4] 5 6 7