From 765f3a8d700b032a61f17bf0d8e54d570829fe29 Mon Sep 17 00:00:00 2001 From: theluda Date: Mon, 9 Oct 2006 11:14:24 +0000 Subject: [PATCH] [2391] Support for client 1.12.x branch, part I: - Allow only client 1.12.1, build 5875 to login - Updated login handler - Updated DBC formats - Updated UpdateFields Missing parts: - Update for contrib/map_extractor/ coming. --- src/game/CharacterHandler.cpp | 6 +- src/game/GameObject.cpp | 2 +- src/game/ItemHandler.cpp | 2 + src/game/Level3.cpp | 17 ++ src/game/QueryHandler.cpp | 12 +- src/game/UpdateFields.h | 406 +++++++++++++++++++++-------------------- src/game/WorldSocket.cpp | 10 +- src/realmd/AuthSocket.cpp | 1 + src/realmd/AuthSocket.h | 1 + src/shared/Common.h | 4 +- src/shared/Database/DBCfmt.cpp | 6 +- 11 files changed, 261 insertions(+), 206 deletions(-) diff --git a/src/game/CharacterHandler.cpp b/src/game/CharacterHandler.cpp index 0eda6927..8c2a2cd9 100644 --- a/src/game/CharacterHandler.cpp +++ b/src/game/CharacterHandler.cpp @@ -251,8 +251,10 @@ void WorldSession::HandleCharDeleteOpcode( WorldPacket & recv_data ) delete plr; - data.Initialize(SMSG_CHAR_CREATE); - data << (uint8)0x34; + //data.Initialize(SMSG_CHAR_CREATE); + //data << (uint8)0x34; + data.Initialize(SMSG_CHAR_DELETE); // Changed in 1.12.x client branch + data << (uint8)0x39; // Changed in 1.12.x client branch SendPacket( &data ); } diff --git a/src/game/GameObject.cpp b/src/game/GameObject.cpp index c212bb14..abb2b585 100644 --- a/src/game/GameObject.cpp +++ b/src/game/GameObject.cpp @@ -72,7 +72,7 @@ bool GameObject::Create(uint32 guidlow, uint32 name_id, uint32 mapid, float x, f Object::_Create(guidlow, HIGHGUID_GAMEOBJECT); - SetUInt32Value(GAMEOBJECT_TIMESTAMP, (uint32)time(NULL)); + // SetUInt32Value(GAMEOBJECT_TIMESTAMP, (uint32)time(NULL)); SetFloatValue(GAMEOBJECT_POS_X, x); SetFloatValue(GAMEOBJECT_POS_Y, y); SetFloatValue(GAMEOBJECT_POS_Z, z); diff --git a/src/game/ItemHandler.cpp b/src/game/ItemHandler.cpp index f418d371..69a56517 100644 --- a/src/game/ItemHandler.cpp +++ b/src/game/ItemHandler.cpp @@ -221,12 +221,14 @@ void WorldSession::HandleItemQuerySingleOpcode( WorldPacket & recv_data ) data << pProto->MaxDurability; data << pProto->Area; data << pProto->Unknown1; + data << pProto->Unknown1; // Added in 1.12.x client branch } else { data << item; for(int a = 0; a < 11; a++) data << uint64(0); + data << uint32(0); // Added in 1.12.x client branch SendPacket( &data ); return; } diff --git a/src/game/Level3.cpp b/src/game/Level3.cpp index 15ebaf89..54b878c6 100644 --- a/src/game/Level3.cpp +++ b/src/game/Level3.cpp @@ -36,6 +36,23 @@ bool ChatHandler::HandleReloadCommand(const char* args) { + char* updatefield = strtok((char*)args, " "); + + char* value = strtok(NULL, " "); + + if (!updatefield || !value) + return false; + + uint32 tupdatefield = (uint32)atoi(updatefield); + uint32 tvalue = (uint32)atoi(value); + + Player *chr = m_session->GetPlayer(); + if (chr == NULL) + { + SendSysMessage(LANG_NO_CHAR_SELECTED); + return true; + } + chr->SetUInt32Value(tupdatefield, tvalue); return true; } diff --git a/src/game/QueryHandler.cpp b/src/game/QueryHandler.cpp index f72140a5..d18ae9ed 100644 --- a/src/game/QueryHandler.cpp +++ b/src/game/QueryHandler.cpp @@ -362,6 +362,12 @@ void WorldSession::HandleGameObjectQueryOpcode( WorldPacket & recv_data ) data << uint32(0); data << uint16(0); data << uint8(0); + + data << uint64(0); // Added in 1.12.x client branch + data << uint64(0); // Added in 1.12.x client branch + data << uint64(0); // Added in 1.12.x client branch + data << uint64(0); // Added in 1.12.x client branch + data << uint8(0); // Added in 1.12.x client branch SendPacket( &data ); return; } @@ -371,7 +377,7 @@ void WorldSession::HandleGameObjectQueryOpcode( WorldPacket & recv_data ) data << info->name; data << uint16(0); //unknown data << uint8(0); //unknown - + data << uint8(0); // Added in 1.12.x client branch data << uint32(info->sound0); data << uint32(info->sound1); data << uint32(info->sound2); @@ -387,6 +393,10 @@ void WorldSession::HandleGameObjectQueryOpcode( WorldPacket & recv_data ) data << uint64(0); data << uint64(0); + data << uint64(0); // Added in 1.12.x client branch + data << uint64(0); // Added in 1.12.x client branch + data << uint64(0); // Added in 1.12.x client branch + data << uint64(0); // Added in 1.12.x client branch SendPacket( &data ); } diff --git a/src/game/UpdateFields.h b/src/game/UpdateFields.h index 385e1777..388b84c4 100644 --- a/src/game/UpdateFields.h +++ b/src/game/UpdateFields.h @@ -185,281 +185,283 @@ enum EUnitFields UNIT_END = 0xB6 + OBJECT_END, PLAYER_SELECTION = 0x0 + UNIT_END, - PLAYER_DUEL_ARBITER = 0x2 + UNIT_END, - PLAYER_FLAGS = 0x4 + UNIT_END, - PLAYER_GUILDID = 0x5 + UNIT_END, - PLAYER_GUILDRANK = 0x6 + UNIT_END, - PLAYER_BYTES = 0x7 + UNIT_END, - PLAYER_BYTES_2 = 0x8 + UNIT_END, - PLAYER_BYTES_3 = 0x9 + UNIT_END, - PLAYER_DUEL_TEAM = 0xA + UNIT_END, - PLAYER_GUILD_TIMESTAMP = 0xB + UNIT_END, - PLAYER_QUEST_LOG_1_1 = 0xC + UNIT_END, - PLAYER_QUEST_LOG_1_2 = 0xD + UNIT_END, - PLAYER_QUEST_LOG_2_1 = 0xF + UNIT_END, - PLAYER_QUEST_LOG_2_2 = 0x10 + UNIT_END, - PLAYER_QUEST_LOG_3_1 = 0x12 + UNIT_END, - PLAYER_QUEST_LOG_3_2 = 0x13 + UNIT_END, - PLAYER_QUEST_LOG_4_1 = 0x15 + UNIT_END, - PLAYER_QUEST_LOG_4_2 = 0x16 + UNIT_END, - PLAYER_QUEST_LOG_5_1 = 0x18 + UNIT_END, - PLAYER_QUEST_LOG_5_2 = 0x19 + UNIT_END, - PLAYER_QUEST_LOG_6_1 = 0x1B + UNIT_END, - PLAYER_QUEST_LOG_6_2 = 0x1C + UNIT_END, - PLAYER_QUEST_LOG_7_1 = 0x1E + UNIT_END, - PLAYER_QUEST_LOG_7_2 = 0x1F + UNIT_END, - PLAYER_QUEST_LOG_8_1 = 0x21 + UNIT_END, - PLAYER_QUEST_LOG_8_2 = 0x22 + UNIT_END, - PLAYER_QUEST_LOG_9_1 = 0x24 + UNIT_END, - PLAYER_QUEST_LOG_9_2 = 0x25 + UNIT_END, - PLAYER_QUEST_LOG_10_1 = 0x27 + UNIT_END, - PLAYER_QUEST_LOG_10_2 = 0x28 + UNIT_END, - PLAYER_QUEST_LOG_11_1 = 0x2A + UNIT_END, - PLAYER_QUEST_LOG_11_2 = 0x2B + UNIT_END, - PLAYER_QUEST_LOG_12_1 = 0x2D + UNIT_END, - PLAYER_QUEST_LOG_12_2 = 0x2E + UNIT_END, - PLAYER_QUEST_LOG_13_1 = 0x30 + UNIT_END, - PLAYER_QUEST_LOG_13_2 = 0x31 + UNIT_END, - PLAYER_QUEST_LOG_14_1 = 0x33 + UNIT_END, - PLAYER_QUEST_LOG_14_2 = 0x34 + UNIT_END, - PLAYER_QUEST_LOG_15_1 = 0x36 + UNIT_END, - PLAYER_QUEST_LOG_15_2 = 0x37 + UNIT_END, - PLAYER_QUEST_LOG_16_1 = 0x39 + UNIT_END, - PLAYER_QUEST_LOG_16_2 = 0x3A + UNIT_END, - PLAYER_QUEST_LOG_17_1 = 0x3C + UNIT_END, - PLAYER_QUEST_LOG_17_2 = 0x3D + UNIT_END, - PLAYER_QUEST_LOG_18_1 = 0x3F + UNIT_END, - PLAYER_QUEST_LOG_18_2 = 0x40 + UNIT_END, - PLAYER_QUEST_LOG_19_1 = 0x42 + UNIT_END, - PLAYER_QUEST_LOG_19_2 = 0x43 + UNIT_END, - PLAYER_QUEST_LOG_20_1 = 0x45 + UNIT_END, - PLAYER_QUEST_LOG_20_2 = 0x46 + UNIT_END, + PLAYER_DUEL_ARBITER = 0x2 + UNIT_END-2, + PLAYER_FLAGS = 0x4 + UNIT_END-2, + PLAYER_GUILDID = 0x5 + UNIT_END-2, + PLAYER_GUILDRANK = 0x6 + UNIT_END-2, + PLAYER_BYTES = 0x7 + UNIT_END-2, + PLAYER_BYTES_2 = 0x8 + UNIT_END-2, + PLAYER_BYTES_3 = 0x9 + UNIT_END-2, + PLAYER_DUEL_TEAM = 0xA + UNIT_END-2, + PLAYER_GUILD_TIMESTAMP = 0xB + UNIT_END-2, + PLAYER_QUEST_LOG_1_1 = 0xC + UNIT_END-2, + PLAYER_QUEST_LOG_1_2 = 0xD + UNIT_END-2, + PLAYER_QUEST_LOG_2_1 = 0xF + UNIT_END-2, + PLAYER_QUEST_LOG_2_2 = 0x10 + UNIT_END-2, + PLAYER_QUEST_LOG_3_1 = 0x12 + UNIT_END-2, + PLAYER_QUEST_LOG_3_2 = 0x13 + UNIT_END-2, + PLAYER_QUEST_LOG_4_1 = 0x15 + UNIT_END-2, + PLAYER_QUEST_LOG_4_2 = 0x16 + UNIT_END-2, + PLAYER_QUEST_LOG_5_1 = 0x18 + UNIT_END-2, + PLAYER_QUEST_LOG_5_2 = 0x19 + UNIT_END-2, + PLAYER_QUEST_LOG_6_1 = 0x1B + UNIT_END-2, + PLAYER_QUEST_LOG_6_2 = 0x1C + UNIT_END-2, + PLAYER_QUEST_LOG_7_1 = 0x1E + UNIT_END-2, + PLAYER_QUEST_LOG_7_2 = 0x1F + UNIT_END-2, + PLAYER_QUEST_LOG_8_1 = 0x21 + UNIT_END-2, + PLAYER_QUEST_LOG_8_2 = 0x22 + UNIT_END-2, + PLAYER_QUEST_LOG_9_1 = 0x24 + UNIT_END-2, + PLAYER_QUEST_LOG_9_2 = 0x25 + UNIT_END-2, + PLAYER_QUEST_LOG_10_1 = 0x27 + UNIT_END-2, + PLAYER_QUEST_LOG_10_2 = 0x28 + UNIT_END-2, + PLAYER_QUEST_LOG_11_1 = 0x2A + UNIT_END-2, + PLAYER_QUEST_LOG_11_2 = 0x2B + UNIT_END-2, + PLAYER_QUEST_LOG_12_1 = 0x2D + UNIT_END-2, + PLAYER_QUEST_LOG_12_2 = 0x2E + UNIT_END-2, + PLAYER_QUEST_LOG_13_1 = 0x30 + UNIT_END-2, + PLAYER_QUEST_LOG_13_2 = 0x31 + UNIT_END-2, + PLAYER_QUEST_LOG_14_1 = 0x33 + UNIT_END-2, + PLAYER_QUEST_LOG_14_2 = 0x34 + UNIT_END-2, + PLAYER_QUEST_LOG_15_1 = 0x36 + UNIT_END-2, + PLAYER_QUEST_LOG_15_2 = 0x37 + UNIT_END-2, + PLAYER_QUEST_LOG_16_1 = 0x39 + UNIT_END-2, + PLAYER_QUEST_LOG_16_2 = 0x3A + UNIT_END-2, + PLAYER_QUEST_LOG_17_1 = 0x3C + UNIT_END-2, + PLAYER_QUEST_LOG_17_2 = 0x3D + UNIT_END-2, + PLAYER_QUEST_LOG_18_1 = 0x3F + UNIT_END-2, + PLAYER_QUEST_LOG_18_2 = 0x40 + UNIT_END-2, + PLAYER_QUEST_LOG_19_1 = 0x42 + UNIT_END-2, + PLAYER_QUEST_LOG_19_2 = 0x43 + UNIT_END-2, + PLAYER_QUEST_LOG_20_1 = 0x45 + UNIT_END-2, + PLAYER_QUEST_LOG_20_2 = 0x46 + UNIT_END-2, //260 - PLAYER_VISIBLE_ITEM_1_CREATOR = 0x48 + UNIT_END, - PLAYER_VISIBLE_ITEM_1_0 = 0x4A + UNIT_END, - PLAYER_VISIBLE_ITEM_1_PROPERTIES = 0x52 + UNIT_END, + PLAYER_VISIBLE_ITEM_1_CREATOR = 0x48 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_1_0 = 0x4A + UNIT_END-2, + PLAYER_VISIBLE_ITEM_1_PROPERTIES = 0x52 + UNIT_END-2, //271 - PLAYER_VISIBLE_ITEM_1_PAD = 0x53 + UNIT_END, + PLAYER_VISIBLE_ITEM_1_PAD = 0x53 + UNIT_END-2, //272 - PLAYER_VISIBLE_ITEM_2_CREATOR = 0x54 + UNIT_END, - PLAYER_VISIBLE_ITEM_2_0 = 0x56 + UNIT_END, - PLAYER_VISIBLE_ITEM_2_PROPERTIES = 0x5E + UNIT_END, + PLAYER_VISIBLE_ITEM_2_CREATOR = 0x54 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_2_0 = 0x56 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_2_PROPERTIES = 0x5E + UNIT_END-2, //283 - PLAYER_VISIBLE_ITEM_2_PAD = 0x5F + UNIT_END, + PLAYER_VISIBLE_ITEM_2_PAD = 0x5F + UNIT_END-2, //284 - PLAYER_VISIBLE_ITEM_3_CREATOR = 0x60 + UNIT_END, - PLAYER_VISIBLE_ITEM_3_0 = 0x62 + UNIT_END, - PLAYER_VISIBLE_ITEM_3_PROPERTIES = 0x6A + UNIT_END, + PLAYER_VISIBLE_ITEM_3_CREATOR = 0x60 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_3_0 = 0x62 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_3_PROPERTIES = 0x6A + UNIT_END-2, //295 - PLAYER_VISIBLE_ITEM_3_PAD = 0x6B + UNIT_END, + PLAYER_VISIBLE_ITEM_3_PAD = 0x6B + UNIT_END-2, //296 - PLAYER_VISIBLE_ITEM_4_CREATOR = 0x6C + UNIT_END, - PLAYER_VISIBLE_ITEM_4_0 = 0x6E + UNIT_END, - PLAYER_VISIBLE_ITEM_4_PROPERTIES = 0x76 + UNIT_END, + PLAYER_VISIBLE_ITEM_4_CREATOR = 0x6C + UNIT_END-2, + PLAYER_VISIBLE_ITEM_4_0 = 0x6E + UNIT_END-2, + PLAYER_VISIBLE_ITEM_4_PROPERTIES = 0x76 + UNIT_END-2, //307 - PLAYER_VISIBLE_ITEM_4_PAD = 0x77 + UNIT_END, + PLAYER_VISIBLE_ITEM_4_PAD = 0x77 + UNIT_END-2, //308 - PLAYER_VISIBLE_ITEM_5_CREATOR = 0x78 + UNIT_END, - PLAYER_VISIBLE_ITEM_5_0 = 0x7A + UNIT_END, - PLAYER_VISIBLE_ITEM_5_PROPERTIES = 0x82 + UNIT_END, + PLAYER_VISIBLE_ITEM_5_CREATOR = 0x78 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_5_0 = 0x7A + UNIT_END-2, + PLAYER_VISIBLE_ITEM_5_PROPERTIES = 0x82 + UNIT_END-2, //319 - PLAYER_VISIBLE_ITEM_5_PAD = 0x83 + UNIT_END, + PLAYER_VISIBLE_ITEM_5_PAD = 0x83 + UNIT_END-2, //320 - PLAYER_VISIBLE_ITEM_6_CREATOR = 0x84 + UNIT_END, - PLAYER_VISIBLE_ITEM_6_0 = 0x86 + UNIT_END, - PLAYER_VISIBLE_ITEM_6_PROPERTIES = 0x8E + UNIT_END, + PLAYER_VISIBLE_ITEM_6_CREATOR = 0x84 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_6_0 = 0x86 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_6_PROPERTIES = 0x8E + UNIT_END-2, //331 - PLAYER_VISIBLE_ITEM_6_PAD = 0x8F + UNIT_END, + PLAYER_VISIBLE_ITEM_6_PAD = 0x8F + UNIT_END-2, //332 - PLAYER_VISIBLE_ITEM_7_CREATOR = 0x90 + UNIT_END, - PLAYER_VISIBLE_ITEM_7_0 = 0x92 + UNIT_END, - PLAYER_VISIBLE_ITEM_7_PROPERTIES = 0x9A + UNIT_END, + PLAYER_VISIBLE_ITEM_7_CREATOR = 0x90 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_7_0 = 0x92 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_7_PROPERTIES = 0x9A + UNIT_END-2, //343 - PLAYER_VISIBLE_ITEM_7_PAD = 0x9B + UNIT_END, + PLAYER_VISIBLE_ITEM_7_PAD = 0x9B + UNIT_END-2, //344 - PLAYER_VISIBLE_ITEM_8_CREATOR = 0x9C + UNIT_END, - PLAYER_VISIBLE_ITEM_8_0 = 0x9E + UNIT_END, - PLAYER_VISIBLE_ITEM_8_PROPERTIES = 0xA6 + UNIT_END, + PLAYER_VISIBLE_ITEM_8_CREATOR = 0x9C + UNIT_END-2, + PLAYER_VISIBLE_ITEM_8_0 = 0x9E + UNIT_END-2, + PLAYER_VISIBLE_ITEM_8_PROPERTIES = 0xA6 + UNIT_END-2, //355 - PLAYER_VISIBLE_ITEM_8_PAD = 0xA7 + UNIT_END, + PLAYER_VISIBLE_ITEM_8_PAD = 0xA7 + UNIT_END-2, //356 - PLAYER_VISIBLE_ITEM_9_CREATOR = 0xA8 + UNIT_END, - PLAYER_VISIBLE_ITEM_9_0 = 0xAA + UNIT_END, - PLAYER_VISIBLE_ITEM_9_PROPERTIES = 0xB2 + UNIT_END, + PLAYER_VISIBLE_ITEM_9_CREATOR = 0xA8 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_9_0 = 0xAA + UNIT_END-2, + PLAYER_VISIBLE_ITEM_9_PROPERTIES = 0xB2 + UNIT_END-2, //367 - PLAYER_VISIBLE_ITEM_9_PAD = 0xB3 + UNIT_END, + PLAYER_VISIBLE_ITEM_9_PAD = 0xB3 + UNIT_END-2, //368 - PLAYER_VISIBLE_ITEM_10_CREATOR = 0xB4 + UNIT_END, - PLAYER_VISIBLE_ITEM_10_0 = 0xB6 + UNIT_END, - PLAYER_VISIBLE_ITEM_10_PROPERTIES = 0xBE + UNIT_END, + PLAYER_VISIBLE_ITEM_10_CREATOR = 0xB4 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_10_0 = 0xB6 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_10_PROPERTIES = 0xBE + UNIT_END-2, //379 - PLAYER_VISIBLE_ITEM_10_PAD = 0xBF + UNIT_END, + PLAYER_VISIBLE_ITEM_10_PAD = 0xBF + UNIT_END-2, //380 - PLAYER_VISIBLE_ITEM_11_CREATOR = 0xC0 + UNIT_END, - PLAYER_VISIBLE_ITEM_11_0 = 0xC2 + UNIT_END, - PLAYER_VISIBLE_ITEM_11_PROPERTIES = 0xCA + UNIT_END, + PLAYER_VISIBLE_ITEM_11_CREATOR = 0xC0 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_11_0 = 0xC2 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_11_PROPERTIES = 0xCA + UNIT_END-2, //391 - PLAYER_VISIBLE_ITEM_11_PAD = 0xCB + UNIT_END, + PLAYER_VISIBLE_ITEM_11_PAD = 0xCB + UNIT_END-2, //392 - PLAYER_VISIBLE_ITEM_12_CREATOR = 0xCC + UNIT_END, - PLAYER_VISIBLE_ITEM_12_0 = 0xCE + UNIT_END, - PLAYER_VISIBLE_ITEM_12_PROPERTIES = 0xD6 + UNIT_END, + PLAYER_VISIBLE_ITEM_12_CREATOR = 0xCC + UNIT_END-2, + PLAYER_VISIBLE_ITEM_12_0 = 0xCE + UNIT_END-2, + PLAYER_VISIBLE_ITEM_12_PROPERTIES = 0xD6 + UNIT_END-2, //403 - PLAYER_VISIBLE_ITEM_12_PAD = 0xD7 + UNIT_END, + PLAYER_VISIBLE_ITEM_12_PAD = 0xD7 + UNIT_END-2, //404 - PLAYER_VISIBLE_ITEM_13_CREATOR = 0xD8 + UNIT_END, - PLAYER_VISIBLE_ITEM_13_0 = 0xDA + UNIT_END, - PLAYER_VISIBLE_ITEM_13_PROPERTIES = 0xE2 + UNIT_END, + PLAYER_VISIBLE_ITEM_13_CREATOR = 0xD8 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_13_0 = 0xDA + UNIT_END-2, + PLAYER_VISIBLE_ITEM_13_PROPERTIES = 0xE2 + UNIT_END-2, //415 - PLAYER_VISIBLE_ITEM_13_PAD = 0xE3 + UNIT_END, + PLAYER_VISIBLE_ITEM_13_PAD = 0xE3 + UNIT_END-2, //416 - PLAYER_VISIBLE_ITEM_14_CREATOR = 0xE4 + UNIT_END, - PLAYER_VISIBLE_ITEM_14_0 = 0xE6 + UNIT_END, - PLAYER_VISIBLE_ITEM_14_PROPERTIES = 0xEE + UNIT_END, + PLAYER_VISIBLE_ITEM_14_CREATOR = 0xE4 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_14_0 = 0xE6 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_14_PROPERTIES = 0xEE + UNIT_END-2, //427 - PLAYER_VISIBLE_ITEM_14_PAD = 0xEF + UNIT_END, + PLAYER_VISIBLE_ITEM_14_PAD = 0xEF + UNIT_END-2, //428 - PLAYER_VISIBLE_ITEM_15_CREATOR = 0xF0 + UNIT_END, - PLAYER_VISIBLE_ITEM_15_0 = 0xF2 + UNIT_END, - PLAYER_VISIBLE_ITEM_15_PROPERTIES = 0xFA + UNIT_END, + PLAYER_VISIBLE_ITEM_15_CREATOR = 0xF0 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_15_0 = 0xF2 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_15_PROPERTIES = 0xFA + UNIT_END-2, //439 - PLAYER_VISIBLE_ITEM_15_PAD = 0xFB + UNIT_END, + PLAYER_VISIBLE_ITEM_15_PAD = 0xFB + UNIT_END-2, //440 - PLAYER_VISIBLE_ITEM_16_CREATOR = 0xFC + UNIT_END, - PLAYER_VISIBLE_ITEM_16_0 = 0xFE + UNIT_END, - PLAYER_VISIBLE_ITEM_16_PROPERTIES = 0x106 + UNIT_END, + PLAYER_VISIBLE_ITEM_16_CREATOR = 0xFC + UNIT_END-2, + PLAYER_VISIBLE_ITEM_16_0 = 0xFE + UNIT_END-2, + PLAYER_VISIBLE_ITEM_16_PROPERTIES = 0x106 + UNIT_END-2, //451 - PLAYER_VISIBLE_ITEM_16_PAD = 0x107 + UNIT_END, + PLAYER_VISIBLE_ITEM_16_PAD = 0x107 + UNIT_END-2, //452 - PLAYER_VISIBLE_ITEM_17_CREATOR = 0x108 + UNIT_END, - PLAYER_VISIBLE_ITEM_17_0 = 0x10A + UNIT_END, - PLAYER_VISIBLE_ITEM_17_PROPERTIES = 0x112 + UNIT_END, + PLAYER_VISIBLE_ITEM_17_CREATOR = 0x108 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_17_0 = 0x10A + UNIT_END-2, + PLAYER_VISIBLE_ITEM_17_PROPERTIES = 0x112 + UNIT_END-2, //463 - PLAYER_VISIBLE_ITEM_17_PAD = 0x113 + UNIT_END, + PLAYER_VISIBLE_ITEM_17_PAD = 0x113 + UNIT_END-2, //464 - PLAYER_VISIBLE_ITEM_18_CREATOR = 0x114 + UNIT_END, + PLAYER_VISIBLE_ITEM_18_CREATOR = 0x114 + UNIT_END-2, //466 ranged - PLAYER_VISIBLE_ITEM_18_0 = 0x116 + UNIT_END, - PLAYER_VISIBLE_ITEM_18_PROPERTIES = 0x11E + UNIT_END, + PLAYER_VISIBLE_ITEM_18_0 = 0x116 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_18_PROPERTIES = 0x11E + UNIT_END-2, //475 - PLAYER_VISIBLE_ITEM_18_PAD = 0x11F + UNIT_END, + PLAYER_VISIBLE_ITEM_18_PAD = 0x11F + UNIT_END-2, //476 - PLAYER_VISIBLE_ITEM_19_CREATOR = 0x120 + UNIT_END, - PLAYER_VISIBLE_ITEM_19_0 = 0x122 + UNIT_END, - PLAYER_VISIBLE_ITEM_19_PROPERTIES = 0x12A + UNIT_END, + PLAYER_VISIBLE_ITEM_19_CREATOR = 0x120 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_19_0 = 0x122 + UNIT_END-2, + PLAYER_VISIBLE_ITEM_19_PROPERTIES = 0x12A + UNIT_END-2, //487 - PLAYER_VISIBLE_ITEM_19_PAD = 0x12B + UNIT_END, + PLAYER_VISIBLE_ITEM_19_PAD = 0x12B + UNIT_END-2, - PLAYER_FIELD_INV_SLOT_HEAD = 0x12C + UNIT_END, + PLAYER_FIELD_INV_SLOT_HEAD = 0x12C + UNIT_END-2, - PLAYER_FIELD_PACK_SLOT_1 = 0x15A + UNIT_END, - PLAYER_FIELD_PACK_SLOT_2 = 0x15B + UNIT_END, + PLAYER_FIELD_PACK_SLOT_1 = 0x15A + UNIT_END-2, + PLAYER_FIELD_PACK_SLOT_2 = 0x15B + UNIT_END-2, - PLAYER_FIELD_BANK_SLOT_1 = 0x17A + UNIT_END, - PLAYER_FIELD_BANKBAG_SLOT_1 = 0x1AA + UNIT_END, - PLAYER_FIELD_VENDORBUYBACK_SLOT_1 = 0x1B6 + UNIT_END, + PLAYER_FIELD_BANK_SLOT_1 = 0x17A + UNIT_END-2, + PLAYER_FIELD_BANKBAG_SLOT_1 = 0x1AA + UNIT_END-2, + PLAYER_FIELD_VENDORBUYBACK_SLOT_1 = 0x1B6 + UNIT_END-2, + //PLAYER_FIELD_KEYRING_SLOT_1 + PLAYER_FARSIGHT = 0x1CE + UNIT_END+64-2, + PLAYER_FIELD_COMBO_TARGET = 0x1D0 + UNIT_END+64-2, + PLAYER_XP = 0x1D2 + UNIT_END+64-2, + PLAYER_NEXT_LEVEL_XP = 0x1D3 + UNIT_END+64-2, + PLAYER_SKILL_INFO_START = 0x1D4 + UNIT_END+64-2, - PLAYER_FARSIGHT = 0x1CE + UNIT_END, - PLAYER_FIELD_COMBO_TARGET = 0x1D0 + UNIT_END, - PLAYER_XP = 0x1D2 + UNIT_END, - PLAYER_NEXT_LEVEL_XP = 0x1D3 + UNIT_END, - PLAYER_SKILL_INFO_START = 0x1D4 + UNIT_END, - - PLAYER_CHARACTER_POINTS1 = 0x354 + PLAYER_SELECTION, - PLAYER_CHARACTER_POINTS2 = 0x355 + PLAYER_SELECTION, - PLAYER_TRACK_CREATURES = 0x356 + PLAYER_SELECTION, - PLAYER_TRACK_RESOURCES = 0x357 + PLAYER_SELECTION, - PLAYER_BLOCK_PERCENTAGE = 0x358 + PLAYER_SELECTION, - PLAYER_DODGE_PERCENTAGE = 0x359 + PLAYER_SELECTION, - PLAYER_PARRY_PERCENTAGE = 0x35A + PLAYER_SELECTION, - PLAYER_CRIT_PERCENTAGE = 0x35B + PLAYER_SELECTION, - PLAYER_RANGED_CRIT_PERCENTAGE = 0x35C + PLAYER_SELECTION, - PLAYER_EXPLORED_ZONES_1 = 0x35D + PLAYER_SELECTION, - PLAYER_REST_STATE_EXPERIENCE = 0x39D + PLAYER_SELECTION, - PLAYER_FIELD_COINAGE = 0x39E + PLAYER_SELECTION, + PLAYER_CHARACTER_POINTS1 = 0x354 + PLAYER_SELECTION+64-2, + PLAYER_CHARACTER_POINTS2 = 0x355 + PLAYER_SELECTION+64-2, + PLAYER_TRACK_CREATURES = 0x356 + PLAYER_SELECTION+64-2, + PLAYER_TRACK_RESOURCES = 0x357 + PLAYER_SELECTION+64-2, + PLAYER_BLOCK_PERCENTAGE = 0x358 + PLAYER_SELECTION+64-2, + PLAYER_DODGE_PERCENTAGE = 0x359 + PLAYER_SELECTION+64-2, + PLAYER_PARRY_PERCENTAGE = 0x35A + PLAYER_SELECTION+64-2, + PLAYER_CRIT_PERCENTAGE = 0x35B + PLAYER_SELECTION+64-2, + PLAYER_RANGED_CRIT_PERCENTAGE = 0x35C + PLAYER_SELECTION+64-2, + PLAYER_EXPLORED_ZONES_1 = 0x35D + PLAYER_SELECTION+64-2, + PLAYER_REST_STATE_EXPERIENCE = 0x39D + PLAYER_SELECTION+64-2, + PLAYER_FIELD_COINAGE = 0x39E + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_POSSTAT0 = 0x39F + PLAYER_SELECTION, - PLAYER_FIELD_POSSTAT1 = 0x3A0 + PLAYER_SELECTION, - PLAYER_FIELD_POSSTAT2 = 0x3A1 + PLAYER_SELECTION, - PLAYER_FIELD_POSSTAT3 = 0x3A2 + PLAYER_SELECTION, - PLAYER_FIELD_POSSTAT4 = 0x3A3 + PLAYER_SELECTION, - PLAYER_FIELD_NEGSTAT0 = 0x3A4 + PLAYER_SELECTION, - PLAYER_FIELD_NEGSTAT1 = 0x3A5 + PLAYER_SELECTION, - PLAYER_FIELD_NEGSTAT2 = 0x3A6 + PLAYER_SELECTION, - PLAYER_FIELD_NEGSTAT3 = 0x3A7 + PLAYER_SELECTION, - PLAYER_FIELD_NEGSTAT4 = 0x3A8 + PLAYER_SELECTION, + PLAYER_FIELD_POSSTAT0 = 0x39F + PLAYER_SELECTION+64-2, + PLAYER_FIELD_POSSTAT1 = 0x3A0 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_POSSTAT2 = 0x3A1 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_POSSTAT3 = 0x3A2 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_POSSTAT4 = 0x3A3 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_NEGSTAT0 = 0x3A4 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_NEGSTAT1 = 0x3A5 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_NEGSTAT2 = 0x3A6 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_NEGSTAT3 = 0x3A7 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_NEGSTAT4 = 0x3A8 + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE = 0x3A9 + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE = 0x3A9 + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_01 = 0x3AA + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_01 = 0x3AA + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_02 = 0x3AB + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_02 = 0x3AB + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_03 = 0x3AC + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_03 = 0x3AC + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_04 = 0x3AD + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_04 = 0x3AD + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_05 = 0x3AE + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_05 = 0x3AE + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_06 = 0x3AF + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSPOSITIVE_06 = 0x3AF + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE = 0x3B0 + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE = 0x3B0 + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_01 = 0x3B1 + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_01 = 0x3B1 + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_02 = 0x3B2 + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_02 = 0x3B2 + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_03 = 0x3B3 + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_03 = 0x3B3 + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_04 = 0x3B4 + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_04 = 0x3B4 + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_05 = 0x3B5 + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_05 = 0x3B5 + PLAYER_SELECTION+64-2, // used at server in float format but send to client in uint32 format - PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_06 = 0x3B6 + PLAYER_SELECTION, + PLAYER_FIELD_RESISTANCEBUFFMODSNEGATIVE_06 = 0x3B6 + PLAYER_SELECTION+64-2, //float 1.0 - PLAYER_FIELD_MOD_DAMAGE_DONE_POS = 0x3B7 + PLAYER_SELECTION, + PLAYER_FIELD_MOD_DAMAGE_DONE_POS = 0x3B7 + PLAYER_SELECTION+64-2, //float 1.0 - PLAYER_FIELD_MOD_DAMAGE_DONE_NEG = 0x3BE + PLAYER_SELECTION, + PLAYER_FIELD_MOD_DAMAGE_DONE_NEG = 0x3BE + PLAYER_SELECTION+64-2, //float 1.0 - PLAYER_FIELD_MOD_DAMAGE_DONE_PCT = 0x3C5 + PLAYER_SELECTION, - PLAYER_FIELD_BYTES = 0x3CC + PLAYER_SELECTION, - PLAYER_AMMO_ID = 0x3CD + PLAYER_SELECTION, - PLAYER_SELF_RES_SPELL = 0x3CE + PLAYER_SELECTION, - PLAYER_FIELD_PVP_MEDALS = 0x3CF + PLAYER_SELECTION, - PLAYER_FIELD_BUYBACK_PRICE_1 = 0x3D0 + PLAYER_SELECTION, - PLAYER_FIELD_BUYBACK_TIMESTAMP_1 = 0x3DC + PLAYER_SELECTION, - PLAYER_FIELD_SESSION_KILLS = 0x3E8 + PLAYER_SELECTION, - PLAYER_FIELD_YESTERDAY_KILLS = 0x3E9 + PLAYER_SELECTION, - PLAYER_FIELD_LAST_WEEK_KILLS = 0x3EA + PLAYER_SELECTION, - PLAYER_FIELD_THIS_WEEK_KILLS = 0x3EB + PLAYER_SELECTION, - PLAYER_FIELD_THIS_WEEK_CONTRIBUTION = 0x3EC + PLAYER_SELECTION, - PLAYER_FIELD_LIFETIME_HONORABLE_KILLS = 0x3ED + PLAYER_SELECTION, - PLAYER_FIELD_LIFETIME_DISHONORABLE_KILLS = 0x3EE + PLAYER_SELECTION, - PLAYER_FIELD_YESTERDAY_CONTRIBUTION = 0x3EF + PLAYER_SELECTION, - PLAYER_FIELD_LAST_WEEK_CONTRIBUTION = 0x3F0 + PLAYER_SELECTION, - PLAYER_FIELD_LAST_WEEK_RANK = 0x3F1 + PLAYER_SELECTION, - PLAYER_FIELD_HONOR_BAR = 0x3F2 + PLAYER_SELECTION, - PLAYER_FIELD_WATCHED_FACTION_INDEX = 0x3F3 + PLAYER_SELECTION, - PLAYER_END = 0x3F4 + PLAYER_SELECTION, + PLAYER_FIELD_MOD_DAMAGE_DONE_PCT = 0x3C5 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_BYTES = 0x3CC + PLAYER_SELECTION+64-2, + PLAYER_AMMO_ID = 0x3CD + PLAYER_SELECTION+64-2, + PLAYER_SELF_RES_SPELL = 0x3CE + PLAYER_SELECTION+64-2, + PLAYER_FIELD_PVP_MEDALS = 0x3CF + PLAYER_SELECTION+64-2, + PLAYER_FIELD_BUYBACK_PRICE_1 = 0x3D0 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_BUYBACK_TIMESTAMP_1 = 0x3DC + PLAYER_SELECTION+64-2, + PLAYER_FIELD_SESSION_KILLS = 0x3E8 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_YESTERDAY_KILLS = 0x3E9 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_LAST_WEEK_KILLS = 0x3EA + PLAYER_SELECTION+64-2, + PLAYER_FIELD_THIS_WEEK_KILLS = 0x3EB + PLAYER_SELECTION+64-2, + PLAYER_FIELD_THIS_WEEK_CONTRIBUTION = 0x3EC + PLAYER_SELECTION+64-2, + PLAYER_FIELD_LIFETIME_HONORABLE_KILLS = 0x3ED + PLAYER_SELECTION+64-2, + PLAYER_FIELD_LIFETIME_DISHONORABLE_KILLS = 0x3EE + PLAYER_SELECTION+64-2, + PLAYER_FIELD_YESTERDAY_CONTRIBUTION = 0x3EF + PLAYER_SELECTION+64-2, + PLAYER_FIELD_LAST_WEEK_CONTRIBUTION = 0x3F0 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_LAST_WEEK_RANK = 0x3F1 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_HONOR_BAR = 0x3F2 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_BYTES2 = 0x3F2 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_WATCHED_FACTION_INDEX = 0x3F3 + PLAYER_SELECTION+64-2, + PLAYER_FIELD_COMBAT_RATING_1 = 0x3F4 + PLAYER_SELECTION+64-2, + PLAYER_END = 0x3F4 + PLAYER_SELECTION+64-2+20, }; enum EGameObjectFields @@ -469,6 +471,7 @@ enum EGameObjectFields GAMEOBJECT_FLAGS = 9, GAMEOBJECT_ROTATION = 10, GAMEOBJECT_STATE = 14, + /* GAMEOBJECT_TIMESTAMP = 15, GAMEOBJECT_POS_X = 16, GAMEOBJECT_POS_Y = 17, @@ -479,6 +482,19 @@ enum EGameObjectFields GAMEOBJECT_TYPE_ID = 22, GAMEOBJECT_LEVEL = 23, GAMEOBJECT_END = 24, + */ + GAMEOBJECT_POS_X = 15, + GAMEOBJECT_POS_Y = 16, + GAMEOBJECT_POS_Z = 17, + GAMEOBJECT_FACING = 18, + GAMEOBJECT_DYN_FLAGS = 19, + GAMEOBJECT_FACTION = 20, + GAMEOBJECT_TYPE_ID = 21, + GAMEOBJECT_LEVEL = 22, + GAMEOBJECT_ARTKIT = 23, + GAMEOBJECT_ANIMPROGRESS = 24, + GAMEOBJECT_PADDING = 25, + GAMEOBJECT_END = 26, }; enum EDynamicObjectFields diff --git a/src/game/WorldSocket.cpp b/src/game/WorldSocket.cpp index c42c6760..09bd989c 100644 --- a/src/game/WorldSocket.cpp +++ b/src/game/WorldSocket.cpp @@ -315,8 +315,14 @@ void WorldSocket::_HandleAuthSession(WorldPacket& recvPacket) //! Handled Addons //Create Addon Packet - sAddOnHandler.BuildAddonPacket(&recvPacket, &SendAddonPacked, recvPacket.rpos()); - + //sAddOnHandler.BuildAddonPacket(&recvPacket, &SendAddonPacked, recvPacket.rpos()); + SendAddonPacked.Initialize(SMSG_ADDON_INFO); // fix banned addon + SendAddonPacked << uint8( 0x41 ); // fix banned addon + SendAddonPacked << uint8( 0x64 ); // fix banned addon + SendAddonPacked << uint8( 0x64 ); // fix banned addon + SendAddonPacked << uint8( 0x6f ); // fix banned addon + SendAddonPacked << uint8( 0x6e ); // fix banned addon + SendAddonPacked << uint8( 0x00 ); // fix banned addon SendPacket(&SendAddonPacked); return; diff --git a/src/realmd/AuthSocket.cpp b/src/realmd/AuthSocket.cpp index d7d90b98..767263c4 100644 --- a/src/realmd/AuthSocket.cpp +++ b/src/realmd/AuthSocket.cpp @@ -254,6 +254,7 @@ void AuthSocket::_HandleLogonChallenge() pkt.append(s.AsByteArray(), s.GetNumBytes()); pkt.append(unk3.AsByteArray(), 16); + pkt << (uint8)0; // Added in 1.12.x client branch } } // } diff --git a/src/realmd/AuthSocket.h b/src/realmd/AuthSocket.h index db8ff393..d8d63cb6 100644 --- a/src/realmd/AuthSocket.h +++ b/src/realmd/AuthSocket.h @@ -101,6 +101,7 @@ typedef struct uint8 M1[20]; uint8 crc_hash[20]; uint8 number_of_keys; + uint8 unk; // Added in 1.12.x client branch } sAuthLogonProof_C; typedef struct diff --git a/src/shared/Common.h b/src/shared/Common.h index d7197c4f..daf93193 100644 --- a/src/shared/Common.h +++ b/src/shared/Common.h @@ -43,9 +43,9 @@ // we need to stick to 1 version or half of the stuff will work for someone // others will not and opposite -// will only support 1.10.2 client, build 5302 ... +// will only support 1.12.1 client, build 5875 ... -#define EXPECTED_MANGOS_CLIENT_BUILD {5302,0} +#define EXPECTED_MANGOS_CLIENT_BUILD {5875,0} #ifdef HAVE_CONFIG_H # include diff --git a/src/shared/Database/DBCfmt.cpp b/src/shared/Database/DBCfmt.cpp index 818fd9c0..4bb72182 100644 --- a/src/shared/Database/DBCfmt.cpp +++ b/src/shared/Database/DBCfmt.cpp @@ -16,20 +16,20 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -const char AreaTableEntryfmt[]="ixinixxxxxixxxxxxxxxx"; +const char AreaTableEntryfmt[]="ixinxxxxxxixxxxxxxxxxxxxx"; const char CreatureFamilyfmt[]="nxxxxiiixxxxsxxxxx"; const char emoteentryfmt[]="nxixxxxxxxxxxxxxxxx"; const char FactionEntryfmt[]="nixxxxxxxiiiiiiiiiixxxxxxxxxxxxxxxxxx"; const char FactionTemplateEntryfmt[]="nxxiiixxxxixxx"; const char ItemDisplayTemplateEntryfmt[]="ixxxxxxxxxxixxxxxxxxxxi"; const char ItemRandomPropertiesfmt[]="nxiiixxxxxxxxxxx"; -const char ItemSetEntryfmt[]="dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxiiiiiiiiiiiiiiiiii"; +const char ItemSetEntryfmt[]="dxxxxxxxxxxxxxxxxxxxxxxxxxxiiiiiiiiiiiiiiiiii"; const char LockEntryfmt[]="nxxxxxxxxxxxxxxxxixxxxxxxxxxxxxxx"; const char SkillLinefmt[]="nixssssssssxssssssssxi"; const char SkillLineAbilityfmt[]="iiniiiiiiiiixxx"; const char SpellCastTimefmt[]="nixx"; const char SpellDurationfmt[]="niii"; -const char SpellEntryfmt[]="niixiiiixiiiiixiiiiiiiiiiiiiiiiiiiifiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiffffffiiixxxiiiiiiiiiiiiiiifffiiiiiiiiiiiifffixiiissssssssissssssssixxxxxxxxxxxxxxxxxxiiiiiiixxxxxxxxxx"; +const char SpellEntryfmt[]="niixiiiixiixxiiixiiiiiiiiiiiiiiiiiiiifiiiiiiiiiiiiiiiiiiiiiixiiiiiiiiiffffffiiixxxiiiiiiiiiiiiiiifffiiiiiiiiiiiifffixiiissssssssissssssssixxxxxxxxxxxxxxxxxxiiiiiiixxxxxxxxxx"; const char SpellFocusObjectfmt[]="nsxxxxxxxx"; const char SpellItemEnchantmentfmt[]="niixixxixxiixxxxxixxxxii"; const char SpellRadiusfmt[]="nfxf"; -- 2.11.4.GIT