v50 Steam/Premium information for editors
  • v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
  • Use this page to report any issues related to the migration.
This notice may be cached—the current version can be found here.

User:Jifodus/Memory research

From Dwarf Fortress Wiki
Jump to navigation Jump to search

October 11, 2008[edit]

Hotkeys[edit]

struct Hotkey {
  string name;
  word unused; // 0 if used (possibly also mode, since unused is -1)
  word padding0; // most likely padding
  int x;
  int y;
  int z;
} // size = 0x2C

Buildings[edit]

See http://www.bay12games.com/forum/index.php?topic=24897.msg303143#msg303143

0x015838A0
0x015838B0
0x015838F0 - Has fewer elements than the other two. May exclude stockpiles.

Items[edit]

See http://www.bay12games.com/forum/index.php?topic=24897.msg303143#msg303143

0x015832C8 - A monitoring tool detected items that existed one frame then were gone the next
0x015832D8 - As items disappeared (like above), the index decreased by one. Looks promising as the global item vector.
0x015833B8 - Always has fewer elements than the other two

v0.27.169.33b[edit]

Addresses[edit]

Address Type Name Information
0x0124A6A0 class game * game_data I have not actually determined if this is a class, but I'm reasonably sure that this points to a class.

Classes[edit]

class game[edit]

Offset (+Hex) Type Name Information
0004 class df_params * start_params The starting parameters for a new Dwarf Fortress game.

class df_params[edit]

Offset (+Hex) Type Name Information
(00DC) 00D8 std::vector<class dwarf_info> dwarf_params The starting dwarves.
010E word sel_item The current selected item in the item list.
0290 signed word points The current amount of points available to spend.

class dwarf_info[edit]

Offset (+Hex) Type Name Information
0070 signed dword[80] skills The dwarf's skill levels.
01C0 signed dword skill_points The number of skill levels left that can be assigned to the dwarf.

v0.27.169.33c[edit]

Addresses[edit]

Address Type Name Information
0x01250698 class game * game_data I have not actually determined if this is a class, but I'm reasonably sure that this points to a class.

Classes[edit]

class game[edit]

Offset (+Hex) Type Name Information
0004 class df_params * start_params The starting parameters for a new Dwarf Fortress game.

class df_params[edit]

Offset (+Hex) Type Name Information
(00DC) 00D8 std::vector<class dwarf_info> dwarf_params The starting dwarves.
010E word sel_item The current selected item in the item list.
112 word sel_item The current selected animal in the pet list.
7F8 signed dword fortress_name_front Fortress Name (Front Compound). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
7FC signed dword fortress_name_rear Fortress Name (Rear Compound). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
800 signed dword fortress_name_first Fortress Name (First Adjective). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
804 signed dword fortress_name_second Fortress Name (Second Adjective). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
808 signed dword fortress_name_hypen Fortress Name (Hyphen Compound). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
80C signed dword fortress_name_the Fortress Name (The X). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
810 signed dword fortress_name_of Fortress Name (Of X). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
864 signed dword group_name_front Group Name (Front Compound). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
868 signed dword group_name_rear Group Name (Rear Compound). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
86C signed dword group_name_first Group Name (First Adjective). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
870 signed dword group_name_second Group Name (Second Adjective). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
874 signed dword group_name_hypen Group Name (Hyphen Compound). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
878 signed dword group_name_the Group Name (The X). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
87C signed dword group_name_of Group Name (Of X). -1 if not used, otherwise index into the dictionary (which dictionary I don't know).
08F0 signed word points The current amount of points available to spend.

class dwarf_info[edit]

Offset (+Hex) Type Name Information
0070 signed dword[80] skills The dwarf's skill levels.
01C0 signed short skill_points The number of skill levels left that can be assigned to the dwarf.

v0.27.169.33d[edit]

Everything is the same as v0.27.169.33c except the class game* is 0x1000 higher than v0.27.169.33c.

Addresses[edit]

Address Type Name Information
0x01251698 class game * game_data

v0.27.169.33e[edit]

Everything is the same as v0.27.169.33c except the class game* is 0x2000 higher than v0.27.169.33c.

Addresses[edit]

Address Type Name Information
0x01252698 class game * game_data