Advertisement
Guest User

Untitled

a guest
Apr 27th, 2014
221
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 103.03 KB | None | 0 0
  1. struct AchievementRec // sizeof(0x38)
  2. {
  3.     DWORD m_ID; // +0x0, size 0x4, type 0
  4.     DWORD m_faction; // +0x4, size 0x4, type 0
  5.     DWORD m_instance_id; // +0x8, size 0x4, type 0
  6.     DWORD m_supercedes; // +0xC, size 0x4, type 0
  7.     char* m_title_lang; // +0x10, size 0x4, type 2
  8.     char* m_description_lang; // +0x14, size 0x4, type 2
  9.     DWORD m_category; // +0x18, size 0x4, type 0
  10.     DWORD m_points; // +0x1C, size 0x4, type 0
  11.     DWORD m_ui_order; // +0x20, size 0x4, type 0
  12.     DWORD m_flags; // +0x24, size 0x4, type 0
  13.     DWORD m_iconID; // +0x28, size 0x4, type 0
  14.     char* m_reward_lang; // +0x2C, size 0x4, type 2
  15.     DWORD m_minimum_criteria; // +0x30, size 0x4, type 0
  16.     DWORD m_shares_criteria; // +0x34, size 0x4, type 0
  17. };
  18.  
  19. struct Achievement_CriteriaRec // sizeof(0x3C)
  20. {
  21.     DWORD m_ID; // +0x0, size 0x4, type 0
  22.     DWORD m_achievement_id; // +0x4, size 0x4, type 0
  23.     DWORD m_type; // +0x8, size 0x4, type 0
  24.     DWORD m_asset_id; // +0xC, size 0x4, type 0
  25.     DWORD m_quantity; // +0x10, size 0x4, type 0
  26.     DWORD m_start_event; // +0x14, size 0x4, type 0
  27.     DWORD m_start_asset; // +0x18, size 0x4, type 0
  28.     DWORD m_fail_event; // +0x1C, size 0x4, type 0
  29.     DWORD m_fail_asset; // +0x20, size 0x4, type 0
  30.     char* m_description_lang; // +0x24, size 0x4, type 2
  31.     DWORD m_flags; // +0x28, size 0x4, type 0
  32.     DWORD m_timer_start_event; // +0x2C, size 0x4, type 0
  33.     DWORD m_timer_asset_id; // +0x30, size 0x4, type 0
  34.     DWORD m_timer_time; // +0x34, size 0x4, type 0
  35.     DWORD m_ui_order; // +0x38, size 0x4, type 0
  36. };
  37.  
  38. struct Achievement_CategoryRec // sizeof(0x10)
  39. {
  40.     DWORD m_ID; // +0x0, size 0x4, type 0
  41.     DWORD m_parent; // +0x4, size 0x4, type 0
  42.     char* m_name_lang; // +0x8, size 0x4, type 2
  43.     DWORD m_ui_order; // +0xC, size 0x4, type 0
  44. };
  45.  
  46. struct AnimationDataRec // sizeof(0x20)
  47. {
  48.     DWORD m_ID; // +0x0, size 0x4, type 0
  49.     char* m_Name; // +0x4, size 0x4, type 2
  50.     DWORD m_Weaponflags; // +0x8, size 0x4, type 0
  51.     DWORD m_Bodyflags; // +0xC, size 0x4, type 0
  52.     DWORD m_Flags; // +0x10, size 0x4, type 0
  53.     DWORD m_Fallback; // +0x14, size 0x4, type 0
  54.     DWORD m_BehaviorID; // +0x18, size 0x4, type 0
  55.     DWORD m_BehaviorTier; // +0x1C, size 0x4, type 0
  56. };
  57.  
  58. struct AnimKitRec // sizeof(0xC)
  59. {
  60.     DWORD m_ID; // +0x0, size 0x4, type 0
  61.     DWORD m_oneShotDuration; // +0x4, size 0x4, type 0
  62.     DWORD m_oneShotStopAnimKitID; // +0x8, size 0x4, type 0
  63. };
  64.  
  65. struct AnimKitBoneSetRec // sizeof(0x18)
  66. {
  67.     DWORD m_ID; // +0x0, size 0x4, type 0
  68.     char* m_name; // +0x4, size 0x4, type 2
  69.     DWORD m_boneDataID; // +0x8, size 0x4, type 0
  70.     DWORD m_parentAnimKitBoneSetID; // +0xC, size 0x4, type 0
  71.     DWORD m_extraBoneCount; // +0x10, size 0x4, type 0
  72.     DWORD m_altAnimKitBoneSetID; // +0x14, size 0x4, type 0
  73. };
  74.  
  75. struct AnimKitBoneSetAliasRec // sizeof(0xC)
  76. {
  77.     DWORD m_ID; // +0x0, size 0x4, type 0
  78.     DWORD m_boneDataID; // +0x4, size 0x4, type 0
  79.     DWORD m_animKitBoneSetID; // +0x8, size 0x4, type 0
  80. };
  81.  
  82. struct AnimKitConfigRec // sizeof(0x8)
  83. {
  84.     DWORD m_ID; // +0x0, size 0x4, type 0
  85.     DWORD m_configFlags; // +0x4, size 0x4, type 0
  86. };
  87.  
  88. struct AnimKitConfigBoneSetRec // sizeof(0x10)
  89. {
  90.     DWORD m_ID; // +0x0, size 0x4, type 0
  91.     DWORD m_parentAnimKitConfigID; // +0x4, size 0x4, type 0
  92.     DWORD m_animKitBoneSetID; // +0x8, size 0x4, type 0
  93.     DWORD m_animKitPriorityID; // +0xC, size 0x4, type 0
  94. };
  95.  
  96. struct AnimKitPriorityRec // sizeof(0x8)
  97. {
  98.     DWORD m_ID; // +0x0, size 0x4, type 0
  99.     DWORD m_priority; // +0x4, size 0x4, type 0
  100. };
  101.  
  102. struct AnimKitSegmentRec // sizeof(0x40)
  103. {
  104.     DWORD m_ID; // +0x0, size 0x4, type 0
  105.     DWORD m_parentAnimKitID; // +0x4, size 0x4, type 0
  106.     DWORD m_animID; // +0x8, size 0x4, type 0
  107.     DWORD m_animStartTime; // +0xC, size 0x4, type 0
  108.     DWORD m_animKitConfigID; // +0x10, size 0x4, type 0
  109.     DWORD m_startCondition; // +0x14, size 0x4, type 0
  110.     DWORD m_startConditionParam; // +0x18, size 0x4, type 0
  111.     DWORD m_startConditionDelay; // +0x1C, size 0x4, type 0
  112.     DWORD m_endCondition; // +0x20, size 0x4, type 0
  113.     DWORD m_endConditionParam; // +0x24, size 0x4, type 0
  114.     DWORD m_endConditionDelay; // +0x28, size 0x4, type 0
  115.     float m_speed; // +0x2C, size 0x4, type 3
  116.     DWORD m_segmentFlags; // +0x30, size 0x4, type 0
  117.     DWORD m_forcedVariation; // +0x34, size 0x4, type 0
  118.     DWORD m_overrideConfigFlags; // +0x38, size 0x4, type 0
  119.     DWORD m_loopToSegmentIndex; // +0x3C, size 0x4, type 0
  120. };
  121.  
  122. struct AnimReplacementRec // sizeof(0x10)
  123. {
  124.     DWORD m_ID; // +0x0, size 0x4, type 0
  125.     DWORD m_srcAnimID; // +0x4, size 0x4, type 0
  126.     DWORD m_dstAnimID; // +0x8, size 0x4, type 0
  127.     DWORD m_parentAnimReplacementSetID; // +0xC, size 0x4, type 0
  128. };
  129.  
  130. struct AnimReplacementSetRec // sizeof(0x8)
  131. {
  132.     DWORD m_ID; // +0x0, size 0x4, type 0
  133.     DWORD m_execOrder; // +0x4, size 0x4, type 0
  134. };
  135.  
  136. struct AreaGroupRec // sizeof(0x20)
  137. {
  138.     DWORD m_ID; // +0x0, size 0x4, type 0
  139.     DWORD m_areaID[6]; // +0x4, size 0x18, type 0
  140.     DWORD m_nextAreaID; // +0x1C, size 0x4, type 0
  141. };
  142.  
  143. struct AreaPOIRec // sizeof(0x58)
  144. {
  145.     DWORD m_ID; // +0x0, size 0x4, type 0
  146.     DWORD m_importance; // +0x4, size 0x4, type 0
  147.     DWORD m_icon[9]; // +0x8, size 0x24, type 0
  148.     DWORD m_factionID; // +0x2C, size 0x4, type 0
  149.     float m_x; // +0x30, size 0x4, type 3
  150.     float m_y; // +0x34, size 0x4, type 3
  151.     float m_z; // +0x38, size 0x4, type 3
  152.     DWORD m_continentID; // +0x3C, size 0x4, type 0
  153.     DWORD m_flags; // +0x40, size 0x4, type 0
  154.     DWORD m_areaID; // +0x44, size 0x4, type 0
  155.     char* m_name_lang; // +0x48, size 0x4, type 2
  156.     char* m_description_lang; // +0x4C, size 0x4, type 2
  157.     DWORD m_worldStateID; // +0x50, size 0x4, type 0
  158.     DWORD m_worldMapLink; // +0x54, size 0x4, type 0
  159. };
  160.  
  161. struct AreaTableRec // sizeof(0x50)
  162. {
  163.     DWORD m_ID; // +0x0, size 0x4, type 0
  164.     DWORD m_ContinentID; // +0x4, size 0x4, type 0
  165.     DWORD m_ParentAreaID; // +0x8, size 0x4, type 0
  166.     DWORD m_AreaBit; // +0xC, size 0x4, type 0
  167.     DWORD m_flags; // +0x10, size 0x4, type 0
  168.     DWORD m_SoundProviderPref; // +0x14, size 0x4, type 0
  169.     DWORD m_SoundProviderPrefUnderwater; // +0x18, size 0x4, type 0
  170.     DWORD m_AmbienceID; // +0x1C, size 0x4, type 0
  171.     DWORD m_ZoneMusic; // +0x20, size 0x4, type 0
  172.     DWORD m_IntroSound; // +0x24, size 0x4, type 0
  173.     DWORD m_ExplorationLevel; // +0x28, size 0x4, type 0
  174.     char* m_AreaName_lang; // +0x2C, size 0x4, type 2
  175.     DWORD m_factionGroupMask; // +0x30, size 0x4, type 0
  176.     DWORD m_liquidTypeID[4]; // +0x34, size 0x10, type 0
  177.     float m_minElevation; // +0x44, size 0x4, type 3
  178.     float m_ambient_multiplier; // +0x48, size 0x4, type 3
  179.     DWORD m_lightid; // +0x4C, size 0x4, type 0
  180. };
  181.  
  182. struct AreaAssignmentRec // sizeof(0x14)
  183. {
  184.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  185.     DWORD m_MapID; // +0x4, size 0x4, type 0
  186.     DWORD m_AreaID; // +0x8, size 0x4, type 0
  187.     DWORD m_ChunkX; // +0xC, size 0x4, type 0
  188.     DWORD m_ChunkY; // +0x10, size 0x4, type 0
  189. };
  190.  
  191. struct AreaTriggerRec // sizeof(0x2C)
  192. {
  193.     DWORD m_ID; // +0x0, size 0x4, type 0
  194.     DWORD m_ContinentID; // +0x4, size 0x4, type 0
  195.     float m_x; // +0x8, size 0x4, type 3
  196.     float m_y; // +0xC, size 0x4, type 3
  197.     float m_z; // +0x10, size 0x4, type 3
  198.     DWORD m_phaseShift; // +0x14, size 0x4, type 0
  199.     float m_radius; // +0x18, size 0x4, type 3
  200.     float m_box_length; // +0x1C, size 0x4, type 3
  201.     float m_box_width; // +0x20, size 0x4, type 3
  202.     float m_box_height; // +0x24, size 0x4, type 3
  203.     float m_box_yaw; // +0x28, size 0x4, type 3
  204. };
  205.  
  206. struct ArmorLocationRec // sizeof(0x18)
  207. {
  208.     DWORD m_ID; // +0x0, size 0x4, type 0
  209.     float m_clothmodifier; // +0x4, size 0x4, type 3
  210.     float m_leathermodifier; // +0x8, size 0x4, type 3
  211.     float m_chainmodifier; // +0xC, size 0x4, type 3
  212.     float m_platemodifier; // +0x10, size 0x4, type 3
  213.     float m_modifier; // +0x14, size 0x4, type 3
  214. };
  215.  
  216. struct AuctionHouseRec // sizeof(0x14)
  217. {
  218.     DWORD m_ID; // +0x0, size 0x4, type 0
  219.     DWORD m_factionID; // +0x4, size 0x4, type 0
  220.     DWORD m_depositRate; // +0x8, size 0x4, type 0
  221.     DWORD m_consignmentRate; // +0xC, size 0x4, type 0
  222.     char* m_name_lang; // +0x10, size 0x4, type 2
  223. };
  224.  
  225. struct BankBagSlotPricesRec // sizeof(0x8)
  226. {
  227.     DWORD m_ID; // +0x0, size 0x4, type 0
  228.     DWORD m_Cost; // +0x4, size 0x4, type 0
  229. };
  230.  
  231. struct BannedAddOnsRec // sizeof(0x2C)
  232. {
  233.     DWORD m_ID; // +0x0, size 0x4, type 0
  234.     DWORD m_nameMD5_[4]; // +0x4, size 0x10, type 0
  235.     DWORD m_versionMD5_[4]; // +0x14, size 0x10, type 0
  236.     DWORD m_lastModified; // +0x24, size 0x4, type 0
  237.     DWORD m_flags; // +0x28, size 0x4, type 0
  238. };
  239.  
  240. struct BarberShopStyleRec // sizeof(0x20)
  241. {
  242.     DWORD m_ID; // +0x0, size 0x4, type 0
  243.     DWORD m_type; // +0x4, size 0x4, type 0
  244.     char* m_DisplayName_lang; // +0x8, size 0x4, type 2
  245.     char* m_Description_lang; // +0xC, size 0x4, type 2
  246.     float m_Cost_Modifier; // +0x10, size 0x4, type 3
  247.     DWORD m_race; // +0x14, size 0x4, type 0
  248.     DWORD m_sex; // +0x18, size 0x4, type 0
  249.     DWORD m_data; // +0x1C, size 0x4, type 0
  250. };
  251.  
  252. struct BattlemasterListRec // sizeof(0x40)
  253. {
  254.     DWORD m_ID; // +0x0, size 0x4, type 0
  255.     DWORD m_mapID[8]; // +0x4, size 0x20, type 0
  256.     DWORD m_instanceType; // +0x24, size 0x4, type 0
  257.     DWORD m_groupsAllowed; // +0x28, size 0x4, type 0
  258.     char* m_name_lang; // +0x2C, size 0x4, type 2
  259.     DWORD m_maxGroupSize; // +0x30, size 0x4, type 0
  260.     DWORD m_holidayWorldState; // +0x34, size 0x4, type 0
  261.     DWORD m_minlevel; // +0x38, size 0x4, type 0
  262.     DWORD m_maxlevel; // +0x3C, size 0x4, type 0
  263. };
  264.  
  265. struct CameraShakesRec // sizeof(0x20)
  266. {
  267.     DWORD m_ID; // +0x0, size 0x4, type 0
  268.     DWORD m_shakeType; // +0x4, size 0x4, type 0
  269.     DWORD m_direction; // +0x8, size 0x4, type 0
  270.     float m_amplitude; // +0xC, size 0x4, type 3
  271.     float m_frequency; // +0x10, size 0x4, type 3
  272.     float m_duration; // +0x14, size 0x4, type 3
  273.     float m_phase; // +0x18, size 0x4, type 3
  274.     float m_coefficient; // +0x1C, size 0x4, type 3
  275. };
  276.  
  277. struct Cfg_CategoriesRec // sizeof(0x14)
  278. {
  279.     DWORD m_ID; // +0x0, size 0x4, type 0
  280.     DWORD m_localeMask; // +0x4, size 0x4, type 0
  281.     DWORD m_charsetMask; // +0x8, size 0x4, type 0
  282.     DWORD m_flags; // +0xC, size 0x4, type 0
  283.     char* m_name_lang; // +0x10, size 0x4, type 2
  284. };
  285.  
  286. struct Cfg_ConfigsRec // sizeof(0x14)
  287. {
  288.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  289.     DWORD m_ID; // +0x4, size 0x4, type 0
  290.     DWORD m_realmType; // +0x8, size 0x4, type 0
  291.     DWORD m_playerKillingAllowed; // +0xC, size 0x4, type 0
  292.     DWORD m_roleplaying; // +0x10, size 0x4, type 0
  293. };
  294.  
  295. struct CharBaseInfoRec // sizeof(0x8)
  296. {
  297.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  298.     BYTE m_raceID; // +0x4, size 0x1, type 0
  299.     BYTE m_classID; // +0x5, size 0x1, type 0
  300. };
  301.  
  302. struct CharHairGeosetsRec // sizeof(0x18)
  303. {
  304.     DWORD m_ID; // +0x0, size 0x4, type 0
  305.     DWORD m_RaceID; // +0x4, size 0x4, type 0
  306.     DWORD m_SexID; // +0x8, size 0x4, type 0
  307.     DWORD m_VariationID; // +0xC, size 0x4, type 0
  308.     DWORD m_GeosetID; // +0x10, size 0x4, type 0
  309.     DWORD m_Showscalp; // +0x14, size 0x4, type 0
  310. };
  311.  
  312. struct CharSectionsRec // sizeof(0x28)
  313. {
  314.     DWORD m_ID; // +0x0, size 0x4, type 0
  315.     DWORD m_raceID; // +0x4, size 0x4, type 0
  316.     DWORD m_sexID; // +0x8, size 0x4, type 0
  317.     DWORD m_baseSection; // +0xC, size 0x4, type 0
  318.     char* m_TextureName[3]; // +0x10, size 0xC, type 2
  319.     DWORD m_flags; // +0x1C, size 0x4, type 0
  320.     DWORD m_variationIndex; // +0x20, size 0x4, type 0
  321.     DWORD m_colorIndex; // +0x24, size 0x4, type 0
  322. };
  323.  
  324. struct CharStartOutfitRec // sizeof(0x128)
  325. {
  326.     DWORD m_ID; // +0x0, size 0x4, type 0
  327.     BYTE m_raceID; // +0x4, size 0x1, type 0
  328.     BYTE m_classID; // +0x5, size 0x1, type 0
  329.     BYTE m_sexID; // +0x6, size 0x1, type 0
  330.     BYTE m_outfitID; // +0x7, size 0x1, type 0
  331.     DWORD m_ItemID[24]; // +0x8, size 0x60, type 0
  332.     DWORD m_DisplayItemID[24]; // +0x68, size 0x60, type 0
  333.     DWORD m_InventoryType[24]; // +0xC8, size 0x60, type 0
  334. };
  335.  
  336. struct CharTitlesRec // sizeof(0x14)
  337. {
  338.     DWORD m_ID; // +0x0, size 0x4, type 0
  339.     DWORD m_Condition_ID; // +0x4, size 0x4, type 0
  340.     char* m_name_lang; // +0x8, size 0x4, type 2
  341.     char* m_name1_lang; // +0xC, size 0x4, type 2
  342.     DWORD m_mask_ID; // +0x10, size 0x4, type 0
  343. };
  344.  
  345. struct CharacterFacialHairStylesRec // sizeof(0x24)
  346. {
  347.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  348.     DWORD m_raceID; // +0x4, size 0x4, type 0
  349.     DWORD m_sexID; // +0x8, size 0x4, type 0
  350.     DWORD m_VariationID; // +0xC, size 0x4, type 0
  351.     DWORD m_Geoset[5]; // +0x10, size 0x14, type 0
  352. };
  353.  
  354. struct ChatChannelsRec // sizeof(0x14)
  355. {
  356.     DWORD m_ID; // +0x0, size 0x4, type 0
  357.     DWORD m_flags; // +0x4, size 0x4, type 0
  358.     DWORD m_factionGroup; // +0x8, size 0x4, type 0
  359.     char* m_name_lang; // +0xC, size 0x4, type 2
  360.     char* m_shortcut_lang; // +0x10, size 0x4, type 2
  361. };
  362.  
  363. struct ChatProfanityRec // sizeof(0xC)
  364. {
  365.     DWORD m_ID; // +0x0, size 0x4, type 0
  366.     char* m_text; // +0x4, size 0x4, type 2
  367.     DWORD m_Language; // +0x8, size 0x4, type 0
  368. };
  369.  
  370. struct ChrClassesRec // sizeof(0x38)
  371. {
  372.     DWORD m_ID; // +0x0, size 0x4, type 0
  373.     DWORD m_DisplayPower; // +0x4, size 0x4, type 0
  374.     char* m_petNameToken; // +0x8, size 0x4, type 2
  375.     char* m_name_lang; // +0xC, size 0x4, type 2
  376.     char* m_name_female_lang; // +0x10, size 0x4, type 2
  377.     char* m_name_male_lang; // +0x14, size 0x4, type 2
  378.     char* m_filename; // +0x18, size 0x4, type 2
  379.     DWORD m_spellClassSet; // +0x1C, size 0x4, type 0
  380.     DWORD m_flags; // +0x20, size 0x4, type 0
  381.     DWORD m_cinematicSequenceID; // +0x24, size 0x4, type 0
  382.     DWORD m_required_expansion; // +0x28, size 0x4, type 0
  383.     DWORD m_attackPowerPerStrength; // +0x2C, size 0x4, type 0
  384.     DWORD m_attackPowerPerAgility; // +0x30, size 0x4, type 0
  385.     DWORD m_rangedAttackPowerPerAgility; // +0x34, size 0x4, type 0
  386. };
  387.  
  388. struct ChrRacesRec // sizeof(0x58)
  389. {
  390.     DWORD m_ID; // +0x0, size 0x4, type 0
  391.     DWORD m_flags; // +0x4, size 0x4, type 0
  392.     DWORD m_factionID; // +0x8, size 0x4, type 0
  393.     DWORD m_ExplorationSoundID; // +0xC, size 0x4, type 0
  394.     DWORD m_MaleDisplayId; // +0x10, size 0x4, type 0
  395.     DWORD m_FemaleDisplayId; // +0x14, size 0x4, type 0
  396.     char* m_ClientPrefix; // +0x18, size 0x4, type 2
  397.     DWORD m_BaseLanguage; // +0x1C, size 0x4, type 0
  398.     DWORD m_creatureType; // +0x20, size 0x4, type 0
  399.     DWORD m_ResSicknessSpellID; // +0x24, size 0x4, type 0
  400.     DWORD m_SplashSoundID; // +0x28, size 0x4, type 0
  401.     char* m_clientFileString; // +0x2C, size 0x4, type 2
  402.     DWORD m_cinematicSequenceID; // +0x30, size 0x4, type 0
  403.     DWORD m_alliance; // +0x34, size 0x4, type 0
  404.     char* m_name_lang; // +0x38, size 0x4, type 2
  405.     char* m_name_female_lang; // +0x3C, size 0x4, type 2
  406.     char* m_name_male_lang; // +0x40, size 0x4, type 2
  407.     char* m_facialHairCustomization[2]; // +0x44, size 0x8, type 2
  408.     char* m_hairCustomization; // +0x4C, size 0x4, type 2
  409.     DWORD m_required_expansion; // +0x50, size 0x4, type 0
  410.     DWORD m_unalteredVisualRaceID; // +0x54, size 0x4, type 0
  411. };
  412.  
  413. struct CinematicCameraRec // sizeof(0x1C)
  414. {
  415.     DWORD m_ID; // +0x0, size 0x4, type 0
  416.     char* m_model; // +0x4, size 0x4, type 2
  417.     DWORD m_soundID; // +0x8, size 0x4, type 0
  418.     float m_originX; // +0xC, size 0x4, type 3
  419.     float m_originY; // +0x10, size 0x4, type 3
  420.     float m_originZ; // +0x14, size 0x4, type 3
  421.     float m_originFacing; // +0x18, size 0x4, type 3
  422. };
  423.  
  424. struct CinematicSequencesRec // sizeof(0x28)
  425. {
  426.     DWORD m_ID; // +0x0, size 0x4, type 0
  427.     DWORD m_soundID; // +0x4, size 0x4, type 0
  428.     DWORD m_camera[8]; // +0x8, size 0x20, type 0
  429. };
  430.  
  431. struct CreatureDisplayInfoExtraRec // sizeof(0x54)
  432. {
  433.     DWORD m_ID; // +0x0, size 0x4, type 0
  434.     DWORD m_DisplayRaceID; // +0x4, size 0x4, type 0
  435.     DWORD m_DisplaySexID; // +0x8, size 0x4, type 0
  436.     DWORD m_SkinID; // +0xC, size 0x4, type 0
  437.     DWORD m_FaceID; // +0x10, size 0x4, type 0
  438.     DWORD m_HairStyleID; // +0x14, size 0x4, type 0
  439.     DWORD m_HairColorID; // +0x18, size 0x4, type 0
  440.     DWORD m_FacialHairID; // +0x1C, size 0x4, type 0
  441.     DWORD m_NPCItemDisplay[11]; // +0x20, size 0x2C, type 0
  442.     DWORD m_flags; // +0x4C, size 0x4, type 0
  443.     char* m_BakeName; // +0x50, size 0x4, type 2
  444. };
  445.  
  446. struct CreatureDisplayInfoRec // sizeof(0x44)
  447. {
  448.     DWORD m_ID; // +0x0, size 0x4, type 0
  449.     DWORD m_modelID; // +0x4, size 0x4, type 0
  450.     DWORD m_soundID; // +0x8, size 0x4, type 0
  451.     DWORD m_extendedDisplayInfoID; // +0xC, size 0x4, type 0
  452.     float m_creatureModelScale; // +0x10, size 0x4, type 3
  453.     DWORD m_creatureModelAlpha; // +0x14, size 0x4, type 0
  454.     char* m_textureVariation[3]; // +0x18, size 0xC, type 2
  455.     char* m_portraitTextureName; // +0x24, size 0x4, type 2
  456.     DWORD m_sizeClass; // +0x28, size 0x4, type 0
  457.     DWORD m_bloodID; // +0x2C, size 0x4, type 0
  458.     DWORD m_NPCSoundID; // +0x30, size 0x4, type 0
  459.     DWORD m_particleColorID; // +0x34, size 0x4, type 0
  460.     DWORD m_creatureGeosetData; // +0x38, size 0x4, type 0
  461.     DWORD m_objectEffectPackageID; // +0x3C, size 0x4, type 0
  462.     DWORD m_animReplacementSetID; // +0x40, size 0x4, type 0
  463. };
  464.  
  465. struct CreatureFamilyRec // sizeof(0x30)
  466. {
  467.     DWORD m_ID; // +0x0, size 0x4, type 0
  468.     float m_minScale; // +0x4, size 0x4, type 3
  469.     DWORD m_minScaleLevel; // +0x8, size 0x4, type 0
  470.     float m_maxScale; // +0xC, size 0x4, type 3
  471.     DWORD m_maxScaleLevel; // +0x10, size 0x4, type 0
  472.     DWORD m_skillLine[2]; // +0x14, size 0x8, type 0
  473.     DWORD m_petFoodMask; // +0x1C, size 0x4, type 0
  474.     DWORD m_petTalentType; // +0x20, size 0x4, type 0
  475.     DWORD m_categoryEnumID; // +0x24, size 0x4, type 0
  476.     char* m_name_lang; // +0x28, size 0x4, type 2
  477.     char* m_iconFile; // +0x2C, size 0x4, type 2
  478. };
  479.  
  480. struct CreatureModelDataRec // sizeof(0x70)
  481. {
  482.     DWORD m_ID; // +0x0, size 0x4, type 0
  483.     DWORD m_flags; // +0x4, size 0x4, type 0
  484.     char* m_ModelName; // +0x8, size 0x4, type 2
  485.     DWORD m_sizeClass; // +0xC, size 0x4, type 0
  486.     float m_modelScale; // +0x10, size 0x4, type 3
  487.     DWORD m_bloodID; // +0x14, size 0x4, type 0
  488.     DWORD m_footprintTextureID; // +0x18, size 0x4, type 0
  489.     float m_footprintTextureLength; // +0x1C, size 0x4, type 3
  490.     float m_footprintTextureWidth; // +0x20, size 0x4, type 3
  491.     float m_footprintParticleScale; // +0x24, size 0x4, type 3
  492.     DWORD m_foleyMaterialID; // +0x28, size 0x4, type 0
  493.     DWORD m_footstepShakeSize; // +0x2C, size 0x4, type 0
  494.     DWORD m_deathThudShakeSize; // +0x30, size 0x4, type 0
  495.     DWORD m_soundID; // +0x34, size 0x4, type 0
  496.     float m_collisionWidth; // +0x38, size 0x4, type 3
  497.     float m_collisionHeight; // +0x3C, size 0x4, type 3
  498.     float m_mountHeight; // +0x40, size 0x4, type 3
  499.     float m_geoBoxMinX; // +0x44, size 0x4, type 3
  500.     float m_geoBoxMinY; // +0x48, size 0x4, type 3
  501.     float m_geoBoxMinZ; // +0x4C, size 0x4, type 3
  502.     float m_geoBoxMaxX; // +0x50, size 0x4, type 3
  503.     float m_geoBoxMaxY; // +0x54, size 0x4, type 3
  504.     float m_geoBoxMaxZ; // +0x58, size 0x4, type 3
  505.     float m_worldEffectScale; // +0x5C, size 0x4, type 3
  506.     float m_attachedEffectScale; // +0x60, size 0x4, type 3
  507.     float m_missileCollisionRadius; // +0x64, size 0x4, type 3
  508.     float m_missileCollisionPush; // +0x68, size 0x4, type 3
  509.     float m_missileCollisionRaise; // +0x6C, size 0x4, type 3
  510. };
  511.  
  512. struct CreatureMovementInfoRec // sizeof(0x8)
  513. {
  514.     DWORD m_ID; // +0x0, size 0x4, type 0
  515.     float m_smoothFacingChaseRate; // +0x4, size 0x4, type 3
  516. };
  517.  
  518. struct CreatureSoundDataRec // sizeof(0xA0)
  519. {
  520.     DWORD m_ID; // +0x0, size 0x4, type 0
  521.     DWORD m_soundExertionID; // +0x4, size 0x4, type 0
  522.     DWORD m_soundExertionCriticalID; // +0x8, size 0x4, type 0
  523.     DWORD m_soundInjuryID; // +0xC, size 0x4, type 0
  524.     DWORD m_soundInjuryCriticalID; // +0x10, size 0x4, type 0
  525.     DWORD m_soundInjuryCrushingBlowID; // +0x14, size 0x4, type 0
  526.     DWORD m_soundDeathID; // +0x18, size 0x4, type 0
  527.     DWORD m_soundStunID; // +0x1C, size 0x4, type 0
  528.     DWORD m_soundStandID; // +0x20, size 0x4, type 0
  529.     DWORD m_soundFootstepID; // +0x24, size 0x4, type 0
  530.     DWORD m_soundAggroID; // +0x28, size 0x4, type 0
  531.     DWORD m_soundWingFlapID; // +0x2C, size 0x4, type 0
  532.     DWORD m_soundWingGlideID; // +0x30, size 0x4, type 0
  533.     DWORD m_soundAlertID; // +0x34, size 0x4, type 0
  534.     DWORD m_soundFidget[5]; // +0x38, size 0x14, type 0
  535.     DWORD m_customAttack[4]; // +0x4C, size 0x10, type 0
  536.     DWORD m_NPCSoundID; // +0x5C, size 0x4, type 0
  537.     DWORD m_loopSoundID; // +0x60, size 0x4, type 0
  538.     DWORD m_creatureImpactType; // +0x64, size 0x4, type 0
  539.     DWORD m_soundJumpStartID; // +0x68, size 0x4, type 0
  540.     DWORD m_soundJumpEndID; // +0x6C, size 0x4, type 0
  541.     DWORD m_soundPetAttackID; // +0x70, size 0x4, type 0
  542.     DWORD m_soundPetOrderID; // +0x74, size 0x4, type 0
  543.     DWORD m_soundPetDismissID; // +0x78, size 0x4, type 0
  544.     float m_fidgetDelaySecondsMin; // +0x7C, size 0x4, type 3
  545.     float m_fidgetDelaySecondsMax; // +0x80, size 0x4, type 3
  546.     DWORD m_birthSoundID; // +0x84, size 0x4, type 0
  547.     DWORD m_spellCastDirectedSoundID; // +0x88, size 0x4, type 0
  548.     DWORD m_submergeSoundID; // +0x8C, size 0x4, type 0
  549.     DWORD m_submergedSoundID; // +0x90, size 0x4, type 0
  550.     DWORD m_creatureSoundDataIDPet; // +0x94, size 0x4, type 0
  551.     DWORD m_transformSoundID; // +0x98, size 0x4, type 0
  552.     DWORD m_transformAnimatedSoundID; // +0x9C, size 0x4, type 0
  553. };
  554.  
  555. struct CreatureSpellDataRec // sizeof(0x24)
  556. {
  557.     DWORD m_ID; // +0x0, size 0x4, type 0
  558.     DWORD m_spells[4]; // +0x4, size 0x10, type 0
  559.     DWORD m_availability[4]; // +0x14, size 0x10, type 0
  560. };
  561.  
  562. struct CreatureTypeRec // sizeof(0xC)
  563. {
  564.     DWORD m_ID; // +0x0, size 0x4, type 0
  565.     char* m_name_lang; // +0x4, size 0x4, type 2
  566.     DWORD m_flags; // +0x8, size 0x4, type 0
  567. };
  568.  
  569. struct CurrencyTypesRec // sizeof(0x10)
  570. {
  571.     DWORD m_ID; // +0x0, size 0x4, type 0
  572.     DWORD m_itemID; // +0x4, size 0x4, type 0
  573.     DWORD m_categoryID; // +0x8, size 0x4, type 0
  574.     DWORD m_bitIndex; // +0xC, size 0x4, type 0
  575. };
  576.  
  577. struct CurrencyCategoryRec // sizeof(0xC)
  578. {
  579.     DWORD m_ID; // +0x0, size 0x4, type 0
  580.     DWORD m_flags; // +0x4, size 0x4, type 0
  581.     char* m_name_lang; // +0x8, size 0x4, type 2
  582. };
  583.  
  584. struct DanceMovesRec // sizeof(0x20)
  585. {
  586.     DWORD m_ID; // +0x0, size 0x4, type 0
  587.     DWORD m_type; // +0x4, size 0x4, type 0
  588.     DWORD m_param; // +0x8, size 0x4, type 0
  589.     DWORD m_fallback; // +0xC, size 0x4, type 0
  590.     DWORD m_racemask; // +0x10, size 0x4, type 0
  591.     char* m_Internal_name; // +0x14, size 0x4, type 2
  592.     char* m_Name_lang; // +0x18, size 0x4, type 2
  593.     DWORD m_lockID; // +0x1C, size 0x4, type 0
  594. };
  595.  
  596. struct DeathThudLookupsRec // sizeof(0x14)
  597. {
  598.     DWORD m_ID; // +0x0, size 0x4, type 0
  599.     DWORD m_SizeClass; // +0x4, size 0x4, type 0
  600.     DWORD m_TerrainTypeSoundID; // +0x8, size 0x4, type 0
  601.     DWORD m_SoundEntryID; // +0xC, size 0x4, type 0
  602.     DWORD m_SoundEntryIDWater; // +0x10, size 0x4, type 0
  603. };
  604.  
  605. struct DestructibleModelDataRec // sizeof(0x50)
  606. {
  607.     DWORD m_ID; // +0x0, size 0x4, type 0
  608.     DWORD m_state0Wmo; // +0x4, size 0x4, type 0
  609.     DWORD m_state0ImpactEffectDoodadSet; // +0x8, size 0x4, type 0
  610.     DWORD m_state0AmbientDoodadSet; // +0xC, size 0x4, type 0
  611.     DWORD m_state1Wmo; // +0x10, size 0x4, type 0
  612.     DWORD m_state1DestructionDoodadSet; // +0x14, size 0x4, type 0
  613.     DWORD m_state1ImpactEffectDoodadSet; // +0x18, size 0x4, type 0
  614.     DWORD m_state1AmbientDoodadSet; // +0x1C, size 0x4, type 0
  615.     DWORD m_state2Wmo; // +0x20, size 0x4, type 0
  616.     DWORD m_state2DestructionDoodadSet; // +0x24, size 0x4, type 0
  617.     DWORD m_state2ImpactEffectDoodadSet; // +0x28, size 0x4, type 0
  618.     DWORD m_state2AmbientDoodadSet; // +0x2C, size 0x4, type 0
  619.     DWORD m_state3Wmo; // +0x30, size 0x4, type 0
  620.     DWORD m_state3InitDoodadSet; // +0x34, size 0x4, type 0
  621.     DWORD m_state3AmbientDoodadSet; // +0x38, size 0x4, type 0
  622.     DWORD m_ejectDirection; // +0x3C, size 0x4, type 0
  623.     DWORD m_repairGroundFx; // +0x40, size 0x4, type 0
  624.     DWORD m_doNotHighlight; // +0x44, size 0x4, type 0
  625.     DWORD m_healEffect; // +0x48, size 0x4, type 0
  626.     DWORD m_healEffectSpeed; // +0x4C, size 0x4, type 0
  627. };
  628.  
  629. struct DungeonEncounterRec // sizeof(0x1C)
  630. {
  631.     DWORD m_ID; // +0x0, size 0x4, type 0
  632.     DWORD m_mapID; // +0x4, size 0x4, type 0
  633.     DWORD m_difficulty; // +0x8, size 0x4, type 0
  634.     DWORD m_orderIndex; // +0xC, size 0x4, type 0
  635.     DWORD m_Bit; // +0x10, size 0x4, type 0
  636.     char* m_name_lang; // +0x14, size 0x4, type 2
  637.     DWORD m_spellIconID; // +0x18, size 0x4, type 0
  638. };
  639.  
  640. struct DungeonMapRec // sizeof(0x20)
  641. {
  642.     DWORD m_ID; // +0x0, size 0x4, type 0
  643.     DWORD m_mapID; // +0x4, size 0x4, type 0
  644.     DWORD m_floorIndex; // +0x8, size 0x4, type 0
  645.     float m_minX; // +0xC, size 0x4, type 3
  646.     float m_maxX; // +0x10, size 0x4, type 3
  647.     float m_minY; // +0x14, size 0x4, type 3
  648.     float m_maxY; // +0x18, size 0x4, type 3
  649.     DWORD m_parentWorldMapID; // +0x1C, size 0x4, type 0
  650. };
  651.  
  652. struct DungeonMapChunkRec // sizeof(0x14)
  653. {
  654.     DWORD m_ID; // +0x0, size 0x4, type 0
  655.     DWORD m_mapID; // +0x4, size 0x4, type 0
  656.     DWORD m_wmoGroupID; // +0x8, size 0x4, type 0
  657.     DWORD m_dungeonMapID; // +0xC, size 0x4, type 0
  658.     float m_minZ; // +0x10, size 0x4, type 3
  659. };
  660.  
  661. struct DurabilityCostsRec // sizeof(0x78)
  662. {
  663.     DWORD m_ID; // +0x0, size 0x4, type 0
  664.     DWORD m_weaponSubClassCost[21]; // +0x4, size 0x54, type 0
  665.     DWORD m_armorSubClassCost[8]; // +0x58, size 0x20, type 0
  666. };
  667.  
  668. struct DurabilityQualityRec // sizeof(0x8)
  669. {
  670.     DWORD m_ID; // +0x0, size 0x4, type 0
  671.     float m_data; // +0x4, size 0x4, type 3
  672. };
  673.  
  674. struct EmotesRec // sizeof(0x1C)
  675. {
  676.     DWORD m_ID; // +0x0, size 0x4, type 0
  677.     char* m_EmoteSlashCommand; // +0x4, size 0x4, type 2
  678.     DWORD m_AnimID; // +0x8, size 0x4, type 0
  679.     DWORD m_EmoteFlags; // +0xC, size 0x4, type 0
  680.     DWORD m_EmoteSpecProc; // +0x10, size 0x4, type 0
  681.     DWORD m_EmoteSpecProcParam; // +0x14, size 0x4, type 0
  682.     DWORD m_EventSoundID; // +0x18, size 0x4, type 0
  683. };
  684.  
  685. struct EmotesTextDataRec // sizeof(0x8)
  686. {
  687.     DWORD m_ID; // +0x0, size 0x4, type 0
  688.     char* m_text_lang; // +0x4, size 0x4, type 2
  689. };
  690.  
  691. struct EmotesTextSoundRec // sizeof(0x14)
  692. {
  693.     DWORD m_ID; // +0x0, size 0x4, type 0
  694.     DWORD m_emotesTextID; // +0x4, size 0x4, type 0
  695.     DWORD m_raceID; // +0x8, size 0x4, type 0
  696.     DWORD m_sexID; // +0xC, size 0x4, type 0
  697.     DWORD m_soundID; // +0x10, size 0x4, type 0
  698. };
  699.  
  700. struct EmotesTextRec // sizeof(0x4C)
  701. {
  702.     DWORD m_ID; // +0x0, size 0x4, type 0
  703.     char* m_name; // +0x4, size 0x4, type 2
  704.     DWORD m_emoteID; // +0x8, size 0x4, type 0
  705.     DWORD m_emoteText[16]; // +0xC, size 0x40, type 0
  706. };
  707.  
  708. struct EnvironmentalDamageRec // sizeof(0xC)
  709. {
  710.     DWORD m_ID; // +0x0, size 0x4, type 0
  711.     DWORD m_EnumID; // +0x4, size 0x4, type 0
  712.     DWORD m_VisualkitID; // +0x8, size 0x4, type 0
  713. };
  714.  
  715. struct ExhaustionRec // sizeof(0x1C)
  716. {
  717.     DWORD m_ID; // +0x0, size 0x4, type 0
  718.     DWORD m_xp; // +0x4, size 0x4, type 0
  719.     float m_factor; // +0x8, size 0x4, type 3
  720.     float m_outdoorHours; // +0xC, size 0x4, type 3
  721.     float m_innHours; // +0x10, size 0x4, type 3
  722.     char* m_name_lang; // +0x14, size 0x4, type 2
  723.     float m_threshold; // +0x18, size 0x4, type 3
  724. };
  725.  
  726. struct FactionGroupRec // sizeof(0x10)
  727. {
  728.     DWORD m_ID; // +0x0, size 0x4, type 0
  729.     DWORD m_maskID; // +0x4, size 0x4, type 0
  730.     char* m_internalName; // +0x8, size 0x4, type 2
  731.     char* m_name_lang; // +0xC, size 0x4, type 2
  732. };
  733.  
  734. struct FactionRec // sizeof(0x64)
  735. {
  736.     DWORD m_ID; // +0x0, size 0x4, type 0
  737.     DWORD m_reputationIndex; // +0x4, size 0x4, type 0
  738.     DWORD m_reputationRaceMask[4]; // +0x8, size 0x10, type 0
  739.     DWORD m_reputationClassMask[4]; // +0x18, size 0x10, type 0
  740.     DWORD m_reputationBase[4]; // +0x28, size 0x10, type 0
  741.     DWORD m_reputationFlags[4]; // +0x38, size 0x10, type 0
  742.     DWORD m_parentFactionID; // +0x48, size 0x4, type 0
  743.     float m_parentFactionMod[2]; // +0x4C, size 0x8, type 3
  744.     DWORD m_parentFactionCap[2]; // +0x54, size 0x8, type 0
  745.     char* m_name_lang; // +0x5C, size 0x4, type 2
  746.     char* m_description_lang; // +0x60, size 0x4, type 2
  747. };
  748.  
  749. struct FactionTemplateRec // sizeof(0x38)
  750. {
  751.     DWORD m_ID; // +0x0, size 0x4, type 0
  752.     DWORD m_faction; // +0x4, size 0x4, type 0
  753.     DWORD m_flags; // +0x8, size 0x4, type 0
  754.     DWORD m_factionGroup; // +0xC, size 0x4, type 0
  755.     DWORD m_friendGroup; // +0x10, size 0x4, type 0
  756.     DWORD m_enemyGroup; // +0x14, size 0x4, type 0
  757.     DWORD m_enemies[4]; // +0x18, size 0x10, type 0
  758.     DWORD m_friend[4]; // +0x28, size 0x10, type 0
  759. };
  760.  
  761. struct FileDataRec // sizeof(0xC)
  762. {
  763.     DWORD m_ID; // +0x0, size 0x4, type 0
  764.     char* m_filename; // +0x4, size 0x4, type 2
  765.     char* m_filepath; // +0x8, size 0x4, type 2
  766. };
  767.  
  768. struct FootprintTexturesRec // sizeof(0x8)
  769. {
  770.     DWORD m_ID; // +0x0, size 0x4, type 0
  771.     char* m_FootstepFilename; // +0x4, size 0x4, type 2
  772. };
  773.  
  774. struct FootstepTerrainLookupRec // sizeof(0x14)
  775. {
  776.     DWORD m_ID; // +0x0, size 0x4, type 0
  777.     DWORD m_CreatureFootstepID; // +0x4, size 0x4, type 0
  778.     DWORD m_TerrainSoundID; // +0x8, size 0x4, type 0
  779.     DWORD m_SoundID; // +0xC, size 0x4, type 0
  780.     DWORD m_SoundIDSplash; // +0x10, size 0x4, type 0
  781. };
  782.  
  783. struct GameObjectArtKitRec // sizeof(0x20)
  784. {
  785.     DWORD m_ID; // +0x0, size 0x4, type 0
  786.     char* m_textureVariation[3]; // +0x4, size 0xC, type 2
  787.     char* m_attachModel[4]; // +0x10, size 0x10, type 2
  788. };
  789.  
  790. struct GameObjectDisplayInfoRec // sizeof(0x4C)
  791. {
  792.     DWORD m_ID; // +0x0, size 0x4, type 0
  793.     char* m_modelName; // +0x4, size 0x4, type 2
  794.     DWORD m_Sound[10]; // +0x8, size 0x28, type 0
  795.     float m_geoBoxMinX; // +0x30, size 0x4, type 3
  796.     float m_geoBoxMinY; // +0x34, size 0x4, type 3
  797.     float m_geoBoxMinZ; // +0x38, size 0x4, type 3
  798.     float m_geoBoxMaxX; // +0x3C, size 0x4, type 3
  799.     float m_geoBoxMaxY; // +0x40, size 0x4, type 3
  800.     float m_geoBoxMaxZ; // +0x44, size 0x4, type 3
  801.     DWORD m_objectEffectPackageID; // +0x48, size 0x4, type 0
  802. };
  803.  
  804. struct GameTablesRec // sizeof(0x10)
  805. {
  806.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  807.     char* m_name; // +0x4, size 0x4, type 2
  808.     DWORD m_numRows; // +0x8, size 0x4, type 0
  809.     DWORD m_numColumns; // +0xC, size 0x4, type 0
  810. };
  811.  
  812. struct GameTipsRec // sizeof(0x8)
  813. {
  814.     DWORD m_ID; // +0x0, size 0x4, type 0
  815.     char* m_text_lang; // +0x4, size 0x4, type 2
  816. };
  817.  
  818. struct GemPropertiesRec // sizeof(0x18)
  819. {
  820.     DWORD m_id; // +0x0, size 0x4, type 0
  821.     DWORD m_enchant_id; // +0x4, size 0x4, type 0
  822.     DWORD m_maxcount_inv; // +0x8, size 0x4, type 0
  823.     DWORD m_maxcount_item; // +0xC, size 0x4, type 0
  824.     DWORD m_type; // +0x10, size 0x4, type 0
  825.     DWORD m_min_item_level; // +0x14, size 0x4, type 0
  826. };
  827.  
  828. struct GlyphPropertiesRec // sizeof(0x10)
  829. {
  830.     DWORD m_id; // +0x0, size 0x4, type 0
  831.     DWORD m_spellID; // +0x4, size 0x4, type 0
  832.     DWORD m_glyphSlotFlags; // +0x8, size 0x4, type 0
  833.     DWORD m_spellIconID; // +0xC, size 0x4, type 0
  834. };
  835.  
  836. struct GlyphSlotRec // sizeof(0xC)
  837. {
  838.     DWORD m_id; // +0x0, size 0x4, type 0
  839.     DWORD m_type; // +0x4, size 0x4, type 0
  840.     DWORD m_tooltip; // +0x8, size 0x4, type 0
  841. };
  842.  
  843. struct GMSurveyAnswersRec // sizeof(0x10)
  844. {
  845.     DWORD m_ID; // +0x0, size 0x4, type 0
  846.     DWORD m_Sort_Index; // +0x4, size 0x4, type 0
  847.     DWORD m_GMSurveyQuestionID; // +0x8, size 0x4, type 0
  848.     char* m_Answer_lang; // +0xC, size 0x4, type 2
  849. };
  850.  
  851. struct GMSurveyCurrentSurveyRec // sizeof(0x8)
  852. {
  853.     DWORD m_LANGID; // +0x0, size 0x4, type 0
  854.     DWORD m_GMSURVEY_ID; // +0x4, size 0x4, type 0
  855. };
  856.  
  857. struct GMSurveyQuestionsRec // sizeof(0x8)
  858. {
  859.     DWORD m_ID; // +0x0, size 0x4, type 0
  860.     char* m_Question_lang; // +0x4, size 0x4, type 2
  861. };
  862.  
  863. struct GMSurveySurveysRec // sizeof(0x2C)
  864. {
  865.     DWORD m_ID; // +0x0, size 0x4, type 0
  866.     DWORD m_Q[10]; // +0x4, size 0x28, type 0
  867. };
  868.  
  869. struct GMTicketCategoryRec // sizeof(0x8)
  870. {
  871.     DWORD m_ID; // +0x0, size 0x4, type 0
  872.     char* m_category_lang; // +0x4, size 0x4, type 2
  873. };
  874.  
  875. struct GroundEffectDoodadRec // sizeof(0xC)
  876. {
  877.     DWORD m_ID; // +0x0, size 0x4, type 0
  878.     char* m_doodadpath; // +0x4, size 0x4, type 2
  879.     DWORD m_flags; // +0x8, size 0x4, type 0
  880. };
  881.  
  882. struct GroundEffectTextureRec // sizeof(0x2C)
  883. {
  884.     DWORD m_ID; // +0x0, size 0x4, type 0
  885.     DWORD m_doodadId[4]; // +0x4, size 0x10, type 0
  886.     DWORD m_doodadWeight[4]; // +0x14, size 0x10, type 0
  887.     DWORD m_density; // +0x24, size 0x4, type 0
  888.     DWORD m_sound; // +0x28, size 0x4, type 0
  889. };
  890.  
  891. struct gtBarberShopCostBaseRec // sizeof(0x8)
  892. {
  893.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  894.     float m_data; // +0x4, size 0x4, type 3
  895. };
  896.  
  897. struct gtCombatRatingsRec // sizeof(0x8)
  898. {
  899.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  900.     float m_data; // +0x4, size 0x4, type 3
  901. };
  902.  
  903. struct gtChanceToMeleeCritRec // sizeof(0x8)
  904. {
  905.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  906.     float m_data; // +0x4, size 0x4, type 3
  907. };
  908.  
  909. struct gtChanceToMeleeCritBaseRec // sizeof(0x8)
  910. {
  911.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  912.     float m_data; // +0x4, size 0x4, type 3
  913. };
  914.  
  915. struct gtChanceToSpellCritRec // sizeof(0x8)
  916. {
  917.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  918.     float m_data; // +0x4, size 0x4, type 3
  919. };
  920.  
  921. struct gtChanceToSpellCritBaseRec // sizeof(0x8)
  922. {
  923.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  924.     float m_data; // +0x4, size 0x4, type 3
  925. };
  926.  
  927. struct gtNPCManaCostScalerRec // sizeof(0x8)
  928. {
  929.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  930.     float m_data; // +0x4, size 0x4, type 3
  931. };
  932.  
  933. struct gtOCTClassCombatRatingScalarRec // sizeof(0x8)
  934. {
  935.     DWORD m_ID; // +0x0, size 0x4, type 0
  936.     float m_data; // +0x4, size 0x4, type 3
  937. };
  938.  
  939. struct gtOCTRegenHPRec // sizeof(0x8)
  940. {
  941.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  942.     float m_data; // +0x4, size 0x4, type 3
  943. };
  944.  
  945. struct gtOCTRegenMPRec // sizeof(0x8)
  946. {
  947.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  948.     float m_data; // +0x4, size 0x4, type 3
  949. };
  950.  
  951. struct gtRegenHPPerSptRec // sizeof(0x8)
  952. {
  953.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  954.     float m_data; // +0x4, size 0x4, type 3
  955. };
  956.  
  957. struct gtRegenMPPerSptRec // sizeof(0x8)
  958. {
  959.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  960.     float m_data; // +0x4, size 0x4, type 3
  961. };
  962.  
  963. struct gtSpellScalingRec // sizeof(0x8)
  964. {
  965.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  966.     float m_data; // +0x4, size 0x4, type 3
  967. };
  968.  
  969. struct HelmetGeosetVisDataRec // sizeof(0x20)
  970. {
  971.     DWORD m_ID; // +0x0, size 0x4, type 0
  972.     DWORD m_hideGeoset[7]; // +0x4, size 0x1C, type 0
  973. };
  974.  
  975. struct HolidayDescriptionsRec // sizeof(0x8)
  976. {
  977.     DWORD m_ID; // +0x0, size 0x4, type 0
  978.     char* m_description_lang; // +0x4, size 0x4, type 2
  979. };
  980.  
  981. struct HolidayNamesRec // sizeof(0x8)
  982. {
  983.     DWORD m_ID; // +0x0, size 0x4, type 0
  984.     char* m_name_lang; // +0x4, size 0x4, type 2
  985. };
  986.  
  987. struct HolidaysRec // sizeof(0xDC)
  988. {
  989.     DWORD m_ID; // +0x0, size 0x4, type 0
  990.     DWORD m_duration[10]; // +0x4, size 0x28, type 0
  991.     DWORD m_date[26]; // +0x2C, size 0x68, type 0
  992.     DWORD m_region; // +0x94, size 0x4, type 0
  993.     DWORD m_looping; // +0x98, size 0x4, type 0
  994.     DWORD m_calendarFlags[10]; // +0x9C, size 0x28, type 0
  995.     DWORD m_holidayNameID; // +0xC4, size 0x4, type 0
  996.     DWORD m_holidayDescriptionID; // +0xC8, size 0x4, type 0
  997.     char* m_textureFilename; // +0xCC, size 0x4, type 2
  998.     DWORD m_priority; // +0xD0, size 0x4, type 0
  999.     DWORD m_calendarFilterType; // +0xD4, size 0x4, type 0
  1000.     DWORD m_flags; // +0xD8, size 0x4, type 0
  1001. };
  1002.  
  1003. struct ItemRec // sizeof(0x20)
  1004. {
  1005.     DWORD m_ID; // +0x0, size 0x4, type 0
  1006.     DWORD m_classID; // +0x4, size 0x4, type 0
  1007.     DWORD m_subclassID; // +0x8, size 0x4, type 0
  1008.     DWORD m_sound_override_subclassid; // +0xC, size 0x4, type 0
  1009.     DWORD m_material; // +0x10, size 0x4, type 0
  1010.     DWORD m_displayInfoID; // +0x14, size 0x4, type 0
  1011.     DWORD m_inventoryType; // +0x18, size 0x4, type 0
  1012.     DWORD m_sheatheType; // +0x1C, size 0x4, type 0
  1013. };
  1014.  
  1015. struct ItemArmorQualityRec // sizeof(0x24)
  1016. {
  1017.     DWORD m_ID; // +0x0, size 0x4, type 0
  1018.     float m_qualitymod[7]; // +0x4, size 0x1C, type 3
  1019.     DWORD m_itemLevel; // +0x20, size 0x4, type 0
  1020. };
  1021.  
  1022. struct ItemArmorTotalRec // sizeof(0x18)
  1023. {
  1024.     DWORD m_ID; // +0x0, size 0x4, type 0
  1025.     DWORD m_itemLevel; // +0x4, size 0x4, type 0
  1026.     float m_cloth; // +0x8, size 0x4, type 3
  1027.     float m_leather; // +0xC, size 0x4, type 3
  1028.     float m_mail; // +0x10, size 0x4, type 3
  1029.     float m_plate; // +0x14, size 0x4, type 3
  1030. };
  1031.  
  1032. struct ItemArmorShieldRec // sizeof(0x24)
  1033. {
  1034.     DWORD m_ID; // +0x0, size 0x4, type 0
  1035.     DWORD m_itemLevel; // +0x4, size 0x4, type 0
  1036.     float m_quality[7]; // +0x8, size 0x1C, type 3
  1037. };
  1038.  
  1039. struct ItemBagFamilyRec // sizeof(0x8)
  1040. {
  1041.     DWORD m_ID; // +0x0, size 0x4, type 0
  1042.     char* m_name_lang; // +0x4, size 0x4, type 2
  1043. };
  1044.  
  1045. struct ItemClassRec // sizeof(0x14)
  1046. {
  1047.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  1048.     DWORD m_classID; // +0x4, size 0x4, type 0
  1049.     DWORD m_subclassMapID; // +0x8, size 0x4, type 0
  1050.     DWORD m_flags; // +0xC, size 0x4, type 0
  1051.     char* m_className_lang; // +0x10, size 0x4, type 2
  1052. };
  1053.  
  1054. struct ItemDamageAmmoRec // sizeof(0x24)
  1055. {
  1056.     DWORD m_ID; // +0x0, size 0x4, type 0
  1057.     float m_quality[7]; // +0x4, size 0x1C, type 3
  1058.     DWORD m_itemLevel; // +0x20, size 0x4, type 0
  1059. };
  1060.  
  1061. struct ItemDamageOneHandRec // sizeof(0x24)
  1062. {
  1063.     DWORD m_ID; // +0x0, size 0x4, type 0
  1064.     float m_quality[7]; // +0x4, size 0x1C, type 3
  1065.     DWORD m_itemLevel; // +0x20, size 0x4, type 0
  1066. };
  1067.  
  1068. struct ItemDamageOneHandCasterRec // sizeof(0x24)
  1069. {
  1070.     DWORD m_ID; // +0x0, size 0x4, type 0
  1071.     float m_quality[7]; // +0x4, size 0x1C, type 3
  1072.     DWORD m_itemLevel; // +0x20, size 0x4, type 0
  1073. };
  1074.  
  1075. struct ItemDamageRangedRec // sizeof(0x24)
  1076. {
  1077.     DWORD m_ID; // +0x0, size 0x4, type 0
  1078.     float m_quality[7]; // +0x4, size 0x1C, type 3
  1079.     DWORD m_itemLevel; // +0x20, size 0x4, type 0
  1080. };
  1081.  
  1082. struct ItemDamageThrownRec // sizeof(0x24)
  1083. {
  1084.     DWORD m_ID; // +0x0, size 0x4, type 0
  1085.     float m_quality[7]; // +0x4, size 0x1C, type 3
  1086.     DWORD m_itemLevel; // +0x20, size 0x4, type 0
  1087. };
  1088.  
  1089. struct ItemDamageTwoHandRec // sizeof(0x24)
  1090. {
  1091.     DWORD m_ID; // +0x0, size 0x4, type 0
  1092.     float m_quality[7]; // +0x4, size 0x1C, type 3
  1093.     DWORD m_itemLevel; // +0x20, size 0x4, type 0
  1094. };
  1095.  
  1096. struct ItemDamageTwoHandCasterRec // sizeof(0x24)
  1097. {
  1098.     DWORD m_ID; // +0x0, size 0x4, type 0
  1099.     float m_quality[7]; // +0x4, size 0x1C, type 3
  1100.     DWORD m_itemLevel; // +0x20, size 0x4, type 0
  1101. };
  1102.  
  1103. struct ItemDamageWandRec // sizeof(0x24)
  1104. {
  1105.     DWORD m_ID; // +0x0, size 0x4, type 0
  1106.     float m_quality[7]; // +0x4, size 0x1C, type 3
  1107.     DWORD m_itemLevel; // +0x20, size 0x4, type 0
  1108. };
  1109.  
  1110. struct ItemDisplayInfoRec // sizeof(0x64)
  1111. {
  1112.     DWORD m_ID; // +0x0, size 0x4, type 0
  1113.     char* m_modelName[2]; // +0x4, size 0x8, type 2
  1114.     char* m_modelTexture[2]; // +0xC, size 0x8, type 2
  1115.     char* m_inventoryIcon[2]; // +0x14, size 0x8, type 2
  1116.     DWORD m_geosetGroup[3]; // +0x1C, size 0xC, type 0
  1117.     DWORD m_flags; // +0x28, size 0x4, type 0
  1118.     DWORD m_spellVisualID; // +0x2C, size 0x4, type 0
  1119.     DWORD m_groupSoundIndex; // +0x30, size 0x4, type 0
  1120.     DWORD m_helmetGeosetVis[2]; // +0x34, size 0x8, type 0
  1121.     char* m_texture[8]; // +0x3C, size 0x20, type 2
  1122.     DWORD m_itemVisual; // +0x5C, size 0x4, type 0
  1123.     DWORD m_particleColorID; // +0x60, size 0x4, type 0
  1124. };
  1125.  
  1126. struct ItemExtendedCostRec // sizeof(0x40)
  1127. {
  1128.     DWORD m_ID; // +0x0, size 0x4, type 0
  1129.     DWORD m_honorPoints; // +0x4, size 0x4, type 0
  1130.     DWORD m_arenaPoints; // +0x8, size 0x4, type 0
  1131.     DWORD m_arenaBracket; // +0xC, size 0x4, type 0
  1132.     DWORD m_itemID[5]; // +0x10, size 0x14, type 0
  1133.     DWORD m_itemCount[5]; // +0x24, size 0x14, type 0
  1134.     DWORD m_requiredArenaRating; // +0x38, size 0x4, type 0
  1135.     DWORD m_itemPurchaseGroup; // +0x3C, size 0x4, type 0
  1136. };
  1137.  
  1138. struct ItemGroupSoundsRec // sizeof(0x14)
  1139. {
  1140.     DWORD m_ID; // +0x0, size 0x4, type 0
  1141.     DWORD m_sound[4]; // +0x4, size 0x10, type 0
  1142. };
  1143.  
  1144. struct ItemLimitCategoryRec // sizeof(0x10)
  1145. {
  1146.     DWORD m_ID; // +0x0, size 0x4, type 0
  1147.     char* m_name_lang; // +0x4, size 0x4, type 2
  1148.     DWORD m_quantity; // +0x8, size 0x4, type 0
  1149.     DWORD m_flags; // +0xC, size 0x4, type 0
  1150. };
  1151.  
  1152. struct ItemPetFoodRec // sizeof(0x8)
  1153. {
  1154.     DWORD m_ID; // +0x0, size 0x4, type 0
  1155.     char* m_Name_lang; // +0x4, size 0x4, type 2
  1156. };
  1157.  
  1158. struct ItemPurchaseGroupRec // sizeof(0x28)
  1159. {
  1160.     DWORD m_ID; // +0x0, size 0x4, type 0
  1161.     DWORD m_itemID[8]; // +0x4, size 0x20, type 0
  1162.     char* m_name_lang; // +0x24, size 0x4, type 2
  1163. };
  1164.  
  1165. struct ItemRandomPropertiesRec // sizeof(0x20)
  1166. {
  1167.     DWORD m_ID; // +0x0, size 0x4, type 0
  1168.     char* m_Name; // +0x4, size 0x4, type 2
  1169.     DWORD m_Enchantment[5]; // +0x8, size 0x14, type 0
  1170.     char* m_name_lang; // +0x1C, size 0x4, type 2
  1171. };
  1172.  
  1173. struct ItemRandomSuffixRec // sizeof(0x34)
  1174. {
  1175.     DWORD m_ID; // +0x0, size 0x4, type 0
  1176.     char* m_name_lang; // +0x4, size 0x4, type 2
  1177.     char* m_internalName; // +0x8, size 0x4, type 2
  1178.     DWORD m_enchantment[5]; // +0xC, size 0x14, type 0
  1179.     DWORD m_allocationPct[5]; // +0x20, size 0x14, type 0
  1180. };
  1181.  
  1182. struct ItemSetRec // sizeof(0x94)
  1183. {
  1184.     DWORD m_ID; // +0x0, size 0x4, type 0
  1185.     char* m_name_lang; // +0x4, size 0x4, type 2
  1186.     DWORD m_itemID[17]; // +0x8, size 0x44, type 0
  1187.     DWORD m_setSpellID[8]; // +0x4C, size 0x20, type 0
  1188.     DWORD m_setThreshold[8]; // +0x6C, size 0x20, type 0
  1189.     DWORD m_requiredSkill; // +0x8C, size 0x4, type 0
  1190.     DWORD m_requiredSkillRank; // +0x90, size 0x4, type 0
  1191. };
  1192.  
  1193. struct ItemSubClassMaskRec // sizeof(0x10)
  1194. {
  1195.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  1196.     DWORD m_classID; // +0x4, size 0x4, type 0
  1197.     DWORD m_mask; // +0x8, size 0x4, type 0
  1198.     char* m_name_lang; // +0xC, size 0x4, type 2
  1199. };
  1200.  
  1201. struct ItemSubClassRec // sizeof(0x34)
  1202. {
  1203.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  1204.     DWORD m_classID; // +0x4, size 0x4, type 0
  1205.     DWORD m_subClassID; // +0x8, size 0x4, type 0
  1206.     DWORD m_prerequisiteProficiency; // +0xC, size 0x4, type 0
  1207.     DWORD m_postrequisiteProficiency; // +0x10, size 0x4, type 0
  1208.     DWORD m_flags; // +0x14, size 0x4, type 0
  1209.     DWORD m_displayFlags; // +0x18, size 0x4, type 0
  1210.     DWORD m_weaponParrySeq; // +0x1C, size 0x4, type 0
  1211.     DWORD m_weaponReadySeq; // +0x20, size 0x4, type 0
  1212.     DWORD m_weaponAttackSeq; // +0x24, size 0x4, type 0
  1213.     DWORD m_WeaponSwingSize; // +0x28, size 0x4, type 0
  1214.     char* m_displayName_lang; // +0x2C, size 0x4, type 2
  1215.     char* m_verboseName_lang; // +0x30, size 0x4, type 2
  1216. };
  1217.  
  1218. struct ItemVisualEffectsRec // sizeof(0x8)
  1219. {
  1220.     DWORD m_ID; // +0x0, size 0x4, type 0
  1221.     char* m_Model; // +0x4, size 0x4, type 2
  1222. };
  1223.  
  1224. struct ItemVisualsRec // sizeof(0x18)
  1225. {
  1226.     DWORD m_ID; // +0x0, size 0x4, type 0
  1227.     DWORD m_Slot[5]; // +0x4, size 0x14, type 0
  1228. };
  1229.  
  1230. struct LanguageWordsRec // sizeof(0xC)
  1231. {
  1232.     DWORD m_ID; // +0x0, size 0x4, type 0
  1233.     DWORD m_languageID; // +0x4, size 0x4, type 0
  1234.     char* m_word; // +0x8, size 0x4, type 2
  1235. };
  1236.  
  1237. struct LanguagesRec // sizeof(0x8)
  1238. {
  1239.     DWORD m_ID; // +0x0, size 0x4, type 0
  1240.     char* m_name_lang; // +0x4, size 0x4, type 2
  1241. };
  1242.  
  1243. struct LfgDungeonExpansionRec // sizeof(0x20)
  1244. {
  1245.     DWORD m_ID; // +0x0, size 0x4, type 0
  1246.     DWORD m_lfg_id; // +0x4, size 0x4, type 0
  1247.     DWORD m_expansion_level; // +0x8, size 0x4, type 0
  1248.     DWORD m_random_id; // +0xC, size 0x4, type 0
  1249.     DWORD m_hard_level_min; // +0x10, size 0x4, type 0
  1250.     DWORD m_hard_level_max; // +0x14, size 0x4, type 0
  1251.     DWORD m_target_level_min; // +0x18, size 0x4, type 0
  1252.     DWORD m_target_level_max; // +0x1C, size 0x4, type 0
  1253. };
  1254.  
  1255. struct LfgDungeonGroupRec // sizeof(0x14)
  1256. {
  1257.     DWORD m_ID; // +0x0, size 0x4, type 0
  1258.     char* m_name_lang; // +0x4, size 0x4, type 2
  1259.     DWORD m_order_index; // +0x8, size 0x4, type 0
  1260.     DWORD m_parent_group_id; // +0xC, size 0x4, type 0
  1261.     DWORD m_typeid; // +0x10, size 0x4, type 0
  1262. };
  1263.  
  1264. struct LfgDungeonsRec // sizeof(0x44)
  1265. {
  1266.     DWORD m_ID; // +0x0, size 0x4, type 0
  1267.     char* m_name_lang; // +0x4, size 0x4, type 2
  1268.     DWORD m_minLevel; // +0x8, size 0x4, type 0
  1269.     DWORD m_maxLevel; // +0xC, size 0x4, type 0
  1270.     DWORD m_target_level; // +0x10, size 0x4, type 0
  1271.     DWORD m_target_level_min; // +0x14, size 0x4, type 0
  1272.     DWORD m_target_level_max; // +0x18, size 0x4, type 0
  1273.     DWORD m_mapID; // +0x1C, size 0x4, type 0
  1274.     DWORD m_difficulty; // +0x20, size 0x4, type 0
  1275.     DWORD m_flags; // +0x24, size 0x4, type 0
  1276.     DWORD m_typeID; // +0x28, size 0x4, type 0
  1277.     DWORD m_faction; // +0x2C, size 0x4, type 0
  1278.     char* m_textureFilename; // +0x30, size 0x4, type 2
  1279.     DWORD m_expansionLevel; // +0x34, size 0x4, type 0
  1280.     DWORD m_order_index; // +0x38, size 0x4, type 0
  1281.     DWORD m_group_id; // +0x3C, size 0x4, type 0
  1282.     char* m_description_lang; // +0x40, size 0x4, type 2
  1283. };
  1284.  
  1285. struct LightRec // sizeof(0x3C)
  1286. {
  1287.     DWORD m_ID; // +0x0, size 0x4, type 0
  1288.     DWORD m_continentID; // +0x4, size 0x4, type 0
  1289.     float m_x; // +0x8, size 0x4, type 3
  1290.     float m_y; // +0xC, size 0x4, type 3
  1291.     float m_z; // +0x10, size 0x4, type 3
  1292.     float m_falloffStart; // +0x14, size 0x4, type 3
  1293.     float m_falloffEnd; // +0x18, size 0x4, type 3
  1294.     DWORD m_lightParamsID[8]; // +0x1C, size 0x20, type 0
  1295. };
  1296.  
  1297. struct LightFloatBandRec // sizeof(0x88)
  1298. {
  1299.     DWORD m_ID; // +0x0, size 0x4, type 0
  1300.     DWORD m_num; // +0x4, size 0x4, type 0
  1301.     DWORD m_time[16]; // +0x8, size 0x40, type 0
  1302.     float m_data[16]; // +0x48, size 0x40, type 3
  1303. };
  1304.  
  1305. struct LightIntBandRec // sizeof(0x88)
  1306. {
  1307.     DWORD m_ID; // +0x0, size 0x4, type 0
  1308.     DWORD m_num; // +0x4, size 0x4, type 0
  1309.     DWORD m_time[16]; // +0x8, size 0x40, type 0
  1310.     DWORD m_data[16]; // +0x48, size 0x40, type 0
  1311. };
  1312.  
  1313. struct LightParamsRec // sizeof(0x28)
  1314. {
  1315.     DWORD m_ID; // +0x0, size 0x4, type 0
  1316.     DWORD m_highlightSky; // +0x4, size 0x4, type 0
  1317.     DWORD m_lightSkyboxID; // +0x8, size 0x4, type 0
  1318.     DWORD m_cloudTypeID; // +0xC, size 0x4, type 0
  1319.     float m_glow; // +0x10, size 0x4, type 3
  1320.     float m_waterShallowAlpha; // +0x14, size 0x4, type 3
  1321.     float m_waterDeepAlpha; // +0x18, size 0x4, type 3
  1322.     float m_oceanShallowAlpha; // +0x1C, size 0x4, type 3
  1323.     float m_oceanDeepAlpha; // +0x20, size 0x4, type 3
  1324.     DWORD m_flags; // +0x24, size 0x4, type 0
  1325. };
  1326.  
  1327. struct LightSkyboxRec // sizeof(0xC)
  1328. {
  1329.     DWORD m_ID; // +0x0, size 0x4, type 0
  1330.     char* m_name; // +0x4, size 0x4, type 2
  1331.     DWORD m_flags; // +0x8, size 0x4, type 0
  1332. };
  1333.  
  1334. struct LiquidTypeRec // sizeof(0xC0)
  1335. {
  1336.     DWORD m_ID; // +0x0, size 0x4, type 0
  1337.     DWORD m_minDetail; // +0x4, size 0x4, type 0
  1338.     DWORD m_loDetail_ID; // +0x8, size 0x4, type 0
  1339.     DWORD m_hiDetail_ID; // +0xC, size 0x4, type 0
  1340.     char* m_name; // +0x10, size 0x4, type 2
  1341.     DWORD m_flags; // +0x14, size 0x4, type 0
  1342.     DWORD m_soundBank; // +0x18, size 0x4, type 0
  1343.     DWORD m_soundID; // +0x1C, size 0x4, type 0
  1344.     DWORD m_spellID; // +0x20, size 0x4, type 0
  1345.     float m_maxDarkenDepth; // +0x24, size 0x4, type 3
  1346.     float m_fogDarkenIntensity; // +0x28, size 0x4, type 3
  1347.     float m_ambDarkenIntensity; // +0x2C, size 0x4, type 3
  1348.     float m_dirDarkenIntensity; // +0x30, size 0x4, type 3
  1349.     DWORD m_lightID; // +0x34, size 0x4, type 0
  1350.     float m_particleScale; // +0x38, size 0x4, type 3
  1351.     DWORD m_particleMovement; // +0x3C, size 0x4, type 0
  1352.     DWORD m_particleTexSlots; // +0x40, size 0x4, type 0
  1353.     DWORD m_materialID; // +0x44, size 0x4, type 0
  1354.     char* m_texture[6]; // +0x48, size 0x18, type 2
  1355.     DWORD m_color[2]; // +0x60, size 0x8, type 0
  1356.     float m_float[18]; // +0x68, size 0x48, type 3
  1357.     DWORD m_int[4]; // +0xB0, size 0x10, type 0
  1358. };
  1359.  
  1360. struct LiquidMaterialRec // sizeof(0xC)
  1361. {
  1362.     DWORD m_ID; // +0x0, size 0x4, type 0
  1363.     DWORD m_LVF; // +0x4, size 0x4, type 0
  1364.     DWORD m_flags; // +0x8, size 0x4, type 0
  1365. };
  1366.  
  1367. struct LoadingScreensRec // sizeof(0x10)
  1368. {
  1369.     DWORD m_ID; // +0x0, size 0x4, type 0
  1370.     char* m_name; // +0x4, size 0x4, type 2
  1371.     char* m_fileName; // +0x8, size 0x4, type 2
  1372.     DWORD m_hasWideScreen; // +0xC, size 0x4, type 0
  1373. };
  1374.  
  1375. struct LoadingScreenTaxiSplinesRec // sizeof(0x4C)
  1376. {
  1377.     DWORD m_ID; // +0x0, size 0x4, type 0
  1378.     DWORD m_PathID; // +0x4, size 0x4, type 0
  1379.     float m_Locx[8]; // +0x8, size 0x20, type 3
  1380.     float m_Locy[8]; // +0x28, size 0x20, type 3
  1381.     DWORD m_LegIndex; // +0x48, size 0x4, type 0
  1382. };
  1383.  
  1384. struct LockRec // sizeof(0x84)
  1385. {
  1386.     DWORD m_ID; // +0x0, size 0x4, type 0
  1387.     DWORD m_Type[8]; // +0x4, size 0x20, type 0
  1388.     DWORD m_Index[8]; // +0x24, size 0x20, type 0
  1389.     DWORD m_Skill[8]; // +0x44, size 0x20, type 0
  1390.     DWORD m_Action[8]; // +0x64, size 0x20, type 0
  1391. };
  1392.  
  1393. struct LockTypeRec // sizeof(0x14)
  1394. {
  1395.     DWORD m_ID; // +0x0, size 0x4, type 0
  1396.     char* m_name_lang; // +0x4, size 0x4, type 2
  1397.     char* m_resourceName_lang; // +0x8, size 0x4, type 2
  1398.     char* m_verb_lang; // +0xC, size 0x4, type 2
  1399.     char* m_cursorName; // +0x10, size 0x4, type 2
  1400. };
  1401.  
  1402. struct MailTemplateRec // sizeof(0xC)
  1403. {
  1404.     DWORD m_ID; // +0x0, size 0x4, type 0
  1405.     char* m_subject_lang; // +0x4, size 0x4, type 2
  1406.     char* m_body_lang; // +0x8, size 0x4, type 2
  1407. };
  1408.  
  1409. struct MapRec // sizeof(0x4C)
  1410. {
  1411.     DWORD m_ID; // +0x0, size 0x4, type 0
  1412.     char* m_Directory; // +0x4, size 0x4, type 2
  1413.     DWORD m_InstanceType; // +0x8, size 0x4, type 0
  1414.     DWORD m_Flags; // +0xC, size 0x4, type 0
  1415.     DWORD m_PVP; // +0x10, size 0x4, type 0
  1416.     char* m_MapName_lang; // +0x14, size 0x4, type 2
  1417.     DWORD m_areaTableID; // +0x18, size 0x4, type 0
  1418.     char* m_MapDescription0_lang; // +0x1C, size 0x4, type 2
  1419.     char* m_MapDescription1_lang; // +0x20, size 0x4, type 2
  1420.     DWORD m_LoadingScreenID; // +0x24, size 0x4, type 0
  1421.     float m_minimapIconScale; // +0x28, size 0x4, type 3
  1422.     DWORD m_corpseMapID; // +0x2C, size 0x4, type 0
  1423.     float m_corpseX; // +0x30, size 0x4, type 3
  1424.     float m_corpseY; // +0x34, size 0x4, type 3
  1425.     DWORD m_timeOfDayOverride; // +0x38, size 0x4, type 0
  1426.     DWORD m_expansionID; // +0x3C, size 0x4, type 0
  1427.     DWORD m_raidOffset; // +0x40, size 0x4, type 0
  1428.     DWORD m_maxPlayers; // +0x44, size 0x4, type 0
  1429.     DWORD m_parentMapID; // +0x48, size 0x4, type 0
  1430. };
  1431.  
  1432. struct MapDifficultyRec // sizeof(0x1C)
  1433. {
  1434.     DWORD m_ID; // +0x0, size 0x4, type 0
  1435.     DWORD m_mapID; // +0x4, size 0x4, type 0
  1436.     DWORD m_difficulty; // +0x8, size 0x4, type 0
  1437.     char* m_message_lang; // +0xC, size 0x4, type 2
  1438.     DWORD m_raidDuration; // +0x10, size 0x4, type 0
  1439.     DWORD m_maxPlayers; // +0x14, size 0x4, type 0
  1440.     char* m_difficultystring; // +0x18, size 0x4, type 2
  1441. };
  1442.  
  1443. struct MaterialRec // sizeof(0x14)
  1444. {
  1445.     DWORD m_ID; // +0x0, size 0x4, type 0
  1446.     DWORD m_flags; // +0x4, size 0x4, type 0
  1447.     DWORD m_foleySoundID; // +0x8, size 0x4, type 0
  1448.     DWORD m_sheatheSoundID; // +0xC, size 0x4, type 0
  1449.     DWORD m_unsheatheSoundID; // +0x10, size 0x4, type 0
  1450. };
  1451.  
  1452. struct MovieRec // sizeof(0xC)
  1453. {
  1454.     DWORD m_ID; // +0x0, size 0x4, type 0
  1455.     char* m_filename; // +0x4, size 0x4, type 2
  1456.     DWORD m_volume; // +0x8, size 0x4, type 0
  1457. };
  1458.  
  1459. struct MovieFileDataRec // sizeof(0x8)
  1460. {
  1461.     DWORD m_FileDataID; // +0x0, size 0x4, type 0
  1462.     DWORD m_resolution; // +0x4, size 0x4, type 0
  1463. };
  1464.  
  1465. struct MovieVariationRec // sizeof(0xC)
  1466. {
  1467.     DWORD m_ID; // +0x0, size 0x4, type 0
  1468.     DWORD m_movieID; // +0x4, size 0x4, type 0
  1469.     DWORD m_fileDataID; // +0x8, size 0x4, type 0
  1470. };
  1471.  
  1472. struct NameGenRec // sizeof(0x10)
  1473. {
  1474.     DWORD m_ID; // +0x0, size 0x4, type 0
  1475.     char* m_name; // +0x4, size 0x4, type 2
  1476.     DWORD m_raceID; // +0x8, size 0x4, type 0
  1477.     DWORD m_sex; // +0xC, size 0x4, type 0
  1478. };
  1479.  
  1480. struct NPCSoundsRec // sizeof(0x14)
  1481. {
  1482.     DWORD m_ID; // +0x0, size 0x4, type 0
  1483.     DWORD m_SoundID[4]; // +0x4, size 0x10, type 0
  1484. };
  1485.  
  1486. struct NamesProfanityRec // sizeof(0xC)
  1487. {
  1488.     DWORD m_ID; // +0x0, size 0x4, type 0
  1489.     char* m_Name; // +0x4, size 0x4, type 2
  1490.     DWORD m_Language; // +0x8, size 0x4, type 0
  1491. };
  1492.  
  1493. struct NamesReservedRec // sizeof(0xC)
  1494. {
  1495.     DWORD m_ID; // +0x0, size 0x4, type 0
  1496.     char* m_Name; // +0x4, size 0x4, type 2
  1497.     DWORD m_Language; // +0x8, size 0x4, type 0
  1498. };
  1499.  
  1500. struct OverrideSpellDataRec // sizeof(0x30)
  1501. {
  1502.     DWORD m_ID; // +0x0, size 0x4, type 0
  1503.     DWORD m_spells[10]; // +0x4, size 0x28, type 0
  1504.     DWORD m_flags; // +0x2C, size 0x4, type 0
  1505. };
  1506.  
  1507. struct PackageRec // sizeof(0x10)
  1508. {
  1509.     DWORD m_ID; // +0x0, size 0x4, type 0
  1510.     char* m_icon; // +0x4, size 0x4, type 2
  1511.     DWORD m_cost; // +0x8, size 0x4, type 0
  1512.     char* m_name_lang; // +0xC, size 0x4, type 2
  1513. };
  1514.  
  1515. struct PageTextMaterialRec // sizeof(0x8)
  1516. {
  1517.     DWORD m_ID; // +0x0, size 0x4, type 0
  1518.     char* m_name; // +0x4, size 0x4, type 2
  1519. };
  1520.  
  1521. struct PaperDollItemFrameRec // sizeof(0x10)
  1522. {
  1523.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  1524.     char* m_ItemButtonName; // +0x4, size 0x4, type 2
  1525.     char* m_SlotIcon; // +0x8, size 0x4, type 2
  1526.     DWORD m_SlotNumber; // +0xC, size 0x4, type 0
  1527. };
  1528.  
  1529. struct ParticleColorRec // sizeof(0x28)
  1530. {
  1531.     DWORD m_ID; // +0x0, size 0x4, type 0
  1532.     DWORD m_start[3]; // +0x4, size 0xC, type 0
  1533.     DWORD m_mid[3]; // +0x10, size 0xC, type 0
  1534.     DWORD m_end[3]; // +0x1C, size 0xC, type 0
  1535. };
  1536.  
  1537. struct PetPersonalityRec // sizeof(0x20)
  1538. {
  1539.     DWORD m_ID; // +0x0, size 0x4, type 0
  1540.     char* m_name_lang; // +0x4, size 0x4, type 2
  1541.     DWORD m_happinessThreshold[3]; // +0x8, size 0xC, type 0
  1542.     float m_happinessDamage[3]; // +0x14, size 0xC, type 3
  1543. };
  1544.  
  1545. struct PhaseRec // sizeof(0x20)
  1546. {
  1547.     DWORD m_ID; // +0x0, size 0x4, type 0
  1548.     DWORD m_mapID; // +0x4, size 0x4, type 0
  1549.     DWORD m_phaseShift; // +0x8, size 0x4, type 0
  1550.     DWORD m_childMap[5]; // +0xC, size 0x14, type 0
  1551. };
  1552.  
  1553. struct PowerDisplayRec // sizeof(0x10)
  1554. {
  1555.     DWORD m_ID; // +0x0, size 0x4, type 0
  1556.     DWORD m_actualType; // +0x4, size 0x4, type 0
  1557.     char* m_globalStringBaseTag; // +0x8, size 0x4, type 2
  1558.     BYTE m_red; // +0xC, size 0x1, type 0
  1559.     BYTE m_green; // +0xD, size 0x1, type 0
  1560.     BYTE m_blue; // +0xE, size 0x1, type 0
  1561. };
  1562.  
  1563. struct PvpDifficultyRec // sizeof(0x18)
  1564. {
  1565.     DWORD m_ID; // +0x0, size 0x4, type 0
  1566.     DWORD m_mapID; // +0x4, size 0x4, type 0
  1567.     DWORD m_rangeIndex; // +0x8, size 0x4, type 0
  1568.     DWORD m_minLevel; // +0xC, size 0x4, type 0
  1569.     DWORD m_maxLevel; // +0x10, size 0x4, type 0
  1570.     DWORD m_difficulty; // +0x14, size 0x4, type 0
  1571. };
  1572.  
  1573. struct QuestFactionRewardRec // sizeof(0x2C)
  1574. {
  1575.     DWORD m_ID; // +0x0, size 0x4, type 0
  1576.     DWORD m_Difficulty[10]; // +0x4, size 0x28, type 0
  1577. };
  1578.  
  1579. struct QuestInfoRec // sizeof(0x8)
  1580. {
  1581.     DWORD m_ID; // +0x0, size 0x4, type 0
  1582.     char* m_InfoName_lang; // +0x4, size 0x4, type 2
  1583. };
  1584.  
  1585. struct QuestSortRec // sizeof(0x8)
  1586. {
  1587.     DWORD m_ID; // +0x0, size 0x4, type 0
  1588.     char* m_SortName_lang; // +0x4, size 0x4, type 2
  1589. };
  1590.  
  1591. struct QuestXPRec // sizeof(0x2C)
  1592. {
  1593.     DWORD m_ID; // +0x0, size 0x4, type 0
  1594.     DWORD m_difficulty[10]; // +0x4, size 0x28, type 0
  1595. };
  1596.  
  1597. struct ResistancesRec // sizeof(0x10)
  1598. {
  1599.     DWORD m_ID; // +0x0, size 0x4, type 0
  1600.     DWORD m_Flags; // +0x4, size 0x4, type 0
  1601.     DWORD m_FizzleSoundID; // +0x8, size 0x4, type 0
  1602.     char* m_name_lang; // +0xC, size 0x4, type 2
  1603. };
  1604.  
  1605. struct RandPropPointsRec // sizeof(0x40)
  1606. {
  1607.     DWORD m_ID; // +0x0, size 0x4, type 0
  1608.     DWORD m_Epic[5]; // +0x4, size 0x14, type 0
  1609.     DWORD m_Superior[5]; // +0x18, size 0x14, type 0
  1610.     DWORD m_Good[5]; // +0x2C, size 0x14, type 0
  1611. };
  1612.  
  1613. struct ScalingStatDistributionRec // sizeof(0x58)
  1614. {
  1615.     DWORD m_ID; // +0x0, size 0x4, type 0
  1616.     DWORD m_statID[10]; // +0x4, size 0x28, type 0
  1617.     DWORD m_bonus[10]; // +0x2C, size 0x28, type 0
  1618.     DWORD m_maxlevel; // +0x54, size 0x4, type 0
  1619. };
  1620.  
  1621. struct ScalingStatValuesRec // sizeof(0x60)
  1622. {
  1623.     DWORD m_ID; // +0x0, size 0x4, type 0
  1624.     DWORD m_charlevel; // +0x4, size 0x4, type 0
  1625.     DWORD m_shoulderBudget; // +0x8, size 0x4, type 0
  1626.     DWORD m_trinketBudget; // +0xC, size 0x4, type 0
  1627.     DWORD m_weaponBudget1H; // +0x10, size 0x4, type 0
  1628.     DWORD m_rangedBudget; // +0x14, size 0x4, type 0
  1629.     DWORD m_clothShoulderArmor; // +0x18, size 0x4, type 0
  1630.     DWORD m_leatherShoulderArmor; // +0x1C, size 0x4, type 0
  1631.     DWORD m_mailShoulderArmor; // +0x20, size 0x4, type 0
  1632.     DWORD m_plateShoulderArmor; // +0x24, size 0x4, type 0
  1633.     DWORD m_weaponDPS1H; // +0x28, size 0x4, type 0
  1634.     DWORD m_weaponDPS2H; // +0x2C, size 0x4, type 0
  1635.     DWORD m_spellcasterDPS1H; // +0x30, size 0x4, type 0
  1636.     DWORD m_spellcasterDPS2H; // +0x34, size 0x4, type 0
  1637.     DWORD m_rangedDPS; // +0x38, size 0x4, type 0
  1638.     DWORD m_wandDPS; // +0x3C, size 0x4, type 0
  1639.     DWORD m_spellPower; // +0x40, size 0x4, type 0
  1640.     DWORD m_primaryBudget; // +0x44, size 0x4, type 0
  1641.     DWORD m_tertiaryBudget; // +0x48, size 0x4, type 0
  1642.     DWORD m_clothCloakArmor; // +0x4C, size 0x4, type 0
  1643.     DWORD m_clothChestArmor; // +0x50, size 0x4, type 0
  1644.     DWORD m_leatherChestArmor; // +0x54, size 0x4, type 0
  1645.     DWORD m_mailChestArmor; // +0x58, size 0x4, type 0
  1646.     DWORD m_plateChestArmor; // +0x5C, size 0x4, type 0
  1647. };
  1648.  
  1649. struct ScreenEffectRec // sizeof(0x28)
  1650. {
  1651.     DWORD m_id; // +0x0, size 0x4, type 0
  1652.     char* m_name; // +0x4, size 0x4, type 2
  1653.     DWORD m_effect; // +0x8, size 0x4, type 0
  1654.     DWORD m_param[4]; // +0xC, size 0x10, type 0
  1655.     DWORD m_lightParamsID; // +0x1C, size 0x4, type 0
  1656.     DWORD m_soundAmbienceID; // +0x20, size 0x4, type 0
  1657.     DWORD m_zoneMusicID; // +0x24, size 0x4, type 0
  1658. };
  1659.  
  1660. struct ServerMessagesRec // sizeof(0x8)
  1661. {
  1662.     DWORD m_ID; // +0x0, size 0x4, type 0
  1663.     char* m_Text_lang; // +0x4, size 0x4, type 2
  1664. };
  1665.  
  1666. struct SkillCostsDataRec // sizeof(0x14)
  1667. {
  1668.     DWORD m_ID; // +0x0, size 0x4, type 0
  1669.     DWORD m_skillCostsID; // +0x4, size 0x4, type 0
  1670.     DWORD m_cost[3]; // +0x8, size 0xC, type 0
  1671. };
  1672.  
  1673. struct SkillLineAbilityRec // sizeof(0x3C)
  1674. {
  1675.     DWORD m_ID; // +0x0, size 0x4, type 0
  1676.     DWORD m_skillLine; // +0x4, size 0x4, type 0
  1677.     DWORD m_spell; // +0x8, size 0x4, type 0
  1678.     DWORD m_raceMask; // +0xC, size 0x4, type 0
  1679.     DWORD m_classMask; // +0x10, size 0x4, type 0
  1680.     DWORD m_excludeRace; // +0x14, size 0x4, type 0
  1681.     DWORD m_excludeClass; // +0x18, size 0x4, type 0
  1682.     DWORD m_minSkillLineRank; // +0x1C, size 0x4, type 0
  1683.     DWORD m_supercededBySpell; // +0x20, size 0x4, type 0
  1684.     DWORD m_acquireMethod; // +0x24, size 0x4, type 0
  1685.     DWORD m_trivialSkillLineRankHigh; // +0x28, size 0x4, type 0
  1686.     DWORD m_trivialSkillLineRankLow; // +0x2C, size 0x4, type 0
  1687.     DWORD m_characterPoints[2]; // +0x30, size 0x8, type 0
  1688.     DWORD m_numSkillUps; // +0x38, size 0x4, type 0
  1689. };
  1690.  
  1691. struct SkillLineCategoryRec // sizeof(0xC)
  1692. {
  1693.     DWORD m_ID; // +0x0, size 0x4, type 0
  1694.     char* m_name_lang; // +0x4, size 0x4, type 2
  1695.     DWORD m_sortIndex; // +0x8, size 0x4, type 0
  1696. };
  1697.  
  1698. struct SkillLineRec // sizeof(0x20)
  1699. {
  1700.     DWORD m_ID; // +0x0, size 0x4, type 0
  1701.     DWORD m_categoryID; // +0x4, size 0x4, type 0
  1702.     DWORD m_skillCostsID; // +0x8, size 0x4, type 0
  1703.     char* m_displayName_lang; // +0xC, size 0x4, type 2
  1704.     char* m_description_lang; // +0x10, size 0x4, type 2
  1705.     DWORD m_spellIconID; // +0x14, size 0x4, type 0
  1706.     char* m_alternateVerb_lang; // +0x18, size 0x4, type 2
  1707.     DWORD m_canLink; // +0x1C, size 0x4, type 0
  1708. };
  1709.  
  1710. struct SkillRaceClassInfoRec // sizeof(0x20)
  1711. {
  1712.     DWORD m_ID; // +0x0, size 0x4, type 0
  1713.     DWORD m_skillID; // +0x4, size 0x4, type 0
  1714.     DWORD m_raceMask; // +0x8, size 0x4, type 0
  1715.     DWORD m_classMask; // +0xC, size 0x4, type 0
  1716.     DWORD m_flags; // +0x10, size 0x4, type 0
  1717.     DWORD m_minLevel; // +0x14, size 0x4, type 0
  1718.     DWORD m_skillTierID; // +0x18, size 0x4, type 0
  1719.     DWORD m_skillCostIndex; // +0x1C, size 0x4, type 0
  1720. };
  1721.  
  1722. struct SkillTiersRec // sizeof(0x84)
  1723. {
  1724.     DWORD m_ID; // +0x0, size 0x4, type 0
  1725.     DWORD m_cost[16]; // +0x4, size 0x40, type 0
  1726.     DWORD m_value[16]; // +0x44, size 0x40, type 0
  1727. };
  1728.  
  1729. struct SoundAmbienceRec // sizeof(0xC)
  1730. {
  1731.     DWORD m_ID; // +0x0, size 0x4, type 0
  1732.     DWORD m_AmbienceID[2]; // +0x4, size 0x8, type 0
  1733. };
  1734.  
  1735. struct SoundEntriesRec // sizeof(0x78)
  1736. {
  1737.     DWORD m_ID; // +0x0, size 0x4, type 0
  1738.     DWORD m_soundType; // +0x4, size 0x4, type 0
  1739.     char* m_name; // +0x8, size 0x4, type 2
  1740.     char* m_File[10]; // +0xC, size 0x28, type 2
  1741.     DWORD m_Freq[10]; // +0x34, size 0x28, type 0
  1742.     char* m_DirectoryBase; // +0x5C, size 0x4, type 2
  1743.     float m_volumeFloat; // +0x60, size 0x4, type 3
  1744.     DWORD m_flags; // +0x64, size 0x4, type 0
  1745.     float m_minDistance; // +0x68, size 0x4, type 3
  1746.     float m_distanceCutoff; // +0x6C, size 0x4, type 3
  1747.     DWORD m_EAXDef; // +0x70, size 0x4, type 0
  1748.     DWORD m_soundEntriesAdvancedID; // +0x74, size 0x4, type 0
  1749. };
  1750.  
  1751. struct SoundEmittersRec // sizeof(0x28)
  1752. {
  1753.     DWORD m_ID; // +0x0, size 0x4, type 0
  1754.     float m_positionX; // +0x4, size 0x4, type 3
  1755.     float m_positionY; // +0x8, size 0x4, type 3
  1756.     float m_positionZ; // +0xC, size 0x4, type 3
  1757.     float m_directionX; // +0x10, size 0x4, type 3
  1758.     float m_directionY; // +0x14, size 0x4, type 3
  1759.     float m_directionZ; // +0x18, size 0x4, type 3
  1760.     DWORD m_soundEntriesID; // +0x1C, size 0x4, type 0
  1761.     DWORD m_mapID; // +0x20, size 0x4, type 0
  1762.     char* m_name; // +0x24, size 0x4, type 2
  1763. };
  1764.  
  1765. struct SoundProviderPreferencesRec // sizeof(0x60)
  1766. {
  1767.     DWORD m_ID; // +0x0, size 0x4, type 0
  1768.     char* m_Description; // +0x4, size 0x4, type 2
  1769.     DWORD m_Flags; // +0x8, size 0x4, type 0
  1770.     DWORD m_EAXEnvironmentSelection; // +0xC, size 0x4, type 0
  1771.     float m_EAXDecayTime; // +0x10, size 0x4, type 3
  1772.     float m_EAX2EnvironmentSize; // +0x14, size 0x4, type 3
  1773.     float m_EAX2EnvironmentDiffusion; // +0x18, size 0x4, type 3
  1774.     DWORD m_EAX2Room; // +0x1C, size 0x4, type 0
  1775.     DWORD m_EAX2RoomHF; // +0x20, size 0x4, type 0
  1776.     float m_EAX2DecayHFRatio; // +0x24, size 0x4, type 3
  1777.     DWORD m_EAX2Reflections; // +0x28, size 0x4, type 0
  1778.     float m_EAX2ReflectionsDelay; // +0x2C, size 0x4, type 3
  1779.     DWORD m_EAX2Reverb; // +0x30, size 0x4, type 0
  1780.     float m_EAX2ReverbDelay; // +0x34, size 0x4, type 3
  1781.     float m_EAX2RoomRolloff; // +0x38, size 0x4, type 3
  1782.     float m_EAX2AirAbsorption; // +0x3C, size 0x4, type 3
  1783.     DWORD m_EAX3RoomLF; // +0x40, size 0x4, type 0
  1784.     float m_EAX3DecayLFRatio; // +0x44, size 0x4, type 3
  1785.     float m_EAX3EchoTime; // +0x48, size 0x4, type 3
  1786.     float m_EAX3EchoDepth; // +0x4C, size 0x4, type 3
  1787.     float m_EAX3ModulationTime; // +0x50, size 0x4, type 3
  1788.     float m_EAX3ModulationDepth; // +0x54, size 0x4, type 3
  1789.     float m_EAX3HFReference; // +0x58, size 0x4, type 3
  1790.     float m_EAX3LFReference; // +0x5C, size 0x4, type 3
  1791. };
  1792.  
  1793. struct SpamMessagesRec // sizeof(0x8)
  1794. {
  1795.     DWORD m_ID; // +0x0, size 0x4, type 0
  1796.     char* m_text; // +0x4, size 0x4, type 2
  1797. };
  1798.  
  1799. struct SpellCastTimesRec // sizeof(0x10)
  1800. {
  1801.     DWORD m_ID; // +0x0, size 0x4, type 0
  1802.     DWORD m_base; // +0x4, size 0x4, type 0
  1803.     DWORD m_perLevel; // +0x8, size 0x4, type 0
  1804.     DWORD m_minimum; // +0xC, size 0x4, type 0
  1805. };
  1806.  
  1807. struct SpellCategoryRec // sizeof(0x8)
  1808. {
  1809.     DWORD m_ID; // +0x0, size 0x4, type 0
  1810.     DWORD m_flags; // +0x4, size 0x4, type 0
  1811. };
  1812.  
  1813. struct SpellChainEffectsRec // sizeof(0xB4)
  1814. {
  1815.     DWORD m_ID; // +0x0, size 0x4, type 0
  1816.     float m_AvgSegLen; // +0x4, size 0x4, type 3
  1817.     float m_Width; // +0x8, size 0x4, type 3
  1818.     float m_NoiseScale; // +0xC, size 0x4, type 3
  1819.     float m_TexCoordScale; // +0x10, size 0x4, type 3
  1820.     DWORD m_SegDuration; // +0x14, size 0x4, type 0
  1821.     DWORD m_SegDelay; // +0x18, size 0x4, type 0
  1822.     char* m_Texture; // +0x1C, size 0x4, type 2
  1823.     DWORD m_Flags; // +0x20, size 0x4, type 0
  1824.     DWORD m_JointCount; // +0x24, size 0x4, type 0
  1825.     float m_JointOffsetRadius; // +0x28, size 0x4, type 3
  1826.     DWORD m_JointsPerMinorJoint; // +0x2C, size 0x4, type 0
  1827.     DWORD m_MinorJointsPerMajorJoint; // +0x30, size 0x4, type 0
  1828.     float m_MinorJointScale; // +0x34, size 0x4, type 3
  1829.     float m_MajorJointScale; // +0x38, size 0x4, type 3
  1830.     float m_JointMoveSpeed; // +0x3C, size 0x4, type 3
  1831.     float m_JointSmoothness; // +0x40, size 0x4, type 3
  1832.     float m_MinDurationBetweenJointJumps; // +0x44, size 0x4, type 3
  1833.     float m_MaxDurationBetweenJointJumps; // +0x48, size 0x4, type 3
  1834.     float m_WaveHeight; // +0x4C, size 0x4, type 3
  1835.     float m_WaveFreq; // +0x50, size 0x4, type 3
  1836.     float m_WaveSpeed; // +0x54, size 0x4, type 3
  1837.     float m_MinWaveAngle; // +0x58, size 0x4, type 3
  1838.     float m_MaxWaveAngle; // +0x5C, size 0x4, type 3
  1839.     float m_MinWaveSpin; // +0x60, size 0x4, type 3
  1840.     float m_MaxWaveSpin; // +0x64, size 0x4, type 3
  1841.     float m_ArcHeight; // +0x68, size 0x4, type 3
  1842.     float m_MinArcAngle; // +0x6C, size 0x4, type 3
  1843.     float m_MaxArcAngle; // +0x70, size 0x4, type 3
  1844.     float m_MinArcSpin; // +0x74, size 0x4, type 3
  1845.     float m_MaxArcSpin; // +0x78, size 0x4, type 3
  1846.     float m_DelayBetweenEffects; // +0x7C, size 0x4, type 3
  1847.     float m_MinFlickerOnDuration; // +0x80, size 0x4, type 3
  1848.     float m_MaxFlickerOnDuration; // +0x84, size 0x4, type 3
  1849.     float m_MinFlickerOffDuration; // +0x88, size 0x4, type 3
  1850.     float m_MaxFlickerOffDuration; // +0x8C, size 0x4, type 3
  1851.     float m_PulseSpeed; // +0x90, size 0x4, type 3
  1852.     float m_PulseOnLength; // +0x94, size 0x4, type 3
  1853.     float m_PulseFadeLength; // +0x98, size 0x4, type 3
  1854.     BYTE m_Alpha; // +0x9C, size 0x1, type 0
  1855.     BYTE m_Red; // +0x9D, size 0x1, type 0
  1856.     BYTE m_Green; // +0x9E, size 0x1, type 0
  1857.     BYTE m_Blue; // +0x9F, size 0x1, type 0
  1858.     BYTE m_BlendMode; // +0xA0, size 0x1, type 0
  1859.     char* m_Combo; // +0xA4, size 0x4, type 2
  1860.     DWORD m_RenderLayer; // +0xA8, size 0x4, type 0
  1861.     float m_TextureLength; // +0xAC, size 0x4, type 3
  1862.     float m_WavePhase; // +0xB0, size 0x4, type 3
  1863. };
  1864.  
  1865. struct SpellRec // sizeof(0x2BC)
  1866. {
  1867.     DWORD m_ID; // +0x0, size 0x4, type 0
  1868.     DWORD m_category; // +0x4, size 0x4, type 0
  1869.     DWORD m_dispelType; // +0x8, size 0x4, type 0
  1870.     DWORD m_mechanic; // +0xC, size 0x4, type 0
  1871.     DWORD m_attributes; // +0x10, size 0x4, type 0
  1872.     DWORD m_attributesEx; // +0x14, size 0x4, type 0
  1873.     DWORD m_attributesExB; // +0x18, size 0x4, type 0
  1874.     DWORD m_attributesExC; // +0x1C, size 0x4, type 0
  1875.     DWORD m_attributesExD; // +0x20, size 0x4, type 0
  1876.     DWORD m_attributesExE; // +0x24, size 0x4, type 0
  1877.     DWORD m_attributesExF; // +0x28, size 0x4, type 0
  1878.     DWORD m_attributesExG; // +0x2C, size 0x4, type 0
  1879.     DWORD m_attributesExH; // +0x30, size 0x4, type 0
  1880.     DWORD m_shapeshiftMask[2]; // +0x34, size 0x8, type 0
  1881.     DWORD m_shapeshiftExclude[2]; // +0x3C, size 0x8, type 0
  1882.     DWORD m_targets; // +0x44, size 0x4, type 0
  1883.     DWORD m_targetCreatureType; // +0x48, size 0x4, type 0
  1884.     DWORD m_requiresSpellFocus; // +0x4C, size 0x4, type 0
  1885.     DWORD m_facingCasterFlags; // +0x50, size 0x4, type 0
  1886.     DWORD m_casterAuraState; // +0x54, size 0x4, type 0
  1887.     DWORD m_targetAuraState; // +0x58, size 0x4, type 0
  1888.     DWORD m_excludeCasterAuraState; // +0x5C, size 0x4, type 0
  1889.     DWORD m_excludeTargetAuraState; // +0x60, size 0x4, type 0
  1890.     DWORD m_casterAuraSpell; // +0x64, size 0x4, type 0
  1891.     DWORD m_targetAuraSpell; // +0x68, size 0x4, type 0
  1892.     DWORD m_excludeCasterAuraSpell; // +0x6C, size 0x4, type 0
  1893.     DWORD m_excludeTargetAuraSpell; // +0x70, size 0x4, type 0
  1894.     DWORD m_castingTimeIndex; // +0x74, size 0x4, type 0
  1895.     DWORD m_recoveryTime; // +0x78, size 0x4, type 0
  1896.     DWORD m_categoryRecoveryTime; // +0x7C, size 0x4, type 0
  1897.     DWORD m_interruptFlags; // +0x80, size 0x4, type 0
  1898.     DWORD m_auraInterruptFlags[2]; // +0x84, size 0x8, type 0
  1899.     DWORD m_channelInterruptFlags[2]; // +0x8C, size 0x8, type 0
  1900.     DWORD m_procTypeMask; // +0x94, size 0x4, type 0
  1901.     DWORD m_procChance; // +0x98, size 0x4, type 0
  1902.     DWORD m_procCharges; // +0x9C, size 0x4, type 0
  1903.     DWORD m_maxLevel; // +0xA0, size 0x4, type 0
  1904.     DWORD m_baseLevel; // +0xA4, size 0x4, type 0
  1905.     DWORD m_spellLevel; // +0xA8, size 0x4, type 0
  1906.     DWORD m_durationIndex; // +0xAC, size 0x4, type 0
  1907.     DWORD m_powerType; // +0xB0, size 0x4, type 0
  1908.     DWORD m_manaCost; // +0xB4, size 0x4, type 0
  1909.     DWORD m_manaCostPerLevel; // +0xB8, size 0x4, type 0
  1910.     DWORD m_manaPerSecond; // +0xBC, size 0x4, type 0
  1911.     DWORD m_rangeIndex; // +0xC0, size 0x4, type 0
  1912.     float m_speed; // +0xC4, size 0x4, type 3
  1913.     DWORD m_modalNextSpell; // +0xC8, size 0x4, type 0
  1914.     DWORD m_cumulativeAura; // +0xCC, size 0x4, type 0
  1915.     DWORD m_totem[2]; // +0xD0, size 0x8, type 0
  1916.     DWORD m_reagent[8]; // +0xD8, size 0x20, type 0
  1917.     DWORD m_reagentCount[8]; // +0xF8, size 0x20, type 0
  1918.     DWORD m_equippedItemClass; // +0x118, size 0x4, type 0
  1919.     DWORD m_equippedItemSubclass; // +0x11C, size 0x4, type 0
  1920.     DWORD m_equippedItemInvTypes; // +0x120, size 0x4, type 0
  1921.     DWORD m_effect[3]; // +0x124, size 0xC, type 0
  1922.     DWORD m_effectDieSides[3]; // +0x130, size 0xC, type 0
  1923.     float m_effectRealPointsPerLevel[3]; // +0x13C, size 0xC, type 3
  1924.     DWORD m_effectBasePoints[3]; // +0x148, size 0xC, type 0
  1925.     DWORD m_effectMechanic[3]; // +0x154, size 0xC, type 0
  1926.     DWORD m_implicitTargetA[3]; // +0x160, size 0xC, type 0
  1927.     DWORD m_implicitTargetB[3]; // +0x16C, size 0xC, type 0
  1928.     DWORD m_effectRadiusIndex[3]; // +0x178, size 0xC, type 0
  1929.     DWORD m_effectRadiusIndexB[3]; // +0x184, size 0xC, type 0
  1930.     DWORD m_effectAura[3]; // +0x190, size 0xC, type 0
  1931.     DWORD m_effectAuraPeriod[3]; // +0x19C, size 0xC, type 0
  1932.     float m_effectAmplitude[3]; // +0x1A8, size 0xC, type 3
  1933.     DWORD m_effectChainTargets[3]; // +0x1B4, size 0xC, type 0
  1934.     DWORD m_effectItemType[3]; // +0x1C0, size 0xC, type 0
  1935.     DWORD m_effectMiscValue[3]; // +0x1CC, size 0xC, type 0
  1936.     DWORD m_effectMiscValueB[3]; // +0x1D8, size 0xC, type 0
  1937.     DWORD m_effectTriggerSpell[3]; // +0x1E4, size 0xC, type 0
  1938.     float m_effectPointsPerCombo[3]; // +0x1F0, size 0xC, type 3
  1939.     DWORD m_effectSpellClassMaskA[3]; // +0x1FC, size 0xC, type 0
  1940.     DWORD m_effectSpellClassMaskB[3]; // +0x208, size 0xC, type 0
  1941.     DWORD m_effectSpellClassMaskC[3]; // +0x214, size 0xC, type 0
  1942.     DWORD m_spellVisualID[2]; // +0x220, size 0x8, type 0
  1943.     DWORD m_spellIconID; // +0x228, size 0x4, type 0
  1944.     DWORD m_activeIconID; // +0x22C, size 0x4, type 0
  1945.     char* m_name_lang; // +0x230, size 0x4, type 2
  1946.     char* m_nameSubtext_lang; // +0x234, size 0x4, type 2
  1947.     char* m_description_lang; // +0x238, size 0x4, type 2
  1948.     char* m_auraDescription_lang; // +0x23C, size 0x4, type 2
  1949.     DWORD m_manaCostPct; // +0x240, size 0x4, type 0
  1950.     DWORD m_startRecoveryCategory; // +0x244, size 0x4, type 0
  1951.     DWORD m_startRecoveryTime; // +0x248, size 0x4, type 0
  1952.     DWORD m_maxTargetLevel; // +0x24C, size 0x4, type 0
  1953.     DWORD m_spellClassSet; // +0x250, size 0x4, type 0
  1954.     DWORD m_spellClassMask[3]; // +0x254, size 0xC, type 0
  1955.     DWORD m_maxTargets; // +0x260, size 0x4, type 0
  1956.     DWORD m_defenseType; // +0x264, size 0x4, type 0
  1957.     DWORD m_preventionType; // +0x268, size 0x4, type 0
  1958.     DWORD m_stanceBarOrder; // +0x26C, size 0x4, type 0
  1959.     float m_effectChainAmplitude[3]; // +0x270, size 0xC, type 3
  1960.     DWORD m_minFactionID; // +0x27C, size 0x4, type 0
  1961.     DWORD m_minReputation; // +0x280, size 0x4, type 0
  1962.     DWORD m_requiredAuraVision; // +0x284, size 0x4, type 0
  1963.     DWORD m_requiredTotemCategoryID[2]; // +0x288, size 0x8, type 0
  1964.     DWORD m_requiredAreasID; // +0x290, size 0x4, type 0
  1965.     DWORD m_schoolMask; // +0x294, size 0x4, type 0
  1966.     DWORD m_runeCostID; // +0x298, size 0x4, type 0
  1967.     DWORD m_spellMissileID; // +0x29C, size 0x4, type 0
  1968.     DWORD m_powerDisplayID; // +0x2A0, size 0x4, type 0
  1969.     float m_effectBonusCoefficient[3]; // +0x2A4, size 0xC, type 3
  1970.     DWORD m_descriptionVariablesID; // +0x2B0, size 0x4, type 0
  1971.     DWORD m_difficulty; // +0x2B4, size 0x4, type 0
  1972.     DWORD m_scalingID; // +0x2B8, size 0x4, type 0
  1973. };
  1974.  
  1975. struct SpellDescriptionVariablesRec // sizeof(0x8)
  1976. {
  1977.     DWORD m_ID; // +0x0, size 0x4, type 0
  1978.     char* m_variables; // +0x4, size 0x4, type 2
  1979. };
  1980.  
  1981. struct SpellDifficultyRec // sizeof(0x14)
  1982. {
  1983.     DWORD m_ID; // +0x0, size 0x4, type 0
  1984.     DWORD m_difficultySpellID[4]; // +0x4, size 0x10, type 0
  1985. };
  1986.  
  1987. struct SpellDispelTypeRec // sizeof(0x14)
  1988. {
  1989.     DWORD m_ID; // +0x0, size 0x4, type 0
  1990.     char* m_name_lang; // +0x4, size 0x4, type 2
  1991.     DWORD m_mask; // +0x8, size 0x4, type 0
  1992.     DWORD m_immunityPossible; // +0xC, size 0x4, type 0
  1993.     char* m_internalName; // +0x10, size 0x4, type 2
  1994. };
  1995.  
  1996. struct SpellDurationRec // sizeof(0x10)
  1997. {
  1998.     DWORD m_ID; // +0x0, size 0x4, type 0
  1999.     DWORD m_duration; // +0x4, size 0x4, type 0
  2000.     DWORD m_durationPerLevel; // +0x8, size 0x4, type 0
  2001.     DWORD m_maxDuration; // +0xC, size 0x4, type 0
  2002. };
  2003.  
  2004. struct SpellEffectCameraShakesRec // sizeof(0x10)
  2005. {
  2006.     DWORD m_ID; // +0x0, size 0x4, type 0
  2007.     DWORD m_CameraShake[3]; // +0x4, size 0xC, type 0
  2008. };
  2009.  
  2010. struct SpellFocusObjectRec // sizeof(0x8)
  2011. {
  2012.     DWORD m_ID; // +0x0, size 0x4, type 0
  2013.     char* m_name_lang; // +0x4, size 0x4, type 2
  2014. };
  2015.  
  2016. struct SpellIconRec // sizeof(0x8)
  2017. {
  2018.     DWORD m_ID; // +0x0, size 0x4, type 0
  2019.     char* m_textureFilename; // +0x4, size 0x4, type 2
  2020. };
  2021.  
  2022. struct SpellItemEnchantmentRec // sizeof(0x5C)
  2023. {
  2024.     DWORD m_ID; // +0x0, size 0x4, type 0
  2025.     DWORD m_charges; // +0x4, size 0x4, type 0
  2026.     DWORD m_effect[3]; // +0x8, size 0xC, type 0
  2027.     DWORD m_effectPointsMin[3]; // +0x14, size 0xC, type 0
  2028.     DWORD m_effectPointsMax[3]; // +0x20, size 0xC, type 0
  2029.     DWORD m_effectArg[3]; // +0x2C, size 0xC, type 0
  2030.     char* m_name_lang; // +0x38, size 0x4, type 2
  2031.     DWORD m_itemVisual; // +0x3C, size 0x4, type 0
  2032.     DWORD m_flags; // +0x40, size 0x4, type 0
  2033.     DWORD m_src_itemID; // +0x44, size 0x4, type 0
  2034.     DWORD m_condition_id; // +0x48, size 0x4, type 0
  2035.     DWORD m_requiredSkillID; // +0x4C, size 0x4, type 0
  2036.     DWORD m_requiredSkillRank; // +0x50, size 0x4, type 0
  2037.     DWORD m_minLevel; // +0x54, size 0x4, type 0
  2038.     DWORD m_itemLevel; // +0x58, size 0x4, type 0
  2039. };
  2040.  
  2041. struct SpellItemEnchantmentConditionRec // sizeof(0x48)
  2042. {
  2043.     DWORD m_ID; // +0x0, size 0x4, type 0
  2044.     DWORD m_lt_operandType[1]; // +0x4, size 0x5, type 0
  2045.     DWORD m_lt_operand[5]; // +0xC, size 0x14, type 0
  2046.     DWORD m_operator[1]; // +0x20, size 0x5, type 0
  2047.     DWORD m_rt_operandType[1]; // +0x25, size 0x5, type 0
  2048.     DWORD m_rt_operand[5]; // +0x2C, size 0x14, type 0
  2049.     DWORD m_logic[1]; // +0x40, size 0x5, type 0
  2050. };
  2051.  
  2052. struct SpellMechanicRec // sizeof(0x8)
  2053. {
  2054.     DWORD m_ID; // +0x0, size 0x4, type 0
  2055.     char* m_stateName_lang; // +0x4, size 0x4, type 2
  2056. };
  2057.  
  2058. struct SpellMissileRec // sizeof(0x3C)
  2059. {
  2060.     DWORD m_ID; // +0x0, size 0x4, type 0
  2061.     DWORD m_flags; // +0x4, size 0x4, type 0
  2062.     float m_defaultPitchMin; // +0x8, size 0x4, type 3
  2063.     float m_defaultPitchMax; // +0xC, size 0x4, type 3
  2064.     float m_defaultSpeedMin; // +0x10, size 0x4, type 3
  2065.     float m_defaultSpeedMax; // +0x14, size 0x4, type 3
  2066.     float m_randomizeFacingMin; // +0x18, size 0x4, type 3
  2067.     float m_randomizeFacingMax; // +0x1C, size 0x4, type 3
  2068.     float m_randomizePitchMin; // +0x20, size 0x4, type 3
  2069.     float m_randomizePitchMax; // +0x24, size 0x4, type 3
  2070.     float m_randomizeSpeedMin; // +0x28, size 0x4, type 3
  2071.     float m_randomizeSpeedMax; // +0x2C, size 0x4, type 3
  2072.     float m_gravity; // +0x30, size 0x4, type 3
  2073.     float m_maxDuration; // +0x34, size 0x4, type 3
  2074.     float m_collisionRadius; // +0x38, size 0x4, type 3
  2075. };
  2076.  
  2077. struct SpellMissileMotionRec // sizeof(0x14)
  2078. {
  2079.     DWORD m_ID; // +0x0, size 0x4, type 0
  2080.     char* m_name; // +0x4, size 0x4, type 2
  2081.     char* m_scriptBody; // +0x8, size 0x4, type 2
  2082.     DWORD m_flags; // +0xC, size 0x4, type 0
  2083.     DWORD m_missileCount; // +0x10, size 0x4, type 0
  2084. };
  2085.  
  2086. struct SpellRadiusRec // sizeof(0x10)
  2087. {
  2088.     DWORD m_ID; // +0x0, size 0x4, type 0
  2089.     float m_radius; // +0x4, size 0x4, type 3
  2090.     float m_radiusPerLevel; // +0x8, size 0x4, type 3
  2091.     float m_radiusMax; // +0xC, size 0x4, type 3
  2092. };
  2093.  
  2094. struct SpellRangeRec // sizeof(0x20)
  2095. {
  2096.     DWORD m_ID; // +0x0, size 0x4, type 0
  2097.     float m_rangeMin[2]; // +0x4, size 0x8, type 3
  2098.     float m_rangeMax[2]; // +0xC, size 0x8, type 3
  2099.     DWORD m_flags; // +0x14, size 0x4, type 0
  2100.     char* m_displayName_lang; // +0x18, size 0x4, type 2
  2101.     char* m_displayNameShort_lang; // +0x1C, size 0x4, type 2
  2102. };
  2103.  
  2104. struct SpellRuneCostRec // sizeof(0x14)
  2105. {
  2106.     DWORD m_ID; // +0x0, size 0x4, type 0
  2107.     DWORD m_blood; // +0x4, size 0x4, type 0
  2108.     DWORD m_unholy; // +0x8, size 0x4, type 0
  2109.     DWORD m_frost; // +0xC, size 0x4, type 0
  2110.     DWORD m_runicPower; // +0x10, size 0x4, type 0
  2111. };
  2112.  
  2113. struct SpellScalingRec // sizeof(0x38)
  2114. {
  2115.     DWORD m_ID; // +0x0, size 0x4, type 0
  2116.     DWORD m_castTimeMin; // +0x4, size 0x4, type 0
  2117.     DWORD m_castTimeMax; // +0x8, size 0x4, type 0
  2118.     DWORD m_castTimeMaxLevel; // +0xC, size 0x4, type 0
  2119.     DWORD m_class; // +0x10, size 0x4, type 0
  2120.     float m_coefficient[3]; // +0x14, size 0xC, type 3
  2121.     float m_variance[3]; // +0x20, size 0xC, type 3
  2122.     float m_comboPointsCoefficient[3]; // +0x2C, size 0xC, type 3
  2123. };
  2124.  
  2125. struct SpellShapeshiftFormRec // sizeof(0x4C)
  2126. {
  2127.     DWORD m_ID; // +0x0, size 0x4, type 0
  2128.     DWORD m_bonusActionBar; // +0x4, size 0x4, type 0
  2129.     char* m_name_lang; // +0x8, size 0x4, type 2
  2130.     DWORD m_flags; // +0xC, size 0x4, type 0
  2131.     DWORD m_creatureType; // +0x10, size 0x4, type 0
  2132.     DWORD m_attackIconID; // +0x14, size 0x4, type 0
  2133.     DWORD m_combatRoundTime; // +0x18, size 0x4, type 0
  2134.     DWORD m_creatureDisplayID[4]; // +0x1C, size 0x10, type 0
  2135.     DWORD m_presetSpellID[8]; // +0x2C, size 0x20, type 0
  2136. };
  2137.  
  2138. struct SpellVisualRec // sizeof(0x80)
  2139. {
  2140.     DWORD m_ID; // +0x0, size 0x4, type 0
  2141.     DWORD m_precastKit; // +0x4, size 0x4, type 0
  2142.     DWORD m_castKit; // +0x8, size 0x4, type 0
  2143.     DWORD m_impactKit; // +0xC, size 0x4, type 0
  2144.     DWORD m_stateKit; // +0x10, size 0x4, type 0
  2145.     DWORD m_stateDoneKit; // +0x14, size 0x4, type 0
  2146.     DWORD m_channelKit; // +0x18, size 0x4, type 0
  2147.     DWORD m_hasMissile; // +0x1C, size 0x4, type 0
  2148.     DWORD m_missileModel; // +0x20, size 0x4, type 0
  2149.     DWORD m_missilePathType; // +0x24, size 0x4, type 0
  2150.     DWORD m_missileDestinationAttachment; // +0x28, size 0x4, type 0
  2151.     DWORD m_missileSound; // +0x2C, size 0x4, type 0
  2152.     DWORD m_animEventSoundID; // +0x30, size 0x4, type 0
  2153.     DWORD m_flags; // +0x34, size 0x4, type 0
  2154.     DWORD m_casterImpactKit; // +0x38, size 0x4, type 0
  2155.     DWORD m_targetImpactKit; // +0x3C, size 0x4, type 0
  2156.     DWORD m_missileAttachment; // +0x40, size 0x4, type 0
  2157.     DWORD m_missileFollowGroundHeight; // +0x44, size 0x4, type 0
  2158.     DWORD m_missileFollowGroundDropSpeed; // +0x48, size 0x4, type 0
  2159.     DWORD m_missileFollowGroundApproach; // +0x4C, size 0x4, type 0
  2160.     DWORD m_missileFollowGroundFlags; // +0x50, size 0x4, type 0
  2161.     DWORD m_missileMotion; // +0x54, size 0x4, type 0
  2162.     DWORD m_missileTargetingKit; // +0x58, size 0x4, type 0
  2163.     DWORD m_instantAreaKit; // +0x5C, size 0x4, type 0
  2164.     DWORD m_impactAreaKit; // +0x60, size 0x4, type 0
  2165.     DWORD m_persistentAreaKit; // +0x64, size 0x4, type 0
  2166.     float m_missileCastOffsetX; // +0x68, size 0x4, type 3
  2167.     float m_missileCastOffsetY; // +0x6C, size 0x4, type 3
  2168.     float m_missileCastOffsetZ; // +0x70, size 0x4, type 3
  2169.     float m_missileImpactOffsetX; // +0x74, size 0x4, type 3
  2170.     float m_missileImpactOffsetY; // +0x78, size 0x4, type 3
  2171.     float m_missileImpactOffsetZ; // +0x7C, size 0x4, type 3
  2172. };
  2173.  
  2174. struct SpellVisualEffectNameRec // sizeof(0x1C)
  2175. {
  2176.     DWORD m_ID; // +0x0, size 0x4, type 0
  2177.     char* m_name; // +0x4, size 0x4, type 2
  2178.     char* m_fileName; // +0x8, size 0x4, type 2
  2179.     float m_areaEffectSize; // +0xC, size 0x4, type 3
  2180.     float m_scale; // +0x10, size 0x4, type 3
  2181.     float m_minAllowedScale; // +0x14, size 0x4, type 3
  2182.     float m_maxAllowedScale; // +0x18, size 0x4, type 3
  2183. };
  2184.  
  2185. struct SpellVisualKitRec // sizeof(0x9C)
  2186. {
  2187.     DWORD m_ID; // +0x0, size 0x4, type 0
  2188.     DWORD m_startAnimID; // +0x4, size 0x4, type 0
  2189.     DWORD m_animID; // +0x8, size 0x4, type 0
  2190.     DWORD m_animKitID; // +0xC, size 0x4, type 0
  2191.     DWORD m_headEffect; // +0x10, size 0x4, type 0
  2192.     DWORD m_chestEffect; // +0x14, size 0x4, type 0
  2193.     DWORD m_baseEffect; // +0x18, size 0x4, type 0
  2194.     DWORD m_leftHandEffect; // +0x1C, size 0x4, type 0
  2195.     DWORD m_rightHandEffect; // +0x20, size 0x4, type 0
  2196.     DWORD m_breathEffect; // +0x24, size 0x4, type 0
  2197.     DWORD m_leftWeaponEffect; // +0x28, size 0x4, type 0
  2198.     DWORD m_rightWeaponEffect; // +0x2C, size 0x4, type 0
  2199.     DWORD m_specialEffect[3]; // +0x30, size 0xC, type 0
  2200.     DWORD m_worldEffect; // +0x3C, size 0x4, type 0
  2201.     DWORD m_soundID; // +0x40, size 0x4, type 0
  2202.     DWORD m_shakeID; // +0x44, size 0x4, type 0
  2203.     DWORD m_charProc[4]; // +0x48, size 0x10, type 0
  2204.     float m_charParamZero[4]; // +0x58, size 0x10, type 3
  2205.     float m_charParamOne[4]; // +0x68, size 0x10, type 3
  2206.     float m_charParamTwo[4]; // +0x78, size 0x10, type 3
  2207.     float m_charParamThree[4]; // +0x88, size 0x10, type 3
  2208.     DWORD m_flags; // +0x98, size 0x4, type 0
  2209. };
  2210.  
  2211. struct SpellVisualKitAreaModelRec // sizeof(0xC)
  2212. {
  2213.     DWORD m_ID; // +0x0, size 0x4, type 0
  2214.     char* m_name; // +0x4, size 0x4, type 2
  2215.     DWORD m_enumID; // +0x8, size 0x4, type 0
  2216. };
  2217.  
  2218. struct SpellVisualKitModelAttachRec // sizeof(0x28)
  2219. {
  2220.     DWORD m_ID; // +0x0, size 0x4, type 0
  2221.     DWORD m_parentSpellVisualKitID; // +0x4, size 0x4, type 0
  2222.     DWORD m_spellVisualEffectNameID; // +0x8, size 0x4, type 0
  2223.     DWORD m_attachmentID; // +0xC, size 0x4, type 0
  2224.     float m_offsetX; // +0x10, size 0x4, type 3
  2225.     float m_offsetY; // +0x14, size 0x4, type 3
  2226.     float m_offsetZ; // +0x18, size 0x4, type 3
  2227.     float m_yaw; // +0x1C, size 0x4, type 3
  2228.     float m_pitch; // +0x20, size 0x4, type 3
  2229.     float m_roll; // +0x24, size 0x4, type 3
  2230. };
  2231.  
  2232. struct StableSlotPricesRec // sizeof(0x8)
  2233. {
  2234.     DWORD m_ID; // +0x0, size 0x4, type 0
  2235.     DWORD m_cost; // +0x4, size 0x4, type 0
  2236. };
  2237.  
  2238. struct StationeryRec // sizeof(0x10)
  2239. {
  2240.     DWORD m_ID; // +0x0, size 0x4, type 0
  2241.     DWORD m_itemID; // +0x4, size 0x4, type 0
  2242.     char* m_texture; // +0x8, size 0x4, type 2
  2243.     DWORD m_flags; // +0xC, size 0x4, type 0
  2244. };
  2245.  
  2246. struct StringLookupsRec // sizeof(0x8)
  2247. {
  2248.     DWORD m_ID; // +0x0, size 0x4, type 0
  2249.     char* m_String; // +0x4, size 0x4, type 2
  2250. };
  2251.  
  2252. struct SummonPropertiesRec // sizeof(0x18)
  2253. {
  2254.     DWORD m_id; // +0x0, size 0x4, type 0
  2255.     DWORD m_control; // +0x4, size 0x4, type 0
  2256.     DWORD m_faction; // +0x8, size 0x4, type 0
  2257.     DWORD m_title; // +0xC, size 0x4, type 0
  2258.     DWORD m_slot; // +0x10, size 0x4, type 0
  2259.     DWORD m_flags; // +0x14, size 0x4, type 0
  2260. };
  2261.  
  2262. struct TalentRec // sizeof(0x5C)
  2263. {
  2264.     DWORD m_ID; // +0x0, size 0x4, type 0
  2265.     DWORD m_tabID; // +0x4, size 0x4, type 0
  2266.     DWORD m_tierID; // +0x8, size 0x4, type 0
  2267.     DWORD m_columnIndex; // +0xC, size 0x4, type 0
  2268.     DWORD m_spellRank[9]; // +0x10, size 0x24, type 0
  2269.     DWORD m_prereqTalent[3]; // +0x34, size 0xC, type 0
  2270.     DWORD m_prereqRank[3]; // +0x40, size 0xC, type 0
  2271.     DWORD m_flags; // +0x4C, size 0x4, type 0
  2272.     DWORD m_requiredSpellID; // +0x50, size 0x4, type 0
  2273.     DWORD m_categoryMask[2]; // +0x54, size 0x8, type 0
  2274. };
  2275.  
  2276. struct TalentTabRec // sizeof(0x20)
  2277. {
  2278.     DWORD m_ID; // +0x0, size 0x4, type 0
  2279.     char* m_name_lang; // +0x4, size 0x4, type 2
  2280.     DWORD m_spellIconID; // +0x8, size 0x4, type 0
  2281.     DWORD m_raceMask; // +0xC, size 0x4, type 0
  2282.     DWORD m_classMask; // +0x10, size 0x4, type 0
  2283.     DWORD m_petTalentMask; // +0x14, size 0x4, type 0
  2284.     DWORD m_orderIndex; // +0x18, size 0x4, type 0
  2285.     char* m_backgroundFile; // +0x1C, size 0x4, type 2
  2286. };
  2287.  
  2288. struct TaxiNodesRec // sizeof(0x20)
  2289. {
  2290.     DWORD m_ID; // +0x0, size 0x4, type 0
  2291.     DWORD m_ContinentID; // +0x4, size 0x4, type 0
  2292.     float m_X; // +0x8, size 0x4, type 3
  2293.     float m_Y; // +0xC, size 0x4, type 3
  2294.     float m_Z; // +0x10, size 0x4, type 3
  2295.     char* m_Name_lang; // +0x14, size 0x4, type 2
  2296.     DWORD m_MountCreatureID[2]; // +0x18, size 0x8, type 0
  2297. };
  2298.  
  2299. struct TaxiPathNodeRec // sizeof(0x2C)
  2300. {
  2301.     DWORD m_ID; // +0x0, size 0x4, type 0
  2302.     DWORD m_PathID; // +0x4, size 0x4, type 0
  2303.     DWORD m_NodeIndex; // +0x8, size 0x4, type 0
  2304.     DWORD m_ContinentID; // +0xC, size 0x4, type 0
  2305.     float m_LocX; // +0x10, size 0x4, type 3
  2306.     float m_LocY; // +0x14, size 0x4, type 3
  2307.     float m_LocZ; // +0x18, size 0x4, type 3
  2308.     DWORD m_flags; // +0x1C, size 0x4, type 0
  2309.     DWORD m_delay; // +0x20, size 0x4, type 0
  2310.     DWORD m_arrivalEventID; // +0x24, size 0x4, type 0
  2311.     DWORD m_departureEventID; // +0x28, size 0x4, type 0
  2312. };
  2313.  
  2314. struct TaxiPathRec // sizeof(0x10)
  2315. {
  2316.     DWORD m_ID; // +0x0, size 0x4, type 0
  2317.     DWORD m_FromTaxiNode; // +0x4, size 0x4, type 0
  2318.     DWORD m_ToTaxiNode; // +0x8, size 0x4, type 0
  2319.     DWORD m_Cost; // +0xC, size 0x4, type 0
  2320. };
  2321.  
  2322. struct TeamContributionPointsRec // sizeof(0x8)
  2323. {
  2324.     DWORD m_ID; // +0x0, size 0x4, type 0
  2325.     float m_data; // +0x4, size 0x4, type 3
  2326. };
  2327.  
  2328. struct TerrainTypeRec // sizeof(0x1C)
  2329. {
  2330.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  2331.     DWORD m_TerrainID; // +0x4, size 0x4, type 0
  2332.     char* m_TerrainDesc; // +0x8, size 0x4, type 2
  2333.     DWORD m_FootstepSprayRun; // +0xC, size 0x4, type 0
  2334.     DWORD m_FootstepSprayWalk; // +0x10, size 0x4, type 0
  2335.     DWORD m_SoundID; // +0x14, size 0x4, type 0
  2336.     DWORD m_Flags; // +0x18, size 0x4, type 0
  2337. };
  2338.  
  2339. struct TerrainTypeSoundsRec // sizeof(0x4)
  2340. {
  2341.     DWORD m_ID; // +0x0, size 0x4, type 0
  2342. };
  2343.  
  2344. struct TotemCategoryRec // sizeof(0x10)
  2345. {
  2346.     DWORD m_ID; // +0x0, size 0x4, type 0
  2347.     char* m_name_lang; // +0x4, size 0x4, type 2
  2348.     DWORD m_totemCategoryType; // +0x8, size 0x4, type 0
  2349.     DWORD m_totemCategoryMask; // +0xC, size 0x4, type 0
  2350. };
  2351.  
  2352. struct TransportAnimationRec // sizeof(0x1C)
  2353. {
  2354.     DWORD m_ID; // +0x0, size 0x4, type 0
  2355.     DWORD m_TransportID; // +0x4, size 0x4, type 0
  2356.     DWORD m_TimeIndex; // +0x8, size 0x4, type 0
  2357.     float m_PosX; // +0xC, size 0x4, type 3
  2358.     float m_PosY; // +0x10, size 0x4, type 3
  2359.     float m_PosZ; // +0x14, size 0x4, type 3
  2360.     DWORD m_SequenceID; // +0x18, size 0x4, type 0
  2361. };
  2362.  
  2363. struct TransportPhysicsRec // sizeof(0x2C)
  2364. {
  2365.     DWORD m_ID; // +0x0, size 0x4, type 0
  2366.     float m_waveAmp; // +0x4, size 0x4, type 3
  2367.     float m_waveTimeScale; // +0x8, size 0x4, type 3
  2368.     float m_rollAmp; // +0xC, size 0x4, type 3
  2369.     float m_rollTimeScale; // +0x10, size 0x4, type 3
  2370.     float m_pitchAmp; // +0x14, size 0x4, type 3
  2371.     float m_pitchTimeScale; // +0x18, size 0x4, type 3
  2372.     float m_maxBank; // +0x1C, size 0x4, type 3
  2373.     float m_maxBankTurnSpeed; // +0x20, size 0x4, type 3
  2374.     float m_speedDampThresh; // +0x24, size 0x4, type 3
  2375.     float m_speedDamp; // +0x28, size 0x4, type 3
  2376. };
  2377.  
  2378. struct TransportRotationRec // sizeof(0x1C)
  2379. {
  2380.     DWORD m_ID; // +0x0, size 0x4, type 0
  2381.     DWORD m_GameObjectsID; // +0x4, size 0x4, type 0
  2382.     DWORD m_TimeIndex; // +0x8, size 0x4, type 0
  2383.     float m_RotX; // +0xC, size 0x4, type 3
  2384.     float m_RotY; // +0x10, size 0x4, type 3
  2385.     float m_RotZ; // +0x14, size 0x4, type 3
  2386.     float m_RotW; // +0x18, size 0x4, type 3
  2387. };
  2388.  
  2389. struct UnitBloodLevelsRec // sizeof(0x10)
  2390. {
  2391.     DWORD m_ID; // +0x0, size 0x4, type 0
  2392.     DWORD m_Violencelevel[3]; // +0x4, size 0xC, type 0
  2393. };
  2394.  
  2395. struct UnitBloodRec // sizeof(0x28)
  2396. {
  2397.     DWORD m_ID; // +0x0, size 0x4, type 0
  2398.     DWORD m_CombatBloodSpurtFront[2]; // +0x4, size 0x8, type 0
  2399.     DWORD m_CombatBloodSpurtBack[2]; // +0xC, size 0x8, type 0
  2400.     char* m_GroundBlood[5]; // +0x14, size 0x14, type 2
  2401. };
  2402.  
  2403. struct VehicleRec // sizeof(0xA0)
  2404. {
  2405.     DWORD m_ID; // +0x0, size 0x4, type 0
  2406.     DWORD m_flags; // +0x4, size 0x4, type 0
  2407.     float m_turnSpeed; // +0x8, size 0x4, type 3
  2408.     float m_pitchSpeed; // +0xC, size 0x4, type 3
  2409.     float m_pitchMin; // +0x10, size 0x4, type 3
  2410.     float m_pitchMax; // +0x14, size 0x4, type 3
  2411.     DWORD m_seatID[8]; // +0x18, size 0x20, type 0
  2412.     float m_mouseLookOffsetPitch; // +0x38, size 0x4, type 3
  2413.     float m_cameraFadeDistScalarMin; // +0x3C, size 0x4, type 3
  2414.     float m_cameraFadeDistScalarMax; // +0x40, size 0x4, type 3
  2415.     float m_cameraPitchOffset; // +0x44, size 0x4, type 3
  2416.     float m_facingLimitRight; // +0x48, size 0x4, type 3
  2417.     float m_facingLimitLeft; // +0x4C, size 0x4, type 3
  2418.     float m_msslTrgtTurnLingering; // +0x50, size 0x4, type 3
  2419.     float m_msslTrgtPitchLingering; // +0x54, size 0x4, type 3
  2420.     float m_msslTrgtMouseLingering; // +0x58, size 0x4, type 3
  2421.     float m_msslTrgtEndOpacity; // +0x5C, size 0x4, type 3
  2422.     float m_msslTrgtArcSpeed; // +0x60, size 0x4, type 3
  2423.     float m_msslTrgtArcRepeat; // +0x64, size 0x4, type 3
  2424.     float m_msslTrgtArcWidth; // +0x68, size 0x4, type 3
  2425.     float m_msslTrgtImpactRadius[2]; // +0x6C, size 0x8, type 3
  2426.     char* m_msslTrgtArcTexture; // +0x74, size 0x4, type 2
  2427.     char* m_msslTrgtImpactTexture; // +0x78, size 0x4, type 2
  2428.     char* m_msslTrgtImpactModel[2]; // +0x7C, size 0x8, type 2
  2429.     float m_cameraYawOffset; // +0x84, size 0x4, type 3
  2430.     DWORD m_uiLocomotionType; // +0x88, size 0x4, type 0
  2431.     float m_msslTrgtImpactTexRadius; // +0x8C, size 0x4, type 3
  2432.     DWORD m_vehicleUIIndicatorID; // +0x90, size 0x4, type 0
  2433.     DWORD m_powerDisplayID[3]; // +0x94, size 0xC, type 0
  2434. };
  2435.  
  2436. struct VehicleSeatRec // sizeof(0x100)
  2437. {
  2438.     DWORD m_ID; // +0x0, size 0x4, type 0
  2439.     DWORD m_flags; // +0x4, size 0x4, type 0
  2440.     DWORD m_attachmentID; // +0x8, size 0x4, type 0
  2441.     float m_attachmentOffsetX; // +0xC, size 0x4, type 3
  2442.     float m_attachmentOffsetY; // +0x10, size 0x4, type 3
  2443.     float m_attachmentOffsetZ; // +0x14, size 0x4, type 3
  2444.     float m_enterPreDelay; // +0x18, size 0x4, type 3
  2445.     float m_enterSpeed; // +0x1C, size 0x4, type 3
  2446.     float m_enterGravity; // +0x20, size 0x4, type 3
  2447.     float m_enterMinDuration; // +0x24, size 0x4, type 3
  2448.     float m_enterMaxDuration; // +0x28, size 0x4, type 3
  2449.     float m_enterMinArcHeight; // +0x2C, size 0x4, type 3
  2450.     float m_enterMaxArcHeight; // +0x30, size 0x4, type 3
  2451.     DWORD m_enterAnimStart; // +0x34, size 0x4, type 0
  2452.     DWORD m_enterAnimLoop; // +0x38, size 0x4, type 0
  2453.     DWORD m_rideAnimStart; // +0x3C, size 0x4, type 0
  2454.     DWORD m_rideAnimLoop; // +0x40, size 0x4, type 0
  2455.     DWORD m_rideUpperAnimStart; // +0x44, size 0x4, type 0
  2456.     DWORD m_rideUpperAnimLoop; // +0x48, size 0x4, type 0
  2457.     float m_exitPreDelay; // +0x4C, size 0x4, type 3
  2458.     float m_exitSpeed; // +0x50, size 0x4, type 3
  2459.     float m_exitGravity; // +0x54, size 0x4, type 3
  2460.     float m_exitMinDuration; // +0x58, size 0x4, type 3
  2461.     float m_exitMaxDuration; // +0x5C, size 0x4, type 3
  2462.     float m_exitMinArcHeight; // +0x60, size 0x4, type 3
  2463.     float m_exitMaxArcHeight; // +0x64, size 0x4, type 3
  2464.     DWORD m_exitAnimStart; // +0x68, size 0x4, type 0
  2465.     DWORD m_exitAnimLoop; // +0x6C, size 0x4, type 0
  2466.     DWORD m_exitAnimEnd; // +0x70, size 0x4, type 0
  2467.     float m_passengerYaw; // +0x74, size 0x4, type 3
  2468.     float m_passengerPitch; // +0x78, size 0x4, type 3
  2469.     float m_passengerRoll; // +0x7C, size 0x4, type 3
  2470.     DWORD m_passengerAttachmentID; // +0x80, size 0x4, type 0
  2471.     DWORD m_vehicleEnterAnim; // +0x84, size 0x4, type 0
  2472.     DWORD m_vehicleExitAnim; // +0x88, size 0x4, type 0
  2473.     DWORD m_vehicleRideAnimLoop; // +0x8C, size 0x4, type 0
  2474.     DWORD m_vehicleEnterAnimBone; // +0x90, size 0x4, type 0
  2475.     DWORD m_vehicleExitAnimBone; // +0x94, size 0x4, type 0
  2476.     DWORD m_vehicleRideAnimLoopBone; // +0x98, size 0x4, type 0
  2477.     float m_vehicleEnterAnimDelay; // +0x9C, size 0x4, type 3
  2478.     float m_vehicleExitAnimDelay; // +0xA0, size 0x4, type 3
  2479.     DWORD m_vehicleAbilityDisplay; // +0xA4, size 0x4, type 0
  2480.     DWORD m_enterUISoundID; // +0xA8, size 0x4, type 0
  2481.     DWORD m_exitUISoundID; // +0xAC, size 0x4, type 0
  2482.     DWORD m_uiSkin; // +0xB0, size 0x4, type 0
  2483.     DWORD m_flagsB; // +0xB4, size 0x4, type 0
  2484.     float m_cameraEnteringDelay; // +0xB8, size 0x4, type 3
  2485.     float m_cameraEnteringDuration; // +0xBC, size 0x4, type 3
  2486.     float m_cameraExitingDelay; // +0xC0, size 0x4, type 3
  2487.     float m_cameraExitingDuration; // +0xC4, size 0x4, type 3
  2488.     float m_cameraOffsetX; // +0xC8, size 0x4, type 3
  2489.     float m_cameraOffsetY; // +0xCC, size 0x4, type 3
  2490.     float m_cameraOffsetZ; // +0xD0, size 0x4, type 3
  2491.     float m_cameraPosChaseRate; // +0xD4, size 0x4, type 3
  2492.     float m_cameraFacingChaseRate; // +0xD8, size 0x4, type 3
  2493.     float m_cameraEnteringZoom; // +0xDC, size 0x4, type 3
  2494.     float m_cameraSeatZoomMin; // +0xE0, size 0x4, type 3
  2495.     float m_cameraSeatZoomMax; // +0xE4, size 0x4, type 3
  2496.     DWORD m_enterAnimKitID; // +0xE8, size 0x4, type 0
  2497.     DWORD m_rideAnimKitID; // +0xEC, size 0x4, type 0
  2498.     DWORD m_exitAnimKitID; // +0xF0, size 0x4, type 0
  2499.     DWORD m_vehicleEnterAnimKitID; // +0xF4, size 0x4, type 0
  2500.     DWORD m_vehicleRideAnimKitID; // +0xF8, size 0x4, type 0
  2501.     DWORD m_vehicleExitAnimKitID; // +0xFC, size 0x4, type 0
  2502. };
  2503.  
  2504. struct VehicleUIIndicatorRec // sizeof(0x8)
  2505. {
  2506.     DWORD m_ID; // +0x0, size 0x4, type 0
  2507.     char* m_backgroundTexture; // +0x4, size 0x4, type 2
  2508. };
  2509.  
  2510. struct VehicleUIIndSeatRec // sizeof(0x14)
  2511. {
  2512.     DWORD m_ID; // +0x0, size 0x4, type 0
  2513.     DWORD m_vehicleUIIndicatorID; // +0x4, size 0x4, type 0
  2514.     DWORD m_virtualSeatIndex; // +0x8, size 0x4, type 0
  2515.     float m_xPos; // +0xC, size 0x4, type 3
  2516.     float m_yPos; // +0x10, size 0x4, type 3
  2517. };
  2518.  
  2519. struct VocalUISoundsRec // sizeof(0x1C)
  2520. {
  2521.     DWORD m_ID; // +0x0, size 0x4, type 0
  2522.     DWORD m_vocalUIEnum; // +0x4, size 0x4, type 0
  2523.     DWORD m_raceID; // +0x8, size 0x4, type 0
  2524.     DWORD m_NormalSoundID[2]; // +0xC, size 0x8, type 0
  2525.     DWORD m_PissedSoundID[2]; // +0x14, size 0x8, type 0
  2526. };
  2527.  
  2528. struct WMOAreaTableRec // sizeof(0x30)
  2529. {
  2530.     DWORD m_ID; // +0x0, size 0x4, type 0
  2531.     DWORD m_WMOID; // +0x4, size 0x4, type 0
  2532.     DWORD m_NameSetID; // +0x8, size 0x4, type 0
  2533.     DWORD m_WMOGroupID; // +0xC, size 0x4, type 0
  2534.     DWORD m_SoundProviderPref; // +0x10, size 0x4, type 0
  2535.     DWORD m_SoundProviderPrefUnderwater; // +0x14, size 0x4, type 0
  2536.     DWORD m_AmbienceID; // +0x18, size 0x4, type 0
  2537.     DWORD m_ZoneMusic; // +0x1C, size 0x4, type 0
  2538.     DWORD m_IntroSound; // +0x20, size 0x4, type 0
  2539.     DWORD m_flags; // +0x24, size 0x4, type 0
  2540.     DWORD m_AreaTableID; // +0x28, size 0x4, type 0
  2541.     char* m_AreaName_lang; // +0x2C, size 0x4, type 2
  2542. };
  2543.  
  2544. struct WeaponImpactSoundsRec // sizeof(0x5C)
  2545. {
  2546.     DWORD m_ID; // +0x0, size 0x4, type 0
  2547.     DWORD m_WeaponSubClassID; // +0x4, size 0x4, type 0
  2548.     DWORD m_ParrySoundType; // +0x8, size 0x4, type 0
  2549.     DWORD m_impactSoundID[10]; // +0xC, size 0x28, type 0
  2550.     DWORD m_critImpactSoundID[10]; // +0x34, size 0x28, type 0
  2551. };
  2552.  
  2553. struct WeaponSwingSounds2Rec // sizeof(0x10)
  2554. {
  2555.     DWORD m_ID; // +0x0, size 0x4, type 0
  2556.     DWORD m_SwingType; // +0x4, size 0x4, type 0
  2557.     DWORD m_Crit; // +0x8, size 0x4, type 0
  2558.     DWORD m_SoundID; // +0xC, size 0x4, type 0
  2559. };
  2560.  
  2561. struct WeatherRec // sizeof(0x20)
  2562. {
  2563.     DWORD m_ID; // +0x0, size 0x4, type 0
  2564.     DWORD m_ambienceID; // +0x4, size 0x4, type 0
  2565.     DWORD m_effectType; // +0x8, size 0x4, type 0
  2566.     float m_transitionSkyBox; // +0xC, size 0x4, type 3
  2567.     float m_effectColor[3]; // +0x10, size 0xC, type 3
  2568.     char* m_effectTexture; // +0x1C, size 0x4, type 2
  2569. };
  2570.  
  2571. struct WorldMapAreaRec // sizeof(0x2C)
  2572. {
  2573.     DWORD m_ID; // +0x0, size 0x4, type 0
  2574.     DWORD m_mapID; // +0x4, size 0x4, type 0
  2575.     DWORD m_areaID; // +0x8, size 0x4, type 0
  2576.     char* m_areaName; // +0xC, size 0x4, type 2
  2577.     float m_locLeft; // +0x10, size 0x4, type 3
  2578.     float m_locRight; // +0x14, size 0x4, type 3
  2579.     float m_locTop; // +0x18, size 0x4, type 3
  2580.     float m_locBottom; // +0x1C, size 0x4, type 3
  2581.     DWORD m_displayMapID; // +0x20, size 0x4, type 0
  2582.     DWORD m_defaultDungeonFloor; // +0x24, size 0x4, type 0
  2583.     DWORD m_parentWorldMapID; // +0x28, size 0x4, type 0
  2584. };
  2585.  
  2586. struct WorldMapContinentRec // sizeof(0x38)
  2587. {
  2588.     DWORD m_ID; // +0x0, size 0x4, type 0
  2589.     DWORD m_mapID; // +0x4, size 0x4, type 0
  2590.     DWORD m_leftBoundary; // +0x8, size 0x4, type 0
  2591.     DWORD m_rightBoundary; // +0xC, size 0x4, type 0
  2592.     DWORD m_topBoundary; // +0x10, size 0x4, type 0
  2593.     DWORD m_bottomBoundary; // +0x14, size 0x4, type 0
  2594.     float m_continentOffsetX; // +0x18, size 0x4, type 3
  2595.     float m_continentOffsetY; // +0x1C, size 0x4, type 3
  2596.     float m_scale; // +0x20, size 0x4, type 3
  2597.     float m_taxiMinX; // +0x24, size 0x4, type 3
  2598.     float m_taxiMinY; // +0x28, size 0x4, type 3
  2599.     float m_taxiMaxX; // +0x2C, size 0x4, type 3
  2600.     float m_taxiMaxY; // +0x30, size 0x4, type 3
  2601.     DWORD m_worldMapID; // +0x34, size 0x4, type 0
  2602. };
  2603.  
  2604. struct WorldMapOverlayRec // sizeof(0x44)
  2605. {
  2606.     DWORD m_ID; // +0x0, size 0x4, type 0
  2607.     DWORD m_mapAreaID; // +0x4, size 0x4, type 0
  2608.     DWORD m_areaID[4]; // +0x8, size 0x10, type 0
  2609.     DWORD m_mapPointX; // +0x18, size 0x4, type 0
  2610.     DWORD m_mapPointY; // +0x1C, size 0x4, type 0
  2611.     char* m_textureName; // +0x20, size 0x4, type 2
  2612.     DWORD m_textureWidth; // +0x24, size 0x4, type 0
  2613.     DWORD m_textureHeight; // +0x28, size 0x4, type 0
  2614.     DWORD m_offsetX; // +0x2C, size 0x4, type 0
  2615.     DWORD m_offsetY; // +0x30, size 0x4, type 0
  2616.     DWORD m_hitRectTop; // +0x34, size 0x4, type 0
  2617.     DWORD m_hitRectLeft; // +0x38, size 0x4, type 0
  2618.     DWORD m_hitRectBottom; // +0x3C, size 0x4, type 0
  2619.     DWORD m_hitRectRight; // +0x40, size 0x4, type 0
  2620. };
  2621.  
  2622. struct WorldMapTransformsRec // sizeof(0x28)
  2623. {
  2624.     DWORD m_ID; // +0x0, size 0x4, type 0
  2625.     DWORD m_mapID; // +0x4, size 0x4, type 0
  2626.     float m_regionMinX; // +0x8, size 0x4, type 3
  2627.     float m_regionMinY; // +0xC, size 0x4, type 3
  2628.     float m_regionMaxX; // +0x10, size 0x4, type 3
  2629.     float m_regionMaxY; // +0x14, size 0x4, type 3
  2630.     DWORD m_newMapID; // +0x18, size 0x4, type 0
  2631.     float m_regionOffsetX; // +0x1C, size 0x4, type 3
  2632.     float m_regionOffsetY; // +0x20, size 0x4, type 3
  2633.     DWORD m_newDungeonMapID; // +0x24, size 0x4, type 0
  2634. };
  2635.  
  2636. struct WorldSafeLocsRec // sizeof(0x18)
  2637. {
  2638.     DWORD m_ID; // +0x0, size 0x4, type 0
  2639.     DWORD m_continent; // +0x4, size 0x4, type 0
  2640.     float m_locX; // +0x8, size 0x4, type 3
  2641.     float m_locY; // +0xC, size 0x4, type 3
  2642.     float m_locZ; // +0x10, size 0x4, type 3
  2643.     char* m_AreaName_lang; // +0x14, size 0x4, type 2
  2644. };
  2645.  
  2646. struct WorldStateUIRec // sizeof(0x3C)
  2647. {
  2648.     DWORD m_ID; // +0x0, size 0x4, type 0
  2649.     DWORD m_mapID; // +0x4, size 0x4, type 0
  2650.     DWORD m_areaID; // +0x8, size 0x4, type 0
  2651.     DWORD m_phaseShift; // +0xC, size 0x4, type 0
  2652.     char* m_icon; // +0x10, size 0x4, type 2
  2653.     char* m_string_lang; // +0x14, size 0x4, type 2
  2654.     char* m_tooltip_lang; // +0x18, size 0x4, type 2
  2655.     DWORD m_stateVariable; // +0x1C, size 0x4, type 0
  2656.     DWORD m_type; // +0x20, size 0x4, type 0
  2657.     char* m_dynamicIcon; // +0x24, size 0x4, type 2
  2658.     char* m_dynamicTooltip_lang; // +0x28, size 0x4, type 2
  2659.     char* m_extendedUI; // +0x2C, size 0x4, type 2
  2660.     DWORD m_extendedUIStateVariable[3]; // +0x30, size 0xC, type 0
  2661. };
  2662.  
  2663. struct ZoneIntroMusicTableRec // sizeof(0x14)
  2664. {
  2665.     DWORD m_ID; // +0x0, size 0x4, type 0
  2666.     char* m_Name; // +0x4, size 0x4, type 2
  2667.     DWORD m_SoundID; // +0x8, size 0x4, type 0
  2668.     DWORD m_Priority; // +0xC, size 0x4, type 0
  2669.     DWORD m_MinDelayMinutes; // +0x10, size 0x4, type 0
  2670. };
  2671.  
  2672. struct ZoneMusicRec // sizeof(0x20)
  2673. {
  2674.     DWORD m_ID; // +0x0, size 0x4, type 0
  2675.     char* m_SetName; // +0x4, size 0x4, type 2
  2676.     DWORD m_SilenceIntervalMin[2]; // +0x8, size 0x8, type 0
  2677.     DWORD m_SilenceIntervalMax[2]; // +0x10, size 0x8, type 0
  2678.     DWORD m_Sounds[2]; // +0x18, size 0x8, type 0
  2679. };
  2680.  
  2681. struct WorldStateZoneSoundsRec // sizeof(0x24)
  2682. {
  2683.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  2684.     DWORD m_WorldStateID; // +0x4, size 0x4, type 0
  2685.     DWORD m_WorldStateValue; // +0x8, size 0x4, type 0
  2686.     DWORD m_AreaID; // +0xC, size 0x4, type 0
  2687.     DWORD m_WMOAreaID; // +0x10, size 0x4, type 0
  2688.     DWORD m_ZoneIntroMusicID; // +0x14, size 0x4, type 0
  2689.     DWORD m_ZoneMusicID; // +0x18, size 0x4, type 0
  2690.     DWORD m_SoundAmbienceID; // +0x1C, size 0x4, type 0
  2691.     DWORD m_SoundProviderPreferencesID; // +0x20, size 0x4, type 0
  2692. };
  2693.  
  2694. struct WorldChunkSoundsRec // sizeof(0x28)
  2695. {
  2696.     DWORD m_generatedID; // +0x0, size 0x4, type 0
  2697.     DWORD m_WorldMapContinentID; // +0x4, size 0x4, type 0
  2698.     DWORD m_ChunkX; // +0x8, size 0x4, type 0
  2699.     DWORD m_ChunkY; // +0xC, size 0x4, type 0
  2700.     DWORD m_SubchunkX; // +0x10, size 0x4, type 0
  2701.     DWORD m_SubchunkY; // +0x14, size 0x4, type 0
  2702.     DWORD m_ZoneIntroMusicID; // +0x18, size 0x4, type 0
  2703.     DWORD m_ZoneMusicID; // +0x1C, size 0x4, type 0
  2704.     DWORD m_SoundAmbienceID; // +0x20, size 0x4, type 0
  2705.     DWORD m_SoundProviderPreferencesID; // +0x24, size 0x4, type 0
  2706. };
  2707.  
  2708. struct SoundEntriesAdvancedRec // sizeof(0x60)
  2709. {
  2710.     DWORD m_ID; // +0x0, size 0x4, type 0
  2711.     DWORD m_soundEntryID; // +0x4, size 0x4, type 0
  2712.     float m_innerRadius2D; // +0x8, size 0x4, type 3
  2713.     DWORD m_timeA; // +0xC, size 0x4, type 0
  2714.     DWORD m_timeB; // +0x10, size 0x4, type 0
  2715.     DWORD m_timeC; // +0x14, size 0x4, type 0
  2716.     DWORD m_timeD; // +0x18, size 0x4, type 0
  2717.     DWORD m_randomOffsetRange; // +0x1C, size 0x4, type 0
  2718.     DWORD m_usage; // +0x20, size 0x4, type 0
  2719.     DWORD m_timeIntervalMin; // +0x24, size 0x4, type 0
  2720.     DWORD m_timeIntervalMax; // +0x28, size 0x4, type 0
  2721.     DWORD m_volumeSliderCategory; // +0x2C, size 0x4, type 0
  2722.     float m_duckToSFX; // +0x30, size 0x4, type 3
  2723.     float m_duckToMusic; // +0x34, size 0x4, type 3
  2724.     float m_duckToAmbience; // +0x38, size 0x4, type 3
  2725.     float m_innerRadiusOfInfluence; // +0x3C, size 0x4, type 3
  2726.     float m_outerRadiusOfInfluence; // +0x40, size 0x4, type 3
  2727.     DWORD m_timeToDuck; // +0x44, size 0x4, type 0
  2728.     DWORD m_timeToUnduck; // +0x48, size 0x4, type 0
  2729.     float m_insideAngle; // +0x4C, size 0x4, type 3
  2730.     float m_outsideAngle; // +0x50, size 0x4, type 3
  2731.     float m_outsideVolume; // +0x54, size 0x4, type 3
  2732.     float m_outerRadius2D; // +0x58, size 0x4, type 3
  2733.     char* m_name; // +0x5C, size 0x4, type 2
  2734. };
  2735.  
  2736. struct ObjectEffectRec // sizeof(0x30)
  2737. {
  2738.     DWORD m_ID; // +0x0, size 0x4, type 0
  2739.     char* m_name; // +0x4, size 0x4, type 2
  2740.     DWORD m_objectEffectGroupID; // +0x8, size 0x4, type 0
  2741.     DWORD m_triggerType; // +0xC, size 0x4, type 0
  2742.     DWORD m_eventType; // +0x10, size 0x4, type 0
  2743.     DWORD m_effectRecType; // +0x14, size 0x4, type 0
  2744.     DWORD m_effectRecID; // +0x18, size 0x4, type 0
  2745.     DWORD m_attachment; // +0x1C, size 0x4, type 0
  2746.     float m_offsetX; // +0x20, size 0x4, type 3
  2747.     float m_offsetY; // +0x24, size 0x4, type 3
  2748.     float m_offsetZ; // +0x28, size 0x4, type 3
  2749.     DWORD m_objectEffectModifierID; // +0x2C, size 0x4, type 0
  2750. };
  2751.  
  2752. struct ObjectEffectGroupRec // sizeof(0x8)
  2753. {
  2754.     DWORD m_ID; // +0x0, size 0x4, type 0
  2755.     char* m_name; // +0x4, size 0x4, type 2
  2756. };
  2757.  
  2758. struct ObjectEffectModifierRec // sizeof(0x20)
  2759. {
  2760.     DWORD m_ID; // +0x0, size 0x4, type 0
  2761.     DWORD m_inputType; // +0x4, size 0x4, type 0
  2762.     DWORD m_mapType; // +0x8, size 0x4, type 0
  2763.     DWORD m_outputType; // +0xC, size 0x4, type 0
  2764.     float m_param[4]; // +0x10, size 0x10, type 3
  2765. };
  2766.  
  2767. struct ObjectEffectPackageRec // sizeof(0x8)
  2768. {
  2769.     DWORD m_ID; // +0x0, size 0x4, type 0
  2770.     char* m_name; // +0x4, size 0x4, type 2
  2771. };
  2772.  
  2773. struct ObjectEffectPackageElemRec // sizeof(0x10)
  2774. {
  2775.     DWORD m_ID; // +0x0, size 0x4, type 0
  2776.     DWORD m_objectEffectPackageID; // +0x4, size 0x4, type 0
  2777.     DWORD m_objectEffectGroupID; // +0x8, size 0x4, type 0
  2778.     DWORD m_stateType; // +0xC, size 0x4, type 0
  2779. };
  2780.  
  2781. struct SoundFilterRec // sizeof(0x8)
  2782. {
  2783.     DWORD m_ID; // +0x0, size 0x4, type 0
  2784.     char* m_name; // +0x4, size 0x4, type 2
  2785. };
  2786.  
  2787. struct SoundFilterElemRec // sizeof(0x34)
  2788. {
  2789.     DWORD m_ID; // +0x0, size 0x4, type 0
  2790.     DWORD m_soundFilterID; // +0x4, size 0x4, type 0
  2791.     DWORD m_orderIndex; // +0x8, size 0x4, type 0
  2792.     DWORD m_filterType; // +0xC, size 0x4, type 0
  2793.     float m_params[9]; // +0x10, size 0x24, type 3
  2794. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement