Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 327 328 [329] 330 331 ... 373

Author Topic: DFHack 0.34.11 r3  (Read 1388551 times)

xcorps

  • Bay Watcher
    • View Profile
Showmood
« Reply #4920 on: December 03, 2013, 08:45:58 pm »

Sorry if this is the wrong thread, not really sure where to post it.

I just did a showmood and got :
Item 1: any plant fibre cloth, quantity 30000

Surely that can't be right?

Logged

BlackFlyme

  • Bay Watcher
  • BlackFlyme cancels Work: Interrupted by bird.
    • View Profile
Re: Showmood
« Reply #4921 on: December 03, 2013, 08:59:46 pm »

Sorry if this is the wrong thread, not really sure where to post it.

I just did a showmood and got :
Item 1: any plant fibre cloth, quantity 30000

Surely that can't be right?

No, that's fine. Cloth, thread, and bars have different quantities than other items. One bar is 150, one cloth is 10,000, and one piece of thread is 15,000.

Your mooder wants three pieces of plant cloth.
Logged

xcorps

  • Bay Watcher
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4922 on: December 03, 2013, 09:14:03 pm »

Thanks for the quick response, I had the fort on hold until I knew if I needed to wall him in.
Logged

greycat

  • Bay Watcher
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4923 on: December 03, 2013, 10:09:19 pm »

The new LFR release says it uses DFHack r4.  Apparently DFHack r4 is not actually a thing.  Unless it is.  Maybe.  It's very confusing.

So anyway, it looks like what I'm supposed to do is build DFHack from git source code.  I have a Debian 7.2 amd64 system.  Many of the i386 libraries were already installed, as I have been playing DF on this system (including the previous LFR release with DFHack r3).

I installed the following packages:
  • gcc-multilib
  • libxml-libxml-perl
  • libxml-libxslt-perl
  • cmake

I did a git clone https://github.com/peterix/dfhack, and then followed the instructions from Compile.html:
Code: [Select]
cd build
cmake .. -DCMAKE_BUILD_TYPE:string=Release -DCMAKE_INSTALL_PREFIX=/usr/local/src/df_linux

This aborted with an error about hash map and making sure I had 32-bit GCC >= 4.4.  I couldn't find a definitive response to this, so I installed one additional package:

  • g++-multilib
Then I tried the cmake command again... but instead of going through the "looking for..." steps, it only printed 3 lines.  I figured that was bad.  But there was no "cmake clean" command (I tried with and without the ..), so then I improvised and adapted the Mac OS X instructions:

Code: [Select]
cd ..
mkdir build-2
cd build-2
cmake .. -DCMAKE_BUILD_TYPE:string=Release -DCMAKE_INSTALL_PREFIX=/usr/local/src/df_linux
make install

This proceeded along with a bunch of warnings about variables that are too small to hold enums, until it aborted with this error:

Code: [Select]
Scanning dependencies of target eventful
[ 71%] Building CXX object plugins/CMakeFiles/eventful.dir/eventful.cpp.o
In file included from /usr/local/src/dfhack/library/include/df/unit.h:56:0,
                 from /usr/local/src/dfhack/plugins/eventful.cpp:11:
/usr/local/src/dfhack/library/include/df/tile_designation.h:19:38: warning: ‘df::tile_designation::<anonymous struct>::dig’ is too small to hold all values of ‘enum df::enums::tile_dig_designation::tile_dig_designation’ [enabled by default]
/usr/local/src/dfhack/library/include/df/tile_designation.h:27:37: warning: ‘df::tile_designation::<anonymous struct>::liquid_type’ is too small to hold all values of ‘enum df::enums::tile_liquid::tile_liquid’ [enabled by default]
/usr/local/src/dfhack/library/include/df/tile_designation.h:30:34: warning: ‘df::tile_designation::<anonymous struct>::traffic’ is too small to hold all values of ‘enum df::enums::tile_traffic::tile_traffic’ [enabled by default]
/usr/local/src/dfhack/plugins/eventful.cpp: In function ‘void enableEvent(int, int)’:
/usr/local/src/dfhack/plugins/eventful.cpp:232:15: error: ‘runtime_error’ is not a member of ‘std’
make[2]: *** [plugins/CMakeFiles/eventful.dir/eventful.cpp.o] Error 1
make[1]: *** [plugins/CMakeFiles/eventful.dir/all] Error 2
make: *** [all] Error 2

Now what?
Logged
Hell, if nobody's suffocated because of it, it hardly counts as a bug! -- StLeibowitz

falconne

  • Bay Watcher
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4924 on: December 03, 2013, 10:51:45 pm »

That DFHack r4 tag doesn't build on Linux (or OSX, due to another error).

Regarding the specific error you got, I fixed it for myself with this commit: https://github.com/Falconne/dfhack/commit/25b06a48c113a33fc7f64fc37838cdc4552fd3db

It's probably been fixed differently by others.
« Last Edit: December 03, 2013, 10:59:14 pm by falconne »
Logged
Utility plugins for DFHack, for improving Dwarf Fortress' user interface.

PeridexisErrant

  • Bay Watcher
  • Dai stihó, Hrasht.
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4925 on: December 04, 2013, 05:30:53 am »

Quick request -

I'd love a script that could export all the information that it's possible to export from legends mode - and if at all possible add a GUI hint for it.  This should be fairly easy to do the basics for, since "exportmaps.lua" already handles all the detailed maps.  All that needs to be added is the XML, sites/pops/map, and site maps.  I tried, but I don't actually use Lua and I kept running into errors - xml worked alone but not combined, and the others stuff I never got. 

I've already got a batch script that processes a complete set of exports, and I'm in the process of porting it to Python 3 (as a learning exercise, and for cross-platform availability).  If a dfhack script could export everything, I could then append a call to the processor for the LNP and everything would be super-easy for newbies; exploring the worldgen is a massively underrated activity that could be made way more accessible. 
Logged
I maintain the DF Starter Pack - over a million downloads and still counting!
 Donations here.

Blaze

  • Bay Watcher
  • The Chaos that Crawls up on you with a Smile.
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4926 on: December 04, 2013, 04:45:51 pm »

Dfusion appears to not work at all, I just get errors when I try to use any commands.

Also there no longer appears to be a way to change the number of starting dwarves. Am I missing something?
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4927 on: December 04, 2013, 04:47:42 pm »

starting dwarves is startdwarf.rb, not sure if it comes with DFHack 0.34.11 r3

Yeah, all of the .o files for dfusion are missing and have to be manually compiled right now

greycat

  • Bay Watcher
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4928 on: December 04, 2013, 07:40:17 pm »

That DFHack r4 tag doesn't build on Linux (or OSX, due to another error).

Regarding the specific error you got, I fixed it for myself with this commit: https://github.com/Falconne/dfhack/commit/25b06a48c113a33fc7f64fc37838cdc4552fd3db

It's probably been fixed differently by others.

Awesome, thanks!  It built for me with that one-line change.

------------------------------------------------------------------------------------------------------------------

Hmm.  OK, next problem:

Code: [Select]
golem:/usr/local/src/df_linux+DFHack_r4_git$ ./dfhack
./libs/Dwarf_Fortress: /usr/local/src/df_linux+DFHack_r4_git/libs/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by ./hack/libdfhack.so)
./libs/Dwarf_Fortress: /usr/local/src/df_linux+DFHack_r4_git/libs/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./hack/libdfhack.so)
-e

Inspecting the libs/libstdc++.so.6 file shows:

Code: [Select]
$ nm -D libs/libstdc++.so.6 | grep CXXABI
00000000 A CXXABI_1.3
00000000 A CXXABI_1.3.1
00000000 A CXXABI_1.3.2
00000000 A CXXABI_1.3.3
00000000 A CXXABI_1.3.4

$ nm -D libs/libstdc++.so.6 | grep GLIBCXX
00000000 A GLIBCXX_3.4
00000000 A GLIBCXX_3.4.1
00000000 A GLIBCXX_3.4.10
00000000 A GLIBCXX_3.4.11
00000000 A GLIBCXX_3.4.12
00000000 A GLIBCXX_3.4.13
00000000 A GLIBCXX_3.4.14
00000000 A GLIBCXX_3.4.2
00000000 A GLIBCXX_3.4.3
00000000 A GLIBCXX_3.4.4
00000000 A GLIBCXX_3.4.5
00000000 A GLIBCXX_3.4.6
00000000 A GLIBCXX_3.4.7
00000000 A GLIBCXX_3.4.8
00000000 A GLIBCXX_3.4.9

Googling led me to http://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html which seems to say that GLIBCXX_3.4.14 and CXXABI_1.3.4 come from gcc 4.5.0.  And I have gcc 4.7.2 on this computer.  Does this mean my gcc is too new, and I should try to build with 4.5 instead?

------------------------------------------------------------------------------------------------------------------

All right, let's see.  Debian 7.2 has three multilib-enabled versions of gcc packaged: 4.4, 4.6 and 4.7.  Guess what's missing.  Yeah.  gcc 4.5 is missing.

I tried building with gcc/g++ 4.4 (on Debian this is 4.4.7) and got this error:

Code: [Select]
[ 41%] Building CXX object library/CMakeFiles/dfhack.dir/Core.cpp.o
In file included from /usr/local/src/dfhack/library/Core.cpp:47:
/usr/local/src/dfhack/library/include/modules/EventManager.h:83: error: ‘hash’ is not a template
/usr/local/src/dfhack/library/include/modules/EventManager.h:83: error: explicit specialization of non-template ‘std::hash’
/usr/local/src/dfhack/library/include/modules/EventManager.h:94: error: ‘hash’ is not a template
/usr/local/src/dfhack/library/include/modules/EventManager.h:94: error: ‘std::hash’ is not a template type
make[2]: *** [library/CMakeFiles/dfhack.dir/Core.cpp.o] Error 1
make[1]: *** [library/CMakeFiles/dfhack.dir/all] Error 2
make: *** [all] Error 2

Then I tried with gcc 4.6 (which on Debian is 4.6.3) and it built, but I got the same runtime errors that I did with gcc 4.7.

Not sure what to try next, or why gcc 4.5 is not packaged....
« Last Edit: December 04, 2013, 08:53:57 pm by greycat »
Logged
Hell, if nobody's suffocated because of it, it hardly counts as a bug! -- StLeibowitz

lethosor

  • Bay Watcher
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4929 on: December 04, 2013, 10:29:12 pm »

From what I've heard from people who have compiled it, you do need GCC 4.5. I guess you could try building it from source (it does take a while, but it's fairly straightforward). Also, I was able to install it on OS X with Homebrew, so Linuxbrew might work (although I haven't tried it).

Speaking of OS X, I've been trying to compile r4 and I'm about 90% done with "make" so far. (If anyone's interested, there was an error with MapCache.cpp which I "fixed" by adding "(unsigned int)" before "layer_mats" on line 1146. I also used Falconne's fix above for eventful.) Here's the current problem I'm dealing with:
Code: [Select]
[ 91%] Building CXX object plugins/CMakeFiles/zone.dir/zone.cpp.o
In file included from dfhack-r4/library/include/LuaTools.h:32:0,
                 from dfhack-r4/plugins/zone.cpp:45:
dfhack-r4/library/include/DataDefs.h: In static member function 'static DFHack::compound_identity* df::identity_traits<T>::get() [with T = long unsigned int]':
dfhack-r4/library/include/DataFuncs.h:139:1:   instantiated from 'static void df::function_wrapper<void (*)(DFHack::color_ostream&, A1, A2, A3, A4), true>::execute(lua_State*, int, void (*)(DFHack::color_ostream&, A1, A2, A3, A4)) [with A1 = long unsigned int, A2 = long unsigned int, A3 = long unsigned int, A4 = long unsigned int, lua_State = lua_State]'
dfhack-r4/library/include/DataFuncs.h:222:59:   instantiated from 'void df::function_identity<T>::invoke(lua_State*, int) [with T = void (*)(DFHack::color_ostream&, long unsigned int, long unsigned int, long unsigned int, long unsigned int), lua_State = lua_State]'
dfhack-r4/plugins/zone.cpp:4515:1:   instantiated from here
dfhack-r4/library/include/DataDefs.h:441:54: error: '_identity' is not a member of 'long unsigned int'
This occurs with peterix/master and Falconne/DFHack-r4. I haven't found anything obvious that could be causing this - any ideas?
Logged
DFHack - Dwarf Manipulator (Lua) - DF Wiki talk

There was a typo in the siegers' campfire code. When the fires went out, so did the game.

danaris

  • Bay Watcher
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4930 on: December 05, 2013, 07:57:41 pm »

Oh, hey, saw your PM before I saw this, lethosor ;D

I have r4 building on OS X (tested successfully on 10.8 and 10.9); I just need to push a couple of changes to my repo on Github.
Logged

Ggobs

  • Bay Watcher
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4931 on: December 06, 2013, 08:15:58 pm »

I've been playing DF since 40d and never tried DFHack--just Dwarf Therapist and Mayday.

Those two is all I need, but I want to give workflow a chance.

How long after the next release can I reasonably expect a DFHack to be updated to the new release?

Thanks
Logged
Just popping in to say that if DF has taught me anything, it's that everything is doomed.

someone12345

  • Bay Watcher
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4932 on: December 06, 2013, 08:20:29 pm »

Advfort is not working for me. When I tried to dig using advfort, it did not work, even though I had a pick equipped. I had used R to move to dig, then took out a pick and pressed alt+up to dig into a wall. It said "correct tool not equipped". I put all of my weapons in my backpack, then tried again. It still did not work. Also, plant picking does not work. I stood on a shrub, then pressed alt+5. It said nothing, and the plant remained there. Can anyone help me?
Logged
GENERATION 26:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experime

BlackFlyme

  • Bay Watcher
  • BlackFlyme cancels Work: Interrupted by bird.
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4933 on: December 06, 2013, 10:25:28 pm »

Advfort is not working for me. When I tried to dig using advfort, it did not work, even though I had a pick equipped. I had used R to move to dig, then took out a pick and pressed alt+up to dig into a wall. It said "correct tool not equipped". I put all of my weapons in my backpack, then tried again. It still did not work. Also, plant picking does not work. I stood on a shrub, then pressed alt+5. It said nothing, and the plant remained there. Can anyone help me?

Adv-fort can be strange sometimes.

With mining and woodcutting, the pick/axe has to be in your dominant hand. Try emptying your hands by either dropping everything or stowing everything in your pack, then take only your pick out. If you lost your dominant hand in a fight, you will not be able to mine or chop wood.

Not sure about plant picking, but it may be because you are hungry or thirsty. If you are hungry, thirsty, or tired, you will not be able to do jobs since the A.I. logic will try to eat or drink before doing the job, even if your character has nothing to eat or drink.
Logged

someone12345

  • Bay Watcher
    • View Profile
Re: DFHack 0.34.11 r3
« Reply #4934 on: December 06, 2013, 10:33:46 pm »

No, my character is not hungry, thirsty, or tired. Also, which is the dominant hand of a character? I only have a pick in my hands, and it is multigrasp.
Logged
GENERATION 26:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experime
Pages: 1 ... 327 328 [329] 330 331 ... 373