diff --git a/proto/AbilityMixinCostStamina.proto b/proto/AbilityMixinCostStamina.proto
new file mode 100644
index 00000000..d2913fd6
--- /dev/null
+++ b/proto/AbilityMixinCostStamina.proto
@@ -0,0 +1,24 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
+// Copyright (C) 2022 Sorapointa Team
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as
+// published by the Free Software Foundation, either version 3 of the
+// License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+message AbilityMixinCostStamina {
+ bool is_swim = 7;
+}
diff --git a/proto/FireWorkData.proto b/proto/FireWorkData.proto
new file mode 100644
index 00000000..11d7c550
--- /dev/null
+++ b/proto/FireWorkData.proto
@@ -0,0 +1,11 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "FireWorkInstance.proto";
+
+message FireWorkData {
+ uint32 id = 1;
+ repeated FireWorkInstance fireWorkInstance = 2;
+}
diff --git a/proto/FireWorkInstance.proto b/proto/FireWorkInstance.proto
new file mode 100644
index 00000000..b801bcee
--- /dev/null
+++ b/proto/FireWorkInstance.proto
@@ -0,0 +1,11 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "FireWorkType.proto";
+
+message FireWorkInstance {
+ FireWorkType type = 1;
+ int32 value = 2;
+}
diff --git a/proto/FireWorkNotify.proto b/proto/FireWorkNotify.proto
new file mode 100644
index 00000000..67503e80
--- /dev/null
+++ b/proto/FireWorkNotify.proto
@@ -0,0 +1,13 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "FireWorkData.proto";
+
+// CmdId: 6079
+// EnetChannelId: 0
+// EnetIsReliable: true
+message FireWorkNotify {
+ repeated FireWorkData fireWorkData = 1;
+}
diff --git a/proto/FireWorkReq.proto b/proto/FireWorkReq.proto
new file mode 100644
index 00000000..9f645394
--- /dev/null
+++ b/proto/FireWorkReq.proto
@@ -0,0 +1,14 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "FireWorkData.proto";
+
+// CmdId: 6068
+// EnetChannelId: 0
+// EnetIsReliable: true
+// IsAllowClient: true
+message FireWorkReq {
+ FireWorkData fireWorkData = 7;
+}
diff --git a/proto/FireWorkType.proto b/proto/FireWorkType.proto
new file mode 100644
index 00000000..4730c9d7
--- /dev/null
+++ b/proto/FireWorkType.proto
@@ -0,0 +1,13 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+enum FireWorkType {
+ FireWorkType_ODJKANKMPPJ = 0;
+ FireWorkType_EFGLHEIODFN = 1;
+ FireWorkType_JPBBBCFGHAK = 2;
+ FireWorkType_IDCMGHBHBFH = 3;
+ FireWorkType_ODDBNNDFMBO = 4;
+ FireWorkType_AGIDMOGJOBD = 5;
+}
diff --git a/proto/FireworkSetData.proto b/proto/FireworkSetData.proto
new file mode 100644
index 00000000..6da0c798
--- /dev/null
+++ b/proto/FireworkSetData.proto
@@ -0,0 +1,12 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "FireWorkInstance.proto";
+
+message FireworkSetData {
+ uint32 id = 1;
+ repeated uint32 _unknown_field_ = 2;
+ repeated FireWorkInstance fireWorkInstance = 3;
+}
diff --git a/proto/FireworkSetNotify.proto b/proto/FireworkSetNotify.proto
new file mode 100644
index 00000000..80868783
--- /dev/null
+++ b/proto/FireworkSetNotify.proto
@@ -0,0 +1,14 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "FireworkSetData.proto";
+
+// CmdId: 5934
+// EnetChannelId: 0
+// EnetIsReliable: true
+message FireworkSetNotify {
+ uint32 code = 1;
+ repeated FireworkSetData data = 9;
+}
diff --git a/proto/FireworkSetReq.proto b/proto/FireworkSetReq.proto
new file mode 100644
index 00000000..7216b353
--- /dev/null
+++ b/proto/FireworkSetReq.proto
@@ -0,0 +1,14 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "FireworkSetData.proto";
+
+// CmdId: 6099
+// EnetChannelId: 0
+// EnetIsReliable: true
+// IsAllowClient: true
+message FireworkSetReq {
+ FireworkSetData data = 2;
+}
diff --git a/proto/FireworkSetRsp.proto b/proto/FireworkSetRsp.proto
new file mode 100644
index 00000000..229ba490
--- /dev/null
+++ b/proto/FireworkSetRsp.proto
@@ -0,0 +1,11 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+// CmdId: 5969
+// EnetChannelId: 0
+// EnetIsReliable: true
+message NBFJOJPCCEK_Rsp {
+ int32 retcode = 7;
+}
diff --git a/proto/MusicBeatmap.proto b/proto/MusicBeatmap.proto
new file mode 100644
index 00000000..399286e2
--- /dev/null
+++ b/proto/MusicBeatmap.proto
@@ -0,0 +1,11 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicBeatmapList.proto";
+
+message MusicBeatmap {
+ uint32 music_id = 1;
+ repeated MusicBeatmapList beatmap_item_list = 2;
+}
diff --git a/proto/MusicBeatmapList.proto b/proto/MusicBeatmapList.proto
new file mode 100644
index 00000000..13b01cf0
--- /dev/null
+++ b/proto/MusicBeatmapList.proto
@@ -0,0 +1,10 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicBeatmapNote.proto";
+
+message MusicBeatmapList {
+ repeated MusicBeatmapNote beatmap_note_list = 1;
+}
diff --git a/proto/MusicBeatmapNote.proto b/proto/MusicBeatmapNote.proto
new file mode 100644
index 00000000..cde64d3a
--- /dev/null
+++ b/proto/MusicBeatmapNote.proto
@@ -0,0 +1,9 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+message MusicBeatmapNote {
+ uint32 start_time = 1;
+ uint32 end_time = 2;
+}
diff --git a/proto/MusicGameActivityDetailInfo.proto b/proto/MusicGameActivityDetailInfo.proto
index 2cce0c58..f52101f0 100644
--- a/proto/MusicGameActivityDetailInfo.proto
+++ b/proto/MusicGameActivityDetailInfo.proto
@@ -1,12 +1,10 @@
syntax = "proto3";
-option java_package = "emu.grasscutter.net.proto";
-
-
-
import "MusicBriefInfo.proto";
import "MusicGameRecord.proto";
+option java_package = "emu.grasscutter.net.proto";
+
message MusicGameActivityDetailInfo {
repeated MusicBriefInfo Unk3300_AAGCDCOIPJM = 2;
repeated MusicBriefInfo Unk3300_OKHAACGHMAP = 6;
diff --git a/proto/MusicGameCreateBeatmapReq.proto b/proto/MusicGameCreateBeatmapReq.proto
new file mode 100644
index 00000000..4a87f750
--- /dev/null
+++ b/proto/MusicGameCreateBeatmapReq.proto
@@ -0,0 +1,22 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicBeatmap.proto";
+import "MusicBriefInfo.proto";
+import "MusicGameUnknown1Enum.proto";
+
+// CmdId: 6326
+// EnetChannelId: 0
+// EnetIsReliable: true
+// IsAllowClient: true
+message MusicGameCreateBeatmapReq {
+ MusicGameUnknown1Enum unknown_enum1 = 12;
+ oneof beatmap {
+ MusicBeatmap music_record = 10;
+ }
+ oneof brief_info {
+ MusicBriefInfo music_brief_info = 1021;
+ }
+}
diff --git a/proto/MusicGameCreateBeatmapRsp.proto b/proto/MusicGameCreateBeatmapRsp.proto
new file mode 100644
index 00000000..99a7231b
--- /dev/null
+++ b/proto/MusicGameCreateBeatmapRsp.proto
@@ -0,0 +1,16 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicGameUnknown1Enum.proto";
+
+// CmdId: 6347
+// EnetChannelId: 0
+// EnetIsReliable: true
+
+message MusicGameCreateBeatmapRsp {
+ int32 retcode = 10;
+ MusicGameUnknown1Enum unknown_enum1 = 12;
+ uint64 music_share_id = 5;
+}
diff --git a/proto/MusicGameGetBeatmapReq.proto b/proto/MusicGameGetBeatmapReq.proto
new file mode 100644
index 00000000..e33bbb68
--- /dev/null
+++ b/proto/MusicGameGetBeatmapReq.proto
@@ -0,0 +1,20 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicGameUnknown2Enum.proto";
+import "MusicGameGetBeatmapReqType.proto";
+import "MusicGameUnknown1Enum.proto";
+
+// CmdId: 6318
+// EnetChannelId: 0
+// EnetIsReliable: true
+// IsAllowClient: true
+message MusicGameGetBeatmapReq {
+ MusicGameUnknown1Enum unknown_enum1 = 1;
+ uint64 music_share_id = 10;
+ MusicGameUnknown2Enum unknown_enum2 = 12;
+ bool CDFOGGDLKNA = 15;
+ MusicGameGetBeatmapReqType req_type = 11;
+}
diff --git a/proto/MusicGameGetBeatmapReqType.proto b/proto/MusicGameGetBeatmapReqType.proto
new file mode 100644
index 00000000..efad4a34
--- /dev/null
+++ b/proto/MusicGameGetBeatmapReqType.proto
@@ -0,0 +1,15 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+enum MusicGameGetBeatmapReqType {
+ MusicGameGetBeatmapReqType_u1 = 0;
+ // edit_beatmap
+ MusicGameGetBeatmapReqType_u2 = 1;
+ // play_others
+ MusicGameGetBeatmapReqType_u3 = 2;
+ // try
+ MusicGameGetBeatmapReqType_u4 = 3;
+ MusicGameGetBeatmapReqType_u5 = 4;
+}
diff --git a/proto/MusicGameGetBeatmapRsp.proto b/proto/MusicGameGetBeatmapRsp.proto
new file mode 100644
index 00000000..fa355f96
--- /dev/null
+++ b/proto/MusicGameGetBeatmapRsp.proto
@@ -0,0 +1,25 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicGameGetBeatmapReqType.proto";
+import "MusicBeatmap.proto";
+import "MusicBriefInfo.proto";
+import "MusicGameUnknown1Enum.proto";
+
+// CmdId: 6309
+// EnetChannelId: 0
+// EnetIsReliable: true
+message MusicGameGetBeatmapRsp {
+ int32 retcode = 13;
+ MusicGameUnknown1Enum unknown_enum1 = 1;
+ uint64 music_share_id = 5;
+ MusicGameGetBeatmapReqType req_type = 2;
+ oneof beatmap {
+ MusicBeatmap music_record = 9;
+ }
+ oneof brief_info {
+ MusicBriefInfo music_brief_info = 953;
+ }
+}
diff --git a/proto/MusicGameRecord.proto b/proto/MusicGameRecord.proto
index 0ad1b863..dc40d771 100644
--- a/proto/MusicGameRecord.proto
+++ b/proto/MusicGameRecord.proto
@@ -2,9 +2,6 @@ syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
-
-
-
message MusicGameRecord {
bool isUnlock = 8;
uint32 maxScore = 15;
diff --git a/proto/MusicGameSearchBeatmapReq.proto b/proto/MusicGameSearchBeatmapReq.proto
new file mode 100644
index 00000000..9de25162
--- /dev/null
+++ b/proto/MusicGameSearchBeatmapReq.proto
@@ -0,0 +1,15 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicGameUnknown1Enum.proto";
+
+// CmdId: 6343
+// EnetChannelId: 0
+// EnetIsReliable: true
+// IsAllowClient: true
+message MusicGameSearchBeatmapReq {
+ MusicGameUnknown1Enum unknown_enum1 = 10;
+ uint64 music_share_id = 6;
+}
diff --git a/proto/MusicGameSearchBeatmapRsp.proto b/proto/MusicGameSearchBeatmapRsp.proto
new file mode 100644
index 00000000..4f377e07
--- /dev/null
+++ b/proto/MusicGameSearchBeatmapRsp.proto
@@ -0,0 +1,19 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicBriefInfo.proto";
+import "MusicGameUnknown1Enum.proto";
+
+// CmdId: 6304
+// EnetChannelId: 0
+// EnetIsReliable: true
+message MusicGameSearchBeatmapRsp {
+ int32 retcode = 9;
+ MusicGameUnknown1Enum unknown_enum1 = 3;
+ uint64 music_share_id = 4;
+ oneof ELBEIFGDBMM {
+ MusicBriefInfo music_brief_info = 11;
+ }
+}
diff --git a/proto/MusicGameSettleReq.proto b/proto/MusicGameSettleReq.proto
index 3e099122..6d7133f5 100644
--- a/proto/MusicGameSettleReq.proto
+++ b/proto/MusicGameSettleReq.proto
@@ -2,18 +2,7 @@ syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
-
-
-
message MusicGameSettleReq {
- //enum COBMENDFOKN {
- // option allow_alias= true;
- // NONE = 0;
- // PEPPOHPHJOJ = 8066;
- // DCDNILFDFLB = 0;
- // NNBKOLMPOEA = 1;
- // EAJIABGAOCI = 1;
- //}
uint64 ugcGuid = 4;
repeated uint32 Unk3300_HHBCEPNLCLL = 1626;
diff --git a/proto/MusicGameSettleRsp.proto b/proto/MusicGameSettleRsp.proto
index c7b51af5..75740f41 100644
--- a/proto/MusicGameSettleRsp.proto
+++ b/proto/MusicGameSettleRsp.proto
@@ -2,17 +2,7 @@ syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
-
-
-
message MusicGameSettleRsp {
- //enum EHMCDJNMHDC {
- // option allow_alias= true;
- // NONE = 0;
- // PEPPOHPHJOJ = 8735;
- // DCDNILFDFLB = 0;
- // NNBKOLMPOEA = 1;
- //}
int32 retcode = 9;
bool isUnlockNextLevel = 1;
diff --git a/proto/MusicGameStartReq.proto b/proto/MusicGameStartReq.proto
index e929894f..73504bbd 100644
--- a/proto/MusicGameStartReq.proto
+++ b/proto/MusicGameStartReq.proto
@@ -2,20 +2,9 @@ syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
-
-
-
message MusicGameStartReq {
- //enum EMDPLMFEJCP {
- // option allow_alias= true;
- // NONE = 0;
- // PEPPOHPHJOJ = 8536;
- // DCDNILFDFLB = 0;
- // NNBKOLMPOEA = 1;
- // EAJIABGAOCI = 1;
- //}
- uint64 ugcGuid = 5;
+ uint64 ugcGuid = 5;
uint32 musicBasicId = 7;
bool isSaveScore = 15;
}
diff --git a/proto/MusicGameStartRsp.proto b/proto/MusicGameStartRsp.proto
index 622f2aee..41441f09 100644
--- a/proto/MusicGameStartRsp.proto
+++ b/proto/MusicGameStartRsp.proto
@@ -2,19 +2,8 @@ syntax = "proto3";
option java_package = "emu.grasscutter.net.proto";
-
-
-
message MusicGameStartRsp {
- //enum PFNNLOBODEB {
- // option allow_alias= true;
- // NONE = 0;
- // PEPPOHPHJOJ = 8893;
- // DCDNILFDFLB = 0;
- // NNBKOLMPOEA = 1;
- //}
-
- int32 retcode = 10;
+ int32 retcode = 10;
uint64 ugcGuid = 8;
uint32 musicBasicId = 15;
}
diff --git a/proto/MusicGameStartToPlayOthersBeatmapReq.proto b/proto/MusicGameStartToPlayOthersBeatmapReq.proto
new file mode 100644
index 00000000..25fcad8a
--- /dev/null
+++ b/proto/MusicGameStartToPlayOthersBeatmapReq.proto
@@ -0,0 +1,14 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicGameUnknown1Enum.proto";
+
+// CmdId: 6302
+// EnetChannelId: 0
+// EnetIsReliable: true
+// IsAllowClient: true
+message MusicGameStartToPlayOthersBeatmapReq {
+ MusicGameUnknown1Enum unknown_enum1 = 12;
+}
diff --git a/proto/MusicGameStartToPlayOthersBeatmapRsp.proto b/proto/MusicGameStartToPlayOthersBeatmapRsp.proto
new file mode 100644
index 00000000..8f935b9e
--- /dev/null
+++ b/proto/MusicGameStartToPlayOthersBeatmapRsp.proto
@@ -0,0 +1,15 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+import "MusicGameUnknown1Enum.proto";
+
+// CmdId: 6313
+// EnetChannelId: 0
+// EnetIsReliable: true
+message MusicGameStartToPlayOthersBeatmapRsp {
+ int32 retcode = 2;
+ MusicGameUnknown1Enum unknown_enum1 = 11;
+ repeated uint64 AMNODOLNOIM = 6;
+}
diff --git a/proto/MusicGameUnknown1Enum.proto b/proto/MusicGameUnknown1Enum.proto
new file mode 100644
index 00000000..38fca4a4
--- /dev/null
+++ b/proto/MusicGameUnknown1Enum.proto
@@ -0,0 +1,9 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+enum MusicGameUnknown1Enum {
+ MusicGameUnknown1Enum_NONE = 0;
+ MusicGameUnknown1Enum_u2 = 1;
+}
diff --git a/proto/MusicGameUnknown2Enum.proto b/proto/MusicGameUnknown2Enum.proto
new file mode 100644
index 00000000..4c61a1d3
--- /dev/null
+++ b/proto/MusicGameUnknown2Enum.proto
@@ -0,0 +1,10 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+enum MusicGameUnknown2Enum {
+ MusicGameUnknown2Enum_u1 = 0;
+ MusicGameUnknown2Enum_MINE = 1;
+ MusicGameUnknown2Enum_u3 = 2;
+}
diff --git a/proto/PacketHead.proto b/proto/PacketHead.proto
new file mode 100644
index 00000000..ae302a3e
--- /dev/null
+++ b/proto/PacketHead.proto
@@ -0,0 +1,41 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
+// Copyright (C) 2022 Sorapointa Team
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as
+// published by the Free Software Foundation, either version 3 of the
+// License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+message PacketHead {
+ uint32 packet_id = 1;
+ uint32 rpc_id = 2;
+ uint32 client_sequence_id = 3;
+ uint32 enet_channel_id = 4;
+ uint32 enet_is_reliable = 5;
+ uint64 sent_ms = 6;
+ uint32 user_id = 11;
+ uint32 user_ip = 12;
+ uint32 user_session_id = 13;
+ uint64 recv_time_ms = 21;
+ uint32 rpc_begin_time_ms = 22;
+ map ext_map = 23;
+ uint32 sender_app_id = 24;
+ uint32 source_service = 31;
+ uint32 target_service = 32;
+ map service_app_id_map = 33;
+ bool is_set_game_thread = 34;
+ uint32 game_thread_index = 35;
+}
diff --git a/proto/QueryRegionListHttpRsp.proto b/proto/QueryRegionListHttpRsp.proto
new file mode 100644
index 00000000..8845cf11
--- /dev/null
+++ b/proto/QueryRegionListHttpRsp.proto
@@ -0,0 +1,30 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
+// Copyright (C) 2022 Sorapointa Team
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as
+// published by the Free Software Foundation, either version 3 of the
+// License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
+syntax = "proto3";
+
+import "RegionSimpleInfo.proto";
+
+option java_package = "emu.grasscutter.net.proto";
+
+message QueryRegionListHttpRsp {
+ int32 retcode = 1;
+ repeated RegionSimpleInfo region_list = 2;
+ bytes client_secret_key = 5;
+ bytes client_custom_config_encrypted = 6;
+ bool enable_login_pc = 7;
+}
diff --git a/proto/RegionSimpleInfo.proto b/proto/RegionSimpleInfo.proto
new file mode 100644
index 00000000..6d48b932
--- /dev/null
+++ b/proto/RegionSimpleInfo.proto
@@ -0,0 +1,27 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
+// Copyright (C) 2022 Sorapointa Team
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as
+// published by the Free Software Foundation, either version 3 of the
+// License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+message RegionSimpleInfo {
+ string name = 1;
+ string title = 2;
+ string type = 3;
+ string dispatch_url = 4;
+}
diff --git a/proto/Retcode.proto b/proto/Retcode.proto
new file mode 100644
index 00000000..e5586dd5
--- /dev/null
+++ b/proto/Retcode.proto
@@ -0,0 +1,1219 @@
+// Proto has been converted from Sorapointa to Grasscutter format
+// Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa.
+// Copyright (C) 2022 Sorapointa Team
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Affero General Public License as
+// published by the Free Software Foundation, either version 3 of the
+// License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with this program. If not, see .
+
+syntax = "proto3";
+
+option java_package = "emu.grasscutter.net.proto";
+
+enum Retcode {
+ RET_SUCC = 0;
+ RET_FAIL = -1;
+ RET_SVR_ERROR = 1;
+ RET_UNKNOWN_ERROR = 2;
+ RET_FREQUENT = 3;
+ RET_NODE_FORWARD_ERROR = 4;
+ RET_NOT_FOUND_CONFIG = 5;
+ RET_SYSTEM_BUSY = 6;
+ RET_GM_UID_BIND = 7;
+ RET_FORBIDDEN = 8;
+ RET_STOP_REGISTER = 10;
+ RET_STOP_SERVER = 11;
+ RET_ACCOUNT_VEIRFY_ERROR = 12;
+ RET_ACCOUNT_FREEZE = 13;
+ RET_REPEAT_LOGIN = 14;
+ RET_CLIENT_VERSION_ERROR = 15;
+ RET_TOKEN_ERROR = 16;
+ RET_ACCOUNT_NOT_EXIST = 17;
+ RET_WAIT_OTHER_LOGIN = 18;
+ RET_ANOTHER_LOGIN = 19;
+ RET_CLIENT_FORCE_UPDATE = 20;
+ RET_BLACK_UID = 21;
+ RET_LOGIN_DB_FAIL = 22;
+ RET_LOGIN_INIT_FAIL = 23;
+ RET_MYSQL_DUPLICATE = 24;
+ RET_MAX_PLAYER = 25;
+ RET_ANTI_ADDICT = 26;
+ RET_PS_PLAYER_WITHOUT_ONLINE_ID = 27;
+ RET_ONLINE_ID_NOT_FOUND = 28;
+ RET_ONLNE_ID_NOT_MATCH = 29;
+ RET_REGISTER_IS_FULL = 30;
+ RET_CHECKSUM_INVALID = 31;
+ RET_BLACK_REGISTER_IP = 32;
+ RET_EXCEED_REGISTER_RATE = 33;
+ RET_UNKNOWN_PLATFORM = 34;
+ RET_TOKEN_PARAM_ERROR = 35;
+ RET_ANTI_OFFLINE_ERROR = 36;
+ RET_BLACK_LOGIN_IP = 37;
+ RET_GET_TOKEN_SESSION_HAS_UID = 38;
+ RET_ENVIRONMENT_ERROR = 39;
+ RET_CHECK_CLIENT_VERSION_HASH_FAIL = 40;
+ RET_MINOR_REGISTER_FOBIDDEN = 41;
+ RET_SECURITY_LIBRARY_ERROR = 42;
+ RET_AVATAR_IN_CD = 101;
+ RET_AVATAR_NOT_ALIVE = 102;
+ RET_AVATAR_NOT_ON_SCENE = 103;
+ RET_CAN_NOT_FIND_AVATAR = 104;
+ RET_CAN_NOT_DEL_CUR_AVATAR = 105;
+ RET_DUPLICATE_AVATAR = 106;
+ RET_AVATAR_IS_SAME_ONE = 107;
+ RET_AVATAR_LEVEL_LESS_THAN = 108;
+ RET_AVATAR_CAN_NOT_CHANGE_ELEMENT = 109;
+ RET_AVATAR_BREAK_LEVEL_LESS_THAN = 110;
+ RET_AVATAR_ON_MAX_BREAK_LEVEL = 111;
+ RET_AVATAR_ID_ALREADY_EXIST = 112;
+ RET_AVATAR_NOT_DEAD = 113;
+ RET_AVATAR_IS_REVIVING = 114;
+ RET_AVATAR_ID_ERROR = 115;
+ RET_REPEAT_SET_PLAYER_BORN_DATA = 116;
+ RET_PLAYER_LEVEL_LESS_THAN = 117;
+ RET_AVATAR_LIMIT_LEVEL_ERROR = 118;
+ RET_CUR_AVATAR_NOT_ALIVE = 119;
+ RET_CAN_NOT_FIND_TEAM = 120;
+ RET_CAN_NOT_FIND_CUR_TEAM = 121;
+ RET_AVATAR_NOT_EXIST_IN_TEAM = 122;
+ RET_CAN_NOT_REMOVE_CUR_AVATAR_FROM_TEAM = 123;
+ RET_CAN_NOT_USE_REVIVE_ITEM_FOR_CUR_AVATAR = 124;
+ RET_TEAM_COST_EXCEED_LIMIT = 125;
+ RET_TEAM_AVATAR_IN_EXPEDITION = 126;
+ RET_TEAM_CAN_NOT_CHOSE_REPLACE_USE = 127;
+ RET_AVATAR_IN_COMBAT = 128;
+ RET_NICKNAME_UTF8_ERROR = 130;
+ RET_NICKNAME_TOO_LONG = 131;
+ RET_NICKNAME_WORD_ILLEGAL = 132;
+ RET_NICKNAME_TOO_MANY_DIGITS = 133;
+ RET_NICKNAME_IS_EMPTY = 134;
+ RET_NICKNAME_MONTHLY_LIMIT = 135;
+ RET_NICKNAME_NOT_CHANGED = 136;
+ RET_PLAYER_NOT_ONLINE = 140;
+ RET_OPEN_STATE_NOT_OPEN = 141;
+ RET_FEATURE_CLOSED = 142;
+ RET_AVATAR_EXPEDITION_AVATAR_DIE = 152;
+ RET_AVATAR_EXPEDITION_COUNT_LIMIT = 153;
+ RET_AVATAR_EXPEDITION_MAIN_FORBID = 154;
+ RET_AVATAR_EXPEDITION_TRIAL_FORBID = 155;
+ RET_TEAM_NAME_ILLEGAL = 156;
+ RET_IS_NOT_IN_STANDBY = 157;
+ RET_IS_IN_DUNGEON = 158;
+ RET_IS_IN_LOCK_AVATAR_QUEST = 159;
+ RET_IS_USING_TRIAL_AVATAR = 160;
+ RET_IS_USING_TEMP_AVATAR = 161;
+ RET_NOT_HAS_FLYCLOAK = 162;
+ RET_FETTER_REWARD_ALREADY_GOT = 163;
+ RET_FETTER_REWARD_LEVEL_NOT_ENOUGH = 164;
+ RET_WORLD_LEVEL_ADJUST_MIN_LEVEL = 165;
+ RET_WORLD_LEVEL_ADJUST_CD = 166;
+ RET_NOT_HAS_COSTUME = 167;
+ RET_COSTUME_AVATAR_ERROR = 168;
+ RET_FLYCLOAK_PLATFORM_TYPE_ERR = 169;
+ RET_IN_TRANSFER = 170;
+ RET_IS_IN_LOCK_AVATAR = 171;
+ RET_FULL_BACKUP_TEAM = 172;
+ RET_BACKUP_TEAM_ID_NOT_VALID = 173;
+ RET_BACKUP_TEAM_IS_CUR_TEAM = 174;
+ RET_AVATAR_RENAME_IN_CD = 175;
+ RET_AVATAR_RENAME_IN_AUDIT = 176;
+ RET_AVATAR_RENAME_IN_IP_BLACK_LIST = 177;
+ RET_FLOAT_ERROR = 201;
+ RET_NPC_NOT_EXIST = 301;
+ RET_NPC_TOO_FAR = 302;
+ RET_NOT_CURRENT_TALK = 303;
+ RET_NPC_CREATE_FAIL = 304;
+ RET_NPC_MOVE_FAIL = 305;
+ RET_QUEST_NOT_EXIST = 401;
+ RET_QUEST_IS_FAIL = 402;
+ RET_QUEST_CONTENT_ERROR = 403;
+ RET_BARGAIN_NOT_ACTIVATED = 404;
+ RET_BARGAIN_FINISHED = 405;
+ RET_INFERENCE_ASSOCIATE_WORD_ERROR = 406;
+ RET_INFERENCE_SUBMIT_WORD_NO_CONCLUSION = 407;
+ RET_POINT_NOT_UNLOCKED = 501;
+ RET_POINT_TOO_FAR = 502;
+ RET_POINT_ALREAY_UNLOCKED = 503;
+ RET_ENTITY_NOT_EXIST = 504;
+ RET_ENTER_SCENE_FAIL = 505;
+ RET_PLAYER_IS_ENTER_SCENE = 506;
+ RET_CITY_MAX_LEVEL = 507;
+ RET_AREA_LOCKED = 508;
+ RET_JOIN_OTHER_WAIT = 509;
+ RET_WEATHER_AREA_NOT_FOUND = 510;
+ RET_WEATHER_IS_LOCKED = 511;
+ RET_NOT_IN_SELF_SCENE = 512;
+ RET_GROUP_NOT_EXIST = 513;
+ RET_MARK_NAME_ILLEGAL = 514;
+ RET_MARK_ALREADY_EXISTS = 515;
+ RET_MARK_OVERFLOW = 516;
+ RET_MARK_NOT_EXISTS = 517;
+ RET_MARK_UNKNOWN_TYPE = 518;
+ RET_MARK_NAME_TOO_LONG = 519;
+ RET_DISTANCE_LONG = 520;
+ RET_ENTER_SCENE_TOKEN_INVALID = 521;
+ RET_NOT_IN_WORLD_SCENE = 522;
+ RET_ANY_GALLERY_STARTED = 523;
+ RET_GALLERY_NOT_START = 524;
+ RET_GALLERY_INTERRUPT_ONLY_ON_SINGLE_MODE = 525;
+ RET_GALLERY_CANNOT_INTERRUPT = 526;
+ RET_GALLERY_WORLD_NOT_MEET = 527;
+ RET_GALLERY_SCENE_NOT_MEET = 528;
+ RET_CUR_PLAY_CANNOT_TRANSFER = 529;
+ RET_CANT_USE_WIDGET_IN_HOME_SCENE = 530;
+ RET_SCENE_GROUP_NOT_MATCH = 531;
+ RET_POS_ROT_INVALID = 551;
+ RET_MARK_INVALID_SCENE_ID = 552;
+ RET_INVALID_SCENE_TO_USE_ANCHOR_POINT = 553;
+ RET_ENTER_HOME_SCENE_FAIL = 554;
+ RET_CUR_SCENE_IS_NULL = 555;
+ RET_GROUP_ID_ERROR = 556;
+ RET_GALLERY_INTERRUPT_NOT_OWNER = 557;
+ RET_NO_SPRING_IN_AREA = 558;
+ RET_AREA_NOT_IN_SCENE = 559;
+ RET_INVALID_CITY_ID = 560;
+ RET_INVALID_SCENE_ID = 561;
+ RET_DEST_SCENE_IS_NOT_ALLOW = 562;
+ RET_LEVEL_TAG_SWITCH_IN_CD = 563;
+ RET_LEVEL_TAG_ALREADY_EXIST = 564;
+ RET_INVALID_AREA_ID = 565;
+ RET_ITEM_NOT_EXIST = 601;
+ RET_PACK_EXCEED_MAX_WEIGHT = 602;
+ RET_ITEM_NOT_DROPABLE = 603;
+ RET_ITEM_NOT_USABLE = 604;
+ RET_ITEM_INVALID_USE_COUNT = 605;
+ RET_ITEM_INVALID_DROP_COUNT = 606;
+ RET_ITEM_ALREADY_EXIST = 607;
+ RET_ITEM_IN_COOLDOWN = 608;
+ RET_ITEM_COUNT_NOT_ENOUGH = 609;
+ RET_ITEM_INVALID_TARGET = 610;
+ RET_RECIPE_NOT_EXIST = 611;
+ RET_RECIPE_LOCKED = 612;
+ RET_RECIPE_UNLOCKED = 613;
+ RET_COMPOUND_QUEUE_FULL = 614;
+ RET_COMPOUND_NOT_FINISH = 615;
+ RET_MAIL_ITEM_NOT_GET = 616;
+ RET_ITEM_EXCEED_LIMIT = 617;
+ RET_AVATAR_CAN_NOT_USE = 618;
+ RET_ITEM_NEED_PLAYER_LEVEL = 619;
+ RET_RECIPE_NOT_AUTO_QTE = 620;
+ RET_COMPOUND_BUSY_QUEUE = 621;
+ RET_NEED_MORE_SCOIN = 622;
+ RET_SKILL_DEPOT_NOT_FOUND = 623;
+ RET_HCOIN_NOT_ENOUGH = 624;
+ RET_SCOIN_NOT_ENOUGH = 625;
+ RET_HCOIN_EXCEED_LIMIT = 626;
+ RET_SCOIN_EXCEED_LIMIT = 627;
+ RET_MAIL_EXPIRED = 628;
+ RET_REWARD_HAS_TAKEN = 629;
+ RET_COMBINE_COUNT_TOO_LARGE = 630;
+ RET_GIVING_ITEM_WRONG = 631;
+ RET_GIVING_IS_FINISHED = 632;
+ RET_GIVING_NOT_ACTIVED = 633;
+ RET_FORGE_QUEUE_FULL = 634;
+ RET_FORGE_QUEUE_CAPACITY = 635;
+ RET_FORGE_QUEUE_NOT_FOUND = 636;
+ RET_FORGE_QUEUE_EMPTY = 637;
+ RET_NOT_SUPPORT_ITEM = 638;
+ RET_ITEM_EMPTY = 639;
+ RET_VIRTUAL_EXCEED_LIMIT = 640;
+ RET_MATERIAL_EXCEED_LIMIT = 641;
+ RET_EQUIP_EXCEED_LIMIT = 642;
+ RET_ITEM_SHOULD_HAVE_NO_LEVEL = 643;
+ RET_WEAPON_PROMOTE_LEVEL_EXCEED_LIMIT = 644;
+ RET_WEAPON_LEVEL_INVALID = 645;
+ RET_UNKNOW_ITEM_TYPE = 646;
+ RET_ITEM_COUNT_IS_ZERO = 647;
+ RET_ITEM_IS_EXPIRED = 648;
+ RET_ITEM_EXCEED_OUTPUT_LIMIT = 649;
+ RET_EQUIP_LEVEL_HIGHER = 650;
+ RET_EQUIP_CAN_NOT_WAKE_OFF_WEAPON = 651;
+ RET_EQUIP_HAS_BEEN_WEARED = 652;
+ RET_EQUIP_WEARED_CANNOT_DROP = 653;
+ RET_AWAKEN_LEVEL_MAX = 654;
+ RET_MCOIN_NOT_ENOUGH = 655;
+ RET_MCOIN_EXCEED_LIMIT = 656;
+ RET_RESIN_NOT_ENOUGH = 660;
+ RET_RESIN_EXCEED_LIMIT = 661;
+ RET_RESIN_OPENSTATE_OFF = 662;
+ RET_RESIN_BOUGHT_COUNT_EXCEEDED = 663;
+ RET_RESIN_CARD_DAILY_REWARD_HAS_TAKEN = 664;
+ RET_RESIN_CARD_EXPIRED = 665;
+ RET_AVATAR_CAN_NOT_COOK = 666;
+ RET_ATTACH_AVATAR_CD = 667;
+ RET_AUTO_RECOVER_OPENSTATE_OFF = 668;
+ RET_AUTO_RECOVER_BOUGHT_COUNT_EXCEEDED = 669;
+ RET_RESIN_GAIN_FAILED = 670;
+ RET_WIDGET_ORNAMENTS_TYPE_ERROR = 671;
+ RET_ALL_TARGET_SATIATION_FULL = 672;
+ RET_FORGE_WORLD_LEVEL_NOT_MATCH = 673;
+ RET_FORGE_POINT_NOT_ENOUGH = 674;
+ RET_WIDGET_ANCHOR_POINT_FULL = 675;
+ RET_WIDGET_ANCHOR_POINT_NOT_FOUND = 676;
+ RET_ALL_BONFIRE_EXCEED_MAX_COUNT = 677;
+ RET_BONFIRE_EXCEED_MAX_COUNT = 678;
+ RET_LUNCH_BOX_DATA_ERROR = 679;
+ RET_INVALID_QUICK_USE_WIDGET = 680;
+ RET_INVALID_REPLACE_RESIN_COUNT = 681;
+ RET_PREV_DETECTED_GATHER_NOT_FOUND = 682;
+ RET_GOT_ALL_ONEOFF_GAHTER = 683;
+ RET_INVALID_WIDGET_MATERIAL_ID = 684;
+ RET_WIDGET_DETECTOR_NO_HINT_TO_CLEAR = 685;
+ RET_WIDGET_ALREADY_WITHIN_NEARBY_RADIUS = 686;
+ RET_WIDGET_CLIENT_COLLECTOR_NEED_POINTS = 687;
+ RET_WIDGET_IN_COMBAT = 688;
+ RET_WIDGET_NOT_SET_QUICK_USE = 689;
+ RET_ALREADY_ATTACH_WIDGET = 690;
+ RET_EQUIP_IS_LOCKED = 691;
+ RET_FORGE_IS_LOCKED = 692;
+ RET_COMBINE_IS_LOCKED = 693;
+ RET_FORGE_OUTPUT_STACK_LIMIT = 694;
+ RET_ALREADY_DETTACH_WIDGET = 695;
+ RET_GADGET_BUILDER_EXCEED_MAX_COUNT = 696;
+ RET_REUNION_PRIVILEGE_RESIN_TYPE_IS_NORMAL = 697;
+ RET_BONUS_COUNT_EXCEED_DOUBLE_LIMIT = 698;
+ RET_RELIQUARY_DECOMPOSE_PARAM_ERROR = 699;
+ RET_ITEM_COMBINE_COUNT_NOT_ENOUGH = 700;
+ RET_GOODS_NOT_EXIST = 701;
+ RET_GOODS_MATERIAL_NOT_ENOUGH = 702;
+ RET_GOODS_NOT_IN_TIME = 703;
+ RET_GOODS_BUY_NUM_NOT_ENOUGH = 704;
+ RET_GOODS_BUY_NUM_ERROR = 705;
+ RET_SHOP_NOT_OPEN = 706;
+ RET_SHOP_CONTENT_NOT_MATCH = 707;
+ RET_SHOP_BATCH_BUY_SHOP_LIMIT = 708;
+ RET_SHOP_BATCH_BUY_COUNT_LIMIT = 709;
+ RET_CHAT_FORBIDDEN = 798;
+ RET_CHAT_CD = 799;
+ RET_CHAT_FREQUENTLY = 800;
+ RET_GADGET_NOT_EXIST = 801;
+ RET_GADGET_NOT_INTERACTIVE = 802;
+ RET_GADGET_NOT_GATHERABLE = 803;
+ RET_CHEST_IS_LOCKED = 804;
+ RET_GADGET_CREATE_FAIL = 805;
+ RET_WORKTOP_OPTION_NOT_EXIST = 806;
+ RET_GADGET_STATUE_NOT_ACTIVE = 807;
+ RET_GADGET_STATUE_OPENED = 808;
+ RET_BOSS_CHEST_NO_QUALIFICATION = 809;
+ RET_BOSS_CHEST_LIFE_TIME_OVER = 810;
+ RET_BOSS_CHEST_WEEK_NUM_LIMIT = 811;
+ RET_BOSS_CHEST_GUEST_WORLD_LEVEL = 812;
+ RET_BOSS_CHEST_HAS_TAKEN = 813;
+ RET_BLOSSOM_CHEST_NO_QUALIFICATION = 814;
+ RET_BLOSSOM_CHEST_LIFE_TIME_OVER = 815;
+ RET_BLOSSOM_CHEST_HAS_TAKEN = 816;
+ RET_BLOSSOM_CHEST_GUEST_WORLD_LEVEL = 817;
+ RET_MP_PLAY_REWARD_NO_QUALIFICATION = 818;
+ RET_MP_PLAY_REWARD_HAS_TAKEN = 819;
+ RET_GENERAL_REWARD_NO_QUALIFICATION = 820;
+ RET_GENERAL_REWARD_LIFE_TIME_OVER = 821;
+ RET_GENERAL_REWARD_HAS_TAKEN = 822;
+ RET_GADGET_NOT_VEHICLE = 823;
+ RET_VEHICLE_SLOT_OCCUPIED = 824;
+ RET_NOT_IN_VEHICLE = 825;
+ RET_CREATE_VEHICLE_IN_CD = 826;
+ RET_CREATE_VEHICLE_POS_INVALID = 827;
+ RET_VEHICLE_POINT_NOT_UNLOCK = 828;
+ RET_GADGET_INTERACT_COND_NOT_MEET = 829;
+ RET_GADGET_INTERACT_PARAM_ERROR = 830;
+ RET_GADGET_CUSTOM_COMBINATION_INVALID = 831;
+ RET_DESHRET_OBELISK_DUPLICATE_INTERACT = 832;
+ RET_DESHRET_OBELISK_NO_AVAIL_CHEST = 833;
+ RET_ACTIVITY_CLOSE = 860;
+ RET_ACTIVITY_ITEM_ERROR = 861;
+ RET_ACTIVITY_CONTRIBUTION_NOT_ENOUGH = 862;
+ RET_SEA_LAMP_PHASE_NOT_FINISH = 863;
+ RET_SEA_LAMP_FLY_NUM_LIMIT = 864;
+ RET_SEA_LAMP_FLY_LAMP_WORD_ILLEGAL = 865;
+ RET_ACTIVITY_WATCHER_REWARD_TAKEN = 866;
+ RET_ACTIVITY_WATCHER_REWARD_NOT_FINISHED = 867;
+ RET_SALESMAN_ALREADY_DELIVERED = 868;
+ RET_SALESMAN_REWARD_COUNT_NOT_ENOUGH = 869;
+ RET_SALESMAN_POSITION_INVALID = 870;
+ RET_DELIVER_NOT_FINISH_ALL_QUEST = 871;
+ RET_DELIVER_ALREADY_TAKE_DAILY_REWARD = 872;
+ RET_ASTER_PROGRESS_EXCEED_LIMIT = 873;
+ RET_ASTER_CREDIT_EXCEED_LIMIT = 874;
+ RET_ASTER_TOKEN_EXCEED_LIMIT = 875;
+ RET_ASTER_CREDIT_NOT_ENOUGH = 876;
+ RET_ASTER_TOKEN_NOT_ENOUGH = 877;
+ RET_ASTER_SPECIAL_REWARD_HAS_TAKEN = 878;
+ RET_FLIGHT_GROUP_ACTIVITY_NOT_STARTED = 879;
+ RET_ASTER_MID_PREVIOUS_BATTLE_NOT_FINISHED = 880;
+ RET_DRAGON_SPINE_SHIMMERING_ESSENCE_EXCEED_LIMIT = 881;
+ RET_DRAGON_SPINE_WARM_ESSENCE_EXCEED_LIMIT = 882;
+ RET_DRAGON_SPINE_WONDROUS_ESSENCE_EXCEED_LIMIT = 883;
+ RET_DRAGON_SPINE_SHIMMERING_ESSENCE_NOT_ENOUGH = 884;
+ RET_DRAGON_SPINE_WARM_ESSENCE_NOT_ENOUGH = 885;
+ RET_DRAGON_SPINE_WONDROUS_ESSENCE_NOT_ENOUGH = 886;
+ RET_EFFIGY_FIRST_PASS_REWARD_HAS_TAKEN = 891;
+ RET_EFFIGY_REWARD_HAS_TAKEN = 892;
+ RET_TREASURE_MAP_ADD_TOKEN_EXCEED_LIMIT = 893;
+ RET_TREASURE_MAP_TOKEN_NOT_ENOUGHT = 894;
+ RET_SEA_LAMP_COIN_EXCEED_LIMIT = 895;
+ RET_SEA_LAMP_COIN_NOT_ENOUGH = 896;
+ RET_SEA_LAMP_POPULARITY_EXCEED_LIMIT = 897;
+ RET_ACTIVITY_AVATAR_REWARD_NOT_OPEN = 898;
+ RET_ACTIVITY_AVATAR_REWARD_HAS_TAKEN = 899;
+ RET_ARENA_ACTIVITY_ALREADY_STARTED = 900;
+ RET_TALENT_ALREAY_UNLOCKED = 901;
+ RET_PREV_TALENT_NOT_UNLOCKED = 902;
+ RET_BIG_TALENT_POINT_NOT_ENOUGH = 903;
+ RET_SMALL_TALENT_POINT_NOT_ENOUGH = 904;
+ RET_PROUD_SKILL_ALREADY_GOT = 905;
+ RET_PREV_PROUD_SKILL_NOT_GET = 906;
+ RET_PROUD_SKILL_MAX_LEVEL = 907;
+ RET_CANDIDATE_SKILL_DEPOT_ID_NOT_FIND = 910;
+ RET_SKILL_DEPOT_IS_THE_SAME = 911;
+ RET_MONSTER_NOT_EXIST = 1001;
+ RET_MONSTER_CREATE_FAIL = 1002;
+ RET_DUNGEON_ENTER_FAIL = 1101;
+ RET_DUNGEON_QUIT_FAIL = 1102;
+ RET_DUNGEON_ENTER_EXCEED_DAY_COUNT = 1103;
+ RET_DUNGEON_REVIVE_EXCEED_MAX_COUNT = 1104;
+ RET_DUNGEON_REVIVE_FAIL = 1105;
+ RET_DUNGEON_NOT_SUCCEED = 1106;
+ RET_DUNGEON_CAN_NOT_CANCEL = 1107;
+ RET_DEST_DUNGEON_SETTLED = 1108;
+ RET_DUNGEON_CANDIDATE_TEAM_IS_FULL = 1109;
+ RET_DUNGEON_CANDIDATE_TEAM_IS_DISMISS = 1110;
+ RET_DUNGEON_CANDIDATE_TEAM_NOT_ALL_READY = 1111;
+ RET_DUNGEON_CANDIDATE_TEAM_HAS_REPEAT_AVATAR = 1112;
+ RET_DUNGEON_CANDIDATE_NOT_SINGEL_PASS = 1113;
+ RET_DUNGEON_REPLAY_NEED_ALL_PLAYER_DIE = 1114;
+ RET_DUNGEON_REPLAY_HAS_REVIVE_COUNT = 1115;
+ RET_DUNGEON_OTHERS_LEAVE = 1116;
+ RET_DUNGEON_ENTER_LEVEL_LIMIT = 1117;
+ RET_DUNGEON_CANNOT_ENTER_PLOT_IN_MP = 1118;
+ RET_DUNGEON_DROP_SUBFIELD_LIMIT = 1119;
+ RET_DUNGEON_BE_INVITE_PLAYER_AVATAR_ALL_DIE = 1120;
+ RET_DUNGEON_CANNOT_KICK = 1121;
+ RET_DUNGEON_CANDIDATE_TEAM_SOMEONE_LEVEL_LIMIT = 1122;
+ RET_DUNGEON_IN_FORCE_QUIT = 1123;
+ RET_DUNGEON_GUEST_QUIT_DUNGEON = 1124;
+ RET_DUNGEON_TICKET_FAIL = 1125;
+ RET_CUR_DUNGEON_SETTLED = 1126;
+ RET_MP_NOT_IN_MY_WORLD = 1201;
+ RET_MP_IN_MP_MODE = 1202;
+ RET_MP_SCENE_IS_FULL = 1203;
+ RET_MP_MODE_NOT_AVAILABLE = 1204;
+ RET_MP_PLAYER_NOT_ENTERABLE = 1205;
+ RET_MP_QUEST_BLOCK_MP = 1206;
+ RET_MP_IN_ROOM_SCENE = 1207;
+ RET_MP_WORLD_IS_FULL = 1208;
+ RET_MP_PLAYER_NOT_ALLOW_ENTER = 1209;
+ RET_MP_PLAYER_DISCONNECTED = 1210;
+ RET_MP_NOT_IN_MP_MODE = 1211;
+ RET_MP_OWNER_NOT_ENTER = 1212;
+ RET_MP_ALLOW_ENTER_PLAYER_FULL = 1213;
+ RET_MP_TARGET_PLAYER_IN_TRANSFER = 1214;
+ RET_MP_TARGET_ENTERING_OTHER = 1215;
+ RET_MP_OTHER_ENTERING = 1216;
+ RET_MP_ENTER_MAIN_PLAYER_IN_PLOT = 1217;
+ RET_MP_NOT_PS_PLAYER = 1218;
+ RET_MP_PLAY_NOT_ACTIVE = 1219;
+ RET_MP_PLAY_REMAIN_REWARDS = 1220;
+ RET_MP_PLAY_NO_REWARD = 1221;
+ RET_MP_OPEN_STATE_FAIL = 1223;
+ RET_MP_PLAYER_IN_BLACKLIST = 1224;
+ RET_MP_REPLY_TIMEOUT = 1225;
+ RET_MP_IS_BLOCK = 1226;
+ RET_MP_ENTER_MAIN_PLAYER_IN_MP_PLAY = 1227;
+ RET_MP_IN_MP_PLAY_BATTLE = 1228;
+ RET_MP_GUEST_HAS_REWARD_REMAINED = 1229;
+ RET_MP_QUIT_MP_INVALID = 1230;
+ RET_MP_OTHER_DATA_VERSION_NOT_LATEST = 1231;
+ RET_MP_DATA_VERSION_NOT_LATEST = 1232;
+ RET_MP_CUR_WORLD_NOT_ENTERABLE = 1233;
+ RET_MP_ANY_GALLERY_STARTED = 1234;
+ RET_MP_HAS_ACTIVE_DRAFT = 1235;
+ RET_MP_PLAYER_IN_DUNGEON = 1236;
+ RET_MP_MATCH_FULL = 1237;
+ RET_MP_MATCH_LIMIT = 1238;
+ RET_MP_MATCH_IN_PUNISH = 1239;
+ RET_MP_IS_IN_MULTISTAGE = 1240;
+ RET_MP_MATCH_PLAY_NOT_OPEN = 1241;
+ RET_MP_ONLY_MP_WITH_PS_PLAYER = 1242;
+ RET_MP_GUEST_LOADING_FIRST_ENTER = 1243;
+ RET_MP_SUMMER_TIME_SPRINT_BOAT_ONGOING = 1244;
+ RET_MP_BLITZ_RUSH_PARKOUR_CHALLENGE_ONGOING = 1245;
+ RET_MP_MUSIC_GAME_ONGOING = 1246;
+ RET_MP_IN_MPING_MODE = 1247;
+ RET_MP_OWNER_IN_SINGLE_SCENE = 1248;
+ RET_MP_IN_SINGLE_SCENE = 1249;
+ RET_MP_REPLY_NO_VALID_AVATAR = 1250;
+ RET_MP_IS_NOT_IN_TRANSFER_GUARD = 1251;
+ RET_MAIL_PARA_ERR = 1301;
+ RET_MAIL_MAX_NUM = 1302;
+ RET_MAIL_ITEM_NUM_EXCEED = 1303;
+ RET_MAIL_TITLE_LEN_EXCEED = 1304;
+ RET_MAIL_CONTENT_LEN_EXCEED = 1305;
+ RET_MAIL_SENDER_LEN_EXCEED = 1306;
+ RET_MAIL_PARSE_PACKET_FAIL = 1307;
+ RET_OFFLINE_MSG_MAX_NUM = 1308;
+ RET_OFFLINE_MSG_SAME_TICKET = 1309;
+ RET_MAIL_EXCEL_MAIL_TYPE_ERROR = 1310;
+ RET_MAIL_CANNOT_SEND_MCOIN = 1311;
+ RET_MAIL_HCOIN_EXCEED_LIMIT = 1312;
+ RET_MAIL_SCOIN_EXCEED_LIMIT = 1313;
+ RET_MAIL_MATERIAL_ID_INVALID = 1314;
+ RET_MAIL_AVATAR_EXCEED_LIMIT = 1315;
+ RET_MAIL_GACHA_TICKET_ETC_EXCEED_LIMIT = 1316;
+ RET_MAIL_ITEM_EXCEED_CEHUA_LIMIT = 1317;
+ RET_MAIL_SPACE_OR_REST_NUM_NOT_ENOUGH = 1318;
+ RET_MAIL_TICKET_IS_EMPTY = 1319;
+ RET_MAIL_TRANSACTION_IS_EMPTY = 1320;
+ RET_MAIL_DELETE_COLLECTED = 1321;
+ RET_DAILY_TASK_NOT_FINISH = 1330;
+ RET_DAILY_TAKS_HAS_TAKEN = 1331;
+ RET_SOCIAL_OFFLINE_MSG_NUM_EXCEED = 1332;
+ RET_DAILY_TASK_FILTER_CITY_NOT_OPEN = 1333;
+ RET_GACHA_INAVAILABLE = 1401;
+ RET_GACHA_RANDOM_NOT_MATCH = 1402;
+ RET_GACHA_SCHEDULE_NOT_MATCH = 1403;
+ RET_GACHA_INVALID_TIMES = 1404;
+ RET_GACHA_COST_ITEM_NOT_ENOUGH = 1405;
+ RET_GACHA_TIMES_LIMIT = 1406;
+ RET_GACHA_WISH_SAME_ITEM = 1407;
+ RET_GACHA_WISH_INVALID_ITEM = 1408;
+ RET_GACHA_MINORS_TIMES_LIMIT = 1409;
+ RET_GACHA_GENERAL_TIMES_LIMIT = 1410;
+ RET_INVESTIGAITON_NOT_IN_PROGRESS = 1501;
+ RET_INVESTIGAITON_UNCOMPLETE = 1502;
+ RET_INVESTIGAITON_REWARD_TAKEN = 1503;
+ RET_INVESTIGAITON_TARGET_STATE_ERROR = 1504;
+ RET_PUSH_TIPS_NOT_FOUND = 1505;
+ RET_SIGN_IN_RECORD_NOT_FOUND = 1506;
+ RET_ALREADY_HAVE_SIGNED_IN = 1507;
+ RET_SIGN_IN_COND_NOT_SATISFIED = 1508;
+ RET_BONUS_ACTIVITY_NOT_UNREWARDED = 1509;
+ RET_SIGN_IN_REWARDED = 1510;
+ RET_TOWER_NOT_OPEN = 1521;
+ RET_TOWER_HAVE_DAILY_RECORD = 1522;
+ RET_TOWER_NOT_RECORD = 1523;
+ RET_TOWER_HAVE_RECORD = 1524;
+ RET_TOWER_TEAM_NUM_ERROR = 1525;
+ RET_TOWER_FLOOR_NOT_OPEN = 1526;
+ RET_TOWER_NO_FLOOR_STAR_RECORD = 1527;
+ RET_ALREADY_HAS_TOWER_BUFF = 1528;
+ RET_DUPLICATE_ENTER_LEVEL = 1529;
+ RET_NOT_IN_TOWER_LEVEL = 1530;
+ RET_IN_TOWER_LEVEL = 1531;
+ RET_TOWER_PREV_FLOOR_NOT_FINISH = 1532;
+ RET_TOWER_STAR_NOT_ENOUGH = 1533;
+ RET_BATTLE_PASS_NO_SCHEDULE = 1541;
+ RET_BATTLE_PASS_HAS_BUYED = 1542;
+ RET_BATTLE_PASS_LEVEL_OVERFLOW = 1543;
+ RET_BATTLE_PASS_PRODUCT_EXPIRED = 1544;
+ RET_MATCH_HOST_QUIT = 1561;
+ RET_MATCH_ALREADY_IN_MATCH = 1562;
+ RET_MATCH_NOT_IN_MATCH = 1563;
+ RET_MATCH_APPLYING_ENTER_MP = 1564;
+ RET_MATCH_INCORRECT_SCENE = 1565;
+ RET_WIDGET_TREASURE_SPOT_NOT_FOUND = 1581;
+ RET_WIDGET_TREASURE_ENTITY_EXISTS = 1582;
+ RET_WIDGET_TREASURE_SPOT_FAR_AWAY = 1583;
+ RET_WIDGET_TREASURE_FINISHED_TODAY = 1584;
+ RET_WIDGET_QUICK_USE_REQ_PARAM_ERROR = 1585;
+ RET_WIDGET_CAMERA_SCAN_ID_ERROR = 1586;
+ RET_WIDGET_NOT_ACTIVE = 1587;
+ RET_WIDGET_FEATHER_NOT_ACTIVE = 1588;
+ RET_WIDGET_FEATHER_GADGET_TOO_FAR_AWAY = 1589;
+ RET_WIDGET_CAPTURE_ANIMAL_NOT_EXIST = 1590;
+ RET_WIDGET_CAPTURE_ANIMAL_DROP_BAG_LIMIT = 1591;
+ RET_WIDGET_CAPTURE_ANIMAL_CAN_NOT_CAPTURE = 1592;
+ RET_WIDGET_SKY_CRYSTAL_ALL_COLLECTED = 1593;
+ RET_WIDGET_SKY_CRYSTAL_HINT_ALREADY_EXIST = 1594;
+ RET_WIDGET_SKY_CRYSTAL_NOT_FOUND = 1595;
+ RET_WIDGET_SKY_CRYSTAL_NO_HINT_TO_CLEAR = 1596;
+ RET_WIDGET_LIGHT_STONE_ENERGY_NOT_ENOUGH = 1597;
+ RET_WIDGET_TOY_CRYSTAL_ENERGY_NOT_ENOUGH = 1598;
+ RET_WIDGET_LIGHT_STONE_LEVEL_NOT_ENOUGH = 1599;
+ RET_UID_NOT_EXIST = 2001;
+ RET_PARSE_BIN_ERROR = 2002;
+ RET_ACCOUNT_INFO_NOT_EXIST = 2003;
+ RET_ORDER_INFO_NOT_EXIST = 2004;
+ RET_SNAPSHOT_INDEX_ERROR = 2005;
+ RET_MAIL_HAS_BEEN_SENT = 2006;
+ RET_PRODUCT_NOT_EXIST = 2007;
+ RET_UNFINISH_ORDER = 2008;
+ RET_ID_NOT_EXIST = 2009;
+ RET_ORDER_TRADE_EARLY = 2010;
+ RET_ORDER_FINISHED = 2011;
+ RET_GAMESERVER_VERSION_WRONG = 2012;
+ RET_OFFLINE_OP_FULL_LENGTH = 2013;
+ RET_CONCERT_PRODUCT_OBTAIN_LIMIT = 2014;
+ RET_CONCERT_PRODUCT_TICKET_DUPLICATED = 2015;
+ RET_CONCERT_PRODUCT_TICKET_EMPTY = 2016;
+ RET_REDIS_MODIFIED = 5001;
+ RET_REDIS_UID_NOT_EXIST = 5002;
+ RET_PATHFINDING_DATA_NOT_EXIST = 6001;
+ RET_PATHFINDING_DESTINATION_NOT_EXIST = 6002;
+ RET_PATHFINDING_ERROR_SCENE = 6003;
+ RET_PATHFINDING_SCENE_DATA_LOADING = 6004;
+ RET_FRIEND_COUNT_EXCEEDED = 7001;
+ RET_PLAYER_NOT_EXIST = 7002;
+ RET_ALREADY_SENT_ADD_REQUEST = 7003;
+ RET_ASK_FRIEND_LIST_FULL = 7004;
+ RET_PLAYER_ALREADY_IS_FRIEND = 7005;
+ RET_PLAYER_NOT_ASK_FRIEND = 7006;
+ RET_TARGET_FRIEND_COUNT_EXCEED = 7007;
+ RET_NOT_FRIEND = 7008;
+ RET_BIRTHDAY_CANNOT_BE_SET_TWICE = 7009;
+ RET_CANNOT_ADD_SELF_FRIEND = 7010;
+ RET_SIGNATURE_ILLEGAL = 7011;
+ RET_PS_PLAYER_CANNOT_ADD_FRIENDS = 7012;
+ RET_PS_PLAYER_CANNOT_REMOVE_FRIENDS = 7013;
+ RET_NAME_CARD_NOT_UNLOCKED = 7014;
+ RET_ALREADY_IN_BLACKLIST = 7015;
+ RET_PS_PALEYRS_CANNOT_ADD_BLACKLIST = 7016;
+ RET_PLAYER_BLACKLIST_FULL = 7017;
+ RET_PLAYER_NOT_IN_BLACKLIST = 7018;
+ RET_BLACKLIST_PLAYER_CANNOT_ADD_FRIEND = 7019;
+ RET_IN_TARGET_BLACKLIST = 7020;
+ RET_CANNOT_ADD_TARGET_FRIEND = 7021;
+ RET_BIRTHDAY_FORMAT_ERROR = 7022;
+ RET_ONLINE_ID_NOT_EXISTS = 7023;
+ RET_FIRST_SHARE_REWARD_HAS_TAKEN = 7024;
+ RET_PS_PLAYER_CANNOT_REMOVE_BLACKLIST = 7025;
+ RET_REPORT_CD = 7026;
+ RET_REPORT_CONTENT_ILLEGAL = 7027;
+ RET_REMARK_WORD_ILLEGAL = 7028;
+ RET_REMARK_TOO_LONG = 7029;
+ RET_REMARK_UTF8_ERROR = 7030;
+ RET_REMARK_IS_EMPTY = 7031;
+ RET_ASK_ADD_FRIEND_CD = 7032;
+ RET_SHOW_AVATAR_INFO_NOT_EXIST = 7033;
+ RET_PLAYER_NOT_SHOW_AVATAR = 7034;
+ RET_SOCIAL_UPDATE_SHOW_LIST_REPEAT_ID = 7035;
+ RET_PSN_ID_NOT_FOUND = 7036;
+ RET_EMOJI_COLLECTION_NUM_EXCEED_LIMIT = 7037;
+ RET_REMARK_EMPTY = 7038;
+ RET_IN_TARGET_PSN_BLACKLIST = 7039;
+ RET_SIGNATURE_NOT_CHANGED = 7040;
+ RET_SIGNATURE_MONTHLY_LIMIT = 7041;
+ RET_REQ_FRIEND_AVATAR_FREQUENTLY = 7042;
+ RET_PSN_GET_PLAYER_SOCIAL_DETAIL_FAIL = 7043;
+ RET_OFFERING_NOT_OPEN = 7081;
+ RET_OFFERING_LEVEL_LIMIT = 7082;
+ RET_OFFERING_LEVEL_NOT_REACH = 7083;
+ RET_OFFERING_LEVEL_HAS_TAKEN = 7084;
+ RET_CITY_REPUTATION_NOT_OPEN = 7101;
+ RET_CITY_REPUTATION_LEVEL_TAKEN = 7102;
+ RET_CITY_REPUTATION_LEVEL_NOT_REACH = 7103;
+ RET_CITY_REPUTATION_PARENT_QUEST_TAKEN = 7104;
+ RET_CITY_REPUTATION_PARENT_QUEST_UNFINISH = 7105;
+ RET_CITY_REPUTATION_ACCEPT_REQUEST = 7106;
+ RET_CITY_REPUTATION_NOT_ACCEPT_REQUEST = 7107;
+ RET_CITY_REPUTATION_ACCEPT_REQUEST_LIMIT = 7108;
+ RET_CITY_REPUTATION_ENTRANCE_NOT_OPEN = 7109;
+ RET_CITY_REPUTATION_TAKEN_REQUEST_REWARD = 7110;
+ RET_CITY_REPUTATION_SWITCH_CLOSE = 7111;
+ RET_CITY_REPUTATION_ENTRACE_SWITCH_CLOSE = 7112;
+ RET_CITY_REPUTATION_TAKEN_EXPLORE_REWARD = 7113;
+ RET_CITY_REPUTATION_EXPLORE_NOT_REACH = 7114;
+ RET_MECHANICUS_NOT_OPEN = 7120;
+ RET_MECHANICUS_GEAR_UNLOCK = 7121;
+ RET_MECHANICUS_GEAR_LOCK = 7122;
+ RET_MECHANICUS_GEAR_LEVEL_LIMIT = 7123;
+ RET_MECHANICUS_COIN_NOT_ENOUGH = 7124;
+ RET_MECHANICUS_NO_SEQUENCE = 7125;
+ RET_MECHANICUS_SEQUENCE_LIMIT_LEVEL = 7126;
+ RET_MECHANICUS_SEQUENCE_LIMIT_OPEN = 7127;
+ RET_MECHANICUS_DIFFICULT_NOT_SUPPORT = 7128;
+ RET_MECHANICUS_TICKET_NOT_ENOUGH = 7129;
+ RET_MECHANICUS_TEACH_NOT_FINISH = 7130;
+ RET_MECHANICUS_TEACH_FINISHED = 7131;
+ RET_MECHANICUS_PREV_DIFFICULT_LEVEL_BLOCK = 7132;
+ RET_MECHANICUS_PLAYER_LIMIT = 7133;
+ RET_MECHANICUS_PUNISH_TIME = 7134;
+ RET_MECHANICUS_SWITCH_CLOSE = 7135;
+ RET_MECHANICUS_BATTLE_NOT_IN_DUNGEON = 7150;
+ RET_MECHANICUS_BATTLE_PLAY_NOT_FOUND = 7151;
+ RET_MECHANICUS_BATTLE_DUPLICATE_PICK_CARD = 7152;
+ RET_MECHANICUS_BATTLE_PLAYER_NOT_IN_PLAY = 7153;
+ RET_MECHANICUS_BATTLE_CARD_NOT_AVAILABLE = 7154;
+ RET_MECHANICUS_BATTLE_NOT_IN_CARD_STAGE = 7155;
+ RET_MECHANICUS_BATTLE_CARD_IS_WAITING = 7156;
+ RET_MECHANICUS_BATTLE_CARD_ALL_CONFIRMED = 7157;
+ RET_MECHANICUS_BATTLE_CARD_ALREADY_CONFIRMED = 7158;
+ RET_MECHANICUS_BATTLE_CARD_CONFIRMED_BY_OTHER = 7159;
+ RET_MECHANICUS_BATTLE_CARD_NOT_ENOUGH_POINTS = 7160;
+ RET_MECHANICUS_BATTLE_CARD_ALREADY_SKIPPED = 7161;
+ RET_LEGENDARY_KEY_NOT_ENOUGH = 8001;
+ RET_LEGENDARY_KEY_EXCEED_LIMIT = 8002;
+ RET_DAILY_TASK_NOT_ENOUGH_TO_REDEEM = 8003;
+ RET_PERSONAL_LINE_OPEN_STATE_OFF = 8004;
+ RET_PERSONAL_LINE_LEVEL_NOT_ENOUGH = 8005;
+ RET_PERSONAL_LINE_NOT_OPEN = 8006;
+ RET_PERSONAL_LINE_PRE_QUEST_NOT_FINISH = 8007;
+ RET_HUNTING_ALREADY_FINISH_OFFER_LIMIT = 8201;
+ RET_HUNTING_HAS_UNFINISHED_OFFER = 8202;
+ RET_HUNTING_FAILED_OFFER_NOT_CD_READY = 8203;
+ RET_HUNTING_NOT_TAKE_OFFER = 8204;
+ RET_HUNTING_CANNOT_TAKE_TWICE = 8205;
+ RET_RPIVATE_CHAT_INVALID_CONTENT_TYPE = 8901;
+ RET_PRIVATE_CHAT_TARGET_IS_NOT_FRIEND = 8902;
+ RET_PRIVATE_CHAT_CONTENT_NOT_SUPPORTED = 8903;
+ RET_PRIVATE_CHAT_CONTENT_TOO_LONG = 8904;
+ RET_PRIVATE_CHAT_PULL_TOO_FAST = 8905;
+ RET_PRIVATE_CHAT_REPEAT_READ = 8906;
+ RET_PRIVATE_CHAT_READ_NOT_FRIEND = 8907;
+ RET_REUNION_FINISHED = 9001;
+ RET_REUNION_NOT_ACTIVATED = 9002;
+ RET_REUNION_ALREADY_TAKE_FIRST_REWARD = 9003;
+ RET_REUNION_SIGN_IN_REWARDED = 9004;
+ RET_REUNION_WATCHER_REWARDED = 9005;
+ RET_REUNION_WATCHER_NOT_FINISH = 9006;
+ RET_REUNION_MISSION_REWARDED = 9007;
+ RET_REUNION_MISSION_NOT_FINISH = 9008;
+ RET_REUNION_WATCHER_REWARD_NOT_UNLOCKED = 9009;
+ RET_BLESSING_CONTENT_CLOSED = 9101;
+ RET_BLESSING_NOT_ACTIVE = 9102;
+ RET_BLESSING_NOT_TODAY_ENTITY = 9103;
+ RET_BLESSING_ENTITY_EXCEED_SCAN_NUM_LIMIT = 9104;
+ RET_BLESSING_DAILY_SCAN_NUM_EXCEED_LIMIT = 9105;
+ RET_BLESSING_REDEEM_REWARD_NUM_EXCEED_LIMIT = 9106;
+ RET_BLESSING_REDEEM_PIC_NUM_NOT_ENOUGH = 9107;
+ RET_BLESSING_PIC_NOT_ENOUGH = 9108;
+ RET_BLESSING_PIC_HAS_RECEIVED = 9109;
+ RET_BLESSING_TARGET_RECV_NUM_EXCEED = 9110;
+ RET_FLEUR_FAIR_CREDIT_EXCEED_LIMIT = 9111;
+ RET_FLEUR_FAIR_CREDIT_NOT_ENOUGH = 9112;
+ RET_FLEUR_FAIR_TOKEN_EXCEED_LIMIT = 9113;
+ RET_FLEUR_FAIR_TOKEN_NOT_ENOUGH = 9114;
+ RET_FLEUR_FAIR_MINIGAME_NOT_OPEN = 9115;
+ RET_FLEUR_FAIR_MUSIC_GAME_DIFFICULTY_NOT_UNLOCK = 9116;
+ RET_FLEUR_FAIR_DUNGEON_LOCKED = 9117;
+ RET_FLEUR_FAIR_DUNGEON_PUNISH_TIME = 9118;
+ RET_FLEUR_FAIR_ONLY_OWNER_CAN_RESTART_MINIGAM = 9119;
+ RET_WATER_SPIRIT_COIN_EXCEED_LIMIT = 9120;
+ RET_WATER_SPIRIT_COIN_NOT_ENOUGH = 9121;
+ RET_REGION_SEARCH_NO_SEARCH = 9122;
+ RET_REGION_SEARCH_STATE_ERROR = 9123;
+ RET_CHANNELLER_SLAB_LOOP_DUNGEON_STAGE_NOT_OPEN = 9130;
+ RET_CHANNELLER_SLAB_LOOP_DUNGEON_NOT_OPEN = 9131;
+ RET_CHANNELLER_SLAB_LOOP_DUNGEON_FIRST_PASS_REWARD_HAS_TAKEN = 9132;
+ RET_CHANNELLER_SLAB_LOOP_DUNGEON_SCORE_REWARD_HAS_TAKEN = 9133;
+ RET_CHANNELLER_SLAB_INVALID_ONE_OFF_DUNGEON = 9134;
+ RET_CHANNELLER_SLAB_ONE_OFF_DUNGEON_DONE = 9135;
+ RET_CHANNELLER_SLAB_ONE_OFF_DUNGEON_STAGE_NOT_OPEN = 9136;
+ RET_CHANNELLER_SLAB_TOKEN_EXCEED_LIMIT = 9137;
+ RET_CHANNELLER_SLAB_TOKEN_NOT_ENOUGH = 9138;
+ RET_CHANNELLER_SLAB_PLAYER_NOT_IN_ONE_OFF_DUNGEON = 9139;
+ RET_MIST_TRIAL_SELECT_CHARACTER_NUM_NOT_ENOUGH = 9150;
+ RET_MIST_TRIAL_ALREADY_USING_TRIAL_AVATAR = 9151;
+ RET_HIDE_AND_SEEK_PLAY_NOT_OPEN = 9160;
+ RET_HIDE_AND_SEEK_PLAY_MAP_NOT_OPEN = 9161;
+ RET_HIDE_AND_SEEK_PLAY_MAP_NOT_CHOSEN = 9162;
+ RET_SUMMER_TIME_DRAFT_WOORD_EXCEED_LIMIT = 9170;
+ RET_SUMMER_TIME_DRAFT_WOORD_NOT_ENOUGH = 9171;
+ RET_SUMMER_TIME_MINI_HARPASTUM_EXCEED_LIMIT = 9172;
+ RET_SUMMER_TIME_MINI_HARPASTUMNOT_ENOUGH = 9173;
+ RET_BOUNCE_CONJURING_COIN_EXCEED_LIMIT = 9180;
+ RET_BOUNCE_CONJURING_COIN_NOT_ENOUGH = 9181;
+ RET_CHESS_TEACH_MAP_FINISHED = 9183;
+ RET_CHESS_TEACH_MAP_UNFINISHED = 9184;
+ RET_CHESS_COIN_EXCEED_LIMIT = 9185;
+ RET_CHESS_COIN_NOT_ENOUGH = 9186;
+ RET_CHESS_IN_PUNISH_TIME = 9187;
+ RET_CHESS_PREV_MAP_UNFINISHED = 9188;
+ RET_CHESS_MAP_LOCKED = 9189;
+ RET_BLITZ_RUSH_NOT_OPEN = 9192;
+ RET_BLITZ_RUSH_DUNGEON_NOT_OPEN = 9193;
+ RET_BLITZ_RUSH_COIN_A_EXCEED_LIMIT = 9194;
+ RET_BLITZ_RUSH_COIN_B_EXCEED_LIMIT = 9195;
+ RET_BLITZ_RUSH_COIN_A_NOT_ENOUGH = 9196;
+ RET_BLITZ_RUSH_COIN_B_NOT_ENOUGH = 9197;
+ RET_MIRACLE_RING_VALUE_NOT_ENOUGH = 9201;
+ RET_MIRACLE_RING_CD = 9202;
+ RET_MIRACLE_RING_REWARD_NOT_TAKEN = 9203;
+ RET_MIRACLE_RING_NOT_DELIVER = 9204;
+ RET_MIRACLE_RING_DELIVER_EXCEED = 9205;
+ RET_MIRACLE_RING_HAS_CREATED = 9206;
+ RET_MIRACLE_RING_HAS_NOT_CREATED = 9207;
+ RET_MIRACLE_RING_NOT_YOURS = 9208;
+ RET_GADGET_FOUNDATION_UNAUTHORIZED = 9251;
+ RET_GADGET_FOUNDATION_SCENE_NOT_FOUND = 9252;
+ RET_GADGET_FOUNDATION_NOT_IN_INIT_STATE = 9253;
+ RET_GADGET_FOUNDATION_BILDING_POINT_NOT_ENOUGHT = 9254;
+ RET_GADGET_FOUNDATION_NOT_IN_BUILT_STATE = 9255;
+ RET_GADGET_FOUNDATION_OP_NOT_SUPPORTED = 9256;
+ RET_GADGET_FOUNDATION_REQ_PLAYER_NOT_IN_SCENE = 9257;
+ RET_GADGET_FOUNDATION_LOCKED_BY_ANOTHER_PLAYER = 9258;
+ RET_GADGET_FOUNDATION_NOT_LOCKED = 9259;
+ RET_GADGET_FOUNDATION_DUPLICATE_LOCK = 9260;
+ RET_GADGET_FOUNDATION_PLAYER_NOT_FOUND = 9261;
+ RET_GADGET_FOUNDATION_PLAYER_GEAR_NOT_FOUND = 9262;
+ RET_GADGET_FOUNDATION_ROTAION_DISABLED = 9263;
+ RET_GADGET_FOUNDATION_REACH_DUNGEON_GEAR_LIMIT = 9264;
+ RET_GADGET_FOUNDATION_REACH_SINGLE_GEAR_LIMIT = 9265;
+ RET_GADGET_FOUNDATION_ROTATION_ON_GOING = 9266;
+ RET_OP_ACTIVITY_BONUS_NOT_FOUND = 9301;
+ RET_OP_ACTIVITY_NOT_OPEN = 9302;
+ RET_MULTISTAGE_PLAY_PLAYER_NOT_IN_SCENE = 9501;
+ RET_MULTISTAGE_PLAY_NOT_FOUND = 9502;
+ RET_MULTISTAGE_PLAY_IN_OTHER_STAGE = 9503;
+ RET_COOP_CHAPTER_NOT_OPEN = 9601;
+ RET_COOP_COND_NOT_MEET = 9602;
+ RET_COOP_POINT_LOCKED = 9603;
+ RET_COOP_NOT_HAVE_PROGRESS = 9604;
+ RET_COOP_REWARD_HAS_TAKEN = 9605;
+ RET_DRAFT_HAS_ACTIVE_DRAFT = 9651;
+ RET_DRAFT_NOT_IN_MY_WORLD = 9652;
+ RET_DRAFT_NOT_SUPPORT_MP = 9653;
+ RET_DRAFT_PLAYER_NOT_ENOUGH = 9654;
+ RET_DRAFT_INCORRECT_SCENE = 9655;
+ RET_DRAFT_OTHER_PLAYER_ENTERING = 9656;
+ RET_DRAFT_GUEST_IS_TRANSFERRING = 9657;
+ RET_DRAFT_GUEST_NOT_IN_DRAFT_SCENE = 9658;
+ RET_DRAFT_INVITE_OVER_TIME = 9659;
+ RET_DRAFT_TWICE_CONFIRM_OVER_TIMER = 9660;
+ RET_DRAFT_GUEST_NOT_IN_WORLD_SCENE = 9661;
+ RET_HOME_UNKOWN = 9701;
+ RET_HOME_INVALID_CLIENT_PARAM = 9702;
+ RET_HOME_TARGE_PLAYER_HAS_NO_HOME = 9703;
+ RET_HOME_NOT_ONLINE = 9704;
+ RET_HOME_PLAYER_FULL = 9705;
+ RET_HOME_BLOCKED = 9706;
+ RET_HOME_ALREADY_IN_TARGET_HOME_WORLD = 9707;
+ RET_HOME_IN_EDIT_MODE = 9708;
+ RET_HOME_NOT_IN_EDIT_MODE = 9709;
+ RET_HOME_HAS_GUEST = 9710;
+ RET_HOME_CANT_ENTER_BY_IN_EDIT_MODE = 9711;
+ RET_HOME_CLIENT_PARAM_INVALID = 9712;
+ RET_HOME_PLAYER_NOT_IN_HOME_WORLD = 9713;
+ RET_HOME_PLAYER_NOT_IN_SELF_HOME_WORLD = 9714;
+ RET_HOME_NOT_FOUND_IN_MEM = 9715;
+ RET_HOME_PLAYER_IN_HOME_ROOM_SCENE = 9716;
+ RET_HOME_HOME_REFUSE_GUEST_ENTER = 9717;
+ RET_HOME_OWNER_REFUSE_TO_ENTER_HOME = 9718;
+ RET_HOME_OWNER_OFFLINE = 9719;
+ RET_HOME_FURNITURE_EXCEED_LIMIT = 9720;
+ RET_HOME_FURNITURE_COUNT_NOT_ENOUGH = 9721;
+ RET_HOME_IN_TRY_ENTER_PROCESS = 9722;
+ RET_HOME_ALREADY_IN_TARGET_SCENE = 9723;
+ RET_HOME_COIN_EXCEED_LIMIT = 9724;
+ RET_HOME_COIN_NOT_ENOUGH = 9725;
+ RET_HOME_MODULE_NOT_UNLOCKED = 9726;
+ RET_HOME_CUR_MODULE_CLOSED = 9727;
+ RET_HOME_FURNITURE_SUITE_NOT_UNLOCKED = 9728;
+ RET_HOME_IN_MATCH = 9729;
+ RET_HOME_IN_COMBAT = 9730;
+ RET_HOME_EDIT_MODE_CD = 9731;
+ RET_HOME_UPDATE_FURNITURE_CD = 9732;
+ RET_HOME_BLOCK_FURNITURE_LIMIT = 9733;
+ RET_HOME_NOT_SUPPORT = 9734;
+ RET_HOME_STATE_NOT_OPEN = 9735;
+ RET_HOME_TARGET_STATE_NOT_OPEN = 9736;
+ RET_HOME_APPLY_ENTER_OTHER_HOME_FAIL = 9737;
+ RET_HOME_SAVE_NO_MAIN_HOUSE = 9738;
+ RET_HOME_IN_DUNGEON = 9739;
+ RET_HOME_ANY_GALLERY_STARTED = 9740;
+ RET_HOME_QUEST_BLOCK_HOME = 9741;
+ RET_HOME_WAITING_PRIOR_CHECK = 9742;
+ RET_HOME_PERSISTENT_CHECK_FAIL = 9743;
+ RET_HOME_FIND_ONLINE_HOME_FAIL = 9744;
+ RET_HOME_JOIN_SCENE_FAIL = 9745;
+ RET_HOME_MAX_PLAYER = 9746;
+ RET_HOME_IN_TRANSFER = 9747;
+ RET_HOME_ANY_HOME_GALLERY_STARTED = 9748;
+ RET_HOME_CAN_NOT_ENTER_IN_AUDIT = 9749;
+ RET_FURNITURE_MAKE_INDEX_ERROR = 9750;
+ RET_FURNITURE_MAKE_LOCKED = 9751;
+ RET_FURNITURE_MAKE_CONFIG_ERROR = 9752;
+ RET_FURNITURE_MAKE_SLOT_FULL = 9753;
+ RET_FURNITURE_MAKE_ADD_FURNITURE_FAIL = 9754;
+ RET_FURNITURE_MAKE_UNFINISH = 9755;
+ RET_FURNITURE_MAKE_IS_FINISH = 9756;
+ RET_FURNITURE_MAKE_NOT_IN_CORRECT_HOME = 9757;
+ RET_FURNITURE_MAKE_NO_COUNT = 9758;
+ RET_FURNITURE_MAKE_ACCELERATE_LIMIT = 9759;
+ RET_FURNITURE_MAKE_NO_MAKE_DATA = 9760;
+ RET_HOME_LIMITED_SHOP_CLOSE = 9761;
+ RET_HOME_AVATAR_NOT_SHOW = 9762;
+ RET_HOME_EVENT_COND_NOT_SATISFIED = 9763;
+ RET_HOME_INVALID_ARRANGE_ANIMAL_PARAM = 9764;
+ RET_HOME_INVALID_ARRANGE_NPC_PARAM = 9765;
+ RET_HOME_INVALID_ARRANGE_SUITE_PARAM = 9766;
+ RET_HOME_INVALID_ARRANGE_MAIN_HOUSE_PARAM = 9767;
+ RET_HOME_AVATAR_STATE_NOT_OPEN = 9768;
+ RET_HOME_PLANT_FIELD_NOT_EMPTY = 9769;
+ RET_HOME_PLANT_FIELD_EMPTY = 9770;
+ RET_HOME_PLANT_FIELD_TYPE_ERROR = 9771;
+ RET_HOME_PLANT_TIME_NOT_ENOUGH = 9772;
+ RET_HOME_PLANT_SUB_FIELD_NUM_NOT_ENOUGH = 9773;
+ RET_HOME_PLANT_FIELD_PARAM_ERROR = 9774;
+ RET_HOME_FURNITURE_GUID_ERROR = 9775;
+ RET_HOME_FURNITURE_ARRANGE_LIMIT = 9776;
+ RET_HOME_FISH_FARMING_LIMIT = 9777;
+ RET_HOME_FISH_COUNT_NOT_ENOUGH = 9778;
+ RET_HOME_FURNITURE_COST_LIMIT = 9779;
+ RET_HOME_CUSTOM_FURNITURE_INVALID = 9780;
+ RET_HOME_INVALID_ARRANGE_GROUP_PARAM = 9781;
+ RET_HOME_FURNITURE_ARRANGE_GROUP_LIMIT = 9782;
+ RET_HOME_PICTURE_FRAME_COOP_CG_GENDER_ERROR = 9783;
+ RET_HOME_PICTURE_FRAME_COOP_CG_NOT_UNLOCK = 9784;
+ RET_HOME_FURNITURE_CANNOT_ARRANGE = 9785;
+ RET_HOME_FURNITURE_IN_DUPLICATE_SUITE = 9786;
+ RET_HOME_FURNITURE_CUSTOM_SUITE_TOO_SMALL = 9787;
+ RET_HOME_FURNITURE_CUSTOM_SUITE_TOO_BIG = 9788;
+ RET_HOME_FURNITURE_SUITE_EXCEED_LIMIT = 9789;
+ RET_HOME_FURNITURE_CUSTOM_SUITE_EXCEED_LIMIT = 9790;
+ RET_HOME_FURNITURE_CUSTOM_SUITE_INVALID_SURFACE_TYPE = 9791;
+ RET_HOME_BGM_ID_NOT_FOUND = 9792;
+ RET_HOME_BGM_NOT_UNLOCKED = 9793;
+ RET_HOME_BGM_FURNITURE_NOT_FOUND = 9794;
+ RET_HOME_BGM_NOT_SUPPORT_BY_CUR_SCENE = 9795;
+ RET_HOME_LIMITED_SHOP_GOODS_DISABLE = 9796;
+ RET_HOME_WORLD_WOOD_MATERIAL_EMPTY = 9797;
+ RET_HOME_WORLD_WOOD_MATERIAL_NOT_FOUND = 9798;
+ RET_HOME_WORLD_WOOD_MATERIAL_COUNT_INVALID = 9799;
+ RET_HOME_WORLD_WOOD_EXCHANGE_EXCEED_LIMIT = 9800;
+ RET_HOME_BLUEPRINT_SEARCH_SELF = 9801;
+ RET_HOME_BLUEPRINT_SHARE_CODE_INVALID = 9802;
+ RET_HOME_BLUEPRINT_NOT_EXIST = 9803;
+ RET_HOME_BLUEPRINT_SLOT_HAS_EXIST_SHARE_CODE = 9804;
+ RET_HOME_BLUEPRINT_SLOT_NOT_EXIST_SHARE_CODE = 9805;
+ RET_HOME_BLUEPRINT_CAN_NOT_CREATE_IN_AUDIT = 9806;
+ RET_HOME_BLOCK_NOT_UNLOCKED = 9807;
+ RET_HOME_BLUEPRINT_CREATE_CD = 9808;
+ RET_HOME_BLUEPRINT_SET_OPTION_CD = 9809;
+ RET_HOME_BLUEPRINT_NOT_ALLOW_FRIEND_COPY = 9810;
+ RET_HOME_FURNITURE_POS_UNDER_DIE_Y = 9811;
+ RET_HOME_BLUEPRINT_GEN_SHARE_CODE_FAIL = 9812;
+ RET_HOME_BLUEPRINT_SEARCH_CD = 9813;
+ RET_HOME_BLUEPRINT_PREVIEW_CD = 9814;
+ RET_HOME_BLUEPRINT_PREVIEW_SCENE_NOT_MATCH = 9815;
+ RET_SUMO_ACTIVITY_STAGE_NOT_OPEN = 10000;
+ RET_SUMO_ACTIVITY_SWITCH_TEAM_IN_CD = 10001;
+ RET_SUMO_ACTIVITY_TEAM_NUM_INCORRECT = 10002;
+ RET_LUNA_RITE_ACTIVITY_AREA_ID_ERROR = 10004;
+ RET_LUNA_RITE_ACTIVITY_BATTLE_NOT_FINISH = 10005;
+ RET_LUNA_RITE_ACTIVITY_ALREADY_SACRIFICE = 10006;
+ RET_LUNA_RITE_ACTIVITY_ALREADY_TAKE_REWARD = 10007;
+ RET_LUNA_RITE_ACTIVITY_SACRIFICE_NOT_ENOUGH = 10008;
+ RET_LUNA_RITE_ACTIVITY_SEARCHING_COND_NOT_MEET = 10009;
+ RET_DIG_GADGET_CONFIG_ID_NOT_MATCH = 10015;
+ RET_DIG_FIND_NEAREST_POS_FAIL = 10016;
+ RET_MUSIC_GAME_LEVEL_NOT_OPEN = 10021;
+ RET_MUSIC_GAME_LEVEL_NOT_UNLOCK = 10022;
+ RET_MUSIC_GAME_LEVEL_NOT_STARTED = 10023;
+ RET_MUSIC_GAME_LEVEL_CONFIG_NOT_FOUND = 10024;
+ RET_MUSIC_GAME_LEVEL_ID_NOT_MATCH = 10025;
+ RET_ROGUELIKE_COIN_A_NOT_ENOUGH = 10031;
+ RET_ROGUELIKE_COIN_B_NOT_ENOUGH = 10032;
+ RET_ROGUELIKE_COIN_C_NOT_ENOUGH = 10033;
+ RET_ROGUELIKE_COIN_A_EXCEED_LIMIT = 10034;
+ RET_ROGUELIKE_COIN_B_EXCEED_LIMIT = 10035;
+ RET_ROGUELIKE_COIN_C_EXCEED_LIMIT = 10036;
+ RET_ROGUELIKE_RUNE_COUNT_NOT_ENOUGH = 10037;
+ RET_ROGUELIKE_NOT_IN_ROGUE_DUNGEON = 10038;
+ RET_ROGUELIKE_CELL_NOT_FOUND = 10039;
+ RET_ROGUELIKE_CELL_TYPE_INCORRECT = 10040;
+ RET_ROGUELIKE_CELL_ALREADY_FINISHED = 10041;
+ RET_ROGUELIKE_DUNGEON_HAVE_UNFINISHED_PROGRESS = 10042;
+ RET_ROGUELIKE_STAGE_NOT_FINISHED = 10043;
+ RET_ROGUELIKE_STAGE_FIRST_PASS_REWARD_HAS_TAKEN = 10045;
+ RET_ROGUELIKE_ACTIVITY_CONTENT_CLOSED = 10046;
+ RET_ROGUELIKE_DUNGEON_PRE_QUEST_NOT_FINISHED = 10047;
+ RET_ROGUELIKE_DUNGEON_NOT_OPEN = 10048;
+ RET_ROGUELIKE_SPRINT_IS_BANNED = 10049;
+ RET_ROGUELIKE_DUNGEON_PRE_STAGE_NOT_FINISHED = 10050;
+ RET_ROGUELIKE_ALL_AVATAR_DIE_CANNOT_RESUME = 10051;
+ RET_PLANT_FLOWER_ALREADY_TAKE_SEED = 10056;
+ RET_PLANT_FLOWER_FRIEND_HAVE_FLOWER_LIMIT = 10057;
+ RET_PLANT_FLOWER_CAN_GIVE_FLOWER_NOT_ENOUGH = 10058;
+ RET_PLANT_FLOWER_WISH_FLOWER_KINDS_LIMIT = 10059;
+ RET_PLANT_FLOWER_HAVE_FLOWER_NOT_ENOUGH = 10060;
+ RET_PLANT_FLOWER_FLOWER_COMBINATION_INVALID = 10061;
+ RET_HACHI_DUNGEON_NOT_VALID = 10052;
+ RET_HACHI_DUNGEON_STAGE_NOT_OPEN = 10053;
+ RET_HACHI_DUNGEON_TEAMMATE_NOT_PASS = 10054;
+ RET_WINTER_CAMP_COIN_A_NOT_ENOUGH = 10071;
+ RET_WINTER_CAMP_COIN_B_NOT_ENOUGH = 10072;
+ RET_WINTER_CAMP_COIN_A_EXCEED_LIMIT = 10073;
+ RET_WINTER_CAMP_COIN_B_EXCEED_LIMIT = 10074;
+ RET_WINTER_CAMP_WISH_ID_INVALID = 10075;
+ RET_WINTER_CAMP_NOT_FOUND_RECV_ITEM_DATA = 10076;
+ RET_WINTER_CAMP_FRIEND_ITEM_COUNT_OVERFLOW = 10077;
+ RET_WINTER_CAMP_SELECT_ITEM_DATA_INVALID = 10078;
+ RET_WINTER_CAMP_ITEM_LIST_EMPTY = 10079;
+ RET_WINTER_CAMP_REWARD_ALREADY_TAKEN = 10080;
+ RET_WINTER_CAMP_STAGE_NOT_FINISH = 10081;
+ RET_WINTER_CAMP_GADGET_INVALID = 10082;
+ RET_LANTERN_RITE_COIN_A_NOT_ENOUGH = 10090;
+ RET_LANTERN_RITE_COIN_B_NOT_ENOUGH = 10091;
+ RET_LANTERN_RITE_COIN_C_NOT_ENOUGH = 10092;
+ RET_LANTERN_RITE_COIN_A_EXCEED_LIMIT = 10093;
+ RET_LANTERN_RITE_COIN_B_EXCEED_LIMIT = 10094;
+ RET_LANTERN_RITE_COIN_C_EXCEED_LIMIT = 10095;
+ RET_LANTERN_RITE_PROJECTION_CONTENT_CLOSED = 10096;
+ RET_LANTERN_RITE_PROJECTION_CAN_NOT_START = 10097;
+ RET_LANTERN_RITE_DUNGEON_NOT_OPEN = 10098;
+ RET_LANTERN_RITE_HAS_TAKEN_SKIN_REWARD = 10099;
+ RET_LANTERN_RITE_NOT_FINISHED_SKIN_WATCHERS = 10100;
+ RET_LANTERN_RITE_FIREWORKS_CONTENT_CLOSED = 10101;
+ RET_LANTERN_RITE_FIREWORKS_CHALLENGE_NOT_START = 10102;
+ RET_LANTERN_RITE_FIREWORKS_REFORM_PARAM_ERROR = 10103;
+ RET_LANTERN_RITE_FIREWORKS_REFORM_SKILL_LOCK = 10104;
+ RET_LANTERN_RITE_FIREWORKS_REFORM_STAMINA_NOT_ENOUGH = 10105;
+ RET_POTION_ACTIVITY_STAGE_NOT_OPEN = 10110;
+ RET_POTION_ACTIVITY_LEVEL_HAVE_PASS = 10111;
+ RET_POTION_ACTIVITY_TEAM_NUM_INCORRECT = 10112;
+ RET_POTION_ACTIVITY_AVATAR_IN_CD = 10113;
+ RET_POTION_ACTIVITY_BUFF_IN_CD = 10114;
+ RET_IRODORI_POETRY_INVALID_LINE_ID = 10120;
+ RET_IRODORI_POETRY_INVALID_THEME_ID = 10121;
+ RET_IRODORI_POETRY_NOT_GET_ALL_INSPIRATION = 10122;
+ RET_IRODORI_POETRY_INSPIRATION_REACH_LIMIE = 10123;
+ RET_IRODORI_POETRY_ENTITY_ALREADY_SCANNED = 10124;
+ RET_ACTIVITY_BANNER_ALREADY_CLEARED = 10300;
+ RET_IRODORI_CHESS_NOT_OPEN = 10301;
+ RET_IRODORI_CHESS_LEVEL_NOT_OPEN = 10302;
+ RET_IRODORI_CHESS_MAP_NOT_OPEN = 10303;
+ RET_IRODORI_CHESS_MAP_CARD_ALREADY_EQUIPED = 10304;
+ RET_IRODORI_CHESS_EQUIP_CARD_EXCEED_LIMIT = 10305;
+ RET_IRODORI_CHESS_MAP_CARD_NOT_EQUIPED = 10306;
+ RET_IRODORI_CHESS_ENTER_FAIL_CARD_EXCEED_LIMIT = 10307;
+ RET_ACTIVITY_FRIEND_HAVE_GIFT_LIMIT = 10310;
+ RET_GACHA_ACTIVITY_HAVE_REWARD_LIMIT = 10315;
+ RET_GACHA_ACTIVITY_HAVE_ROBOT_LIMIT = 10316;
+ RET_SUMMER_TIME_V2_COIN_EXCEED_LIMIT = 10317;
+ RET_SUMMER_TIME_V2_COIN_NOT_ENOUGH = 10318;
+ RET_SUMMER_TIME_V2_DUNGEON_STAGE_NOT_OPEN = 10319;
+ RET_SUMMER_TIME_V2_PREV_DUNGEON_NOT_COMPLETE = 10320;
+ RET_ROGUE_DIARY_AVATAR_DEATH = 10350;
+ RET_ROGUE_DIARY_AVATAR_TIRED = 10351;
+ RET_ROGUE_DIARY_AVATAR_DUPLICATED = 10352;
+ RET_ROGUE_DIARY_COIN_NOT_ENOUGH = 10353;
+ RET_ROGUE_DIARY_VIRTUAL_COIN_EXCEED_LIMIT = 10354;
+ RET_ROGUE_DIARY_VIRTUAL_COIN_NOT_ENOUGH = 10355;
+ RET_ROGUE_DIARY_CONTENT_CLOSED = 10366;
+ RET_GRAVEN_INNOCENCE_COIN_A_NOT_ENOUGH = 10380;
+ RET_GRAVEN_INNOCENCE_COIN_B_NOT_ENOUGH = 10381;
+ RET_GRAVEN_INNOCENCE_COIN_A_EXCEED_LIMIT = 10382;
+ RET_GRAVEN_INNOCENCE_COIN_B_EXCEED_LIMIT = 10383;
+ RET_ISLAND_PARTY_STAGE_NOT_OPEN = 10371;
+ RET_WIND_FIELD_STAGE_NOT_OPEN = 10390;
+ RET_VINTAGE_CONTENT_CLOSED = 10396;
+ RET_VINTAGE_STORE_CONTENT_FINISHED = 10397;
+ RET_VINTAGE_STORE_ATTR_TOO_SMALL = 10398;
+ RET_VINTAGE_STORE_ATTR_TOO_LARGE = 10399;
+ RET_VINTAGE_STORE_CONTENT_INTERRUPT = 10400;
+ RET_VINTAGE_VIRTUAL_COIN_NOT_ENOUGH = 10401;
+ RET_VINTAGE_STORE_ATTR_LESS_THAN_ZERO = 10402;
+ RET_FUNGUS_FIGHTER_CAPTURE_COIN_NOT_ENOUGH = 10406;
+ RET_FUNGUS_FIGHTER_TRAINING_COIN_NOT_ENOUGH = 10407;
+ RET_FUNGUS_FIGHTER_CAPTURE_COIN_EXCEED_LIMIT = 10408;
+ RET_FUNGUS_FIGHTER_TRAINING_COIN_EXCEED_LIMIT = 10409;
+ RET_FUNGUS_FIGHTER_CONTENT_CLOSED = 10410;
+ RET_FUNGUS_FIGHTER_PLOT_STAGE_NOT_OPEN = 10411;
+ RET_FUNGUS_FIGHTER_FUNGUS_ID_CONFIG_NOT_VALID = 10412;
+ RET_FUNGUS_FIGHTER_FUNGUS_NOT_CULTIVATED = 10413;
+ RET_FUNGUS_FIGHTER_TRAINING_DUNGEON_NOT_OPEN = 10414;
+ RET_EFFIGY_CHALLENGE_V2_COIN_NOT_ENOUGH = 10427;
+ RET_EFFIGY_CHALLENGE_V2_COIN_EXCEED_LIMIT = 10428;
+ RET_CHAR_AMUSEMENT_STAGE_NOT_OPEN = 10436;
+ RET_COIN_COLLECT_LEVEL_NOT_OPEN = 10446;
+ RET_COIN_COLLECT_NOT_EQUIP_WIDGET = 10447;
+ RET_COIN_COLLECT_SCENE_NOT_MATCH = 10448;
+ RET_COIN_COLLECT_CANT_ENTER_MP_MODE = 10449;
+ RET_COIN_COLLECT_PLAYER_NUM_FAIL = 10450;
+ RET_BRICK_BREAKER_PLAYER_NUM_FAIL = 10456;
+ RET_BRICK_BREAKER_STAGE_NOT_UNLOCK = 10457;
+ RET_BRICK_BREAKER_NORMAL_LEVEL_NOT_FINISH = 10458;
+ RET_BRICK_BREAKER_PRE_LEVEL_NOT_FINISH = 10459;
+ RET_BRICK_BREAKER_PRE_STAGE_NOT_FINISH = 10460;
+ RET_BRICK_BREAKER_WORLD_LEVEL_NOT_UNLOCK = 10461;
+ RET_BRICK_BREAKER_DUNGEON_LEVEL_NOT_UNLOCK = 10462;
+ RET_BRICK_BREAKER_COIN_NOT_ENOUGH = 10463;
+ RET_BRICK_BREAKER_COIN_EXCEED_LIMIT = 10464;
+ RET_ACTIVITY_CONTENT_CLOSED = 10901;
+ RET_NOT_IN_FISHING = 11001;
+ RET_FISH_STATE_ERROR = 11002;
+ RET_FISH_BAIT_LIMIT = 11003;
+ RET_FISHING_MAX_DISTANCE = 11004;
+ RET_FISHING_IN_COMBAT = 11005;
+ RET_FISHING_BATTLE_TOO_SHORT = 11006;
+ RET_FISH_GONE_AWAY = 11007;
+ RET_CAN_NOT_EDIT_OTHER_DUNGEON = 11051;
+ RET_CUSTOM_DUNGEON_DISMATCH = 11052;
+ RET_NO_CUSTOM_DUNGEON_DATA = 11053;
+ RET_BUILD_CUSTOM_DUNGEON_FAIL = 11054;
+ RET_CUSTOM_DUNGEON_ROOM_CHECK_FAIL = 11055;
+ RET_CUSTOM_DUNGEON_SAVE_MAY_FAIL = 11056;
+ RET_NOT_IN_CUSTOM_DUNGEON = 11057;
+ RET_CUSTOM_DUNGEON_INTERNAL_FAIL = 11058;
+ RET_CUSTOM_DUNGEON_CAN_NOT_TRY = 11059;
+ RET_CUSTOM_DUNGEON_NO_START_ROOM = 11060;
+ RET_CUSTOM_DUNGEON_NO_ROOM_DATA = 11061;
+ RET_CUSTOM_DUNGEON_SAVE_TOO_FREQUENT = 11062;
+ RET_CUSTOM_DUNGEON_NOT_SELF_PASS = 11063;
+ RET_CUSTOM_DUNGEON_LACK_COIN = 11064;
+ RET_CUSTOM_DUNGEON_NO_FINISH_BRICK = 11065;
+ RET_CUSTOM_DUNGEON_MULTI_FINISH = 11066;
+ RET_CUSTOM_DUNGEON_NOT_PUBLISHED = 11067;
+ RET_CUSTOM_DUNGEON_FULL_STORE = 11068;
+ RET_CUSTOM_DUNGEON_STORE_REPEAT = 11069;
+ RET_CUSTOM_DUNGEON_CAN_NOT_STORE_SELF = 11070;
+ RET_CUSTOM_DUNGEON_NOT_SAVE_SUCC = 11071;
+ RET_CUSTOM_DUNGEON_CAN_NOT_LIKE_SELF = 11072;
+ RET_CUSTOM_DUNGEON_NOT_FOUND = 11073;
+ RET_CUSTOM_DUNGEON_INVALID_SETTING = 11074;
+ RET_CUSTOM_DUNGEON_NO_FINISH_SETTING = 11075;
+ RET_CUSTOM_DUNGEON_SAVE_NOTHING = 11076;
+ RET_CUSTOM_DUNGEON_NOT_IN_GROUP = 11077;
+ RET_CUSTOM_DUNGEON_NOT_OFFICIAL = 11078;
+ RET_CUSTOM_DUNGEON_LIFE_NUM_ERROR = 11079;
+ RET_CUSTOM_DUNGEON_NO_OPEN_ROOM = 11080;
+ RET_CUSTOM_DUNGEON_BRICK_EXCEED_LIMIT = 11081;
+ RET_CUSTOM_DUNGEON_OFFICIAL_NOT_UNLOCK = 11082;
+ RET_CAN_NOT_EDIT_OFFICIAL_SETTING = 11083;
+ RET_CUSTOM_DUNGEON_BAN_PUBLISH = 11084;
+ RET_CUSTOM_DUNGEON_CAN_NOT_REPLAY = 11085;
+ RET_CUSTOM_DUNGEON_NOT_OPEN_GROUP = 11086;
+ RET_CUSTOM_DUNGEON_MAX_EDIT_NUM = 11087;
+ RET_CUSTOM_DUNGEON_CAN_NOT_OUT_STUCK = 11088;
+ RET_CUSTOM_DUNGEON_MAX_TAG = 11089;
+ RET_CUSTOM_DUNGEON_INVALID_TAG = 11090;
+ RET_CUSTOM_DUNGEON_MAX_COST = 11091;
+ RET_CUSTOM_DUNGEON_REQUEST_TOO_FREQUENT = 11092;
+ RET_CUSTOM_DUNGEON_NOT_OPEN = 11093;
+ RET_SHARE_CD_ID_ERROR = 11101;
+ RET_SHARE_CD_INDEX_ERROR = 11102;
+ RET_SHARE_CD_IN_CD = 11103;
+ RET_SHARE_CD_TOKEN_NOT_ENOUGH = 11104;
+ RET_UGC_DISMATCH = 11151;
+ RET_UGC_DATA_NOT_FOUND = 11152;
+ RET_UGC_BRIEF_NOT_FOUND = 11153;
+ RET_UGC_DISABLED = 11154;
+ RET_UGC_LIMITED = 11155;
+ RET_UGC_LOCKED = 11156;
+ RET_UGC_NOT_AUTH = 11157;
+ RET_UGC_NOT_OPEN = 11158;
+ RET_UGC_BAN_PUBLISH = 11159;
+ RET_COMPOUND_BOOST_ITEM_NOT_EXIST = 11201;
+ RET_COMPOUND_BOOST_TARGET_NOT_EXIST = 11202;
+ RET_QUICK_HIT_TREE_EMPTY_TREES = 11211;
+ RET_GCG_FIND_GAME_MODE_FAIL = 12000;
+ RET_GCG_OPERATION_PARAM_ERROR = 12001;
+ RET_GCG_GAME_NOT_RUNNING = 12002;
+ RET_GCG_OP_NOT_ALLOW = 12003;
+ RET_GCG_OP_NOT_MATCH_PHASE = 12004;
+ RET_GCG_SELECT_HAND_CARD_GUID_ERROR = 12005;
+ RET_GCG_DICE_INDEX_INVALID = 12006;
+ RET_GCG_CHARACTER_GUID_INVALID = 12007;
+ RET_GCG_CHARACTER_ALREADY_DIE = 12008;
+ RET_GCG_CHARACTER_ALREADY_ON_STAGE = 12009;
+ RET_GCG_CHARACTER_FORBIDDEN_ATTACK = 12010;
+ RET_GCG_SELECT_DICE_NOT_MATCH = 12011;
+ RET_GCG_FIND_SKILL_FAIL = 12012;
+ RET_GCG_SKILL_CAN_NOT_ACTIVE_USE = 12013;
+ RET_GCG_ENERGY_NOT_ENOUGH = 12014;
+ RET_GCG_PLAY_CARD_TARGET_NOT_MATCH = 12015;
+ RET_GCG_PLAY_CARD_ZONE_CANNOT_ADD = 12016;
+ RET_GCG_REBOOT_SELECT_DICE_INVALID = 12017;
+ RET_GCG_REBOOT_SELECT_CARD_INVALID = 12018;
+ RET_GCG_PLAY_CARD_CONDITION_CHECK_FAIL = 12019;
+ RET_GCG_PLAY_CARD_PARAM_INVALID = 12020;
+ RET_GCG_MAX_GAME = 12021;
+ RET_GCG_SEND_PACKET_FAIL = 12022;
+ RET_GCG_ALREADY_SETTLE = 12023;
+ RET_GCG_COIN_EXCEED_LIMIT = 12101;
+ RET_GCG_COIN_NOT_ENOUGH = 12102;
+ RET_GCG_NOT_IN_SELF_WORLD = 12103;
+ RET_GCG_ALREADY_IN_DUEL = 12104;
+ RET_GCG_NOT_IN_PLAYER_WORLD = 12105;
+ RET_GCG_GALLERY_STARTED = 12106;
+ RET_GCG_INVITE_TARGET_IS_SELF = 12107;
+ RET_GCG_INVITE_TARGET_NOT_IN_WORLD = 12108;
+ RET_GCG_APPLY_INVITE_NOT_ALLOW = 12109;
+ RET_GCG_APPLY_INVITE_TIMEOUT = 12110;
+ RET_GCG_CUR_DECK_INVALID = 12111;
+ RET_GCG_NEED_RESOURCE_COMPLETE = 12112;
+ RET_GCG_OPPONENT_PLAYER_IS_SELF = 12113;
+ RET_GCG_GAME_ID_INVALID = 12114;
+ RET_GCG_MATCH_IN_PUNISH = 12115;
+ RET_GCG_SETTLE_STILL_IN_DUEL = 12116;
+ RET_GCG_SETTLE_NOT_IN_DUNGEON = 12117;
+ RET_GCG_UNSUPPORT_SETTLE_OPTION = 12118;
+ RET_GCG_NOT_IN_GCG_DUNGEON = 12119;
+ RET_GCG_WORLD_LEVEL_LOCKED = 12120;
+ RET_GCG_BOSS_LEVEL_LOCKED = 12121;
+ RET_GCG_NOT_IN_TAVERN = 12122;
+ RET_GCG_WEEK_NPC_NOT_EXIST = 12123;
+ RET_GCG_ENTER_GAME_FREQUENT = 12124;
+ RET_GCG_BREAK_LEVEL_QUEST_NOT_UNFINISHED = 12125;
+ RET_GCG_GUIDE_LEVEL_ALREADY_FINISHED = 12126;
+ RET_GCG_LEVEL_CANNOT_RESTART = 12127;
+ RET_GCG_TARGET_CHECK_ENTER_FAIL = 12128;
+ RET_GCG_ALREADY_IN_DUNGEON = 12129;
+ RET_GCG_BACK_DUEL_NO_GAME = 12130;
+ RET_GCG_CONST_LEVEL_LOCKED = 12131;
+ RET_GCG_QUEST_ID_ERROR = 12132;
+ RET_GCG_QUEST_NEED_UNFINISHED = 12133;
+ RET_GCG_IN_MATCH = 12134;
+ RET_GCG_DATA_VERSION_NOT_LATEST = 12135;
+ RET_GCG_INVITE_TARGET_ENTER_GAME_FREQUENT = 12136;
+ RET_GCG_INVITE_TARGET_NEED_RESOURCE_COMPLETE = 12137;
+ RET_GCG_INVITE_TARGET_SCENE_IS_NULL = 12138;
+ RET_GCG_INVITE_TARGET_IN_TRANSFER = 12139;
+ RET_GCG_INVITE_TARGET_DATA_VERSION_NOT_LATEST = 12140;
+ RET_GCG_INVITE_TARGET_CUR_DECK_INVALID = 12141;
+ RET_GCG_CLIENT_DATA_VERSION_NOT_MATCH = 12142;
+ RET_GCG_CLIENT_DATA_VERSOIN_FORBID = 12143;
+ RET_GCG_MP_CANT_MATCH = 12144;
+ RET_GCG_INVITE_TARGET_STATE_NOT_OPEN = 12145;
+ RET_GCG_CREATE_TIME_OUT = 12146;
+ RET_GCG_BAN_MATCH = 12147;
+ RET_GCG_BAN_INVITE = 12148;
+ RET_GCG_TARGET_BAN_INVITE = 12149;
+ RET_GCG_INVITE_ALREADY_INVITE = 12150;
+ RET_GCG_BACK_DUEL_PS_TO_OTHER = 12153;
+ RET_GCG_BACK_DUEL_OTHER_TO_PS = 12154;
+ RET_GCG_DS_DECK_LOCKED = 12201;
+ RET_GCG_DS_DECK_NAME_INVALID = 12202;
+ RET_GCG_DS_DECK_CHAR_CARD_NUM_INVALID = 12204;
+ RET_GCG_DS_DECK_CARD_NUM_INVALID = 12205;
+ RET_GCG_DS_CARD_NUM_EXCEED_LIMIT = 12206;
+ RET_GCG_DS_DECK_INVALID = 12207;
+ RET_GCG_DS_CARD_ID_INVALID = 12208;
+ RET_GCG_DS_CARD_FACE_ALREADY_UNLOCK = 12209;
+ RET_GCG_DS_CARD_FACE_IS_LOCK = 12210;
+ RET_GCG_DS_FIELD_LOCK = 12211;
+ RET_GCG_DS_FIELD_ALREADY_UNLOCK = 12212;
+ RET_GCG_DS_FIELD_ID_INVALID = 12213;
+ RET_GCG_DS_CARD_BACK_LOCKED = 12214;
+ RET_GCG_DS_CARD_BACK_ALREADY_UNLOCK = 12215;
+ RET_GCG_DS_CARD_BACK_ID_INVALID = 12216;
+ RET_GCG_DS_CARD_FACE_ID_INVALID = 12217;
+ RET_GCG_DS_DECK_NAME_ILLEGAL = 12218;
+ RET_GCG_DS_DECK_SAVE_CD = 12219;
+ RET_GCG_DS_DECK_CHANGE_NAME_CD = 12220;
+ RET_GCG_MATCH_DECK_INVALID = 12221;
+ RET_GCG_DS_DECK_ALREADY_UNLOCKED = 12222;
+ RET_GCG_DS_AT_LEAST_ONE_DECK = 12223;
+ RET_GCG_TC_CHARACTERNOT_MATCH_LEVEL = 12251;
+ RET_GCG_TC_MUST_IN_SELF_WORLD = 12252;
+ RET_GCG_TC_MUST_IN_TAVERN = 12253;
+ RET_GCG_TC_ALREADY_IN_GAME = 12254;
+ RET_GCG_TC_ALREADY_IN_MATCH = 12255;
+ RET_GCG_TC_UNLOCK_CHARACTER_QUEST_NOT_FINISH = 12256;
+ RET_GCG_TC_LEVEL_LOCKED = 12257;
+ RET_GCG_TC_NO_INVITE_DATA = 12258;
+ RET_GCG_TC_CUR_DECK_INVALID = 12259;
+ RET_GCG_TC_COND_QUEST = 12260;
+ RET_GCG_LEVEL_REWARD_LEVEL_ERROR = 12301;
+ RET_GCG_LEVEL_REWARD_ALREADY_TAKEN = 12302;
+ RET_GCG_LEVEL_REWARD_NO_REWARD = 12303;
+}