DFHack / df-structures

Dwarf Fortress data structure descriptions
https://github.com/DFHack/dfhack
118 stars 81 forks source link

TwbT structures research #61

Closed PeridexisErrant closed 11 months ago

PeridexisErrant commented 9 years ago

Mifki has said that the only thing preventing TwbT being merged into DFHack is the additional structures research required. Instructions here; it would be good to merge this too.

seylerius commented 8 years ago

Would merging this make it possible in the future to use TwbT without breaking other DFHack UI overlays? As an example, when using TwbT and the siege engine mod, the siege engine gui replaces the map, rather than overlaying it.

lethosor commented 8 years ago

No, this would just mean we'd have to locate the hardcoded offsets TwbT needs. I'm not really sure what to do here, since I haven't seen documentation regarding what those offsets actually are.

PeridexisErrant commented 8 years ago

Would merging this make it possible in the future to use TwbT without breaking other DFHack UI overlays?

No, but adding these structures would make it easier to keep TwbT up to date and perhaps include a standard version in DFHack.

DFHack/dfhack#746 will avoid broken overlays, but there's a number of other plugins that need to change before that all shakes out.

lethosor commented 8 years ago

If you ask me, it would make it harder to keep twbt up to date, since

Quietust and Expwnent also pointed out several issues in TwbT that could prevent us from including it - I'm not sure how many of them have been fixed since then, but some are still present. Here's an incomplete list:

I also haven't confirmed that DFHack/dfhack#746 will avoid broken overlays. In particular, I have no idea why scripts that just draw to the sidebar cause twbt's map display to break. Hopefully that can be figured out once DFHack is stable enough, and we can get rid of the separately-maintained plugins as well.

fricy commented 8 years ago

re:

I'm not really sure what to do here, since I haven't seen documentation regarding what those offsets actually are.

Do you mean this: https://github.com/mifki/df-twbt/blob/master/PATCHES.md

lethosor commented 8 years ago

That just tells you how to find seven offsets of things in memory. I have no idea what those things are, how to describe them in df-structures, or whether they're pointers to the data or executable segments (or both). A couple appear to be function pointers, which we don't have a way of describing (and there are some issues with including function pointers that are a little unclear to me, anyway).

warmist commented 6 years ago

IMHO adding them could be done as generic "offsets" at first (or forever?). As for what they are:

The rest i don't know, but i think they are specific offsets for various binary patches.