Commit a8293102 authored by Melledy's avatar Melledy Committed by GitHub
Browse files

Merge branch 'development' into stable

parents 304b9cb8 ecf7a81a
package emu.grasscutter.game.world;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
import emu.grasscutter.game.entity.GameEntity;
import emu.grasscutter.game.player.Player;
import emu.grasscutter.game.player.Player.SceneLoadState;
import emu.grasscutter.game.props.ClimateType;
import emu.grasscutter.game.props.EnterReason;
import emu.grasscutter.game.props.EntityIdType;
import emu.grasscutter.game.props.FightProperty;
import emu.grasscutter.game.props.LifeState;
import emu.grasscutter.game.props.SceneType;
import emu.grasscutter.data.GameData;
import emu.grasscutter.data.def.DungeonData;
import emu.grasscutter.data.def.SceneData;
import emu.grasscutter.game.entity.EntityAvatar;
import emu.grasscutter.game.entity.EntityClientGadget;
import emu.grasscutter.game.entity.EntityBaseGadget;
import emu.grasscutter.data.excels.DungeonData;
import emu.grasscutter.data.excels.SceneData;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.proto.AttackResultOuterClass.AttackResult;
import emu.grasscutter.net.proto.EnterTypeOuterClass.EnterType;
import emu.grasscutter.net.proto.VisionTypeOuterClass.VisionType;
import emu.grasscutter.scripts.data.SceneConfig;
import emu.grasscutter.server.game.GameServer;
import emu.grasscutter.server.packet.send.PacketDelTeamEntityNotify;
import emu.grasscutter.server.packet.send.PacketEntityFightPropUpdateNotify;
import emu.grasscutter.server.packet.send.PacketLifeStateChangeNotify;
import emu.grasscutter.server.packet.send.PacketPlayerEnterSceneNotify;
import emu.grasscutter.server.packet.send.PacketSceneEntityAppearNotify;
import emu.grasscutter.server.packet.send.PacketSceneEntityDisappearNotify;
import emu.grasscutter.server.packet.send.PacketScenePlayerInfoNotify;
import emu.grasscutter.server.packet.send.PacketSyncScenePlayTeamEntityNotify;
import emu.grasscutter.server.packet.send.PacketSyncTeamEntityNotify;
......@@ -207,7 +193,7 @@ public class World implements Iterable<Player> {
World world = new World(victim);
world.addPlayer(victim);
victim.sendPacket(new PacketPlayerEnterSceneNotify(victim, EnterType.ENTER_SELF, EnterReason.TeamKick, victim.getSceneId(), victim.getPos()));
victim.sendPacket(new PacketPlayerEnterSceneNotify(victim, EnterType.ENTER_TYPE_SELF, EnterReason.TeamKick, victim.getSceneId(), victim.getPos()));
}
}
}
......@@ -274,14 +260,17 @@ public class World implements Iterable<Player> {
}
// Get enter types
EnterType enterType = EnterType.ENTER_JUMP;
EnterType enterType = EnterType.ENTER_TYPE_JUMP;
EnterReason enterReason = EnterReason.TransPoint;
if (dungeonData != null) {
enterType = EnterType.ENTER_DUNGEON;
enterType = EnterType.ENTER_TYPE_DUNGEON;
enterReason = EnterReason.DungeonEnter;
} else if (oldScene == newScene) {
enterType = EnterType.ENTER_GOTO;
enterType = EnterType.ENTER_TYPE_GOTO;
} else if (newScene.getSceneType() == SceneType.SCENE_HOME_WORLD) {
// Home
enterType = EnterType.ENTER_TYPE_SELF_HOME;
}
// Teleport packet
......
package emu.grasscutter.net.packet;
import java.util.Arrays;
import java.util.List;
import java.util.HashSet;
public class PacketOpcodes {
// Empty
public static final int NONE = 0;
// Opcodes
public static final int AbilityChangeNotify = 1179;
public static final int AbilityInvocationFailNotify = 1137;
public static final int AbilityInvocationFixedNotify = 1160;
public static final int AbilityInvocationsNotify = 1133;
public static final int AcceptCityReputationRequestReq = 2845;
public static final int AcceptCityReputationRequestRsp = 2875;
public static final int AchievementAllDataNotify = 1155;
public static final int AchievementUpdateNotify = 1146;
public static final int ActivityCoinInfoNotify = 2056;
public static final int ActivityCondStateChangeNotify = 2162;
public static final int ActivityDisableTransferPointInteractionNotify = 8295;
public static final int ActivityInfoNotify = 2023;
public static final int ActivityPlayOpenAnimNotify = 2164;
public static final int ActivitySaleChangeNotify = 2043;
public static final int ActivityScheduleInfoNotify = 2180;
public static final int ActivityScheduleInfoNotify_1 = 2187;
public static final int ActivitySelectAvatarCardReq = 2153;
public static final int ActivitySelectAvatarCardRsp = 2069;
public static final int ActivityTakeAllScoreRewardReq = 8708;
public static final int ActivityTakeAllScoreRewardRsp = 8836;
public static final int ActivityTakeScoreRewardReq = 8767;
public static final int ActivityTakeScoreRewardRsp = 8445;
public static final int ActivityTakeWatcherRewardBatchReq = 2027;
public static final int ActivityTakeWatcherRewardBatchRsp = 2036;
public static final int ActivityTakeWatcherRewardReq = 2074;
public static final int ActivityTakeWatcherRewardRsp = 2180;
public static final int ActivityTakeWatcherRewardRsp_1 = 2187;
public static final int ActivityUpdateWatcherNotify = 2101;
public static final int AddBlacklistReq = 4067;
public static final int AbilityChangeNotify = 1155;
public static final int AbilityInvocationFailNotify = 1132;
public static final int AbilityInvocationFixedNotify = 1109;
public static final int AbilityInvocationsNotify = 1131;
public static final int AcceptCityReputationRequestReq = 2835;
public static final int AcceptCityReputationRequestRsp = 2849;
public static final int AchievementAllDataNotify = 2668;
public static final int AchievementUpdateNotify = 2659;
public static final int ActivityCoinInfoNotify = 2094;
public static final int ActivityCondStateChangeNotify = 2120;
public static final int ActivityDisableTransferPointInteractionNotify = 8686;
public static final int ActivityInfoNotify = 2125;
public static final int ActivityPlayOpenAnimNotify = 2146;
public static final int ActivitySaleChangeNotify = 2109;
public static final int ActivityScheduleInfoNotify = 2033;
public static final int ActivitySelectAvatarCardReq = 2030;
public static final int ActivitySelectAvatarCardRsp = 2127;
public static final int ActivityTakeAllScoreRewardReq = 8424;
public static final int ActivityTakeAllScoreRewardRsp = 8692;
public static final int ActivityTakeScoreRewardReq = 8321;
public static final int ActivityTakeScoreRewardRsp = 8218;
public static final int ActivityTakeWatcherRewardBatchReq = 2079;
public static final int ActivityTakeWatcherRewardBatchRsp = 2150;
public static final int ActivityTakeWatcherRewardReq = 2090;
public static final int ActivityTakeWatcherRewardRsp = 2025;
public static final int ActivityUpdateWatcherNotify = 2172;
public static final int AddBlacklistReq = 4050;
public static final int AddBlacklistRsp = 4020;
public static final int AddFriendNotify = 4026;
public static final int AddNoGachaAvatarCardNotify = 1740;
public static final int AddQuestContentProgressReq = 493;
public static final int AddQuestContentProgressRsp = 444;
public static final int AddRandTaskInfoNotify = 147;
public static final int AddSeenMonsterNotify = 242;
public static final int AdjustWorldLevelReq = 104;
public static final int AdjustWorldLevelRsp = 106;
public static final int AllCoopInfoNotify = 1985;
public static final int AllMarkPointNotify = 3462;
public static final int AllSeenMonsterNotify = 276;
public static final int AllWidgetDataNotify = 4284;
public static final int AnchorPointDataNotify = 4285;
public static final int AnchorPointOpReq = 4298;
public static final int AnchorPointOpRsp = 4263;
public static final int AnimatorForceSetAirMoveNotify = 308;
public static final int AntiAddictNotify = 177;
public static final int ArenaChallengeFinishNotify = 2083;
public static final int AskAddFriendNotify = 4062;
public static final int AskAddFriendReq = 4037;
public static final int AskAddFriendRsp = 4093;
public static final int AsterLargeInfoNotify = 2133;
public static final int AsterLittleInfoNotify = 2058;
public static final int AsterMidCampInfoNotify = 2115;
public static final int AsterMidInfoNotify = 2151;
public static final int AsterMiscInfoNotify = 2098;
public static final int AsterProgressInfoNotify = 2065;
public static final int AvatarAddNotify = 1759;
public static final int AvatarBuffAddNotify = 367;
public static final int AddFriendNotify = 4024;
public static final int AddNoGachaAvatarCardNotify = 1648;
public static final int AddQuestContentProgressReq = 417;
public static final int AddQuestContentProgressRsp = 485;
public static final int AddRandTaskInfoNotify = 116;
public static final int AddSeenMonsterNotify = 251;
public static final int AdjustWorldLevelReq = 195;
public static final int AdjustWorldLevelRsp = 115;
public static final int AllCoopInfoNotify = 1968;
public static final int AllMarkPointNotify = 3195;
public static final int AllSeenMonsterNotify = 226;
public static final int AllWidgetDataNotify = 4273;
public static final int AnchorPointDataNotify = 4268;
public static final int AnchorPointOpReq = 4254;
public static final int AnchorPointOpRsp = 4278;
public static final int AnimatorForceSetAirMoveNotify = 346;
public static final int AntiAddictNotify = 148;
public static final int ArenaChallengeFinishNotify = 2082;
public static final int AskAddFriendNotify = 4038;
public static final int AskAddFriendReq = 4032;
public static final int AskAddFriendRsp = 4017;
public static final int AsterLargeInfoNotify = 2192;
public static final int AsterLittleInfoNotify = 2188;
public static final int AsterMidCampInfoNotify = 2020;
public static final int AsterMidInfoNotify = 2121;
public static final int AsterMiscInfoNotify = 2187;
public static final int AsterProgressInfoNotify = 2193;
public static final int AvatarAddNotify = 1757;
public static final int AvatarBuffAddNotify = 350;
public static final int AvatarBuffDelNotify = 320;
public static final int AvatarCardChangeReq = 667;
public static final int AvatarCardChangeReq = 650;
public static final int AvatarCardChangeRsp = 620;
public static final int AvatarChangeAnimHashReq = 1630;
public static final int AvatarChangeAnimHashRsp = 1747;
public static final int AvatarChangeCostumeNotify = 1748;
public static final int AvatarChangeCostumeReq = 1650;
public static final int AvatarChangeCostumeRsp = 1632;
public static final int AvatarChangeElementTypeReq = 1741;
public static final int AvatarChangeElementTypeRsp = 1626;
public static final int AvatarDataNotify = 1757;
public static final int AvatarDelNotify = 1624;
public static final int AvatarDieAnimationEndReq = 1635;
public static final int AvatarDieAnimationEndRsp = 1638;
public static final int AvatarEnterElementViewNotify = 366;
public static final int AvatarEquipAffixStartNotify = 1734;
public static final int AvatarEquipChangeNotify = 674;
public static final int AvatarExpeditionAllDataReq = 1721;
public static final int AvatarExpeditionAllDataRsp = 1800;
public static final int AvatarExpeditionCallBackReq = 1607;
public static final int AvatarExpeditionCallBackRsp = 1783;
public static final int AvatarExpeditionDataNotify = 1777;
public static final int AvatarExpeditionGetRewardReq = 1604;
public static final int AvatarExpeditionGetRewardRsp = 1731;
public static final int AvatarExpeditionStartReq = 1788;
public static final int AvatarExpeditionStartRsp = 1786;
public static final int AvatarFetterDataNotify = 1718;
public static final int AvatarFetterLevelRewardReq = 1717;
public static final int AvatarFetterLevelRewardRsp = 1690;
public static final int AvatarFightPropNotify = 1237;
public static final int AvatarFightPropUpdateNotify = 1293;
public static final int AvatarFlycloakChangeNotify = 1761;
public static final int AvatarFollowRouteNotify = 3210;
public static final int AvatarGainCostumeNotify = 1778;
public static final int AvatarGainFlycloakNotify = 1676;
public static final int AvatarLifeStateChangeNotify = 1245;
public static final int AvatarPromoteGetRewardReq = 1784;
public static final int AvatarPromoteGetRewardRsp = 1776;
public static final int AvatarPromoteReq = 1661;
public static final int AvatarPromoteRsp = 1712;
public static final int AvatarPropChangeReasonNotify = 1275;
public static final int AvatarPropNotify = 1279;
public static final int AvatarSatiationDataNotify = 1639;
public static final int AvatarSkillChangeNotify = 1088;
public static final int AvatarSkillDepotChangeNotify = 1015;
public static final int AvatarSkillInfoNotify = 1045;
public static final int AvatarSkillMaxChargeCountNotify = 1044;
public static final int AvatarSkillUpgradeReq = 1091;
public static final int AvatarSkillUpgradeRsp = 1097;
public static final int AvatarTeamUpdateNotify = 1649;
public static final int AvatarUnlockTalentNotify = 1010;
public static final int AvatarUpgradeReq = 1660;
public static final int AvatarUpgradeRsp = 1735;
public static final int AvatarWearFlycloakReq = 1677;
public static final int AvatarWearFlycloakRsp = 1782;
public static final int BackMyWorldReq = 219;
public static final int BackMyWorldRsp = 269;
public static final int BargainOfferPriceReq = 409;
public static final int BargainOfferPriceRsp = 465;
public static final int BargainStartNotify = 489;
public static final int BargainTerminateNotify = 403;
public static final int BattlePassAllDataNotify = 2635;
public static final int BattlePassBuySuccNotify = 2612;
public static final int BattlePassCurScheduleUpdateNotify = 2648;
public static final int BattlePassMissionDelNotify = 2645;
public static final int BattlePassMissionUpdateNotify = 2625;
public static final int BeginCameraSceneLookNotify = 261;
public static final int BigTalentPointConvertReq = 1037;
public static final int BigTalentPointConvertRsp = 1093;
public static final int BlessingAcceptAllGivePicReq = 2176;
public static final int BlessingAcceptAllGivePicRsp = 2050;
public static final int BlessingAcceptGivePicReq = 2134;
public static final int BlessingAcceptGivePicRsp = 2117;
public static final int BlessingGetAllRecvPicRecordListReq = 2090;
public static final int BlessingGetAllRecvPicRecordListRsp = 2140;
public static final int BlessingGetFriendPicListReq = 2077;
public static final int BlessingGetFriendPicListRsp = 2182;
public static final int BlessingGiveFriendPicReq = 2161;
public static final int BlessingGiveFriendPicRsp = 2076;
public static final int BlessingRecvFriendPicNotify = 2184;
public static final int BlessingRedeemRewardReq = 2172;
public static final int BlessingRedeemRewardRsp = 2039;
public static final int BlessingScanReq = 2186;
public static final int BlessingScanRsp = 2007;
public static final int BlitzRushParkourRestartReq = 8212;
public static final int BlitzRushParkourRestartRsp = 8962;
public static final int BlossomBriefInfoNotify = 2710;
public static final int BlossomChestCreateNotify = 2793;
public static final int BlossomChestInfoNotify = 845;
public static final int BonusActivityInfoReq = 2597;
public static final int BonusActivityInfoRsp = 2588;
public static final int BonusActivityUpdateNotify = 2591;
public static final int BossChestActivateNotify = 844;
public static final int BounceConjuringSettleNotify = 8339;
public static final int BuoyantCombatSettleNotify = 9000;
public static final int BuyBattlePassLevelReq = 2639;
public static final int BuyBattlePassLevelRsp = 2621;
public static final int BuyGoodsReq = 710;
public static final int BuyGoodsRsp = 715;
public static final int BuyResinReq = 630;
public static final int BuyResinRsp = 647;
public static final int CalcWeaponUpgradeReturnItemsReq = 643;
public static final int CalcWeaponUpgradeReturnItemsRsp = 686;
public static final int CancelCityReputationRequestReq = 2834;
public static final int CancelCityReputationRequestRsp = 2879;
public static final int CancelCoopTaskReq = 1989;
public static final int CancelCoopTaskRsp = 1971;
public static final int CancelFinishParentQuestNotify = 492;
public static final int CanUseSkillNotify = 1055;
public static final int CardProductRewardNotify = 4148;
public static final int ChallengeDataNotify = 983;
public static final int ChallengeRecordNotify = 909;
public static final int ChangeAvatarReq = 1743;
public static final int ChangeAvatarRsp = 1672;
public static final int ChangeGameTimeReq = 175;
public static final int ChangeGameTimeRsp = 134;
public static final int ChangeMailStarNotify = 1497;
public static final int ChangeMpTeamAvatarReq = 1794;
public static final int ChangeMpTeamAvatarRsp = 1629;
public static final int ChangeServerGlobalValueNotify = 65;
public static final int ChangeTeamNameReq = 1793;
public static final int ChangeTeamNameRsp = 1707;
public static final int ChangeWorldToSingleModeNotify = 3293;
public static final int ChangeWorldToSingleModeReq = 3174;
public static final int ChangeWorldToSingleModeRsp = 3308;
public static final int ChannelerSlabStageActiveChallengeIndexNotify = 8578;
public static final int ChannelerSlabStageOneoffDungeonNotify = 8137;
public static final int ChannellerSlabCheckEnterLoopDungeonReq = 8684;
public static final int ChannellerSlabCheckEnterLoopDungeonRsp = 8376;
public static final int ChannellerSlabEnterLoopDungeonReq = 8090;
public static final int ChannellerSlabEnterLoopDungeonRsp = 8120;
public static final int ChannellerSlabLoopDungeonChallengeInfoNotify = 8263;
public static final int ChannellerSlabLoopDungeonSelectConditionReq = 8741;
public static final int ChannellerSlabLoopDungeonSelectConditionRsp = 8341;
public static final int ChannellerSlabLoopDungeonTakeFirstPassRewardReq = 8914;
public static final int ChannellerSlabLoopDungeonTakeFirstPassRewardRsp = 8503;
public static final int ChannellerSlabLoopDungeonTakeScoreRewardReq = 8012;
public static final int ChannellerSlabLoopDungeonTakeScoreRewardRsp = 8123;
public static final int ChannellerSlabOneOffDungeonInfoNotify = 8795;
public static final int ChannellerSlabOneOffDungeonInfoReq = 8772;
public static final int ChannellerSlabOneOffDungeonInfoRsp = 8715;
public static final int ChannellerSlabSaveAssistInfoReq = 8518;
public static final int ChannellerSlabSaveAssistInfoRsp = 8773;
public static final int ChannellerSlabTakeoffBuffReq = 8407;
public static final int ChannellerSlabTakeoffBuffRsp = 8260;
public static final int ChannellerSlabWearBuffReq = 8850;
public static final int ChannellerSlabWearBuffRsp = 8203;
public static final int ChapterStateNotify = 455;
public static final int ChatChannelDataNotify = 5047;
public static final int ChatChannelUpdateNotify = 5041;
public static final int ChatHistoryNotify = 3265;
public static final int CheckAddItemExceedLimitNotify = 639;
public static final int CheckSegmentCRCNotify = 56;
public static final int CheckSegmentCRCReq = 83;
public static final int ChessEscapedMonstersNotify = 5394;
public static final int ChessLeftMonstersNotify = 5378;
public static final int ChessManualRefreshCardsReq = 5325;
public static final int ChessManualRefreshCardsRsp = 5349;
public static final int ChessPickCardNotify = 5377;
public static final int ChessPickCardReq = 5343;
public static final int ChessPickCardRsp = 5386;
public static final int ChessPlayerInfoNotify = 5385;
public static final int ChessSelectedCardsNotify = 5339;
public static final int ChooseCurAvatarTeamReq = 1713;
public static final int ChooseCurAvatarTeamRsp = 1608;
public static final int CityReputationDataNotify = 2855;
public static final int CityReputationLevelupNotify = 2837;
public static final int ClearRoguelikeCurseNotify = 8997;
public static final int ClientAbilitiesInitFinishCombineNotify = 1144;
public static final int ClientAbilityChangeNotify = 1191;
public static final int ClientAbilityInitBeginNotify = 1110;
public static final int ClientAbilityInitFinishNotify = 1115;
public static final int ClientAIStateNotify = 1128;
public static final int ClientBulletCreateNotify = 89;
public static final int ClientCollectorDataNotify = 4262;
public static final int ClientHashDebugNotify = 3163;
public static final int ClientLoadingCostumeVerificationNotify = 3133;
public static final int ClientLockGameTimeNotify = 194;
public static final int ClientNewMailNotify = 1434;
public static final int ClientPauseNotify = 278;
public static final int ClientReconnectNotify = 91;
public static final int ClientReportNotify = 28;
public static final int ClientScriptEventNotify = 218;
public static final int ClientTransmitReq = 252;
public static final int ClientTransmitRsp = 292;
public static final int ClientTriggerEventNotify = 197;
public static final int CloseCommonTipsNotify = 3187;
public static final int ClosedItemNotify = 694;
public static final int CodexDataFullNotify = 4204;
public static final int CodexDataUpdateNotify = 4205;
public static final int CombatInvocationsNotify = 347;
public static final int CombineDataNotify = 649;
public static final int CombineFormulaDataNotify = 685;
public static final int CombineReq = 663;
public static final int CombineRsp = 608;
public static final int CommonPlayerTipsNotify = 8928;
public static final int CompoundDataNotify = 181;
public static final int CompoundUnlockNotify = 199;
public static final int CookDataNotify = 164;
public static final int CookGradeDataNotify = 166;
public static final int AvatarChangeAnimHashReq = 1798;
public static final int AvatarChangeAnimHashRsp = 1622;
public static final int AvatarChangeCostumeNotify = 1780;
public static final int AvatarChangeCostumeReq = 1734;
public static final int AvatarChangeCostumeRsp = 1723;
public static final int AvatarChangeElementTypeReq = 1706;
public static final int AvatarChangeElementTypeRsp = 1708;
public static final int AvatarDataNotify = 1695;
public static final int AvatarDelNotify = 1608;
public static final int AvatarDieAnimationEndReq = 1616;
public static final int AvatarDieAnimationEndRsp = 1765;
public static final int AvatarEnterElementViewNotify = 311;
public static final int AvatarEquipAffixStartNotify = 1609;
public static final int AvatarEquipChangeNotify = 690;
public static final int AvatarExpeditionAllDataReq = 1659;
public static final int AvatarExpeditionAllDataRsp = 1636;
public static final int AvatarExpeditionCallBackReq = 1655;
public static final int AvatarExpeditionCallBackRsp = 1642;
public static final int AvatarExpeditionDataNotify = 1698;
public static final int AvatarExpeditionGetRewardReq = 1603;
public static final int AvatarExpeditionGetRewardRsp = 1646;
public static final int AvatarExpeditionStartReq = 1675;
public static final int AvatarExpeditionStartRsp = 1688;
public static final int AvatarFetterDataNotify = 1777;
public static final int AvatarFetterLevelRewardReq = 1704;
public static final int AvatarFetterLevelRewardRsp = 1606;
public static final int AvatarFightPropNotify = 1232;
public static final int AvatarFightPropUpdateNotify = 1217;
public static final int AvatarFlycloakChangeNotify = 1681;
public static final int AvatarFollowRouteNotify = 3353;
public static final int AvatarGainCostumeNotify = 1670;
public static final int AvatarGainFlycloakNotify = 1615;
public static final int AvatarLifeStateChangeNotify = 1235;
public static final int AvatarPromoteGetRewardReq = 1676;
public static final int AvatarPromoteGetRewardRsp = 1613;
public static final int AvatarPromoteReq = 1711;
public static final int AvatarPromoteRsp = 1668;
public static final int AvatarPropChangeReasonNotify = 1249;
public static final int AvatarPropNotify = 1255;
public static final int AvatarSatiationDataNotify = 1632;
public static final int AvatarSkillChangeNotify = 1030;
public static final int AvatarSkillDepotChangeNotify = 1037;
public static final int AvatarSkillInfoNotify = 1035;
public static final int AvatarSkillMaxChargeCountNotify = 1085;
public static final int AvatarSkillUpgradeReq = 1027;
public static final int AvatarSkillUpgradeRsp = 1007;
public static final int AvatarTeamUpdateNotify = 1713;
public static final int AvatarUnlockTalentNotify = 1041;
public static final int AvatarUpgradeReq = 1680;
public static final int AvatarUpgradeRsp = 1779;
public static final int AvatarWearFlycloakReq = 1728;
public static final int AvatarWearFlycloakRsp = 1770;
public static final int BackMyWorldReq = 221;
public static final int BackMyWorldRsp = 223;
public static final int BargainOfferPriceReq = 419;
public static final int BargainOfferPriceRsp = 412;
public static final int BargainStartNotify = 406;
public static final int BargainTerminateNotify = 458;
public static final int BattlePassAllDataNotify = 2618;
public static final int BattlePassBuySuccNotify = 2614;
public static final int BattlePassCurScheduleUpdateNotify = 2604;
public static final int BattlePassMissionDelNotify = 2643;
public static final int BattlePassMissionUpdateNotify = 2609;
public static final int BeginCameraSceneLookNotify = 203;
public static final int BigTalentPointConvertReq = 1032;
public static final int BigTalentPointConvertRsp = 1017;
public static final int BlessingAcceptAllGivePicReq = 2123;
public static final int BlessingAcceptAllGivePicRsp = 2180;
public static final int BlessingAcceptGivePicReq = 2006;
public static final int BlessingAcceptGivePicRsp = 2048;
public static final int BlessingGetAllRecvPicRecordListReq = 2076;
public static final int BlessingGetAllRecvPicRecordListRsp = 2013;
public static final int BlessingGetFriendPicListReq = 2081;
public static final int BlessingGetFriendPicListRsp = 2015;
public static final int BlessingGiveFriendPicReq = 2009;
public static final int BlessingGiveFriendPicRsp = 2104;
public static final int BlessingRecvFriendPicNotify = 2134;
public static final int BlessingRedeemRewardReq = 2128;
public static final int BlessingRedeemRewardRsp = 2170;
public static final int BlessingScanReq = 2012;
public static final int BlessingScanRsp = 2032;
public static final int BlitzRushParkourRestartReq = 8355;
public static final int BlitzRushParkourRestartRsp = 8943;
public static final int BlossomBriefInfoNotify = 2741;
public static final int BlossomChestCreateNotify = 2717;
public static final int BlossomChestInfoNotify = 835;
public static final int BonusActivityInfoReq = 2507;
public static final int BonusActivityInfoRsp = 2530;
public static final int BonusActivityUpdateNotify = 2527;
public static final int BossChestActivateNotify = 885;
public static final int BounceConjuringSettleNotify = 8313;
public static final int BuoyantCombatSettleNotify = 8347;
public static final int BuyBattlePassLevelReq = 2612;
public static final int BuyBattlePassLevelRsp = 2646;
public static final int BuyGoodsReq = 741;
public static final int BuyGoodsRsp = 737;
public static final int BuyResinReq = 602;
public static final int BuyResinRsp = 616;
public static final int CalcWeaponUpgradeReturnItemsReq = 610;
public static final int CalcWeaponUpgradeReturnItemsRsp = 666;
public static final int CancelCityReputationRequestReq = 2882;
public static final int CancelCityReputationRequestRsp = 2855;
public static final int CancelCoopTaskReq = 1962;
public static final int CancelCoopTaskRsp = 1996;
public static final int CancelFinishParentQuestNotify = 459;
public static final int CanUseSkillNotify = 1098;
public static final int CardProductRewardNotify = 4104;
public static final int ChallengeDataNotify = 963;
public static final int ChallengeRecordNotify = 919;
public static final int ChangeAvatarReq = 1662;
public static final int ChangeAvatarRsp = 1710;
public static final int ChangeGameTimeReq = 149;
public static final int ChangeGameTimeRsp = 182;
public static final int ChangeMailStarNotify = 1407;
public static final int ChangeMpTeamAvatarReq = 1689;
public static final int ChangeMpTeamAvatarRsp = 1617;
public static final int ChangeServerGlobalValueNotify = 12;
public static final int ChangeTeamNameReq = 1762;
public static final int ChangeTeamNameRsp = 1789;
public static final int ChangeWorldToSingleModeNotify = 3260;
public static final int ChangeWorldToSingleModeReq = 3140;
public static final int ChangeWorldToSingleModeRsp = 3083;
public static final int ChannelerSlabStageActiveChallengeIndexNotify = 8864;
public static final int ChannelerSlabStageOneoffDungeonNotify = 8522;
public static final int ChannellerSlabCheckEnterLoopDungeonReq = 8304;
public static final int ChannellerSlabCheckEnterLoopDungeonRsp = 8928;
public static final int ChannellerSlabEnterLoopDungeonReq = 8687;
public static final int ChannellerSlabEnterLoopDungeonRsp = 8639;
public static final int ChannellerSlabLoopDungeonChallengeInfoNotify = 8555;
public static final int ChannellerSlabLoopDungeonSelectConditionReq = 8383;
public static final int ChannellerSlabLoopDungeonSelectConditionRsp = 8979;
public static final int ChannellerSlabLoopDungeonTakeFirstPassRewardReq = 8910;
public static final int ChannellerSlabLoopDungeonTakeFirstPassRewardRsp = 8482;
public static final int ChannellerSlabLoopDungeonTakeScoreRewardReq = 8305;
public static final int ChannellerSlabLoopDungeonTakeScoreRewardRsp = 8552;
public static final int ChannellerSlabOneOffDungeonInfoNotify = 8008;
public static final int ChannellerSlabOneOffDungeonInfoReq = 8295;
public static final int ChannellerSlabOneOffDungeonInfoRsp = 8716;
public static final int ChannellerSlabSaveAssistInfoReq = 8860;
public static final int ChannellerSlabSaveAssistInfoRsp = 8320;
public static final int ChannellerSlabTakeoffBuffReq = 8577;
public static final int ChannellerSlabTakeoffBuffRsp = 8689;
public static final int ChannellerSlabWearBuffReq = 8132;
public static final int ChannellerSlabWearBuffRsp = 8315;
public static final int ChapterStateNotify = 498;
public static final int ChatChannelDataNotify = 4957;
public static final int ChatChannelUpdateNotify = 4977;
public static final int ChatHistoryNotify = 3213;
public static final int CheckAddItemExceedLimitNotify = 653;
public static final int CheckSegmentCRCNotify = 86;
public static final int CheckSegmentCRCReq = 63;
public static final int ChessEscapedMonstersNotify = 5374;
public static final int ChessLeftMonstersNotify = 5391;
public static final int ChessManualRefreshCardsReq = 5373;
public static final int ChessManualRefreshCardsRsp = 5361;
public static final int ChessPickCardNotify = 5348;
public static final int ChessPickCardReq = 5310;
public static final int ChessPickCardRsp = 5366;
public static final int ChessPlayerInfoNotify = 5388;
public static final int ChessSelectedCardsNotify = 5353;
public static final int ChooseCurAvatarTeamReq = 1800;
public static final int ChooseCurAvatarTeamRsp = 1673;
public static final int CityReputationDataNotify = 2898;
public static final int CityReputationLevelupNotify = 2832;
public static final int ClearRoguelikeCurseNotify = 8291;
public static final int ClientAbilitiesInitFinishCombineNotify = 1185;
public static final int ClientAbilityChangeNotify = 1127;
public static final int ClientAbilityInitBeginNotify = 1141;
public static final int ClientAbilityInitFinishNotify = 1137;
public static final int ClientAIStateNotify = 1197;
public static final int ClientBulletCreateNotify = 6;
public static final int ClientCollectorDataNotify = 4264;
public static final int ClientHashDebugNotify = 3192;
public static final int ClientLoadingCostumeVerificationNotify = 3488;
public static final int ClientLockGameTimeNotify = 174;
public static final int ClientNewMailNotify = 1482;
public static final int ClientPauseNotify = 291;
public static final int ClientReconnectNotify = 27;
public static final int ClientReportNotify = 97;
public static final int ClientScriptEventNotify = 214;
public static final int ClientTransmitReq = 272;
public static final int ClientTransmitRsp = 259;
public static final int ClientTriggerEventNotify = 107;
public static final int CloseCommonTipsNotify = 3496;
public static final int ClosedItemNotify = 674;
public static final int CodexDataFullNotify = 4201;
public static final int CodexDataUpdateNotify = 4210;
public static final int CombatInvocationsNotify = 316;
public static final int CombineDataNotify = 661;
public static final int CombineFormulaDataNotify = 688;
public static final int CombineReq = 654;
public static final int CombineRsp = 646;
public static final int CommonPlayerTipsNotify = 8490;
public static final int CompoundDataNotify = 136;
public static final int CompoundUnlockNotify = 181;
public static final int CookDataNotify = 142;
public static final int CookGradeDataNotify = 111;
public static final int CookRecipeDataNotify = 101;
public static final int CoopCgShowNotify = 1983;
public static final int CoopCgUpdateNotify = 1993;
public static final int CoopChapterUpdateNotify = 1986;
public static final int CoopDataNotify = 1967;
public static final int CoopCgShowNotify = 1989;
public static final int CoopCgUpdateNotify = 1966;
public static final int CoopChapterUpdateNotify = 1997;
public static final int CoopDataNotify = 1976;
public static final int CoopPointUpdateNotify = 1987;
public static final int CoopProgressUpdateNotify = 2000;
public static final int CoopRewardUpdateNotify = 1976;
public static final int CreateMassiveEntityNotify = 336;
public static final int CreateMassiveEntityReq = 323;
public static final int CreateMassiveEntityRsp = 313;
public static final int CreateVehicleReq = 809;
public static final int CreateVehicleRsp = 865;
public static final int CutSceneBeginNotify = 241;
public static final int CutSceneEndNotify = 214;
public static final int CutSceneFinishNotify = 248;
public static final int DailyTaskDataNotify = 124;
public static final int DailyTaskFilterCityReq = 159;
public static final int DailyTaskFilterCityRsp = 150;
public static final int DailyTaskProgressNotify = 161;
public static final int DailyTaskScoreRewardNotify = 138;
public static final int DailyTaskUnlockedCitiesNotify = 119;
public static final int DataResVersionNotify = 136;
public static final int DealAddFriendReq = 4044;
public static final int DealAddFriendRsp = 4045;
public static final int DeleteFriendNotify = 4083;
public static final int DeleteFriendReq = 4079;
public static final int DeleteFriendRsp = 4091;
public static final int DelMailReq = 1493;
public static final int DelMailRsp = 1444;
public static final int DelScenePlayTeamEntityNotify = 3117;
public static final int DelTeamEntityNotify = 330;
public static final int DestroyMassiveEntityNotify = 324;
public static final int DestroyMaterialReq = 670;
public static final int DestroyMaterialRsp = 654;
public static final int DigActivityChangeGadgetStateReq = 8283;
public static final int DigActivityChangeGadgetStateRsp = 8609;
public static final int DigActivityMarkPointChangeNotify = 8143;
public static final int DisableRoguelikeTrapNotify = 8029;
public static final int DoGachaReq = 1510;
public static final int DoGachaRsp = 1515;
public static final int DoRoguelikeDungeonCardGachaReq = 8897;
public static final int DoRoguelikeDungeonCardGachaRsp = 8973;
public static final int DoSetPlayerBornDataNotify = 174;
public static final int DraftGuestReplyInviteNotify = 5445;
public static final int DraftGuestReplyInviteReq = 5493;
public static final int DraftGuestReplyInviteRsp = 5444;
public static final int DraftGuestReplyTwiceConfirmNotify = 5488;
public static final int DraftGuestReplyTwiceConfirmReq = 5479;
public static final int DraftGuestReplyTwiceConfirmRsp = 5491;
public static final int DraftInviteResultNotify = 5475;
public static final int DraftOwnerInviteNotify = 5437;
public static final int DraftOwnerStartInviteReq = 5410;
public static final int DraftOwnerStartInviteRsp = 5415;
public static final int DraftOwnerTwiceConfirmNotify = 5434;
public static final int DraftTwiceConfirmResultNotify = 5497;
public static final int DragonSpineChapterFinishNotify = 2196;
public static final int DragonSpineChapterOpenNotify = 2070;
public static final int DragonSpineChapterProgressChangeNotify = 2001;
public static final int DragonSpineCoinChangeNotify = 2189;
public static final int DropHintNotify = 673;
public static final int DropItemReq = 634;
public static final int DropItemRsp = 679;
public static final int DropSubfieldReq = 232;
public static final int DropSubfieldRsp = 251;
public static final int DungeonCandidateTeamChangeAvatarReq = 958;
public static final int DungeonCandidateTeamChangeAvatarRsp = 923;
public static final int DungeonCandidateTeamCreateReq = 964;
public static final int CoopProgressUpdateNotify = 1961;
public static final int CoopRewardUpdateNotify = 1951;
public static final int CreateMassiveEntityNotify = 325;
public static final int CreateMassiveEntityReq = 370;
public static final int CreateMassiveEntityRsp = 329;
public static final int CreateVehicleReq = 819;
public static final int CreateVehicleRsp = 812;
public static final int CutSceneBeginNotify = 300;
public static final int CutSceneEndNotify = 299;
public static final int CutSceneFinishNotify = 294;
public static final int DailyTaskDataNotify = 183;
public static final int DailyTaskFilterCityReq = 192;
public static final int DailyTaskFilterCityRsp = 118;
public static final int DailyTaskProgressNotify = 103;
public static final int DailyTaskScoreRewardNotify = 134;
public static final int DailyTaskUnlockedCitiesNotify = 121;
public static final int DataResVersionNotify = 125;
public static final int DealAddFriendReq = 4085;
public static final int DealAddFriendRsp = 4035;
public static final int DebugNotify = 101;
public static final int DeleteFriendNotify = 4063;
public static final int DeleteFriendReq = 4055;
public static final int DeleteFriendRsp = 4027;
public static final int DelMailReq = 1417;
public static final int DelMailRsp = 1485;
public static final int DelScenePlayTeamEntityNotify = 3087;
public static final int DelTeamEntityNotify = 302;
public static final int DestroyMassiveEntityNotify = 383;
public static final int DestroyMaterialReq = 678;
public static final int DestroyMaterialRsp = 608;
public static final int DigActivityChangeGadgetStateReq = 8155;
public static final int DigActivityChangeGadgetStateRsp = 8851;
public static final int DigActivityMarkPointChangeNotify = 8679;
public static final int DisableRoguelikeTrapNotify = 8250;
public static final int DoGachaReq = 1541;
public static final int DoGachaRsp = 1537;
public static final int DoRoguelikeDungeonCardGachaReq = 8764;
public static final int DoRoguelikeDungeonCardGachaRsp = 8641;
public static final int DoSetPlayerBornDataNotify = 190;
public static final int DraftGuestReplyInviteNotify = 5435;
public static final int DraftGuestReplyInviteReq = 5417;
public static final int DraftGuestReplyInviteRsp = 5485;
public static final int DraftGuestReplyTwiceConfirmNotify = 5430;
public static final int DraftGuestReplyTwiceConfirmReq = 5455;
public static final int DraftGuestReplyTwiceConfirmRsp = 5427;
public static final int DraftInviteResultNotify = 5449;
public static final int DraftOwnerInviteNotify = 5432;
public static final int DraftOwnerStartInviteReq = 5441;
public static final int DraftOwnerStartInviteRsp = 5437;
public static final int DraftOwnerTwiceConfirmNotify = 5482;
public static final int DraftTwiceConfirmResultNotify = 5407;
public static final int DragonSpineChapterFinishNotify = 2135;
public static final int DragonSpineChapterOpenNotify = 2119;
public static final int DragonSpineChapterProgressChangeNotify = 2102;
public static final int DragonSpineCoinChangeNotify = 2031;
public static final int DropHintNotify = 622;
public static final int DropItemReq = 682;
public static final int DropItemRsp = 655;
public static final int DungeonCandidateTeamChangeAvatarReq = 984;
public static final int DungeonCandidateTeamChangeAvatarRsp = 970;
public static final int DungeonCandidateTeamCreateReq = 942;
public static final int DungeonCandidateTeamCreateRsp = 901;
public static final int DungeonCandidateTeamDismissNotify = 980;
public static final int DungeonCandidateTeamInfoNotify = 965;
public static final int DungeonCandidateTeamInviteNotify = 903;
public static final int DungeonCandidateTeamInviteReq = 966;
public static final int DungeonCandidateTeamInviteRsp = 973;
public static final int DungeonCandidateTeamKickReq = 963;
public static final int DungeonCandidateTeamKickRsp = 908;
public static final int DungeonCandidateTeamLeaveReq = 917;
public static final int DungeonCandidateTeamLeaveRsp = 981;
public static final int DungeonCandidateTeamDismissNotify = 913;
public static final int DungeonCandidateTeamInfoNotify = 912;
public static final int DungeonCandidateTeamInviteNotify = 958;
public static final int DungeonCandidateTeamInviteReq = 911;
public static final int DungeonCandidateTeamInviteRsp = 922;
public static final int DungeonCandidateTeamKickReq = 954;
public static final int DungeonCandidateTeamKickRsp = 946;
public static final int DungeonCandidateTeamLeaveReq = 933;
public static final int DungeonCandidateTeamLeaveRsp = 936;
public static final int DungeonCandidateTeamPlayerLeaveNotify = 920;
public static final int DungeonCandidateTeamRefuseNotify = 967;
public static final int DungeonCandidateTeamReplyInviteReq = 927;
public static final int DungeonCandidateTeamReplyInviteRsp = 902;
public static final int DungeonCandidateTeamSetChangingAvatarReq = 954;
public static final int DungeonCandidateTeamSetChangingAvatarRsp = 935;
public static final int DungeonCandidateTeamSetReadyReq = 952;
public static final int DungeonCandidateTeamSetReadyRsp = 992;
public static final int DungeonChallengeBeginNotify = 974;
public static final int DungeonChallengeFinishNotify = 956;
public static final int DungeonDataNotify = 946;
public static final int DungeonDieOptionReq = 991;
public static final int DungeonDieOptionRsp = 997;
public static final int DungeonEntryInfoReq = 960;
public static final int DungeonEntryInfoRsp = 933;
public static final int DungeonEntryToBeExploreNotify = 3067;
public static final int DungeonFollowNotify = 926;
public static final int DungeonGetStatueDropReq = 962;
public static final int DungeonGetStatueDropRsp = 989;
public static final int DungeonInterruptChallengeReq = 938;
public static final int DungeonInterruptChallengeRsp = 930;
public static final int DungeonPlayerDieNotify = 979;
public static final int DungeonPlayerDieReq = 928;
public static final int DungeonPlayerDieRsp = 955;
public static final int DungeonRestartInviteNotify = 984;
public static final int DungeonRestartInviteReplyNotify = 972;
public static final int DungeonRestartInviteReplyReq = 912;
public static final int DungeonRestartInviteReplyRsp = 953;
public static final int DungeonRestartReq = 932;
public static final int DungeonRestartResultNotify = 970;
public static final int DungeonRestartRsp = 951;
public static final int DungeonReviseLevelNotify = 957;
public static final int DungeonSettleNotify = 934;
public static final int DungeonShowReminderNotify = 988;
public static final int DungeonSlipRevivePointActivateReq = 924;
public static final int DungeonSlipRevivePointActivateRsp = 961;
public static final int DungeonWayPointActivateReq = 945;
public static final int DungeonWayPointActivateRsp = 975;
public static final int DungeonWayPointNotify = 944;
public static final int EchoNotify = 62;
public static final int EchoShellTakeRewardReq = 8801;
public static final int EchoShellTakeRewardRsp = 8888;
public static final int EchoShellUpdateNotify = 8730;
public static final int EffigyChallengeInfoNotify = 2159;
public static final int EffigyChallengeResultNotify = 2024;
public static final int EndCameraSceneLookNotify = 238;
public static final int EnterChessDungeonReq = 8336;
public static final int EnterChessDungeonRsp = 8581;
public static final int EnterFishingReq = 5835;
public static final int EnterFishingRsp = 5825;
public static final int EnterMechanicusDungeonReq = 3979;
public static final int EnterMechanicusDungeonRsp = 3991;
public static final int EnterRoguelikeDungeonNotify = 8330;
public static final int EnterSceneDoneReq = 268;
public static final int EnterSceneDoneRsp = 290;
public static final int EnterScenePeerNotify = 282;
public static final int EnterSceneReadyReq = 298;
public static final int EnterSceneReadyRsp = 296;
public static final int EnterSceneWeatherAreaNotify = 258;
public static final int EnterTransPointRegionNotify = 255;
public static final int EnterTrialAvatarActivityDungeonReq = 2031;
public static final int EnterTrialAvatarActivityDungeonRsp = 2175;
public static final int EnterWorldAreaReq = 273;
public static final int EnterWorldAreaRsp = 263;
public static final int EntityAiKillSelfNotify = 370;
public static final int EntityAiSyncNotify = 312;
public static final int EntityAuthorityChangeNotify = 303;
public static final int EntityConfigHashNotify = 3458;
public static final int EntityFightPropChangeReasonNotify = 1244;
public static final int EntityFightPropNotify = 1210;
public static final int EntityFightPropUpdateNotify = 1215;
public static final int EntityForceSyncReq = 208;
public static final int EntityForceSyncRsp = 217;
public static final int EntityJumpNotify = 226;
public static final int EntityMoveRoomNotify = 3135;
public static final int EntityPropNotify = 1260;
public static final int EntityTagChangeNotify = 3262;
public static final int EquipRoguelikeRuneReq = 8579;
public static final int EquipRoguelikeRuneRsp = 8412;
public static final int EvtAiSyncCombatThreatInfoNotify = 351;
public static final int EvtAiSyncSkillCdNotify = 317;
public static final int EvtAnimatorParameterNotify = 333;
public static final int EvtAnimatorStateChangedNotify = 379;
public static final int EvtAvatarEnterFocusNotify = 389;
public static final int EvtAvatarExitFocusNotify = 309;
public static final int EvtAvatarLockChairReq = 354;
public static final int EvtAvatarLockChairRsp = 335;
public static final int EvtAvatarSitDownNotify = 392;
public static final int EvtAvatarStandUpNotify = 358;
public static final int EvtAvatarUpdateFocusNotify = 365;
public static final int EvtBeingHitNotify = 360;
public static final int EvtBeingHitsCombineNotify = 381;
public static final int EvtBulletDeactiveNotify = 388;
public static final int EvtBulletHitNotify = 397;
public static final int EvtBulletMoveNotify = 362;
public static final int EvtCostStaminaNotify = 375;
public static final int EvtCreateGadgetNotify = 337;
public static final int EvtDestroyGadgetNotify = 393;
public static final int EvtDestroyServerGadgetNotify = 372;
public static final int EvtDoSkillSuccNotify = 315;
public static final int EvtEntityRenderersChangedNotify = 363;
public static final int EvtEntityStartDieEndNotify = 328;
public static final int EvtFaceToDirNotify = 345;
public static final int EvtFaceToEntityNotify = 344;
public static final int EvtRushMoveNotify = 391;
public static final int EvtSetAttackTargetNotify = 334;
public static final int ExclusiveRuleNotify = 169;
public static final int ExecuteGadgetLuaReq = 231;
public static final int ExecuteGadgetLuaRsp = 240;
public static final int ExecuteGroupTriggerReq = 284;
public static final int ExecuteGroupTriggerRsp = 212;
public static final int ExitFishingReq = 5812;
public static final int ExitFishingRsp = 5839;
public static final int ExitSceneWeatherAreaNotify = 223;
public static final int ExitTransPointRegionNotify = 246;
public static final int ExpeditionChallengeEnterRegionNotify = 2095;
public static final int ExpeditionChallengeFinishedNotify = 2197;
public static final int ExpeditionRecallReq = 2114;
public static final int ExpeditionRecallRsp = 2108;
public static final int ExpeditionStartReq = 2032;
public static final int ExpeditionStartRsp = 2148;
public static final int ExpeditionTakeRewardReq = 2053;
public static final int ExpeditionTakeRewardRsp = 2181;
public static final int FindHilichurlAcceptQuestNotify = 8292;
public static final int FindHilichurlFinishSecondQuestNotify = 8799;
public static final int FinishDeliveryNotify = 2126;
public static final int FinishedParentQuestNotify = 415;
public static final int FinishedParentQuestUpdateNotify = 437;
public static final int FinishMainCoopReq = 1963;
public static final int FinishMainCoopRsp = 1951;
public static final int FishAttractNotify = 5821;
public static final int FishBaitGoneNotify = 5846;
public static final int FishBattleBeginReq = 5815;
public static final int FishBattleBeginRsp = 5827;
public static final int DungeonCandidateTeamRefuseNotify = 950;
public static final int DungeonCandidateTeamReplyInviteReq = 928;
public static final int DungeonCandidateTeamReplyInviteRsp = 976;
public static final int DungeonCandidateTeamSetChangingAvatarReq = 908;
public static final int DungeonCandidateTeamSetChangingAvatarRsp = 904;
public static final int DungeonCandidateTeamSetReadyReq = 972;
public static final int DungeonCandidateTeamSetReadyRsp = 959;
public static final int DungeonChallengeBeginNotify = 990;
public static final int DungeonChallengeFinishNotify = 986;
public static final int DungeonDataNotify = 945;
public static final int DungeonDieOptionReq = 927;
public static final int DungeonDieOptionRsp = 907;
public static final int DungeonEntryInfoReq = 909;
public static final int DungeonEntryInfoRsp = 931;
public static final int DungeonEntryToBeExploreNotify = 3414;
public static final int DungeonFollowNotify = 924;
public static final int DungeonGetStatueDropReq = 938;
public static final int DungeonGetStatueDropRsp = 906;
public static final int DungeonInterruptChallengeReq = 934;
public static final int DungeonInterruptChallengeRsp = 902;
public static final int DungeonPlayerDieNotify = 955;
public static final int DungeonPlayerDieReq = 997;
public static final int DungeonPlayerDieRsp = 998;
public static final int DungeonRestartInviteNotify = 977;
public static final int DungeonRestartInviteReplyNotify = 989;
public static final int DungeonRestartInviteReplyReq = 943;
public static final int DungeonRestartInviteReplyRsp = 987;
public static final int DungeonRestartReq = 993;
public static final int DungeonRestartResultNotify = 978;
public static final int DungeonRestartRsp = 960;
public static final int DungeonReviseLevelNotify = 905;
public static final int DungeonSettleNotify = 982;
public static final int DungeonShowReminderNotify = 930;
public static final int DungeonSlipRevivePointActivateReq = 983;
public static final int DungeonSlipRevivePointActivateRsp = 903;
public static final int DungeonWayPointActivateReq = 935;
public static final int DungeonWayPointActivateRsp = 949;
public static final int DungeonWayPointNotify = 985;
public static final int EchoNotify = 38;
public static final int EchoShellTakeRewardReq = 8074;
public static final int EchoShellTakeRewardRsp = 8446;
public static final int EchoShellUpdateNotify = 8077;
public static final int EffigyChallengeInfoNotify = 2153;
public static final int EffigyChallengeResultNotify = 2064;
public static final int EndCameraSceneLookNotify = 234;
public static final int EnterChessDungeonReq = 8571;
public static final int EnterChessDungeonRsp = 8819;
public static final int EnterFishingReq = 5818;
public static final int EnterFishingRsp = 5809;
public static final int EnterMechanicusDungeonReq = 3955;
public static final int EnterMechanicusDungeonRsp = 3927;
public static final int EnterRoguelikeDungeonNotify = 8646;
public static final int EnterSceneDoneReq = 279;
public static final int EnterSceneDoneRsp = 269;
public static final int EnterScenePeerNotify = 257;
public static final int EnterSceneReadyReq = 244;
public static final int EnterSceneReadyRsp = 252;
public static final int EnterSceneWeatherAreaNotify = 284;
public static final int EnterTransPointRegionNotify = 298;
public static final int EnterTrialAvatarActivityDungeonReq = 2057;
public static final int EnterTrialAvatarActivityDungeonRsp = 2021;
public static final int EnterWorldAreaReq = 222;
public static final int EnterWorldAreaRsp = 254;
public static final int EntityAiKillSelfNotify = 378;
public static final int EntityAiSyncNotify = 343;
public static final int EntityAuthorityChangeNotify = 358;
public static final int EntityConfigHashNotify = 3271;
public static final int EntityFightPropChangeReasonNotify = 1285;
public static final int EntityFightPropNotify = 1241;
public static final int EntityFightPropUpdateNotify = 1237;
public static final int EntityForceSyncReq = 246;
public static final int EntityForceSyncRsp = 233;
public static final int EntityJumpNotify = 224;
public static final int EntityMoveRoomNotify = 3209;
public static final int EntityPropNotify = 1209;
public static final int EntityTagChangeNotify = 3273;
public static final int EquipRoguelikeRuneReq = 8510;
public static final int EquipRoguelikeRuneRsp = 8516;
public static final int EvtAiSyncCombatThreatInfoNotify = 360;
public static final int EvtAiSyncSkillCdNotify = 333;
public static final int EvtAnimatorParameterNotify = 331;
public static final int EvtAnimatorStateChangedNotify = 355;
public static final int EvtAvatarEnterFocusNotify = 306;
public static final int EvtAvatarExitFocusNotify = 319;
public static final int EvtAvatarLockChairReq = 308;
public static final int EvtAvatarLockChairRsp = 304;
public static final int EvtAvatarSitDownNotify = 359;
public static final int EvtAvatarStandUpNotify = 384;
public static final int EvtAvatarUpdateFocusNotify = 312;
public static final int EvtBeingHitNotify = 309;
public static final int EvtBeingHitsCombineNotify = 336;
public static final int EvtBulletDeactiveNotify = 330;
public static final int EvtBulletHitNotify = 307;
public static final int EvtBulletMoveNotify = 338;
public static final int EvtCostStaminaNotify = 349;
public static final int EvtCreateGadgetNotify = 332;
public static final int EvtDestroyGadgetNotify = 317;
public static final int EvtDestroyServerGadgetNotify = 389;
public static final int EvtDoSkillSuccNotify = 337;
public static final int EvtEntityRenderersChangedNotify = 354;
public static final int EvtEntityStartDieEndNotify = 397;
public static final int EvtFaceToDirNotify = 335;
public static final int EvtFaceToEntityNotify = 385;
public static final int EvtRushMoveNotify = 327;
public static final int EvtSetAttackTargetNotify = 382;
public static final int ExclusiveRuleNotify = 123;
public static final int ExecuteGadgetLuaReq = 267;
public static final int ExecuteGadgetLuaRsp = 271;
public static final int ExecuteGroupTriggerReq = 277;
public static final int ExecuteGroupTriggerRsp = 243;
public static final int ExitFishingReq = 5814;
public static final int ExitFishingRsp = 5812;
public static final int ExitSceneWeatherAreaNotify = 270;
public static final int ExitTransPointRegionNotify = 245;
public static final int ExpeditionChallengeEnterRegionNotify = 2050;
public static final int ExpeditionChallengeFinishedNotify = 2034;
public static final int ExpeditionRecallReq = 2122;
public static final int ExpeditionRecallRsp = 2156;
public static final int ExpeditionStartReq = 2026;
public static final int ExpeditionStartRsp = 2163;
public static final int ExpeditionTakeRewardReq = 2173;
public static final int ExpeditionTakeRewardRsp = 2196;
public static final int FindHilichurlAcceptQuestNotify = 8465;
public static final int FindHilichurlFinishSecondQuestNotify = 8981;
public static final int FinishDeliveryNotify = 2158;
public static final int FinishedParentQuestNotify = 437;
public static final int FinishedParentQuestUpdateNotify = 432;
public static final int FinishMainCoopReq = 1978;
public static final int FinishMainCoopRsp = 1953;
public static final int FishAttractNotify = 5846;
public static final int FishBaitGoneNotify = 5827;
public static final int FishBattleBeginReq = 5802;
public static final int FishBattleBeginRsp = 5813;
public static final int FishBattleEndReq = 5837;
public static final int FishBattleEndRsp = 5806;
public static final int FishBiteReq = 5843;
public static final int FishBiteRsp = 5826;
public static final int FishCastRodReq = 5813;
public static final int FishCastRodRsp = 5801;
public static final int FishChosenNotify = 5817;
public static final int FishEscapeNotify = 5836;
public static final int FishingGallerySettleNotify = 8870;
public static final int FishPoolDataNotify = 5850;
public static final int FleurFairBalloonSettleNotify = 2192;
public static final int FleurFairBuffEnergyNotify = 5392;
public static final int FleurFairFallSettleNotify = 2015;
public static final int FleurFairFinishGalleryStageNotify = 5323;
public static final int FleurFairMusicGameSettleReq = 2064;
public static final int FleurFairMusicGameSettleRsp = 2040;
public static final int FleurFairMusicGameStartReq = 2105;
public static final int FleurFairMusicGameStartRsp = 2179;
public static final int FleurFairReplayMiniGameReq = 2146;
public static final int FleurFairReplayMiniGameRsp = 2089;
public static final int FleurFairStageSettleNotify = 5358;
public static final int FlightActivityRestartReq = 2073;
public static final int FlightActivityRestartRsp = 2045;
public static final int FlightActivitySettleNotify = 2195;
public static final int FocusAvatarReq = 1710;
public static final int FocusAvatarRsp = 1772;
public static final int ForceAddPlayerFriendReq = 4084;
public static final int ForceAddPlayerFriendRsp = 4012;
public static final int ForceDragAvatarNotify = 3056;
public static final int ForceDragBackTransferNotify = 3171;
public static final int ForgeDataNotify = 677;
public static final int ForgeFormulaDataNotify = 625;
public static final int ForgeGetQueueDataReq = 681;
public static final int ForgeGetQueueDataRsp = 627;
public static final int ForgeQueueDataNotify = 617;
public static final int ForgeQueueManipulateReq = 692;
public static final int ForgeQueueManipulateRsp = 658;
public static final int ForgeStartReq = 602;
public static final int ForgeStartRsp = 652;
public static final int FoundationNotify = 874;
public static final int FoundationReq = 855;
public static final int FoundationRsp = 846;
public static final int FriendInfoChangeNotify = 4085;
public static final int FunitureMakeMakeInfoChangeNotify = 4523;
public static final int FurnitureCurModuleArrangeCountNotify = 4770;
public static final int FurnitureMakeBeHelpedNotify = 4825;
public static final int FurnitureMakeCancelReq = 4495;
public static final int FurnitureMakeCancelRsp = 4814;
public static final int FurnitureMakeFinishNotify = 4707;
public static final int FurnitureMakeHelpReq = 4779;
public static final int FurnitureMakeHelpRsp = 4455;
public static final int FurnitureMakeReq = 4885;
public static final int FurnitureMakeRsp = 4819;
public static final int FurnitureMakeStartReq = 4518;
public static final int FurnitureMakeStartRsp = 4521;
public static final int GachaOpenWishNotify = 1544;
public static final int GachaSimpleInfoNotify = 1545;
public static final int GachaWishReq = 1537;
public static final int GachaWishRsp = 1593;
public static final int GadgetAutoPickDropInfoNotify = 888;
public static final int GadgetChainLevelChangeNotify = 826;
public static final int GadgetChainLevelUpdateNotify = 883;
public static final int GadgetCustomTreeInfoNotify = 873;
public static final int GadgetGeneralRewardInfoNotify = 897;
public static final int GadgetInteractReq = 860;
public static final int GadgetInteractRsp = 833;
public static final int GadgetPlayDataNotify = 879;
public static final int GadgetPlayStartNotify = 875;
public static final int GadgetPlayStopNotify = 834;
public static final int GadgetPlayUidOpNotify = 891;
public static final int GadgetStateNotify = 810;
public static final int GadgetTalkChangeNotify = 856;
public static final int GalleryBalloonScoreNotify = 5510;
public static final int GalleryBalloonShootNotify = 5533;
public static final int GalleryBounceConjuringHitNotify = 5555;
public static final int GalleryBrokenFloorFallNotify = 5591;
public static final int GalleryBulletHitNotify = 5579;
public static final int GalleryFallCatchNotify = 5537;
public static final int GalleryFallScoreNotify = 5593;
public static final int GalleryFlowerCatchNotify = 5575;
public static final int GalleryPreStartNotify = 5534;
public static final int GalleryStartNotify = 5560;
public static final int GalleryStopNotify = 5515;
public static final int GallerySumoKillMonsterNotify = 5546;
public static final int GetActivityInfoReq = 2011;
public static final int GetActivityInfoRsp = 2170;
public static final int GetActivityScheduleReq = 2663;
public static final int GetActivityScheduleRsp = 2651;
public static final int GetActivityShopSheetInfoReq = 744;
public static final int GetActivityShopSheetInfoRsp = 745;
public static final int GetAllActivatedBargainDataReq = 480;
public static final int GetAllActivatedBargainDataRsp = 464;
public static final int GetAllH5ActivityInfoReq = 5675;
public static final int GetAllH5ActivityInfoRsp = 5685;
public static final int GetAllMailReq = 1479;
public static final int GetAllMailRsp = 1491;
public static final int GetAllSceneGalleryInfoReq = 5544;
public static final int GetAllSceneGalleryInfoRsp = 5545;
public static final int GetAllUnlockNameCardReq = 4065;
public static final int GetAllUnlockNameCardRsp = 4003;
public static final int GetAreaExplorePointReq = 227;
public static final int GetAreaExplorePointRsp = 202;
public static final int GetAuthkeyReq = 1445;
public static final int GetAuthkeyRsp = 1475;
public static final int GetAuthSalesmanInfoReq = 2082;
public static final int GetAuthSalesmanInfoRsp = 2173;
public static final int GetBargainDataReq = 467;
public static final int FishBattleEndRsp = 5832;
public static final int FishBiteReq = 5816;
public static final int FishBiteRsp = 5801;
public static final int FishCastRodReq = 5828;
public static final int FishCastRodRsp = 5803;
public static final int FishChosenNotify = 5826;
public static final int FishEscapeNotify = 5847;
public static final int FishingGallerySettleNotify = 8896;
public static final int FishPoolDataNotify = 5811;
public static final int FleurFairBalloonSettleNotify = 2139;
public static final int FleurFairBuffEnergyNotify = 5359;
public static final int FleurFairFallSettleNotify = 2097;
public static final int FleurFairFinishGalleryStageNotify = 5370;
public static final int FleurFairMusicGameSettleReq = 2115;
public static final int FleurFairMusicGameSettleRsp = 2124;
public static final int FleurFairMusicGameStartReq = 2171;
public static final int FleurFairMusicGameStartRsp = 2149;
public static final int FleurFairReplayMiniGameReq = 2152;
public static final int FleurFairReplayMiniGameRsp = 2101;
public static final int FleurFairStageSettleNotify = 5384;
public static final int FlightActivityRestartReq = 2164;
public static final int FlightActivityRestartRsp = 2002;
public static final int FlightActivitySettleNotify = 2084;
public static final int FocusAvatarReq = 1652;
public static final int FocusAvatarRsp = 1612;
public static final int ForceAddPlayerFriendReq = 4077;
public static final int ForceAddPlayerFriendRsp = 4043;
public static final int ForceDragAvatarNotify = 3425;
public static final int ForceDragBackTransferNotify = 3088;
public static final int ForgeDataNotify = 648;
public static final int ForgeFormulaDataNotify = 673;
public static final int ForgeGetQueueDataReq = 636;
public static final int ForgeGetQueueDataRsp = 628;
public static final int ForgeQueueDataNotify = 633;
public static final int ForgeQueueManipulateReq = 659;
public static final int ForgeQueueManipulateRsp = 684;
public static final int ForgeStartReq = 676;
public static final int ForgeStartRsp = 672;
public static final int FoundationNotify = 890;
public static final int FoundationReq = 898;
public static final int FoundationRsp = 845;
public static final int FriendInfoChangeNotify = 4088;
public static final int FunitureMakeMakeInfoChangeNotify = 4488;
public static final int FurnitureCurModuleArrangeCountNotify = 4681;
public static final int FurnitureMakeBeHelpedNotify = 4626;
public static final int FurnitureMakeCancelReq = 4834;
public static final int FurnitureMakeCancelRsp = 4660;
public static final int FurnitureMakeFinishNotify = 4557;
public static final int FurnitureMakeHelpReq = 4580;
public static final int FurnitureMakeHelpRsp = 4722;
public static final int FurnitureMakeReq = 4551;
public static final int FurnitureMakeRsp = 4530;
public static final int FurnitureMakeStartReq = 4582;
public static final int FurnitureMakeStartRsp = 4463;
public static final int GachaOpenWishNotify = 1585;
public static final int GachaSimpleInfoNotify = 1535;
public static final int GachaWishReq = 1532;
public static final int GachaWishRsp = 1517;
public static final int GadgetAutoPickDropInfoNotify = 830;
public static final int GadgetChainLevelChangeNotify = 824;
public static final int GadgetChainLevelUpdateNotify = 863;
public static final int GadgetCustomTreeInfoNotify = 822;
public static final int GadgetGeneralRewardInfoNotify = 807;
public static final int GadgetInteractReq = 809;
public static final int GadgetInteractRsp = 831;
public static final int GadgetPlayDataNotify = 855;
public static final int GadgetPlayStartNotify = 849;
public static final int GadgetPlayStopNotify = 882;
public static final int GadgetPlayUidOpNotify = 827;
public static final int GadgetStateNotify = 841;
public static final int GadgetTalkChangeNotify = 886;
public static final int GalleryBalloonScoreNotify = 5541;
public static final int GalleryBalloonShootNotify = 5531;
public static final int GalleryBounceConjuringHitNotify = 5598;
public static final int GalleryBrokenFloorFallNotify = 5527;
public static final int GalleryBulletHitNotify = 5555;
public static final int GalleryFallCatchNotify = 5532;
public static final int GalleryFallScoreNotify = 5517;
public static final int GalleryFlowerCatchNotify = 5549;
public static final int GalleryPreStartNotify = 5582;
public static final int GalleryStartNotify = 5509;
public static final int GalleryStopNotify = 5537;
public static final int GallerySumoKillMonsterNotify = 5545;
public static final int GetActivityInfoReq = 2067;
public static final int GetActivityInfoRsp = 2144;
public static final int GetActivityScheduleReq = 2049;
public static final int GetActivityScheduleRsp = 2044;
public static final int GetActivityShopSheetInfoReq = 785;
public static final int GetActivityShopSheetInfoRsp = 735;
public static final int GetAllActivatedBargainDataReq = 413;
public static final int GetAllActivatedBargainDataRsp = 442;
public static final int GetAllH5ActivityInfoReq = 5659;
public static final int GetAllH5ActivityInfoRsp = 5668;
public static final int GetAllMailReq = 1455;
public static final int GetAllMailRsp = 1427;
public static final int GetAllSceneGalleryInfoReq = 5585;
public static final int GetAllSceneGalleryInfoRsp = 5535;
public static final int GetAllUnlockNameCardReq = 4012;
public static final int GetAllUnlockNameCardRsp = 4058;
public static final int GetAreaExplorePointReq = 228;
public static final int GetAreaExplorePointRsp = 276;
public static final int GetAuthkeyReq = 1435;
public static final int GetAuthkeyRsp = 1449;
public static final int GetAuthSalesmanInfoReq = 2161;
public static final int GetAuthSalesmanInfoRsp = 2039;
public static final int GetBargainDataReq = 450;
public static final int GetBargainDataRsp = 420;
public static final int GetBattlePassProductReq = 2643;
public static final int GetBattlePassProductRsp = 2626;
public static final int GetBlossomBriefInfoListReq = 2760;
public static final int GetBlossomBriefInfoListRsp = 2733;
public static final int GetBonusActivityRewardReq = 2528;
public static final int GetBonusActivityRewardRsp = 2555;
public static final int GetChatEmojiCollectionReq = 4057;
public static final int GetChatEmojiCollectionRsp = 4043;
public static final int GetCityHuntingOfferReq = 4456;
public static final int GetCityHuntingOfferRsp = 4747;
public static final int GetCityReputationInfoReq = 2860;
public static final int GetCityReputationInfoRsp = 2833;
public static final int GetCityReputationMapInfoReq = 2891;
public static final int GetCityReputationMapInfoRsp = 2897;
public static final int GetCompoundDataReq = 127;
public static final int GetCompoundDataRsp = 102;
public static final int GetDailyDungeonEntryInfoReq = 913;
public static final int GetDailyDungeonEntryInfoRsp = 936;
public static final int GetDungeonEntryExploreConditionReq = 3208;
public static final int GetDungeonEntryExploreConditionRsp = 3391;
public static final int GetExpeditionAssistInfoListReq = 2124;
public static final int GetExpeditionAssistInfoListRsp = 2168;
public static final int GetFriendShowAvatarInfoReq = 4061;
public static final int GetFriendShowAvatarInfoRsp = 4038;
public static final int GetFriendShowNameCardInfoReq = 4032;
public static final int GetFriendShowNameCardInfoRsp = 4051;
public static final int GetFurnitureCurModuleArrangeCountReq = 4618;
public static final int GetGachaInfoReq = 1560;
public static final int GetGachaInfoRsp = 1533;
public static final int GetHomeLevelUpRewardReq = 4508;
public static final int GetHomeLevelUpRewardRsp = 4864;
public static final int GetHuntingOfferRewardReq = 4769;
public static final int GetHuntingOfferRewardRsp = 4860;
public static final int GetInvestigationMonsterReq = 1928;
public static final int GetInvestigationMonsterRsp = 1921;
public static final int GetMailItemReq = 1415;
public static final int GetMailItemRsp = 1437;
public static final int GetMapAreaReq = 3269;
public static final int GetMapAreaRsp = 3366;
public static final int GetMapMarkTipsReq = 3307;
public static final int GetMapMarkTipsRsp = 3040;
public static final int GetMechanicusInfoReq = 3960;
public static final int GetMechanicusInfoRsp = 3933;
public static final int GetNextResourceInfoReq = 139;
public static final int GetNextResourceInfoRsp = 187;
public static final int GetOnlinePlayerInfoReq = 46;
public static final int GetOnlinePlayerInfoRsp = 74;
public static final int GetOnlinePlayerListReq = 45;
public static final int GetOnlinePlayerListRsp = 75;
public static final int GetOpActivityInfoReq = 5160;
public static final int GetOpActivityInfoRsp = 5133;
public static final int GetPlayerAskFriendListReq = 4054;
public static final int GetPlayerAskFriendListRsp = 4035;
public static final int GetPlayerBlacklistReq = 4002;
public static final int GetPlayerBlacklistRsp = 4052;
public static final int GetPlayerFriendListReq = 4060;
public static final int GetPlayerFriendListRsp = 4033;
public static final int GetPlayerHomeCompInfoReq = 4540;
public static final int GetPlayerMpModeAvailabilityReq = 1843;
public static final int GetPlayerMpModeAvailabilityRsp = 1826;
public static final int GetPlayerSocialDetailReq = 4075;
public static final int GetPlayerSocialDetailRsp = 4034;
public static final int GetPlayerTokenReq = 160;
public static final int GetPlayerTokenRsp = 133;
public static final int GetPushTipsRewardReq = 2265;
public static final int GetPushTipsRewardRsp = 2203;
public static final int GetQuestTalkHistoryReq = 445;
public static final int GetQuestTalkHistoryRsp = 475;
public static final int GetRecentMpPlayerListReq = 4066;
public static final int GetRecentMpPlayerListRsp = 4073;
public static final int GetRegionSearchReq = 5613;
public static final int GetReunionMissionInfoReq = 5093;
public static final int GetReunionMissionInfoRsp = 5076;
public static final int GetReunionPrivilegeInfoReq = 5089;
public static final int GetReunionPrivilegeInfoRsp = 5071;
public static final int GetReunionSignInInfoReq = 5063;
public static final int GetReunionSignInInfoRsp = 5051;
public static final int GetSceneAreaReq = 262;
public static final int GetSceneAreaRsp = 289;
public static final int GetSceneNpcPositionReq = 515;
public static final int GetSceneNpcPositionRsp = 537;
public static final int GetScenePerformanceReq = 3217;
public static final int GetScenePerformanceRsp = 3319;
public static final int GetScenePointReq = 288;
public static final int GetScenePointRsp = 228;
public static final int GetShopmallDataReq = 737;
public static final int GetShopmallDataRsp = 793;
public static final int GetShopReq = 760;
public static final int GetShopRsp = 733;
public static final int GetSignInRewardReq = 2537;
public static final int GetSignInRewardRsp = 2593;
public static final int GetWidgetSlotReq = 4258;
public static final int GetWidgetSlotRsp = 4294;
public static final int GetWorldMpInfoReq = 3439;
public static final int GetWorldMpInfoRsp = 3424;
public static final int GiveUpRoguelikeDungeonCardReq = 8425;
public static final int GiveUpRoguelikeDungeonCardRsp = 8976;
public static final int GivingRecordChangeNotify = 172;
public static final int GivingRecordNotify = 153;
public static final int GMShowNavMeshReq = 2384;
public static final int GMShowNavMeshRsp = 2312;
public static final int GMShowObstacleReq = 2332;
public static final int GMShowObstacleRsp = 2351;
public static final int GmTalkNotify = 3;
public static final int GmTalkReq = 33;
public static final int GmTalkRsp = 10;
public static final int GrantRewardNotify = 680;
public static final int GroupLinkAllNotify = 5785;
public static final int GroupLinkChangeNotify = 5775;
public static final int GroupLinkDeleteNotify = 5795;
public static final int GroupSuiteNotify = 3368;
public static final int GroupUnloadNotify = 3019;
public static final int GuestBeginEnterSceneNotify = 3033;
public static final int GuestPostEnterSceneNotify = 3198;
public static final int H5ActivityIdsNotify = 5695;
public static final int HideAndSeekPlayerReadyNotify = 5330;
public static final int HideAndSeekPlayerSetAvatarNotify = 5347;
public static final int HideAndSeekSelectAvatarReq = 5313;
public static final int HideAndSeekSelectAvatarRsp = 5336;
public static final int HideAndSeekSelectSkillReq = 8689;
public static final int HideAndSeekSelectSkillRsp = 8948;
public static final int HideAndSeekSetReadyReq = 5324;
public static final int HideAndSeekSetReadyRsp = 5361;
public static final int HideAndSeekSettleNotify = 5338;
public static final int HitClientTrivialNotify = 250;
public static final int HitTreeNotify = 3432;
public static final int HomeAvatarAllFinishRewardNotify = 4612;
public static final int HomeAvatarCostumeChangeNotify = 4888;
public static final int HomeAvatarRewardEventGetReq = 4568;
public static final int HomeAvatarRewardEventGetRsp = 4453;
public static final int HomeAvatarRewardEventNotify = 4801;
public static final int HomeAvatarSummonAllEventNotify = 4575;
public static final int HomeAvatarSummonEventReq = 4871;
public static final int HomeAvatarSummonEventRsp = 4895;
public static final int HomeAvatarSummonFinishReq = 4654;
public static final int HomeAvatarSummonFinishRsp = 4503;
public static final int HomeAvatarTalkFinishInfoNotify = 4800;
public static final int HomeAvatarTalkReq = 4610;
public static final int HomeAvatarTalkRsp = 4507;
public static final int HomeAvtarAllFinishRewardNotify = 4546;
public static final int HomeBasicInfoNotify = 4869;
public static final int HomeBlockNotify = 4784;
public static final int HomeChangeEditModeReq = 4483;
public static final int HomeChangeEditModeRsp = 4880;
public static final int HomeChangeModuleReq = 4604;
public static final int HomeChangeModuleRsp = 4631;
public static final int HomeChooseModuleReq = 4567;
public static final int HomeChooseModuleRsp = 4633;
public static final int GetBattlePassProductReq = 2616;
public static final int GetBattlePassProductRsp = 2601;
public static final int GetBlossomBriefInfoListReq = 2709;
public static final int GetBlossomBriefInfoListRsp = 2731;
public static final int GetBonusActivityRewardReq = 2597;
public static final int GetBonusActivityRewardRsp = 2598;
public static final int GetChatEmojiCollectionReq = 4005;
public static final int GetChatEmojiCollectionRsp = 4010;
public static final int GetCityHuntingOfferReq = 4343;
public static final int GetCityHuntingOfferRsp = 4304;
public static final int GetCityReputationInfoReq = 2809;
public static final int GetCityReputationInfoRsp = 2831;
public static final int GetCityReputationMapInfoReq = 2827;
public static final int GetCityReputationMapInfoRsp = 2807;
public static final int GetCompoundDataReq = 128;
public static final int GetCompoundDataRsp = 176;
public static final int GetDailyDungeonEntryInfoReq = 929;
public static final int GetDailyDungeonEntryInfoRsp = 925;
public static final int GetDungeonEntryExploreConditionReq = 3136;
public static final int GetDungeonEntryExploreConditionRsp = 3099;
public static final int GetExpeditionAssistInfoListReq = 2181;
public static final int GetExpeditionAssistInfoListRsp = 2045;
public static final int GetFriendShowAvatarInfoReq = 4003;
public static final int GetFriendShowAvatarInfoRsp = 4034;
public static final int GetFriendShowNameCardInfoReq = 4093;
public static final int GetFriendShowNameCardInfoRsp = 4060;
public static final int GetFurnitureCurModuleArrangeCountReq = 4603;
public static final int GetGachaInfoReq = 1509;
public static final int GetGachaInfoRsp = 1531;
public static final int GetHomeLevelUpRewardReq = 4747;
public static final int GetHomeLevelUpRewardRsp = 4517;
public static final int GetHuntingOfferRewardReq = 4328;
public static final int GetHuntingOfferRewardRsp = 4303;
public static final int GetInvestigationMonsterReq = 1902;
public static final int GetInvestigationMonsterRsp = 1911;
public static final int GetMailItemReq = 1437;
public static final int GetMailItemRsp = 1432;
public static final int GetMapAreaReq = 3466;
public static final int GetMapAreaRsp = 3012;
public static final int GetMapMarkTipsReq = 3329;
public static final int GetMapMarkTipsRsp = 3118;
public static final int GetMechanicusInfoReq = 3909;
public static final int GetMechanicusInfoRsp = 3931;
public static final int GetNextResourceInfoReq = 153;
public static final int GetNextResourceInfoRsp = 139;
public static final int GetOnlinePlayerInfoReq = 45;
public static final int GetOnlinePlayerInfoRsp = 90;
public static final int GetOnlinePlayerListReq = 35;
public static final int GetOnlinePlayerListRsp = 49;
public static final int GetOpActivityInfoReq = 5109;
public static final int GetOpActivityInfoRsp = 5131;
public static final int GetPlayerAskFriendListReq = 4008;
public static final int GetPlayerAskFriendListRsp = 4004;
public static final int GetPlayerBlacklistReq = 4076;
public static final int GetPlayerBlacklistRsp = 4072;
public static final int GetPlayerFriendListReq = 4009;
public static final int GetPlayerFriendListRsp = 4031;
public static final int GetPlayerHomeCompInfoReq = 4845;
public static final int GetPlayerMpModeAvailabilityReq = 1816;
public static final int GetPlayerMpModeAvailabilityRsp = 1801;
public static final int GetPlayerSocialDetailReq = 4049;
public static final int GetPlayerSocialDetailRsp = 4082;
public static final int GetPlayerTokenReq = 109;
public static final int GetPlayerTokenRsp = 131;
public static final int GetPushTipsRewardReq = 2212;
public static final int GetPushTipsRewardRsp = 2258;
public static final int GetQuestTalkHistoryReq = 435;
public static final int GetQuestTalkHistoryRsp = 449;
public static final int GetRecentMpPlayerListReq = 4011;
public static final int GetRecentMpPlayerListRsp = 4022;
public static final int GetRegionSearchReq = 5628;
public static final int GetReunionMissionInfoReq = 5066;
public static final int GetReunionMissionInfoRsp = 5051;
public static final int GetReunionPrivilegeInfoReq = 5062;
public static final int GetReunionPrivilegeInfoRsp = 5096;
public static final int GetReunionSignInInfoReq = 5078;
public static final int GetReunionSignInInfoRsp = 5053;
public static final int GetSceneAreaReq = 238;
public static final int GetSceneAreaRsp = 206;
public static final int GetSceneNpcPositionReq = 537;
public static final int GetSceneNpcPositionRsp = 532;
public static final int GetScenePerformanceReq = 3340;
public static final int GetScenePerformanceRsp = 3447;
public static final int GetScenePointReq = 230;
public static final int GetScenePointRsp = 297;
public static final int GetShopmallDataReq = 732;
public static final int GetShopmallDataRsp = 717;
public static final int GetShopReq = 709;
public static final int GetShopRsp = 731;
public static final int GetSignInRewardReq = 2532;
public static final int GetSignInRewardRsp = 2517;
public static final int GetWidgetSlotReq = 4267;
public static final int GetWidgetSlotRsp = 4300;
public static final int GetWorldMpInfoReq = 3264;
public static final int GetWorldMpInfoRsp = 3179;
public static final int GiveUpRoguelikeDungeonCardReq = 8977;
public static final int GiveUpRoguelikeDungeonCardRsp = 8583;
public static final int GivingRecordChangeNotify = 189;
public static final int GivingRecordNotify = 187;
public static final int GMShowNavMeshReq = 2377;
public static final int GMShowNavMeshRsp = 2343;
public static final int GMShowObstacleReq = 2393;
public static final int GMShowObstacleRsp = 2360;
public static final int GmTalkNotify = 58;
public static final int GmTalkReq = 31;
public static final int GmTalkRsp = 41;
public static final int GrantRewardNotify = 613;
public static final int GroupLinkAllNotify = 5768;
public static final int GroupLinkChangeNotify = 5759;
public static final int GroupLinkDeleteNotify = 5793;
public static final int GroupSuiteNotify = 3476;
public static final int GroupUnloadNotify = 3416;
public static final int GuestBeginEnterSceneNotify = 3125;
public static final int GuestPostEnterSceneNotify = 3379;
public static final int H5ActivityIdsNotify = 5693;
public static final int HideAndSeekPlayerReadyNotify = 5302;
public static final int HideAndSeekPlayerSetAvatarNotify = 5316;
public static final int HideAndSeekSelectAvatarReq = 5329;
public static final int HideAndSeekSelectAvatarRsp = 5325;
public static final int HideAndSeekSelectSkillReq = 8307;
public static final int HideAndSeekSelectSkillRsp = 8227;
public static final int HideAndSeekSetReadyReq = 5383;
public static final int HideAndSeekSetReadyRsp = 5303;
public static final int HideAndSeekSettleNotify = 5334;
public static final int HitClientTrivialNotify = 218;
public static final int HitTreeNotify = 3222;
public static final int HomeAvatarAllFinishRewardNotify = 4648;
public static final int HomeAvatarCostumeChangeNotify = 4685;
public static final int HomeAvatarRewardEventGetReq = 4775;
public static final int HomeAvatarRewardEventGetRsp = 4873;
public static final int HomeAvatarRewardEventNotify = 4789;
public static final int HomeAvatarSummonAllEventNotify = 4617;
public static final int HomeAvatarSummonEventReq = 4615;
public static final int HomeAvatarSummonEventRsp = 4498;
public static final int HomeAvatarSummonFinishReq = 4748;
public static final int HomeAvatarSummonFinishRsp = 4782;
public static final int HomeAvatarTalkFinishInfoNotify = 4502;
public static final int HomeAvatarTalkReq = 4712;
public static final int HomeAvatarTalkRsp = 4700;
public static final int HomeAvtarAllFinishRewardNotify = 4849;
public static final int HomeBasicInfoNotify = 4872;
public static final int HomeBlockNotify = 4542;
public static final int HomeChangeEditModeReq = 4625;
public static final int HomeChangeEditModeRsp = 4885;
public static final int HomeChangeModuleReq = 4688;
public static final int HomeChangeModuleRsp = 4821;
public static final int HomeChooseModuleReq = 4479;
public static final int HomeChooseModuleRsp = 4745;
public static final int HomeComfortInfoNotify = 4649;
public static final int HomeCustomFurnitureInfoNotify = 4636;
public static final int HomeEditCustomFurnitureReq = 4621;
public static final int HomeEditCustomFurnitureRsp = 4804;
public static final int HomeFishFarmingInfoNotify = 4893;
public static final int HomeGetArrangementInfoReq = 4480;
public static final int HomeGetArrangementInfoRsp = 4781;
public static final int HomeGetBasicInfoReq = 4839;
public static final int HomeGetFishFarmingInfoReq = 4848;
public static final int HomeGetFishFarmingInfoRsp = 4451;
public static final int HomeGetOnlineStatusReq = 4673;
public static final int HomeGetOnlineStatusRsp = 4626;
public static final int HomeKickPlayerReq = 4547;
public static final int HomeKickPlayerRsp = 4897;
public static final int HomeLimitedShopBuyGoodsReq = 4620;
public static final int HomeLimitedShopBuyGoodsRsp = 4667;
public static final int HomeLimitedShopGoodsListReq = 4706;
public static final int HomeLimitedShopGoodsListRsp = 4587;
public static final int HomeLimitedShopInfoChangeNotify = 4691;
public static final int HomeLimitedShopInfoNotify = 4679;
public static final int HomeLimitedShopInfoReq = 4715;
public static final int HomeLimitedShopInfoRsp = 4808;
public static final int HomeMarkPointNotify = 4764;
public static final int HomeModuleSeenReq = 4642;
public static final int HomeModuleSeenRsp = 4688;
public static final int HomeModuleUnlockNotify = 4778;
public static final int HomePlantFieldNotify = 4529;
public static final int HomePlantInfoNotify = 4832;
public static final int HomePlantInfoReq = 4771;
public static final int HomePlantInfoRsp = 4806;
public static final int HomePlantSeedReq = 4730;
public static final int HomePlantSeedRsp = 4857;
public static final int HomePlantWeedReq = 4760;
public static final int HomePlantWeedRsp = 4463;
public static final int HomePriorCheckNotify = 4601;
public static final int HomeResourceNotify = 4513;
public static final int HomeResourceTakeFetterExpReq = 4884;
public static final int HomeResourceTakeFetterExpRsp = 4608;
public static final int HomeResourceTakeHomeCoinReq = 4812;
public static final int HomeResourceTakeHomeCoinRsp = 4481;
public static final int HomeSceneInitFinishReq = 4520;
public static final int HomeSceneInitFinishRsp = 4605;
public static final int HomeSceneJumpReq = 4862;
public static final int HomeSceneJumpRsp = 4663;
public static final int HomeTransferReq = 4656;
public static final int HomeTransferRsp = 4669;
public static final int HomeUpdateArrangementInfoReq = 4632;
public static final int HomeUpdateArrangementInfoRsp = 4820;
public static final int HomeUpdateFishFarmingInfoReq = 4810;
public static final int HomeUpdateFishFarmingInfoRsp = 4500;
public static final int HostPlayerNotify = 310;
public static final int HuntingFailNotify = 4345;
public static final int HuntingGiveUpReq = 4313;
public static final int HuntingGiveUpRsp = 4301;
public static final int HuntingOngoingNotify = 4348;
public static final int HuntingRevealClueNotify = 4564;
public static final int HuntingRevealFinalNotify = 4335;
public static final int HuntingStartNotify = 4694;
public static final int HuntingSuccessNotify = 4325;
public static final int InBattleMechanicusBuildingPointsNotify = 5344;
public static final int InBattleMechanicusCardResultNotify = 5388;
public static final int InBattleMechanicusConfirmCardNotify = 5397;
public static final int InBattleMechanicusConfirmCardReq = 5379;
public static final int InBattleMechanicusConfirmCardRsp = 5391;
public static final int InBattleMechanicusExcapeMonsterNotify = 5337;
public static final int InBattleMechanicusLeftMonsterNotify = 5393;
public static final int InBattleMechanicusPickCardNotify = 5334;
public static final int InBattleMechanicusPickCardReq = 5345;
public static final int InBattleMechanicusPickCardRsp = 5375;
public static final int InBattleMechanicusSettleNotify = 5355;
public static final int InteractDailyDungeonInfoNotify = 947;
public static final int InterruptGalleryReq = 5597;
public static final int InterruptGalleryRsp = 5588;
public static final int InvestigationMonsterUpdateNotify = 1918;
public static final int ItemAddHintNotify = 637;
public static final int ItemCdGroupTimeNotify = 666;
public static final int ItemExceedLimitNotify = 639;
public static final int ItemGivingReq = 170;
public static final int ItemGivingRsp = 154;
public static final int JoinHomeWorldFailNotify = 4502;
public static final int JoinPlayerFailNotify = 295;
public static final int JoinPlayerSceneReq = 239;
public static final int JoinPlayerSceneRsp = 287;
public static final int KeepAliveNotify = 60;
public static final int LeaveSceneReq = 233;
public static final int LeaveSceneRsp = 210;
public static final int LeaveWorldNotify = 3203;
public static final int LevelupCityReq = 253;
public static final int LevelupCityRsp = 272;
public static final int LifeStateChangeNotify = 1233;
public static final int HomeCustomFurnitureInfoNotify = 4482;
public static final int HomeEditCustomFurnitureReq = 4516;
public static final int HomeEditCustomFurnitureRsp = 4871;
public static final int HomeFishFarmingInfoNotify = 4682;
public static final int HomeGetArrangementInfoReq = 4848;
public static final int HomeGetArrangementInfoRsp = 4456;
public static final int HomeGetBasicInfoReq = 4535;
public static final int HomeGetFishFarmingInfoReq = 4455;
public static final int HomeGetFishFarmingInfoRsp = 4889;
public static final int HomeGetOnlineStatusReq = 4796;
public static final int HomeGetOnlineStatusRsp = 4554;
public static final int HomeKickPlayerReq = 4809;
public static final int HomeKickPlayerRsp = 4752;
public static final int HomeLimitedShopBuyGoodsReq = 4638;
public static final int HomeLimitedShopBuyGoodsRsp = 4790;
public static final int HomeLimitedShopGoodsListReq = 4579;
public static final int HomeLimitedShopGoodsListRsp = 4846;
public static final int HomeLimitedShopInfoChangeNotify = 4814;
public static final int HomeLimitedShopInfoNotify = 4621;
public static final int HomeLimitedShopInfoReq = 4616;
public static final int HomeLimitedShopInfoRsp = 4585;
public static final int HomeMarkPointNotify = 4746;
public static final int HomeModuleSeenReq = 4546;
public static final int HomeModuleSeenRsp = 4526;
public static final int HomeModuleUnlockNotify = 4781;
public static final int HomePlantFieldNotify = 4466;
public static final int HomePlantInfoNotify = 4835;
public static final int HomePlantInfoReq = 4833;
public static final int HomePlantInfoRsp = 4859;
public static final int HomePlantSeedReq = 4614;
public static final int HomePlantSeedRsp = 4804;
public static final int HomePlantWeedReq = 4877;
public static final int HomePlantWeedRsp = 4575;
public static final int HomePriorCheckNotify = 4690;
public static final int HomeResourceNotify = 4806;
public static final int HomeResourceTakeFetterExpReq = 4840;
public static final int HomeResourceTakeFetterExpRsp = 4500;
public static final int HomeResourceTakeHomeCoinReq = 4763;
public static final int HomeResourceTakeHomeCoinRsp = 4658;
public static final int HomeSceneInitFinishReq = 4552;
public static final int HomeSceneInitFinishRsp = 4592;
public static final int HomeSceneJumpReq = 4659;
public static final int HomeSceneJumpRsp = 4570;
public static final int HomeTransferReq = 4880;
public static final int HomeTransferRsp = 4767;
public static final int HomeUpdateArrangementInfoReq = 4472;
public static final int HomeUpdateArrangementInfoRsp = 4822;
public static final int HomeUpdateFishFarmingInfoReq = 4604;
public static final int HomeUpdateFishFarmingInfoRsp = 4856;
public static final int HostPlayerNotify = 341;
public static final int HuntingFailNotify = 4302;
public static final int HuntingGiveUpReq = 4337;
public static final int HuntingGiveUpRsp = 4332;
public static final int HuntingOngoingNotify = 4313;
public static final int HuntingRevealClueNotify = 4347;
public static final int HuntingRevealFinalNotify = 4316;
public static final int HuntingStartNotify = 4326;
public static final int HuntingSuccessNotify = 4301;
public static final int InBattleMechanicusBuildingPointsNotify = 5385;
public static final int InBattleMechanicusCardResultNotify = 5330;
public static final int InBattleMechanicusConfirmCardNotify = 5307;
public static final int InBattleMechanicusConfirmCardReq = 5355;
public static final int InBattleMechanicusConfirmCardRsp = 5327;
public static final int InBattleMechanicusExcapeMonsterNotify = 5332;
public static final int InBattleMechanicusLeftMonsterNotify = 5317;
public static final int InBattleMechanicusPickCardNotify = 5382;
public static final int InBattleMechanicusPickCardReq = 5335;
public static final int InBattleMechanicusPickCardRsp = 5349;
public static final int InBattleMechanicusSettleNotify = 5398;
public static final int InteractDailyDungeonInfoNotify = 916;
public static final int InterruptGalleryReq = 5507;
public static final int InterruptGalleryRsp = 5530;
public static final int InvestigationMonsterUpdateNotify = 1922;
public static final int ItemAddHintNotify = 632;
public static final int ItemCdGroupTimeNotify = 611;
public static final int ItemGivingReq = 178;
public static final int ItemGivingRsp = 108;
public static final int JoinHomeWorldFailNotify = 4863;
public static final int JoinPlayerFailNotify = 268;
public static final int JoinPlayerSceneReq = 253;
public static final int JoinPlayerSceneRsp = 239;
public static final int KeepAliveNotify = 9;
public static final int LeaveSceneReq = 231;
public static final int LeaveSceneRsp = 241;
public static final int LeaveWorldNotify = 3420;
public static final int LevelupCityReq = 287;
public static final int LevelupCityRsp = 289;
public static final int LifeStateChangeNotify = 1231;
public static final int LiveEndNotify = 801;
public static final int LiveStartNotify = 820;
public static final int LoadActivityTerrainNotify = 2152;
public static final int LuaEnvironmentEffectNotify = 3175;
public static final int LuaSetOptionNotify = 353;
public static final int LunaRiteAreaFinishNotify = 8822;
public static final int LunaRiteGroupBundleRegisterNotify = 8956;
public static final int LunaRiteHintPointRemoveNotify = 8544;
public static final int LunaRiteHintPointReq = 8173;
public static final int LunaRiteHintPointRsp = 8129;
public static final int LunaRiteSacrificeReq = 8364;
public static final int LunaRiteSacrificeRsp = 8328;
public static final int LunaRiteTakeSacrificeRewardReq = 8987;
public static final int LunaRiteTakeSacrificeRewardRsp = 8352;
public static final int MailChangeNotify = 1433;
public static final int MainCoopUpdateNotify = 1975;
public static final int MapAreaChangeNotify = 3055;
public static final int MarkEntityInMinMapNotify = 230;
public static final int MarkMapReq = 3053;
public static final int MarkMapRsp = 3139;
public static final int MarkNewNotify = 1291;
public static final int MarkTargetInvestigationMonsterNotify = 1924;
public static final int MassiveEntityElementOpBatchNotify = 384;
public static final int MassiveEntityStateChangedNotify = 361;
public static final int MaterialDeleteReturnNotify = 632;
public static final int MaterialDeleteUpdateNotify = 612;
public static final int McoinExchangeHcoinReq = 653;
public static final int McoinExchangeHcoinRsp = 672;
public static final int MechanicusCandidateTeamCreateReq = 3928;
public static final int MechanicusCandidateTeamCreateRsp = 3955;
public static final int MechanicusCloseNotify = 3993;
public static final int MechanicusCoinNotify = 3915;
public static final int MechanicusLevelupGearReq = 3975;
public static final int MechanicusLevelupGearRsp = 3934;
public static final int MechanicusOpenNotify = 3937;
public static final int MechanicusSequenceOpenNotify = 3910;
public static final int MechanicusUnlockGearReq = 3944;
public static final int MechanicusUnlockGearRsp = 3945;
public static final int MeetNpcReq = 544;
public static final int MeetNpcRsp = 545;
public static final int MetNpcIdListNotify = 593;
public static final int MiracleRingDataNotify = 5245;
public static final int MiracleRingDeliverItemReq = 5217;
public static final int MiracleRingDeliverItemRsp = 5236;
public static final int MiracleRingDestroyNotify = 5243;
public static final int MiracleRingDropResultNotify = 5201;
public static final int MiracleRingTakeRewardReq = 5248;
public static final int MiracleRingTakeRewardRsp = 5213;
public static final int MistTrialDunegonFailNotify = 8337;
public static final int MistTrialGetChallengeMissionReq = 8250;
public static final int MistTrialGetChallengeMissionRsp = 8894;
public static final int MistTrialSelectAvatarAndEnterDungeonReq = 8186;
public static final int MistTrialSelectAvatarAndEnterDungeonRsp = 8522;
public static final int MonsterAIConfigHashNotify = 3024;
public static final int MonsterAlertChangeNotify = 380;
public static final int MonsterForceAlertNotify = 364;
public static final int MonsterPointArrayRouteUpdateNotify = 3292;
public static final int MonsterSummonTagNotify = 1360;
public static final int MpBlockNotify = 1824;
public static final int MpPlayGuestReplyInviteReq = 1850;
public static final int MpPlayGuestReplyInviteRsp = 1822;
public static final int MpPlayGuestReplyNotify = 1802;
public static final int MpPlayInviteResultNotify = 1830;
public static final int MpPlayOwnerCheckReq = 1812;
public static final int MpPlayOwnerCheckRsp = 1839;
public static final int MpPlayOwnerInviteNotify = 1831;
public static final int MpPlayOwnerStartInviteReq = 1821;
public static final int MpPlayOwnerStartInviteRsp = 1846;
public static final int MpPlayPrepareInterruptNotify = 1838;
public static final int MpPlayPrepareNotify = 1833;
public static final int MultistagePlayEndNotify = 5307;
public static final int MultistagePlayFinishStageReq = 5333;
public static final int MultistagePlayFinishStageRsp = 5328;
public static final int MultistagePlayInfoNotify = 5360;
public static final int MultistagePlaySettleNotify = 5318;
public static final int MultistagePlayStageEndNotify = 5321;
public static final int MusicGameSettleReq = 8851;
public static final int MusicGameSettleRsp = 8028;
public static final int MusicGameStartReq = 8760;
public static final int MusicGameStartRsp = 8922;
public static final int NavMeshStatsNotify = 2353;
public static final int NormalUidOpNotify = 5735;
public static final int NpcTalkReq = 560;
public static final int NpcTalkRsp = 533;
public static final int ObstacleModifyNotify = 2310;
public static final int OfferingInteractReq = 2916;
public static final int OfferingInteractRsp = 2912;
public static final int OneoffGatherPointDetectorDataNotify = 4289;
public static final int OpActivityDataNotify = 5110;
public static final int OpActivityStateNotify = 2560;
public static final int OpActivityUpdateNotify = 5115;
public static final int OpenBlossomCircleCampGuideNotify = 2744;
public static final int OpenStateChangeNotify = 165;
public static final int OpenStateUpdateNotify = 109;
public static final int OrderDisplayNotify = 4101;
public static final int OrderFinishNotify = 4145;
public static final int OtherPlayerEnterHomeNotify = 4591;
public static final int PacketHead = 13371337;
public static final int PathfindingEnterSceneReq = 2337;
public static final int PathfindingEnterSceneRsp = 2393;
public static final int PathfindingPingNotify = 2315;
public static final int PersonalLineAllDataReq = 408;
public static final int PersonalLineAllDataRsp = 417;
public static final int PersonalLineNewUnlockNotify = 423;
public static final int PersonalSceneJumpReq = 286;
public static final int PersonalSceneJumpRsp = 277;
public static final int PingReq = 37;
public static final int PingRsp = 93;
public static final int PlantFlowerAcceptAllGiveFlowerReq = 8775;
public static final int PlantFlowerAcceptAllGiveFlowerRsp = 8174;
public static final int PlantFlowerAcceptGiveFlowerReq = 8525;
public static final int PlantFlowerAcceptGiveFlowerRsp = 8957;
public static final int PlantFlowerEditFlowerCombinationReq = 8347;
public static final int PlantFlowerEditFlowerCombinationRsp = 8625;
public static final int PlantFlowerGetCanGiveFriendFlowerReq = 8617;
public static final int PlantFlowerGetCanGiveFriendFlowerRsp = 8091;
public static final int PlantFlowerGetFriendFlowerWishListReq = 8893;
public static final int PlantFlowerGetFriendFlowerWishListRsp = 8476;
public static final int PlantFlowerGetRecvFlowerListReq = 8459;
public static final int PlantFlowerGetRecvFlowerListRsp = 8597;
public static final int PlantFlowerGetSeedInfoReq = 8535;
public static final int PlantFlowerGetSeedInfoRsp = 8584;
public static final int PlantFlowerGiveFriendFlowerReq = 8934;
public static final int PlantFlowerGiveFriendFlowerRsp = 8456;
public static final int PlantFlowerHaveRecvFlowerNotify = 8711;
public static final int PlantFlowerSetFlowerWishReq = 8601;
public static final int PlantFlowerSetFlowerWishRsp = 8550;
public static final int PlantFlowerTakeSeedRewardReq = 8317;
public static final int PlantFlowerTakeSeedRewardRsp = 8152;
public static final int PlatformChangeRouteNotify = 257;
public static final int PlatformStartRouteNotify = 254;
public static final int PlatformStopRouteNotify = 235;
public static final int PlayerAllowEnterMpAfterAgreeMatchNotify = 4176;
public static final int PlayerApplyEnterHomeNotify = 4614;
public static final int PlayerApplyEnterHomeResultNotify = 4580;
public static final int PlayerApplyEnterHomeResultReq = 4603;
public static final int PlayerApplyEnterHomeResultRsp = 4849;
public static final int PlayerApplyEnterMpAfterMatchAgreedNotify = 4177;
public static final int PlayerApplyEnterMpNotify = 1835;
public static final int PlayerApplyEnterMpReq = 1825;
public static final int PlayerApplyEnterMpResultNotify = 1848;
public static final int PlayerApplyEnterMpResultReq = 1813;
public static final int PlayerApplyEnterMpResultRsp = 1801;
public static final int PlayerApplyEnterMpRsp = 1845;
public static final int PlayerCancelMatchReq = 4198;
public static final int PlayerCancelMatchRsp = 4163;
public static final int PlayerChatCDNotify = 3173;
public static final int PlayerChatNotify = 3485;
public static final int PlayerChatReq = 3403;
public static final int PlayerChatRsp = 3045;
public static final int PlayerCompoundMaterialReq = 173;
public static final int PlayerCompoundMaterialRsp = 163;
public static final int PlayerConfirmMatchReq = 4186;
public static final int PlayerConfirmMatchRsp = 4193;
public static final int PlayerCookArgsReq = 135;
public static final int PlayerCookArgsRsp = 157;
public static final int PlayerCookReq = 103;
public static final int PlayerCookRsp = 167;
public static final int PlayerDataNotify = 145;
public static final int PlayerEnterDungeonReq = 910;
public static final int PlayerEnterDungeonRsp = 915;
public static final int PlayerEnterSceneInfoNotify = 294;
public static final int PlayerEnterSceneNotify = 260;
public static final int PlayerEyePointStateNotify = 3461;
public static final int PlayerFishingDataNotify = 5831;
public static final int PlayerForceExitReq = 125;
public static final int PlayerForceExitRsp = 149;
public static final int PlayerGameTimeNotify = 179;
public static final int PlayerGeneralMatchConfirmNotify = 4156;
public static final int LoadActivityTerrainNotify = 2175;
public static final int LuaEnvironmentEffectNotify = 3289;
public static final int LuaSetOptionNotify = 387;
public static final int LunaRiteAreaFinishNotify = 8107;
public static final int LunaRiteGroupBundleRegisterNotify = 8327;
public static final int LunaRiteHintPointRemoveNotify = 8420;
public static final int LunaRiteHintPointReq = 8342;
public static final int LunaRiteHintPointRsp = 8481;
public static final int LunaRiteSacrificeReq = 8062;
public static final int LunaRiteSacrificeRsp = 8401;
public static final int LunaRiteTakeSacrificeRewardReq = 8669;
public static final int LunaRiteTakeSacrificeRewardRsp = 8252;
public static final int MailChangeNotify = 1431;
public static final int MainCoopUpdateNotify = 1959;
public static final int MapAreaChangeNotify = 3103;
public static final int MarkEntityInMinMapNotify = 202;
public static final int MarkMapReq = 3208;
public static final int MarkMapRsp = 3421;
public static final int MarkNewNotify = 1227;
public static final int MarkTargetInvestigationMonsterNotify = 1928;
public static final int MassiveEntityElementOpBatchNotify = 377;
public static final int MassiveEntityStateChangedNotify = 303;
public static final int MaterialDeleteReturnNotify = 693;
public static final int MaterialDeleteUpdateNotify = 643;
public static final int McoinExchangeHcoinReq = 687;
public static final int McoinExchangeHcoinRsp = 689;
public static final int MechanicusCandidateTeamCreateReq = 3997;
public static final int MechanicusCandidateTeamCreateRsp = 3998;
public static final int MechanicusCloseNotify = 3917;
public static final int MechanicusCoinNotify = 3937;
public static final int MechanicusLevelupGearReq = 3949;
public static final int MechanicusLevelupGearRsp = 3982;
public static final int MechanicusOpenNotify = 3932;
public static final int MechanicusSequenceOpenNotify = 3941;
public static final int MechanicusUnlockGearReq = 3985;
public static final int MechanicusUnlockGearRsp = 3935;
public static final int MeetNpcReq = 585;
public static final int MeetNpcRsp = 535;
public static final int MetNpcIdListNotify = 517;
public static final int MiracleRingDataNotify = 5243;
public static final int MiracleRingDeliverItemReq = 5226;
public static final int MiracleRingDeliverItemRsp = 5247;
public static final int MiracleRingDestroyNotify = 5216;
public static final int MiracleRingDropResultNotify = 5203;
public static final int MiracleRingTakeRewardReq = 5204;
public static final int MiracleRingTakeRewardRsp = 5228;
public static final int MistTrialDunegonFailNotify = 8580;
public static final int MistTrialGetChallengeMissionReq = 8668;
public static final int MistTrialGetChallengeMissionRsp = 8385;
public static final int MistTrialSelectAvatarAndEnterDungeonReq = 8318;
public static final int MistTrialSelectAvatarAndEnterDungeonRsp = 8403;
public static final int MonsterAIConfigHashNotify = 3121;
public static final int MonsterAlertChangeNotify = 313;
public static final int MonsterForceAlertNotify = 342;
public static final int MonsterPointArrayRouteUpdateNotify = 3138;
public static final int MonsterSummonTagNotify = 1309;
public static final int MpBlockNotify = 1808;
public static final int MpPlayGuestReplyInviteReq = 1811;
public static final int MpPlayGuestReplyInviteRsp = 1841;
public static final int MpPlayGuestReplyNotify = 1805;
public static final int MpPlayInviteResultNotify = 1806;
public static final int MpPlayOwnerCheckReq = 1814;
public static final int MpPlayOwnerCheckRsp = 1812;
public static final int MpPlayOwnerInviteNotify = 1815;
public static final int MpPlayOwnerStartInviteReq = 1846;
public static final int MpPlayOwnerStartInviteRsp = 1827;
public static final int MpPlayPrepareInterruptNotify = 1848;
public static final int MpPlayPrepareNotify = 1839;
public static final int MultistagePlayEndNotify = 5375;
public static final int MultistagePlayFinishStageReq = 5331;
public static final int MultistagePlayFinishStageRsp = 5397;
public static final int MultistagePlayInfoNotify = 5309;
public static final int MultistagePlaySettleNotify = 5314;
public static final int MultistagePlayStageEndNotify = 5340;
public static final int MusicGameSettleReq = 8745;
public static final int MusicGameSettleRsp = 8288;
public static final int MusicGameStartReq = 8927;
public static final int MusicGameStartRsp = 8101;
public static final int NavMeshStatsNotify = 2387;
public static final int NormalUidOpNotify = 5718;
public static final int NpcTalkReq = 509;
public static final int NpcTalkRsp = 531;
public static final int ObstacleModifyNotify = 2341;
public static final int OfferingInteractReq = 2908;
public static final int OfferingInteractRsp = 2923;
public static final int OneoffGatherPointDetectorDataNotify = 4262;
public static final int OpActivityDataNotify = 5141;
public static final int OpActivityStateNotify = 2509;
public static final int OpActivityUpdateNotify = 5137;
public static final int OpenBlossomCircleCampGuideNotify = 2785;
public static final int OpenStateChangeNotify = 112;
public static final int OpenStateUpdateNotify = 119;
public static final int OrderDisplayNotify = 4103;
public static final int OrderFinishNotify = 4143;
public static final int OtherPlayerEnterHomeNotify = 4609;
public static final int PathfindingEnterSceneReq = 2332;
public static final int PathfindingEnterSceneRsp = 2317;
public static final int PathfindingPingNotify = 2337;
public static final int PersonalLineAllDataReq = 446;
public static final int PersonalLineAllDataRsp = 433;
public static final int PersonalLineNewUnlockNotify = 470;
public static final int PersonalSceneJumpReq = 266;
public static final int PersonalSceneJumpRsp = 248;
public static final int PingReq = 32;
public static final int PingRsp = 17;
public static final int PlantFlowerAcceptAllGiveFlowerReq = 8017;
public static final int PlantFlowerAcceptAllGiveFlowerRsp = 8831;
public static final int PlantFlowerAcceptGiveFlowerReq = 8137;
public static final int PlantFlowerAcceptGiveFlowerRsp = 8431;
public static final int PlantFlowerEditFlowerCombinationReq = 8506;
public static final int PlantFlowerEditFlowerCombinationRsp = 8335;
public static final int PlantFlowerGetCanGiveFriendFlowerReq = 8648;
public static final int PlantFlowerGetCanGiveFriendFlowerRsp = 8507;
public static final int PlantFlowerGetFriendFlowerWishListReq = 8840;
public static final int PlantFlowerGetFriendFlowerWishListRsp = 8553;
public static final int PlantFlowerGetRecvFlowerListReq = 8914;
public static final int PlantFlowerGetRecvFlowerListRsp = 8929;
public static final int PlantFlowerGetSeedInfoReq = 8913;
public static final int PlantFlowerGetSeedInfoRsp = 8932;
public static final int PlantFlowerGiveFriendFlowerReq = 8836;
public static final int PlantFlowerGiveFriendFlowerRsp = 8893;
public static final int PlantFlowerHaveRecvFlowerNotify = 8174;
public static final int PlantFlowerSetFlowerWishReq = 8650;
public static final int PlantFlowerSetFlowerWishRsp = 8588;
public static final int PlantFlowerTakeSeedRewardReq = 8182;
public static final int PlantFlowerTakeSeedRewardRsp = 8386;
public static final int PlatformChangeRouteNotify = 205;
public static final int PlatformStartRouteNotify = 208;
public static final int PlatformStopRouteNotify = 204;
public static final int PlayerAllowEnterMpAfterAgreeMatchNotify = 4151;
public static final int PlayerApplyEnterHomeNotify = 4504;
public static final int PlayerApplyEnterHomeResultNotify = 4766;
public static final int PlayerApplyEnterHomeResultReq = 4568;
public static final int PlayerApplyEnterHomeResultRsp = 4697;
public static final int PlayerApplyEnterMpAfterMatchAgreedNotify = 4163;
public static final int PlayerApplyEnterMpNotify = 1818;
public static final int PlayerApplyEnterMpReq = 1809;
public static final int PlayerApplyEnterMpResultNotify = 1804;
public static final int PlayerApplyEnterMpResultReq = 1828;
public static final int PlayerApplyEnterMpResultRsp = 1803;
public static final int PlayerApplyEnterMpRsp = 1843;
public static final int PlayerCancelMatchReq = 4154;
public static final int PlayerCancelMatchRsp = 4178;
public static final int PlayerChatCDNotify = 3464;
public static final int PlayerChatNotify = 3295;
public static final int PlayerChatReq = 3378;
public static final int PlayerChatRsp = 3321;
public static final int PlayerCompoundMaterialReq = 122;
public static final int PlayerCompoundMaterialRsp = 154;
public static final int PlayerConfirmMatchReq = 4197;
public static final int PlayerConfirmMatchRsp = 4166;
public static final int PlayerCookArgsReq = 104;
public static final int PlayerCookArgsRsp = 105;
public static final int PlayerCookReq = 158;
public static final int PlayerCookRsp = 150;
public static final int PlayerDataNotify = 135;
public static final int PlayerEnterDungeonReq = 941;
public static final int PlayerEnterDungeonRsp = 937;
public static final int PlayerEnterSceneInfoNotify = 274;
public static final int PlayerEnterSceneNotify = 209;
public static final int PlayerEyePointStateNotify = 3376;
public static final int PlayerFishingDataNotify = 5815;
public static final int PlayerForceExitReq = 173;
public static final int PlayerForceExitRsp = 161;
public static final int PlayerGameTimeNotify = 155;
public static final int PlayerGeneralMatchConfirmNotify = 4182;
public static final int PlayerGeneralMatchDismissNotify = 4187;
public static final int PlayerGetForceQuitBanInfoReq = 4162;
public static final int PlayerGetForceQuitBanInfoRsp = 4189;
public static final int PlayerHomeCompInfoNotify = 4863;
public static final int PlayerInjectFixNotify = 185;
public static final int PlayerInvestigationAllInfoNotify = 1920;
public static final int PlayerInvestigationNotify = 1901;
public static final int PlayerInvestigationTargetNotify = 1919;
public static final int PlayerLevelRewardUpdateNotify = 112;
public static final int PlayerLoginReq = 110;
public static final int PlayerLoginRsp = 115;
public static final int PlayerLogoutNotify = 144;
public static final int PlayerLogoutReq = 137;
public static final int PlayerLogoutRsp = 193;
public static final int PlayerLuaShellNotify = 143;
public static final int PlayerMatchAgreedResultNotify = 4165;
public static final int PlayerMatchInfoNotify = 4195;
public static final int PlayerMatchStopNotify = 4151;
public static final int PlayerMatchSuccNotify = 4167;
public static final int PlayerOfferingDataNotify = 2915;
public static final int PlayerOfferingReq = 2914;
public static final int PlayerOfferingRsp = 2917;
public static final int PlayerPreEnterMpNotify = 1836;
public static final int PlayerPropChangeNotify = 156;
public static final int PlayerPropChangeReasonNotify = 1234;
public static final int PlayerPropNotify = 191;
public static final int PlayerQuitDungeonReq = 937;
public static final int PlayerQuitDungeonRsp = 993;
public static final int PlayerQuitFromHomeNotify = 4757;
public static final int PlayerQuitFromMpNotify = 1817;
public static final int PlayerGetForceQuitBanInfoReq = 4164;
public static final int PlayerGetForceQuitBanInfoRsp = 4162;
public static final int PlayerHomeCompInfoNotify = 4563;
public static final int PlayerInjectFixNotify = 188;
public static final int PlayerInvestigationAllInfoNotify = 1905;
public static final int PlayerInvestigationNotify = 1927;
public static final int PlayerInvestigationTargetNotify = 1906;
public static final int PlayerLevelRewardUpdateNotify = 143;
public static final int PlayerLoginReq = 141;
public static final int PlayerLoginRsp = 137;
public static final int PlayerLogoutNotify = 185;
public static final int PlayerLogoutReq = 132;
public static final int PlayerLogoutRsp = 117;
public static final int PlayerLuaShellNotify = 110;
public static final int PlayerMatchAgreedResultNotify = 4152;
public static final int PlayerMatchInfoNotify = 4193;
public static final int PlayerMatchStopNotify = 4153;
public static final int PlayerMatchSuccNotify = 4176;
public static final int PlayerOfferingDataNotify = 2901;
public static final int PlayerOfferingReq = 2906;
public static final int PlayerOfferingRsp = 2911;
public static final int PlayerPreEnterMpNotify = 1847;
public static final int PlayerPropChangeNotify = 186;
public static final int PlayerPropChangeReasonNotify = 1282;
public static final int PlayerPropNotify = 127;
public static final int PlayerQuitDungeonReq = 932;
public static final int PlayerQuitDungeonRsp = 917;
public static final int PlayerQuitFromHomeNotify = 4776;
public static final int PlayerQuitFromMpNotify = 1826;
public static final int PlayerRandomCookReq = 120;
public static final int PlayerRandomCookRsp = 180;
public static final int PlayerRechargeDataNotify = 4113;
public static final int PlayerReportReq = 4092;
public static final int PlayerReportRsp = 4058;
public static final int PlayerRoutineDataNotify = 3535;
public static final int PlayerSetLanguageReq = 123;
public static final int PlayerSetLanguageRsp = 113;
public static final int PlayerSetOnlyMPWithPSPlayerReq = 1815;
public static final int PlayerSetOnlyMPWithPSPlayerRsp = 1827;
public static final int PlayerSetPauseReq = 192;
public static final int PlayerSetPauseRsp = 158;
public static final int PlayerStartMatchReq = 4185;
public static final int PlayerStartMatchRsp = 4175;
public static final int PlayerStoreNotify = 660;
public static final int PlayerTimeNotify = 152;
public static final int PlayerWorldSceneInfoListNotify = 3386;
public static final int PostEnterSceneReq = 3390;
public static final int PostEnterSceneRsp = 3213;
public static final int PrivateChatNotify = 4960;
public static final int PrivateChatReq = 5010;
public static final int PrivateChatRsp = 4983;
public static final int PrivateChatSetSequenceReq = 4965;
public static final int PrivateChatSetSequenceRsp = 4987;
public static final int ProfilePictureChangeNotify = 4053;
public static final int ProjectorOptionReq = 880;
public static final int ProjectorOptionRsp = 864;
public static final int ProudSkillChangeNotify = 1079;
public static final int ProudSkillExtraLevelNotify = 1028;
public static final int ProudSkillUpgradeReq = 1075;
public static final int ProudSkillUpgradeRsp = 1034;
public static final int PSNBlackListNotify = 4070;
public static final int PSNFriendListNotify = 4072;
public static final int PlayerRandomCookRsp = 113;
public static final int PlayerRechargeDataNotify = 4128;
public static final int PlayerReportReq = 4059;
public static final int PlayerReportRsp = 4084;
public static final int PlayerRoutineDataNotify = 3518;
public static final int PlayerSetLanguageReq = 170;
public static final int PlayerSetLanguageRsp = 129;
public static final int PlayerSetOnlyMPWithPSPlayerReq = 1802;
public static final int PlayerSetOnlyMPWithPSPlayerRsp = 1813;
public static final int PlayerSetPauseReq = 159;
public static final int PlayerSetPauseRsp = 184;
public static final int PlayerStartMatchReq = 4168;
public static final int PlayerStartMatchRsp = 4159;
public static final int PlayerStoreNotify = 609;
public static final int PlayerTimeNotify = 172;
public static final int PlayerWorldSceneInfoListNotify = 3172;
public static final int PostEnterSceneReq = 3097;
public static final int PostEnterSceneRsp = 3344;
public static final int PrivateChatNotify = 4991;
public static final int PrivateChatReq = 4959;
public static final int PrivateChatRsp = 4981;
public static final int PrivateChatSetSequenceReq = 4987;
public static final int PrivateChatSetSequenceRsp = 4982;
public static final int ProfilePictureChangeNotify = 4087;
public static final int ProjectorOptionReq = 813;
public static final int ProjectorOptionRsp = 842;
public static final int ProudSkillChangeNotify = 1055;
public static final int ProudSkillExtraLevelNotify = 1097;
public static final int ProudSkillUpgradeReq = 1049;
public static final int ProudSkillUpgradeRsp = 1082;
public static final int PSNBlackListNotify = 4078;
public static final int PSNFriendListNotify = 4089;
public static final int PSPlayerApplyEnterMpReq = 1837;
public static final int PSPlayerApplyEnterMpRsp = 1806;
public static final int PullPrivateChatReq = 5043;
public static final int PullPrivateChatRsp = 4994;
public static final int PullRecentChatReq = 4995;
public static final int PullRecentChatRsp = 5025;
public static final int PushTipsAllDataNotify = 2226;
public static final int PushTipsChangeNotify = 2262;
public static final int PushTipsReadFinishReq = 2289;
public static final int PushTipsReadFinishRsp = 2209;
public static final int PSPlayerApplyEnterMpRsp = 1832;
public static final int PullPrivateChatReq = 4967;
public static final int PullPrivateChatRsp = 5035;
public static final int PullRecentChatReq = 4985;
public static final int PullRecentChatRsp = 4999;
public static final int PushTipsAllDataNotify = 2224;
public static final int PushTipsChangeNotify = 2238;
public static final int PushTipsReadFinishReq = 2206;
public static final int PushTipsReadFinishRsp = 2219;
public static final int QueryCodexMonsterBeKilledNumReq = 4207;
public static final int QueryCodexMonsterBeKilledNumRsp = 4208;
public static final int QueryPathReq = 2360;
public static final int QueryPathRsp = 2333;
public static final int QuestCreateEntityReq = 434;
public static final int QuestCreateEntityRsp = 479;
public static final int QuestDelNotify = 410;
public static final int QuestDestroyEntityReq = 491;
public static final int QuestDestroyEntityRsp = 497;
public static final int QuestDestroyNpcReq = 426;
public static final int QuestDestroyNpcRsp = 462;
public static final int QuestGlobalVarNotify = 466;
public static final int QuestListNotify = 460;
public static final int QuestListUpdateNotify = 433;
public static final int QuestProgressUpdateNotify = 446;
public static final int QuestTransmitReq = 473;
public static final int QuestTransmitRsp = 463;
public static final int QuestUpdateQuestTimeVarNotify = 458;
public static final int QuestUpdateQuestVarNotify = 483;
public static final int QuestUpdateQuestVarReq = 474;
public static final int QuestUpdateQuestVarRsp = 456;
public static final int QuickUseWidgetReq = 4276;
public static final int QuickUseWidgetRsp = 4265;
public static final int ReadMailNotify = 1410;
public static final int ReadPrivateChatReq = 4984;
public static final int ReadPrivateChatRsp = 5029;
public static final int ReceivedTrialAvatarActivityRewardReq = 2020;
public static final int ReceivedTrialAvatarActivityRewardRsp = 2087;
public static final int RechargeReq = 4135;
public static final int RechargeRsp = 4125;
public static final int RedeemLegendaryKeyReq = 481;
public static final int RedeemLegendaryKeyRsp = 427;
public static final int RefreshBackgroundAvatarReq = 1744;
public static final int RefreshBackgroundAvatarRsp = 1719;
public static final int RefreshRoguelikeDungeonCardReq = 8433;
public static final int RefreshRoguelikeDungeonCardRsp = 8678;
public static final int RegionSearchChangeRegionNotify = 5625;
public static final int RegionSearchNotify = 5635;
public static final int ReliquaryDecomposeReq = 606;
public static final int ReliquaryDecomposeRsp = 659;
public static final int ReliquaryPromoteReq = 665;
public static final int ReliquaryPromoteRsp = 603;
public static final int ReliquaryUpgradeReq = 689;
public static final int ReliquaryUpgradeRsp = 609;
public static final int RemoveBlacklistReq = 4080;
public static final int RemoveBlacklistRsp = 4064;
public static final int RemoveRandTaskInfoNotify = 132;
public static final int ReportFightAntiCheatNotify = 357;
public static final int ReportTrackingIOInfoNotify = 4117;
public static final int RequestLiveInfoReq = 803;
public static final int RequestLiveInfoRsp = 867;
public static final int ResinCardDataUpdateNotify = 4126;
public static final int ResinChangeNotify = 623;
public static final int RestartEffigyChallengeReq = 2061;
public static final int RestartEffigyChallengeRsp = 2112;
public static final int ReunionActivateNotify = 5081;
public static final int ReunionBriefInfoReq = 5085;
public static final int ReunionBriefInfoRsp = 5075;
public static final int ReunionDailyRefreshNotify = 5072;
public static final int ReunionPrivilegeChangeNotify = 5100;
public static final int ReunionSettleNotify = 5096;
public static final int RobotPushPlayerDataNotify = 88;
public static final int RogueCellUpdateNotify = 8074;
public static final int RogueDungeonPlayerCellChangeNotify = 8784;
public static final int RogueHealAvatarsReq = 8959;
public static final int RogueHealAvatarsRsp = 8473;
public static final int RoguelikeCardGachaNotify = 8079;
public static final int RoguelikeEffectDataNotify = 8529;
public static final int RoguelikeEffectViewReq = 8396;
public static final int RoguelikeEffectViewRsp = 8040;
public static final int RoguelikeGiveUpReq = 8716;
public static final int RoguelikeGiveUpRsp = 8728;
public static final int RoguelikeMistClearNotify = 8471;
public static final int RoguelikeRefreshCardCostUpdateNotify = 8304;
public static final int RoguelikeResourceBonusPropUpdateNotify = 8312;
public static final int RoguelikeRuneRecordUpdateNotify = 8985;
public static final int RoguelikeSelectAvatarAndEnterDungeonReq = 8697;
public static final int RoguelikeSelectAvatarAndEnterDungeonRsp = 8377;
public static final int RoguelikeTakeStageFirstPassRewardReq = 8667;
public static final int RoguelikeTakeStageFirstPassRewardRsp = 8101;
public static final int RogueResumeDungeonReq = 8496;
public static final int RogueResumeDungeonRsp = 8759;
public static final int RogueSwitchAvatarReq = 8856;
public static final int RogueSwitchAvatarRsp = 8141;
public static final int SalesmanDeliverItemReq = 2103;
public static final int SalesmanDeliverItemRsp = 2198;
public static final int SalesmanTakeRewardReq = 2091;
public static final int SalesmanTakeRewardRsp = 2171;
public static final int SalesmanTakeSpecialRewardReq = 2156;
public static final int SalesmanTakeSpecialRewardRsp = 2102;
public static final int SaveCoopDialogReq = 1972;
public static final int SaveCoopDialogRsp = 1952;
public static final int SaveMainCoopReq = 1995;
public static final int SaveMainCoopRsp = 1998;
public static final int SceneAreaUnlockNotify = 209;
public static final int SceneAreaWeatherNotify = 213;
public static final int SceneAudioNotify = 3260;
public static final int SceneAvatarStaminaStepReq = 234;
public static final int SceneAvatarStaminaStepRsp = 279;
public static final int SceneCreateEntityReq = 267;
public static final int QueryCodexMonsterBeKilledNumRsp = 4205;
public static final int QueryPathReq = 2309;
public static final int QueryPathRsp = 2331;
public static final int QuestCreateEntityReq = 482;
public static final int QuestCreateEntityRsp = 455;
public static final int QuestDelNotify = 441;
public static final int QuestDestroyEntityReq = 427;
public static final int QuestDestroyEntityRsp = 407;
public static final int QuestDestroyNpcReq = 424;
public static final int QuestDestroyNpcRsp = 438;
public static final int QuestGlobalVarNotify = 411;
public static final int QuestListNotify = 409;
public static final int QuestListUpdateNotify = 431;
public static final int QuestProgressUpdateNotify = 445;
public static final int QuestTransmitReq = 422;
public static final int QuestTransmitRsp = 454;
public static final int QuestUpdateQuestTimeVarNotify = 484;
public static final int QuestUpdateQuestVarNotify = 463;
public static final int QuestUpdateQuestVarReq = 490;
public static final int QuestUpdateQuestVarRsp = 486;
public static final int QuickUseWidgetReq = 4251;
public static final int QuickUseWidgetRsp = 4252;
public static final int ReadMailNotify = 1441;
public static final int ReadPrivateChatReq = 5032;
public static final int ReadPrivateChatRsp = 5005;
public static final int ReceivedTrialAvatarActivityRewardReq = 2054;
public static final int ReceivedTrialAvatarActivityRewardRsp = 2199;
public static final int RechargeReq = 4118;
public static final int RechargeRsp = 4109;
public static final int RedeemLegendaryKeyReq = 436;
public static final int RedeemLegendaryKeyRsp = 428;
public static final int RefreshBackgroundAvatarReq = 1660;
public static final int RefreshBackgroundAvatarRsp = 1751;
public static final int RefreshRoguelikeDungeonCardReq = 8072;
public static final int RefreshRoguelikeDungeonCardRsp = 8644;
public static final int RegionSearchChangeRegionNotify = 5609;
public static final int RegionSearchNotify = 5618;
public static final int ReliquaryDecomposeReq = 615;
public static final int ReliquaryDecomposeRsp = 692;
public static final int ReliquaryPromoteReq = 612;
public static final int ReliquaryPromoteRsp = 658;
public static final int ReliquaryUpgradeReq = 606;
public static final int ReliquaryUpgradeRsp = 619;
public static final int RemoveBlacklistReq = 4013;
public static final int RemoveBlacklistRsp = 4042;
public static final int RemoveRandTaskInfoNotify = 193;
public static final int ReportFightAntiCheatNotify = 305;
public static final int ReportTrackingIOInfoNotify = 4126;
public static final int RequestLiveInfoReq = 858;
public static final int RequestLiveInfoRsp = 850;
public static final int ResinCardDataUpdateNotify = 4101;
public static final int ResinChangeNotify = 670;
public static final int RestartEffigyChallengeReq = 2023;
public static final int RestartEffigyChallengeRsp = 2133;
public static final int ReunionActivateNotify = 5065;
public static final int ReunionBriefInfoReq = 5068;
public static final int ReunionBriefInfoRsp = 5059;
public static final int ReunionDailyRefreshNotify = 5091;
public static final int ReunionPrivilegeChangeNotify = 5061;
public static final int ReunionSettleNotify = 5077;
public static final int RobotPushPlayerDataNotify = 30;
public static final int RogueCellUpdateNotify = 8022;
public static final int RogueDungeonPlayerCellChangeNotify = 8832;
public static final int RogueHealAvatarsReq = 8331;
public static final int RogueHealAvatarsRsp = 8937;
public static final int RoguelikeCardGachaNotify = 8618;
public static final int RoguelikeEffectDataNotify = 8606;
public static final int RoguelikeEffectViewReq = 8377;
public static final int RoguelikeEffectViewRsp = 8770;
public static final int RoguelikeGiveUpReq = 8988;
public static final int RoguelikeGiveUpRsp = 8009;
public static final int RoguelikeMistClearNotify = 8198;
public static final int RoguelikeRefreshCardCostUpdateNotify = 8912;
public static final int RoguelikeResourceBonusPropUpdateNotify = 8823;
public static final int RoguelikeRuneRecordUpdateNotify = 8497;
public static final int RoguelikeSelectAvatarAndEnterDungeonReq = 8975;
public static final int RoguelikeSelectAvatarAndEnterDungeonRsp = 8471;
public static final int RoguelikeTakeStageFirstPassRewardReq = 8205;
public static final int RoguelikeTakeStageFirstPassRewardRsp = 8409;
public static final int RogueResumeDungeonReq = 8417;
public static final int RogueResumeDungeonRsp = 8565;
public static final int RogueSwitchAvatarReq = 8930;
public static final int RogueSwitchAvatarRsp = 8556;
public static final int SalesmanDeliverItemReq = 2118;
public static final int SalesmanDeliverItemRsp = 2038;
public static final int SalesmanTakeRewardReq = 2007;
public static final int SalesmanTakeRewardRsp = 2100;
public static final int SalesmanTakeSpecialRewardReq = 2065;
public static final int SalesmanTakeSpecialRewardRsp = 2107;
public static final int SaveCoopDialogReq = 1991;
public static final int SaveCoopDialogRsp = 1955;
public static final int SaveMainCoopReq = 1993;
public static final int SaveMainCoopRsp = 1954;
public static final int SceneAreaUnlockNotify = 219;
public static final int SceneAreaWeatherNotify = 229;
public static final int SceneAudioNotify = 3430;
public static final int SceneAvatarStaminaStepReq = 282;
public static final int SceneAvatarStaminaStepRsp = 255;
public static final int SceneCreateEntityReq = 250;
public static final int SceneCreateEntityRsp = 220;
public static final int SceneDataNotify = 3179;
public static final int SceneDestroyEntityReq = 280;
public static final int SceneDestroyEntityRsp = 264;
public static final int SceneEntitiesMoveCombineNotify = 3312;
public static final int SceneEntitiesMovesReq = 221;
public static final int SceneEntitiesMovesRsp = 207;
public static final int SceneEntityAppearNotify = 293;
public static final int SceneEntityDisappearNotify = 244;
public static final int SceneEntityDrownReq = 265;
public static final int SceneEntityDrownRsp = 203;
public static final int SceneEntityMoveNotify = 291;
public static final int SceneEntityMoveReq = 245;
public static final int SceneEntityMoveRsp = 275;
public static final int SceneEntityUpdateNotify = 3423;
public static final int SceneForceLockNotify = 266;
public static final int SceneDataNotify = 3117;
public static final int SceneDestroyEntityReq = 213;
public static final int SceneDestroyEntityRsp = 242;
public static final int SceneEntitiesMoveCombineNotify = 3298;
public static final int SceneEntitiesMovesReq = 240;
public static final int SceneEntitiesMovesRsp = 275;
public static final int SceneEntityAppearNotify = 217;
public static final int SceneEntityDisappearNotify = 285;
public static final int SceneEntityDrownReq = 212;
public static final int SceneEntityDrownRsp = 258;
public static final int SceneEntityMoveNotify = 227;
public static final int SceneEntityMoveReq = 235;
public static final int SceneEntityMoveRsp = 249;
public static final int SceneEntityUpdateNotify = 3089;
public static final int SceneForceLockNotify = 211;
public static final int SceneForceUnlockNotify = 201;
public static final int SceneGalleryInfoNotify = 5528;
public static final int SceneInitFinishReq = 215;
public static final int SceneInitFinishRsp = 237;
public static final int SceneKickPlayerNotify = 259;
public static final int SceneKickPlayerReq = 204;
public static final int SceneKickPlayerRsp = 206;
public static final int ScenePlayBattleInfoListNotify = 4378;
public static final int ScenePlayBattleInfoNotify = 4410;
public static final int ScenePlayBattleInterruptNotify = 4441;
public static final int ScenePlayBattleResultNotify = 4447;
public static final int ScenePlayBattleUidOpNotify = 4438;
public static final int ScenePlayerInfoNotify = 236;
public static final int ScenePlayerLocationNotify = 297;
public static final int ScenePlayerSoundNotify = 243;
public static final int ScenePlayGuestReplyInviteReq = 4394;
public static final int ScenePlayGuestReplyInviteRsp = 4395;
public static final int ScenePlayGuestReplyNotify = 4425;
public static final int ScenePlayInfoListNotify = 4429;
public static final int ScenePlayInviteResultNotify = 4384;
public static final int ScenePlayOutofRegionNotify = 4405;
public static final int ScenePlayOwnerCheckReq = 4383;
public static final int ScenePlayOwnerCheckRsp = 4360;
public static final int ScenePlayOwnerInviteNotify = 4443;
public static final int ScenePlayOwnerStartInviteReq = 4365;
public static final int ScenePlayOwnerStartInviteRsp = 4387;
public static final int ScenePointUnlockNotify = 274;
public static final int SceneRouteChangeNotify = 270;
public static final int SceneTeamUpdateNotify = 1696;
public static final int SceneTimeNotify = 229;
public static final int SceneTransToPointReq = 256;
public static final int SceneTransToPointRsp = 283;
public static final int SceneUnlockInfoNotify = 3386;
public static final int SceneWeatherForcastReq = 3167;
public static final int SceneWeatherForcastRsp = 3023;
public static final int SeaLampCoinNotify = 2028;
public static final int SeaLampContributeItemReq = 2122;
public static final int SeaLampContributeItemRsp = 2084;
public static final int SeaLampFlyLampNotify = 2075;
public static final int SeaLampFlyLampReq = 2174;
public static final int SeaLampFlyLampRsp = 2080;
public static final int SeaLampPopularityNotify = 2062;
public static final int SeaLampTakeContributionRewardReq = 2052;
public static final int SeaLampTakeContributionRewardRsp = 2057;
public static final int SeaLampTakePhaseRewardReq = 2109;
public static final int SeaLampTakePhaseRewardRsp = 2132;
public static final int SealBattleBeginNotify = 225;
public static final int SealBattleEndNotify = 249;
public static final int SealBattleProgressNotify = 285;
public static final int SeeMonsterReq = 299;
public static final int SeeMonsterRsp = 300;
public static final int SelectAsterMidDifficultyReq = 2019;
public static final int SelectAsterMidDifficultyRsp = 2003;
public static final int SelectEffigyChallengeConditionReq = 2143;
public static final int SelectEffigyChallengeConditionRsp = 2072;
public static final int SelectRoguelikeDungeonCardReq = 8964;
public static final int SelectRoguelikeDungeonCardRsp = 8572;
public static final int SelectWorktopOptionReq = 837;
public static final int SelectWorktopOptionRsp = 893;
public static final int ServerAnnounceNotify = 2199;
public static final int ServerAnnounceRevokeNotify = 2129;
public static final int ServerBuffChangeNotify = 332;
public static final int SceneGalleryInfoNotify = 5597;
public static final int SceneInitFinishReq = 237;
public static final int SceneInitFinishRsp = 232;
public static final int SceneKickPlayerNotify = 292;
public static final int SceneKickPlayerReq = 295;
public static final int SceneKickPlayerRsp = 215;
public static final int ScenePlayBattleInfoListNotify = 4447;
public static final int ScenePlayBattleInfoNotify = 4359;
public static final int ScenePlayBattleInterruptNotify = 4377;
public static final int ScenePlayBattleResultNotify = 4357;
public static final int ScenePlayBattleUidOpNotify = 4380;
public static final int ScenePlayerInfoNotify = 225;
public static final int ScenePlayerLocationNotify = 207;
public static final int ScenePlayerSoundNotify = 210;
public static final int ScenePlayGuestReplyInviteReq = 4435;
public static final int ScenePlayGuestReplyInviteRsp = 4385;
public static final int ScenePlayGuestReplyNotify = 4399;
public static final int ScenePlayInfoListNotify = 4405;
public static final int ScenePlayInviteResultNotify = 4432;
public static final int ScenePlayOutofRegionNotify = 4448;
public static final int ScenePlayOwnerCheckReq = 4381;
public static final int ScenePlayOwnerCheckRsp = 4391;
public static final int ScenePlayOwnerInviteNotify = 4367;
public static final int ScenePlayOwnerStartInviteReq = 4387;
public static final int ScenePlayOwnerStartInviteRsp = 4382;
public static final int ScenePointUnlockNotify = 290;
public static final int SceneRouteChangeNotify = 278;
public static final int SceneTeamUpdateNotify = 1699;
public static final int SceneTimeNotify = 262;
public static final int SceneTransToPointReq = 286;
public static final int SceneTransToPointRsp = 263;
public static final int SceneWeatherForcastReq = 3190;
public static final int SceneWeatherForcastRsp = 3063;
public static final int SeaLampCoinNotify = 2096;
public static final int SeaLampContributeItemReq = 2168;
public static final int SeaLampContributeItemRsp = 2159;
public static final int SeaLampFlyLampNotify = 2051;
public static final int SeaLampFlyLampReq = 2071;
public static final int SeaLampFlyLampRsp = 2019;
public static final int SeaLampPopularityNotify = 2112;
public static final int SeaLampTakeContributionRewardReq = 2069;
public static final int SeaLampTakeContributionRewardRsp = 2103;
public static final int SeaLampTakePhaseRewardReq = 2092;
public static final int SeaLampTakePhaseRewardRsp = 2160;
public static final int SealBattleBeginNotify = 273;
public static final int SealBattleEndNotify = 261;
public static final int SealBattleProgressNotify = 288;
public static final int SeeMonsterReq = 281;
public static final int SeeMonsterRsp = 264;
public static final int SelectAsterMidDifficultyReq = 2190;
public static final int SelectAsterMidDifficultyRsp = 2010;
public static final int SelectEffigyChallengeConditionReq = 2111;
public static final int SelectEffigyChallengeConditionRsp = 2068;
public static final int SelectRoguelikeDungeonCardReq = 8070;
public static final int SelectRoguelikeDungeonCardRsp = 8040;
public static final int SelectWorktopOptionReq = 832;
public static final int SelectWorktopOptionRsp = 817;
public static final int ServerAnnounceNotify = 2029;
public static final int ServerAnnounceRevokeNotify = 2141;
public static final int ServerBuffChangeNotify = 393;
public static final int ServerCondMeetQuestListUpdateNotify = 401;
public static final int ServerDisconnectClientNotify = 186;
public static final int ServerGlobalValueChangeNotify = 1188;
public static final int ServerLogNotify = 79;
public static final int ServerMessageNotify = 5725;
public static final int ServerTimeNotify = 34;
public static final int ServerUpdateGlobalValueNotify = 1197;
public static final int ServerDisconnectClientNotify = 166;
public static final int ServerGlobalValueChangeNotify = 1130;
public static final int ServerLogNotify = 55;
public static final int ServerMessageNotify = 5709;
public static final int ServerTimeNotify = 82;
public static final int ServerUpdateGlobalValueNotify = 1107;
public static final int SetBattlePassViewedReq = 2637;
public static final int SetBattlePassViewedRsp = 2606;
public static final int SetChatEmojiCollectionReq = 4086;
public static final int SetChatEmojiCollectionRsp = 4077;
public static final int SetCoopChapterViewedReq = 1980;
public static final int SetCoopChapterViewedRsp = 1988;
public static final int SetCurExpeditionChallengeIdReq = 2017;
public static final int SetCurExpeditionChallengeIdRsp = 2099;
public static final int SetEntityClientDataNotify = 3303;
public static final int SetEquipLockStateReq = 635;
public static final int SetEquipLockStateRsp = 657;
public static final int SetFriendEnterHomeOptionReq = 4613;
public static final int SetFriendEnterHomeOptionRsp = 4724;
public static final int SetFriendRemarkNameReq = 4023;
public static final int SetFriendRemarkNameRsp = 4013;
public static final int SetH5ActivityRedDotTimestampReq = 5698;
public static final int SetH5ActivityRedDotTimestampRsp = 5663;
public static final int SetIsAutoUnlockSpecificEquipReq = 687;
public static final int SetIsAutoUnlockSpecificEquipRsp = 604;
public static final int SetLimitOptimizationNotify = 8189;
public static final int SetNameCardReq = 4089;
public static final int SetNameCardRsp = 4009;
public static final int SetOpenStateReq = 162;
public static final int SetOpenStateRsp = 189;
public static final int SetPlayerBirthdayReq = 4097;
public static final int SetPlayerBirthdayRsp = 4088;
public static final int SetPlayerBornDataReq = 155;
public static final int SetPlayerBornDataRsp = 146;
public static final int SetPlayerHeadImageReq = 4046;
public static final int SetPlayerHeadImageRsp = 4074;
public static final int SetPlayerNameReq = 183;
public static final int SetPlayerNameRsp = 126;
public static final int SetPlayerPropReq = 188;
public static final int SetPlayerPropRsp = 128;
public static final int SetPlayerSignatureReq = 4028;
public static final int SetPlayerSignatureRsp = 4055;
public static final int SetSceneWeatherAreaReq = 271;
public static final int SetSceneWeatherAreaRsp = 205;
public static final int SetUpAvatarTeamReq = 1671;
public static final int SetUpAvatarTeamRsp = 1634;
public static final int SetUpLunchBoxWidgetReq = 4286;
public static final int SetUpLunchBoxWidgetRsp = 4293;
public static final int SetWidgetSlotReq = 4266;
public static final int SetWidgetSlotRsp = 4279;
public static final int ShowClientGuideNotify = 3190;
public static final int ShowClientTutorialNotify = 3374;
public static final int ShowCommonTipsNotify = 3277;
public static final int ShowMessageNotify = 15;
public static final int ShowTemplateReminderNotify = 3164;
public static final int SignInInfoReq = 2510;
public static final int SignInInfoRsp = 2515;
public static final int SocialDataNotify = 4063;
public static final int SpringUseReq = 1720;
public static final int SpringUseRsp = 1727;
public static final int StartArenaChallengeLevelReq = 2022;
public static final int StartArenaChallengeLevelRsp = 2033;
public static final int StartBuoyantCombatGalleryReq = 8313;
public static final int StartBuoyantCombatGalleryRsp = 8754;
public static final int StartCoopPointReq = 1956;
public static final int StartCoopPointRsp = 1962;
public static final int StartEffigyChallengeReq = 2123;
public static final int StartEffigyChallengeRsp = 2166;
public static final int StartFishingReq = 5845;
public static final int StartFishingRsp = 5848;
public static final int StartRogueEliteCellChallengeReq = 8620;
public static final int StartRogueEliteCellChallengeRsp = 8198;
public static final int StartRogueNormalCellChallengeReq = 8748;
public static final int StartRogueNormalCellChallengeRsp = 8630;
public static final int StoreItemChangeNotify = 610;
public static final int StoreItemDelNotify = 615;
public static final int StoreWeightLimitNotify = 633;
public static final int SummerTimeFloatSignalPositionNotify = 8389;
public static final int SummerTimeFloatSignalUpdateNotify = 8763;
public static final int SummerTimeSprintBoatRestartReq = 8682;
public static final int SummerTimeSprintBoatRestartRsp = 8562;
public static final int SummerTimeSprintBoatSettleNotify = 8150;
public static final int SumoDungeonSettleNotify = 8946;
public static final int SumoEnterDungeonNotify = 8540;
public static final int SumoLeaveDungeonNotify = 8460;
public static final int SumoRestartDungeonReq = 8602;
public static final int SumoRestartDungeonRsp = 8498;
public static final int SumoSaveTeamReq = 8874;
public static final int SumoSaveTeamRsp = 8287;
public static final int SumoSelectTeamAndEnterDungeonReq = 8605;
public static final int SumoSelectTeamAndEnterDungeonRsp = 8998;
public static final int SumoSetNoSwitchPunishTimeNotify = 8804;
public static final int SumoSwitchTeamReq = 8718;
public static final int SumoSwitchTeamRsp = 8356;
public static final int SyncScenePlayTeamEntityNotify = 3296;
public static final int SyncTeamEntityNotify = 338;
public static final int TakeAchievementGoalRewardReq = 2695;
public static final int TakeAchievementGoalRewardRsp = 2698;
public static final int TakeAchievementRewardReq = 2685;
public static final int TakeAchievementRewardRsp = 2675;
public static final int TakeAsterSpecialRewardReq = 2051;
public static final int TakeAsterSpecialRewardRsp = 2041;
public static final int TakeBattlePassMissionPointReq = 2617;
public static final int TakeBattlePassMissionPointRsp = 2636;
public static final int TakeBattlePassRewardReq = 2613;
public static final int TakeBattlePassRewardRsp = 2601;
public static final int TakeCityReputationExploreRewardReq = 2888;
public static final int TakeCityReputationExploreRewardRsp = 2828;
public static final int TakeCityReputationLevelRewardReq = 2810;
public static final int TakeCityReputationLevelRewardRsp = 2815;
public static final int TakeCityReputationParentQuestReq = 2893;
public static final int TakeCityReputationParentQuestRsp = 2844;
public static final int TakeCompoundOutputReq = 108;
public static final int TakeCompoundOutputRsp = 117;
public static final int TakeCoopRewardReq = 1996;
public static final int TakeCoopRewardRsp = 1981;
public static final int TakeDeliveryDailyRewardReq = 2055;
public static final int TakeDeliveryDailyRewardRsp = 2104;
public static final int TakeEffigyFirstPassRewardReq = 2071;
public static final int TakeEffigyFirstPassRewardRsp = 2034;
public static final int TakeEffigyRewardReq = 2113;
public static final int TakeEffigyRewardRsp = 2008;
public static final int TakeFirstShareRewardReq = 4008;
public static final int TakeFirstShareRewardRsp = 4017;
public static final int TakeFurnitureMakeReq = 4751;
public static final int TakeFurnitureMakeRsp = 4457;
public static final int TakeHuntingOfferReq = 4750;
public static final int TakeHuntingOfferRsp = 4782;
public static final int TakeInvestigationRewardReq = 1926;
public static final int TakeInvestigationRewardRsp = 1925;
public static final int TakeInvestigationTargetRewardReq = 1915;
public static final int TakeInvestigationTargetRewardRsp = 1929;
public static final int TakeMaterialDeleteReturnReq = 651;
public static final int TakeMaterialDeleteReturnRsp = 684;
public static final int TakeoffEquipReq = 655;
public static final int TakeoffEquipRsp = 646;
public static final int TakeOfferingLevelRewardReq = 2921;
public static final int TakeOfferingLevelRewardRsp = 2910;
public static final int TakePlayerLevelRewardReq = 151;
public static final int TakePlayerLevelRewardRsp = 184;
public static final int TakeRegionSearchRewardReq = 5645;
public static final int TakeRegionSearchRewardRsp = 5648;
public static final int TakeResinCardDailyRewardReq = 4136;
public static final int TakeResinCardDailyRewardRsp = 4143;
public static final int TakeReunionFirstGiftRewardReq = 5095;
public static final int TakeReunionFirstGiftRewardRsp = 5098;
public static final int TakeReunionMissionRewardReq = 5056;
public static final int TakeReunionMissionRewardRsp = 5062;
public static final int TakeReunionSignInRewardReq = 5067;
public static final int TakeReunionSignInRewardRsp = 5086;
public static final int TakeReunionWatcherRewardReq = 5065;
public static final int TakeReunionWatcherRewardRsp = 5077;
public static final int TaskVarNotify = 178;
public static final int TeamResonanceChangeNotify = 1046;
public static final int TowerAllDataReq = 2445;
public static final int TowerAllDataRsp = 2475;
public static final int TowerBriefDataNotify = 2460;
public static final int TowerBuffSelectReq = 2497;
public static final int TowerBuffSelectRsp = 2488;
public static final int TowerCurLevelRecordChangeNotify = 2410;
public static final int TowerDailyRewardProgressChangeNotify = 2415;
public static final int TowerEnterLevelReq = 2479;
public static final int TowerEnterLevelRsp = 2491;
public static final int TowerFloorRecordChangeNotify = 2433;
public static final int TowerGetFloorStarRewardReq = 2489;
public static final int TowerGetFloorStarRewardRsp = 2409;
public static final int TowerLevelEndNotify = 2464;
public static final int SetBattlePassViewedRsp = 2632;
public static final int SetChatEmojiCollectionReq = 4066;
public static final int SetChatEmojiCollectionRsp = 4048;
public static final int SetCoopChapterViewedReq = 1956;
public static final int SetCoopChapterViewedRsp = 1998;
public static final int SetCurExpeditionChallengeIdReq = 2130;
public static final int SetCurExpeditionChallengeIdRsp = 2093;
public static final int SetEntityClientDataNotify = 3375;
public static final int SetEquipLockStateReq = 604;
public static final int SetEquipLockStateRsp = 605;
public static final int SetFriendEnterHomeOptionReq = 4761;
public static final int SetFriendEnterHomeOptionRsp = 4590;
public static final int SetFriendRemarkNameReq = 4070;
public static final int SetFriendRemarkNameRsp = 4029;
public static final int SetH5ActivityRedDotTimestampReq = 5654;
public static final int SetH5ActivityRedDotTimestampRsp = 5678;
public static final int SetIsAutoUnlockSpecificEquipReq = 639;
public static final int SetIsAutoUnlockSpecificEquipRsp = 695;
public static final int SetLimitOptimizationNotify = 8194;
public static final int SetNameCardReq = 4006;
public static final int SetNameCardRsp = 4019;
public static final int SetOpenStateReq = 138;
public static final int SetOpenStateRsp = 106;
public static final int SetPlayerBirthdayReq = 4007;
public static final int SetPlayerBirthdayRsp = 4030;
public static final int SetPlayerBornDataReq = 198;
public static final int SetPlayerBornDataRsp = 145;
public static final int SetPlayerHeadImageReq = 4045;
public static final int SetPlayerHeadImageRsp = 4090;
public static final int SetPlayerNameReq = 163;
public static final int SetPlayerNameRsp = 124;
public static final int SetPlayerPropReq = 130;
public static final int SetPlayerPropRsp = 197;
public static final int SetPlayerSignatureReq = 4097;
public static final int SetPlayerSignatureRsp = 4098;
public static final int SetSceneWeatherAreaReq = 256;
public static final int SetSceneWeatherAreaRsp = 265;
public static final int SetUpAvatarTeamReq = 1753;
public static final int SetUpAvatarTeamRsp = 1664;
public static final int SetUpLunchBoxWidgetReq = 4297;
public static final int SetUpLunchBoxWidgetRsp = 4266;
public static final int SetWidgetSlotReq = 4269;
public static final int SetWidgetSlotRsp = 4260;
public static final int ShowClientGuideNotify = 3241;
public static final int ShowClientTutorialNotify = 3079;
public static final int ShowCommonTipsNotify = 3357;
public static final int ShowMessageNotify = 37;
public static final int ShowTemplateReminderNotify = 3011;
public static final int SignInInfoReq = 2541;
public static final int SignInInfoRsp = 2537;
public static final int SocialDataNotify = 4054;
public static final int SpringUseReq = 1623;
public static final int SpringUseRsp = 1733;
public static final int StartArenaChallengeLevelReq = 2154;
public static final int StartArenaChallengeLevelRsp = 2191;
public static final int StartBuoyantCombatGalleryReq = 9000;
public static final int StartBuoyantCombatGalleryRsp = 8364;
public static final int StartCoopPointReq = 1982;
public static final int StartCoopPointRsp = 1964;
public static final int StartEffigyChallengeReq = 2157;
public static final int StartEffigyChallengeRsp = 2008;
public static final int StartFishingReq = 5843;
public static final int StartFishingRsp = 5804;
public static final int StartRogueEliteCellChallengeReq = 8722;
public static final int StartRogueEliteCellChallengeRsp = 8876;
public static final int StartRogueNormalCellChallengeReq = 8456;
public static final int StartRogueNormalCellChallengeRsp = 8156;
public static final int StoreItemChangeNotify = 641;
public static final int StoreItemDelNotify = 637;
public static final int StoreWeightLimitNotify = 631;
public static final int SummerTimeFloatSignalPositionNotify = 8622;
public static final int SummerTimeFloatSignalUpdateNotify = 8333;
public static final int SummerTimeSprintBoatRestartReq = 8175;
public static final int SummerTimeSprintBoatRestartRsp = 8563;
public static final int SummerTimeSprintBoatSettleNotify = 8117;
public static final int SumoDungeonSettleNotify = 8426;
public static final int SumoEnterDungeonNotify = 8727;
public static final int SumoLeaveDungeonNotify = 8440;
public static final int SumoRestartDungeonReq = 8585;
public static final int SumoRestartDungeonRsp = 8628;
public static final int SumoSaveTeamReq = 8970;
public static final int SumoSaveTeamRsp = 8890;
public static final int SumoSelectTeamAndEnterDungeonReq = 8030;
public static final int SumoSelectTeamAndEnterDungeonRsp = 8915;
public static final int SumoSetNoSwitchPunishTimeNotify = 8269;
public static final int SumoSwitchTeamReq = 8400;
public static final int SumoSwitchTeamRsp = 8442;
public static final int SyncScenePlayTeamEntityNotify = 3096;
public static final int SyncTeamEntityNotify = 334;
public static final int TakeAchievementGoalRewardReq = 2678;
public static final int TakeAchievementGoalRewardRsp = 2653;
public static final int TakeAchievementRewardReq = 2693;
public static final int TakeAchievementRewardRsp = 2654;
public static final int TakeAsterSpecialRewardReq = 2174;
public static final int TakeAsterSpecialRewardRsp = 2035;
public static final int TakeBattlePassMissionPointReq = 2626;
public static final int TakeBattlePassMissionPointRsp = 2647;
public static final int TakeBattlePassRewardReq = 2628;
public static final int TakeBattlePassRewardRsp = 2603;
public static final int TakeCityReputationExploreRewardReq = 2830;
public static final int TakeCityReputationExploreRewardRsp = 2897;
public static final int TakeCityReputationLevelRewardReq = 2841;
public static final int TakeCityReputationLevelRewardRsp = 2837;
public static final int TakeCityReputationParentQuestReq = 2817;
public static final int TakeCityReputationParentQuestRsp = 2885;
public static final int TakeCompoundOutputReq = 146;
public static final int TakeCompoundOutputRsp = 133;
public static final int TakeCoopRewardReq = 1977;
public static final int TakeCoopRewardRsp = 1965;
public static final int TakeDeliveryDailyRewardReq = 2037;
public static final int TakeDeliveryDailyRewardRsp = 2083;
public static final int TakeEffigyFirstPassRewardReq = 2200;
public static final int TakeEffigyFirstPassRewardRsp = 2073;
public static final int TakeEffigyRewardReq = 2062;
public static final int TakeEffigyRewardRsp = 2110;
public static final int TakeFirstShareRewardReq = 4046;
public static final int TakeFirstShareRewardRsp = 4033;
public static final int TakeFurnitureMakeReq = 4768;
public static final int TakeFurnitureMakeRsp = 4599;
public static final int TakeHuntingOfferReq = 4318;
public static final int TakeHuntingOfferRsp = 4309;
public static final int TakeInvestigationRewardReq = 1925;
public static final int TakeInvestigationRewardRsp = 1903;
public static final int TakeInvestigationTargetRewardReq = 1901;
public static final int TakeInvestigationTargetRewardRsp = 1908;
public static final int TakeMaterialDeleteReturnReq = 660;
public static final int TakeMaterialDeleteReturnRsp = 677;
public static final int TakeoffEquipReq = 698;
public static final int TakeoffEquipRsp = 645;
public static final int TakeOfferingLevelRewardReq = 2903;
public static final int TakeOfferingLevelRewardRsp = 2902;
public static final int TakePlayerLevelRewardReq = 160;
public static final int TakePlayerLevelRewardRsp = 177;
public static final int TakeRegionSearchRewardReq = 5643;
public static final int TakeRegionSearchRewardRsp = 5604;
public static final int TakeResinCardDailyRewardReq = 4147;
public static final int TakeResinCardDailyRewardRsp = 4116;
public static final int TakeReunionFirstGiftRewardReq = 5093;
public static final int TakeReunionFirstGiftRewardRsp = 5054;
public static final int TakeReunionMissionRewardReq = 5082;
public static final int TakeReunionMissionRewardRsp = 5064;
public static final int TakeReunionSignInRewardReq = 5076;
public static final int TakeReunionSignInRewardRsp = 5097;
public static final int TakeReunionWatcherRewardReq = 5052;
public static final int TakeReunionWatcherRewardRsp = 5063;
public static final int TaskVarNotify = 191;
public static final int TeamResonanceChangeNotify = 1045;
public static final int TowerAllDataReq = 2435;
public static final int TowerAllDataRsp = 2449;
public static final int TowerBriefDataNotify = 2409;
public static final int TowerBuffSelectReq = 2407;
public static final int TowerBuffSelectRsp = 2430;
public static final int TowerCurLevelRecordChangeNotify = 2441;
public static final int TowerDailyRewardProgressChangeNotify = 2437;
public static final int TowerEnterLevelReq = 2455;
public static final int TowerEnterLevelRsp = 2427;
public static final int TowerFloorRecordChangeNotify = 2431;
public static final int TowerGetFloorStarRewardReq = 2406;
public static final int TowerGetFloorStarRewardRsp = 2419;
public static final int TowerLevelEndNotify = 2442;
public static final int TowerLevelStarCondNotify = 2401;
public static final int TowerMiddleLevelChangeTeamNotify = 2466;
public static final int TowerRecordHandbookReq = 2473;
public static final int TowerRecordHandbookRsp = 2463;
public static final int TowerSurrenderReq = 2426;
public static final int TowerSurrenderRsp = 2462;
public static final int TowerTeamSelectReq = 2493;
public static final int TowerTeamSelectRsp = 2444;
public static final int TreasureMapBonusChallengeNotify = 2121;
public static final int TreasureMapCurrencyNotify = 2127;
public static final int TreasureMapDetectorDataNotify = 4272;
public static final int TreasureMapGuideTaskDoneNotify = 2200;
public static final int TreasureMapHostInfoNotify = 8960;
public static final int TreasureMapMpChallengeNotify = 2177;
public static final int TreasureMapPreTaskDoneNotify = 2188;
public static final int TreasureMapRegionActiveNotify = 2141;
public static final int TreasureMapRegionInfoNotify = 2120;
public static final int TrialAvatarFirstPassDungeonNotify = 2093;
public static final int TrialAvatarInDungeonIndexNotify = 2138;
public static final int TriggerCreateGadgetToEquipPartNotify = 373;
public static final int TriggerRoguelikeCurseNotify = 8878;
public static final int TriggerRoguelikeRuneReq = 8607;
public static final int TriggerRoguelikeRuneRsp = 8246;
public static final int TryEnterHomeReq = 4622;
public static final int TryEnterHomeRsp = 4731;
public static final int UnfreezeGroupLimitNotify = 3401;
public static final int UnionCmdNotify = 55;
public static final int UnlockAvatarTalentReq = 1060;
public static final int UnlockAvatarTalentRsp = 1033;
public static final int UnlockCoopChapterReq = 1965;
public static final int UnlockCoopChapterRsp = 1977;
public static final int UnlockedFurnitureFormulaDataNotify = 4700;
public static final int UnlockedFurnitureSuiteDataNotify = 4788;
public static final int TowerMiddleLevelChangeTeamNotify = 2411;
public static final int TowerRecordHandbookReq = 2422;
public static final int TowerRecordHandbookRsp = 2454;
public static final int TowerSurrenderReq = 2424;
public static final int TowerSurrenderRsp = 2438;
public static final int TowerTeamSelectReq = 2417;
public static final int TowerTeamSelectRsp = 2485;
public static final int TreasureMapBonusChallengeNotify = 2075;
public static final int TreasureMapCurrencyNotify = 2098;
public static final int TreasureMapDetectorDataNotify = 4291;
public static final int TreasureMapGuideTaskDoneNotify = 2088;
public static final int TreasureMapHostInfoNotify = 8206;
public static final int TreasureMapMpChallengeNotify = 2036;
public static final int TreasureMapPreTaskDoneNotify = 2055;
public static final int TreasureMapRegionActiveNotify = 2059;
public static final int TreasureMapRegionInfoNotify = 2106;
public static final int TrialAvatarFirstPassDungeonNotify = 2137;
public static final int TrialAvatarInDungeonIndexNotify = 2024;
public static final int TriggerCreateGadgetToEquipPartNotify = 322;
public static final int TriggerRoguelikeCurseNotify = 8235;
public static final int TriggerRoguelikeRuneReq = 8138;
public static final int TriggerRoguelikeRuneRsp = 8781;
public static final int TryEnterHomeReq = 4553;
public static final int TryEnterHomeRsp = 4610;
public static final int UnfreezeGroupLimitNotify = 3253;
public static final int UnionCmdNotify = 98;
public static final int UnlockAvatarTalentReq = 1009;
public static final int UnlockAvatarTalentRsp = 1031;
public static final int UnlockCoopChapterReq = 1952;
public static final int UnlockCoopChapterRsp = 1963;
public static final int UnlockedFurnitureFormulaDataNotify = 4680;
public static final int UnlockedFurnitureSuiteDataNotify = 4717;
public static final int UnlockNameCardNotify = 4001;
public static final int UnlockPersonalLineReq = 402;
public static final int UnlockPersonalLineRsp = 452;
public static final int UnlockTransPointReq = 3421;
public static final int UnlockTransPointRsp = 3073;
public static final int UnmarkEntityInMinMapNotify = 247;
public static final int UpdateAbilityCreatedMovingPlatformNotify = 828;
public static final int UpdatePlayerShowAvatarListReq = 4036;
public static final int UpdatePlayerShowAvatarListRsp = 4024;
public static final int UpdatePlayerShowNameCardListReq = 4030;
public static final int UpdatePlayerShowNameCardListRsp = 4047;
public static final int UpdatePS4BlockListReq = 4081;
public static final int UpdatePS4BlockListRsp = 4027;
public static final int UpdatePS4FriendListNotify = 4056;
public static final int UpdatePS4FriendListReq = 4025;
public static final int UpdatePS4FriendListRsp = 4049;
public static final int UpdateRedPointNotify = 9;
public static final int UnlockPersonalLineReq = 476;
public static final int UnlockPersonalLineRsp = 472;
public static final int UnlockTransPointReq = 3228;
public static final int UnlockTransPointRsp = 3101;
public static final int UnmarkEntityInMinMapNotify = 216;
public static final int UpdateAbilityCreatedMovingPlatformNotify = 897;
public static final int UpdatePlayerShowAvatarListReq = 4025;
public static final int UpdatePlayerShowAvatarListRsp = 4083;
public static final int UpdatePlayerShowNameCardListReq = 4002;
public static final int UpdatePlayerShowNameCardListRsp = 4016;
public static final int UpdatePS4BlockListReq = 4036;
public static final int UpdatePS4BlockListRsp = 4028;
public static final int UpdatePS4FriendListNotify = 4086;
public static final int UpdatePS4FriendListReq = 4073;
public static final int UpdatePS4FriendListRsp = 4061;
public static final int UpdateRedPointNotify = 19;
public static final int UpdateReunionWatcherNotify = 5087;
public static final int UpgradeRoguelikeShikigamiReq = 8575;
public static final int UpgradeRoguelikeShikigamiRsp = 8440;
public static final int UseItemReq = 645;
public static final int UseItemRsp = 675;
public static final int UseMiracleRingReq = 5235;
public static final int UseMiracleRingRsp = 5225;
public static final int UseWidgetCreateGadgetReq = 4278;
public static final int UseWidgetCreateGadgetRsp = 4290;
public static final int UseWidgetRetractGadgetReq = 4255;
public static final int UseWidgetRetractGadgetRsp = 4297;
public static final int VehicleInteractReq = 862;
public static final int VehicleInteractRsp = 889;
public static final int VehicleSpawnReq = 809;
public static final int VehicleSpawnRsp = 865;
public static final int VehicleStaminaNotify = 866;
public static final int ViewCodexReq = 4210;
public static final int ViewCodexRsp = 4209;
public static final int WatcherAllDataNotify = 2260;
public static final int WatcherChangeNotify = 2233;
public static final int WatcherEventNotify = 2210;
public static final int WatcherEventTypeNotify = 2215;
public static final int WaterSpritePhaseFinishNotify = 2097;
public static final int WeaponAwakenReq = 664;
public static final int UpgradeRoguelikeShikigamiReq = 8422;
public static final int UpgradeRoguelikeShikigamiRsp = 8671;
public static final int UseItemReq = 635;
public static final int UseItemRsp = 649;
public static final int UseMiracleRingReq = 5218;
public static final int UseMiracleRingRsp = 5209;
public static final int UseWidgetCreateGadgetReq = 4283;
public static final int UseWidgetCreateGadgetRsp = 4279;
public static final int UseWidgetRetractGadgetReq = 4290;
public static final int UseWidgetRetractGadgetRsp = 4271;
public static final int VehicleInteractReq = 838;
public static final int VehicleInteractRsp = 806;
public static final int VehicleStaminaNotify = 811;
public static final int ViewCodexReq = 4203;
public static final int ViewCodexRsp = 4202;
public static final int WatcherAllDataNotify = 2209;
public static final int WatcherChangeNotify = 2231;
public static final int WatcherEventNotify = 2241;
public static final int WatcherEventTypeNotify = 2237;
public static final int WaterSpritePhaseFinishNotify = 2028;
public static final int WeaponAwakenReq = 642;
public static final int WeaponAwakenRsp = 601;
public static final int WeaponPromoteReq = 626;
public static final int WeaponPromoteRsp = 662;
public static final int WeaponUpgradeReq = 656;
public static final int WeaponUpgradeRsp = 683;
public static final int WearEquipReq = 688;
public static final int WearEquipRsp = 628;
public static final int WidgetActiveChangeNotify = 4273;
public static final int WidgetCoolDownNotify = 4277;
public static final int WidgetDoBagReq = 4269;
public static final int WidgetDoBagRsp = 4270;
public static final int WidgetGadgetAllDataNotify = 4260;
public static final int WidgetGadgetDataNotify = 4268;
public static final int WidgetGadgetDestroyNotify = 4282;
public static final int WeaponPromoteReq = 624;
public static final int WeaponPromoteRsp = 638;
public static final int WeaponUpgradeReq = 686;
public static final int WeaponUpgradeRsp = 663;
public static final int WearEquipReq = 630;
public static final int WearEquipRsp = 697;
public static final int WidgetActiveChangeNotify = 4295;
public static final int WidgetCoolDownNotify = 4263;
public static final int WidgetDoBagReq = 4284;
public static final int WidgetDoBagRsp = 4286;
public static final int WidgetGadgetAllDataNotify = 4285;
public static final int WidgetGadgetDataNotify = 4292;
public static final int WidgetGadgetDestroyNotify = 4275;
public static final int WidgetReportReq = 4287;
public static final int WidgetReportRsp = 4256;
public static final int WidgetSlotChangeNotify = 4299;
public static final int WidgetUseAttachAbilityGroupChangeNotify = 4257;
public static final int WindSeedClientNotify = 1134;
public static final int WorktopOptionNotify = 815;
public static final int WorldAllRoutineTypeNotify = 3525;
public static final int WorldDataNotify = 3330;
public static final int WorldOwnerBlossomBriefInfoNotify = 2715;
public static final int WorldOwnerBlossomScheduleInfoNotify = 2737;
public static final int WorldOwnerDailyTaskNotify = 130;
public static final int WorldPlayerDieNotify = 211;
public static final int WorldPlayerInfoNotify = 3088;
public static final int WorldPlayerLocationNotify = 224;
public static final int WorldPlayerReviveReq = 216;
public static final int WorldPlayerReviveRsp = 222;
public static final int WorldPlayerRTTNotify = 26;
public static final int WorldRoutineChangeNotify = 3548;
public static final int WorldRoutineTypeCloseNotify = 3513;
public static final int WorldRoutineTypeRefreshNotify = 3545;
public static final int WidgetReportRsp = 4282;
public static final int WidgetSlotChangeNotify = 4274;
public static final int WidgetUseAttachAbilityGroupChangeNotify = 4299;
public static final int WindSeedClientNotify = 1182;
public static final int WorktopOptionNotify = 837;
public static final int WorldAllRoutineTypeNotify = 3509;
public static final int WorldDataNotify = 3131;
public static final int WorldOwnerBlossomBriefInfoNotify = 2737;
public static final int WorldOwnerBlossomScheduleInfoNotify = 2732;
public static final int WorldOwnerDailyTaskNotify = 102;
public static final int WorldPlayerDieNotify = 296;
public static final int WorldPlayerInfoNotify = 3304;
public static final int WorldPlayerLocationNotify = 283;
public static final int WorldPlayerReviveReq = 247;
public static final int WorldPlayerReviveRsp = 280;
public static final int WorldPlayerRTTNotify = 24;
public static final int WorldRoutineChangeNotify = 3504;
public static final int WorldRoutineTypeCloseNotify = 3528;
public static final int WorldRoutineTypeRefreshNotify = 3543;
// Unknown
public static final int UNKNOWN = 2013;
public static final int UNKNOWN_1 = 2042;
public static final int UNKNOWN_2 = 343;
public static final int UNKNOWN_3 = 4259;
public static final int UNKNOWN_4 = 4261;
public static final int UNKNOWN_5 = 4306;
public static final int UNKNOWN_6 = 4315;
public static final int UNKNOWN_7 = 4317;
public static final int UNKNOWN_8 = 4326;
public static final int UNKNOWN_9 = 4327;
public static final int UNKNOWN_10 = 4336;
public static final int UNKNOWN_11 = 4337;
public static final int UNKNOWN_12 = 4343;
public static final int UNKNOWN_13 = 5932;
public static final int UNKNOWN_14 = 5959;
public static final int UNKNOWN_15 = 67;
public static final int UNKNOWN_16 = 8010;
public static final int UNKNOWN_17 = 8024;
public static final int UNKNOWN_18 = 8050;
public static final int UNKNOWN_19 = 8077;
public static final int UNKNOWN_20 = 8083;
public static final int UNKNOWN_21 = 8114;
public static final int UNKNOWN_22 = 8154;
public static final int UNKNOWN_23 = 8157;
public static final int UNKNOWN_24 = 8188;
public static final int UNKNOWN_25 = 8190;
public static final int UNKNOWN_26 = 8210;
public static final int UNKNOWN_27 = 8385;
public static final int UNKNOWN_28 = 8405;
public static final int UNKNOWN_29 = 8420;
public static final int UNKNOWN_30 = 8421;
public static final int UNKNOWN_31 = 8429;
public static final int UNKNOWN_32 = 8437;
public static final int UNKNOWN_33 = 8439;
public static final int UNKNOWN_34 = 8461;
public static final int UNKNOWN_35 = 8502;
public static final int UNKNOWN_36 = 8559;
public static final int UNKNOWN_37 = 8580;
public static final int UNKNOWN_38 = 8604;
public static final int UNKNOWN_39 = 8710;
public static final int UNKNOWN_40 = 8761;
public static final int UNKNOWN_41 = 8787;
public static final int UNKNOWN_42 = 8830;
public static final int UNKNOWN_43 = 8877;
public static final int UNKNOWN_44 = 8983;
public static final int UNKNOWN_45 = 943;
public static final List<Integer> BANNED_PACKETS = Arrays.asList(PacketOpcodes.WindSeedClientNotify, PacketOpcodes.PlayerLuaShellNotify);
public static final HashSet<Integer> BANNED_PACKETS = new HashSet<Integer>() {{
add(PacketOpcodes.WindSeedClientNotify);
add(PacketOpcodes.PlayerLuaShellNotify);
}};
}
......@@ -17,6 +17,7 @@ public class PacketOpcodesUtil {
Field[] fields = PacketOpcodes.class.getFields();
for (Field f : fields) {
if(f.getType().equals(int.class)) {
try {
opcodeMap.put(f.getInt(null), f.getName());
} catch (Exception e) {
......@@ -24,6 +25,7 @@ public class PacketOpcodesUtil {
}
}
}
}
public static String getOpcodeName(int opcode) {
if (opcode <= 0) return "UNKNOWN";
......
......@@ -3,11 +3,15 @@ package emu.grasscutter.plugin;
import emu.grasscutter.Grasscutter;
import emu.grasscutter.plugin.api.ServerHook;
import emu.grasscutter.server.game.GameServer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.File;
import java.io.InputStream;
import java.net.URLClassLoader;
import static emu.grasscutter.Configuration.*;
/**
* The base class for all plugins to extend.
*/
......@@ -17,6 +21,7 @@ public abstract class Plugin {
private PluginIdentifier identifier;
private URLClassLoader classLoader;
private File dataFolder;
private Logger logger;
/**
* This method is reflected into.
......@@ -32,7 +37,8 @@ public abstract class Plugin {
this.identifier = identifier;
this.classLoader = classLoader;
this.dataFolder = new File(Grasscutter.getConfig().PLUGINS_FOLDER, identifier.name);
this.dataFolder = new File(PLUGIN(), identifier.name);
this.logger = LoggerFactory.getLogger(identifier.name);
if(!this.dataFolder.exists() && !this.dataFolder.mkdirs()) {
Grasscutter.getLogger().warn("Failed to create plugin data folder for " + this.identifier.name);
......@@ -102,6 +108,14 @@ public abstract class Plugin {
return this.server;
}
/**
* Returns the plugin's logger.
* @return A SLF4J logger.
*/
public final Logger getLogger() {
return this.logger;
}
/* Called when the plugin is first loaded. */
public void onLoad() { }
/* Called after (most of) the server enables. */
......
......@@ -7,6 +7,7 @@ import emu.grasscutter.server.event.HandlerPriority;
import emu.grasscutter.utils.Utils;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.InputStreamReader;
import java.lang.reflect.Method;
import java.net.MalformedURLException;
......@@ -16,6 +17,8 @@ import java.util.*;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
import static emu.grasscutter.Configuration.*;
/**
* Manages the server's plugins and the event system.
*/
......@@ -31,8 +34,7 @@ public final class PluginManager {
* Loads plugins from the config-specified directory.
*/
private void loadPlugins() {
String directory = Grasscutter.getConfig().PLUGINS_FOLDER;
File pluginsDir = new File(Utils.toFilePath(directory));
File pluginsDir = new File(Utils.toFilePath(PLUGIN()));
if(!pluginsDir.exists() && !pluginsDir.mkdirs()) {
Grasscutter.getLogger().error("Failed to create plugins directory: " + pluginsDir.getAbsolutePath());
return;
......@@ -89,6 +91,8 @@ public final class PluginManager {
fileReader.close(); // Close the file reader.
} catch (ClassNotFoundException ignored) {
Grasscutter.getLogger().warn("Plugin " + plugin.getName() + " has an invalid main class.");
} catch (FileNotFoundException ignored) {
Grasscutter.getLogger().warn("Plugin " + plugin.getName() + " lacks a valid config file.");
}
} catch (Exception exception) {
Grasscutter.getLogger().error("Failed to load plugin: " + plugin.getName(), exception);
......
......@@ -83,7 +83,7 @@ public final class PlayerHook {
public void teleport(Position position) {
this.player.getPos().set(position);
this.player.sendPacket(new PacketPlayerEnterSceneNotify(this.player,
EnterType.ENTER_JUMP, EnterReason.TransPoint,
EnterType.ENTER_TYPE_JUMP, EnterReason.TransPoint,
this.player.getSceneId(), position
));
}
......
package emu.grasscutter.plugin.api;
import emu.grasscutter.Grasscutter;
import emu.grasscutter.auth.AuthenticationSystem;
import emu.grasscutter.command.Command;
import emu.grasscutter.command.CommandHandler;
import emu.grasscutter.game.player.Player;
import emu.grasscutter.server.dispatch.DispatchServer;
import emu.grasscutter.server.game.GameServer;
import emu.grasscutter.server.http.HttpServer;
import emu.grasscutter.server.http.Router;
import java.util.LinkedList;
import java.util.List;
......@@ -15,7 +18,7 @@ import java.util.List;
public final class ServerHook {
private static ServerHook instance;
private final GameServer gameServer;
private final DispatchServer dispatchServer;
private final HttpServer httpServer;
/**
* Gets the server hook instance.
......@@ -28,11 +31,11 @@ public final class ServerHook {
/**
* Hooks into a server.
* @param gameServer The game server to hook into.
* @param dispatchServer The dispatch server to hook into.
* @param httpServer The HTTP server to hook into.
*/
public ServerHook(GameServer gameServer, DispatchServer dispatchServer) {
public ServerHook(GameServer gameServer, HttpServer httpServer) {
this.gameServer = gameServer;
this.dispatchServer = dispatchServer;
this.httpServer = httpServer;
instance = this;
}
......@@ -45,10 +48,10 @@ public final class ServerHook {
}
/**
* @return The dispatch server.
* @return The HTTP server.
*/
public DispatchServer getDispatchServer() {
return this.dispatchServer;
public HttpServer getHttpServer() {
return this.httpServer;
}
/**
......@@ -70,4 +73,28 @@ public final class ServerHook {
Command commandData = clazz.getAnnotation(Command.class);
this.gameServer.getCommandMap().registerCommand(commandData.label(), handler);
}
/**
* Adds a router using an instance of a class.
* @param router A router instance.
*/
public void addRouter(Router router) {
this.addRouter(router.getClass());
}
/**
* Adds a router using a class.
* @param router The class of the router.
*/
public void addRouter(Class<? extends Router> router) {
this.httpServer.addRouter(router);
}
/**
* Sets the server's authentication system.
* @param authSystem An instance of the authentication system.
*/
public void setAuthSystem(AuthenticationSystem authSystem) {
Grasscutter.setAuthenticationSystem(authSystem);
}
}
\ No newline at end of file
package emu.grasscutter.scripts;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.*;
import java.util.stream.Collectors;
import javax.script.Bindings;
import javax.script.CompiledScript;
import javax.script.ScriptException;
import org.luaj.vm2.LuaTable;
import emu.grasscutter.scripts.service.ScriptMonsterSpawnService;
import emu.grasscutter.scripts.service.ScriptMonsterTideService;
import org.luaj.vm2.LuaError;
import org.luaj.vm2.LuaValue;
import org.luaj.vm2.lib.jse.CoerceJavaToLua;
import emu.grasscutter.Grasscutter;
import emu.grasscutter.data.GameData;
import emu.grasscutter.data.def.MonsterData;
import emu.grasscutter.data.def.WorldLevelData;
import emu.grasscutter.game.entity.EntityGadget;
import emu.grasscutter.game.entity.EntityMonster;
import emu.grasscutter.game.entity.GameEntity;
import emu.grasscutter.game.props.EntityType;
import emu.grasscutter.game.world.Scene;
import emu.grasscutter.scripts.constants.EventType;
import emu.grasscutter.scripts.constants.ScriptGadgetState;
import emu.grasscutter.scripts.constants.ScriptRegionShape;
import emu.grasscutter.scripts.data.SceneBlock;
import emu.grasscutter.scripts.data.SceneConfig;
import emu.grasscutter.scripts.data.SceneGadget;
......@@ -43,27 +31,42 @@ import emu.grasscutter.scripts.data.ScriptArgs;
import it.unimi.dsi.fastutil.ints.Int2ObjectMap;
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
import static emu.grasscutter.Configuration.*;
public class SceneScriptManager {
private final Scene scene;
private final ScriptLib scriptLib;
private final LuaValue scriptLibLua;
private final Map<String, Integer> variables;
private Bindings bindings;
private SceneConfig config;
private List<SceneBlock> blocks;
private boolean isInit;
private final Int2ObjectOpenHashMap<Set<SceneTrigger>> triggers;
/**
* SceneTrigger Set
*/
private final Map<String, SceneTrigger> triggers;
/**
* current triggers controlled by RefreshGroup
*/
private final Int2ObjectOpenHashMap<Set<SceneTrigger>> currentTriggers;
private final Int2ObjectOpenHashMap<SceneRegion> regions;
private Map<Integer,SceneGroup> sceneGroups;
private SceneGroup currentGroup;
private ScriptMonsterTideService scriptMonsterTideService;
private ScriptMonsterSpawnService scriptMonsterSpawnService;
public SceneScriptManager(Scene scene) {
this.scene = scene;
this.scriptLib = new ScriptLib(this);
this.scriptLibLua = CoerceJavaToLua.coerce(this.scriptLib);
this.triggers = new Int2ObjectOpenHashMap<>();
this.triggers = new HashMap<>();
this.currentTriggers = new Int2ObjectOpenHashMap<>();
this.regions = new Int2ObjectOpenHashMap<>();
this.variables = new HashMap<>();
this.sceneGroups = new HashMap<>();
this.scriptMonsterSpawnService = new ScriptMonsterSpawnService(this);
// TEMPORARY
if (this.getScene().getId() < 10) {
......@@ -94,6 +97,10 @@ public class SceneScriptManager {
return config;
}
public SceneGroup getCurrentGroup() {
return currentGroup;
}
public List<SceneBlock> getBlocks() {
return blocks;
}
......@@ -103,17 +110,35 @@ public class SceneScriptManager {
}
public Set<SceneTrigger> getTriggersByEvent(int eventId) {
return triggers.computeIfAbsent(eventId, e -> new HashSet<>());
return currentTriggers.computeIfAbsent(eventId, e -> new HashSet<>());
}
public void registerTrigger(SceneTrigger trigger) {
this.triggers.put(trigger.name, trigger);
getTriggersByEvent(trigger.event).add(trigger);
}
public void deregisterTrigger(SceneTrigger trigger) {
this.triggers.remove(trigger.name);
getTriggersByEvent(trigger.event).remove(trigger);
}
public void resetTriggers(List<String> triggerNames) {
for(var name : triggerNames){
var instance = triggers.get(name);
this.currentTriggers.get(instance.event).clear();
this.currentTriggers.get(instance.event).add(instance);
}
}
public void refreshGroup(SceneGroup group, int suiteIndex){
var suite = group.getSuiteByIndex(suiteIndex);
if(suite == null){
return;
}
if(suite.triggers.size() > 0){
resetTriggers(suite.triggers);
}
spawnMonstersInGroup(group, suite);
spawnGadgetsInGroup(group, suite);
}
public SceneRegion getRegionById(int id) {
return regions.get(id);
}
......@@ -141,7 +166,7 @@ public class SceneScriptManager {
private void init() {
// Get compiled script if cached
CompiledScript cs = ScriptLoader.getScriptByPath(
Grasscutter.getConfig().SCRIPTS_FOLDER + "Scene/" + getScene().getId() + "/scene" + getScene().getId() + "." + ScriptLoader.getScriptType());
SCRIPT("Scene/" + getScene().getId() + "/scene" + getScene().getId() + "." + ScriptLoader.getScriptType()));
if (cs == null) {
Grasscutter.getLogger().warn("No script found for scene " + getScene().getId());
......@@ -188,7 +213,7 @@ public class SceneScriptManager {
private void loadBlockFromScript(SceneBlock block) {
CompiledScript cs = ScriptLoader.getScriptByPath(
Grasscutter.getConfig().SCRIPTS_FOLDER + "Scene/" + getScene().getId() + "/scene" + getScene().getId() + "_block" + block.id + "." + ScriptLoader.getScriptType());
SCRIPT("Scene/" + getScene().getId() + "/scene" + getScene().getId() + "_block" + block.id + "." + ScriptLoader.getScriptType()));
if (cs == null) {
return;
......@@ -211,7 +236,7 @@ public class SceneScriptManager {
group.setLoaded(true);
CompiledScript cs = ScriptLoader.getScriptByPath(
Grasscutter.getConfig().SCRIPTS_FOLDER + "Scene/" + getScene().getId() + "/scene" + getScene().getId() + "_group" + group.id + "." + ScriptLoader.getScriptType());
SCRIPT("Scene/" + getScene().getId() + "/scene" + getScene().getId() + "_group" + group.id + "." + ScriptLoader.getScriptType()));
if (cs == null) {
return;
......@@ -222,7 +247,8 @@ public class SceneScriptManager {
cs.eval(getBindings());
// Set
group.monsters = ScriptLoader.getSerializer().toList(SceneMonster.class, bindings.get("monsters"));
group.monsters = ScriptLoader.getSerializer().toList(SceneMonster.class, bindings.get("monsters")).stream()
.collect(Collectors.toMap(x -> x.config_id, y -> y));
group.gadgets = ScriptLoader.getSerializer().toList(SceneGadget.class, bindings.get("gadgets"));
group.triggers = ScriptLoader.getSerializer().toList(SceneTrigger.class, bindings.get("triggers"));
group.suites = ScriptLoader.getSerializer().toList(SceneSuite.class, bindings.get("suites"));
......@@ -235,21 +261,21 @@ public class SceneScriptManager {
// Add monsters to suite TODO optimize
Int2ObjectMap<Object> map = new Int2ObjectOpenHashMap<>();
group.monsters.forEach(m -> map.put(m.config_id, m));
group.monsters.entrySet().forEach(m -> map.put(m.getValue().config_id, m));
group.gadgets.forEach(m -> map.put(m.config_id, m));
for (SceneSuite suite : group.suites) {
suite.sceneMonsters = new ArrayList<>(suite.monsters.size());
for (int id : suite.monsters) {
try {
SceneMonster monster = (SceneMonster) map.get(id);
if (monster != null) {
suite.sceneMonsters.add(monster);
}
} catch (Exception e) {
continue;
suite.monsters.forEach(id -> {
Object objEntry = map.get(id.intValue());
if (objEntry instanceof Map.Entry<?,?> monsterEntry) {
Object monster = monsterEntry.getValue();
if(monster instanceof SceneMonster sceneMonster){
suite.sceneMonsters.add(sceneMonster);
}
}
});
suite.sceneGadgets = new ArrayList<>(suite.gadgets.size());
for (int id : suite.gadgets) {
try {
......@@ -257,11 +283,10 @@ public class SceneScriptManager {
if (gadget != null) {
suite.sceneGadgets.add(gadget);
}
} catch (Exception e) {
continue;
}
} catch (Exception ignored) { }
}
}
this.sceneGroups.put(group.id, group);
} catch (ScriptException e) {
Grasscutter.getLogger().error("Error loading group " + group.id + " in scene " + getScene().getId(), e);
}
......@@ -323,60 +348,41 @@ public class SceneScriptManager {
}
public void spawnMonstersInGroup(SceneGroup group, int suiteIndex) {
spawnMonstersInGroup(group, group.getSuiteByIndex(suiteIndex));
var suite = group.getSuiteByIndex(suiteIndex);
if(suite == null){
return;
}
public void spawnMonstersInGroup(SceneGroup group) {
spawnMonstersInGroup(group, null);
spawnMonstersInGroup(group, suite);
}
public void spawnMonstersInGroup(SceneGroup group, SceneSuite suite) {
List<SceneMonster> monsters = group.monsters;
if (suite != null) {
monsters = suite.sceneMonsters;
if(suite == null || suite.sceneMonsters.size() <= 0){
return;
}
List<GameEntity> toAdd = new ArrayList<>();
for (SceneMonster monster : monsters) {
MonsterData data = GameData.getMonsterDataMap().get(monster.monster_id);
if (data == null) {
continue;
this.currentGroup = group;
suite.sceneMonsters.forEach(mob -> this.scriptMonsterSpawnService.spawnMonster(group.id, mob));
}
// Calculate level
int level = monster.level;
if (getScene().getDungeonData() != null) {
level = getScene().getDungeonData().getShowLevel();
} else if (getScene().getWorld().getWorldLevel() > 0) {
WorldLevelData worldLevelData = GameData.getWorldLevelDataMap().get(getScene().getWorld().getWorldLevel());
if (worldLevelData != null) {
level = worldLevelData.getMonsterLevel();
}
public void spawnMonstersInGroup(SceneGroup group) {
this.currentGroup = group;
group.monsters.values().forEach(mob -> this.scriptMonsterSpawnService.spawnMonster(group.id, mob));
}
// Spawn mob
EntityMonster entity = new EntityMonster(getScene(), data, monster.pos, level);
entity.getRotation().set(monster.rot);
entity.setGroupId(group.id);
entity.setConfigId(monster.config_id);
public void startMonsterTideInGroup(SceneGroup group, Integer[] ordersConfigId, int tideCount, int sceneLimit) {
this.currentGroup = group;
this.scriptMonsterTideService =
new ScriptMonsterTideService(this, group, tideCount, sceneLimit, ordersConfigId);
toAdd.add(entity);
}
if (toAdd.size() > 0) {
getScene().addEntities(toAdd);
for (GameEntity entity : toAdd) {
callEvent(EventType.EVENT_ANY_MONSTER_LIVE, new ScriptArgs(entity.getConfigId()));
public void unloadCurrentMonsterTide(){
if(this.getScriptMonsterTideService() == null){
return;
}
this.getScriptMonsterTideService().unload();
}
public void spawnMonstersByConfigId(int configId, int delayTime) {
// TODO delay
this.scriptMonsterSpawnService.spawnMonster(this.currentGroup.id, this.currentGroup.monsters.get(configId));
}
// Events
public void callEvent(int eventType, ScriptArgs params) {
......@@ -396,13 +402,38 @@ public class SceneScriptManager {
args = CoerceJavaToLua.coerce(params);
}
ret = condition.call(this.getScriptLibLua(), args);
ScriptLib.logger.trace("Call Condition Trigger {}", trigger);
ret = safetyCall(trigger.condition, condition, args);
}
if (ret.checkboolean() == true) {
if (ret.isboolean() && ret.checkboolean()) {
ScriptLib.logger.trace("Call Action Trigger {}", trigger);
LuaValue action = (LuaValue) this.getBindings().get(trigger.action);
action.call(this.getScriptLibLua(), LuaValue.NIL);
// TODO impl the param of SetGroupVariableValueByGroup
var arg = new ScriptArgs();
arg.param2 = 100;
var args = CoerceJavaToLua.coerce(arg);
safetyCall(trigger.action, action, args);
}
//TODO some ret may not bool
}
}
public LuaValue safetyCall(String name, LuaValue func, LuaValue args){
try{
return func.call(this.getScriptLibLua(), args);
}catch (LuaError error){
ScriptLib.logger.error("[LUA] call trigger failed {},{}",name,args,error);
return LuaValue.valueOf(-1);
}
}
public ScriptMonsterTideService getScriptMonsterTideService() {
return scriptMonsterTideService;
}
public ScriptMonsterSpawnService getScriptMonsterSpawnService() {
return scriptMonsterSpawnService;
}
}
package emu.grasscutter.scripts;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import org.luaj.vm2.LuaTable;
import org.luaj.vm2.LuaValue;
import emu.grasscutter.Grasscutter;
import emu.grasscutter.data.GameData;
import emu.grasscutter.data.def.MonsterData;
import emu.grasscutter.game.dungeons.DungeonChallenge;
import emu.grasscutter.game.entity.EntityGadget;
import emu.grasscutter.game.entity.EntityMonster;
import emu.grasscutter.game.entity.GameEntity;
import emu.grasscutter.scripts.constants.EventType;
import emu.grasscutter.scripts.data.SceneGroup;
import emu.grasscutter.scripts.data.SceneMonster;
import emu.grasscutter.scripts.data.SceneRegion;
import emu.grasscutter.scripts.data.ScriptArgs;
import emu.grasscutter.server.packet.send.PacketCanUseSkillNotify;
import emu.grasscutter.server.packet.send.PacketGadgetStateNotify;
import emu.grasscutter.server.packet.send.PacketWorktopOptionNotify;
import org.luaj.vm2.LuaTable;
import org.luaj.vm2.LuaValue;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.List;
import java.util.Optional;
public class ScriptLib {
public static final Logger logger = LoggerFactory.getLogger(ScriptLib.class);
private final SceneScriptManager sceneScriptManager;
public ScriptLib(SceneScriptManager sceneScriptManager) {
......@@ -33,7 +29,19 @@ public class ScriptLib {
return sceneScriptManager;
}
private String printTable(LuaTable table){
StringBuilder sb = new StringBuilder();
sb.append("{");
for(var meta : table.keys()){
sb.append(meta).append(":").append(table.get(meta)).append(",");
}
sb.append("}");
return sb.toString();
}
public int SetGadgetStateByConfigId(int configId, int gadgetState) {
logger.debug("[LUA] Call SetGadgetStateByConfigId with {},{}",
configId,gadgetState);
Optional<GameEntity> entity = getSceneScriptManager().getScene().getEntities().values().stream()
.filter(e -> e.getConfigId() == configId).findFirst();
......@@ -53,6 +61,8 @@ public class ScriptLib {
}
public int SetGroupGadgetStateByConfigId(int groupId, int configId, int gadgetState) {
logger.debug("[LUA] Call SetGroupGadgetStateByConfigId with {},{},{}",
groupId,configId,gadgetState);
List<GameEntity> list = getSceneScriptManager().getScene().getEntities().values().stream()
.filter(e -> e.getGroupId() == groupId).toList();
......@@ -71,6 +81,8 @@ public class ScriptLib {
}
public int SetWorktopOptionsByGroupId(int groupId, int configId, int[] options) {
logger.debug("[LUA] Call SetWorktopOptionsByGroupId with {},{},{}",
groupId,configId,options);
Optional<GameEntity> entity = getSceneScriptManager().getScene().getEntities().values().stream()
.filter(e -> e.getConfigId() == configId && e.getGroupId() == groupId).findFirst();
......@@ -90,6 +102,8 @@ public class ScriptLib {
}
public int DelWorktopOptionByGroupId(int groupId, int configId, int option) {
logger.debug("[LUA] Call DelWorktopOptionByGroupId with {},{},{}",groupId,configId,option);
Optional<GameEntity> entity = getSceneScriptManager().getScene().getEntities().values().stream()
.filter(e -> e.getConfigId() == configId && e.getGroupId() == groupId).findFirst();
......@@ -109,44 +123,68 @@ public class ScriptLib {
}
// Some fields are guessed
public int AutoMonsterTide(int challengeIndex, int groupId, int[] config_ids, int param4, int param5, int param6) {
public int AutoMonsterTide(int challengeIndex, int groupId, Integer[] ordersConfigId, int tideCount, int sceneLimit, int param6) {
logger.debug("[LUA] Call AutoMonsterTide with {},{},{},{},{},{}",
challengeIndex,groupId,ordersConfigId,tideCount,sceneLimit,param6);
SceneGroup group = getSceneScriptManager().getGroupById(groupId);
if (group == null || group.monsters == null) {
return 1;
}
// TODO just spawn all from group for now
this.getSceneScriptManager().spawnMonstersInGroup(group);
this.getSceneScriptManager().startMonsterTideInGroup(group, ordersConfigId, tideCount, sceneLimit);
return 0;
}
public int AddExtraGroupSuite(int groupId, int suite) {
logger.debug("[LUA] Call AddExtraGroupSuite with {},{}",
groupId,suite);
SceneGroup group = getSceneScriptManager().getGroupById(groupId);
if (group == null || group.monsters == null) {
return 1;
}
// TODO just spawn all from group for now
// avoid spawn wrong monster
if(getSceneScriptManager().getScene().getChallenge() != null)
if(!getSceneScriptManager().getScene().getChallenge().inProgress() ||
getSceneScriptManager().getScene().getChallenge().getGroup().id != groupId){
return 0;
}
this.getSceneScriptManager().spawnMonstersInGroup(group, suite);
return 0;
}
// param3 (probably time limit for timed dungeons)
public int ActiveChallenge(int challengeId, int challengeIndex, int param3, int groupId, int objectiveKills, int param5) {
public int ActiveChallenge(int challengeId, int challengeIndex, int timeLimitOrGroupId, int groupId, int objectiveKills, int param5) {
logger.debug("[LUA] Call ActiveChallenge with {},{},{},{},{},{}",
challengeId,challengeIndex,timeLimitOrGroupId,groupId,objectiveKills,param5);
SceneGroup group = getSceneScriptManager().getGroupById(groupId);
var objective = objectiveKills;
if(group == null){
group = getSceneScriptManager().getGroupById(timeLimitOrGroupId);
objective = groupId;
}
if (group == null || group.monsters == null) {
return 1;
}
DungeonChallenge challenge = new DungeonChallenge(getSceneScriptManager().getScene(), group);
challenge.setChallengeId(challengeId);
challenge.setChallengeIndex(challengeIndex);
challenge.setObjective(objectiveKills);
if(getSceneScriptManager().getScene().getChallenge() != null &&
getSceneScriptManager().getScene().getChallenge().inProgress())
{
return 0;
}
DungeonChallenge challenge = new DungeonChallenge(getSceneScriptManager().getScene(),
group, challengeId, challengeIndex, objective);
// set if tower first stage (6-1)
challenge.setStage(getSceneScriptManager().getVariables().getOrDefault("stage", -1) == 0);
getSceneScriptManager().getScene().setChallenge(challenge);
......@@ -155,26 +193,40 @@ public class ScriptLib {
}
public int GetGroupMonsterCountByGroupId(int groupId) {
logger.debug("[LUA] Call GetGroupMonsterCountByGroupId with {}",
groupId);
return (int) getSceneScriptManager().getScene().getEntities().values().stream()
.filter(e -> e instanceof EntityMonster && e.getGroupId() == groupId)
.count();
}
public int GetGroupVariableValue(String var) {
logger.debug("[LUA] Call GetGroupVariableValue with {}",
var);
return getSceneScriptManager().getVariables().getOrDefault(var, 0);
}
public int SetGroupVariableValue(String var, int value) {
logger.debug("[LUA] Call SetGroupVariableValue with {},{}",
var, value);
getSceneScriptManager().getVariables().put(var, value);
return 0;
}
public LuaValue ChangeGroupVariableValue(String var, int value) {
logger.debug("[LUA] Call ChangeGroupVariableValue with {},{}",
var, value);
getSceneScriptManager().getVariables().put(var, getSceneScriptManager().getVariables().get(var) + value);
return LuaValue.ZERO;
}
/**
* Set the actions and triggers to designated group
*/
public int RefreshGroup(LuaTable table) {
logger.debug("[LUA] Call RefreshGroup with {}",
printTable(table));
// Kill and Respawn?
int groupId = table.get("group_id").toint();
int suite = table.get("suite").toint();
......@@ -185,13 +237,14 @@ public class ScriptLib {
return 1;
}
this.getSceneScriptManager().spawnMonstersInGroup(group, suite);
this.getSceneScriptManager().spawnGadgetsInGroup(group, suite);
getSceneScriptManager().refreshGroup(group, suite);
return 0;
}
public int GetRegionEntityCount(LuaTable table) {
logger.debug("[LUA] Call GetRegionEntityCount with {}",
table);
int regionId = table.get("region_eid").toint();
int entityType = table.get("entity_type").toint();
......@@ -205,21 +258,103 @@ public class ScriptLib {
}
public void PrintContextLog(String msg) {
Grasscutter.getLogger().info("[LUA] " + msg);
logger.info("[LUA] " + msg);
}
public int TowerCountTimeStatus(int var1, int var2){
public int TowerCountTimeStatus(int isDone, int var2){
logger.debug("[LUA] Call TowerCountTimeStatus with {},{}",
isDone,var2);
// TODO record time
return 0;
}
public int GetGroupMonsterCount(int var1){
// Maybe...
return GetGroupMonsterCountByGroupId(var1);
logger.debug("[LUA] Call GetGroupMonsterCount with {}",
var1);
return (int) getSceneScriptManager().getScene().getEntities().values().stream()
.filter(e -> e instanceof EntityMonster && e.getGroupId() == getSceneScriptManager().getCurrentGroup().id)
.count();
}
public int SetMonsterBattleByGroup(int var1, int var2, int var3){
logger.debug("[LUA] Call SetMonsterBattleByGroup with {},{},{}",
var1,var2,var3);
// TODO
return 0;
}
public int CauseDungeonFail(int var1){
logger.debug("[LUA] Call CauseDungeonFail with {}",
var1);
return 0;
}
public int GetGroupVariableValueByGroup(String name, int groupId){
logger.debug("[LUA] Call GetGroupVariableValueByGroup with {},{}",
name,groupId);
return getSceneScriptManager().getVariables().getOrDefault(name, 0);
}
public int SetIsAllowUseSkill(int canUse, int var2){
logger.debug("[LUA] Call SetIsAllowUseSkill with {},{}",
canUse,var2);
getSceneScriptManager().getScene().broadcastPacket(new PacketCanUseSkillNotify(canUse == 1));
return 0;
}
public int KillEntityByConfigId(LuaTable table){
logger.debug("[LUA] Call KillEntityByConfigId with {}",
printTable(table));
var configId = table.get("config_id");
if(configId == LuaValue.NIL){
return 1;
}
var entity = getSceneScriptManager().getScene().getEntityByConfigId(configId.toint());
if(entity == null){
return 1;
}
getSceneScriptManager().getScene().killEntity(entity, 0);
return 0;
}
public int SetGroupVariableValueByGroup(String key, int value, int groupId){
logger.debug("[LUA] Call SetGroupVariableValueByGroup with {},{},{}",
key,value,groupId);
getSceneScriptManager().getVariables().put(key, value);
return 0;
}
public int CreateMonster(LuaTable table){
logger.debug("[LUA] Call CreateMonster with {}",
printTable(table));
var configId = table.get("config_id").toint();
var delayTime = table.get("delay_time").toint();
getSceneScriptManager().spawnMonstersByConfigId(configId, delayTime);
return 0;
}
public int TowerMirrorTeamSetUp(int team, int var1) {
logger.debug("[LUA] Call TowerMirrorTeamSetUp with {},{}",
team,var1);
getSceneScriptManager().unloadCurrentMonsterTide();
getSceneScriptManager().getScene().getPlayers().get(0).getTowerManager().mirrorTeamSetUp(team-1);
return 0;
}
public int CreateGadget(LuaTable table){
logger.debug("[LUA] Call CreateGadget with {}",
printTable(table));
var configId = table.get("config_id").toint();
//TODO
return 0;
}
}
package emu.grasscutter.scripts.data;
import java.util.List;
import emu.grasscutter.utils.Position;
import java.util.List;
import java.util.Map;
public class SceneGroup {
public transient int block_id; // Not an actual variable in the scripts but we will keep it here for reference
......@@ -11,7 +12,10 @@ public class SceneGroup {
public int refresh_id;
public Position pos;
public List<SceneMonster> monsters;
/**
* ConfigId - Monster
*/
public Map<Integer,SceneMonster> monsters;
public List<SceneGadget> gadgets;
public List<SceneTrigger> triggers;
public List<SceneRegion> regions;
......
......@@ -7,4 +7,29 @@ public class SceneTrigger {
public String source;
public String condition;
public String action;
@Override
public boolean equals(Object obj) {
if(obj instanceof SceneTrigger sceneTrigger){
return this.name.equals(sceneTrigger.name);
}
return super.equals(obj);
}
@Override
public int hashCode() {
return name.hashCode();
}
@Override
public String toString() {
return "SceneTrigger{" +
"name='" + name + '\'' +
", config_id=" + config_id +
", event=" + event +
", source='" + source + '\'' +
", condition='" + condition + '\'' +
", action='" + action + '\'' +
'}';
}
}
package emu.grasscutter.scripts.listener;
import emu.grasscutter.game.entity.EntityMonster;
public interface ScriptMonsterListener {
void onNotify(EntityMonster sceneMonster);
}
......@@ -70,15 +70,13 @@ public class LuaSerializer implements Serializer {
}
try {
object = type.getDeclaredConstructor().newInstance(null);
//noinspection ConfusingArgumentToVarargsMethod
object = type.getDeclaredConstructor().newInstance();
LuaValue[] keys = table.keys();
for (LuaValue k : keys) {
try {
Field field = object.getClass().getDeclaredField(k.checkjstring());
if (field == null) {
continue;
}
field.setAccessible(true);
LuaValue keyValue = table.get(k);
......
package emu.grasscutter.scripts.service;
import emu.grasscutter.data.GameData;
import emu.grasscutter.data.excels.MonsterData;
import emu.grasscutter.data.excels.WorldLevelData;
import emu.grasscutter.game.entity.EntityMonster;
import emu.grasscutter.scripts.SceneScriptManager;
import emu.grasscutter.scripts.constants.EventType;
import emu.grasscutter.scripts.data.SceneMonster;
import emu.grasscutter.scripts.data.ScriptArgs;
import emu.grasscutter.scripts.listener.ScriptMonsterListener;
import java.util.ArrayList;
import java.util.List;
public class ScriptMonsterSpawnService {
private final SceneScriptManager sceneScriptManager;
private final List<ScriptMonsterListener> onMonsterCreatedListener = new ArrayList<>();
private final List<ScriptMonsterListener> onMonsterDeadListener = new ArrayList<>();
public ScriptMonsterSpawnService(SceneScriptManager sceneScriptManager){
this.sceneScriptManager = sceneScriptManager;
}
public void addMonsterCreatedListener(ScriptMonsterListener scriptMonsterListener){
onMonsterCreatedListener.add(scriptMonsterListener);
}
public void addMonsterDeadListener(ScriptMonsterListener scriptMonsterListener){
onMonsterDeadListener.add(scriptMonsterListener);
}
public void removeMonsterCreatedListener(ScriptMonsterListener scriptMonsterListener){
onMonsterCreatedListener.remove(scriptMonsterListener);
}
public void removeMonsterDeadListener(ScriptMonsterListener scriptMonsterListener){
onMonsterDeadListener.remove(scriptMonsterListener);
}
public void onMonsterDead(EntityMonster entityMonster){
onMonsterDeadListener.forEach(l -> l.onNotify(entityMonster));
}
public void spawnMonster(int groupId, SceneMonster monster) {
if(monster == null){
return;
}
MonsterData data = GameData.getMonsterDataMap().get(monster.monster_id);
if (data == null) {
return;
}
// Calculate level
int level = monster.level;
if (sceneScriptManager.getScene().getDungeonData() != null) {
level = sceneScriptManager.getScene().getDungeonData().getShowLevel();
} else if (sceneScriptManager.getScene().getWorld().getWorldLevel() > 0) {
WorldLevelData worldLevelData = GameData.getWorldLevelDataMap().get(sceneScriptManager.getScene().getWorld().getWorldLevel());
if (worldLevelData != null) {
level = worldLevelData.getMonsterLevel();
}
}
// Spawn mob
EntityMonster entity = new EntityMonster(sceneScriptManager.getScene(), data, monster.pos, level);
entity.getRotation().set(monster.rot);
entity.setGroupId(groupId);
entity.setConfigId(monster.config_id);
onMonsterCreatedListener.forEach(action -> action.onNotify(entity));
sceneScriptManager.getScene().addEntity(entity);
sceneScriptManager.callEvent(EventType.EVENT_ANY_MONSTER_LIVE, new ScriptArgs(entity.getConfigId()));
}
}
package emu.grasscutter.scripts.service;
import emu.grasscutter.game.entity.EntityMonster;
import emu.grasscutter.scripts.SceneScriptManager;
import emu.grasscutter.scripts.constants.EventType;
import emu.grasscutter.scripts.data.SceneGroup;
import emu.grasscutter.scripts.data.SceneMonster;
import emu.grasscutter.scripts.data.ScriptArgs;
import emu.grasscutter.scripts.listener.ScriptMonsterListener;
import java.util.List;
import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.concurrent.atomic.AtomicInteger;
public class ScriptMonsterTideService {
private final SceneScriptManager sceneScriptManager;
private final SceneGroup currentGroup;
private final AtomicInteger monsterAlive;
private final AtomicInteger monsterTideCount;
private final AtomicInteger monsterKillCount;
private final int monsterSceneLimit;
private final ConcurrentLinkedQueue<Integer> monsterConfigOrders;
private final OnMonsterCreated onMonsterCreated= new OnMonsterCreated();
private final OnMonsterDead onMonsterDead= new OnMonsterDead();
public ScriptMonsterTideService(SceneScriptManager sceneScriptManager,
SceneGroup group, int tideCount, int monsterSceneLimit, Integer[] ordersConfigId){
this.sceneScriptManager = sceneScriptManager;
this.currentGroup = group;
this.monsterSceneLimit = monsterSceneLimit;
this.monsterTideCount = new AtomicInteger(tideCount);
this.monsterKillCount = new AtomicInteger(0);
this.monsterAlive = new AtomicInteger(0);
this.monsterConfigOrders = new ConcurrentLinkedQueue<>(List.of(ordersConfigId));
this.sceneScriptManager.getScriptMonsterSpawnService().addMonsterCreatedListener(onMonsterCreated);
this.sceneScriptManager.getScriptMonsterSpawnService().addMonsterDeadListener(onMonsterDead);
// spawn the first turn
for (int i = 0; i < this.monsterSceneLimit; i++) {
this.sceneScriptManager.getScriptMonsterSpawnService().spawnMonster(group.id, getNextMonster());
}
}
public class OnMonsterCreated implements ScriptMonsterListener{
@Override
public void onNotify(EntityMonster sceneMonster) {
if(monsterSceneLimit > 0){
monsterAlive.incrementAndGet();
monsterTideCount.decrementAndGet();
}
}
}
public SceneMonster getNextMonster(){
var nextId = this.monsterConfigOrders.poll();
if(currentGroup.monsters.containsKey(nextId)){
return currentGroup.monsters.get(nextId);
}
// TODO some monster config_id do not exist in groups, so temporarily set it to the first
return currentGroup.monsters.values().stream().findFirst().orElse(null);
}
public class OnMonsterDead implements ScriptMonsterListener {
@Override
public void onNotify(EntityMonster sceneMonster) {
if (monsterSceneLimit <= 0) {
return;
}
if (monsterAlive.decrementAndGet() >= monsterSceneLimit) {
// maybe not happen
return;
}
monsterKillCount.incrementAndGet();
if (monsterTideCount.get() > 0) {
// add more
sceneScriptManager.getScriptMonsterSpawnService().spawnMonster(currentGroup.id, getNextMonster());
}
// spawn the last turn of monsters
// fix the 5-2
sceneScriptManager.callEvent(EventType.EVENT_MONSTER_TIDE_DIE, new ScriptArgs(monsterKillCount.get()));
}
}
public void unload(){
this.sceneScriptManager.getScriptMonsterSpawnService().removeMonsterCreatedListener(onMonsterCreated);
this.sceneScriptManager.getScriptMonsterSpawnService().removeMonsterDeadListener(onMonsterDead);
}
}
package emu.grasscutter.server.dispatch;
import emu.grasscutter.Grasscutter;
import express.http.HttpContextHandler;
import express.http.Request;
import express.http.Response;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Objects;
public final class AnnouncementHandler implements HttpContextHandler {
@Override
public void handle(Request request, Response response) throws IOException {//event
if (Objects.equals(request.baseUrl(), "/common/hk4e_global/announcement/api/getAnnContent")) {
response.send("{\"retcode\":0,\"message\":\"OK\",\"data\":" + readToString(new File(Grasscutter.getConfig().DATA_FOLDER + "GameAnnouncement.json")) +"}");
} else if (Objects.equals(request.baseUrl(), "/common/hk4e_global/announcement/api/getAnnList")) {
String data = readToString(new File(Grasscutter.getConfig().DATA_FOLDER + "GameAnnouncementList.json")).replace("System.currentTimeMillis()",String.valueOf(System.currentTimeMillis()));
response.send("{\"retcode\":0,\"message\":\"OK\",\"data\": "+data +"}");
}
}
private static String readToString(File file) {
Long filelength = file.length();
byte[] filecontent = new byte[filelength.intValue()];
try {
FileInputStream in = new FileInputStream(file);
in.read(filecontent);
in.close();
} catch (IOException fileNotFoundException) {
fileNotFoundException.printStackTrace();
}
return new String(filecontent);
}
}
\ No newline at end of file
package emu.grasscutter.server.dispatch;
import express.http.HttpContextHandler;
import express.http.Request;
import express.http.Response;
import java.io.IOException;
/**
* Used for processing crash dumps and logs generated by the game.
* Logs are in JSON, and are sent to the server for logging.
*/
public final class ClientLogHandler implements HttpContextHandler {
@Override
public void handle(Request request, Response response) throws IOException {
// TODO: Figure out how to dump request body and log to file.
response.send("{\"code\":0}");
}
}
package emu.grasscutter.server.dispatch;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.protobuf.ByteString;
import emu.grasscutter.Config;
import emu.grasscutter.Grasscutter;
import emu.grasscutter.Grasscutter.ServerDebugMode;
import emu.grasscutter.Grasscutter.ServerRunMode;
import emu.grasscutter.database.DatabaseHelper;
import emu.grasscutter.game.Account;
import emu.grasscutter.net.proto.QueryCurrRegionHttpRspOuterClass.QueryCurrRegionHttpRsp;
import emu.grasscutter.net.proto.QueryRegionListHttpRspOuterClass.QueryRegionListHttpRsp;
import emu.grasscutter.net.proto.RegionInfoOuterClass.RegionInfo;
import emu.grasscutter.net.proto.RegionSimpleInfoOuterClass.RegionSimpleInfo;
import emu.grasscutter.server.dispatch.authentication.AuthenticationHandler;
import emu.grasscutter.server.dispatch.authentication.DefaultAuthenticationHandler;
import emu.grasscutter.server.dispatch.http.GachaRecordHandler;
import emu.grasscutter.server.dispatch.json.*;
import emu.grasscutter.server.dispatch.json.ComboTokenReqJson.LoginTokenData;
import emu.grasscutter.server.event.dispatch.QueryAllRegionsEvent;
import emu.grasscutter.server.event.dispatch.QueryCurrentRegionEvent;
import emu.grasscutter.tools.Tools;
import emu.grasscutter.utils.FileUtils;
import emu.grasscutter.utils.Utils;
import express.Express;
import io.javalin.http.staticfiles.Location;
import org.eclipse.jetty.server.Connector;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.ServerConnector;
import org.eclipse.jetty.util.ssl.SslContextFactory;
import java.io.*;
import java.net.URLDecoder;
import java.util.*;
import static emu.grasscutter.utils.Language.translate;
public final class DispatchServer {
public static String query_region_list = "";
public static String query_cur_region = "";
private final Gson gson;
private final String defaultServerName = "os_usa";
public String regionListBase64;
public Map<String, RegionData> regions;
private AuthenticationHandler authHandler;
private Express httpServer;
public DispatchServer() {
this.regions = new HashMap<>();
this.gson = new GsonBuilder().create();
this.loadQueries();
this.initRegion();
}
public Express getServer() {
return httpServer;
}
public void setHttpServer(Express httpServer) {
this.httpServer.stop();
this.httpServer = httpServer;
this.httpServer.listen(Grasscutter.getConfig().getDispatchOptions().Port);
}
public Gson getGsonFactory() {
return gson;
}
public QueryCurrRegionHttpRsp getCurrRegion() {
// Needs to be fixed by having the game servers connect to the dispatch server.
if (Grasscutter.getConfig().RunMode == ServerRunMode.HYBRID) {
return regions.get(defaultServerName).parsedRegionQuery;
}
Grasscutter.getLogger().warn("[Dispatch] Unsupported run mode for getCurrRegion()");
return null;
}
public void loadQueries() {
File file;
file = new File(Grasscutter.getConfig().DATA_FOLDER + "query_region_list.txt");
if (file.exists()) {
query_region_list = new String(FileUtils.read(file));
} else {
Grasscutter.getLogger().warn("[Dispatch] query_region_list not found! Using default region list.");
}
file = new File(Grasscutter.getConfig().DATA_FOLDER + "query_cur_region.txt");
if (file.exists()) {
query_cur_region = new String(FileUtils.read(file));
} else {
Grasscutter.getLogger().warn("[Dispatch] query_cur_region not found! Using default current region.");
}
}
private void initRegion() {
try {
byte[] decoded = Base64.getDecoder().decode(query_region_list);
QueryRegionListHttpRsp rl = QueryRegionListHttpRsp.parseFrom(decoded);
byte[] decoded2 = Base64.getDecoder().decode(query_cur_region);
QueryCurrRegionHttpRsp regionQuery = QueryCurrRegionHttpRsp.parseFrom(decoded2);
List<RegionSimpleInfo> servers = new ArrayList<>();
List<String> usedNames = new ArrayList<>(); // List to check for potential naming conflicts
if (Grasscutter.getConfig().RunMode == ServerRunMode.HYBRID) { // Automatically add the game server if in
// hybrid mode
RegionSimpleInfo server = RegionSimpleInfo.newBuilder()
.setName("os_usa")
.setTitle(Grasscutter.getConfig().getGameServerOptions().Name)
.setType("DEV_PUBLIC")
.setDispatchUrl(
"http" + (Grasscutter.getConfig().getDispatchOptions().FrontHTTPS ? "s" : "") + "://"
+ (Grasscutter.getConfig().getDispatchOptions().PublicIp.isEmpty()
? Grasscutter.getConfig().getDispatchOptions().Ip
: Grasscutter.getConfig().getDispatchOptions().PublicIp)
+ ":"
+ (Grasscutter.getConfig().getDispatchOptions().PublicPort != 0
? Grasscutter.getConfig().getDispatchOptions().PublicPort
: Grasscutter.getConfig().getDispatchOptions().Port)
+ "/query_cur_region/" + defaultServerName)
.build();
usedNames.add(defaultServerName);
servers.add(server);
RegionInfo serverRegion = regionQuery.getRegionInfo().toBuilder()
.setGateserverIp((Grasscutter.getConfig().getGameServerOptions().PublicIp.isEmpty()
? Grasscutter.getConfig().getGameServerOptions().Ip
: Grasscutter.getConfig().getGameServerOptions().PublicIp))
.setGateserverPort(Grasscutter.getConfig().getGameServerOptions().PublicPort != 0
? Grasscutter.getConfig().getGameServerOptions().PublicPort
: Grasscutter.getConfig().getGameServerOptions().Port)
.setSecretKey(ByteString
.copyFrom(FileUtils.read(Grasscutter.getConfig().KEY_FOLDER + "dispatchSeed.bin")))
.build();
QueryCurrRegionHttpRsp parsedRegionQuery = regionQuery.toBuilder().setRegionInfo(serverRegion).build();
regions.put(defaultServerName, new RegionData(parsedRegionQuery,
Base64.getEncoder().encodeToString(parsedRegionQuery.toByteString().toByteArray())));
} else {
if (Grasscutter.getConfig().getDispatchOptions().getGameServers().length == 0) {
Grasscutter.getLogger()
.error("[Dispatch] There are no game servers available. Exiting due to unplayable state.");
System.exit(1);
}
}
for (Config.DispatchServerOptions.RegionInfo regionInfo : Grasscutter.getConfig().getDispatchOptions()
.getGameServers()) {
if (usedNames.contains(regionInfo.Name)) {
Grasscutter.getLogger().error("Region name already in use.");
continue;
}
RegionSimpleInfo server = RegionSimpleInfo.newBuilder()
.setName(regionInfo.Name)
.setTitle(regionInfo.Title)
.setType("DEV_PUBLIC")
.setDispatchUrl(
"http" + (Grasscutter.getConfig().getDispatchOptions().FrontHTTPS ? "s" : "") + "://"
+ (Grasscutter.getConfig().getDispatchOptions().PublicIp.isEmpty()
? Grasscutter.getConfig().getDispatchOptions().Ip
: Grasscutter.getConfig().getDispatchOptions().PublicIp)
+ ":" + (Grasscutter.getConfig().getDispatchOptions().PublicPort != 0
? Grasscutter.getConfig().getDispatchOptions().PublicPort
: Grasscutter.getConfig().getDispatchOptions().Port) + "/query_cur_region/" + regionInfo.Name)
.build();
usedNames.add(regionInfo.Name);
servers.add(server);
RegionInfo serverRegion = regionQuery.getRegionInfo().toBuilder()
.setGateserverIp(regionInfo.Ip)
.setGateserverPort(regionInfo.Port)
.setSecretKey(ByteString
.copyFrom(FileUtils.read(Grasscutter.getConfig().KEY_FOLDER + "dispatchSeed.bin")))
.build();
QueryCurrRegionHttpRsp parsedRegionQuery = regionQuery.toBuilder().setRegionInfo(serverRegion).build();
regions.put(regionInfo.Name, new RegionData(parsedRegionQuery,
Base64.getEncoder().encodeToString(parsedRegionQuery.toByteString().toByteArray())));
}
QueryRegionListHttpRsp regionList = QueryRegionListHttpRsp.newBuilder()
.addAllRegionList(servers)
.setClientSecretKey(rl.getClientSecretKey())
.setClientCustomConfigEncrypted(rl.getClientCustomConfigEncrypted())
.setEnableLoginPc(true)
.build();
this.regionListBase64 = Base64.getEncoder().encodeToString(regionList.toByteString().toByteArray());
} catch (Exception e) {
Grasscutter.getLogger().error("[Dispatch] Error while initializing region info!", e);
}
}
public void start() throws Exception {
httpServer = new Express(config -> {
config.server(() -> {
Server server = new Server();
ServerConnector serverConnector;
if(Grasscutter.getConfig().getDispatchOptions().UseSSL) {
SslContextFactory.Server sslContextFactory = new SslContextFactory.Server();
File keystoreFile = new File(Grasscutter.getConfig().getDispatchOptions().KeystorePath);
if(keystoreFile.exists()) {
try {
sslContextFactory.setKeyStorePath(keystoreFile.getPath());
sslContextFactory.setKeyStorePassword(Grasscutter.getConfig().getDispatchOptions().KeystorePassword);
} catch (Exception e) {
e.printStackTrace();
Grasscutter.getLogger().warn(translate("messages.dispatch.keystore.password_error"));
try {
sslContextFactory.setKeyStorePath(keystoreFile.getPath());
sslContextFactory.setKeyStorePassword("123456");
Grasscutter.getLogger().warn(translate("messages.dispatch.keystore.default_password"));
} catch (Exception e2) {
Grasscutter.getLogger().warn(translate("messages.dispatch.keystore.general_error"));
e2.printStackTrace();
}
}
serverConnector = new ServerConnector(server, sslContextFactory);
} else {
Grasscutter.getLogger().warn(translate("messages.dispatch.keystore.no_keystore_error"));
Grasscutter.getConfig().getDispatchOptions().UseSSL = false;
serverConnector = new ServerConnector(server);
}
} else {
serverConnector = new ServerConnector(server);
}
serverConnector.setPort(Grasscutter.getConfig().getDispatchOptions().Port);
server.setConnectors(new Connector[]{serverConnector});
return server;
});
config.enforceSsl = Grasscutter.getConfig().getDispatchOptions().UseSSL;
if(Grasscutter.getConfig().DebugMode == ServerDebugMode.ALL) {
config.enableDevLogging();
}
if (Grasscutter.getConfig().getDispatchOptions().CORS){
if (Grasscutter.getConfig().getDispatchOptions().CORSAllowedOrigins.length > 0) config.enableCorsForOrigin(Grasscutter.getConfig().getDispatchOptions().CORSAllowedOrigins);
else config.enableCorsForAllOrigins();
}
});
httpServer.get("/", (req, res) -> res.send(translate("messages.status.welcome")));
httpServer.raw().error(404, ctx -> {
if(Grasscutter.getConfig().DebugMode == ServerDebugMode.MISSING) {
Grasscutter.getLogger().info(translate("messages.dispatch.unhandled_request_error", ctx.method(), ctx.url()));
}
ctx.contentType("text/html");
ctx.result("<!doctype html><html lang=\"en\"><body><img src=\"https://http.cat/404\" /></body></html>"); // I'm like 70% sure this won't break anything.
});
// Authentication Handler
// These routes are so that authentication routes are always the same no matter what auth system is used.
httpServer.get("/authentication/type", (req, res) -> {
res.send(this.getAuthHandler().getClass().getName());
});
httpServer.post("/authentication/login", (req, res) -> this.getAuthHandler().handleLogin(req, res));
httpServer.post("/authentication/register", (req, res) -> this.getAuthHandler().handleRegister(req, res));
httpServer.post("/authentication/change_password", (req, res) -> this.getAuthHandler().handleChangePassword(req, res));
// Dispatch
httpServer.get("/query_region_list", (req, res) -> {
// Log
Grasscutter.getLogger().info(String.format("[Dispatch] Client %s request: query_region_list", req.ip()));
// Invoke event.
QueryAllRegionsEvent event = new QueryAllRegionsEvent(regionListBase64); event.call();
// Respond with event result.
res.send(event.getRegionList());
});
httpServer.get("/query_cur_region/:id", (req, res) -> {
String regionName = req.params("id");
// Log
Grasscutter.getLogger().info(
String.format("Client %s request: query_cur_region/%s", req.ip(), regionName));
// Create a response form the request query parameters
String response = "CAESGE5vdCBGb3VuZCB2ZXJzaW9uIGNvbmZpZw==";
if (req.query().values().size() > 0) {
response = regions.get(regionName).Base64;
}
// Invoke event.
QueryCurrentRegionEvent event = new QueryCurrentRegionEvent(response); event.call();
// Respond with event result.
res.send(event.getRegionInfo());
});
// Login
httpServer.post("/hk4e_global/mdk/shield/api/login", (req, res) -> {
// Get post data
LoginAccountRequestJson requestData = null;
try {
String body = req.ctx().body();
requestData = getGsonFactory().fromJson(body, LoginAccountRequestJson.class);
} catch (Exception ignored) { }
// Create response json
if (requestData == null) {
return;
}
Grasscutter.getLogger().info(translate("messages.dispatch.account.login_attempt", req.ip()));
res.send(this.getAuthHandler().handleGameLogin(req, requestData));
});
// Login via token
httpServer.post("/hk4e_global/mdk/shield/api/verify", (req, res) -> {
// Get post data
LoginTokenRequestJson requestData = null;
try {
String body = req.ctx().body();
requestData = getGsonFactory().fromJson(body, LoginTokenRequestJson.class);
} catch (Exception ignored) {
}
// Create response json
if (requestData == null) {
return;
}
LoginResultJson responseData = new LoginResultJson();
Grasscutter.getLogger().info(translate("messages.dispatch.account.login_token_attempt", req.ip()));
// Login
Account account = DatabaseHelper.getAccountById(requestData.uid);
// Test
if (account == null || !account.getSessionKey().equals(requestData.token)) {
responseData.retcode = -111;
responseData.message = translate("messages.dispatch.account.account_cache_error");
Grasscutter.getLogger().info(translate("messages.dispatch.account.login_token_error", req.ip()));
} else {
responseData.message = "OK";
responseData.data.account.uid = requestData.uid;
responseData.data.account.token = requestData.token;
responseData.data.account.email = account.getEmail();
Grasscutter.getLogger().info(translate("messages.dispatch.account.login_token_success", req.ip(), requestData.uid));
}
res.send(responseData);
});
// Exchange for combo token
httpServer.post("/hk4e_global/combo/granter/login/v2/login", (req, res) -> {
// Get post data
ComboTokenReqJson requestData = null;
try {
String body = req.ctx().body();
requestData = getGsonFactory().fromJson(body, ComboTokenReqJson.class);
} catch (Exception ignored) {
}
// Create response json
if (requestData == null || requestData.data == null) {
return;
}
LoginTokenData loginData = getGsonFactory().fromJson(requestData.data, LoginTokenData.class); // Get login
// data
ComboTokenResJson responseData = new ComboTokenResJson();
// Login
Account account = DatabaseHelper.getAccountById(loginData.uid);
// Test
if (account == null || !account.getSessionKey().equals(loginData.token)) {
responseData.retcode = -201;
responseData.message = translate("messages.dispatch.account.session_key_error");
Grasscutter.getLogger().info(translate("messages.dispatch.account.combo_token_error", req.ip()));
} else {
responseData.message = "OK";
responseData.data.open_id = loginData.uid;
responseData.data.combo_id = "157795300";
responseData.data.combo_token = account.generateLoginToken();
Grasscutter.getLogger().info(translate("messages.dispatch.account.combo_token_success", req.ip()));
}
res.send(responseData);
});
// TODO: There are some missing route request types here (You can tell if they are missing if they are .all and not anything else)
// When http requests for theses routes are found please remove it from the list in DispatchHttpJsonHandler and update the route request types here
// Agreement and Protocol
// hk4e-sdk-os.hoyoverse.com
httpServer.get("/hk4e_global/mdk/agreement/api/getAgreementInfos", new DispatchHttpJsonHandler("{\"retcode\":0,\"message\":\"OK\",\"data\":{\"marketing_agreements\":[]}}"));
// hk4e-sdk-os.hoyoverse.com
// this could be either GET or POST based on the observation of different clients
httpServer.all("/hk4e_global/combo/granter/api/compareProtocolVersion", new DispatchHttpJsonHandler("{\"retcode\":0,\"message\":\"OK\",\"data\":{\"modified\":true,\"protocol\":{\"id\":0,\"app_id\":4,\"language\":\"en\",\"user_proto\":\"\",\"priv_proto\":\"\",\"major\":7,\"minimum\":0,\"create_time\":\"0\",\"teenager_proto\":\"\",\"third_proto\":\"\"}}}"));
// Game data
// hk4e-api-os.hoyoverse.com
httpServer.all("/common/hk4e_global/announcement/api/getAlertPic", new DispatchHttpJsonHandler("{\"retcode\":0,\"message\":\"OK\",\"data\":{\"total\":0,\"list\":[]}}"));
// hk4e-api-os.hoyoverse.com
httpServer.all("/common/hk4e_global/announcement/api/getAlertAnn", new DispatchHttpJsonHandler("{\"retcode\":0,\"message\":\"OK\",\"data\":{\"alert\":false,\"alert_id\":0,\"remind\":true}}"));
// hk4e-api-os.hoyoverse.com
httpServer.all("/common/hk4e_global/announcement/api/getAnnList", new AnnouncementHandler());
// hk4e-api-os-static.hoyoverse.com
httpServer.all("/common/hk4e_global/announcement/api/getAnnContent", new AnnouncementHandler());
// hk4e-sdk-os.hoyoverse.com
httpServer.all("/hk4e_global/mdk/shopwindow/shopwindow/listPriceTier", new DispatchHttpJsonHandler("{\"retcode\":0,\"message\":\"OK\",\"data\":{\"suggest_currency\":\"USD\",\"tiers\":[]}}"));
// Captcha
// api-account-os.hoyoverse.com
httpServer.post("/account/risky/api/check", new DispatchHttpJsonHandler("{\"retcode\":0,\"message\":\"OK\",\"data\":{\"id\":\"none\",\"action\":\"ACTION_NONE\",\"geetest\":null}}"));
// Config
// sdk-os-static.hoyoverse.com
httpServer.get("/combo/box/api/config/sdk/combo", new DispatchHttpJsonHandler("{\"retcode\":0,\"message\":\"OK\",\"data\":{\"vals\":{\"disable_email_bind_skip\":\"false\",\"email_bind_remind_interval\":\"7\",\"email_bind_remind\":\"true\"}}}"));
// hk4e-sdk-os-static.hoyoverse.com
httpServer.get("/hk4e_global/combo/granter/api/getConfig", new DispatchHttpJsonHandler("{\"retcode\":0,\"message\":\"OK\",\"data\":{\"protocol\":true,\"qr_enabled\":false,\"log_level\":\"INFO\",\"announce_url\":\"https://webstatic-sea.hoyoverse.com/hk4e/announcement/index.html?sdk_presentation_style=fullscreen\\u0026sdk_screen_transparent=true\\u0026game_biz=hk4e_global\\u0026auth_appid=announcement\\u0026game=hk4e#/\",\"push_alias_type\":2,\"disable_ysdk_guard\":false,\"enable_announce_pic_popup\":true}}"));
// hk4e-sdk-os-static.hoyoverse.com
httpServer.get("/hk4e_global/mdk/shield/api/loadConfig", new DispatchHttpJsonHandler("{\"retcode\":0,\"message\":\"OK\",\"data\":{\"id\":6,\"game_key\":\"hk4e_global\",\"client\":\"PC\",\"identity\":\"I_IDENTITY\",\"guest\":false,\"ignore_versions\":\"\",\"scene\":\"S_NORMAL\",\"name\":\"原神海外\",\"disable_regist\":false,\"enable_email_captcha\":false,\"thirdparty\":[\"fb\",\"tw\"],\"disable_mmt\":false,\"server_guest\":false,\"thirdparty_ignore\":{\"tw\":\"\",\"fb\":\"\"},\"enable_ps_bind_account\":false,\"thirdparty_login_configs\":{\"tw\":{\"token_type\":\"TK_GAME_TOKEN\",\"game_token_expires_in\":604800},\"fb\":{\"token_type\":\"TK_GAME_TOKEN\",\"game_token_expires_in\":604800}}}}"));
// Test api?
// abtest-api-data-sg.hoyoverse.com
httpServer.post("/data_abtest_api/config/experiment/list", new DispatchHttpJsonHandler("{\"retcode\":0,\"success\":true,\"message\":\"\",\"data\":[{\"code\":1000,\"type\":2,\"config_id\":\"14\",\"period_id\":\"6036_99\",\"version\":\"1\",\"configs\":{\"cardType\":\"old\"}}]}"));
// log-upload-os.mihoyo.com
httpServer.all("/log/sdk/upload", new DispatchHttpJsonHandler("{\"code\":0}"));
httpServer.all("/sdk/upload", new DispatchHttpJsonHandler("{\"code\":0}"));
httpServer.post("/sdk/dataUpload", new DispatchHttpJsonHandler("{\"code\":0}"));
// /perf/config/verify?device_id=xxx&platform=x&name=xxx
httpServer.all("/perf/config/verify", new DispatchHttpJsonHandler("{\"code\":0}"));
// Logging servers
// overseauspider.yuanshen.com
httpServer.all("/log", new ClientLogHandler());
// log-upload-os.mihoyo.com
httpServer.all("/crash/dataUpload", new ClientLogHandler());
// webstatic-sea.hoyoverse.com
httpServer.get("/admin/mi18n/plat_oversea/m202003048/m202003048-version.json", new DispatchHttpJsonHandler("{\"version\":51}"));
// gacha record.
String gachaMappingsPath = Utils.toFilePath(Grasscutter.getConfig().DATA_FOLDER + "/gacha_mappings.js");
// TODO: Only serve the html page and have a subsequent request to fetch the gacha data.
httpServer.get("/gacha", new GachaRecordHandler());
if(!(new File(gachaMappingsPath).exists())) {
Tools.createGachaMapping(gachaMappingsPath);
}
httpServer.raw().config.addSinglePageRoot("/gacha/mappings", gachaMappingsPath, Location.EXTERNAL);
// static file support for plugins
httpServer.raw().config.precompressStaticFiles = false; // If this isn't set to false, files such as images may appear corrupted when serving static files
httpServer.listen(Grasscutter.getConfig().getDispatchOptions().Port);
Grasscutter.getLogger().info(translate("messages.dispatch.port_bind", Integer.toString(httpServer.raw().port())));
}
private Map<String, String> parseQueryString(String qs) {
Map<String, String> result = new HashMap<>();
if (qs == null) {
return result;
}
int last = 0, next, l = qs.length();
while (last < l) {
next = qs.indexOf('&', last);
if (next == -1) {
next = l;
}
if (next > last) {
int eqPos = qs.indexOf('=', last);
try {
if (eqPos < 0 || eqPos > next) {
result.put(URLDecoder.decode(qs.substring(last, next), "utf-8"), "");
} else {
result.put(URLDecoder.decode(qs.substring(last, eqPos), "utf-8"),
URLDecoder.decode(qs.substring(eqPos + 1, next), "utf-8"));
}
} catch (UnsupportedEncodingException e) {
throw new RuntimeException(e); // will never happen, utf-8 support is mandatory for java
}
}
last = next + 1;
}
return result;
}
public AuthenticationHandler getAuthHandler() {
if(authHandler == null) {
return new DefaultAuthenticationHandler();
}
return authHandler;
}
public boolean registerAuthHandler(AuthenticationHandler authHandler) {
if(this.authHandler != null) {
Grasscutter.getLogger().error(String.format("[Dispatch] Unable to register '%s' authentication handler. \n" +
"The '%s' authentication handler has already been registered", authHandler.getClass().getName(), this.authHandler.getClass().getName()));
return false;
}
this.authHandler = authHandler;
return true;
}
public void resetAuthHandler() {
this.authHandler = null;
}
public static class RegionData {
QueryCurrRegionHttpRsp parsedRegionQuery;
String Base64;
public RegionData(QueryCurrRegionHttpRsp prq, String b64) {
this.parsedRegionQuery = prq;
this.Base64 = b64;
}
public QueryCurrRegionHttpRsp getParsedRegionQuery() {
return parsedRegionQuery;
}
public String getBase64() {
return Base64;
}
}
}
package emu.grasscutter.server.dispatch.authentication;
import emu.grasscutter.server.dispatch.json.LoginAccountRequestJson;
import emu.grasscutter.server.dispatch.json.LoginResultJson;
import express.http.Request;
import express.http.Response;
public interface AuthenticationHandler {
// This is in case plugins also want some sort of authentication
void handleLogin(Request req, Response res);
void handleRegister(Request req, Response res);
void handleChangePassword(Request req, Response res);
LoginResultJson handleGameLogin(Request req, LoginAccountRequestJson requestData);
}
package emu.grasscutter.server.dispatch.authentication;
import emu.grasscutter.Grasscutter;
import emu.grasscutter.database.DatabaseHelper;
import emu.grasscutter.game.Account;
import emu.grasscutter.server.dispatch.json.LoginAccountRequestJson;
import emu.grasscutter.server.dispatch.json.LoginResultJson;
import express.http.Request;
import express.http.Response;
import static emu.grasscutter.utils.Language.translate;
public class DefaultAuthenticationHandler implements AuthenticationHandler {
@Override
public void handleLogin(Request req, Response res) {
res.send("Authentication is not available with the default authentication method");
}
@Override
public void handleRegister(Request req, Response res) {
res.send("Authentication is not available with the default authentication method");
}
@Override
public void handleChangePassword(Request req, Response res) {
res.send("Authentication is not available with the default authentication method");
}
@Override
public LoginResultJson handleGameLogin(Request req, LoginAccountRequestJson requestData) {
LoginResultJson responseData = new LoginResultJson();
// Login
Account account = DatabaseHelper.getAccountByName(requestData.account);
// Check if account exists, else create a new one.
if (account == null) {
// Account doesn't exist, so we can either auto create it if the config value is set.
if (Grasscutter.getConfig().getDispatchOptions().AutomaticallyCreateAccounts) {
// This account has been created AUTOMATICALLY. There will be no permissions added.
account = DatabaseHelper.createAccountWithId(requestData.account, 0);
for (String permission : Grasscutter.getConfig().getDispatchOptions().defaultPermissions) {
account.addPermission(permission);
}
if (account != null) {
responseData.message = "OK";
responseData.data.account.uid = account.getId();
responseData.data.account.token = account.generateSessionKey();
responseData.data.account.email = account.getEmail();
Grasscutter.getLogger().info(translate("messages.dispatch.account.account_login_create_success", req.ip(), responseData.data.account.uid));
} else {
responseData.retcode = -201;
responseData.message = translate("messages.dispatch.account.username_create_error");
Grasscutter.getLogger().info(translate("messages.dispatch.account.account_login_create_error", req.ip()));
}
} else {
responseData.retcode = -201;
responseData.message = translate("messages.dispatch.account.username_error");
Grasscutter.getLogger().info(translate("messages.dispatch.account.account_login_exist_error", req.ip()));
}
} else {
// Account was found, log the player in
responseData.message = "OK";
responseData.data.account.uid = account.getId();
responseData.data.account.token = account.generateSessionKey();
responseData.data.account.email = account.getEmail();
Grasscutter.getLogger().info(translate("messages.dispatch.account.login_success", req.ip(), responseData.data.account.uid));
}
return responseData;
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment