diff --git a/src/game/Object/Guild.h b/src/game/Object/Guild.h index 6d0b6298..25292a6c 100644 --- a/src/game/Object/Guild.h +++ b/src/game/Object/Guild.h @@ -73,16 +73,15 @@ enum Typecommand GUILD_CREATE_S = 0x00, GUILD_INVITE_S = 0x01, GUILD_QUIT_S = 0x03, - // 0x05? GUILD_FOUNDER_S = 0x0E, - // [-ZERO] tbc enumerations [?] - GUILD_UNK1 = 0x10, - GUILD_UNK3 = 0x16 + GUILD_UNK19 = 0x13, + GUILD_UNK20 = 0x14 + // [ZERO] in SMSG_GUILD_COMMAND_RESULT: 2,4-13,15-18 no effect for no error }; enum CommandErrors { - ERR_PLAYER_NO_MORE_IN_GUILD = 0x00, + ERR_PLAYER_NO_MORE_IN_GUILD = 0x00, // no message/error ERR_GUILD_INTERNAL = 0x01, ERR_ALREADY_IN_GUILD = 0x02, ERR_ALREADY_IN_GUILD_S = 0x03, @@ -90,18 +89,19 @@ enum CommandErrors ERR_ALREADY_INVITED_TO_GUILD_S = 0x05, ERR_GUILD_NAME_INVALID = 0x06, ERR_GUILD_NAME_EXISTS_S = 0x07, - ERR_GUILD_LEADER_LEAVE = 0x08, - ERR_GUILD_PERMISSIONS = 0x08, + ERR_GUILD_LEADER_LEAVE = 0x08, // for Typecommand 0x03 + ERR_GUILD_PERMISSIONS = 0x08, // for another Typecommand ERR_GUILD_PLAYER_NOT_IN_GUILD = 0x09, ERR_GUILD_PLAYER_NOT_IN_GUILD_S = 0x0A, ERR_GUILD_PLAYER_NOT_FOUND_S = 0x0B, ERR_GUILD_NOT_ALLIED = 0x0C, - // [-ZERO] tbc enumerations ? ERR_GUILD_RANK_TOO_HIGH_S = 0x0D, ERR_GUILD_RANK_TOO_LOW_S = 0x0E, + // [ZERO] 0x0F, 0x10 unused ERR_GUILD_RANKS_LOCKED = 0x11, ERR_GUILD_RANK_IN_USE = 0x12, ERR_GUILD_IGNORING_YOU_S = 0x13, + ERR_GUILD_UNK20 = 0x14 // for Typecommand 0x05 only }; enum GuildEvents diff --git a/src/game/Server/Opcodes.cpp b/src/game/Server/Opcodes.cpp index 7baed68f..9348c27c 100644 --- a/src/game/Server/Opcodes.cpp +++ b/src/game/Server/Opcodes.cpp @@ -176,29 +176,29 @@ void Opcodes::BuildOpcodeList() /*0x071*/ StoreOpcode(SMSG_GROUP_CANCEL, "SMSG_GROUP_CANCEL", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x072*/ StoreOpcode(CMSG_GROUP_ACCEPT, "CMSG_GROUP_ACCEPT", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGroupAcceptOpcode); /*[-ZERO] Need check */ /*0x073*/ StoreOpcode(CMSG_GROUP_DECLINE, "CMSG_GROUP_DECLINE", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGroupDeclineOpcode); - /*[-ZERO] Need check */ /*0x074*/ StoreOpcode(SMSG_GROUP_DECLINE, "SMSG_GROUP_DECLINE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x074*/ StoreOpcode(SMSG_GROUP_DECLINE, "SMSG_GROUP_DECLINE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x075*/ StoreOpcode(CMSG_GROUP_UNINVITE, "CMSG_GROUP_UNINVITE", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGroupUninviteOpcode); /*[-ZERO] Need check */ /*0x076*/ StoreOpcode(CMSG_GROUP_UNINVITE_GUID, "CMSG_GROUP_UNINVITE_GUID", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGroupUninviteGuidOpcode); - /*[-ZERO] Need check */ /*0x077*/ StoreOpcode(SMSG_GROUP_UNINVITE, "SMSG_GROUP_UNINVITE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x077*/ StoreOpcode(SMSG_GROUP_UNINVITE, "SMSG_GROUP_UNINVITE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x078*/ StoreOpcode(CMSG_GROUP_SET_LEADER, "CMSG_GROUP_SET_LEADER", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGroupSetLeaderOpcode); - /*[-ZERO] Need check */ /*0x079*/ StoreOpcode(SMSG_GROUP_SET_LEADER, "SMSG_GROUP_SET_LEADER", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x079*/ StoreOpcode(SMSG_GROUP_SET_LEADER, "SMSG_GROUP_SET_LEADER", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x07A*/ StoreOpcode(CMSG_LOOT_METHOD, "CMSG_LOOT_METHOD", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLootMethodOpcode); /*[-ZERO] Need check */ /*0x07B*/ StoreOpcode(CMSG_GROUP_DISBAND, "CMSG_GROUP_DISBAND", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGroupDisbandOpcode); - /*[-ZERO] Need check */ /*0x07C*/ StoreOpcode(SMSG_GROUP_DESTROYED, "SMSG_GROUP_DESTROYED", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x07C*/ StoreOpcode(SMSG_GROUP_DESTROYED, "SMSG_GROUP_DESTROYED", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*0x07D*/ StoreOpcode(SMSG_GROUP_LIST, "SMSG_GROUP_LIST", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x07E*/ StoreOpcode(SMSG_PARTY_MEMBER_STATS, "SMSG_PARTY_MEMBER_STATS", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x07F*/ StoreOpcode(SMSG_PARTY_COMMAND_RESULT, "SMSG_PARTY_COMMAND_RESULT", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*0x080*/ StoreOpcode(UMSG_UPDATE_GROUP_MEMBERS, "UMSG_UPDATE_GROUP_MEMBERS", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL); /*[-ZERO] Need check */ /*0x081*/ StoreOpcode(CMSG_GUILD_CREATE, "CMSG_GUILD_CREATE", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildCreateOpcode); /*[-ZERO] Need check */ /*0x082*/ StoreOpcode(CMSG_GUILD_INVITE, "CMSG_GUILD_INVITE", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildInviteOpcode); - /*[-ZERO] Need check */ /*0x083*/ StoreOpcode(SMSG_GUILD_INVITE, "SMSG_GUILD_INVITE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x083*/ StoreOpcode(SMSG_GUILD_INVITE, "SMSG_GUILD_INVITE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x084*/ StoreOpcode(CMSG_GUILD_ACCEPT, "CMSG_GUILD_ACCEPT", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildAcceptOpcode); /*[-ZERO] Need check */ /*0x085*/ StoreOpcode(CMSG_GUILD_DECLINE, "CMSG_GUILD_DECLINE", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildDeclineOpcode); - /*[-ZERO] Need check */ /*0x086*/ StoreOpcode(SMSG_GUILD_DECLINE, "SMSG_GUILD_DECLINE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x086*/ StoreOpcode(SMSG_GUILD_DECLINE, "SMSG_GUILD_DECLINE", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x087*/ StoreOpcode(CMSG_GUILD_INFO, "CMSG_GUILD_INFO", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildInfoOpcode); - /*[-ZERO] Need check */ /*0x088*/ StoreOpcode(SMSG_GUILD_INFO, "SMSG_GUILD_INFO", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x088*/ StoreOpcode(SMSG_GUILD_INFO, "SMSG_GUILD_INFO", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x089*/ StoreOpcode(CMSG_GUILD_ROSTER, "CMSG_GUILD_ROSTER", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildRosterOpcode); - /*[-ZERO] Need check */ /*0x08A*/ StoreOpcode(SMSG_GUILD_ROSTER, "SMSG_GUILD_ROSTER", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x08A*/ StoreOpcode(SMSG_GUILD_ROSTER, "SMSG_GUILD_ROSTER", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*[-ZERO] Need check */ /*0x08B*/ StoreOpcode(CMSG_GUILD_PROMOTE, "CMSG_GUILD_PROMOTE", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildPromoteOpcode); /*[-ZERO] Need check */ /*0x08C*/ StoreOpcode(CMSG_GUILD_DEMOTE, "CMSG_GUILD_DEMOTE", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildDemoteOpcode); /*[-ZERO] Need check */ /*0x08D*/ StoreOpcode(CMSG_GUILD_LEAVE, "CMSG_GUILD_LEAVE", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildLeaveOpcode); @@ -206,8 +206,8 @@ void Opcodes::BuildOpcodeList() /*[-ZERO] Need check */ /*0x08F*/ StoreOpcode(CMSG_GUILD_DISBAND, "CMSG_GUILD_DISBAND", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildDisbandOpcode); /*[-ZERO] Need check */ /*0x090*/ StoreOpcode(CMSG_GUILD_LEADER, "CMSG_GUILD_LEADER", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildLeaderOpcode); /*[-ZERO] Need check */ /*0x091*/ StoreOpcode(CMSG_GUILD_MOTD, "CMSG_GUILD_MOTD", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildMOTDOpcode); - /*[-ZERO] Need check */ /*0x092*/ StoreOpcode(SMSG_GUILD_EVENT, "SMSG_GUILD_EVENT", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); - /*[-ZERO] Need check */ /*0x093*/ StoreOpcode(SMSG_GUILD_COMMAND_RESULT, "SMSG_GUILD_COMMAND_RESULT", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x092*/ StoreOpcode(SMSG_GUILD_EVENT, "SMSG_GUILD_EVENT", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); + /*0x093*/ StoreOpcode(SMSG_GUILD_COMMAND_RESULT, "SMSG_GUILD_COMMAND_RESULT", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); /*0x094*/ StoreOpcode(UMSG_UPDATE_GUILD, "UMSG_UPDATE_GUILD", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL); /*0x095*/ StoreOpcode(CMSG_MESSAGECHAT, "CMSG_MESSAGECHAT", STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMessagechatOpcode); /*0x096*/ StoreOpcode(SMSG_MESSAGECHAT, "SMSG_MESSAGECHAT", STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide); diff --git a/src/game/WorldHandlers/GroupHandler.cpp b/src/game/WorldHandlers/GroupHandler.cpp index 0934d7dd..b17cc75e 100644 --- a/src/game/WorldHandlers/GroupHandler.cpp +++ b/src/game/WorldHandlers/GroupHandler.cpp @@ -158,7 +158,7 @@ void WorldSession::HandleGroupInviteOpcode(WorldPacket& recv_data) // ok, we do it WorldPacket data(SMSG_GROUP_INVITE, 10); // guess size - data << GetPlayer()->GetName(); + data << GetPlayer()->GetName(); // max length: 48 player->GetSession()->SendPacket(&data); SendPartyResult(PARTY_OP_INVITE, membername, ERR_PARTY_RESULT_OK); diff --git a/src/game/WorldHandlers/MiscHandler.cpp b/src/game/WorldHandlers/MiscHandler.cpp index 4d403178..b41b211f 100644 --- a/src/game/WorldHandlers/MiscHandler.cpp +++ b/src/game/WorldHandlers/MiscHandler.cpp @@ -1134,7 +1134,7 @@ void WorldSession::HandleWhoisOpcode(WorldPacket& recv_data) std::string msg = charname + "'s " + "account is " + acc + ", e-mail: " + email + ", last ip: " + lastip; - WorldPacket data(SMSG_WHOIS, msg.size() + 1); + WorldPacket data(SMSG_WHOIS, msg.size() + 1); // max CString length allowed: 256 data << msg; _player->GetSession()->SendPacket(&data);