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.

Editing 40d:Memory hacking/v0.27.169.33a

Jump to navigation Jump to search

Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.

You are editing a page for an older version of Dwarf Fortress ("Main" is the current version, not "40d"). Please make sure you intend to do this. If you are here by mistake, see the current page instead.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
 
__TOC__
 
__TOC__
 
== Addresses ==
 
Please pardon the redundancy; as this page is dead I am not going to take the time to format nicely.
 
<pre>pe_header_timestamp              == 4729DA32
 
map_data_loc                    == 01458568
 
map_x_count_loc                  == 01458580
 
map_y_count_loc                  == 01458584
 
map_z_count_loc                  == 01458588
 
race_data_vector_loc            == 01459F48
 
dwarven_race_index_loc          == 01237AD0
 
main_creature_vector_loc        == 01416A38
 
another_creature_vector_loc      == 01416A48
 
yet_another_creature_vector_loc  == 01416A88
 
whathe_another_creature_vector_loc == 01416A18
 
number_of_dwarves_loc            == 0078420C
 
initial_starting_points_loc      == 007833DF
 
art_defacement_malus_loc        == 0079DC2F
 
current_unit_focus_loc          == 00C2F548
 
next_creature_id_loc            == 00C079F4
 
language_vector_loc              == 0145A068
 
 
starting_skills_limit_loc        == 00780174
 
starting_skills_increment_loc    == 0078008F
 
starting_skills_decrement_loc    == 00780231
 
 
creature.happiness_level        == 00000504</pre>
 
 
 
== Addresses ==
 
== Addresses ==
 
{| border="1" cellpadding="2" width="100%"
 
{| border="1" cellpadding="2" width="100%"
Line 41: Line 14:
 
| normally -1000 (18 FC FF FF)
 
| normally -1000 (18 FC FF FF)
 
| <code>0x0079DC2F</code>
 
| <code>0x0079DC2F</code>
 
|-
 
| Next creature ID
 
| 4
 
| long
 
|
 
| <code>0x00C079F4</code>
 
  
 
|-
 
|-
Line 68: Line 34:
 
| long
 
| long
 
| The current state of the menu when viewing the map normally in Dwarf Fortress. <code>0x16</code> when in 'View Units' mode, other values unknown.
 
| The current state of the menu when viewing the map normally in Dwarf Fortress. <code>0x16</code> when in 'View Units' mode, other values unknown.
| <code>0x0123B65C</code>
+
| <code>0x123B65C</code>
  
 
|-
 
|-
Line 77: Line 43:
 
| <code>0x01237AD0</code> (probably)
 
| <code>0x01237AD0</code> (probably)
 
   
 
   
|-
 
| Unknown vector
 
| 16
 
| [[Memory hacking#Vector|vector]] of pointers
 
| This could possibly be used for different creature groupings.  It's referenced when looking to see what state to use for creatures that are Friendly, Hostile, Merchants, etc on the unit screen.  The vector itself references the <code>0x1E0</code> data in the creature structure.
 
| <code>0x014169E8</code>
 
 
|-
 
| Whathe... another creature vector?
 
| 16
 
| [[Memory hacking#Vector|vector]] of pointers
 
| How many more ARE there?
 
| <code>0x01416A18</code>
 
 
 
|-
 
|-
 
| Creature vector
 
| Creature vector
Line 97: Line 49:
 
| There are actually multiple creature vectors, but this has all of them.
 
| There are actually multiple creature vectors, but this has all of them.
 
| <code>0x01416A38</code>
 
| <code>0x01416A38</code>
 +
 +
|-
 +
| Next creature ID
 +
| 4
 +
| long
 +
| <code>0x00C079F4</code>
  
 
|-
 
|-
Line 117: Line 75:
 
=== Creature Structures ===
 
=== Creature Structures ===
 
==== Creature Structure ====
 
==== Creature Structure ====
Total of <code>0x660</code> bytes for the structure.
 
 
{| border="1" cellpadding="2" width="100%"
 
{| border="1" cellpadding="2" width="100%"
 
! width="10%" | Offset
 
! width="10%" | Offset
Line 172: Line 129:
 
| byte
 
| byte
 
|  
 
|  
| Seems to denote whether or not this creature has a custom nickname/profession name? Something like that.
+
| Seems to denote wether or not this creature has a custom nickname/profession name? Something like that.
  
 
|-
 
|-
Line 218: Line 175:
 
| <code>0x0094</code>
 
| <code>0x0094</code>
 
| 2
 
| 2
| short
+
|  
| X position
+
|  
| Current X coordinate of creature (0x00AC is some other X coordinate)
+
|  
  
 
|-
 
|-
 
| <code>0x0096</code>
 
| <code>0x0096</code>
 
| 2
 
| 2
| short
+
|  
| Y position
+
|  
| Current Y coordinate of creature
+
|  
  
 
|-
 
|-
 
| <code>0x0098</code>
 
| <code>0x0098</code>
 
| 2
 
| 2
| short
+
|  
| Z position
+
|  
| Current Z coordinate of creature
+
|  
  
 
|-
 
|-
Line 620: Line 577:
 
| <code>0x0238</code>
 
| <code>0x0238</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#238 Structure|238 struct]]
+
| vector of pointers to [[#238 Structure|238 struct]]
 +
|
 
|  
 
|  
| Possibly inventory?
 
 
|-
 
| <code>0x0248</code>
 
| 16
 
| [[Memory hacking#Vector|vector]] of longs
 
| Owned objects
 
| Each long is an index into the item vector.
 
  
 
|-
 
|-
Line 769: Line 719:
 
| [[Memory hacking#Vector|vector]] of longs
 
| [[Memory hacking#Vector|vector]] of longs
 
|  
 
|  
| Bodypart related.
+
|  
  
 
|-
 
|-
Line 802: Line 752:
 
| <code>0x0338</code>
 
| <code>0x0338</code>
 
| 4
 
| 4
| long
+
|  
| Bleeding level
+
|  
 
|  
 
|  
  
Line 844: Line 794:
 
| <code>0x034E</code>
 
| <code>0x034E</code>
 
| 2
 
| 2
| short
+
|  
| Nauseousness
+
|  
 
|  
 
|  
  
Line 851: Line 801:
 
| <code>0x0350</code>
 
| <code>0x0350</code>
 
| 2
 
| 2
| short
+
|  
| Drowning
+
|  
 
|  
 
|  
  
Line 858: Line 808:
 
| <code>0x0352</code>
 
| <code>0x0352</code>
 
| 2
 
| 2
| short
+
|  
| Stunned
+
|  
 
|  
 
|  
  
Line 879: Line 829:
 
| <code>0x0358</code>
 
| <code>0x0358</code>
 
| 2
 
| 2
| short
+
|  
| Webbed
+
|  
| How much a creature is webbed
+
|  
  
 
|-
 
|-
 
| <code>0x035A</code>
 
| <code>0x035A</code>
 
| 2
 
| 2
| short
+
|  
| Paralysis
+
|  
 
|  
 
|  
  
Line 914: Line 864:
 
| <code>0x036C</code>
 
| <code>0x036C</code>
 
| 4
 
| 4
| long
+
|  
| Pain level
+
|  
 
|  
 
|  
  
Line 921: Line 871:
 
| <code>0x0370</code>
 
| <code>0x0370</code>
 
| 4
 
| 4
| long
+
|  
| Exhaustion
+
|  
 
|  
 
|  
  
Line 928: Line 878:
 
| <code>0x0374</code>
 
| <code>0x0374</code>
 
| 4
 
| 4
| long
+
|  
| Hunger
+
|  
 
|  
 
|  
  
Line 935: Line 885:
 
| <code>0x0378</code>
 
| <code>0x0378</code>
 
| 4
 
| 4
| long
+
|  
| Thirst
+
|  
 
|  
 
|  
  
Line 942: Line 892:
 
| <code>0x037C</code>
 
| <code>0x037C</code>
 
| 4
 
| 4
| long
+
|  
| Drowsiness
+
|  
 
|  
 
|  
  
Line 956: Line 906:
 
| <code>0x0384</code>
 
| <code>0x0384</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#384 Structure|384 struct]]
+
| vector of pointers to [[#384 Structure|384 struct]]
 
|  
 
|  
 
|  
 
|  
Line 963: Line 913:
 
| <code>0x0394</code>
 
| <code>0x0394</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#394 Structure|394 struct]]
+
| vector of pointers to [[#394 Structure|394 struct]]
 
|  
 
|  
 
|  
 
|  
Line 1,060: Line 1,010:
 
| <code>0x0428</code>
 
| <code>0x0428</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#Skill Structure|skill struct]]
+
| vector of pointers to [[#Skill Structure|skill struct]]
 
| Skills
 
| Skills
 
|  
 
|  
Line 1,067: Line 1,017:
 
| <code>0x0438</code>
 
| <code>0x0438</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#Like Structure|like struct]]
+
| vector of pointers to [[#Like Structure|like struct]]
 
| Likes
 
| Likes
 
|  
 
|  
Line 1,074: Line 1,024:
 
| <code>0x0448</code>
 
| <code>0x0448</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#448 Structure|448 struct]]
+
| vector of pointers to [[#448 Structure|448 struct]]
 
|  
 
|  
 
|  
 
|  
Line 1,095: Line 1,045:
 
| <code>0x04C4</code>
 
| <code>0x04C4</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#4C4 Structure|4C4 struct]]
+
| vector of pointers to [[#4C4 Structure|4C4 struct]]
 
|  
 
|  
 
|  
 
|  
Line 1,109: Line 1,059:
 
| <code>0x04E4</code>
 
| <code>0x04E4</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#4E4 Structure|4E4 struct]]
+
| vector of pointers to [[#4E4 Structure|4E4 struct]]
 
|  
 
|  
 
|  
 
|  
Line 1,116: Line 1,066:
 
| <code>0x04F4</code>
 
| <code>0x04F4</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#4F4 Structure|4F4 struct]]
+
| vector of pointers to [[#4F4 Structure|4F4 struct]]
 
|  
 
|  
 
|  
 
|  
Line 1,137: Line 1,087:
 
| <code>0x050C</code>
 
| <code>0x050C</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#50C Structure|50C struct]]
+
| vector of pointers to [[#50C Structure|50C struct]]
 
|  
 
|  
 
|  
 
|  
Line 1,144: Line 1,094:
 
| <code>0x051C</code>
 
| <code>0x051C</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#51C Structure|51C struct]]
+
| vector of pointers to [[#51C Structure|51C struct]]
 
|  
 
|  
 
|  
 
|  
Line 1,151: Line 1,101:
 
| <code>0x052C</code>
 
| <code>0x052C</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#52C Structure|52C struct]]
+
| vector of pointers to [[#52C Structure|52C struct]]
 
|  
 
|  
 
|  
 
|  
Line 1,158: Line 1,108:
 
| <code>0x053C</code>
 
| <code>0x053C</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#53C Structure|53C struct]]
+
| vector of pointers to [[#53C Structure|53C struct]]
 
|  
 
|  
 
|  
 
|  
Line 1,270: Line 1,220:
 
| <code>0x05A0</code>
 
| <code>0x05A0</code>
 
| 16
 
| 16
| [[Memory hacking#Vector|vector]] of pointers to [[#5A0 Structure|5A0 struct]]
+
| vector of pointers to [[#5A0 Structure|5A0 struct]]
 +
|
 
|  
 
|  
| Bodypart related.
 
  
 
|-
 
|-
Line 1,316: Line 1,266:
 
| 2
 
| 2
 
| short
 
| short
| Skill type
+
|  
 
|  
 
|  
  
Line 1,323: Line 1,273:
 
| 4
 
| 4
 
| long
 
| long
| Skill rating
+
|  
| The upper word is the actual rating (0:Dabbling to 15:Legendary).  The lower word is likely the experience in that skill, akin to how you see it in Adventure Mode whereby a level 10 skill requires 1000 points of experience to advance.
+
|  
  
 
|-
 
|-
Line 2,558: Line 2,508:
 
| 2
 
| 2
 
| short
 
| short
| ID
+
|  
 
|  
 
|  
  
Line 2,565: Line 2,515:
 
| 4
 
| 4
 
| long
 
| long
| Value
+
|  
 
|  
 
|  
  
Line 2,932: Line 2,882:
  
 
|}
 
|}
[[Category:Hacking]]
 

Please note that all contributions to Dwarf Fortress Wiki are considered to be released under the GFDL & MIT (see Dwarf Fortress Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel Editing help (opens in new window)