<?xml version="1.0"?> <!-- USE A FIXED WIDTH FONT! --> <DFExtractor> <MemoryDescriptors> <Entry version="meta-2010" os="all" id="meta-2010"> <Offset name="keep_me_happy">0x0</Offset> ==================================================================== T R A I T S ==================================================================== <Trait name="Nervousness" level_5="Is a nervous wreck" level_4="Is always tense and jittery" level_3="Is often nervous" level_2="Has a calm demeanor" level_1="Has a very calm demeanor" level_0="Has an incredibly calm demeanor">0</Trait> <Trait name="Rage" level_5="In a constant state of internal rage" level_4="Very quick to anger" level_3="Quick to anger" level_2="Slow to anger" level_1="Very slow to anger" level_0="Never becomes angry">1</Trait> <Trait name="Depression" level_5="Frequently depressed" level_4="Often sad and dejected" level_3="Often feels discouraged" level_2="Rarely feels discouraged" level_1="Almost never feels discouraged" level_0="Never feels discouraged">2</Trait> <Trait name="Neurosis" level_5="Socially crippled by thoughts that everyone is watching and judging" level_4="Concerned about rejection and ridicule" level_3="Self-conscious" level_2="Comfortable in social situations" level_1="Very comfortable in social situations" level_0="Absolutely unfazed by the opinions of others">3</Trait> <Trait name="Urge" level_5="Is ruled by irresistible cravings and urges" level_4="Feels strong urges and seeks short-term rewards" level_3="Occassionally overindulges" level_2="Doesn't often experience strong cravings or urges" level_1="Only rarely feels strong cravings or urges" level_0="Never feels tempted to overindulge in anything">4</Trait> <Trait name="Stress" level_5="Becomes completely helpless in stressful situations" level_4="Cracks easily under pressure" level_3="Doesn't handle stress well" level_2="Can handle stress" level_1="Confident under pressure" level_0="Impervious to the effects of stress">5</Trait> <Trait name="Friendly" level_5="Genuinely likes others, openly expresses positive feelings" level_4="Makes friends quickly" level_3="Very friendly" level_2="Somewhat reserved" level_1="Very distant and reserved" level_0="Does not actively seek friendships, incredibly distant and reserved">6</Trait> <Trait name="Company" level_5="Truly treasures the company of others" level_4="Enjoys being in crowds" level_3="Enjoys the company of others" level_2="Tends to avoid crowds" level_1="Prefers to be alone" level_0="Considers time alone much more important than associating with others">7</Trait> <Trait name="Leadership" level_5="Loves to take charge and direct activities" level_4="Very assertive" level_3="Assertive" level_2="Unassertive" level_1="Prefers that others handle the leadership roles" level_0="Never speaks out or attempts to direct activities">8</Trait> <Trait name="Activeness" level_5="Constantly active and energetic" level_4="Very energetic and active" level_3="Very active" level_2="Relaxed" level_1="Lives life at a leisurely pace" level_0="Can't be bothered with frantic, fast-paced living">9</Trait> <Trait name="Thrillseeking" level_5="Lives for risk and excitement" level_4="A risk-taker and a thrill-seeker" level_3="Loves a good thrill" level_2="Is not a risk-taker" level_1="Doesn't need thrills or risks in life" level_0="Entirely adverse to risk and excitement">10</Trait> <Trait name="Optimism" level_5="Often feels filled with joy" level_4="Can be very happy and optimistic" level_3="Often cheerful" level_2="Rarely happy or enthusiastic" level_1="A pessimist" level_0="Never optimistic or enthusiastic about anything">11</Trait> <Trait name="Imagination" level_5="Bored by reality and has a wonderful imagination" level_4="Incredibly creative" level_3="Has a fertile imagination" level_2="Isn't given to flights of fancy" level_1="Grounded in reality" level_0="Interested only in facts and the real world">12</Trait> <Trait name="Artistic" level_5="Can easily become absorbed in art and the beauty of the natural world" level_4="Greatly appreciates art and natural beauty" level_3="Appreciates art and natural beauty" level_2="Does not have a great aesthetic sensitivity" level_1="Not interested in art" level_0="Completely uninterested in art">13</Trait> <Trait name="Emotion" level_5="Has a profound understanding of own emotions" level_4="Has a great awareness of own emotions" level_3="Has a good awareness of own emotions" level_2="Tends not to openly express emotions" level_1="Mostly unaware of own emotions and rarely expresses them" level_0="Does not display own emotions and has no awareness of them">14</Trait> <Trait name="Adventure" level_5="Highly adventurous and loves fresh experiences" level_4="Eager for new experiences" level_3="Likes to try new things" level_2="Prefers familiar routines" level_1="Uncomfortable with change" level_0="Resistant to change">15</Trait> <Trait name="Thinking" level_5="Entranced by riddles and puzzles; loves to debate issues and ideas" level_4="Loves new and fresh ideas" level_3="Open-minded to new ideas" level_2="Dislikes intellectual discussions" level_1="Regards intellectual exercises as a waste of energy" level_0="Completely uninterested in ideas and debates over intellectual issues">16</Trait> <Trait name="Rebelliousness" level_5="Revels in chaos and disorder" level_4="Loves to defy convention" level_3="Put off by authority and tradition" level_2="Admires tradition" level_1="Prefers stability and security to ambiguity and disorder" level_0="An ardent believer in convention and traditional society">17</Trait> <Trait name="Trusting" level_5="Naturally trustful of everybody" level_4="Very trusting" level_3="Trusting" level_2="Slow to trust others" level_1="Does not trust others" level_0="Sees others as selfish and conniving">18</Trait> <Trait name="Honesty" level_5="Incredibly frank and candid in dealings with others" level_4="Very straightforward with others" level_3="Candid and sincere in dealings with others" level_2="Guarded in relationships with others" level_1="Not straightforward when dealing with others" level_0="Believes that some deception is necessary in relationships with others">19</Trait> <Trait name="Helpfulness" level_5="Truly fulfilled by assisting those in need" level_4="Finds helping others very rewarding" level_3="Finds helping others rewarding" level_2="Does not go out of own way to help others" level_1="Dislikes helping others" level_0="Views helping others as an imposition on own needs">20</Trait> <Trait name="Compromising" level_5="Sacrifices own needs to get along with others" level_4="Dislikes confrontations" level_3="Willing to compromise with others" level_2="Doesn't like to compromise with others" level_1="Would rather intimidate others than compromise with them" level_0="Would never deny own needs just to compromise with somebody else">21</Trait> <Trait name="Modesty" level_5="Would never claim to be better than somebody else" level_4="Finds immodesty distasteful" level_3="Modest" level_2="Immodest" level_1="Very willing to compare self favorably with others" level_0="Would never shy away from an opportunity to say they are better than somebody else">22</Trait> <Trait name="Compassion" level_5="Incredibly compassionate and feels the pain of others" level_4="Easily moved to pity" level_3="Compassionate" level_2="Not easily moved to pity" level_1="Not affected by the suffering of others" level_0="Would never let an objective judgement be tempered by mercy or pity">23</Trait> <Trait name="Confidence" level_5="Incredibly confident" level_4="Very confident" level_3="Confident" level_2="Lacks confidence" level_1="Does not feel effective in life" level_0="Always feels as if they are not in control of own life">24</Trait> <Trait name="Organization" level_5="Loves to make lists and keep schedules" level_4="Tries to live a well-organized life" level_3="Organized" level_2="Disorganized" level_1="Very disorganized" level_0="Completely disorganized">25</Trait> <Trait name="Lawfulness" level_5="Has a profound sense of duty and obligation" level_4="Has a strong sense of duty" level_3="Has a sense of duty" level_2="Finds rules confining" level_1="Dislikes contracts and regulations" level_0="Hates rules, contracts and other confining elements in own life">26</Trait> <Trait name="Excellence" level_5="Constantly strives for perfection" level_4="Thinks it is incredibly important to strive for excellence" level_3="Strives for excellence" level_2="Doesn't go out of own way to do more work than necessary" level_1="Very rarely does more work than necessary" level_0="Does the bare minimum necessary to accomplish the task at hand">27</Trait> <Trait name="Perseverance" level_5="Will persist in the face of any difficulty until the task is complete" level_4="Possesses great willpower" level_3="Is self-disciplined" level_2="Is occasionally given to procrastination" level_1="Has very little self-discipline" level_0="Rarely completes tasks and is often overcome by distractions">28</Trait> <Trait name="Cautiousness" level_5="Thinks through every alternative and their consequences before acting" level_4="Extremely cautious" level_3="Takes time when making decisions" level_2="Often does the first thing that comes to mind" level_1="Acts impulsively" level_0="Always acts without considering alternatives or thinking through possibilities">29</Trait> ==================================================================== M O O D S ==================================================================== <Mood id="0" name="Fey"/> <Mood id="1" name="Secretive"/> <Mood id="2" name="Possesed"/> <Mood id="3" name="Macabre"/> <Mood id="4" name="Fell"/> <Mood id="5" name="Melancholy"/> ==================================================================== P R O F E S S I O N S ==================================================================== TODO: Parse this and turn it into Profession tags. Cross-reference with Memory-40d.xml <Profession can_assign_labors="true" is_military="false" name="MINER">0</Profession> <Profession can_assign_labors="true" is_military="false" name="WOODWORKER">1</Profession> <Profession can_assign_labors="true" is_military="false" name="CARPENTER">2</Profession> <Profession can_assign_labors="true" is_military="false" name="BOWYER">3</Profession> <Profession can_assign_labors="true" is_military="false" name="WOODCUTTER">4</Profession> <Profession can_assign_labors="true" is_military="false" name="STONEWORKER">5</Profession> <Profession can_assign_labors="true" is_military="false" name="ENGRAVER">6</Profession> <Profession can_assign_labors="true" is_military="false" name="MASON">7</Profession> <Profession can_assign_labors="true" is_military="false" name="RANGER">8</Profession> <Profession can_assign_labors="true" is_military="false" name="ANIMAL_CARETAKER">9</Profession> <Profession can_assign_labors="true" is_military="false" name="ANIMAL_TRAINER">10</Profession> <Profession can_assign_labors="true" is_military="false" name="HUNTER">11</Profession> <Profession can_assign_labors="true" is_military="false" name="TRAPPER">12</Profession> <Profession can_assign_labors="true" is_military="false" name="ANIMAL_DISSECTOR">13</Profession> <Profession can_assign_labors="true" is_military="false" name="METALSMITH">14</Profession> <Profession can_assign_labors="true" is_military="false" name="FURNACE_OPERATOR">15</Profession> <Profession can_assign_labors="true" is_military="false" name="WEAPONSMITH">16</Profession> <Profession can_assign_labors="true" is_military="false" name="ARMORER">17</Profession> <Profession can_assign_labors="true" is_military="false" name="BLACKSMITH">18</Profession> <Profession can_assign_labors="true" is_military="false" name="METALCRAFTER">19</Profession> <Profession can_assign_labors="true" is_military="false" name="JEWELER">20</Profession> <Profession can_assign_labors="true" is_military="false" name="GEM_CUTTER">21</Profession> <Profession can_assign_labors="true" is_military="false" name="GEM_SETTER">22</Profession> <Profession can_assign_labors="true" is_military="false" name="CRAFTSMAN">23</Profession> <Profession can_assign_labors="true" is_military="false" name="WOODCRAFTER">24</Profession> <Profession can_assign_labors="true" is_military="false" name="STONECRAFTER">25</Profession> <Profession can_assign_labors="true" is_military="false" name="LEATHERWORKER">26</Profession> <Profession can_assign_labors="true" is_military="false" name="BONE_CARVER">27</Profession> <Profession can_assign_labors="true" is_military="false" name="WEAVER">28</Profession> <Profession can_assign_labors="true" is_military="false" name="CLOTHIER">29</Profession> <Profession can_assign_labors="true" is_military="false" name="GLASSMAKER">30</Profession> <Profession can_assign_labors="true" is_military="false" name="STRAND_EXTRACTOR">31</Profession> <Profession can_assign_labors="true" is_military="false" name="FISHERY_WORKER">32</Profession> <Profession can_assign_labors="true" is_military="false" name="FISHERMAN">33</Profession> <Profession can_assign_labors="true" is_military="false" name="FISH_DISSECTOR">34</Profession> <Profession can_assign_labors="true" is_military="false" name="FISH_CLEANER">35</Profession> <Profession can_assign_labors="true" is_military="false" name="FARMER">36</Profession> <Profession can_assign_labors="true" is_military="false" name="CHEESE_MAKER">37</Profession> <Profession can_assign_labors="true" is_military="false" name="MILKER">38</Profession> <Profession can_assign_labors="true" is_military="false" name="COOK">39</Profession> <Profession can_assign_labors="true" is_military="false" name="THRESHER">40</Profession> <Profession can_assign_labors="true" is_military="false" name="MILLER">41</Profession> <Profession can_assign_labors="true" is_military="false" name="BUTCHER">42</Profession> <Profession can_assign_labors="true" is_military="false" name="TANNER">43</Profession> <Profession can_assign_labors="true" is_military="false" name="DYER">44</Profession> <Profession can_assign_labors="true" is_military="false" name="PLANTER">45</Profession> <Profession can_assign_labors="true" is_military="false" name="HERBALIST">46</Profession> <Profession can_assign_labors="true" is_military="false" name="BREWER">47</Profession> <Profession can_assign_labors="true" is_military="false" name="SOAP_MAKER">48</Profession> <Profession can_assign_labors="true" is_military="false" name="POTASH_MAKER">49</Profession> <Profession can_assign_labors="true" is_military="false" name="LYE_MAKER">50</Profession> <Profession can_assign_labors="true" is_military="false" name="WOOD_BURNER">51</Profession> <Profession can_assign_labors="true" is_military="false" name="ENGINEER">52</Profession> <Profession can_assign_labors="true" is_military="false" name="MECHANIC">53</Profession> <Profession can_assign_labors="true" is_military="false" name="SIEGE_ENGINEER">54</Profession> <Profession can_assign_labors="true" is_military="false" name="SIEGE_OPERATOR">55</Profession> <Profession can_assign_labors="true" is_military="false" name="PUMP_OPERATOR">56</Profession> <Profession can_assign_labors="true" is_military="false" name="CLERK">57</Profession> <Profession can_assign_labors="true" is_military="false" name="ADMINISTRATOR">58</Profession> <Profession can_assign_labors="true" is_military="false" name="TRADER">59</Profession> <Profession can_assign_labors="true" is_military="false" name="ARCHITECT">60</Profession> <Profession can_assign_labors="true" is_military="false" name="ALCHEMIST">61</Profession> <Profession can_assign_labors="true" is_military="false" name="DOCTOR">62</Profession> <Profession can_assign_labors="true" is_military="false" name="DIAGNOSER">63</Profession> <Profession can_assign_labors="true" is_military="false" name="BONE_SETTER">64</Profession> <Profession can_assign_labors="true" is_military="false" name="SUTURER">65</Profession> <Profession can_assign_labors="true" is_military="false" name="SURGEON">66</Profession> <Profession can_assign_labors="true" is_military="false" name="MERCHANT">67</Profession> <Profession can_assign_labors="true" is_military="true" name="HAMMERMAN">68</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_HAMMERMAN">69</Profession> <Profession can_assign_labors="true" is_military="true" name="SPEARMAN">70</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_SPEARMAN">71</Profession> <Profession can_assign_labors="true" is_military="true" name="CROSSBOWMAN">72</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_CROSSBOWMAN">73</Profession> <Profession can_assign_labors="true" is_military="true" name="WRESTLER">74</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_WRESTLER">75</Profession> <Profession can_assign_labors="true" is_military="true" name="AXEMAN">76</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_AXEMAN">77</Profession> <Profession can_assign_labors="true" is_military="true" name="SWORDSMAN">78</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_SWORDSMAN">79</Profession> <Profession can_assign_labors="true" is_military="true" name="MACEMAN">80</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_MACEMAN">81</Profession> <Profession can_assign_labors="true" is_military="true" name="PIKEMAN">82</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_PIKEMAN">83</Profession> <Profession can_assign_labors="true" is_military="true" name="BOWMAN">84</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_BOWMAN">85</Profession> <Profession can_assign_labors="true" is_military="true" name="BLOWGUNMAN">86</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_BLOWGUNMAN">87</Profession> <Profession can_assign_labors="true" is_military="true" name="RECRUIT">90</Profession> <Profession can_assign_labors="true" is_military="false" name="TRAINED_HUNTER">91</Profession> <Profession can_assign_labors="true" is_military="false" name="TRAINED_WAR">92</Profession> <Profession can_assign_labors="true" is_military="false" name="MASTER_THIEF">93</Profession> <Profession can_assign_labors="true" is_military="false" name="THIEF">94</Profession> <Profession can_assign_labors="true" is_military="false" name="STANDARD">95</Profession> <Profession can_assign_labors="true" is_military="false" name="CHILD">96</Profession> <Profession can_assign_labors="true" is_military="false" name="BABY">97</Profession> <Profession can_assign_labors="true" is_military="false" name="DRUNK">98</Profession> <Profession can_assign_labors="true" is_military="true" name="LASHER">88</Profession> <Profession can_assign_labors="true" is_military="true" name="MASTER_LASHER">89</Profession> <Profession can_assign_labors="true" is_military="false" name="None">90</Profession> ==================================================================== J O B S ==================================================================== TODO: Parse this and turn it into Job tags <!-- [dwarf_jobs] size=212 0/name = "Carve Fortification" 0/type = DIG 1/name = "Detail Wall" 1/type = TROWEL 2/name = "Detail Floor" 2/type = TROWEL 3/name = "Dig" 3/type = DIG 4/name = "Carve Upward Staircase" 4/type = DIG 5/name = "Carve Downward Staircase" 5/type = DIG 6/name = "Carve Up/Down Staircase" 6/type = DIG 7/name = "Carve Ramp" 7/type = DIG 8/name = "Dig Channel" 8/type = DIG 9/name = "Fell Tree" 9/type = CUT 10/name = "Gather Plants" 11/name = "Remove Construction" 11/type = BUILD 12/name = "Collect Webs" 12/type = HAUL 13/name = "Bring Item to Depot" 13/type = HAUL 14/name = "Bring Item to Shop" 14/type = HAUL 15/name = "Eat" 15/type = FOOD 16/name = "Get Provisions" 16/type = FOOD 17/name = "Drink" 17/type = DRINK 18/name = "Drink" 18/type = DRINK 19/name = "Fill Waterskin" 19/type = DRINK 20/name = "Fill Waterskin" 20/type = DRINK 21/name = "Sleep" 21/type = REST 22/name = "Collect Sand" 22/type = HAUL 23/name = "Fish" 24/name = "Hunt" 25/name = "Hunt for Small Creature" 26/name = "Kidnap" 26/type = FIGHT 27/name = "Beat Criminal" 27/type = FIGHT 28/name = "Starting Fist Fight" 28/type = FIGHT 29/name = "Collect Taxes" 30/name = "Guard Tax Collector" 30/type = FIGHT 31/name = "Catch Live Land Animal" 32/name = "Catch Live Fish" 33/name = "Return Kill" 33/type = HAUL 34/name = "Check Chesk" 34/type = SEEK 35/name = "Store Owned Item" 35/type = HAUL 36/name = "Place Item in Tomb" 36/type = HAUL 37/name = "Store Item in Stockpile" 37/type = HAUL 38/name = "Store Item in Bag" 38/type = HAUL 39/name = "Store Item in Hospital" 39/type = HAUL 40/name = "Store Item in Chest" 40/type = HAUL 41/name = "Store Item in Cabinet" 41/type = HAUL 42/name = "Store Weapon" 42/type = HAUL 43/name = "Store Armor" 43/type = HAUL 44/name = "Store Item in Barrel" 44/type = HAUL 45/name = "Store Item in Bin" 45/type = HAUL 46/name = "Seek Artifact" 46/type = SEEK 47/name = "Seek Infant" 47/type = SEEK 48/name = "Attend Party" 48/type = DRINK 49/name = "Go Shopping" 50/name = "Go Shopping" 51/name = "Clean" 52/name = "Rest" 52/type = REST 53/name = "Pickup Equipment" 53/type = SEEK 54/name = "Dump Item" 54/type = HAUL 55/name = "Strange Mood Crafter" 55/type = MOOD 56/name = "Strange Mood Jeweller" 56/type = MOOD 57/name = "Strange Mood Forge" 57/type = MOOD 58/name = "Strange Mood Magma Forge" 58/type = MOOD 59/name = "Strange Mood Brooding" 59/type = MOOD 60/name = "Strange Mood Fell" 60/type = MOOD 61/name = "Strange Mood Carpenter" 61/type = MOOD 62/name = "Strange Mood Mason" 62/type = MOOD 63/name = "Strange Mood Bowyer" 63/type = MOOD 64/name = "Strange Mood Tanner" 64/type = MOOD 65/name = "Strange Mood Weaver" 65/type = MOOD 66/name = "Strange Mood Glassmaker" 66/type = MOOD 67/name = "Strange Mood Mechanics" 67/type = MOOD 68/name = "Construct Building" 68/type = BUILD 69/name = "Construct Door" 68/type = BUILD 70/name = "Construct Floodgate" 70/type = BUILD 71/name = "Construct ?? Bed" 71/type = BUILD 72/name = "Construct ?? Chair/Throne" 72/type = BUILD 73/name = "Construct ?? Casket/Sarcophagus/Coffin" 73/type = BUILD 74/name = "Construct ?? Table" 74/type = BUILD 75/name = "Construct ?? Box/Chest/Bag/Coffer" 75/type = BUILD 76/name = "Construct ?? Bin" 76/type = BUILD 77/name = "Construct ?? Armor Stand" 77/type = BUILD 78/name = "Construct ?? Weapon Rack" 78/type = BUILD 79/name = "Construct ?? Cabinet" 79/type = BUILD 80/name = "Construct ?? Statue" 80/type = BUILD 81/name = "Construct ?? Blocks" 81/type = BUILD 82/name = "Make Raw ??" 83/name = "Make ?? Crafts" 84/name = "Mint ?? Coins" 85/name = "Cut ?A?" 86/name = "Cut ?B?" 87/name = "Encrust ?something? with ?somethings?" 88/name = "Encrust ?something? with ?somethings?" 89/name = "Destroy Building" 89/type = BUILD 90/name = "Smelt Ore" 90/type = FURNACE 91/name = "Melt a Metal Object" 91/type = FORGE 92/name = "Extract Metal Strands" 92/type = FORGE 93/name = "Plant Seeds" 94/name = "Harvest Plants" 95/name = "Train Hunting Animal" 95/type = ANIMAL 96/name = "Train War Animal" 96/type = ANIMAL 99/name = "Construct Catapult Parts" 100/name = "Forge ?? Anvil" 100/type = FORGE 101/name = "Construct Catapult Parts" 102/name = "Construct Ballista Parts" 103/name = "Forge/Make A" 103/type = FORGE 104/name = "Stud with ?something?" 105/name = "Butcher an Animal" 106/name = "Prepare a Raw Fish" 107/name = "Mill Plants" 108/name = "Bait Trap with Meat/Gem/Fish" 109/name = "Milk Creature" 110/name = "Make Cheese" 111/name = "Process Plants" 112/name = "Process Plants (Bag)" 113/name = "Process Plants (Vial)" 114/name = "Process Plants (Barrel)" 115/name = "Prepare ?? Meal" 116/name = "Weave ?? into ??" 117/name = "Forge/Make ?? something" 117/type = BUILD 118/name = "Weave Thread" 119/name = "Forge/Make D" 119/type = FORGE 120/name = "Forge/Make E" 120/type = FORGE 121/name = "Forge/Make F" 121/type = FORGE 122/name = "Forge/Make Waterskin/Vial/Flask" 122/type = FORGE 123/name = "Forge Rope" 123/type = FORGE 124/name = "Forge Flask" 124/type = FORGE 125/name = "Forge Goblet" 125/type = FORGE 126/name = "Forge Instrument" 126/type = FORGE 127/name = "Forge Toy" 127/type = FORGE 128/name = "Forge Animal Trap" 128/type = FORGE 129/name = "Forge Barrel" 129/type = FORGE 130/name = "Make Totel" 130/type = FORGE 131/name = "Forge Bolts" 131/type = FORGE 132/name = "Decorate With ?something?" 133/name = "Forge/Make G" 133/type = FORGE 134/name = "Decorate With Bone" 135/name = "Make Backpack" 136/name = "Make Quiver" 137/name = "Load Catapult" 138/name = "Load Ballista" 139/name = "Fire Catapult" 140/name = "Fire Ballista" 141/name = "Construct Mechanisms" 141/type = BUILD 142/name = "Fire Ballista" 143/name = "Load Cage Trap" 144/name = "Load Stone Trap" 145/name = "Load Weapon Trap" 146/name = "Clean Trap" 147/name = "Cast Spell" 148/name = "Link a Building to Trigger" 149/name = "Pull the Lever" 150/name = "Brew Drink" 150/type = DRINK 151/name = "Extract from Plants" 152/name = "Extract from Raw Fish" 153/name = "Extract from Land Animal" 154/name = "Tame Small Animal" 154/type = ANIMAL 155/name = "Tame ?something?" 155/type = ANIMAL 156/name = "Chain Animal" 156/type = ANIMAL 157/name = "Unchain Animal" 157/type = ANIMAL 158/name = "Unchain Pet" 158/type = ANIMAL 159/name = "Release Large Creature" 159/type = ANIMAL 160/name = "Release Pet" 160/type = ANIMAL 161/name = "Release Small Creature" 161/type = ANIMAL 162/name = "Handle Small Creature" 162/type = ANIMAL 163/name = "Handle Large Creature" 163/type = ANIMAL 164/name = "Cage Large Creature" 164/type = ANIMAL 165/name = "Cage Small Creature" 165/type = ANIMAL 166/name = "Recover Wounded" 166/type = MEDICAL 167/name = "Diagnose Patient" 167/type = MEDICAL 168/name = "Immobilize Break" 168/type = MEDICAL 169/name = "Dress Wound" 169/type = MEDICAL 170/name = "Clean Patient" 170/type = MEDICAL 171/name = "Surgery" 171/type = MEDICAL 172/name = "Suture" 172/type = MEDICAL 173/name = "Set Bone" 173/type = MEDICAL 174/name = "Place In Traction" 174/type = MEDICAL 175/name = "Drain Aquarium" 176/name = "Fill Aquarium" 177/name = "Fill Pond" 178/name = "Give Water" 178/type = MEDICAL 179/name = "Give Food" 179/type = MEDICAL 180/name = "Give Water" 180/type = MEDICAL 181/name = "Give Food" 181/type = MEDICAL 182/name = "Recover Pet" 183/name = "Pit/Pond Large Animal" 183/type = ANIMAL 184/name = "Pit/Pond Small Animal" 184/type = ANIMAL 185/name = "Slaughter Animal" 185/type = ANIMAL 186/name = "Make Charcoal" 186/type = FURNACE 187/name = "Make Ash" 187/type = FURNACE 188/name = "Make Lye" 189/name = "Make Potash From Lye" 190/name = "Fertilize Field" 191/name = "Make Potash From Ash" 192/name = "Dye Thread" 193/name = "Dye Cloth" 194/name = "Sew ?? Image" 195/name = "Manage Work Orders" 195/type = ADMIN 196/name = "Operate Pump" 197/name = "Manage Work Orders" 197/type = ADMIN 198/name = "Update Stockpile Records" 198/type = ADMIN 199/name = "Trade at Depot" 199/type = ADMIN 200/name = "Construct ?? Hatch Cover" 200/type = BUILD 201/name = "Construct ?? Grate" 201/type = BUILD 202/name = "Remove Stairs/Ramps" 202/type = DIG 203/name = "Construct ?? Quern" 203/type = BUILD 205/name = "Upgrade Squad Equipment" 205/type = HAUL 206/name = "Prepare Equipment Manifests" 206/type = ADMIN 207/name = "Construct ?? Splint" 207/type = BUILD 208/name = "Construct ?? Crutch" 208/type = BUILD 209/name = "Construct Traction Bench" 209/type = BUILD 210/name = "Clean Self" 211/name = "Bring Crutch" 211/type = MEDICAL 212/name = "Apply Cast" 212/type = MEDICAL --> ==================================================================== S K I L L S ==================================================================== <Skill name="Mining">0</Skill> <Skill name="Wood Cutting">1</Skill> <Skill name="Carpentry">2</Skill> <Skill name="Bowmaking">49</Skill> <Skill name="Engraving">3</Skill> <Skill name="Masonry">4</Skill> <Skill name="Animal Training">5</Skill> <Skill name="Animal Caretaking">6</Skill> <Skill name="Fish Dissection">7</Skill> <Skill name="Animal Dissection">8</Skill> <Skill name="Fish Cleaning">9</Skill> <Skill name="Butchery">10</Skill> <Skill name="Trapping">11</Skill> <Skill name="Growing">22</Skill> <Skill name="Herbalism">23</Skill> <Skill name="Ambush">57</Skill> <Skill name="Swimming">71</Skill> <Skill name="Persuasion">72</Skill> <Skill name="Negotiation">73</Skill> <Skill name="Judging Intent">74</Skill> <Skill name="Appraisal">75</Skill> <Skill name="Organization">76</Skill> <Skill name="Record Keeping">77</Skill> <Skill name="Lying">78</Skill> <Skill name="Intimidation">79</Skill> <Skill name="Conversation">80</Skill> <Skill name="Comedy">81</Skill> <Skill name="Flattery">82</Skill> <Skill name="Consoling">83</Skill> <Skill name="Pacification">84</Skill> <Skill name="Tracking">85</Skill> <Skill name="Fishing">24</Skill> <Skill name="Furnace Operation">25</Skill> <Skill name="Strand Extraction">26</Skill> <Skill name="Soap Making">67</Skill> <Skill name="Potash Making">68</Skill> <Skill name="Lye Making">66</Skill> <Skill name="Wood Burning">65</Skill> <Skill name="Weaponsmithing">27</Skill> <Skill name="Armorsmithing">28</Skill> <Skill name="Metalsmithing">29</Skill> <Skill name="Gem Cutting">30</Skill> <Skill name="Gem Setting">31</Skill> <Skill name="Wood Crafting">32</Skill> <Skill name="Stone Crafting">33</Skill> <Skill name="Metal Crafting">34</Skill> <Skill name="Glassmaking">35</Skill> <Skill name="Studying">86</Skill> <Skill name="Concentration">87</Skill> <Skill name="Discipline">88</Skill> <Skill name="Observation">89</Skill> <Skill name="Writing">90</Skill> <Skill name="Prose">91</Skill> <Skill name="Poetry">92</Skill> <Skill name="Reading">93</Skill> <Skill name="Speaking">94</Skill> <Skill name="Coordination">95</Skill> <Skill name="Balance">96</Skill> <Skill name="Leadership">97</Skill> <Skill name="Teaching">98</Skill> <Skill name="Fighting">99</Skill> <Skill name="Archery">100</Skill> <Skill name="Wrestling">101</Skill> <Skill name="Biting">102</Skill> <Skill name="Striking">103</Skill> <Skill name="Kicking">104</Skill> <Skill name="Dodging">105</Skill> <Skill name="Axe">38</Skill> <Skill name="Sword">39</Skill> <Skill name="Mace">41</Skill> <Skill name="Hammer">42</Skill> <Skill name="Spear">43</Skill> <Skill name="Crossbow">44</Skill> <Skill name="Pike">50</Skill> <Skill name="Bow">52</Skill> <Skill name="Shield">45</Skill> <Skill name="Armor">46</Skill> <Skill name="Siege Engineering">47</Skill> <Skill name="Siege Operation">48</Skill> <Skill name="Pump Operation">70</Skill> <Skill name="Leatherworkering">36</Skill> <Skill name="Tanning">12</Skill> <Skill name="Dyeing">69</Skill> <Skill name="Bone Carving">37</Skill> <Skill name="Weaving">13</Skill> <Skill name="Brewing">14</Skill> <Skill name="Clothes Making">16</Skill> <Skill name="Milling">17</Skill> <Skill name="Threshing">18</Skill> <Skill name="Blowgun">53</Skill> <Skill name="Throwing">54</Skill> <Skill name="Machinery">55</Skill> <Skill name="Nature">56</Skill> <Skill name="Knife">40</Skill> <Skill name="Lash">51</Skill> <Skill name="Cooking">21</Skill> <Skill name="Alchemy">15</Skill> <Skill name="Building Design">58</Skill> <Skill name="Cheese Making">19</Skill> <Skill name="Milking">20</Skill> <Skill name="Misc. Object">106</Skill> <Skill name="Wound Dressing">59</Skill> <Skill name="Diagnostics">60</Skill> <Skill name="Surgery">61</Skill> <Skill name="Bone Setting">62</Skill> <Skill name="Suturing">63</Skill> <Skill name="Crutch-walking">64</Skill> ==================================================================== L E V E L S ==================================================================== <Level id="0" name="Dabbling" xpNxtLvl="500"/> <Level id="1" name="Novice" xpNxtLvl="600"/> <Level id="2" name="Adequate" xpNxtLvl="700"/> <Level id="3" name="Competent" xpNxtLvl="800"/> <Level id="4" name="Skilled" xpNxtLvl="900"/> <Level id="5" name="Proficient" xpNxtLvl="1000"/> <Level id="6" name="Talented" xpNxtLvl="1100"/> <Level id="7" name="Adept" xpNxtLvl="1200"/> <Level id="8" name="Expert" xpNxtLvl="1300"/> <Level id="9" name="Professional" xpNxtLvl="1400"/> <Level id="10" name="Accomplished" xpNxtLvl="1500"/> <Level id="11" name="Great" xpNxtLvl="1600"/> <Level id="12" name="Master" xpNxtLvl="1700"/> <Level id="13" name="High Master" xpNxtLvl="1800"/> <Level id="14" name="Grand Master" xpNxtLvl="1900"/> <Level id="15" name="Legendary" xpNxtLvl="2000"/> <Level id="16" name="Legendary+1" xpNxtLvl="2100"/> TODO verify level 16 and up's existence in DF2010 <Level id="17" name="Legendary+2" xpNxtLvl="2200"/> <Level id="18" name="Legendary+3" xpNxtLvl="2300"/> <Level id="19" name="Legendary+4" xpNxtLvl="2400"/> <Level id="20" name="Legendary+5" xpNxtLvl="-1"/> -1 for no cap ==================================================================== L A B O R S ==================================================================== <Labor name="Mining">0</Labor> <Labor name="Stone Hauling">1</Labor> <Labor name="Wood Hauling">2</Labor> <Labor name="Burial">3</Labor> <Labor name="Food Hauling">4</Labor> <Labor name="Refuse Hauling">5</Labor> <Labor name="Item Hauling">6</Labor> <Labor name="Furniture Hauling">7</Labor> <Labor name="Animal Hauling">8</Labor> <Labor name="Cleaning">9</Labor> <Labor name="Wood Cutting">10</Labor> <Labor name="Carpentry">11</Labor> <Labor name="Stone Detailing">12</Labor> <Labor name="Masonry">13</Labor> <Labor name="Architecture">14</Labor> <Labor name="Animal Training">15</Labor> <Labor name="Animal Care">16</Labor> <Labor name="Diagnosis">17</Labor> <Labor name="Surgery">18</Labor> <Labor name="Setting Bones">19</Labor> <Labor name="Suturing">20</Labor> <Labor name="Dressing Wounds">21</Labor> <Labor name="Feed Patients/Prisoners">22</Labor> <Labor name="Recovering Wounded">23</Labor> <Labor name="Butchery">24</Labor> <Labor name="Trapping">25</Labor> <Labor name="Small Animal Dissection">26</Labor> <Labor name="Leatherworking">27</Labor> <Labor name="Tanning">28</Labor> <Labor name="Brewing">29</Labor> <Labor name="Alchemy">30</Labor> <Labor name="Soap Maker">31</Labor> <Labor name="Weaving">32</Labor> <Labor name="Clothesmaking">33</Labor> <Labor name="Milling">34</Labor> <Labor name="Plant Processing">35</Labor> <Labor name="Cheese Making">36</Labor> <Labor name="Milking">37</Labor> <Labor name="Cooking">38</Labor> <Labor name="Farming (Fields)">39</Labor> <Labor name="Plant Gathering">40</Labor> <Labor name="Fishing">41</Labor> <Labor name="Fish Cleaning">42</Labor> <Labor name="Fish Dissection">43</Labor> <Labor name="Hunting">44</Labor> <Labor name="Furnace Operating">45</Labor> <Labor name="Weaponsmithing">46</Labor> <Labor name="Armoring">47</Labor> <Labor name="Blacksmithing">48</Labor> <Labor name="Metalcrafting">49</Labor> <Labor name="Gem Cutting">50</Labor> <Labor name="Gem Setting">51</Labor> <Labor name="Woodcrafting">52</Labor> <Labor name="Stonecrafting">53</Labor> <Labor name="Bone Carving">54</Labor> <Labor name="Glassmaking">55</Labor> <Labor name="Strand Extraction">56</Labor> <Labor name="Siege Engineering">57</Labor> <Labor name="Siege Operating">58</Labor> <Labor name="Crossbow-making">59</Labor> <Labor name="Mechanics">60</Labor> <Labor name="Potash Making">61</Labor> <Labor name="Lye Making">62</Labor> <Labor name="Dyeing">63</Labor> <Labor name="Wood Burning">64</Labor> <Labor name="Pump Operating">65</Labor> <!-- * Labor groups * <Labor name="Woodworking">4294967294</Labor> <Labor name="Stoneworking">4294967293</Labor> <Labor name="Hunting/Related">4294967292</Labor> <Labor name="Healthcare">4294967291</Labor> <Labor name="Farming/Related">4294967290</Labor> <Labor name="Fishing/Related">4294967289</Labor> <Labor name="Metalsmithing">4294967288</Labor> <Labor name="Jewelry">4294967287</Labor> <Labor name="Crafts">4294967286</Labor> <Labor name="Engineering">4294967285</Labor> <Labor name="Hauling">4294967284</Labor> <Labor name="Other Jobs">4294967283</Labor> --> ==================================================================== V -- T A B L E S (for stonesense) ==================================================================== <VTable name="building_vtable"> <multiclass name="building_trapst" typeoffset="0x138"> <class name="building_leverst" type="0x0"/> <class name="building_pressure_platest" type="0x1"/> <class name="building_cage_trapst" type="0x2"/> <class name="building_stonefall_trapst" type="0x3"/> <class name="building_weapon_trapst" type="0x4"/> </multiclass> <class name="building_constructionst"/> <class name="building_road_pavedst"/> <class name="building_road_dirtst"/> <class name="building_roadst"/> <class name="building_wagonst"/> <class name="building_tradedepotst"/> <multiclass name="building_workshopst" typeoffset="0x138"> <class name="building_carpenters_workshopst" type="0x0"/> <class name="building_farmers_workshopst" type="0x1"/> <class name="building_masons_workshopst" type="0x2"/> <class name="building_craftdwarfs_workshopst" type="0x3"/> <class name="building_jewelers_workshopst" type="0x4"/> <class name="building_metalsmiths_workshopst" type="0x5"/> <class name="building_magma_forgest" type="0x6"/> <class name="building_bowyers_workshopst" type="0x7"/> <class name="building_mechanics_workshopst" type="0x8"/> <class name="building_siege_workshopst" type="0x9"/> <class name="building_butchers_shopst" type="0xA"/> <class name="building_leather_worksst" type="0xB"/> <class name="building_tanners_shopst" type="0xC"/> <class name="building_clothiers_shopst" type="0xD"/> <class name="building_fisheryst" type="0xE"/> <class name="building_stillst" type="0xF"/> <class name="building_loomst" type="0x10"/> <class name="building_quernst" type="0x11"/> <class name="building_kennelsst" type="0x12"/> <class name="building_kitchenst" type="0x13"/> <class name="building_asheryst" type="0x14"/> <class name="building_dyers_shopst" type="0x15"/> <class name="building_millstonest" type="0x16"/> <class name="building_custom_workshop" type="0x17" /> </multiclass> <multiclass name="building_furnacest" typeoffset="0x152"> <class name="building_wood_furnacest" type="0x0"/> <class name="building_smelterst" type="0x1"/> <class name="building_glass_furnacest" type="0x2"/> <class name="building_kilnst" type="0x3"/> <class name="building_magma_smelterst" type="0x4"/> <class name="building_magma_glass_furnacest" type="0x5"/> <class name="building_magma_kilnst" type="0x6"/> </multiclass> <class name="building_animaltrapst"/> <class name="building_farmplotst"/> <class name="building_window_glassst"/> <class name="building_window_gemst"/> <class name="building_windowst"/> <class name="building_statuest"/> <class name="building_coffinst"/> <class name="building_shopst"/> <class name="building_chairst"/> <class name="building_tablest"/> <class name="building_bedst"/> <class name="building_traction_benchst"/> <multiclass name="building_siegeenginest" typeoffset="0x138"> <class name="building_catapultst" type="0x0"/> <class name="building_ballistast" type="0x1"/> </multiclass> <class name="building_cagest"/> <class name="building_chainst"/> <class name="building_windmillst"/> <class name="building_water_wheelst"/> <class name="building_screw_pumpst"/> <class name="building_archerytargetst"/> <class name="building_weaponst"/><!-- retractable spikes --> <class name="building_supportst"/> <class name="building_axle_verticalst"/> <class name="building_axle_horizontalst"/> <class name="building_gear_assemblyst"/> <class name="building_trapst"/> <class name="building_bars_floorst"/> <class name="building_bars_verticalst"/> <class name="building_grate_floorst"/> <class name="building_grate_wallst"/> <class name="building_floodgatest"/> <class name="building_bridgest"/> <class name="building_hatchst"/> <class name="building_doorst"/> <class name="building_armorstandst"/> <class name="building_weaponrackst"/> <class name="building_cabinetst"/> <class name="building_boxst"/> <class name="building_stockpilest"/> <class name="building_wellst"/> <class name="building_civzonest"/><!-- zone --> <class name="building_actualst"/> <class name="buildingst"/> </VTable> </Entry> .,:rsr, :2;,;r2A@@5 @2::s5A#@@@ @r. . sd;:riXA#@@ :@@@Gir;;AS9 Bs::sS3A#@2 @@#AhXirsS#; iHrLr5d#@@@ .@#95sr;;rie i*' `*@3 @@A2sr;:;r#5 :..:rll: @@A5sr::r3@ @Hr;iZ#@@@@ `:rr;;;;: S@r.;i2#@@@ @s. .. @2::ri2A@@# B@G2ir:...5i :@r,r3X##@@ @G5sr:..,:A .@Ar;;rSB@@# H#2sr;,..,is .' `* ,@ASs;:..,:B ;rr;:,..,:. `''' W I N D O W S and W I N E <Entry version="v0.31.01" os="windows" id="0.31.01" base="meta-2010"> <String name="md5">851c1190b6a7b42f2463967623d18575</String> <HexValue name="pe_timestamp">0x4BB45F99</HexValue> Basic things ============ <HexValue name="sizeof_vector">0x18</HexValue> <Offset name="vector_triplet">0xC</Offset> Vector layout in MSVC 9: DWORD Allocator? DWORD ? DWORD ? DWORD Start DWORD End DWORD AllocationEnd <HexValue name="sizeof_string">0x1C</HexValue> <!-- most probably a static object, because its parts are often referenced as offset to this address *and* as addresses --> <Address name="WORLD">0x0165B188</Address> Position and window dimensions ============================== <Address name="window_x">0xe32798</Address> <Address name="window_y">0xe60838</Address> <Address name="window_z">0xe60814</Address> <Address name="cursor_xyz">0xae82cc</Address> <Address name="window_dims">0x17f5ab8</Address> Found addresses: (next to each other!) 0x17f5ab8 0x17f5ac0 0x17f5ac8 0x17f5ad0 GUI State ========= <Address name="pause_state">0x146e45f</Address> Found addresses: 0x146e45f <!-- looks like a dword --> 0x185b677 <!-- looks like a word --> Bogus: <Address name="current_cursor_creature">0xae82cc</Address> <Address name="current_menu_state">0x017f6f38</Address> Bogus: <Address name="view_screen">0xae82cc</Address> Map stuff ========= <Address name="map_data">0x016AD718</Address> <Offset name="map_data_vein_vector">0x08</Offset> <Offset name="map_data_type">0x009A</Offset> <Offset name="map_data_designation">0x029C</Offset> <Offset name="map_data_occupancy">0x069c</Offset> <Offset name="map_data_temperature1_offset">0x159c</Offset> <Offset name="map_data_temperature2_offset">0x179c</Offset> <Offset name="map_data_biome_stuffs">0x1D9C</Offset> <Offset name="map_data_pathfinding_offset">0x0D9c</Offset> <Offset name="map_data_feature_local">0x2C</Offset> local features <Offset name="map_data_feature_global">0x30</Offset> global features Map Features ============ WORLD + 0x54374 <Address name="global_feature_vector">0x16AF4FC</Address> <Offset name= "global_feature_funcptr_">0x100</Offset> <Offset name="global_feature_mat">0x34</Offset> <Offset name="global_feature_submat">0x38</Offset> WORLD + 0x54440 <Address name="local_feature_start_ptr">0x16AF5C8</Address> <Offset name="local_feature_mat">0x30</Offset> <Offset name="local_feature_submat">0x34</Offset> <!-- map_data_map_x_offset 0x0058 map_data_map_y_offset 0x005A map_data_type_offset 0x009a map_data_designation_offset 0x029c map_data_occupancy_offset 0x069c map_data_0a60_offset 0x0A9c map_data_pathfinding_offset 0x0D9c map_data_1160_offset 0x119c map_data_1360_offset 0x139c map_data_temperature1_offset 0x159c map_data_temperature2_offset 0x179c map_data_1960_offset 0x199c map_data_1b60_offset 0x1B9c --> * map size in blocks * <Address name="x_count_block">0x016ad738</Address> <Address name="y_count_block">0x016ad73C</Address> <Address name="z_count_block">0x016ad740</Address> * map size in tiles * <Address name="x_count">0x016ad744</Address> <Address name="y_count">0x016ad748</Address> <Address name="z_count">0x016ad74C</Address> * Suspected region coords * WORLD + 0x525C8 <Address name="region_x">0x016ad750</Address> WORLD + 0x525CC <Address name="region_y">0x016ad754</Address> WORLD + 0x525D0 <Address name="region_z">0x016ad758</Address> * World size * (WORDs) <Address name="world_size_x">0x016AEDD4</Address> <Address name="world_size_y">0x016AEDD6</Address> <Address name="geoblock_vector">0x16AF52C</Address> <Address name="ptr2_region_array">0x16AF574</Address> <!-- <Offset name="world_size_x">0x84</Offset> <Offset name="world_size_y">0x86</Offset> <Offset name="w_geoblocks">0x75C</Offset> vector <Offset name="w_regions_arr">0x79C</Offset> --> <!-- values for the region structure --> <HexValue name="region_size">0x64</HexValue> <Offset name="region_geo_index_off">0x60</Offset> <!-- geoblock offset(s?) --> <Offset name="geolayer_geoblock_offset">0x4</Offset> vector <Offset name="type_inside_geolayer">0x4</Offset> vector Name struct =========== <Offset name="name_firstname">0x0</Offset> <Offset name="name_nickname">0x1C</Offset> <Offset name="name_words">0x38</Offset> Creatures ========= <Address name="creature_vector">0x0166ecc4</Address> <Address name="dwarf_race_index">0x01470fbc</Address> <Address name="dwarf_civ_id">0x01470fb0</Address> <Offset name="creature_name">0x0</Offset> <Offset name="creature_custom_profession">0x6c</Offset> <Offset name="creature_profession">0x88</Offset> <Offset name="creature_race">0x8C</Offset> <Offset name="creature_position">0x90</Offset> <Offset name="creature_flags1">0xF8</Offset> <Offset name="creature_flags2">0xFC</Offset> <Offset name="creature_sex">0x110</Offset> <Offset name="creature_id">0x114</Offset> <Offset name="creature_civ">0X120</Offset> <Offset name="creature_soulskill_vector">0X1F4</Offset> <Offset name="creature_pickup_equipment_bit">0X21C</Offset> <Offset name="creature_mood">0x288</Offset> <Offset name="creature_pregnancy">0x28C</Offset> <Offset name="creature_pregnancy_ptr">0x290</Offset> <Offset name="creature_birth_year">0x298</Offset> <Offset name="creature_birth_time">0x29C</Offset> <Offset name="creature_physical">0x464</Offset> <!-- <Offset name="creature_strength">0x464</Offset> <Offset name="creature_agility">0x480</Offset> <Offset name="creature_toughness">0x49C</Offset> <Offset name="creature_endurance">0x4B8</Offset> <Offset name="creature_recuperation">0x4D4</Offset> <Offset name="creature_disease_resistance">0x4F0</Offset> --> <Offset name="creature_current_job">0x390</Offset> <!-- from chmod --> <Offset name="creature_mood_skill">0x394</Offset> the skill that will be increased at the end of the mood (or not) <Offset name="creature_appearance_vector">0x604</Offset> seems to be indexes in the list of possible colors defined in the raws for each group <Offset name="creature_artifact_name">0x6D0</Offset> <Offset name="creature_labors">0x770</Offset> <Offset name="creature_soul_vector">0x073C</Offset> <Offset name="creature_default_soul">0x0754</Offset> <Offset name="creature_happiness">0x830</Offset> Souls ===== <Offset name="soul_name">0x0</Offset> <Offset name="soul_skills_vector">0x1F4</Offset> <Offset name="soul_traits">0x224</Offset> <Offset name="soul_mental">0x88</Offset> Job structure ============= <Offset name="job_id">0x0</Offset> Incrementaly assigned <Offset name="job_type">0x8</Offset> seems to be just like the old occupations <Offset name="job_materials_vector">0xa4</Offset> Job materials ============= <Offset name="job_material_maintype">0x0</Offset> like mood materials, 0=bars, 4=stone, 5=wood, 57=cloth, 54=leather ... <Offset name="job_material_sectype1">0x2</Offset> subsubtype ? <Offset name="job_material_sectype2">0x4</Offset> subtype ? <Offset name="job_material_sectype3">0x8</Offset> index of material (for example, 2 is for silver) <Offset name="job_material_flags">0x18</Offset> set only for shell / bone mood requirements ? <!-- mid = AddStrucMember(id,"analytical_ability", 0X88, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"focus", 0XA4, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"willpower", 0XC0, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"creativity", 0XDC, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"intuition", 0XF8, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"patience", 0X114, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"memory", 0X130, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"linguistic_ability", 0X14C, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"spatial_sense", 0X168, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"musicality", 0X184, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"kinesthetic_sense", 0X1A0, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"empathy", 0X1BC, 0x60000400, GetStrucIdByName("s_attrib"), 28); mid = AddStrucMember(id,"social_awareness", 0X1D8, 0x60000400, GetStrucIdByName("s_attrib"), 28); --> Materials ========= soil, stone, metal inorganics vector = WORLD + 0x54B7C = 0x16AFD04 <Address name="mat_inorganics">0x16afd04</Address> wood and plant matter, WORLD + 0x54B94 <Address name="mat_organics_all">0x16afd1C</Address> plant matter, WORLD + 0x54BAC <Address name="mat_organics_plants">0x16afd34</Address> just wood, WORLD + 0x54BDC <Address name="mat_organics_trees">0x16afd64</Address> creature types actually used for creatures, WORLD + 0x54CD0 <Address name="creature_type_vector">0x016AFE58</Address> <Offset name="creature_type_caste_vector">0x138</Offset> <Offset name="creature_type_extract_vector">0x1A14</Offset> <Offset name="creature_tile">0xE0</Offset> <Offset name="creature_tile_color">0xF6</Offset> <!-- NOT used yet Number vectors are vector <uint32_t> Others are vector<object *> first member of 'object' is a STL string with the name of said object <Offset name="inorganic_material_template_instantiation">0x178</Offset> this is an array of 4B pointers to material templates and length 0x292 base_type_array = WORLD + 0x5DF44 <Address name="base_type_array">0x016b90cc</Address> <Address name="mat_templates">0x16afcec</Address> maybe maps beween organics_all and organics_plants <Address name="mat_unk1_numbers">0x16afd4C</Address> maybe maps beween organics_all and organics_trees <Address name="mat_unk2_numbers">0x16afd7C</Address> body material stuff <Address name="mat_body_material_templates">0x16AFD94</Address> <Address name="mat_body_detail_plans">0x16AFDAC</Address> <Address name="mat_bodies">0x16AFDC4</Address> <Address name="mat_bodygloss">0x16AFDDC</Address> <Address name="mat_creature_variations">0x16AFDF4</Address> *raw* creature types <Address name="mat_creature_types">0x16AFE0C</Address> --> Constructions ============= WORLD + 0x108 <Address name="construction_vector">0x165b290</Address> <Offset name="sizeof_construction">0x14</Offset> Translations ============ WORLD + 0x54E50 <Address name="language_vector">0x016AFFD8</Address> WORLD + 0x54E80 <Address name="translation_vector">0x016B0008</Address> <Offset name="word_table">0x4C</Offset> Vegetation ========== WORLD + 0x15184 <Address name="vegetation_vector">0x0167030C</Address> belal: 0x017f6d98 ... what? <Offset name="tree_desc_offset">0x6C</Offset> Buildings ========= WORLD + 0x14818 <Address name="buildings_vector">0x0166f9a0</Address> <Offset name="building_custom_workshop_type">0x164</Offset> WORLD + 0x5D610 <Address name="custom_workshop_vector">0x016B8798</Address> <Offset name="custom_workshop_name">0x4</Offset> <Offset name="custom_workshop_type">0x20</Offset> Effects ======= :( Settlements =========== :( Hotkeys ======= <Address name="hotkey_start">0x01476ecc</Address> <Offset name="hotkey_mode">0x1C</Offset> <Offset name="hotkey_xyz">0x20</Offset> <HexValue name="hotkey_size">0x2C</HexValue> <!-- addresses from belal: vectors might need 8 subtracted from them buildings 0x0166f9a8 constructions 0xffffffff creatures 0x0166eccc current_cursor_creature 0x00ae82cc current_menu_state 0x017f6f38 cursor_xyz 0x0166ecd4 effects_vector 0x017f6da0 hotkey_start 0x01476ecc items 0x0166eda8 language_vector 0x016affe0 map_data 0x016ad718 matgloss 0xffffffff notes 0x01474de8 pause_state 0x0146e45f region_x 0x016ad750 region_y 0x016ad754 region_z 0x016ad758 settlement_current 0xffffffff settlements 0x016af4a4 translation_vector 0x016b0010 view_screen 0xffffffff window_dims 0x017f5abc window_x 0x00e32798 window_y 0x00e60838 window_z 0x00e60814 world 0x016aed50 x_count 0x016ad738 y_count 0x016ad73c z_count 0x016ad740 --> </Entry> <Entry version="v0.31.02" os="windows" id="0.31.02" base="0.31.01"> <String name="md5">23dfe141c7ea4e63ebb3c618a12b48ec</String> <HexValue name="pe_timestamp">0x4BBDF378</HexValue> </Entry> <Entry version="v0.31.03" os="windows" id="0.31.03" base="0.31.01" rebase="0x1000"> <String name="md5">94641d97a0ecff6f2194e3d0b310d946</String> <HexValue name="pe_timestamp">0x4BC3C470</HexValue> WORLD: 0x0165c1d0 ? Position ======== <Address name="window_dims">0x17f6b00</Address> Was 0x17f5ab8 0x17f6b00 0x17f6b08 0x17f6b10 Map === <Address name="map_data">0x016AE760</Address> * map size in blocks * <Address name="x_count_block">0x016AE780</Address> <Address name="y_count_block">0x016AE784</Address> <Address name="z_count_block">0x016AE788</Address> * map size in tiles * <Address name="x_count">0x016AE78C</Address> <Address name="y_count">0x016AE790</Address> <Address name="z_count">0x016AE794</Address> * Suspected region coords * <Address name="region_x">0x016AE798</Address> <Address name="region_y">0x016AE79C</Address> <Address name="region_z">0x016AE7A0</Address> * World size * (WORDs) <Address name="world_size_x">0x016AFE1C</Address> <Address name="world_size_y">0x016AFE1E</Address> * geology * <Address name="geoblock_vector">0x16B0574</Address> <Address name="ptr2_region_array">0x16B05BC</Address> * features * WORLD + 0x54374 <Address name="global_feature_vector">0x16B0544</Address> WORLD + 0x54440 <Address name="local_feature_start_ptr">0x16B0610</Address> Creatures ========= <Address name="creature_vector">0x166FD0C</Address> <Address name="dwarf_race_index">0x01471fbc</Address> <Offset name="creature_name">0x0</Offset> <Offset name="creature_custom_profession">0x6c</Offset> <Offset name="creature_profession">0x88</Offset> <Offset name="creature_race">0x8C</Offset> <Offset name="creature_position">0x90</Offset> <Offset name="creature_flags1">0xF8</Offset> <Offset name="creature_flags2">0xFC</Offset> <Offset name="creature_caste">0x110</Offset> <Offset name="creature_sex">0x112</Offset> <Offset name="creature_id">0x114</Offset> <Offset name="creature_civ">0X120</Offset> <Offset name="creature_soulskill_vector">0X1F4</Offset> <Offset name="creature_pickup_equipment_bit">0X21C</Offset> <!--<Offset name="creature_mood">0x238</Offset>--> <Offset name="creature_mood">0x288</Offset> <Offset name="creature_birth_year">0x298</Offset> <Offset name="creature_birth_time">0x29C</Offset> <Offset name="creature_current_job">0x390</Offset> <!-- from chmod --> <Offset name="creature_mood_skill">0x394</Offset> the skill that will be increased at the end of the mood (or not) <Offset name="creature_physical">0x464</Offset> <!-- <Offset name="creature_strength">0x464</Offset> <Offset name="creature_agility">0x480</Offset> <Offset name="creature_toughness">0x49C</Offset> <Offset name="creature_endurance">0x4B8</Offset> <Offset name="creature_recuperation">0x4D4</Offset> <Offset name="creature_disease_resistance">0x4F0</Offset> --> <Offset name="creature_appearance_vector">0x604</Offset> <Offset name="creature_artifact_name">0x6D4</Offset> <Offset name="creature_labors">0x774</Offset> <Offset name="creature_soul_vector">0x0740</Offset> <Offset name="creature_default_soul">0x0758</Offset> <Offset name="creature_happiness">0x834</Offset> Castes ====== <Offset name="caste_bodypart_vector">0x51C</Offset> <Offset name="caste_attributes">0x654</Offset> <Offset name="caste_color_modifiers">0xACC</Offset> Color Mods ========== <Offset name="color_modifier_part">0x70</Offset> <Offset name="color_modifier_startdate">0x64</Offset> <Offset name="color_modifier_enddate">0x68</Offset> Body Parts ========== <Offset name="bodypart_id">0x0</Offset> <Offset name="bodypart_category">0x1C</Offset> <Offset name="bodypart_layers_vector">0x44</Offset> <Offset name="bodypart_singular_vector">0x78</Offset> <Offset name="bodypart_plural_vector">0x90</Offset> Materials ========= soil, stone, metal inorganics vector = WORLD + 0x54B7C = 0x16B0D4C <Address name="mat_inorganics">0x16B0D4C</Address> stuff like glass, coke, ... <Address name="mat_other">0x16BA114</Address> wood and plant matter, WORLD + 0x54B94 <Address name="mat_organics_all">0x16B0D64</Address> plant matter, WORLD + 0x54BAC <Address name="mat_organics_plants">0x16B0D7C</Address> just wood, WORLD + 0x54BDC <Address name="mat_organics_trees">0x16B0DAC</Address> creature types actually used for creatures, WORLD + 0x54CD0 <Address name="creature_type_vector">0x16B0EA0</Address> stuff that is used somehow <Address name="mat_stuff">0x16BA114</Address> Constructions ============= WORLD + 0x108 <Address name="construction_vector">0x165C2D8</Address> Translations ============ WORLD + 0x54E50 <Address name="language_vector">0x016B1020</Address> WORLD + 0x54E80 <Address name="translation_vector">0x16B1050</Address> Vegetation ========== WORLD + 0x15184 <Address name="vegetation_vector">0x1671354</Address> Buildings ========= WORLD + 0x14818 <Address name="buildings_vector">0x16709E8</Address> WORLD + 0x5D610 <Address name="custom_workshop_vector">0x16B97E0</Address> <Offset name="custom_workshop_name">0x4</Offset> <Offset name="custom_workshop_type">0x20</Offset> Descriptor colors ================= <Address name="descriptor_vectors_start">0x16B9780</Address> <Offset name="descriptor_rawname">0x0</Offset> <Offset name="descriptor_name">0x4C</Offset> <Address name="descriptor_colors_vector">0x16B9768</Address> this includes RVB <Offset name="descriptor_color_r">0x6C</Offset> floats ! <Offset name="descriptor_color_v">0x70</Offset> <Offset name="descriptor_color_b">0x74</Offset> <Address name="descriptor_all_colors">0x16B9798</Address> A list of all colors, including eyes and stuff Items ===== <Address name="items_vector">0x166FE00</Address> List of offsets in the VTable : <Offset name="item_type_accessor">0x0</Offset> <Offset name="item_subtype_accessor">0x4</Offset> <Offset name="item_subindex_accessor">0x8</Offset> <Offset name="item_index_accessor">0xC</Offset> <Offset name="item_quality_accessor">0x238</Offset> <Offset name="item_improvement_vector">0xA0</Offset> <Offset name="item_improvement_subindex">0x4</Offset> <Offset name="item_improvement_index">0x8</Offset> <Offset name="item_improvement_quality">0x14</Offset> <Offset name="item_type_accessor">0x14</Offset> (in the vtable) Time ==== <Address name="current_tick">0x0e47e08</Address> <Address name="current_year">0x0e79f00</Address> </Entry> <Entry version="v0.31.04" os="windows" id="0.31.04" base="0.31.03" rebase="0x0"> <String name="md5">655a895c5b90d15eb9bb71e28c6c62e5</String> <HexValue name="pe_timestamp">0x4bf014fa</HexValue> <Address name="creature_vector">0x167870C</Address> <Address name="dwarf_race_index">0x1471FBC</Address> <Address name="dwarf_civ_id">0x1471FB0</Address> <Address name="mat_inorganics">0x16BD0B0</Address> <Address name="mat_other">0x16C6478</Address> <Address name="mat_organics_all">0x16BD0C8</Address> <Address name="mat_organics_plants">0x16bd0e0</Address> <Address name="mat_organics_trees">0x16bd110</Address> <Address name="creature_type_vector">0x16BD204</Address> <Address name="mat_stuff">0x16C6478</Address> <Address name="language_vector">0x16BD384</Address> <Address name="translation_vector">0x16BD3B4</Address> <Address name="descriptor_colors_vector">0x16C5ACC</Address> <Address name="descriptor_vectors_start">0x16C5AE4</Address> <Address name="descriptor_all_colors">0x16C5AFC</Address> <Address name="current_tick">0xE78780</Address> <Address name="current_year">0xEAA878</Address> <Address name="map_data">0x016BAAC4</Address> <Address name="x_count_block">0x016BAAE4</Address> <Address name="y_count_block">0x016BAAE8</Address> <Address name="z_count_block">0x016BAAEC</Address> <Address name="x_count">0x016BAAF0</Address> <Address name="y_count">0x016BAAF4</Address> <Address name="z_count">0x016BAAF8</Address> <Address name="region_x">0x016BAAFC</Address> <Address name="region_y">0x016BAB00</Address> <Address name="region_z">0x016BAB04</Address> <Address name="world_size_x">0x16BC180</Address> <Address name="world_size_y">0x16BC182</Address> <Address name="geoblock_vector">0x16BC8D8</Address> <Address name="ptr2_region_array">0x16BC920</Address> <Address name="global_feature_vector">0x16BC8A8</Address> <Address name="local_feature_start_ptr">0x16BC974</Address> <Address name="construction_vector">0x1664CD8</Address> <Address name="vegetation_vector">0x1679D54</Address> <Address name="buildings_vector">0x16793e8</Address> <Address name="items_vector">0x1678800</Address> <Address name="window_dims">0x18030fc</Address> 0x17f6b00 <Address name="window_x">0xe640dc</Address>0xe32798 01 <Address name="window_y">0xe921b0</Address>0xe60838 01 <Address name="window_z">0xe9218c</Address>0xe60814 01 <Address name="cursor_xyz">0xae92c8</Address>0xae82cc 01 <Offset name="item_type_accessor">0x0</Offset> Why do i have to redefine this ??? </Entry> <Entry version="v0.31.05" os="windows" id="0.31.05" base="0.31.04" rebase="0x8010"> <String name="md5">394ff63fc00fedd5df0b36e4beb589bc</String> <HexValue name="pe_timestamp">0x4c091569</HexValue> <Address name="dwarf_race_index">0x014abee4</Address> CHMOD <Address name="dwarf_civ_id">0x1471FB0</Address> BOGUS! <Address name="window_dims">0x180b10c</Address> LOOKS O.K. <Address name="window_x">0xe6c0dc</Address> VERIFIED <Address name="window_y">0xe9a1b0</Address> VERIFIED <Address name="window_z">0xe9a18c</Address> VERIFIED <Address name="cursor_xyz">0xaf12cc</Address> VERIFIED <Address name="current_tick">0xE80780</Address> LOOKS O.K. <Address name="current_year">0xEB2878</Address> LOOKS O.K. <Offset name="item_type_accessor">0x0</Offset> Why do i have to redefine this ??? ... what? </Entry> <Entry version="v0.31.06" os="windows" id="0.31.06" base="0.31.05" rebase="0x10"> <String name="md5">c4b7e37dafa2716e31d29110968ac64e</String> <HexValue name="pe_timestamp">0x4c0f83d5</HexValue> <Address name="cursor_xyz">0xaf12d0</Address> </Entry> <Entry version="v0.31.07" os="windows" id="0.31.07" base="0.31.06" rebase="0x2000"> <String name="md5">1c0b5254af1b8ff9a34b51c3f6609da3</String> <HexValue name="pe_timestamp">0x4c1cbe4b</HexValue> <Address name="cursor_xyz">0xaf32d8</Address>0xaf12d0 <Address name="window_dims">0x180d11c</Address> 0x180b10c <Address name="window_x">0xe6e0ec</Address> <Address name="window_y">0xe9c1c0</Address> <Address name="window_z">0xe9c19c</Address> map size X: 0x16c4b10 map size Y: 0x16c4b14 </Entry> <Entry version="v0.31.08" os="windows" id="0.31.08" base="0.31.07" rebase="-0x1000"> <String name="md5">a83e6b21307cf41fb54c315fa40dec86</String> <HexValue name="pe_timestamp">0x4c1d69fe</HexValue> <Address name="dwarf_civ_id">0x14acee8</Address> <!-- <Address name="cursor_xyz">0xaf32d8</Address>0xaf12d0 <Address name="window_dims">0x180d11c</Address> 0x180b10c <Address name="window_x">0xe6e0ec</Address> <Address name="window_y">0xe9c1c0</Address> <Address name="window_z">0xe9c19c</Address> map size X: 0x16c4b10 map size Y: 0x16c4b14 --> </Entry> <Entry version="v0.31.09" os="windows" id="0.31.09" base="0.31.08" rebase="0xD028" > rebase="0xD030" <!-- TODO: fix creature offsets --> <!-- TODO: small offsets added all over the place, investigate --> <String name="md5">1a85839ab03df082974dc5629d3fbc26</String> <HexValue name="pe_timestamp">0x4C3897C0</HexValue> <Address name="cursor_xyz">0xaff2d8</Address> <Address name="language_vector">0x16D33CC</Address> <Address name="translation_vector">0x16D33FC</Address> <Offset name="word_table">0x4c</Offset> Creatures ========= <Address name="creature_vector">0x168E73C</Address> <Address name="dwarf_race_index">0x014b9f1c</Address> <Offset name="creature_soulskill_vector">0X1F4</Offset> <Offset name="creature_inventory_vector">0x2FC</Offset> <Offset name="creature_physical">0x4AC</Offset> <Offset name="creature_appearance_vector">0x64c</Offset> <!-- Maybe slightly wrong --> <Offset name="creature_artifact_name">0x71c</Offset> <Offset name="creature_labors">0x7Bc</Offset> <Offset name="creature_soul_vector">0x0788</Offset> <Offset name="creature_default_soul">0x07A0</Offset> <Offset name="creature_happiness">0x87c</Offset> </Entry> <Entry version="v0.31.10" os="windows" id="0.31.10" base="0.31.09"> <String name="md5">349d1ad6eda7b6c5e87f8e4726a0999a</String> <HexValue name="pe_timestamp">0x4C398089</HexValue> </Entry> <Entry version="v0.31.11" os="windows" id="0.31.11" base="0.31.10" rebase="0x7018"> <String name="md5">552cfa417fd131204ebfee66aefc4adb</String> <HexValue name="pe_timestamp">0x4C496D93</HexValue> <Address name="cursor_xyz">0xB062D8</Address> <Address name="window_x">0xe81114</Address> VERIFIED <Address name="window_y">0xeAF1E8</Address> VERIFIED <Address name="window_z">0xeAF1C4</Address> VERIFIED </Entry> <Entry version="v0.31.12" os="windows" id="0.31.12" base="0.31.11"> <String name="md5">f0459165a426a9f2dd8d957e9fa7f01d</String> <HexValue name="pe_timestamp">0x4C4C32E7</HexValue> <Address name="screen_tiles_pointer">0x18313D0</Address> </Entry> .-"""-. ' \ |,. ,-. | _________________________ |()L( ()| | \ \ |,' `".| | /_ Argh !!! \ |.___.',| ` \________________________\ .j `--"' ` `. / ' ' \ / / ` `. / / ` . / / l | . , L I N U X | | ,"`. .| | _.' ``. | `..-'l | `.`, | `. | `. __.j ) |__ |--""___| ,-' `"--...,+"""" `._,.-' <!-- Windows logo by Microsoft --> <!-- Tux logo by the Linux guys :) --> <Entry version="linux-offsets-2010" os="all" id="linux-offsets-2010" base="meta-2010"> Basic things ============ <HexValue name="sizeof_vector">0xC</HexValue> VERIFIED <Offset name="vector_triplet">0x0</Offset> VERIFIED <HexValue name="sizeof_string">0x4</HexValue> VERIFIED MAP BLOCK OFFSETS ================= <Offset name="map_data_vein_vector">0x08</Offset> VERIFIED <Offset name="map_data_feature_local">0x20</Offset> VERIFIED <Offset name="map_data_feature_global">0x24</Offset> VERIFIED <Offset name="map_data_type">0x006A</Offset> VERIFIED <Offset name="map_data_designation">0x026C</Offset> VERIFIED <Offset name="map_data_occupancy">0x066c</Offset> VERIFIED <Offset name="map_data_temperature1_offset">0x156c</Offset> VERIFIED <Offset name="map_data_temperature2_offset">0x176c</Offset> VERIFIED <Offset name="map_data_biome_stuffs">0x1D6C</Offset> VERIFIED <Offset name="map_data_pathfinding_offset">0x0D6c</Offset> VERIFIED MAP FEATURE OFFSETS =================== <Offset name= "global_feature_funcptr_">0x94</Offset> VERIFIED <Offset name="global_feature_mat">0x28</Offset> VERIFIED <Offset name="global_feature_submat">0x2C</Offset> VERIFIED <Offset name="local_feature_mat">0x24</Offset> VERIFIED <Offset name="local_feature_submat">0x28</Offset> VERIFIED values for the region structure =============================== <HexValue name="region_size">0x58</HexValue> VERIFIED <Offset name="region_geo_index_off">0x54</Offset> VERIFIED geoblock offsets ================ <Offset name="geolayer_geoblock_offset">0x4</Offset> VERIFIED <Offset name="type_inside_geolayer">0x4</Offset> VERIFIED Name struct =========== <Offset name="name_firstname">0x0</Offset> VERIFIED <Offset name="name_nickname">0x4</Offset> VERIFIED <Offset name="name_words">0x8</Offset> VERIFIED Creature offsets ================ <Offset name="creature_name">0x0</Offset> VERIFIED <Offset name="creature_custom_profession">0x3c</Offset> CHMOD <Offset name="creature_profession">0x40</Offset> CHMOD <Offset name="creature_race">0x44</Offset> CHMOD <Offset name="creature_position">0x90</Offset> BAD!! <Offset name="creature_flags1">0x8C</Offset> CHMOD <Offset name="creature_flags2">0x90</Offset> CHMOD <Offset name="creature_caste">0xA4</Offset> VERIFY <Offset name="creature_sex">0xA6</Offset> CHMOD <Offset name="creature_id">0xA8</Offset> CHMOD <Offset name="creature_civ">0xB4</Offset> VERIFY! <Offset name="creature_pickup_equipment_bit">0X144</Offset> CHMOD <Offset name="creature_mood">0x18C</Offset> VERIFY! <Offset name="creature_birth_year">0x19C</Offset> VERIFY! <Offset name="creature_birth_time">0x1A0</Offset> VERIFY! <Offset name="creature_physical">0x464</Offset> BAD! <Offset name="creature_current_job">0x258</Offset> CHMOD <Offset name="creature_mood_skill">0x394</Offset> VERIFY! the skill that will be increased at the end of the mood (or not) <Offset name="creature_appearance_vector">0x604</Offset> BAD! <Offset name="creature_artifact_name">0x6D4</Offset> BAD! <Offset name="creature_labors">0x51C</Offset> CHMOD <Offset name="creature_soul_vector">0x0500</Offset> CHMOD <Offset name="creature_default_soul">0x0758</Offset> BAD! <Offset name="creature_happiness">0x5AC</Offset> CHMOD Souls ===== <Offset name="soul_name">0x0</Offset> <Offset name="soul_skills_vector">0x1C4</Offset> CHMOD <Offset name="soul_traits">0x1DC</Offset> CHMOD <Offset name="soul_mental">0x88</Offset> BAD! Body Parts ========== <Offset name="bodypart_id">0x0</Offset> <Offset name="bodypart_category">0x1C</Offset> <Offset name="bodypart_layers_vector">0x44</Offset> <Offset name="bodypart_singular_vector">0x78</Offset> <Offset name="bodypart_plural_vector">0x90</Offset> Job structure ============= <Offset name="job_id">0x0</Offset> Incrementaly assigned <Offset name="job_type">0x8</Offset> seems to be just like the old occupations <Offset name="job_materials_vector">0xa4</Offset> Job materials ============= <Offset name="job_material_maintype">0x0</Offset> like mood materials, 0=bars, 4=stone, 5=wood, 57=cloth, 54=leather ... <Offset name="job_material_sectype1">0x2</Offset> subsubtype ? <Offset name="job_material_sectype2">0x4</Offset> subtype ? <Offset name="job_material_sectype3">0x8</Offset> index of material (for example, 2 is for silver) <Offset name="job_material_flags">0x18</Offset> set only for shell / bone mood requirements ? Creature type offsets ===================== <Offset name="creature_type_caste_vector">0x60</Offset> VERIFIED from 0.31.08 Toad: 0xaf75b68 Toad: rawname = 0x0 Toad: character (not reliable) = 0x20 Toad: caste vector = 0x60 Toad: extract? vector = 0x18f4 Toad: colors = 0x36 <Offset name="creature_type_extract_vector">0x18f4</Offset> VERIFIED <Offset name="creature_tile">0x20</Offset> VERIFIED <Offset name="creature_tile_color">0x36</Offset> LOOKS OK Castes ====== <Offset name="color_modifier_part">0x70</Offset> <Offset name="color_modifier_startdate">0x64</Offset> <Offset name="color_modifier_enddate">0x68</Offset> <Offset name="caste_bodypart_vector">0x51C</Offset> <Offset name="caste_color_modifiers">0xACC</Offset> <Offset name="caste_attributes">0x654</Offset> <!-- <Offset name="creature_type_caste_vector">0x138</Offset> <Offset name="creature_type_extract_vector">0x1A14</Offset> <Offset name="creature_tile">0xE0</Offset> <Offset name="creature_tile_color">0xF6</Offset> --> <!-- struct CreatureType { Vector<CreatureCasteType*> creature_type_caste_vector (0x138); Vector<CreatureExtractType*> creature_type_extract_vector (0x1A14); Offset creature_tile (0xE0); Offset creature_tile_color (0xF6); } --> Color descriptors ================= <Offset name="descriptor_rawname">0x0</Offset> VERIFIED <Offset name="descriptor_name">0x1C</Offset> VERIFIED <Offset name="descriptor_color_r">0x24</Offset> VERIFIED <Offset name="descriptor_color_v">0x28</Offset> VERIFIED <Offset name="descriptor_color_b">0x2C</Offset> VERIFIED Language tables =============== <Offset name="word_table">0x1C</Offset> VERIFIED Constructions ============= <Offset name="sizeof_construction">0x14</Offset> </Entry> <Entry version="v0.30_04" os="linux" id="30_04lin" base="linux-offsets-2010"> <String name="md5">1d759a11af258263ef5c139d6d9a3e15</String> <!-- most probably a static object, because its parts are often referenced as offset to this address *and* as addresses --> <Address name="WORLD">0x92D00C0</Address> Position and window dimensions ============================== <Address name="window_x">0x8cd3b18</Address> <Address name="window_y">0x8cd3b1c</Address> <Address name="window_z">0x8cd3b20</Address> <Address name="cursor_xyz">0x8b17370</Address> <Address name="window_dims">0x9464d6c</Address> GUI State ========= <Address name="pause_state">0x92c971c</Address> Map data ========= <Address name="map_data">0x9322d20</Address> WORLD + 0x52C60 Map Features ============ WORLD + 0x5487C <Address name="global_feature_vector">0x932493C</Address> WORLD + 0x548F4 <Address name="local_feature_start_ptr">0x93249B4</Address> * map size in blocks * <Address name="x_count_block">0x9322d34</Address> <Address name="y_count_block">0x9322d38</Address> <Address name="z_count_block">0x9322d3C</Address> * map size in tiles * <Address name="x_count">0x9322d40</Address> <Address name="y_count">0x9322d44</Address> <Address name="z_count">0x9322d48</Address> * region coords * WORLD + 0x525C8 <Address name="region_x">0x9322d4C</Address> WORLD + 0x525CC <Address name="region_y">0x9322d50</Address> WORLD + 0x525D0 <Address name="region_z">0x9322d54</Address> * World size * (WORDs) WORLD + 0x542E0 <Address name="world_size_x">0x93243A0</Address> WORLD + 0x542E2 <Address name="world_size_y">0x93243A2</Address> WORLD + 0x54894 <Address name="geoblock_vector">0x9324954</Address> WORLD + 0x548B8 <Address name="ptr2_region_array">0x9324978</Address> Creatures ========= <Address name="creature_vector">0x092E3AA0</Address> <Address name="dwarf_race_index">0x092CB608</Address> <Address name="dwarf_civ_id">0x092CB5FC</Address> Materials ========= soil, stone, metal inorganics vector <Address name="mat_inorganics">0x9324e68</Address>0x16afd04 wood and plant matter <Address name="mat_organics_all">0x9324E74</Address> plant matter <Address name="mat_organics_plants">0x9324E80</Address> just wood <Address name="mat_organics_trees">0x9324E98</Address> creature types actually used for creatures, <Address name="creature_type_vector">0x09324F14</Address> Color descriptors ================= <Address name="descriptor_colors_vector">0x9329378</Address> VERIFIED <Address name="descriptor_all_colors">0x9329390</Address> VERIFIED Translations ============ WORLD + 0x54E50 <Address name="language_vector">0x9324fd4</Address> WORLD + 0x54E80 <Address name="translation_vector">0x9324fec</Address> Constructions ============= WORLD + 0x84 <Address name="construction_vector">0x92D0144</Address> 0x165b290 Time ==== <Address name="current_year">0x92C9680</Address> <Address name="current_tick">0x92C9688</Address> <!-- Vegetation ========== WORLD + 0x15184 <Address name="vegetation_vector">0x0167030C</Address> belal: 0x017f6d98 ... what? <Offset name="tree_desc_offset">0x6C</Offset> Buildings ========= WORLD + 0x14818 <Address name="buildings_vector">0x0166f9a0</Address> <Offset name="building_custom_workshop_type">0x164</Offset> WORLD + 0x5D610 <Address name="custom_workshop_vector">0x016B8798</Address> <Offset name="custom_workshop_name">0x4</Offset> <Offset name="custom_workshop_type">0x20</Offset> Effects ======= :( Settlements =========== :( Hotkeys ======= <Address name="hotkey_start">0x01476ecc</Address> <Offset name="hotkey_mode">0x1C</Offset> <Offset name="hotkey_xyz">0x20</Offset> <HexValue name="hotkey_size">0x2C</HexValue> --> <!-- Materials ========= <Address name="mat_inorganics">0x9324E64</Address> stuff like glass, coke, ... <Address name="mat_other">17</Address> wood and plant matter, WORLD + 0x54B94 <Address name="mat_organics_all">18</Address> plant matter, WORLD + 0x54BAC <Address name="mat_organics_plants">19</Address> just wood, WORLD + 0x54BDC <Address name="mat_organics_trees">20</Address> creature types actually used for creatures, WORLD + 0x54CD0 <Address name="creature_type_vector">0x09324F10</Address> stuff that is used somehow <Address name="mat_stuff">21</Address> Constructions ============= WORLD + 0x108 <Address name="construction_vector">22</Address> Vegetation ========== WORLD + 0x15184 <Address name="vegetation_vector">25</Address> Buildings ========= WORLD + 0x14818 <Address name="buildings_vector">26</Address> WORLD + 0x5D610 <Address name="custom_workshop_vector">0</Address> <Offset name="custom_workshop_name">0x4</Offset> <Offset name="custom_workshop_type">0x20</Offset> Descriptor colors ================= <Address name="descriptor_vectors_start">27</Address> <Offset name="descriptor_rawname">0x0</Offset> <Offset name="descriptor_name">0x4C</Offset> <Address name="descriptor_colors_vector">28</Address> this includes RVB <Offset name="descriptor_color_r">0x6C</Offset> floats ! <Offset name="descriptor_color_v">0x70</Offset> <Offset name="descriptor_color_b">0x74</Offset> <Address name="descriptor_all_colors">29</Address> A list of all colors, including eyes and stuff Items ===== <Address name="items_vector">30</Address> List of offsets in the VTable : <Offset name="item_type_accessor">0x0</Offset> <Offset name="item_subtype_accessor">0x4</Offset> <Offset name="item_subindex_accessor">0x8</Offset> <Offset name="item_index_accessor">0xC</Offset> <Offset name="item_quality_accessor">0x238</Offset> <Offset name="item_improvement_vector">0xA0</Offset> <Offset name="item_improvement_subindex">0x4</Offset> <Offset name="item_improvement_index">0x8</Offset> <Offset name="item_improvement_quality">0x14</Offset> <Offset name="item_type_accessor">0x14</Offset> (in the vtable) --> </Entry> <Entry version="v0.31.05" os="linux" id="30_05lin" base="linux-offsets-2010"> <String name="md5">fea3801a26538b1741f3cc9294139fca</String> <!-- most probably a static object, because its parts are often referenced as offset to this address *and* as addresses --> <Address name="WORLD">0x92C60E0</Address> MOST PROBABLY BOGUS! Position and window dimensions ============================== <Address name="window_x">0x8cc9b38</Address> VERIFIED <Address name="window_y">0x8cc9b3c</Address> VERIFIED <Address name="window_z">0x8cc9b40</Address> VERIFIED <Address name="cursor_xyz">0x8b0d36c</Address> VERIFIED <Address name="window_dims">0x945ad8c</Address> VERIFIED GUI State ========= <Address name="pause_state">0x92bf73c</Address> VERIFIED Map data ======== WORLD + 0x52C60? <Address name="map_data">0x9318D40</Address> VERIFIED Map Features ============ WORLD + 0x5487C? <Address name="global_feature_vector">0x931A95C</Address> VERIFIED WORLD + 0x548F4? <Address name="local_feature_start_ptr">0x931A9D4</Address> VERIFIED * map size in blocks * <Address name="x_count_block">0x9318D54</Address> VERIFIED <Address name="y_count_block">0x9318D58</Address> VERIFIED <Address name="z_count_block">0x9318D5C</Address> VERIFIED * map size in tiles * <Address name="x_count">0x9318D60</Address> VERIFIED <Address name="y_count">0x9318D64</Address> VERIFIED <Address name="z_count">0x9318D68</Address> VERIFIED * region coords * WORLD + 0x525C8 <Address name="region_x">0x9318D6C</Address> VERIFIED WORLD + 0x525CC <Address name="region_y">0x9318D70</Address> VERIFIED WORLD + 0x525D0 <Address name="region_z">0x9318D74</Address> VERIFIED (old = 0x9322d54) * World size * (WORDs) WORLD + 0x542E0 <Address name="world_size_x">0x931A3C0</Address> VERIFIED WORLD + 0x542E2 <Address name="world_size_y">0x931A3C2</Address> VERIFIED WORLD + 0x54894 <Address name="geoblock_vector">0x931A974</Address> VERIFIED WORLD + 0x548B8 <Address name="ptr2_region_array">0x931A998</Address> VERIFIED Materials ========= soil, stone, metal inorganics vector <Address name="mat_inorganics">0x931ae88</Address> VERIFIED wood and plant matter <Address name="mat_organics_all">0x931ae94</Address> VERIFIED plant matter <Address name="mat_organics_plants">0x931aea0</Address> VERIFIED just wood <Address name="mat_organics_trees">0x931aeb8</Address> VERIFIED creature types actually used for creatures, <Address name="creature_type_vector">0x931af34</Address> VERIFIED Color descriptors ================= <Address name="descriptor_colors_vector">0x931f398</Address> VERIFIED <Address name="descriptor_all_colors">0x931f3b0</Address> VERIFIED Translations ============ WORLD + 0x54E50 <Address name="language_vector">0x931aff4</Address> WORLD + 0x54E80 <Address name="translation_vector">0x931b00c</Address> Creatures ========= <Address name="creature_vector">0x92D9AC0</Address> <Address name="dwarf_race_index">0x92C1628</Address>0x092CB608 <Address name="dwarf_civ_id">0x92C161C</Address>0x092CB5FC Time ==== <Address name="current_year">0x92BF6A0</Address> <Address name="current_tick">0x92BF6A8</Address> YEAR 0x92BF6A0, WORLD - 0x6A40 TICKS 0x92BF6A8, WORLD - 0x6A40 + 0x08 </Entry> <Entry version="v0.31.06" os="linux" id="30_06lin" base="30_05lin" rebase="-0x20E0"> <String name="md5">13a1c19e8f59b74e307e094e2a0f28c3</String> <Address name="cursor_xyz">0x8b0b328</Address> VERIFIED WORLD = 0x92C4000 Creatures ========= WORLD + 0x139E0 0x92d79d4 0x92d79e0 = real one? seems like it 0x92d7a10 </Entry> <Entry version="v0.31.07" os="linux" id="30_07lin" base="30_06lin" rebase="0x2000"> <String name="md5">b31979551782e89c049b11db8d2d86d7</String> </Entry> <Entry version="v0.31.08" os="linux" id="30_08lin" base="30_07lin"> <String name="md5">e37750890350d7b9d8203879aff8fa5c</String> </Entry> <Entry version="v0.31.09" os="linux" id="30_09lin" base="30_08lin" rebase="0x11000"> <!-- TODO: fix creature offsets --> <!-- TODO: small offsets added all over the place, investigate --> <String name="md5">4f1f988bc1b425d4193d3d8b7b0579a5</String> stealing memory... looking for vectors... ------------------- !!LANGUAGE TABLES!! ------------------- translation vector: 0x932bf2c lang vector: 0x932bf14 word table offset: 0x1c ------------- !!MATERIALS!! ------------- inorganics: 0x932bda8 organics: 0x932bdb4 trees: 0x932bdd8 plants: 0x932bdc0 color descriptors: 0x93302b8 Amber color:0xaf842e0 all descriptors: 0x93302d0 toad-first creature types: 0x932be54 all creature types: 0x932be2c 0x932be54 Toad: 0xb076f88 Toad: rawname = 0x0 Toad: character (not reliable) = 0x20 Toad: caste vector = 0x60 Toad: extract? vector = 0x18f4 Toad: colors = 0x36 </Entry> <Entry version="v0.31.10" os="linux" id="30_10lin" base="30_09lin"> <String name="md5">3e7bea269018a6fb88ef53715685aa64</String> ------------------- !!LANGUAGE TABLES!! ------------------- translation vector: 0x932bf2c lang vector: 0x932bf14 word table offset: 0x1c ------------- !!MATERIALS!! ------------- inorganics: 0x932bda8 organics: 0x932bdb4 trees: 0x932bdd8 plants: 0x932bdc0 color descriptors: 0x93302b8 Amber color:0xcc3a770 all descriptors: 0x93302d0 toad-first creature types: 0x932be54 elephant-first creature types: all creature types: 0x932be2c 0x932be54 Toad: 0xc77d798 Toad: rawname = 0x0 Toad: character (not reliable) = 0x20 Toad: caste vector = 0x60 Toad: extract? vector = 0x18f4 Toad: colors = 0x36 Buildings ========= <Address name="buildings_vector">0x92eb068</Address> <Offset name="building_custom_workshop_type">0xE0</Offset> <Address name="custom_workshop_vector">0x93302e8</Address> <Offset name="custom_workshop_name">0x4</Offset> <Offset name="custom_workshop_type">0x8</Offset> <VTable name="building_vtable"> <multiclass name="building_trapst" typeoffset="0xC0" /> <multiclass name="building_workshopst" typeoffset="0xC0" /> <multiclass name="building_furnacest" typeoffset="0xCE" /> <multiclass name="building_siegeenginest" typeoffset="0xC0" /> </VTable> </Entry> <Entry version="v0.31.11" os="linux" id="30_11lin" base="30_10lin" rebase="0x1D020"> <!-- BIG rebase, possible broken stuff --> <String name="md5">7b04ad536b8b657588ac209a7f95e1d1</String> <Address name="window_x">0x8cf7a58</Address> VERIFIED <Address name="window_y">0x8cf7a5C</Address> VERIFIED <Address name="window_z">0x8cf7a60</Address> VERIFIED <Address name="cursor_xyz">0x8b3b328</Address> VERIFIED ------------------- !!LANGUAGE TABLES!! ------------------- translation vector: 0x9348f4c lang vector: 0x9348f34 word table offset: 0x1c ------------- !!MATERIALS!! ------------- inorganics: 0x9348dc8 organics: 0x9348dd4 trees: 0x9348df8 plants: 0x9348de0 color descriptors: 0x934d2d8 Amber color:0xac014c0 all descriptors: 0x934d2f0 toad-first creature types: 0x9348e74 all creature types: 0x9348e4c 0x9348e74 Toad: 0xadae390 Toad: rawname = 0x0 Toad: character (not reliable) = 0x20 Toad: caste vector = 0x60 Toad: extract? vector = 0x18f4 Toad: colors = 0x36 </Entry> <Entry version="v0.31.12" os="linux" id="30_12lin" base="30_11lin" rebase="-0x1000"> <String name="md5">e79cead03187ecb692961b316b7cdcd4</String> <Address name="screen_tiles_pointer">0x09487970</Address> </Entry> </MemoryDescriptors> </DFExtractor>