// Generated by tools/gen_game_message_fields.py from the packet structs. Do not edit: run the script. // Every struct's members, in declaration order (a base struct's first) json ToJson(const AuthPackets::LoginRequest& m); json ToJson(const ChatPackets::LoginSessionNotify& m); json ToJson(const ChatPackets::UnexpectedDisconnect& m); json ToJson(const ChatPackets::GMLevelUpdate& m); json ToJson(const ChatPackets::GMMute& m); json ToJson(const ChatPackets::Announcement& m); json ToJson(const ChatPackets::CreateTeam& m); json ToJson(const ChatPackets::TeamUpdate& m); json ToJson(const ChatPackets::AchievementNotify& m); json ToJson(const ChatPackets::MailNotify& m); json ToJson(const ChatPackets::ShowAllRequest& m); json ToJson(const ChatPackets::FindPlayerRequest& m); json ToJson(const ChatPackets::GetFriendsList& m); json ToJson(const ChatPackets::AddFriendRequest& m); json ToJson(const ChatPackets::AddFriendResponse& m); json ToJson(const ChatPackets::RemoveFriend& m); json ToJson(const ChatPackets::GetIgnoreList& m); json ToJson(const ChatPackets::AddIgnore& m); json ToJson(const ChatPackets::RemoveIgnore& m); json ToJson(const ChatPackets::GeneralChatMessage& m); json ToJson(const ChatPackets::PrivateChatMessage& m); json ToJson(const ChatPackets::TeamInvite& m); json ToJson(const ChatPackets::TeamInviteResponse& m); json ToJson(const ChatPackets::TeamLeave& m); json ToJson(const ChatPackets::TeamKick& m); json ToJson(const ChatPackets::TeamSetLeader& m); json ToJson(const ChatPackets::TeamSetLoot& m); json ToJson(const ChatPackets::TeamGetStatus& m); json ToJson(const ChatPackets::RequestMinimumChatMode& m); json ToJson(const ChatPackets::RequestMinimumChatModePrivate& m); json ToJson(const ChatPackets::GuildInvite& m); json ToJson(const ChatPackets::GuildInviteResponse& m); json ToJson(const ChatPackets::GuildLeave& m); json ToJson(const ChatPackets::GuildGetAll& m); json ToJson(const ChatPackets::GuildCreate& m); json ToJson(const ChatPackets::GuildKick& m); json ToJson(const ChatPackets::GuildSetRank& m); json ToJson(const ChatPackets::GuildDisband& m); json ToJson(const ChatPackets::GuildStatus& m); json ToJson(const ChatPackets::MatchRequest& m); json ToJson(const ChatPackets::MatchTransfer& m); json ToJson(const ChatPackets::Client::GeneralChatMessage& m); json ToJson(const ChatPackets::Client::PrivateChatMessage& m); json ToJson(const ClientPackets::LoginResponse& m); json ToJson(const ClientPackets::LoadStaticZone& m); json ToJson(const ClientPackets::CharacterListResponse& m); json ToJson(const ClientPackets::CharacterListResponse::Character& m); json ToJson(const ClientPackets::CharacterCreateResponse& m); json ToJson(const ClientPackets::CharacterRenameResponse& m); json ToJson(const ClientPackets::DeleteCharacterResponse& m); json ToJson(const ClientPackets::TransferToWorld& m); json ToJson(const ClientPackets::ServerStates& m); json ToJson(const ClientPackets::CreateCharacter& m); json ToJson(const ClientPackets::ChatModerationString& m); json ToJson(const ClientPackets::MakeGMResponse& m); json ToJson(const ClientPackets::HTTPMonitorInfoResponse& m); json ToJson(const ClientPackets::DebugOutput& m); json ToJson(const ClientPackets::BlueprintSaveResponse& m); json ToJson(const ClientPackets::BlueprintSaveResponse::Model& m); json ToJson(const ClientPackets::BlueprintLoadItemResponse& m); json ToJson(const ClientPackets::UgcManifestResponse& m); json ToJson(const ClientPackets::MinimumChatModeResponse& m); json ToJson(const ClientPackets::MinimumChatModeResponsePrivate& m); json ToJson(const ClientPackets::SendCannedText& m); json ToJson(const ClientPackets::GetFriendsListResponse& m); json ToJson(const ClientPackets::AddFriendRequest& m); json ToJson(const ClientPackets::AddFriendResponse& m); json ToJson(const ClientPackets::RemoveFriendResponse& m); json ToJson(const ClientPackets::UpdateFriendNotify& m); json ToJson(const ClientPackets::WhoResponse& m); json ToJson(const ClientPackets::ShowAllResponse& m); json ToJson(const ClientPackets::ShowAllResponse::Player& m); json ToJson(const ClientPackets::GetIgnoreListResponse& m); json ToJson(const ClientPackets::GetIgnoreListResponse::Ignored& m); json ToJson(const ClientPackets::AddIgnoreResponse& m); json ToJson(const ClientPackets::RemoveIgnoreResponse& m); json ToJson(const ClientPackets::TeamInvite& m); json ToJson(const ClientPackets::TeamInviteInitialResponse& m); json ToJson(const ClientPackets::GuildCreateResponse& m); json ToJson(const ClientPackets::GuildInvite& m); json ToJson(const ClientPackets::GuildInviteInitialResponse& m); json ToJson(const ClientPackets::GuildInviteFinalResponse& m); json ToJson(const ClientPackets::GuildInviteConfirm& m); json ToJson(const ClientPackets::GuildAddPlayer& m); json ToJson(const ClientPackets::GuildRemovePlayer& m); json ToJson(const ClientPackets::GuildLoginLogout& m); json ToJson(const ClientPackets::GuildData& m); json ToJson(const ClientPackets::GuildData::Member& m); json ToJson(const CommonPackets::ClientVersionConfirm& m); json ToJson(const CommonPackets::ServerVersionConfirm& m); json ToJson(const CommonPackets::DisconnectNotify& m); json ToJson(const CommonPackets::GeneralNotify& m); json ToJson(const MasterPackets::RequestZoneTransfer& m); json ToJson(const MasterPackets::RequestZoneTransferResponse& m); json ToJson(const MasterPackets::ServerInfo& m); json ToJson(const MasterPackets::RequestSessionKey& m); json ToJson(const MasterPackets::SetSessionKey& m); json ToJson(const MasterPackets::SessionKeyResponse& m); json ToJson(const MasterPackets::NewSessionAlert& m); json ToJson(const MasterPackets::PlayerCountChange& m); json ToJson(const MasterPackets::PlayerAdded& m); json ToJson(const MasterPackets::PlayerRemoved& m); json ToJson(const MasterPackets::CreatePrivateZone& m); json ToJson(const MasterPackets::RequestPrivateZone& m); json ToJson(const MasterPackets::WorldReady& m); json ToJson(const MasterPackets::WorldReadyInfo& m); json ToJson(const MasterPackets::PrepZone& m); json ToJson(const MasterPackets::Shutdown& m); json ToJson(const MasterPackets::ShutdownResponse& m); json ToJson(const MasterPackets::WorldShutDown& m); json ToJson(const MasterPackets::ShutdownUniverse& m); json ToJson(const MasterPackets::AffirmTransfer& m); json ToJson(const MasterPackets::AffirmTransferRequest& m); json ToJson(const MasterPackets::AffirmTransferResponse& m); json ToJson(const MasterPackets::RequestServerList& m); json ToJson(const MasterPackets::ServerListResponse& m); json ToJson(const MasterPackets::ServerListResponse::Instance& m); json ToJson(const MasterPackets::ServerListResponse::Endpoint& m); json ToJson(const MasterPackets::DashboardShutdown& m); json ToJson(const MasterPackets::ConfigReload& m); json ToJson(const MasterPackets::InstanceShutdown& m); json ToJson(const WorldPackets::WorldLUBitStream& m); json ToJson(const WorldPackets::Validation& m); json ToJson(const WorldPackets::CharacterListRequest& m); json ToJson(const WorldPackets::CharacterCreateRequest& m); json ToJson(const WorldPackets::CharacterLoginRequest& m); json ToJson(const WorldPackets::GameMessage& m); json ToJson(const WorldPackets::CharacterDeleteRequest& m); json ToJson(const WorldPackets::CharacterRenameRequest& m); json ToJson(const WorldPackets::LevelLoadComplete& m); json ToJson(const WorldPackets::PositionUpdate& m); json ToJson(const WorldPackets::MailPacket& m); json ToJson(const WorldPackets::RoutePacket& m); json ToJson(const WorldPackets::StringCheck& m); json ToJson(const WorldPackets::GeneralChatMessage& m); json ToJson(const WorldPackets::TmpGuildCreate& m); json ToJson(const WorldPackets::HandleFunness& m); json ToJson(const WorldPackets::RequestUgcManifestInfo& m); json ToJson(const WorldPackets::UgcDownloadFailed& m); json ToJson(const WorldPackets::UIHelpTop5& m); json ToJson(const ChatPackets::WorldRoutePacket& m); json ToJson(const CDClientReload& m); json ToJson(const PlayerPositions& m); json ToJson(const PlayerPositions::Player& m); json ToJson(const Announcement& m); json ToJson(const DataChanged& m); json ToJson(const DataChanged::Entry& m); json ToJson(const InstanceMigrationRequest& m); json ToJson(const MigratePlayersOrder& m); json ToJson(const MigrationStatus& m); json ToJson(const CarriedPlayerState& m); json ToJson(const MigratePrepare& m); json ToJson(const LiveUpdateRequest& m); json ToJson(const LiveUpdateStatus& m); json ToJson(const LiveUpdateStatus::Unit& m); json ToJson(const LiveUpdateRetire& m); json ToJson(const ChatServerReady& m); json ToJson(const ChatHandoff& m); json ToJson(const ChatHandoff::Team& m); json ToJson(const MessageCaptureControl& m); json ToJson(const MessageCaptureEntry& m); json ToJson(const MessageCaptureData& m); json ToJson(const PlayerActionRequest& m); json ToJson(const PlayerActionResult& m); json ToJson(const ProfileRequest& m); json ToJson(const ProfileResult& m); json ToJson(const ServerTraffic& m); json ToJson(const UgcModelsMade& m); json ToJson(const UpdateStatus& m); json ToJson(const WorldFilesReport& m); json ToJson(const WorldReloadRequest& m); json ToJson(const WorldFilesStatus& m); json ToJson(const WorldFilesStatus::File& m); json ToJson(const WorldFilesStatus::Instance& m); json ToJson(const WorldFilesStatus::Zone& m); json ToJson(const RemoteInputInfo& m); json ToJson(const LocalSpaceInfo& m); json ToJson(const PositionUpdate& m); json ToJson(const Profiler::Second& m); json ToJson(const Profiler::MessageTime& m); json ToJson(const Profiler::Node& m); json ToJson(const Profiler::Frame& m); json ToJson(const Profiler::Report& m); json ToJson(const Profiler::Profile& m); json ToJson(const TrafficStats::MessageKey& m); json ToJson(const TrafficStats::PeerCounts& m); json ToJson(const TrafficStats::MessageCount& m); json ToJson(const TrafficStats::Second& m); json ToJson(const TrafficStats::RouteStats& m); json ToJson(const TrafficStats::Link& m); json ToJson(const TrafficStats::Connection& m); json ToJson(const TrafficStats::Report& m); json ToJson(const ZoneFileLog::Entry& m); json ToJson(const FriendData& m); json ToJson(const AuthPackets::LoginRequest& m) { json j = json::object(); j["username"] = ToJson(m.username); j["localeID"] = ToJson(m.localeID); j["clientOS"] = ToJson(m.clientOS); j["memoryStats"] = ToJson(m.memoryStats); j["videoCard"] = ToJson(m.videoCard); j["numberOfProcessors"] = ToJson(m.numberOfProcessors); j["processorType"] = ToJson(m.processorType); j["processorLevel"] = ToJson(m.processorLevel); j["processorRevision"] = ToJson(m.processorRevision); j["osVersionInfoSize"] = ToJson(m.osVersionInfoSize); j["majorVersion"] = ToJson(m.majorVersion); j["minorVersion"] = ToJson(m.minorVersion); j["buildNumber"] = ToJson(m.buildNumber); j["platformID"] = ToJson(m.platformID); return j; } json ToJson(const ChatPackets::LoginSessionNotify& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["playerName"] = ToJson(m.playerName); j["zoneID"] = ToJson(m.zoneID); j["muteExpire"] = ToJson(m.muteExpire); j["gmLevel"] = ToJson(m.gmLevel); j["resync"] = ToJson(m.resync); return j; } json ToJson(const ChatPackets::UnexpectedDisconnect& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); return j; } json ToJson(const ChatPackets::GMLevelUpdate& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["gmLevel"] = ToJson(m.gmLevel); return j; } json ToJson(const ChatPackets::GMMute& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["expire"] = ToJson(m.expire); return j; } json ToJson(const ChatPackets::Announcement& m) { json j = json::object(); j["title"] = ToJson(m.title); j["message"] = ToJson(m.message); return j; } json ToJson(const ChatPackets::CreateTeam& m) { json j = json::object(); j["leaderID"] = ToJson(m.leaderID); j["members"] = ToJson(m.members); j["zoneID"] = ToJson(m.zoneID); return j; } json ToJson(const ChatPackets::TeamUpdate& m) { json j = json::object(); j["teamID"] = ToJson(m.teamID); j["deleteTeam"] = ToJson(m.deleteTeam); j["lootFlag"] = ToJson(m.lootFlag); j["members"] = ToJson(m.members); return j; } json ToJson(const ChatPackets::AchievementNotify& m) { json j = json::object(); j["targetPlayerName"] = ToJson(m.targetPlayerName); j["missionEmailID"] = ToJson(m.missionEmailID); j["earningPlayerID"] = ToJson(m.earningPlayerID); j["earnerName"] = ToJson(m.earnerName); return j; } json ToJson(const ChatPackets::MailNotify& m) { json j = json::object(); j["receiverID"] = ToJson(m.receiverID); return j; } json ToJson(const ChatPackets::ShowAllRequest& m) { json j = json::object(); j["requestor"] = ToJson(m.requestor); j["displayZoneData"] = ToJson(m.displayZoneData); j["displayIndividualPlayers"] = ToJson(m.displayIndividualPlayers); return j; } json ToJson(const ChatPackets::FindPlayerRequest& m) { json j = json::object(); j["requestor"] = ToJson(m.requestor); j["playerName"] = ToJson(m.playerName); return j; } json ToJson(const ChatPackets::GetFriendsList& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); return j; } json ToJson(const ChatPackets::AddFriendRequest& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["friendName"] = ToJson(m.friendName); j["isBestFriendRequest"] = ToJson(m.isBestFriendRequest); return j; } json ToJson(const ChatPackets::AddFriendResponse& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["responseCode"] = ToJson(m.responseCode); j["friendName"] = ToJson(m.friendName); return j; } json ToJson(const ChatPackets::RemoveFriend& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["friendName"] = ToJson(m.friendName); return j; } json ToJson(const ChatPackets::GetIgnoreList& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); return j; } json ToJson(const ChatPackets::AddIgnore& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["playerName"] = ToJson(m.playerName); return j; } json ToJson(const ChatPackets::RemoveIgnore& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["playerName"] = ToJson(m.playerName); return j; } json ToJson(const ChatPackets::GeneralChatMessage& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["chatChannel"] = ToJson(m.chatChannel); j["messageLength"] = ToJson(m.messageLength); j["senderName"] = ToJson(m.senderName); j["senderID"] = ToJson(m.senderID); j["sourceID"] = ToJson(m.sourceID); j["senderGMLevel"] = ToJson(m.senderGMLevel); j["message"] = ToJson(m.message); return j; } json ToJson(const ChatPackets::PrivateChatMessage& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["chatChannel"] = ToJson(m.chatChannel); j["messageLength"] = ToJson(m.messageLength); j["senderName"] = ToJson(m.senderName); j["senderID"] = ToJson(m.senderID); j["sourceID"] = ToJson(m.sourceID); j["senderGMLevel"] = ToJson(m.senderGMLevel); j["receiverName"] = ToJson(m.receiverName); j["receiverGMLevel"] = ToJson(m.receiverGMLevel); j["responseCode"] = ToJson(m.responseCode); j["message"] = ToJson(m.message); return j; } json ToJson(const ChatPackets::TeamInvite& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["invitedPlayer"] = ToJson(m.invitedPlayer); return j; } json ToJson(const ChatPackets::TeamInviteResponse& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["declined"] = ToJson(m.declined); j["leaderID"] = ToJson(m.leaderID); return j; } json ToJson(const ChatPackets::TeamLeave& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); return j; } json ToJson(const ChatPackets::TeamKick& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["kickedPlayer"] = ToJson(m.kickedPlayer); return j; } json ToJson(const ChatPackets::TeamSetLeader& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["promotedPlayer"] = ToJson(m.promotedPlayer); return j; } json ToJson(const ChatPackets::TeamSetLoot& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["lootFlag"] = ToJson(m.lootFlag); return j; } json ToJson(const ChatPackets::TeamGetStatus& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); return j; } json ToJson(const ChatPackets::RequestMinimumChatMode& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["chatChannel"] = ToJson(m.chatChannel); return j; } json ToJson(const ChatPackets::RequestMinimumChatModePrivate& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["chatChannel"] = ToJson(m.chatChannel); j["recipientName"] = ToJson(m.recipientName); return j; } json ToJson(const ChatPackets::GuildInvite& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["invitedPlayer"] = ToJson(m.invitedPlayer); return j; } json ToJson(const ChatPackets::GuildInviteResponse& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["declined"] = ToJson(m.declined); return j; } json ToJson(const ChatPackets::GuildLeave& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); return j; } json ToJson(const ChatPackets::GuildGetAll& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); return j; } json ToJson(const ChatPackets::GuildCreate& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["guildName"] = ToJson(m.guildName); return j; } json ToJson(const ChatPackets::GuildKick& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["unknown"] = ToJson(m.unknown); j["kickedPlayer"] = ToJson(m.kickedPlayer); return j; } json ToJson(const ChatPackets::GuildSetRank& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["targetPlayer"] = ToJson(m.targetPlayer); j["rank"] = ToJson(m.rank); return j; } json ToJson(const ChatPackets::GuildDisband& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); return j; } json ToJson(const ChatPackets::GuildStatus& m) { json j = json::object(); j["characterID"] = ToJson(m.characterID); j["guildID"] = ToJson(m.guildID); j["guildName"] = ToJson(m.guildName); return j; } json ToJson(const ChatPackets::MatchRequest& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["type"] = ToJson(m.type); j["value"] = ToJson(m.value); j["activityID"] = ToJson(m.activityID); j["playerName"] = ToJson(m.playerName); j["playerChoices"] = ToJson(m.playerChoices); j["instanceMapID"] = ToJson(m.instanceMapID); j["minTeams"] = ToJson(m.minTeams); j["maxTeams"] = ToJson(m.maxTeams); j["minTeamSize"] = ToJson(m.minTeamSize); j["maxTeamSize"] = ToJson(m.maxTeamSize); j["waitTime"] = ToJson(m.waitTime); j["startDelay"] = ToJson(m.startDelay); return j; } json ToJson(const ChatPackets::MatchTransfer& m) { json j = json::object(); j["activityID"] = ToJson(m.activityID); j["zoneID"] = ToJson(m.zoneID); j["serverIP"] = ToJson(m.serverIP); j["serverPort"] = ToJson(m.serverPort); j["mythranShift"] = ToJson(m.mythranShift); j["players"] = ToJson(m.players); return j; } json ToJson(const ChatPackets::Client::GeneralChatMessage& m) { json j = json::object(); j["unknown"] = ToJson(m.unknown); j["chatChannel"] = ToJson(m.chatChannel); j["senderName"] = ToJson(m.senderName); j["senderID"] = ToJson(m.senderID); j["sourceID"] = ToJson(m.sourceID); j["senderGMLevel"] = ToJson(m.senderGMLevel); j["message"] = ToJson(m.message); return j; } json ToJson(const ChatPackets::Client::PrivateChatMessage& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["chatChannel"] = ToJson(m.chatChannel); j["messageLength"] = ToJson(m.messageLength); j["senderName"] = ToJson(m.senderName); j["senderID"] = ToJson(m.senderID); j["sourceID"] = ToJson(m.sourceID); j["senderGMLevel"] = ToJson(m.senderGMLevel); j["receiverName"] = ToJson(m.receiverName); j["receiverGMLevel"] = ToJson(m.receiverGMLevel); j["responseCode"] = ToJson(m.responseCode); j["message"] = ToJson(m.message); return j; } json ToJson(const ClientPackets::LoginResponse& m) { json j = json::object(); j["responseCode"] = ToJson(m.responseCode); j["versionMajor"] = ToJson(m.versionMajor); j["versionCurrent"] = ToJson(m.versionCurrent); j["versionMinor"] = ToJson(m.versionMinor); j["worldServerIP"] = ToJson(m.worldServerIP); j["chatServerIP"] = ToJson(m.chatServerIP); j["worldServerPort"] = ToJson(m.worldServerPort); j["chatServerPort"] = ToJson(m.chatServerPort); j["cdnTicket"] = ToJson(m.cdnTicket); j["language"] = ToJson(m.language); j["localization"] = ToJson(m.localization); j["justUpgradedFromF2P"] = ToJson(m.justUpgradedFromF2P); j["isFreeToPlay"] = ToJson(m.isFreeToPlay); j["freeToPlayTimeRemaining"] = ToJson(m.freeToPlayTimeRemaining); j["errorMessage"] = ToJson(m.errorMessage); j["stamps"] = ToJson(m.stamps); return j; } json ToJson(const ClientPackets::LoadStaticZone& m) { json j = json::object(); j["mapID"] = ToJson(m.mapID); j["instanceID"] = ToJson(m.instanceID); j["cloneID"] = ToJson(m.cloneID); j["mapChecksum"] = ToJson(m.mapChecksum); j["editorEnabled"] = ToJson(m.editorEnabled); j["editorLevel"] = ToJson(m.editorLevel); j["playerPosition"] = ToJson(m.playerPosition); j["instanceType"] = ToJson(m.instanceType); return j; } json ToJson(const ClientPackets::CharacterListResponse& m) { json j = json::object(); j["selectedCharacterIndex"] = ToJson(m.selectedCharacterIndex); j["characters"] = ToJson(m.characters); return j; } json ToJson(const ClientPackets::CharacterListResponse::Character& m) { json j = json::object(); j["objectID"] = ToJson(m.objectID); j["unknown1"] = ToJson(m.unknown1); j["name"] = ToJson(m.name); j["unapprovedName"] = ToJson(m.unapprovedName); j["nameRejected"] = ToJson(m.nameRejected); j["isFreeToPlay"] = ToJson(m.isFreeToPlay); j["unknown2"] = ToJson(m.unknown2); j["shirtColor"] = ToJson(m.shirtColor); j["shirtStyle"] = ToJson(m.shirtStyle); j["pantsColor"] = ToJson(m.pantsColor); j["hairStyle"] = ToJson(m.hairStyle); j["hairColor"] = ToJson(m.hairColor); j["leftHand"] = ToJson(m.leftHand); j["rightHand"] = ToJson(m.rightHand); j["eyebrows"] = ToJson(m.eyebrows); j["eyes"] = ToJson(m.eyes); j["mouth"] = ToJson(m.mouth); j["unknown3"] = ToJson(m.unknown3); j["zoneID"] = ToJson(m.zoneID); j["zoneInstance"] = ToJson(m.zoneInstance); j["zoneClone"] = ToJson(m.zoneClone); j["lastLogin"] = ToJson(m.lastLogin); j["equippedItems"] = ToJson(m.equippedItems); return j; } json ToJson(const ClientPackets::CharacterCreateResponse& m) { json j = json::object(); j["response"] = ToJson(m.response); return j; } json ToJson(const ClientPackets::CharacterRenameResponse& m) { json j = json::object(); j["response"] = ToJson(m.response); return j; } json ToJson(const ClientPackets::DeleteCharacterResponse& m) { json j = json::object(); j["success"] = ToJson(m.success); return j; } json ToJson(const ClientPackets::TransferToWorld& m) { json j = json::object(); j["serverIP"] = ToJson(m.serverIP); j["serverPort"] = ToJson(m.serverPort); j["mythranShift"] = ToJson(m.mythranShift); return j; } json ToJson(const ClientPackets::ServerStates& m) { json j = json::object(); j["serverState"] = ToJson(m.serverState); return j; } json ToJson(const ClientPackets::CreateCharacter& m) { json j = json::object(); j["objectID"] = ToJson(m.objectID); j["templateID"] = ToJson(m.templateID); j["xmlData"] = ToJson(m.xmlData); j["name"] = ToJson(m.name); j["gmLevel"] = ToJson(m.gmLevel); j["chatMode"] = ToJson(m.chatMode); j["reputation"] = ToJson(m.reputation); j["propertyCloneID"] = ToJson(m.propertyCloneID); return j; } json ToJson(const ClientPackets::ChatModerationString& m) { json j = json::object(); j["requestAccepted"] = ToJson(m.requestAccepted); j["sourceID"] = ToJson(m.sourceID); j["requestID"] = ToJson(m.requestID); j["chatMode"] = ToJson(m.chatMode); j["receiver"] = ToJson(m.receiver); j["rejectedSegments"] = ToJson(m.rejectedSegments); return j; } json ToJson(const ClientPackets::MakeGMResponse& m) { json j = json::object(); j["success"] = ToJson(m.success); j["highestLevel"] = ToJson(m.highestLevel); j["previousLevel"] = ToJson(m.previousLevel); j["newLevel"] = ToJson(m.newLevel); return j; } json ToJson(const ClientPackets::HTTPMonitorInfoResponse& m) { json j = json::object(); j["port"] = ToJson(m.port); j["openWeb"] = ToJson(m.openWeb); j["supportsSum"] = ToJson(m.supportsSum); j["supportsDetail"] = ToJson(m.supportsDetail); j["supportsWho"] = ToJson(m.supportsWho); j["supportsObjects"] = ToJson(m.supportsObjects); return j; } json ToJson(const ClientPackets::DebugOutput& m) { json j = json::object(); j["data"] = ToJson(m.data); return j; } json ToJson(const ClientPackets::BlueprintSaveResponse& m) { json j = json::object(); j["localId"] = ToJson(m.localId); j["reasonCode"] = ToJson(m.reasonCode); j["models"] = ToJson(m.models); return j; } json ToJson(const ClientPackets::BlueprintSaveResponse::Model& m) { json j = json::object(); j["blueprintId"] = ToJson(m.blueprintId); j["data"] = ToJson(m.data); return j; } json ToJson(const ClientPackets::BlueprintLoadItemResponse& m) { json j = json::object(); j["success"] = ToJson(m.success); j["itemId"] = ToJson(m.itemId); j["destItemId"] = ToJson(m.destItemId); return j; } json ToJson(const ClientPackets::UgcManifestResponse& m) { json j = json::object(); j["blueprintId"] = ToJson(m.blueprintId); j["resourceType"] = ToJson(m.resourceType); j["valid"] = ToJson(m.valid); j["fileSize"] = ToJson(m.fileSize); j["md5"] = ToJson(m.md5); return j; } json ToJson(const ClientPackets::MinimumChatModeResponse& m) { json j = json::object(); j["chatMode"] = ToJson(m.chatMode); j["chatChannel"] = ToJson(m.chatChannel); return j; } json ToJson(const ClientPackets::MinimumChatModeResponsePrivate& m) { json j = json::object(); j["chatMode"] = ToJson(m.chatMode); j["chatChannel"] = ToJson(m.chatChannel); j["recipientName"] = ToJson(m.recipientName); j["recipientGMLevel"] = ToJson(m.recipientGMLevel); return j; } json ToJson(const ClientPackets::SendCannedText& m) { json j = json::object(); j["responseType"] = ToJson(m.responseType); return j; } json ToJson(const ClientPackets::GetFriendsListResponse& m) { json j = json::object(); j["responseCode"] = ToJson(m.responseCode); j["packetLength"] = ToJson(m.packetLength); j["friends"] = ToJson(m.friends); return j; } json ToJson(const ClientPackets::AddFriendRequest& m) { json j = json::object(); j["requestorName"] = ToJson(m.requestorName); j["isBestFriendRequest"] = ToJson(m.isBestFriendRequest); return j; } json ToJson(const ClientPackets::AddFriendResponse& m) { json j = json::object(); j["responseCode"] = ToJson(m.responseCode); j["isOnlineOrBestFriend"] = ToJson(m.isOnlineOrBestFriend); j["friendName"] = ToJson(m.friendName); j["friendID"] = ToJson(m.friendID); j["zoneID"] = ToJson(m.zoneID); j["isBestFriend"] = ToJson(m.isBestFriend); j["isFreeTrial"] = ToJson(m.isFreeTrial); return j; } json ToJson(const ClientPackets::RemoveFriendResponse& m) { json j = json::object(); j["isSuccessful"] = ToJson(m.isSuccessful); j["friendName"] = ToJson(m.friendName); return j; } json ToJson(const ClientPackets::UpdateFriendNotify& m) { json j = json::object(); j["notifyType"] = ToJson(m.notifyType); j["friendName"] = ToJson(m.friendName); j["zoneID"] = ToJson(m.zoneID); j["isBestFriend"] = ToJson(m.isBestFriend); j["isFreeTrial"] = ToJson(m.isFreeTrial); return j; } json ToJson(const ClientPackets::WhoResponse& m) { json j = json::object(); j["isOnline"] = ToJson(m.isOnline); j["zoneID"] = ToJson(m.zoneID); j["playerName"] = ToJson(m.playerName); return j; } json ToJson(const ClientPackets::ShowAllResponse& m) { json j = json::object(); j["playerCount"] = ToJson(m.playerCount); j["simCount"] = ToJson(m.simCount); j["displayIndividualPlayers"] = ToJson(m.displayIndividualPlayers); j["displayZoneData"] = ToJson(m.displayZoneData); j["players"] = ToJson(m.players); return j; } json ToJson(const ClientPackets::ShowAllResponse::Player& m) { json j = json::object(); j["name"] = ToJson(m.name); j["zoneID"] = ToJson(m.zoneID); return j; } json ToJson(const ClientPackets::GetIgnoreListResponse& m) { json j = json::object(); j["isFreeTrial"] = ToJson(m.isFreeTrial); j["padding"] = ToJson(m.padding); j["ignored"] = ToJson(m.ignored); return j; } json ToJson(const ClientPackets::GetIgnoreListResponse::Ignored& m) { json j = json::object(); j["playerID"] = ToJson(m.playerID); j["playerName"] = ToJson(m.playerName); return j; } json ToJson(const ClientPackets::AddIgnoreResponse& m) { json j = json::object(); j["responseCode"] = ToJson(m.responseCode); j["playerName"] = ToJson(m.playerName); j["playerID"] = ToJson(m.playerID); return j; } json ToJson(const ClientPackets::RemoveIgnoreResponse& m) { json j = json::object(); j["responseCode"] = ToJson(m.responseCode); j["playerName"] = ToJson(m.playerName); return j; } json ToJson(const ClientPackets::TeamInvite& m) { json j = json::object(); j["senderName"] = ToJson(m.senderName); j["senderID"] = ToJson(m.senderID); return j; } json ToJson(const ClientPackets::TeamInviteInitialResponse& m) { json j = json::object(); j["inviteFailedToSend"] = ToJson(m.inviteFailedToSend); j["playerName"] = ToJson(m.playerName); return j; } json ToJson(const ClientPackets::GuildCreateResponse& m) { json j = json::object(); j["result"] = ToJson(m.result); j["guildID"] = ToJson(m.guildID); j["guildName"] = ToJson(m.guildName); return j; } json ToJson(const ClientPackets::GuildInvite& m) { json j = json::object(); j["inviterName"] = ToJson(m.inviterName); j["guildName"] = ToJson(m.guildName); return j; } json ToJson(const ClientPackets::GuildInviteInitialResponse& m) { json j = json::object(); j["response"] = ToJson(m.response); j["playerName"] = ToJson(m.playerName); return j; } json ToJson(const ClientPackets::GuildInviteFinalResponse& m) { json j = json::object(); j["response"] = ToJson(m.response); j["playerName"] = ToJson(m.playerName); return j; } json ToJson(const ClientPackets::GuildInviteConfirm& m) { json j = json::object(); j["failed"] = ToJson(m.failed); j["guildName"] = ToJson(m.guildName); return j; } json ToJson(const ClientPackets::GuildAddPlayer& m) { json j = json::object(); j["playerName"] = ToJson(m.playerName); j["playerID"] = ToJson(m.playerID); j["rank"] = ToJson(m.rank); j["zoneID"] = ToJson(m.zoneID); j["online"] = ToJson(m.online); return j; } json ToJson(const ClientPackets::GuildRemovePlayer& m) { json j = json::object(); j["reason"] = ToJson(m.reason); j["playerName"] = ToJson(m.playerName); j["playerID"] = ToJson(m.playerID); j["newLeaderID"] = ToJson(m.newLeaderID); return j; } json ToJson(const ClientPackets::GuildLoginLogout& m) { json j = json::object(); j["playerName"] = ToJson(m.playerName); j["playerID"] = ToJson(m.playerID); j["online"] = ToJson(m.online); j["zoneID"] = ToJson(m.zoneID); j["worldUpdateOnly"] = ToJson(m.worldUpdateOnly); return j; } json ToJson(const ClientPackets::GuildData& m) { json j = json::object(); j["status"] = ToJson(m.status); j["guildName"] = ToJson(m.guildName); j["joinDate"] = ToJson(m.joinDate); j["foundDate"] = ToJson(m.foundDate); j["reputation"] = ToJson(m.reputation); j["unknown1"] = ToJson(m.unknown1); j["unknown2"] = ToJson(m.unknown2); j["unknown3"] = ToJson(m.unknown3); j["members"] = ToJson(m.members); return j; } json ToJson(const ClientPackets::GuildData::Member& m) { json j = json::object(); j["rank"] = ToJson(m.rank); j["online"] = ToJson(m.online); j["zoneID"] = ToJson(m.zoneID); j["playerID"] = ToJson(m.playerID); j["name"] = ToJson(m.name); return j; } json ToJson(const CommonPackets::ClientVersionConfirm& m) { json j = json::object(); j["netVersion"] = ToJson(m.netVersion); j["unknown"] = ToJson(m.unknown); j["serviceType"] = ToJson(m.serviceType); j["padding"] = ToJson(m.padding); j["processID"] = ToJson(m.processID); j["port"] = ToJson(m.port); j["unknown2"] = ToJson(m.unknown2); return j; } json ToJson(const CommonPackets::ServerVersionConfirm& m) { json j = json::object(); j["netVersion"] = ToJson(m.netVersion); j["unknown"] = ToJson(m.unknown); j["serviceType"] = ToJson(m.serviceType); j["versionMajor"] = ToJson(m.versionMajor); j["versionMinor"] = ToJson(m.versionMinor); j["versionPatch"] = ToJson(m.versionPatch); j["buildString"] = ToJson(m.buildString); return j; } json ToJson(const CommonPackets::DisconnectNotify& m) { json j = json::object(); j["disconnectID"] = ToJson(m.disconnectID); return j; } json ToJson(const CommonPackets::GeneralNotify& m) { json j = json::object(); j["notifyType"] = ToJson(m.notifyType); j["showMessageBox"] = ToJson(m.showMessageBox); return j; } json ToJson(const MasterPackets::RequestZoneTransfer& m) { json j = json::object(); j["requestID"] = ToJson(m.requestID); j["mythranShift"] = ToJson(m.mythranShift); j["zoneID"] = ToJson(m.zoneID); j["cloneID"] = ToJson(m.cloneID); j["stamps"] = ToJson(m.stamps); return j; } json ToJson(const MasterPackets::RequestZoneTransferResponse& m) { json j = json::object(); j["requestID"] = ToJson(m.requestID); j["mythranShift"] = ToJson(m.mythranShift); j["zoneID"] = ToJson(m.zoneID); j["zoneInstance"] = ToJson(m.zoneInstance); j["zoneClone"] = ToJson(m.zoneClone); j["serverPort"] = ToJson(m.serverPort); j["serverIP"] = ToJson(m.serverIP); j["stamps"] = ToJson(m.stamps); return j; } json ToJson(const MasterPackets::ServerInfo& m) { json j = json::object(); j["port"] = ToJson(m.port); j["zoneID"] = ToJson(m.zoneID); j["instanceID"] = ToJson(m.instanceID); j["serverType"] = ToJson(m.serverType); j["ip"] = ToJson(m.ip); return j; } json ToJson(const MasterPackets::RequestSessionKey& m) { json j = json::object(); j["username"] = ToJson(m.username); return j; } json ToJson(const MasterPackets::SetSessionKey& m) { json j = json::object(); j["username"] = ToJson(m.username); return j; } json ToJson(const MasterPackets::SessionKeyResponse& m) { json j = json::object(); j["username"] = ToJson(m.username); return j; } json ToJson(const MasterPackets::NewSessionAlert& m) { json j = json::object(); j["username"] = ToJson(m.username); return j; } json ToJson(const MasterPackets::PlayerCountChange& m) { json j = json::object(); j["zoneID"] = ToJson(m.zoneID); j["instanceID"] = ToJson(m.instanceID); return j; } json ToJson(const MasterPackets::PlayerAdded& m) { json j = ToJson(static_cast(m)); return j; } json ToJson(const MasterPackets::PlayerRemoved& m) { json j = ToJson(static_cast(m)); return j; } json ToJson(const MasterPackets::CreatePrivateZone& m) { json j = json::object(); j["zoneID"] = ToJson(m.zoneID); j["cloneID"] = ToJson(m.cloneID); return j; } json ToJson(const MasterPackets::RequestPrivateZone& m) { json j = json::object(); j["requestID"] = ToJson(m.requestID); j["mythranShift"] = ToJson(m.mythranShift); return j; } json ToJson(const MasterPackets::WorldReady& m) { json j = json::object(); j["zoneID"] = ToJson(m.zoneID); j["instanceID"] = ToJson(m.instanceID); return j; } json ToJson(const MasterPackets::WorldReadyInfo& m) { json j = json::object(); j["zoneID"] = ToJson(m.zoneID); j["instanceID"] = ToJson(m.instanceID); j["cloneID"] = ToJson(m.cloneID); j["ip"] = ToJson(m.ip); j["port"] = ToJson(m.port); j["isPrivate"] = ToJson(m.isPrivate); return j; } json ToJson(const MasterPackets::PrepZone& m) { json j = json::object(); j["zoneID"] = ToJson(m.zoneID); j["cloneID"] = ToJson(m.cloneID); return j; } json ToJson(const MasterPackets::Shutdown& m) { json j = json::object(); return j; } json ToJson(const MasterPackets::ShutdownResponse& m) { json j = json::object(); return j; } json ToJson(const MasterPackets::WorldShutDown& m) { json j = json::object(); j["zoneID"] = ToJson(m.zoneID); j["instanceID"] = ToJson(m.instanceID); return j; } json ToJson(const MasterPackets::ShutdownUniverse& m) { json j = json::object(); return j; } json ToJson(const MasterPackets::AffirmTransfer& m) { json j = json::object(); j["requestID"] = ToJson(m.requestID); return j; } json ToJson(const MasterPackets::AffirmTransferRequest& m) { json j = ToJson(static_cast(m)); return j; } json ToJson(const MasterPackets::AffirmTransferResponse& m) { json j = ToJson(static_cast(m)); return j; } json ToJson(const MasterPackets::RequestServerList& m) { json j = json::object(); return j; } json ToJson(const MasterPackets::ServerListResponse& m) { json j = json::object(); j["authOnline"] = ToJson(m.authOnline); j["chatOnline"] = ToJson(m.chatOnline); j["instances"] = ToJson(m.instances); j["ugcEnabled"] = ToJson(m.ugcEnabled); j["ugcOnline"] = ToJson(m.ugcOnline); j["ugcPid"] = ToJson(m.ugcPid); j["endpoints"] = ToJson(m.endpoints); return j; } json ToJson(const MasterPackets::ServerListResponse::Instance& m) { json j = json::object(); j["mapID"] = ToJson(m.mapID); j["instanceID"] = ToJson(m.instanceID); j["cloneID"] = ToJson(m.cloneID); j["players"] = ToJson(m.players); j["ip"] = ToJson(m.ip); j["port"] = ToJson(m.port); j["isPrivate"] = ToJson(m.isPrivate); j["state"] = ToJson(m.state); j["outdated"] = ToJson(m.outdated); return j; } json ToJson(const MasterPackets::ServerListResponse::Endpoint& m) { json j = json::object(); j["type"] = ToJson(m.type); j["zoneID"] = ToJson(m.zoneID); j["instanceID"] = ToJson(m.instanceID); j["ip"] = ToJson(m.ip); j["port"] = ToJson(m.port); j["host"] = ToJson(m.host); return j; } json ToJson(const MasterPackets::DashboardShutdown& m) { json j = json::object(); return j; } json ToJson(const MasterPackets::ConfigReload& m) { json j = json::object(); return j; } json ToJson(const MasterPackets::InstanceShutdown& m) { json j = json::object(); j["zoneID"] = ToJson(m.zoneID); j["instanceID"] = ToJson(m.instanceID); return j; } json ToJson(const WorldPackets::WorldLUBitStream& m) { json j = json::object(); return j; } json ToJson(const WorldPackets::Validation& m) { json j = ToJson(static_cast(m)); j["username"] = ToJson(m.username); j["fdbChecksum"] = ToJson(m.fdbChecksum); return j; } json ToJson(const WorldPackets::CharacterListRequest& m) { json j = ToJson(static_cast(m)); return j; } json ToJson(const WorldPackets::CharacterCreateRequest& m) { json j = ToJson(static_cast(m)); j["name"] = ToJson(m.name); j["firstNameIndex"] = ToJson(m.firstNameIndex); j["middleNameIndex"] = ToJson(m.middleNameIndex); j["lastNameIndex"] = ToJson(m.lastNameIndex); j["unknown"] = ToJson(m.unknown); j["shirtColor"] = ToJson(m.shirtColor); j["shirtStyle"] = ToJson(m.shirtStyle); j["pantsColor"] = ToJson(m.pantsColor); j["hairStyle"] = ToJson(m.hairStyle); j["hairColor"] = ToJson(m.hairColor); j["leftHand"] = ToJson(m.leftHand); j["rightHand"] = ToJson(m.rightHand); j["eyebrows"] = ToJson(m.eyebrows); j["eyes"] = ToJson(m.eyes); j["mouth"] = ToJson(m.mouth); return j; } json ToJson(const WorldPackets::CharacterLoginRequest& m) { json j = ToJson(static_cast(m)); j["playerID"] = ToJson(m.playerID); return j; } json ToJson(const WorldPackets::GameMessage& m) { json j = ToJson(static_cast(m)); j["objectID"] = ToJson(m.objectID); j["messageID"] = ToJson(m.messageID); j["data"] = ToJson(m.data); return j; } json ToJson(const WorldPackets::CharacterDeleteRequest& m) { json j = ToJson(static_cast(m)); j["objectID"] = ToJson(m.objectID); return j; } json ToJson(const WorldPackets::CharacterRenameRequest& m) { json j = ToJson(static_cast(m)); j["objectID"] = ToJson(m.objectID); j["name"] = ToJson(m.name); return j; } json ToJson(const WorldPackets::LevelLoadComplete& m) { json j = ToJson(static_cast(m)); j["mapID"] = ToJson(m.mapID); j["instanceID"] = ToJson(m.instanceID); j["cloneID"] = ToJson(m.cloneID); return j; } json ToJson(const WorldPackets::PositionUpdate& m) { json j = ToJson(static_cast(m)); j["update"] = ToJson(m.update); j["hasVelocity"] = ToJson(m.hasVelocity); j["hasAngularVelocity"] = ToJson(m.hasAngularVelocity); j["hasLocalSpaceInfo"] = ToJson(m.hasLocalSpaceInfo); j["hasLinearVelocity"] = ToJson(m.hasLinearVelocity); j["hasRemoteInputInfo"] = ToJson(m.hasRemoteInputInfo); return j; } json ToJson(const WorldPackets::MailPacket& m) { json j = ToJson(static_cast(m)); j["data"] = ToJson(m.data); return j; } json ToJson(const WorldPackets::RoutePacket& m) { json j = ToJson(static_cast(m)); j["size"] = ToJson(m.size); j["routedService"] = ToJson(m.routedService); j["routedMessageID"] = ToJson(m.routedMessageID); j["padding"] = ToJson(m.padding); j["routedData"] = ToJson(m.routedData); return j; } json ToJson(const WorldPackets::StringCheck& m) { json j = ToJson(static_cast(m)); j["chatLevel"] = ToJson(m.chatLevel); j["requestID"] = ToJson(m.requestID); j["message"] = ToJson(m.message); return j; } json ToJson(const WorldPackets::GeneralChatMessage& m) { json j = ToJson(static_cast(m)); j["chatChannel"] = ToJson(m.chatChannel); j["unknown"] = ToJson(m.unknown); j["message"] = ToJson(m.message); return j; } json ToJson(const WorldPackets::TmpGuildCreate& m) { json j = ToJson(static_cast(m)); j["guildName"] = ToJson(m.guildName); return j; } json ToJson(const WorldPackets::HandleFunness& m) { json j = ToJson(static_cast(m)); j["cheatInfo"] = ToJson(m.cheatInfo); j["cheatType"] = ToJson(m.cheatType); return j; } json ToJson(const WorldPackets::RequestUgcManifestInfo& m) { json j = ToJson(static_cast(m)); j["blueprintId"] = ToJson(m.blueprintId); j["resourceType"] = ToJson(m.resourceType); return j; } json ToJson(const WorldPackets::UgcDownloadFailed& m) { json j = ToJson(static_cast(m)); j["resType"] = ToJson(m.resType); j["blueprintId"] = ToJson(m.blueprintId); j["statusCode"] = ToJson(m.statusCode); j["charId"] = ToJson(m.charId); return j; } json ToJson(const WorldPackets::UIHelpTop5& m) { json j = ToJson(static_cast(m)); j["language"] = ToJson(m.language); return j; } json ToJson(const ChatPackets::WorldRoutePacket& m) { json j = json::object(); j["targetID"] = ToJson(m.targetID); j["routedData"] = ToJson(m.routedData); return j; } json ToJson(const CDClientReload& m) { json j = json::object(); j["requesterId"] = ToJson(m.requesterId); j["fdb"] = ToJson(m.fdb); j["sqlite"] = ToJson(m.sqlite); return j; } json ToJson(const PlayerPositions& m) { json j = json::object(); j["zoneId"] = ToJson(m.zoneId); j["instanceId"] = ToJson(m.instanceId); j["cloneId"] = ToJson(m.cloneId); j["players"] = ToJson(m.players); return j; } json ToJson(const PlayerPositions::Player& m) { json j = json::object(); j["characterId"] = ToJson(m.characterId); j["x"] = ToJson(m.x); return j; } json ToJson(const Announcement& m) { json j = json::object(); j["title"] = ToJson(m.title); j["message"] = ToJson(m.message); j["zones"] = ToJson(m.zones); return j; } json ToJson(const DataChanged& m) { json j = json::object(); j["entries"] = ToJson(m.entries); return j; } json ToJson(const DataChanged::Entry& m) { json j = json::object(); j["table"] = ToJson(m.table); j["id"] = ToJson(m.id); return j; } json ToJson(const InstanceMigrationRequest& m) { json j = json::object(); j["requestId"] = ToJson(m.requestId); j["kind"] = ToJson(m.kind); j["zoneId"] = ToJson(m.zoneId); j["sourceInstance"] = ToJson(m.sourceInstance); j["targetInstance"] = ToJson(m.targetInstance); j["warnSeconds"] = ToJson(m.warnSeconds); j["shutdownSource"] = ToJson(m.shutdownSource); j["seamless"] = ToJson(m.seamless); j["requesterId"] = ToJson(m.requesterId); j["requestedBy"] = ToJson(m.requestedBy); return j; } json ToJson(const MigratePlayersOrder& m) { json j = json::object(); j["migrationId"] = ToJson(m.migrationId); j["targetZone"] = ToJson(m.targetZone); j["targetInstance"] = ToJson(m.targetInstance); j["targetClone"] = ToJson(m.targetClone); j["targetIp"] = ToJson(m.targetIp); j["targetPort"] = ToJson(m.targetPort); j["warnSeconds"] = ToJson(m.warnSeconds); j["playersPerSecond"] = ToJson(m.playersPerSecond); j["mythranShift"] = ToJson(m.mythranShift); j["seamless"] = ToJson(m.seamless); j["maxWaitSeconds"] = ToJson(m.maxWaitSeconds); return j; } json ToJson(const MigrationStatus& m) { json j = json::object(); j["migrationId"] = ToJson(m.migrationId); j["state"] = ToJson(m.state); j["kind"] = ToJson(m.kind); j["zoneId"] = ToJson(m.zoneId); j["sourceInstance"] = ToJson(m.sourceInstance); j["targetInstance"] = ToJson(m.targetInstance); j["moved"] = ToJson(m.moved); j["remaining"] = ToJson(m.remaining); j["failed"] = ToJson(m.failed); j["requesterId"] = ToJson(m.requesterId); j["message"] = ToJson(m.message); return j; } json ToJson(const CarriedPlayerState& m) { json j = json::object(); j["targetZone"] = ToJson(m.targetZone); j["targetInstance"] = ToJson(m.targetInstance); j["characterId"] = ToJson(m.characterId); j["petItemId"] = ToJson(m.petItemId); j["seamless"] = ToJson(m.seamless); j["hasPosition"] = ToJson(m.hasPosition); j["x"] = ToJson(m.x); j["rotW"] = ToJson(m.rotW); return j; } json ToJson(const MigratePrepare& m) { json j = json::object(); j["migrationId"] = ToJson(m.migrationId); j["maxWaitSeconds"] = ToJson(m.maxWaitSeconds); return j; } json ToJson(const LiveUpdateRequest& m) { json j = json::object(); j["action"] = ToJson(m.action); j["warnSeconds"] = ToJson(m.warnSeconds); j["requesterId"] = ToJson(m.requesterId); j["requestedBy"] = ToJson(m.requestedBy); return j; } json ToJson(const LiveUpdateStatus& m) { json j = json::object(); j["updateId"] = ToJson(m.updateId); j["phase"] = ToJson(m.phase); j["startedAt"] = ToJson(m.startedAt); j["finishedAt"] = ToJson(m.finishedAt); j["requesterId"] = ToJson(m.requesterId); j["by"] = ToJson(m.by); j["message"] = ToJson(m.message); j["units"] = ToJson(m.units); return j; } json ToJson(const LiveUpdateStatus::Unit& m) { json j = json::object(); j["kind"] = ToJson(m.kind); j["state"] = ToJson(m.state); j["zoneId"] = ToJson(m.zoneId); j["instanceId"] = ToJson(m.instanceId); j["cloneId"] = ToJson(m.cloneId); j["replacement"] = ToJson(m.replacement); j["players"] = ToJson(m.players); j["moved"] = ToJson(m.moved); j["isPrivate"] = ToJson(m.isPrivate); j["message"] = ToJson(m.message); return j; } json ToJson(const LiveUpdateRetire& m) { json j = json::object(); return j; } json ToJson(const ChatServerReady& m) { json j = json::object(); return j; } json ToJson(const ChatHandoff& m) { json j = json::object(); j["teams"] = ToJson(m.teams); return j; } json ToJson(const ChatHandoff::Team& m) { json j = json::object(); j["teamId"] = ToJson(m.teamId); j["leaderId"] = ToJson(m.leaderId); j["members"] = ToJson(m.members); j["lootFlag"] = ToJson(m.lootFlag); j["local"] = ToJson(m.local); j["zoneId"] = ToJson(m.zoneId); j["instanceId"] = ToJson(m.instanceId); j["cloneId"] = ToJson(m.cloneId); return j; } json ToJson(const MessageCaptureControl& m) { json j = json::object(); j["captureId"] = ToJson(m.captureId); j["action"] = ToJson(m.action); j["characterId"] = ToJson(m.characterId); j["seconds"] = ToJson(m.seconds); j["toServer"] = ToJson(m.toServer); j["toClient"] = ToJson(m.toClient); j["only"] = ToJson(m.only); j["skip"] = ToJson(m.skip); j["slot"] = ToJson(m.slot); j["target"] = ToJson(m.target); j["accountId"] = ToJson(m.accountId); j["accountName"] = ToJson(m.accountName); j["characterIds"] = ToJson(m.characterIds); return j; } json ToJson(const MessageCaptureEntry& m) { json j = json::object(); j["sequence"] = ToJson(m.sequence); j["timeMs"] = ToJson(m.timeMs); j["direction"] = ToJson(m.direction); j["messageId"] = ToJson(m.messageId); j["objectId"] = ToJson(m.objectId); j["bits"] = ToJson(m.bits); j["payload"] = ToJson(m.payload); j["decoded"] = ToJson(m.decoded); return j; } json ToJson(const MessageCaptureData& m) { json j = json::object(); j["captureId"] = ToJson(m.captureId); j["status"] = ToJson(m.status); j["characterId"] = ToJson(m.characterId); j["zoneId"] = ToJson(m.zoneId); j["instanceId"] = ToJson(m.instanceId); j["reason"] = ToJson(m.reason); j["dropped"] = ToJson(m.dropped); j["entries"] = ToJson(m.entries); j["cloneId"] = ToJson(m.cloneId); j["source"] = ToJson(m.source); j["slots"] = ToJson(m.slots); j["packetCount"] = ToJson(m.packetCount); j["packetsDropped"] = ToJson(m.packetsDropped); j["packets"] = ToJson(m.packets); return j; } json ToJson(const PlayerActionRequest& m) { json j = json::object(); j["requestId"] = ToJson(m.requestId); j["action"] = ToJson(m.action); j["accountId"] = ToJson(m.accountId); j["characterId"] = ToJson(m.characterId); j["zoneId"] = ToJson(m.zoneId); j["disconnectReason"] = ToJson(m.disconnectReason); j["targetId"] = ToJson(m.targetId); j["approved"] = ToJson(m.approved); j["text"] = ToJson(m.text); j["name"] = ToJson(m.name); j["instanceId"] = ToJson(m.instanceId); return j; } json ToJson(const PlayerActionResult& m) { json j = json::object(); j["requestId"] = ToJson(m.requestId); j["action"] = ToJson(m.action); j["affected"] = ToJson(m.affected); j["timedOut"] = ToJson(m.timedOut); return j; } json ToJson(const ProfileRequest& m) { json j = json::object(); j["sessionId"] = ToJson(m.sessionId); j["serverType"] = ToJson(m.serverType); j["zoneId"] = ToJson(m.zoneId); j["instanceId"] = ToJson(m.instanceId); j["durationMs"] = ToJson(m.durationMs); j["stop"] = ToJson(m.stop); return j; } json ToJson(const ProfileResult& m) { json j = json::object(); j["sessionId"] = ToJson(m.sessionId); j["serverType"] = ToJson(m.serverType); j["zoneId"] = ToJson(m.zoneId); j["instanceId"] = ToJson(m.instanceId); j["status"] = ToJson(m.status); j["error"] = ToJson(m.error); j["profile"] = ToJson(m.profile); return j; } json ToJson(const ServerTraffic& m) { json j = json::object(); j["serverType"] = ToJson(m.serverType); j["zoneId"] = ToJson(m.zoneId); j["instanceId"] = ToJson(m.instanceId); j["report"] = ToJson(m.report); j["frames"] = ToJson(m.frames); return j; } json ToJson(const UgcModelsMade& m) { json j = json::object(); j["blueprintIds"] = ToJson(m.blueprintIds); return j; } json ToJson(const UpdateStatus& m) { json j = json::object(); j["state"] = ToJson(m.state); j["summary"] = ToJson(m.summary); return j; } json ToJson(const WorldFilesReport& m) { json j = json::object(); j["zoneId"] = ToJson(m.zoneId); j["instanceId"] = ToJson(m.instanceId); j["cloneId"] = ToJson(m.cloneId); j["files"] = ToJson(m.files); return j; } json ToJson(const WorldReloadRequest& m) { json j = json::object(); j["zoneId"] = ToJson(m.zoneId); j["warnSeconds"] = ToJson(m.warnSeconds); j["requesterId"] = ToJson(m.requesterId); j["requestedBy"] = ToJson(m.requestedBy); return j; } json ToJson(const WorldFilesStatus& m) { json j = json::object(); j["watching"] = ToJson(m.watching); j["watchSeconds"] = ToJson(m.watchSeconds); j["seamless"] = ToJson(m.seamless); j["zones"] = ToJson(m.zones); return j; } json ToJson(const WorldFilesStatus::File& m) { json j = json::object(); j["disk"] = ToJson(m.disk); j["hashed"] = ToJson(m.hashed); j["missing"] = ToJson(m.missing); j["changed"] = ToJson(m.changed); return j; } json ToJson(const WorldFilesStatus::Instance& m) { json j = json::object(); j["instanceId"] = ToJson(m.instanceId); j["cloneId"] = ToJson(m.cloneId); j["players"] = ToJson(m.players); j["stale"] = ToJson(m.stale); j["reloading"] = ToJson(m.reloading); j["outdated"] = ToJson(m.outdated); return j; } json ToJson(const WorldFilesStatus::Zone& m) { json j = json::object(); j["zoneId"] = ToJson(m.zoneId); j["files"] = ToJson(m.files); j["instances"] = ToJson(m.instances); j["message"] = ToJson(m.message); return j; } json ToJson(const RemoteInputInfo& m) { json j = json::object(); j["m_RemoteInputX"] = ToJson(m.m_RemoteInputX); j["m_RemoteInputY"] = ToJson(m.m_RemoteInputY); j["m_IsPowersliding"] = ToJson(m.m_IsPowersliding); j["m_IsModified"] = ToJson(m.m_IsModified); return j; } json ToJson(const LocalSpaceInfo& m) { json j = json::object(); j["objectId"] = ToJson(m.objectId); j["position"] = ToJson(m.position); j["linearVelocity"] = ToJson(m.linearVelocity); return j; } json ToJson(const PositionUpdate& m) { json j = json::object(); j["position"] = ToJson(m.position); j["rotation"] = ToJson(m.rotation); j["onGround"] = ToJson(m.onGround); j["onRail"] = ToJson(m.onRail); j["velocity"] = ToJson(m.velocity); j["angularVelocity"] = ToJson(m.angularVelocity); j["localSpaceInfo"] = ToJson(m.localSpaceInfo); j["remoteInputInfo"] = ToJson(m.remoteInputInfo); return j; } json ToJson(const Profiler::Second& m) { json j = json::object(); j["time"] = ToJson(m.time); j["ticks"] = ToJson(m.ticks); j["totalUs"] = ToJson(m.totalUs); j["maxUs"] = ToJson(m.maxUs); j["frames"] = ToJson(m.frames); j["phaseUs"] = ToJson(m.phaseUs); return j; } json ToJson(const Profiler::MessageTime& m) { json j = json::object(); j["key"] = ToJson(m.key); j["count"] = ToJson(m.count); j["totalUs"] = ToJson(m.totalUs); j["maxUs"] = ToJson(m.maxUs); return j; } json ToJson(const Profiler::Node& m) { json j = json::object(); j["name"] = ToJson(m.name); j["arg"] = ToJson(m.arg); j["depth"] = ToJson(m.depth); j["count"] = ToJson(m.count); j["totalUs"] = ToJson(m.totalUs); j["startUs"] = ToJson(m.startUs); return j; } json ToJson(const Profiler::Frame& m) { json j = json::object(); j["timeMs"] = ToJson(m.timeMs); j["durationUs"] = ToJson(m.durationUs); j["implicit"] = ToJson(m.implicit); j["phaseUs"] = ToJson(m.phaseUs); j["scopes"] = ToJson(m.scopes); return j; } json ToJson(const Profiler::Report& m) { json j = json::object(); j["present"] = ToJson(m.present); j["slowThresholdMs"] = ToJson(m.slowThresholdMs); j["seconds"] = ToJson(m.seconds); j["messages"] = ToJson(m.messages); j["worst"] = ToJson(m.worst); j["slow"] = ToJson(m.slow); return j; } json ToJson(const Profiler::Profile& m) { json j = json::object(); j["id"] = ToJson(m.id); j["durationMs"] = ToJson(m.durationMs); j["frames"] = ToJson(m.frames); j["totalUs"] = ToJson(m.totalUs); j["truncated"] = ToJson(m.truncated); j["nodes"] = ToJson(m.nodes); return j; } json ToJson(const TrafficStats::MessageKey& m) { json j = json::object(); j["outbound"] = ToJson(m.outbound); j["service"] = ToJson(m.service); j["packet"] = ToJson(m.packet); j["gameMessage"] = ToJson(m.gameMessage); return j; } json ToJson(const TrafficStats::PeerCounts& m) { json j = json::object(); j["packetsIn"] = ToJson(m.packetsIn); j["packetsOut"] = ToJson(m.packetsOut); j["bytesIn"] = ToJson(m.bytesIn); j["bytesOut"] = ToJson(m.bytesOut); return j; } json ToJson(const TrafficStats::MessageCount& m) { json j = json::object(); j["key"] = ToJson(m.key); j["count"] = ToJson(m.count); j["bytes"] = ToJson(m.bytes); return j; } json ToJson(const TrafficStats::Second& m) { json j = json::object(); j["time"] = ToJson(m.time); j["packetsIn"] = ToJson(m.packetsIn); j["packetsOut"] = ToJson(m.packetsOut); j["bytesIn"] = ToJson(m.bytesIn); j["bytesOut"] = ToJson(m.bytesOut); j["httpRequests"] = ToJson(m.httpRequests); j["httpStatus"] = ToJson(m.httpStatus); j["httpBytesOut"] = ToJson(m.httpBytesOut); j["httpLatency"] = ToJson(m.httpLatency); j["peers"] = ToJson(m.peers); j["httpFromServers"] = ToJson(m.httpFromServers); j["httpFromServersBytesOut"] = ToJson(m.httpFromServersBytesOut); j["httpOutRequests"] = ToJson(m.httpOutRequests); j["httpOutBytesIn"] = ToJson(m.httpOutBytesIn); return j; } json ToJson(const TrafficStats::RouteStats& m) { json j = json::object(); j["route"] = ToJson(m.route); j["count"] = ToJson(m.count); j["status"] = ToJson(m.status); j["bytesOut"] = ToJson(m.bytesOut); j["latency"] = ToJson(m.latency); return j; } json ToJson(const TrafficStats::Link& m) { json j = json::object(); j["connections"] = ToJson(m.connections); j["datagramsSent"] = ToJson(m.datagramsSent); j["datagramsReceived"] = ToJson(m.datagramsReceived); j["bytesSent"] = ToJson(m.bytesSent); j["bytesReceived"] = ToJson(m.bytesReceived); j["resends"] = ToJson(m.resends); j["resendQueue"] = ToJson(m.resendQueue); j["averagePingMs"] = ToJson(m.averagePingMs); return j; } json ToJson(const TrafficStats::Connection& m) { json j = json::object(); j["address"] = ToJson(m.address); j["port"] = ToJson(m.port); j["peer"] = ToJson(m.peer); j["http"] = ToJson(m.http); j["packetsIn"] = ToJson(m.packetsIn); j["bytesIn"] = ToJson(m.bytesIn); j["resends"] = ToJson(m.resends); j["pingMs"] = ToJson(m.pingMs); j["accountId"] = ToJson(m.accountId); j["characterId"] = ToJson(m.characterId); return j; } json ToJson(const TrafficStats::Report& m) { json j = json::object(); j["seconds"] = ToJson(m.seconds); j["messages"] = ToJson(m.messages); j["routes"] = ToJson(m.routes); j["link"] = ToJson(m.link); j["gauges"] = ToJson(m.gauges); j["peerSplit"] = ToJson(m.peerSplit); j["connections"] = ToJson(m.connections); j["otherConnections"] = ToJson(m.otherConnections); j["otherConnectionCount"] = ToJson(m.otherConnectionCount); j["hasConnections"] = ToJson(m.hasConnections); return j; } json ToJson(const ZoneFileLog::Entry& m) { json j = json::object(); j["kind"] = ToJson(m.kind); j["packed"] = ToJson(m.packed); j["size"] = ToJson(m.size); j["hash"] = ToJson(m.hash); j["path"] = ToJson(m.path); return j; } json ToJson(const FriendData& m) { json j = json::object(); j["isOnline"] = ToJson(m.isOnline); j["isBestFriend"] = ToJson(m.isBestFriend); j["isFTP"] = ToJson(m.isFTP); j["zoneID"] = ToJson(m.zoneID); j["friendID"] = ToJson(m.friendID); j["friendName"] = ToJson(m.friendName); return j; } // Wire packets: (service, ID, struct, reader). An ID can have more than one struct (one per direction): // the first that reads the whole packet is shown. const std::vector& Entries() { static const std::vector entries{ { ServiceType::AUTH, static_cast(MessageType::Auth::LOGIN_REQUEST), "LoginRequest", true, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::LOGIN_SESSION_NOTIFY), "LoginSessionNotify", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::UNEXPECTED_DISCONNECT), "UnexpectedDisconnect", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GMLEVEL_UPDATE), "GMLevelUpdate", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GM_MUTE), "GMMute", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GM_ANNOUNCE), "Announcement", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::CREATE_TEAM), "CreateTeam", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::TEAM_GET_STATUS), "TeamUpdate", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::ACHIEVEMENT_NOTIFY), "AchievementNotify", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::MAIL), "MailNotify", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::SHOW_ALL), "ShowAllRequest", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::WHO), "FindPlayerRequest", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GET_FRIENDS_LIST), "GetFriendsList", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::ADD_FRIEND_REQUEST), "AddFriendRequest", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::ADD_FRIEND_RESPONSE), "AddFriendResponse", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::REMOVE_FRIEND), "RemoveFriend", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GET_IGNORE_LIST), "GetIgnoreList", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::ADD_IGNORE), "AddIgnore", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::REMOVE_IGNORE), "RemoveIgnore", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GENERAL_CHAT_MESSAGE), "GeneralChatMessage", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::PRIVATE_CHAT_MESSAGE), "PrivateChatMessage", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::TEAM_INVITE), "TeamInvite", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::TEAM_INVITE_RESPONSE), "TeamInviteResponse", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::TEAM_LEAVE), "TeamLeave", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::TEAM_KICK), "TeamKick", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::TEAM_SET_LEADER), "TeamSetLeader", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::TEAM_SET_LOOT), "TeamSetLoot", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::TEAM_GET_STATUS), "TeamGetStatus", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::REQUEST_MINIMUM_CHAT_MODE), "RequestMinimumChatMode", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::REQUEST_MINIMUM_CHAT_MODE_PRIVATE), "RequestMinimumChatModePrivate", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GUILD_INVITE), "GuildInvite", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GUILD_INVITE_RESPONSE), "GuildInviteResponse", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GUILD_LEAVE), "GuildLeave", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GUILD_GET_ALL), "GuildGetAll", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GUILD_CREATE), "GuildCreate", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GUILD_KICK), "GuildKick", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GUILD_SET_RANK), "GuildSetRank", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GUILD_DISBAND), "GuildDisband", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GUILD_GET_STATUS), "GuildStatus", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::MATCH_REQUEST), "MatchRequest", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::MATCH_TRANSFER), "MatchTransfer", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::GENERAL_CHAT_MESSAGE), "GeneralChatMessage", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::PRIVATE_CHAT_MESSAGE), "PrivateChatMessage", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::LOGIN_RESPONSE), "LoginResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::LOAD_STATIC_ZONE), "LoadStaticZone", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::CHARACTER_LIST_RESPONSE), "CharacterListResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::CHARACTER_CREATE_RESPONSE), "CharacterCreateResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::CHARACTER_RENAME_RESPONSE), "CharacterRenameResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::DELETE_CHARACTER_RESPONSE), "DeleteCharacterResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::TRANSFER_TO_WORLD), "TransferToWorld", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::SERVER_STATES), "ServerStates", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::CREATE_CHARACTER), "CreateCharacter", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::CHAT_MODERATION_STRING), "ChatModerationString", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::MAKE_GM_RESPONSE), "MakeGMResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::HTTP_MONITOR_INFO_RESPONSE), "HTTPMonitorInfoResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::DEBUG_OUTPUT), "DebugOutput", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::BLUEPRINT_SAVE_RESPONSE), "BlueprintSaveResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::BLUEPRINT_LOAD_RESPONSE_ITEMID), "BlueprintLoadItemResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::UGC_MANIFEST_RESPONSE), "UgcManifestResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::MINIMUM_CHAT_MODE_RESPONSE), "MinimumChatModeResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::MINIMUM_CHAT_MODE_RESPONSE_PRIVATE), "MinimumChatModeResponsePrivate", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::SEND_CANNED_TEXT), "SendCannedText", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GET_FRIENDS_LIST_RESPONSE), "GetFriendsListResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::ADD_FRIEND_REQUEST), "AddFriendRequest", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::ADD_FRIEND_RESPONSE), "AddFriendResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::REMOVE_FRIEND_RESPONSE), "RemoveFriendResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::UPDATE_FRIEND_NOTIFY), "UpdateFriendNotify", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::WHO_RESPONSE), "WhoResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::SHOW_ALL_RESPONSE), "ShowAllResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GET_IGNORE_LIST_RESPONSE), "GetIgnoreListResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::ADD_IGNORE_RESPONSE), "AddIgnoreResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::REMOVE_IGNORE_RESPONSE), "RemoveIgnoreResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::TEAM_INVITE), "TeamInvite", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::TEAM_INVITE_INITIAL_RESPONSE), "TeamInviteInitialResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GUILD_CREATE_RESPONSE), "GuildCreateResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GUILD_INVITE), "GuildInvite", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GUILD_INVITE_INITIAL_RESPONSE), "GuildInviteInitialResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GUILD_INVITE_FINAL_RESPONSE), "GuildInviteFinalResponse", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GUILD_INVITE_CONFIRM), "GuildInviteConfirm", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GUILD_ADD_PLAYER), "GuildAddPlayer", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GUILD_REMOVE_PLAYER), "GuildRemovePlayer", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GUILD_LOGIN_LOGOUT), "GuildLoginLogout", false, &ReadWith }, { ServiceType::CLIENT, static_cast(MessageType::Client::GUILD_DATA), "GuildData", false, &ReadWith }, { ServiceType::COMMON, static_cast(MessageType::Server::VERSION_CONFIRM), "ClientVersionConfirm", true, &ReadWith }, { ServiceType::COMMON, static_cast(MessageType::Server::VERSION_CONFIRM), "ServerVersionConfirm", false, &ReadWith }, { ServiceType::COMMON, static_cast(MessageType::Server::DISCONNECT_NOTIFY), "DisconnectNotify", false, &ReadWith }, { ServiceType::COMMON, static_cast(MessageType::Server::GENERAL_NOTIFY), "GeneralNotify", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::REQUEST_ZONE_TRANSFER), "RequestZoneTransfer", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::REQUEST_ZONE_TRANSFER_RESPONSE), "RequestZoneTransferResponse", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::SERVER_INFO), "ServerInfo", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::REQUEST_SESSION_KEY), "RequestSessionKey", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::SET_SESSION_KEY), "SetSessionKey", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::SESSION_KEY_RESPONSE), "SessionKeyResponse", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::NEW_SESSION_ALERT), "NewSessionAlert", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::PLAYER_ADDED), "PlayerAdded", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::PLAYER_REMOVED), "PlayerRemoved", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::CREATE_PRIVATE_ZONE), "CreatePrivateZone", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::REQUEST_PRIVATE_ZONE), "RequestPrivateZone", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::WORLD_READY), "WorldReady", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::WORLD_READY), "WorldReadyInfo", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::PREP_ZONE), "PrepZone", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::SHUTDOWN), "Shutdown", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::SHUTDOWN_RESPONSE), "ShutdownResponse", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::SHUTDOWN_RESPONSE), "WorldShutDown", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::SHUTDOWN_UNIVERSE), "ShutdownUniverse", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::AFFIRM_TRANSFER_REQUEST), "AffirmTransferRequest", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::AFFIRM_TRANSFER_RESPONSE), "AffirmTransferResponse", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::REQUEST_SERVER_LIST), "RequestServerList", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::SERVER_LIST_RESPONSE), "ServerListResponse", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::DASHBOARD_SHUTDOWN), "DashboardShutdown", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::CONFIG_RELOAD), "ConfigReload", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::INSTANCE_SHUTDOWN), "InstanceShutdown", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::VALIDATION), "Validation", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::CHARACTER_LIST_REQUEST), "CharacterListRequest", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::CHARACTER_CREATE_REQUEST), "CharacterCreateRequest", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::LOGIN_REQUEST), "CharacterLoginRequest", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::GAME_MSG), "GameMessage", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::CHARACTER_DELETE_REQUEST), "CharacterDeleteRequest", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::CHARACTER_RENAME_REQUEST), "CharacterRenameRequest", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::LEVEL_LOAD_COMPLETE), "LevelLoadComplete", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::POSITION_UPDATE), "PositionUpdate", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::MAIL), "MailPacket", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::ROUTE_PACKET), "RoutePacket", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::STRING_CHECK), "StringCheck", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::GENERAL_CHAT_MESSAGE), "GeneralChatMessage", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::TMP_GUILD_CREATE), "TmpGuildCreate", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::HANDLE_FUNNESS), "HandleFunness", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::REQUEST_UGC_MANIFEST_INFO), "RequestUgcManifestInfo", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::UGC_DOWNLOAD_FAILED), "UgcDownloadFailed", false, &ReadWith }, { ServiceType::WORLD, static_cast(MessageType::World::UI_HELP_TOP_5), "UIHelpTop5", false, &ReadWith }, { ServiceType::CHAT, static_cast(MessageType::Chat::WORLD_ROUTE_PACKET), "WorldRoutePacket", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::CDCLIENT_RELOAD), "CDClientReload", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::PLAYER_POSITIONS), "PlayerPositions", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::ANNOUNCE), "Announcement", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::DATA_CHANGED), "DataChanged", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::INSTANCE_MIGRATE), "InstanceMigrationRequest", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::MIGRATE_PLAYERS), "MigratePlayersOrder", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::MIGRATE_STATUS), "MigrationStatus", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::MIGRATE_PLAYER_STATE), "CarriedPlayerState", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::MIGRATE_PREPARE), "MigratePrepare", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::LIVE_UPDATE_REQUEST), "LiveUpdateRequest", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::LIVE_UPDATE_STATUS), "LiveUpdateStatus", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::LIVE_UPDATE_RETIRE), "LiveUpdateRetire", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::CHAT_SERVER_READY), "ChatServerReady", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::CHAT_HANDOFF), "ChatHandoff", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::MESSAGE_CAPTURE_CONTROL), "MessageCaptureControl", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::MESSAGE_CAPTURE_DATA), "MessageCaptureData", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::PLAYER_ACTION), "PlayerActionRequest", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::PLAYER_ACTION_RESULT), "PlayerActionResult", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::PROFILE_REQUEST), "ProfileRequest", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::PROFILE_RESULT), "ProfileResult", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::SERVER_TRAFFIC), "ServerTraffic", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::UGC_MODELS_MADE), "UgcModelsMade", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::UPDATE_STATUS), "UpdateStatus", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::WORLD_FILES), "WorldFilesReport", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::WORLD_RELOAD), "WorldReloadRequest", false, &ReadWith }, { ServiceType::MASTER, static_cast(MessageType::Master::WORLD_FILES_STATUS), "WorldFilesStatus", false, &ReadWith }, }; return entries; }