@@ -24,6 +24,9 @@ public static void ReadGameRuleValuePair(Packet packet, params object[] indexes)
2424 {
2525 packet . ReadInt32 ( "Rule" , indexes ) ;
2626 packet . ReadInt32 ( "Value" , indexes ) ;
27+
28+ if ( ClientVersion . AddedInVersion ( ClientVersionBuild . V4_4_2_59185 ) )
29+ packet . ReadSingle ( "ValueF" , indexes ) ;
2730 }
2831
2932 public static void ReadDebugTimeInfo ( Packet packet , params object [ ] indexes )
@@ -561,7 +564,7 @@ public static void HandleFeatureSystemStatus(Packet packet)
561564 }
562565 }
563566
564- [ Parser ( Opcode . SMSG_FEATURE_SYSTEM_STATUS , ClientVersionBuild . V4_4_1_57294 ) ]
567+ [ Parser ( Opcode . SMSG_FEATURE_SYSTEM_STATUS , ClientVersionBuild . V4_4_1_57294 , ClientVersionBuild . V4_4_2_59185 ) ]
565568 public static void HandleFeatureSystemStatus441 ( Packet packet )
566569 {
567570 packet . ReadByte ( "ComplaintStatus" ) ;
@@ -706,6 +709,156 @@ public static void HandleFeatureSystemStatus441(Packet packet)
706709 }
707710 }
708711
712+ [ Parser ( Opcode . SMSG_FEATURE_SYSTEM_STATUS , ClientVersionBuild . V4_4_2_59185 ) ]
713+ public static void HandleFeatureSystemStatus442 ( Packet packet )
714+ {
715+ packet . ReadByte ( "ComplaintStatus" ) ;
716+ packet . ReadUInt32 ( "CfgRealmID" ) ;
717+ packet . ReadInt32 ( "CfgRealmRecID" ) ;
718+
719+ packet . ReadUInt32 ( "MaxRecruits" , "RAFSystem" ) ;
720+ packet . ReadUInt32 ( "MaxRecruitMonths" , "RAFSystem" ) ;
721+ packet . ReadUInt32 ( "MaxRecruitmentUses" , "RAFSystem" ) ;
722+ packet . ReadUInt32 ( "DaysInCycle" , "RAFSystem" ) ;
723+ packet . ReadUInt32 ( "RewardsVersion" , "RAFSystem" ) ;
724+
725+ packet . ReadUInt32 ( "CommercePricePollTimeSeconds" ) ;
726+ packet . ReadUInt32 ( "KioskSessionDurationMinutes" ) ;
727+ packet . ReadInt64 ( "RedeemForBalanceAmount" ) ;
728+
729+ packet . ReadUInt32 ( "BpayStorePurchaseTimeout" ) ;
730+ packet . ReadUInt32 ( "ClubsPresenceDelay" ) ;
731+ packet . ReadUInt32 ( "ClubPresenceUnsubscribeDelay" ) ;
732+ packet . ReadInt32 ( "ContentSetID" ) ;
733+ var gameRuleValuesCount = packet . ReadUInt32 ( "GameRuleValuesCount" ) ;
734+ packet . ReadInt32 ( "ActiveTimerunningSeasonID" ) ;
735+ packet . ReadInt32 ( "RemainingTimerunningSeasonSeconds" ) ;
736+
737+ packet . ReadInt16 ( "MaxPlayerGuidLookupsPerRequest" ) ;
738+ packet . ReadInt16 ( "NameLookupTelemetryInterval" ) ;
739+ packet . ReadUInt32 ( "NotFoundCacheTimeSeconds" ) ;
740+
741+ packet . ReadInt32 ( "RealmPvpTypeOverride" ) ;
742+
743+ packet . ReadInt32 ( "MaxTries" , "AddonChatThrottle" ) ;
744+ packet . ReadInt32 ( "TriesRestoredPerSecond" , "AddonChatThrottle" ) ;
745+ packet . ReadInt32 ( "UsedTriesPerMessage" , "AddonChatThrottle" ) ;
746+
747+ for ( var i = 0 ; i < gameRuleValuesCount ; ++ i )
748+ ReadGameRuleValuePair ( packet , "GameRuleValues" ) ;
749+
750+ packet . ResetBitReader ( ) ;
751+ packet . ReadBit ( "VoiceEnabled" ) ;
752+ var hasEuropaTicketSystemStatus = packet . ReadBit ( "HasEuropaTicketSystemStatus" ) ;
753+ packet . ReadBit ( "StoreEnabled" , "BattlePay" ) ;
754+ packet . ReadBit ( "StoreAvailable" , "BattlePay" ) ;
755+ packet . ReadBit ( "StoreDisabledByParentalControls" , "BattlePay" ) ;
756+ packet . ReadBit ( "ItemRestorationButtonEnabled" ) ;
757+ packet . ReadBit ( "BrowserEnabled" ) ;
758+ var hasSessionAlert = packet . ReadBit ( "HasSessionAlert" ) ;
759+
760+ packet . ReadBit ( "Enabled" , "RAFSystem" ) ;
761+ packet . ReadBit ( "RecruitingEnabled" , "RAFSystem" ) ;
762+ packet . ReadBit ( "CharUndeleteEnabled" ) ;
763+ packet . ReadBit ( "RestrictedAccount" ) ;
764+ packet . ReadBit ( "CommerceSystemEnabled" ) ;
765+ packet . ReadBit ( "TutorialsEnabled" ) ;
766+ packet . ReadBit ( "VeteranTokenRedeemWillKick" ) ;
767+ packet . ReadBit ( "WorldTokenRedeemWillKick" ) ;
768+
769+ packet . ReadBit ( "KioskModeEnabled" ) ;
770+ packet . ReadBit ( "CompetitiveModeEnabled" ) ;
771+ packet . ReadBit ( "RedeemForBalanceAvailable" ) ;
772+ packet . ReadBit ( "WarModeEnabled" ) ;
773+ packet . ReadBit ( "CommunitiesEnabled" ) ;
774+ packet . ReadBit ( "BnetGroupsEnabled" ) ;
775+ packet . ReadBit ( "CharacterCommunitiesEnabled" ) ;
776+ packet . ReadBit ( "ClubPresenceAllowSubscribeAll" ) ;
777+
778+ packet . ReadBit ( "VoiceChatParentalDisabled" ) ;
779+ packet . ReadBit ( "VoiceChatParentalMuted" ) ;
780+ packet . ReadBit ( "QuestSessionEnabled" ) ;
781+ packet . ReadBit ( "IsChatMuted" ) ;
782+ packet . ReadBit ( "ClubFinderEnabled" ) ;
783+ packet . ReadBit ( "CommunityFinderEnabled" ) ;
784+ packet . ReadBit ( "BrowserCrashReporterEnabled" ) ;
785+ packet . ReadBit ( "SpeakForMeAllowed" ) ;
786+
787+ packet . ReadBit ( "DoesAccountNeedAADCPrompt" ) ;
788+ packet . ReadBit ( "IsAccountOptedInToAADC" ) ;
789+ packet . ReadBit ( "LfgRequireAuthenticatorEnabled" ) ;
790+ packet . ReadBit ( "ScriptsDisallowedForBeta" ) ;
791+ packet . ReadBit ( "WarGamesEnabled" ) ;
792+ var hasRaceClassExpansionLevels = packet . ReadBit ( "RaceClassExpansionLevels" ) ;
793+ packet . ReadBit ( "Unk441_0" ) ;
794+ packet . ReadBit ( "Unk441_1" ) ;
795+
796+ packet . ReadBit ( "GroupFinderEnabled" ) ;
797+ packet . ReadBit ( "PremadeGroupEnabled" ) ;
798+ packet . ReadBit ( "LFDEnabled" ) ;
799+ packet . ReadBit ( "LFREnabled" ) ;
800+ packet . ReadBit ( "UseActivePlayerDataQuestCompleted" ) ;
801+ packet . ReadBit ( "PetHappinessEnabled" ) ;
802+ packet . ReadBit ( "GuildEventsEditsEnabled" ) ;
803+ packet . ReadBit ( "GuildTradeSkillsEnabled" ) ;
804+
805+ var unknown1027StrLen = packet . ReadBits ( 7 ) ;
806+ packet . ReadBit ( "BNSendWhisperUseV2Services" ) ;
807+ packet . ReadBit ( "BNSendGameDataUseV2Services" ) ;
808+ packet . ReadBit ( "IsAccountCurrencyTransferEnabled" ) ;
809+ packet . ReadBit ( "Unused_1107" ) ;
810+ packet . ReadBit ( "LobbyMatchmakerQueueFromMainlineEnabled" ) ;
811+ packet . ReadBit ( "CanSendLobbyMatchmakerPartyCustomizations" ) ;
812+
813+ {
814+ packet . ResetBitReader ( ) ;
815+ packet . ReadBit ( "ToastsDisabled" , "QuickJoinConfig" ) ;
816+ packet . ReadSingle ( "ToastDuration" , "QuickJoinConfig" ) ;
817+ packet . ReadSingle ( "DelayDuration" , "QuickJoinConfig" ) ;
818+ packet . ReadSingle ( "QueueMultiplier" , "QuickJoinConfig" ) ;
819+ packet . ReadSingle ( "PlayerMultiplier" , "QuickJoinConfig" ) ;
820+ packet . ReadSingle ( "PlayerFriendValue" , "QuickJoinConfig" ) ;
821+ packet . ReadSingle ( "PlayerGuildValue" , "QuickJoinConfig" ) ;
822+ packet . ReadSingle ( "ThrottleInitialThreshold" , "QuickJoinConfig" ) ;
823+ packet . ReadSingle ( "ThrottleDecayTime" , "QuickJoinConfig" ) ;
824+ packet . ReadSingle ( "ThrottlePrioritySpike" , "QuickJoinConfig" ) ;
825+ packet . ReadSingle ( "ThrottleMinThreshold" , "QuickJoinConfig" ) ;
826+ packet . ReadSingle ( "ThrottlePvPPriorityNormal" , "QuickJoinConfig" ) ;
827+ packet . ReadSingle ( "ThrottlePvPPriorityLow" , "QuickJoinConfig" ) ;
828+ packet . ReadSingle ( "ThrottlePvPHonorThreshold" , "QuickJoinConfig" ) ;
829+ packet . ReadSingle ( "ThrottleLfgListPriorityDefault" , "QuickJoinConfig" ) ;
830+ packet . ReadSingle ( "ThrottleLfgListPriorityAbove" , "QuickJoinConfig" ) ;
831+ packet . ReadSingle ( "ThrottleLfgListPriorityBelow" , "QuickJoinConfig" ) ;
832+ packet . ReadSingle ( "ThrottleLfgListIlvlScalingAbove" , "QuickJoinConfig" ) ;
833+ packet . ReadSingle ( "ThrottleLfgListIlvlScalingBelow" , "QuickJoinConfig" ) ;
834+ packet . ReadSingle ( "ThrottleRfPriorityAbove" , "QuickJoinConfig" ) ;
835+ packet . ReadSingle ( "ThrottleRfIlvlScalingAbove" , "QuickJoinConfig" ) ;
836+ packet . ReadSingle ( "ThrottleDfMaxItemLevel" , "QuickJoinConfig" ) ;
837+ packet . ReadSingle ( "ThrottleDfBestPriority" , "QuickJoinConfig" ) ;
838+ }
839+
840+ if ( hasSessionAlert )
841+ V6_0_2_19033 . Parsers . MiscellaneousHandler . ReadClientSessionAlertConfig ( packet , "SessionAlert" ) ;
842+
843+ if ( hasRaceClassExpansionLevels )
844+ {
845+ var count = packet . ReadUInt32 ( ) ;
846+
847+ for ( var i = 0 ; i < count ; ++ i )
848+ packet . ReadByte ( "RaceClassExpansionLevels" , i ) ;
849+ }
850+
851+ packet . ReadWoWString ( "Unknown1027" , unknown1027StrLen ) ;
852+
853+ V8_0_1_27101 . Parsers . MiscellaneousHandler . ReadVoiceChatManagerSettings ( packet , "VoiceChatManagerSettings" ) ;
854+
855+ if ( hasEuropaTicketSystemStatus )
856+ {
857+ packet . ResetBitReader ( ) ;
858+ V6_0_2_19033 . Parsers . MiscellaneousHandler . ReadCliEuropaTicketConfig ( packet , "EuropaTicketSystemStatus" ) ;
859+ }
860+ }
861+
709862 [ Parser ( Opcode . CMSG_QUERY_COUNTDOWN_TIMER ) ]
710863 public static void HandleQueryCountdownTimer ( Packet packet )
711864 {
0 commit comments