Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 37 38 [39] 40 41 ... 243

Author Topic: DFHack 50.13-r2  (Read 820249 times)

Devast

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #570 on: December 22, 2017, 05:59:49 pm »


It will work in the next version, unless you're using the 64-bit Linux build.

Sweet, thanks.
Logged

CaptainArchmage

  • Bay Watcher
  • Profile Pic has Changed! Sorry for the Delay.
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #571 on: December 22, 2017, 08:34:26 pm »

http://dfhack.readthedocs.io/en/stable/docs/_auto/devel.html#devel-inject-raws might work, but I haven't used it. There should be more directions if you try running the script. Make a backup of your save first! This script can cause corruption if you use it incorrectly.

Oh this one will be very useful. Does anyone know if this will change the entities though, so they can also use pedestals and display cases for example?
Logged
Given current events, I've altered my profile pic and I'm sorry it took so long to fix. If you find the old one on any of my accounts elsewhere on the internet, let me know by message (along with the specific site) and I'll fix. Can't link the revised avatar for some reason.

Max™

  • Bay Watcher
  • [CULL:SQUARE]
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #572 on: December 22, 2017, 11:08:49 pm »

Regarding deities list:
No, I've only seen the list in game when trying to build a temple. The only other way I can think of at the moment is the rather brute force action of going through all hist figs to find the deities, check if they are civ tagged (I don't know if they are or even should be) to possibly get the starting list.
I can get the deities from a single sapient's relations, so getting it for all residents would be a matter of going through the units list and look at the ones that are residents.
The second part is fairly reasonable, but I don't like the first part. There must be somewhere in the data structures where you can find a civ's deities, as I very much doubt Toady uses the stupid brute force approach above. If there's a list of deities somewhere and they're tagged with civs somehow you can probably easily scan through that list (it shouldn't be very long), but a (unmapped) list of deity hist fig Ids in the civ entity would be even easier for the base (I think you still have to scan the units to get the current set, unless it's cached/built during game play).
df.global.world.entities.all[k].unknown1b.worship has various numbers that I can't find a obvious relation to anything else, and the unknown1b.unknown1a has some which kinda sorta make sense as a list of histfig id numbers.
Logged

Urlance Woolsbane

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #573 on: December 23, 2017, 02:27:05 am »

Regarding deities list:
No, I've only seen the list in game when trying to build a temple. The only other way I can think of at the moment is the rather brute force action of going through all hist figs to find the deities, check if they are civ tagged (I don't know if they are or even should be) to possibly get the starting list.
I did a bit of poking around in a save-file with a hex-editor, and I can confirm that deities are not civ tagged. Furthermore, each entity (including subgroups) has a table of deities. I don't know exactly where it falls in relation to the other data, save that it's shortly before the randomly-generated positions (used for law-givers, priests, and the like.)

If you want, I can upload the save-file, along with a list of the relevant deities.
« Last Edit: December 23, 2017, 02:58:31 am by Urlance Woolsbane »
Logged
"Hey papa, your dandruff is melting my skin. Is that normal?"
"SKREEEONK!!!"
"Yes, daddy."

PatrikLundell

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #574 on: December 23, 2017, 04:48:46 am »

I think MaxTM found it:
Printing the names of the hist figs listed in df.global.world.entities.all [my_civ].unknown1b.unk32b resulted in a list matching that presented when trying to create a new temple with a newly embarked group of 7.

@Urlance Woolsbane: Save game hacking is a bit outside of the scope for the task, although I wouldn't be surprised if it was located at the same location there as it is in DF itself (i.e. the location MaxTM pointed at).
Logged

Urlance Woolsbane

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #575 on: December 23, 2017, 05:39:44 am »

@Urlance Woolsbane: Save game hacking is a bit outside of the scope for the task, although I wouldn't be surprised if it was located at the same location there as it is in DF itself (i.e. the location MaxTM pointed at).
That was my working assumption. Certainly, what I've seen of DF-Structures seems to line up with my research on the save-format.
Logged
"Hey papa, your dandruff is melting my skin. Is that normal?"
"SKREEEONK!!!"
"Yes, daddy."

PatrikLundell

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #576 on: December 23, 2017, 05:57:36 am »

OK, I think I've made a script. The testing is limited to a single embark before the first migrant wave (two visitors, though), so the "acquired" part hasn't been tested at all.

Spoiler (click to show/hide)
Logged

lethosor

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #577 on: December 23, 2017, 12:03:13 pm »

df.global.world.entities.all [my_civ].unknown1b.unk32b
You should use df.historical_entity.find(my_civ) instead, assuming my_civ is ui.civ_id. Your way might work for small worlds, but most of the "all" vectors in worlds can skip IDs. It's possible that this one doesn't ever skip IDs, but just to be safe, find() will always return something with the right ID (or nil).

And yes, entity.unknown1b.unk32b does appear to be deity IDs (but in reverse order). I'll have to name that.

Edit: I think someone may have named the wrong vector "worship" (the third instead of the second). They have the same size, so there's a good chance they're related, but the second one is deity IDs. Turns out that actually dates back to 2012.
« Last Edit: December 23, 2017, 12:06:54 pm by lethosor »
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.

PatrikLundell

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #578 on: December 23, 2017, 03:08:56 pm »

You're correct that I should use "find" (although I've never seen entities.all to skip anything, but better safe than sorry).

Regarding naming the wrong vector and naming the unnamed one I've actually created a pull request for it (which also scrubs the (now?) incorrect comment that the first vector is empty. However, I won't mind if you reject it and creates your own with better/wider info instead.
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #579 on: December 23, 2017, 07:39:58 pm »

I usually just use the type name, e.g. df.historical_entity.unknown1b.unk32b

lethosor

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #580 on: December 23, 2017, 09:32:22 pm »

Using gui/liquids, a permaflow that is flowing downwards is labeled "inv_8". It is "inv_9" if flowing off the east edge of the map. Haven't tested others.
Naturally-occurring or created with DFHack?
Naturally-occurring, in a save untouched by DFHack.
This appears to occur in 0.43.05 as well; reported at https://github.com/DFHack/df-structures/issues/228
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.

jecowa

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #581 on: December 24, 2017, 01:14:34 am »

Does Stonesense work in 0.44.02-alpha? I've tried both "2D" and "STANDARD" print modes. I've tried it both with the vanilla libraries and with "libfreetype.6.dylib" added. I'm testing mostly in the Object Testing Arena, but I tried in a dwarf fortress once. I've tried with both the Lazy Newb Pack and a manual installation.


If stonesense isn't updated yet, that's fine; I just want to make sure it's not just me.
Logged

lethosor

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #582 on: December 24, 2017, 11:04:21 am »

Stonesense hasn't been touched in a long time. Whatever that is is probably a system or packaging issue - we've never had to update it for specific versions to avoid library issues, because the libraries it uses aren't tied to specific DF versions. Can you post your stderr.log?
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.

jecowa

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #583 on: December 24, 2017, 01:18:51 pm »

probably the relevant bit:
Code: [Select]
loaded plugin stocks; DFHack build 0.44.02-alpha1-0-g43b19c89
loading plugin stonesense
dlopen(~/Downloads/df/df_osx_44_02 DFHack TWBT Tergel/hack/plugins/stonesense.plug.dylib, 6): Symbol not found: ___sincos_stret
  Referenced from: ~/Downloads/df/df_osx_44_02 DFHack TWBT Tergel/hack/libs/liballegro.5.2.2.dylib
  Expected in: flat namespace
 in ~/Downloads/df/df_osx_44_02 DFHack TWBT Tergel/hack/libs/liballegro.5.2.2.dylib
Can't load plugin stonesense
loading plugin strangemood


Spoiler: full file (click to show/hide)

I'm on 10.7.5 Lion if it matters.

Edit: I tried stonesense in 43.05-64 (didn't work) and 43.03-32 (it worked), so it seems like a 64-bit specific issue.

Edit2: Works great in DFHack 44.02-alpha-32bit:
Spoiler (click to show/hide)

The error says something about a namespace and the 64-bit version is using absolute file references while the 32-bit version is using relative locations. Maybe that doesn't really matter, though.
« Last Edit: December 24, 2017, 01:56:31 pm by jecowa »
Logged

lethosor

  • Bay Watcher
    • View Profile
Re: DFHack 0.43.05-r3.1 | 0.44.02-alpha1 (dev)
« Reply #584 on: December 24, 2017, 02:17:37 pm »

the 64-bit version is using absolute file references while the 32-bit version is using relative locations
I see absolute paths to liballegro in the 64-bit log, but they're pointing to things on your machine, so that's not the issue. I see nothing that could be described as relative locations in the 32-bit log, unless you mean "stonesense", but that's just the plugin's name.

Note that the 64-bit version uses a newer version of Allegro. A search for "___sinceos_stret" turned up https://github.com/mapnik/node-mapnik/issues/324 and https://github.com/pioneerspacesim/pioneer/issues/2610, so it's possible that this version of Allegro either doesn't support <10.9 at all or was built in a way that doesn't.
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.
Pages: 1 ... 37 38 [39] 40 41 ... 243