Guest User

Thecrow

a guest
Mar 25th, 2010
1,802
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 53.42 KB | None | 0 0
  1. Index: src/arcemu-shared/Auth/WowCrypt.cpp
  2. ===================================================================
  3. --- src/arcemu-shared/Auth/WowCrypt.cpp (revision 3198)
  4. +++ src/arcemu-shared/Auth/WowCrypt.cpp (working copy)
  5. @@ -32,8 +32,8 @@
  6.  
  7.  void WowCrypt::Init(uint8 *K)
  8.  {
  9. -   static const uint8 s[16] = { 0xF4, 0x66, 0x31, 0x59, 0xFC, 0x83, 0x6E, 0x31, 0x31, 0x02, 0x51, 0xD5, 0x44, 0x31, 0x67, 0x98 };
  10. -   static const uint8 r[16] = { 0x22, 0xBE, 0xE5, 0xCF, 0xBB, 0x07, 0x64, 0xD9, 0x00, 0x45, 0x1B, 0xD0, 0x24, 0xB8, 0xD5, 0x45 };
  11. +   static const uint8 s[16] = { 0xC2, 0xB3, 0x72, 0x3C, 0xC6, 0xAE, 0xD9, 0xB5, 0x34, 0x3C, 0x53, 0xEE, 0x2F, 0x43, 0x67, 0xCE };
  12. +   static const uint8 r[16] = { 0xCC, 0x98, 0xAE, 0x04, 0xE8, 0x97, 0xEA, 0xCA, 0x12, 0xDD, 0xC0, 0x93, 0x42, 0x91, 0x53, 0x57 };
  13.      uint8 encryptHash[SHA_DIGEST_LENGTH];
  14.      uint8 decryptHash[SHA_DIGEST_LENGTH];
  15.      uint8 pass[1024];
  16. Index: src/arcemu-shared/AuthCodes.h
  17. ===================================================================
  18. --- src/arcemu-shared/AuthCodes.h   (revision 3198)
  19. +++ src/arcemu-shared/AuthCodes.h   (working copy)
  20. @@ -23,118 +23,118 @@
  21.  // client 3.3.0, 2009/12/20
  22.  enum LoginErrorCode
  23.  {
  24. -   E_RESPONSE_SUCCESS                                          = 0x00,
  25. -   E_RESPONSE_FAILURE                                          = 0x01,
  26. -   E_RESPONSE_CANCELLED                                        = 0x02,
  27. -   E_RESPONSE_DISCONNECTED                                     = 0x03,
  28. -   E_RESPONSE_FAILED_TO_CONNECT                                = 0x04,
  29. -   E_RESPONSE_CONNECTED                                        = 0x05,
  30. -   E_RESPONSE_VERSION_MISMATCH                                 = 0x06,
  31. +   E_RESPONSE_SUCCESS                                      = 0x00,
  32. +   E_RESPONSE_FAILURE                                      = 0x01,
  33. +   E_RESPONSE_CANCELLED                                    = 0x02,
  34. +   E_RESPONSE_DISCONNECTED                                 = 0x03,
  35. +   E_RESPONSE_FAILED_TO_CONNECT                            = 0x04,
  36. +   E_RESPONSE_VERSION_MISMATCH                             = 0x05,
  37.  
  38. -   E_CSTATUS_CONNECTING                                        = 0x07,
  39. -   E_CSTATUS_NEGOTIATING_SECURITY                              = 0x08,
  40. -   E_CSTATUS_NEGOTIATION_COMPLETE                              = 0x09,
  41. -   E_CSTATUS_NEGOTIATION_FAILED                                = 0x0A,
  42. -   E_CSTATUS_AUTHENTICATING                                    = 0x0B,
  43. +   E_CSTATUS_CONNECTING                                    = 0x06,
  44. +   E_CSTATUS_NEGOTIATING_SECURITY                          = 0x07,
  45. +   E_CSTATUS_NEGOTIATION_COMPLETE                          = 0x08,
  46. +   E_CSTATUS_NEGOTIATION_FAILED                            = 0x09,
  47. +   E_CSTATUS_AUTHENTICATING                                = 0x0A,
  48. +  
  49. +   E_AUTH_OK                                               = 0x0B,
  50. +   E_AUTH_FAILED                                           = 0x0C,
  51. +   E_AUTH_REJECT                                           = 0x0D,
  52. +   E_AUTH_BAD_SERVER_PROOF                                 = 0x0E,
  53. +   E_AUTH_UNAVAILABLE                                      = 0x0F,
  54. +   E_AUTH_SYSTEM_ERROR                                     = 0x10,
  55. +   E_AUTH_BILLING_ERROR                                    = 0x11,
  56. +   E_AUTH_BILLING_EXPIRED                                  = 0x12,
  57. +   E_AUTH_VERSION_MISMATCH                                 = 0x13,
  58. +   E_AUTH_UNKNOWN_ACCOUNT                                  = 0x14,
  59. +   E_AUTH_INCORRECT_PASSWORD                               = 0x15,
  60. +   E_AUTH_SESSION_EXPIRED                                  = 0x16,
  61. +   E_AUTH_SERVER_SHUTTING_DOWN                             = 0x17,
  62. +   E_AUTH_ALREADY_LOGGING_IN                               = 0x18,
  63. +   E_AUTH_LOGIN_SERVER_NOT_FOUND                           = 0x19,
  64. +   E_AUTH_WAIT_QUEUE                                       = 0x1A,
  65. +   E_AUTH_BANNED                                           = 0x1B,
  66. +   E_AUTH_ALREADY_ONLINE                                   = 0x1C,
  67. +   E_AUTH_NO_TIME                                          = 0x1D,
  68. +   E_AUTH_DB_BUSY                                          = 0x1E,
  69. +   E_AUTH_SUSPENDED                                        = 0x1F,
  70. +   E_AUTH_PARENTAL_CONTROL                                 = 0x20,
  71. +   E_AUTH_LOCKED_ENFORCED                                  = 0x21,
  72.  
  73. -   E_AUTH_OK                                                   = 0x0C,
  74. -   E_AUTH_FAILED                                               = 0x0D,
  75. -   E_AUTH_REJECT                                               = 0x0E,
  76. -   E_AUTH_BAD_SERVER_PROOF                                     = 0x0F,
  77. -   E_AUTH_UNAVAILABLE                                          = 0x10,
  78. -   E_AUTH_SYSTEM_ERROR                                         = 0x11,
  79. -   E_AUTH_BILLING_ERROR                                        = 0x12,
  80. -   E_AUTH_BILLING_EXPIRED                                      = 0x13,
  81. -   E_AUTH_VERSION_MISMATCH                                     = 0x14,
  82. -   E_AUTH_UNKNOWN_ACCOUNT                                      = 0x15,
  83. -   E_AUTH_INCORRECT_PASSWORD                                   = 0x16,
  84. -   E_AUTH_SESSION_EXPIRED                                      = 0x17,
  85. -   E_AUTH_SERVER_SHUTTING_DOWN                                 = 0x18,
  86. -   E_AUTH_ALREADY_LOGGING_IN                                   = 0x19,
  87. -   E_AUTH_LOGIN_SERVER_NOT_FOUND                               = 0x1A,
  88. -   E_AUTH_WAIT_QUEUE                                           = 0x1B,
  89. -   E_AUTH_BANNED                                               = 0x1C,
  90. -   E_AUTH_ALREADY_ONLINE                                       = 0x1D,
  91. -   E_AUTH_NO_TIME                                              = 0x1E,
  92. -   E_AUTH_DB_BUSY                                              = 0x1F,
  93. -   E_AUTH_SUSPENDED                                            = 0x20,
  94. -   E_AUTH_PARENTAL_CONTROL                                     = 0x21,
  95. -   E_AUTH_LOCKED_ENFORCED                                      = 0x22,
  96. +   E_REALM_LIST_IN_PROGRESS                                = 0x22,
  97. +   E_REALM_LIST_SUCCESS                                    = 0x23,
  98. +   E_REALM_LIST_FAILED                                     = 0x24,
  99. +   E_REALM_LIST_INVALID                                    = 0x25,
  100. +   E_REALM_LIST_REALM_NOT_FOUND                            = 0x26,
  101.  
  102. -   E_REALM_LIST_IN_PROGRESS                                    = 0x23,
  103. -   E_REALM_LIST_SUCCESS                                        = 0x24,
  104. -   E_REALM_LIST_FAILED                                         = 0x25,
  105. -   E_REALM_LIST_INVALID                                        = 0x26,
  106. -   E_REALM_LIST_REALM_NOT_FOUND                                = 0x27,
  107. +   E_ACCOUNT_CREATE_IN_PROGRESS                            = 0x27,
  108. +   E_ACCOUNT_CREATE_SUCCESS                                = 0x28,
  109. +   E_ACCOUNT_CREATE_FAILED                                 = 0x29,
  110.  
  111. -   E_ACCOUNT_CREATE_IN_PROGRESS                                = 0x28,
  112. -   E_ACCOUNT_CREATE_SUCCESS                                    = 0x29,
  113. -   E_ACCOUNT_CREATE_FAILED                                     = 0x2A,
  114. +   E_CHAR_LIST_RETRIEVING                                  = 0x2A,
  115. +   E_CHAR_LIST_RETRIEVED                                   = 0x2B,
  116. +   E_CHAR_LIST_FAILED                                      = 0x2C,
  117.  
  118. -   E_CHAR_LIST_RETRIEVING                                      = 0x2B,
  119. -   E_CHAR_LIST_RETRIEVED                                       = 0x2C,
  120. -   E_CHAR_LIST_FAILED                                          = 0x2D,
  121. +   E_CHAR_CREATE_IN_PROGRESS                               = 0x2D,
  122. +   E_CHAR_CREATE_SUCCESS                                   = 0x2E,
  123. +   E_CHAR_CREATE_ERROR                                     = 0x2F,
  124. +   E_CHAR_CREATE_FAILED                                    = 0x30,
  125. +   E_CHAR_CREATE_NAME_IN_USE                               = 0x31,
  126. +   E_CHAR_CREATE_DISABLED                                  = 0x32,
  127. +   E_CHAR_CREATE_PVP_TEAMS_VIOLATION                       = 0x33,
  128. +   E_CHAR_CREATE_SERVER_LIMIT                              = 0x34,
  129. +   E_CHAR_CREATE_ACCOUNT_LIMIT                             = 0x35,
  130. +   E_CHAR_CREATE_SERVER_QUEUE                              = 0x36,
  131. +   E_CHAR_CREATE_ONLY_EXISTING                             = 0x37,
  132. +   E_CHAR_CREATE_EXPANSION                                 = 0x38,
  133. +   E_CHAR_CREATE_EXPANSION_CLASS                           = 0x39,
  134. +   E_CHAR_CREATE_LEVEL_REQUIREMENT                         = 0x3A,
  135. +   E_CHAR_CREATE_UNIQUE_CLASS_LIMIT                        = 0x3B,
  136. +   E_CHAR_CREATE_CHARACTER_IN_GUILD                        = 0x3C,
  137. +   E_CHAR_CREATE_RESTRICTED_RACECLASS                      = 0x3D,
  138. +   E_CHAR_CREATE_CHARACTER_CHOOSE_RACE                     = 0x3E,
  139. +   E_CHAR_CREATE_CHARACTER_ARENA_LEADER                    = 0x3F,
  140. +   E_CHAR_CREATE_CHARACTER_DELETE_MAIL                     = 0x40,
  141. +   E_CHAR_CREATE_CHARACTER_SWAP_FACTION                    = 0x41,
  142. +   E_CHAR_CREATE_CHARACTER_RACE_ONLY                       = 0x42,
  143. +   E_CHAR_CREATE_CHARACTER_GOLD_LIMIT                      = 0x43,
  144. +   E_CHAR_CREATE_FORCE_LOGIN                               = 0x44,
  145.  
  146. -   E_CHAR_CREATE_IN_PROGRESS                                   = 0x2E,
  147. -   E_CHAR_CREATE_SUCCESS                                       = 0x2F,
  148. -   E_CHAR_CREATE_ERROR                                         = 0x30,
  149. -   E_CHAR_CREATE_FAILED                                        = 0x31,
  150. -   E_CHAR_CREATE_NAME_IN_USE                                   = 0x32,
  151. -   E_CHAR_CREATE_DISABLED                                      = 0x33,
  152. -   E_CHAR_CREATE_PVP_TEAMS_VIOLATION                           = 0x34,
  153. -   E_CHAR_CREATE_SERVER_LIMIT                                  = 0x35,
  154. -   E_CHAR_CREATE_ACCOUNT_LIMIT                                 = 0x36,
  155. -   E_CHAR_CREATE_SERVER_QUEUE                                  = 0x37,
  156. -   E_CHAR_CREATE_ONLY_EXISTING                                 = 0x38,
  157. -   E_CHAR_CREATE_EXPANSION                                     = 0x39,
  158. -   E_CHAR_CREATE_EXPANSION_CLASS                               = 0x3A,
  159. -   E_CHAR_CREATE_LEVEL_REQUIREMENT                             = 0x3B,
  160. -   E_CHAR_CREATE_UNIQUE_CLASS_LIMIT                            = 0x3C,
  161. -   E_CHAR_CREATE_CHARACTER_IN_GUILD                            = 0x3D,
  162. -   E_CHAR_CREATE_RESTRICTED_RACECLASS                          = 0x3E,
  163. -   E_CHAR_CREATE_CHARACTER_CHOOSE_RACE                         = 0x3F,
  164. -   E_CHAR_CREATE_CHARACTER_ARENA_LEADER                        = 0x40,
  165. -   E_CHAR_CREATE_CHARACTER_DELETE_MAIL                         = 0x41,
  166. -   E_CHAR_CREATE_CHARACTER_SWAP_FACTION                        = 0x42,
  167. -   E_CHAR_CREATE_CHARACTER_RACE_ONLY                           = 0x43,
  168. -   E_CHAR_CREATE_CHARACTER_GOLD_LIMIT                          = 0x44,
  169. -   E_CHAR_CREATE_FORCE_LOGIN                                   = 0x45,
  170. +   E_CHAR_DELETE_IN_PROGRESS                               = 0x45,
  171. +   E_CHAR_DELETE_SUCCESS                                   = 0x46,
  172. +   E_CHAR_DELETE_FAILED                                    = 0x47,
  173. +   E_CHAR_DELETE_FAILED_LOCKED_FOR_TRANSFER                = 0x48,
  174. +   E_CHAR_DELETE_FAILED_GUILD_LEADER                       = 0x49,
  175. +   E_CHAR_DELETE_FAILED_ARENA_CAPTAIN                      = 0x4A,
  176.  
  177. -   E_CHAR_DELETE_IN_PROGRESS                                   = 0x46,
  178. -   E_CHAR_DELETE_SUCCESS                                       = 0x47,
  179. -   E_CHAR_DELETE_FAILED                                        = 0x48,
  180. -   E_CHAR_DELETE_FAILED_LOCKED_FOR_TRANSFER                    = 0x49,
  181. -   E_CHAR_DELETE_FAILED_GUILD_LEADER                           = 0x4A,
  182. -   E_CHAR_DELETE_FAILED_ARENA_CAPTAIN                          = 0x4B,
  183. -
  184. -   E_CHAR_LOGIN_IN_PROGRESS                                    = 0x4C,
  185. -   E_CHAR_LOGIN_SUCCESS                                        = 0x4D,
  186. -   E_CHAR_LOGIN_NO_WORLD                                       = 0x4E,
  187. -   E_CHAR_LOGIN_DUPLICATE_CHARACTER                            = 0x4F,
  188. -   E_CHAR_LOGIN_NO_INSTANCES                                   = 0x50,
  189. -   E_CHAR_LOGIN_FAILED                                         = 0x51,
  190. -   E_CHAR_LOGIN_DISABLED                                       = 0x52,
  191. -   E_CHAR_LOGIN_NO_CHARACTER                                   = 0x53,
  192. -   E_CHAR_LOGIN_LOCKED_FOR_TRANSFER                            = 0x54,
  193. -   E_CHAR_LOGIN_LOCKED_BY_BILLING                              = 0x55,
  194. -
  195. -   E_CHAR_NAME_SUCCESS                                         = 0x56,
  196. -   E_CHAR_NAME_FAILURE                                         = 0x57,
  197. -   E_CHAR_NAME_NO_NAME                                         = 0x58,
  198. -   E_CHAR_NAME_TOO_SHORT                                       = 0x59,
  199. -   E_CHAR_NAME_TOO_LONG                                        = 0x5A,
  200. -   E_CHAR_NAME_INVALID_CHARACTER                               = 0x5B,
  201. -   E_CHAR_NAME_MIXED_LANGUAGES                                 = 0x5C,
  202. -   E_CHAR_NAME_PROFANE                                         = 0x5D,
  203. -   E_CHAR_NAME_RESERVED                                        = 0x5E,
  204. -   E_CHAR_NAME_INVALID_APOSTROPHE                              = 0x5F,
  205. -   E_CHAR_NAME_MULTIPLE_APOSTROPHES                            = 0x60,
  206. -   E_CHAR_NAME_THREE_CONSECUTIVE                               = 0x61,
  207. -   E_CHAR_NAME_INVALID_SPACE                                   = 0x62,
  208. -   E_CHAR_NAME_CONSECUTIVE_SPACES                              = 0x63,
  209. -   E_CHAR_NAME_RUSSIAN_CONSECUTIVE_SILENT_CHARACTERS           = 0x64,
  210. -   E_CHAR_NAME_RUSSIAN_SILENT_CHARACTER_AT_BEGINNING_OR_END    = 0x65,
  211. -   E_CHAR_NAME_DECLENSION_DOESNT_MATCH_BASE_NAME               = 0x66,
  212. +   E_CHAR_LOGIN_IN_PROGRESS                                = 0x4B,
  213. +   E_CHAR_LOGIN_SUCCESS                                    = 0x4C,
  214. +   E_CHAR_LOGIN_NO_WORLD                                   = 0x4D,
  215. +   E_CHAR_LOGIN_DUPLICATE_CHARACTER                        = 0x4E,
  216. +   E_CHAR_LOGIN_NO_INSTANCES                               = 0x4F,
  217. +   E_CHAR_LOGIN_FAILED                                     = 0x50,
  218. +   E_CHAR_LOGIN_DISABLED                                   = 0x51,
  219. +   E_CHAR_LOGIN_NO_CHARACTER                               = 0x52,
  220. +   E_CHAR_LOGIN_LOCKED_FOR_TRANSFER                        = 0x53,
  221. +   E_CHAR_LOGIN_LOCKED_BY_BILLING                          = 0x54,
  222. +   E_CHAR_LOGIN_LOCKED_BY_MOBILE_AH                        = 0x55,
  223. +  
  224. +   E_CHAR_NAME_SUCCESS                                     = 0x56,
  225. +   E_CHAR_NAME_FAILURE                                     = 0x57,
  226. +   E_CHAR_NAME_NO_NAME                                     = 0x58,
  227. +   E_CHAR_NAME_TOO_SHORT                                   = 0x59,
  228. +   E_CHAR_NAME_TOO_LONG                                    = 0x5A,
  229. +   E_CHAR_NAME_INVALID_CHARACTER                           = 0x5B,
  230. +   E_CHAR_NAME_MIXED_LANGUAGES                             = 0x5C,
  231. +   E_CHAR_NAME_PROFANE                                     = 0x5D,
  232. +   E_CHAR_NAME_RESERVED                                    = 0x5E,
  233. +   E_CHAR_NAME_INVALID_APOSTROPHE                          = 0x5F,
  234. +   E_CHAR_NAME_MULTIPLE_APOSTROPHES                        = 0x60,
  235. +   E_CHAR_NAME_THREE_CONSECUTIVE                           = 0x61,
  236. +   E_CHAR_NAME_INVALID_SPACE                               = 0x62,
  237. +   E_CHAR_NAME_CONSECUTIVE_SPACES                          = 0x63,
  238. +   E_CHAR_NAME_RUSSIAN_CONSECUTIVE_SILENT_CHARACTERS       = 0x64,
  239. +   E_CHAR_NAME_RUSSIAN_SILENT_CHARACTER_AT_BEGINNING_OR_END= 0x65,
  240. +   E_CHAR_NAME_DECLENSION_DOESNT_MATCH_BASE_NAME           = 0x66,
  241.  };
  242.  
  243.  //These defines are for use with OutPacket
  244. Index: src/arcemu-shared/Database/DBCStores.cpp
  245. ===================================================================
  246. --- src/arcemu-shared/Database/DBCStores.cpp    (revision 3198)
  247. +++ src/arcemu-shared/Database/DBCStores.cpp    (working copy)
  248. @@ -221,8 +221,6 @@
  249.     "u" // RequiredItemFlags
  250.     "uuu" // Effect[3]
  251.     "uuu" // EffectDieSides[3]
  252. -   "uuu" // EffectBaseDice[3]
  253. -   "uuu" // EffectDicePerLevel[3]
  254.     "uuu" // EffectRealPointsPerLevel[3]
  255.     "uuu" // EffectBasePoints[3]
  256.     "uuu" // EffectMechanic[3]
  257. Index: src/arcemu-shared/Database/DBCStores.h
  258. ===================================================================
  259. --- src/arcemu-shared/Database/DBCStores.h  (revision 3198)
  260. +++ src/arcemu-shared/Database/DBCStores.h  (working copy)
  261. @@ -742,8 +742,6 @@
  262.     uint32 RequiredItemFlags;               //71
  263.     uint32 Effect[3];                       //72 - 74
  264.     uint32 EffectDieSides[3];               //75 - 77
  265. -   uint32 EffectBaseDice[3];               //78 - 80
  266. -   float  EffectDicePerLevel[3];           //81 - 83
  267.     float  EffectRealPointsPerLevel[3];     //84 - 86
  268.     int32  EffectBasePoints[3];             //87 - 89
  269.     int32  EffectMechanic[3];               //90 - 92       Related to SpellMechanic.dbc
  270. Index: src/arcemu-world/CharacterHandler.cpp
  271. ===================================================================
  272. --- src/arcemu-world/CharacterHandler.cpp   (revision 3198)
  273. +++ src/arcemu-world/CharacterHandler.cpp   (working copy)
  274. @@ -286,6 +286,13 @@
  275.         while( result->NextRow() );
  276.     }
  277.  
  278. +   for(uint8 c = 0; c < 3; ++c)
  279. +   {
  280. +       data << uint32(0);
  281. +       data << uint8(18);
  282. +       data << uint32(0);
  283. +   }
  284. +
  285.     data.put< uint8 >(0, num);
  286.  
  287.     Log.Debug("Character Enum", "Built in %u ms.", getMSTime() - start_time);
  288. Index: src/arcemu-world/Spell.cpp
  289. ===================================================================
  290. --- src/arcemu-world/Spell.cpp  (revision 3198)
  291. +++ src/arcemu-world/Spell.cpp  (working copy)
  292. @@ -4792,7 +4792,7 @@
  293.     int32 value = 0;
  294.  
  295.     float basePointsPerLevel    = GetProto()->EffectRealPointsPerLevel[i];
  296. -   float randomPointsPerLevel  = GetProto()->EffectDicePerLevel[i];
  297. +// float randomPointsPerLevel  = GetProto()->EffectDicePerLevel[i];
  298.     int32 basePoints = GetProto()->EffectBasePoints[i] + 1;
  299.     int32 randomPoints = GetProto()->EffectDieSides[i];
  300.  
  301. @@ -4839,7 +4839,7 @@
  302.             diff +=GetProto()->maxLevel;
  303.         else
  304.             diff +=u_caster->getLevel();
  305. -       randomPoints += float2int32(diff * randomPointsPerLevel);
  306. +//     randomPoints += float2int32(diff * randomPointsPerLevel);
  307.         basePoints += float2int32(diff * basePointsPerLevel );
  308.     }
  309.  
  310. Index: src/arcemu-world/SpellFixes.cpp
  311. ===================================================================
  312. --- src/arcemu-world/SpellFixes.cpp (revision 3198)
  313. +++ src/arcemu-world/SpellFixes.cpp (working copy)
  314. @@ -133,8 +133,8 @@
  315.                     float ftemp;
  316.                     temp = sp->Effect[col1_swap];           sp->Effect[col1_swap] = sp->Effect[col2_swap] ;                     sp->Effect[col2_swap] = temp;
  317.                     temp = sp->EffectDieSides[col1_swap];   sp->EffectDieSides[col1_swap] = sp->EffectDieSides[col2_swap] ;     sp->EffectDieSides[col2_swap] = temp;
  318. -                   temp = sp->EffectBaseDice[col1_swap];   sp->EffectBaseDice[col1_swap] = sp->EffectBaseDice[col2_swap] ;     sp->EffectBaseDice[col2_swap] = temp;
  319. -                   ftemp = sp->EffectDicePerLevel[col1_swap];          sp->EffectDicePerLevel[col1_swap] = sp->EffectDicePerLevel[col2_swap] ;             sp->EffectDicePerLevel[col2_swap] = ftemp;
  320. +//                 temp = sp->EffectBaseDice[col1_swap];   sp->EffectBaseDice[col1_swap] = sp->EffectBaseDice[col2_swap] ;     sp->EffectBaseDice[col2_swap] = temp;
  321. +//                 ftemp = sp->EffectDicePerLevel[col1_swap];          sp->EffectDicePerLevel[col1_swap] = sp->EffectDicePerLevel[col2_swap] ;             sp->EffectDicePerLevel[col2_swap] = ftemp;
  322.                     ftemp = sp->EffectRealPointsPerLevel[col1_swap];    sp->EffectRealPointsPerLevel[col1_swap] = sp->EffectRealPointsPerLevel[col2_swap] ; sp->EffectRealPointsPerLevel[col2_swap] = ftemp;
  323.                     temp = sp->EffectBasePoints[col1_swap]; sp->EffectBasePoints[col1_swap] = sp->EffectBasePoints[col2_swap] ; sp->EffectBasePoints[col2_swap] = temp;
  324.                     temp = sp->EffectMechanic[col1_swap];   sp->EffectMechanic[col1_swap] = sp->EffectMechanic[col2_swap] ; sp->EffectMechanic[col2_swap] = temp;
  325. @@ -3754,8 +3754,8 @@
  326.                 healsp->Effect[0] = SPELL_EFFECT_HEAL;
  327.                 healsp->Effect[1] = healsp->Effect[2] = SPELL_EFFECT_NULL;
  328.                 healsp->EffectBasePoints[0] = sp->EffectBasePoints[0];
  329. -               healsp->EffectBaseDice[0] = sp->EffectBaseDice[0];
  330. -               healsp->EffectDicePerLevel[0] = sp->EffectDicePerLevel[0];
  331. +//             healsp->EffectBaseDice[0] = sp->EffectBaseDice[0];
  332. +//             healsp->EffectDicePerLevel[0] = sp->EffectDicePerLevel[0];
  333.                 healsp->EffectDieSides[0] = sp->EffectDieSides[0];
  334.                 healsp->EffectImplicitTargetA[0] = EFF_TARGET_PARTY_MEMBER;
  335.             }
  336. @@ -5387,7 +5387,7 @@
  337.             sp->Effect[2] = SPELL_EFFECT_APPLY_AURA;
  338.              sp->EffectAmplitude[2] = 3000;
  339.             sp->EffectImplicitTargetA[2] = EFF_TARGET_SELF;
  340. -           sp->EffectBaseDice[2] = 1;
  341. +//         sp->EffectBaseDice[2] = 1;
  342.             sp->EffectDieSides[2] = 1;
  343.             sp->EffectTriggerSpell[2] = 32612;
  344.             sp->EffectBasePoints[2] = -1;
  345. Index: src/arcemu-world/UpdateFields.h
  346. ===================================================================
  347. --- src/arcemu-world/UpdateFields.h (revision 3198)
  348. +++ src/arcemu-world/UpdateFields.h (working copy)
  349. @@ -38,49 +38,49 @@
  350.  
  351.  enum EItemFields
  352.  {
  353. -    ITEM_FIELD_OWNER                          = OBJECT_END + 0x0000, // Size: 2, Type: LONG, Flags: PUBLIC
  354. -    ITEM_FIELD_CONTAINED                      = OBJECT_END + 0x0002, // Size: 2, Type: LONG, Flags: PUBLIC
  355. -    ITEM_FIELD_CREATOR                        = OBJECT_END + 0x0004, // Size: 2, Type: LONG, Flags: PUBLIC
  356. -    ITEM_FIELD_GIFTCREATOR                    = OBJECT_END + 0x0006, // Size: 2, Type: LONG, Flags: PUBLIC
  357. -    ITEM_FIELD_STACK_COUNT                    = OBJECT_END + 0x0008, // Size: 1, Type: INT, Flags: OWNER_ONLY, UNK2
  358. -    ITEM_FIELD_DURATION                       = OBJECT_END + 0x0009, // Size: 1, Type: INT, Flags: OWNER_ONLY, UNK2
  359. -    ITEM_FIELD_SPELL_CHARGES                  = OBJECT_END + 0x000A, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  360. -    ITEM_FIELD_SPELL_CHARGES_1                = OBJECT_END + 0x000B, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  361. -    ITEM_FIELD_SPELL_CHARGES_2                = OBJECT_END + 0x000C, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  362. -    ITEM_FIELD_SPELL_CHARGES_3                = OBJECT_END + 0x000D, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  363. -    ITEM_FIELD_SPELL_CHARGES_4                = OBJECT_END + 0x000E, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  364. -    ITEM_FIELD_FLAGS                          = OBJECT_END + 0x000F, // Size: 1, Type: INT, Flags: PUBLIC
  365. -    ITEM_FIELD_ENCHANTMENT_1_1                = OBJECT_END + 0x0010, // Size: 2, Type: INT, Flags: PUBLIC
  366. -    ITEM_FIELD_ENCHANTMENT_1_3                = OBJECT_END + 0x0012, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  367. -    ITEM_FIELD_ENCHANTMENT_2_1                = OBJECT_END + 0x0013, // Size: 2, Type: INT, Flags: PUBLIC
  368. -    ITEM_FIELD_ENCHANTMENT_2_3                = OBJECT_END + 0x0015, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  369. -    ITEM_FIELD_ENCHANTMENT_3_1                = OBJECT_END + 0x0016, // Size: 2, Type: INT, Flags: PUBLIC
  370. -    ITEM_FIELD_ENCHANTMENT_3_3                = OBJECT_END + 0x0018, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  371. -    ITEM_FIELD_ENCHANTMENT_4_1                = OBJECT_END + 0x0019, // Size: 2, Type: INT, Flags: PUBLIC
  372. -    ITEM_FIELD_ENCHANTMENT_4_3                = OBJECT_END + 0x001B, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  373. -    ITEM_FIELD_ENCHANTMENT_5_1                = OBJECT_END + 0x001C, // Size: 2, Type: INT, Flags: PUBLIC
  374. -    ITEM_FIELD_ENCHANTMENT_5_3                = OBJECT_END + 0x001E, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  375. -    ITEM_FIELD_ENCHANTMENT_6_1                = OBJECT_END + 0x001F, // Size: 2, Type: INT, Flags: PUBLIC
  376. -    ITEM_FIELD_ENCHANTMENT_6_3                = OBJECT_END + 0x0021, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  377. -    ITEM_FIELD_ENCHANTMENT_7_1                = OBJECT_END + 0x0022, // Size: 2, Type: INT, Flags: PUBLIC
  378. -    ITEM_FIELD_ENCHANTMENT_7_3                = OBJECT_END + 0x0024, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  379. -    ITEM_FIELD_ENCHANTMENT_8_1                = OBJECT_END + 0x0025, // Size: 2, Type: INT, Flags: PUBLIC
  380. -    ITEM_FIELD_ENCHANTMENT_8_3                = OBJECT_END + 0x0027, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  381. -    ITEM_FIELD_ENCHANTMENT_9_1                = OBJECT_END + 0x0028, // Size: 2, Type: INT, Flags: PUBLIC
  382. -    ITEM_FIELD_ENCHANTMENT_9_3                = OBJECT_END + 0x002A, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  383. -    ITEM_FIELD_ENCHANTMENT_10_1               = OBJECT_END + 0x002B, // Size: 2, Type: INT, Flags: PUBLIC
  384. -    ITEM_FIELD_ENCHANTMENT_10_3               = OBJECT_END + 0x002D, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  385. -    ITEM_FIELD_ENCHANTMENT_11_1               = OBJECT_END + 0x002E, // Size: 2, Type: INT, Flags: PUBLIC
  386. -    ITEM_FIELD_ENCHANTMENT_11_3               = OBJECT_END + 0x0030, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  387. -    ITEM_FIELD_ENCHANTMENT_12_1               = OBJECT_END + 0x0031, // Size: 2, Type: INT, Flags: PUBLIC
  388. -    ITEM_FIELD_ENCHANTMENT_12_3               = OBJECT_END + 0x0033, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  389. -    ITEM_FIELD_PROPERTY_SEED                  = OBJECT_END + 0x0034, // Size: 1, Type: INT, Flags: PUBLIC
  390. -    ITEM_FIELD_RANDOM_PROPERTIES_ID           = OBJECT_END + 0x0035, // Size: 1, Type: INT, Flags: PUBLIC
  391. -    ITEM_FIELD_ITEM_TEXT_ID                   = OBJECT_END + 0x0036, // Size: 1, Type: INT, Flags: OWNER_ONLY
  392. -    ITEM_FIELD_DURABILITY                     = OBJECT_END + 0x0037, // Size: 1, Type: INT, Flags: OWNER_ONLY, UNK2
  393. -    ITEM_FIELD_MAXDURABILITY                  = OBJECT_END + 0x0038, // Size: 1, Type: INT, Flags: OWNER_ONLY, UNK2
  394. -    ITEM_FIELD_CREATE_PLAYED_TIME             = OBJECT_END + 0x0039, // Size: 1, Type: INT, Flags: PUBLIC
  395. -    ITEM_END                                  = OBJECT_END + 0x003A,
  396. +   ITEM_FIELD_OWNER                            = OBJECT_END + 0x0000, // Size: 2, Type: LONG, Flags: PUBLIC
  397. +   ITEM_FIELD_CONTAINED                        = OBJECT_END + 0x0002, // Size: 2, Type: LONG, Flags: PUBLIC
  398. +   ITEM_FIELD_CREATOR                          = OBJECT_END + 0x0004, // Size: 2, Type: LONG, Flags: PUBLIC
  399. +   ITEM_FIELD_GIFTCREATOR                      = OBJECT_END + 0x0006, // Size: 2, Type: LONG, Flags: PUBLIC
  400. +   ITEM_FIELD_STACK_COUNT                      = OBJECT_END + 0x0008, // Size: 1, Type: INT, Flags: OWNER_ONLY, UNK2
  401. +   ITEM_FIELD_DURATION                         = OBJECT_END + 0x0009, // Size: 1, Type: INT, Flags: OWNER_ONLY, UNK2
  402. +   ITEM_FIELD_SPELL_CHARGES                    = OBJECT_END + 0x000A, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  403. +   ITEM_FIELD_SPELL_CHARGES_1                  = OBJECT_END + 0x000B, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  404. +   ITEM_FIELD_SPELL_CHARGES_2                  = OBJECT_END + 0x000C, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  405. +   ITEM_FIELD_SPELL_CHARGES_3                  = OBJECT_END + 0x000D, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  406. +   ITEM_FIELD_SPELL_CHARGES_4                  = OBJECT_END + 0x000E, // Size: 5, Type: INT, Flags: OWNER_ONLY, UNK2
  407. +   ITEM_FIELD_FLAGS                            = OBJECT_END + 0x000F, // Size: 1, Type: INT, Flags: PUBLIC
  408. +   ITEM_FIELD_ENCHANTMENT_1_1                  = OBJECT_END + 0x0010, // Size: 2, Type: INT, Flags: PUBLIC
  409. +   ITEM_FIELD_ENCHANTMENT_1_3                  = OBJECT_END + 0x0012, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  410. +   ITEM_FIELD_ENCHANTMENT_2_1                  = OBJECT_END + 0x0013, // Size: 2, Type: INT, Flags: PUBLIC
  411. +   ITEM_FIELD_ENCHANTMENT_2_3                  = OBJECT_END + 0x0015, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  412. +   ITEM_FIELD_ENCHANTMENT_3_1                  = OBJECT_END + 0x0016, // Size: 2, Type: INT, Flags: PUBLIC
  413. +   ITEM_FIELD_ENCHANTMENT_3_3                  = OBJECT_END + 0x0018, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  414. +   ITEM_FIELD_ENCHANTMENT_4_1                  = OBJECT_END + 0x0019, // Size: 2, Type: INT, Flags: PUBLIC
  415. +   ITEM_FIELD_ENCHANTMENT_4_3                  = OBJECT_END + 0x001B, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  416. +   ITEM_FIELD_ENCHANTMENT_5_1                  = OBJECT_END + 0x001C, // Size: 2, Type: INT, Flags: PUBLIC
  417. +   ITEM_FIELD_ENCHANTMENT_5_3                  = OBJECT_END + 0x001E, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  418. +   ITEM_FIELD_ENCHANTMENT_6_1                  = OBJECT_END + 0x001F, // Size: 2, Type: INT, Flags: PUBLIC
  419. +   ITEM_FIELD_ENCHANTMENT_6_3                  = OBJECT_END + 0x0021, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  420. +   ITEM_FIELD_ENCHANTMENT_7_1                  = OBJECT_END + 0x0022, // Size: 2, Type: INT, Flags: PUBLIC
  421. +   ITEM_FIELD_ENCHANTMENT_7_3                  = OBJECT_END + 0x0024, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  422. +   ITEM_FIELD_ENCHANTMENT_8_1                  = OBJECT_END + 0x0025, // Size: 2, Type: INT, Flags: PUBLIC
  423. +   ITEM_FIELD_ENCHANTMENT_8_3                  = OBJECT_END + 0x0027, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  424. +   ITEM_FIELD_ENCHANTMENT_9_1                  = OBJECT_END + 0x0028, // Size: 2, Type: INT, Flags: PUBLIC
  425. +   ITEM_FIELD_ENCHANTMENT_9_3                  = OBJECT_END + 0x002A, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  426. +   ITEM_FIELD_ENCHANTMENT_10_1                 = OBJECT_END + 0x002B, // Size: 2, Type: INT, Flags: PUBLIC
  427. +   ITEM_FIELD_ENCHANTMENT_10_3                 = OBJECT_END + 0x002D, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  428. +   ITEM_FIELD_ENCHANTMENT_11_1                 = OBJECT_END + 0x002E, // Size: 2, Type: INT, Flags: PUBLIC
  429. +   ITEM_FIELD_ENCHANTMENT_11_3                 = OBJECT_END + 0x0030, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  430. +   ITEM_FIELD_ENCHANTMENT_12_1                 = OBJECT_END + 0x0031, // Size: 2, Type: INT, Flags: PUBLIC
  431. +   ITEM_FIELD_ENCHANTMENT_12_3                 = OBJECT_END + 0x0033, // Size: 1, Type: TWO_SHORT, Flags: PUBLIC
  432. +   ITEM_FIELD_PROPERTY_SEED                    = OBJECT_END + 0x0034, // Size: 1, Type: INT, Flags: PUBLIC
  433. +   ITEM_FIELD_RANDOM_PROPERTIES_ID             = OBJECT_END + 0x0035, // Size: 1, Type: INT, Flags: PUBLIC
  434. +   ITEM_FIELD_DURABILITY                       = OBJECT_END + 0x0036, // Size: 1, Type: INT, Flags: OWNER_ONLY, UNK2
  435. +   ITEM_FIELD_MAXDURABILITY                    = OBJECT_END + 0x0037, // Size: 1, Type: INT, Flags: OWNER_ONLY, UNK2
  436. +   ITEM_FIELD_CREATE_PLAYED_TIME               = OBJECT_END + 0x0038, // Size: 1, Type: INT, Flags: NONE
  437. +   ITEM_FIELD_ITEM_TEXT_ID                     = OBJECT_END + 0x0039, // Size: 1, Type: INT, Flags: OWNER_ONLY // THIS is wrong, but we shall store the dataz
  438. +   ITEM_END                                    = OBJECT_END + 0x003A,
  439.  };
  440.  
  441.  enum EContainerFields
  442. @@ -164,140 +164,140 @@
  443.  
  444.  enum EUnitFields
  445.  {
  446. -    UNIT_FIELD_CHARM                          = OBJECT_END + 0x0000, // Size: 2, Type: LONG, Flags: PUBLIC
  447. -    UNIT_FIELD_SUMMON                         = OBJECT_END + 0x0002, // Size: 2, Type: LONG, Flags: PUBLIC
  448. -    UNIT_FIELD_CRITTER                        = OBJECT_END + 0x0004, // Size: 2, Type: LONG, Flags: PRIVATE
  449. -    UNIT_FIELD_CHARMEDBY                      = OBJECT_END + 0x0006, // Size: 2, Type: LONG, Flags: PUBLIC
  450. -    UNIT_FIELD_SUMMONEDBY                     = OBJECT_END + 0x0008, // Size: 2, Type: LONG, Flags: PUBLIC
  451. -    UNIT_FIELD_CREATEDBY                      = OBJECT_END + 0x000A, // Size: 2, Type: LONG, Flags: PUBLIC
  452. -    UNIT_FIELD_TARGET                         = OBJECT_END + 0x000C, // Size: 2, Type: LONG, Flags: PUBLIC
  453. -    UNIT_FIELD_CHANNEL_OBJECT                 = OBJECT_END + 0x000E, // Size: 2, Type: LONG, Flags: PUBLIC
  454. -    UNIT_FIELD_BYTES_0                        = OBJECT_END + 0x0010, // Size: 1, Type: BYTES, Flags: PUBLIC
  455. -    UNIT_FIELD_HEALTH                         = OBJECT_END + 0x0011, // Size: 1, Type: INT, Flags: PUBLIC
  456. -    UNIT_FIELD_POWER1                         = OBJECT_END + 0x0012, // Size: 1, Type: INT, Flags: PUBLIC
  457. -    UNIT_FIELD_POWER2                         = OBJECT_END + 0x0013, // Size: 1, Type: INT, Flags: PUBLIC
  458. -    UNIT_FIELD_POWER3                         = OBJECT_END + 0x0014, // Size: 1, Type: INT, Flags: PUBLIC
  459. -    UNIT_FIELD_POWER4                         = OBJECT_END + 0x0015, // Size: 1, Type: INT, Flags: PUBLIC
  460. -    UNIT_FIELD_POWER5                         = OBJECT_END + 0x0016, // Size: 1, Type: INT, Flags: PUBLIC
  461. -    UNIT_FIELD_POWER6                         = OBJECT_END + 0x0017, // Size: 1, Type: INT, Flags: PUBLIC
  462. -    UNIT_FIELD_POWER7                         = OBJECT_END + 0x0018, // Size: 1, Type: INT, Flags: PUBLIC
  463. -    UNIT_FIELD_MAXHEALTH                      = OBJECT_END + 0x0019, // Size: 1, Type: INT, Flags: PUBLIC
  464. -    UNIT_FIELD_MAXPOWER1                      = OBJECT_END + 0x001A, // Size: 1, Type: INT, Flags: PUBLIC
  465. -    UNIT_FIELD_MAXPOWER2                      = OBJECT_END + 0x001B, // Size: 1, Type: INT, Flags: PUBLIC
  466. -    UNIT_FIELD_MAXPOWER3                      = OBJECT_END + 0x001C, // Size: 1, Type: INT, Flags: PUBLIC
  467. -    UNIT_FIELD_MAXPOWER4                      = OBJECT_END + 0x001D, // Size: 1, Type: INT, Flags: PUBLIC
  468. -    UNIT_FIELD_MAXPOWER5                      = OBJECT_END + 0x001E, // Size: 1, Type: INT, Flags: PUBLIC
  469. -    UNIT_FIELD_MAXPOWER6                      = OBJECT_END + 0x001F, // Size: 1, Type: INT, Flags: PUBLIC
  470. -    UNIT_FIELD_MAXPOWER7                      = OBJECT_END + 0x0020, // Size: 1, Type: INT, Flags: PUBLIC
  471. -    UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER      = OBJECT_END + 0x0021, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  472. -    UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_1    = OBJECT_END + 0x0022, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  473. -    UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_2    = OBJECT_END + 0x0023, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  474. -    UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_3    = OBJECT_END + 0x0024, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  475. -    UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_4    = OBJECT_END + 0x0025, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  476. -    UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_5    = OBJECT_END + 0x0026, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  477. -    UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_6    = OBJECT_END + 0x0027, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  478. -    UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER = OBJECT_END + 0x0028, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  479. -    UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_1 = OBJECT_END + 0x0029, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  480. -    UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_2 = OBJECT_END + 0x002A, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  481. -    UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_3 = OBJECT_END + 0x002B, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  482. -    UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_4 = OBJECT_END + 0x002C, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  483. -    UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_5 = OBJECT_END + 0x002D, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  484. -    UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_6 = OBJECT_END + 0x002E, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  485. -    UNIT_FIELD_LEVEL                          = OBJECT_END + 0x002F, // Size: 1, Type: INT, Flags: PUBLIC
  486. -    UNIT_FIELD_FACTIONTEMPLATE                = OBJECT_END + 0x0030, // Size: 1, Type: INT, Flags: PUBLIC
  487. -    UNIT_VIRTUAL_ITEM_SLOT_ID                 = OBJECT_END + 0x0031, // Size: 3, Type: INT, Flags: PUBLIC
  488. -    UNIT_VIRTUAL_ITEM_SLOT_ID_1               = OBJECT_END + 0x0032, // Size: 3, Type: INT, Flags: PUBLIC
  489. -    UNIT_VIRTUAL_ITEM_SLOT_ID_2               = OBJECT_END + 0x0033, // Size: 3, Type: INT, Flags: PUBLIC
  490. -    UNIT_FIELD_FLAGS                          = OBJECT_END + 0x0034, // Size: 1, Type: INT, Flags: PUBLIC
  491. -    UNIT_FIELD_FLAGS_2                        = OBJECT_END + 0x0035, // Size: 1, Type: INT, Flags: PUBLIC
  492. -    UNIT_FIELD_AURASTATE                      = OBJECT_END + 0x0036, // Size: 1, Type: INT, Flags: PUBLIC
  493. -    UNIT_FIELD_BASEATTACKTIME                 = OBJECT_END + 0x0037, // Size: 2, Type: INT, Flags: PUBLIC
  494. -    UNIT_FIELD_RANGEDATTACKTIME               = OBJECT_END + 0x0039, // Size: 1, Type: INT, Flags: PRIVATE
  495. -    UNIT_FIELD_BOUNDINGRADIUS                 = OBJECT_END + 0x003A, // Size: 1, Type: FLOAT, Flags: PUBLIC
  496. -    UNIT_FIELD_COMBATREACH                    = OBJECT_END + 0x003B, // Size: 1, Type: FLOAT, Flags: PUBLIC
  497. -    UNIT_FIELD_DISPLAYID                      = OBJECT_END + 0x003C, // Size: 1, Type: INT, Flags: PUBLIC
  498. -    UNIT_FIELD_NATIVEDISPLAYID                = OBJECT_END + 0x003D, // Size: 1, Type: INT, Flags: PUBLIC
  499. -    UNIT_FIELD_MOUNTDISPLAYID                 = OBJECT_END + 0x003E, // Size: 1, Type: INT, Flags: PUBLIC
  500. -    UNIT_FIELD_MINDAMAGE                      = OBJECT_END + 0x003F, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY, UNK3
  501. -    UNIT_FIELD_MAXDAMAGE                      = OBJECT_END + 0x0040, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY, UNK3
  502. -    UNIT_FIELD_MINOFFHANDDAMAGE               = OBJECT_END + 0x0041, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY, UNK3
  503. -    UNIT_FIELD_MAXOFFHANDDAMAGE               = OBJECT_END + 0x0042, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY, UNK3
  504. -    UNIT_FIELD_BYTES_1                        = OBJECT_END + 0x0043, // Size: 1, Type: BYTES, Flags: PUBLIC
  505. -    UNIT_FIELD_PETNUMBER                      = OBJECT_END + 0x0044, // Size: 1, Type: INT, Flags: PUBLIC
  506. -    UNIT_FIELD_PET_NAME_TIMESTAMP             = OBJECT_END + 0x0045, // Size: 1, Type: INT, Flags: PUBLIC
  507. -    UNIT_FIELD_PETEXPERIENCE                  = OBJECT_END + 0x0046, // Size: 1, Type: INT, Flags: OWNER_ONLY
  508. -    UNIT_FIELD_PETNEXTLEVELEXP                = OBJECT_END + 0x0047, // Size: 1, Type: INT, Flags: OWNER_ONLY
  509. -    UNIT_DYNAMIC_FLAGS                        = OBJECT_END + 0x0048, // Size: 1, Type: INT, Flags: DYNAMIC
  510. -    UNIT_CHANNEL_SPELL                        = OBJECT_END + 0x0049, // Size: 1, Type: INT, Flags: PUBLIC
  511. -    UNIT_MOD_CAST_SPEED                       = OBJECT_END + 0x004A, // Size: 1, Type: FLOAT, Flags: PUBLIC
  512. -    UNIT_CREATED_BY_SPELL                     = OBJECT_END + 0x004B, // Size: 1, Type: INT, Flags: PUBLIC
  513. -    UNIT_NPC_FLAGS                            = OBJECT_END + 0x004C, // Size: 1, Type: INT, Flags: DYNAMIC
  514. -    UNIT_NPC_EMOTESTATE                       = OBJECT_END + 0x004D, // Size: 1, Type: INT, Flags: PUBLIC
  515. -    UNIT_FIELD_STAT0                          = OBJECT_END + 0x004E, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  516. -    UNIT_FIELD_STAT1                          = OBJECT_END + 0x004F, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  517. -    UNIT_FIELD_STAT2                          = OBJECT_END + 0x0050, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  518. -    UNIT_FIELD_STAT3                          = OBJECT_END + 0x0051, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  519. -    UNIT_FIELD_STAT4                          = OBJECT_END + 0x0052, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  520. -    UNIT_FIELD_POSSTAT0                       = OBJECT_END + 0x0053, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  521. -    UNIT_FIELD_POSSTAT1                       = OBJECT_END + 0x0054, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  522. -    UNIT_FIELD_POSSTAT2                       = OBJECT_END + 0x0055, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  523. -    UNIT_FIELD_POSSTAT3                       = OBJECT_END + 0x0056, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  524. -    UNIT_FIELD_POSSTAT4                       = OBJECT_END + 0x0057, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  525. -    UNIT_FIELD_NEGSTAT0                       = OBJECT_END + 0x0058, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  526. -    UNIT_FIELD_NEGSTAT1                       = OBJECT_END + 0x0059, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  527. -    UNIT_FIELD_NEGSTAT2                       = OBJECT_END + 0x005A, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  528. -    UNIT_FIELD_NEGSTAT3                       = OBJECT_END + 0x005B, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  529. -    UNIT_FIELD_NEGSTAT4                       = OBJECT_END + 0x005C, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  530. -    UNIT_FIELD_RESISTANCES                    = OBJECT_END + 0x005D, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  531. -    UNIT_FIELD_RESISTANCES_1                  = OBJECT_END + 0x005E, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  532. -    UNIT_FIELD_RESISTANCES_2                  = OBJECT_END + 0x005F, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  533. -    UNIT_FIELD_RESISTANCES_3                  = OBJECT_END + 0x0060, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  534. -    UNIT_FIELD_RESISTANCES_4                  = OBJECT_END + 0x0061, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  535. -    UNIT_FIELD_RESISTANCES_5                  = OBJECT_END + 0x0062, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  536. -    UNIT_FIELD_RESISTANCES_6                  = OBJECT_END + 0x0063, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  537. -    UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE     = OBJECT_END + 0x0064, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  538. -    UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_1   = OBJECT_END + 0x0065, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  539. -    UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_2   = OBJECT_END + 0x0066, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  540. -    UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_3   = OBJECT_END + 0x0067, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  541. -    UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_4   = OBJECT_END + 0x0068, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  542. -    UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_5   = OBJECT_END + 0x0069, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  543. -    UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_6   = OBJECT_END + 0x006A, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  544. -    UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE     = OBJECT_END + 0x006B, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  545. -    UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_1   = OBJECT_END + 0x006C, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  546. -    UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_2   = OBJECT_END + 0x006D, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  547. -    UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_3   = OBJECT_END + 0x006E, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  548. -    UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_4   = OBJECT_END + 0x006F, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  549. -    UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_5   = OBJECT_END + 0x0070, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  550. -    UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_6   = OBJECT_END + 0x0071, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  551. -    UNIT_FIELD_BASE_MANA                      = OBJECT_END + 0x0072, // Size: 1, Type: INT, Flags: PUBLIC
  552. -    UNIT_FIELD_BASE_HEALTH                    = OBJECT_END + 0x0073, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  553. -    UNIT_FIELD_BYTES_2                        = OBJECT_END + 0x0074, // Size: 1, Type: BYTES, Flags: PUBLIC
  554. -    UNIT_FIELD_ATTACK_POWER                   = OBJECT_END + 0x0075, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  555. -    UNIT_FIELD_ATTACK_POWER_MODS              = OBJECT_END + 0x0076, // Size: 1, Type: TWO_SHORT, Flags: PRIVATE, OWNER_ONLY
  556. -    UNIT_FIELD_ATTACK_POWER_MULTIPLIER        = OBJECT_END + 0x0077, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  557. -    UNIT_FIELD_RANGED_ATTACK_POWER            = OBJECT_END + 0x0078, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  558. -    UNIT_FIELD_RANGED_ATTACK_POWER_MODS       = OBJECT_END + 0x0079, // Size: 1, Type: TWO_SHORT, Flags: PRIVATE, OWNER_ONLY
  559. -    UNIT_FIELD_RANGED_ATTACK_POWER_MULTIPLIER = OBJECT_END + 0x007A, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  560. -    UNIT_FIELD_MINRANGEDDAMAGE                = OBJECT_END + 0x007B, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  561. -    UNIT_FIELD_MAXRANGEDDAMAGE                = OBJECT_END + 0x007C, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  562. -    UNIT_FIELD_POWER_COST_MODIFIER            = OBJECT_END + 0x007D, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  563. -    UNIT_FIELD_POWER_COST_MODIFIER_1          = OBJECT_END + 0x007E, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  564. -    UNIT_FIELD_POWER_COST_MODIFIER_2          = OBJECT_END + 0x007F, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  565. -    UNIT_FIELD_POWER_COST_MODIFIER_3          = OBJECT_END + 0x0080, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  566. -    UNIT_FIELD_POWER_COST_MODIFIER_4          = OBJECT_END + 0x0081, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  567. -    UNIT_FIELD_POWER_COST_MODIFIER_5          = OBJECT_END + 0x0082, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  568. -    UNIT_FIELD_POWER_COST_MODIFIER_6          = OBJECT_END + 0x0083, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  569. -    UNIT_FIELD_POWER_COST_MULTIPLIER          = OBJECT_END + 0x0084, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  570. -    UNIT_FIELD_POWER_COST_MULTIPLIER_1        = OBJECT_END + 0x0085, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  571. -    UNIT_FIELD_POWER_COST_MULTIPLIER_2        = OBJECT_END + 0x0086, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  572. -    UNIT_FIELD_POWER_COST_MULTIPLIER_3        = OBJECT_END + 0x0087, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  573. -    UNIT_FIELD_POWER_COST_MULTIPLIER_4        = OBJECT_END + 0x0088, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  574. -    UNIT_FIELD_POWER_COST_MULTIPLIER_5        = OBJECT_END + 0x0089, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  575. -    UNIT_FIELD_POWER_COST_MULTIPLIER_6        = OBJECT_END + 0x008A, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  576. -    UNIT_FIELD_MAXHEALTHMODIFIER              = OBJECT_END + 0x008B, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  577. -    UNIT_FIELD_HOVERHEIGHT                    = OBJECT_END + 0x008C, // Size: 1, Type: FLOAT, Flags: PUBLIC
  578. -    UNIT_FIELD_PADDING                        = OBJECT_END + 0x008D, // Size: 1, Type: INT, Flags: NONE
  579. -    UNIT_END                                  = OBJECT_END + 0x008E,
  580. +   UNIT_FIELD_CHARM                            = OBJECT_END + 0x0000, // Size: 2, Type: LONG, Flags: PUBLIC
  581. +   UNIT_FIELD_SUMMON                           = OBJECT_END + 0x0002, // Size: 2, Type: LONG, Flags: PUBLIC
  582. +   UNIT_FIELD_CRITTER                          = OBJECT_END + 0x0004, // Size: 2, Type: LONG, Flags: PRIVATE
  583. +   UNIT_FIELD_CHARMEDBY                        = OBJECT_END + 0x0006, // Size: 2, Type: LONG, Flags: PUBLIC
  584. +   UNIT_FIELD_SUMMONEDBY                       = OBJECT_END + 0x0008, // Size: 2, Type: LONG, Flags: PUBLIC
  585. +   UNIT_FIELD_CREATEDBY                        = OBJECT_END + 0x000A, // Size: 2, Type: LONG, Flags: PUBLIC
  586. +   UNIT_FIELD_TARGET                           = OBJECT_END + 0x000C, // Size: 2, Type: LONG, Flags: PUBLIC
  587. +   UNIT_FIELD_CHANNEL_OBJECT                   = OBJECT_END + 0x000E, // Size: 2, Type: LONG, Flags: PUBLIC
  588. +   UNIT_CHANNEL_SPELL                          = OBJECT_END + 0x0010, // Size: 1, Type: INT, Flags: PUBLIC
  589. +   UNIT_FIELD_BYTES_0                          = OBJECT_END + 0x0011, // Size: 1, Type: BYTES, Flags: PUBLIC
  590. +   UNIT_FIELD_HEALTH                           = OBJECT_END + 0x0012, // Size: 1, Type: INT, Flags: PUBLIC
  591. +   UNIT_FIELD_POWER1                           = OBJECT_END + 0x0013, // Size: 1, Type: INT, Flags: PUBLIC
  592. +   UNIT_FIELD_POWER2                           = OBJECT_END + 0x0014, // Size: 1, Type: INT, Flags: PUBLIC
  593. +   UNIT_FIELD_POWER3                           = OBJECT_END + 0x0015, // Size: 1, Type: INT, Flags: PUBLIC
  594. +   UNIT_FIELD_POWER4                           = OBJECT_END + 0x0016, // Size: 1, Type: INT, Flags: PUBLIC
  595. +   UNIT_FIELD_POWER5                           = OBJECT_END + 0x0017, // Size: 1, Type: INT, Flags: PUBLIC
  596. +   UNIT_FIELD_POWER6                           = OBJECT_END + 0x0018, // Size: 1, Type: INT, Flags: PUBLIC
  597. +   UNIT_FIELD_POWER7                           = OBJECT_END + 0x0019, // Size: 1, Type: INT, Flags: PUBLIC
  598. +   UNIT_FIELD_MAXHEALTH                        = OBJECT_END + 0x001A, // Size: 1, Type: INT, Flags: PUBLIC
  599. +   UNIT_FIELD_MAXPOWER1                        = OBJECT_END + 0x001B, // Size: 1, Type: INT, Flags: PUBLIC
  600. +   UNIT_FIELD_MAXPOWER2                        = OBJECT_END + 0x001C, // Size: 1, Type: INT, Flags: PUBLIC
  601. +   UNIT_FIELD_MAXPOWER3                        = OBJECT_END + 0x001D, // Size: 1, Type: INT, Flags: PUBLIC
  602. +   UNIT_FIELD_MAXPOWER4                        = OBJECT_END + 0x001E, // Size: 1, Type: INT, Flags: PUBLIC
  603. +   UNIT_FIELD_MAXPOWER5                        = OBJECT_END + 0x001F, // Size: 1, Type: INT, Flags: PUBLIC
  604. +   UNIT_FIELD_MAXPOWER6                        = OBJECT_END + 0x0020, // Size: 1, Type: INT, Flags: PUBLIC
  605. +   UNIT_FIELD_MAXPOWER7                        = OBJECT_END + 0x0021, // Size: 1, Type: INT, Flags: PUBLIC
  606. +   UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER        = OBJECT_END + 0x0022, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  607. +   UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_1      = OBJECT_END + 0x0023, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  608. +   UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_2      = OBJECT_END + 0x0024, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  609. +   UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_3      = OBJECT_END + 0x0025, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  610. +   UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_4      = OBJECT_END + 0x0026, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  611. +   UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_5      = OBJECT_END + 0x0027, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  612. +   UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER_6      = OBJECT_END + 0x0028, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  613. +   UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER    = OBJECT_END + 0x0029, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  614. +   UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_1  = OBJECT_END + 0x002A, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  615. +   UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_2  = OBJECT_END + 0x002B, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  616. +   UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_3  = OBJECT_END + 0x002C, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  617. +   UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_4  = OBJECT_END + 0x002D, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  618. +   UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_5  = OBJECT_END + 0x002E, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  619. +   UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER_6  = OBJECT_END + 0x002F, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  620. +   UNIT_FIELD_LEVEL                            = OBJECT_END + 0x0030, // Size: 1, Type: INT, Flags: PUBLIC
  621. +   UNIT_FIELD_FACTIONTEMPLATE                  = OBJECT_END + 0x0031, // Size: 1, Type: INT, Flags: PUBLIC
  622. +   UNIT_VIRTUAL_ITEM_SLOT_ID                   = OBJECT_END + 0x0032, // Size: 3, Type: INT, Flags: PUBLIC
  623. +   UNIT_VIRTUAL_ITEM_SLOT_ID_1                 = OBJECT_END + 0x0033, // Size: 3, Type: INT, Flags: PUBLIC
  624. +   UNIT_VIRTUAL_ITEM_SLOT_ID_2                 = OBJECT_END + 0x0034, // Size: 3, Type: INT, Flags: PUBLIC
  625. +   UNIT_FIELD_FLAGS                            = OBJECT_END + 0x0035, // Size: 1, Type: INT, Flags: PUBLIC
  626. +   UNIT_FIELD_FLAGS_2                          = OBJECT_END + 0x0036, // Size: 1, Type: INT, Flags: PUBLIC
  627. +   UNIT_FIELD_AURASTATE                        = OBJECT_END + 0x0037, // Size: 1, Type: INT, Flags: PUBLIC
  628. +   UNIT_FIELD_BASEATTACKTIME                   = OBJECT_END + 0x0038, // Size: 2, Type: INT, Flags: PUBLIC
  629. +   UNIT_FIELD_RANGEDATTACKTIME                 = OBJECT_END + 0x003A, // Size: 1, Type: INT, Flags: PRIVATE
  630. +   UNIT_FIELD_BOUNDINGRADIUS                   = OBJECT_END + 0x003B, // Size: 1, Type: FLOAT, Flags: PUBLIC
  631. +   UNIT_FIELD_COMBATREACH                      = OBJECT_END + 0x003C, // Size: 1, Type: FLOAT, Flags: PUBLIC
  632. +   UNIT_FIELD_DISPLAYID                        = OBJECT_END + 0x003D, // Size: 1, Type: INT, Flags: PUBLIC
  633. +   UNIT_FIELD_NATIVEDISPLAYID                  = OBJECT_END + 0x003E, // Size: 1, Type: INT, Flags: PUBLIC
  634. +   UNIT_FIELD_MOUNTDISPLAYID                   = OBJECT_END + 0x003F, // Size: 1, Type: INT, Flags: PUBLIC
  635. +   UNIT_FIELD_MINDAMAGE                        = OBJECT_END + 0x0040, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY, UNK3
  636. +   UNIT_FIELD_MAXDAMAGE                        = OBJECT_END + 0x0041, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY, UNK3
  637. +   UNIT_FIELD_MINOFFHANDDAMAGE                 = OBJECT_END + 0x0042, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY, UNK3
  638. +   UNIT_FIELD_MAXOFFHANDDAMAGE                 = OBJECT_END + 0x0043, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY, UNK3
  639. +   UNIT_FIELD_BYTES_1                          = OBJECT_END + 0x0044, // Size: 1, Type: BYTES, Flags: PUBLIC
  640. +   UNIT_FIELD_PETNUMBER                        = OBJECT_END + 0x0045, // Size: 1, Type: INT, Flags: PUBLIC
  641. +   UNIT_FIELD_PET_NAME_TIMESTAMP               = OBJECT_END + 0x0046, // Size: 1, Type: INT, Flags: PUBLIC
  642. +   UNIT_FIELD_PETEXPERIENCE                    = OBJECT_END + 0x0047, // Size: 1, Type: INT, Flags: OWNER_ONLY
  643. +   UNIT_FIELD_PETNEXTLEVELEXP                  = OBJECT_END + 0x0048, // Size: 1, Type: INT, Flags: OWNER_ONLY
  644. +   UNIT_DYNAMIC_FLAGS                          = OBJECT_END + 0x0049, // Size: 1, Type: INT, Flags: DYNAMIC
  645. +   UNIT_MOD_CAST_SPEED                         = OBJECT_END + 0x004A, // Size: 1, Type: FLOAT, Flags: PUBLIC
  646. +   UNIT_CREATED_BY_SPELL                       = OBJECT_END + 0x004B, // Size: 1, Type: INT, Flags: PUBLIC
  647. +   UNIT_NPC_FLAGS                              = OBJECT_END + 0x004C, // Size: 1, Type: INT, Flags: DYNAMIC
  648. +   UNIT_NPC_EMOTESTATE                         = OBJECT_END + 0x004D, // Size: 1, Type: INT, Flags: PUBLIC
  649. +   UNIT_FIELD_STAT0                            = OBJECT_END + 0x004E, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  650. +   UNIT_FIELD_STAT1                            = OBJECT_END + 0x004F, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  651. +   UNIT_FIELD_STAT2                            = OBJECT_END + 0x0050, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  652. +   UNIT_FIELD_STAT3                            = OBJECT_END + 0x0051, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  653. +   UNIT_FIELD_STAT4                            = OBJECT_END + 0x0052, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  654. +   UNIT_FIELD_POSSTAT0                         = OBJECT_END + 0x0053, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  655. +   UNIT_FIELD_POSSTAT1                         = OBJECT_END + 0x0054, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  656. +   UNIT_FIELD_POSSTAT2                         = OBJECT_END + 0x0055, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  657. +   UNIT_FIELD_POSSTAT3                         = OBJECT_END + 0x0056, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  658. +   UNIT_FIELD_POSSTAT4                         = OBJECT_END + 0x0057, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  659. +   UNIT_FIELD_NEGSTAT0                         = OBJECT_END + 0x0058, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  660. +   UNIT_FIELD_NEGSTAT1                         = OBJECT_END + 0x0059, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  661. +   UNIT_FIELD_NEGSTAT2                         = OBJECT_END + 0x005A, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  662. +   UNIT_FIELD_NEGSTAT3                         = OBJECT_END + 0x005B, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  663. +   UNIT_FIELD_NEGSTAT4                         = OBJECT_END + 0x005C, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  664. +   UNIT_FIELD_RESISTANCES                      = OBJECT_END + 0x005D, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  665. +   UNIT_FIELD_RESISTANCES_1                    = OBJECT_END + 0x005E, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  666. +   UNIT_FIELD_RESISTANCES_2                    = OBJECT_END + 0x005F, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  667. +   UNIT_FIELD_RESISTANCES_3                    = OBJECT_END + 0x0060, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  668. +   UNIT_FIELD_RESISTANCES_4                    = OBJECT_END + 0x0061, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  669. +   UNIT_FIELD_RESISTANCES_5                    = OBJECT_END + 0x0062, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  670. +   UNIT_FIELD_RESISTANCES_6                    = OBJECT_END + 0x0063, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY, UNK3
  671. +   UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE       = OBJECT_END + 0x0064, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  672. +   UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_1     = OBJECT_END + 0x0065, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  673. +   UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_2     = OBJECT_END + 0x0066, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  674. +   UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_3     = OBJECT_END + 0x0067, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  675. +   UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_4     = OBJECT_END + 0x0068, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  676. +   UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_5     = OBJECT_END + 0x0069, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  677. +   UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE_6     = OBJECT_END + 0x006A, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  678. +   UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE       = OBJECT_END + 0x006B, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  679. +   UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_1     = OBJECT_END + 0x006C, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  680. +   UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_2     = OBJECT_END + 0x006D, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  681. +   UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_3     = OBJECT_END + 0x006E, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  682. +   UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_4     = OBJECT_END + 0x006F, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  683. +   UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_5     = OBJECT_END + 0x0070, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  684. +   UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE_6     = OBJECT_END + 0x0071, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  685. +   UNIT_FIELD_BASE_MANA                        = OBJECT_END + 0x0072, // Size: 1, Type: INT, Flags: PUBLIC
  686. +   UNIT_FIELD_BASE_HEALTH                      = OBJECT_END + 0x0073, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  687. +   UNIT_FIELD_BYTES_2                          = OBJECT_END + 0x0074, // Size: 1, Type: BYTES, Flags: PUBLIC
  688. +   UNIT_FIELD_ATTACK_POWER                     = OBJECT_END + 0x0075, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  689. +   UNIT_FIELD_ATTACK_POWER_MODS                = OBJECT_END + 0x0076, // Size: 1, Type: TWO_SHORT, Flags: PRIVATE, OWNER_ONLY
  690. +   UNIT_FIELD_ATTACK_POWER_MULTIPLIER          = OBJECT_END + 0x0077, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  691. +   UNIT_FIELD_RANGED_ATTACK_POWER              = OBJECT_END + 0x0078, // Size: 1, Type: INT, Flags: PRIVATE, OWNER_ONLY
  692. +   UNIT_FIELD_RANGED_ATTACK_POWER_MODS         = OBJECT_END + 0x0079, // Size: 1, Type: TWO_SHORT, Flags: PRIVATE, OWNER_ONLY
  693. +   UNIT_FIELD_RANGED_ATTACK_POWER_MULTIPLIER   = OBJECT_END + 0x007A, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  694. +   UNIT_FIELD_MINRANGEDDAMAGE                  = OBJECT_END + 0x007B, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  695. +   UNIT_FIELD_MAXRANGEDDAMAGE                  = OBJECT_END + 0x007C, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  696. +   UNIT_FIELD_POWER_COST_MODIFIER              = OBJECT_END + 0x007D, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  697. +   UNIT_FIELD_POWER_COST_MODIFIER_1            = OBJECT_END + 0x007E, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  698. +   UNIT_FIELD_POWER_COST_MODIFIER_2            = OBJECT_END + 0x007F, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  699. +   UNIT_FIELD_POWER_COST_MODIFIER_3            = OBJECT_END + 0x0080, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  700. +   UNIT_FIELD_POWER_COST_MODIFIER_4            = OBJECT_END + 0x0081, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  701. +   UNIT_FIELD_POWER_COST_MODIFIER_5            = OBJECT_END + 0x0082, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  702. +   UNIT_FIELD_POWER_COST_MODIFIER_6            = OBJECT_END + 0x0083, // Size: 7, Type: INT, Flags: PRIVATE, OWNER_ONLY
  703. +   UNIT_FIELD_POWER_COST_MULTIPLIER            = OBJECT_END + 0x0084, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  704. +   UNIT_FIELD_POWER_COST_MULTIPLIER_1          = OBJECT_END + 0x0085, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  705. +   UNIT_FIELD_POWER_COST_MULTIPLIER_2          = OBJECT_END + 0x0086, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  706. +   UNIT_FIELD_POWER_COST_MULTIPLIER_3          = OBJECT_END + 0x0087, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  707. +   UNIT_FIELD_POWER_COST_MULTIPLIER_4          = OBJECT_END + 0x0088, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  708. +   UNIT_FIELD_POWER_COST_MULTIPLIER_5          = OBJECT_END + 0x0089, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  709. +   UNIT_FIELD_POWER_COST_MULTIPLIER_6          = OBJECT_END + 0x008A, // Size: 7, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  710. +   UNIT_FIELD_MAXHEALTHMODIFIER                = OBJECT_END + 0x008B, // Size: 1, Type: FLOAT, Flags: PRIVATE, OWNER_ONLY
  711. +   UNIT_FIELD_HOVERHEIGHT                      = OBJECT_END + 0x008C, // Size: 1, Type: FLOAT, Flags: PUBLIC
  712. +   UNIT_FIELD_PADDING                          = OBJECT_END + 0x008D, // Size: 1, Type: INT, Flags: NONE
  713. +   UNIT_END                                    = OBJECT_END + 0x008E,
  714.  
  715.      PLAYER_DUEL_ARBITER                       = UNIT_END + 0x0000, // Size: 2, Type: LONG, Flags: PUBLIC
  716.      PLAYER_FLAGS                              = UNIT_END + 0x0002, // Size: 1, Type: INT, Flags: PUBLIC
Advertisement
Add Comment
Please, Sign In to add comment